diff --git a/Android.bp b/Android.bp index 529da53e58f72..3ac7a7d5ba018 100644 --- a/Android.bp +++ b/Android.bp @@ -247,6 +247,7 @@ java_library { "android.hardware.usb-V1.0-java-constants", "android.hardware.usb-V1.1-java-constants", "android.hardware.usb-V1.2-java-constants", + "android.hardware.usb.ext-V1-java", "android.hardware.usb.gadget-V1-java", "android.hardware.usb.gadget-V1.0-java", "android.hardware.usb.gadget-V1.1-java", diff --git a/apex/blobstore/framework/java/android/app/blob/BlobStoreManager.java b/apex/blobstore/framework/java/android/app/blob/BlobStoreManager.java index f6ae56f017589..5b3b876edd3a2 100644 --- a/apex/blobstore/framework/java/android/app/blob/BlobStoreManager.java +++ b/apex/blobstore/framework/java/android/app/blob/BlobStoreManager.java @@ -32,11 +32,13 @@ import android.os.RemoteException; import android.os.UserHandle; +import com.android.internal.util.Preconditions; import com.android.internal.util.function.pooled.PooledLambda; import java.io.Closeable; import java.io.IOException; import java.util.List; +import java.util.Objects; import java.util.concurrent.CountDownLatch; import java.util.concurrent.Executor; import java.util.concurrent.TimeUnit; @@ -153,6 +155,26 @@ public class BlobStoreManager { private final Context mContext; private final IBlobStoreManager mService; + // TODO: b/404309424 - Make these constants available using a test-api to avoid hardcoding + // them in tests. + /** + * The maximum allowed length for the package name, provided using + * {@link BlobStoreManager.Session#allowPackageAccess(String, byte[])}. + * + * This is the same limit that is already used for limiting the length of the package names + * at android.content.pm.parsing.FrameworkParsingPackageUtils#MAX_FILE_NAME_SIZE. + * + * @hide + */ + public static final int MAX_PACKAGE_NAME_LENGTH = 223; + /** + * The maximum allowed length for the certificate, provided using + * {@link BlobStoreManager.Session#allowPackageAccess(String, byte[])}. + * + * @hide + */ + public static final int MAX_CERTIFICATE_LENGTH = 32; + /** @hide */ public BlobStoreManager(@NonNull Context context, @NonNull IBlobStoreManager service) { mContext = context; @@ -786,6 +808,12 @@ public void abandon() throws IOException { */ public void allowPackageAccess(@NonNull String packageName, @NonNull byte[] certificate) throws IOException { + Objects.requireNonNull(packageName); + Preconditions.checkArgument(packageName.length() <= MAX_PACKAGE_NAME_LENGTH, + "packageName is longer than " + MAX_PACKAGE_NAME_LENGTH + " chars"); + Objects.requireNonNull(certificate); + Preconditions.checkArgument(certificate.length <= MAX_CERTIFICATE_LENGTH, + "certificate is longer than " + MAX_CERTIFICATE_LENGTH + " chars"); try { mSession.allowPackageAccess(packageName, certificate); } catch (ParcelableException e) { diff --git a/apex/blobstore/service/java/com/android/server/blob/BlobStoreSession.java b/apex/blobstore/service/java/com/android/server/blob/BlobStoreSession.java index ede29ec168c0c..790d4e934317f 100644 --- a/apex/blobstore/service/java/com/android/server/blob/BlobStoreSession.java +++ b/apex/blobstore/service/java/com/android/server/blob/BlobStoreSession.java @@ -16,6 +16,8 @@ package com.android.server.blob; import static android.app.blob.BlobStoreManager.COMMIT_RESULT_ERROR; +import static android.app.blob.BlobStoreManager.MAX_CERTIFICATE_LENGTH; +import static android.app.blob.BlobStoreManager.MAX_PACKAGE_NAME_LENGTH; import static android.app.blob.XmlTags.ATTR_CREATION_TIME_MS; import static android.app.blob.XmlTags.ATTR_ID; import static android.app.blob.XmlTags.ATTR_PACKAGE; @@ -328,6 +330,11 @@ public void allowPackageAccess(@NonNull String packageName, @NonNull byte[] certificate) { assertCallerIsOwner(); Objects.requireNonNull(packageName, "packageName must not be null"); + Preconditions.checkArgument(packageName.length() <= MAX_PACKAGE_NAME_LENGTH, + "packageName is longer than " + MAX_PACKAGE_NAME_LENGTH + " chars"); + Objects.requireNonNull(certificate, "certificate must not be null"); + Preconditions.checkArgument(certificate.length <= MAX_CERTIFICATE_LENGTH, + "certificate is longer than " + MAX_CERTIFICATE_LENGTH + " chars"); synchronized (mSessionLock) { if (mState != STATE_OPENED) { throw new IllegalStateException("Not allowed to change access type in state: " diff --git a/apex/jobscheduler/framework/java/android/app/AlarmManager.java b/apex/jobscheduler/framework/java/android/app/AlarmManager.java index ec6a8b8af8992..bb0127db51249 100644 --- a/apex/jobscheduler/framework/java/android/app/AlarmManager.java +++ b/apex/jobscheduler/framework/java/android/app/AlarmManager.java @@ -26,6 +26,7 @@ import android.annotation.SystemApi; import android.annotation.SystemService; import android.annotation.TestApi; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.ChangeId; import android.compat.annotation.EnabledSince; import android.compat.annotation.UnsupportedAppUsage; @@ -1049,6 +1050,17 @@ private void setImpl(@AlarmType int type, long triggerAtMillis, long windowMilli long intervalMillis, int flags, PendingIntent operation, final OnAlarmListener listener, String listenerTag, Executor targetExecutor, WorkSource workSource, AlarmClockInfo alarmClock) { + if (GmsCompat.isEnabled()) { + if (windowMillis == WINDOW_EXACT && !canScheduleExactAlarms()) { + windowMillis = WINDOW_HEURISTIC; + } + // non-null WorkSource requires privileged UPDATE_DEVICE_STATS permission + workSource = null; + + // requires privileged SCHEDULE_PRIORITIZED_ALARM permission + flags &= ~FLAG_PRIORITIZE; + } + if (triggerAtMillis < 0) { /* NOTYET if (mAlwaysExact) { diff --git a/apex/jobscheduler/framework/java/android/os/PowerExemptionManager.java b/apex/jobscheduler/framework/java/android/os/PowerExemptionManager.java index e73417460724b..6838b4c6e5d5f 100644 --- a/apex/jobscheduler/framework/java/android/os/PowerExemptionManager.java +++ b/apex/jobscheduler/framework/java/android/os/PowerExemptionManager.java @@ -30,8 +30,11 @@ import android.annotation.SystemApi; import android.annotation.SystemService; import android.annotation.UserHandleAware; +import android.app.compat.gms.GmsCompat; import android.content.Context; +import com.android.internal.gmscompat.GmsCompatApp; + import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.Collections; @@ -626,6 +629,11 @@ public void removeFromPermanentAllowList(@NonNull String packageName) { @RequiresPermission(android.Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST) public void addToTemporaryAllowList(@NonNull String packageName, @ReasonCode int reasonCode, @Nullable String reason, long durationMs) { + if (GmsCompat.isEnabled()) { + GmsCompatApp.raisePackageToForeground(packageName, durationMs, reason, reasonCode); + return; + } + try { mService.addPowerSaveTempWhitelistApp(packageName, durationMs, mContext.getUserId(), reasonCode, reason); diff --git a/apex/jobscheduler/framework/java/com/android/server/DeviceIdleInternal.java b/apex/jobscheduler/framework/java/com/android/server/DeviceIdleInternal.java index 1fc888b06ffd3..b18f43e0b5380 100644 --- a/apex/jobscheduler/framework/java/com/android/server/DeviceIdleInternal.java +++ b/apex/jobscheduler/framework/java/com/android/server/DeviceIdleInternal.java @@ -74,7 +74,7 @@ void addPowerSaveTempWhitelistAppDirect(int uid, long duration, boolean isAppOnWhitelist(int appid); - int[] getPowerSaveWhitelistUserAppIds(); + int[] getPowerSaveWhitelistAppIds(); int[] getPowerSaveTempWhitelistAppIds(); diff --git a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java index 41fd4a29cfd1a..04d29860fbabb 100644 --- a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java +++ b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java @@ -2389,14 +2389,14 @@ public String[] getFullPowerWhitelistExceptIdle() { } /** - * Returns the array of app ids whitelisted by user. Take care not to + * Returns the array of whitelisted app ids. Take care not to * modify this, as it is a reference to the original copy. But the reference * can change when the list changes, so it needs to be re-acquired when * {@link PowerManager#ACTION_POWER_SAVE_WHITELIST_CHANGED} is sent. */ @Override - public int[] getPowerSaveWhitelistUserAppIds() { - return DeviceIdleController.this.getPowerSaveWhitelistUserAppIds(); + public int[] getPowerSaveWhitelistAppIds() { + return DeviceIdleController.this.getAppIdWhitelistInternal(); } @Override diff --git a/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java b/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java index 8f44698ffd8d1..5dfb3754e8fbb 100644 --- a/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java +++ b/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java @@ -1034,7 +1034,7 @@ void determineAssignmentsLocked(final ArraySet changed, for (int p = preferredUidOnly.size() - 1; p >= 0; --p) { final ContextAssignment assignment = preferredUidOnly.get(p); final JobStatus runningJob = assignment.context.getRunningJobLocked(); - if (runningJob.getUid() != nextPending.getUid()) { + if (runningJob == null || runningJob.getUid() != nextPending.getUid()) { continue; } final int jobBias = mService.evaluateJobBiasLocked(runningJob); @@ -1916,8 +1916,9 @@ boolean executeStopCommandLocked(PrintWriter pw, String pkgName, int userId, for (int i = 0; i < mActiveServices.size(); i++) { final JobServiceContext jc = mActiveServices.get(i); final JobStatus js = jc.getRunningJobLocked(); - if (jc.stopIfExecutingLocked(pkgName, userId, namespace, matchJobId, jobId, - stopReason, internalStopReason)) { + if (js != null && + jc.stopIfExecutingLocked(pkgName, userId, namespace, + matchJobId, jobId, stopReason, internalStopReason)) { foundSome = true; pw.print("Stopping job: "); js.printUniqueId(pw); diff --git a/apex/jobscheduler/service/java/com/android/server/job/controllers/DeviceIdleJobsController.java b/apex/jobscheduler/service/java/com/android/server/job/controllers/DeviceIdleJobsController.java index abec170f3b7dc..9418ac27ee8c5 100644 --- a/apex/jobscheduler/service/java/com/android/server/job/controllers/DeviceIdleJobsController.java +++ b/apex/jobscheduler/service/java/com/android/server/job/controllers/DeviceIdleJobsController.java @@ -90,7 +90,7 @@ public void onReceive(Context context, Intent intent) { case PowerManager.ACTION_POWER_SAVE_WHITELIST_CHANGED: synchronized (mLock) { mDeviceIdleWhitelistAppIds = - mLocalDeviceIdleController.getPowerSaveWhitelistUserAppIds(); + mLocalDeviceIdleController.getPowerSaveWhitelistAppIds(); if (DEBUG) { Slog.d(TAG, "Got whitelist " + Arrays.toString(mDeviceIdleWhitelistAppIds)); @@ -133,7 +133,7 @@ public DeviceIdleJobsController(JobSchedulerService service) { mPowerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); mLocalDeviceIdleController = LocalServices.getService(DeviceIdleInternal.class); - mDeviceIdleWhitelistAppIds = mLocalDeviceIdleController.getPowerSaveWhitelistUserAppIds(); + mDeviceIdleWhitelistAppIds = mLocalDeviceIdleController.getPowerSaveWhitelistAppIds(); mPowerSaveTempWhitelistAppIds = mLocalDeviceIdleController.getPowerSaveTempWhitelistAppIds(); mDeviceIdleUpdateFunctor = new DeviceIdleUpdateFunctor(); @@ -194,7 +194,7 @@ public void setUidActiveLocked(int uid, boolean active) { } /** - * Checks if the given job's scheduling app id exists in the device idle user whitelist. + * Checks if the given job's scheduling app id exists in the device idle whitelist. */ boolean isWhitelistedLocked(JobStatus job) { return Arrays.binarySearch(mDeviceIdleWhitelistAppIds, diff --git a/apex/jobscheduler/service/java/com/android/server/job/controllers/JobStatus.java b/apex/jobscheduler/service/java/com/android/server/job/controllers/JobStatus.java index 5a33aa0ab7eb6..73dbcece92c89 100644 --- a/apex/jobscheduler/service/java/com/android/server/job/controllers/JobStatus.java +++ b/apex/jobscheduler/service/java/com/android/server/job/controllers/JobStatus.java @@ -36,6 +36,7 @@ import android.app.job.UserVisibleJobSummary; import android.content.ClipData; import android.content.ComponentName; +import android.content.Context; import android.net.Network; import android.net.NetworkRequest; import android.net.Uri; @@ -2501,6 +2502,23 @@ private boolean isConstraintsSatisfied(int satisfiedConstraints) { return true; } + if ((mRequiredConstraintsOfInterest & CONSTRAINT_CONNECTIVITY) != 0) { + if ((satisfiedConstraints & CONSTRAINT_CONNECTIVITY) != 0) { + var pmi = LocalServices.getService( + com.android.server.pm.permission.PermissionManagerServiceInternal.class); + + if (pmi.checkUidPermission(getSourceUid(), android.Manifest.permission.INTERNET, Context.DEVICE_ID_DEFAULT) != + android.content.pm.PackageManager.PERMISSION_GRANTED) { + if (DEBUG) { + Slog.d(TAG, "skipping job " + getJobId() + " for " + getSourcePackageName() + + " in user " + getSourceUserId() + ": it has CONSTRAINT_CONNECTIVITY, " + + "but its UID doesn't have the INTERNET permission"); + } + return false; + } + } + } + int sat = satisfiedConstraints; if (overrideState == OVERRIDE_SOFT) { // override: pretend all 'soft' requirements are satisfied diff --git a/cmds/app_process/app_main.cpp b/cmds/app_process/app_main.cpp index 4e41f2c1ac35a..9ce4bef5bb6c1 100644 --- a/cmds/app_process/app_main.cpp +++ b/cmds/app_process/app_main.cpp @@ -85,8 +85,10 @@ class AppRuntime : public AndroidRuntime AndroidRuntime* ar = AndroidRuntime::getRuntime(); ar->callMain(mClassName, mClass, mArgs); - IPCThreadState::self()->stopProcess(); - hardware::IPCThreadState::self()->stopProcess(); + if (mClassName != "com.android.internal.os.ExecInit") { + IPCThreadState::self()->stopProcess(); + hardware::IPCThreadState::self()->stopProcess(); + } } virtual void onZygoteInit() diff --git a/core/api/current.txt b/core/api/current.txt index 5efa74779c069..564446141ec83 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -1,63896 +1,63900 @@ -// Signature format: 2.0 -package android { - - public final class Manifest { - ctor public Manifest(); - } - - public static final class Manifest.permission { - ctor public Manifest.permission(); - field public static final String ACCEPT_HANDOVER = "android.permission.ACCEPT_HANDOVER"; - field public static final String ACCESS_BACKGROUND_LOCATION = "android.permission.ACCESS_BACKGROUND_LOCATION"; - field public static final String ACCESS_BLOBS_ACROSS_USERS = "android.permission.ACCESS_BLOBS_ACROSS_USERS"; - field public static final String ACCESS_CHECKIN_PROPERTIES = "android.permission.ACCESS_CHECKIN_PROPERTIES"; - field public static final String ACCESS_COARSE_LOCATION = "android.permission.ACCESS_COARSE_LOCATION"; - field public static final String ACCESS_FINE_LOCATION = "android.permission.ACCESS_FINE_LOCATION"; - field @FlaggedApi("android.multiuser.enable_permission_to_access_hidden_profiles") public static final String ACCESS_HIDDEN_PROFILES = "android.permission.ACCESS_HIDDEN_PROFILES"; - field public static final String ACCESS_LOCATION_EXTRA_COMMANDS = "android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"; - field public static final String ACCESS_MEDIA_LOCATION = "android.permission.ACCESS_MEDIA_LOCATION"; - field public static final String ACCESS_NETWORK_STATE = "android.permission.ACCESS_NETWORK_STATE"; - field public static final String ACCESS_NOTIFICATION_POLICY = "android.permission.ACCESS_NOTIFICATION_POLICY"; - field public static final String ACCESS_WIFI_STATE = "android.permission.ACCESS_WIFI_STATE"; - field public static final String ACCOUNT_MANAGER = "android.permission.ACCOUNT_MANAGER"; - field public static final String ACTIVITY_RECOGNITION = "android.permission.ACTIVITY_RECOGNITION"; - field public static final String ADD_VOICEMAIL = "com.android.voicemail.permission.ADD_VOICEMAIL"; - field public static final String ANSWER_PHONE_CALLS = "android.permission.ANSWER_PHONE_CALLS"; - field @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public static final String APPLY_PICTURE_PROFILE = "android.permission.APPLY_PICTURE_PROFILE"; - field public static final String BATTERY_STATS = "android.permission.BATTERY_STATS"; - field public static final String BIND_ACCESSIBILITY_SERVICE = "android.permission.BIND_ACCESSIBILITY_SERVICE"; - field public static final String BIND_APPWIDGET = "android.permission.BIND_APPWIDGET"; - field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String BIND_APP_FUNCTION_SERVICE = "android.permission.BIND_APP_FUNCTION_SERVICE"; - field public static final String BIND_AUTOFILL_SERVICE = "android.permission.BIND_AUTOFILL_SERVICE"; - field public static final String BIND_CALL_REDIRECTION_SERVICE = "android.permission.BIND_CALL_REDIRECTION_SERVICE"; - field public static final String BIND_CARRIER_MESSAGING_CLIENT_SERVICE = "android.permission.BIND_CARRIER_MESSAGING_CLIENT_SERVICE"; - field @Deprecated public static final String BIND_CARRIER_MESSAGING_SERVICE = "android.permission.BIND_CARRIER_MESSAGING_SERVICE"; - field public static final String BIND_CARRIER_SERVICES = "android.permission.BIND_CARRIER_SERVICES"; - field @Deprecated public static final String BIND_CHOOSER_TARGET_SERVICE = "android.permission.BIND_CHOOSER_TARGET_SERVICE"; - field public static final String BIND_COMPANION_DEVICE_SERVICE = "android.permission.BIND_COMPANION_DEVICE_SERVICE"; - field public static final String BIND_CONDITION_PROVIDER_SERVICE = "android.permission.BIND_CONDITION_PROVIDER_SERVICE"; - field public static final String BIND_CONTROLS = "android.permission.BIND_CONTROLS"; - field public static final String BIND_CREDENTIAL_PROVIDER_SERVICE = "android.permission.BIND_CREDENTIAL_PROVIDER_SERVICE"; - field public static final String BIND_DEVICE_ADMIN = "android.permission.BIND_DEVICE_ADMIN"; - field public static final String BIND_DREAM_SERVICE = "android.permission.BIND_DREAM_SERVICE"; - field public static final String BIND_INCALL_SERVICE = "android.permission.BIND_INCALL_SERVICE"; - field public static final String BIND_INPUT_METHOD = "android.permission.BIND_INPUT_METHOD"; - field public static final String BIND_MIDI_DEVICE_SERVICE = "android.permission.BIND_MIDI_DEVICE_SERVICE"; - field public static final String BIND_NFC_SERVICE = "android.permission.BIND_NFC_SERVICE"; - field public static final String BIND_NOTIFICATION_LISTENER_SERVICE = "android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"; - field public static final String BIND_PRINT_SERVICE = "android.permission.BIND_PRINT_SERVICE"; - field public static final String BIND_QUICK_ACCESS_WALLET_SERVICE = "android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE"; - field public static final String BIND_QUICK_SETTINGS_TILE = "android.permission.BIND_QUICK_SETTINGS_TILE"; - field public static final String BIND_REMOTEVIEWS = "android.permission.BIND_REMOTEVIEWS"; - field public static final String BIND_SCREENING_SERVICE = "android.permission.BIND_SCREENING_SERVICE"; - field public static final String BIND_TELECOM_CONNECTION_SERVICE = "android.permission.BIND_TELECOM_CONNECTION_SERVICE"; - field public static final String BIND_TEXT_SERVICE = "android.permission.BIND_TEXT_SERVICE"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String BIND_TV_AD_SERVICE = "android.permission.BIND_TV_AD_SERVICE"; - field public static final String BIND_TV_INPUT = "android.permission.BIND_TV_INPUT"; - field public static final String BIND_TV_INTERACTIVE_APP = "android.permission.BIND_TV_INTERACTIVE_APP"; - field public static final String BIND_VISUAL_VOICEMAIL_SERVICE = "android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"; - field public static final String BIND_VOICE_INTERACTION = "android.permission.BIND_VOICE_INTERACTION"; - field public static final String BIND_VPN_SERVICE = "android.permission.BIND_VPN_SERVICE"; - field public static final String BIND_VR_LISTENER_SERVICE = "android.permission.BIND_VR_LISTENER_SERVICE"; - field public static final String BIND_WALLPAPER = "android.permission.BIND_WALLPAPER"; - field public static final String BLUETOOTH = "android.permission.BLUETOOTH"; - field public static final String BLUETOOTH_ADMIN = "android.permission.BLUETOOTH_ADMIN"; - field public static final String BLUETOOTH_ADVERTISE = "android.permission.BLUETOOTH_ADVERTISE"; - field public static final String BLUETOOTH_CONNECT = "android.permission.BLUETOOTH_CONNECT"; - field public static final String BLUETOOTH_PRIVILEGED = "android.permission.BLUETOOTH_PRIVILEGED"; - field public static final String BLUETOOTH_SCAN = "android.permission.BLUETOOTH_SCAN"; - field public static final String BODY_SENSORS = "android.permission.BODY_SENSORS"; - field public static final String BODY_SENSORS_BACKGROUND = "android.permission.BODY_SENSORS_BACKGROUND"; - field public static final String BROADCAST_PACKAGE_REMOVED = "android.permission.BROADCAST_PACKAGE_REMOVED"; - field public static final String BROADCAST_SMS = "android.permission.BROADCAST_SMS"; - field public static final String BROADCAST_STICKY = "android.permission.BROADCAST_STICKY"; - field public static final String BROADCAST_WAP_PUSH = "android.permission.BROADCAST_WAP_PUSH"; - field public static final String CALL_COMPANION_APP = "android.permission.CALL_COMPANION_APP"; - field public static final String CALL_PHONE = "android.permission.CALL_PHONE"; - field public static final String CALL_PRIVILEGED = "android.permission.CALL_PRIVILEGED"; - field public static final String CAMERA = "android.permission.CAMERA"; - field public static final String CAPTURE_AUDIO_OUTPUT = "android.permission.CAPTURE_AUDIO_OUTPUT"; - field public static final String CHANGE_COMPONENT_ENABLED_STATE = "android.permission.CHANGE_COMPONENT_ENABLED_STATE"; - field public static final String CHANGE_CONFIGURATION = "android.permission.CHANGE_CONFIGURATION"; - field public static final String CHANGE_NETWORK_STATE = "android.permission.CHANGE_NETWORK_STATE"; - field public static final String CHANGE_WIFI_MULTICAST_STATE = "android.permission.CHANGE_WIFI_MULTICAST_STATE"; - field public static final String CHANGE_WIFI_STATE = "android.permission.CHANGE_WIFI_STATE"; - field public static final String CLEAR_APP_CACHE = "android.permission.CLEAR_APP_CACHE"; - field public static final String CONFIGURE_WIFI_DISPLAY = "android.permission.CONFIGURE_WIFI_DISPLAY"; - field public static final String CONTROL_LOCATION_UPDATES = "android.permission.CONTROL_LOCATION_UPDATES"; - field public static final String CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS = "android.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS"; - field public static final String CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS = "android.permission.CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS"; - field public static final String CREDENTIAL_MANAGER_SET_ORIGIN = "android.permission.CREDENTIAL_MANAGER_SET_ORIGIN"; - field public static final String DELETE_CACHE_FILES = "android.permission.DELETE_CACHE_FILES"; - field public static final String DELETE_PACKAGES = "android.permission.DELETE_PACKAGES"; - field public static final String DELIVER_COMPANION_MESSAGES = "android.permission.DELIVER_COMPANION_MESSAGES"; - field public static final String DETECT_SCREEN_CAPTURE = "android.permission.DETECT_SCREEN_CAPTURE"; - field @FlaggedApi("com.android.window.flags.screen_recording_callbacks") public static final String DETECT_SCREEN_RECORDING = "android.permission.DETECT_SCREEN_RECORDING"; - field public static final String DIAGNOSTIC = "android.permission.DIAGNOSTIC"; - field public static final String DISABLE_KEYGUARD = "android.permission.DISABLE_KEYGUARD"; - field public static final String DUMP = "android.permission.DUMP"; - field public static final String ENFORCE_UPDATE_OWNERSHIP = "android.permission.ENFORCE_UPDATE_OWNERSHIP"; - field public static final String EXECUTE_APP_ACTION = "android.permission.EXECUTE_APP_ACTION"; - field public static final String EXPAND_STATUS_BAR = "android.permission.EXPAND_STATUS_BAR"; - field public static final String FACTORY_TEST = "android.permission.FACTORY_TEST"; - field public static final String FOREGROUND_SERVICE = "android.permission.FOREGROUND_SERVICE"; - field public static final String FOREGROUND_SERVICE_CAMERA = "android.permission.FOREGROUND_SERVICE_CAMERA"; - field public static final String FOREGROUND_SERVICE_CONNECTED_DEVICE = "android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE"; - field public static final String FOREGROUND_SERVICE_DATA_SYNC = "android.permission.FOREGROUND_SERVICE_DATA_SYNC"; - field public static final String FOREGROUND_SERVICE_HEALTH = "android.permission.FOREGROUND_SERVICE_HEALTH"; - field public static final String FOREGROUND_SERVICE_LOCATION = "android.permission.FOREGROUND_SERVICE_LOCATION"; - field public static final String FOREGROUND_SERVICE_MEDIA_PLAYBACK = "android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK"; - field @FlaggedApi("android.content.pm.introduce_media_processing_type") public static final String FOREGROUND_SERVICE_MEDIA_PROCESSING = "android.permission.FOREGROUND_SERVICE_MEDIA_PROCESSING"; - field public static final String FOREGROUND_SERVICE_MEDIA_PROJECTION = "android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION"; - field public static final String FOREGROUND_SERVICE_MICROPHONE = "android.permission.FOREGROUND_SERVICE_MICROPHONE"; - field public static final String FOREGROUND_SERVICE_PHONE_CALL = "android.permission.FOREGROUND_SERVICE_PHONE_CALL"; - field public static final String FOREGROUND_SERVICE_REMOTE_MESSAGING = "android.permission.FOREGROUND_SERVICE_REMOTE_MESSAGING"; - field public static final String FOREGROUND_SERVICE_SPECIAL_USE = "android.permission.FOREGROUND_SERVICE_SPECIAL_USE"; - field public static final String FOREGROUND_SERVICE_SYSTEM_EXEMPTED = "android.permission.FOREGROUND_SERVICE_SYSTEM_EXEMPTED"; - field public static final String GET_ACCOUNTS = "android.permission.GET_ACCOUNTS"; - field public static final String GET_ACCOUNTS_PRIVILEGED = "android.permission.GET_ACCOUNTS_PRIVILEGED"; - field public static final String GET_PACKAGE_SIZE = "android.permission.GET_PACKAGE_SIZE"; - field @Deprecated public static final String GET_TASKS = "android.permission.GET_TASKS"; - field public static final String GLOBAL_SEARCH = "android.permission.GLOBAL_SEARCH"; - field public static final String HIDE_OVERLAY_WINDOWS = "android.permission.HIDE_OVERLAY_WINDOWS"; - field public static final String HIGH_SAMPLING_RATE_SENSORS = "android.permission.HIGH_SAMPLING_RATE_SENSORS"; - field public static final String INSTALL_LOCATION_PROVIDER = "android.permission.INSTALL_LOCATION_PROVIDER"; - field public static final String INSTALL_PACKAGES = "android.permission.INSTALL_PACKAGES"; - field public static final String INSTALL_SHORTCUT = "com.android.launcher.permission.INSTALL_SHORTCUT"; - field public static final String INSTANT_APP_FOREGROUND_SERVICE = "android.permission.INSTANT_APP_FOREGROUND_SERVICE"; - field public static final String INTERACT_ACROSS_PROFILES = "android.permission.INTERACT_ACROSS_PROFILES"; - field public static final String INTERNET = "android.permission.INTERNET"; - field public static final String KILL_BACKGROUND_PROCESSES = "android.permission.KILL_BACKGROUND_PROCESSES"; - field public static final String LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE = "android.permission.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE"; - field public static final String LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK = "android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK"; - field public static final String LOADER_USAGE_STATS = "android.permission.LOADER_USAGE_STATS"; - field public static final String LOCATION_HARDWARE = "android.permission.LOCATION_HARDWARE"; - field public static final String MANAGE_DEVICE_LOCK_STATE = "android.permission.MANAGE_DEVICE_LOCK_STATE"; - field public static final String MANAGE_DEVICE_POLICY_ACCESSIBILITY = "android.permission.MANAGE_DEVICE_POLICY_ACCESSIBILITY"; - field public static final String MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT = "android.permission.MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT"; - field public static final String MANAGE_DEVICE_POLICY_ACROSS_USERS = "android.permission.MANAGE_DEVICE_POLICY_ACROSS_USERS"; - field public static final String MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL = "android.permission.MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL"; - field public static final String MANAGE_DEVICE_POLICY_ACROSS_USERS_SECURITY_CRITICAL = "android.permission.MANAGE_DEVICE_POLICY_ACROSS_USERS_SECURITY_CRITICAL"; - field public static final String MANAGE_DEVICE_POLICY_AIRPLANE_MODE = "android.permission.MANAGE_DEVICE_POLICY_AIRPLANE_MODE"; - field public static final String MANAGE_DEVICE_POLICY_APPS_CONTROL = "android.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL"; - field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String MANAGE_DEVICE_POLICY_APP_FUNCTIONS = "android.permission.MANAGE_DEVICE_POLICY_APP_FUNCTIONS"; - field public static final String MANAGE_DEVICE_POLICY_APP_RESTRICTIONS = "android.permission.MANAGE_DEVICE_POLICY_APP_RESTRICTIONS"; - field public static final String MANAGE_DEVICE_POLICY_APP_USER_DATA = "android.permission.MANAGE_DEVICE_POLICY_APP_USER_DATA"; - field public static final String MANAGE_DEVICE_POLICY_ASSIST_CONTENT = "android.permission.MANAGE_DEVICE_POLICY_ASSIST_CONTENT"; - field public static final String MANAGE_DEVICE_POLICY_AUDIO_OUTPUT = "android.permission.MANAGE_DEVICE_POLICY_AUDIO_OUTPUT"; - field public static final String MANAGE_DEVICE_POLICY_AUTOFILL = "android.permission.MANAGE_DEVICE_POLICY_AUTOFILL"; - field public static final String MANAGE_DEVICE_POLICY_BACKUP_SERVICE = "android.permission.MANAGE_DEVICE_POLICY_BACKUP_SERVICE"; - field public static final String MANAGE_DEVICE_POLICY_BLOCK_UNINSTALL = "android.permission.MANAGE_DEVICE_POLICY_BLOCK_UNINSTALL"; - field public static final String MANAGE_DEVICE_POLICY_BLUETOOTH = "android.permission.MANAGE_DEVICE_POLICY_BLUETOOTH"; - field public static final String MANAGE_DEVICE_POLICY_BUGREPORT = "android.permission.MANAGE_DEVICE_POLICY_BUGREPORT"; - field public static final String MANAGE_DEVICE_POLICY_CALLS = "android.permission.MANAGE_DEVICE_POLICY_CALLS"; - field public static final String MANAGE_DEVICE_POLICY_CAMERA = "android.permission.MANAGE_DEVICE_POLICY_CAMERA"; - field public static final String MANAGE_DEVICE_POLICY_CAMERA_TOGGLE = "android.permission.MANAGE_DEVICE_POLICY_CAMERA_TOGGLE"; - field public static final String MANAGE_DEVICE_POLICY_CERTIFICATES = "android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES"; - field public static final String MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE = "android.permission.MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE"; - field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final String MANAGE_DEVICE_POLICY_CONTENT_PROTECTION = "android.permission.MANAGE_DEVICE_POLICY_CONTENT_PROTECTION"; - field public static final String MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES = "android.permission.MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES"; - field public static final String MANAGE_DEVICE_POLICY_DEFAULT_SMS = "android.permission.MANAGE_DEVICE_POLICY_DEFAULT_SMS"; - field public static final String MANAGE_DEVICE_POLICY_DEVICE_IDENTIFIERS = "android.permission.MANAGE_DEVICE_POLICY_DEVICE_IDENTIFIERS"; - field public static final String MANAGE_DEVICE_POLICY_DISPLAY = "android.permission.MANAGE_DEVICE_POLICY_DISPLAY"; - field public static final String MANAGE_DEVICE_POLICY_FACTORY_RESET = "android.permission.MANAGE_DEVICE_POLICY_FACTORY_RESET"; - field public static final String MANAGE_DEVICE_POLICY_FUN = "android.permission.MANAGE_DEVICE_POLICY_FUN"; - field public static final String MANAGE_DEVICE_POLICY_INPUT_METHODS = "android.permission.MANAGE_DEVICE_POLICY_INPUT_METHODS"; - field public static final String MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES = "android.permission.MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES"; - field public static final String MANAGE_DEVICE_POLICY_KEEP_UNINSTALLED_PACKAGES = "android.permission.MANAGE_DEVICE_POLICY_KEEP_UNINSTALLED_PACKAGES"; - field public static final String MANAGE_DEVICE_POLICY_KEYGUARD = "android.permission.MANAGE_DEVICE_POLICY_KEYGUARD"; - field public static final String MANAGE_DEVICE_POLICY_LOCALE = "android.permission.MANAGE_DEVICE_POLICY_LOCALE"; - field public static final String MANAGE_DEVICE_POLICY_LOCATION = "android.permission.MANAGE_DEVICE_POLICY_LOCATION"; - field public static final String MANAGE_DEVICE_POLICY_LOCK = "android.permission.MANAGE_DEVICE_POLICY_LOCK"; - field public static final String MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS = "android.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS"; - field public static final String MANAGE_DEVICE_POLICY_LOCK_TASK = "android.permission.MANAGE_DEVICE_POLICY_LOCK_TASK"; - field public static final String MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS = "android.permission.MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS"; - field public static final String MANAGE_DEVICE_POLICY_METERED_DATA = "android.permission.MANAGE_DEVICE_POLICY_METERED_DATA"; - field public static final String MANAGE_DEVICE_POLICY_MICROPHONE = "android.permission.MANAGE_DEVICE_POLICY_MICROPHONE"; - field public static final String MANAGE_DEVICE_POLICY_MICROPHONE_TOGGLE = "android.permission.MANAGE_DEVICE_POLICY_MICROPHONE_TOGGLE"; - field public static final String MANAGE_DEVICE_POLICY_MOBILE_NETWORK = "android.permission.MANAGE_DEVICE_POLICY_MOBILE_NETWORK"; - field public static final String MANAGE_DEVICE_POLICY_MODIFY_USERS = "android.permission.MANAGE_DEVICE_POLICY_MODIFY_USERS"; - field public static final String MANAGE_DEVICE_POLICY_MTE = "android.permission.MANAGE_DEVICE_POLICY_MTE"; - field public static final String MANAGE_DEVICE_POLICY_NEARBY_COMMUNICATION = "android.permission.MANAGE_DEVICE_POLICY_NEARBY_COMMUNICATION"; - field public static final String MANAGE_DEVICE_POLICY_NETWORK_LOGGING = "android.permission.MANAGE_DEVICE_POLICY_NETWORK_LOGGING"; - field public static final String MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY = "android.permission.MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY"; - field public static final String MANAGE_DEVICE_POLICY_OVERRIDE_APN = "android.permission.MANAGE_DEVICE_POLICY_OVERRIDE_APN"; - field public static final String MANAGE_DEVICE_POLICY_PACKAGE_STATE = "android.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE"; - field public static final String MANAGE_DEVICE_POLICY_PHYSICAL_MEDIA = "android.permission.MANAGE_DEVICE_POLICY_PHYSICAL_MEDIA"; - field public static final String MANAGE_DEVICE_POLICY_PRINTING = "android.permission.MANAGE_DEVICE_POLICY_PRINTING"; - field public static final String MANAGE_DEVICE_POLICY_PRIVATE_DNS = "android.permission.MANAGE_DEVICE_POLICY_PRIVATE_DNS"; - field public static final String MANAGE_DEVICE_POLICY_PROFILES = "android.permission.MANAGE_DEVICE_POLICY_PROFILES"; - field public static final String MANAGE_DEVICE_POLICY_PROFILE_INTERACTION = "android.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION"; - field public static final String MANAGE_DEVICE_POLICY_PROXY = "android.permission.MANAGE_DEVICE_POLICY_PROXY"; - field public static final String MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES = "android.permission.MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES"; - field public static final String MANAGE_DEVICE_POLICY_RESET_PASSWORD = "android.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD"; - field public static final String MANAGE_DEVICE_POLICY_RESTRICT_PRIVATE_DNS = "android.permission.MANAGE_DEVICE_POLICY_RESTRICT_PRIVATE_DNS"; - field public static final String MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS = "android.permission.MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS"; - field public static final String MANAGE_DEVICE_POLICY_RUN_IN_BACKGROUND = "android.permission.MANAGE_DEVICE_POLICY_RUN_IN_BACKGROUND"; - field public static final String MANAGE_DEVICE_POLICY_SAFE_BOOT = "android.permission.MANAGE_DEVICE_POLICY_SAFE_BOOT"; - field public static final String MANAGE_DEVICE_POLICY_SCREEN_CAPTURE = "android.permission.MANAGE_DEVICE_POLICY_SCREEN_CAPTURE"; - field public static final String MANAGE_DEVICE_POLICY_SCREEN_CONTENT = "android.permission.MANAGE_DEVICE_POLICY_SCREEN_CONTENT"; - field public static final String MANAGE_DEVICE_POLICY_SECURITY_LOGGING = "android.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING"; - field public static final String MANAGE_DEVICE_POLICY_SETTINGS = "android.permission.MANAGE_DEVICE_POLICY_SETTINGS"; - field public static final String MANAGE_DEVICE_POLICY_SMS = "android.permission.MANAGE_DEVICE_POLICY_SMS"; - field public static final String MANAGE_DEVICE_POLICY_STATUS_BAR = "android.permission.MANAGE_DEVICE_POLICY_STATUS_BAR"; - field public static final String MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE = "android.permission.MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE"; - field public static final String MANAGE_DEVICE_POLICY_SUSPEND_PERSONAL_APPS = "android.permission.MANAGE_DEVICE_POLICY_SUSPEND_PERSONAL_APPS"; - field public static final String MANAGE_DEVICE_POLICY_SYSTEM_APPS = "android.permission.MANAGE_DEVICE_POLICY_SYSTEM_APPS"; - field public static final String MANAGE_DEVICE_POLICY_SYSTEM_DIALOGS = "android.permission.MANAGE_DEVICE_POLICY_SYSTEM_DIALOGS"; - field public static final String MANAGE_DEVICE_POLICY_SYSTEM_UPDATES = "android.permission.MANAGE_DEVICE_POLICY_SYSTEM_UPDATES"; - field @FlaggedApi("com.android.net.thread.platform.flags.thread_user_restriction_enabled") public static final String MANAGE_DEVICE_POLICY_THREAD_NETWORK = "android.permission.MANAGE_DEVICE_POLICY_THREAD_NETWORK"; - field public static final String MANAGE_DEVICE_POLICY_TIME = "android.permission.MANAGE_DEVICE_POLICY_TIME"; - field public static final String MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING = "android.permission.MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING"; - field public static final String MANAGE_DEVICE_POLICY_USB_FILE_TRANSFER = "android.permission.MANAGE_DEVICE_POLICY_USB_FILE_TRANSFER"; - field public static final String MANAGE_DEVICE_POLICY_USERS = "android.permission.MANAGE_DEVICE_POLICY_USERS"; - field public static final String MANAGE_DEVICE_POLICY_VPN = "android.permission.MANAGE_DEVICE_POLICY_VPN"; - field public static final String MANAGE_DEVICE_POLICY_WALLPAPER = "android.permission.MANAGE_DEVICE_POLICY_WALLPAPER"; - field public static final String MANAGE_DEVICE_POLICY_WIFI = "android.permission.MANAGE_DEVICE_POLICY_WIFI"; - field public static final String MANAGE_DEVICE_POLICY_WINDOWS = "android.permission.MANAGE_DEVICE_POLICY_WINDOWS"; - field public static final String MANAGE_DEVICE_POLICY_WIPE_DATA = "android.permission.MANAGE_DEVICE_POLICY_WIPE_DATA"; - field public static final String MANAGE_DOCUMENTS = "android.permission.MANAGE_DOCUMENTS"; - field public static final String MANAGE_EXTERNAL_STORAGE = "android.permission.MANAGE_EXTERNAL_STORAGE"; - field public static final String MANAGE_MEDIA = "android.permission.MANAGE_MEDIA"; - field public static final String MANAGE_ONGOING_CALLS = "android.permission.MANAGE_ONGOING_CALLS"; - field public static final String MANAGE_OWN_CALLS = "android.permission.MANAGE_OWN_CALLS"; - field public static final String MANAGE_WIFI_INTERFACES = "android.permission.MANAGE_WIFI_INTERFACES"; - field public static final String MANAGE_WIFI_NETWORK_SELECTION = "android.permission.MANAGE_WIFI_NETWORK_SELECTION"; - field public static final String MASTER_CLEAR = "android.permission.MASTER_CLEAR"; - field public static final String MEDIA_CONTENT_CONTROL = "android.permission.MEDIA_CONTENT_CONTROL"; - field @FlaggedApi("com.android.media.flags.enable_privileged_routing_for_media_routing_control") public static final String MEDIA_ROUTING_CONTROL = "android.permission.MEDIA_ROUTING_CONTROL"; - field public static final String MODIFY_AUDIO_SETTINGS = "android.permission.MODIFY_AUDIO_SETTINGS"; - field public static final String MODIFY_PHONE_STATE = "android.permission.MODIFY_PHONE_STATE"; - field public static final String MOUNT_FORMAT_FILESYSTEMS = "android.permission.MOUNT_FORMAT_FILESYSTEMS"; - field public static final String MOUNT_UNMOUNT_FILESYSTEMS = "android.permission.MOUNT_UNMOUNT_FILESYSTEMS"; - field public static final String NEARBY_WIFI_DEVICES = "android.permission.NEARBY_WIFI_DEVICES"; - field public static final String NFC = "android.permission.NFC"; - field public static final String NFC_PREFERRED_PAYMENT_INFO = "android.permission.NFC_PREFERRED_PAYMENT_INFO"; - field public static final String NFC_TRANSACTION_EVENT = "android.permission.NFC_TRANSACTION_EVENT"; - field public static final String OVERRIDE_WIFI_CONFIG = "android.permission.OVERRIDE_WIFI_CONFIG"; - field public static final String PACKAGE_USAGE_STATS = "android.permission.PACKAGE_USAGE_STATS"; - field @Deprecated public static final String PERSISTENT_ACTIVITY = "android.permission.PERSISTENT_ACTIVITY"; - field public static final String POST_NOTIFICATIONS = "android.permission.POST_NOTIFICATIONS"; - field @Deprecated public static final String PROCESS_OUTGOING_CALLS = "android.permission.PROCESS_OUTGOING_CALLS"; - field public static final String PROVIDE_OWN_AUTOFILL_SUGGESTIONS = "android.permission.PROVIDE_OWN_AUTOFILL_SUGGESTIONS"; - field public static final String PROVIDE_REMOTE_CREDENTIALS = "android.permission.PROVIDE_REMOTE_CREDENTIALS"; - field @FlaggedApi("android.security.aapm_api") public static final String QUERY_ADVANCED_PROTECTION_MODE = "android.permission.QUERY_ADVANCED_PROTECTION_MODE"; - field public static final String QUERY_ALL_PACKAGES = "android.permission.QUERY_ALL_PACKAGES"; - field @FlaggedApi("android.permission.flags.ranging_permission_enabled") public static final String RANGING = "android.permission.RANGING"; - field public static final String READ_ASSISTANT_APP_SEARCH_DATA = "android.permission.READ_ASSISTANT_APP_SEARCH_DATA"; - field public static final String READ_BASIC_PHONE_STATE = "android.permission.READ_BASIC_PHONE_STATE"; - field public static final String READ_CALENDAR = "android.permission.READ_CALENDAR"; - field public static final String READ_CALL_LOG = "android.permission.READ_CALL_LOG"; - field @FlaggedApi("android.media.tv.flags.media_quality_fw") public static final String READ_COLOR_ZONES = "android.permission.READ_COLOR_ZONES"; - field public static final String READ_CONTACTS = "android.permission.READ_CONTACTS"; - field @FlaggedApi("com.android.server.feature.flags.enable_read_dropbox_permission") public static final String READ_DROPBOX_DATA = "android.permission.READ_DROPBOX_DATA"; - field public static final String READ_EXTERNAL_STORAGE = "android.permission.READ_EXTERNAL_STORAGE"; - field public static final String READ_HOME_APP_SEARCH_DATA = "android.permission.READ_HOME_APP_SEARCH_DATA"; - field @Deprecated public static final String READ_INPUT_STATE = "android.permission.READ_INPUT_STATE"; - field public static final String READ_LOGS = "android.permission.READ_LOGS"; - field public static final String READ_MEDIA_AUDIO = "android.permission.READ_MEDIA_AUDIO"; - field public static final String READ_MEDIA_IMAGES = "android.permission.READ_MEDIA_IMAGES"; - field public static final String READ_MEDIA_VIDEO = "android.permission.READ_MEDIA_VIDEO"; - field public static final String READ_MEDIA_VISUAL_USER_SELECTED = "android.permission.READ_MEDIA_VISUAL_USER_SELECTED"; - field public static final String READ_NEARBY_STREAMING_POLICY = "android.permission.READ_NEARBY_STREAMING_POLICY"; - field public static final String READ_PHONE_NUMBERS = "android.permission.READ_PHONE_NUMBERS"; - field public static final String READ_PHONE_STATE = "android.permission.READ_PHONE_STATE"; - field public static final String READ_PRECISE_PHONE_STATE = "android.permission.READ_PRECISE_PHONE_STATE"; - field public static final String READ_SMS = "android.permission.READ_SMS"; - field public static final String READ_SYNC_SETTINGS = "android.permission.READ_SYNC_SETTINGS"; - field public static final String READ_SYNC_STATS = "android.permission.READ_SYNC_STATS"; - field @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public static final String READ_SYSTEM_PREFERENCES = "android.permission.READ_SYSTEM_PREFERENCES"; - field public static final String READ_VOICEMAIL = "com.android.voicemail.permission.READ_VOICEMAIL"; - field public static final String REBOOT = "android.permission.REBOOT"; - field public static final String RECEIVE_BOOT_COMPLETED = "android.permission.RECEIVE_BOOT_COMPLETED"; - field public static final String RECEIVE_MMS = "android.permission.RECEIVE_MMS"; - field public static final String RECEIVE_SMS = "android.permission.RECEIVE_SMS"; - field public static final String RECEIVE_WAP_PUSH = "android.permission.RECEIVE_WAP_PUSH"; - field public static final String RECORD_AUDIO = "android.permission.RECORD_AUDIO"; - field public static final String REORDER_TASKS = "android.permission.REORDER_TASKS"; - field public static final String REQUEST_COMPANION_PROFILE_APP_STREAMING = "android.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING"; - field public static final String REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION = "android.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION"; - field public static final String REQUEST_COMPANION_PROFILE_COMPUTER = "android.permission.REQUEST_COMPANION_PROFILE_COMPUTER"; - field public static final String REQUEST_COMPANION_PROFILE_GLASSES = "android.permission.REQUEST_COMPANION_PROFILE_GLASSES"; - field public static final String REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING = "android.permission.REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING"; - field public static final String REQUEST_COMPANION_PROFILE_WATCH = "android.permission.REQUEST_COMPANION_PROFILE_WATCH"; - field public static final String REQUEST_COMPANION_RUN_IN_BACKGROUND = "android.permission.REQUEST_COMPANION_RUN_IN_BACKGROUND"; - field public static final String REQUEST_COMPANION_SELF_MANAGED = "android.permission.REQUEST_COMPANION_SELF_MANAGED"; - field public static final String REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND = "android.permission.REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND"; - field public static final String REQUEST_COMPANION_USE_DATA_IN_BACKGROUND = "android.permission.REQUEST_COMPANION_USE_DATA_IN_BACKGROUND"; - field public static final String REQUEST_DELETE_PACKAGES = "android.permission.REQUEST_DELETE_PACKAGES"; - field public static final String REQUEST_IGNORE_BATTERY_OPTIMIZATIONS = "android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"; - field public static final String REQUEST_INSTALL_PACKAGES = "android.permission.REQUEST_INSTALL_PACKAGES"; - field public static final String REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE = "android.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE"; - field @FlaggedApi("android.companion.device_presence") public static final String REQUEST_OBSERVE_DEVICE_UUID_PRESENCE = "android.permission.REQUEST_OBSERVE_DEVICE_UUID_PRESENCE"; - field public static final String REQUEST_PASSWORD_COMPLEXITY = "android.permission.REQUEST_PASSWORD_COMPLEXITY"; - field @Deprecated public static final String RESTART_PACKAGES = "android.permission.RESTART_PACKAGES"; - field public static final String RUN_USER_INITIATED_JOBS = "android.permission.RUN_USER_INITIATED_JOBS"; - field public static final String SCHEDULE_EXACT_ALARM = "android.permission.SCHEDULE_EXACT_ALARM"; - field public static final String SEND_RESPOND_VIA_MESSAGE = "android.permission.SEND_RESPOND_VIA_MESSAGE"; - field public static final String SEND_SMS = "android.permission.SEND_SMS"; - field public static final String SET_ALARM = "com.android.alarm.permission.SET_ALARM"; - field public static final String SET_ALWAYS_FINISH = "android.permission.SET_ALWAYS_FINISH"; - field public static final String SET_ANIMATION_SCALE = "android.permission.SET_ANIMATION_SCALE"; - field public static final String SET_BIOMETRIC_DIALOG_ADVANCED = "android.permission.SET_BIOMETRIC_DIALOG_ADVANCED"; - field public static final String SET_DEBUG_APP = "android.permission.SET_DEBUG_APP"; - field @Deprecated public static final String SET_PREFERRED_APPLICATIONS = "android.permission.SET_PREFERRED_APPLICATIONS"; - field public static final String SET_PROCESS_LIMIT = "android.permission.SET_PROCESS_LIMIT"; - field public static final String SET_TIME = "android.permission.SET_TIME"; - field public static final String SET_TIME_ZONE = "android.permission.SET_TIME_ZONE"; - field public static final String SET_WALLPAPER = "android.permission.SET_WALLPAPER"; - field public static final String SET_WALLPAPER_HINTS = "android.permission.SET_WALLPAPER_HINTS"; - field public static final String SIGNAL_PERSISTENT_PROCESSES = "android.permission.SIGNAL_PERSISTENT_PROCESSES"; - field @Deprecated public static final String SMS_FINANCIAL_TRANSACTIONS = "android.permission.SMS_FINANCIAL_TRANSACTIONS"; - field public static final String START_FOREGROUND_SERVICES_FROM_BACKGROUND = "android.permission.START_FOREGROUND_SERVICES_FROM_BACKGROUND"; - field public static final String START_VIEW_APP_FEATURES = "android.permission.START_VIEW_APP_FEATURES"; - field public static final String START_VIEW_PERMISSION_USAGE = "android.permission.START_VIEW_PERMISSION_USAGE"; - field public static final String STATUS_BAR = "android.permission.STATUS_BAR"; - field public static final String SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE = "android.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE"; - field public static final String SYSTEM_ALERT_WINDOW = "android.permission.SYSTEM_ALERT_WINDOW"; - field public static final String TRANSMIT_IR = "android.permission.TRANSMIT_IR"; - field public static final String TURN_SCREEN_ON = "android.permission.TURN_SCREEN_ON"; - field @FlaggedApi("android.app.enable_tv_implicit_enter_pip_restriction") public static final String TV_IMPLICIT_ENTER_PIP = "android.permission.TV_IMPLICIT_ENTER_PIP"; - field public static final String UNINSTALL_SHORTCUT = "com.android.launcher.permission.UNINSTALL_SHORTCUT"; - field public static final String UPDATE_DEVICE_STATS = "android.permission.UPDATE_DEVICE_STATS"; - field public static final String UPDATE_PACKAGES_WITHOUT_USER_ACTION = "android.permission.UPDATE_PACKAGES_WITHOUT_USER_ACTION"; - field public static final String USE_BIOMETRIC = "android.permission.USE_BIOMETRIC"; - field public static final String USE_EXACT_ALARM = "android.permission.USE_EXACT_ALARM"; - field @Deprecated public static final String USE_FINGERPRINT = "android.permission.USE_FINGERPRINT"; - field public static final String USE_FULL_SCREEN_INTENT = "android.permission.USE_FULL_SCREEN_INTENT"; - field public static final String USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER = "android.permission.USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER"; - field public static final String USE_SIP = "android.permission.USE_SIP"; - field public static final String UWB_RANGING = "android.permission.UWB_RANGING"; - field public static final String VIBRATE = "android.permission.VIBRATE"; - field public static final String WAKE_LOCK = "android.permission.WAKE_LOCK"; - field public static final String WRITE_APN_SETTINGS = "android.permission.WRITE_APN_SETTINGS"; - field public static final String WRITE_CALENDAR = "android.permission.WRITE_CALENDAR"; - field public static final String WRITE_CALL_LOG = "android.permission.WRITE_CALL_LOG"; - field public static final String WRITE_CONTACTS = "android.permission.WRITE_CONTACTS"; - field public static final String WRITE_EXTERNAL_STORAGE = "android.permission.WRITE_EXTERNAL_STORAGE"; - field public static final String WRITE_GSERVICES = "android.permission.WRITE_GSERVICES"; - field public static final String WRITE_SECURE_SETTINGS = "android.permission.WRITE_SECURE_SETTINGS"; - field public static final String WRITE_SETTINGS = "android.permission.WRITE_SETTINGS"; - field public static final String WRITE_SYNC_SETTINGS = "android.permission.WRITE_SYNC_SETTINGS"; - field @FlaggedApi("com.android.settingslib.flags.write_system_preference_permission_enabled") public static final String WRITE_SYSTEM_PREFERENCES = "android.permission.WRITE_SYSTEM_PREFERENCES"; - field public static final String WRITE_VOICEMAIL = "com.android.voicemail.permission.WRITE_VOICEMAIL"; - } - - public static final class Manifest.permission_group { - ctor public Manifest.permission_group(); - field public static final String ACTIVITY_RECOGNITION = "android.permission-group.ACTIVITY_RECOGNITION"; - field public static final String CALENDAR = "android.permission-group.CALENDAR"; - field public static final String CALL_LOG = "android.permission-group.CALL_LOG"; - field public static final String CAMERA = "android.permission-group.CAMERA"; - field public static final String CONTACTS = "android.permission-group.CONTACTS"; - field public static final String LOCATION = "android.permission-group.LOCATION"; - field public static final String MICROPHONE = "android.permission-group.MICROPHONE"; - field public static final String NEARBY_DEVICES = "android.permission-group.NEARBY_DEVICES"; - field public static final String NOTIFICATIONS = "android.permission-group.NOTIFICATIONS"; - field public static final String PHONE = "android.permission-group.PHONE"; - field public static final String READ_MEDIA_AURAL = "android.permission-group.READ_MEDIA_AURAL"; - field public static final String READ_MEDIA_VISUAL = "android.permission-group.READ_MEDIA_VISUAL"; - field public static final String SENSORS = "android.permission-group.SENSORS"; - field public static final String SMS = "android.permission-group.SMS"; - field public static final String STORAGE = "android.permission-group.STORAGE"; - } - - public final class R { - ctor public R(); - } - - public static final class R.anim { - ctor public R.anim(); - field public static final int accelerate_decelerate_interpolator = 17432580; // 0x10a0004 - field public static final int accelerate_interpolator = 17432581; // 0x10a0005 - field public static final int anticipate_interpolator = 17432583; // 0x10a0007 - field public static final int anticipate_overshoot_interpolator = 17432585; // 0x10a0009 - field public static final int bounce_interpolator = 17432586; // 0x10a000a - field public static final int cycle_interpolator = 17432588; // 0x10a000c - field public static final int decelerate_interpolator = 17432582; // 0x10a0006 - field public static final int fade_in = 17432576; // 0x10a0000 - field public static final int fade_out = 17432577; // 0x10a0001 - field public static final int linear_interpolator = 17432587; // 0x10a000b - field public static final int overshoot_interpolator = 17432584; // 0x10a0008 - field public static final int slide_in_left = 17432578; // 0x10a0002 - field public static final int slide_out_right = 17432579; // 0x10a0003 - } - - public static final class R.animator { - ctor public R.animator(); - field public static final int fade_in = 17498112; // 0x10b0000 - field public static final int fade_out = 17498113; // 0x10b0001 - } - - public static final class R.array { - ctor public R.array(); - field public static final int emailAddressTypes = 17235968; // 0x1070000 - field public static final int imProtocols = 17235969; // 0x1070001 - field public static final int organizationTypes = 17235970; // 0x1070002 - field public static final int phoneTypes = 17235971; // 0x1070003 - field public static final int postalAddressTypes = 17235972; // 0x1070004 - } - - public static final class R.attr { - ctor public R.attr(); - field public static final int absListViewStyle = 16842858; // 0x101006a - field public static final int accessibilityDataSensitive = 16844407; // 0x1010677 - field public static final int accessibilityEventTypes = 16843648; // 0x1010380 - field public static final int accessibilityFeedbackType = 16843650; // 0x1010382 - field public static final int accessibilityFlags = 16843652; // 0x1010384 - field public static final int accessibilityHeading = 16844160; // 0x1010580 - field public static final int accessibilityLiveRegion = 16843758; // 0x10103ee - field public static final int accessibilityPaneTitle = 16844156; // 0x101057c - field public static final int accessibilityTraversalAfter = 16843986; // 0x10104d2 - field public static final int accessibilityTraversalBefore = 16843985; // 0x10104d1 - field public static final int accountPreferences = 16843423; // 0x101029f - field public static final int accountType = 16843407; // 0x101028f - field public static final int action = 16842797; // 0x101002d - field public static final int actionBarDivider = 16843675; // 0x101039b - field public static final int actionBarItemBackground = 16843676; // 0x101039c - field public static final int actionBarPopupTheme = 16843917; // 0x101048d - field public static final int actionBarSize = 16843499; // 0x10102eb - field public static final int actionBarSplitStyle = 16843656; // 0x1010388 - field public static final int actionBarStyle = 16843470; // 0x10102ce - field public static final int actionBarTabBarStyle = 16843508; // 0x10102f4 - field public static final int actionBarTabStyle = 16843507; // 0x10102f3 - field public static final int actionBarTabTextStyle = 16843509; // 0x10102f5 - field public static final int actionBarTheme = 16843825; // 0x1010431 - field public static final int actionBarWidgetTheme = 16843671; // 0x1010397 - field public static final int actionButtonStyle = 16843480; // 0x10102d8 - field public static final int actionDropDownStyle = 16843479; // 0x10102d7 - field public static final int actionLayout = 16843515; // 0x10102fb - field public static final int actionMenuTextAppearance = 16843616; // 0x1010360 - field public static final int actionMenuTextColor = 16843617; // 0x1010361 - field public static final int actionModeBackground = 16843483; // 0x10102db - field public static final int actionModeCloseButtonStyle = 16843511; // 0x10102f7 - field public static final int actionModeCloseDrawable = 16843484; // 0x10102dc - field public static final int actionModeCopyDrawable = 16843538; // 0x1010312 - field public static final int actionModeCutDrawable = 16843537; // 0x1010311 - field public static final int actionModeFindDrawable = 16843898; // 0x101047a - field public static final int actionModePasteDrawable = 16843539; // 0x1010313 - field public static final int actionModeSelectAllDrawable = 16843646; // 0x101037e - field public static final int actionModeShareDrawable = 16843897; // 0x1010479 - field public static final int actionModeSplitBackground = 16843677; // 0x101039d - field public static final int actionModeStyle = 16843668; // 0x1010394 - field public static final int actionModeWebSearchDrawable = 16843899; // 0x101047b - field public static final int actionOverflowButtonStyle = 16843510; // 0x10102f6 - field public static final int actionOverflowMenuStyle = 16843844; // 0x1010444 - field public static final int actionProviderClass = 16843657; // 0x1010389 - field public static final int actionViewClass = 16843516; // 0x10102fc - field public static final int activatedBackgroundIndicator = 16843517; // 0x10102fd - field public static final int activityCloseEnterAnimation = 16842938; // 0x10100ba - field public static final int activityCloseExitAnimation = 16842939; // 0x10100bb - field public static final int activityOpenEnterAnimation = 16842936; // 0x10100b8 - field public static final int activityOpenExitAnimation = 16842937; // 0x10100b9 - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final int adServiceTypes; - field public static final int addPrintersActivity = 16843750; // 0x10103e6 - field public static final int addStatesFromChildren = 16842992; // 0x10100f0 - field public static final int adjustViewBounds = 16843038; // 0x101011e - field public static final int advancedPrintOptionsActivity = 16843761; // 0x10103f1 - field public static final int alertDialogIcon = 16843605; // 0x1010355 - field public static final int alertDialogStyle = 16842845; // 0x101005d - field public static final int alertDialogTheme = 16843529; // 0x1010309 - field public static final int alignmentMode = 16843642; // 0x101037a - field public static final int allContactsName = 16843468; // 0x10102cc - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int allow = 16844430; // 0x101068e - field public static final int allowAudioPlaybackCapture = 16844289; // 0x1010601 - field public static final int allowBackup = 16843392; // 0x1010280 - field public static final int allowClearUserData = 16842757; // 0x1010005 - field public static final int allowClickWhenDisabled = 16844312; // 0x1010618 - field @FlaggedApi("android.security.asm_restrictions_enabled") public static final int allowCrossUidActivitySwitchFromBelow = 16844449; // 0x10106a1 - field public static final int allowEmbedded = 16843765; // 0x10103f5 - field public static final int allowGameAngleDriver = 16844376; // 0x1010658 - field public static final int allowGameDownscaling = 16844377; // 0x1010659 - field public static final int allowGameFpsOverride = 16844378; // 0x101065a - field public static final int allowNativeHeapPointerTagging = 16844306; // 0x1010612 - field public static final int allowParallelSyncs = 16843570; // 0x1010332 - field public static final int allowSharedIsolatedProcess = 16844413; // 0x101067d - field public static final int allowSingleTap = 16843353; // 0x1010259 - field public static final int allowTaskReparenting = 16843268; // 0x1010204 - field public static final int allowUndo = 16843999; // 0x10104df - field public static final int allowUntrustedActivityEmbedding = 16844393; // 0x1010669 - field public static final int allowUpdateOwnership = 16844416; // 0x1010680 - field public static final int alpha = 16843551; // 0x101031f - field public static final int alphabeticModifiers = 16844110; // 0x101054e - field public static final int alphabeticShortcut = 16843235; // 0x10101e3 - field @FlaggedApi("android.content.pm.change_launcher_badging") public static final int alternateLauncherIcons; - field @FlaggedApi("android.content.pm.change_launcher_badging") public static final int alternateLauncherLabels; - field public static final int alwaysDrawnWithCache = 16842991; // 0x10100ef - field public static final int alwaysRetainTaskState = 16843267; // 0x1010203 - field @Deprecated public static final int amPmBackgroundColor = 16843941; // 0x10104a5 - field @Deprecated public static final int amPmTextColor = 16843940; // 0x10104a4 - field public static final int ambientShadowAlpha = 16843966; // 0x10104be - field public static final int angle = 16843168; // 0x10101a0 - field public static final int animateFirstView = 16843477; // 0x10102d5 - field public static final int animateLayoutChanges = 16843506; // 0x10102f2 - field public static final int animateOnClick = 16843356; // 0x101025c - field public static final int animatedImageDrawable = 16844298; // 0x101060a - field public static final int animation = 16843213; // 0x10101cd - field public static final int animationCache = 16842989; // 0x10100ed - field public static final int animationDuration = 16843026; // 0x1010112 - field public static final int animationOrder = 16843214; // 0x10101ce - field @Deprecated public static final int animationResolution = 16843546; // 0x101031a - field public static final int antialias = 16843034; // 0x101011a - field @Deprecated public static final int anyDensity = 16843372; // 0x101026c - field public static final int apduServiceBanner = 16843757; // 0x10103ed - field public static final int apiKey = 16843281; // 0x1010211 - field public static final int appCategory = 16844101; // 0x1010545 - field public static final int appComponentFactory = 16844154; // 0x101057a - field public static final int attributionTags = 16844354; // 0x1010642 - field public static final int attributionsAreUserVisible = 16844363; // 0x101064b - field public static final int author = 16843444; // 0x10102b4 - field public static final int authorities = 16842776; // 0x1010018 - field public static final int autoAdvanceViewId = 16843535; // 0x101030f - field public static final int autoCompleteTextViewStyle = 16842859; // 0x101006b - field public static final int autoHandwritingEnabled = 16844382; // 0x101065e - field public static final int autoLink = 16842928; // 0x10100b0 - field public static final int autoMirrored = 16843754; // 0x10103ea - field public static final int autoRemoveFromRecents = 16843847; // 0x1010447 - field public static final int autoRevokePermissions = 16844307; // 0x1010613 - field public static final int autoSizeMaxTextSize = 16844102; // 0x1010546 - field public static final int autoSizeMinTextSize = 16844088; // 0x1010538 - field public static final int autoSizePresetSizes = 16844087; // 0x1010537 - field public static final int autoSizeStepGranularity = 16844086; // 0x1010536 - field public static final int autoSizeTextType = 16844085; // 0x1010535 - field public static final int autoStart = 16843445; // 0x10102b5 - field @Deprecated public static final int autoText = 16843114; // 0x101016a - field @FlaggedApi("android.nfc.nfc_read_polling_loop") public static final int autoTransact = 16844441; // 0x1010699 - field public static final int autoUrlDetect = 16843404; // 0x101028c - field public static final int autoVerify = 16844014; // 0x10104ee - field public static final int autofillHints = 16844118; // 0x1010556 - field public static final int autofilledHighlight = 16844136; // 0x1010568 - field public static final int backdropColor = 16844402; // 0x1010672 - field public static final int background = 16842964; // 0x10100d4 - field public static final int backgroundDimAmount = 16842802; // 0x1010032 - field public static final int backgroundDimEnabled = 16843295; // 0x101021f - field public static final int backgroundSplit = 16843659; // 0x101038b - field public static final int backgroundStacked = 16843658; // 0x101038a - field public static final int backgroundTint = 16843883; // 0x101046b - field public static final int backgroundTintMode = 16843884; // 0x101046c - field public static final int backupAgent = 16843391; // 0x101027f - field public static final int backupInForeground = 16844058; // 0x101051a - field public static final int banner = 16843762; // 0x10103f2 - field public static final int baseline = 16843548; // 0x101031c - field public static final int baselineAlignBottom = 16843042; // 0x1010122 - field public static final int baselineAligned = 16843046; // 0x1010126 - field public static final int baselineAlignedChildIndex = 16843047; // 0x1010127 - field public static final int bitmap = 16844054; // 0x1010516 - field public static final int borderlessButtonStyle = 16843563; // 0x101032b - field public static final int bottom = 16843184; // 0x10101b0 - field public static final int bottomBright = 16842957; // 0x10100cd - field public static final int bottomDark = 16842953; // 0x10100c9 - field public static final int bottomLeftRadius = 16843179; // 0x10101ab - field public static final int bottomMedium = 16842958; // 0x10100ce - field public static final int bottomOffset = 16843351; // 0x1010257 - field public static final int bottomRightRadius = 16843180; // 0x10101ac - field public static final int breadCrumbShortTitle = 16843524; // 0x1010304 - field public static final int breadCrumbTitle = 16843523; // 0x1010303 - field public static final int breakStrategy = 16843997; // 0x10104dd - field public static final int bufferType = 16843086; // 0x101014e - field public static final int button = 16843015; // 0x1010107 - field public static final int buttonBarButtonStyle = 16843567; // 0x101032f - field public static final int buttonBarNegativeButtonStyle = 16843915; // 0x101048b - field public static final int buttonBarNeutralButtonStyle = 16843914; // 0x101048a - field public static final int buttonBarPositiveButtonStyle = 16843913; // 0x1010489 - field public static final int buttonBarStyle = 16843566; // 0x101032e - field public static final int buttonCornerRadius = 16844149; // 0x1010575 - field public static final int buttonGravity = 16844030; // 0x10104fe - field public static final int buttonStyle = 16842824; // 0x1010048 - field public static final int buttonStyleInset = 16842826; // 0x101004a - field public static final int buttonStyleSmall = 16842825; // 0x1010049 - field public static final int buttonStyleToggle = 16842827; // 0x101004b - field public static final int buttonTint = 16843887; // 0x101046f - field public static final int buttonTintMode = 16843888; // 0x1010470 - field public static final int cacheColorHint = 16843009; // 0x1010101 - field public static final int calendarTextColor = 16843931; // 0x101049b - field public static final int calendarViewShown = 16843596; // 0x101034c - field public static final int calendarViewStyle = 16843613; // 0x101035d - field public static final int canControlMagnification = 16844039; // 0x1010507 - field public static final int canDisplayOnRemoteDevices = 16844368; // 0x1010650 - field public static final int canPauseRecording = 16844314; // 0x101061a - field public static final int canPerformGestures = 16844045; // 0x101050d - field public static final int canRecord = 16844060; // 0x101051c - field @Deprecated public static final int canRequestEnhancedWebAccessibility = 16843736; // 0x10103d8 - field public static final int canRequestFilterKeyEvents = 16843737; // 0x10103d9 - field public static final int canRequestFingerprintGestures = 16844109; // 0x101054d - field public static final int canRequestTouchExplorationMode = 16843735; // 0x10103d7 - field public static final int canRetrieveWindowContent = 16843653; // 0x1010385 - field public static final int canTakeScreenshot = 16844303; // 0x101060f - field public static final int candidatesTextStyleSpans = 16843312; // 0x1010230 - field public static final int cantSaveState = 16844142; // 0x101056e - field public static final int capability = 16844423; // 0x1010687 - field @Deprecated public static final int capitalize = 16843113; // 0x1010169 - field public static final int category = 16843752; // 0x10103e8 - field public static final int centerBright = 16842956; // 0x10100cc - field public static final int centerColor = 16843275; // 0x101020b - field public static final int centerDark = 16842952; // 0x10100c8 - field public static final int centerMedium = 16842959; // 0x10100cf - field public static final int centerX = 16843170; // 0x10101a2 - field public static final int centerY = 16843171; // 0x10101a3 - field public static final int certDigest = 16844104; // 0x1010548 - field public static final int checkBoxPreferenceStyle = 16842895; // 0x101008f - field public static final int checkMark = 16843016; // 0x1010108 - field public static final int checkMarkTint = 16843943; // 0x10104a7 - field public static final int checkMarkTintMode = 16843944; // 0x10104a8 - field public static final int checkable = 16843237; // 0x10101e5 - field public static final int checkableBehavior = 16843232; // 0x10101e0 - field public static final int checkboxStyle = 16842860; // 0x101006c - field public static final int checked = 16843014; // 0x1010106 - field public static final int checkedButton = 16843080; // 0x1010148 - field public static final int checkedTextViewStyle = 16843720; // 0x10103c8 - field public static final int childDivider = 16843025; // 0x1010111 - field public static final int childIndicator = 16843020; // 0x101010c - field public static final int childIndicatorEnd = 16843732; // 0x10103d4 - field public static final int childIndicatorLeft = 16843023; // 0x101010f - field public static final int childIndicatorRight = 16843024; // 0x1010110 - field public static final int childIndicatorStart = 16843731; // 0x10103d3 - field public static final int choiceMode = 16843051; // 0x101012b - field public static final int classLoader = 16844139; // 0x101056b - field public static final int clearTaskOnLaunch = 16842773; // 0x1010015 - field public static final int clickable = 16842981; // 0x10100e5 - field public static final int clipChildren = 16842986; // 0x10100ea - field public static final int clipOrientation = 16843274; // 0x101020a - field public static final int clipToOutline = 16844328; // 0x1010628 - field public static final int clipToPadding = 16842987; // 0x10100eb - field public static final int closeIcon = 16843905; // 0x1010481 - field @Deprecated public static final int codes = 16843330; // 0x1010242 - field public static final int collapseColumns = 16843083; // 0x101014b - field public static final int collapseContentDescription = 16843984; // 0x10104d0 - field public static final int collapseIcon = 16844031; // 0x10104ff - field public static final int color = 16843173; // 0x10101a5 - field public static final int colorAccent = 16843829; // 0x1010435 - field public static final int colorActivatedHighlight = 16843664; // 0x1010390 - field public static final int colorBackground = 16842801; // 0x1010031 - field public static final int colorBackgroundCacheHint = 16843435; // 0x10102ab - field public static final int colorBackgroundFloating = 16844002; // 0x10104e2 - field public static final int colorButtonNormal = 16843819; // 0x101042b - field public static final int colorControlActivated = 16843818; // 0x101042a - field public static final int colorControlHighlight = 16843820; // 0x101042c - field public static final int colorControlNormal = 16843817; // 0x1010429 - field public static final int colorEdgeEffect = 16843982; // 0x10104ce - field public static final int colorError = 16844099; // 0x1010543 - field public static final int colorFocusedHighlight = 16843663; // 0x101038f - field public static final int colorForeground = 16842800; // 0x1010030 - field public static final int colorForegroundInverse = 16843270; // 0x1010206 - field public static final int colorLongPressedHighlight = 16843662; // 0x101038e - field public static final int colorMode = 16844106; // 0x101054a - field public static final int colorMultiSelectHighlight = 16843665; // 0x1010391 - field public static final int colorPressedHighlight = 16843661; // 0x101038d - field public static final int colorPrimary = 16843827; // 0x1010433 - field public static final int colorPrimaryDark = 16843828; // 0x1010434 - field public static final int colorSecondary = 16844080; // 0x1010530 - field public static final int columnCount = 16843639; // 0x1010377 - field public static final int columnDelay = 16843215; // 0x10101cf - field public static final int columnOrderPreserved = 16843640; // 0x1010378 - field public static final int columnWidth = 16843031; // 0x1010117 - field public static final int commitIcon = 16843909; // 0x1010485 - field public static final int compatibleWidthLimitDp = 16843621; // 0x1010365 - field public static final int completionHint = 16843122; // 0x1010172 - field public static final int completionHintView = 16843123; // 0x1010173 - field public static final int completionThreshold = 16843124; // 0x1010174 - field public static final int configChanges = 16842783; // 0x101001f - field public static final int configure = 16843357; // 0x101025d - field public static final int constantSize = 16843158; // 0x1010196 - field public static final int content = 16843355; // 0x101025b - field public static final int contentAgeHint = 16843961; // 0x10104b9 - field public static final int contentAuthority = 16843408; // 0x1010290 - field public static final int contentDescription = 16843379; // 0x1010273 - field public static final int contentInsetEnd = 16843860; // 0x1010454 - field public static final int contentInsetEndWithActions = 16844067; // 0x1010523 - field public static final int contentInsetLeft = 16843861; // 0x1010455 - field public static final int contentInsetRight = 16843862; // 0x1010456 - field public static final int contentInsetStart = 16843859; // 0x1010453 - field public static final int contentInsetStartWithNavigation = 16844066; // 0x1010522 - field @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public static final int contentSensitivity = 16844446; // 0x101069e - field public static final int contextClickable = 16844007; // 0x10104e7 - field public static final int contextDescription = 16844078; // 0x101052e - field public static final int contextPopupMenuStyle = 16844033; // 0x1010501 - field public static final int contextUri = 16844077; // 0x101052d - field public static final int controlX1 = 16843772; // 0x10103fc - field public static final int controlX2 = 16843774; // 0x10103fe - field public static final int controlY1 = 16843773; // 0x10103fd - field public static final int controlY2 = 16843775; // 0x10103ff - field public static final int countDown = 16844059; // 0x101051b - field public static final int country = 16843962; // 0x10104ba - field public static final int cropToPadding = 16843043; // 0x1010123 - field public static final int crossProfile = 16844302; // 0x101060e - field public static final int cursorVisible = 16843090; // 0x1010152 - field public static final int customNavigationLayout = 16843474; // 0x10102d2 - field public static final int customTokens = 16843579; // 0x101033b - field public static final int cycles = 16843220; // 0x10101d4 - field public static final int dashGap = 16843175; // 0x10101a7 - field public static final int dashWidth = 16843174; // 0x10101a6 - field public static final int data = 16842798; // 0x101002e - field public static final int dataExtractionRules = 16844350; // 0x101063e - field public static final int datePickerDialogTheme = 16843948; // 0x10104ac - field public static final int datePickerMode = 16843955; // 0x10104b3 - field public static final int datePickerStyle = 16843612; // 0x101035c - field public static final int dateTextAppearance = 16843593; // 0x1010349 - field @Deprecated public static final int dayOfWeekBackground = 16843924; // 0x1010494 - field @Deprecated public static final int dayOfWeekTextAppearance = 16843925; // 0x1010495 - field public static final int debuggable = 16842767; // 0x101000f - field public static final int defaultFocusHighlightEnabled = 16844130; // 0x1010562 - field public static final int defaultHeight = 16844021; // 0x10104f5 - field @FlaggedApi("android.content.res.default_locale") public static final int defaultLocale = 16844424; // 0x1010688 - field public static final int defaultToDeviceProtectedStorage = 16844036; // 0x1010504 - field public static final int defaultValue = 16843245; // 0x10101ed - field public static final int defaultWidth = 16844020; // 0x10104f4 - field public static final int delay = 16843212; // 0x10101cc - field public static final int dependency = 16843244; // 0x10101ec - field public static final int descendantFocusability = 16842993; // 0x10100f1 - field public static final int description = 16842784; // 0x1010020 - field public static final int detachWallpaper = 16843430; // 0x10102a6 - field public static final int detailColumn = 16843427; // 0x10102a3 - field public static final int detailSocialSummary = 16843428; // 0x10102a4 - field public static final int detailsElementBackground = 16843598; // 0x101034e - field public static final int dial = 16843010; // 0x1010102 - field public static final int dialTint = 16844342; // 0x1010636 - field public static final int dialTintMode = 16844343; // 0x1010637 - field public static final int dialogCornerRadius = 16844145; // 0x1010571 - field public static final int dialogIcon = 16843252; // 0x10101f4 - field public static final int dialogLayout = 16843255; // 0x10101f7 - field public static final int dialogMessage = 16843251; // 0x10101f3 - field public static final int dialogPreferenceStyle = 16842897; // 0x1010091 - field public static final int dialogPreferredPadding = 16843987; // 0x10104d3 - field public static final int dialogTheme = 16843528; // 0x1010308 - field public static final int dialogTitle = 16843250; // 0x10101f2 - field public static final int digits = 16843110; // 0x1010166 - field public static final int directBootAware = 16844037; // 0x1010505 - field public static final int direction = 16843217; // 0x10101d1 - field @Deprecated public static final int directionDescriptions = 16843681; // 0x10103a1 - field public static final int directionPriority = 16843218; // 0x10101d2 - field public static final int disableDependentsState = 16843249; // 0x10101f1 - field public static final int disabledAlpha = 16842803; // 0x1010033 - field public static final int displayOptions = 16843472; // 0x10102d0 - field public static final int dither = 16843036; // 0x101011c - field public static final int divider = 16843049; // 0x1010129 - field public static final int dividerHeight = 16843050; // 0x101012a - field public static final int dividerHorizontal = 16843564; // 0x101032c - field public static final int dividerPadding = 16843562; // 0x101032a - field public static final int dividerVertical = 16843530; // 0x101030a - field public static final int documentLaunchMode = 16843845; // 0x1010445 - field public static final int drawSelectorOnTop = 16843004; // 0x10100fc - field public static final int drawable = 16843161; // 0x1010199 - field public static final int drawableBottom = 16843118; // 0x101016e - field public static final int drawableEnd = 16843667; // 0x1010393 - field public static final int drawableLeft = 16843119; // 0x101016f - field public static final int drawablePadding = 16843121; // 0x1010171 - field public static final int drawableRight = 16843120; // 0x1010170 - field public static final int drawableStart = 16843666; // 0x1010392 - field public static final int drawableTint = 16843990; // 0x10104d6 - field public static final int drawableTintMode = 16843991; // 0x10104d7 - field public static final int drawableTop = 16843117; // 0x101016d - field public static final int drawingCacheQuality = 16842984; // 0x10100e8 - field public static final int dropDownAnchor = 16843363; // 0x1010263 - field public static final int dropDownHeight = 16843395; // 0x1010283 - field public static final int dropDownHintAppearance = 16842888; // 0x1010088 - field public static final int dropDownHorizontalOffset = 16843436; // 0x10102ac - field public static final int dropDownItemStyle = 16842886; // 0x1010086 - field public static final int dropDownListViewStyle = 16842861; // 0x101006d - field public static final int dropDownSelector = 16843125; // 0x1010175 - field public static final int dropDownSpinnerStyle = 16843478; // 0x10102d6 - field public static final int dropDownVerticalOffset = 16843437; // 0x10102ad - field public static final int dropDownWidth = 16843362; // 0x1010262 - field public static final int duplicateParentState = 16842985; // 0x10100e9 - field public static final int duration = 16843160; // 0x1010198 - field public static final int editTextBackground = 16843602; // 0x1010352 - field public static final int editTextColor = 16843601; // 0x1010351 - field public static final int editTextPreferenceStyle = 16842898; // 0x1010092 - field public static final int editTextStyle = 16842862; // 0x101006e - field @Deprecated public static final int editable = 16843115; // 0x101016b - field public static final int editorExtras = 16843300; // 0x1010224 - field public static final int effectColor = 16844361; // 0x1010649 - field public static final int elegantTextHeight = 16843869; // 0x101045d - field public static final int elevation = 16843840; // 0x1010440 - field public static final int ellipsize = 16842923; // 0x10100ab - field public static final int ems = 16843096; // 0x1010158 - field public static final int enableOnBackInvokedCallback = 16844396; // 0x101066c - field public static final int enableTextStylingShortcuts = 16844408; // 0x1010678 - field public static final int enableVrMode = 16844069; // 0x1010525 - field public static final int enabled = 16842766; // 0x101000e - field public static final int end = 16843996; // 0x10104dc - field public static final int endColor = 16843166; // 0x101019e - field public static final int endX = 16844050; // 0x1010512 - field public static final int endY = 16844051; // 0x1010513 - field @Deprecated public static final int endYear = 16843133; // 0x101017d - field public static final int enforceNavigationBarContrast = 16844293; // 0x1010605 - field @Deprecated public static final int enforceStatusBarContrast = 16844292; // 0x1010604 - field public static final int enterFadeDuration = 16843532; // 0x101030c - field public static final int entries = 16842930; // 0x10100b2 - field public static final int entryValues = 16843256; // 0x10101f8 - field public static final int eventsInterceptionEnabled = 16843389; // 0x101027d - field public static final int excludeClass = 16843842; // 0x1010442 - field public static final int excludeFromRecents = 16842775; // 0x1010017 - field public static final int excludeId = 16843841; // 0x1010441 - field public static final int excludeName = 16843854; // 0x101044e - field public static final int exitFadeDuration = 16843533; // 0x101030d - field public static final int expandableListPreferredChildIndicatorLeft = 16842834; // 0x1010052 - field public static final int expandableListPreferredChildIndicatorRight = 16842835; // 0x1010053 - field public static final int expandableListPreferredChildPaddingLeft = 16842831; // 0x101004f - field public static final int expandableListPreferredItemIndicatorLeft = 16842832; // 0x1010050 - field public static final int expandableListPreferredItemIndicatorRight = 16842833; // 0x1010051 - field public static final int expandableListPreferredItemPaddingLeft = 16842830; // 0x101004e - field public static final int expandableListViewStyle = 16842863; // 0x101006f - field public static final int expandableListViewWhiteStyle = 16843446; // 0x10102b6 - field public static final int exported = 16842768; // 0x1010010 - field public static final int externalService = 16844046; // 0x101050e - field public static final int extraTension = 16843371; // 0x101026b - field public static final int extractNativeLibs = 16844010; // 0x10104ea - field public static final int factor = 16843219; // 0x10101d3 - field public static final int fadeDuration = 16843384; // 0x1010278 - field public static final int fadeEnabled = 16843390; // 0x101027e - field public static final int fadeOffset = 16843383; // 0x1010277 - field public static final int fadeScrollbars = 16843434; // 0x10102aa - field public static final int fadingEdge = 16842975; // 0x10100df - field public static final int fadingEdgeLength = 16842976; // 0x10100e0 - field public static final int fadingMode = 16843745; // 0x10103e1 - field public static final int fallbackLineSpacing = 16844155; // 0x101057b - field public static final int fastScrollAlwaysVisible = 16843573; // 0x1010335 - field public static final int fastScrollEnabled = 16843302; // 0x1010226 - field public static final int fastScrollOverlayPosition = 16843578; // 0x101033a - field public static final int fastScrollPreviewBackgroundLeft = 16843575; // 0x1010337 - field public static final int fastScrollPreviewBackgroundRight = 16843576; // 0x1010338 - field public static final int fastScrollStyle = 16843767; // 0x10103f7 - field public static final int fastScrollTextColor = 16843609; // 0x1010359 - field public static final int fastScrollThumbDrawable = 16843574; // 0x1010336 - field public static final int fastScrollTrackDrawable = 16843577; // 0x1010339 - field public static final int fillAfter = 16843197; // 0x10101bd - field public static final int fillAlpha = 16843980; // 0x10104cc - field public static final int fillBefore = 16843196; // 0x10101bc - field public static final int fillColor = 16843780; // 0x1010404 - field public static final int fillEnabled = 16843343; // 0x101024f - field public static final int fillType = 16844062; // 0x101051e - field public static final int fillViewport = 16843130; // 0x101017a - field public static final int filter = 16843035; // 0x101011b - field public static final int filterTouchesWhenObscured = 16843460; // 0x10102c4 - field public static final int fingerprintAuthDrawable = 16844008; // 0x10104e8 - field public static final int finishOnCloseSystemDialogs = 16843431; // 0x10102a7 - field public static final int finishOnTaskLaunch = 16842772; // 0x1010014 - field public static final int firstBaselineToTopHeight = 16844157; // 0x101057d - field public static final int firstDayOfWeek = 16843581; // 0x101033d - field public static final int fitsSystemWindows = 16842973; // 0x10100dd - field public static final int flipInterval = 16843129; // 0x1010179 - field public static final int focusable = 16842970; // 0x10100da - field public static final int focusableInTouchMode = 16842971; // 0x10100db - field public static final int focusedByDefault = 16844100; // 0x1010544 - field @Deprecated public static final int focusedMonthDateColor = 16843587; // 0x1010343 - field public static final int focusedSearchResultHighlightColor = 16844419; // 0x1010683 - field public static final int font = 16844082; // 0x1010532 - field public static final int fontFamily = 16843692; // 0x10103ac - field public static final int fontFeatureSettings = 16843959; // 0x10104b7 - field @Deprecated public static final int fontProviderAuthority = 16844112; // 0x1010550 - field @Deprecated public static final int fontProviderCerts = 16844125; // 0x101055d - field @Deprecated public static final int fontProviderPackage = 16844119; // 0x1010557 - field @Deprecated public static final int fontProviderQuery = 16844113; // 0x1010551 - field public static final int fontProviderSystemFontFamily = 16844322; // 0x1010622 - field public static final int fontStyle = 16844095; // 0x101053f - field public static final int fontVariationSettings = 16844144; // 0x1010570 - field public static final int fontWeight = 16844083; // 0x1010533 - field public static final int footerDividersEnabled = 16843311; // 0x101022f - field public static final int forceDarkAllowed = 16844172; // 0x101058c - field public static final int forceHasOverlappingRendering = 16844065; // 0x1010521 - field public static final int forceQueryable = 16844296; // 0x1010608 - field public static final int forceUriPermissions = 16844191; // 0x101059f - field public static final int foreground = 16843017; // 0x1010109 - field public static final int foregroundGravity = 16843264; // 0x1010200 - field public static final int foregroundServiceType = 16844185; // 0x1010599 - field public static final int foregroundTint = 16843885; // 0x101046d - field public static final int foregroundTintMode = 16843886; // 0x101046e - field public static final int format = 16843013; // 0x1010105 - field public static final int format12Hour = 16843722; // 0x10103ca - field public static final int format24Hour = 16843723; // 0x10103cb - field public static final int fraction = 16843992; // 0x10104d8 - field public static final int fragment = 16843491; // 0x10102e3 - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int fragmentAdvancedPattern = 16844438; // 0x1010696 - field public static final int fragmentAllowEnterTransitionOverlap = 16843976; // 0x10104c8 - field public static final int fragmentAllowReturnTransitionOverlap = 16843977; // 0x10104c9 - field public static final int fragmentCloseEnterAnimation = 16843495; // 0x10102e7 - field public static final int fragmentCloseExitAnimation = 16843496; // 0x10102e8 - field public static final int fragmentEnterTransition = 16843971; // 0x10104c3 - field public static final int fragmentExitTransition = 16843970; // 0x10104c2 - field public static final int fragmentFadeEnterAnimation = 16843497; // 0x10102e9 - field public static final int fragmentFadeExitAnimation = 16843498; // 0x10102ea - field public static final int fragmentOpenEnterAnimation = 16843493; // 0x10102e5 - field public static final int fragmentOpenExitAnimation = 16843494; // 0x10102e6 - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int fragmentPattern = 16844437; // 0x1010695 - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int fragmentPrefix = 16844436; // 0x1010694 - field public static final int fragmentReenterTransition = 16843975; // 0x10104c7 - field public static final int fragmentReturnTransition = 16843973; // 0x10104c5 - field public static final int fragmentSharedElementEnterTransition = 16843972; // 0x10104c4 - field public static final int fragmentSharedElementReturnTransition = 16843974; // 0x10104c6 - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int fragmentSuffix = 16844439; // 0x1010697 - field public static final int freezesText = 16843116; // 0x101016c - field public static final int fromAlpha = 16843210; // 0x10101ca - field public static final int fromDegrees = 16843187; // 0x10101b3 - field public static final int fromExtendBottom = 16844386; // 0x1010662 - field public static final int fromExtendLeft = 16844383; // 0x101065f - field public static final int fromExtendRight = 16844385; // 0x1010661 - field public static final int fromExtendTop = 16844384; // 0x1010660 - field public static final int fromId = 16843850; // 0x101044a - field public static final int fromScene = 16843741; // 0x10103dd - field public static final int fromXDelta = 16843206; // 0x10101c6 - field public static final int fromXScale = 16843202; // 0x10101c2 - field public static final int fromYDelta = 16843208; // 0x10101c8 - field public static final int fromYScale = 16843204; // 0x10101c4 - field public static final int fullBackupContent = 16844011; // 0x10104eb - field public static final int fullBackupOnly = 16843891; // 0x1010473 - field public static final int fullBright = 16842954; // 0x10100ca - field public static final int fullDark = 16842950; // 0x10100c6 - field public static final int functionalTest = 16842787; // 0x1010023 - field public static final int galleryItemBackground = 16842828; // 0x101004c - field public static final int galleryStyle = 16842864; // 0x1010070 - field public static final int gestureColor = 16843381; // 0x1010275 - field public static final int gestureStrokeAngleThreshold = 16843388; // 0x101027c - field public static final int gestureStrokeLengthThreshold = 16843386; // 0x101027a - field public static final int gestureStrokeSquarenessThreshold = 16843387; // 0x101027b - field public static final int gestureStrokeType = 16843385; // 0x1010279 - field public static final int gestureStrokeWidth = 16843380; // 0x1010274 - field public static final int glEsVersion = 16843393; // 0x1010281 - field public static final int goIcon = 16843906; // 0x1010482 - field public static final int gradientRadius = 16843172; // 0x10101a4 - field public static final int grantUriPermissions = 16842779; // 0x101001b - field public static final int gravity = 16842927; // 0x10100af - field public static final int gridViewStyle = 16842865; // 0x1010071 - field public static final int groupIndicator = 16843019; // 0x101010b - field public static final int gwpAsanMode = 16844310; // 0x1010616 - field public static final int hand_hour = 16843011; // 0x1010103 - field public static final int hand_hourTint = 16844344; // 0x1010638 - field public static final int hand_hourTintMode = 16844345; // 0x1010639 - field public static final int hand_minute = 16843012; // 0x1010104 - field public static final int hand_minuteTint = 16844346; // 0x101063a - field public static final int hand_minuteTintMode = 16844347; // 0x101063b - field public static final int hand_second = 16844323; // 0x1010623 - field public static final int hand_secondTint = 16844348; // 0x101063c - field public static final int hand_secondTintMode = 16844349; // 0x101063d - field public static final int handle = 16843354; // 0x101025a - field public static final int handleProfiling = 16842786; // 0x1010022 - field public static final int handwritingBoundsOffsetBottom = 16844406; // 0x1010676 - field public static final int handwritingBoundsOffsetLeft = 16844403; // 0x1010673 - field public static final int handwritingBoundsOffsetRight = 16844405; // 0x1010675 - field public static final int handwritingBoundsOffsetTop = 16844404; // 0x1010674 - field public static final int hapticFeedbackEnabled = 16843358; // 0x101025e - field public static final int hardwareAccelerated = 16843475; // 0x10102d3 - field public static final int hasCode = 16842764; // 0x101000c - field public static final int hasFragileUserData = 16844186; // 0x101059a - field @Deprecated public static final int headerAmPmTextAppearance = 16843936; // 0x10104a0 - field public static final int headerBackground = 16843055; // 0x101012f - field @Deprecated public static final int headerDayOfMonthTextAppearance = 16843927; // 0x1010497 - field public static final int headerDividersEnabled = 16843310; // 0x101022e - field @Deprecated public static final int headerMonthTextAppearance = 16843926; // 0x1010496 - field @Deprecated public static final int headerTimeTextAppearance = 16843935; // 0x101049f - field @Deprecated public static final int headerYearTextAppearance = 16843928; // 0x1010498 - field public static final int height = 16843093; // 0x1010155 - field public static final int hideOnContentScroll = 16843843; // 0x1010443 - field public static final int hint = 16843088; // 0x1010150 - field public static final int homeAsUpIndicator = 16843531; // 0x101030b - field public static final int homeLayout = 16843549; // 0x101031d - field public static final int horizontalDivider = 16843053; // 0x101012d - field @Deprecated public static final int horizontalGap = 16843327; // 0x101023f - field public static final int horizontalScrollViewStyle = 16843603; // 0x1010353 - field public static final int horizontalSpacing = 16843028; // 0x1010114 - field public static final int host = 16842792; // 0x1010028 - field public static final int hotSpotX = 16844055; // 0x1010517 - field public static final int hotSpotY = 16844056; // 0x1010518 - field public static final int htmlDescription = 16844299; // 0x101060b - field public static final int hyphenationFrequency = 16843998; // 0x10104de - field public static final int icon = 16842754; // 0x1010002 - field @Deprecated public static final int iconPreview = 16843337; // 0x1010249 - field public static final int iconSpaceReserved = 16844129; // 0x1010561 - field public static final int iconTint = 16844126; // 0x101055e - field public static final int iconTintMode = 16844127; // 0x101055f - field public static final int iconifiedByDefault = 16843514; // 0x10102fa - field public static final int id = 16842960; // 0x10100d0 - field public static final int identifier = 16844294; // 0x1010606 - field public static final int ignoreGravity = 16843263; // 0x10101ff - field public static final int imageButtonStyle = 16842866; // 0x1010072 - field public static final int imageWellStyle = 16842867; // 0x1010073 - field public static final int imeActionId = 16843366; // 0x1010266 - field public static final int imeActionLabel = 16843365; // 0x1010265 - field public static final int imeExtractEnterAnimation = 16843368; // 0x1010268 - field public static final int imeExtractExitAnimation = 16843369; // 0x1010269 - field public static final int imeFullscreenBackground = 16843308; // 0x101022c - field public static final int imeOptions = 16843364; // 0x1010264 - field public static final int imeSubtypeExtraValue = 16843502; // 0x10102ee - field public static final int imeSubtypeLocale = 16843500; // 0x10102ec - field public static final int imeSubtypeMode = 16843501; // 0x10102ed - field public static final int immersive = 16843456; // 0x10102c0 - field public static final int importantForAccessibility = 16843690; // 0x10103aa - field public static final int importantForAutofill = 16844120; // 0x1010558 - field public static final int importantForContentCapture = 16844295; // 0x1010607 - field public static final int inAnimation = 16843127; // 0x1010177 - field public static final int includeFontPadding = 16843103; // 0x101015f - field public static final int includeInGlobalSearch = 16843374; // 0x101026e - field public static final int indeterminate = 16843065; // 0x1010139 - field public static final int indeterminateBehavior = 16843070; // 0x101013e - field public static final int indeterminateDrawable = 16843067; // 0x101013b - field public static final int indeterminateDuration = 16843069; // 0x101013d - field public static final int indeterminateOnly = 16843066; // 0x101013a - field public static final int indeterminateProgressStyle = 16843544; // 0x1010318 - field public static final int indeterminateTint = 16843881; // 0x1010469 - field public static final int indeterminateTintMode = 16843882; // 0x101046a - field public static final int indicatorEnd = 16843730; // 0x10103d2 - field public static final int indicatorLeft = 16843021; // 0x101010d - field public static final int indicatorRight = 16843022; // 0x101010e - field public static final int indicatorStart = 16843729; // 0x10103d1 - field public static final int inflatedId = 16842995; // 0x10100f3 - field public static final int inheritShowWhenLocked = 16844188; // 0x101059c - field public static final int initOrder = 16842778; // 0x101001a - field public static final int initialKeyguardLayout = 16843714; // 0x10103c2 - field public static final int initialLayout = 16843345; // 0x1010251 - field public static final int innerRadius = 16843359; // 0x101025f - field public static final int innerRadiusRatio = 16843163; // 0x101019b - field @Deprecated public static final int inputMethod = 16843112; // 0x1010168 - field public static final int inputType = 16843296; // 0x1010220 - field public static final int inset = 16843957; // 0x10104b5 - field public static final int insetBottom = 16843194; // 0x10101ba - field public static final int insetLeft = 16843191; // 0x10101b7 - field public static final int insetRight = 16843192; // 0x10101b8 - field public static final int insetTop = 16843193; // 0x10101b9 - field public static final int installLocation = 16843447; // 0x10102b7 - field @FlaggedApi("android.security.enable_intent_matching_flags") public static final int intentMatchingFlags; - field public static final int interactiveUiTimeout = 16844181; // 0x1010595 - field public static final int interpolator = 16843073; // 0x1010141 - field public static final int intro = 16844395; // 0x101066b - field public static final int isAccessibilityTool = 16844353; // 0x1010641 - field public static final int isAlwaysSyncable = 16843571; // 0x1010333 - field public static final int isAsciiCapable = 16843753; // 0x10103e9 - field public static final int isAuxiliary = 16843647; // 0x101037f - field public static final int isCredential = 16844417; // 0x1010681 - field public static final int isDefault = 16843297; // 0x1010221 - field public static final int isFeatureSplit = 16844123; // 0x101055b - field public static final int isGame = 16843764; // 0x10103f4 - field public static final int isIndicator = 16843079; // 0x1010147 - field public static final int isLightTheme = 16844176; // 0x1010590 - field @Deprecated public static final int isModifier = 16843334; // 0x1010246 - field @Deprecated public static final int isRepeatable = 16843336; // 0x1010248 - field public static final int isScrollContainer = 16843342; // 0x101024e - field @Deprecated public static final int isSplitRequired = 16844177; // 0x1010591 - field public static final int isStatic = 16844122; // 0x101055a - field @Deprecated public static final int isSticky = 16843335; // 0x1010247 - field public static final int isolatedProcess = 16843689; // 0x10103a9 - field public static final int isolatedSplits = 16844107; // 0x101054b - field public static final int itemBackground = 16843056; // 0x1010130 - field public static final int itemIconDisabledAlpha = 16843057; // 0x1010131 - field public static final int itemPadding = 16843565; // 0x101032d - field public static final int itemTextAppearance = 16843052; // 0x101012c - field public static final int justificationMode = 16844135; // 0x1010567 - field public static final int keepScreenOn = 16843286; // 0x1010216 - field public static final int key = 16843240; // 0x10101e8 - field @Deprecated public static final int keyBackground = 16843315; // 0x1010233 - field @Deprecated public static final int keyEdgeFlags = 16843333; // 0x1010245 - field @Deprecated public static final int keyHeight = 16843326; // 0x101023e - field @Deprecated public static final int keyIcon = 16843340; // 0x101024c - field @Deprecated public static final int keyLabel = 16843339; // 0x101024b - field @Deprecated public static final int keyOutputText = 16843338; // 0x101024a - field @Deprecated public static final int keyPreviewHeight = 16843321; // 0x1010239 - field @Deprecated public static final int keyPreviewLayout = 16843319; // 0x1010237 - field @Deprecated public static final int keyPreviewOffset = 16843320; // 0x1010238 - field public static final int keySet = 16843739; // 0x10103db - field @Deprecated public static final int keyTextColor = 16843318; // 0x1010236 - field @Deprecated public static final int keyTextSize = 16843316; // 0x1010234 - field @Deprecated public static final int keyWidth = 16843325; // 0x101023d - field public static final int keyboardLayout = 16843691; // 0x10103ab - field public static final int keyboardLayoutType = 16844415; // 0x101067f - field public static final int keyboardLocale = 16844414; // 0x101067e - field @Deprecated public static final int keyboardMode = 16843341; // 0x101024d - field public static final int keyboardNavigationCluster = 16844096; // 0x1010540 - field public static final int keycode = 16842949; // 0x10100c5 - field public static final int killAfterRestore = 16843420; // 0x101029c - field public static final int knownActivityEmbeddingCerts = 16844394; // 0x101066a - field public static final int knownCerts = 16844330; // 0x101062a - field public static final int lStar = 16844359; // 0x1010647 - field public static final int label = 16842753; // 0x1010001 - field public static final int labelFor = 16843718; // 0x10103c6 - field @Deprecated public static final int labelTextSize = 16843317; // 0x1010235 - field @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") public static final int languageSettingsActivity; - field public static final int languageTag = 16844040; // 0x1010508 - field public static final int largeHeap = 16843610; // 0x101035a - field public static final int largeScreens = 16843398; // 0x1010286 - field public static final int largestWidthLimitDp = 16843622; // 0x1010366 - field public static final int lastBaselineToBottomHeight = 16844158; // 0x101057e - field public static final int launchMode = 16842781; // 0x101001d - field public static final int launchTaskBehindSourceAnimation = 16843922; // 0x1010492 - field public static final int launchTaskBehindTargetAnimation = 16843921; // 0x1010491 - field public static final int layerType = 16843604; // 0x1010354 - field public static final int layout = 16842994; // 0x10100f2 - field public static final int layoutAnimation = 16842988; // 0x10100ec - field public static final int layoutDirection = 16843698; // 0x10103b2 - field @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") public static final int layoutLabel; - field public static final int layoutMode = 16843738; // 0x10103da - field public static final int layout_above = 16843140; // 0x1010184 - field public static final int layout_alignBaseline = 16843142; // 0x1010186 - field public static final int layout_alignBottom = 16843146; // 0x101018a - field public static final int layout_alignEnd = 16843706; // 0x10103ba - field public static final int layout_alignLeft = 16843143; // 0x1010187 - field public static final int layout_alignParentBottom = 16843150; // 0x101018e - field public static final int layout_alignParentEnd = 16843708; // 0x10103bc - field public static final int layout_alignParentLeft = 16843147; // 0x101018b - field public static final int layout_alignParentRight = 16843149; // 0x101018d - field public static final int layout_alignParentStart = 16843707; // 0x10103bb - field public static final int layout_alignParentTop = 16843148; // 0x101018c - field public static final int layout_alignRight = 16843145; // 0x1010189 - field public static final int layout_alignStart = 16843705; // 0x10103b9 - field public static final int layout_alignTop = 16843144; // 0x1010188 - field public static final int layout_alignWithParentIfMissing = 16843154; // 0x1010192 - field public static final int layout_below = 16843141; // 0x1010185 - field public static final int layout_centerHorizontal = 16843152; // 0x1010190 - field public static final int layout_centerInParent = 16843151; // 0x101018f - field public static final int layout_centerVertical = 16843153; // 0x1010191 - field public static final int layout_column = 16843084; // 0x101014c - field public static final int layout_columnSpan = 16843645; // 0x101037d - field public static final int layout_columnWeight = 16843865; // 0x1010459 - field public static final int layout_gravity = 16842931; // 0x10100b3 - field public static final int layout_height = 16842997; // 0x10100f5 - field public static final int layout_margin = 16842998; // 0x10100f6 - field public static final int layout_marginBottom = 16843002; // 0x10100fa - field public static final int layout_marginEnd = 16843702; // 0x10103b6 - field public static final int layout_marginHorizontal = 16844091; // 0x101053b - field public static final int layout_marginLeft = 16842999; // 0x10100f7 - field public static final int layout_marginRight = 16843001; // 0x10100f9 - field public static final int layout_marginStart = 16843701; // 0x10103b5 - field public static final int layout_marginTop = 16843000; // 0x10100f8 - field public static final int layout_marginVertical = 16844092; // 0x101053c - field public static final int layout_row = 16843643; // 0x101037b - field public static final int layout_rowSpan = 16843644; // 0x101037c - field public static final int layout_rowWeight = 16843864; // 0x1010458 - field public static final int layout_scale = 16843155; // 0x1010193 - field public static final int layout_span = 16843085; // 0x101014d - field public static final int layout_toEndOf = 16843704; // 0x10103b8 - field public static final int layout_toLeftOf = 16843138; // 0x1010182 - field public static final int layout_toRightOf = 16843139; // 0x1010183 - field public static final int layout_toStartOf = 16843703; // 0x10103b7 - field public static final int layout_weight = 16843137; // 0x1010181 - field public static final int layout_width = 16842996; // 0x10100f4 - field public static final int layout_x = 16843135; // 0x101017f - field public static final int layout_y = 16843136; // 0x1010180 - field public static final int left = 16843181; // 0x10101ad - field public static final int letterSpacing = 16843958; // 0x10104b6 - field public static final int level = 16844032; // 0x1010500 - field public static final int lineBreakStyle = 16844398; // 0x101066e - field public static final int lineBreakWordStyle = 16844399; // 0x101066f - field public static final int lineHeight = 16844159; // 0x101057f - field public static final int lineSpacingExtra = 16843287; // 0x1010217 - field public static final int lineSpacingMultiplier = 16843288; // 0x1010218 - field public static final int lines = 16843092; // 0x1010154 - field public static final int linksClickable = 16842929; // 0x10100b1 - field public static final int listChoiceBackgroundIndicator = 16843504; // 0x10102f0 - field public static final int listChoiceIndicatorMultiple = 16843290; // 0x101021a - field public static final int listChoiceIndicatorSingle = 16843289; // 0x1010219 - field public static final int listDivider = 16843284; // 0x1010214 - field public static final int listDividerAlertDialog = 16843525; // 0x1010305 - field public static final int listMenuViewStyle = 16844018; // 0x10104f2 - field public static final int listPopupWindowStyle = 16843519; // 0x10102ff - field public static final int listPreferredItemHeight = 16842829; // 0x101004d - field public static final int listPreferredItemHeightLarge = 16843654; // 0x1010386 - field public static final int listPreferredItemHeightSmall = 16843655; // 0x1010387 - field public static final int listPreferredItemPaddingEnd = 16843710; // 0x10103be - field public static final int listPreferredItemPaddingLeft = 16843683; // 0x10103a3 - field public static final int listPreferredItemPaddingRight = 16843684; // 0x10103a4 - field public static final int listPreferredItemPaddingStart = 16843709; // 0x10103bd - field public static final int listSelector = 16843003; // 0x10100fb - field public static final int listSeparatorTextViewStyle = 16843272; // 0x1010208 - field public static final int listViewStyle = 16842868; // 0x1010074 - field public static final int listViewWhiteStyle = 16842869; // 0x1010075 - field public static final int localeConfig = 16844379; // 0x101065b - field public static final int lockTaskMode = 16844013; // 0x10104ed - field public static final int logo = 16843454; // 0x10102be - field public static final int logoDescription = 16844009; // 0x10104e9 - field public static final int longClickable = 16842982; // 0x10100e6 - field public static final int loopViews = 16843527; // 0x1010307 - field public static final int manageSpaceActivity = 16842756; // 0x1010004 - field public static final int mapViewStyle = 16842890; // 0x101008a - field public static final int marqueeRepeatLimit = 16843293; // 0x101021d - field public static final int matchOrder = 16843855; // 0x101044f - field public static final int max = 16843062; // 0x1010136 - field public static final int maxAspectRatio = 16844128; // 0x1010560 - field public static final int maxButtonHeight = 16844029; // 0x10104fd - field public static final int maxDate = 16843584; // 0x1010340 - field public static final int maxEms = 16843095; // 0x1010157 - field public static final int maxHeight = 16843040; // 0x1010120 - field public static final int maxItemsPerRow = 16843060; // 0x1010134 - field public static final int maxLength = 16843104; // 0x1010160 - field public static final int maxLevel = 16843186; // 0x10101b2 - field public static final int maxLines = 16843091; // 0x1010153 - field public static final int maxLongVersionCode = 16844163; // 0x1010583 - field public static final int maxRecents = 16843846; // 0x1010446 - field public static final int maxResizeHeight = 16844339; // 0x1010633 - field public static final int maxResizeWidth = 16844338; // 0x1010632 - field public static final int maxRows = 16843059; // 0x1010133 - field public static final int maxSdkVersion = 16843377; // 0x1010271 - field public static final int maxWidth = 16843039; // 0x101011f - field public static final int maximumAngle = 16843903; // 0x101047f - field public static final int measureAllChildren = 16843018; // 0x101010a - field public static final int measureWithLargestChild = 16843476; // 0x10102d4 - field public static final int mediaRouteButtonStyle = 16843693; // 0x10103ad - field public static final int mediaRouteTypes = 16843694; // 0x10103ae - field public static final int memtagMode = 16844324; // 0x1010624 - field public static final int menuCategory = 16843230; // 0x10101de - field public static final int mimeGroup = 16844309; // 0x1010615 - field public static final int mimeType = 16842790; // 0x1010026 - field public static final int min = 16844089; // 0x1010539 - field public static final int minAspectRatio = 16844187; // 0x101059b - field public static final int minDate = 16843583; // 0x101033f - field public static final int minEms = 16843098; // 0x101015a - field public static final int minHeight = 16843072; // 0x1010140 - field public static final int minLevel = 16843185; // 0x10101b1 - field public static final int minLines = 16843094; // 0x1010156 - field public static final int minResizeHeight = 16843670; // 0x1010396 - field public static final int minResizeWidth = 16843669; // 0x1010395 - field public static final int minSdkVersion = 16843276; // 0x101020c - field @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static final int minSdkVersionFull; - field public static final int minWidth = 16843071; // 0x101013f - field public static final int minimumHorizontalAngle = 16843901; // 0x101047d - field public static final int minimumVerticalAngle = 16843902; // 0x101047e - field public static final int mipMap = 16843725; // 0x10103cd - field public static final int mirrorForRtl = 16843726; // 0x10103ce - field public static final int mode = 16843134; // 0x101017e - field public static final int moreIcon = 16843061; // 0x1010135 - field public static final int multiArch = 16843918; // 0x101048e - field public static final int multiprocess = 16842771; // 0x1010013 - field public static final int name = 16842755; // 0x1010003 - field public static final int nativeHeapZeroInitialized = 16844325; // 0x1010625 - field @Deprecated public static final int navigationBarColor = 16843858; // 0x1010452 - field @Deprecated public static final int navigationBarDividerColor = 16844141; // 0x101056d - field public static final int navigationContentDescription = 16843969; // 0x10104c1 - field public static final int navigationIcon = 16843968; // 0x10104c0 - field public static final int navigationMode = 16843471; // 0x10102cf - field public static final int negativeButtonText = 16843254; // 0x10101f6 - field public static final int nestedScrollingEnabled = 16843830; // 0x1010436 - field public static final int networkSecurityConfig = 16844071; // 0x1010527 - field public static final int nextClusterForward = 16844098; // 0x1010542 - field public static final int nextFocusDown = 16842980; // 0x10100e4 - field public static final int nextFocusForward = 16843580; // 0x101033c - field public static final int nextFocusLeft = 16842977; // 0x10100e1 - field public static final int nextFocusRight = 16842978; // 0x10100e2 - field public static final int nextFocusUp = 16842979; // 0x10100e3 - field public static final int noHistory = 16843309; // 0x101022d - field public static final int nonInteractiveUiTimeout = 16844175; // 0x101058f - field public static final int normalScreens = 16843397; // 0x1010285 - field public static final int notificationTimeout = 16843651; // 0x1010383 - field public static final int numColumns = 16843032; // 0x1010118 - field public static final int numStars = 16843076; // 0x1010144 - field public static final int numberPickerStyle = 16844068; // 0x1010524 - field public static final int numbersBackgroundColor = 16843938; // 0x10104a2 - field public static final int numbersInnerTextColor = 16844001; // 0x10104e1 - field public static final int numbersSelectorColor = 16843939; // 0x10104a3 - field public static final int numbersTextColor = 16843937; // 0x10104a1 - field @Deprecated public static final int numeric = 16843109; // 0x1010165 - field public static final int numericModifiers = 16844111; // 0x101054f - field public static final int numericShortcut = 16843236; // 0x10101e4 - field public static final int offset = 16844052; // 0x1010514 - field @Deprecated public static final int onClick = 16843375; // 0x101026f - field public static final int oneshot = 16843159; // 0x1010197 - field public static final int opacity = 16843550; // 0x101031e - field public static final int opticalInsetBottom = 16844171; // 0x101058b - field public static final int opticalInsetLeft = 16844168; // 0x1010588 - field public static final int opticalInsetRight = 16844170; // 0x101058a - field public static final int opticalInsetTop = 16844169; // 0x1010589 - field @FlaggedApi("android.content.pm.sdk_lib_independence") public static final int optional; - field public static final int order = 16843242; // 0x10101ea - field public static final int orderInCategory = 16843231; // 0x10101df - field public static final int ordering = 16843490; // 0x10102e2 - field public static final int orderingFromXml = 16843239; // 0x10101e7 - field public static final int orientation = 16842948; // 0x10100c4 - field public static final int outAnimation = 16843128; // 0x1010178 - field public static final int outlineAmbientShadowColor = 16844162; // 0x1010582 - field public static final int outlineProvider = 16843960; // 0x10104b8 - field public static final int outlineSpotShadowColor = 16844161; // 0x1010581 - field public static final int overScrollFooter = 16843459; // 0x10102c3 - field public static final int overScrollHeader = 16843458; // 0x10102c2 - field public static final int overScrollMode = 16843457; // 0x10102c1 - field public static final int overlapAnchor = 16843874; // 0x1010462 - field public static final int overridesImplicitlyEnabledSubtype = 16843682; // 0x10103a2 - field public static final int packageNames = 16843649; // 0x1010381 - field public static final int packageType = 16844167; // 0x1010587 - field public static final int padding = 16842965; // 0x10100d5 - field public static final int paddingBottom = 16842969; // 0x10100d9 - field public static final int paddingEnd = 16843700; // 0x10103b4 - field public static final int paddingHorizontal = 16844093; // 0x101053d - field public static final int paddingLeft = 16842966; // 0x10100d6 - field public static final int paddingMode = 16843863; // 0x1010457 - field public static final int paddingRight = 16842968; // 0x10100d8 - field public static final int paddingStart = 16843699; // 0x10103b3 - field public static final int paddingTop = 16842967; // 0x10100d7 - field public static final int paddingVertical = 16844094; // 0x101053e - field @FlaggedApi("android.content.pm.app_compat_option_16kb") public static final int pageSizeCompat; - field public static final int panelBackground = 16842846; // 0x101005e - field public static final int panelColorBackground = 16842849; // 0x1010061 - field public static final int panelColorForeground = 16842848; // 0x1010060 - field public static final int panelFullBackground = 16842847; // 0x101005f - field public static final int panelTextAppearance = 16842850; // 0x1010062 - field public static final int parentActivityName = 16843687; // 0x10103a7 - field @Deprecated public static final int password = 16843100; // 0x101015c - field public static final int passwordsActivity = 16844351; // 0x101063f - field public static final int path = 16842794; // 0x101002a - field public static final int pathAdvancedPattern = 16844320; // 0x1010620 - field public static final int pathData = 16843781; // 0x1010405 - field public static final int pathPattern = 16842796; // 0x101002c - field public static final int pathPrefix = 16842795; // 0x101002b - field public static final int pathSuffix = 16844318; // 0x101061e - field public static final int patternPathData = 16843978; // 0x10104ca - field public static final int permission = 16842758; // 0x1010006 - field public static final int permissionFlags = 16843719; // 0x10103c7 - field public static final int permissionGroup = 16842762; // 0x101000a - field public static final int permissionGroupFlags = 16843717; // 0x10103c5 - field public static final int persistableMode = 16843821; // 0x101042d - field public static final int persistent = 16842765; // 0x101000d - field public static final int persistentDrawingCache = 16842990; // 0x10100ee - field public static final int persistentWhenFeatureAvailable = 16844131; // 0x1010563 - field @Deprecated public static final int phoneNumber = 16843111; // 0x1010167 - field public static final int physicalKeyboardHintLanguageTag = 16844411; // 0x101067b - field public static final int physicalKeyboardHintLayoutType = 16844412; // 0x101067c - field public static final int pivotX = 16843189; // 0x10101b5 - field public static final int pivotY = 16843190; // 0x10101b6 - field public static final int pointerIcon = 16844041; // 0x1010509 - field public static final int popupAnimationStyle = 16843465; // 0x10102c9 - field public static final int popupBackground = 16843126; // 0x1010176 - field @Deprecated public static final int popupCharacters = 16843332; // 0x1010244 - field public static final int popupElevation = 16843916; // 0x101048c - field public static final int popupEnterTransition = 16844063; // 0x101051f - field public static final int popupExitTransition = 16844064; // 0x1010520 - field @Deprecated public static final int popupKeyboard = 16843331; // 0x1010243 - field @Deprecated public static final int popupLayout = 16843323; // 0x101023b - field public static final int popupMenuStyle = 16843520; // 0x1010300 - field public static final int popupTheme = 16843945; // 0x10104a9 - field public static final int popupWindowStyle = 16842870; // 0x1010076 - field public static final int port = 16842793; // 0x1010029 - field public static final int positiveButtonText = 16843253; // 0x10101f5 - field public static final int preferKeepClear = 16844381; // 0x101065d - field public static final int preferMinimalPostProcessing = 16844300; // 0x101060c - field public static final int preferenceCategoryStyle = 16842892; // 0x101008c - field public static final int preferenceFragmentStyle = 16844038; // 0x1010506 - field public static final int preferenceInformationStyle = 16842893; // 0x101008d - field public static final int preferenceLayoutChild = 16842900; // 0x1010094 - field public static final int preferenceScreenStyle = 16842891; // 0x101008b - field public static final int preferenceStyle = 16842894; // 0x101008e - field public static final int presentationTheme = 16843712; // 0x10103c0 - field public static final int preserveLegacyExternalStorage = 16844308; // 0x1010614 - field public static final int previewImage = 16843482; // 0x10102da - field public static final int previewLayout = 16844327; // 0x1010627 - field public static final int primaryContentAlpha = 16844114; // 0x1010552 - field public static final int priority = 16842780; // 0x101001c - field public static final int privateImeOptions = 16843299; // 0x1010223 - field public static final int process = 16842769; // 0x1010011 - field public static final int progress = 16843063; // 0x1010137 - field public static final int progressBackgroundTint = 16843877; // 0x1010465 - field public static final int progressBackgroundTintMode = 16843878; // 0x1010466 - field public static final int progressBarPadding = 16843545; // 0x1010319 - field public static final int progressBarStyle = 16842871; // 0x1010077 - field public static final int progressBarStyleHorizontal = 16842872; // 0x1010078 - field public static final int progressBarStyleInverse = 16843399; // 0x1010287 - field public static final int progressBarStyleLarge = 16842874; // 0x101007a - field public static final int progressBarStyleLargeInverse = 16843401; // 0x1010289 - field public static final int progressBarStyleSmall = 16842873; // 0x1010079 - field public static final int progressBarStyleSmallInverse = 16843400; // 0x1010288 - field public static final int progressBarStyleSmallTitle = 16843279; // 0x101020f - field public static final int progressDrawable = 16843068; // 0x101013c - field public static final int progressTint = 16843875; // 0x1010463 - field public static final int progressTintMode = 16843876; // 0x1010464 - field public static final int prompt = 16843131; // 0x101017b - field public static final int propertyName = 16843489; // 0x10102e1 - field public static final int propertyXName = 16843892; // 0x1010474 - field public static final int propertyYName = 16843893; // 0x1010475 - field public static final int protectionLevel = 16842761; // 0x1010009 - field public static final int publicKey = 16843686; // 0x10103a6 - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int query = 16844431; // 0x101068f - field public static final int queryActionMsg = 16843227; // 0x10101db - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int queryAdvancedPattern = 16844434; // 0x1010692 - field public static final int queryAfterZeroResults = 16843394; // 0x1010282 - field public static final int queryBackground = 16843911; // 0x1010487 - field public static final int queryHint = 16843608; // 0x1010358 - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int queryPattern = 16844433; // 0x1010691 - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int queryPrefix = 16844432; // 0x1010690 - field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int querySuffix = 16844435; // 0x1010693 - field public static final int quickContactBadgeStyleSmallWindowLarge = 16843443; // 0x10102b3 - field public static final int quickContactBadgeStyleSmallWindowMedium = 16843442; // 0x10102b2 - field public static final int quickContactBadgeStyleSmallWindowSmall = 16843441; // 0x10102b1 - field public static final int quickContactBadgeStyleWindowLarge = 16843440; // 0x10102b0 - field public static final int quickContactBadgeStyleWindowMedium = 16843439; // 0x10102af - field public static final int quickContactBadgeStyleWindowSmall = 16843438; // 0x10102ae - field public static final int radioButtonStyle = 16842878; // 0x101007e - field public static final int radius = 16843176; // 0x10101a8 - field public static final int rating = 16843077; // 0x1010145 - field public static final int ratingBarStyle = 16842876; // 0x101007c - field public static final int ratingBarStyleIndicator = 16843280; // 0x1010210 - field public static final int ratingBarStyleSmall = 16842877; // 0x101007d - field public static final int readPermission = 16842759; // 0x1010007 - field public static final int recognitionService = 16843932; // 0x101049c - field public static final int recreateOnConfigChanges = 16844103; // 0x1010547 - field public static final int recycleEnabled = 16844121; // 0x1010559 - field public static final int relinquishTaskIdentity = 16843894; // 0x1010476 - field public static final int reparent = 16843964; // 0x10104bc - field public static final int reparentWithOverlay = 16843965; // 0x10104bd - field public static final int repeatCount = 16843199; // 0x10101bf - field public static final int repeatMode = 16843200; // 0x10101c0 - field public static final int reqFiveWayNav = 16843314; // 0x1010232 - field public static final int reqHardKeyboard = 16843305; // 0x1010229 - field public static final int reqKeyboardType = 16843304; // 0x1010228 - field public static final int reqNavigation = 16843306; // 0x101022a - field public static final int reqTouchScreen = 16843303; // 0x1010227 - field public static final int requestLegacyExternalStorage = 16844291; // 0x1010603 - field public static final int requestRawExternalStorageAccess = 16844357; // 0x1010645 - field @FlaggedApi("android.security.content_uri_permission_apis") public static final int requireContentUriPermissionFromCaller = 16844443; // 0x101069b - field public static final int requireDeviceScreenOn = 16844317; // 0x101061d - field public static final int requireDeviceUnlock = 16843756; // 0x10103ec - field public static final int required = 16843406; // 0x101028e - field public static final int requiredAccountType = 16843734; // 0x10103d6 - field public static final int requiredDisplayCategory = 16844409; // 0x1010679 - field public static final int requiredFeature = 16844116; // 0x1010554 - field public static final int requiredForAllUsers = 16843728; // 0x10103d0 - field public static final int requiredNotFeature = 16844117; // 0x1010555 - field public static final int requiredSplitTypes = 16844366; // 0x101064e - field public static final int requiresFadingEdge = 16843685; // 0x10103a5 - field public static final int requiresSmallestWidthDp = 16843620; // 0x1010364 - field public static final int resetEnabledSettingsOnAppDataCleared = 16844370; // 0x1010652 - field public static final int resizeClip = 16843983; // 0x10104cf - field public static final int resizeMode = 16843619; // 0x1010363 - field public static final int resizeable = 16843405; // 0x101028d - field public static final int resizeableActivity = 16844022; // 0x10104f6 - field public static final int resource = 16842789; // 0x1010025 - field public static final int resourcesMap = 16844297; // 0x1010609 - field public static final int restoreAnyVersion = 16843450; // 0x10102ba - field @Deprecated public static final int restoreNeedsApplication = 16843421; // 0x101029d - field public static final int restrictedAccountType = 16843733; // 0x10103d5 - field public static final int restrictionType = 16843923; // 0x1010493 - field public static final int resumeWhilePausing = 16843954; // 0x10104b2 - field public static final int reversible = 16843851; // 0x101044b - field public static final int revisionCode = 16843989; // 0x10104d5 - field public static final int right = 16843183; // 0x10101af - field public static final int ringtonePreferenceStyle = 16842899; // 0x1010093 - field public static final int ringtoneType = 16843257; // 0x10101f9 - field public static final int rollbackDataPolicy = 16844311; // 0x1010617 - field public static final int rotation = 16843558; // 0x1010326 - field public static final int rotationAnimation = 16844090; // 0x101053a - field public static final int rotationX = 16843559; // 0x1010327 - field public static final int rotationY = 16843560; // 0x1010328 - field public static final int roundIcon = 16844076; // 0x101052c - field public static final int rowCount = 16843637; // 0x1010375 - field public static final int rowDelay = 16843216; // 0x10101d0 - field @Deprecated public static final int rowEdgeFlags = 16843329; // 0x1010241 - field public static final int rowHeight = 16843058; // 0x1010132 - field public static final int rowOrderPreserved = 16843638; // 0x1010376 - field public static final int saveEnabled = 16842983; // 0x10100e7 - field public static final int scaleGravity = 16843262; // 0x10101fe - field public static final int scaleHeight = 16843261; // 0x10101fd - field public static final int scaleType = 16843037; // 0x101011d - field public static final int scaleWidth = 16843260; // 0x10101fc - field public static final int scaleX = 16843556; // 0x1010324 - field public static final int scaleY = 16843557; // 0x1010325 - field public static final int scheme = 16842791; // 0x1010027 - field public static final int screenDensity = 16843467; // 0x10102cb - field public static final int screenOrientation = 16842782; // 0x101001e - field public static final int screenReaderFocusable = 16844148; // 0x1010574 - field public static final int screenSize = 16843466; // 0x10102ca - field public static final int scrollHorizontally = 16843099; // 0x101015b - field public static final int scrollIndicators = 16844006; // 0x10104e6 - field public static final int scrollViewStyle = 16842880; // 0x1010080 - field public static final int scrollX = 16842962; // 0x10100d2 - field public static final int scrollY = 16842963; // 0x10100d3 - field public static final int scrollbarAlwaysDrawHorizontalTrack = 16842856; // 0x1010068 - field public static final int scrollbarAlwaysDrawVerticalTrack = 16842857; // 0x1010069 - field public static final int scrollbarDefaultDelayBeforeFade = 16843433; // 0x10102a9 - field public static final int scrollbarFadeDuration = 16843432; // 0x10102a8 - field public static final int scrollbarSize = 16842851; // 0x1010063 - field public static final int scrollbarStyle = 16842879; // 0x101007f - field public static final int scrollbarThumbHorizontal = 16842852; // 0x1010064 - field public static final int scrollbarThumbVertical = 16842853; // 0x1010065 - field public static final int scrollbarTrackHorizontal = 16842854; // 0x1010066 - field public static final int scrollbarTrackVertical = 16842855; // 0x1010067 - field public static final int scrollbars = 16842974; // 0x10100de - field public static final int scrollingCache = 16843006; // 0x10100fe - field @Deprecated public static final int searchButtonText = 16843269; // 0x1010205 - field public static final int searchHintIcon = 16843988; // 0x10104d4 - field public static final int searchIcon = 16843907; // 0x1010483 - field public static final int searchMode = 16843221; // 0x10101d5 - field public static final int searchResultHighlightColor = 16844418; // 0x1010682 - field public static final int searchSettingsDescription = 16843402; // 0x101028a - field public static final int searchSuggestAuthority = 16843222; // 0x10101d6 - field public static final int searchSuggestIntentAction = 16843225; // 0x10101d9 - field public static final int searchSuggestIntentData = 16843226; // 0x10101da - field public static final int searchSuggestPath = 16843223; // 0x10101d7 - field public static final int searchSuggestSelection = 16843224; // 0x10101d8 - field public static final int searchSuggestThreshold = 16843373; // 0x101026d - field public static final int searchViewStyle = 16843904; // 0x1010480 - field public static final int secondaryContentAlpha = 16844115; // 0x1010553 - field public static final int secondaryProgress = 16843064; // 0x1010138 - field public static final int secondaryProgressTint = 16843879; // 0x1010467 - field public static final int secondaryProgressTintMode = 16843880; // 0x1010468 - field public static final int secureElementName = 16844290; // 0x1010602 - field public static final int seekBarStyle = 16842875; // 0x101007b - field public static final int segmentedButtonStyle = 16843568; // 0x1010330 - field public static final int selectAllOnFocus = 16843102; // 0x101015e - field public static final int selectable = 16843238; // 0x10101e6 - field public static final int selectableAsDefault = 16844352; // 0x1010640 - field public static final int selectableItemBackground = 16843534; // 0x101030e - field public static final int selectableItemBackgroundBorderless = 16843868; // 0x101045c - field @Deprecated public static final int selectedDateVerticalBar = 16843591; // 0x1010347 - field @Deprecated public static final int selectedWeekBackgroundColor = 16843586; // 0x1010342 - field public static final int selectionDividerHeight = 16844184; // 0x1010598 - field public static final int sessionService = 16843837; // 0x101043d - field public static final int settingsActivity = 16843301; // 0x1010225 - field public static final int settingsSliceUri = 16844179; // 0x1010593 - field public static final int settingsSubtitle = 16844422; // 0x1010686 - field public static final int setupActivity = 16843766; // 0x10103f6 - field public static final int shadowColor = 16843105; // 0x1010161 - field public static final int shadowDx = 16843106; // 0x1010162 - field public static final int shadowDy = 16843107; // 0x1010163 - field public static final int shadowRadius = 16843108; // 0x1010164 - field public static final int shape = 16843162; // 0x101019a - field public static final int shareInterpolator = 16843195; // 0x10101bb - field @FlaggedApi("android.nfc.nfc_associated_role_services") public static final int shareRolePriority; - field @Deprecated public static final int sharedUserId = 16842763; // 0x101000b - field @Deprecated public static final int sharedUserLabel = 16843361; // 0x1010261 - field public static final int sharedUserMaxSdkVersion = 16844365; // 0x101064d - field public static final int shell = 16844180; // 0x1010594 - field @FlaggedApi("com.android.text.flags.use_bounds_for_width") public static final int shiftDrawingOffsetForStartOverhang = 16844450; // 0x10106a2 - field public static final int shortcutDisabledMessage = 16844075; // 0x101052b - field public static final int shortcutId = 16844072; // 0x1010528 - field public static final int shortcutLongLabel = 16844074; // 0x101052a - field public static final int shortcutShortLabel = 16844073; // 0x1010529 - field @FlaggedApi("android.nfc.nfc_observe_mode") public static final int shouldDefaultToObserveMode = 16844448; // 0x10106a0 - field public static final int shouldDisableView = 16843246; // 0x10101ee - field public static final int shouldUseDefaultUnfoldTransition = 16844364; // 0x101064c - field public static final int showAsAction = 16843481; // 0x10102d9 - field public static final int showBackdrop = 16844380; // 0x101065c - field public static final int showClockAndComplications = 16844372; // 0x1010654 - field public static final int showDefault = 16843258; // 0x10101fa - field public static final int showDividers = 16843561; // 0x1010329 - field public static final int showForAllUsers = 16844015; // 0x10104ef - field public static final int showInInputMethodPicker = 16844360; // 0x1010648 - field public static final int showMetadataInPreview = 16844079; // 0x101052f - field @Deprecated public static final int showOnLockScreen = 16843721; // 0x10103c9 - field public static final int showSilent = 16843259; // 0x10101fb - field public static final int showText = 16843949; // 0x10104ad - field @Deprecated public static final int showWeekNumber = 16843582; // 0x101033e - field public static final int showWhenLocked = 16844137; // 0x1010569 - field @Deprecated public static final int shownWeekCount = 16843585; // 0x1010341 - field public static final int shrinkColumns = 16843082; // 0x101014a - field @Deprecated public static final int singleLine = 16843101; // 0x101015d - field public static final int singleLineTitle = 16844124; // 0x101055c - field public static final int singleUser = 16843711; // 0x10103bf - field public static final int slideEdge = 16843824; // 0x1010430 - field public static final int smallIcon = 16843422; // 0x101029e - field public static final int smallScreens = 16843396; // 0x1010284 - field public static final int smoothScrollbar = 16843313; // 0x1010231 - field public static final int soundEffectsEnabled = 16843285; // 0x1010215 - field public static final int spacing = 16843027; // 0x1010113 - field public static final int spinnerDropDownItemStyle = 16842887; // 0x1010087 - field public static final int spinnerItemStyle = 16842889; // 0x1010089 - field public static final int spinnerMode = 16843505; // 0x10102f1 - field public static final int spinnerStyle = 16842881; // 0x1010081 - field public static final int spinnersShown = 16843595; // 0x101034b - field public static final int splashScreenTheme = 16844337; // 0x1010631 - field public static final int splitMotionEvents = 16843503; // 0x10102ef - field public static final int splitName = 16844105; // 0x1010549 - field public static final int splitTrack = 16843852; // 0x101044c - field public static final int splitTypes = 16844367; // 0x101064f - field public static final int spotShadowAlpha = 16843967; // 0x10104bf - field public static final int src = 16843033; // 0x1010119 - field public static final int ssp = 16843747; // 0x10103e3 - field public static final int sspAdvancedPattern = 16844321; // 0x1010621 - field public static final int sspPattern = 16843749; // 0x10103e5 - field public static final int sspPrefix = 16843748; // 0x10103e4 - field public static final int sspSuffix = 16844319; // 0x101061f - field public static final int stackFromBottom = 16843005; // 0x10100fd - field public static final int stackViewStyle = 16843838; // 0x101043e - field public static final int starStyle = 16842882; // 0x1010082 - field public static final int start = 16843995; // 0x10104db - field public static final int startColor = 16843165; // 0x101019d - field public static final int startDelay = 16843746; // 0x10103e2 - field public static final int startOffset = 16843198; // 0x10101be - field public static final int startX = 16844048; // 0x1010510 - field public static final int startY = 16844049; // 0x1010511 - field @Deprecated public static final int startYear = 16843132; // 0x101017c - field public static final int stateListAnimator = 16843848; // 0x1010448 - field public static final int stateNotNeeded = 16842774; // 0x1010016 - field public static final int state_above_anchor = 16842922; // 0x10100aa - field public static final int state_accelerated = 16843547; // 0x101031b - field public static final int state_activated = 16843518; // 0x10102fe - field public static final int state_active = 16842914; // 0x10100a2 - field public static final int state_checkable = 16842911; // 0x101009f - field public static final int state_checked = 16842912; // 0x10100a0 - field public static final int state_drag_can_accept = 16843624; // 0x1010368 - field public static final int state_drag_hovered = 16843625; // 0x1010369 - field public static final int state_empty = 16842921; // 0x10100a9 - field public static final int state_enabled = 16842910; // 0x101009e - field public static final int state_expanded = 16842920; // 0x10100a8 - field public static final int state_first = 16842916; // 0x10100a4 - field public static final int state_focused = 16842908; // 0x101009c - field public static final int state_hovered = 16843623; // 0x1010367 - field public static final int state_last = 16842918; // 0x10100a6 - field @Deprecated public static final int state_long_pressable = 16843324; // 0x101023c - field public static final int state_middle = 16842917; // 0x10100a5 - field public static final int state_multiline = 16843597; // 0x101034d - field public static final int state_pressed = 16842919; // 0x10100a7 - field public static final int state_selected = 16842913; // 0x10100a1 - field public static final int state_single = 16842915; // 0x10100a3 - field public static final int state_window_focused = 16842909; // 0x101009d - field public static final int staticWallpaperPreview = 16843569; // 0x1010331 - field @Deprecated public static final int statusBarColor = 16843857; // 0x1010451 - field public static final int stepSize = 16843078; // 0x1010146 - field public static final int stopWithTask = 16843626; // 0x101036a - field public static final int streamType = 16843273; // 0x1010209 - field public static final int stretchColumns = 16843081; // 0x1010149 - field public static final int stretchMode = 16843030; // 0x1010116 - field public static final int strokeAlpha = 16843979; // 0x10104cb - field public static final int strokeColor = 16843782; // 0x1010406 - field public static final int strokeLineCap = 16843787; // 0x101040b - field public static final int strokeLineJoin = 16843788; // 0x101040c - field public static final int strokeMiterLimit = 16843789; // 0x101040d - field public static final int strokeWidth = 16843783; // 0x1010407 - field public static final int stylusHandwritingSettingsActivity = 16844420; // 0x1010684 - field public static final int subMenuArrow = 16844019; // 0x10104f3 - field public static final int submitBackground = 16843912; // 0x1010488 - field public static final int subtitle = 16843473; // 0x10102d1 - field public static final int subtitleTextAppearance = 16843823; // 0x101042f - field public static final int subtitleTextColor = 16844004; // 0x10104e4 - field public static final int subtitleTextStyle = 16843513; // 0x10102f9 - field public static final int subtypeExtraValue = 16843674; // 0x101039a - field public static final int subtypeId = 16843713; // 0x10103c1 - field public static final int subtypeLocale = 16843673; // 0x1010399 - field public static final int suggestActionMsg = 16843228; // 0x10101dc - field public static final int suggestActionMsgColumn = 16843229; // 0x10101dd - field public static final int suggestionRowLayout = 16843910; // 0x1010486 - field public static final int summary = 16843241; // 0x10101e9 - field public static final int summaryColumn = 16843426; // 0x10102a2 - field public static final int summaryOff = 16843248; // 0x10101f0 - field public static final int summaryOn = 16843247; // 0x10101ef - field @FlaggedApi("android.view.accessibility.supplemental_description") public static final int supplementalDescription; - field public static final int supportedTypes = 16844369; // 0x1010651 - field public static final int supportsAssist = 16844016; // 0x10104f0 - field public static final int supportsBatteryGameMode = 16844374; // 0x1010656 - field @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public static final int supportsConnectionlessStylusHandwriting = 16844447; // 0x101069f - field public static final int supportsInlineSuggestions = 16844301; // 0x101060d - field public static final int supportsInlineSuggestionsWithTouchExploration = 16844397; // 0x101066d - field public static final int supportsLaunchVoiceAssistFromKeyguard = 16844017; // 0x10104f1 - field public static final int supportsLocalInteraction = 16844047; // 0x101050f - field public static final int supportsMultipleDisplays = 16844182; // 0x1010596 - field public static final int supportsPerformanceGameMode = 16844375; // 0x1010657 - field public static final int supportsPictureInPicture = 16844023; // 0x10104f7 - field public static final int supportsRtl = 16843695; // 0x10103af - field public static final int supportsStylusHandwriting = 16844371; // 0x1010653 - field public static final int supportsSwitchingToNextInputMethod = 16843755; // 0x10103eb - field public static final int supportsUploading = 16843419; // 0x101029b - field public static final int suppressesSpellChecker = 16844355; // 0x1010643 - field public static final int switchMinWidth = 16843632; // 0x1010370 - field public static final int switchPadding = 16843633; // 0x1010371 - field public static final int switchPreferenceStyle = 16843629; // 0x101036d - field public static final int switchStyle = 16843839; // 0x101043f - field public static final int switchTextAppearance = 16843630; // 0x101036e - field public static final int switchTextOff = 16843628; // 0x101036c - field public static final int switchTextOn = 16843627; // 0x101036b - field public static final int syncable = 16842777; // 0x1010019 - field @FlaggedApi("android.multiuser.enable_system_user_only_for_services_and_providers") public static final int systemUserOnly = 16844429; // 0x101068d - field public static final int tabStripEnabled = 16843453; // 0x10102bd - field public static final int tabStripLeft = 16843451; // 0x10102bb - field public static final int tabStripRight = 16843452; // 0x10102bc - field public static final int tabWidgetStyle = 16842883; // 0x1010083 - field public static final int tag = 16842961; // 0x10100d1 - field public static final int targetActivity = 16843266; // 0x1010202 - field public static final int targetCellHeight = 16844341; // 0x1010635 - field public static final int targetCellWidth = 16844340; // 0x1010634 - field public static final int targetClass = 16842799; // 0x101002f - field @Deprecated public static final int targetDescriptions = 16843680; // 0x10103a0 - field public static final int targetId = 16843740; // 0x10103dc - field public static final int targetName = 16843853; // 0x101044d - field public static final int targetPackage = 16842785; // 0x1010021 - field public static final int targetProcesses = 16844097; // 0x1010541 - field @Deprecated public static final int targetSandboxVersion = 16844108; // 0x101054c - field public static final int targetSdkVersion = 16843376; // 0x1010270 - field public static final int taskAffinity = 16842770; // 0x1010012 - field public static final int taskCloseEnterAnimation = 16842942; // 0x10100be - field public static final int taskCloseExitAnimation = 16842943; // 0x10100bf - field public static final int taskOpenEnterAnimation = 16842940; // 0x10100bc - field public static final int taskOpenExitAnimation = 16842941; // 0x10100bd - field public static final int taskToBackEnterAnimation = 16842946; // 0x10100c2 - field public static final int taskToBackExitAnimation = 16842947; // 0x10100c3 - field public static final int taskToFrontEnterAnimation = 16842944; // 0x10100c0 - field public static final int taskToFrontExitAnimation = 16842945; // 0x10100c1 - field public static final int tension = 16843370; // 0x101026a - field public static final int testOnly = 16843378; // 0x1010272 - field public static final int text = 16843087; // 0x101014f - field public static final int textAlignment = 16843697; // 0x10103b1 - field public static final int textAllCaps = 16843660; // 0x101038c - field public static final int textAppearance = 16842804; // 0x1010034 - field public static final int textAppearanceButton = 16843271; // 0x1010207 - field public static final int textAppearanceInverse = 16842805; // 0x1010035 - field public static final int textAppearanceLarge = 16842816; // 0x1010040 - field public static final int textAppearanceLargeInverse = 16842819; // 0x1010043 - field public static final int textAppearanceLargePopupMenu = 16843521; // 0x1010301 - field public static final int textAppearanceListItem = 16843678; // 0x101039e - field public static final int textAppearanceListItemSecondary = 16843826; // 0x1010432 - field public static final int textAppearanceListItemSmall = 16843679; // 0x101039f - field public static final int textAppearanceMedium = 16842817; // 0x1010041 - field public static final int textAppearanceMediumInverse = 16842820; // 0x1010044 - field public static final int textAppearancePopupMenuHeader = 16844034; // 0x1010502 - field public static final int textAppearanceSearchResultSubtitle = 16843424; // 0x10102a0 - field public static final int textAppearanceSearchResultTitle = 16843425; // 0x10102a1 - field public static final int textAppearanceSmall = 16842818; // 0x1010042 - field public static final int textAppearanceSmallInverse = 16842821; // 0x1010045 - field public static final int textAppearanceSmallPopupMenu = 16843522; // 0x1010302 - field public static final int textCheckMark = 16842822; // 0x1010046 - field public static final int textCheckMarkInverse = 16842823; // 0x1010047 - field public static final int textColor = 16842904; // 0x1010098 - field public static final int textColorAlertDialogListItem = 16843526; // 0x1010306 - field public static final int textColorHighlight = 16842905; // 0x1010099 - field public static final int textColorHighlightInverse = 16843599; // 0x101034f - field public static final int textColorHint = 16842906; // 0x101009a - field public static final int textColorHintInverse = 16842815; // 0x101003f - field public static final int textColorLink = 16842907; // 0x101009b - field public static final int textColorLinkInverse = 16843600; // 0x1010350 - field public static final int textColorPrimary = 16842806; // 0x1010036 - field public static final int textColorPrimaryDisableOnly = 16842807; // 0x1010037 - field public static final int textColorPrimaryInverse = 16842809; // 0x1010039 - field public static final int textColorPrimaryInverseDisableOnly = 16843403; // 0x101028b - field public static final int textColorPrimaryInverseNoDisable = 16842813; // 0x101003d - field public static final int textColorPrimaryNoDisable = 16842811; // 0x101003b - field public static final int textColorSecondary = 16842808; // 0x1010038 - field public static final int textColorSecondaryInverse = 16842810; // 0x101003a - field public static final int textColorSecondaryInverseNoDisable = 16842814; // 0x101003e - field public static final int textColorSecondaryNoDisable = 16842812; // 0x101003c - field public static final int textColorTertiary = 16843282; // 0x1010212 - field public static final int textColorTertiaryInverse = 16843283; // 0x1010213 - field public static final int textCursorDrawable = 16843618; // 0x1010362 - field public static final int textDirection = 16843696; // 0x10103b0 - field public static final int textEditNoPasteWindowLayout = 16843541; // 0x1010315 - field public static final int textEditPasteWindowLayout = 16843540; // 0x1010314 - field public static final int textEditSideNoPasteWindowLayout = 16843615; // 0x101035f - field public static final int textEditSidePasteWindowLayout = 16843614; // 0x101035e - field public static final int textEditSuggestionItemLayout = 16843636; // 0x1010374 - field public static final int textFilterEnabled = 16843007; // 0x10100ff - field public static final int textFontWeight = 16844165; // 0x1010585 - field public static final int textIsSelectable = 16843542; // 0x1010316 - field public static final int textLocale = 16844178; // 0x1010592 - field public static final int textOff = 16843045; // 0x1010125 - field public static final int textOn = 16843044; // 0x1010124 - field public static final int textScaleX = 16843089; // 0x1010151 - field public static final int textSelectHandle = 16843463; // 0x10102c7 - field public static final int textSelectHandleLeft = 16843461; // 0x10102c5 - field public static final int textSelectHandleRight = 16843462; // 0x10102c6 - field public static final int textSelectHandleWindowStyle = 16843464; // 0x10102c8 - field public static final int textSize = 16842901; // 0x1010095 - field public static final int textStyle = 16842903; // 0x1010097 - field public static final int textSuggestionsWindowStyle = 16843635; // 0x1010373 - field public static final int textViewStyle = 16842884; // 0x1010084 - field public static final int theme = 16842752; // 0x1010000 - field public static final int thickness = 16843360; // 0x1010260 - field public static final int thicknessRatio = 16843164; // 0x101019c - field public static final int thumb = 16843074; // 0x1010142 - field public static final int thumbOffset = 16843075; // 0x1010143 - field public static final int thumbPosition = 16844005; // 0x10104e5 - field public static final int thumbTextPadding = 16843634; // 0x1010372 - field public static final int thumbTint = 16843889; // 0x1010471 - field public static final int thumbTintMode = 16843890; // 0x1010472 - field public static final int thumbnail = 16843429; // 0x10102a5 - field public static final int tickMark = 16844042; // 0x101050a - field public static final int tickMarkTint = 16844043; // 0x101050b - field public static final int tickMarkTintMode = 16844044; // 0x101050c - field public static final int tileMode = 16843265; // 0x1010201 - field public static final int tileModeX = 16843895; // 0x1010477 - field public static final int tileModeY = 16843896; // 0x1010478 - field public static final int tileService = 16844391; // 0x1010667 - field public static final int timePickerDialogTheme = 16843934; // 0x101049e - field public static final int timePickerMode = 16843956; // 0x10104b4 - field public static final int timePickerStyle = 16843933; // 0x101049d - field public static final int timeZone = 16843724; // 0x10103cc - field public static final int tint = 16843041; // 0x1010121 - field public static final int tintMode = 16843771; // 0x10103fb - field public static final int title = 16843233; // 0x10101e1 - field public static final int titleCondensed = 16843234; // 0x10101e2 - field public static final int titleMargin = 16844024; // 0x10104f8 - field public static final int titleMarginBottom = 16844028; // 0x10104fc - field public static final int titleMarginEnd = 16844026; // 0x10104fa - field public static final int titleMarginStart = 16844025; // 0x10104f9 - field public static final int titleMarginTop = 16844027; // 0x10104fb - field public static final int titleTextAppearance = 16843822; // 0x101042e - field public static final int titleTextColor = 16844003; // 0x10104e3 - field public static final int titleTextStyle = 16843512; // 0x10102f8 - field public static final int toAlpha = 16843211; // 0x10101cb - field public static final int toDegrees = 16843188; // 0x10101b4 - field public static final int toExtendBottom = 16844390; // 0x1010666 - field public static final int toExtendLeft = 16844387; // 0x1010663 - field public static final int toExtendRight = 16844389; // 0x1010665 - field public static final int toExtendTop = 16844388; // 0x1010664 - field public static final int toId = 16843849; // 0x1010449 - field public static final int toScene = 16843742; // 0x10103de - field public static final int toXDelta = 16843207; // 0x10101c7 - field public static final int toXScale = 16843203; // 0x10101c3 - field public static final int toYDelta = 16843209; // 0x10101c9 - field public static final int toYScale = 16843205; // 0x10101c5 - field public static final int toolbarStyle = 16843946; // 0x10104aa - field public static final int tooltipText = 16844084; // 0x1010534 - field public static final int top = 16843182; // 0x10101ae - field public static final int topBright = 16842955; // 0x10100cb - field public static final int topDark = 16842951; // 0x10100c7 - field public static final int topLeftRadius = 16843177; // 0x10101a9 - field public static final int topOffset = 16843352; // 0x1010258 - field public static final int topRightRadius = 16843178; // 0x10101aa - field public static final int touchscreenBlocksFocus = 16843919; // 0x101048f - field public static final int track = 16843631; // 0x101036f - field public static final int trackTint = 16843993; // 0x10104d9 - field public static final int trackTintMode = 16843994; // 0x10104da - field public static final int transcriptMode = 16843008; // 0x1010100 - field public static final int transformPivotX = 16843552; // 0x1010320 - field public static final int transformPivotY = 16843553; // 0x1010321 - field public static final int transition = 16843743; // 0x10103df - field public static final int transitionGroup = 16843777; // 0x1010401 - field public static final int transitionName = 16843776; // 0x1010400 - field public static final int transitionOrdering = 16843744; // 0x10103e0 - field public static final int transitionVisibilityMode = 16843900; // 0x101047c - field public static final int translateX = 16843866; // 0x101045a - field public static final int translateY = 16843867; // 0x101045b - field public static final int translationX = 16843554; // 0x1010322 - field public static final int translationY = 16843555; // 0x1010323 - field public static final int translationZ = 16843770; // 0x10103fa - field public static final int trimPathEnd = 16843785; // 0x1010409 - field public static final int trimPathOffset = 16843786; // 0x101040a - field public static final int trimPathStart = 16843784; // 0x1010408 - field public static final int ttcIndex = 16844143; // 0x101056f - field public static final int tunerCount = 16844061; // 0x101051d - field public static final int turnScreenOn = 16844138; // 0x101056a - field public static final int type = 16843169; // 0x10101a1 - field public static final int typeface = 16842902; // 0x1010096 - field public static final int uiOptions = 16843672; // 0x1010398 - field public static final int uncertainGestureColor = 16843382; // 0x1010276 - field @Deprecated public static final int unfocusedMonthDateColor = 16843588; // 0x1010344 - field public static final int unselectedAlpha = 16843278; // 0x101020e - field public static final int updatePeriodMillis = 16843344; // 0x1010250 - field public static final int use32bitAbi = 16844053; // 0x1010515 - field public static final int useAppZygote = 16844183; // 0x1010597 - field @FlaggedApi("com.android.text.flags.use_bounds_for_width") public static final int useBoundsForWidth = 16844440; // 0x1010698 - field public static final int useDefaultMargins = 16843641; // 0x1010379 - field public static final int useEmbeddedDex = 16844190; // 0x101059e - field public static final int useIntrinsicSizeAsMinimum = 16843536; // 0x1010310 - field public static final int useLevel = 16843167; // 0x101019f - field @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public static final int useLocalePreferredLineHeightForMinimum = 16844445; // 0x101069d - field public static final int userVisible = 16843409; // 0x1010291 - field public static final int usesCleartextTraffic = 16844012; // 0x10104ec - field public static final int usesPermissionFlags = 16844356; // 0x1010644 - field public static final int value = 16842788; // 0x1010024 - field public static final int valueFrom = 16843486; // 0x10102de - field public static final int valueTo = 16843487; // 0x10102df - field public static final int valueType = 16843488; // 0x10102e0 - field public static final int variablePadding = 16843157; // 0x1010195 - field public static final int vendor = 16843751; // 0x10103e7 - field public static final int version = 16844057; // 0x1010519 - field public static final int versionCode = 16843291; // 0x101021b - field public static final int versionCodeMajor = 16844150; // 0x1010576 - field public static final int versionMajor = 16844151; // 0x1010577 - field public static final int versionName = 16843292; // 0x101021c - field @Deprecated public static final int verticalCorrection = 16843322; // 0x101023a - field public static final int verticalDivider = 16843054; // 0x101012e - field @Deprecated public static final int verticalGap = 16843328; // 0x1010240 - field public static final int verticalScrollbarPosition = 16843572; // 0x1010334 - field public static final int verticalSpacing = 16843029; // 0x1010115 - field public static final int viewportHeight = 16843779; // 0x1010403 - field public static final int viewportWidth = 16843778; // 0x1010402 - field public static final int visibility = 16842972; // 0x10100dc - field public static final int visible = 16843156; // 0x1010194 - field public static final int visibleToInstantApps = 16844081; // 0x1010531 - field public static final int vmSafeMode = 16843448; // 0x10102b8 - field public static final int voiceIcon = 16843908; // 0x1010484 - field public static final int voiceLanguage = 16843349; // 0x1010255 - field public static final int voiceLanguageModel = 16843347; // 0x1010253 - field public static final int voiceMaxResults = 16843350; // 0x1010256 - field public static final int voicePromptText = 16843348; // 0x1010254 - field public static final int voiceSearchMode = 16843346; // 0x1010252 - field public static final int wallpaperCloseEnterAnimation = 16843413; // 0x1010295 - field public static final int wallpaperCloseExitAnimation = 16843414; // 0x1010296 - field public static final int wallpaperIntraCloseEnterAnimation = 16843417; // 0x1010299 - field public static final int wallpaperIntraCloseExitAnimation = 16843418; // 0x101029a - field public static final int wallpaperIntraOpenEnterAnimation = 16843415; // 0x1010297 - field public static final int wallpaperIntraOpenExitAnimation = 16843416; // 0x1010298 - field public static final int wallpaperOpenEnterAnimation = 16843411; // 0x1010293 - field public static final int wallpaperOpenExitAnimation = 16843412; // 0x1010294 - field public static final int webTextViewStyle = 16843449; // 0x10102b9 - field public static final int webViewStyle = 16842885; // 0x1010085 - field public static final int weekDayTextAppearance = 16843592; // 0x1010348 - field @Deprecated public static final int weekNumberColor = 16843589; // 0x1010345 - field @Deprecated public static final int weekSeparatorLineColor = 16843590; // 0x1010346 - field public static final int weightSum = 16843048; // 0x1010128 - field public static final int widgetCategory = 16843716; // 0x10103c4 - field public static final int widgetFeatures = 16844153; // 0x1010579 - field public static final int widgetLayout = 16843243; // 0x10101eb - field public static final int width = 16843097; // 0x1010159 - field public static final int windowActionBar = 16843469; // 0x10102cd - field public static final int windowActionBarOverlay = 16843492; // 0x10102e4 - field public static final int windowActionModeOverlay = 16843485; // 0x10102dd - field public static final int windowActivityTransitions = 16843981; // 0x10104cd - field public static final int windowAllowEnterTransitionOverlap = 16843836; // 0x101043c - field public static final int windowAllowReturnTransitionOverlap = 16843835; // 0x101043b - field public static final int windowAnimationStyle = 16842926; // 0x10100ae - field public static final int windowBackground = 16842836; // 0x1010054 - field public static final int windowBackgroundBlurRadius = 16844331; // 0x101062b - field public static final int windowBackgroundFallback = 16844035; // 0x1010503 - field public static final int windowBlurBehindEnabled = 16844316; // 0x101061c - field public static final int windowBlurBehindRadius = 16844315; // 0x101061b - field public static final int windowClipToOutline = 16843947; // 0x10104ab - field public static final int windowCloseOnTouchOutside = 16843611; // 0x101035b - field public static final int windowContentOverlay = 16842841; // 0x1010059 - field public static final int windowContentTransitionManager = 16843769; // 0x10103f9 - field public static final int windowContentTransitions = 16843768; // 0x10103f8 - field public static final int windowDisablePreview = 16843298; // 0x1010222 - field public static final int windowDrawsSystemBarBackgrounds = 16843856; // 0x1010450 - field public static final int windowElevation = 16843920; // 0x1010490 - field public static final int windowEnableSplitTouch = 16843543; // 0x1010317 - field public static final int windowEnterAnimation = 16842932; // 0x10100b4 - field public static final int windowEnterTransition = 16843831; // 0x1010437 - field public static final int windowExitAnimation = 16842933; // 0x10100b5 - field public static final int windowExitTransition = 16843832; // 0x1010438 - field public static final int windowFrame = 16842837; // 0x1010055 - field public static final int windowFullscreen = 16843277; // 0x101020d - field public static final int windowHideAnimation = 16842935; // 0x10100b7 - field public static final int windowIsFloating = 16842839; // 0x1010057 - field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final int windowIsFrameRatePowerSavingsBalanced = 16844451; // 0x10106a3 - field public static final int windowIsTranslucent = 16842840; // 0x1010058 - field public static final int windowLayoutAffinity = 16844313; // 0x1010619 - field public static final int windowLayoutInDisplayCutoutMode = 16844166; // 0x1010586 - field public static final int windowLightNavigationBar = 16844140; // 0x101056c - field public static final int windowLightStatusBar = 16844000; // 0x10104e0 - field public static final int windowMinWidthMajor = 16843606; // 0x1010356 - field public static final int windowMinWidthMinor = 16843607; // 0x1010357 - field public static final int windowNoDisplay = 16843294; // 0x101021e - field public static final int windowNoMoveAnimation = 16844421; // 0x1010685 - field public static final int windowNoTitle = 16842838; // 0x1010056 - field @FlaggedApi("com.android.window.flags.enforce_edge_to_edge") public static final int windowOptOutEdgeToEdgeEnforcement = 16844442; // 0x101069a - field @Deprecated public static final int windowOverscan = 16843727; // 0x10103cf - field public static final int windowReenterTransition = 16843951; // 0x10104af - field public static final int windowReturnTransition = 16843950; // 0x10104ae - field public static final int windowSharedElementEnterTransition = 16843833; // 0x1010439 - field public static final int windowSharedElementExitTransition = 16843834; // 0x101043a - field public static final int windowSharedElementReenterTransition = 16843953; // 0x10104b1 - field public static final int windowSharedElementReturnTransition = 16843952; // 0x10104b0 - field public static final int windowSharedElementsUseOverlay = 16843963; // 0x10104bb - field public static final int windowShowAnimation = 16842934; // 0x10100b6 - field public static final int windowShowWallpaper = 16843410; // 0x1010292 - field public static final int windowSoftInputMode = 16843307; // 0x101022b - field public static final int windowSplashScreenAnimatedIcon = 16844333; // 0x101062d - field @Deprecated public static final int windowSplashScreenAnimationDuration = 16844334; // 0x101062e - field public static final int windowSplashScreenBackground = 16844332; // 0x101062c - field public static final int windowSplashScreenBehavior = 16844392; // 0x1010668 - field public static final int windowSplashScreenBrandingImage = 16844335; // 0x101062f - field public static final int windowSplashScreenIconBackgroundColor = 16844336; // 0x1010630 - field @Deprecated public static final int windowSplashscreenContent = 16844132; // 0x1010564 - field @Deprecated public static final int windowSwipeToDismiss = 16843763; // 0x10103f3 - field public static final int windowTitleBackgroundStyle = 16842844; // 0x101005c - field public static final int windowTitleSize = 16842842; // 0x101005a - field public static final int windowTitleStyle = 16842843; // 0x101005b - field public static final int windowTransitionBackgroundFadeDuration = 16843873; // 0x1010461 - field public static final int windowTranslucentNavigation = 16843760; // 0x10103f0 - field public static final int windowTranslucentStatus = 16843759; // 0x10103ef - field public static final int writePermission = 16842760; // 0x1010008 - field public static final int x = 16842924; // 0x10100ac - field public static final int xlargeScreens = 16843455; // 0x10102bf - field public static final int y = 16842925; // 0x10100ad - field @Deprecated public static final int yearListItemTextAppearance = 16843929; // 0x1010499 - field @Deprecated public static final int yearListSelectorColor = 16843930; // 0x101049a - field public static final int yesNoPreferenceStyle = 16842896; // 0x1010090 - field public static final int zAdjustment = 16843201; // 0x10101c1 - field public static final int zygotePreloadName = 16844189; // 0x101059d - } - - public static final class R.bool { - ctor public R.bool(); - } - - public static final class R.color { - ctor public R.color(); - field public static final int background_dark = 17170446; // 0x106000e - field public static final int background_light = 17170447; // 0x106000f - field public static final int black = 17170444; // 0x106000c - field public static final int darker_gray = 17170432; // 0x1060000 - field public static final int holo_blue_bright = 17170459; // 0x106001b - field public static final int holo_blue_dark = 17170451; // 0x1060013 - field public static final int holo_blue_light = 17170450; // 0x1060012 - field public static final int holo_green_dark = 17170453; // 0x1060015 - field public static final int holo_green_light = 17170452; // 0x1060014 - field public static final int holo_orange_dark = 17170457; // 0x1060019 - field public static final int holo_orange_light = 17170456; // 0x1060018 - field public static final int holo_purple = 17170458; // 0x106001a - field public static final int holo_red_dark = 17170455; // 0x1060017 - field public static final int holo_red_light = 17170454; // 0x1060016 - field @Deprecated public static final int primary_text_dark = 17170433; // 0x1060001 - field @Deprecated public static final int primary_text_dark_nodisable = 17170434; // 0x1060002 - field @Deprecated public static final int primary_text_light = 17170435; // 0x1060003 - field @Deprecated public static final int primary_text_light_nodisable = 17170436; // 0x1060004 - field @Deprecated public static final int secondary_text_dark = 17170437; // 0x1060005 - field @Deprecated public static final int secondary_text_dark_nodisable = 17170438; // 0x1060006 - field @Deprecated public static final int secondary_text_light = 17170439; // 0x1060007 - field @Deprecated public static final int secondary_text_light_nodisable = 17170440; // 0x1060008 - field public static final int system_accent1_0 = 17170487; // 0x1060037 - field public static final int system_accent1_10 = 17170488; // 0x1060038 - field public static final int system_accent1_100 = 17170490; // 0x106003a - field public static final int system_accent1_1000 = 17170499; // 0x1060043 - field public static final int system_accent1_200 = 17170491; // 0x106003b - field public static final int system_accent1_300 = 17170492; // 0x106003c - field public static final int system_accent1_400 = 17170493; // 0x106003d - field public static final int system_accent1_50 = 17170489; // 0x1060039 - field public static final int system_accent1_500 = 17170494; // 0x106003e - field public static final int system_accent1_600 = 17170495; // 0x106003f - field public static final int system_accent1_700 = 17170496; // 0x1060040 - field public static final int system_accent1_800 = 17170497; // 0x1060041 - field public static final int system_accent1_900 = 17170498; // 0x1060042 - field public static final int system_accent2_0 = 17170500; // 0x1060044 - field public static final int system_accent2_10 = 17170501; // 0x1060045 - field public static final int system_accent2_100 = 17170503; // 0x1060047 - field public static final int system_accent2_1000 = 17170512; // 0x1060050 - field public static final int system_accent2_200 = 17170504; // 0x1060048 - field public static final int system_accent2_300 = 17170505; // 0x1060049 - field public static final int system_accent2_400 = 17170506; // 0x106004a - field public static final int system_accent2_50 = 17170502; // 0x1060046 - field public static final int system_accent2_500 = 17170507; // 0x106004b - field public static final int system_accent2_600 = 17170508; // 0x106004c - field public static final int system_accent2_700 = 17170509; // 0x106004d - field public static final int system_accent2_800 = 17170510; // 0x106004e - field public static final int system_accent2_900 = 17170511; // 0x106004f - field public static final int system_accent3_0 = 17170513; // 0x1060051 - field public static final int system_accent3_10 = 17170514; // 0x1060052 - field public static final int system_accent3_100 = 17170516; // 0x1060054 - field public static final int system_accent3_1000 = 17170525; // 0x106005d - field public static final int system_accent3_200 = 17170517; // 0x1060055 - field public static final int system_accent3_300 = 17170518; // 0x1060056 - field public static final int system_accent3_400 = 17170519; // 0x1060057 - field public static final int system_accent3_50 = 17170515; // 0x1060053 - field public static final int system_accent3_500 = 17170520; // 0x1060058 - field public static final int system_accent3_600 = 17170521; // 0x1060059 - field public static final int system_accent3_700 = 17170522; // 0x106005a - field public static final int system_accent3_800 = 17170523; // 0x106005b - field public static final int system_accent3_900 = 17170524; // 0x106005c - field public static final int system_background_dark = 17170581; // 0x1060095 - field public static final int system_background_light = 17170538; // 0x106006a - field public static final int system_control_activated_dark = 17170599; // 0x10600a7 - field public static final int system_control_activated_light = 17170556; // 0x106007c - field public static final int system_control_highlight_dark = 17170601; // 0x10600a9 - field public static final int system_control_highlight_light = 17170558; // 0x106007e - field public static final int system_control_normal_dark = 17170600; // 0x10600a8 - field public static final int system_control_normal_light = 17170557; // 0x106007d - field public static final int system_error_0 = 17170629; // 0x10600c5 - field public static final int system_error_10 = 17170630; // 0x10600c6 - field public static final int system_error_100 = 17170632; // 0x10600c8 - field public static final int system_error_1000 = 17170641; // 0x10600d1 - field public static final int system_error_200 = 17170633; // 0x10600c9 - field public static final int system_error_300 = 17170634; // 0x10600ca - field public static final int system_error_400 = 17170635; // 0x10600cb - field public static final int system_error_50 = 17170631; // 0x10600c7 - field public static final int system_error_500 = 17170636; // 0x10600cc - field public static final int system_error_600 = 17170637; // 0x10600cd - field public static final int system_error_700 = 17170638; // 0x10600ce - field public static final int system_error_800 = 17170639; // 0x10600cf - field public static final int system_error_900 = 17170640; // 0x10600d0 - field public static final int system_error_container_dark = 17170597; // 0x10600a5 - field public static final int system_error_container_light = 17170554; // 0x106007a - field public static final int system_error_dark = 17170595; // 0x10600a3 - field public static final int system_error_light = 17170552; // 0x1060078 - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_on_surface_dark; - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_on_surface_light; - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_primary_dark; - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_primary_light; - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_surface_dark; - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_surface_light; - field public static final int system_neutral1_0 = 17170461; // 0x106001d - field public static final int system_neutral1_10 = 17170462; // 0x106001e - field public static final int system_neutral1_100 = 17170464; // 0x1060020 - field public static final int system_neutral1_1000 = 17170473; // 0x1060029 - field public static final int system_neutral1_200 = 17170465; // 0x1060021 - field public static final int system_neutral1_300 = 17170466; // 0x1060022 - field public static final int system_neutral1_400 = 17170467; // 0x1060023 - field public static final int system_neutral1_50 = 17170463; // 0x106001f - field public static final int system_neutral1_500 = 17170468; // 0x1060024 - field public static final int system_neutral1_600 = 17170469; // 0x1060025 - field public static final int system_neutral1_700 = 17170470; // 0x1060026 - field public static final int system_neutral1_800 = 17170471; // 0x1060027 - field public static final int system_neutral1_900 = 17170472; // 0x1060028 - field public static final int system_neutral2_0 = 17170474; // 0x106002a - field public static final int system_neutral2_10 = 17170475; // 0x106002b - field public static final int system_neutral2_100 = 17170477; // 0x106002d - field public static final int system_neutral2_1000 = 17170486; // 0x1060036 - field public static final int system_neutral2_200 = 17170478; // 0x106002e - field public static final int system_neutral2_300 = 17170479; // 0x106002f - field public static final int system_neutral2_400 = 17170480; // 0x1060030 - field public static final int system_neutral2_50 = 17170476; // 0x106002c - field public static final int system_neutral2_500 = 17170481; // 0x1060031 - field public static final int system_neutral2_600 = 17170482; // 0x1060032 - field public static final int system_neutral2_700 = 17170483; // 0x1060033 - field public static final int system_neutral2_800 = 17170484; // 0x1060034 - field public static final int system_neutral2_900 = 17170485; // 0x1060035 - field public static final int system_on_background_dark = 17170582; // 0x1060096 - field public static final int system_on_background_light = 17170539; // 0x106006b - field public static final int system_on_error_container_dark = 17170598; // 0x10600a6 - field public static final int system_on_error_container_light = 17170555; // 0x106007b - field public static final int system_on_error_dark = 17170596; // 0x10600a4 - field public static final int system_on_error_light = 17170553; // 0x1060079 - field public static final int system_on_primary_container_dark = 17170570; // 0x106008a - field public static final int system_on_primary_container_light = 17170527; // 0x106005f - field public static final int system_on_primary_dark = 17170572; // 0x106008c - field public static final int system_on_primary_fixed = 17170614; // 0x10600b6 - field public static final int system_on_primary_fixed_variant = 17170615; // 0x10600b7 - field public static final int system_on_primary_light = 17170529; // 0x1060061 - field public static final int system_on_secondary_container_dark = 17170574; // 0x106008e - field public static final int system_on_secondary_container_light = 17170531; // 0x1060063 - field public static final int system_on_secondary_dark = 17170576; // 0x1060090 - field public static final int system_on_secondary_fixed = 17170618; // 0x10600ba - field public static final int system_on_secondary_fixed_variant = 17170619; // 0x10600bb - field public static final int system_on_secondary_light = 17170533; // 0x1060065 - field public static final int system_on_surface_dark = 17170584; // 0x1060098 - field public static final int system_on_surface_disabled = 17170627; // 0x10600c3 - field public static final int system_on_surface_light = 17170541; // 0x106006d - field public static final int system_on_surface_variant_dark = 17170593; // 0x10600a1 - field public static final int system_on_surface_variant_light = 17170550; // 0x1060076 - field public static final int system_on_tertiary_container_dark = 17170578; // 0x1060092 - field public static final int system_on_tertiary_container_light = 17170535; // 0x1060067 - field public static final int system_on_tertiary_dark = 17170580; // 0x1060094 - field public static final int system_on_tertiary_fixed = 17170622; // 0x10600be - field public static final int system_on_tertiary_fixed_variant = 17170623; // 0x10600bf - field public static final int system_on_tertiary_light = 17170537; // 0x1060069 - field public static final int system_outline_dark = 17170594; // 0x10600a2 - field public static final int system_outline_disabled = 17170628; // 0x10600c4 - field public static final int system_outline_light = 17170551; // 0x1060077 - field public static final int system_outline_variant_dark = 17170625; // 0x10600c1 - field public static final int system_outline_variant_light = 17170624; // 0x10600c0 - field public static final int system_palette_key_color_neutral_dark = 17170610; // 0x10600b2 - field public static final int system_palette_key_color_neutral_light = 17170567; // 0x1060087 - field public static final int system_palette_key_color_neutral_variant_dark = 17170611; // 0x10600b3 - field public static final int system_palette_key_color_neutral_variant_light = 17170568; // 0x1060088 - field public static final int system_palette_key_color_primary_dark = 17170607; // 0x10600af - field public static final int system_palette_key_color_primary_light = 17170564; // 0x1060084 - field public static final int system_palette_key_color_secondary_dark = 17170608; // 0x10600b0 - field public static final int system_palette_key_color_secondary_light = 17170565; // 0x1060085 - field public static final int system_palette_key_color_tertiary_dark = 17170609; // 0x10600b1 - field public static final int system_palette_key_color_tertiary_light = 17170566; // 0x1060086 - field public static final int system_primary_container_dark = 17170569; // 0x1060089 - field public static final int system_primary_container_light = 17170526; // 0x106005e - field public static final int system_primary_dark = 17170571; // 0x106008b - field public static final int system_primary_fixed = 17170612; // 0x10600b4 - field public static final int system_primary_fixed_dim = 17170613; // 0x10600b5 - field public static final int system_primary_light = 17170528; // 0x1060060 - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_scrim_dark; - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_scrim_light; - field public static final int system_secondary_container_dark = 17170573; // 0x106008d - field public static final int system_secondary_container_light = 17170530; // 0x1060062 - field public static final int system_secondary_dark = 17170575; // 0x106008f - field public static final int system_secondary_fixed = 17170616; // 0x10600b8 - field public static final int system_secondary_fixed_dim = 17170617; // 0x10600b9 - field public static final int system_secondary_light = 17170532; // 0x1060064 - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_shadow_dark; - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_shadow_light; - field public static final int system_surface_bright_dark = 17170590; // 0x106009e - field public static final int system_surface_bright_light = 17170547; // 0x1060073 - field public static final int system_surface_container_dark = 17170587; // 0x106009b - field public static final int system_surface_container_high_dark = 17170588; // 0x106009c - field public static final int system_surface_container_high_light = 17170545; // 0x1060071 - field public static final int system_surface_container_highest_dark = 17170589; // 0x106009d - field public static final int system_surface_container_highest_light = 17170546; // 0x1060072 - field public static final int system_surface_container_light = 17170544; // 0x1060070 - field public static final int system_surface_container_low_dark = 17170585; // 0x1060099 - field public static final int system_surface_container_low_light = 17170542; // 0x106006e - field public static final int system_surface_container_lowest_dark = 17170586; // 0x106009a - field public static final int system_surface_container_lowest_light = 17170543; // 0x106006f - field public static final int system_surface_dark = 17170583; // 0x1060097 - field public static final int system_surface_dim_dark = 17170591; // 0x106009f - field public static final int system_surface_dim_light = 17170548; // 0x1060074 - field public static final int system_surface_disabled = 17170626; // 0x10600c2 - field public static final int system_surface_light = 17170540; // 0x106006c - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_surface_tint_dark; - field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_surface_tint_light; - field public static final int system_surface_variant_dark = 17170592; // 0x10600a0 - field public static final int system_surface_variant_light = 17170549; // 0x1060075 - field public static final int system_tertiary_container_dark = 17170577; // 0x1060091 - field public static final int system_tertiary_container_light = 17170534; // 0x1060066 - field public static final int system_tertiary_dark = 17170579; // 0x1060093 - field public static final int system_tertiary_fixed = 17170620; // 0x10600bc - field public static final int system_tertiary_fixed_dim = 17170621; // 0x10600bd - field public static final int system_tertiary_light = 17170536; // 0x1060068 - field public static final int system_text_hint_inverse_dark = 17170606; // 0x10600ae - field public static final int system_text_hint_inverse_light = 17170563; // 0x1060083 - field public static final int system_text_primary_inverse_dark = 17170602; // 0x10600aa - field public static final int system_text_primary_inverse_disable_only_dark = 17170604; // 0x10600ac - field public static final int system_text_primary_inverse_disable_only_light = 17170561; // 0x1060081 - field public static final int system_text_primary_inverse_light = 17170559; // 0x106007f - field public static final int system_text_secondary_and_tertiary_inverse_dark = 17170603; // 0x10600ab - field public static final int system_text_secondary_and_tertiary_inverse_disabled_dark = 17170605; // 0x10600ad - field public static final int system_text_secondary_and_tertiary_inverse_disabled_light = 17170562; // 0x1060082 - field public static final int system_text_secondary_and_tertiary_inverse_light = 17170560; // 0x1060080 - field public static final int tab_indicator_text = 17170441; // 0x1060009 - field @Deprecated public static final int tertiary_text_dark = 17170448; // 0x1060010 - field @Deprecated public static final int tertiary_text_light = 17170449; // 0x1060011 - field public static final int transparent = 17170445; // 0x106000d - field public static final int white = 17170443; // 0x106000b - field public static final int widget_edittext_dark = 17170442; // 0x106000a - } - - public static final class R.dimen { - ctor public R.dimen(); - field public static final int app_icon_size = 17104896; // 0x1050000 - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveDefaultEffectDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveDefaultSpatialDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveFastEffectDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveFastSpatialDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveSlowEffectDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveSlowSpatialDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardDefaultEffectDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardDefaultSpatialDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardFastEffectDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardFastSpatialDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardSlowEffectDamping; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardSlowSpatialDamping; - field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusLarge; - field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusMedium; - field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusSmall; - field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusXlarge; - field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusXsmall; - field public static final int dialog_min_width_major = 17104899; // 0x1050003 - field public static final int dialog_min_width_minor = 17104900; // 0x1050004 - field public static final int notification_large_icon_height = 17104902; // 0x1050006 - field public static final int notification_large_icon_width = 17104901; // 0x1050005 - field public static final int system_app_widget_background_radius = 17104904; // 0x1050008 - field public static final int system_app_widget_inner_radius = 17104905; // 0x1050009 - field public static final int thumbnail_height = 17104897; // 0x1050001 - field public static final int thumbnail_width = 17104898; // 0x1050002 - } - - public static final class R.drawable { - ctor public R.drawable(); - field public static final int alert_dark_frame = 17301504; // 0x1080000 - field public static final int alert_light_frame = 17301505; // 0x1080001 - field public static final int arrow_down_float = 17301506; // 0x1080002 - field public static final int arrow_up_float = 17301507; // 0x1080003 - field public static final int bottom_bar = 17301658; // 0x108009a - field public static final int btn_default = 17301508; // 0x1080004 - field public static final int btn_default_small = 17301509; // 0x1080005 - field public static final int btn_dialog = 17301527; // 0x1080017 - field public static final int btn_dropdown = 17301510; // 0x1080006 - field public static final int btn_minus = 17301511; // 0x1080007 - field public static final int btn_plus = 17301512; // 0x1080008 - field public static final int btn_radio = 17301513; // 0x1080009 - field public static final int btn_star = 17301514; // 0x108000a - field public static final int btn_star_big_off = 17301515; // 0x108000b - field public static final int btn_star_big_on = 17301516; // 0x108000c - field public static final int button_onoff_indicator_off = 17301518; // 0x108000e - field public static final int button_onoff_indicator_on = 17301517; // 0x108000d - field public static final int checkbox_off_background = 17301519; // 0x108000f - field public static final int checkbox_on_background = 17301520; // 0x1080010 - field public static final int dark_header = 17301669; // 0x10800a5 - field public static final int dialog_frame = 17301521; // 0x1080011 - field public static final int dialog_holo_dark_frame = 17301682; // 0x10800b2 - field public static final int dialog_holo_light_frame = 17301683; // 0x10800b3 - field public static final int divider_horizontal_bright = 17301522; // 0x1080012 - field public static final int divider_horizontal_dark = 17301524; // 0x1080014 - field public static final int divider_horizontal_dim_dark = 17301525; // 0x1080015 - field public static final int divider_horizontal_textfield = 17301523; // 0x1080013 - field public static final int edit_text = 17301526; // 0x1080016 - field public static final int editbox_background = 17301528; // 0x1080018 - field public static final int editbox_background_normal = 17301529; // 0x1080019 - field public static final int editbox_dropdown_dark_frame = 17301530; // 0x108001a - field public static final int editbox_dropdown_light_frame = 17301531; // 0x108001b - field public static final int gallery_thumb = 17301532; // 0x108001c - field public static final int ic_btn_speak_now = 17301668; // 0x10800a4 - field public static final int ic_delete = 17301533; // 0x108001d - field public static final int ic_dialog_alert = 17301543; // 0x1080027 - field public static final int ic_dialog_dialer = 17301544; // 0x1080028 - field public static final int ic_dialog_email = 17301545; // 0x1080029 - field public static final int ic_dialog_info = 17301659; // 0x108009b - field public static final int ic_dialog_map = 17301546; // 0x108002a - field public static final int ic_input_add = 17301547; // 0x108002b - field public static final int ic_input_delete = 17301548; // 0x108002c - field public static final int ic_input_get = 17301549; // 0x108002d - field public static final int ic_lock_idle_alarm = 17301550; // 0x108002e - field public static final int ic_lock_idle_charging = 17301534; // 0x108001e - field public static final int ic_lock_idle_lock = 17301535; // 0x108001f - field public static final int ic_lock_idle_low_battery = 17301536; // 0x1080020 - field public static final int ic_lock_lock = 17301551; // 0x108002f - field public static final int ic_lock_power_off = 17301552; // 0x1080030 - field public static final int ic_lock_silent_mode = 17301553; // 0x1080031 - field public static final int ic_lock_silent_mode_off = 17301554; // 0x1080032 - field public static final int ic_media_ff = 17301537; // 0x1080021 - field public static final int ic_media_next = 17301538; // 0x1080022 - field public static final int ic_media_pause = 17301539; // 0x1080023 - field public static final int ic_media_play = 17301540; // 0x1080024 - field public static final int ic_media_previous = 17301541; // 0x1080025 - field public static final int ic_media_rew = 17301542; // 0x1080026 - field public static final int ic_menu_add = 17301555; // 0x1080033 - field public static final int ic_menu_agenda = 17301556; // 0x1080034 - field public static final int ic_menu_always_landscape_portrait = 17301557; // 0x1080035 - field public static final int ic_menu_call = 17301558; // 0x1080036 - field public static final int ic_menu_camera = 17301559; // 0x1080037 - field public static final int ic_menu_close_clear_cancel = 17301560; // 0x1080038 - field public static final int ic_menu_compass = 17301561; // 0x1080039 - field public static final int ic_menu_crop = 17301562; // 0x108003a - field public static final int ic_menu_day = 17301563; // 0x108003b - field public static final int ic_menu_delete = 17301564; // 0x108003c - field public static final int ic_menu_directions = 17301565; // 0x108003d - field public static final int ic_menu_edit = 17301566; // 0x108003e - field public static final int ic_menu_gallery = 17301567; // 0x108003f - field public static final int ic_menu_help = 17301568; // 0x1080040 - field public static final int ic_menu_info_details = 17301569; // 0x1080041 - field public static final int ic_menu_manage = 17301570; // 0x1080042 - field public static final int ic_menu_mapmode = 17301571; // 0x1080043 - field public static final int ic_menu_month = 17301572; // 0x1080044 - field public static final int ic_menu_more = 17301573; // 0x1080045 - field public static final int ic_menu_my_calendar = 17301574; // 0x1080046 - field public static final int ic_menu_mylocation = 17301575; // 0x1080047 - field public static final int ic_menu_myplaces = 17301576; // 0x1080048 - field public static final int ic_menu_preferences = 17301577; // 0x1080049 - field public static final int ic_menu_recent_history = 17301578; // 0x108004a - field public static final int ic_menu_report_image = 17301579; // 0x108004b - field public static final int ic_menu_revert = 17301580; // 0x108004c - field public static final int ic_menu_rotate = 17301581; // 0x108004d - field public static final int ic_menu_save = 17301582; // 0x108004e - field public static final int ic_menu_search = 17301583; // 0x108004f - field public static final int ic_menu_send = 17301584; // 0x1080050 - field public static final int ic_menu_set_as = 17301585; // 0x1080051 - field public static final int ic_menu_share = 17301586; // 0x1080052 - field public static final int ic_menu_slideshow = 17301587; // 0x1080053 - field public static final int ic_menu_sort_alphabetically = 17301660; // 0x108009c - field public static final int ic_menu_sort_by_size = 17301661; // 0x108009d - field public static final int ic_menu_today = 17301588; // 0x1080054 - field public static final int ic_menu_upload = 17301589; // 0x1080055 - field public static final int ic_menu_upload_you_tube = 17301590; // 0x1080056 - field public static final int ic_menu_view = 17301591; // 0x1080057 - field public static final int ic_menu_week = 17301592; // 0x1080058 - field public static final int ic_menu_zoom = 17301593; // 0x1080059 - field public static final int ic_notification_clear_all = 17301594; // 0x108005a - field public static final int ic_notification_overlay = 17301595; // 0x108005b - field public static final int ic_partial_secure = 17301596; // 0x108005c - field public static final int ic_popup_disk_full = 17301597; // 0x108005d - field public static final int ic_popup_reminder = 17301598; // 0x108005e - field public static final int ic_popup_sync = 17301599; // 0x108005f - field public static final int ic_search_category_default = 17301600; // 0x1080060 - field public static final int ic_secure = 17301601; // 0x1080061 - field public static final int list_selector_background = 17301602; // 0x1080062 - field public static final int menu_frame = 17301603; // 0x1080063 - field public static final int menu_full_frame = 17301604; // 0x1080064 - field public static final int menuitem_background = 17301605; // 0x1080065 - field public static final int picture_frame = 17301606; // 0x1080066 - field public static final int presence_audio_away = 17301679; // 0x10800af - field public static final int presence_audio_busy = 17301680; // 0x10800b0 - field public static final int presence_audio_online = 17301681; // 0x10800b1 - field public static final int presence_away = 17301607; // 0x1080067 - field public static final int presence_busy = 17301608; // 0x1080068 - field public static final int presence_invisible = 17301609; // 0x1080069 - field public static final int presence_offline = 17301610; // 0x108006a - field public static final int presence_online = 17301611; // 0x108006b - field public static final int presence_video_away = 17301676; // 0x10800ac - field public static final int presence_video_busy = 17301677; // 0x10800ad - field public static final int presence_video_online = 17301678; // 0x10800ae - field public static final int progress_horizontal = 17301612; // 0x108006c - field public static final int progress_indeterminate_horizontal = 17301613; // 0x108006d - field public static final int radiobutton_off_background = 17301614; // 0x108006e - field public static final int radiobutton_on_background = 17301615; // 0x108006f - field public static final int screen_background_dark = 17301656; // 0x1080098 - field public static final int screen_background_dark_transparent = 17301673; // 0x10800a9 - field public static final int screen_background_light = 17301657; // 0x1080099 - field public static final int screen_background_light_transparent = 17301674; // 0x10800aa - field public static final int spinner_background = 17301616; // 0x1080070 - field public static final int spinner_dropdown_background = 17301617; // 0x1080071 - field public static final int star_big_off = 17301619; // 0x1080073 - field public static final int star_big_on = 17301618; // 0x1080072 - field public static final int star_off = 17301621; // 0x1080075 - field public static final int star_on = 17301620; // 0x1080074 - field public static final int stat_notify_call_mute = 17301622; // 0x1080076 - field public static final int stat_notify_chat = 17301623; // 0x1080077 - field public static final int stat_notify_error = 17301624; // 0x1080078 - field public static final int stat_notify_missed_call = 17301631; // 0x108007f - field public static final int stat_notify_more = 17301625; // 0x1080079 - field public static final int stat_notify_sdcard = 17301626; // 0x108007a - field public static final int stat_notify_sdcard_prepare = 17301675; // 0x10800ab - field public static final int stat_notify_sdcard_usb = 17301627; // 0x108007b - field public static final int stat_notify_sync = 17301628; // 0x108007c - field public static final int stat_notify_sync_noanim = 17301629; // 0x108007d - field public static final int stat_notify_voicemail = 17301630; // 0x108007e - field public static final int stat_sys_data_bluetooth = 17301632; // 0x1080080 - field public static final int stat_sys_download = 17301633; // 0x1080081 - field public static final int stat_sys_download_done = 17301634; // 0x1080082 - field public static final int stat_sys_headset = 17301635; // 0x1080083 - field @Deprecated public static final int stat_sys_phone_call = 17301636; // 0x1080084 - field @Deprecated public static final int stat_sys_phone_call_forward = 17301637; // 0x1080085 - field @Deprecated public static final int stat_sys_phone_call_on_hold = 17301638; // 0x1080086 - field public static final int stat_sys_speakerphone = 17301639; // 0x1080087 - field public static final int stat_sys_upload = 17301640; // 0x1080088 - field public static final int stat_sys_upload_done = 17301641; // 0x1080089 - field @Deprecated public static final int stat_sys_vp_phone_call = 17301671; // 0x10800a7 - field @Deprecated public static final int stat_sys_vp_phone_call_on_hold = 17301672; // 0x10800a8 - field public static final int stat_sys_warning = 17301642; // 0x108008a - field public static final int status_bar_item_app_background = 17301643; // 0x108008b - field public static final int status_bar_item_background = 17301644; // 0x108008c - field public static final int sym_action_call = 17301645; // 0x108008d - field public static final int sym_action_chat = 17301646; // 0x108008e - field public static final int sym_action_email = 17301647; // 0x108008f - field public static final int sym_call_incoming = 17301648; // 0x1080090 - field public static final int sym_call_missed = 17301649; // 0x1080091 - field public static final int sym_call_outgoing = 17301650; // 0x1080092 - field public static final int sym_contact_card = 17301652; // 0x1080094 - field public static final int sym_def_app_icon = 17301651; // 0x1080093 - field public static final int title_bar = 17301653; // 0x1080095 - field public static final int title_bar_tall = 17301670; // 0x10800a6 - field public static final int toast_frame = 17301654; // 0x1080096 - field public static final int zoom_plate = 17301655; // 0x1080097 - } - - public static final class R.fraction { - ctor public R.fraction(); - } - - public static final class R.id { - ctor public R.id(); - field public static final int accessibilityActionContextClick = 16908348; // 0x102003c - field public static final int accessibilityActionDragCancel = 16908375; // 0x1020057 - field public static final int accessibilityActionDragDrop = 16908374; // 0x1020056 - field public static final int accessibilityActionDragStart = 16908373; // 0x1020055 - field public static final int accessibilityActionHideTooltip = 16908357; // 0x1020045 - field public static final int accessibilityActionImeEnter = 16908372; // 0x1020054 - field public static final int accessibilityActionMoveWindow = 16908354; // 0x1020042 - field public static final int accessibilityActionPageDown = 16908359; // 0x1020047 - field public static final int accessibilityActionPageLeft = 16908360; // 0x1020048 - field public static final int accessibilityActionPageRight = 16908361; // 0x1020049 - field public static final int accessibilityActionPageUp = 16908358; // 0x1020046 - field public static final int accessibilityActionPressAndHold = 16908362; // 0x102004a - field public static final int accessibilityActionScrollDown = 16908346; // 0x102003a - field public static final int accessibilityActionScrollInDirection = 16908382; // 0x102005e - field public static final int accessibilityActionScrollLeft = 16908345; // 0x1020039 - field public static final int accessibilityActionScrollRight = 16908347; // 0x102003b - field public static final int accessibilityActionScrollToPosition = 16908343; // 0x1020037 - field public static final int accessibilityActionScrollUp = 16908344; // 0x1020038 - field public static final int accessibilityActionSetProgress = 16908349; // 0x102003d - field public static final int accessibilityActionShowOnScreen = 16908342; // 0x1020036 - field public static final int accessibilityActionShowTextSuggestions = 16908376; // 0x1020058 - field public static final int accessibilityActionShowTooltip = 16908356; // 0x1020044 - field public static final int accessibilitySystemActionBack = 16908363; // 0x102004b - field public static final int accessibilitySystemActionHome = 16908364; // 0x102004c - field public static final int accessibilitySystemActionLockScreen = 16908370; // 0x1020052 - field public static final int accessibilitySystemActionNotifications = 16908366; // 0x102004e - field public static final int accessibilitySystemActionPowerDialog = 16908368; // 0x1020050 - field public static final int accessibilitySystemActionQuickSettings = 16908367; // 0x102004f - field public static final int accessibilitySystemActionRecents = 16908365; // 0x102004d - field public static final int accessibilitySystemActionTakeScreenshot = 16908371; // 0x1020053 - field public static final int accessibilitySystemActionToggleSplitScreen = 16908369; // 0x1020051 - field public static final int addToDictionary = 16908330; // 0x102002a - field public static final int autofill = 16908355; // 0x1020043 - field public static final int background = 16908288; // 0x1020000 - field public static final int bold = 16908379; // 0x102005b - field public static final int button1 = 16908313; // 0x1020019 - field public static final int button2 = 16908314; // 0x102001a - field public static final int button3 = 16908315; // 0x102001b - field public static final int candidatesArea = 16908317; // 0x102001d - field public static final int checkbox = 16908289; // 0x1020001 - field public static final int closeButton = 16908327; // 0x1020027 - field public static final int content = 16908290; // 0x1020002 - field public static final int copy = 16908321; // 0x1020021 - field public static final int copyUrl = 16908323; // 0x1020023 - field public static final int custom = 16908331; // 0x102002b - field public static final int cut = 16908320; // 0x1020020 - field public static final int edit = 16908291; // 0x1020003 - field public static final int empty = 16908292; // 0x1020004 - field public static final int extractArea = 16908316; // 0x102001c - field public static final int hint = 16908293; // 0x1020005 - field public static final int home = 16908332; // 0x102002c - field public static final int icon = 16908294; // 0x1020006 - field public static final int icon1 = 16908295; // 0x1020007 - field public static final int icon2 = 16908296; // 0x1020008 - field public static final int icon_frame = 16908350; // 0x102003e - field public static final int input = 16908297; // 0x1020009 - field public static final int inputArea = 16908318; // 0x102001e - field public static final int inputExtractAccessories = 16908378; // 0x102005a - field public static final int inputExtractAction = 16908377; // 0x1020059 - field public static final int inputExtractEditText = 16908325; // 0x1020025 - field public static final int italic = 16908380; // 0x102005c - field @Deprecated public static final int keyboardView = 16908326; // 0x1020026 - field public static final int list = 16908298; // 0x102000a - field public static final int list_container = 16908351; // 0x102003f - field public static final int mask = 16908334; // 0x102002e - field public static final int message = 16908299; // 0x102000b - field public static final int navigationBarBackground = 16908336; // 0x1020030 - field public static final int paste = 16908322; // 0x1020022 - field public static final int pasteAsPlainText = 16908337; // 0x1020031 - field public static final int primary = 16908300; // 0x102000c - field public static final int progress = 16908301; // 0x102000d - field public static final int redo = 16908339; // 0x1020033 - field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final int remoteViewsMetricsId; - field public static final int replaceText = 16908340; // 0x1020034 - field public static final int secondaryProgress = 16908303; // 0x102000f - field public static final int selectAll = 16908319; // 0x102001f - field public static final int selectTextMode = 16908333; // 0x102002d - field public static final int selectedIcon = 16908302; // 0x102000e - field public static final int shareText = 16908341; // 0x1020035 - field public static final int startSelectingText = 16908328; // 0x1020028 - field public static final int statusBarBackground = 16908335; // 0x102002f - field public static final int stopSelectingText = 16908329; // 0x1020029 - field public static final int summary = 16908304; // 0x1020010 - field public static final int switchInputMethod = 16908324; // 0x1020024 - field public static final int switch_widget = 16908352; // 0x1020040 - field public static final int tabcontent = 16908305; // 0x1020011 - field public static final int tabhost = 16908306; // 0x1020012 - field public static final int tabs = 16908307; // 0x1020013 - field public static final int text1 = 16908308; // 0x1020014 - field public static final int text2 = 16908309; // 0x1020015 - field public static final int textAssist = 16908353; // 0x1020041 - field public static final int title = 16908310; // 0x1020016 - field public static final int toggle = 16908311; // 0x1020017 - field public static final int underline = 16908381; // 0x102005d - field public static final int undo = 16908338; // 0x1020032 - field public static final int widget_frame = 16908312; // 0x1020018 - } - - public static final class R.integer { - ctor public R.integer(); - field public static final int config_longAnimTime = 17694722; // 0x10e0002 - field public static final int config_mediumAnimTime = 17694721; // 0x10e0001 - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveDefaultEffectStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveDefaultSpatialStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveFastEffectStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveFastSpatialStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveSlowEffectStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveSlowSpatialStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardDefaultEffectStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardDefaultSpatialStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardFastEffectStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardFastSpatialStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardSlowEffectStiffness; - field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardSlowSpatialStiffness; - field public static final int config_shortAnimTime = 17694720; // 0x10e0000 - field @Deprecated public static final int status_bar_notification_info_maxnum = 17694723; // 0x10e0003 - } - - public static final class R.interpolator { - ctor public R.interpolator(); - field public static final int accelerate_cubic = 17563650; // 0x10c0002 - field public static final int accelerate_decelerate = 17563654; // 0x10c0006 - field public static final int accelerate_quad = 17563648; // 0x10c0000 - field public static final int accelerate_quint = 17563652; // 0x10c0004 - field public static final int anticipate = 17563655; // 0x10c0007 - field public static final int anticipate_overshoot = 17563657; // 0x10c0009 - field public static final int bounce = 17563658; // 0x10c000a - field public static final int cycle = 17563660; // 0x10c000c - field public static final int decelerate_cubic = 17563651; // 0x10c0003 - field public static final int decelerate_quad = 17563649; // 0x10c0001 - field public static final int decelerate_quint = 17563653; // 0x10c0005 - field public static final int fast_out_extra_slow_in = 17563674; // 0x10c001a - field public static final int fast_out_linear_in = 17563663; // 0x10c000f - field public static final int fast_out_slow_in = 17563661; // 0x10c000d - field public static final int linear = 17563659; // 0x10c000b - field public static final int linear_out_slow_in = 17563662; // 0x10c000e - field public static final int overshoot = 17563656; // 0x10c0008 - } - - public static final class R.layout { - ctor public R.layout(); - field public static final int activity_list_item = 17367040; // 0x1090000 - field public static final int browser_link_context_header = 17367054; // 0x109000e - field public static final int expandable_list_content = 17367041; // 0x1090001 - field public static final int list_content = 17367060; // 0x1090014 - field public static final int preference_category = 17367042; // 0x1090002 - field public static final int select_dialog_item = 17367057; // 0x1090011 - field public static final int select_dialog_multichoice = 17367059; // 0x1090013 - field public static final int select_dialog_singlechoice = 17367058; // 0x1090012 - field public static final int simple_dropdown_item_1line = 17367050; // 0x109000a - field public static final int simple_expandable_list_item_1 = 17367046; // 0x1090006 - field public static final int simple_expandable_list_item_2 = 17367047; // 0x1090007 - field public static final int simple_gallery_item = 17367051; // 0x109000b - field public static final int simple_list_item_1 = 17367043; // 0x1090003 - field public static final int simple_list_item_2 = 17367044; // 0x1090004 - field public static final int simple_list_item_activated_1 = 17367062; // 0x1090016 - field public static final int simple_list_item_activated_2 = 17367063; // 0x1090017 - field public static final int simple_list_item_checked = 17367045; // 0x1090005 - field public static final int simple_list_item_multiple_choice = 17367056; // 0x1090010 - field public static final int simple_list_item_single_choice = 17367055; // 0x109000f - field public static final int simple_selectable_list_item = 17367061; // 0x1090015 - field public static final int simple_spinner_dropdown_item = 17367049; // 0x1090009 - field public static final int simple_spinner_item = 17367048; // 0x1090008 - field public static final int test_list_item = 17367052; // 0x109000c - field public static final int two_line_list_item = 17367053; // 0x109000d - } - - public static final class R.menu { - ctor public R.menu(); - } - - public static final class R.mipmap { - ctor public R.mipmap(); - field public static final int sym_def_app_icon = 17629184; // 0x10d0000 - } - - public static final class R.plurals { - ctor public R.plurals(); - } - - public static final class R.raw { - ctor public R.raw(); - } - - public static final class R.string { - ctor public R.string(); - field public static final int VideoView_error_button = 17039376; // 0x1040010 - field public static final int VideoView_error_text_invalid_progressive_playback = 17039381; // 0x1040015 - field public static final int VideoView_error_text_unknown = 17039377; // 0x1040011 - field public static final int VideoView_error_title = 17039378; // 0x1040012 - field public static final int autofill = 17039386; // 0x104001a - field public static final int cancel = 17039360; // 0x1040000 - field public static final int copy = 17039361; // 0x1040001 - field public static final int copyUrl = 17039362; // 0x1040002 - field public static final int cut = 17039363; // 0x1040003 - field public static final int defaultMsisdnAlphaTag = 17039365; // 0x1040005 - field public static final int defaultVoiceMailAlphaTag = 17039364; // 0x1040004 - field public static final int dialog_alert_title = 17039380; // 0x1040014 - field public static final int emptyPhoneNumber = 17039366; // 0x1040006 - field public static final int fingerprint_icon_content_description = 17039384; // 0x1040018 - field public static final int httpErrorBadUrl = 17039367; // 0x1040007 - field public static final int httpErrorUnsupportedScheme = 17039368; // 0x1040008 - field @Deprecated public static final int no = 17039369; // 0x1040009 - field public static final int ok = 17039370; // 0x104000a - field public static final int paste = 17039371; // 0x104000b - field public static final int paste_as_plain_text = 17039385; // 0x1040019 - field public static final int search_go = 17039372; // 0x104000c - field public static final int selectAll = 17039373; // 0x104000d - field public static final int selectTextMode = 17039382; // 0x1040016 - field @Deprecated public static final int status_bar_notification_info_overflow = 17039383; // 0x1040017 - field public static final int unknownName = 17039374; // 0x104000e - field public static final int untitled = 17039375; // 0x104000f - field @Deprecated public static final int yes = 17039379; // 0x1040013 - } - - public static final class R.style { - ctor public R.style(); - field public static final int Animation = 16973824; // 0x1030000 - field public static final int Animation_Activity = 16973825; // 0x1030001 - field public static final int Animation_Dialog = 16973826; // 0x1030002 - field public static final int Animation_InputMethod = 16973910; // 0x1030056 - field public static final int Animation_Toast = 16973828; // 0x1030004 - field public static final int Animation_Translucent = 16973827; // 0x1030003 - field public static final int DeviceDefault_ButtonBar = 16974287; // 0x10301cf - field public static final int DeviceDefault_ButtonBar_AlertDialog = 16974288; // 0x10301d0 - field public static final int DeviceDefault_Light_ButtonBar = 16974290; // 0x10301d2 - field public static final int DeviceDefault_Light_ButtonBar_AlertDialog = 16974291; // 0x10301d3 - field public static final int DeviceDefault_Light_SegmentedButton = 16974292; // 0x10301d4 - field public static final int DeviceDefault_SegmentedButton = 16974289; // 0x10301d1 - field public static final int Holo_ButtonBar = 16974053; // 0x10300e5 - field public static final int Holo_ButtonBar_AlertDialog = 16974055; // 0x10300e7 - field public static final int Holo_Light_ButtonBar = 16974054; // 0x10300e6 - field public static final int Holo_Light_ButtonBar_AlertDialog = 16974056; // 0x10300e8 - field public static final int Holo_Light_SegmentedButton = 16974058; // 0x10300ea - field public static final int Holo_SegmentedButton = 16974057; // 0x10300e9 - field public static final int MediaButton = 16973879; // 0x1030037 - field public static final int MediaButton_Ffwd = 16973883; // 0x103003b - field public static final int MediaButton_Next = 16973881; // 0x1030039 - field public static final int MediaButton_Pause = 16973885; // 0x103003d - field public static final int MediaButton_Play = 16973882; // 0x103003a - field public static final int MediaButton_Previous = 16973880; // 0x1030038 - field public static final int MediaButton_Rew = 16973884; // 0x103003c - field public static final int TextAppearance = 16973886; // 0x103003e - field public static final int TextAppearance_DeviceDefault = 16974253; // 0x10301ad - field public static final int TextAppearance_DeviceDefault_DialogWindowTitle = 16974264; // 0x10301b8 - field public static final int TextAppearance_DeviceDefault_Headline = 16974565; // 0x10302e5 - field public static final int TextAppearance_DeviceDefault_Inverse = 16974254; // 0x10301ae - field public static final int TextAppearance_DeviceDefault_Large = 16974255; // 0x10301af - field public static final int TextAppearance_DeviceDefault_Large_Inverse = 16974256; // 0x10301b0 - field public static final int TextAppearance_DeviceDefault_Medium = 16974257; // 0x10301b1 - field public static final int TextAppearance_DeviceDefault_Medium_Inverse = 16974258; // 0x10301b2 - field public static final int TextAppearance_DeviceDefault_SearchResult_Subtitle = 16974262; // 0x10301b6 - field public static final int TextAppearance_DeviceDefault_SearchResult_Title = 16974261; // 0x10301b5 - field public static final int TextAppearance_DeviceDefault_Small = 16974259; // 0x10301b3 - field public static final int TextAppearance_DeviceDefault_Small_Inverse = 16974260; // 0x10301b4 - field public static final int TextAppearance_DeviceDefault_Widget = 16974265; // 0x10301b9 - field public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Menu = 16974286; // 0x10301ce - field public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Subtitle = 16974279; // 0x10301c7 - field @Deprecated public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Subtitle_Inverse = 16974283; // 0x10301cb - field public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Title = 16974278; // 0x10301c6 - field @Deprecated public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Title_Inverse = 16974282; // 0x10301ca - field public static final int TextAppearance_DeviceDefault_Widget_ActionMode_Subtitle = 16974281; // 0x10301c9 - field @Deprecated public static final int TextAppearance_DeviceDefault_Widget_ActionMode_Subtitle_Inverse = 16974285; // 0x10301cd - field public static final int TextAppearance_DeviceDefault_Widget_ActionMode_Title = 16974280; // 0x10301c8 - field @Deprecated public static final int TextAppearance_DeviceDefault_Widget_ActionMode_Title_Inverse = 16974284; // 0x10301cc - field public static final int TextAppearance_DeviceDefault_Widget_Button = 16974266; // 0x10301ba - field public static final int TextAppearance_DeviceDefault_Widget_DropDownHint = 16974271; // 0x10301bf - field public static final int TextAppearance_DeviceDefault_Widget_DropDownItem = 16974272; // 0x10301c0 - field public static final int TextAppearance_DeviceDefault_Widget_EditText = 16974274; // 0x10301c2 - field public static final int TextAppearance_DeviceDefault_Widget_IconMenu_Item = 16974267; // 0x10301bb - field public static final int TextAppearance_DeviceDefault_Widget_PopupMenu = 16974275; // 0x10301c3 - field public static final int TextAppearance_DeviceDefault_Widget_PopupMenu_Large = 16974276; // 0x10301c4 - field public static final int TextAppearance_DeviceDefault_Widget_PopupMenu_Small = 16974277; // 0x10301c5 - field public static final int TextAppearance_DeviceDefault_Widget_TabWidget = 16974268; // 0x10301bc - field public static final int TextAppearance_DeviceDefault_Widget_TextView = 16974269; // 0x10301bd - field public static final int TextAppearance_DeviceDefault_Widget_TextView_PopupMenu = 16974270; // 0x10301be - field public static final int TextAppearance_DeviceDefault_Widget_TextView_SpinnerItem = 16974273; // 0x10301c1 - field public static final int TextAppearance_DeviceDefault_WindowTitle = 16974263; // 0x10301b7 - field public static final int TextAppearance_DialogWindowTitle = 16973889; // 0x1030041 - field public static final int TextAppearance_Holo = 16974075; // 0x10300fb - field public static final int TextAppearance_Holo_DialogWindowTitle = 16974103; // 0x1030117 - field public static final int TextAppearance_Holo_Inverse = 16974076; // 0x10300fc - field public static final int TextAppearance_Holo_Large = 16974077; // 0x10300fd - field public static final int TextAppearance_Holo_Large_Inverse = 16974078; // 0x10300fe - field public static final int TextAppearance_Holo_Medium = 16974079; // 0x10300ff - field public static final int TextAppearance_Holo_Medium_Inverse = 16974080; // 0x1030100 - field public static final int TextAppearance_Holo_SearchResult_Subtitle = 16974084; // 0x1030104 - field public static final int TextAppearance_Holo_SearchResult_Title = 16974083; // 0x1030103 - field public static final int TextAppearance_Holo_Small = 16974081; // 0x1030101 - field public static final int TextAppearance_Holo_Small_Inverse = 16974082; // 0x1030102 - field public static final int TextAppearance_Holo_Widget = 16974085; // 0x1030105 - field public static final int TextAppearance_Holo_Widget_ActionBar_Menu = 16974112; // 0x1030120 - field public static final int TextAppearance_Holo_Widget_ActionBar_Subtitle = 16974099; // 0x1030113 - field public static final int TextAppearance_Holo_Widget_ActionBar_Subtitle_Inverse = 16974109; // 0x103011d - field public static final int TextAppearance_Holo_Widget_ActionBar_Title = 16974098; // 0x1030112 - field public static final int TextAppearance_Holo_Widget_ActionBar_Title_Inverse = 16974108; // 0x103011c - field public static final int TextAppearance_Holo_Widget_ActionMode_Subtitle = 16974101; // 0x1030115 - field public static final int TextAppearance_Holo_Widget_ActionMode_Subtitle_Inverse = 16974111; // 0x103011f - field public static final int TextAppearance_Holo_Widget_ActionMode_Title = 16974100; // 0x1030114 - field public static final int TextAppearance_Holo_Widget_ActionMode_Title_Inverse = 16974110; // 0x103011e - field public static final int TextAppearance_Holo_Widget_Button = 16974086; // 0x1030106 - field public static final int TextAppearance_Holo_Widget_DropDownHint = 16974091; // 0x103010b - field public static final int TextAppearance_Holo_Widget_DropDownItem = 16974092; // 0x103010c - field public static final int TextAppearance_Holo_Widget_EditText = 16974094; // 0x103010e - field public static final int TextAppearance_Holo_Widget_IconMenu_Item = 16974087; // 0x1030107 - field public static final int TextAppearance_Holo_Widget_PopupMenu = 16974095; // 0x103010f - field public static final int TextAppearance_Holo_Widget_PopupMenu_Large = 16974096; // 0x1030110 - field public static final int TextAppearance_Holo_Widget_PopupMenu_Small = 16974097; // 0x1030111 - field public static final int TextAppearance_Holo_Widget_TabWidget = 16974088; // 0x1030108 - field public static final int TextAppearance_Holo_Widget_TextView = 16974089; // 0x1030109 - field public static final int TextAppearance_Holo_Widget_TextView_PopupMenu = 16974090; // 0x103010a - field public static final int TextAppearance_Holo_Widget_TextView_SpinnerItem = 16974093; // 0x103010d - field public static final int TextAppearance_Holo_WindowTitle = 16974102; // 0x1030116 - field public static final int TextAppearance_Inverse = 16973887; // 0x103003f - field public static final int TextAppearance_Large = 16973890; // 0x1030042 - field public static final int TextAppearance_Large_Inverse = 16973891; // 0x1030043 - field public static final int TextAppearance_Material = 16974317; // 0x10301ed - field public static final int TextAppearance_Material_Body1 = 16974320; // 0x10301f0 - field public static final int TextAppearance_Material_Body2 = 16974319; // 0x10301ef - field public static final int TextAppearance_Material_Button = 16974318; // 0x10301ee - field public static final int TextAppearance_Material_Caption = 16974321; // 0x10301f1 - field public static final int TextAppearance_Material_DialogWindowTitle = 16974322; // 0x10301f2 - field public static final int TextAppearance_Material_Display1 = 16974326; // 0x10301f6 - field public static final int TextAppearance_Material_Display2 = 16974325; // 0x10301f5 - field public static final int TextAppearance_Material_Display3 = 16974324; // 0x10301f4 - field public static final int TextAppearance_Material_Display4 = 16974323; // 0x10301f3 - field public static final int TextAppearance_Material_Headline = 16974327; // 0x10301f7 - field public static final int TextAppearance_Material_Inverse = 16974328; // 0x10301f8 - field public static final int TextAppearance_Material_Large = 16974329; // 0x10301f9 - field public static final int TextAppearance_Material_Large_Inverse = 16974330; // 0x10301fa - field public static final int TextAppearance_Material_Medium = 16974331; // 0x10301fb - field public static final int TextAppearance_Material_Medium_Inverse = 16974332; // 0x10301fc - field public static final int TextAppearance_Material_Menu = 16974333; // 0x10301fd - field public static final int TextAppearance_Material_Notification = 16974334; // 0x10301fe - field public static final int TextAppearance_Material_Notification_Emphasis = 16974335; // 0x10301ff - field public static final int TextAppearance_Material_Notification_Info = 16974336; // 0x1030200 - field public static final int TextAppearance_Material_Notification_Line2 = 16974337; // 0x1030201 - field public static final int TextAppearance_Material_Notification_Time = 16974338; // 0x1030202 - field public static final int TextAppearance_Material_Notification_Title = 16974339; // 0x1030203 - field public static final int TextAppearance_Material_SearchResult_Subtitle = 16974340; // 0x1030204 - field public static final int TextAppearance_Material_SearchResult_Title = 16974341; // 0x1030205 - field public static final int TextAppearance_Material_Small = 16974342; // 0x1030206 - field public static final int TextAppearance_Material_Small_Inverse = 16974343; // 0x1030207 - field public static final int TextAppearance_Material_Subhead = 16974344; // 0x1030208 - field public static final int TextAppearance_Material_Title = 16974345; // 0x1030209 - field public static final int TextAppearance_Material_Widget = 16974347; // 0x103020b - field public static final int TextAppearance_Material_Widget_ActionBar_Menu = 16974348; // 0x103020c - field public static final int TextAppearance_Material_Widget_ActionBar_Subtitle = 16974349; // 0x103020d - field public static final int TextAppearance_Material_Widget_ActionBar_Subtitle_Inverse = 16974350; // 0x103020e - field public static final int TextAppearance_Material_Widget_ActionBar_Title = 16974351; // 0x103020f - field public static final int TextAppearance_Material_Widget_ActionBar_Title_Inverse = 16974352; // 0x1030210 - field public static final int TextAppearance_Material_Widget_ActionMode_Subtitle = 16974353; // 0x1030211 - field public static final int TextAppearance_Material_Widget_ActionMode_Subtitle_Inverse = 16974354; // 0x1030212 - field public static final int TextAppearance_Material_Widget_ActionMode_Title = 16974355; // 0x1030213 - field public static final int TextAppearance_Material_Widget_ActionMode_Title_Inverse = 16974356; // 0x1030214 - field public static final int TextAppearance_Material_Widget_Button = 16974357; // 0x1030215 - field public static final int TextAppearance_Material_Widget_Button_Borderless_Colored = 16974559; // 0x10302df - field public static final int TextAppearance_Material_Widget_Button_Colored = 16974558; // 0x10302de - field public static final int TextAppearance_Material_Widget_Button_Inverse = 16974548; // 0x10302d4 - field public static final int TextAppearance_Material_Widget_DropDownHint = 16974358; // 0x1030216 - field public static final int TextAppearance_Material_Widget_DropDownItem = 16974359; // 0x1030217 - field public static final int TextAppearance_Material_Widget_EditText = 16974360; // 0x1030218 - field public static final int TextAppearance_Material_Widget_IconMenu_Item = 16974361; // 0x1030219 - field public static final int TextAppearance_Material_Widget_PopupMenu = 16974362; // 0x103021a - field public static final int TextAppearance_Material_Widget_PopupMenu_Large = 16974363; // 0x103021b - field public static final int TextAppearance_Material_Widget_PopupMenu_Small = 16974364; // 0x103021c - field public static final int TextAppearance_Material_Widget_TabWidget = 16974365; // 0x103021d - field public static final int TextAppearance_Material_Widget_TextView = 16974366; // 0x103021e - field public static final int TextAppearance_Material_Widget_TextView_PopupMenu = 16974367; // 0x103021f - field public static final int TextAppearance_Material_Widget_TextView_SpinnerItem = 16974368; // 0x1030220 - field public static final int TextAppearance_Material_Widget_Toolbar_Subtitle = 16974369; // 0x1030221 - field public static final int TextAppearance_Material_Widget_Toolbar_Title = 16974370; // 0x1030222 - field public static final int TextAppearance_Material_WindowTitle = 16974346; // 0x103020a - field public static final int TextAppearance_Medium = 16973892; // 0x1030044 - field public static final int TextAppearance_Medium_Inverse = 16973893; // 0x1030045 - field public static final int TextAppearance_Small = 16973894; // 0x1030046 - field public static final int TextAppearance_Small_Inverse = 16973895; // 0x1030047 - field public static final int TextAppearance_StatusBar_EventContent = 16973927; // 0x1030067 - field public static final int TextAppearance_StatusBar_EventContent_Title = 16973928; // 0x1030068 - field public static final int TextAppearance_StatusBar_Icon = 16973926; // 0x1030066 - field public static final int TextAppearance_StatusBar_Title = 16973925; // 0x1030065 - field public static final int TextAppearance_SuggestionHighlight = 16974104; // 0x1030118 - field public static final int TextAppearance_Theme = 16973888; // 0x1030040 - field public static final int TextAppearance_Theme_Dialog = 16973896; // 0x1030048 - field public static final int TextAppearance_Widget = 16973897; // 0x1030049 - field public static final int TextAppearance_Widget_Button = 16973898; // 0x103004a - field public static final int TextAppearance_Widget_DropDownHint = 16973904; // 0x1030050 - field public static final int TextAppearance_Widget_DropDownItem = 16973905; // 0x1030051 - field public static final int TextAppearance_Widget_EditText = 16973900; // 0x103004c - field public static final int TextAppearance_Widget_IconMenu_Item = 16973899; // 0x103004b - field public static final int TextAppearance_Widget_PopupMenu_Large = 16973952; // 0x1030080 - field public static final int TextAppearance_Widget_PopupMenu_Small = 16973953; // 0x1030081 - field public static final int TextAppearance_Widget_TabWidget = 16973901; // 0x103004d - field public static final int TextAppearance_Widget_TextView = 16973902; // 0x103004e - field public static final int TextAppearance_Widget_TextView_PopupMenu = 16973903; // 0x103004f - field public static final int TextAppearance_Widget_TextView_SpinnerItem = 16973906; // 0x1030052 - field public static final int TextAppearance_WindowTitle = 16973907; // 0x1030053 - field public static final int Theme = 16973829; // 0x1030005 - field public static final int ThemeOverlay = 16974407; // 0x1030247 - field public static final int ThemeOverlay_DeviceDefault_Accent_DayNight = 16974564; // 0x10302e4 - field public static final int ThemeOverlay_Material = 16974408; // 0x1030248 - field public static final int ThemeOverlay_Material_ActionBar = 16974409; // 0x1030249 - field public static final int ThemeOverlay_Material_Dark = 16974411; // 0x103024b - field public static final int ThemeOverlay_Material_Dark_ActionBar = 16974412; // 0x103024c - field public static final int ThemeOverlay_Material_Dialog = 16974550; // 0x10302d6 - field public static final int ThemeOverlay_Material_Dialog_Alert = 16974551; // 0x10302d7 - field public static final int ThemeOverlay_Material_Light = 16974410; // 0x103024a - field public static final int Theme_Black = 16973832; // 0x1030008 - field public static final int Theme_Black_NoTitleBar = 16973833; // 0x1030009 - field public static final int Theme_Black_NoTitleBar_Fullscreen = 16973834; // 0x103000a - field public static final int Theme_DeviceDefault = 16974120; // 0x1030128 - field public static final int Theme_DeviceDefault_DayNight = 16974563; // 0x10302e3 - field public static final int Theme_DeviceDefault_Dialog = 16974126; // 0x103012e - field public static final int Theme_DeviceDefault_DialogWhenLarge = 16974134; // 0x1030136 - field public static final int Theme_DeviceDefault_DialogWhenLarge_NoActionBar = 16974135; // 0x1030137 - field public static final int Theme_DeviceDefault_Dialog_Alert = 16974545; // 0x10302d1 - field public static final int Theme_DeviceDefault_Dialog_MinWidth = 16974127; // 0x103012f - field public static final int Theme_DeviceDefault_Dialog_NoActionBar = 16974128; // 0x1030130 - field public static final int Theme_DeviceDefault_Dialog_NoActionBar_MinWidth = 16974129; // 0x1030131 - field public static final int Theme_DeviceDefault_InputMethod = 16974142; // 0x103013e - field public static final int Theme_DeviceDefault_Light = 16974123; // 0x103012b - field public static final int Theme_DeviceDefault_Light_DarkActionBar = 16974143; // 0x103013f - field public static final int Theme_DeviceDefault_Light_Dialog = 16974130; // 0x1030132 - field public static final int Theme_DeviceDefault_Light_DialogWhenLarge = 16974136; // 0x1030138 - field public static final int Theme_DeviceDefault_Light_DialogWhenLarge_NoActionBar = 16974137; // 0x1030139 - field public static final int Theme_DeviceDefault_Light_Dialog_Alert = 16974546; // 0x10302d2 - field public static final int Theme_DeviceDefault_Light_Dialog_MinWidth = 16974131; // 0x1030133 - field public static final int Theme_DeviceDefault_Light_Dialog_NoActionBar = 16974132; // 0x1030134 - field public static final int Theme_DeviceDefault_Light_Dialog_NoActionBar_MinWidth = 16974133; // 0x1030135 - field public static final int Theme_DeviceDefault_Light_NoActionBar = 16974124; // 0x103012c - field public static final int Theme_DeviceDefault_Light_NoActionBar_Fullscreen = 16974125; // 0x103012d - field public static final int Theme_DeviceDefault_Light_NoActionBar_Overscan = 16974304; // 0x10301e0 - field public static final int Theme_DeviceDefault_Light_NoActionBar_TranslucentDecor = 16974308; // 0x10301e4 - field public static final int Theme_DeviceDefault_Light_Panel = 16974139; // 0x103013b - field public static final int Theme_DeviceDefault_NoActionBar = 16974121; // 0x1030129 - field public static final int Theme_DeviceDefault_NoActionBar_Fullscreen = 16974122; // 0x103012a - field public static final int Theme_DeviceDefault_NoActionBar_Overscan = 16974303; // 0x10301df - field public static final int Theme_DeviceDefault_NoActionBar_TranslucentDecor = 16974307; // 0x10301e3 - field public static final int Theme_DeviceDefault_Panel = 16974138; // 0x103013a - field public static final int Theme_DeviceDefault_Settings = 16974371; // 0x1030223 - field public static final int Theme_DeviceDefault_Wallpaper = 16974140; // 0x103013c - field public static final int Theme_DeviceDefault_Wallpaper_NoTitleBar = 16974141; // 0x103013d - field public static final int Theme_Dialog = 16973835; // 0x103000b - field @Deprecated public static final int Theme_Holo = 16973931; // 0x103006b - field @Deprecated public static final int Theme_Holo_Dialog = 16973935; // 0x103006f - field @Deprecated public static final int Theme_Holo_DialogWhenLarge = 16973943; // 0x1030077 - field @Deprecated public static final int Theme_Holo_DialogWhenLarge_NoActionBar = 16973944; // 0x1030078 - field @Deprecated public static final int Theme_Holo_Dialog_MinWidth = 16973936; // 0x1030070 - field @Deprecated public static final int Theme_Holo_Dialog_NoActionBar = 16973937; // 0x1030071 - field @Deprecated public static final int Theme_Holo_Dialog_NoActionBar_MinWidth = 16973938; // 0x1030072 - field @Deprecated public static final int Theme_Holo_InputMethod = 16973951; // 0x103007f - field @Deprecated public static final int Theme_Holo_Light = 16973934; // 0x103006e - field @Deprecated public static final int Theme_Holo_Light_DarkActionBar = 16974105; // 0x1030119 - field @Deprecated public static final int Theme_Holo_Light_Dialog = 16973939; // 0x1030073 - field @Deprecated public static final int Theme_Holo_Light_DialogWhenLarge = 16973945; // 0x1030079 - field @Deprecated public static final int Theme_Holo_Light_DialogWhenLarge_NoActionBar = 16973946; // 0x103007a - field @Deprecated public static final int Theme_Holo_Light_Dialog_MinWidth = 16973940; // 0x1030074 - field @Deprecated public static final int Theme_Holo_Light_Dialog_NoActionBar = 16973941; // 0x1030075 - field @Deprecated public static final int Theme_Holo_Light_Dialog_NoActionBar_MinWidth = 16973942; // 0x1030076 - field @Deprecated public static final int Theme_Holo_Light_NoActionBar = 16974064; // 0x10300f0 - field @Deprecated public static final int Theme_Holo_Light_NoActionBar_Fullscreen = 16974065; // 0x10300f1 - field @Deprecated public static final int Theme_Holo_Light_NoActionBar_Overscan = 16974302; // 0x10301de - field @Deprecated public static final int Theme_Holo_Light_NoActionBar_TranslucentDecor = 16974306; // 0x10301e2 - field @Deprecated public static final int Theme_Holo_Light_Panel = 16973948; // 0x103007c - field @Deprecated public static final int Theme_Holo_NoActionBar = 16973932; // 0x103006c - field @Deprecated public static final int Theme_Holo_NoActionBar_Fullscreen = 16973933; // 0x103006d - field @Deprecated public static final int Theme_Holo_NoActionBar_Overscan = 16974301; // 0x10301dd - field @Deprecated public static final int Theme_Holo_NoActionBar_TranslucentDecor = 16974305; // 0x10301e1 - field @Deprecated public static final int Theme_Holo_Panel = 16973947; // 0x103007b - field @Deprecated public static final int Theme_Holo_Wallpaper = 16973949; // 0x103007d - field @Deprecated public static final int Theme_Holo_Wallpaper_NoTitleBar = 16973950; // 0x103007e - field public static final int Theme_InputMethod = 16973908; // 0x1030054 - field public static final int Theme_Light = 16973836; // 0x103000c - field public static final int Theme_Light_NoTitleBar = 16973837; // 0x103000d - field public static final int Theme_Light_NoTitleBar_Fullscreen = 16973838; // 0x103000e - field public static final int Theme_Light_Panel = 16973914; // 0x103005a - field public static final int Theme_Light_WallpaperSettings = 16973922; // 0x1030062 - field public static final int Theme_Material = 16974372; // 0x1030224 - field public static final int Theme_Material_Dialog = 16974373; // 0x1030225 - field public static final int Theme_Material_DialogWhenLarge = 16974379; // 0x103022b - field public static final int Theme_Material_DialogWhenLarge_NoActionBar = 16974380; // 0x103022c - field public static final int Theme_Material_Dialog_Alert = 16974374; // 0x1030226 - field public static final int Theme_Material_Dialog_MinWidth = 16974375; // 0x1030227 - field public static final int Theme_Material_Dialog_NoActionBar = 16974376; // 0x1030228 - field public static final int Theme_Material_Dialog_NoActionBar_MinWidth = 16974377; // 0x1030229 - field public static final int Theme_Material_Dialog_Presentation = 16974378; // 0x103022a - field public static final int Theme_Material_InputMethod = 16974381; // 0x103022d - field public static final int Theme_Material_Light = 16974391; // 0x1030237 - field public static final int Theme_Material_Light_DarkActionBar = 16974392; // 0x1030238 - field public static final int Theme_Material_Light_Dialog = 16974393; // 0x1030239 - field public static final int Theme_Material_Light_DialogWhenLarge = 16974399; // 0x103023f - field public static final int Theme_Material_Light_DialogWhenLarge_DarkActionBar = 16974552; // 0x10302d8 - field public static final int Theme_Material_Light_DialogWhenLarge_NoActionBar = 16974400; // 0x1030240 - field public static final int Theme_Material_Light_Dialog_Alert = 16974394; // 0x103023a - field public static final int Theme_Material_Light_Dialog_MinWidth = 16974395; // 0x103023b - field public static final int Theme_Material_Light_Dialog_NoActionBar = 16974396; // 0x103023c - field public static final int Theme_Material_Light_Dialog_NoActionBar_MinWidth = 16974397; // 0x103023d - field public static final int Theme_Material_Light_Dialog_Presentation = 16974398; // 0x103023e - field public static final int Theme_Material_Light_LightStatusBar = 16974549; // 0x10302d5 - field public static final int Theme_Material_Light_NoActionBar = 16974401; // 0x1030241 - field public static final int Theme_Material_Light_NoActionBar_Fullscreen = 16974402; // 0x1030242 - field @Deprecated public static final int Theme_Material_Light_NoActionBar_Overscan = 16974403; // 0x1030243 - field public static final int Theme_Material_Light_NoActionBar_TranslucentDecor = 16974404; // 0x1030244 - field public static final int Theme_Material_Light_Panel = 16974405; // 0x1030245 - field public static final int Theme_Material_Light_Voice = 16974406; // 0x1030246 - field public static final int Theme_Material_NoActionBar = 16974382; // 0x103022e - field public static final int Theme_Material_NoActionBar_Fullscreen = 16974383; // 0x103022f - field @Deprecated public static final int Theme_Material_NoActionBar_Overscan = 16974384; // 0x1030230 - field public static final int Theme_Material_NoActionBar_TranslucentDecor = 16974385; // 0x1030231 - field public static final int Theme_Material_Panel = 16974386; // 0x1030232 - field public static final int Theme_Material_Settings = 16974387; // 0x1030233 - field public static final int Theme_Material_Voice = 16974388; // 0x1030234 - field public static final int Theme_Material_Wallpaper = 16974389; // 0x1030235 - field public static final int Theme_Material_Wallpaper_NoTitleBar = 16974390; // 0x1030236 - field public static final int Theme_NoDisplay = 16973909; // 0x1030055 - field public static final int Theme_NoTitleBar = 16973830; // 0x1030006 - field public static final int Theme_NoTitleBar_Fullscreen = 16973831; // 0x1030007 - field public static final int Theme_NoTitleBar_OverlayActionModes = 16973930; // 0x103006a - field public static final int Theme_Panel = 16973913; // 0x1030059 - field public static final int Theme_Translucent = 16973839; // 0x103000f - field public static final int Theme_Translucent_NoTitleBar = 16973840; // 0x1030010 - field public static final int Theme_Translucent_NoTitleBar_Fullscreen = 16973841; // 0x1030011 - field public static final int Theme_Wallpaper = 16973918; // 0x103005e - field public static final int Theme_WallpaperSettings = 16973921; // 0x1030061 - field public static final int Theme_Wallpaper_NoTitleBar = 16973919; // 0x103005f - field public static final int Theme_Wallpaper_NoTitleBar_Fullscreen = 16973920; // 0x1030060 - field public static final int Theme_WithActionBar = 16973929; // 0x1030069 - field public static final int Widget = 16973842; // 0x1030012 - field public static final int Widget_AbsListView = 16973843; // 0x1030013 - field public static final int Widget_ActionBar = 16973954; // 0x1030082 - field public static final int Widget_ActionBar_TabBar = 16974068; // 0x10300f4 - field public static final int Widget_ActionBar_TabText = 16974067; // 0x10300f3 - field public static final int Widget_ActionBar_TabView = 16974066; // 0x10300f2 - field public static final int Widget_ActionButton = 16973956; // 0x1030084 - field public static final int Widget_ActionButton_CloseMode = 16973960; // 0x1030088 - field public static final int Widget_ActionButton_Overflow = 16973959; // 0x1030087 - field public static final int Widget_AutoCompleteTextView = 16973863; // 0x1030027 - field public static final int Widget_Button = 16973844; // 0x1030014 - field public static final int Widget_Button_Inset = 16973845; // 0x1030015 - field public static final int Widget_Button_Small = 16973846; // 0x1030016 - field public static final int Widget_Button_Toggle = 16973847; // 0x1030017 - field public static final int Widget_CalendarView = 16974059; // 0x10300eb - field public static final int Widget_CompoundButton = 16973848; // 0x1030018 - field public static final int Widget_CompoundButton_CheckBox = 16973849; // 0x1030019 - field public static final int Widget_CompoundButton_RadioButton = 16973850; // 0x103001a - field public static final int Widget_CompoundButton_Star = 16973851; // 0x103001b - field public static final int Widget_DatePicker = 16974062; // 0x10300ee - field public static final int Widget_DeviceDefault = 16974144; // 0x1030140 - field public static final int Widget_DeviceDefault_ActionBar = 16974187; // 0x103016b - field public static final int Widget_DeviceDefault_ActionBar_Solid = 16974195; // 0x1030173 - field public static final int Widget_DeviceDefault_ActionBar_TabBar = 16974194; // 0x1030172 - field public static final int Widget_DeviceDefault_ActionBar_TabText = 16974193; // 0x1030171 - field public static final int Widget_DeviceDefault_ActionBar_TabView = 16974192; // 0x1030170 - field public static final int Widget_DeviceDefault_ActionButton = 16974182; // 0x1030166 - field public static final int Widget_DeviceDefault_ActionButton_CloseMode = 16974186; // 0x103016a - field public static final int Widget_DeviceDefault_ActionButton_Overflow = 16974183; // 0x1030167 - field public static final int Widget_DeviceDefault_ActionButton_TextButton = 16974184; // 0x1030168 - field public static final int Widget_DeviceDefault_ActionMode = 16974185; // 0x1030169 - field public static final int Widget_DeviceDefault_AutoCompleteTextView = 16974151; // 0x1030147 - field public static final int Widget_DeviceDefault_Button = 16974145; // 0x1030141 - field public static final int Widget_DeviceDefault_Button_Borderless = 16974188; // 0x103016c - field public static final int Widget_DeviceDefault_Button_Borderless_Colored = 16974561; // 0x10302e1 - field public static final int Widget_DeviceDefault_Button_Borderless_Small = 16974149; // 0x1030145 - field public static final int Widget_DeviceDefault_Button_Colored = 16974560; // 0x10302e0 - field public static final int Widget_DeviceDefault_Button_Inset = 16974147; // 0x1030143 - field public static final int Widget_DeviceDefault_Button_Small = 16974146; // 0x1030142 - field public static final int Widget_DeviceDefault_Button_Toggle = 16974148; // 0x1030144 - field public static final int Widget_DeviceDefault_CalendarView = 16974190; // 0x103016e - field public static final int Widget_DeviceDefault_CheckedTextView = 16974299; // 0x10301db - field public static final int Widget_DeviceDefault_CompoundButton_CheckBox = 16974152; // 0x1030148 - field public static final int Widget_DeviceDefault_CompoundButton_RadioButton = 16974169; // 0x1030159 - field public static final int Widget_DeviceDefault_CompoundButton_Star = 16974173; // 0x103015d - field public static final int Widget_DeviceDefault_DatePicker = 16974191; // 0x103016f - field public static final int Widget_DeviceDefault_DropDownItem = 16974177; // 0x1030161 - field public static final int Widget_DeviceDefault_DropDownItem_Spinner = 16974178; // 0x1030162 - field public static final int Widget_DeviceDefault_EditText = 16974154; // 0x103014a - field public static final int Widget_DeviceDefault_ExpandableListView = 16974155; // 0x103014b - field public static final int Widget_DeviceDefault_FastScroll = 16974313; // 0x10301e9 - field public static final int Widget_DeviceDefault_GridView = 16974156; // 0x103014c - field public static final int Widget_DeviceDefault_HorizontalScrollView = 16974171; // 0x103015b - field public static final int Widget_DeviceDefault_ImageButton = 16974157; // 0x103014d - field public static final int Widget_DeviceDefault_Light = 16974196; // 0x1030174 - field public static final int Widget_DeviceDefault_Light_ActionBar = 16974243; // 0x10301a3 - field public static final int Widget_DeviceDefault_Light_ActionBar_Solid = 16974247; // 0x10301a7 - field @Deprecated public static final int Widget_DeviceDefault_Light_ActionBar_Solid_Inverse = 16974248; // 0x10301a8 - field public static final int Widget_DeviceDefault_Light_ActionBar_TabBar = 16974246; // 0x10301a6 - field @Deprecated public static final int Widget_DeviceDefault_Light_ActionBar_TabBar_Inverse = 16974249; // 0x10301a9 - field public static final int Widget_DeviceDefault_Light_ActionBar_TabText = 16974245; // 0x10301a5 - field @Deprecated public static final int Widget_DeviceDefault_Light_ActionBar_TabText_Inverse = 16974251; // 0x10301ab - field public static final int Widget_DeviceDefault_Light_ActionBar_TabView = 16974244; // 0x10301a4 - field @Deprecated public static final int Widget_DeviceDefault_Light_ActionBar_TabView_Inverse = 16974250; // 0x10301aa - field public static final int Widget_DeviceDefault_Light_ActionButton = 16974239; // 0x103019f - field public static final int Widget_DeviceDefault_Light_ActionButton_CloseMode = 16974242; // 0x10301a2 - field public static final int Widget_DeviceDefault_Light_ActionButton_Overflow = 16974240; // 0x10301a0 - field public static final int Widget_DeviceDefault_Light_ActionMode = 16974241; // 0x10301a1 - field @Deprecated public static final int Widget_DeviceDefault_Light_ActionMode_Inverse = 16974252; // 0x10301ac - field public static final int Widget_DeviceDefault_Light_AutoCompleteTextView = 16974203; // 0x103017b - field public static final int Widget_DeviceDefault_Light_Button = 16974197; // 0x1030175 - field public static final int Widget_DeviceDefault_Light_Button_Borderless_Small = 16974201; // 0x1030179 - field public static final int Widget_DeviceDefault_Light_Button_Inset = 16974199; // 0x1030177 - field public static final int Widget_DeviceDefault_Light_Button_Small = 16974198; // 0x1030176 - field public static final int Widget_DeviceDefault_Light_Button_Toggle = 16974200; // 0x1030178 - field public static final int Widget_DeviceDefault_Light_CalendarView = 16974238; // 0x103019e - field public static final int Widget_DeviceDefault_Light_CheckedTextView = 16974300; // 0x10301dc - field public static final int Widget_DeviceDefault_Light_CompoundButton_CheckBox = 16974204; // 0x103017c - field public static final int Widget_DeviceDefault_Light_CompoundButton_RadioButton = 16974224; // 0x1030190 - field public static final int Widget_DeviceDefault_Light_CompoundButton_Star = 16974228; // 0x1030194 - field public static final int Widget_DeviceDefault_Light_DropDownItem = 16974232; // 0x1030198 - field public static final int Widget_DeviceDefault_Light_DropDownItem_Spinner = 16974233; // 0x1030199 - field public static final int Widget_DeviceDefault_Light_EditText = 16974206; // 0x103017e - field public static final int Widget_DeviceDefault_Light_ExpandableListView = 16974207; // 0x103017f - field public static final int Widget_DeviceDefault_Light_FastScroll = 16974315; // 0x10301eb - field public static final int Widget_DeviceDefault_Light_GridView = 16974208; // 0x1030180 - field public static final int Widget_DeviceDefault_Light_HorizontalScrollView = 16974226; // 0x1030192 - field public static final int Widget_DeviceDefault_Light_ImageButton = 16974209; // 0x1030181 - field public static final int Widget_DeviceDefault_Light_ListPopupWindow = 16974235; // 0x103019b - field public static final int Widget_DeviceDefault_Light_ListView = 16974210; // 0x1030182 - field public static final int Widget_DeviceDefault_Light_ListView_DropDown = 16974205; // 0x103017d - field public static final int Widget_DeviceDefault_Light_MediaRouteButton = 16974296; // 0x10301d8 - field public static final int Widget_DeviceDefault_Light_PopupMenu = 16974236; // 0x103019c - field public static final int Widget_DeviceDefault_Light_PopupWindow = 16974211; // 0x1030183 - field public static final int Widget_DeviceDefault_Light_ProgressBar = 16974212; // 0x1030184 - field public static final int Widget_DeviceDefault_Light_ProgressBar_Horizontal = 16974213; // 0x1030185 - field public static final int Widget_DeviceDefault_Light_ProgressBar_Inverse = 16974217; // 0x1030189 - field public static final int Widget_DeviceDefault_Light_ProgressBar_Large = 16974216; // 0x1030188 - field public static final int Widget_DeviceDefault_Light_ProgressBar_Large_Inverse = 16974219; // 0x103018b - field public static final int Widget_DeviceDefault_Light_ProgressBar_Small = 16974214; // 0x1030186 - field public static final int Widget_DeviceDefault_Light_ProgressBar_Small_Inverse = 16974218; // 0x103018a - field public static final int Widget_DeviceDefault_Light_ProgressBar_Small_Title = 16974215; // 0x1030187 - field public static final int Widget_DeviceDefault_Light_RatingBar = 16974221; // 0x103018d - field public static final int Widget_DeviceDefault_Light_RatingBar_Indicator = 16974222; // 0x103018e - field public static final int Widget_DeviceDefault_Light_RatingBar_Small = 16974223; // 0x103018f - field public static final int Widget_DeviceDefault_Light_ScrollView = 16974225; // 0x1030191 - field public static final int Widget_DeviceDefault_Light_SeekBar = 16974220; // 0x103018c - field public static final int Widget_DeviceDefault_Light_Spinner = 16974227; // 0x1030193 - field public static final int Widget_DeviceDefault_Light_StackView = 16974316; // 0x10301ec - field public static final int Widget_DeviceDefault_Light_Tab = 16974237; // 0x103019d - field public static final int Widget_DeviceDefault_Light_TabWidget = 16974229; // 0x1030195 - field public static final int Widget_DeviceDefault_Light_TextView = 16974202; // 0x103017a - field public static final int Widget_DeviceDefault_Light_TextView_SpinnerItem = 16974234; // 0x103019a - field public static final int Widget_DeviceDefault_Light_WebTextView = 16974230; // 0x1030196 - field public static final int Widget_DeviceDefault_Light_WebView = 16974231; // 0x1030197 - field public static final int Widget_DeviceDefault_ListPopupWindow = 16974180; // 0x1030164 - field public static final int Widget_DeviceDefault_ListView = 16974158; // 0x103014e - field public static final int Widget_DeviceDefault_ListView_DropDown = 16974153; // 0x1030149 - field public static final int Widget_DeviceDefault_MediaRouteButton = 16974295; // 0x10301d7 - field public static final int Widget_DeviceDefault_PopupMenu = 16974181; // 0x1030165 - field public static final int Widget_DeviceDefault_PopupWindow = 16974159; // 0x103014f - field public static final int Widget_DeviceDefault_ProgressBar = 16974160; // 0x1030150 - field public static final int Widget_DeviceDefault_ProgressBar_Horizontal = 16974161; // 0x1030151 - field public static final int Widget_DeviceDefault_ProgressBar_Large = 16974164; // 0x1030154 - field public static final int Widget_DeviceDefault_ProgressBar_Small = 16974162; // 0x1030152 - field public static final int Widget_DeviceDefault_ProgressBar_Small_Title = 16974163; // 0x1030153 - field public static final int Widget_DeviceDefault_RatingBar = 16974166; // 0x1030156 - field public static final int Widget_DeviceDefault_RatingBar_Indicator = 16974167; // 0x1030157 - field public static final int Widget_DeviceDefault_RatingBar_Small = 16974168; // 0x1030158 - field public static final int Widget_DeviceDefault_ScrollView = 16974170; // 0x103015a - field public static final int Widget_DeviceDefault_SeekBar = 16974165; // 0x1030155 - field public static final int Widget_DeviceDefault_Spinner = 16974172; // 0x103015c - field public static final int Widget_DeviceDefault_StackView = 16974314; // 0x10301ea - field public static final int Widget_DeviceDefault_Tab = 16974189; // 0x103016d - field public static final int Widget_DeviceDefault_TabWidget = 16974174; // 0x103015e - field public static final int Widget_DeviceDefault_TextView = 16974150; // 0x1030146 - field public static final int Widget_DeviceDefault_TextView_SpinnerItem = 16974179; // 0x1030163 - field public static final int Widget_DeviceDefault_WebTextView = 16974175; // 0x103015f - field public static final int Widget_DeviceDefault_WebView = 16974176; // 0x1030160 - field public static final int Widget_DropDownItem = 16973867; // 0x103002b - field public static final int Widget_DropDownItem_Spinner = 16973868; // 0x103002c - field public static final int Widget_EditText = 16973859; // 0x1030023 - field public static final int Widget_ExpandableListView = 16973860; // 0x1030024 - field public static final int Widget_FastScroll = 16974309; // 0x10301e5 - field public static final int Widget_FragmentBreadCrumbs = 16973961; // 0x1030089 - field public static final int Widget_Gallery = 16973877; // 0x1030035 - field public static final int Widget_GridView = 16973874; // 0x1030032 - field public static final int Widget_Holo = 16973962; // 0x103008a - field public static final int Widget_Holo_ActionBar = 16974004; // 0x10300b4 - field public static final int Widget_Holo_ActionBar_Solid = 16974113; // 0x1030121 - field public static final int Widget_Holo_ActionBar_TabBar = 16974071; // 0x10300f7 - field public static final int Widget_Holo_ActionBar_TabText = 16974070; // 0x10300f6 - field public static final int Widget_Holo_ActionBar_TabView = 16974069; // 0x10300f5 - field public static final int Widget_Holo_ActionButton = 16973999; // 0x10300af - field public static final int Widget_Holo_ActionButton_CloseMode = 16974003; // 0x10300b3 - field public static final int Widget_Holo_ActionButton_Overflow = 16974000; // 0x10300b0 - field public static final int Widget_Holo_ActionButton_TextButton = 16974001; // 0x10300b1 - field public static final int Widget_Holo_ActionMode = 16974002; // 0x10300b2 - field public static final int Widget_Holo_AutoCompleteTextView = 16973968; // 0x1030090 - field public static final int Widget_Holo_Button = 16973963; // 0x103008b - field public static final int Widget_Holo_Button_Borderless = 16974050; // 0x10300e2 - field public static final int Widget_Holo_Button_Borderless_Small = 16974106; // 0x103011a - field public static final int Widget_Holo_Button_Inset = 16973965; // 0x103008d - field public static final int Widget_Holo_Button_Small = 16973964; // 0x103008c - field public static final int Widget_Holo_Button_Toggle = 16973966; // 0x103008e - field public static final int Widget_Holo_CalendarView = 16974060; // 0x10300ec - field public static final int Widget_Holo_CheckedTextView = 16974297; // 0x10301d9 - field public static final int Widget_Holo_CompoundButton_CheckBox = 16973969; // 0x1030091 - field public static final int Widget_Holo_CompoundButton_RadioButton = 16973986; // 0x10300a2 - field public static final int Widget_Holo_CompoundButton_Star = 16973990; // 0x10300a6 - field public static final int Widget_Holo_DatePicker = 16974063; // 0x10300ef - field public static final int Widget_Holo_DropDownItem = 16973994; // 0x10300aa - field public static final int Widget_Holo_DropDownItem_Spinner = 16973995; // 0x10300ab - field public static final int Widget_Holo_EditText = 16973971; // 0x1030093 - field public static final int Widget_Holo_ExpandableListView = 16973972; // 0x1030094 - field public static final int Widget_Holo_GridView = 16973973; // 0x1030095 - field public static final int Widget_Holo_HorizontalScrollView = 16973988; // 0x10300a4 - field public static final int Widget_Holo_ImageButton = 16973974; // 0x1030096 - field public static final int Widget_Holo_Light = 16974005; // 0x10300b5 - field public static final int Widget_Holo_Light_ActionBar = 16974049; // 0x10300e1 - field public static final int Widget_Holo_Light_ActionBar_Solid = 16974114; // 0x1030122 - field public static final int Widget_Holo_Light_ActionBar_Solid_Inverse = 16974115; // 0x1030123 - field public static final int Widget_Holo_Light_ActionBar_TabBar = 16974074; // 0x10300fa - field public static final int Widget_Holo_Light_ActionBar_TabBar_Inverse = 16974116; // 0x1030124 - field public static final int Widget_Holo_Light_ActionBar_TabText = 16974073; // 0x10300f9 - field public static final int Widget_Holo_Light_ActionBar_TabText_Inverse = 16974118; // 0x1030126 - field public static final int Widget_Holo_Light_ActionBar_TabView = 16974072; // 0x10300f8 - field public static final int Widget_Holo_Light_ActionBar_TabView_Inverse = 16974117; // 0x1030125 - field public static final int Widget_Holo_Light_ActionButton = 16974045; // 0x10300dd - field public static final int Widget_Holo_Light_ActionButton_CloseMode = 16974048; // 0x10300e0 - field public static final int Widget_Holo_Light_ActionButton_Overflow = 16974046; // 0x10300de - field public static final int Widget_Holo_Light_ActionMode = 16974047; // 0x10300df - field public static final int Widget_Holo_Light_ActionMode_Inverse = 16974119; // 0x1030127 - field public static final int Widget_Holo_Light_AutoCompleteTextView = 16974011; // 0x10300bb - field public static final int Widget_Holo_Light_Button = 16974006; // 0x10300b6 - field public static final int Widget_Holo_Light_Button_Borderless_Small = 16974107; // 0x103011b - field public static final int Widget_Holo_Light_Button_Inset = 16974008; // 0x10300b8 - field public static final int Widget_Holo_Light_Button_Small = 16974007; // 0x10300b7 - field public static final int Widget_Holo_Light_Button_Toggle = 16974009; // 0x10300b9 - field public static final int Widget_Holo_Light_CalendarView = 16974061; // 0x10300ed - field public static final int Widget_Holo_Light_CheckedTextView = 16974298; // 0x10301da - field public static final int Widget_Holo_Light_CompoundButton_CheckBox = 16974012; // 0x10300bc - field public static final int Widget_Holo_Light_CompoundButton_RadioButton = 16974032; // 0x10300d0 - field public static final int Widget_Holo_Light_CompoundButton_Star = 16974036; // 0x10300d4 - field public static final int Widget_Holo_Light_DropDownItem = 16974040; // 0x10300d8 - field public static final int Widget_Holo_Light_DropDownItem_Spinner = 16974041; // 0x10300d9 - field public static final int Widget_Holo_Light_EditText = 16974014; // 0x10300be - field public static final int Widget_Holo_Light_ExpandableListView = 16974015; // 0x10300bf - field public static final int Widget_Holo_Light_GridView = 16974016; // 0x10300c0 - field public static final int Widget_Holo_Light_HorizontalScrollView = 16974034; // 0x10300d2 - field public static final int Widget_Holo_Light_ImageButton = 16974017; // 0x10300c1 - field public static final int Widget_Holo_Light_ListPopupWindow = 16974043; // 0x10300db - field public static final int Widget_Holo_Light_ListView = 16974018; // 0x10300c2 - field public static final int Widget_Holo_Light_ListView_DropDown = 16974013; // 0x10300bd - field public static final int Widget_Holo_Light_MediaRouteButton = 16974294; // 0x10301d6 - field public static final int Widget_Holo_Light_PopupMenu = 16974044; // 0x10300dc - field public static final int Widget_Holo_Light_PopupWindow = 16974019; // 0x10300c3 - field public static final int Widget_Holo_Light_ProgressBar = 16974020; // 0x10300c4 - field public static final int Widget_Holo_Light_ProgressBar_Horizontal = 16974021; // 0x10300c5 - field public static final int Widget_Holo_Light_ProgressBar_Inverse = 16974025; // 0x10300c9 - field public static final int Widget_Holo_Light_ProgressBar_Large = 16974024; // 0x10300c8 - field public static final int Widget_Holo_Light_ProgressBar_Large_Inverse = 16974027; // 0x10300cb - field public static final int Widget_Holo_Light_ProgressBar_Small = 16974022; // 0x10300c6 - field public static final int Widget_Holo_Light_ProgressBar_Small_Inverse = 16974026; // 0x10300ca - field public static final int Widget_Holo_Light_ProgressBar_Small_Title = 16974023; // 0x10300c7 - field public static final int Widget_Holo_Light_RatingBar = 16974029; // 0x10300cd - field public static final int Widget_Holo_Light_RatingBar_Indicator = 16974030; // 0x10300ce - field public static final int Widget_Holo_Light_RatingBar_Small = 16974031; // 0x10300cf - field public static final int Widget_Holo_Light_ScrollView = 16974033; // 0x10300d1 - field public static final int Widget_Holo_Light_SeekBar = 16974028; // 0x10300cc - field public static final int Widget_Holo_Light_Spinner = 16974035; // 0x10300d3 - field public static final int Widget_Holo_Light_Tab = 16974052; // 0x10300e4 - field public static final int Widget_Holo_Light_TabWidget = 16974037; // 0x10300d5 - field public static final int Widget_Holo_Light_TextView = 16974010; // 0x10300ba - field public static final int Widget_Holo_Light_TextView_SpinnerItem = 16974042; // 0x10300da - field public static final int Widget_Holo_Light_WebTextView = 16974038; // 0x10300d6 - field public static final int Widget_Holo_Light_WebView = 16974039; // 0x10300d7 - field public static final int Widget_Holo_ListPopupWindow = 16973997; // 0x10300ad - field public static final int Widget_Holo_ListView = 16973975; // 0x1030097 - field public static final int Widget_Holo_ListView_DropDown = 16973970; // 0x1030092 - field public static final int Widget_Holo_MediaRouteButton = 16974293; // 0x10301d5 - field public static final int Widget_Holo_PopupMenu = 16973998; // 0x10300ae - field public static final int Widget_Holo_PopupWindow = 16973976; // 0x1030098 - field public static final int Widget_Holo_ProgressBar = 16973977; // 0x1030099 - field public static final int Widget_Holo_ProgressBar_Horizontal = 16973978; // 0x103009a - field public static final int Widget_Holo_ProgressBar_Large = 16973981; // 0x103009d - field public static final int Widget_Holo_ProgressBar_Small = 16973979; // 0x103009b - field public static final int Widget_Holo_ProgressBar_Small_Title = 16973980; // 0x103009c - field public static final int Widget_Holo_RatingBar = 16973983; // 0x103009f - field public static final int Widget_Holo_RatingBar_Indicator = 16973984; // 0x10300a0 - field public static final int Widget_Holo_RatingBar_Small = 16973985; // 0x10300a1 - field public static final int Widget_Holo_ScrollView = 16973987; // 0x10300a3 - field public static final int Widget_Holo_SeekBar = 16973982; // 0x103009e - field public static final int Widget_Holo_Spinner = 16973989; // 0x10300a5 - field public static final int Widget_Holo_Tab = 16974051; // 0x10300e3 - field public static final int Widget_Holo_TabWidget = 16973991; // 0x10300a7 - field public static final int Widget_Holo_TextView = 16973967; // 0x103008f - field public static final int Widget_Holo_TextView_SpinnerItem = 16973996; // 0x10300ac - field public static final int Widget_Holo_WebTextView = 16973992; // 0x10300a8 - field public static final int Widget_Holo_WebView = 16973993; // 0x10300a9 - field public static final int Widget_ImageButton = 16973862; // 0x1030026 - field public static final int Widget_ImageWell = 16973861; // 0x1030025 - field @Deprecated public static final int Widget_KeyboardView = 16973911; // 0x1030057 - field public static final int Widget_ListPopupWindow = 16973957; // 0x1030085 - field public static final int Widget_ListView = 16973870; // 0x103002e - field public static final int Widget_ListView_DropDown = 16973872; // 0x1030030 - field public static final int Widget_ListView_Menu = 16973873; // 0x1030031 - field public static final int Widget_ListView_White = 16973871; // 0x103002f - field public static final int Widget_Material = 16974413; // 0x103024d - field public static final int Widget_Material_ActionBar = 16974414; // 0x103024e - field public static final int Widget_Material_ActionBar_Solid = 16974415; // 0x103024f - field public static final int Widget_Material_ActionBar_TabBar = 16974416; // 0x1030250 - field public static final int Widget_Material_ActionBar_TabText = 16974417; // 0x1030251 - field public static final int Widget_Material_ActionBar_TabView = 16974418; // 0x1030252 - field public static final int Widget_Material_ActionButton = 16974419; // 0x1030253 - field public static final int Widget_Material_ActionButton_CloseMode = 16974420; // 0x1030254 - field public static final int Widget_Material_ActionButton_Overflow = 16974421; // 0x1030255 - field public static final int Widget_Material_ActionMode = 16974422; // 0x1030256 - field public static final int Widget_Material_AutoCompleteTextView = 16974423; // 0x1030257 - field public static final int Widget_Material_Button = 16974424; // 0x1030258 - field public static final int Widget_Material_ButtonBar = 16974431; // 0x103025f - field public static final int Widget_Material_ButtonBar_AlertDialog = 16974432; // 0x1030260 - field public static final int Widget_Material_Button_Borderless = 16974425; // 0x1030259 - field public static final int Widget_Material_Button_Borderless_Colored = 16974426; // 0x103025a - field public static final int Widget_Material_Button_Borderless_Small = 16974427; // 0x103025b - field public static final int Widget_Material_Button_Colored = 16974547; // 0x10302d3 - field public static final int Widget_Material_Button_Inset = 16974428; // 0x103025c - field public static final int Widget_Material_Button_Small = 16974429; // 0x103025d - field public static final int Widget_Material_Button_Toggle = 16974430; // 0x103025e - field public static final int Widget_Material_CalendarView = 16974433; // 0x1030261 - field public static final int Widget_Material_CheckedTextView = 16974434; // 0x1030262 - field public static final int Widget_Material_CompoundButton_CheckBox = 16974435; // 0x1030263 - field public static final int Widget_Material_CompoundButton_RadioButton = 16974436; // 0x1030264 - field public static final int Widget_Material_CompoundButton_Star = 16974437; // 0x1030265 - field public static final int Widget_Material_CompoundButton_Switch = 16974554; // 0x10302da - field public static final int Widget_Material_DatePicker = 16974438; // 0x1030266 - field public static final int Widget_Material_DropDownItem = 16974439; // 0x1030267 - field public static final int Widget_Material_DropDownItem_Spinner = 16974440; // 0x1030268 - field public static final int Widget_Material_EditText = 16974441; // 0x1030269 - field public static final int Widget_Material_ExpandableListView = 16974442; // 0x103026a - field public static final int Widget_Material_FastScroll = 16974443; // 0x103026b - field public static final int Widget_Material_GridView = 16974444; // 0x103026c - field public static final int Widget_Material_HorizontalScrollView = 16974445; // 0x103026d - field public static final int Widget_Material_ImageButton = 16974446; // 0x103026e - field public static final int Widget_Material_Light = 16974478; // 0x103028e - field public static final int Widget_Material_Light_ActionBar = 16974479; // 0x103028f - field public static final int Widget_Material_Light_ActionBar_Solid = 16974480; // 0x1030290 - field public static final int Widget_Material_Light_ActionBar_TabBar = 16974481; // 0x1030291 - field public static final int Widget_Material_Light_ActionBar_TabText = 16974482; // 0x1030292 - field public static final int Widget_Material_Light_ActionBar_TabView = 16974483; // 0x1030293 - field public static final int Widget_Material_Light_ActionButton = 16974484; // 0x1030294 - field public static final int Widget_Material_Light_ActionButton_CloseMode = 16974485; // 0x1030295 - field public static final int Widget_Material_Light_ActionButton_Overflow = 16974486; // 0x1030296 - field public static final int Widget_Material_Light_ActionMode = 16974487; // 0x1030297 - field public static final int Widget_Material_Light_AutoCompleteTextView = 16974488; // 0x1030298 - field public static final int Widget_Material_Light_Button = 16974489; // 0x1030299 - field public static final int Widget_Material_Light_ButtonBar = 16974496; // 0x10302a0 - field public static final int Widget_Material_Light_ButtonBar_AlertDialog = 16974497; // 0x10302a1 - field public static final int Widget_Material_Light_Button_Borderless = 16974490; // 0x103029a - field public static final int Widget_Material_Light_Button_Borderless_Colored = 16974491; // 0x103029b - field public static final int Widget_Material_Light_Button_Borderless_Small = 16974492; // 0x103029c - field public static final int Widget_Material_Light_Button_Inset = 16974493; // 0x103029d - field public static final int Widget_Material_Light_Button_Small = 16974494; // 0x103029e - field public static final int Widget_Material_Light_Button_Toggle = 16974495; // 0x103029f - field public static final int Widget_Material_Light_CalendarView = 16974498; // 0x10302a2 - field public static final int Widget_Material_Light_CheckedTextView = 16974499; // 0x10302a3 - field public static final int Widget_Material_Light_CompoundButton_CheckBox = 16974500; // 0x10302a4 - field public static final int Widget_Material_Light_CompoundButton_RadioButton = 16974501; // 0x10302a5 - field public static final int Widget_Material_Light_CompoundButton_Star = 16974502; // 0x10302a6 - field public static final int Widget_Material_Light_CompoundButton_Switch = 16974555; // 0x10302db - field public static final int Widget_Material_Light_DatePicker = 16974503; // 0x10302a7 - field public static final int Widget_Material_Light_DropDownItem = 16974504; // 0x10302a8 - field public static final int Widget_Material_Light_DropDownItem_Spinner = 16974505; // 0x10302a9 - field public static final int Widget_Material_Light_EditText = 16974506; // 0x10302aa - field public static final int Widget_Material_Light_ExpandableListView = 16974507; // 0x10302ab - field public static final int Widget_Material_Light_FastScroll = 16974508; // 0x10302ac - field public static final int Widget_Material_Light_GridView = 16974509; // 0x10302ad - field public static final int Widget_Material_Light_HorizontalScrollView = 16974510; // 0x10302ae - field public static final int Widget_Material_Light_ImageButton = 16974511; // 0x10302af - field public static final int Widget_Material_Light_ListPopupWindow = 16974512; // 0x10302b0 - field public static final int Widget_Material_Light_ListView = 16974513; // 0x10302b1 - field public static final int Widget_Material_Light_ListView_DropDown = 16974514; // 0x10302b2 - field public static final int Widget_Material_Light_MediaRouteButton = 16974515; // 0x10302b3 - field public static final int Widget_Material_Light_NumberPicker = 16974557; // 0x10302dd - field public static final int Widget_Material_Light_PopupMenu = 16974516; // 0x10302b4 - field public static final int Widget_Material_Light_PopupMenu_Overflow = 16974517; // 0x10302b5 - field public static final int Widget_Material_Light_PopupWindow = 16974518; // 0x10302b6 - field public static final int Widget_Material_Light_ProgressBar = 16974519; // 0x10302b7 - field public static final int Widget_Material_Light_ProgressBar_Horizontal = 16974520; // 0x10302b8 - field public static final int Widget_Material_Light_ProgressBar_Inverse = 16974521; // 0x10302b9 - field public static final int Widget_Material_Light_ProgressBar_Large = 16974522; // 0x10302ba - field public static final int Widget_Material_Light_ProgressBar_Large_Inverse = 16974523; // 0x10302bb - field public static final int Widget_Material_Light_ProgressBar_Small = 16974524; // 0x10302bc - field public static final int Widget_Material_Light_ProgressBar_Small_Inverse = 16974525; // 0x10302bd - field public static final int Widget_Material_Light_ProgressBar_Small_Title = 16974526; // 0x10302be - field public static final int Widget_Material_Light_RatingBar = 16974527; // 0x10302bf - field public static final int Widget_Material_Light_RatingBar_Indicator = 16974528; // 0x10302c0 - field public static final int Widget_Material_Light_RatingBar_Small = 16974529; // 0x10302c1 - field public static final int Widget_Material_Light_ScrollView = 16974530; // 0x10302c2 - field public static final int Widget_Material_Light_SearchView = 16974531; // 0x10302c3 - field public static final int Widget_Material_Light_SeekBar = 16974532; // 0x10302c4 - field public static final int Widget_Material_Light_SegmentedButton = 16974533; // 0x10302c5 - field public static final int Widget_Material_Light_Spinner = 16974535; // 0x10302c7 - field public static final int Widget_Material_Light_Spinner_Underlined = 16974536; // 0x10302c8 - field public static final int Widget_Material_Light_StackView = 16974534; // 0x10302c6 - field public static final int Widget_Material_Light_Tab = 16974537; // 0x10302c9 - field public static final int Widget_Material_Light_TabWidget = 16974538; // 0x10302ca - field public static final int Widget_Material_Light_TextView = 16974539; // 0x10302cb - field public static final int Widget_Material_Light_TextView_SpinnerItem = 16974540; // 0x10302cc - field public static final int Widget_Material_Light_TimePicker = 16974541; // 0x10302cd - field public static final int Widget_Material_Light_WebTextView = 16974542; // 0x10302ce - field public static final int Widget_Material_Light_WebView = 16974543; // 0x10302cf - field public static final int Widget_Material_ListPopupWindow = 16974447; // 0x103026f - field public static final int Widget_Material_ListView = 16974448; // 0x1030270 - field public static final int Widget_Material_ListView_DropDown = 16974449; // 0x1030271 - field public static final int Widget_Material_MediaRouteButton = 16974450; // 0x1030272 - field public static final int Widget_Material_NumberPicker = 16974556; // 0x10302dc - field public static final int Widget_Material_PopupMenu = 16974451; // 0x1030273 - field public static final int Widget_Material_PopupMenu_Overflow = 16974452; // 0x1030274 - field public static final int Widget_Material_PopupWindow = 16974453; // 0x1030275 - field public static final int Widget_Material_ProgressBar = 16974454; // 0x1030276 - field public static final int Widget_Material_ProgressBar_Horizontal = 16974455; // 0x1030277 - field public static final int Widget_Material_ProgressBar_Large = 16974456; // 0x1030278 - field public static final int Widget_Material_ProgressBar_Small = 16974457; // 0x1030279 - field public static final int Widget_Material_ProgressBar_Small_Title = 16974458; // 0x103027a - field public static final int Widget_Material_RatingBar = 16974459; // 0x103027b - field public static final int Widget_Material_RatingBar_Indicator = 16974460; // 0x103027c - field public static final int Widget_Material_RatingBar_Small = 16974461; // 0x103027d - field public static final int Widget_Material_ScrollView = 16974462; // 0x103027e - field public static final int Widget_Material_SearchView = 16974463; // 0x103027f - field public static final int Widget_Material_SeekBar = 16974464; // 0x1030280 - field public static final int Widget_Material_SeekBar_Discrete = 16974553; // 0x10302d9 - field public static final int Widget_Material_SegmentedButton = 16974465; // 0x1030281 - field public static final int Widget_Material_Spinner = 16974467; // 0x1030283 - field public static final int Widget_Material_Spinner_Underlined = 16974468; // 0x1030284 - field public static final int Widget_Material_StackView = 16974466; // 0x1030282 - field public static final int Widget_Material_Tab = 16974469; // 0x1030285 - field public static final int Widget_Material_TabWidget = 16974470; // 0x1030286 - field public static final int Widget_Material_TextView = 16974471; // 0x1030287 - field public static final int Widget_Material_TextView_SpinnerItem = 16974472; // 0x1030288 - field public static final int Widget_Material_TimePicker = 16974473; // 0x1030289 - field public static final int Widget_Material_Toolbar = 16974474; // 0x103028a - field public static final int Widget_Material_Toolbar_Button_Navigation = 16974475; // 0x103028b - field public static final int Widget_Material_WebTextView = 16974476; // 0x103028c - field public static final int Widget_Material_WebView = 16974477; // 0x103028d - field public static final int Widget_PopupMenu = 16973958; // 0x1030086 - field public static final int Widget_PopupWindow = 16973878; // 0x1030036 - field public static final int Widget_ProgressBar = 16973852; // 0x103001c - field public static final int Widget_ProgressBar_Horizontal = 16973855; // 0x103001f - field public static final int Widget_ProgressBar_Inverse = 16973915; // 0x103005b - field public static final int Widget_ProgressBar_Large = 16973853; // 0x103001d - field public static final int Widget_ProgressBar_Large_Inverse = 16973916; // 0x103005c - field public static final int Widget_ProgressBar_Small = 16973854; // 0x103001e - field public static final int Widget_ProgressBar_Small_Inverse = 16973917; // 0x103005d - field public static final int Widget_RatingBar = 16973857; // 0x1030021 - field public static final int Widget_ScrollView = 16973869; // 0x103002d - field public static final int Widget_SeekBar = 16973856; // 0x1030020 - field public static final int Widget_Spinner = 16973864; // 0x1030028 - field public static final int Widget_Spinner_DropDown = 16973955; // 0x1030083 - field public static final int Widget_StackView = 16974310; // 0x10301e6 - field public static final int Widget_TabWidget = 16973876; // 0x1030034 - field public static final int Widget_TextView = 16973858; // 0x1030022 - field public static final int Widget_TextView_PopupMenu = 16973865; // 0x1030029 - field public static final int Widget_TextView_SpinnerItem = 16973866; // 0x103002a - field public static final int Widget_Toolbar = 16974311; // 0x10301e7 - field public static final int Widget_Toolbar_Button_Navigation = 16974312; // 0x10301e8 - field public static final int Widget_WebView = 16973875; // 0x1030033 - } - - public static final class R.transition { - ctor public R.transition(); - field public static final int explode = 17760259; // 0x10f0003 - field public static final int fade = 17760258; // 0x10f0002 - field public static final int move = 17760257; // 0x10f0001 - field public static final int no_transition = 17760256; // 0x10f0000 - field public static final int slide_bottom = 17760260; // 0x10f0004 - field public static final int slide_left = 17760263; // 0x10f0007 - field public static final int slide_right = 17760262; // 0x10f0006 - field public static final int slide_top = 17760261; // 0x10f0005 - } - - public static final class R.xml { - ctor public R.xml(); - } - -} - -package android.accessibilityservice { - - public final class AccessibilityButtonController { - method public boolean isAccessibilityButtonAvailable(); - method public void registerAccessibilityButtonCallback(@NonNull android.accessibilityservice.AccessibilityButtonController.AccessibilityButtonCallback); - method public void registerAccessibilityButtonCallback(@NonNull android.accessibilityservice.AccessibilityButtonController.AccessibilityButtonCallback, @NonNull android.os.Handler); - method public void unregisterAccessibilityButtonCallback(@NonNull android.accessibilityservice.AccessibilityButtonController.AccessibilityButtonCallback); - } - - public abstract static class AccessibilityButtonController.AccessibilityButtonCallback { - ctor public AccessibilityButtonController.AccessibilityButtonCallback(); - method public void onAvailabilityChanged(android.accessibilityservice.AccessibilityButtonController, boolean); - method public void onClicked(android.accessibilityservice.AccessibilityButtonController); - } - - public final class AccessibilityGestureEvent implements android.os.Parcelable { - ctor public AccessibilityGestureEvent(int, int, @NonNull java.util.List); - method public int describeContents(); - method @NonNull public static String gestureIdToString(int); - method public int getDisplayId(); - method public int getGestureId(); - method @NonNull public java.util.List getMotionEvents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class AccessibilityService extends android.app.Service { - ctor public AccessibilityService(); - method public void attachAccessibilityOverlayToDisplay(int, @NonNull android.view.SurfaceControl); - method @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public final void attachAccessibilityOverlayToDisplay(int, @NonNull android.view.SurfaceControl, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer); - method public void attachAccessibilityOverlayToWindow(int, @NonNull android.view.SurfaceControl); - method @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public final void attachAccessibilityOverlayToWindow(int, @NonNull android.view.SurfaceControl, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer); - method public boolean clearCache(); - method public boolean clearCachedSubtree(@NonNull android.view.accessibility.AccessibilityNodeInfo); - method public final void disableSelf(); - method public final boolean dispatchGesture(@NonNull android.accessibilityservice.GestureDescription, @Nullable android.accessibilityservice.AccessibilityService.GestureResultCallback, @Nullable android.os.Handler); - method public android.view.accessibility.AccessibilityNodeInfo findFocus(int); - method @NonNull public final android.accessibilityservice.AccessibilityButtonController getAccessibilityButtonController(); - method @NonNull public final android.accessibilityservice.AccessibilityButtonController getAccessibilityButtonController(int); - method @FlaggedApi("android.view.accessibility.braille_display_hid") @NonNull public final android.accessibilityservice.BrailleDisplayController getBrailleDisplayController(); - method @NonNull @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) public final android.accessibilityservice.FingerprintGestureController getFingerprintGestureController(); - method @Nullable public final android.accessibilityservice.InputMethod getInputMethod(); - method @NonNull public final android.accessibilityservice.AccessibilityService.MagnificationController getMagnificationController(); - method public android.view.accessibility.AccessibilityNodeInfo getRootInActiveWindow(); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo getRootInActiveWindow(int); - method public final android.accessibilityservice.AccessibilityServiceInfo getServiceInfo(); - method @NonNull public final android.accessibilityservice.AccessibilityService.SoftKeyboardController getSoftKeyboardController(); - method @NonNull public final java.util.List getSystemActions(); - method @NonNull public final android.accessibilityservice.TouchInteractionController getTouchInteractionController(int); - method public java.util.List getWindows(); - method @NonNull public final android.util.SparseArray> getWindowsOnAllDisplays(); - method public boolean isCacheEnabled(); - method public boolean isNodeInCache(@NonNull android.view.accessibility.AccessibilityNodeInfo); - method public abstract void onAccessibilityEvent(android.view.accessibility.AccessibilityEvent); - method public final android.os.IBinder onBind(android.content.Intent); - method @NonNull public android.accessibilityservice.InputMethod onCreateInputMethod(); - method @Deprecated protected boolean onGesture(int); - method public boolean onGesture(@NonNull android.accessibilityservice.AccessibilityGestureEvent); - method public abstract void onInterrupt(); - method protected boolean onKeyEvent(android.view.KeyEvent); - method public void onMotionEvent(@NonNull android.view.MotionEvent); - method protected void onServiceConnected(); - method public void onSystemActionsChanged(); - method public final boolean performGlobalAction(int); - method public void setAccessibilityFocusAppearance(int, @ColorInt int); - method public void setAnimationScale(float); - method public boolean setCacheEnabled(boolean); - method public void setGestureDetectionPassthroughRegion(int, @NonNull android.graphics.Region); - method public final void setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo); - method public void setTouchExplorationPassthroughRegion(int, @NonNull android.graphics.Region); - method public void takeScreenshot(int, @NonNull java.util.concurrent.Executor, @NonNull android.accessibilityservice.AccessibilityService.TakeScreenshotCallback); - method public void takeScreenshotOfWindow(int, @NonNull java.util.concurrent.Executor, @NonNull android.accessibilityservice.AccessibilityService.TakeScreenshotCallback); - field public static final int ERROR_TAKE_SCREENSHOT_INTERNAL_ERROR = 1; // 0x1 - field public static final int ERROR_TAKE_SCREENSHOT_INTERVAL_TIME_SHORT = 3; // 0x3 - field public static final int ERROR_TAKE_SCREENSHOT_INVALID_DISPLAY = 4; // 0x4 - field public static final int ERROR_TAKE_SCREENSHOT_INVALID_WINDOW = 5; // 0x5 - field public static final int ERROR_TAKE_SCREENSHOT_NO_ACCESSIBILITY_ACCESS = 2; // 0x2 - field public static final int ERROR_TAKE_SCREENSHOT_SECURE_WINDOW = 6; // 0x6 - field public static final int GESTURE_2_FINGER_DOUBLE_TAP = 20; // 0x14 - field public static final int GESTURE_2_FINGER_DOUBLE_TAP_AND_HOLD = 40; // 0x28 - field public static final int GESTURE_2_FINGER_SINGLE_TAP = 19; // 0x13 - field public static final int GESTURE_2_FINGER_SWIPE_DOWN = 26; // 0x1a - field public static final int GESTURE_2_FINGER_SWIPE_LEFT = 27; // 0x1b - field public static final int GESTURE_2_FINGER_SWIPE_RIGHT = 28; // 0x1c - field public static final int GESTURE_2_FINGER_SWIPE_UP = 25; // 0x19 - field public static final int GESTURE_2_FINGER_TRIPLE_TAP = 21; // 0x15 - field public static final int GESTURE_2_FINGER_TRIPLE_TAP_AND_HOLD = 43; // 0x2b - field public static final int GESTURE_3_FINGER_DOUBLE_TAP = 23; // 0x17 - field public static final int GESTURE_3_FINGER_DOUBLE_TAP_AND_HOLD = 41; // 0x29 - field public static final int GESTURE_3_FINGER_SINGLE_TAP = 22; // 0x16 - field public static final int GESTURE_3_FINGER_SINGLE_TAP_AND_HOLD = 44; // 0x2c - field public static final int GESTURE_3_FINGER_SWIPE_DOWN = 30; // 0x1e - field public static final int GESTURE_3_FINGER_SWIPE_LEFT = 31; // 0x1f - field public static final int GESTURE_3_FINGER_SWIPE_RIGHT = 32; // 0x20 - field public static final int GESTURE_3_FINGER_SWIPE_UP = 29; // 0x1d - field public static final int GESTURE_3_FINGER_TRIPLE_TAP = 24; // 0x18 - field public static final int GESTURE_3_FINGER_TRIPLE_TAP_AND_HOLD = 45; // 0x2d - field public static final int GESTURE_4_FINGER_DOUBLE_TAP = 38; // 0x26 - field public static final int GESTURE_4_FINGER_DOUBLE_TAP_AND_HOLD = 42; // 0x2a - field public static final int GESTURE_4_FINGER_SINGLE_TAP = 37; // 0x25 - field public static final int GESTURE_4_FINGER_SWIPE_DOWN = 34; // 0x22 - field public static final int GESTURE_4_FINGER_SWIPE_LEFT = 35; // 0x23 - field public static final int GESTURE_4_FINGER_SWIPE_RIGHT = 36; // 0x24 - field public static final int GESTURE_4_FINGER_SWIPE_UP = 33; // 0x21 - field public static final int GESTURE_4_FINGER_TRIPLE_TAP = 39; // 0x27 - field public static final int GESTURE_DOUBLE_TAP = 17; // 0x11 - field public static final int GESTURE_DOUBLE_TAP_AND_HOLD = 18; // 0x12 - field public static final int GESTURE_SWIPE_DOWN = 2; // 0x2 - field public static final int GESTURE_SWIPE_DOWN_AND_LEFT = 15; // 0xf - field public static final int GESTURE_SWIPE_DOWN_AND_RIGHT = 16; // 0x10 - field public static final int GESTURE_SWIPE_DOWN_AND_UP = 8; // 0x8 - field public static final int GESTURE_SWIPE_LEFT = 3; // 0x3 - field public static final int GESTURE_SWIPE_LEFT_AND_DOWN = 10; // 0xa - field public static final int GESTURE_SWIPE_LEFT_AND_RIGHT = 5; // 0x5 - field public static final int GESTURE_SWIPE_LEFT_AND_UP = 9; // 0x9 - field public static final int GESTURE_SWIPE_RIGHT = 4; // 0x4 - field public static final int GESTURE_SWIPE_RIGHT_AND_DOWN = 12; // 0xc - field public static final int GESTURE_SWIPE_RIGHT_AND_LEFT = 6; // 0x6 - field public static final int GESTURE_SWIPE_RIGHT_AND_UP = 11; // 0xb - field public static final int GESTURE_SWIPE_UP = 1; // 0x1 - field public static final int GESTURE_SWIPE_UP_AND_DOWN = 7; // 0x7 - field public static final int GESTURE_SWIPE_UP_AND_LEFT = 13; // 0xd - field public static final int GESTURE_SWIPE_UP_AND_RIGHT = 14; // 0xe - field public static final int GESTURE_UNKNOWN = 0; // 0x0 - field public static final int GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS = 14; // 0xe - field public static final int GLOBAL_ACTION_ACCESSIBILITY_BUTTON = 11; // 0xb - field public static final int GLOBAL_ACTION_ACCESSIBILITY_BUTTON_CHOOSER = 12; // 0xc - field public static final int GLOBAL_ACTION_ACCESSIBILITY_SHORTCUT = 13; // 0xd - field public static final int GLOBAL_ACTION_BACK = 1; // 0x1 - field public static final int GLOBAL_ACTION_DISMISS_NOTIFICATION_SHADE = 15; // 0xf - field public static final int GLOBAL_ACTION_DPAD_CENTER = 20; // 0x14 - field public static final int GLOBAL_ACTION_DPAD_DOWN = 17; // 0x11 - field public static final int GLOBAL_ACTION_DPAD_LEFT = 18; // 0x12 - field public static final int GLOBAL_ACTION_DPAD_RIGHT = 19; // 0x13 - field public static final int GLOBAL_ACTION_DPAD_UP = 16; // 0x10 - field public static final int GLOBAL_ACTION_HOME = 2; // 0x2 - field public static final int GLOBAL_ACTION_KEYCODE_HEADSETHOOK = 10; // 0xa - field public static final int GLOBAL_ACTION_LOCK_SCREEN = 8; // 0x8 - field @FlaggedApi("android.view.accessibility.global_action_media_play_pause") public static final int GLOBAL_ACTION_MEDIA_PLAY_PAUSE = 22; // 0x16 - field @FlaggedApi("android.view.accessibility.global_action_menu") public static final int GLOBAL_ACTION_MENU = 21; // 0x15 - field public static final int GLOBAL_ACTION_NOTIFICATIONS = 4; // 0x4 - field public static final int GLOBAL_ACTION_POWER_DIALOG = 6; // 0x6 - field public static final int GLOBAL_ACTION_QUICK_SETTINGS = 5; // 0x5 - field public static final int GLOBAL_ACTION_RECENTS = 3; // 0x3 - field public static final int GLOBAL_ACTION_TAKE_SCREENSHOT = 9; // 0x9 - field public static final int GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN = 7; // 0x7 - field @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public static final int OVERLAY_RESULT_INTERNAL_ERROR = 1; // 0x1 - field @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public static final int OVERLAY_RESULT_INVALID = 2; // 0x2 - field @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public static final int OVERLAY_RESULT_SUCCESS = 0; // 0x0 - field public static final String SERVICE_INTERFACE = "android.accessibilityservice.AccessibilityService"; - field public static final String SERVICE_META_DATA = "android.accessibilityservice"; - field public static final int SHOW_MODE_AUTO = 0; // 0x0 - field public static final int SHOW_MODE_HIDDEN = 1; // 0x1 - field public static final int SHOW_MODE_IGNORE_HARD_KEYBOARD = 2; // 0x2 - } - - public abstract static class AccessibilityService.GestureResultCallback { - ctor public AccessibilityService.GestureResultCallback(); - method public void onCancelled(android.accessibilityservice.GestureDescription); - method public void onCompleted(android.accessibilityservice.GestureDescription); - } - - public static final class AccessibilityService.MagnificationController { - method public void addListener(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController.OnMagnificationChangedListener); - method public void addListener(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController.OnMagnificationChangedListener, @Nullable android.os.Handler); - method @Deprecated public float getCenterX(); - method @Deprecated public float getCenterY(); - method @NonNull public android.graphics.Region getCurrentMagnificationRegion(); - method @Nullable public android.accessibilityservice.MagnificationConfig getMagnificationConfig(); - method @Deprecated @NonNull public android.graphics.Region getMagnificationRegion(); - method @Deprecated public float getScale(); - method public boolean removeListener(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController.OnMagnificationChangedListener); - method public boolean reset(boolean); - method public boolean resetCurrentMagnification(boolean); - method @Deprecated public boolean setCenter(float, float, boolean); - method public boolean setMagnificationConfig(@NonNull android.accessibilityservice.MagnificationConfig, boolean); - method @Deprecated public boolean setScale(float, boolean); - } - - public static interface AccessibilityService.MagnificationController.OnMagnificationChangedListener { - method @Deprecated public void onMagnificationChanged(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController, @NonNull android.graphics.Region, float, float, float); - method public default void onMagnificationChanged(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController, @NonNull android.graphics.Region, @NonNull android.accessibilityservice.MagnificationConfig); - } - - public static final class AccessibilityService.ScreenshotResult { - method @NonNull public android.graphics.ColorSpace getColorSpace(); - method @NonNull public android.hardware.HardwareBuffer getHardwareBuffer(); - method public long getTimestamp(); - } - - public static final class AccessibilityService.SoftKeyboardController { - method public void addOnShowModeChangedListener(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener); - method public void addOnShowModeChangedListener(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener, @Nullable android.os.Handler); - method public int getShowMode(); - method public boolean removeOnShowModeChangedListener(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener); - method @CheckResult public int setInputMethodEnabled(@NonNull String, boolean) throws java.lang.SecurityException; - method public boolean setShowMode(int); - method public boolean switchToInputMethod(@NonNull String); - field public static final int ENABLE_IME_FAIL_BY_ADMIN = 1; // 0x1 - field public static final int ENABLE_IME_FAIL_UNKNOWN = 2; // 0x2 - field public static final int ENABLE_IME_SUCCESS = 0; // 0x0 - } - - public static interface AccessibilityService.SoftKeyboardController.OnShowModeChangedListener { - method public void onShowModeChanged(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController, int); - } - - public static interface AccessibilityService.TakeScreenshotCallback { - method public void onFailure(int); - method public void onSuccess(@NonNull android.accessibilityservice.AccessibilityService.ScreenshotResult); - } - - public class AccessibilityServiceInfo implements android.os.Parcelable { - ctor public AccessibilityServiceInfo(); - method public static String capabilityToString(int); - method public int describeContents(); - method public static String feedbackTypeToString(int); - method public static String flagToString(int); - method @Deprecated public boolean getCanRetrieveWindowContent(); - method public int getCapabilities(); - method @Deprecated public String getDescription(); - method public String getId(); - method public int getInteractiveUiTimeoutMillis(); - method public int getMotionEventSources(); - method public int getNonInteractiveUiTimeoutMillis(); - method public android.content.pm.ResolveInfo getResolveInfo(); - method public String getSettingsActivityName(); - method @Nullable public String getTileServiceName(); - method public boolean isAccessibilityTool(); - method public String loadDescription(android.content.pm.PackageManager); - method @Nullable public CharSequence loadIntro(@NonNull android.content.pm.PackageManager); - method public CharSequence loadSummary(android.content.pm.PackageManager); - method public void setInteractiveUiTimeoutMillis(@IntRange(from=0) int); - method public void setMotionEventSources(int); - method public void setNonInteractiveUiTimeoutMillis(@IntRange(from=0) int); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CAPABILITY_CAN_CONTROL_MAGNIFICATION = 16; // 0x10 - field public static final int CAPABILITY_CAN_PERFORM_GESTURES = 32; // 0x20 - field @Deprecated public static final int CAPABILITY_CAN_REQUEST_ENHANCED_WEB_ACCESSIBILITY = 4; // 0x4 - field public static final int CAPABILITY_CAN_REQUEST_FILTER_KEY_EVENTS = 8; // 0x8 - field public static final int CAPABILITY_CAN_REQUEST_FINGERPRINT_GESTURES = 64; // 0x40 - field public static final int CAPABILITY_CAN_REQUEST_TOUCH_EXPLORATION = 2; // 0x2 - field public static final int CAPABILITY_CAN_RETRIEVE_WINDOW_CONTENT = 1; // 0x1 - field public static final int CAPABILITY_CAN_TAKE_SCREENSHOT = 128; // 0x80 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DEFAULT = 1; // 0x1 - field public static final int FEEDBACK_ALL_MASK = -1; // 0xffffffff - field public static final int FEEDBACK_AUDIBLE = 4; // 0x4 - field public static final int FEEDBACK_BRAILLE = 32; // 0x20 - field public static final int FEEDBACK_GENERIC = 16; // 0x10 - field public static final int FEEDBACK_HAPTIC = 2; // 0x2 - field public static final int FEEDBACK_SPOKEN = 1; // 0x1 - field public static final int FEEDBACK_VISUAL = 8; // 0x8 - field public static final int FLAG_ENABLE_ACCESSIBILITY_VOLUME = 128; // 0x80 - field public static final int FLAG_INCLUDE_NOT_IMPORTANT_VIEWS = 2; // 0x2 - field public static final int FLAG_INPUT_METHOD_EDITOR = 32768; // 0x8000 - field public static final int FLAG_REPORT_VIEW_IDS = 16; // 0x10 - field public static final int FLAG_REQUEST_2_FINGER_PASSTHROUGH = 8192; // 0x2000 - field public static final int FLAG_REQUEST_ACCESSIBILITY_BUTTON = 256; // 0x100 - field @Deprecated public static final int FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY = 8; // 0x8 - field public static final int FLAG_REQUEST_FILTER_KEY_EVENTS = 32; // 0x20 - field public static final int FLAG_REQUEST_FINGERPRINT_GESTURES = 512; // 0x200 - field public static final int FLAG_REQUEST_MULTI_FINGER_GESTURES = 4096; // 0x1000 - field public static final int FLAG_REQUEST_SHORTCUT_WARNING_DIALOG_SPOKEN_FEEDBACK = 1024; // 0x400 - field public static final int FLAG_REQUEST_TOUCH_EXPLORATION_MODE = 4; // 0x4 - field public static final int FLAG_RETRIEVE_INTERACTIVE_WINDOWS = 64; // 0x40 - field public static final int FLAG_SEND_MOTION_EVENTS = 16384; // 0x4000 - field public static final int FLAG_SERVICE_HANDLES_DOUBLE_TAP = 2048; // 0x800 - field public int eventTypes; - field public int feedbackType; - field public int flags; - field public long notificationTimeout; - field public String[] packageNames; - } - - @FlaggedApi("android.view.accessibility.braille_display_hid") public interface BrailleDisplayController { - method @FlaggedApi("android.view.accessibility.braille_display_hid") @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void connect(@NonNull android.bluetooth.BluetoothDevice, @NonNull android.accessibilityservice.BrailleDisplayController.BrailleDisplayCallback); - method @FlaggedApi("android.view.accessibility.braille_display_hid") @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void connect(@NonNull android.bluetooth.BluetoothDevice, @NonNull java.util.concurrent.Executor, @NonNull android.accessibilityservice.BrailleDisplayController.BrailleDisplayCallback); - method @FlaggedApi("android.view.accessibility.braille_display_hid") public void connect(@NonNull android.hardware.usb.UsbDevice, @NonNull android.accessibilityservice.BrailleDisplayController.BrailleDisplayCallback); - method @FlaggedApi("android.view.accessibility.braille_display_hid") public void connect(@NonNull android.hardware.usb.UsbDevice, @NonNull java.util.concurrent.Executor, @NonNull android.accessibilityservice.BrailleDisplayController.BrailleDisplayCallback); - method @FlaggedApi("android.view.accessibility.braille_display_hid") public void disconnect(); - method @FlaggedApi("android.view.accessibility.braille_display_hid") public boolean isConnected(); - method @FlaggedApi("android.view.accessibility.braille_display_hid") public void write(@NonNull byte[]) throws java.io.IOException; - } - - @FlaggedApi("android.view.accessibility.braille_display_hid") public static interface BrailleDisplayController.BrailleDisplayCallback { - method @FlaggedApi("android.view.accessibility.braille_display_hid") public void onConnected(@NonNull byte[]); - method @FlaggedApi("android.view.accessibility.braille_display_hid") public void onConnectionFailed(int); - method @FlaggedApi("android.view.accessibility.braille_display_hid") public void onDisconnected(); - method @FlaggedApi("android.view.accessibility.braille_display_hid") public void onInput(@NonNull byte[]); - field @FlaggedApi("android.view.accessibility.braille_display_hid") public static final int FLAG_ERROR_BRAILLE_DISPLAY_NOT_FOUND = 2; // 0x2 - field @FlaggedApi("android.view.accessibility.braille_display_hid") public static final int FLAG_ERROR_CANNOT_ACCESS = 1; // 0x1 - } - - public final class FingerprintGestureController { - method public boolean isGestureDetectionAvailable(); - method public void registerFingerprintGestureCallback(@NonNull android.accessibilityservice.FingerprintGestureController.FingerprintGestureCallback, @Nullable android.os.Handler); - method public void unregisterFingerprintGestureCallback(android.accessibilityservice.FingerprintGestureController.FingerprintGestureCallback); - field public static final int FINGERPRINT_GESTURE_SWIPE_DOWN = 8; // 0x8 - field public static final int FINGERPRINT_GESTURE_SWIPE_LEFT = 2; // 0x2 - field public static final int FINGERPRINT_GESTURE_SWIPE_RIGHT = 1; // 0x1 - field public static final int FINGERPRINT_GESTURE_SWIPE_UP = 4; // 0x4 - } - - public abstract static class FingerprintGestureController.FingerprintGestureCallback { - ctor public FingerprintGestureController.FingerprintGestureCallback(); - method public void onGestureDetected(int); - method public void onGestureDetectionAvailabilityChanged(boolean); - } - - public final class GestureDescription { - method public int getDisplayId(); - method public static long getMaxGestureDuration(); - method public static int getMaxStrokeCount(); - method public android.accessibilityservice.GestureDescription.StrokeDescription getStroke(@IntRange(from=0) int); - method public int getStrokeCount(); - } - - public static class GestureDescription.Builder { - ctor public GestureDescription.Builder(); - method public android.accessibilityservice.GestureDescription.Builder addStroke(@NonNull android.accessibilityservice.GestureDescription.StrokeDescription); - method public android.accessibilityservice.GestureDescription build(); - method @NonNull public android.accessibilityservice.GestureDescription.Builder setDisplayId(int); - } - - public static class GestureDescription.StrokeDescription { - ctor public GestureDescription.StrokeDescription(@NonNull android.graphics.Path, @IntRange(from=0) long, @IntRange(from=0) long); - ctor public GestureDescription.StrokeDescription(@NonNull android.graphics.Path, @IntRange(from=0) long, @IntRange(from=0) long, boolean); - method public android.accessibilityservice.GestureDescription.StrokeDescription continueStroke(android.graphics.Path, long, long, boolean); - method public long getDuration(); - method public android.graphics.Path getPath(); - method public long getStartTime(); - method public boolean willContinue(); - } - - public class InputMethod { - ctor public InputMethod(@NonNull android.accessibilityservice.AccessibilityService); - method @Nullable public final android.accessibilityservice.InputMethod.AccessibilityInputConnection getCurrentInputConnection(); - method @Nullable public final android.view.inputmethod.EditorInfo getCurrentInputEditorInfo(); - method public final boolean getCurrentInputStarted(); - method public void onFinishInput(); - method public void onStartInput(@NonNull android.view.inputmethod.EditorInfo, boolean); - method public void onUpdateSelection(int, int, int, int, int, int); - } - - public final class InputMethod.AccessibilityInputConnection { - method public void clearMetaKeyStates(int); - method public void commitText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); - method public void deleteSurroundingText(int, int); - method public int getCursorCapsMode(int); - method @Nullable public android.view.inputmethod.SurroundingText getSurroundingText(@IntRange(from=0) int, @IntRange(from=0) int, int); - method public void performContextMenuAction(int); - method public void performEditorAction(int); - method public void sendKeyEvent(@NonNull android.view.KeyEvent); - method public void setSelection(int, int); - } - - public final class MagnificationConfig implements android.os.Parcelable { - method public int describeContents(); - method public float getCenterX(); - method public float getCenterY(); - method public int getMode(); - method public float getScale(); - method public boolean isActivated(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int MAGNIFICATION_MODE_DEFAULT = 0; // 0x0 - field public static final int MAGNIFICATION_MODE_FULLSCREEN = 1; // 0x1 - field public static final int MAGNIFICATION_MODE_WINDOW = 2; // 0x2 - } - - public static final class MagnificationConfig.Builder { - ctor public MagnificationConfig.Builder(); - method @NonNull public android.accessibilityservice.MagnificationConfig build(); - method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setActivated(boolean); - method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setCenterX(float); - method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setCenterY(float); - method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setMode(int); - method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setScale(@FloatRange(from=1.0f, to=8.0f) float); - } - - public final class TouchInteractionController { - method public int getDisplayId(); - method public int getMaxPointerCount(); - method public int getState(); - method public void performClick(); - method public void performLongClickAndStartDrag(); - method public void registerCallback(@Nullable java.util.concurrent.Executor, @NonNull android.accessibilityservice.TouchInteractionController.Callback); - method public void requestDelegating(); - method public void requestDragging(int); - method public void requestTouchExploration(); - method @NonNull public static String stateToString(int); - method public void unregisterAllCallbacks(); - method public boolean unregisterCallback(@NonNull android.accessibilityservice.TouchInteractionController.Callback); - field public static final int STATE_CLEAR = 0; // 0x0 - field public static final int STATE_DELEGATING = 4; // 0x4 - field public static final int STATE_DRAGGING = 3; // 0x3 - field public static final int STATE_TOUCH_EXPLORING = 2; // 0x2 - field public static final int STATE_TOUCH_INTERACTING = 1; // 0x1 - } - - public static interface TouchInteractionController.Callback { - method public void onMotionEvent(@NonNull android.view.MotionEvent); - method public void onStateChanged(int); - } - -} - -package android.accounts { - - public abstract class AbstractAccountAuthenticator { - ctor public AbstractAccountAuthenticator(android.content.Context); - method public abstract android.os.Bundle addAccount(android.accounts.AccountAuthenticatorResponse, String, String, String[], android.os.Bundle) throws android.accounts.NetworkErrorException; - method public android.os.Bundle addAccountFromCredentials(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, android.os.Bundle) throws android.accounts.NetworkErrorException; - method public abstract android.os.Bundle confirmCredentials(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, android.os.Bundle) throws android.accounts.NetworkErrorException; - method public abstract android.os.Bundle editProperties(android.accounts.AccountAuthenticatorResponse, String); - method public android.os.Bundle finishSession(android.accounts.AccountAuthenticatorResponse, String, android.os.Bundle) throws android.accounts.NetworkErrorException; - method public android.os.Bundle getAccountCredentialsForCloning(android.accounts.AccountAuthenticatorResponse, android.accounts.Account) throws android.accounts.NetworkErrorException; - method public android.os.Bundle getAccountRemovalAllowed(android.accounts.AccountAuthenticatorResponse, android.accounts.Account) throws android.accounts.NetworkErrorException; - method public abstract android.os.Bundle getAuthToken(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String, android.os.Bundle) throws android.accounts.NetworkErrorException; - method public abstract String getAuthTokenLabel(String); - method public final android.os.IBinder getIBinder(); - method public abstract android.os.Bundle hasFeatures(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String[]) throws android.accounts.NetworkErrorException; - method public android.os.Bundle isCredentialsUpdateSuggested(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String) throws android.accounts.NetworkErrorException; - method public android.os.Bundle startAddAccountSession(android.accounts.AccountAuthenticatorResponse, String, String, String[], android.os.Bundle) throws android.accounts.NetworkErrorException; - method public android.os.Bundle startUpdateCredentialsSession(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String, android.os.Bundle) throws android.accounts.NetworkErrorException; - method public abstract android.os.Bundle updateCredentials(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String, android.os.Bundle) throws android.accounts.NetworkErrorException; - field public static final String KEY_CUSTOM_TOKEN_EXPIRY = "android.accounts.expiry"; - } - - public class Account implements android.os.Parcelable { - ctor public Account(@NonNull String, @NonNull String); - ctor public Account(android.os.Parcel); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @NonNull public final String name; - field @NonNull public final String type; - } - - @Deprecated public class AccountAuthenticatorActivity extends android.app.Activity { - ctor @Deprecated public AccountAuthenticatorActivity(); - method @Deprecated public final void setAccountAuthenticatorResult(android.os.Bundle); - } - - public class AccountAuthenticatorResponse implements android.os.Parcelable { - ctor public AccountAuthenticatorResponse(android.os.Parcel); - method public int describeContents(); - method public void onError(int, String); - method public void onRequestContinued(); - method public void onResult(android.os.Bundle); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class AccountManager { - method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture addAccount(String, String, String[], android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public boolean addAccountExplicitly(android.accounts.Account, String, android.os.Bundle); - method public boolean addAccountExplicitly(android.accounts.Account, String, android.os.Bundle, java.util.Map); - method @RequiresPermission(value="android.permission.GET_ACCOUNTS", apis="..22") public void addOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener, android.os.Handler, boolean); - method public void addOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener, android.os.Handler, boolean, String[]); - method @RequiresPermission(value="android.permission.USE_CREDENTIALS", apis="..22") public String blockingGetAuthToken(android.accounts.Account, String, boolean) throws android.accounts.AuthenticatorException, java.io.IOException, android.accounts.OperationCanceledException; - method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public void clearPassword(android.accounts.Account); - method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture confirmCredentials(android.accounts.Account, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); - method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture editProperties(String, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); - method public android.accounts.AccountManagerFuture finishSession(android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); - method public static android.accounts.AccountManager get(android.content.Context); - method public int getAccountVisibility(android.accounts.Account, String); - method @NonNull @RequiresPermission(value="android.permission.GET_ACCOUNTS", apis="..22") public android.accounts.Account[] getAccounts(); - method public java.util.Map getAccountsAndVisibilityForPackage(String, String); - method @NonNull @RequiresPermission(value="android.permission.GET_ACCOUNTS", apis="..22") public android.accounts.Account[] getAccountsByType(String); - method public android.accounts.AccountManagerFuture getAccountsByTypeAndFeatures(String, String[], android.accounts.AccountManagerCallback, android.os.Handler); - method @NonNull public android.accounts.Account[] getAccountsByTypeForPackage(String, String); - method @RequiresPermission(value="android.permission.USE_CREDENTIALS", apis="..22") public android.accounts.AccountManagerFuture getAuthToken(android.accounts.Account, String, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); - method @Deprecated @RequiresPermission(value="android.permission.USE_CREDENTIALS", apis="..22") public android.accounts.AccountManagerFuture getAuthToken(android.accounts.Account, String, boolean, android.accounts.AccountManagerCallback, android.os.Handler); - method @RequiresPermission(value="android.permission.USE_CREDENTIALS", apis="..22") public android.accounts.AccountManagerFuture getAuthToken(android.accounts.Account, String, android.os.Bundle, boolean, android.accounts.AccountManagerCallback, android.os.Handler); - method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture getAuthTokenByFeatures(String, String, String[], android.app.Activity, android.os.Bundle, android.os.Bundle, android.accounts.AccountManagerCallback, android.os.Handler); - method public android.accounts.AuthenticatorDescription[] getAuthenticatorTypes(); - method public java.util.Map getPackagesAndVisibilityForAccount(android.accounts.Account); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public String getPassword(android.accounts.Account); - method public String getPreviousName(android.accounts.Account); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public String getUserData(android.accounts.Account, String); - method public android.accounts.AccountManagerFuture hasFeatures(android.accounts.Account, String[], android.accounts.AccountManagerCallback, android.os.Handler); - method @RequiresPermission(anyOf={"android.permission.MANAGE_ACCOUNTS", "android.permission.USE_CREDENTIALS"}, apis="..22") public void invalidateAuthToken(String, String); - method public android.accounts.AccountManagerFuture isCredentialsUpdateSuggested(android.accounts.Account, String, android.accounts.AccountManagerCallback, android.os.Handler); - method @Deprecated public static android.content.Intent newChooseAccountIntent(android.accounts.Account, java.util.ArrayList, String[], boolean, String, String, String[], android.os.Bundle); - method public static android.content.Intent newChooseAccountIntent(android.accounts.Account, java.util.List, String[], String, String, String[], android.os.Bundle); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public boolean notifyAccountAuthenticated(android.accounts.Account); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public String peekAuthToken(android.accounts.Account, String); - method @Deprecated @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture removeAccount(android.accounts.Account, android.accounts.AccountManagerCallback, android.os.Handler); - method @FlaggedApi("android.app.admin.flags.split_create_managed_profile_enabled") @RequiresPermission(value="android.permission.REMOVE_ACCOUNTS", conditional=true) public android.accounts.AccountManagerFuture removeAccount(android.accounts.Account, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public boolean removeAccountExplicitly(android.accounts.Account); - method public void removeOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture renameAccount(android.accounts.Account, @Size(min=1) String, android.accounts.AccountManagerCallback, android.os.Handler); - method public boolean setAccountVisibility(android.accounts.Account, String, int); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public void setAuthToken(android.accounts.Account, String, String); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public void setPassword(android.accounts.Account, String); - method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public void setUserData(android.accounts.Account, String, String); - method public android.accounts.AccountManagerFuture startAddAccountSession(String, String, String[], android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); - method public android.accounts.AccountManagerFuture startUpdateCredentialsSession(android.accounts.Account, String, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); - method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture updateCredentials(android.accounts.Account, String, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); - field public static final String ACTION_ACCOUNT_REMOVED = "android.accounts.action.ACCOUNT_REMOVED"; - field public static final String ACTION_AUTHENTICATOR_INTENT = "android.accounts.AccountAuthenticator"; - field public static final String AUTHENTICATOR_ATTRIBUTES_NAME = "account-authenticator"; - field public static final String AUTHENTICATOR_META_DATA_NAME = "android.accounts.AccountAuthenticator"; - field public static final int ERROR_CODE_BAD_ARGUMENTS = 7; // 0x7 - field public static final int ERROR_CODE_BAD_AUTHENTICATION = 9; // 0x9 - field public static final int ERROR_CODE_BAD_REQUEST = 8; // 0x8 - field public static final int ERROR_CODE_CANCELED = 4; // 0x4 - field public static final int ERROR_CODE_INVALID_RESPONSE = 5; // 0x5 - field public static final int ERROR_CODE_NETWORK_ERROR = 3; // 0x3 - field public static final int ERROR_CODE_REMOTE_EXCEPTION = 1; // 0x1 - field public static final int ERROR_CODE_UNSUPPORTED_OPERATION = 6; // 0x6 - field public static final String KEY_ACCOUNTS = "accounts"; - field public static final String KEY_ACCOUNT_AUTHENTICATOR_RESPONSE = "accountAuthenticatorResponse"; - field public static final String KEY_ACCOUNT_MANAGER_RESPONSE = "accountManagerResponse"; - field public static final String KEY_ACCOUNT_NAME = "authAccount"; - field public static final String KEY_ACCOUNT_SESSION_BUNDLE = "accountSessionBundle"; - field public static final String KEY_ACCOUNT_STATUS_TOKEN = "accountStatusToken"; - field public static final String KEY_ACCOUNT_TYPE = "accountType"; - field public static final String KEY_ANDROID_PACKAGE_NAME = "androidPackageName"; - field public static final String KEY_AUTHENTICATOR_TYPES = "authenticator_types"; - field public static final String KEY_AUTHTOKEN = "authtoken"; - field public static final String KEY_AUTH_FAILED_MESSAGE = "authFailedMessage"; - field public static final String KEY_AUTH_TOKEN_LABEL = "authTokenLabelKey"; - field public static final String KEY_BOOLEAN_RESULT = "booleanResult"; - field public static final String KEY_CALLER_PID = "callerPid"; - field public static final String KEY_CALLER_UID = "callerUid"; - field public static final String KEY_ERROR_CODE = "errorCode"; - field public static final String KEY_ERROR_MESSAGE = "errorMessage"; - field public static final String KEY_INTENT = "intent"; - field public static final String KEY_LAST_AUTHENTICATED_TIME = "lastAuthenticatedTime"; - field public static final String KEY_PASSWORD = "password"; - field public static final String KEY_USERDATA = "userdata"; - field @Deprecated public static final String LOGIN_ACCOUNTS_CHANGED_ACTION = "android.accounts.LOGIN_ACCOUNTS_CHANGED"; - field public static final String PACKAGE_NAME_KEY_LEGACY_NOT_VISIBLE = "android:accounts:key_legacy_not_visible"; - field public static final String PACKAGE_NAME_KEY_LEGACY_VISIBLE = "android:accounts:key_legacy_visible"; - field public static final int VISIBILITY_NOT_VISIBLE = 3; // 0x3 - field public static final int VISIBILITY_UNDEFINED = 0; // 0x0 - field public static final int VISIBILITY_USER_MANAGED_NOT_VISIBLE = 4; // 0x4 - field public static final int VISIBILITY_USER_MANAGED_VISIBLE = 2; // 0x2 - field public static final int VISIBILITY_VISIBLE = 1; // 0x1 - } - - public interface AccountManagerCallback { - method public void run(android.accounts.AccountManagerFuture); - } - - public interface AccountManagerFuture { - method public boolean cancel(boolean); - method public V getResult() throws android.accounts.AuthenticatorException, java.io.IOException, android.accounts.OperationCanceledException; - method public V getResult(long, java.util.concurrent.TimeUnit) throws android.accounts.AuthenticatorException, java.io.IOException, android.accounts.OperationCanceledException; - method public boolean isCancelled(); - method public boolean isDone(); - } - - public class AccountsException extends java.lang.Exception { - ctor public AccountsException(); - ctor public AccountsException(String); - ctor public AccountsException(String, Throwable); - ctor public AccountsException(Throwable); - } - - public class AuthenticatorDescription implements android.os.Parcelable { - ctor public AuthenticatorDescription(String, String, int, int, int, int, boolean); - ctor public AuthenticatorDescription(String, String, int, int, int, int); - method public int describeContents(); - method public static android.accounts.AuthenticatorDescription newKey(String); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public final int accountPreferencesId; - field public final boolean customTokens; - field public final int iconId; - field public final int labelId; - field public final String packageName; - field public final int smallIconId; - field public final String type; - } - - public class AuthenticatorException extends android.accounts.AccountsException { - ctor public AuthenticatorException(); - ctor public AuthenticatorException(String); - ctor public AuthenticatorException(String, Throwable); - ctor public AuthenticatorException(Throwable); - } - - public class NetworkErrorException extends android.accounts.AccountsException { - ctor public NetworkErrorException(); - ctor public NetworkErrorException(String); - ctor public NetworkErrorException(String, Throwable); - ctor public NetworkErrorException(Throwable); - } - - public interface OnAccountsUpdateListener { - method public void onAccountsUpdated(android.accounts.Account[]); - } - - public class OperationCanceledException extends android.accounts.AccountsException { - ctor public OperationCanceledException(); - ctor public OperationCanceledException(String); - ctor public OperationCanceledException(String, Throwable); - ctor public OperationCanceledException(Throwable); - } - -} - -package android.animation { - - public abstract class Animator implements java.lang.Cloneable { - ctor public Animator(); - method public void addListener(android.animation.Animator.AnimatorListener); - method public void addPauseListener(android.animation.Animator.AnimatorPauseListener); - method public void cancel(); - method public android.animation.Animator clone(); - method public void end(); - method public abstract long getDuration(); - method public android.animation.TimeInterpolator getInterpolator(); - method public java.util.ArrayList getListeners(); - method public abstract long getStartDelay(); - method public long getTotalDuration(); - method public boolean isPaused(); - method public abstract boolean isRunning(); - method public boolean isStarted(); - method public void pause(); - method public void removeAllListeners(); - method public void removeListener(android.animation.Animator.AnimatorListener); - method public void removePauseListener(android.animation.Animator.AnimatorPauseListener); - method public void resume(); - method public abstract android.animation.Animator setDuration(long); - method public abstract void setInterpolator(android.animation.TimeInterpolator); - method public abstract void setStartDelay(long); - method public void setTarget(@Nullable Object); - method public void setupEndValues(); - method public void setupStartValues(); - method public void start(); - field public static final long DURATION_INFINITE = -1L; // 0xffffffffffffffffL - } - - public static interface Animator.AnimatorListener { - method public void onAnimationCancel(@NonNull android.animation.Animator); - method public default void onAnimationEnd(@NonNull android.animation.Animator, boolean); - method public void onAnimationEnd(@NonNull android.animation.Animator); - method public void onAnimationRepeat(@NonNull android.animation.Animator); - method public default void onAnimationStart(@NonNull android.animation.Animator, boolean); - method public void onAnimationStart(@NonNull android.animation.Animator); - } - - public static interface Animator.AnimatorPauseListener { - method public void onAnimationPause(@NonNull android.animation.Animator); - method public void onAnimationResume(@NonNull android.animation.Animator); - } - - public class AnimatorInflater { - ctor public AnimatorInflater(); - method public static android.animation.Animator loadAnimator(android.content.Context, @AnimatorRes int) throws android.content.res.Resources.NotFoundException; - method public static android.animation.StateListAnimator loadStateListAnimator(android.content.Context, int) throws android.content.res.Resources.NotFoundException; - } - - public abstract class AnimatorListenerAdapter implements android.animation.Animator.AnimatorListener android.animation.Animator.AnimatorPauseListener { - ctor public AnimatorListenerAdapter(); - method public void onAnimationCancel(android.animation.Animator); - method public void onAnimationEnd(android.animation.Animator); - method public void onAnimationPause(android.animation.Animator); - method public void onAnimationRepeat(android.animation.Animator); - method public void onAnimationResume(android.animation.Animator); - method public void onAnimationStart(android.animation.Animator); - } - - public final class AnimatorSet extends android.animation.Animator { - ctor public AnimatorSet(); - method public android.animation.AnimatorSet clone(); - method public java.util.ArrayList getChildAnimations(); - method public long getCurrentPlayTime(); - method public long getDuration(); - method public long getStartDelay(); - method public boolean isRunning(); - method public android.animation.AnimatorSet.Builder play(android.animation.Animator); - method public void playSequentially(android.animation.Animator...); - method public void playSequentially(java.util.List); - method public void playTogether(android.animation.Animator...); - method public void playTogether(java.util.Collection); - method public void reverse(); - method public void setCurrentPlayTime(long); - method public android.animation.AnimatorSet setDuration(long); - method public void setInterpolator(android.animation.TimeInterpolator); - method public void setStartDelay(long); - } - - public class AnimatorSet.Builder { - method public android.animation.AnimatorSet.Builder after(android.animation.Animator); - method public android.animation.AnimatorSet.Builder after(long); - method public android.animation.AnimatorSet.Builder before(android.animation.Animator); - method public android.animation.AnimatorSet.Builder with(android.animation.Animator); - } - - public class ArgbEvaluator implements android.animation.TypeEvaluator { - ctor public ArgbEvaluator(); - method public Object evaluate(float, Object, Object); - } - - public abstract class BidirectionalTypeConverter extends android.animation.TypeConverter { - ctor public BidirectionalTypeConverter(Class, Class); - method public abstract T convertBack(V); - method public android.animation.BidirectionalTypeConverter invert(); - } - - public class FloatArrayEvaluator implements android.animation.TypeEvaluator { - ctor public FloatArrayEvaluator(); - ctor public FloatArrayEvaluator(float[]); - method public float[] evaluate(float, float[], float[]); - } - - public class FloatEvaluator implements android.animation.TypeEvaluator { - ctor public FloatEvaluator(); - method public Float evaluate(float, Number, Number); - } - - public class IntArrayEvaluator implements android.animation.TypeEvaluator { - ctor public IntArrayEvaluator(); - ctor public IntArrayEvaluator(int[]); - method public int[] evaluate(float, int[], int[]); - } - - public class IntEvaluator implements android.animation.TypeEvaluator { - ctor public IntEvaluator(); - method public Integer evaluate(float, Integer, Integer); - } - - public abstract class Keyframe implements java.lang.Cloneable { - ctor public Keyframe(); - method public abstract android.animation.Keyframe clone(); - method public float getFraction(); - method public android.animation.TimeInterpolator getInterpolator(); - method public Class getType(); - method public abstract Object getValue(); - method public boolean hasValue(); - method public static android.animation.Keyframe ofFloat(float, float); - method public static android.animation.Keyframe ofFloat(float); - method public static android.animation.Keyframe ofInt(float, int); - method public static android.animation.Keyframe ofInt(float); - method public static android.animation.Keyframe ofObject(float, Object); - method public static android.animation.Keyframe ofObject(float); - method public void setFraction(float); - method public void setInterpolator(android.animation.TimeInterpolator); - method public abstract void setValue(Object); - } - - public class LayoutTransition { - ctor public LayoutTransition(); - method public void addChild(android.view.ViewGroup, android.view.View); - method public void addTransitionListener(android.animation.LayoutTransition.TransitionListener); - method public void disableTransitionType(int); - method public void enableTransitionType(int); - method public android.animation.Animator getAnimator(int); - method public long getDuration(int); - method public android.animation.TimeInterpolator getInterpolator(int); - method public long getStagger(int); - method public long getStartDelay(int); - method public java.util.List getTransitionListeners(); - method @Deprecated public void hideChild(android.view.ViewGroup, android.view.View); - method public void hideChild(android.view.ViewGroup, android.view.View, int); - method public boolean isChangingLayout(); - method public boolean isRunning(); - method public boolean isTransitionTypeEnabled(int); - method public void removeChild(android.view.ViewGroup, android.view.View); - method public void removeTransitionListener(android.animation.LayoutTransition.TransitionListener); - method public void setAnimateParentHierarchy(boolean); - method public void setAnimator(int, android.animation.Animator); - method public void setDuration(long); - method public void setDuration(int, long); - method public void setInterpolator(int, android.animation.TimeInterpolator); - method public void setStagger(int, long); - method public void setStartDelay(int, long); - method @Deprecated public void showChild(android.view.ViewGroup, android.view.View); - method public void showChild(android.view.ViewGroup, android.view.View, int); - field public static final int APPEARING = 2; // 0x2 - field public static final int CHANGE_APPEARING = 0; // 0x0 - field public static final int CHANGE_DISAPPEARING = 1; // 0x1 - field public static final int CHANGING = 4; // 0x4 - field public static final int DISAPPEARING = 3; // 0x3 - } - - public static interface LayoutTransition.TransitionListener { - method public void endTransition(android.animation.LayoutTransition, android.view.ViewGroup, android.view.View, int); - method public void startTransition(android.animation.LayoutTransition, android.view.ViewGroup, android.view.View, int); - } - - public final class ObjectAnimator extends android.animation.ValueAnimator { - ctor public ObjectAnimator(); - method public android.animation.ObjectAnimator clone(); - method @Nullable public String getPropertyName(); - method @Nullable public Object getTarget(); - method public static android.animation.ObjectAnimator ofArgb(Object, String, int...); - method public static android.animation.ObjectAnimator ofArgb(T, android.util.Property, int...); - method public static android.animation.ObjectAnimator ofFloat(Object, String, float...); - method public static android.animation.ObjectAnimator ofFloat(Object, String, String, android.graphics.Path); - method public static android.animation.ObjectAnimator ofFloat(T, android.util.Property, float...); - method public static android.animation.ObjectAnimator ofFloat(T, android.util.Property, android.util.Property, android.graphics.Path); - method public static android.animation.ObjectAnimator ofInt(Object, String, int...); - method public static android.animation.ObjectAnimator ofInt(Object, String, String, android.graphics.Path); - method public static android.animation.ObjectAnimator ofInt(T, android.util.Property, int...); - method public static android.animation.ObjectAnimator ofInt(T, android.util.Property, android.util.Property, android.graphics.Path); - method public static android.animation.ObjectAnimator ofMultiFloat(Object, String, float[][]); - method public static android.animation.ObjectAnimator ofMultiFloat(Object, String, android.graphics.Path); - method @java.lang.SafeVarargs public static android.animation.ObjectAnimator ofMultiFloat(Object, String, android.animation.TypeConverter, android.animation.TypeEvaluator, T...); - method public static android.animation.ObjectAnimator ofMultiInt(Object, String, int[][]); - method public static android.animation.ObjectAnimator ofMultiInt(Object, String, android.graphics.Path); - method @java.lang.SafeVarargs public static android.animation.ObjectAnimator ofMultiInt(Object, String, android.animation.TypeConverter, android.animation.TypeEvaluator, T...); - method public static android.animation.ObjectAnimator ofObject(Object, String, android.animation.TypeEvaluator, java.lang.Object...); - method @NonNull public static android.animation.ObjectAnimator ofObject(Object, String, @Nullable android.animation.TypeConverter, android.graphics.Path); - method @NonNull @java.lang.SafeVarargs public static android.animation.ObjectAnimator ofObject(T, android.util.Property, android.animation.TypeEvaluator, V...); - method @NonNull @java.lang.SafeVarargs public static android.animation.ObjectAnimator ofObject(T, android.util.Property, android.animation.TypeConverter, android.animation.TypeEvaluator, V...); - method @NonNull public static android.animation.ObjectAnimator ofObject(T, @NonNull android.util.Property, @Nullable android.animation.TypeConverter, android.graphics.Path); - method @NonNull public static android.animation.ObjectAnimator ofPropertyValuesHolder(Object, android.animation.PropertyValuesHolder...); - method public void setAutoCancel(boolean); - method @NonNull public android.animation.ObjectAnimator setDuration(long); - method public void setProperty(@NonNull android.util.Property); - method public void setPropertyName(@NonNull String); - } - - public class PointFEvaluator implements android.animation.TypeEvaluator { - ctor public PointFEvaluator(); - ctor public PointFEvaluator(android.graphics.PointF); - method public android.graphics.PointF evaluate(float, android.graphics.PointF, android.graphics.PointF); - } - - public class PropertyValuesHolder implements java.lang.Cloneable { - method public android.animation.PropertyValuesHolder clone(); - method public String getPropertyName(); - method public static android.animation.PropertyValuesHolder ofFloat(String, float...); - method public static android.animation.PropertyValuesHolder ofFloat(android.util.Property, float...); - method public static android.animation.PropertyValuesHolder ofInt(String, int...); - method public static android.animation.PropertyValuesHolder ofInt(android.util.Property, int...); - method public static android.animation.PropertyValuesHolder ofKeyframe(String, android.animation.Keyframe...); - method public static android.animation.PropertyValuesHolder ofKeyframe(android.util.Property, android.animation.Keyframe...); - method public static android.animation.PropertyValuesHolder ofMultiFloat(String, float[][]); - method public static android.animation.PropertyValuesHolder ofMultiFloat(String, android.graphics.Path); - method @java.lang.SafeVarargs public static android.animation.PropertyValuesHolder ofMultiFloat(String, android.animation.TypeConverter, android.animation.TypeEvaluator, V...); - method public static android.animation.PropertyValuesHolder ofMultiFloat(String, android.animation.TypeConverter, android.animation.TypeEvaluator, android.animation.Keyframe...); - method public static android.animation.PropertyValuesHolder ofMultiInt(String, int[][]); - method public static android.animation.PropertyValuesHolder ofMultiInt(String, android.graphics.Path); - method @java.lang.SafeVarargs public static android.animation.PropertyValuesHolder ofMultiInt(String, android.animation.TypeConverter, android.animation.TypeEvaluator, V...); - method public static android.animation.PropertyValuesHolder ofMultiInt(String, android.animation.TypeConverter, android.animation.TypeEvaluator, android.animation.Keyframe...); - method public static android.animation.PropertyValuesHolder ofObject(String, android.animation.TypeEvaluator, java.lang.Object...); - method public static android.animation.PropertyValuesHolder ofObject(String, android.animation.TypeConverter, android.graphics.Path); - method @java.lang.SafeVarargs public static android.animation.PropertyValuesHolder ofObject(android.util.Property, android.animation.TypeEvaluator, V...); - method @java.lang.SafeVarargs public static android.animation.PropertyValuesHolder ofObject(android.util.Property, android.animation.TypeConverter, android.animation.TypeEvaluator, T...); - method public static android.animation.PropertyValuesHolder ofObject(android.util.Property, android.animation.TypeConverter, android.graphics.Path); - method public void setConverter(android.animation.TypeConverter); - method public void setEvaluator(android.animation.TypeEvaluator); - method public void setFloatValues(float...); - method public void setIntValues(int...); - method public void setKeyframes(android.animation.Keyframe...); - method public void setObjectValues(java.lang.Object...); - method public void setProperty(android.util.Property); - method public void setPropertyName(String); - } - - public class RectEvaluator implements android.animation.TypeEvaluator { - ctor public RectEvaluator(); - ctor public RectEvaluator(android.graphics.Rect); - method public android.graphics.Rect evaluate(float, android.graphics.Rect, android.graphics.Rect); - } - - public class StateListAnimator implements java.lang.Cloneable { - ctor public StateListAnimator(); - method public void addState(int[], android.animation.Animator); - method public android.animation.StateListAnimator clone(); - method public void jumpToCurrentState(); - } - - public class TimeAnimator extends android.animation.ValueAnimator { - ctor public TimeAnimator(); - method public void setTimeListener(android.animation.TimeAnimator.TimeListener); - } - - public static interface TimeAnimator.TimeListener { - method public void onTimeUpdate(android.animation.TimeAnimator, long, long); - } - - public interface TimeInterpolator { - method public float getInterpolation(float); - } - - public abstract class TypeConverter { - ctor public TypeConverter(Class, Class); - method public abstract V convert(T); - } - - public interface TypeEvaluator { - method public T evaluate(float, T, T); - } - - public class ValueAnimator extends android.animation.Animator { - ctor public ValueAnimator(); - method public void addUpdateListener(android.animation.ValueAnimator.AnimatorUpdateListener); - method public static boolean areAnimatorsEnabled(); - method public android.animation.ValueAnimator clone(); - method public float getAnimatedFraction(); - method public Object getAnimatedValue(); - method public Object getAnimatedValue(String); - method public long getCurrentPlayTime(); - method public long getDuration(); - method @FloatRange(from=0) public static float getDurationScale(); - method public static long getFrameDelay(); - method public int getRepeatCount(); - method public int getRepeatMode(); - method public long getStartDelay(); - method public android.animation.PropertyValuesHolder[] getValues(); - method public boolean isRunning(); - method public static android.animation.ValueAnimator ofArgb(int...); - method public static android.animation.ValueAnimator ofFloat(float...); - method public static android.animation.ValueAnimator ofInt(int...); - method public static android.animation.ValueAnimator ofObject(android.animation.TypeEvaluator, java.lang.Object...); - method public static android.animation.ValueAnimator ofPropertyValuesHolder(android.animation.PropertyValuesHolder...); - method public static boolean registerDurationScaleChangeListener(@NonNull android.animation.ValueAnimator.DurationScaleChangeListener); - method public void removeAllUpdateListeners(); - method public void removeUpdateListener(android.animation.ValueAnimator.AnimatorUpdateListener); - method public void reverse(); - method public void setCurrentFraction(float); - method public void setCurrentPlayTime(long); - method public android.animation.ValueAnimator setDuration(long); - method public void setEvaluator(android.animation.TypeEvaluator); - method public void setFloatValues(float...); - method public static void setFrameDelay(long); - method public void setIntValues(int...); - method public void setInterpolator(android.animation.TimeInterpolator); - method public void setObjectValues(java.lang.Object...); - method public void setRepeatCount(int); - method public void setRepeatMode(int); - method public void setStartDelay(long); - method public void setValues(android.animation.PropertyValuesHolder...); - method public static boolean unregisterDurationScaleChangeListener(@NonNull android.animation.ValueAnimator.DurationScaleChangeListener); - field public static final int INFINITE = -1; // 0xffffffff - field public static final int RESTART = 1; // 0x1 - field public static final int REVERSE = 2; // 0x2 - } - - public static interface ValueAnimator.AnimatorUpdateListener { - method public void onAnimationUpdate(@NonNull android.animation.ValueAnimator); - } - - public static interface ValueAnimator.DurationScaleChangeListener { - method public void onChanged(@FloatRange(from=0) float); - } - -} - -package android.annotation { - - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.LOCAL_VARIABLE}) public @interface SuppressLint { - method public abstract String[] value(); - } - - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.FIELD}) public @interface TargetApi { - method public abstract int value(); - } - -} - -package android.app { - - public abstract class ActionBar { - ctor public ActionBar(); - method public abstract void addOnMenuVisibilityListener(android.app.ActionBar.OnMenuVisibilityListener); - method @Deprecated public abstract void addTab(android.app.ActionBar.Tab); - method @Deprecated public abstract void addTab(android.app.ActionBar.Tab, boolean); - method @Deprecated public abstract void addTab(android.app.ActionBar.Tab, int); - method @Deprecated public abstract void addTab(android.app.ActionBar.Tab, int, boolean); - method public abstract android.view.View getCustomView(); - method public abstract int getDisplayOptions(); - method public float getElevation(); - method public abstract int getHeight(); - method public int getHideOffset(); - method @Deprecated public abstract int getNavigationItemCount(); - method @Deprecated public abstract int getNavigationMode(); - method @Deprecated public abstract int getSelectedNavigationIndex(); - method @Deprecated public abstract android.app.ActionBar.Tab getSelectedTab(); - method public abstract CharSequence getSubtitle(); - method @Deprecated public abstract android.app.ActionBar.Tab getTabAt(int); - method @Deprecated public abstract int getTabCount(); - method public android.content.Context getThemedContext(); - method public abstract CharSequence getTitle(); - method public abstract void hide(); - method public boolean isHideOnContentScrollEnabled(); - method public abstract boolean isShowing(); - method @Deprecated public abstract android.app.ActionBar.Tab newTab(); - method @Deprecated public abstract void removeAllTabs(); - method public abstract void removeOnMenuVisibilityListener(android.app.ActionBar.OnMenuVisibilityListener); - method @Deprecated public abstract void removeTab(android.app.ActionBar.Tab); - method @Deprecated public abstract void removeTabAt(int); - method @Deprecated public abstract void selectTab(android.app.ActionBar.Tab); - method public abstract void setBackgroundDrawable(@Nullable android.graphics.drawable.Drawable); - method public abstract void setCustomView(android.view.View); - method public abstract void setCustomView(android.view.View, android.app.ActionBar.LayoutParams); - method public abstract void setCustomView(@LayoutRes int); - method public abstract void setDisplayHomeAsUpEnabled(boolean); - method public abstract void setDisplayOptions(int); - method public abstract void setDisplayOptions(int, int); - method public abstract void setDisplayShowCustomEnabled(boolean); - method public abstract void setDisplayShowHomeEnabled(boolean); - method public abstract void setDisplayShowTitleEnabled(boolean); - method public abstract void setDisplayUseLogoEnabled(boolean); - method public void setElevation(float); - method public void setHideOffset(int); - method public void setHideOnContentScrollEnabled(boolean); - method public void setHomeActionContentDescription(CharSequence); - method public void setHomeActionContentDescription(@StringRes int); - method public void setHomeAsUpIndicator(android.graphics.drawable.Drawable); - method public void setHomeAsUpIndicator(@DrawableRes int); - method public void setHomeButtonEnabled(boolean); - method public abstract void setIcon(@DrawableRes int); - method public abstract void setIcon(android.graphics.drawable.Drawable); - method @Deprecated public abstract void setListNavigationCallbacks(android.widget.SpinnerAdapter, android.app.ActionBar.OnNavigationListener); - method public abstract void setLogo(@DrawableRes int); - method public abstract void setLogo(android.graphics.drawable.Drawable); - method @Deprecated public abstract void setNavigationMode(int); - method @Deprecated public abstract void setSelectedNavigationItem(int); - method public void setSplitBackgroundDrawable(android.graphics.drawable.Drawable); - method public void setStackedBackgroundDrawable(android.graphics.drawable.Drawable); - method public abstract void setSubtitle(CharSequence); - method public abstract void setSubtitle(@StringRes int); - method public abstract void setTitle(CharSequence); - method public abstract void setTitle(@StringRes int); - method public abstract void show(); - field public static final int DISPLAY_HOME_AS_UP = 4; // 0x4 - field public static final int DISPLAY_SHOW_CUSTOM = 16; // 0x10 - field public static final int DISPLAY_SHOW_HOME = 2; // 0x2 - field public static final int DISPLAY_SHOW_TITLE = 8; // 0x8 - field public static final int DISPLAY_USE_LOGO = 1; // 0x1 - field @Deprecated public static final int NAVIGATION_MODE_LIST = 1; // 0x1 - field @Deprecated public static final int NAVIGATION_MODE_STANDARD = 0; // 0x0 - field @Deprecated public static final int NAVIGATION_MODE_TABS = 2; // 0x2 - } - - public static class ActionBar.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { - ctor public ActionBar.LayoutParams(@NonNull android.content.Context, android.util.AttributeSet); - ctor public ActionBar.LayoutParams(int, int); - ctor public ActionBar.LayoutParams(int, int, int); - ctor public ActionBar.LayoutParams(int); - ctor public ActionBar.LayoutParams(android.app.ActionBar.LayoutParams); - ctor public ActionBar.LayoutParams(android.view.ViewGroup.LayoutParams); - field public int gravity; - } - - public static interface ActionBar.OnMenuVisibilityListener { - method public void onMenuVisibilityChanged(boolean); - } - - @Deprecated public static interface ActionBar.OnNavigationListener { - method @Deprecated public boolean onNavigationItemSelected(int, long); - } - - @Deprecated public abstract static class ActionBar.Tab { - ctor @Deprecated public ActionBar.Tab(); - method @Deprecated public abstract CharSequence getContentDescription(); - method @Deprecated public abstract android.view.View getCustomView(); - method @Deprecated public abstract android.graphics.drawable.Drawable getIcon(); - method @Deprecated public abstract int getPosition(); - method @Deprecated public abstract Object getTag(); - method @Deprecated public abstract CharSequence getText(); - method @Deprecated public abstract void select(); - method @Deprecated public abstract android.app.ActionBar.Tab setContentDescription(@StringRes int); - method @Deprecated public abstract android.app.ActionBar.Tab setContentDescription(CharSequence); - method @Deprecated public abstract android.app.ActionBar.Tab setCustomView(android.view.View); - method @Deprecated public abstract android.app.ActionBar.Tab setCustomView(@LayoutRes int); - method @Deprecated public abstract android.app.ActionBar.Tab setIcon(android.graphics.drawable.Drawable); - method @Deprecated public abstract android.app.ActionBar.Tab setIcon(@DrawableRes int); - method @Deprecated public abstract android.app.ActionBar.Tab setTabListener(android.app.ActionBar.TabListener); - method @Deprecated public abstract android.app.ActionBar.Tab setTag(Object); - method @Deprecated public abstract android.app.ActionBar.Tab setText(CharSequence); - method @Deprecated public abstract android.app.ActionBar.Tab setText(@StringRes int); - field @Deprecated public static final int INVALID_POSITION = -1; // 0xffffffff - } - - @Deprecated public static interface ActionBar.TabListener { - method @Deprecated public void onTabReselected(android.app.ActionBar.Tab, android.app.FragmentTransaction); - method @Deprecated public void onTabSelected(android.app.ActionBar.Tab, android.app.FragmentTransaction); - method @Deprecated public void onTabUnselected(android.app.ActionBar.Tab, android.app.FragmentTransaction); - } - - @UiContext public class Activity extends android.view.ContextThemeWrapper implements android.content.ComponentCallbacks2 android.view.KeyEvent.Callback android.view.LayoutInflater.Factory2 android.view.View.OnCreateContextMenuListener android.view.Window.Callback { - ctor public Activity(); - method public void addContentView(android.view.View, android.view.ViewGroup.LayoutParams); - method public void clearOverrideActivityTransition(int); - method public void closeContextMenu(); - method public void closeOptionsMenu(); - method public android.app.PendingIntent createPendingResult(int, @NonNull android.content.Intent, int); - method @Deprecated public final void dismissDialog(int); - method public final void dismissKeyboardShortcutsHelper(); - method public boolean dispatchGenericMotionEvent(android.view.MotionEvent); - method public boolean dispatchKeyEvent(android.view.KeyEvent); - method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent); - method public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); - method public boolean dispatchTouchEvent(android.view.MotionEvent); - method public boolean dispatchTrackballEvent(android.view.MotionEvent); - method public void dump(@NonNull String, @Nullable java.io.FileDescriptor, @NonNull java.io.PrintWriter, @Nullable String[]); - method @Deprecated public void enterPictureInPictureMode(); - method public boolean enterPictureInPictureMode(@NonNull android.app.PictureInPictureParams); - method public T findViewById(@IdRes int); - method public void finish(); - method public void finishActivity(int); - method @Deprecated public void finishActivityFromChild(@NonNull android.app.Activity, int); - method public void finishAffinity(); - method public void finishAfterTransition(); - method public void finishAndRemoveTask(); - method @Deprecated public void finishFromChild(android.app.Activity); - method @Nullable public android.app.ActionBar getActionBar(); - method public final android.app.Application getApplication(); - method @FlaggedApi("android.security.content_uri_permission_apis") @Nullable public android.app.ComponentCaller getCaller(); - method @Nullable public android.content.ComponentName getCallingActivity(); - method @Nullable public String getCallingPackage(); - method public int getChangingConfigurations(); - method public android.content.ComponentName getComponentName(); - method public android.transition.Scene getContentScene(); - method public android.transition.TransitionManager getContentTransitionManager(); - method @FlaggedApi("android.security.content_uri_permission_apis") @NonNull public android.app.ComponentCaller getCurrentCaller(); - method @Nullable public android.view.View getCurrentFocus(); - method @Deprecated public android.app.FragmentManager getFragmentManager(); - method @FlaggedApi("android.security.content_uri_permission_apis") @NonNull public android.app.ComponentCaller getInitialCaller(); - method public android.content.Intent getIntent(); - method @Nullable public Object getLastNonConfigurationInstance(); - method @Nullable public String getLaunchedFromPackage(); - method public int getLaunchedFromUid(); - method @NonNull public android.view.LayoutInflater getLayoutInflater(); - method @Deprecated public android.app.LoaderManager getLoaderManager(); - method @NonNull public String getLocalClassName(); - method public int getMaxNumPictureInPictureActions(); - method public final android.media.session.MediaController getMediaController(); - method @NonNull public android.view.MenuInflater getMenuInflater(); - method @NonNull public android.window.OnBackInvokedDispatcher getOnBackInvokedDispatcher(); - method @Deprecated public final android.app.Activity getParent(); - method @Nullable public android.content.Intent getParentActivityIntent(); - method public android.content.SharedPreferences getPreferences(int); - method @Nullable public android.net.Uri getReferrer(); - method public int getRequestedOrientation(); - method public final android.view.SearchEvent getSearchEvent(); - method @NonNull public final android.window.SplashScreen getSplashScreen(); - method public int getTaskId(); - method public final CharSequence getTitle(); - method public final int getTitleColor(); - method public android.app.VoiceInteractor getVoiceInteractor(); - method public final int getVolumeControlStream(); - method public android.view.Window getWindow(); - method public android.view.WindowManager getWindowManager(); - method public boolean hasWindowFocus(); - method public void invalidateOptionsMenu(); - method public boolean isActivityTransitionRunning(); - method public boolean isChangingConfigurations(); - method @Deprecated public final boolean isChild(); - method public boolean isDestroyed(); - method public boolean isFinishing(); - method public boolean isImmersive(); - method public boolean isInMultiWindowMode(); - method public boolean isInPictureInPictureMode(); - method public boolean isLaunchedFromBubble(); - method public boolean isLocalVoiceInteractionSupported(); - method public boolean isTaskRoot(); - method public boolean isVoiceInteraction(); - method public boolean isVoiceInteractionRoot(); - method @Deprecated public final android.database.Cursor managedQuery(android.net.Uri, String[], String, String[], String); - method public boolean moveTaskToBack(boolean); - method public boolean navigateUpTo(android.content.Intent); - method @Deprecated public boolean navigateUpToFromChild(android.app.Activity, android.content.Intent); - method @CallSuper public void onActionModeFinished(android.view.ActionMode); - method @CallSuper public void onActionModeStarted(android.view.ActionMode); - method public void onActivityReenter(int, android.content.Intent); - method protected void onActivityResult(int, int, android.content.Intent); - method @FlaggedApi("android.security.content_uri_permission_apis") public void onActivityResult(int, int, @Nullable android.content.Intent, @NonNull android.app.ComponentCaller); - method @Deprecated public void onAttachFragment(android.app.Fragment); - method public void onAttachedToWindow(); - method @Deprecated public void onBackPressed(); - method protected void onChildTitleChanged(android.app.Activity, CharSequence); - method public void onConfigurationChanged(@NonNull android.content.res.Configuration); - method public void onContentChanged(); - method public boolean onContextItemSelected(@NonNull android.view.MenuItem); - method public void onContextMenuClosed(@NonNull android.view.Menu); - method @CallSuper @MainThread protected void onCreate(@Nullable android.os.Bundle); - method public void onCreate(@Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); - method public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo); - method @Nullable public CharSequence onCreateDescription(); - method @Deprecated protected android.app.Dialog onCreateDialog(int); - method @Deprecated @Nullable protected android.app.Dialog onCreateDialog(int, android.os.Bundle); - method public void onCreateNavigateUpTaskStack(android.app.TaskStackBuilder); - method public boolean onCreateOptionsMenu(android.view.Menu); - method public boolean onCreatePanelMenu(int, @NonNull android.view.Menu); - method @Nullable public android.view.View onCreatePanelView(int); - method @Deprecated public boolean onCreateThumbnail(android.graphics.Bitmap, android.graphics.Canvas); - method @Nullable public android.view.View onCreateView(@NonNull String, @NonNull android.content.Context, @NonNull android.util.AttributeSet); - method @Nullable public android.view.View onCreateView(@Nullable android.view.View, @NonNull String, @NonNull android.content.Context, @NonNull android.util.AttributeSet); - method @CallSuper protected void onDestroy(); - method public void onDetachedFromWindow(); - method public void onEnterAnimationComplete(); - method public boolean onGenericMotionEvent(android.view.MotionEvent); - method public void onGetDirectActions(@NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer>); - method public boolean onKeyDown(int, android.view.KeyEvent); - method public boolean onKeyLongPress(int, android.view.KeyEvent); - method public boolean onKeyMultiple(int, int, android.view.KeyEvent); - method public boolean onKeyShortcut(int, android.view.KeyEvent); - method public boolean onKeyUp(int, android.view.KeyEvent); - method public void onLocalVoiceInteractionStarted(); - method public void onLocalVoiceInteractionStopped(); - method public void onLowMemory(); - method public boolean onMenuItemSelected(int, @NonNull android.view.MenuItem); - method public boolean onMenuOpened(int, @NonNull android.view.Menu); - method public void onMultiWindowModeChanged(boolean, android.content.res.Configuration); - method @Deprecated public void onMultiWindowModeChanged(boolean); - method public boolean onNavigateUp(); - method @Deprecated public boolean onNavigateUpFromChild(android.app.Activity); - method protected void onNewIntent(android.content.Intent); - method @FlaggedApi("android.security.content_uri_permission_apis") public void onNewIntent(@NonNull android.content.Intent, @NonNull android.app.ComponentCaller); - method public boolean onOptionsItemSelected(@NonNull android.view.MenuItem); - method public void onOptionsMenuClosed(android.view.Menu); - method public void onPanelClosed(int, @NonNull android.view.Menu); - method @CallSuper protected void onPause(); - method public void onPerformDirectAction(@NonNull String, @NonNull android.os.Bundle, @NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer); - method public void onPictureInPictureModeChanged(boolean, android.content.res.Configuration); - method @Deprecated public void onPictureInPictureModeChanged(boolean); - method public boolean onPictureInPictureRequested(); - method public void onPictureInPictureUiStateChanged(@NonNull android.app.PictureInPictureUiState); - method @CallSuper protected void onPostCreate(@Nullable android.os.Bundle); - method public void onPostCreate(@Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); - method @CallSuper protected void onPostResume(); - method @Deprecated protected void onPrepareDialog(int, android.app.Dialog); - method @Deprecated protected void onPrepareDialog(int, android.app.Dialog, android.os.Bundle); - method public void onPrepareNavigateUpTaskStack(android.app.TaskStackBuilder); - method public boolean onPrepareOptionsMenu(android.view.Menu); - method public boolean onPreparePanel(int, @Nullable android.view.View, @NonNull android.view.Menu); - method public void onProvideAssistContent(android.app.assist.AssistContent); - method public void onProvideAssistData(android.os.Bundle); - method public void onProvideKeyboardShortcuts(java.util.List, android.view.Menu, int); - method public android.net.Uri onProvideReferrer(); - method public void onRequestPermissionsResult(int, @NonNull String[], @NonNull int[]); - method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public void onRequestPermissionsResult(int, @NonNull String[], @NonNull int[], int); - method @CallSuper protected void onRestart(); - method protected void onRestoreInstanceState(@NonNull android.os.Bundle); - method public void onRestoreInstanceState(@Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); - method @CallSuper protected void onResume(); - method public Object onRetainNonConfigurationInstance(); - method protected void onSaveInstanceState(@NonNull android.os.Bundle); - method public void onSaveInstanceState(@NonNull android.os.Bundle, @NonNull android.os.PersistableBundle); - method public boolean onSearchRequested(@Nullable android.view.SearchEvent); - method public boolean onSearchRequested(); - method @CallSuper protected void onStart(); - method @Deprecated public void onStateNotSaved(); - method @CallSuper protected void onStop(); - method protected void onTitleChanged(CharSequence, int); - method public void onTopResumedActivityChanged(boolean); - method public boolean onTouchEvent(android.view.MotionEvent); - method public boolean onTrackballEvent(android.view.MotionEvent); - method public void onTrimMemory(int); - method public void onUserInteraction(); - method protected void onUserLeaveHint(); - method @Deprecated @CallSuper public void onVisibleBehindCanceled(); - method public void onWindowAttributesChanged(android.view.WindowManager.LayoutParams); - method public void onWindowFocusChanged(boolean); - method @Nullable public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback); - method @Nullable public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int); - method public void openContextMenu(android.view.View); - method public void openOptionsMenu(); - method public void overrideActivityTransition(int, @AnimRes int, @AnimRes int); - method public void overrideActivityTransition(int, @AnimRes int, @AnimRes int, @ColorInt int); - method @Deprecated public void overridePendingTransition(int, int); - method @Deprecated public void overridePendingTransition(int, int, int); - method public void postponeEnterTransition(); - method public void recreate(); - method public void registerActivityLifecycleCallbacks(@NonNull android.app.Application.ActivityLifecycleCallbacks); - method public void registerForContextMenu(android.view.View); - method @RequiresPermission(android.Manifest.permission.DETECT_SCREEN_CAPTURE) public void registerScreenCaptureCallback(@NonNull java.util.concurrent.Executor, @NonNull android.app.Activity.ScreenCaptureCallback); - method public boolean releaseInstance(); - method @Deprecated public final void removeDialog(int); - method public void reportFullyDrawn(); - method public android.view.DragAndDropPermissions requestDragAndDropPermissions(android.view.DragEvent); - method public void requestFullscreenMode(int, @Nullable android.os.OutcomeReceiver); - method @FlaggedApi("com.android.window.flags.enable_desktop_windowing_app_to_web_education") public final void requestOpenInBrowserEducation(); - method public final void requestPermissions(@NonNull String[], int); - method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public final void requestPermissions(@NonNull String[], int, int); - method public final void requestShowKeyboardShortcuts(); - method @Deprecated public boolean requestVisibleBehind(boolean); - method public final boolean requestWindowFeature(int); - method @NonNull public final T requireViewById(@IdRes int); - method public final void runOnUiThread(Runnable); - method public void setActionBar(@Nullable android.widget.Toolbar); - method @FlaggedApi("android.security.asm_restrictions_enabled") public void setAllowCrossUidActivitySwitchFromBelow(boolean); - method public void setContentTransitionManager(android.transition.TransitionManager); - method public void setContentView(@LayoutRes int); - method public void setContentView(android.view.View); - method public void setContentView(android.view.View, android.view.ViewGroup.LayoutParams); - method public final void setDefaultKeyMode(int); - method public void setEnterSharedElementCallback(android.app.SharedElementCallback); - method public void setExitSharedElementCallback(android.app.SharedElementCallback); - method public final void setFeatureDrawable(int, android.graphics.drawable.Drawable); - method public final void setFeatureDrawableAlpha(int, int); - method public final void setFeatureDrawableResource(int, @DrawableRes int); - method public final void setFeatureDrawableUri(int, android.net.Uri); - method public void setFinishOnTouchOutside(boolean); - method public void setImmersive(boolean); - method public void setInheritShowWhenLocked(boolean); - method public void setIntent(android.content.Intent); - method @FlaggedApi("android.security.content_uri_permission_apis") public void setIntent(@Nullable android.content.Intent, @Nullable android.app.ComponentCaller); - method public void setLocusContext(@Nullable android.content.LocusId, @Nullable android.os.Bundle); - method public final void setMediaController(android.media.session.MediaController); - method public void setPictureInPictureParams(@NonNull android.app.PictureInPictureParams); - method @Deprecated public final void setProgress(int); - method @Deprecated public final void setProgressBarIndeterminate(boolean); - method @Deprecated public final void setProgressBarIndeterminateVisibility(boolean); - method @Deprecated public final void setProgressBarVisibility(boolean); - method public void setRecentsScreenshotEnabled(boolean); - method public void setRequestedOrientation(int); - method public final void setResult(int); - method public final void setResult(int, android.content.Intent); - method @Deprecated public final void setSecondaryProgress(int); - method public void setShouldDockBigOverlays(boolean); - method public void setShowWhenLocked(boolean); - method public void setTaskDescription(android.app.ActivityManager.TaskDescription); - method public void setTitle(CharSequence); - method public void setTitle(int); - method @Deprecated public void setTitleColor(int); - method public boolean setTranslucent(boolean); - method public void setTurnScreenOn(boolean); - method public void setVisible(boolean); - method public final void setVolumeControlStream(int); - method public void setVrModeEnabled(boolean, @NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; - method public boolean shouldDockBigOverlays(); - method public boolean shouldShowRequestPermissionRationale(@NonNull String); - method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public boolean shouldShowRequestPermissionRationale(@NonNull String, int); - method public boolean shouldUpRecreateTask(android.content.Intent); - method public boolean showAssist(android.os.Bundle); - method @Deprecated public final void showDialog(int); - method @Deprecated public final boolean showDialog(int, android.os.Bundle); - method public void showLockTaskEscapeMessage(); - method @Nullable public android.view.ActionMode startActionMode(android.view.ActionMode.Callback); - method @Nullable public android.view.ActionMode startActionMode(android.view.ActionMode.Callback, int); - method public void startActivityForResult(@RequiresPermission android.content.Intent, int); - method public void startActivityForResult(@RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); - method @Deprecated public void startActivityFromChild(@NonNull android.app.Activity, @RequiresPermission android.content.Intent, int); - method @Deprecated public void startActivityFromChild(@NonNull android.app.Activity, @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); - method @Deprecated public void startActivityFromFragment(@NonNull android.app.Fragment, @RequiresPermission android.content.Intent, int); - method @Deprecated public void startActivityFromFragment(@NonNull android.app.Fragment, @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); - method public boolean startActivityIfNeeded(@NonNull @RequiresPermission android.content.Intent, int); - method public boolean startActivityIfNeeded(@NonNull @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); - method public void startIntentSenderForResult(android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; - method public void startIntentSenderForResult(android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; - method @Deprecated public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; - method @Deprecated public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; - method public void startLocalVoiceInteraction(android.os.Bundle); - method public void startLockTask(); - method @Deprecated public void startManagingCursor(android.database.Cursor); - method public boolean startNextMatchingActivity(@NonNull @RequiresPermission android.content.Intent); - method public boolean startNextMatchingActivity(@NonNull @RequiresPermission android.content.Intent, @Nullable android.os.Bundle); - method public void startPostponedEnterTransition(); - method public void startSearch(@Nullable String, boolean, @Nullable android.os.Bundle, boolean); - method public void stopLocalVoiceInteraction(); - method public void stopLockTask(); - method @Deprecated public void stopManagingCursor(android.database.Cursor); - method public void takeKeyEvents(boolean); - method public void triggerSearch(String, @Nullable android.os.Bundle); - method public void unregisterActivityLifecycleCallbacks(@NonNull android.app.Application.ActivityLifecycleCallbacks); - method public void unregisterForContextMenu(android.view.View); - method @RequiresPermission(android.Manifest.permission.DETECT_SCREEN_CAPTURE) public void unregisterScreenCaptureCallback(@NonNull android.app.Activity.ScreenCaptureCallback); - field public static final int DEFAULT_KEYS_DIALER = 1; // 0x1 - field public static final int DEFAULT_KEYS_DISABLE = 0; // 0x0 - field public static final int DEFAULT_KEYS_SEARCH_GLOBAL = 4; // 0x4 - field public static final int DEFAULT_KEYS_SEARCH_LOCAL = 3; // 0x3 - field public static final int DEFAULT_KEYS_SHORTCUT = 2; // 0x2 - field protected static final int[] FOCUSED_STATE_SET; - field public static final int FULLSCREEN_MODE_REQUEST_ENTER = 1; // 0x1 - field public static final int FULLSCREEN_MODE_REQUEST_EXIT = 0; // 0x0 - field public static final int OVERRIDE_TRANSITION_CLOSE = 1; // 0x1 - field public static final int OVERRIDE_TRANSITION_OPEN = 0; // 0x0 - field public static final int RESULT_CANCELED = 0; // 0x0 - field public static final int RESULT_FIRST_USER = 1; // 0x1 - field public static final int RESULT_OK = -1; // 0xffffffff - } - - public static interface Activity.ScreenCaptureCallback { - method public void onScreenCaptured(); - } - - @Deprecated public class ActivityGroup extends android.app.Activity { - ctor @Deprecated public ActivityGroup(); - ctor @Deprecated public ActivityGroup(boolean); - method @Deprecated public android.app.Activity getCurrentActivity(); - method @Deprecated public final android.app.LocalActivityManager getLocalActivityManager(); - } - - public class ActivityManager { - method public int addAppTask(@NonNull android.app.Activity, @NonNull android.content.Intent, @Nullable android.app.ActivityManager.TaskDescription, @NonNull android.graphics.Bitmap); - method @FlaggedApi("android.app.app_start_info") public void addApplicationStartInfoCompletionListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @FlaggedApi("android.app.app_start_info") public void addStartInfoTimestamp(@IntRange(from=android.app.ApplicationStartInfo.START_TIMESTAMP_RESERVED_RANGE_DEVELOPER_START, to=android.app.ApplicationStartInfo.START_TIMESTAMP_RESERVED_RANGE_DEVELOPER) int, long); - method public void appNotResponding(@NonNull String); - method public boolean clearApplicationUserData(); - method public void clearWatchHeapLimit(); - method @RequiresPermission(android.Manifest.permission.DUMP) public void dumpPackageState(java.io.FileDescriptor, String); - method public android.util.Size getAppTaskThumbnailSize(); - method public java.util.List getAppTasks(); - method public android.content.pm.ConfigurationInfo getDeviceConfigurationInfo(); - method @NonNull public java.util.List getHistoricalProcessExitReasons(@Nullable String, @IntRange(from=0) int, @IntRange(from=0) int); - method @FlaggedApi("android.app.app_start_info") @NonNull public java.util.List getHistoricalProcessStartReasons(@IntRange(from=0) int); - method public int getLargeMemoryClass(); - method public int getLauncherLargeIconDensity(); - method public int getLauncherLargeIconSize(); - method public int getLockTaskModeState(); - method public int getMemoryClass(); - method public void getMemoryInfo(android.app.ActivityManager.MemoryInfo); - method public static void getMyMemoryState(android.app.ActivityManager.RunningAppProcessInfo); - method public android.os.Debug.MemoryInfo[] getProcessMemoryInfo(int[]); - method public java.util.List getProcessesInErrorState(); - method @Deprecated public java.util.List getRecentTasks(int, int) throws java.lang.SecurityException; - method public java.util.List getRunningAppProcesses(); - method public android.app.PendingIntent getRunningServiceControlPanel(android.content.ComponentName) throws java.lang.SecurityException; - method @Deprecated public java.util.List getRunningServices(int) throws java.lang.SecurityException; - method @Deprecated public java.util.List getRunningTasks(int) throws java.lang.SecurityException; - method public boolean isActivityStartAllowedOnDisplay(@NonNull android.content.Context, int, @NonNull android.content.Intent); - method public boolean isBackgroundRestricted(); - method @Deprecated public boolean isInLockTaskMode(); - method public static boolean isLowMemoryKillReportSupported(); - method public boolean isLowRamDevice(); - method @Deprecated public static boolean isRunningInTestHarness(); - method public static boolean isRunningInUserTestHarness(); - method public static boolean isUserAMonkey(); - method @RequiresPermission(android.Manifest.permission.KILL_BACKGROUND_PROCESSES) public void killBackgroundProcesses(String); - method @RequiresPermission(android.Manifest.permission.REORDER_TASKS) public void moveTaskToFront(int, int); - method @RequiresPermission(android.Manifest.permission.REORDER_TASKS) public void moveTaskToFront(int, int, android.os.Bundle); - method @FlaggedApi("android.app.app_start_info") public void removeApplicationStartInfoCompletionListener(@NonNull java.util.function.Consumer); - method @Deprecated public void restartPackage(String); - method public void setProcessStateSummary(@Nullable byte[]); - method public static void setVrThread(int); - method public void setWatchHeapLimit(long); - field public static final String ACTION_REPORT_HEAP_LIMIT = "android.app.action.REPORT_HEAP_LIMIT"; - field public static final int LOCK_TASK_MODE_LOCKED = 1; // 0x1 - field public static final int LOCK_TASK_MODE_NONE = 0; // 0x0 - field public static final int LOCK_TASK_MODE_PINNED = 2; // 0x2 - field public static final String META_HOME_ALTERNATE = "android.app.home.alternate"; - field public static final int MOVE_TASK_NO_USER_ACTION = 2; // 0x2 - field public static final int MOVE_TASK_WITH_HOME = 1; // 0x1 - field public static final int RECENT_IGNORE_UNAVAILABLE = 2; // 0x2 - field public static final int RECENT_WITH_EXCLUDED = 1; // 0x1 - } - - public static class ActivityManager.AppTask { - method public void finishAndRemoveTask(); - method public android.app.ActivityManager.RecentTaskInfo getTaskInfo(); - method public void moveToFront(); - method public void setExcludeFromRecents(boolean); - method public void startActivity(android.content.Context, android.content.Intent, android.os.Bundle); - } - - public static class ActivityManager.MemoryInfo implements android.os.Parcelable { - ctor public ActivityManager.MemoryInfo(); - method public int describeContents(); - method public void readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public long advertisedMem; - field public long availMem; - field public boolean lowMemory; - field public long threshold; - field public long totalMem; - } - - public static class ActivityManager.ProcessErrorStateInfo implements android.os.Parcelable { - ctor public ActivityManager.ProcessErrorStateInfo(); - method public int describeContents(); - method public void readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CRASHED = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int NOT_RESPONDING = 2; // 0x2 - field public static final int NO_ERROR = 0; // 0x0 - field public int condition; - field public byte[] crashData; - field public String longMsg; - field public int pid; - field public String processName; - field public String shortMsg; - field public String stackTrace; - field public String tag; - field public int uid; - } - - public static class ActivityManager.RecentTaskInfo extends android.app.TaskInfo implements android.os.Parcelable { - ctor public ActivityManager.RecentTaskInfo(); - method public int describeContents(); - method public void readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @Deprecated public int affiliatedTaskId; - field @Deprecated public CharSequence description; - field @Deprecated public int id; - field @Deprecated public int persistentId; - } - - public static class ActivityManager.RunningAppProcessInfo implements android.os.Parcelable { - ctor public ActivityManager.RunningAppProcessInfo(); - ctor public ActivityManager.RunningAppProcessInfo(String, int, String[]); - method public int describeContents(); - method public void readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @Deprecated public static final int IMPORTANCE_BACKGROUND = 400; // 0x190 - field public static final int IMPORTANCE_CACHED = 400; // 0x190 - field public static final int IMPORTANCE_CANT_SAVE_STATE = 350; // 0x15e - field @Deprecated public static final int IMPORTANCE_EMPTY = 500; // 0x1f4 - field public static final int IMPORTANCE_FOREGROUND = 100; // 0x64 - field public static final int IMPORTANCE_FOREGROUND_SERVICE = 125; // 0x7d - field public static final int IMPORTANCE_GONE = 1000; // 0x3e8 - field public static final int IMPORTANCE_PERCEPTIBLE = 230; // 0xe6 - field public static final int IMPORTANCE_PERCEPTIBLE_PRE_26 = 130; // 0x82 - field public static final int IMPORTANCE_SERVICE = 300; // 0x12c - field public static final int IMPORTANCE_TOP_SLEEPING = 325; // 0x145 - field @Deprecated public static final int IMPORTANCE_TOP_SLEEPING_PRE_28 = 150; // 0x96 - field public static final int IMPORTANCE_VISIBLE = 200; // 0xc8 - field public static final int REASON_PROVIDER_IN_USE = 1; // 0x1 - field public static final int REASON_SERVICE_IN_USE = 2; // 0x2 - field public static final int REASON_UNKNOWN = 0; // 0x0 - field public int importance; - field public int importanceReasonCode; - field public android.content.ComponentName importanceReasonComponent; - field public int importanceReasonPid; - field public int lastTrimLevel; - field public int lru; - field public int pid; - field public String[] pkgList; - field public String processName; - field public int uid; - } - - public static class ActivityManager.RunningServiceInfo implements android.os.Parcelable { - ctor public ActivityManager.RunningServiceInfo(); - method public int describeContents(); - method public void readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_FOREGROUND = 2; // 0x2 - field public static final int FLAG_PERSISTENT_PROCESS = 8; // 0x8 - field public static final int FLAG_STARTED = 1; // 0x1 - field public static final int FLAG_SYSTEM_PROCESS = 4; // 0x4 - field public long activeSince; - field public int clientCount; - field public int clientLabel; - field public String clientPackage; - field public int crashCount; - field public int flags; - field public boolean foreground; - field public long lastActivityTime; - field public int pid; - field public String process; - field public long restarting; - field public android.content.ComponentName service; - field public boolean started; - field public int uid; - } - - public static class ActivityManager.RunningTaskInfo extends android.app.TaskInfo implements android.os.Parcelable { - ctor public ActivityManager.RunningTaskInfo(); - method public int describeContents(); - method public void readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @Deprecated public CharSequence description; - field @Deprecated public int id; - field @Deprecated public int numRunning; - field @Deprecated public android.graphics.Bitmap thumbnail; - } - - public static class ActivityManager.TaskDescription implements android.os.Parcelable { - ctor @Deprecated public ActivityManager.TaskDescription(String, @DrawableRes int, int); - ctor @Deprecated public ActivityManager.TaskDescription(String, @DrawableRes int); - ctor @Deprecated public ActivityManager.TaskDescription(String); - ctor @Deprecated public ActivityManager.TaskDescription(); - ctor @Deprecated public ActivityManager.TaskDescription(String, android.graphics.Bitmap, int); - ctor @Deprecated public ActivityManager.TaskDescription(String, android.graphics.Bitmap); - ctor public ActivityManager.TaskDescription(android.app.ActivityManager.TaskDescription); - method public int describeContents(); - method @ColorInt public int getBackgroundColor(); - method @Deprecated public android.graphics.Bitmap getIcon(); - method public String getLabel(); - method @ColorInt public int getNavigationBarColor(); - method @ColorInt public int getPrimaryColor(); - method @ColorInt public int getStatusBarColor(); - method public void readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class ActivityManager.TaskDescription.Builder { - ctor public ActivityManager.TaskDescription.Builder(); - method @NonNull public android.app.ActivityManager.TaskDescription build(); - method @NonNull public android.app.ActivityManager.TaskDescription.Builder setBackgroundColor(@ColorInt int); - method @NonNull public android.app.ActivityManager.TaskDescription.Builder setIcon(@DrawableRes int); - method @NonNull public android.app.ActivityManager.TaskDescription.Builder setLabel(@Nullable String); - method @NonNull public android.app.ActivityManager.TaskDescription.Builder setNavigationBarColor(@ColorInt int); - method @NonNull public android.app.ActivityManager.TaskDescription.Builder setPrimaryColor(@ColorInt int); - method @NonNull public android.app.ActivityManager.TaskDescription.Builder setStatusBarColor(@ColorInt int); - } - - public class ActivityOptions { - method @Nullable public android.graphics.Rect getLaunchBounds(); - method public int getLaunchDisplayId(); - method public boolean getLockTaskMode(); - method public int getPendingIntentBackgroundActivityStartMode(); - method public int getPendingIntentCreatorBackgroundActivityStartMode(); - method public int getSplashScreenStyle(); - method @FlaggedApi("com.android.window.flags.touch_pass_through_opt_in") public boolean isAllowPassThroughOnTouchOutside(); - method @Deprecated public boolean isPendingIntentBackgroundActivityLaunchAllowed(); - method public boolean isShareIdentityEnabled(); - method public static android.app.ActivityOptions makeBasic(); - method public static android.app.ActivityOptions makeClipRevealAnimation(android.view.View, int, int, int, int); - method public static android.app.ActivityOptions makeCustomAnimation(android.content.Context, int, int); - method @NonNull public static android.app.ActivityOptions makeCustomAnimation(@NonNull android.content.Context, int, int, int); - method @NonNull public static android.app.ActivityOptions makeLaunchIntoPip(@NonNull android.app.PictureInPictureParams); - method public static android.app.ActivityOptions makeScaleUpAnimation(android.view.View, int, int, int, int); - method public static android.app.ActivityOptions makeSceneTransitionAnimation(android.app.Activity, android.view.View, String); - method @java.lang.SafeVarargs public static android.app.ActivityOptions makeSceneTransitionAnimation(android.app.Activity, android.util.Pair...); - method public static android.app.ActivityOptions makeTaskLaunchBehind(); - method public static android.app.ActivityOptions makeThumbnailScaleUpAnimation(android.view.View, android.graphics.Bitmap, int, int); - method public void requestUsageTimeReport(android.app.PendingIntent); - method @FlaggedApi("com.android.window.flags.touch_pass_through_opt_in") public void setAllowPassThroughOnTouchOutside(boolean); - method public android.app.ActivityOptions setAppVerificationBundle(android.os.Bundle); - method public android.app.ActivityOptions setLaunchBounds(@Nullable android.graphics.Rect); - method public android.app.ActivityOptions setLaunchDisplayId(int); - method public android.app.ActivityOptions setLockTaskEnabled(boolean); - method @Deprecated public void setPendingIntentBackgroundActivityLaunchAllowed(boolean); - method @NonNull public android.app.ActivityOptions setPendingIntentBackgroundActivityStartMode(int); - method @NonNull public android.app.ActivityOptions setPendingIntentCreatorBackgroundActivityStartMode(int); - method @NonNull public android.app.ActivityOptions setShareIdentityEnabled(boolean); - method @NonNull public android.app.ActivityOptions setSplashScreenStyle(int); - method public android.os.Bundle toBundle(); - method public void update(android.app.ActivityOptions); - field public static final String EXTRA_USAGE_TIME_REPORT = "android.activity.usage_time"; - field public static final String EXTRA_USAGE_TIME_REPORT_PACKAGES = "android.usage_time_packages"; - field @Deprecated @FlaggedApi("com.android.window.flags.bal_additional_start_modes") public static final int MODE_BACKGROUND_ACTIVITY_START_ALLOWED = 1; // 0x1 - field @FlaggedApi("com.android.window.flags.bal_additional_start_modes") public static final int MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS = 3; // 0x3 - field @FlaggedApi("com.android.window.flags.bal_additional_start_modes") public static final int MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE = 4; // 0x4 - field public static final int MODE_BACKGROUND_ACTIVITY_START_DENIED = 2; // 0x2 - field public static final int MODE_BACKGROUND_ACTIVITY_START_SYSTEM_DEFINED = 0; // 0x0 - } - - public class AlarmManager { - method public boolean canScheduleExactAlarms(); - method public void cancel(@NonNull android.app.PendingIntent); - method public void cancel(@NonNull android.app.AlarmManager.OnAlarmListener); - method public void cancelAll(); - method public android.app.AlarmManager.AlarmClockInfo getNextAlarmClock(); - method public void set(int, long, @NonNull android.app.PendingIntent); - method public void set(int, long, @Nullable String, @NonNull android.app.AlarmManager.OnAlarmListener, @Nullable android.os.Handler); - method @RequiresPermission(android.Manifest.permission.SCHEDULE_EXACT_ALARM) public void setAlarmClock(@NonNull android.app.AlarmManager.AlarmClockInfo, @NonNull android.app.PendingIntent); - method public void setAndAllowWhileIdle(int, long, @NonNull android.app.PendingIntent); - method @RequiresPermission(value=android.Manifest.permission.SCHEDULE_EXACT_ALARM, conditional=true) public void setExact(int, long, @NonNull android.app.PendingIntent); - method public void setExact(int, long, @Nullable String, @NonNull android.app.AlarmManager.OnAlarmListener, @Nullable android.os.Handler); - method @RequiresPermission(value=android.Manifest.permission.SCHEDULE_EXACT_ALARM, conditional=true) public void setExactAndAllowWhileIdle(int, long, @NonNull android.app.PendingIntent); - method public void setInexactRepeating(int, long, long, @NonNull android.app.PendingIntent); - method public void setRepeating(int, long, long, @NonNull android.app.PendingIntent); - method @RequiresPermission(android.Manifest.permission.SET_TIME) public void setTime(long); - method @RequiresPermission(android.Manifest.permission.SET_TIME_ZONE) public void setTimeZone(String); - method public void setWindow(int, long, long, @NonNull android.app.PendingIntent); - method public void setWindow(int, long, long, @Nullable String, @NonNull android.app.AlarmManager.OnAlarmListener, @Nullable android.os.Handler); - method public void setWindow(int, long, long, @Nullable String, @NonNull java.util.concurrent.Executor, @NonNull android.app.AlarmManager.OnAlarmListener); - field public static final String ACTION_NEXT_ALARM_CLOCK_CHANGED = "android.app.action.NEXT_ALARM_CLOCK_CHANGED"; - field public static final String ACTION_SCHEDULE_EXACT_ALARM_PERMISSION_STATE_CHANGED = "android.app.action.SCHEDULE_EXACT_ALARM_PERMISSION_STATE_CHANGED"; - field public static final int ELAPSED_REALTIME = 3; // 0x3 - field public static final int ELAPSED_REALTIME_WAKEUP = 2; // 0x2 - field public static final long INTERVAL_DAY = 86400000L; // 0x5265c00L - field public static final long INTERVAL_FIFTEEN_MINUTES = 900000L; // 0xdbba0L - field public static final long INTERVAL_HALF_DAY = 43200000L; // 0x2932e00L - field public static final long INTERVAL_HALF_HOUR = 1800000L; // 0x1b7740L - field public static final long INTERVAL_HOUR = 3600000L; // 0x36ee80L - field public static final int RTC = 1; // 0x1 - field public static final int RTC_WAKEUP = 0; // 0x0 - } - - public static final class AlarmManager.AlarmClockInfo implements android.os.Parcelable { - ctor public AlarmManager.AlarmClockInfo(long, android.app.PendingIntent); - method public int describeContents(); - method public android.app.PendingIntent getShowIntent(); - method public long getTriggerTime(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static interface AlarmManager.OnAlarmListener { - method public void onAlarm(); - } - - public class AlertDialog extends android.app.Dialog implements android.content.DialogInterface { - ctor protected AlertDialog(android.content.Context); - ctor protected AlertDialog(android.content.Context, boolean, android.content.DialogInterface.OnCancelListener); - ctor protected AlertDialog(android.content.Context, @StyleRes int); - method public android.widget.Button getButton(int); - method public android.widget.ListView getListView(); - method public void setButton(int, CharSequence, android.os.Message); - method public void setButton(int, CharSequence, android.content.DialogInterface.OnClickListener); - method @Deprecated public void setButton(CharSequence, android.os.Message); - method @Deprecated public void setButton(CharSequence, android.content.DialogInterface.OnClickListener); - method @Deprecated public void setButton2(CharSequence, android.os.Message); - method @Deprecated public void setButton2(CharSequence, android.content.DialogInterface.OnClickListener); - method @Deprecated public void setButton3(CharSequence, android.os.Message); - method @Deprecated public void setButton3(CharSequence, android.content.DialogInterface.OnClickListener); - method public void setCustomTitle(android.view.View); - method public void setIcon(@DrawableRes int); - method public void setIcon(android.graphics.drawable.Drawable); - method public void setIconAttribute(@AttrRes int); - method public void setInverseBackgroundForced(boolean); - method public void setMessage(CharSequence); - method public void setView(android.view.View); - method public void setView(android.view.View, int, int, int, int); - field @Deprecated public static final int THEME_DEVICE_DEFAULT_DARK = 4; // 0x4 - field @Deprecated public static final int THEME_DEVICE_DEFAULT_LIGHT = 5; // 0x5 - field @Deprecated public static final int THEME_HOLO_DARK = 2; // 0x2 - field @Deprecated public static final int THEME_HOLO_LIGHT = 3; // 0x3 - field @Deprecated public static final int THEME_TRADITIONAL = 1; // 0x1 - } - - public static class AlertDialog.Builder { - ctor public AlertDialog.Builder(android.content.Context); - ctor public AlertDialog.Builder(android.content.Context, int); - method public android.app.AlertDialog create(); - method public android.content.Context getContext(); - method public android.app.AlertDialog.Builder setAdapter(android.widget.ListAdapter, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setCancelable(boolean); - method public android.app.AlertDialog.Builder setCursor(android.database.Cursor, android.content.DialogInterface.OnClickListener, String); - method public android.app.AlertDialog.Builder setCustomTitle(android.view.View); - method public android.app.AlertDialog.Builder setIcon(@DrawableRes int); - method public android.app.AlertDialog.Builder setIcon(android.graphics.drawable.Drawable); - method public android.app.AlertDialog.Builder setIconAttribute(@AttrRes int); - method @Deprecated public android.app.AlertDialog.Builder setInverseBackgroundForced(boolean); - method public android.app.AlertDialog.Builder setItems(@ArrayRes int, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setItems(CharSequence[], android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setMessage(@StringRes int); - method public android.app.AlertDialog.Builder setMessage(CharSequence); - method public android.app.AlertDialog.Builder setMultiChoiceItems(@ArrayRes int, boolean[], android.content.DialogInterface.OnMultiChoiceClickListener); - method public android.app.AlertDialog.Builder setMultiChoiceItems(CharSequence[], boolean[], android.content.DialogInterface.OnMultiChoiceClickListener); - method public android.app.AlertDialog.Builder setMultiChoiceItems(android.database.Cursor, String, String, android.content.DialogInterface.OnMultiChoiceClickListener); - method public android.app.AlertDialog.Builder setNegativeButton(@StringRes int, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setNegativeButton(CharSequence, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setNeutralButton(@StringRes int, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setNeutralButton(CharSequence, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setOnCancelListener(android.content.DialogInterface.OnCancelListener); - method public android.app.AlertDialog.Builder setOnDismissListener(android.content.DialogInterface.OnDismissListener); - method public android.app.AlertDialog.Builder setOnItemSelectedListener(android.widget.AdapterView.OnItemSelectedListener); - method public android.app.AlertDialog.Builder setOnKeyListener(android.content.DialogInterface.OnKeyListener); - method public android.app.AlertDialog.Builder setPositiveButton(@StringRes int, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setPositiveButton(CharSequence, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setSingleChoiceItems(@ArrayRes int, int, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setSingleChoiceItems(android.database.Cursor, int, String, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setSingleChoiceItems(CharSequence[], int, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setSingleChoiceItems(android.widget.ListAdapter, int, android.content.DialogInterface.OnClickListener); - method public android.app.AlertDialog.Builder setTitle(@StringRes int); - method public android.app.AlertDialog.Builder setTitle(CharSequence); - method public android.app.AlertDialog.Builder setView(int); - method public android.app.AlertDialog.Builder setView(android.view.View); - method public android.app.AlertDialog show(); - } - - @Deprecated public class AliasActivity extends android.app.Activity { - ctor @Deprecated public AliasActivity(); - } - - public class AppComponentFactory { - ctor public AppComponentFactory(); - method @NonNull public android.app.Activity instantiateActivity(@NonNull ClassLoader, @NonNull String, @Nullable android.content.Intent) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; - method @NonNull public android.app.Application instantiateApplication(@NonNull ClassLoader, @NonNull String) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; - method @NonNull public ClassLoader instantiateClassLoader(@NonNull ClassLoader, @NonNull android.content.pm.ApplicationInfo); - method @NonNull public android.content.ContentProvider instantiateProvider(@NonNull ClassLoader, @NonNull String) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; - method @NonNull public android.content.BroadcastReceiver instantiateReceiver(@NonNull ClassLoader, @NonNull String, @Nullable android.content.Intent) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; - method @NonNull public android.app.Service instantiateService(@NonNull ClassLoader, @NonNull String, @Nullable android.content.Intent) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; - } - - public class AppOpsManager { - method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOp(@NonNull String, int, @NonNull String); - method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOp(@NonNull String, int, @NonNull String, @Nullable String); - method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOpNoThrow(@NonNull String, int, @NonNull String, @Nullable String); - method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOpNoThrow(@NonNull String, int, @NonNull String); - method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOpRawNoThrow(@NonNull String, int, @NonNull String, @Nullable String); - method @Deprecated public void checkPackage(int, @NonNull String); - method @Deprecated public void finishOp(@NonNull String, int, @NonNull String); - method public void finishOp(@NonNull String, int, @NonNull String, @Nullable String); - method public void finishProxyOp(@NonNull String, int, @NonNull String, @Nullable String); - method public boolean isOpActive(@NonNull String, int, @NonNull String); - method @Deprecated public int noteOp(@NonNull String, int, @NonNull String); - method public int noteOp(@NonNull String, int, @Nullable String, @Nullable String, @Nullable String); - method @Deprecated public int noteOpNoThrow(@NonNull String, int, @NonNull String); - method public int noteOpNoThrow(@NonNull String, int, @NonNull String, @Nullable String, @Nullable String); - method @Deprecated public int noteProxyOp(@NonNull String, @NonNull String); - method public int noteProxyOp(@NonNull String, @Nullable String, int, @Nullable String, @Nullable String); - method @Deprecated public int noteProxyOpNoThrow(@NonNull String, @NonNull String); - method @Deprecated public int noteProxyOpNoThrow(@NonNull String, @Nullable String, int); - method public int noteProxyOpNoThrow(@NonNull String, @Nullable String, int, @Nullable String, @Nullable String); - method @Nullable public static String permissionToOp(@NonNull String); - method public void setOnOpNotedCallback(@Nullable java.util.concurrent.Executor, @Nullable android.app.AppOpsManager.OnOpNotedCallback); - method @FlaggedApi("android.permission.flags.sync_on_op_noted_api") public void setOnOpNotedCallback(@Nullable java.util.concurrent.Executor, @Nullable android.app.AppOpsManager.OnOpNotedCallback, int); - method @Deprecated public int startOp(@NonNull String, int, @NonNull String); - method public int startOp(@NonNull String, int, @Nullable String, @Nullable String, @Nullable String); - method @Deprecated public int startOpNoThrow(@NonNull String, int, @NonNull String); - method public int startOpNoThrow(@NonNull String, int, @NonNull String, @Nullable String, @Nullable String); - method public int startProxyOp(@NonNull String, int, @NonNull String, @Nullable String, @Nullable String); - method public int startProxyOpNoThrow(@NonNull String, int, @NonNull String, @Nullable String, @Nullable String); - method public void startWatchingActive(@NonNull String[], @NonNull java.util.concurrent.Executor, @NonNull android.app.AppOpsManager.OnOpActiveChangedListener); - method public void startWatchingMode(@NonNull String, @Nullable String, @NonNull android.app.AppOpsManager.OnOpChangedListener); - method public void startWatchingMode(@NonNull String, @Nullable String, int, @NonNull android.app.AppOpsManager.OnOpChangedListener); - method public void stopWatchingActive(@NonNull android.app.AppOpsManager.OnOpActiveChangedListener); - method public void stopWatchingMode(@NonNull android.app.AppOpsManager.OnOpChangedListener); - method @Deprecated @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int unsafeCheckOp(@NonNull String, int, @NonNull String); - method @Deprecated @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int unsafeCheckOpNoThrow(@NonNull String, int, @NonNull String); - method @Deprecated @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int unsafeCheckOpRaw(@NonNull String, int, @NonNull String); - method @Deprecated @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int unsafeCheckOpRawNoThrow(@NonNull String, int, @NonNull String); - field public static final int MODE_ALLOWED = 0; // 0x0 - field public static final int MODE_DEFAULT = 3; // 0x3 - field public static final int MODE_ERRORED = 2; // 0x2 - field public static final int MODE_FOREGROUND = 4; // 0x4 - field public static final int MODE_IGNORED = 1; // 0x1 - field public static final String OPSTR_ADD_VOICEMAIL = "android:add_voicemail"; - field public static final String OPSTR_ANSWER_PHONE_CALLS = "android:answer_phone_calls"; - field public static final String OPSTR_BODY_SENSORS = "android:body_sensors"; - field public static final String OPSTR_CALL_PHONE = "android:call_phone"; - field public static final String OPSTR_CAMERA = "android:camera"; - field public static final String OPSTR_COARSE_LOCATION = "android:coarse_location"; - field public static final String OPSTR_FINE_LOCATION = "android:fine_location"; - field public static final String OPSTR_GET_USAGE_STATS = "android:get_usage_stats"; - field public static final String OPSTR_MOCK_LOCATION = "android:mock_location"; - field public static final String OPSTR_MONITOR_HIGH_POWER_LOCATION = "android:monitor_location_high_power"; - field public static final String OPSTR_MONITOR_LOCATION = "android:monitor_location"; - field public static final String OPSTR_PICTURE_IN_PICTURE = "android:picture_in_picture"; - field public static final String OPSTR_PROCESS_OUTGOING_CALLS = "android:process_outgoing_calls"; - field public static final String OPSTR_READ_CALENDAR = "android:read_calendar"; - field public static final String OPSTR_READ_CALL_LOG = "android:read_call_log"; - field public static final String OPSTR_READ_CELL_BROADCASTS = "android:read_cell_broadcasts"; - field public static final String OPSTR_READ_CONTACTS = "android:read_contacts"; - field public static final String OPSTR_READ_EXTERNAL_STORAGE = "android:read_external_storage"; - field public static final String OPSTR_READ_PHONE_NUMBERS = "android:read_phone_numbers"; - field public static final String OPSTR_READ_PHONE_STATE = "android:read_phone_state"; - field public static final String OPSTR_READ_SMS = "android:read_sms"; - field public static final String OPSTR_RECEIVE_MMS = "android:receive_mms"; - field public static final String OPSTR_RECEIVE_SMS = "android:receive_sms"; - field public static final String OPSTR_RECEIVE_WAP_PUSH = "android:receive_wap_push"; - field public static final String OPSTR_RECORD_AUDIO = "android:record_audio"; - field public static final String OPSTR_SEND_SMS = "android:send_sms"; - field public static final String OPSTR_SYSTEM_ALERT_WINDOW = "android:system_alert_window"; - field public static final String OPSTR_USE_FINGERPRINT = "android:use_fingerprint"; - field public static final String OPSTR_USE_SIP = "android:use_sip"; - field public static final String OPSTR_WRITE_CALENDAR = "android:write_calendar"; - field public static final String OPSTR_WRITE_CALL_LOG = "android:write_call_log"; - field public static final String OPSTR_WRITE_CONTACTS = "android:write_contacts"; - field public static final String OPSTR_WRITE_EXTERNAL_STORAGE = "android:write_external_storage"; - field public static final String OPSTR_WRITE_SETTINGS = "android:write_settings"; - field @FlaggedApi("android.permission.flags.sync_on_op_noted_api") public static final int OP_NOTED_CALLBACK_FLAG_IGNORE_ASYNC = 1; // 0x1 - field public static final int WATCH_FOREGROUND_CHANGES = 1; // 0x1 - } - - public static interface AppOpsManager.OnOpActiveChangedListener { - method public void onOpActiveChanged(@NonNull String, int, @NonNull String, boolean); - method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public default void onOpActiveChanged(@NonNull String, int, @NonNull String, @Nullable String, int, boolean, int, int); - } - - public static interface AppOpsManager.OnOpChangedListener { - method public void onOpChanged(String, String); - method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public default void onOpChanged(@NonNull String, @NonNull String, int, @NonNull String); - } - - public abstract static class AppOpsManager.OnOpNotedCallback { - ctor public AppOpsManager.OnOpNotedCallback(); - method public abstract void onAsyncNoted(@NonNull android.app.AsyncNotedAppOp); - method public abstract void onNoted(@NonNull android.app.SyncNotedAppOp); - method public abstract void onSelfNoted(@NonNull android.app.SyncNotedAppOp); - } - - public class Application extends android.content.ContextWrapper implements android.content.ComponentCallbacks2 { - ctor public Application(); - method public static String getProcessName(); - method @CallSuper public void onConfigurationChanged(@NonNull android.content.res.Configuration); - method @CallSuper public void onCreate(); - method @CallSuper public void onLowMemory(); - method @CallSuper public void onTerminate(); - method @CallSuper public void onTrimMemory(int); - method public void registerActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks); - method public void registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener); - method public void unregisterActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks); - method public void unregisterOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener); - } - - public static interface Application.ActivityLifecycleCallbacks { - method public void onActivityCreated(@NonNull android.app.Activity, @Nullable android.os.Bundle); - method public void onActivityDestroyed(@NonNull android.app.Activity); - method public void onActivityPaused(@NonNull android.app.Activity); - method public default void onActivityPostCreated(@NonNull android.app.Activity, @Nullable android.os.Bundle); - method public default void onActivityPostDestroyed(@NonNull android.app.Activity); - method public default void onActivityPostPaused(@NonNull android.app.Activity); - method public default void onActivityPostResumed(@NonNull android.app.Activity); - method public default void onActivityPostSaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); - method public default void onActivityPostStarted(@NonNull android.app.Activity); - method public default void onActivityPostStopped(@NonNull android.app.Activity); - method public default void onActivityPreCreated(@NonNull android.app.Activity, @Nullable android.os.Bundle); - method public default void onActivityPreDestroyed(@NonNull android.app.Activity); - method public default void onActivityPrePaused(@NonNull android.app.Activity); - method public default void onActivityPreResumed(@NonNull android.app.Activity); - method public default void onActivityPreSaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); - method public default void onActivityPreStarted(@NonNull android.app.Activity); - method public default void onActivityPreStopped(@NonNull android.app.Activity); - method public void onActivityResumed(@NonNull android.app.Activity); - method public void onActivitySaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); - method public void onActivityStarted(@NonNull android.app.Activity); - method public void onActivityStopped(@NonNull android.app.Activity); - } - - public static interface Application.OnProvideAssistDataListener { - method public void onProvideAssistData(android.app.Activity, android.os.Bundle); - } - - public class ApplicationErrorReport implements android.os.Parcelable { - ctor public ApplicationErrorReport(); - method public int describeContents(); - method public void dump(android.util.Printer, String); - method public static android.content.ComponentName getErrorReportReceiver(android.content.Context, String, int); - method public void readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_ANR = 2; // 0x2 - field public static final int TYPE_BATTERY = 3; // 0x3 - field public static final int TYPE_CRASH = 1; // 0x1 - field public static final int TYPE_NONE = 0; // 0x0 - field public static final int TYPE_RUNNING_SERVICE = 5; // 0x5 - field public android.app.ApplicationErrorReport.AnrInfo anrInfo; - field public android.app.ApplicationErrorReport.BatteryInfo batteryInfo; - field public android.app.ApplicationErrorReport.CrashInfo crashInfo; - field public String installerPackageName; - field public String packageName; - field public String processName; - field public android.app.ApplicationErrorReport.RunningServiceInfo runningServiceInfo; - field public boolean systemApp; - field public long time; - field public int type; - } - - public static class ApplicationErrorReport.AnrInfo { - ctor public ApplicationErrorReport.AnrInfo(); - ctor public ApplicationErrorReport.AnrInfo(android.os.Parcel); - method public void dump(android.util.Printer, String); - method public void writeToParcel(android.os.Parcel, int); - field public String activity; - field public String cause; - field public String info; - } - - public static class ApplicationErrorReport.BatteryInfo { - ctor public ApplicationErrorReport.BatteryInfo(); - ctor public ApplicationErrorReport.BatteryInfo(android.os.Parcel); - method public void dump(android.util.Printer, String); - method public void writeToParcel(android.os.Parcel, int); - field public String checkinDetails; - field public long durationMicros; - field public String usageDetails; - field public int usagePercent; - } - - public static class ApplicationErrorReport.CrashInfo { - ctor public ApplicationErrorReport.CrashInfo(); - ctor public ApplicationErrorReport.CrashInfo(Throwable); - ctor public ApplicationErrorReport.CrashInfo(android.os.Parcel); - method public void dump(android.util.Printer, String); - method public void writeToParcel(android.os.Parcel, int); - field public String exceptionClassName; - field public String exceptionMessage; - field public String stackTrace; - field public String throwClassName; - field public String throwFileName; - field public int throwLineNumber; - field public String throwMethodName; - } - - public static class ApplicationErrorReport.RunningServiceInfo { - ctor public ApplicationErrorReport.RunningServiceInfo(); - ctor public ApplicationErrorReport.RunningServiceInfo(android.os.Parcel); - method public void dump(android.util.Printer, String); - method public void writeToParcel(android.os.Parcel, int); - field public long durationMillis; - field public String serviceDetails; - } - - public final class ApplicationExitInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getDefiningUid(); - method @Nullable public String getDescription(); - method public int getImportance(); - method public int getPackageUid(); - method public int getPid(); - method @NonNull public String getProcessName(); - method @Nullable public byte[] getProcessStateSummary(); - method public long getPss(); - method public int getRealUid(); - method public int getReason(); - method public long getRss(); - method public int getStatus(); - method public long getTimestamp(); - method @Nullable public java.io.InputStream getTraceInputStream() throws java.io.IOException; - method @NonNull public android.os.UserHandle getUserHandle(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int REASON_ANR = 6; // 0x6 - field public static final int REASON_CRASH = 4; // 0x4 - field public static final int REASON_CRASH_NATIVE = 5; // 0x5 - field public static final int REASON_DEPENDENCY_DIED = 12; // 0xc - field public static final int REASON_EXCESSIVE_RESOURCE_USAGE = 9; // 0x9 - field public static final int REASON_EXIT_SELF = 1; // 0x1 - field public static final int REASON_FREEZER = 14; // 0xe - field public static final int REASON_INITIALIZATION_FAILURE = 7; // 0x7 - field public static final int REASON_LOW_MEMORY = 3; // 0x3 - field public static final int REASON_OTHER = 13; // 0xd - field public static final int REASON_PACKAGE_STATE_CHANGE = 15; // 0xf - field public static final int REASON_PACKAGE_UPDATED = 16; // 0x10 - field public static final int REASON_PERMISSION_CHANGE = 8; // 0x8 - field public static final int REASON_SIGNALED = 2; // 0x2 - field public static final int REASON_UNKNOWN = 0; // 0x0 - field public static final int REASON_USER_REQUESTED = 10; // 0xa - field public static final int REASON_USER_STOPPED = 11; // 0xb - } - - @FlaggedApi("android.app.app_start_info") public final class ApplicationStartInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getDefiningUid(); - method @Nullable public android.content.Intent getIntent(); - method public int getLaunchMode(); - method public int getPackageUid(); - method public int getPid(); - method @NonNull public String getProcessName(); - method public int getRealUid(); - method public int getReason(); - method @FlaggedApi("android.app.app_start_info_component") public int getStartComponent(); - method public int getStartType(); - method public int getStartupState(); - method @NonNull public java.util.Map getStartupTimestamps(); - method @FlaggedApi("android.content.pm.stay_stopped") public boolean wasForceStopped(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int LAUNCH_MODE_SINGLE_INSTANCE = 2; // 0x2 - field public static final int LAUNCH_MODE_SINGLE_INSTANCE_PER_TASK = 4; // 0x4 - field public static final int LAUNCH_MODE_SINGLE_TASK = 3; // 0x3 - field public static final int LAUNCH_MODE_SINGLE_TOP = 1; // 0x1 - field public static final int LAUNCH_MODE_STANDARD = 0; // 0x0 - field public static final int STARTUP_STATE_ERROR = 1; // 0x1 - field public static final int STARTUP_STATE_FIRST_FRAME_DRAWN = 2; // 0x2 - field public static final int STARTUP_STATE_STARTED = 0; // 0x0 - field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_ACTIVITY = 1; // 0x1 - field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_BROADCAST = 2; // 0x2 - field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_CONTENT_PROVIDER = 3; // 0x3 - field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_OTHER = 5; // 0x5 - field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_SERVICE = 4; // 0x4 - field public static final int START_REASON_ALARM = 0; // 0x0 - field public static final int START_REASON_BACKUP = 1; // 0x1 - field public static final int START_REASON_BOOT_COMPLETE = 2; // 0x2 - field public static final int START_REASON_BROADCAST = 3; // 0x3 - field public static final int START_REASON_CONTENT_PROVIDER = 4; // 0x4 - field public static final int START_REASON_JOB = 5; // 0x5 - field public static final int START_REASON_LAUNCHER = 6; // 0x6 - field public static final int START_REASON_LAUNCHER_RECENTS = 7; // 0x7 - field public static final int START_REASON_OTHER = 8; // 0x8 - field public static final int START_REASON_PUSH = 9; // 0x9 - field public static final int START_REASON_SERVICE = 10; // 0xa - field public static final int START_REASON_START_ACTIVITY = 11; // 0xb - field public static final int START_TIMESTAMP_APPLICATION_ONCREATE = 2; // 0x2 - field public static final int START_TIMESTAMP_BIND_APPLICATION = 3; // 0x3 - field public static final int START_TIMESTAMP_FIRST_FRAME = 4; // 0x4 - field public static final int START_TIMESTAMP_FORK = 1; // 0x1 - field public static final int START_TIMESTAMP_FULLY_DRAWN = 5; // 0x5 - field public static final int START_TIMESTAMP_INITIAL_RENDERTHREAD_FRAME = 6; // 0x6 - field public static final int START_TIMESTAMP_LAUNCH = 0; // 0x0 - field public static final int START_TIMESTAMP_RESERVED_RANGE_DEVELOPER = 30; // 0x1e - field public static final int START_TIMESTAMP_RESERVED_RANGE_DEVELOPER_START = 21; // 0x15 - field public static final int START_TIMESTAMP_RESERVED_RANGE_SYSTEM = 20; // 0x14 - field public static final int START_TIMESTAMP_SURFACEFLINGER_COMPOSITION_COMPLETE = 7; // 0x7 - field public static final int START_TYPE_COLD = 1; // 0x1 - field public static final int START_TYPE_HOT = 3; // 0x3 - field public static final int START_TYPE_UNSET = 0; // 0x0 - field public static final int START_TYPE_WARM = 2; // 0x2 - } - - public final class AsyncNotedAppOp implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getAttributionTag(); - method @NonNull public String getMessage(); - method @IntRange(from=0) public int getNotingUid(); - method @NonNull public String getOp(); - method public long getTime(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class AuthenticationRequiredException extends java.lang.SecurityException implements android.os.Parcelable { - ctor public AuthenticationRequiredException(Throwable, android.app.PendingIntent); - method public int describeContents(); - method public android.app.PendingIntent getUserAction(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class AutomaticZenRule implements android.os.Parcelable { - ctor @Deprecated public AutomaticZenRule(String, android.content.ComponentName, android.net.Uri, int, boolean); - ctor public AutomaticZenRule(@NonNull String, @Nullable android.content.ComponentName, @Nullable android.content.ComponentName, @NonNull android.net.Uri, @Nullable android.service.notification.ZenPolicy, int, boolean); - ctor public AutomaticZenRule(android.os.Parcel); - method public int describeContents(); - method public android.net.Uri getConditionId(); - method @Nullable public android.content.ComponentName getConfigurationActivity(); - method public long getCreationTime(); - method @FlaggedApi("android.app.modes_api") @Nullable public android.service.notification.ZenDeviceEffects getDeviceEffects(); - method @FlaggedApi("android.app.modes_api") @DrawableRes public int getIconResId(); - method public int getInterruptionFilter(); - method public String getName(); - method public android.content.ComponentName getOwner(); - method @FlaggedApi("android.app.modes_api") @Nullable public String getTriggerDescription(); - method @FlaggedApi("android.app.modes_api") public int getType(); - method @Nullable public android.service.notification.ZenPolicy getZenPolicy(); - method public boolean isEnabled(); - method @FlaggedApi("android.app.modes_api") public boolean isManualInvocationAllowed(); - method public void setConditionId(android.net.Uri); - method public void setConfigurationActivity(@Nullable android.content.ComponentName); - method @FlaggedApi("android.app.modes_api") public void setDeviceEffects(@Nullable android.service.notification.ZenDeviceEffects); - method public void setEnabled(boolean); - method public void setInterruptionFilter(int); - method public void setName(String); - method public void setZenPolicy(@Nullable android.service.notification.ZenPolicy); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @FlaggedApi("android.app.modes_api") public static final int TYPE_BEDTIME = 3; // 0x3 - field @FlaggedApi("android.app.modes_api") public static final int TYPE_DRIVING = 4; // 0x4 - field @FlaggedApi("android.app.modes_api") public static final int TYPE_IMMERSIVE = 5; // 0x5 - field @FlaggedApi("android.app.modes_api") public static final int TYPE_MANAGED = 7; // 0x7 - field @FlaggedApi("android.app.modes_api") public static final int TYPE_OTHER = 0; // 0x0 - field @FlaggedApi("android.app.modes_api") public static final int TYPE_SCHEDULE_CALENDAR = 2; // 0x2 - field @FlaggedApi("android.app.modes_api") public static final int TYPE_SCHEDULE_TIME = 1; // 0x1 - field @FlaggedApi("android.app.modes_api") public static final int TYPE_THEATER = 6; // 0x6 - field @FlaggedApi("android.app.modes_api") public static final int TYPE_UNKNOWN = -1; // 0xffffffff - } - - @FlaggedApi("android.app.modes_api") public static final class AutomaticZenRule.Builder { - ctor public AutomaticZenRule.Builder(@NonNull android.app.AutomaticZenRule); - ctor public AutomaticZenRule.Builder(@NonNull String, @NonNull android.net.Uri); - method @NonNull public android.app.AutomaticZenRule build(); - method @NonNull public android.app.AutomaticZenRule.Builder setConditionId(@NonNull android.net.Uri); - method @NonNull public android.app.AutomaticZenRule.Builder setConfigurationActivity(@Nullable android.content.ComponentName); - method @NonNull public android.app.AutomaticZenRule.Builder setDeviceEffects(@Nullable android.service.notification.ZenDeviceEffects); - method @NonNull public android.app.AutomaticZenRule.Builder setEnabled(boolean); - method @NonNull public android.app.AutomaticZenRule.Builder setIconResId(@DrawableRes int); - method @NonNull public android.app.AutomaticZenRule.Builder setInterruptionFilter(int); - method @NonNull public android.app.AutomaticZenRule.Builder setManualInvocationAllowed(boolean); - method @NonNull public android.app.AutomaticZenRule.Builder setName(@NonNull String); - method @NonNull public android.app.AutomaticZenRule.Builder setOwner(@Nullable android.content.ComponentName); - method @NonNull public android.app.AutomaticZenRule.Builder setTriggerDescription(@Nullable String); - method @NonNull public android.app.AutomaticZenRule.Builder setType(int); - method @NonNull public android.app.AutomaticZenRule.Builder setZenPolicy(@Nullable android.service.notification.ZenPolicy); - } - - public final class BackgroundServiceStartNotAllowedException extends android.app.ServiceStartNotAllowedException implements android.os.Parcelable { - ctor public BackgroundServiceStartNotAllowedException(@NonNull String); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class BroadcastOptions { - method public void clearDeferralPolicy(); - method public void clearDeliveryGroupMatchingKey(); - method public void clearDeliveryGroupPolicy(); - method @NonNull public static android.app.BroadcastOptions fromBundle(@NonNull android.os.Bundle); - method public int getDeferralPolicy(); - method @Nullable public String getDeliveryGroupMatchingKey(); - method public int getDeliveryGroupPolicy(); - method public boolean isShareIdentityEnabled(); - method @NonNull public static android.app.BroadcastOptions makeBasic(); - method @NonNull public android.app.BroadcastOptions setDeferralPolicy(int); - method @NonNull public android.app.BroadcastOptions setDeliveryGroupMatchingKey(@NonNull String, @NonNull String); - method @NonNull public android.app.BroadcastOptions setDeliveryGroupPolicy(int); - method @NonNull public android.app.BroadcastOptions setShareIdentityEnabled(boolean); - method @NonNull public android.os.Bundle toBundle(); - field public static final int DEFERRAL_POLICY_DEFAULT = 0; // 0x0 - field public static final int DEFERRAL_POLICY_NONE = 1; // 0x1 - field public static final int DEFERRAL_POLICY_UNTIL_ACTIVE = 2; // 0x2 - field public static final int DELIVERY_GROUP_POLICY_ALL = 0; // 0x0 - field public static final int DELIVERY_GROUP_POLICY_MOST_RECENT = 1; // 0x1 - } - - @FlaggedApi("android.security.content_uri_permission_apis") public final class ComponentCaller { - method public int checkContentUriPermission(@NonNull android.net.Uri, int); - method @Nullable public String getPackage(); - method public int getUid(); - } - - public class DatePickerDialog extends android.app.AlertDialog implements android.widget.DatePicker.OnDateChangedListener android.content.DialogInterface.OnClickListener { - ctor public DatePickerDialog(@NonNull android.content.Context); - ctor public DatePickerDialog(@NonNull android.content.Context, @StyleRes int); - ctor public DatePickerDialog(@NonNull android.content.Context, @Nullable android.app.DatePickerDialog.OnDateSetListener, int, int, int); - ctor public DatePickerDialog(@NonNull android.content.Context, @StyleRes int, @Nullable android.app.DatePickerDialog.OnDateSetListener, int, int, int); - method @NonNull public android.widget.DatePicker getDatePicker(); - method public void onClick(@NonNull android.content.DialogInterface, int); - method public void onDateChanged(@NonNull android.widget.DatePicker, int, int, int); - method public void setOnDateSetListener(@Nullable android.app.DatePickerDialog.OnDateSetListener); - method public void updateDate(int, int, int); - } - - public static interface DatePickerDialog.OnDateSetListener { - method public void onDateSet(android.widget.DatePicker, int, int, int); - } - - public class Dialog implements android.content.DialogInterface android.view.KeyEvent.Callback android.view.View.OnCreateContextMenuListener android.view.Window.Callback { - ctor public Dialog(@NonNull @UiContext android.content.Context); - ctor public Dialog(@NonNull @UiContext android.content.Context, @StyleRes int); - ctor protected Dialog(@NonNull @UiContext android.content.Context, boolean, @Nullable android.content.DialogInterface.OnCancelListener); - method public void addContentView(@NonNull android.view.View, @Nullable android.view.ViewGroup.LayoutParams); - method public void cancel(); - method public void closeOptionsMenu(); - method public void create(); - method public void dismiss(); - method public boolean dispatchGenericMotionEvent(@NonNull android.view.MotionEvent); - method public boolean dispatchKeyEvent(@NonNull android.view.KeyEvent); - method public boolean dispatchKeyShortcutEvent(@NonNull android.view.KeyEvent); - method public boolean dispatchPopulateAccessibilityEvent(@NonNull android.view.accessibility.AccessibilityEvent); - method public boolean dispatchTouchEvent(@NonNull android.view.MotionEvent); - method public boolean dispatchTrackballEvent(@NonNull android.view.MotionEvent); - method public T findViewById(@IdRes int); - method @Nullable public android.app.ActionBar getActionBar(); - method @NonNull @UiContext public final android.content.Context getContext(); - method @Nullable public android.view.View getCurrentFocus(); - method @NonNull public android.view.LayoutInflater getLayoutInflater(); - method @NonNull public android.window.OnBackInvokedDispatcher getOnBackInvokedDispatcher(); - method @Nullable public final android.app.Activity getOwnerActivity(); - method @Nullable public final android.view.SearchEvent getSearchEvent(); - method public final int getVolumeControlStream(); - method @Nullable public android.view.Window getWindow(); - method public void hide(); - method public void invalidateOptionsMenu(); - method public boolean isShowing(); - method @CallSuper public void onActionModeFinished(android.view.ActionMode); - method @CallSuper public void onActionModeStarted(android.view.ActionMode); - method public void onAttachedToWindow(); - method @Deprecated public void onBackPressed(); - method public void onContentChanged(); - method public boolean onContextItemSelected(@NonNull android.view.MenuItem); - method public void onContextMenuClosed(@NonNull android.view.Menu); - method protected void onCreate(android.os.Bundle); - method public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo); - method public boolean onCreateOptionsMenu(@NonNull android.view.Menu); - method public boolean onCreatePanelMenu(int, @NonNull android.view.Menu); - method public android.view.View onCreatePanelView(int); - method public void onDetachedFromWindow(); - method public boolean onGenericMotionEvent(@NonNull android.view.MotionEvent); - method public boolean onKeyDown(int, @NonNull android.view.KeyEvent); - method public boolean onKeyLongPress(int, @NonNull android.view.KeyEvent); - method public boolean onKeyMultiple(int, int, @NonNull android.view.KeyEvent); - method public boolean onKeyShortcut(int, @NonNull android.view.KeyEvent); - method public boolean onKeyUp(int, @NonNull android.view.KeyEvent); - method public boolean onMenuItemSelected(int, @NonNull android.view.MenuItem); - method public boolean onMenuOpened(int, @NonNull android.view.Menu); - method public boolean onOptionsItemSelected(@NonNull android.view.MenuItem); - method public void onOptionsMenuClosed(@NonNull android.view.Menu); - method public void onPanelClosed(int, @NonNull android.view.Menu); - method public boolean onPrepareOptionsMenu(@NonNull android.view.Menu); - method public boolean onPreparePanel(int, @Nullable android.view.View, @NonNull android.view.Menu); - method public void onRestoreInstanceState(@NonNull android.os.Bundle); - method @NonNull public android.os.Bundle onSaveInstanceState(); - method public boolean onSearchRequested(@NonNull android.view.SearchEvent); - method public boolean onSearchRequested(); - method protected void onStart(); - method protected void onStop(); - method public boolean onTouchEvent(@NonNull android.view.MotionEvent); - method public boolean onTrackballEvent(@NonNull android.view.MotionEvent); - method public void onWindowAttributesChanged(android.view.WindowManager.LayoutParams); - method public void onWindowFocusChanged(boolean); - method public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback); - method public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int); - method public void openContextMenu(@NonNull android.view.View); - method public void openOptionsMenu(); - method public void registerForContextMenu(@NonNull android.view.View); - method public final boolean requestWindowFeature(int); - method @NonNull public final T requireViewById(@IdRes int); - method public void setCancelMessage(@Nullable android.os.Message); - method public void setCancelable(boolean); - method public void setCanceledOnTouchOutside(boolean); - method public void setContentView(@LayoutRes int); - method public void setContentView(@NonNull android.view.View); - method public void setContentView(@NonNull android.view.View, @Nullable android.view.ViewGroup.LayoutParams); - method public void setDismissMessage(@Nullable android.os.Message); - method public final void setFeatureDrawable(int, @Nullable android.graphics.drawable.Drawable); - method public final void setFeatureDrawableAlpha(int, int); - method public final void setFeatureDrawableResource(int, @DrawableRes int); - method public final void setFeatureDrawableUri(int, @Nullable android.net.Uri); - method public void setOnCancelListener(@Nullable android.content.DialogInterface.OnCancelListener); - method public void setOnDismissListener(@Nullable android.content.DialogInterface.OnDismissListener); - method public void setOnKeyListener(@Nullable android.content.DialogInterface.OnKeyListener); - method public void setOnShowListener(@Nullable android.content.DialogInterface.OnShowListener); - method public final void setOwnerActivity(@NonNull android.app.Activity); - method public void setTitle(@Nullable CharSequence); - method public void setTitle(@StringRes int); - method public final void setVolumeControlStream(int); - method public void show(); - method public void takeKeyEvents(boolean); - method public void unregisterForContextMenu(@NonNull android.view.View); - } - - @Deprecated public class DialogFragment extends android.app.Fragment implements android.content.DialogInterface.OnCancelListener android.content.DialogInterface.OnDismissListener { - ctor @Deprecated public DialogFragment(); - method @Deprecated public void dismiss(); - method @Deprecated public void dismissAllowingStateLoss(); - method @Deprecated public android.app.Dialog getDialog(); - method @Deprecated public boolean getShowsDialog(); - method @Deprecated public int getTheme(); - method @Deprecated public boolean isCancelable(); - method @Deprecated public void onCancel(android.content.DialogInterface); - method @Deprecated public android.app.Dialog onCreateDialog(android.os.Bundle); - method @Deprecated public void onDismiss(android.content.DialogInterface); - method @Deprecated public void setCancelable(boolean); - method @Deprecated public void setShowsDialog(boolean); - method @Deprecated public void setStyle(int, int); - method @Deprecated public void show(android.app.FragmentManager, String); - method @Deprecated public int show(android.app.FragmentTransaction, String); - field @Deprecated public static final int STYLE_NORMAL = 0; // 0x0 - field @Deprecated public static final int STYLE_NO_FRAME = 2; // 0x2 - field @Deprecated public static final int STYLE_NO_INPUT = 3; // 0x3 - field @Deprecated public static final int STYLE_NO_TITLE = 1; // 0x1 - } - - public final class DirectAction implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.os.Bundle getExtras(); - method @NonNull public String getId(); - method @Nullable public android.content.LocusId getLocusId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class DirectAction.Builder { - ctor public DirectAction.Builder(@NonNull String); - method @NonNull public android.app.DirectAction build(); - method @NonNull public android.app.DirectAction.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.app.DirectAction.Builder setLocusId(@Nullable android.content.LocusId); - } - - public class DownloadManager { - method @Deprecated public long addCompletedDownload(String, String, boolean, String, String, long, boolean); - method @Deprecated public long addCompletedDownload(String, String, boolean, String, String, long, boolean, android.net.Uri, android.net.Uri); - method public long enqueue(android.app.DownloadManager.Request); - method public static Long getMaxBytesOverMobile(android.content.Context); - method public String getMimeTypeForDownloadedFile(long); - method public static Long getRecommendedMaxBytesOverMobile(android.content.Context); - method public android.net.Uri getUriForDownloadedFile(long); - method public android.os.ParcelFileDescriptor openDownloadedFile(long) throws java.io.FileNotFoundException; - method public android.database.Cursor query(android.app.DownloadManager.Query); - method public int remove(long...); - field public static final String ACTION_DOWNLOAD_COMPLETE = "android.intent.action.DOWNLOAD_COMPLETE"; - field public static final String ACTION_NOTIFICATION_CLICKED = "android.intent.action.DOWNLOAD_NOTIFICATION_CLICKED"; - field public static final String ACTION_VIEW_DOWNLOADS = "android.intent.action.VIEW_DOWNLOADS"; - field public static final String COLUMN_BYTES_DOWNLOADED_SO_FAR = "bytes_so_far"; - field public static final String COLUMN_DESCRIPTION = "description"; - field public static final String COLUMN_ID = "_id"; - field public static final String COLUMN_LAST_MODIFIED_TIMESTAMP = "last_modified_timestamp"; - field @Deprecated public static final String COLUMN_LOCAL_FILENAME = "local_filename"; - field public static final String COLUMN_LOCAL_URI = "local_uri"; - field public static final String COLUMN_MEDIAPROVIDER_URI = "mediaprovider_uri"; - field public static final String COLUMN_MEDIA_TYPE = "media_type"; - field public static final String COLUMN_REASON = "reason"; - field public static final String COLUMN_STATUS = "status"; - field public static final String COLUMN_TITLE = "title"; - field public static final String COLUMN_TOTAL_SIZE_BYTES = "total_size"; - field public static final String COLUMN_URI = "uri"; - field public static final int ERROR_CANNOT_RESUME = 1008; // 0x3f0 - field public static final int ERROR_DEVICE_NOT_FOUND = 1007; // 0x3ef - field public static final int ERROR_FILE_ALREADY_EXISTS = 1009; // 0x3f1 - field public static final int ERROR_FILE_ERROR = 1001; // 0x3e9 - field public static final int ERROR_HTTP_DATA_ERROR = 1004; // 0x3ec - field public static final int ERROR_INSUFFICIENT_SPACE = 1006; // 0x3ee - field public static final int ERROR_TOO_MANY_REDIRECTS = 1005; // 0x3ed - field public static final int ERROR_UNHANDLED_HTTP_CODE = 1002; // 0x3ea - field public static final int ERROR_UNKNOWN = 1000; // 0x3e8 - field public static final String EXTRA_DOWNLOAD_ID = "extra_download_id"; - field public static final String EXTRA_NOTIFICATION_CLICK_DOWNLOAD_IDS = "extra_click_download_ids"; - field public static final String INTENT_EXTRAS_SORT_BY_SIZE = "android.app.DownloadManager.extra_sortBySize"; - field public static final int PAUSED_QUEUED_FOR_WIFI = 3; // 0x3 - field public static final int PAUSED_UNKNOWN = 4; // 0x4 - field public static final int PAUSED_WAITING_FOR_NETWORK = 2; // 0x2 - field public static final int PAUSED_WAITING_TO_RETRY = 1; // 0x1 - field public static final int STATUS_FAILED = 16; // 0x10 - field public static final int STATUS_PAUSED = 4; // 0x4 - field public static final int STATUS_PENDING = 1; // 0x1 - field public static final int STATUS_RUNNING = 2; // 0x2 - field public static final int STATUS_SUCCESSFUL = 8; // 0x8 - } - - public static class DownloadManager.Query { - ctor public DownloadManager.Query(); - method public android.app.DownloadManager.Query setFilterById(long...); - method public android.app.DownloadManager.Query setFilterByStatus(int); - } - - public static class DownloadManager.Request { - ctor public DownloadManager.Request(android.net.Uri); - method public android.app.DownloadManager.Request addRequestHeader(String, String); - method @Deprecated public void allowScanningByMediaScanner(); - method public android.app.DownloadManager.Request setAllowedNetworkTypes(int); - method public android.app.DownloadManager.Request setAllowedOverMetered(boolean); - method public android.app.DownloadManager.Request setAllowedOverRoaming(boolean); - method public android.app.DownloadManager.Request setDescription(CharSequence); - method public android.app.DownloadManager.Request setDestinationInExternalFilesDir(android.content.Context, String, String); - method public android.app.DownloadManager.Request setDestinationInExternalPublicDir(String, String); - method public android.app.DownloadManager.Request setDestinationUri(android.net.Uri); - method public android.app.DownloadManager.Request setMimeType(String); - method public android.app.DownloadManager.Request setNotificationVisibility(int); - method public android.app.DownloadManager.Request setRequiresCharging(boolean); - method public android.app.DownloadManager.Request setRequiresDeviceIdle(boolean); - method @Deprecated public android.app.DownloadManager.Request setShowRunningNotification(boolean); - method public android.app.DownloadManager.Request setTitle(CharSequence); - method @Deprecated public android.app.DownloadManager.Request setVisibleInDownloadsUi(boolean); - field public static final int NETWORK_MOBILE = 1; // 0x1 - field public static final int NETWORK_WIFI = 2; // 0x2 - field public static final int VISIBILITY_HIDDEN = 2; // 0x2 - field public static final int VISIBILITY_VISIBLE = 0; // 0x0 - field public static final int VISIBILITY_VISIBLE_NOTIFY_COMPLETED = 1; // 0x1 - field public static final int VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION = 3; // 0x3 - } - - @Deprecated public class ExpandableListActivity extends android.app.Activity implements android.widget.ExpandableListView.OnChildClickListener android.widget.ExpandableListView.OnGroupCollapseListener android.widget.ExpandableListView.OnGroupExpandListener android.view.View.OnCreateContextMenuListener { - ctor @Deprecated public ExpandableListActivity(); - method @Deprecated public android.widget.ExpandableListAdapter getExpandableListAdapter(); - method @Deprecated public android.widget.ExpandableListView getExpandableListView(); - method @Deprecated public long getSelectedId(); - method @Deprecated public long getSelectedPosition(); - method @Deprecated public boolean onChildClick(android.widget.ExpandableListView, android.view.View, int, int, long); - method @Deprecated public void onGroupCollapse(int); - method @Deprecated public void onGroupExpand(int); - method @Deprecated public void setListAdapter(android.widget.ExpandableListAdapter); - method @Deprecated public boolean setSelectedChild(int, int, boolean); - method @Deprecated public void setSelectedGroup(int); - } - - public final class ForegroundServiceStartNotAllowedException extends android.app.ServiceStartNotAllowedException implements android.os.Parcelable { - ctor public ForegroundServiceStartNotAllowedException(@NonNull String); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class ForegroundServiceTypeException extends android.app.ServiceStartNotAllowedException { - ctor public ForegroundServiceTypeException(@NonNull String); - } - - @Deprecated public class Fragment implements android.content.ComponentCallbacks2 android.view.View.OnCreateContextMenuListener { - ctor @Deprecated public Fragment(); - method @Deprecated public void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); - method @Deprecated public final boolean equals(@Nullable Object); - method @Deprecated public final android.app.Activity getActivity(); - method @Deprecated public boolean getAllowEnterTransitionOverlap(); - method @Deprecated public boolean getAllowReturnTransitionOverlap(); - method @Deprecated public final android.os.Bundle getArguments(); - method @Deprecated public final android.app.FragmentManager getChildFragmentManager(); - method @Deprecated public android.content.Context getContext(); - method @Deprecated public android.transition.Transition getEnterTransition(); - method @Deprecated public android.transition.Transition getExitTransition(); - method @Deprecated public final android.app.FragmentManager getFragmentManager(); - method @Deprecated @Nullable public final Object getHost(); - method @Deprecated public final int getId(); - method @Deprecated public final android.view.LayoutInflater getLayoutInflater(); - method @Deprecated public android.app.LoaderManager getLoaderManager(); - method @Deprecated public final android.app.Fragment getParentFragment(); - method @Deprecated public android.transition.Transition getReenterTransition(); - method @Deprecated public final android.content.res.Resources getResources(); - method @Deprecated public final boolean getRetainInstance(); - method @Deprecated public android.transition.Transition getReturnTransition(); - method @Deprecated public android.transition.Transition getSharedElementEnterTransition(); - method @Deprecated public android.transition.Transition getSharedElementReturnTransition(); - method @Deprecated public final String getString(@StringRes int); - method @Deprecated public final String getString(@StringRes int, java.lang.Object...); - method @Deprecated public final String getTag(); - method @Deprecated public final android.app.Fragment getTargetFragment(); - method @Deprecated public final int getTargetRequestCode(); - method @Deprecated public final CharSequence getText(@StringRes int); - method @Deprecated public boolean getUserVisibleHint(); - method @Deprecated @Nullable public android.view.View getView(); - method @Deprecated public final int hashCode(); - method @Deprecated public static android.app.Fragment instantiate(android.content.Context, String); - method @Deprecated public static android.app.Fragment instantiate(android.content.Context, String, @Nullable android.os.Bundle); - method @Deprecated public final boolean isAdded(); - method @Deprecated public final boolean isDetached(); - method @Deprecated public final boolean isHidden(); - method @Deprecated public final boolean isInLayout(); - method @Deprecated public final boolean isRemoving(); - method @Deprecated public final boolean isResumed(); - method @Deprecated public final boolean isStateSaved(); - method @Deprecated public final boolean isVisible(); - method @Deprecated @CallSuper public void onActivityCreated(@Nullable android.os.Bundle); - method @Deprecated public void onActivityResult(int, int, android.content.Intent); - method @Deprecated @CallSuper public void onAttach(android.content.Context); - method @Deprecated @CallSuper public void onAttach(android.app.Activity); - method @Deprecated public void onAttachFragment(android.app.Fragment); - method @Deprecated @CallSuper public void onConfigurationChanged(android.content.res.Configuration); - method @Deprecated public boolean onContextItemSelected(android.view.MenuItem); - method @Deprecated @CallSuper public void onCreate(@Nullable android.os.Bundle); - method @Deprecated public android.animation.Animator onCreateAnimator(int, boolean, int); - method @Deprecated public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo); - method @Deprecated public void onCreateOptionsMenu(android.view.Menu, android.view.MenuInflater); - method @Deprecated @Nullable public android.view.View onCreateView(android.view.LayoutInflater, @Nullable android.view.ViewGroup, android.os.Bundle); - method @Deprecated @CallSuper public void onDestroy(); - method @Deprecated public void onDestroyOptionsMenu(); - method @Deprecated @CallSuper public void onDestroyView(); - method @Deprecated @CallSuper public void onDetach(); - method @Deprecated public android.view.LayoutInflater onGetLayoutInflater(android.os.Bundle); - method @Deprecated public void onHiddenChanged(boolean); - method @Deprecated @CallSuper public void onInflate(android.util.AttributeSet, android.os.Bundle); - method @Deprecated @CallSuper public void onInflate(android.content.Context, android.util.AttributeSet, android.os.Bundle); - method @Deprecated @CallSuper public void onInflate(android.app.Activity, android.util.AttributeSet, android.os.Bundle); - method @Deprecated @CallSuper public void onLowMemory(); - method @Deprecated public void onMultiWindowModeChanged(boolean, android.content.res.Configuration); - method @Deprecated public void onMultiWindowModeChanged(boolean); - method @Deprecated public boolean onOptionsItemSelected(android.view.MenuItem); - method @Deprecated public void onOptionsMenuClosed(android.view.Menu); - method @Deprecated @CallSuper public void onPause(); - method @Deprecated public void onPictureInPictureModeChanged(boolean, android.content.res.Configuration); - method @Deprecated public void onPictureInPictureModeChanged(boolean); - method @Deprecated public void onPrepareOptionsMenu(android.view.Menu); - method @Deprecated public void onRequestPermissionsResult(int, @NonNull String[], @NonNull int[]); - method @Deprecated @CallSuper public void onResume(); - method @Deprecated public void onSaveInstanceState(android.os.Bundle); - method @Deprecated @CallSuper public void onStart(); - method @Deprecated @CallSuper public void onStop(); - method @Deprecated @CallSuper public void onTrimMemory(int); - method @Deprecated public void onViewCreated(android.view.View, @Nullable android.os.Bundle); - method @Deprecated @CallSuper public void onViewStateRestored(android.os.Bundle); - method @Deprecated public void postponeEnterTransition(); - method @Deprecated public void registerForContextMenu(android.view.View); - method @Deprecated public final void requestPermissions(@NonNull String[], int); - method @Deprecated public void setAllowEnterTransitionOverlap(boolean); - method @Deprecated public void setAllowReturnTransitionOverlap(boolean); - method @Deprecated public void setArguments(android.os.Bundle); - method @Deprecated public void setEnterSharedElementCallback(android.app.SharedElementCallback); - method @Deprecated public void setEnterTransition(android.transition.Transition); - method @Deprecated public void setExitSharedElementCallback(android.app.SharedElementCallback); - method @Deprecated public void setExitTransition(android.transition.Transition); - method @Deprecated public void setHasOptionsMenu(boolean); - method @Deprecated public void setInitialSavedState(android.app.Fragment.SavedState); - method @Deprecated public void setMenuVisibility(boolean); - method @Deprecated public void setReenterTransition(android.transition.Transition); - method @Deprecated public void setRetainInstance(boolean); - method @Deprecated public void setReturnTransition(android.transition.Transition); - method @Deprecated public void setSharedElementEnterTransition(android.transition.Transition); - method @Deprecated public void setSharedElementReturnTransition(android.transition.Transition); - method @Deprecated public void setTargetFragment(android.app.Fragment, int); - method @Deprecated public void setUserVisibleHint(boolean); - method @Deprecated public boolean shouldShowRequestPermissionRationale(@NonNull String); - method @Deprecated public void startActivity(android.content.Intent); - method @Deprecated public void startActivity(android.content.Intent, android.os.Bundle); - method @Deprecated public void startActivityForResult(android.content.Intent, int); - method @Deprecated public void startActivityForResult(android.content.Intent, int, android.os.Bundle); - method @Deprecated public void startIntentSenderForResult(android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int, android.os.Bundle) throws android.content.IntentSender.SendIntentException; - method @Deprecated public void startPostponedEnterTransition(); - method @Deprecated public void unregisterForContextMenu(android.view.View); - } - - @Deprecated public static class Fragment.InstantiationException extends android.util.AndroidRuntimeException { - ctor @Deprecated public Fragment.InstantiationException(String, Exception); - } - - @Deprecated public static class Fragment.SavedState implements android.os.Parcelable { - method @Deprecated public int describeContents(); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated public static final android.os.Parcelable.ClassLoaderCreator CREATOR; - } - - @Deprecated public class FragmentBreadCrumbs extends android.view.ViewGroup implements android.app.FragmentManager.OnBackStackChangedListener { - ctor @Deprecated public FragmentBreadCrumbs(android.content.Context); - ctor @Deprecated public FragmentBreadCrumbs(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public FragmentBreadCrumbs(android.content.Context, android.util.AttributeSet, int); - method @Deprecated public void onBackStackChanged(); - method @Deprecated protected void onLayout(boolean, int, int, int, int); - method @Deprecated public void setActivity(android.app.Activity); - method @Deprecated public void setMaxVisible(int); - method @Deprecated public void setOnBreadCrumbClickListener(android.app.FragmentBreadCrumbs.OnBreadCrumbClickListener); - method @Deprecated public void setParentTitle(CharSequence, CharSequence, android.view.View.OnClickListener); - method @Deprecated public void setTitle(CharSequence, CharSequence); - } - - @Deprecated public static interface FragmentBreadCrumbs.OnBreadCrumbClickListener { - method @Deprecated public boolean onBreadCrumbClick(android.app.FragmentManager.BackStackEntry, int); - } - - @Deprecated public abstract class FragmentContainer { - ctor @Deprecated public FragmentContainer(); - method @Deprecated @Nullable public abstract T onFindViewById(@IdRes int); - method @Deprecated public abstract boolean onHasView(); - } - - @Deprecated public class FragmentController { - method @Deprecated public void attachHost(android.app.Fragment); - method @Deprecated public static final android.app.FragmentController createController(android.app.FragmentHostCallback); - method @Deprecated public void dispatchActivityCreated(); - method @Deprecated public void dispatchConfigurationChanged(android.content.res.Configuration); - method @Deprecated public boolean dispatchContextItemSelected(android.view.MenuItem); - method @Deprecated public void dispatchCreate(); - method @Deprecated public boolean dispatchCreateOptionsMenu(android.view.Menu, android.view.MenuInflater); - method @Deprecated public void dispatchDestroy(); - method @Deprecated public void dispatchDestroyView(); - method @Deprecated public void dispatchLowMemory(); - method @Deprecated public void dispatchMultiWindowModeChanged(boolean); - method @Deprecated public void dispatchMultiWindowModeChanged(boolean, android.content.res.Configuration); - method @Deprecated public boolean dispatchOptionsItemSelected(android.view.MenuItem); - method @Deprecated public void dispatchOptionsMenuClosed(android.view.Menu); - method @Deprecated public void dispatchPause(); - method @Deprecated public void dispatchPictureInPictureModeChanged(boolean); - method @Deprecated public void dispatchPictureInPictureModeChanged(boolean, android.content.res.Configuration); - method @Deprecated public boolean dispatchPrepareOptionsMenu(android.view.Menu); - method @Deprecated public void dispatchResume(); - method @Deprecated public void dispatchStart(); - method @Deprecated public void dispatchStop(); - method @Deprecated public void dispatchTrimMemory(int); - method @Deprecated public void doLoaderDestroy(); - method @Deprecated public void doLoaderStart(); - method @Deprecated public void doLoaderStop(boolean); - method @Deprecated public void dumpLoaders(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); - method @Deprecated public boolean execPendingActions(); - method @Deprecated @Nullable public android.app.Fragment findFragmentByWho(String); - method @Deprecated public android.app.FragmentManager getFragmentManager(); - method @Deprecated public android.app.LoaderManager getLoaderManager(); - method @Deprecated public void noteStateNotSaved(); - method @Deprecated public android.view.View onCreateView(android.view.View, String, android.content.Context, android.util.AttributeSet); - method @Deprecated public void reportLoaderStart(); - method @Deprecated public void restoreAllState(android.os.Parcelable, java.util.List); - method @Deprecated public void restoreAllState(android.os.Parcelable, android.app.FragmentManagerNonConfig); - method @Deprecated public void restoreLoaderNonConfig(android.util.ArrayMap); - method @Deprecated public android.util.ArrayMap retainLoaderNonConfig(); - method @Deprecated public android.app.FragmentManagerNonConfig retainNestedNonConfig(); - method @Deprecated public java.util.List retainNonConfig(); - method @Deprecated public android.os.Parcelable saveAllState(); - } - - @Deprecated public abstract class FragmentHostCallback extends android.app.FragmentContainer { - ctor @Deprecated public FragmentHostCallback(android.content.Context, android.os.Handler, int); - method @Deprecated public void onAttachFragment(android.app.Fragment); - method @Deprecated public void onDump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); - method @Deprecated @Nullable public T onFindViewById(int); - method @Deprecated @Nullable public abstract E onGetHost(); - method @Deprecated public android.view.LayoutInflater onGetLayoutInflater(); - method @Deprecated public int onGetWindowAnimations(); - method @Deprecated public boolean onHasView(); - method @Deprecated public boolean onHasWindowAnimations(); - method @Deprecated public void onInvalidateOptionsMenu(); - method @Deprecated public void onRequestPermissionsFromFragment(@NonNull android.app.Fragment, @NonNull String[], int); - method @Deprecated public boolean onShouldSaveFragmentState(android.app.Fragment); - method @Deprecated public void onStartActivityFromFragment(android.app.Fragment, android.content.Intent, int, android.os.Bundle); - method @Deprecated public void onStartIntentSenderFromFragment(android.app.Fragment, android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int, android.os.Bundle) throws android.content.IntentSender.SendIntentException; - method @Deprecated public boolean onUseFragmentManagerInflaterFactory(); - } - - @Deprecated public abstract class FragmentManager { - ctor @Deprecated public FragmentManager(); - method @Deprecated public abstract void addOnBackStackChangedListener(android.app.FragmentManager.OnBackStackChangedListener); - method @Deprecated public abstract android.app.FragmentTransaction beginTransaction(); - method @Deprecated public abstract void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); - method @Deprecated public static void enableDebugLogging(boolean); - method @Deprecated public abstract boolean executePendingTransactions(); - method @Deprecated public abstract android.app.Fragment findFragmentById(int); - method @Deprecated public abstract android.app.Fragment findFragmentByTag(String); - method @Deprecated public abstract android.app.FragmentManager.BackStackEntry getBackStackEntryAt(int); - method @Deprecated public abstract int getBackStackEntryCount(); - method @Deprecated public abstract android.app.Fragment getFragment(android.os.Bundle, String); - method @Deprecated public abstract java.util.List getFragments(); - method @Deprecated public abstract android.app.Fragment getPrimaryNavigationFragment(); - method @Deprecated public void invalidateOptionsMenu(); - method @Deprecated public abstract boolean isDestroyed(); - method @Deprecated public abstract boolean isStateSaved(); - method @Deprecated public abstract void popBackStack(); - method @Deprecated public abstract void popBackStack(String, int); - method @Deprecated public abstract void popBackStack(int, int); - method @Deprecated public abstract boolean popBackStackImmediate(); - method @Deprecated public abstract boolean popBackStackImmediate(String, int); - method @Deprecated public abstract boolean popBackStackImmediate(int, int); - method @Deprecated public abstract void putFragment(android.os.Bundle, String, android.app.Fragment); - method @Deprecated public abstract void registerFragmentLifecycleCallbacks(android.app.FragmentManager.FragmentLifecycleCallbacks, boolean); - method @Deprecated public abstract void removeOnBackStackChangedListener(android.app.FragmentManager.OnBackStackChangedListener); - method @Deprecated public abstract android.app.Fragment.SavedState saveFragmentInstanceState(android.app.Fragment); - method @Deprecated public abstract void unregisterFragmentLifecycleCallbacks(android.app.FragmentManager.FragmentLifecycleCallbacks); - field @Deprecated public static final int POP_BACK_STACK_INCLUSIVE = 1; // 0x1 - } - - @Deprecated public static interface FragmentManager.BackStackEntry { - method @Deprecated public CharSequence getBreadCrumbShortTitle(); - method @Deprecated public int getBreadCrumbShortTitleRes(); - method @Deprecated public CharSequence getBreadCrumbTitle(); - method @Deprecated public int getBreadCrumbTitleRes(); - method @Deprecated public int getId(); - method @Deprecated public String getName(); - } - - @Deprecated public abstract static class FragmentManager.FragmentLifecycleCallbacks { - ctor @Deprecated public FragmentManager.FragmentLifecycleCallbacks(); - method @Deprecated public void onFragmentActivityCreated(android.app.FragmentManager, android.app.Fragment, android.os.Bundle); - method @Deprecated public void onFragmentAttached(android.app.FragmentManager, android.app.Fragment, android.content.Context); - method @Deprecated public void onFragmentCreated(android.app.FragmentManager, android.app.Fragment, android.os.Bundle); - method @Deprecated public void onFragmentDestroyed(android.app.FragmentManager, android.app.Fragment); - method @Deprecated public void onFragmentDetached(android.app.FragmentManager, android.app.Fragment); - method @Deprecated public void onFragmentPaused(android.app.FragmentManager, android.app.Fragment); - method @Deprecated public void onFragmentPreAttached(android.app.FragmentManager, android.app.Fragment, android.content.Context); - method @Deprecated public void onFragmentPreCreated(android.app.FragmentManager, android.app.Fragment, android.os.Bundle); - method @Deprecated public void onFragmentResumed(android.app.FragmentManager, android.app.Fragment); - method @Deprecated public void onFragmentSaveInstanceState(android.app.FragmentManager, android.app.Fragment, android.os.Bundle); - method @Deprecated public void onFragmentStarted(android.app.FragmentManager, android.app.Fragment); - method @Deprecated public void onFragmentStopped(android.app.FragmentManager, android.app.Fragment); - method @Deprecated public void onFragmentViewCreated(android.app.FragmentManager, android.app.Fragment, android.view.View, android.os.Bundle); - method @Deprecated public void onFragmentViewDestroyed(android.app.FragmentManager, android.app.Fragment); - } - - @Deprecated public static interface FragmentManager.OnBackStackChangedListener { - method @Deprecated public void onBackStackChanged(); - } - - @Deprecated public class FragmentManagerNonConfig { - } - - @Deprecated public abstract class FragmentTransaction { - ctor @Deprecated public FragmentTransaction(); - method @Deprecated public abstract android.app.FragmentTransaction add(android.app.Fragment, String); - method @Deprecated public abstract android.app.FragmentTransaction add(@IdRes int, android.app.Fragment); - method @Deprecated public abstract android.app.FragmentTransaction add(@IdRes int, android.app.Fragment, String); - method @Deprecated public abstract android.app.FragmentTransaction addSharedElement(android.view.View, String); - method @Deprecated public abstract android.app.FragmentTransaction addToBackStack(@Nullable String); - method @Deprecated public abstract android.app.FragmentTransaction attach(android.app.Fragment); - method @Deprecated public abstract int commit(); - method @Deprecated public abstract int commitAllowingStateLoss(); - method @Deprecated public abstract void commitNow(); - method @Deprecated public abstract void commitNowAllowingStateLoss(); - method @Deprecated public abstract android.app.FragmentTransaction detach(android.app.Fragment); - method @Deprecated public abstract android.app.FragmentTransaction disallowAddToBackStack(); - method @Deprecated public abstract android.app.FragmentTransaction hide(android.app.Fragment); - method @Deprecated public abstract boolean isAddToBackStackAllowed(); - method @Deprecated public abstract boolean isEmpty(); - method @Deprecated public abstract android.app.FragmentTransaction remove(android.app.Fragment); - method @Deprecated public abstract android.app.FragmentTransaction replace(@IdRes int, android.app.Fragment); - method @Deprecated public abstract android.app.FragmentTransaction replace(@IdRes int, android.app.Fragment, String); - method @Deprecated public abstract android.app.FragmentTransaction runOnCommit(Runnable); - method @Deprecated public abstract android.app.FragmentTransaction setBreadCrumbShortTitle(@StringRes int); - method @Deprecated public abstract android.app.FragmentTransaction setBreadCrumbShortTitle(CharSequence); - method @Deprecated public abstract android.app.FragmentTransaction setBreadCrumbTitle(@StringRes int); - method @Deprecated public abstract android.app.FragmentTransaction setBreadCrumbTitle(CharSequence); - method @Deprecated public abstract android.app.FragmentTransaction setCustomAnimations(@AnimatorRes int, @AnimatorRes int); - method @Deprecated public abstract android.app.FragmentTransaction setCustomAnimations(@AnimatorRes int, @AnimatorRes int, @AnimatorRes int, @AnimatorRes int); - method @Deprecated public abstract android.app.FragmentTransaction setPrimaryNavigationFragment(android.app.Fragment); - method @Deprecated public abstract android.app.FragmentTransaction setReorderingAllowed(boolean); - method @Deprecated public abstract android.app.FragmentTransaction setTransition(int); - method @Deprecated public abstract android.app.FragmentTransaction setTransitionStyle(@StyleRes int); - method @Deprecated public abstract android.app.FragmentTransaction show(android.app.Fragment); - field @Deprecated public static final int TRANSIT_ENTER_MASK = 4096; // 0x1000 - field @Deprecated public static final int TRANSIT_EXIT_MASK = 8192; // 0x2000 - field @Deprecated public static final int TRANSIT_FRAGMENT_CLOSE = 8194; // 0x2002 - field @Deprecated public static final int TRANSIT_FRAGMENT_FADE = 4099; // 0x1003 - field @Deprecated public static final int TRANSIT_FRAGMENT_OPEN = 4097; // 0x1001 - field @Deprecated public static final int TRANSIT_NONE = 0; // 0x0 - field @Deprecated public static final int TRANSIT_UNSET = -1; // 0xffffffff - } - - public final class GameManager { - method public int getGameMode(); - method public void setGameState(@NonNull android.app.GameState); - field public static final int GAME_MODE_BATTERY = 3; // 0x3 - field public static final int GAME_MODE_CUSTOM = 4; // 0x4 - field public static final int GAME_MODE_PERFORMANCE = 2; // 0x2 - field public static final int GAME_MODE_STANDARD = 1; // 0x1 - field public static final int GAME_MODE_UNSUPPORTED = 0; // 0x0 - } - - public final class GameState implements android.os.Parcelable { - ctor public GameState(boolean, int); - ctor public GameState(boolean, int, int, int); - method public int describeContents(); - method public int getLabel(); - method public int getMode(); - method public int getQuality(); - method public boolean isLoading(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int MODE_CONTENT = 4; // 0x4 - field public static final int MODE_GAMEPLAY_INTERRUPTIBLE = 2; // 0x2 - field public static final int MODE_GAMEPLAY_UNINTERRUPTIBLE = 3; // 0x3 - field public static final int MODE_NONE = 1; // 0x1 - field public static final int MODE_UNKNOWN = 0; // 0x0 - } - - public class GrammaticalInflectionManager { - method public int getApplicationGrammaticalGender(); - method @FlaggedApi("android.app.system_terms_of_address_enabled") @RequiresPermission("android.permission.READ_SYSTEM_GRAMMATICAL_GENDER") public int getSystemGrammaticalGender(); - method public void setRequestedApplicationGrammaticalGender(int); - } - - public class Instrumentation { - ctor public Instrumentation(); - method public android.os.TestLooperManager acquireLooperManager(android.os.Looper); - method public void addMonitor(android.app.Instrumentation.ActivityMonitor); - method public android.app.Instrumentation.ActivityMonitor addMonitor(android.content.IntentFilter, android.app.Instrumentation.ActivityResult, boolean); - method public android.app.Instrumentation.ActivityMonitor addMonitor(String, android.app.Instrumentation.ActivityResult, boolean); - method public void addResults(android.os.Bundle); - method public void callActivityOnCreate(android.app.Activity, android.os.Bundle); - method public void callActivityOnCreate(android.app.Activity, android.os.Bundle, android.os.PersistableBundle); - method public void callActivityOnDestroy(android.app.Activity); - method public void callActivityOnNewIntent(android.app.Activity, android.content.Intent); - method @FlaggedApi("android.security.content_uri_permission_apis") public void callActivityOnNewIntent(@NonNull android.app.Activity, @NonNull android.content.Intent, @NonNull android.app.ComponentCaller); - method public void callActivityOnPause(android.app.Activity); - method public void callActivityOnPictureInPictureRequested(@NonNull android.app.Activity); - method public void callActivityOnPostCreate(@NonNull android.app.Activity, @Nullable android.os.Bundle); - method public void callActivityOnPostCreate(@NonNull android.app.Activity, @Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); - method public void callActivityOnRestart(android.app.Activity); - method public void callActivityOnRestoreInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); - method public void callActivityOnRestoreInstanceState(@NonNull android.app.Activity, @Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); - method public void callActivityOnResume(android.app.Activity); - method public void callActivityOnSaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); - method public void callActivityOnSaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle, @NonNull android.os.PersistableBundle); - method public void callActivityOnStart(android.app.Activity); - method public void callActivityOnStop(android.app.Activity); - method public void callActivityOnUserLeaving(android.app.Activity); - method public void callApplicationOnCreate(android.app.Application); - method public boolean checkMonitorHit(android.app.Instrumentation.ActivityMonitor, int); - method public void endPerformanceSnapshot(); - method public void finish(int, android.os.Bundle); - method public android.os.Bundle getAllocCounts(); - method public android.os.Bundle getBinderCounts(); - method public android.content.ComponentName getComponentName(); - method public android.content.Context getContext(); - method public String getProcessName(); - method public android.content.Context getTargetContext(); - method public android.app.UiAutomation getUiAutomation(); - method public android.app.UiAutomation getUiAutomation(int); - method public boolean invokeContextMenuAction(android.app.Activity, int, int); - method public boolean invokeMenuActionSync(android.app.Activity, int, int); - method public boolean isProfiling(); - method public android.app.Activity newActivity(Class, android.content.Context, android.os.IBinder, android.app.Application, android.content.Intent, android.content.pm.ActivityInfo, CharSequence, android.app.Activity, String, Object) throws java.lang.IllegalAccessException, java.lang.InstantiationException; - method public android.app.Activity newActivity(ClassLoader, String, android.content.Intent) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; - method public android.app.Application newApplication(ClassLoader, String, android.content.Context) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; - method public static android.app.Application newApplication(Class, android.content.Context) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; - method public void onCreate(android.os.Bundle); - method public void onDestroy(); - method public boolean onException(Object, Throwable); - method public void onStart(); - method public void removeMonitor(android.app.Instrumentation.ActivityMonitor); - method public void resetInTouchMode(); - method public void runOnMainSync(Runnable); - method public void sendCharacterSync(int); - method public void sendKeyDownUpSync(int); - method public void sendKeySync(android.view.KeyEvent); - method public void sendPointerSync(android.view.MotionEvent); - method public void sendStatus(int, android.os.Bundle); - method public void sendStringSync(String); - method public void sendTrackballEventSync(android.view.MotionEvent); - method public void setAutomaticPerformanceSnapshots(); - method public void setInTouchMode(boolean); - method public void start(); - method public android.app.Activity startActivitySync(android.content.Intent); - method @NonNull public android.app.Activity startActivitySync(@NonNull android.content.Intent, @Nullable android.os.Bundle); - method @Deprecated public void startAllocCounting(); - method public void startPerformanceSnapshot(); - method public void startProfiling(); - method @Deprecated public void stopAllocCounting(); - method public void stopProfiling(); - method public void waitForIdle(Runnable); - method public void waitForIdleSync(); - method public android.app.Activity waitForMonitor(android.app.Instrumentation.ActivityMonitor); - method public android.app.Activity waitForMonitorWithTimeout(android.app.Instrumentation.ActivityMonitor, long); - field public static final String REPORT_KEY_IDENTIFIER = "id"; - field public static final String REPORT_KEY_STREAMRESULT = "stream"; - } - - public static class Instrumentation.ActivityMonitor { - ctor public Instrumentation.ActivityMonitor(android.content.IntentFilter, android.app.Instrumentation.ActivityResult, boolean); - ctor public Instrumentation.ActivityMonitor(String, android.app.Instrumentation.ActivityResult, boolean); - ctor public Instrumentation.ActivityMonitor(); - method public final android.content.IntentFilter getFilter(); - method public final int getHits(); - method public final android.app.Activity getLastActivity(); - method public final android.app.Instrumentation.ActivityResult getResult(); - method public final boolean isBlocking(); - method public android.app.Instrumentation.ActivityResult onStartActivity(android.content.Intent); - method public final android.app.Activity waitForActivity(); - method public final android.app.Activity waitForActivityWithTimeout(long); - } - - public static final class Instrumentation.ActivityResult { - ctor public Instrumentation.ActivityResult(int, android.content.Intent); - method public int getResultCode(); - method public android.content.Intent getResultData(); - } - - @Deprecated public abstract class IntentService extends android.app.Service { - ctor @Deprecated public IntentService(String); - method @Deprecated @Nullable public android.os.IBinder onBind(android.content.Intent); - method @Deprecated @WorkerThread protected abstract void onHandleIntent(@Nullable android.content.Intent); - method @Deprecated public void onStart(@Nullable android.content.Intent, int); - method @Deprecated public void setIntentRedelivery(boolean); - } - - public final class InvalidForegroundServiceTypeException extends android.app.ForegroundServiceTypeException implements android.os.Parcelable { - ctor public InvalidForegroundServiceTypeException(@NonNull String); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class KeyguardManager { - method @FlaggedApi("android.app.device_unlock_listener") @RequiresPermission(android.Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) public void addDeviceLockedStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.KeyguardManager.DeviceLockedStateListener); - method @RequiresPermission(android.Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) public void addKeyguardLockedStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.KeyguardManager.KeyguardLockedStateListener); - method @Deprecated public android.content.Intent createConfirmDeviceCredentialIntent(CharSequence, CharSequence); - method @Deprecated @RequiresPermission(android.Manifest.permission.DISABLE_KEYGUARD) public void exitKeyguardSecurely(android.app.KeyguardManager.OnKeyguardExitResult); - method @Deprecated public boolean inKeyguardRestrictedInputMode(); - method public boolean isDeviceLocked(); - method public boolean isDeviceSecure(); - method public boolean isKeyguardLocked(); - method public boolean isKeyguardSecure(); - method @Deprecated public android.app.KeyguardManager.KeyguardLock newKeyguardLock(String); - method @FlaggedApi("android.app.device_unlock_listener") @RequiresPermission(android.Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) public void removeDeviceLockedStateListener(@NonNull android.app.KeyguardManager.DeviceLockedStateListener); - method @RequiresPermission(android.Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) public void removeKeyguardLockedStateListener(@NonNull android.app.KeyguardManager.KeyguardLockedStateListener); - method public void requestDismissKeyguard(@NonNull android.app.Activity, @Nullable android.app.KeyguardManager.KeyguardDismissCallback); - } - - @FlaggedApi("android.app.device_unlock_listener") @java.lang.FunctionalInterface public static interface KeyguardManager.DeviceLockedStateListener { - method public void onDeviceLockedStateChanged(boolean); - } - - public abstract static class KeyguardManager.KeyguardDismissCallback { - ctor public KeyguardManager.KeyguardDismissCallback(); - method public void onDismissCancelled(); - method public void onDismissError(); - method public void onDismissSucceeded(); - } - - @Deprecated public class KeyguardManager.KeyguardLock { - method @Deprecated @RequiresPermission(android.Manifest.permission.DISABLE_KEYGUARD) public void disableKeyguard(); - method @Deprecated @RequiresPermission(android.Manifest.permission.DISABLE_KEYGUARD) public void reenableKeyguard(); - } - - @java.lang.FunctionalInterface public static interface KeyguardManager.KeyguardLockedStateListener { - method public void onKeyguardLockedStateChanged(boolean); - } - - @Deprecated public static interface KeyguardManager.OnKeyguardExitResult { - method @Deprecated public void onKeyguardExitResult(boolean); - } - - @Deprecated public abstract class LauncherActivity extends android.app.ListActivity { - ctor @Deprecated public LauncherActivity(); - method @Deprecated protected android.content.Intent getTargetIntent(); - method @Deprecated protected android.content.Intent intentForPosition(int); - method @Deprecated protected android.app.LauncherActivity.ListItem itemForPosition(int); - method @Deprecated public java.util.List makeListItems(); - method @Deprecated protected java.util.List onQueryPackageManager(android.content.Intent); - method @Deprecated protected void onSetContentView(); - } - - @Deprecated public class LauncherActivity.IconResizer { - ctor @Deprecated public LauncherActivity.IconResizer(); - method @Deprecated public android.graphics.drawable.Drawable createIconThumbnail(android.graphics.drawable.Drawable); - } - - @Deprecated public static class LauncherActivity.ListItem { - ctor @Deprecated public LauncherActivity.ListItem(); - field @Deprecated public String className; - field @Deprecated public android.os.Bundle extras; - field @Deprecated public android.graphics.drawable.Drawable icon; - field @Deprecated public CharSequence label; - field @Deprecated public String packageName; - field @Deprecated public android.content.pm.ResolveInfo resolveInfo; - } - - @Deprecated public class ListActivity extends android.app.Activity { - ctor @Deprecated public ListActivity(); - method @Deprecated public android.widget.ListAdapter getListAdapter(); - method @Deprecated public android.widget.ListView getListView(); - method @Deprecated public long getSelectedItemId(); - method @Deprecated public int getSelectedItemPosition(); - method @Deprecated protected void onListItemClick(android.widget.ListView, android.view.View, int, long); - method @Deprecated public void setListAdapter(android.widget.ListAdapter); - method @Deprecated public void setSelection(int); - } - - @Deprecated public class ListFragment extends android.app.Fragment { - ctor @Deprecated public ListFragment(); - method @Deprecated public android.widget.ListAdapter getListAdapter(); - method @Deprecated public android.widget.ListView getListView(); - method @Deprecated public long getSelectedItemId(); - method @Deprecated public int getSelectedItemPosition(); - method @Deprecated public void onListItemClick(android.widget.ListView, android.view.View, int, long); - method @Deprecated public void setEmptyText(CharSequence); - method @Deprecated public void setListAdapter(android.widget.ListAdapter); - method @Deprecated public void setListShown(boolean); - method @Deprecated public void setListShownNoAnimation(boolean); - method @Deprecated public void setSelection(int); - } - - @Deprecated public abstract class LoaderManager { - ctor @Deprecated public LoaderManager(); - method @Deprecated public abstract void destroyLoader(int); - method @Deprecated public abstract void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); - method @Deprecated public static void enableDebugLogging(boolean); - method @Deprecated public abstract android.content.Loader getLoader(int); - method @Deprecated public abstract android.content.Loader initLoader(int, android.os.Bundle, android.app.LoaderManager.LoaderCallbacks); - method @Deprecated public abstract android.content.Loader restartLoader(int, android.os.Bundle, android.app.LoaderManager.LoaderCallbacks); - } - - @Deprecated public static interface LoaderManager.LoaderCallbacks { - method @Deprecated public android.content.Loader onCreateLoader(int, android.os.Bundle); - method @Deprecated public void onLoadFinished(android.content.Loader, D); - method @Deprecated public void onLoaderReset(android.content.Loader); - } - - @Deprecated public class LocalActivityManager { - ctor @Deprecated public LocalActivityManager(android.app.Activity, boolean); - method @Deprecated public android.view.Window destroyActivity(String, boolean); - method @Deprecated public void dispatchCreate(android.os.Bundle); - method @Deprecated public void dispatchDestroy(boolean); - method @Deprecated public void dispatchPause(boolean); - method @Deprecated public void dispatchResume(); - method @Deprecated public void dispatchStop(); - method @Deprecated public android.app.Activity getActivity(String); - method @Deprecated public android.app.Activity getCurrentActivity(); - method @Deprecated public String getCurrentId(); - method @Deprecated public void removeAllActivities(); - method @Deprecated public android.os.Bundle saveInstanceState(); - method @Deprecated public android.view.Window startActivity(String, android.content.Intent); - } - - public class LocaleConfig implements android.os.Parcelable { - ctor public LocaleConfig(@NonNull android.content.Context); - ctor public LocaleConfig(@NonNull android.os.LocaleList); - method public int describeContents(); - method @NonNull public static android.app.LocaleConfig fromContextIgnoringOverride(@NonNull android.content.Context); - method @FlaggedApi("android.content.res.default_locale") @Nullable public java.util.Locale getDefaultLocale(); - method public int getStatus(); - method @Nullable public android.os.LocaleList getSupportedLocales(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STATUS_NOT_SPECIFIED = 1; // 0x1 - field public static final int STATUS_PARSING_FAILED = 2; // 0x2 - field public static final int STATUS_SUCCESS = 0; // 0x0 - field public static final String TAG_LOCALE = "locale"; - field public static final String TAG_LOCALE_CONFIG = "locale-config"; - } - - public class LocaleManager { - method @NonNull public android.os.LocaleList getApplicationLocales(); - method @NonNull @RequiresPermission(value="android.permission.READ_APP_SPECIFIC_LOCALES", conditional=true) public android.os.LocaleList getApplicationLocales(@NonNull String); - method @Nullable public android.app.LocaleConfig getOverrideLocaleConfig(); - method @NonNull public android.os.LocaleList getSystemLocales(); - method public void setApplicationLocales(@NonNull android.os.LocaleList); - method public void setOverrideLocaleConfig(@Nullable android.app.LocaleConfig); - } - - public class MediaRouteActionProvider extends android.view.ActionProvider { - ctor public MediaRouteActionProvider(android.content.Context); - method public android.view.View onCreateActionView(); - method public void setExtendedSettingsClickListener(android.view.View.OnClickListener); - method public void setRouteTypes(int); - } - - public class MediaRouteButton extends android.view.View { - ctor public MediaRouteButton(android.content.Context); - ctor public MediaRouteButton(android.content.Context, android.util.AttributeSet); - ctor public MediaRouteButton(android.content.Context, android.util.AttributeSet, int); - ctor public MediaRouteButton(android.content.Context, android.util.AttributeSet, int, int); - method public int getRouteTypes(); - method public void onAttachedToWindow(); - method public void onDetachedFromWindow(); - method public void setExtendedSettingsClickListener(android.view.View.OnClickListener); - method public void setRouteTypes(int); - method public void showDialog(); - } - - public final class MissingForegroundServiceTypeException extends android.app.ForegroundServiceTypeException implements android.os.Parcelable { - ctor public MissingForegroundServiceTypeException(@NonNull String); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class NativeActivity extends android.app.Activity implements android.view.InputQueue.Callback android.view.SurfaceHolder.Callback2 android.view.ViewTreeObserver.OnGlobalLayoutListener { - ctor public NativeActivity(); - method public void onGlobalLayout(); - method public void onInputQueueCreated(android.view.InputQueue); - method public void onInputQueueDestroyed(android.view.InputQueue); - method public void surfaceChanged(android.view.SurfaceHolder, int, int, int); - method public void surfaceCreated(android.view.SurfaceHolder); - method public void surfaceDestroyed(android.view.SurfaceHolder); - method public void surfaceRedrawNeeded(android.view.SurfaceHolder); - field public static final String META_DATA_FUNC_NAME = "android.app.func_name"; - field public static final String META_DATA_LIB_NAME = "android.app.lib_name"; - } - - public class Notification implements android.os.Parcelable { - ctor public Notification(); - ctor @Deprecated public Notification(int, CharSequence, long); - ctor public Notification(android.os.Parcel); - method public android.app.Notification clone(); - method public int describeContents(); - method @Nullable public android.util.Pair findRemoteInputActionPair(boolean); - method public boolean getAllowSystemGeneratedContextualActions(); - method public int getBadgeIconType(); - method @Nullable public android.app.Notification.BubbleMetadata getBubbleMetadata(); - method public String getChannelId(); - method @NonNull public java.util.List getContextualActions(); - method public String getGroup(); - method public int getGroupAlertBehavior(); - method public android.graphics.drawable.Icon getLargeIcon(); - method @Nullable public android.content.LocusId getLocusId(); - method public CharSequence getSettingsText(); - method @FlaggedApi("android.app.api_rich_ongoing") @Nullable public String getShortCriticalText(); - method public String getShortcutId(); - method public android.graphics.drawable.Icon getSmallIcon(); - method public String getSortKey(); - method public long getTimeoutAfter(); - method public boolean hasImage(); - method @FlaggedApi("android.app.api_rich_ongoing") public boolean hasPromotableCharacteristics(); - method public void writeToParcel(android.os.Parcel, int); - field public static final android.media.AudioAttributes AUDIO_ATTRIBUTES_DEFAULT; - field public static final int BADGE_ICON_LARGE = 2; // 0x2 - field public static final int BADGE_ICON_NONE = 0; // 0x0 - field public static final int BADGE_ICON_SMALL = 1; // 0x1 - field public static final String CATEGORY_ALARM = "alarm"; - field public static final String CATEGORY_CALL = "call"; - field public static final String CATEGORY_EMAIL = "email"; - field public static final String CATEGORY_ERROR = "err"; - field public static final String CATEGORY_EVENT = "event"; - field public static final String CATEGORY_LOCATION_SHARING = "location_sharing"; - field public static final String CATEGORY_MESSAGE = "msg"; - field public static final String CATEGORY_MISSED_CALL = "missed_call"; - field public static final String CATEGORY_NAVIGATION = "navigation"; - field public static final String CATEGORY_PROGRESS = "progress"; - field public static final String CATEGORY_PROMO = "promo"; - field public static final String CATEGORY_RECOMMENDATION = "recommendation"; - field public static final String CATEGORY_REMINDER = "reminder"; - field public static final String CATEGORY_SERVICE = "service"; - field public static final String CATEGORY_SOCIAL = "social"; - field public static final String CATEGORY_STATUS = "status"; - field public static final String CATEGORY_STOPWATCH = "stopwatch"; - field public static final String CATEGORY_SYSTEM = "sys"; - field public static final String CATEGORY_TRANSPORT = "transport"; - field @FlaggedApi("android.app.category_voicemail") public static final String CATEGORY_VOICEMAIL = "voicemail"; - field public static final String CATEGORY_WORKOUT = "workout"; - field @ColorInt public static final int COLOR_DEFAULT = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DEFAULT_ALL = -1; // 0xffffffff - field public static final int DEFAULT_LIGHTS = 4; // 0x4 - field public static final int DEFAULT_SOUND = 1; // 0x1 - field public static final int DEFAULT_VIBRATE = 2; // 0x2 - field public static final String EXTRA_ANSWER_COLOR = "android.answerColor"; - field public static final String EXTRA_ANSWER_INTENT = "android.answerIntent"; - field public static final String EXTRA_AUDIO_CONTENTS_URI = "android.audioContents"; - field public static final String EXTRA_BACKGROUND_IMAGE_URI = "android.backgroundImageUri"; - field public static final String EXTRA_BIG_TEXT = "android.bigText"; - field public static final String EXTRA_CALL_IS_VIDEO = "android.callIsVideo"; - field public static final String EXTRA_CALL_PERSON = "android.callPerson"; - field public static final String EXTRA_CALL_TYPE = "android.callType"; - field public static final String EXTRA_CHANNEL_GROUP_ID = "android.intent.extra.CHANNEL_GROUP_ID"; - field public static final String EXTRA_CHANNEL_ID = "android.intent.extra.CHANNEL_ID"; - field public static final String EXTRA_CHRONOMETER_COUNT_DOWN = "android.chronometerCountDown"; - field public static final String EXTRA_COLORIZED = "android.colorized"; - field public static final String EXTRA_COMPACT_ACTIONS = "android.compactActions"; - field public static final String EXTRA_CONVERSATION_TITLE = "android.conversationTitle"; - field public static final String EXTRA_DECLINE_COLOR = "android.declineColor"; - field public static final String EXTRA_DECLINE_INTENT = "android.declineIntent"; - field public static final String EXTRA_HANG_UP_INTENT = "android.hangUpIntent"; - field public static final String EXTRA_HISTORIC_MESSAGES = "android.messages.historic"; - field public static final String EXTRA_INFO_TEXT = "android.infoText"; - field public static final String EXTRA_IS_GROUP_CONVERSATION = "android.isGroupConversation"; - field @Deprecated public static final String EXTRA_LARGE_ICON = "android.largeIcon"; - field public static final String EXTRA_LARGE_ICON_BIG = "android.largeIcon.big"; - field public static final String EXTRA_MEDIA_SESSION = "android.mediaSession"; - field public static final String EXTRA_MESSAGES = "android.messages"; - field public static final String EXTRA_MESSAGING_PERSON = "android.messagingUser"; - field public static final String EXTRA_NOTIFICATION_ID = "android.intent.extra.NOTIFICATION_ID"; - field public static final String EXTRA_NOTIFICATION_TAG = "android.intent.extra.NOTIFICATION_TAG"; - field @Deprecated public static final String EXTRA_PEOPLE = "android.people"; - field public static final String EXTRA_PEOPLE_LIST = "android.people.list"; - field public static final String EXTRA_PICTURE = "android.picture"; - field public static final String EXTRA_PICTURE_CONTENT_DESCRIPTION = "android.pictureContentDescription"; - field public static final String EXTRA_PICTURE_ICON = "android.pictureIcon"; - field public static final String EXTRA_PROGRESS = "android.progress"; - field public static final String EXTRA_PROGRESS_INDETERMINATE = "android.progressIndeterminate"; - field public static final String EXTRA_PROGRESS_MAX = "android.progressMax"; - field public static final String EXTRA_REMOTE_INPUT_DRAFT = "android.remoteInputDraft"; - field public static final String EXTRA_REMOTE_INPUT_HISTORY = "android.remoteInputHistory"; - field @Deprecated public static final String EXTRA_SELF_DISPLAY_NAME = "android.selfDisplayName"; - field public static final String EXTRA_SHOW_BIG_PICTURE_WHEN_COLLAPSED = "android.showBigPictureWhenCollapsed"; - field public static final String EXTRA_SHOW_CHRONOMETER = "android.showChronometer"; - field public static final String EXTRA_SHOW_WHEN = "android.showWhen"; - field @Deprecated public static final String EXTRA_SMALL_ICON = "android.icon"; - field public static final String EXTRA_SUB_TEXT = "android.subText"; - field public static final String EXTRA_SUMMARY_TEXT = "android.summaryText"; - field public static final String EXTRA_TEMPLATE = "android.template"; - field public static final String EXTRA_TEXT = "android.text"; - field public static final String EXTRA_TEXT_LINES = "android.textLines"; - field public static final String EXTRA_TITLE = "android.title"; - field public static final String EXTRA_TITLE_BIG = "android.title.big"; - field public static final String EXTRA_VERIFICATION_ICON = "android.verificationIcon"; - field public static final String EXTRA_VERIFICATION_TEXT = "android.verificationText"; - field public static final int FLAG_AUTO_CANCEL = 16; // 0x10 - field public static final int FLAG_BUBBLE = 4096; // 0x1000 - field public static final int FLAG_FOREGROUND_SERVICE = 64; // 0x40 - field public static final int FLAG_GROUP_SUMMARY = 512; // 0x200 - field @Deprecated public static final int FLAG_HIGH_PRIORITY = 128; // 0x80 - field public static final int FLAG_INSISTENT = 4; // 0x4 - field public static final int FLAG_LOCAL_ONLY = 256; // 0x100 - field public static final int FLAG_NO_CLEAR = 32; // 0x20 - field public static final int FLAG_ONGOING_EVENT = 2; // 0x2 - field public static final int FLAG_ONLY_ALERT_ONCE = 8; // 0x8 - field @FlaggedApi("android.app.api_rich_ongoing") public static final int FLAG_PROMOTED_ONGOING = 262144; // 0x40000 - field @Deprecated public static final int FLAG_SHOW_LIGHTS = 1; // 0x1 - field public static final int FOREGROUND_SERVICE_DEFAULT = 0; // 0x0 - field public static final int FOREGROUND_SERVICE_DEFERRED = 2; // 0x2 - field public static final int FOREGROUND_SERVICE_IMMEDIATE = 1; // 0x1 - field public static final int GROUP_ALERT_ALL = 0; // 0x0 - field public static final int GROUP_ALERT_CHILDREN = 2; // 0x2 - field public static final int GROUP_ALERT_SUMMARY = 1; // 0x1 - field public static final String INTENT_CATEGORY_NOTIFICATION_PREFERENCES = "android.intent.category.NOTIFICATION_PREFERENCES"; - field @Deprecated public static final int PRIORITY_DEFAULT = 0; // 0x0 - field @Deprecated public static final int PRIORITY_HIGH = 1; // 0x1 - field @Deprecated public static final int PRIORITY_LOW = -1; // 0xffffffff - field @Deprecated public static final int PRIORITY_MAX = 2; // 0x2 - field @Deprecated public static final int PRIORITY_MIN = -2; // 0xfffffffe - field @Deprecated public static final int STREAM_DEFAULT = -1; // 0xffffffff - field public static final int VISIBILITY_PRIVATE = 0; // 0x0 - field public static final int VISIBILITY_PUBLIC = 1; // 0x1 - field public static final int VISIBILITY_SECRET = -1; // 0xffffffff - field public android.app.Notification.Action[] actions; - field @Deprecated public android.media.AudioAttributes audioAttributes; - field @Deprecated public int audioStreamType; - field @Deprecated public android.widget.RemoteViews bigContentView; - field public String category; - field @ColorInt public int color; - field public android.app.PendingIntent contentIntent; - field @Deprecated public android.widget.RemoteViews contentView; - field @Deprecated public int defaults; - field public android.app.PendingIntent deleteIntent; - field public android.os.Bundle extras; - field public int flags; - field public android.app.PendingIntent fullScreenIntent; - field @Deprecated public android.widget.RemoteViews headsUpContentView; - field @Deprecated @DrawableRes public int icon; - field public int iconLevel; - field @Deprecated public android.graphics.Bitmap largeIcon; - field @Deprecated @ColorInt public int ledARGB; - field @Deprecated public int ledOffMS; - field @Deprecated public int ledOnMS; - field public int number; - field @Deprecated public int priority; - field public android.app.Notification publicVersion; - field @Deprecated public android.net.Uri sound; - field public CharSequence tickerText; - field @Deprecated public android.widget.RemoteViews tickerView; - field @Deprecated public long[] vibrate; - field public int visibility; - field public long when; - } - - public static class Notification.Action implements android.os.Parcelable { - ctor @Deprecated public Notification.Action(int, CharSequence, @Nullable android.app.PendingIntent); - method public android.app.Notification.Action clone(); - method public int describeContents(); - method public boolean getAllowGeneratedReplies(); - method public android.app.RemoteInput[] getDataOnlyRemoteInputs(); - method public android.os.Bundle getExtras(); - method public android.graphics.drawable.Icon getIcon(); - method public android.app.RemoteInput[] getRemoteInputs(); - method public int getSemanticAction(); - method public boolean isAuthenticationRequired(); - method public boolean isContextual(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SEMANTIC_ACTION_ARCHIVE = 5; // 0x5 - field public static final int SEMANTIC_ACTION_CALL = 10; // 0xa - field public static final int SEMANTIC_ACTION_DELETE = 4; // 0x4 - field public static final int SEMANTIC_ACTION_MARK_AS_READ = 2; // 0x2 - field public static final int SEMANTIC_ACTION_MARK_AS_UNREAD = 3; // 0x3 - field public static final int SEMANTIC_ACTION_MUTE = 6; // 0x6 - field public static final int SEMANTIC_ACTION_NONE = 0; // 0x0 - field public static final int SEMANTIC_ACTION_REPLY = 1; // 0x1 - field public static final int SEMANTIC_ACTION_THUMBS_DOWN = 9; // 0x9 - field public static final int SEMANTIC_ACTION_THUMBS_UP = 8; // 0x8 - field public static final int SEMANTIC_ACTION_UNMUTE = 7; // 0x7 - field public android.app.PendingIntent actionIntent; - field @Deprecated public int icon; - field public CharSequence title; - } - - public static final class Notification.Action.Builder { - ctor @Deprecated public Notification.Action.Builder(int, CharSequence, @Nullable android.app.PendingIntent); - ctor public Notification.Action.Builder(android.graphics.drawable.Icon, CharSequence, @Nullable android.app.PendingIntent); - ctor public Notification.Action.Builder(android.app.Notification.Action); - method @NonNull public android.app.Notification.Action.Builder addExtras(android.os.Bundle); - method @NonNull public android.app.Notification.Action.Builder addRemoteInput(android.app.RemoteInput); - method @NonNull public android.app.Notification.Action build(); - method @NonNull public android.app.Notification.Action.Builder extend(android.app.Notification.Action.Extender); - method @NonNull public android.os.Bundle getExtras(); - method @NonNull public android.app.Notification.Action.Builder setAllowGeneratedReplies(boolean); - method @NonNull public android.app.Notification.Action.Builder setAuthenticationRequired(boolean); - method @NonNull public android.app.Notification.Action.Builder setContextual(boolean); - method @NonNull public android.app.Notification.Action.Builder setSemanticAction(int); - } - - public static interface Notification.Action.Extender { - method public android.app.Notification.Action.Builder extend(android.app.Notification.Action.Builder); - } - - public static final class Notification.Action.WearableExtender implements android.app.Notification.Action.Extender { - ctor public Notification.Action.WearableExtender(); - ctor public Notification.Action.WearableExtender(android.app.Notification.Action); - method public android.app.Notification.Action.WearableExtender clone(); - method public android.app.Notification.Action.Builder extend(android.app.Notification.Action.Builder); - method @Deprecated public CharSequence getCancelLabel(); - method @Deprecated public CharSequence getConfirmLabel(); - method public boolean getHintDisplayActionInline(); - method public boolean getHintLaunchesActivity(); - method @Deprecated public CharSequence getInProgressLabel(); - method public boolean isAvailableOffline(); - method public android.app.Notification.Action.WearableExtender setAvailableOffline(boolean); - method @Deprecated public android.app.Notification.Action.WearableExtender setCancelLabel(CharSequence); - method @Deprecated public android.app.Notification.Action.WearableExtender setConfirmLabel(CharSequence); - method public android.app.Notification.Action.WearableExtender setHintDisplayActionInline(boolean); - method public android.app.Notification.Action.WearableExtender setHintLaunchesActivity(boolean); - method @Deprecated public android.app.Notification.Action.WearableExtender setInProgressLabel(CharSequence); - } - - public static class Notification.BigPictureStyle extends android.app.Notification.Style { - ctor public Notification.BigPictureStyle(); - ctor @Deprecated public Notification.BigPictureStyle(android.app.Notification.Builder); - method @NonNull public android.app.Notification.BigPictureStyle bigLargeIcon(@Nullable android.graphics.Bitmap); - method @NonNull public android.app.Notification.BigPictureStyle bigLargeIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.app.Notification.BigPictureStyle bigPicture(@Nullable android.graphics.Bitmap); - method @NonNull public android.app.Notification.BigPictureStyle bigPicture(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.app.Notification.BigPictureStyle setBigContentTitle(@Nullable CharSequence); - method @NonNull public android.app.Notification.BigPictureStyle setContentDescription(@Nullable CharSequence); - method @NonNull public android.app.Notification.BigPictureStyle setSummaryText(@Nullable CharSequence); - method @NonNull public android.app.Notification.BigPictureStyle showBigPictureWhenCollapsed(boolean); - } - - public static class Notification.BigTextStyle extends android.app.Notification.Style { - ctor public Notification.BigTextStyle(); - ctor @Deprecated public Notification.BigTextStyle(android.app.Notification.Builder); - method public android.app.Notification.BigTextStyle bigText(CharSequence); - method public android.app.Notification.BigTextStyle setBigContentTitle(CharSequence); - method public android.app.Notification.BigTextStyle setSummaryText(CharSequence); - } - - public static final class Notification.BubbleMetadata implements android.os.Parcelable { - method public int describeContents(); - method public boolean getAutoExpandBubble(); - method @Nullable public android.app.PendingIntent getDeleteIntent(); - method @Dimension(unit=android.annotation.Dimension.DP) public int getDesiredHeight(); - method @DimenRes public int getDesiredHeightResId(); - method @Nullable public android.graphics.drawable.Icon getIcon(); - method @Nullable public android.app.PendingIntent getIntent(); - method @Nullable public String getShortcutId(); - method public boolean isBubbleSuppressable(); - method public boolean isBubbleSuppressed(); - method public boolean isNotificationSuppressed(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class Notification.BubbleMetadata.Builder { - ctor @Deprecated public Notification.BubbleMetadata.Builder(); - ctor public Notification.BubbleMetadata.Builder(@NonNull String); - ctor public Notification.BubbleMetadata.Builder(@NonNull android.app.PendingIntent, @NonNull android.graphics.drawable.Icon); - method @NonNull public android.app.Notification.BubbleMetadata build(); - method @NonNull public android.app.Notification.BubbleMetadata.Builder setAutoExpandBubble(boolean); - method @NonNull public android.app.Notification.BubbleMetadata.Builder setDeleteIntent(@Nullable android.app.PendingIntent); - method @NonNull public android.app.Notification.BubbleMetadata.Builder setDesiredHeight(@Dimension(unit=android.annotation.Dimension.DP) int); - method @NonNull public android.app.Notification.BubbleMetadata.Builder setDesiredHeightResId(@DimenRes int); - method @NonNull public android.app.Notification.BubbleMetadata.Builder setIcon(@NonNull android.graphics.drawable.Icon); - method @NonNull public android.app.Notification.BubbleMetadata.Builder setIntent(@NonNull android.app.PendingIntent); - method @NonNull public android.app.Notification.BubbleMetadata.Builder setSuppressNotification(boolean); - method @NonNull public android.app.Notification.BubbleMetadata.Builder setSuppressableBubble(boolean); - } - - public static class Notification.Builder { - ctor public Notification.Builder(android.content.Context, String); - ctor @Deprecated public Notification.Builder(android.content.Context); - method @Deprecated public android.app.Notification.Builder addAction(int, CharSequence, android.app.PendingIntent); - method @NonNull public android.app.Notification.Builder addAction(android.app.Notification.Action); - method @NonNull public android.app.Notification.Builder addExtras(android.os.Bundle); - method @Deprecated public android.app.Notification.Builder addPerson(String); - method @NonNull public android.app.Notification.Builder addPerson(android.app.Person); - method @NonNull public android.app.Notification build(); - method @Deprecated public android.widget.RemoteViews createBigContentView(); - method @Deprecated public android.widget.RemoteViews createContentView(); - method @Deprecated public android.widget.RemoteViews createHeadsUpContentView(); - method @NonNull public android.app.Notification.Builder extend(android.app.Notification.Extender); - method public android.os.Bundle getExtras(); - method @Deprecated public android.app.Notification getNotification(); - method public android.app.Notification.Style getStyle(); - method @NonNull public static android.app.Notification.Builder recoverBuilder(android.content.Context, android.app.Notification); - method @NonNull public android.app.Notification.Builder setActions(android.app.Notification.Action...); - method @NonNull public android.app.Notification.Builder setAllowSystemGeneratedContextualActions(boolean); - method @NonNull public android.app.Notification.Builder setAutoCancel(boolean); - method @NonNull public android.app.Notification.Builder setBadgeIconType(int); - method @NonNull public android.app.Notification.Builder setBubbleMetadata(@Nullable android.app.Notification.BubbleMetadata); - method @NonNull public android.app.Notification.Builder setCategory(String); - method @NonNull public android.app.Notification.Builder setChannelId(String); - method @NonNull public android.app.Notification.Builder setChronometerCountDown(boolean); - method @NonNull public android.app.Notification.Builder setColor(@ColorInt int); - method @NonNull public android.app.Notification.Builder setColorized(boolean); - method @Deprecated public android.app.Notification.Builder setContent(android.widget.RemoteViews); - method @Deprecated public android.app.Notification.Builder setContentInfo(CharSequence); - method @NonNull public android.app.Notification.Builder setContentIntent(android.app.PendingIntent); - method @NonNull public android.app.Notification.Builder setContentText(CharSequence); - method @NonNull public android.app.Notification.Builder setContentTitle(CharSequence); - method @NonNull public android.app.Notification.Builder setCustomBigContentView(android.widget.RemoteViews); - method @NonNull public android.app.Notification.Builder setCustomContentView(android.widget.RemoteViews); - method @NonNull public android.app.Notification.Builder setCustomHeadsUpContentView(android.widget.RemoteViews); - method @Deprecated public android.app.Notification.Builder setDefaults(int); - method @NonNull public android.app.Notification.Builder setDeleteIntent(android.app.PendingIntent); - method @NonNull public android.app.Notification.Builder setExtras(android.os.Bundle); - method @NonNull public android.app.Notification.Builder setFlag(int, boolean); - method @NonNull public android.app.Notification.Builder setForegroundServiceBehavior(int); - method @NonNull @RequiresPermission(android.Manifest.permission.USE_FULL_SCREEN_INTENT) public android.app.Notification.Builder setFullScreenIntent(android.app.PendingIntent, boolean); - method @NonNull public android.app.Notification.Builder setGroup(String); - method @NonNull public android.app.Notification.Builder setGroupAlertBehavior(int); - method @NonNull public android.app.Notification.Builder setGroupSummary(boolean); - method @NonNull public android.app.Notification.Builder setLargeIcon(android.graphics.Bitmap); - method @NonNull public android.app.Notification.Builder setLargeIcon(android.graphics.drawable.Icon); - method @Deprecated public android.app.Notification.Builder setLights(@ColorInt int, int, int); - method @NonNull public android.app.Notification.Builder setLocalOnly(boolean); - method @NonNull public android.app.Notification.Builder setLocusId(@Nullable android.content.LocusId); - method @NonNull public android.app.Notification.Builder setNumber(int); - method @NonNull public android.app.Notification.Builder setOngoing(boolean); - method @NonNull public android.app.Notification.Builder setOnlyAlertOnce(boolean); - method @Deprecated public android.app.Notification.Builder setPriority(int); - method @NonNull public android.app.Notification.Builder setProgress(int, int, boolean); - method @NonNull public android.app.Notification.Builder setPublicVersion(android.app.Notification); - method @NonNull public android.app.Notification.Builder setRemoteInputHistory(CharSequence[]); - method @NonNull public android.app.Notification.Builder setSettingsText(CharSequence); - method @FlaggedApi("android.app.api_rich_ongoing") @NonNull public android.app.Notification.Builder setShortCriticalText(@Nullable String); - method @NonNull public android.app.Notification.Builder setShortcutId(String); - method @NonNull public android.app.Notification.Builder setShowWhen(boolean); - method @NonNull public android.app.Notification.Builder setSmallIcon(@DrawableRes int); - method @NonNull public android.app.Notification.Builder setSmallIcon(@DrawableRes int, int); - method @NonNull public android.app.Notification.Builder setSmallIcon(android.graphics.drawable.Icon); - method @NonNull public android.app.Notification.Builder setSortKey(String); - method @Deprecated public android.app.Notification.Builder setSound(android.net.Uri); - method @Deprecated public android.app.Notification.Builder setSound(android.net.Uri, int); - method @Deprecated public android.app.Notification.Builder setSound(android.net.Uri, android.media.AudioAttributes); - method @NonNull public android.app.Notification.Builder setStyle(android.app.Notification.Style); - method @NonNull public android.app.Notification.Builder setSubText(CharSequence); - method @NonNull public android.app.Notification.Builder setTicker(CharSequence); - method @Deprecated public android.app.Notification.Builder setTicker(CharSequence, android.widget.RemoteViews); - method @NonNull public android.app.Notification.Builder setTimeoutAfter(long); - method @NonNull public android.app.Notification.Builder setUsesChronometer(boolean); - method @Deprecated public android.app.Notification.Builder setVibrate(long[]); - method @NonNull public android.app.Notification.Builder setVisibility(int); - method @NonNull public android.app.Notification.Builder setWhen(long); - } - - public static class Notification.CallStyle extends android.app.Notification.Style { - method @NonNull public static android.app.Notification.CallStyle forIncomingCall(@NonNull android.app.Person, @NonNull android.app.PendingIntent, @NonNull android.app.PendingIntent); - method @NonNull public static android.app.Notification.CallStyle forOngoingCall(@NonNull android.app.Person, @NonNull android.app.PendingIntent); - method @NonNull public static android.app.Notification.CallStyle forScreeningCall(@NonNull android.app.Person, @NonNull android.app.PendingIntent, @NonNull android.app.PendingIntent); - method @NonNull public android.app.Notification.CallStyle setAnswerButtonColorHint(@ColorInt int); - method @NonNull public android.app.Notification.CallStyle setDeclineButtonColorHint(@ColorInt int); - method @NonNull public android.app.Notification.CallStyle setIsVideo(boolean); - method @NonNull public android.app.Notification.CallStyle setVerificationIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.app.Notification.CallStyle setVerificationText(@Nullable CharSequence); - field public static final int CALL_TYPE_INCOMING = 1; // 0x1 - field public static final int CALL_TYPE_ONGOING = 2; // 0x2 - field public static final int CALL_TYPE_SCREENING = 3; // 0x3 - field public static final int CALL_TYPE_UNKNOWN = 0; // 0x0 - } - - public static final class Notification.CarExtender implements android.app.Notification.Extender { - ctor public Notification.CarExtender(); - ctor public Notification.CarExtender(android.app.Notification); - method public android.app.Notification.Builder extend(android.app.Notification.Builder); - method @ColorInt public int getColor(); - method public android.graphics.Bitmap getLargeIcon(); - method public android.app.Notification.CarExtender.UnreadConversation getUnreadConversation(); - method public android.app.Notification.CarExtender setColor(@ColorInt int); - method public android.app.Notification.CarExtender setLargeIcon(android.graphics.Bitmap); - method public android.app.Notification.CarExtender setUnreadConversation(android.app.Notification.CarExtender.UnreadConversation); - } - - public static class Notification.CarExtender.Builder { - ctor public Notification.CarExtender.Builder(String); - method public android.app.Notification.CarExtender.Builder addMessage(String); - method public android.app.Notification.CarExtender.UnreadConversation build(); - method public android.app.Notification.CarExtender.Builder setLatestTimestamp(long); - method public android.app.Notification.CarExtender.Builder setReadPendingIntent(android.app.PendingIntent); - method public android.app.Notification.CarExtender.Builder setReplyAction(android.app.PendingIntent, android.app.RemoteInput); - } - - public static class Notification.CarExtender.UnreadConversation { - method public long getLatestTimestamp(); - method public String[] getMessages(); - method public String getParticipant(); - method public String[] getParticipants(); - method public android.app.PendingIntent getReadPendingIntent(); - method public android.app.RemoteInput getRemoteInput(); - method public android.app.PendingIntent getReplyPendingIntent(); - } - - public static class Notification.DecoratedCustomViewStyle extends android.app.Notification.Style { - ctor public Notification.DecoratedCustomViewStyle(); - } - - public static class Notification.DecoratedMediaCustomViewStyle extends android.app.Notification.MediaStyle { - ctor public Notification.DecoratedMediaCustomViewStyle(); - } - - public static interface Notification.Extender { - method public android.app.Notification.Builder extend(android.app.Notification.Builder); - } - - public static class Notification.InboxStyle extends android.app.Notification.Style { - ctor public Notification.InboxStyle(); - ctor @Deprecated public Notification.InboxStyle(android.app.Notification.Builder); - method public android.app.Notification.InboxStyle addLine(CharSequence); - method public android.app.Notification.InboxStyle setBigContentTitle(CharSequence); - method public android.app.Notification.InboxStyle setSummaryText(CharSequence); - } - - public static class Notification.MediaStyle extends android.app.Notification.Style { - ctor public Notification.MediaStyle(); - ctor @Deprecated public Notification.MediaStyle(android.app.Notification.Builder); - method public android.app.Notification.MediaStyle setMediaSession(android.media.session.MediaSession.Token); - method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public android.app.Notification.MediaStyle setRemotePlaybackInfo(@NonNull CharSequence, @DrawableRes int, @Nullable android.app.PendingIntent); - method public android.app.Notification.MediaStyle setShowActionsInCompactView(int...); - } - - public static class Notification.MessagingStyle extends android.app.Notification.Style { - ctor @Deprecated public Notification.MessagingStyle(@NonNull CharSequence); - ctor public Notification.MessagingStyle(@NonNull android.app.Person); - method public android.app.Notification.MessagingStyle addHistoricMessage(android.app.Notification.MessagingStyle.Message); - method @Deprecated public android.app.Notification.MessagingStyle addMessage(CharSequence, long, CharSequence); - method public android.app.Notification.MessagingStyle addMessage(@NonNull CharSequence, long, @Nullable android.app.Person); - method public android.app.Notification.MessagingStyle addMessage(android.app.Notification.MessagingStyle.Message); - method @Nullable public CharSequence getConversationTitle(); - method public java.util.List getHistoricMessages(); - method public java.util.List getMessages(); - method @NonNull public android.app.Person getUser(); - method @Deprecated public CharSequence getUserDisplayName(); - method public boolean isGroupConversation(); - method public android.app.Notification.MessagingStyle setConversationTitle(@Nullable CharSequence); - method public android.app.Notification.MessagingStyle setGroupConversation(boolean); - field public static final int MAXIMUM_RETAINED_MESSAGES = 25; // 0x19 - } - - public static final class Notification.MessagingStyle.Message { - ctor @Deprecated public Notification.MessagingStyle.Message(CharSequence, long, CharSequence); - ctor public Notification.MessagingStyle.Message(@NonNull CharSequence, long, @Nullable android.app.Person); - method public String getDataMimeType(); - method public android.net.Uri getDataUri(); - method public android.os.Bundle getExtras(); - method @NonNull public static java.util.List getMessagesFromBundleArray(@Nullable android.os.Parcelable[]); - method @Deprecated public CharSequence getSender(); - method @Nullable public android.app.Person getSenderPerson(); - method public CharSequence getText(); - method public long getTimestamp(); - method public android.app.Notification.MessagingStyle.Message setData(String, android.net.Uri); - } - - @FlaggedApi("android.app.api_rich_ongoing") public static class Notification.ProgressStyle extends android.app.Notification.Style { - ctor public Notification.ProgressStyle(); - method @NonNull public android.app.Notification.ProgressStyle addProgressPoint(@NonNull android.app.Notification.ProgressStyle.Point); - method @NonNull public android.app.Notification.ProgressStyle addProgressSegment(@NonNull android.app.Notification.ProgressStyle.Segment); - method public int getProgress(); - method @Nullable public android.graphics.drawable.Icon getProgressEndIcon(); - method public int getProgressMax(); - method @NonNull public java.util.List getProgressPoints(); - method @NonNull public java.util.List getProgressSegments(); - method @Nullable public android.graphics.drawable.Icon getProgressStartIcon(); - method @Nullable public android.graphics.drawable.Icon getProgressTrackerIcon(); - method public boolean isProgressIndeterminate(); - method public boolean isStyledByProgress(); - method @NonNull public android.app.Notification.ProgressStyle setProgress(int); - method @NonNull public android.app.Notification.ProgressStyle setProgressEndIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.app.Notification.ProgressStyle setProgressIndeterminate(boolean); - method @NonNull public android.app.Notification.ProgressStyle setProgressPoints(@NonNull java.util.List); - method @NonNull public android.app.Notification.ProgressStyle setProgressSegments(@NonNull java.util.List); - method @NonNull public android.app.Notification.ProgressStyle setProgressStartIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.app.Notification.ProgressStyle setProgressTrackerIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.app.Notification.ProgressStyle setStyledByProgress(boolean); - } - - public static final class Notification.ProgressStyle.Point { - ctor public Notification.ProgressStyle.Point(int); - method @ColorInt public int getColor(); - method public int getId(); - method public int getPosition(); - method @NonNull public android.app.Notification.ProgressStyle.Point setColor(@ColorInt int); - method @NonNull public android.app.Notification.ProgressStyle.Point setId(int); - } - - public static final class Notification.ProgressStyle.Segment { - ctor public Notification.ProgressStyle.Segment(int); - method @ColorInt public int getColor(); - method public int getId(); - method public int getLength(); - method @NonNull public android.app.Notification.ProgressStyle.Segment setColor(@ColorInt int); - method @NonNull public android.app.Notification.ProgressStyle.Segment setId(int); - } - - public abstract static class Notification.Style { - ctor @Deprecated public Notification.Style(); - method public android.app.Notification build(); - method protected void checkBuilder(); - method protected android.widget.RemoteViews getStandardView(int); - method protected void internalSetBigContentTitle(CharSequence); - method protected void internalSetSummaryText(CharSequence); - method public void setBuilder(android.app.Notification.Builder); - field protected android.app.Notification.Builder mBuilder; - } - - @FlaggedApi("android.app.api_tvextender") public static final class Notification.TvExtender implements android.app.Notification.Extender { - ctor public Notification.TvExtender(); - ctor public Notification.TvExtender(@NonNull android.app.Notification); - method @NonNull public android.app.Notification.Builder extend(@NonNull android.app.Notification.Builder); - method @Nullable public String getChannelId(); - method @Nullable public android.app.PendingIntent getContentIntent(); - method @Nullable public android.app.PendingIntent getDeleteIntent(); - method public boolean isAvailableOnTv(); - method public boolean isSuppressShowOverApps(); - method @NonNull public android.app.Notification.TvExtender setChannelId(@Nullable String); - method @NonNull public android.app.Notification.TvExtender setContentIntent(@Nullable android.app.PendingIntent); - method @NonNull public android.app.Notification.TvExtender setDeleteIntent(@Nullable android.app.PendingIntent); - method @NonNull public android.app.Notification.TvExtender setSuppressShowOverApps(boolean); - } - - public static final class Notification.WearableExtender implements android.app.Notification.Extender { - ctor public Notification.WearableExtender(); - ctor public Notification.WearableExtender(android.app.Notification); - method public android.app.Notification.WearableExtender addAction(android.app.Notification.Action); - method public android.app.Notification.WearableExtender addActions(java.util.List); - method @Deprecated public android.app.Notification.WearableExtender addPage(android.app.Notification); - method @Deprecated public android.app.Notification.WearableExtender addPages(java.util.List); - method public android.app.Notification.WearableExtender clearActions(); - method @Deprecated public android.app.Notification.WearableExtender clearPages(); - method public android.app.Notification.WearableExtender clone(); - method public android.app.Notification.Builder extend(android.app.Notification.Builder); - method public java.util.List getActions(); - method public String getBridgeTag(); - method public int getContentAction(); - method @Deprecated public int getContentIcon(); - method @Deprecated public int getContentIconGravity(); - method public boolean getContentIntentAvailableOffline(); - method @Deprecated public int getCustomContentHeight(); - method @Deprecated public int getCustomSizePreset(); - method public String getDismissalId(); - method @Deprecated public android.app.PendingIntent getDisplayIntent(); - method @Deprecated public int getGravity(); - method @Deprecated public boolean getHintAmbientBigPicture(); - method @Deprecated public boolean getHintAvoidBackgroundClipping(); - method public boolean getHintContentIntentLaunchesActivity(); - method @Deprecated public boolean getHintHideIcon(); - method @Deprecated public int getHintScreenTimeout(); - method @Deprecated public boolean getHintShowBackgroundOnly(); - method @Deprecated public java.util.List getPages(); - method public boolean getStartScrollBottom(); - method public android.app.Notification.WearableExtender setBridgeTag(String); - method public android.app.Notification.WearableExtender setContentAction(int); - method @Deprecated public android.app.Notification.WearableExtender setContentIcon(int); - method @Deprecated public android.app.Notification.WearableExtender setContentIconGravity(int); - method public android.app.Notification.WearableExtender setContentIntentAvailableOffline(boolean); - method @Deprecated public android.app.Notification.WearableExtender setCustomContentHeight(int); - method @Deprecated public android.app.Notification.WearableExtender setCustomSizePreset(int); - method public android.app.Notification.WearableExtender setDismissalId(String); - method @Deprecated public android.app.Notification.WearableExtender setDisplayIntent(android.app.PendingIntent); - method @Deprecated public android.app.Notification.WearableExtender setGravity(int); - method @Deprecated public android.app.Notification.WearableExtender setHintAmbientBigPicture(boolean); - method @Deprecated public android.app.Notification.WearableExtender setHintAvoidBackgroundClipping(boolean); - method public android.app.Notification.WearableExtender setHintContentIntentLaunchesActivity(boolean); - method @Deprecated public android.app.Notification.WearableExtender setHintHideIcon(boolean); - method @Deprecated public android.app.Notification.WearableExtender setHintScreenTimeout(int); - method @Deprecated public android.app.Notification.WearableExtender setHintShowBackgroundOnly(boolean); - method public android.app.Notification.WearableExtender setStartScrollBottom(boolean); - field @Deprecated public static final int SCREEN_TIMEOUT_LONG = -1; // 0xffffffff - field @Deprecated public static final int SCREEN_TIMEOUT_SHORT = 0; // 0x0 - field @Deprecated public static final int SIZE_DEFAULT = 0; // 0x0 - field @Deprecated public static final int SIZE_FULL_SCREEN = 5; // 0x5 - field @Deprecated public static final int SIZE_LARGE = 4; // 0x4 - field @Deprecated public static final int SIZE_MEDIUM = 3; // 0x3 - field @Deprecated public static final int SIZE_SMALL = 2; // 0x2 - field @Deprecated public static final int SIZE_XSMALL = 1; // 0x1 - field public static final int UNSET_ACTION_INDEX = -1; // 0xffffffff - } - - public final class NotificationChannel implements android.os.Parcelable { - ctor public NotificationChannel(String, CharSequence, int); - method public boolean canBubble(); - method public boolean canBypassDnd(); - method public boolean canShowBadge(); - method public int describeContents(); - method public void enableLights(boolean); - method public void enableVibration(boolean); - method public android.media.AudioAttributes getAudioAttributes(); - method @Nullable public String getConversationId(); - method public String getDescription(); - method public String getGroup(); - method public String getId(); - method public int getImportance(); - method public int getLightColor(); - method public int getLockscreenVisibility(); - method public CharSequence getName(); - method @Nullable public String getParentChannelId(); - method public android.net.Uri getSound(); - method @FlaggedApi("android.app.notification_channel_vibration_effect_api") @Nullable public android.os.VibrationEffect getVibrationEffect(); - method public long[] getVibrationPattern(); - method public boolean hasUserSetImportance(); - method public boolean hasUserSetSound(); - method public boolean isBlockable(); - method public boolean isConversation(); - method public boolean isDemoted(); - method public boolean isImportantConversation(); - method public void setAllowBubbles(boolean); - method public void setBlockable(boolean); - method public void setBypassDnd(boolean); - method public void setConversationId(@NonNull String, @NonNull String); - method public void setDescription(String); - method public void setGroup(String); - method public void setImportance(int); - method public void setLightColor(int); - method public void setLockscreenVisibility(int); - method public void setName(CharSequence); - method public void setShowBadge(boolean); - method public void setSound(android.net.Uri, android.media.AudioAttributes); - method @FlaggedApi("android.app.notification_channel_vibration_effect_api") public void setVibrationEffect(@Nullable android.os.VibrationEffect); - method public void setVibrationPattern(long[]); - method public boolean shouldShowLights(); - method public boolean shouldVibrate(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String DEFAULT_CHANNEL_ID = "miscellaneous"; - field public static final String EDIT_CONVERSATION = "conversation"; - field public static final String EDIT_IMPORTANCE = "importance"; - field public static final String EDIT_LAUNCHER = "launcher"; - field public static final String EDIT_LOCKED_DEVICE = "locked"; - field public static final String EDIT_SOUND = "sound"; - field public static final String EDIT_VIBRATION = "vibration"; - field public static final String EDIT_ZEN = "zen"; - } - - public final class NotificationChannelGroup implements android.os.Parcelable { - ctor public NotificationChannelGroup(String, CharSequence); - method public android.app.NotificationChannelGroup clone(); - method public int describeContents(); - method public java.util.List getChannels(); - method public String getDescription(); - method public String getId(); - method public CharSequence getName(); - method public boolean isBlocked(); - method public void setDescription(String); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class NotificationManager { - method public String addAutomaticZenRule(android.app.AutomaticZenRule); - method @FlaggedApi("android.app.modes_api") public boolean areAutomaticZenRulesUserManaged(); - method @Deprecated public boolean areBubblesAllowed(); - method public boolean areBubblesEnabled(); - method public boolean areNotificationsEnabled(); - method public boolean areNotificationsPaused(); - method public boolean canNotifyAsPackage(@NonNull String); - method @FlaggedApi("android.app.api_rich_ongoing") public boolean canPostPromotedNotifications(); - method public boolean canUseFullScreenIntent(); - method public void cancel(int); - method public void cancel(@Nullable String, int); - method public void cancelAll(); - method public void cancelAsPackage(@NonNull String, @Nullable String, int); - method public void createNotificationChannel(@NonNull android.app.NotificationChannel); - method public void createNotificationChannelGroup(@NonNull android.app.NotificationChannelGroup); - method public void createNotificationChannelGroups(@NonNull java.util.List); - method public void createNotificationChannels(@NonNull java.util.List); - method public void deleteNotificationChannel(String); - method public void deleteNotificationChannelGroup(String); - method public android.service.notification.StatusBarNotification[] getActiveNotifications(); - method public android.app.AutomaticZenRule getAutomaticZenRule(String); - method @FlaggedApi("android.app.modes_api") public int getAutomaticZenRuleState(@NonNull String); - method public java.util.Map getAutomaticZenRules(); - method public int getBubblePreference(); - method @NonNull public android.app.NotificationManager.Policy getConsolidatedNotificationPolicy(); - method public final int getCurrentInterruptionFilter(); - method public int getImportance(); - method public android.app.NotificationChannel getNotificationChannel(String); - method @Nullable public android.app.NotificationChannel getNotificationChannel(@NonNull String, @NonNull String); - method public android.app.NotificationChannelGroup getNotificationChannelGroup(String); - method public java.util.List getNotificationChannelGroups(); - method public java.util.List getNotificationChannels(); - method @Nullable public String getNotificationDelegate(); - method public android.app.NotificationManager.Policy getNotificationPolicy(); - method public boolean isNotificationListenerAccessGranted(android.content.ComponentName); - method public boolean isNotificationPolicyAccessGranted(); - method @WorkerThread public boolean matchesCallFilter(@NonNull android.net.Uri); - method public void notify(int, android.app.Notification); - method public void notify(String, int, android.app.Notification); - method public void notifyAsPackage(@NonNull String, @Nullable String, int, @NonNull android.app.Notification); - method public boolean removeAutomaticZenRule(String); - method public void setAutomaticZenRuleState(@NonNull String, @NonNull android.service.notification.Condition); - method public final void setInterruptionFilter(int); - method public void setNotificationDelegate(@Nullable String); - method public void setNotificationPolicy(@NonNull android.app.NotificationManager.Policy); - method public boolean shouldHideSilentStatusBarIcons(); - method public boolean updateAutomaticZenRule(String, android.app.AutomaticZenRule); - field public static final String ACTION_APP_BLOCK_STATE_CHANGED = "android.app.action.APP_BLOCK_STATE_CHANGED"; - field public static final String ACTION_AUTOMATIC_ZEN_RULE = "android.app.action.AUTOMATIC_ZEN_RULE"; - field public static final String ACTION_AUTOMATIC_ZEN_RULE_STATUS_CHANGED = "android.app.action.AUTOMATIC_ZEN_RULE_STATUS_CHANGED"; - field @FlaggedApi("android.app.modes_api") public static final String ACTION_CONSOLIDATED_NOTIFICATION_POLICY_CHANGED = "android.app.action.CONSOLIDATED_NOTIFICATION_POLICY_CHANGED"; - field public static final String ACTION_INTERRUPTION_FILTER_CHANGED = "android.app.action.INTERRUPTION_FILTER_CHANGED"; - field public static final String ACTION_NOTIFICATION_CHANNEL_BLOCK_STATE_CHANGED = "android.app.action.NOTIFICATION_CHANNEL_BLOCK_STATE_CHANGED"; - field public static final String ACTION_NOTIFICATION_CHANNEL_GROUP_BLOCK_STATE_CHANGED = "android.app.action.NOTIFICATION_CHANNEL_GROUP_BLOCK_STATE_CHANGED"; - field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED = "android.app.action.NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED"; - field public static final String ACTION_NOTIFICATION_POLICY_CHANGED = "android.app.action.NOTIFICATION_POLICY_CHANGED"; - field @FlaggedApi("android.app.modes_api") public static final int AUTOMATIC_RULE_STATUS_ACTIVATED = 4; // 0x4 - field @FlaggedApi("android.app.modes_api") public static final int AUTOMATIC_RULE_STATUS_DEACTIVATED = 5; // 0x5 - field public static final int AUTOMATIC_RULE_STATUS_DISABLED = 2; // 0x2 - field public static final int AUTOMATIC_RULE_STATUS_ENABLED = 1; // 0x1 - field public static final int AUTOMATIC_RULE_STATUS_REMOVED = 3; // 0x3 - field public static final int AUTOMATIC_RULE_STATUS_UNKNOWN = -1; // 0xffffffff - field public static final int BUBBLE_PREFERENCE_ALL = 1; // 0x1 - field public static final int BUBBLE_PREFERENCE_NONE = 0; // 0x0 - field public static final int BUBBLE_PREFERENCE_SELECTED = 2; // 0x2 - field public static final String EXTRA_AUTOMATIC_RULE_ID = "android.app.extra.AUTOMATIC_RULE_ID"; - field public static final String EXTRA_AUTOMATIC_ZEN_RULE_ID = "android.app.extra.AUTOMATIC_ZEN_RULE_ID"; - field public static final String EXTRA_AUTOMATIC_ZEN_RULE_STATUS = "android.app.extra.AUTOMATIC_ZEN_RULE_STATUS"; - field public static final String EXTRA_BLOCKED_STATE = "android.app.extra.BLOCKED_STATE"; - field public static final String EXTRA_NOTIFICATION_CHANNEL_GROUP_ID = "android.app.extra.NOTIFICATION_CHANNEL_GROUP_ID"; - field public static final String EXTRA_NOTIFICATION_CHANNEL_ID = "android.app.extra.NOTIFICATION_CHANNEL_ID"; - field @FlaggedApi("android.app.modes_api") public static final String EXTRA_NOTIFICATION_POLICY = "android.app.extra.NOTIFICATION_POLICY"; - field public static final int IMPORTANCE_DEFAULT = 3; // 0x3 - field public static final int IMPORTANCE_HIGH = 4; // 0x4 - field public static final int IMPORTANCE_LOW = 2; // 0x2 - field public static final int IMPORTANCE_MAX = 5; // 0x5 - field public static final int IMPORTANCE_MIN = 1; // 0x1 - field public static final int IMPORTANCE_NONE = 0; // 0x0 - field public static final int IMPORTANCE_UNSPECIFIED = -1000; // 0xfffffc18 - field public static final int INTERRUPTION_FILTER_ALARMS = 4; // 0x4 - field public static final int INTERRUPTION_FILTER_ALL = 1; // 0x1 - field public static final int INTERRUPTION_FILTER_NONE = 3; // 0x3 - field public static final int INTERRUPTION_FILTER_PRIORITY = 2; // 0x2 - field public static final int INTERRUPTION_FILTER_UNKNOWN = 0; // 0x0 - field public static final String META_DATA_AUTOMATIC_RULE_TYPE = "android.service.zen.automatic.ruleType"; - field public static final String META_DATA_RULE_INSTANCE_LIMIT = "android.service.zen.automatic.ruleInstanceLimit"; - } - - public static class NotificationManager.Policy implements android.os.Parcelable { - ctor public NotificationManager.Policy(int, int, int); - ctor public NotificationManager.Policy(int, int, int, int); - ctor public NotificationManager.Policy(int, int, int, int, int); - method public int describeContents(); - method public static String priorityCategoriesToString(int); - method public static String prioritySendersToString(int); - method public static String suppressedEffectsToString(int); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CONVERSATION_SENDERS_ANYONE = 1; // 0x1 - field public static final int CONVERSATION_SENDERS_IMPORTANT = 2; // 0x2 - field public static final int CONVERSATION_SENDERS_NONE = 3; // 0x3 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int PRIORITY_CATEGORY_ALARMS = 32; // 0x20 - field public static final int PRIORITY_CATEGORY_CALLS = 8; // 0x8 - field public static final int PRIORITY_CATEGORY_CONVERSATIONS = 256; // 0x100 - field public static final int PRIORITY_CATEGORY_EVENTS = 2; // 0x2 - field public static final int PRIORITY_CATEGORY_MEDIA = 64; // 0x40 - field public static final int PRIORITY_CATEGORY_MESSAGES = 4; // 0x4 - field public static final int PRIORITY_CATEGORY_REMINDERS = 1; // 0x1 - field public static final int PRIORITY_CATEGORY_REPEAT_CALLERS = 16; // 0x10 - field public static final int PRIORITY_CATEGORY_SYSTEM = 128; // 0x80 - field public static final int PRIORITY_SENDERS_ANY = 0; // 0x0 - field public static final int PRIORITY_SENDERS_CONTACTS = 1; // 0x1 - field public static final int PRIORITY_SENDERS_STARRED = 2; // 0x2 - field public static final int SUPPRESSED_EFFECT_AMBIENT = 128; // 0x80 - field public static final int SUPPRESSED_EFFECT_BADGE = 64; // 0x40 - field public static final int SUPPRESSED_EFFECT_FULL_SCREEN_INTENT = 4; // 0x4 - field public static final int SUPPRESSED_EFFECT_LIGHTS = 8; // 0x8 - field public static final int SUPPRESSED_EFFECT_NOTIFICATION_LIST = 256; // 0x100 - field public static final int SUPPRESSED_EFFECT_PEEK = 16; // 0x10 - field @Deprecated public static final int SUPPRESSED_EFFECT_SCREEN_OFF = 1; // 0x1 - field @Deprecated public static final int SUPPRESSED_EFFECT_SCREEN_ON = 2; // 0x2 - field public static final int SUPPRESSED_EFFECT_STATUS_BAR = 32; // 0x20 - field public final int priorityCallSenders; - field public final int priorityCategories; - field public final int priorityConversationSenders; - field public final int priorityMessageSenders; - field public final int suppressedVisualEffects; - } - - public final class PendingIntent implements android.os.Parcelable { - method public void cancel(); - method public int describeContents(); - method public static android.app.PendingIntent getActivities(android.content.Context, int, @NonNull android.content.Intent[], int); - method public static android.app.PendingIntent getActivities(android.content.Context, int, @NonNull android.content.Intent[], int, @Nullable android.os.Bundle); - method public static android.app.PendingIntent getActivity(android.content.Context, int, android.content.Intent, int); - method public static android.app.PendingIntent getActivity(android.content.Context, int, @NonNull android.content.Intent, int, @Nullable android.os.Bundle); - method public static android.app.PendingIntent getBroadcast(android.content.Context, int, @NonNull android.content.Intent, int); - method @Nullable public String getCreatorPackage(); - method public int getCreatorUid(); - method @NonNull public android.os.UserHandle getCreatorUserHandle(); - method public static android.app.PendingIntent getForegroundService(android.content.Context, int, @NonNull android.content.Intent, int); - method @NonNull public android.content.IntentSender getIntentSender(); - method public static android.app.PendingIntent getService(android.content.Context, int, @NonNull android.content.Intent, int); - method @Deprecated @Nullable public String getTargetPackage(); - method public boolean isActivity(); - method public boolean isBroadcast(); - method public boolean isForegroundService(); - method public boolean isImmutable(); - method public boolean isService(); - method @Nullable public static android.app.PendingIntent readPendingIntentOrNullFromParcel(@NonNull android.os.Parcel); - method public void send() throws android.app.PendingIntent.CanceledException; - method public void send(int) throws android.app.PendingIntent.CanceledException; - method public void send(android.content.Context, int, @Nullable android.content.Intent) throws android.app.PendingIntent.CanceledException; - method public void send(@Nullable android.os.Bundle) throws android.app.PendingIntent.CanceledException; - method public void send(int, @Nullable android.app.PendingIntent.OnFinished, @Nullable android.os.Handler) throws android.app.PendingIntent.CanceledException; - method public void send(android.content.Context, int, @Nullable android.content.Intent, @Nullable android.app.PendingIntent.OnFinished, @Nullable android.os.Handler) throws android.app.PendingIntent.CanceledException; - method public void send(android.content.Context, int, @Nullable android.content.Intent, @Nullable android.app.PendingIntent.OnFinished, @Nullable android.os.Handler, @Nullable String) throws android.app.PendingIntent.CanceledException; - method public void send(android.content.Context, int, @Nullable android.content.Intent, @Nullable android.app.PendingIntent.OnFinished, @Nullable android.os.Handler, @Nullable String, @Nullable android.os.Bundle) throws android.app.PendingIntent.CanceledException; - method public static void writePendingIntentOrNullToParcel(@Nullable android.app.PendingIntent, @NonNull android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_ALLOW_UNSAFE_IMPLICIT_INTENT = 16777216; // 0x1000000 - field public static final int FLAG_CANCEL_CURRENT = 268435456; // 0x10000000 - field public static final int FLAG_IMMUTABLE = 67108864; // 0x4000000 - field public static final int FLAG_MUTABLE = 33554432; // 0x2000000 - field public static final int FLAG_NO_CREATE = 536870912; // 0x20000000 - field public static final int FLAG_ONE_SHOT = 1073741824; // 0x40000000 - field public static final int FLAG_UPDATE_CURRENT = 134217728; // 0x8000000 - } - - public static class PendingIntent.CanceledException extends android.util.AndroidException { - ctor public PendingIntent.CanceledException(); - ctor public PendingIntent.CanceledException(String); - ctor public PendingIntent.CanceledException(Exception); - } - - public static interface PendingIntent.OnFinished { - method public void onSendFinished(android.app.PendingIntent, android.content.Intent, int, String, android.os.Bundle); - } - - public final class Person implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.graphics.drawable.Icon getIcon(); - method @Nullable public String getKey(); - method @Nullable public CharSequence getName(); - method @Nullable public String getUri(); - method public boolean isBot(); - method public boolean isImportant(); - method public android.app.Person.Builder toBuilder(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class Person.Builder { - ctor public Person.Builder(); - method @NonNull public android.app.Person build(); - method @NonNull public android.app.Person.Builder setBot(boolean); - method @NonNull public android.app.Person.Builder setIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.app.Person.Builder setImportant(boolean); - method @NonNull public android.app.Person.Builder setKey(@Nullable String); - method @NonNull public android.app.Person.Builder setName(@Nullable CharSequence); - method @NonNull public android.app.Person.Builder setUri(@Nullable String); - } - - public final class PictureInPictureParams implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getActions(); - method @Nullable public android.util.Rational getAspectRatio(); - method @Nullable public android.app.RemoteAction getCloseAction(); - method @Nullable public android.util.Rational getExpandedAspectRatio(); - method @Nullable public android.graphics.Rect getSourceRectHint(); - method @Nullable public CharSequence getSubtitle(); - method @Nullable public CharSequence getTitle(); - method public boolean isAutoEnterEnabled(); - method public boolean isSeamlessResizeEnabled(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class PictureInPictureParams.Builder { - ctor public PictureInPictureParams.Builder(); - ctor public PictureInPictureParams.Builder(@NonNull android.app.PictureInPictureParams); - method public android.app.PictureInPictureParams build(); - method public android.app.PictureInPictureParams.Builder setActions(java.util.List); - method public android.app.PictureInPictureParams.Builder setAspectRatio(android.util.Rational); - method @NonNull public android.app.PictureInPictureParams.Builder setAutoEnterEnabled(boolean); - method @NonNull public android.app.PictureInPictureParams.Builder setCloseAction(@Nullable android.app.RemoteAction); - method @NonNull public android.app.PictureInPictureParams.Builder setExpandedAspectRatio(@Nullable android.util.Rational); - method @NonNull public android.app.PictureInPictureParams.Builder setSeamlessResizeEnabled(boolean); - method public android.app.PictureInPictureParams.Builder setSourceRectHint(android.graphics.Rect); - method @NonNull public android.app.PictureInPictureParams.Builder setSubtitle(@Nullable CharSequence); - method @NonNull public android.app.PictureInPictureParams.Builder setTitle(@Nullable CharSequence); - } - - public final class PictureInPictureUiState implements android.os.Parcelable { - method public int describeContents(); - method public boolean isStashed(); - method @FlaggedApi("android.app.enable_pip_ui_state_callback_on_entering") public boolean isTransitioningToPip(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class Presentation extends android.app.Dialog { - ctor public Presentation(android.content.Context, android.view.Display); - ctor public Presentation(android.content.Context, android.view.Display, int); - method public android.view.Display getDisplay(); - method public android.content.res.Resources getResources(); - method public void onDisplayChanged(); - method public void onDisplayRemoved(); - } - - @Deprecated public class ProgressDialog extends android.app.AlertDialog { - ctor @Deprecated public ProgressDialog(android.content.Context); - ctor @Deprecated public ProgressDialog(android.content.Context, int); - method @Deprecated public int getMax(); - method @Deprecated public int getProgress(); - method @Deprecated public int getSecondaryProgress(); - method @Deprecated public void incrementProgressBy(int); - method @Deprecated public void incrementSecondaryProgressBy(int); - method @Deprecated public boolean isIndeterminate(); - method @Deprecated public void onStart(); - method @Deprecated public void setIndeterminate(boolean); - method @Deprecated public void setIndeterminateDrawable(android.graphics.drawable.Drawable); - method @Deprecated public void setMax(int); - method @Deprecated public void setProgress(int); - method @Deprecated public void setProgressDrawable(android.graphics.drawable.Drawable); - method @Deprecated public void setProgressNumberFormat(String); - method @Deprecated public void setProgressPercentFormat(java.text.NumberFormat); - method @Deprecated public void setProgressStyle(int); - method @Deprecated public void setSecondaryProgress(int); - method @Deprecated public static android.app.ProgressDialog show(android.content.Context, CharSequence, CharSequence); - method @Deprecated public static android.app.ProgressDialog show(android.content.Context, CharSequence, CharSequence, boolean); - method @Deprecated public static android.app.ProgressDialog show(android.content.Context, CharSequence, CharSequence, boolean, boolean); - method @Deprecated public static android.app.ProgressDialog show(android.content.Context, CharSequence, CharSequence, boolean, boolean, android.content.DialogInterface.OnCancelListener); - field @Deprecated public static final int STYLE_HORIZONTAL = 1; // 0x1 - field @Deprecated public static final int STYLE_SPINNER = 0; // 0x0 - } - - public final class RecoverableSecurityException extends java.lang.SecurityException implements android.os.Parcelable { - ctor public RecoverableSecurityException(@NonNull Throwable, @NonNull CharSequence, @NonNull android.app.RemoteAction); - method public int describeContents(); - method @NonNull public android.app.RemoteAction getUserAction(); - method @NonNull public CharSequence getUserMessage(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class RemoteAction implements android.os.Parcelable { - ctor public RemoteAction(@NonNull android.graphics.drawable.Icon, @NonNull CharSequence, @NonNull CharSequence, @NonNull android.app.PendingIntent); - method public android.app.RemoteAction clone(); - method public int describeContents(); - method public void dump(String, java.io.PrintWriter); - method @NonNull public android.app.PendingIntent getActionIntent(); - method @NonNull public CharSequence getContentDescription(); - method @NonNull public android.graphics.drawable.Icon getIcon(); - method @NonNull public CharSequence getTitle(); - method public boolean isEnabled(); - method public void setEnabled(boolean); - method public void setShouldShowIcon(boolean); - method public boolean shouldShowIcon(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class RemoteInput implements android.os.Parcelable { - method public static void addDataResultToIntent(android.app.RemoteInput, android.content.Intent, java.util.Map); - method public static void addResultsToIntent(android.app.RemoteInput[], android.content.Intent, android.os.Bundle); - method public int describeContents(); - method public boolean getAllowFreeFormInput(); - method public java.util.Set getAllowedDataTypes(); - method public CharSequence[] getChoices(); - method public static java.util.Map getDataResultsFromIntent(android.content.Intent, String); - method public int getEditChoicesBeforeSending(); - method public android.os.Bundle getExtras(); - method public CharSequence getLabel(); - method public String getResultKey(); - method public static android.os.Bundle getResultsFromIntent(android.content.Intent); - method public static int getResultsSource(android.content.Intent); - method public boolean isDataOnly(); - method public static void setResultsSource(android.content.Intent, int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int EDIT_CHOICES_BEFORE_SENDING_AUTO = 0; // 0x0 - field public static final int EDIT_CHOICES_BEFORE_SENDING_DISABLED = 1; // 0x1 - field public static final int EDIT_CHOICES_BEFORE_SENDING_ENABLED = 2; // 0x2 - field public static final String EXTRA_RESULTS_DATA = "android.remoteinput.resultsData"; - field public static final String RESULTS_CLIP_LABEL = "android.remoteinput.results"; - field public static final int SOURCE_CHOICE = 1; // 0x1 - field public static final int SOURCE_FREE_FORM_INPUT = 0; // 0x0 - } - - public static final class RemoteInput.Builder { - ctor public RemoteInput.Builder(@NonNull String); - method @NonNull public android.app.RemoteInput.Builder addExtras(@NonNull android.os.Bundle); - method @NonNull public android.app.RemoteInput build(); - method @NonNull public android.os.Bundle getExtras(); - method @NonNull public android.app.RemoteInput.Builder setAllowDataType(@NonNull String, boolean); - method @NonNull public android.app.RemoteInput.Builder setAllowFreeFormInput(boolean); - method @NonNull public android.app.RemoteInput.Builder setChoices(@Nullable CharSequence[]); - method @NonNull public android.app.RemoteInput.Builder setEditChoicesBeforeSending(int); - method @NonNull public android.app.RemoteInput.Builder setLabel(@Nullable CharSequence); - } - - public class SearchManager implements android.content.DialogInterface.OnCancelListener android.content.DialogInterface.OnDismissListener { - method public android.content.ComponentName getGlobalSearchActivity(); - method public android.app.SearchableInfo getSearchableInfo(android.content.ComponentName); - method public java.util.List getSearchablesInGlobalSearch(); - method @Deprecated public void onCancel(android.content.DialogInterface); - method @Deprecated public void onDismiss(android.content.DialogInterface); - method public void setOnCancelListener(android.app.SearchManager.OnCancelListener); - method public void setOnDismissListener(android.app.SearchManager.OnDismissListener); - method public void startSearch(String, boolean, android.content.ComponentName, android.os.Bundle, boolean); - method public void stopSearch(); - method public void triggerSearch(String, android.content.ComponentName, android.os.Bundle); - field public static final String ACTION_KEY = "action_key"; - field public static final String ACTION_MSG = "action_msg"; - field public static final String APP_DATA = "app_data"; - field public static final String CURSOR_EXTRA_KEY_IN_PROGRESS = "in_progress"; - field public static final String EXTRA_DATA_KEY = "intent_extra_data_key"; - field public static final String EXTRA_NEW_SEARCH = "new_search"; - field public static final String EXTRA_SELECT_QUERY = "select_query"; - field public static final String EXTRA_WEB_SEARCH_PENDINGINTENT = "web_search_pendingintent"; - field public static final int FLAG_QUERY_REFINEMENT = 1; // 0x1 - field public static final String INTENT_ACTION_GLOBAL_SEARCH = "android.search.action.GLOBAL_SEARCH"; - field public static final String INTENT_ACTION_SEARCHABLES_CHANGED = "android.search.action.SEARCHABLES_CHANGED"; - field public static final String INTENT_ACTION_SEARCH_SETTINGS = "android.search.action.SEARCH_SETTINGS"; - field public static final String INTENT_ACTION_SEARCH_SETTINGS_CHANGED = "android.search.action.SETTINGS_CHANGED"; - field public static final String INTENT_ACTION_WEB_SEARCH_SETTINGS = "android.search.action.WEB_SEARCH_SETTINGS"; - field public static final String INTENT_GLOBAL_SEARCH_ACTIVITY_CHANGED = "android.search.action.GLOBAL_SEARCH_ACTIVITY_CHANGED"; - field public static final char MENU_KEY = 115; // 0x0073 's' - field public static final int MENU_KEYCODE = 47; // 0x2f - field public static final String QUERY = "query"; - field public static final String SHORTCUT_MIME_TYPE = "vnd.android.cursor.item/vnd.android.search.suggest"; - field public static final String SUGGEST_COLUMN_AUDIO_CHANNEL_CONFIG = "suggest_audio_channel_config"; - field public static final String SUGGEST_COLUMN_CONTENT_TYPE = "suggest_content_type"; - field public static final String SUGGEST_COLUMN_DURATION = "suggest_duration"; - field public static final String SUGGEST_COLUMN_FLAGS = "suggest_flags"; - field public static final String SUGGEST_COLUMN_FORMAT = "suggest_format"; - field public static final String SUGGEST_COLUMN_ICON_1 = "suggest_icon_1"; - field public static final String SUGGEST_COLUMN_ICON_2 = "suggest_icon_2"; - field public static final String SUGGEST_COLUMN_INTENT_ACTION = "suggest_intent_action"; - field public static final String SUGGEST_COLUMN_INTENT_DATA = "suggest_intent_data"; - field public static final String SUGGEST_COLUMN_INTENT_DATA_ID = "suggest_intent_data_id"; - field public static final String SUGGEST_COLUMN_INTENT_EXTRA_DATA = "suggest_intent_extra_data"; - field public static final String SUGGEST_COLUMN_IS_LIVE = "suggest_is_live"; - field public static final String SUGGEST_COLUMN_LAST_ACCESS_HINT = "suggest_last_access_hint"; - field public static final String SUGGEST_COLUMN_PRODUCTION_YEAR = "suggest_production_year"; - field public static final String SUGGEST_COLUMN_PURCHASE_PRICE = "suggest_purchase_price"; - field public static final String SUGGEST_COLUMN_QUERY = "suggest_intent_query"; - field public static final String SUGGEST_COLUMN_RATING_SCORE = "suggest_rating_score"; - field public static final String SUGGEST_COLUMN_RATING_STYLE = "suggest_rating_style"; - field public static final String SUGGEST_COLUMN_RENTAL_PRICE = "suggest_rental_price"; - field public static final String SUGGEST_COLUMN_RESULT_CARD_IMAGE = "suggest_result_card_image"; - field public static final String SUGGEST_COLUMN_SHORTCUT_ID = "suggest_shortcut_id"; - field public static final String SUGGEST_COLUMN_SPINNER_WHILE_REFRESHING = "suggest_spinner_while_refreshing"; - field public static final String SUGGEST_COLUMN_TEXT_1 = "suggest_text_1"; - field public static final String SUGGEST_COLUMN_TEXT_2 = "suggest_text_2"; - field public static final String SUGGEST_COLUMN_TEXT_2_URL = "suggest_text_2_url"; - field public static final String SUGGEST_COLUMN_VIDEO_HEIGHT = "suggest_video_height"; - field public static final String SUGGEST_COLUMN_VIDEO_WIDTH = "suggest_video_width"; - field public static final String SUGGEST_MIME_TYPE = "vnd.android.cursor.dir/vnd.android.search.suggest"; - field public static final String SUGGEST_NEVER_MAKE_SHORTCUT = "_-1"; - field public static final String SUGGEST_PARAMETER_LIMIT = "limit"; - field public static final String SUGGEST_URI_PATH_QUERY = "search_suggest_query"; - field public static final String SUGGEST_URI_PATH_SHORTCUT = "search_suggest_shortcut"; - field public static final String USER_QUERY = "user_query"; - } - - public static interface SearchManager.OnCancelListener { - method public void onCancel(); - } - - public static interface SearchManager.OnDismissListener { - method public void onDismiss(); - } - - public final class SearchableInfo implements android.os.Parcelable { - method public boolean autoUrlDetect(); - method public int describeContents(); - method public int getHintId(); - method public int getImeOptions(); - method public int getInputType(); - method public android.content.ComponentName getSearchActivity(); - method public int getSettingsDescriptionId(); - method public String getSuggestAuthority(); - method public String getSuggestIntentAction(); - method public String getSuggestIntentData(); - method public String getSuggestPackage(); - method public String getSuggestPath(); - method public String getSuggestSelection(); - method public int getSuggestThreshold(); - method @StringRes public int getVoiceLanguageId(); - method @StringRes public int getVoiceLanguageModeId(); - method public int getVoiceMaxResults(); - method @StringRes public int getVoicePromptTextId(); - method public boolean getVoiceSearchEnabled(); - method public boolean getVoiceSearchLaunchRecognizer(); - method public boolean getVoiceSearchLaunchWebSearch(); - method public boolean queryAfterZeroResults(); - method public boolean shouldIncludeInGlobalSearch(); - method public boolean shouldRewriteQueryFromData(); - method public boolean shouldRewriteQueryFromText(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class Service extends android.content.ContextWrapper implements android.content.ComponentCallbacks2 { - ctor public Service(); - method protected void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]); - method public final android.app.Application getApplication(); - method public final int getForegroundServiceType(); - method @Nullable public abstract android.os.IBinder onBind(android.content.Intent); - method public void onConfigurationChanged(android.content.res.Configuration); - method public void onCreate(); - method public void onDestroy(); - method public void onLowMemory(); - method public void onRebind(android.content.Intent); - method @Deprecated public void onStart(android.content.Intent, int); - method public int onStartCommand(android.content.Intent, int, int); - method public void onTaskRemoved(android.content.Intent); - method public void onTimeout(int); - method @FlaggedApi("android.app.introduce_new_service_ontimeout_callback") public void onTimeout(int, int); - method public void onTrimMemory(int); - method public boolean onUnbind(android.content.Intent); - method public final void startForeground(int, android.app.Notification); - method public final void startForeground(int, @NonNull android.app.Notification, @RequiresPermission int); - method @Deprecated public final void stopForeground(boolean); - method public final void stopForeground(int); - method public final void stopSelf(); - method public final void stopSelf(int); - method public final boolean stopSelfResult(int); - field public static final int START_CONTINUATION_MASK = 15; // 0xf - field public static final int START_FLAG_REDELIVERY = 1; // 0x1 - field public static final int START_FLAG_RETRY = 2; // 0x2 - field public static final int START_NOT_STICKY = 2; // 0x2 - field public static final int START_REDELIVER_INTENT = 3; // 0x3 - field public static final int START_STICKY = 1; // 0x1 - field public static final int START_STICKY_COMPATIBILITY = 0; // 0x0 - field public static final int STOP_FOREGROUND_DETACH = 2; // 0x2 - field @Deprecated public static final int STOP_FOREGROUND_LEGACY = 0; // 0x0 - field public static final int STOP_FOREGROUND_REMOVE = 1; // 0x1 - } - - public abstract class ServiceStartNotAllowedException extends java.lang.IllegalStateException { - } - - public abstract class SharedElementCallback { - ctor public SharedElementCallback(); - method public android.os.Parcelable onCaptureSharedElementSnapshot(android.view.View, android.graphics.Matrix, android.graphics.RectF); - method public android.view.View onCreateSnapshotView(android.content.Context, android.os.Parcelable); - method public void onMapSharedElements(java.util.List, java.util.Map); - method public void onRejectSharedElements(java.util.List); - method public void onSharedElementEnd(java.util.List, java.util.List, java.util.List); - method public void onSharedElementStart(java.util.List, java.util.List, java.util.List); - method public void onSharedElementsArrived(java.util.List, java.util.List, android.app.SharedElementCallback.OnSharedElementsReadyListener); - } - - public static interface SharedElementCallback.OnSharedElementsReadyListener { - method public void onSharedElementsReady(); - } - - public final class StartForegroundCalledOnStoppedServiceException extends java.lang.IllegalStateException implements android.os.Parcelable { - ctor public StartForegroundCalledOnStoppedServiceException(@NonNull String); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class StatusBarManager { - method @RequiresPermission(android.Manifest.permission.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE) public boolean canLaunchCaptureContentActivityForNote(@NonNull android.app.Activity); - method public void requestAddTileService(@NonNull android.content.ComponentName, @NonNull CharSequence, @NonNull android.graphics.drawable.Icon, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - field public static final int TILE_ADD_REQUEST_ERROR_APP_NOT_IN_FOREGROUND = 1004; // 0x3ec - field public static final int TILE_ADD_REQUEST_ERROR_BAD_COMPONENT = 1002; // 0x3ea - field public static final int TILE_ADD_REQUEST_ERROR_MISMATCHED_PACKAGE = 1000; // 0x3e8 - field public static final int TILE_ADD_REQUEST_ERROR_NOT_CURRENT_USER = 1003; // 0x3eb - field public static final int TILE_ADD_REQUEST_ERROR_NO_STATUS_BAR_SERVICE = 1005; // 0x3ed - field public static final int TILE_ADD_REQUEST_ERROR_REQUEST_IN_PROGRESS = 1001; // 0x3e9 - field public static final int TILE_ADD_REQUEST_RESULT_TILE_ADDED = 2; // 0x2 - field public static final int TILE_ADD_REQUEST_RESULT_TILE_ALREADY_ADDED = 1; // 0x1 - field public static final int TILE_ADD_REQUEST_RESULT_TILE_NOT_ADDED = 0; // 0x0 - } - - public final class SyncNotedAppOp implements android.os.Parcelable { - ctor public SyncNotedAppOp(@IntRange(from=0L) int, @Nullable String); - method public int describeContents(); - method @Nullable public String getAttributionTag(); - method @NonNull public String getOp(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @Deprecated public class TabActivity extends android.app.ActivityGroup { - ctor @Deprecated public TabActivity(); - method @Deprecated public android.widget.TabHost getTabHost(); - method @Deprecated public android.widget.TabWidget getTabWidget(); - method @Deprecated public void setDefaultTab(String); - method @Deprecated public void setDefaultTab(int); - } - - public class TaskInfo { - method public boolean isVisible(); - field @Nullable public android.content.ComponentName baseActivity; - field @NonNull public android.content.Intent baseIntent; - field public boolean isRunning; - field public int numActivities; - field @Nullable public android.content.ComponentName origActivity; - field @Nullable public android.app.ActivityManager.TaskDescription taskDescription; - field public int taskId; - field @Nullable public android.content.ComponentName topActivity; - } - - public class TaskStackBuilder { - method public android.app.TaskStackBuilder addNextIntent(android.content.Intent); - method public android.app.TaskStackBuilder addNextIntentWithParentStack(android.content.Intent); - method public android.app.TaskStackBuilder addParentStack(android.app.Activity); - method public android.app.TaskStackBuilder addParentStack(Class); - method public android.app.TaskStackBuilder addParentStack(android.content.ComponentName); - method public static android.app.TaskStackBuilder create(android.content.Context); - method public android.content.Intent editIntentAt(int); - method public int getIntentCount(); - method @NonNull public android.content.Intent[] getIntents(); - method public android.app.PendingIntent getPendingIntent(int, int); - method public android.app.PendingIntent getPendingIntent(int, int, android.os.Bundle); - method public void startActivities(); - method public void startActivities(android.os.Bundle); - } - - public class TimePickerDialog extends android.app.AlertDialog implements android.content.DialogInterface.OnClickListener android.widget.TimePicker.OnTimeChangedListener { - ctor public TimePickerDialog(android.content.Context, android.app.TimePickerDialog.OnTimeSetListener, int, int, boolean); - ctor public TimePickerDialog(android.content.Context, int, android.app.TimePickerDialog.OnTimeSetListener, int, int, boolean); - method public void onClick(android.content.DialogInterface, int); - method public void onTimeChanged(android.widget.TimePicker, int, int); - method public void updateTime(int, int); - } - - public static interface TimePickerDialog.OnTimeSetListener { - method public void onTimeSet(android.widget.TimePicker, int, int); - } - - public final class UiAutomation { - method public void adoptShellPermissionIdentity(); - method public void adoptShellPermissionIdentity(@Nullable java.lang.String...); - method public boolean clearCache(); - method @Deprecated public void clearWindowAnimationFrameStats(); - method public boolean clearWindowContentFrameStats(int); - method public void dropShellPermissionIdentity(); - method public android.view.accessibility.AccessibilityEvent executeAndWaitForEvent(Runnable, android.app.UiAutomation.AccessibilityEventFilter, long) throws java.util.concurrent.TimeoutException; - method public android.os.ParcelFileDescriptor executeShellCommand(String); - method @NonNull public android.os.ParcelFileDescriptor[] executeShellCommandRw(@NonNull String); - method @NonNull public android.os.ParcelFileDescriptor[] executeShellCommandRwe(@NonNull String); - method public android.view.accessibility.AccessibilityNodeInfo findFocus(int); - method public android.view.accessibility.AccessibilityNodeInfo getRootInActiveWindow(); - method public android.accessibilityservice.AccessibilityServiceInfo getServiceInfo(); - method @Deprecated public android.view.WindowAnimationFrameStats getWindowAnimationFrameStats(); - method public android.view.WindowContentFrameStats getWindowContentFrameStats(int); - method public java.util.List getWindows(); - method @NonNull public android.util.SparseArray> getWindowsOnAllDisplays(); - method public void grantRuntimePermission(String, String); - method public void grantRuntimePermissionAsUser(String, String, android.os.UserHandle); - method public boolean injectInputEvent(android.view.InputEvent, boolean); - method public boolean performGlobalAction(int); - method public void revokeRuntimePermission(String, String); - method public void revokeRuntimePermissionAsUser(String, String, android.os.UserHandle); - method public void setAnimationScale(float); - method public void setOnAccessibilityEventListener(android.app.UiAutomation.OnAccessibilityEventListener); - method public boolean setRotation(int); - method public void setRunAsMonkey(boolean); - method public void setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo); - method public android.graphics.Bitmap takeScreenshot(); - method @Nullable public android.graphics.Bitmap takeScreenshot(@NonNull android.view.Window); - method public void waitForIdle(long, long) throws java.util.concurrent.TimeoutException; - field public static final int FLAG_DONT_SUPPRESS_ACCESSIBILITY_SERVICES = 1; // 0x1 - field public static final int FLAG_DONT_USE_ACCESSIBILITY = 2; // 0x2 - field public static final int ROTATION_FREEZE_0 = 0; // 0x0 - field public static final int ROTATION_FREEZE_180 = 2; // 0x2 - field public static final int ROTATION_FREEZE_270 = 3; // 0x3 - field public static final int ROTATION_FREEZE_90 = 1; // 0x1 - field public static final int ROTATION_FREEZE_CURRENT = -1; // 0xffffffff - field public static final int ROTATION_UNFREEZE = -2; // 0xfffffffe - } - - public static interface UiAutomation.AccessibilityEventFilter { - method public boolean accept(android.view.accessibility.AccessibilityEvent); - } - - public static interface UiAutomation.OnAccessibilityEventListener { - method public void onAccessibilityEvent(android.view.accessibility.AccessibilityEvent); - } - - public class UiModeManager { - method public void addContrastChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.UiModeManager.ContrastChangeListener); - method public void disableCarMode(int); - method public void enableCarMode(int); - method @FloatRange(from=-1.0F, to=1.0f) public float getContrast(); - method public int getCurrentModeType(); - method @NonNull public java.time.LocalTime getCustomNightModeEnd(); - method @NonNull public java.time.LocalTime getCustomNightModeStart(); - method public int getNightMode(); - method public void removeContrastChangeListener(@NonNull android.app.UiModeManager.ContrastChangeListener); - method public void setApplicationNightMode(int); - method public void setCustomNightModeEnd(@NonNull java.time.LocalTime); - method public void setCustomNightModeStart(@NonNull java.time.LocalTime); - method public void setNightMode(int); - field public static String ACTION_ENTER_CAR_MODE; - field public static String ACTION_ENTER_DESK_MODE; - field public static String ACTION_EXIT_CAR_MODE; - field public static String ACTION_EXIT_DESK_MODE; - field public static final int DISABLE_CAR_MODE_GO_HOME = 1; // 0x1 - field public static final int ENABLE_CAR_MODE_ALLOW_SLEEP = 2; // 0x2 - field public static final int ENABLE_CAR_MODE_GO_CAR_HOME = 1; // 0x1 - field public static final int MODE_NIGHT_AUTO = 0; // 0x0 - field public static final int MODE_NIGHT_CUSTOM = 3; // 0x3 - field public static final int MODE_NIGHT_NO = 1; // 0x1 - field public static final int MODE_NIGHT_YES = 2; // 0x2 - } - - public static interface UiModeManager.ContrastChangeListener { - method public void onContrastChanged(@FloatRange(from=-1.0F, to=1.0f) float); - } - - public final class VoiceInteractor { - method public android.app.VoiceInteractor.Request getActiveRequest(String); - method public android.app.VoiceInteractor.Request[] getActiveRequests(); - method @NonNull public String getPackageName(); - method public boolean isDestroyed(); - method public void notifyDirectActionsChanged(); - method public boolean registerOnDestroyedCallback(@NonNull java.util.concurrent.Executor, @NonNull Runnable); - method public boolean submitRequest(android.app.VoiceInteractor.Request); - method public boolean submitRequest(android.app.VoiceInteractor.Request, String); - method public boolean[] supportsCommands(String[]); - method public boolean unregisterOnDestroyedCallback(@NonNull Runnable); - } - - public static class VoiceInteractor.AbortVoiceRequest extends android.app.VoiceInteractor.Request { - ctor public VoiceInteractor.AbortVoiceRequest(@Nullable android.app.VoiceInteractor.Prompt, @Nullable android.os.Bundle); - method public void onAbortResult(android.os.Bundle); - } - - public static class VoiceInteractor.CommandRequest extends android.app.VoiceInteractor.Request { - ctor public VoiceInteractor.CommandRequest(String, android.os.Bundle); - method public void onCommandResult(boolean, android.os.Bundle); - } - - public static class VoiceInteractor.CompleteVoiceRequest extends android.app.VoiceInteractor.Request { - ctor public VoiceInteractor.CompleteVoiceRequest(@Nullable android.app.VoiceInteractor.Prompt, @Nullable android.os.Bundle); - method public void onCompleteResult(android.os.Bundle); - } - - public static class VoiceInteractor.ConfirmationRequest extends android.app.VoiceInteractor.Request { - ctor public VoiceInteractor.ConfirmationRequest(@Nullable android.app.VoiceInteractor.Prompt, @Nullable android.os.Bundle); - method public void onConfirmationResult(boolean, android.os.Bundle); - } - - public static class VoiceInteractor.PickOptionRequest extends android.app.VoiceInteractor.Request { - ctor public VoiceInteractor.PickOptionRequest(@Nullable android.app.VoiceInteractor.Prompt, android.app.VoiceInteractor.PickOptionRequest.Option[], @Nullable android.os.Bundle); - method public void onPickOptionResult(boolean, android.app.VoiceInteractor.PickOptionRequest.Option[], android.os.Bundle); - } - - public static final class VoiceInteractor.PickOptionRequest.Option implements android.os.Parcelable { - ctor public VoiceInteractor.PickOptionRequest.Option(CharSequence, int); - method public android.app.VoiceInteractor.PickOptionRequest.Option addSynonym(CharSequence); - method public int countSynonyms(); - method public int describeContents(); - method public android.os.Bundle getExtras(); - method public int getIndex(); - method public CharSequence getLabel(); - method public CharSequence getSynonymAt(int); - method public void setExtras(android.os.Bundle); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class VoiceInteractor.Prompt implements android.os.Parcelable { - ctor public VoiceInteractor.Prompt(@NonNull CharSequence[], @NonNull CharSequence); - ctor public VoiceInteractor.Prompt(@NonNull CharSequence); - method public int countVoicePrompts(); - method public int describeContents(); - method @NonNull public CharSequence getVisualPrompt(); - method @NonNull public CharSequence getVoicePromptAt(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract static class VoiceInteractor.Request { - method public void cancel(); - method public android.app.Activity getActivity(); - method public android.content.Context getContext(); - method public String getName(); - method public void onAttached(android.app.Activity); - method public void onCancel(); - method public void onDetached(); - } - - public final class WallpaperColors implements android.os.Parcelable { - ctor public WallpaperColors(android.os.Parcel); - ctor public WallpaperColors(@NonNull android.graphics.Color, @Nullable android.graphics.Color, @Nullable android.graphics.Color); - ctor public WallpaperColors(@NonNull android.graphics.Color, @Nullable android.graphics.Color, @Nullable android.graphics.Color, int); - method public int describeContents(); - method public static android.app.WallpaperColors fromBitmap(@NonNull android.graphics.Bitmap); - method public static android.app.WallpaperColors fromDrawable(android.graphics.drawable.Drawable); - method public int getColorHints(); - method @NonNull public android.graphics.Color getPrimaryColor(); - method @Nullable public android.graphics.Color getSecondaryColor(); - method @Nullable public android.graphics.Color getTertiaryColor(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int HINT_SUPPORTS_DARK_TEXT = 1; // 0x1 - field public static final int HINT_SUPPORTS_DARK_THEME = 2; // 0x2 - } - - public final class WallpaperInfo implements android.os.Parcelable { - ctor public WallpaperInfo(android.content.Context, android.content.pm.ResolveInfo) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method public int describeContents(); - method public void dump(android.util.Printer, String); - method public android.content.ComponentName getComponent(); - method public String getPackageName(); - method public android.content.pm.ServiceInfo getServiceInfo(); - method public String getServiceName(); - method public String getSettingsActivity(); - method @Nullable public android.net.Uri getSettingsSliceUri(); - method public boolean getShowMetadataInPreview(); - method public CharSequence loadAuthor(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; - method public CharSequence loadContextDescription(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; - method public android.net.Uri loadContextUri(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; - method public CharSequence loadDescription(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; - method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); - method public CharSequence loadLabel(android.content.pm.PackageManager); - method public android.graphics.drawable.Drawable loadThumbnail(android.content.pm.PackageManager); - method public boolean shouldUseDefaultUnfoldTransition(); - method public boolean supportsMultipleDisplays(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class WallpaperManager { - method public void addOnColorsChangedListener(@NonNull android.app.WallpaperManager.OnColorsChangedListener, @NonNull android.os.Handler); - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void clear() throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void clear(int) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void clearWallpaper(); - method public void clearWallpaperOffsets(android.os.IBinder); - method public void forgetLoadedWallpaper(); - method public android.graphics.drawable.Drawable getBuiltInDrawable(); - method public android.graphics.drawable.Drawable getBuiltInDrawable(int); - method public android.graphics.drawable.Drawable getBuiltInDrawable(int, int, boolean, float, float); - method public android.graphics.drawable.Drawable getBuiltInDrawable(int, int, boolean, float, float, int); - method public android.content.Intent getCropAndSetWallpaperIntent(android.net.Uri); - method public int getDesiredMinimumHeight(); - method public int getDesiredMinimumWidth(); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable getDrawable(); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable getDrawable(int); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable getFastDrawable(); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable getFastDrawable(int); - method public static android.app.WallpaperManager getInstance(android.content.Context); - method @Nullable public android.app.WallpaperColors getWallpaperColors(int); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.os.ParcelFileDescriptor getWallpaperFile(int); - method public int getWallpaperId(int); - method @RequiresPermission(value="QUERY_ALL_PACKAGES", conditional=true) public android.app.WallpaperInfo getWallpaperInfo(); - method @Nullable public android.app.WallpaperInfo getWallpaperInfo(int); - method public boolean hasResourceWallpaper(@RawRes int); - method public boolean isSetWallpaperAllowed(); - method public boolean isWallpaperSupported(); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable peekDrawable(); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable peekDrawable(int); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable peekFastDrawable(); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable peekFastDrawable(int); - method public void removeOnColorsChangedListener(@NonNull android.app.WallpaperManager.OnColorsChangedListener); - method @RequiresPermission(value="android.permission.ALWAYS_UPDATE_WALLPAPER", conditional=true) public void sendWallpaperCommand(android.os.IBinder, String, int, int, int, android.os.Bundle); - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void setBitmap(android.graphics.Bitmap) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setBitmap(android.graphics.Bitmap, android.graphics.Rect, boolean) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setBitmap(android.graphics.Bitmap, android.graphics.Rect, boolean, int) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_HINTS) public void setDisplayPadding(android.graphics.Rect); - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void setResource(@RawRes int) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setResource(@RawRes int, int) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void setStream(java.io.InputStream) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setStream(java.io.InputStream, android.graphics.Rect, boolean) throws java.io.IOException; - method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setStream(java.io.InputStream, android.graphics.Rect, boolean, int) throws java.io.IOException; - method public void setWallpaperOffsetSteps(float, float); - method public void setWallpaperOffsets(android.os.IBinder, float, float); - method public void suggestDesiredDimensions(int, int); - field public static final String ACTION_CHANGE_LIVE_WALLPAPER = "android.service.wallpaper.CHANGE_LIVE_WALLPAPER"; - field public static final String ACTION_CROP_AND_SET_WALLPAPER = "android.service.wallpaper.CROP_AND_SET_WALLPAPER"; - field public static final String ACTION_LIVE_WALLPAPER_CHOOSER = "android.service.wallpaper.LIVE_WALLPAPER_CHOOSER"; - field public static final String COMMAND_DROP = "android.home.drop"; - field public static final String COMMAND_SECONDARY_TAP = "android.wallpaper.secondaryTap"; - field public static final String COMMAND_TAP = "android.wallpaper.tap"; - field public static final String EXTRA_LIVE_WALLPAPER_COMPONENT = "android.service.wallpaper.extra.LIVE_WALLPAPER_COMPONENT"; - field public static final int FLAG_LOCK = 2; // 0x2 - field public static final int FLAG_SYSTEM = 1; // 0x1 - field public static final String WALLPAPER_PREVIEW_META_DATA = "android.wallpaper.preview"; - } - - public static interface WallpaperManager.OnColorsChangedListener { - method public void onColorsChanged(@Nullable android.app.WallpaperColors, int); - } - - public interface ZygotePreload { - method public void doPreload(@NonNull android.content.pm.ApplicationInfo); - } - -} - -package android.app.admin { - - public final class ConnectEvent extends android.app.admin.NetworkEvent implements android.os.Parcelable { - method public java.net.InetAddress getInetAddress(); - method public int getPort(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class DelegatedAdminReceiver extends android.content.BroadcastReceiver { - ctor public DelegatedAdminReceiver(); - method @Nullable public String onChoosePrivateKeyAlias(@NonNull android.content.Context, @NonNull android.content.Intent, int, @Nullable android.net.Uri, @Nullable String); - method public void onNetworkLogsAvailable(@NonNull android.content.Context, @NonNull android.content.Intent, long, @IntRange(from=1) int); - method public final void onReceive(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onSecurityLogsAvailable(@NonNull android.content.Context, @NonNull android.content.Intent); - } - - public final class DeviceAdminInfo implements android.os.Parcelable { - ctor public DeviceAdminInfo(android.content.Context, android.content.pm.ResolveInfo) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method public int describeContents(); - method public void dump(android.util.Printer, String); - method public android.content.pm.ActivityInfo getActivityInfo(); - method @NonNull public android.content.ComponentName getComponent(); - method public int getHeadlessDeviceOwnerMode(); - method public String getPackageName(); - method public String getReceiverName(); - method public String getTagForPolicy(int); - method public boolean isVisible(); - method public CharSequence loadDescription(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; - method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); - method public CharSequence loadLabel(android.content.pm.PackageManager); - method public boolean supportsTransferOwnership(); - method public boolean usesPolicy(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int HEADLESS_DEVICE_OWNER_MODE_AFFILIATED = 1; // 0x1 - field public static final int HEADLESS_DEVICE_OWNER_MODE_SINGLE_USER = 2; // 0x2 - field public static final int HEADLESS_DEVICE_OWNER_MODE_UNSUPPORTED = 0; // 0x0 - field public static final int USES_ENCRYPTED_STORAGE = 7; // 0x7 - field public static final int USES_POLICY_DISABLE_CAMERA = 8; // 0x8 - field public static final int USES_POLICY_DISABLE_KEYGUARD_FEATURES = 9; // 0x9 - field public static final int USES_POLICY_EXPIRE_PASSWORD = 6; // 0x6 - field public static final int USES_POLICY_FORCE_LOCK = 3; // 0x3 - field public static final int USES_POLICY_LIMIT_PASSWORD = 0; // 0x0 - field public static final int USES_POLICY_RESET_PASSWORD = 2; // 0x2 - field public static final int USES_POLICY_WATCH_LOGIN = 1; // 0x1 - field public static final int USES_POLICY_WIPE_DATA = 4; // 0x4 - } - - public class DeviceAdminReceiver extends android.content.BroadcastReceiver { - ctor public DeviceAdminReceiver(); - method @NonNull public android.app.admin.DevicePolicyManager getManager(@NonNull android.content.Context); - method @NonNull public android.content.ComponentName getWho(@NonNull android.content.Context); - method public void onBugreportFailed(@NonNull android.content.Context, @NonNull android.content.Intent, int); - method public void onBugreportShared(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull String); - method public void onBugreportSharingDeclined(@NonNull android.content.Context, @NonNull android.content.Intent); - method @Nullable public String onChoosePrivateKeyAlias(@NonNull android.content.Context, @NonNull android.content.Intent, int, @Nullable android.net.Uri, @Nullable String); - method public void onComplianceAcknowledgementRequired(@NonNull android.content.Context, @NonNull android.content.Intent); - method @Nullable public CharSequence onDisableRequested(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onDisabled(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onEnabled(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onLockTaskModeEntering(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull String); - method public void onLockTaskModeExiting(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onNetworkLogsAvailable(@NonNull android.content.Context, @NonNull android.content.Intent, long, @IntRange(from=1) int); - method public void onOperationSafetyStateChanged(@NonNull android.content.Context, int, boolean); - method @Deprecated public void onPasswordChanged(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onPasswordChanged(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); - method @Deprecated public void onPasswordExpiring(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onPasswordExpiring(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); - method @Deprecated public void onPasswordFailed(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onPasswordFailed(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); - method @Deprecated public void onPasswordSucceeded(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onPasswordSucceeded(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); - method public void onProfileProvisioningComplete(@NonNull android.content.Context, @NonNull android.content.Intent); - method @Deprecated public void onReadyForUserInitialization(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onReceive(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onSecurityLogsAvailable(@NonNull android.content.Context, @NonNull android.content.Intent); - method public void onSystemUpdatePending(@NonNull android.content.Context, @NonNull android.content.Intent, long); - method public void onTransferAffiliatedProfileOwnershipComplete(@NonNull android.content.Context, @NonNull android.os.UserHandle); - method public void onTransferOwnershipComplete(@NonNull android.content.Context, @Nullable android.os.PersistableBundle); - method public void onUserAdded(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); - method public void onUserRemoved(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); - method public void onUserStarted(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); - method public void onUserStopped(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); - method public void onUserSwitched(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); - field public static final String ACTION_CHOOSE_PRIVATE_KEY_ALIAS = "android.app.action.CHOOSE_PRIVATE_KEY_ALIAS"; - field public static final String ACTION_DEVICE_ADMIN_DISABLED = "android.app.action.DEVICE_ADMIN_DISABLED"; - field public static final String ACTION_DEVICE_ADMIN_DISABLE_REQUESTED = "android.app.action.DEVICE_ADMIN_DISABLE_REQUESTED"; - field public static final String ACTION_DEVICE_ADMIN_ENABLED = "android.app.action.DEVICE_ADMIN_ENABLED"; - field public static final String ACTION_LOCK_TASK_ENTERING = "android.app.action.LOCK_TASK_ENTERING"; - field public static final String ACTION_LOCK_TASK_EXITING = "android.app.action.LOCK_TASK_EXITING"; - field public static final String ACTION_NETWORK_LOGS_AVAILABLE = "android.app.action.NETWORK_LOGS_AVAILABLE"; - field public static final String ACTION_PASSWORD_CHANGED = "android.app.action.ACTION_PASSWORD_CHANGED"; - field public static final String ACTION_PASSWORD_EXPIRING = "android.app.action.ACTION_PASSWORD_EXPIRING"; - field public static final String ACTION_PASSWORD_FAILED = "android.app.action.ACTION_PASSWORD_FAILED"; - field public static final String ACTION_PASSWORD_SUCCEEDED = "android.app.action.ACTION_PASSWORD_SUCCEEDED"; - field public static final String ACTION_PROFILE_PROVISIONING_COMPLETE = "android.app.action.PROFILE_PROVISIONING_COMPLETE"; - field public static final String ACTION_SECURITY_LOGS_AVAILABLE = "android.app.action.SECURITY_LOGS_AVAILABLE"; - field public static final int BUGREPORT_FAILURE_FAILED_COMPLETING = 0; // 0x0 - field public static final int BUGREPORT_FAILURE_FILE_NO_LONGER_AVAILABLE = 1; // 0x1 - field public static final String DEVICE_ADMIN_META_DATA = "android.app.device_admin"; - field public static final String EXTRA_DISABLE_WARNING = "android.app.extra.DISABLE_WARNING"; - field public static final String EXTRA_LOCK_TASK_PACKAGE = "android.app.extra.LOCK_TASK_PACKAGE"; - field public static final String EXTRA_TRANSFER_OWNERSHIP_ADMIN_EXTRAS_BUNDLE = "android.app.extra.TRANSFER_OWNERSHIP_ADMIN_EXTRAS_BUNDLE"; - } - - public class DeviceAdminService extends android.app.Service { - ctor public DeviceAdminService(); - method public final android.os.IBinder onBind(android.content.Intent); - } - - public final class DevicePolicyIdentifiers { - method @NonNull public static String getIdentifierForUserRestriction(@NonNull String); - field public static final String ACCOUNT_MANAGEMENT_DISABLED_POLICY = "accountManagementDisabled"; - field public static final String APPLICATION_HIDDEN_POLICY = "applicationHidden"; - field public static final String APPLICATION_RESTRICTIONS_POLICY = "applicationRestrictions"; - field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String APP_FUNCTIONS_POLICY = "appFunctions"; - field public static final String AUTO_TIMEZONE_POLICY = "autoTimezone"; - field public static final String AUTO_TIME_POLICY = "autoTime"; - field public static final String BACKUP_SERVICE_POLICY = "backupService"; - field public static final String CAMERA_DISABLED_POLICY = "cameraDisabled"; - field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final String CONTENT_PROTECTION_POLICY = "contentProtection"; - field public static final String KEYGUARD_DISABLED_FEATURES_POLICY = "keyguardDisabledFeatures"; - field public static final String LOCK_TASK_POLICY = "lockTask"; - field @FlaggedApi("android.app.admin.flags.set_mte_policy_coexistence") public static final String MEMORY_TAGGING_POLICY = "memoryTagging"; - field public static final String PACKAGES_SUSPENDED_POLICY = "packagesSuspended"; - field public static final String PACKAGE_UNINSTALL_BLOCKED_POLICY = "packageUninstallBlocked"; - field public static final String PASSWORD_COMPLEXITY_POLICY = "passwordComplexity"; - field public static final String PERMISSION_GRANT_POLICY = "permissionGrant"; - field public static final String PERSISTENT_PREFERRED_ACTIVITY_POLICY = "persistentPreferredActivity"; - field public static final String RESET_PASSWORD_TOKEN_POLICY = "resetPasswordToken"; - field public static final String SECURITY_LOGGING_POLICY = "securityLogging"; - field public static final String STATUS_BAR_DISABLED_POLICY = "statusBarDisabled"; - field public static final String USB_DATA_SIGNALING_POLICY = "usbDataSignaling"; - field public static final String USER_CONTROL_DISABLED_PACKAGES_POLICY = "userControlDisabledPackages"; - } - - public class DevicePolicyManager { - method public void acknowledgeDeviceCompliant(); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public void addCrossProfileIntentFilter(@Nullable android.content.ComponentName, android.content.IntentFilter, int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public boolean addCrossProfileWidgetProvider(@Nullable android.content.ComponentName, String); - method public int addOverrideApn(@NonNull android.content.ComponentName, @NonNull android.telephony.data.ApnSetting); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public void addPersistentPreferredActivity(@Nullable android.content.ComponentName, android.content.IntentFilter, @NonNull android.content.ComponentName); - method public void addUserRestriction(@NonNull android.content.ComponentName, String); - method public void addUserRestrictionGlobally(@NonNull String); - method public boolean bindDeviceAdminServiceAsUser(@NonNull android.content.ComponentName, @NonNull android.content.Intent, @NonNull android.content.ServiceConnection, int, @NonNull android.os.UserHandle); - method public boolean bindDeviceAdminServiceAsUser(@NonNull android.content.ComponentName, @NonNull android.content.Intent, @NonNull android.content.ServiceConnection, @NonNull android.content.Context.BindServiceFlags, @NonNull android.os.UserHandle); - method public boolean canAdminGrantSensorsPermissions(); - method public boolean canUsbDataSignalingBeDisabled(); - method public void clearApplicationUserData(@NonNull android.content.ComponentName, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.app.admin.DevicePolicyManager.OnClearApplicationUserDataListener); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public void clearCrossProfileIntentFilters(@Nullable android.content.ComponentName); - method @Deprecated public void clearDeviceOwnerApp(String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public void clearPackagePersistentPreferredActivities(@Nullable android.content.ComponentName, String); - method @Deprecated public void clearProfileOwner(@NonNull android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD, conditional=true) public boolean clearResetPasswordToken(@Nullable android.content.ComponentName); - method public void clearUserRestriction(@NonNull android.content.ComponentName, String); - method public android.content.Intent createAdminSupportIntent(@NonNull String); - method @Nullable public android.os.UserHandle createAndManageUser(@NonNull android.content.ComponentName, @NonNull String, @NonNull android.content.ComponentName, @Nullable android.os.PersistableBundle, int); - method public void enableSystemApp(@NonNull android.content.ComponentName, String); - method public int enableSystemApp(@NonNull android.content.ComponentName, android.content.Intent); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public android.security.AttestedKeyPair generateKeyPair(@Nullable android.content.ComponentName, @NonNull String, @NonNull android.security.keystore.KeyGenParameterSpec, int); - method @Nullable public String[] getAccountTypesWithManagementDisabled(); - method @Nullable public java.util.List getActiveAdmins(); - method @NonNull public java.util.Set getAffiliationIds(@NonNull android.content.ComponentName); - method @Nullable public java.util.Set getAlwaysOnVpnLockdownWhitelist(@NonNull android.content.ComponentName); - method @Nullable public String getAlwaysOnVpnPackage(@NonNull android.content.ComponentName); - method @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APP_FUNCTIONS, conditional=true) public int getAppFunctionsPolicy(); - method @NonNull @WorkerThread public android.os.Bundle getApplicationRestrictions(@Nullable android.content.ComponentName, String); - method @Deprecated @Nullable public String getApplicationRestrictionsManagingPackage(@NonNull android.content.ComponentName); - method @RequiresPermission(anyOf={android.Manifest.permission.SET_TIME, "android.permission.QUERY_ADMIN_POLICY"}, conditional=true) public boolean getAutoTimeEnabled(@Nullable android.content.ComponentName); - method @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") @RequiresPermission(anyOf={android.Manifest.permission.SET_TIME, "android.permission.QUERY_ADMIN_POLICY"}, conditional=true) public int getAutoTimePolicy(); - method @Deprecated public boolean getAutoTimeRequired(); - method @RequiresPermission(anyOf={android.Manifest.permission.SET_TIME_ZONE, "android.permission.QUERY_ADMIN_POLICY"}, conditional=true) public boolean getAutoTimeZoneEnabled(@Nullable android.content.ComponentName); - method @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") @RequiresPermission(anyOf={android.Manifest.permission.SET_TIME_ZONE, "android.permission.QUERY_ADMIN_POLICY"}, conditional=true) public int getAutoTimeZonePolicy(); - method @NonNull public java.util.List getBindDeviceAdminTargetUsers(@NonNull android.content.ComponentName); - method public boolean getBluetoothContactSharingDisabled(@NonNull android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CAMERA, conditional=true) public boolean getCameraDisabled(@Nullable android.content.ComponentName); - method @Deprecated @Nullable public String getCertInstallerPackage(@NonNull android.content.ComponentName) throws java.lang.SecurityException; - method @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CONTENT_PROTECTION, conditional=true) public int getContentProtectionPolicy(@Nullable android.content.ComponentName); - method @Nullable public android.app.admin.PackagePolicy getCredentialManagerPolicy(); - method @Deprecated @Nullable public java.util.Set getCrossProfileCalendarPackages(@NonNull android.content.ComponentName); - method @Deprecated public boolean getCrossProfileCallerIdDisabled(@NonNull android.content.ComponentName); - method @Deprecated public boolean getCrossProfileContactsSearchDisabled(@NonNull android.content.ComponentName); - method @NonNull public java.util.Set getCrossProfilePackages(@NonNull android.content.ComponentName); - method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public java.util.List getCrossProfileWidgetProviders(@Nullable android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public int getCurrentFailedPasswordAttempts(); - method @Nullable public java.util.List getDelegatePackages(@NonNull android.content.ComponentName, @NonNull String); - method @NonNull public java.util.List getDelegatedScopes(@Nullable android.content.ComponentName, @NonNull String); - method public CharSequence getDeviceOwnerLockScreenInfo(); - method @Nullable public String getDevicePolicyManagementRoleHolderPackage(); - method public CharSequence getEndUserSessionMessage(@NonNull android.content.ComponentName); - method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public String getEnrollmentSpecificId(); - method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_FACTORY_RESET, conditional=true) public android.app.admin.FactoryResetProtectionPolicy getFactoryResetProtectionPolicy(@Nullable android.content.ComponentName); - method @Nullable public String getGlobalPrivateDnsHost(@NonNull android.content.ComponentName); - method public int getGlobalPrivateDnsMode(@NonNull android.content.ComponentName); - method @NonNull public java.util.List getInstalledCaCerts(@Nullable android.content.ComponentName); - method @Nullable public java.util.List getKeepUninstalledPackages(@Nullable android.content.ComponentName); - method @NonNull public java.util.Map> getKeyPairGrants(@NonNull String); - method public int getKeyguardDisabledFeatures(@Nullable android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public int getLockTaskFeatures(@Nullable android.content.ComponentName); - method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public String[] getLockTaskPackages(@Nullable android.content.ComponentName); - method @Nullable public CharSequence getLongSupportMessage(@NonNull android.content.ComponentName); - method @Nullable public android.app.admin.PackagePolicy getManagedProfileCallerIdAccessPolicy(); - method @Nullable public android.app.admin.PackagePolicy getManagedProfileContactsAccessPolicy(); - method public long getManagedProfileMaximumTimeOff(@NonNull android.content.ComponentName); - method @NonNull public android.app.admin.ManagedSubscriptionsPolicy getManagedSubscriptionsPolicy(); - method public int getMaximumFailedPasswordsForWipe(@Nullable android.content.ComponentName); - method public long getMaximumTimeToLock(@Nullable android.content.ComponentName); - method @NonNull public java.util.List getMeteredDataDisabledPackages(@NonNull android.content.ComponentName); - method public int getMinimumRequiredWifiSecurityLevel(); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_MTE, conditional=true) public int getMtePolicy(); - method @RequiresPermission(value=android.Manifest.permission.READ_NEARBY_STREAMING_POLICY, conditional=true) public int getNearbyAppStreamingPolicy(); - method @RequiresPermission(value=android.Manifest.permission.READ_NEARBY_STREAMING_POLICY, conditional=true) public int getNearbyNotificationStreamingPolicy(); - method @Deprecated @ColorInt public int getOrganizationColor(@NonNull android.content.ComponentName); - method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY, conditional=true) public CharSequence getOrganizationName(@Nullable android.content.ComponentName); - method public java.util.List getOverrideApns(@NonNull android.content.ComponentName); - method @NonNull public android.app.admin.DevicePolicyManager getParentProfileInstance(@NonNull android.content.ComponentName); - method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, android.Manifest.permission.REQUEST_PASSWORD_COMPLEXITY}, conditional=true) public int getPasswordComplexity(); - method public long getPasswordExpiration(@Nullable android.content.ComponentName); - method public long getPasswordExpirationTimeout(@Nullable android.content.ComponentName); - method public int getPasswordHistoryLength(@Nullable android.content.ComponentName); - method public int getPasswordMaximumLength(int); - method @Deprecated public int getPasswordMinimumLength(@Nullable android.content.ComponentName); - method @Deprecated public int getPasswordMinimumLetters(@Nullable android.content.ComponentName); - method @Deprecated public int getPasswordMinimumLowerCase(@Nullable android.content.ComponentName); - method @Deprecated public int getPasswordMinimumNonLetter(@Nullable android.content.ComponentName); - method @Deprecated public int getPasswordMinimumNumeric(@Nullable android.content.ComponentName); - method @Deprecated public int getPasswordMinimumSymbols(@Nullable android.content.ComponentName); - method @Deprecated public int getPasswordMinimumUpperCase(@Nullable android.content.ComponentName); - method @Deprecated public int getPasswordQuality(@Nullable android.content.ComponentName); - method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES, conditional=true) public android.app.admin.SystemUpdateInfo getPendingSystemUpdate(@Nullable android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS, conditional=true) public int getPermissionGrantState(@Nullable android.content.ComponentName, @NonNull String, @NonNull String); - method public int getPermissionPolicy(android.content.ComponentName); - method @Nullable public java.util.List getPermittedAccessibilityServices(@NonNull android.content.ComponentName); - method @Nullable public java.util.List getPermittedCrossProfileNotificationListeners(@NonNull android.content.ComponentName); - method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_INPUT_METHODS, conditional=true) public java.util.List getPermittedInputMethods(@Nullable android.content.ComponentName); - method public int getPersonalAppsSuspendedReasons(@NonNull android.content.ComponentName); - method @NonNull public java.util.List getPreferentialNetworkServiceConfigs(); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public int getRequiredPasswordComplexity(); - method public long getRequiredStrongAuthTimeout(@Nullable android.content.ComponentName); - method @NonNull public android.app.admin.DevicePolicyResourcesManager getResources(); - method public boolean getScreenCaptureDisabled(@Nullable android.content.ComponentName); - method public java.util.List getSecondaryUsers(@NonNull android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE, conditional=true) public CharSequence getShortSupportMessage(@Nullable android.content.ComponentName); - method public CharSequence getStartUserSessionMessage(@NonNull android.content.ComponentName); - method @Deprecated public boolean getStorageEncryption(@Nullable android.content.ComponentName); - method public int getStorageEncryptionStatus(); - method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS) public java.util.Set getSubscriptionIds(); - method @Nullable public android.app.admin.SystemUpdatePolicy getSystemUpdatePolicy(); - method @Nullable public android.os.PersistableBundle getTransferOwnershipBundle(); - method @Nullable public java.util.List getTrustAgentConfiguration(@Nullable android.content.ComponentName, @NonNull android.content.ComponentName); - method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL, conditional=true) public java.util.List getUserControlDisabledPackages(@Nullable android.content.ComponentName); - method @NonNull public android.os.Bundle getUserRestrictions(@NonNull android.content.ComponentName); - method @NonNull public android.os.Bundle getUserRestrictionsGlobally(); - method @Nullable public String getWifiMacAddress(@Nullable android.content.ComponentName); - method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public android.app.admin.WifiSsidPolicy getWifiSsidPolicy(); - method public boolean grantKeyPairToApp(@Nullable android.content.ComponentName, @NonNull String, @NonNull String); - method public boolean grantKeyPairToWifiAuth(@NonNull String); - method public boolean hasCaCertInstalled(@Nullable android.content.ComponentName, byte[]); - method public boolean hasGrantedPolicy(@NonNull android.content.ComponentName, int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean hasKeyPair(@NonNull String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public boolean hasLockdownAdminConfiguredNetworks(@Nullable android.content.ComponentName); - method public boolean installCaCert(@Nullable android.content.ComponentName, byte[]); - method public boolean installExistingPackage(@NonNull android.content.ComponentName, String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean installKeyPair(@Nullable android.content.ComponentName, @NonNull java.security.PrivateKey, @NonNull java.security.cert.Certificate, @NonNull String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean installKeyPair(@Nullable android.content.ComponentName, @NonNull java.security.PrivateKey, @NonNull java.security.cert.Certificate[], @NonNull String, boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean installKeyPair(@Nullable android.content.ComponentName, @NonNull java.security.PrivateKey, @NonNull java.security.cert.Certificate[], @NonNull String, int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SYSTEM_UPDATES, conditional=true) public void installSystemUpdate(@Nullable android.content.ComponentName, @NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.app.admin.DevicePolicyManager.InstallSystemUpdateCallback); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public boolean isActivePasswordSufficient(); - method public boolean isActivePasswordSufficientForDeviceRequirement(); - method public boolean isAdminActive(@NonNull android.content.ComponentName); - method public boolean isAffiliatedUser(); - method public boolean isAlwaysOnVpnLockdownEnabled(@NonNull android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE, conditional=true) public boolean isApplicationHidden(@Nullable android.content.ComponentName, String); - method public boolean isBackupServiceEnabled(@NonNull android.content.ComponentName); - method @Deprecated public boolean isCallerApplicationRestrictionsManagingPackage(); - method public boolean isCommonCriteriaModeEnabled(@Nullable android.content.ComponentName); - method public boolean isComplianceAcknowledgementRequired(); - method public boolean isDeviceFinanced(); - method public boolean isDeviceIdAttestationSupported(); - method public boolean isDeviceOwnerApp(String); - method public boolean isEphemeralUser(@NonNull android.content.ComponentName); - method public boolean isKeyPairGrantedToWifiAuth(@NonNull String); - method public boolean isLockTaskPermitted(String); - method public boolean isLogoutEnabled(); - method public boolean isManagedProfile(@NonNull android.content.ComponentName); - method public boolean isMasterVolumeMuted(@NonNull android.content.ComponentName); - method public static boolean isMtePolicyEnforced(); - method public boolean isNetworkLoggingEnabled(@Nullable android.content.ComponentName); - method public boolean isOrganizationOwnedDeviceWithManagedProfile(); - method public boolean isOverrideApnEnabled(@NonNull android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE, conditional=true) public boolean isPackageSuspended(@Nullable android.content.ComponentName, String) throws android.content.pm.PackageManager.NameNotFoundException; - method public boolean isPreferentialNetworkServiceEnabled(); - method public boolean isProfileOwnerApp(String); - method public boolean isProvisioningAllowed(@NonNull String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD, conditional=true) public boolean isResetPasswordTokenActive(@Nullable android.content.ComponentName); - method public boolean isSafeOperation(int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING, conditional=true) public boolean isSecurityLoggingEnabled(@Nullable android.content.ComponentName); - method public boolean isStatusBarDisabled(); - method public boolean isUninstallBlocked(@Nullable android.content.ComponentName, String); - method public boolean isUniqueDeviceAttestationSupported(); - method public boolean isUsbDataSignalingEnabled(); - method public boolean isUsingUnifiedPassword(@NonNull android.content.ComponentName); - method @NonNull public java.util.List listForegroundAffiliatedUsers(); - method @RequiresPermission(value="android.permission.LOCK_DEVICE", conditional=true) public void lockNow(); - method @RequiresPermission(value="android.permission.LOCK_DEVICE", conditional=true) public void lockNow(int); - method public int logoutUser(@NonNull android.content.ComponentName); - method public void reboot(@NonNull android.content.ComponentName); - method public void removeActiveAdmin(@NonNull android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public boolean removeCrossProfileWidgetProvider(@Nullable android.content.ComponentName, String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean removeKeyPair(@Nullable android.content.ComponentName, @NonNull String); - method public boolean removeOverrideApn(@NonNull android.content.ComponentName, int); - method public boolean removeUser(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); - method public boolean requestBugreport(@NonNull android.content.ComponentName); - method @Deprecated public boolean resetPassword(String, int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD, conditional=true) public boolean resetPasswordWithToken(@Nullable android.content.ComponentName, String, byte[], int); - method @Nullable public java.util.List retrieveNetworkLogs(@Nullable android.content.ComponentName, long); - method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING, conditional=true) public java.util.List retrievePreRebootSecurityLogs(@Nullable android.content.ComponentName); - method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING, conditional=true) public java.util.List retrieveSecurityLogs(@Nullable android.content.ComponentName); - method public boolean revokeKeyPairFromApp(@Nullable android.content.ComponentName, @NonNull String, @NonNull String); - method public boolean revokeKeyPairFromWifiAuth(@NonNull String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT, conditional=true) public void setAccountManagementDisabled(@Nullable android.content.ComponentName, String, boolean); - method public void setAffiliationIds(@NonNull android.content.ComponentName, @NonNull java.util.Set); - method public void setAlwaysOnVpnPackage(@NonNull android.content.ComponentName, @Nullable String, boolean) throws android.content.pm.PackageManager.NameNotFoundException; - method public void setAlwaysOnVpnPackage(@NonNull android.content.ComponentName, @Nullable String, boolean, @Nullable java.util.Set) throws android.content.pm.PackageManager.NameNotFoundException; - method @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APP_FUNCTIONS, conditional=true) public void setAppFunctionsPolicy(int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE, conditional=true) public boolean setApplicationHidden(@Nullable android.content.ComponentName, String, boolean); - method @WorkerThread public void setApplicationRestrictions(@Nullable android.content.ComponentName, String, android.os.Bundle); - method @Deprecated public void setApplicationRestrictionsManagingPackage(@NonNull android.content.ComponentName, @Nullable String) throws android.content.pm.PackageManager.NameNotFoundException; - method @RequiresPermission(value=android.Manifest.permission.SET_TIME, conditional=true) public void setAutoTimeEnabled(@Nullable android.content.ComponentName, boolean); - method @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") @RequiresPermission(value=android.Manifest.permission.SET_TIME, conditional=true) public void setAutoTimePolicy(int); - method @Deprecated public void setAutoTimeRequired(@NonNull android.content.ComponentName, boolean); - method @RequiresPermission(value=android.Manifest.permission.SET_TIME_ZONE, conditional=true) public void setAutoTimeZoneEnabled(@Nullable android.content.ComponentName, boolean); - method @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") @RequiresPermission(value=android.Manifest.permission.SET_TIME_ZONE, conditional=true) public void setAutoTimeZonePolicy(int); - method public void setBackupServiceEnabled(@NonNull android.content.ComponentName, boolean); - method public void setBluetoothContactSharingDisabled(@NonNull android.content.ComponentName, boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CAMERA, conditional=true) public void setCameraDisabled(@Nullable android.content.ComponentName, boolean); - method @Deprecated public void setCertInstallerPackage(@NonNull android.content.ComponentName, @Nullable String) throws java.lang.SecurityException; - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE, conditional=true) public void setCommonCriteriaModeEnabled(@Nullable android.content.ComponentName, boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public void setConfiguredNetworksLockdownState(@Nullable android.content.ComponentName, boolean); - method @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CONTENT_PROTECTION, conditional=true) public void setContentProtectionPolicy(@Nullable android.content.ComponentName, int); - method public void setCredentialManagerPolicy(@Nullable android.app.admin.PackagePolicy); - method @Deprecated public void setCrossProfileCalendarPackages(@NonNull android.content.ComponentName, @Nullable java.util.Set); - method @Deprecated public void setCrossProfileCallerIdDisabled(@NonNull android.content.ComponentName, boolean); - method @Deprecated public void setCrossProfileContactsSearchDisabled(@NonNull android.content.ComponentName, boolean); - method public void setCrossProfilePackages(@NonNull android.content.ComponentName, @NonNull java.util.Set); - method public void setDefaultDialerApplication(@NonNull String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_DEFAULT_SMS, conditional=true) public void setDefaultSmsApplication(@Nullable android.content.ComponentName, @NonNull String); - method public void setDelegatedScopes(@NonNull android.content.ComponentName, @NonNull String, @NonNull java.util.List); - method public void setDeviceOwnerLockScreenInfo(@NonNull android.content.ComponentName, CharSequence); - method public void setEndUserSessionMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_FACTORY_RESET, conditional=true) public void setFactoryResetProtectionPolicy(@Nullable android.content.ComponentName, @Nullable android.app.admin.FactoryResetProtectionPolicy); - method public int setGlobalPrivateDnsModeOpportunistic(@NonNull android.content.ComponentName); - method @WorkerThread public int setGlobalPrivateDnsModeSpecifiedHost(@NonNull android.content.ComponentName, @NonNull String); - method public void setGlobalSetting(@NonNull android.content.ComponentName, String, String); - method public void setKeepUninstalledPackages(@Nullable android.content.ComponentName, @NonNull java.util.List); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean setKeyPairCertificate(@Nullable android.content.ComponentName, @NonNull String, @NonNull java.util.List, boolean); - method public boolean setKeyguardDisabled(@NonNull android.content.ComponentName, boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_KEYGUARD, conditional=true) public void setKeyguardDisabledFeatures(@Nullable android.content.ComponentName, int); - method public void setLocationEnabled(@NonNull android.content.ComponentName, boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public void setLockTaskFeatures(@Nullable android.content.ComponentName, int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public void setLockTaskPackages(@Nullable android.content.ComponentName, @NonNull String[]) throws java.lang.SecurityException; - method public void setLogoutEnabled(@NonNull android.content.ComponentName, boolean); - method public void setLongSupportMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); - method public void setManagedProfileCallerIdAccessPolicy(@Nullable android.app.admin.PackagePolicy); - method public void setManagedProfileContactsAccessPolicy(@Nullable android.app.admin.PackagePolicy); - method public void setManagedProfileMaximumTimeOff(@NonNull android.content.ComponentName, long); - method public void setManagedSubscriptionsPolicy(@Nullable android.app.admin.ManagedSubscriptionsPolicy); - method public void setMasterVolumeMuted(@NonNull android.content.ComponentName, boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIPE_DATA, conditional=true) public void setMaximumFailedPasswordsForWipe(@Nullable android.content.ComponentName, int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK, conditional=true) public void setMaximumTimeToLock(@Nullable android.content.ComponentName, long); - method @NonNull public java.util.List setMeteredDataDisabledPackages(@NonNull android.content.ComponentName, @NonNull java.util.List); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public void setMinimumRequiredWifiSecurityLevel(int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_MTE, conditional=true) public void setMtePolicy(int); - method public void setNearbyAppStreamingPolicy(int); - method public void setNearbyNotificationStreamingPolicy(int); - method public void setNetworkLoggingEnabled(@Nullable android.content.ComponentName, boolean); - method @Deprecated public void setOrganizationColor(@NonNull android.content.ComponentName, int); - method public void setOrganizationId(@NonNull String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY, conditional=true) public void setOrganizationName(@Nullable android.content.ComponentName, @Nullable CharSequence); - method public void setOverrideApnsEnabled(@NonNull android.content.ComponentName, boolean); - method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE, conditional=true) public String[] setPackagesSuspended(@Nullable android.content.ComponentName, @NonNull String[], boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public void setPasswordExpirationTimeout(@Nullable android.content.ComponentName, long); - method public void setPasswordHistoryLength(@NonNull android.content.ComponentName, int); - method @Deprecated public void setPasswordMinimumLength(@NonNull android.content.ComponentName, int); - method @Deprecated public void setPasswordMinimumLetters(@NonNull android.content.ComponentName, int); - method @Deprecated public void setPasswordMinimumLowerCase(@NonNull android.content.ComponentName, int); - method @Deprecated public void setPasswordMinimumNonLetter(@NonNull android.content.ComponentName, int); - method @Deprecated public void setPasswordMinimumNumeric(@NonNull android.content.ComponentName, int); - method @Deprecated public void setPasswordMinimumSymbols(@NonNull android.content.ComponentName, int); - method @Deprecated public void setPasswordMinimumUpperCase(@NonNull android.content.ComponentName, int); - method @Deprecated public void setPasswordQuality(@NonNull android.content.ComponentName, int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS, conditional=true) public boolean setPermissionGrantState(@Nullable android.content.ComponentName, @NonNull String, @NonNull String, int); - method public void setPermissionPolicy(@NonNull android.content.ComponentName, int); - method public boolean setPermittedAccessibilityServices(@NonNull android.content.ComponentName, java.util.List); - method public boolean setPermittedCrossProfileNotificationListeners(@NonNull android.content.ComponentName, @Nullable java.util.List); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_INPUT_METHODS, conditional=true) public boolean setPermittedInputMethods(@Nullable android.content.ComponentName, java.util.List); - method public void setPersonalAppsSuspended(@NonNull android.content.ComponentName, boolean); - method public void setPreferentialNetworkServiceConfigs(@NonNull java.util.List); - method public void setPreferentialNetworkServiceEnabled(boolean); - method public void setProfileEnabled(@NonNull android.content.ComponentName); - method public void setProfileName(@NonNull android.content.ComponentName, String); - method public void setRecommendedGlobalProxy(@NonNull android.content.ComponentName, @Nullable android.net.ProxyInfo); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public void setRequiredPasswordComplexity(int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public void setRequiredStrongAuthTimeout(@Nullable android.content.ComponentName, long); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD, conditional=true) public boolean setResetPasswordToken(@Nullable android.content.ComponentName, byte[]); - method public void setRestrictionsProvider(@NonNull android.content.ComponentName, @Nullable android.content.ComponentName); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SCREEN_CAPTURE, conditional=true) public void setScreenCaptureDisabled(@Nullable android.content.ComponentName, boolean); - method public void setSecureSetting(@NonNull android.content.ComponentName, String, String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING, conditional=true) public void setSecurityLoggingEnabled(@Nullable android.content.ComponentName, boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE, conditional=true) public void setShortSupportMessage(@Nullable android.content.ComponentName, @Nullable CharSequence); - method public void setStartUserSessionMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_STATUS_BAR, conditional=true) public boolean setStatusBarDisabled(@Nullable android.content.ComponentName, boolean); - method @Deprecated public int setStorageEncryption(@NonNull android.content.ComponentName, boolean); - method public void setSystemSetting(@NonNull android.content.ComponentName, @NonNull String, String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SYSTEM_UPDATES, conditional=true) public void setSystemUpdatePolicy(@NonNull android.content.ComponentName, android.app.admin.SystemUpdatePolicy); - method @RequiresPermission(value=android.Manifest.permission.SET_TIME, conditional=true) public boolean setTime(@Nullable android.content.ComponentName, long); - method @RequiresPermission(value=android.Manifest.permission.SET_TIME_ZONE, conditional=true) public boolean setTimeZone(@Nullable android.content.ComponentName, String); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_KEYGUARD, conditional=true) public void setTrustAgentConfiguration(@Nullable android.content.ComponentName, @NonNull android.content.ComponentName, android.os.PersistableBundle); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL, conditional=true) public void setUninstallBlocked(@Nullable android.content.ComponentName, String, boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING, conditional=true) public void setUsbDataSignalingEnabled(boolean); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL, conditional=true) public void setUserControlDisabledPackages(@Nullable android.content.ComponentName, @NonNull java.util.List); - method public void setUserIcon(@NonNull android.content.ComponentName, android.graphics.Bitmap); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public void setWifiSsidPolicy(@Nullable android.app.admin.WifiSsidPolicy); - method public int startUserInBackground(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); - method public int stopUser(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); - method public boolean switchUser(@NonNull android.content.ComponentName, @Nullable android.os.UserHandle); - method public void transferOwnership(@NonNull android.content.ComponentName, @NonNull android.content.ComponentName, @Nullable android.os.PersistableBundle); - method public void uninstallAllUserCaCerts(@Nullable android.content.ComponentName); - method public void uninstallCaCert(@Nullable android.content.ComponentName, byte[]); - method public boolean updateOverrideApn(@NonNull android.content.ComponentName, int, @NonNull android.telephony.data.ApnSetting); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIPE_DATA, conditional=true) public void wipeData(int); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIPE_DATA, conditional=true) public void wipeData(int, @NonNull CharSequence); - method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIPE_DATA, conditional=true) public void wipeDevice(int); - field public static final String ACTION_ADD_DEVICE_ADMIN = "android.app.action.ADD_DEVICE_ADMIN"; - field public static final String ACTION_ADMIN_POLICY_COMPLIANCE = "android.app.action.ADMIN_POLICY_COMPLIANCE"; - field public static final String ACTION_APPLICATION_DELEGATION_SCOPES_CHANGED = "android.app.action.APPLICATION_DELEGATION_SCOPES_CHANGED"; - field public static final String ACTION_CHECK_POLICY_COMPLIANCE = "android.app.action.CHECK_POLICY_COMPLIANCE"; - field public static final String ACTION_DEVICE_ADMIN_SERVICE = "android.app.action.DEVICE_ADMIN_SERVICE"; - field public static final String ACTION_DEVICE_FINANCING_STATE_CHANGED = "android.app.admin.action.DEVICE_FINANCING_STATE_CHANGED"; - field public static final String ACTION_DEVICE_OWNER_CHANGED = "android.app.action.DEVICE_OWNER_CHANGED"; - field public static final String ACTION_DEVICE_POLICY_RESOURCE_UPDATED = "android.app.action.DEVICE_POLICY_RESOURCE_UPDATED"; - field public static final String ACTION_GET_PROVISIONING_MODE = "android.app.action.GET_PROVISIONING_MODE"; - field public static final String ACTION_MANAGED_PROFILE_PROVISIONED = "android.app.action.MANAGED_PROFILE_PROVISIONED"; - field public static final String ACTION_PROFILE_OWNER_CHANGED = "android.app.action.PROFILE_OWNER_CHANGED"; - field public static final String ACTION_PROVISIONING_SUCCESSFUL = "android.app.action.PROVISIONING_SUCCESSFUL"; - field @Deprecated public static final String ACTION_PROVISION_MANAGED_DEVICE = "android.app.action.PROVISION_MANAGED_DEVICE"; - field public static final String ACTION_PROVISION_MANAGED_PROFILE = "android.app.action.PROVISION_MANAGED_PROFILE"; - field public static final String ACTION_SET_NEW_PARENT_PROFILE_PASSWORD = "android.app.action.SET_NEW_PARENT_PROFILE_PASSWORD"; - field public static final String ACTION_SET_NEW_PASSWORD = "android.app.action.SET_NEW_PASSWORD"; - field public static final String ACTION_START_ENCRYPTION = "android.app.action.START_ENCRYPTION"; - field public static final String ACTION_SYSTEM_UPDATE_POLICY_CHANGED = "android.app.action.SYSTEM_UPDATE_POLICY_CHANGED"; - field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final int APP_FUNCTIONS_DISABLED = 1; // 0x1 - field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final int APP_FUNCTIONS_DISABLED_CROSS_PROFILE = 2; // 0x2 - field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final int APP_FUNCTIONS_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 - field @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") public static final int AUTO_TIME_DISABLED = 1; // 0x1 - field @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") public static final int AUTO_TIME_ENABLED = 2; // 0x2 - field @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") public static final int AUTO_TIME_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 - field @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") public static final int AUTO_TIME_ZONE_DISABLED = 1; // 0x1 - field @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") public static final int AUTO_TIME_ZONE_ENABLED = 2; // 0x2 - field @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") public static final int AUTO_TIME_ZONE_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 - field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final int CONTENT_PROTECTION_DISABLED = 1; // 0x1 - field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final int CONTENT_PROTECTION_ENABLED = 2; // 0x2 - field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final int CONTENT_PROTECTION_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 - field public static final String DELEGATION_APP_RESTRICTIONS = "delegation-app-restrictions"; - field public static final String DELEGATION_BLOCK_UNINSTALL = "delegation-block-uninstall"; - field public static final String DELEGATION_CERT_INSTALL = "delegation-cert-install"; - field public static final String DELEGATION_CERT_SELECTION = "delegation-cert-selection"; - field public static final String DELEGATION_ENABLE_SYSTEM_APP = "delegation-enable-system-app"; - field public static final String DELEGATION_INSTALL_EXISTING_PACKAGE = "delegation-install-existing-package"; - field public static final String DELEGATION_KEEP_UNINSTALLED_PACKAGES = "delegation-keep-uninstalled-packages"; - field public static final String DELEGATION_NETWORK_LOGGING = "delegation-network-logging"; - field public static final String DELEGATION_PACKAGE_ACCESS = "delegation-package-access"; - field public static final String DELEGATION_PERMISSION_GRANT = "delegation-permission-grant"; - field public static final String DELEGATION_SECURITY_LOGGING = "delegation-security-logging"; - field @Deprecated public static final int ENCRYPTION_STATUS_ACTIVATING = 2; // 0x2 - field public static final int ENCRYPTION_STATUS_ACTIVE = 3; // 0x3 - field public static final int ENCRYPTION_STATUS_ACTIVE_DEFAULT_KEY = 4; // 0x4 - field public static final int ENCRYPTION_STATUS_ACTIVE_PER_USER = 5; // 0x5 - field public static final int ENCRYPTION_STATUS_INACTIVE = 1; // 0x1 - field public static final int ENCRYPTION_STATUS_UNSUPPORTED = 0; // 0x0 - field public static final String EXTRA_ADD_EXPLANATION = "android.app.extra.ADD_EXPLANATION"; - field public static final String EXTRA_DELEGATION_SCOPES = "android.app.extra.DELEGATION_SCOPES"; - field public static final String EXTRA_DEVICE_ADMIN = "android.app.extra.DEVICE_ADMIN"; - field public static final String EXTRA_DEVICE_PASSWORD_REQUIREMENT_ONLY = "android.app.extra.DEVICE_PASSWORD_REQUIREMENT_ONLY"; - field @RequiresPermission(android.Manifest.permission.REQUEST_PASSWORD_COMPLEXITY) public static final String EXTRA_PASSWORD_COMPLEXITY = "android.app.extra.PASSWORD_COMPLEXITY"; - field public static final String EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE = "android.app.extra.PROVISIONING_ACCOUNT_TO_MIGRATE"; - field public static final String EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE = "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE"; - field public static final String EXTRA_PROVISIONING_ALLOWED_PROVISIONING_MODES = "android.app.extra.PROVISIONING_ALLOWED_PROVISIONING_MODES"; - field public static final String EXTRA_PROVISIONING_ALLOW_OFFLINE = "android.app.extra.PROVISIONING_ALLOW_OFFLINE"; - field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME = "android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME"; - field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_MINIMUM_VERSION_CODE = "android.app.extra.PROVISIONING_DEVICE_ADMIN_MINIMUM_VERSION_CODE"; - field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM"; - field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_COOKIE_HEADER = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_COOKIE_HEADER"; - field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION"; - field @Deprecated public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME"; - field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM = "android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM"; - field public static final String EXTRA_PROVISIONING_DISCLAIMERS = "android.app.extra.PROVISIONING_DISCLAIMERS"; - field public static final String EXTRA_PROVISIONING_DISCLAIMER_CONTENT = "android.app.extra.PROVISIONING_DISCLAIMER_CONTENT"; - field public static final String EXTRA_PROVISIONING_DISCLAIMER_HEADER = "android.app.extra.PROVISIONING_DISCLAIMER_HEADER"; - field @Deprecated public static final String EXTRA_PROVISIONING_EMAIL_ADDRESS = "android.app.extra.PROVISIONING_EMAIL_ADDRESS"; - field public static final String EXTRA_PROVISIONING_IMEI = "android.app.extra.PROVISIONING_IMEI"; - field public static final String EXTRA_PROVISIONING_KEEP_ACCOUNT_ON_MIGRATION = "android.app.extra.PROVISIONING_KEEP_ACCOUNT_ON_MIGRATION"; - field @Deprecated public static final String EXTRA_PROVISIONING_KEEP_SCREEN_ON = "android.app.extra.PROVISIONING_KEEP_SCREEN_ON"; - field public static final String EXTRA_PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED = "android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED"; - field public static final String EXTRA_PROVISIONING_LOCALE = "android.app.extra.PROVISIONING_LOCALE"; - field public static final String EXTRA_PROVISIONING_LOCAL_TIME = "android.app.extra.PROVISIONING_LOCAL_TIME"; - field @Deprecated public static final String EXTRA_PROVISIONING_LOGO_URI = "android.app.extra.PROVISIONING_LOGO_URI"; - field @Deprecated public static final String EXTRA_PROVISIONING_MAIN_COLOR = "android.app.extra.PROVISIONING_MAIN_COLOR"; - field public static final String EXTRA_PROVISIONING_MODE = "android.app.extra.PROVISIONING_MODE"; - field public static final String EXTRA_PROVISIONING_SENSORS_PERMISSION_GRANT_OPT_OUT = "android.app.extra.PROVISIONING_SENSORS_PERMISSION_GRANT_OPT_OUT"; - field public static final String EXTRA_PROVISIONING_SERIAL_NUMBER = "android.app.extra.PROVISIONING_SERIAL_NUMBER"; - field public static final String EXTRA_PROVISIONING_SHOULD_LAUNCH_RESULT_INTENT = "android.app.extra.PROVISIONING_SHOULD_LAUNCH_RESULT_INTENT"; - field public static final String EXTRA_PROVISIONING_SKIP_EDUCATION_SCREENS = "android.app.extra.PROVISIONING_SKIP_EDUCATION_SCREENS"; - field public static final String EXTRA_PROVISIONING_SKIP_ENCRYPTION = "android.app.extra.PROVISIONING_SKIP_ENCRYPTION"; - field @Deprecated public static final String EXTRA_PROVISIONING_SKIP_USER_CONSENT = "android.app.extra.PROVISIONING_SKIP_USER_CONSENT"; - field public static final String EXTRA_PROVISIONING_TIME_ZONE = "android.app.extra.PROVISIONING_TIME_ZONE"; - field public static final String EXTRA_PROVISIONING_USE_MOBILE_DATA = "android.app.extra.PROVISIONING_USE_MOBILE_DATA"; - field public static final String EXTRA_PROVISIONING_WIFI_ANONYMOUS_IDENTITY = "android.app.extra.PROVISIONING_WIFI_ANONYMOUS_IDENTITY"; - field public static final String EXTRA_PROVISIONING_WIFI_CA_CERTIFICATE = "android.app.extra.PROVISIONING_WIFI_CA_CERTIFICATE"; - field public static final String EXTRA_PROVISIONING_WIFI_DOMAIN = "android.app.extra.PROVISIONING_WIFI_DOMAIN"; - field public static final String EXTRA_PROVISIONING_WIFI_EAP_METHOD = "android.app.extra.PROVISIONING_WIFI_EAP_METHOD"; - field public static final String EXTRA_PROVISIONING_WIFI_HIDDEN = "android.app.extra.PROVISIONING_WIFI_HIDDEN"; - field public static final String EXTRA_PROVISIONING_WIFI_IDENTITY = "android.app.extra.PROVISIONING_WIFI_IDENTITY"; - field public static final String EXTRA_PROVISIONING_WIFI_PAC_URL = "android.app.extra.PROVISIONING_WIFI_PAC_URL"; - field public static final String EXTRA_PROVISIONING_WIFI_PASSWORD = "android.app.extra.PROVISIONING_WIFI_PASSWORD"; - field public static final String EXTRA_PROVISIONING_WIFI_PHASE2_AUTH = "android.app.extra.PROVISIONING_WIFI_PHASE2_AUTH"; - field public static final String EXTRA_PROVISIONING_WIFI_PROXY_BYPASS = "android.app.extra.PROVISIONING_WIFI_PROXY_BYPASS"; - field public static final String EXTRA_PROVISIONING_WIFI_PROXY_HOST = "android.app.extra.PROVISIONING_WIFI_PROXY_HOST"; - field public static final String EXTRA_PROVISIONING_WIFI_PROXY_PORT = "android.app.extra.PROVISIONING_WIFI_PROXY_PORT"; - field public static final String EXTRA_PROVISIONING_WIFI_SECURITY_TYPE = "android.app.extra.PROVISIONING_WIFI_SECURITY_TYPE"; - field public static final String EXTRA_PROVISIONING_WIFI_SSID = "android.app.extra.PROVISIONING_WIFI_SSID"; - field public static final String EXTRA_PROVISIONING_WIFI_USER_CERTIFICATE = "android.app.extra.PROVISIONING_WIFI_USER_CERTIFICATE"; - field public static final String EXTRA_RESOURCE_IDS = "android.app.extra.RESOURCE_IDS"; - field public static final String EXTRA_RESOURCE_TYPE = "android.app.extra.RESOURCE_TYPE"; - field public static final int EXTRA_RESOURCE_TYPE_DRAWABLE = 1; // 0x1 - field public static final int EXTRA_RESOURCE_TYPE_STRING = 2; // 0x2 - field public static final String EXTRA_RESULT_LAUNCH_INTENT = "android.app.extra.RESULT_LAUNCH_INTENT"; - field public static final int FLAG_EVICT_CREDENTIAL_ENCRYPTION_KEY = 1; // 0x1 - field public static final int FLAG_MANAGED_CAN_ACCESS_PARENT = 2; // 0x2 - field public static final int FLAG_PARENT_CAN_ACCESS_MANAGED = 1; // 0x1 - field public static final int ID_TYPE_BASE_INFO = 1; // 0x1 - field public static final int ID_TYPE_IMEI = 4; // 0x4 - field public static final int ID_TYPE_INDIVIDUAL_ATTESTATION = 16; // 0x10 - field public static final int ID_TYPE_MEID = 8; // 0x8 - field public static final int ID_TYPE_SERIAL = 2; // 0x2 - field public static final int INSTALLKEY_REQUEST_CREDENTIALS_ACCESS = 1; // 0x1 - field public static final int INSTALLKEY_SET_USER_SELECTABLE = 2; // 0x2 - field public static final int KEYGUARD_DISABLE_BIOMETRICS = 416; // 0x1a0 - field public static final int KEYGUARD_DISABLE_FACE = 128; // 0x80 - field public static final int KEYGUARD_DISABLE_FEATURES_ALL = 2147483647; // 0x7fffffff - field public static final int KEYGUARD_DISABLE_FEATURES_NONE = 0; // 0x0 - field public static final int KEYGUARD_DISABLE_FINGERPRINT = 32; // 0x20 - field public static final int KEYGUARD_DISABLE_IRIS = 256; // 0x100 - field @Deprecated public static final int KEYGUARD_DISABLE_REMOTE_INPUT = 64; // 0x40 - field public static final int KEYGUARD_DISABLE_SECURE_CAMERA = 2; // 0x2 - field public static final int KEYGUARD_DISABLE_SECURE_NOTIFICATIONS = 4; // 0x4 - field public static final int KEYGUARD_DISABLE_SHORTCUTS_ALL = 512; // 0x200 - field public static final int KEYGUARD_DISABLE_TRUST_AGENTS = 16; // 0x10 - field public static final int KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS = 8; // 0x8 - field public static final int KEYGUARD_DISABLE_WIDGETS_ALL = 1; // 0x1 - field public static final int LEAVE_ALL_SYSTEM_APPS_ENABLED = 16; // 0x10 - field public static final int LOCK_TASK_FEATURE_BLOCK_ACTIVITY_START_IN_TASK = 64; // 0x40 - field public static final int LOCK_TASK_FEATURE_GLOBAL_ACTIONS = 16; // 0x10 - field public static final int LOCK_TASK_FEATURE_HOME = 4; // 0x4 - field public static final int LOCK_TASK_FEATURE_KEYGUARD = 32; // 0x20 - field public static final int LOCK_TASK_FEATURE_NONE = 0; // 0x0 - field public static final int LOCK_TASK_FEATURE_NOTIFICATIONS = 2; // 0x2 - field public static final int LOCK_TASK_FEATURE_OVERVIEW = 8; // 0x8 - field public static final int LOCK_TASK_FEATURE_SYSTEM_INFO = 1; // 0x1 - field public static final int MAKE_USER_EPHEMERAL = 2; // 0x2 - field public static final String MIME_TYPE_PROVISIONING_NFC = "application/com.android.managedprovisioning"; - field public static final int MTE_DISABLED = 2; // 0x2 - field public static final int MTE_ENABLED = 1; // 0x1 - field public static final int MTE_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 - field public static final int NEARBY_STREAMING_DISABLED = 1; // 0x1 - field public static final int NEARBY_STREAMING_ENABLED = 2; // 0x2 - field public static final int NEARBY_STREAMING_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 - field public static final int NEARBY_STREAMING_SAME_MANAGED_ACCOUNT_ONLY = 3; // 0x3 - field public static final int OPERATION_SAFETY_REASON_DRIVING_DISTRACTION = 1; // 0x1 - field public static final int PASSWORD_COMPLEXITY_HIGH = 327680; // 0x50000 - field public static final int PASSWORD_COMPLEXITY_LOW = 65536; // 0x10000 - field public static final int PASSWORD_COMPLEXITY_MEDIUM = 196608; // 0x30000 - field public static final int PASSWORD_COMPLEXITY_NONE = 0; // 0x0 - field public static final int PASSWORD_QUALITY_ALPHABETIC = 262144; // 0x40000 - field public static final int PASSWORD_QUALITY_ALPHANUMERIC = 327680; // 0x50000 - field public static final int PASSWORD_QUALITY_BIOMETRIC_WEAK = 32768; // 0x8000 - field public static final int PASSWORD_QUALITY_COMPLEX = 393216; // 0x60000 - field public static final int PASSWORD_QUALITY_NUMERIC = 131072; // 0x20000 - field public static final int PASSWORD_QUALITY_NUMERIC_COMPLEX = 196608; // 0x30000 - field public static final int PASSWORD_QUALITY_SOMETHING = 65536; // 0x10000 - field public static final int PASSWORD_QUALITY_UNSPECIFIED = 0; // 0x0 - field public static final int PERMISSION_GRANT_STATE_DEFAULT = 0; // 0x0 - field public static final int PERMISSION_GRANT_STATE_DENIED = 2; // 0x2 - field public static final int PERMISSION_GRANT_STATE_GRANTED = 1; // 0x1 - field public static final int PERMISSION_POLICY_AUTO_DENY = 2; // 0x2 - field public static final int PERMISSION_POLICY_AUTO_GRANT = 1; // 0x1 - field public static final int PERMISSION_POLICY_PROMPT = 0; // 0x0 - field public static final int PERSONAL_APPS_NOT_SUSPENDED = 0; // 0x0 - field public static final int PERSONAL_APPS_SUSPENDED_EXPLICITLY = 1; // 0x1 - field public static final int PERSONAL_APPS_SUSPENDED_PROFILE_TIMEOUT = 2; // 0x2 - field public static final String POLICY_DISABLE_CAMERA = "policy_disable_camera"; - field public static final String POLICY_DISABLE_SCREEN_CAPTURE = "policy_disable_screen_capture"; - field public static final int PRIVATE_DNS_MODE_OFF = 1; // 0x1 - field public static final int PRIVATE_DNS_MODE_OPPORTUNISTIC = 2; // 0x2 - field public static final int PRIVATE_DNS_MODE_PROVIDER_HOSTNAME = 3; // 0x3 - field public static final int PRIVATE_DNS_MODE_UNKNOWN = 0; // 0x0 - field public static final int PRIVATE_DNS_SET_ERROR_FAILURE_SETTING = 2; // 0x2 - field public static final int PRIVATE_DNS_SET_ERROR_HOST_NOT_SERVING = 1; // 0x1 - field public static final int PRIVATE_DNS_SET_NO_ERROR = 0; // 0x0 - field public static final int PROVISIONING_MODE_FULLY_MANAGED_DEVICE = 1; // 0x1 - field public static final int PROVISIONING_MODE_MANAGED_PROFILE = 2; // 0x2 - field public static final int PROVISIONING_MODE_MANAGED_PROFILE_ON_PERSONAL_DEVICE = 3; // 0x3 - field public static final int RESET_PASSWORD_DO_NOT_ASK_CREDENTIALS_ON_BOOT = 2; // 0x2 - field public static final int RESET_PASSWORD_REQUIRE_ENTRY = 1; // 0x1 - field public static final int SKIP_SETUP_WIZARD = 1; // 0x1 - field public static final int WIFI_SECURITY_ENTERPRISE_192 = 3; // 0x3 - field public static final int WIFI_SECURITY_ENTERPRISE_EAP = 2; // 0x2 - field public static final int WIFI_SECURITY_OPEN = 0; // 0x0 - field public static final int WIFI_SECURITY_PERSONAL = 1; // 0x1 - field public static final int WIPE_EUICC = 4; // 0x4 - field public static final int WIPE_EXTERNAL_STORAGE = 1; // 0x1 - field public static final int WIPE_RESET_PROTECTION_DATA = 2; // 0x2 - field public static final int WIPE_SILENTLY = 8; // 0x8 - } - - public abstract static class DevicePolicyManager.InstallSystemUpdateCallback { - ctor public DevicePolicyManager.InstallSystemUpdateCallback(); - method public void onInstallUpdateError(int, @NonNull String); - field public static final int UPDATE_ERROR_BATTERY_LOW = 5; // 0x5 - field public static final int UPDATE_ERROR_FILE_NOT_FOUND = 4; // 0x4 - field public static final int UPDATE_ERROR_INCORRECT_OS_VERSION = 2; // 0x2 - field public static final int UPDATE_ERROR_UNKNOWN = 1; // 0x1 - field public static final int UPDATE_ERROR_UPDATE_FILE_INVALID = 3; // 0x3 - } - - public static interface DevicePolicyManager.OnClearApplicationUserDataListener { - method public void onApplicationUserDataCleared(String, boolean); - } - - public final class DevicePolicyResources { - field public static final String UNDEFINED = "UNDEFINED"; - } - - public class DevicePolicyResourcesManager { - method @Nullable public android.graphics.drawable.Drawable getDrawable(@NonNull String, @NonNull String, @NonNull java.util.function.Supplier); - method @Nullable public android.graphics.drawable.Drawable getDrawable(@NonNull String, @NonNull String, @NonNull String, @NonNull java.util.function.Supplier); - method @Nullable public android.graphics.drawable.Icon getDrawableAsIcon(@NonNull String, @NonNull String, @NonNull String, @Nullable android.graphics.drawable.Icon); - method @Nullable public android.graphics.drawable.Icon getDrawableAsIcon(@NonNull String, @NonNull String, @Nullable android.graphics.drawable.Icon); - method @Nullable public android.graphics.drawable.Drawable getDrawableForDensity(@NonNull String, @NonNull String, int, @NonNull java.util.function.Supplier); - method @Nullable public android.graphics.drawable.Drawable getDrawableForDensity(@NonNull String, @NonNull String, @NonNull String, int, @NonNull java.util.function.Supplier); - method @Nullable public String getString(@NonNull String, @NonNull java.util.function.Supplier); - method @Nullable public String getString(@NonNull String, @NonNull java.util.function.Supplier, @NonNull java.lang.Object...); - } - - public final class DnsEvent extends android.app.admin.NetworkEvent implements android.os.Parcelable { - method public String getHostname(); - method public java.util.List getInetAddresses(); - method public int getTotalResolvedAddressCount(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class FactoryResetProtectionPolicy implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getFactoryResetProtectionAccounts(); - method public boolean isFactoryResetProtectionEnabled(); - method public void writeToParcel(@NonNull android.os.Parcel, @Nullable int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class FactoryResetProtectionPolicy.Builder { - ctor public FactoryResetProtectionPolicy.Builder(); - method @NonNull public android.app.admin.FactoryResetProtectionPolicy build(); - method @NonNull public android.app.admin.FactoryResetProtectionPolicy.Builder setFactoryResetProtectionAccounts(@NonNull java.util.List); - method @NonNull public android.app.admin.FactoryResetProtectionPolicy.Builder setFactoryResetProtectionEnabled(boolean); - } - - public class FreezePeriod { - ctor public FreezePeriod(java.time.MonthDay, java.time.MonthDay); - method public java.time.MonthDay getEnd(); - method public java.time.MonthDay getStart(); - } - - public final class ManagedSubscriptionsPolicy implements android.os.Parcelable { - ctor public ManagedSubscriptionsPolicy(int); - method public int describeContents(); - method public int getPolicyType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_ALL_MANAGED_SUBSCRIPTIONS = 1; // 0x1 - field public static final int TYPE_ALL_PERSONAL_SUBSCRIPTIONS = 0; // 0x0 - } - - public abstract class NetworkEvent implements android.os.Parcelable { - method public int describeContents(); - method public long getId(); - method public String getPackageName(); - method public long getTimestamp(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class PackagePolicy implements android.os.Parcelable { - ctor public PackagePolicy(int); - ctor public PackagePolicy(int, @NonNull java.util.Set); - method public int describeContents(); - method @NonNull public java.util.Set getPackageNames(); - method public int getPolicyType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int PACKAGE_POLICY_ALLOWLIST = 3; // 0x3 - field public static final int PACKAGE_POLICY_ALLOWLIST_AND_SYSTEM = 2; // 0x2 - field public static final int PACKAGE_POLICY_BLOCKLIST = 1; // 0x1 - } - - public abstract class PolicyUpdateReceiver extends android.content.BroadcastReceiver { - ctor public PolicyUpdateReceiver(); - method public void onPolicyChanged(@NonNull android.content.Context, @NonNull String, @NonNull android.os.Bundle, @NonNull android.app.admin.TargetUser, @NonNull android.app.admin.PolicyUpdateResult); - method public void onPolicySetResult(@NonNull android.content.Context, @NonNull String, @NonNull android.os.Bundle, @NonNull android.app.admin.TargetUser, @NonNull android.app.admin.PolicyUpdateResult); - method public final void onReceive(android.content.Context, android.content.Intent); - field public static final String ACTION_DEVICE_POLICY_CHANGED = "android.app.admin.action.DEVICE_POLICY_CHANGED"; - field public static final String ACTION_DEVICE_POLICY_SET_RESULT = "android.app.admin.action.DEVICE_POLICY_SET_RESULT"; - field public static final String EXTRA_ACCOUNT_TYPE = "android.app.admin.extra.ACCOUNT_TYPE"; - field public static final String EXTRA_INTENT_FILTER = "android.app.admin.extra.INTENT_FILTER"; - field public static final String EXTRA_PACKAGE_NAME = "android.app.admin.extra.PACKAGE_NAME"; - field public static final String EXTRA_PERMISSION_NAME = "android.app.admin.extra.PERMISSION_NAME"; - } - - public final class PolicyUpdateResult { - ctor public PolicyUpdateResult(int); - method public int getResultCode(); - field public static final int RESULT_FAILURE_CONFLICTING_ADMIN_POLICY = 1; // 0x1 - field public static final int RESULT_FAILURE_HARDWARE_LIMITATION = 4; // 0x4 - field public static final int RESULT_FAILURE_STORAGE_LIMIT_REACHED = 3; // 0x3 - field public static final int RESULT_FAILURE_UNKNOWN = -1; // 0xffffffff - field public static final int RESULT_POLICY_CLEARED = 2; // 0x2 - field public static final int RESULT_POLICY_SET = 0; // 0x0 - } - - public final class PreferentialNetworkServiceConfig implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public int[] getExcludedUids(); - method @NonNull public int[] getIncludedUids(); - method public int getNetworkId(); - method public boolean isEnabled(); - method public boolean isFallbackToDefaultConnectionAllowed(); - method public boolean shouldBlockNonMatchingNetworks(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int PREFERENTIAL_NETWORK_ID_1 = 1; // 0x1 - field public static final int PREFERENTIAL_NETWORK_ID_2 = 2; // 0x2 - field public static final int PREFERENTIAL_NETWORK_ID_3 = 3; // 0x3 - field public static final int PREFERENTIAL_NETWORK_ID_4 = 4; // 0x4 - field public static final int PREFERENTIAL_NETWORK_ID_5 = 5; // 0x5 - } - - public static final class PreferentialNetworkServiceConfig.Builder { - ctor public PreferentialNetworkServiceConfig.Builder(); - method @NonNull public android.app.admin.PreferentialNetworkServiceConfig build(); - method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setEnabled(boolean); - method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setExcludedUids(@NonNull int[]); - method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setFallbackToDefaultConnectionAllowed(boolean); - method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setIncludedUids(@NonNull int[]); - method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setNetworkId(int); - method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setShouldBlockNonMatchingNetworks(boolean); - } - - public class SecurityLog { - ctor public SecurityLog(); - field public static final int LEVEL_ERROR = 3; // 0x3 - field public static final int LEVEL_INFO = 1; // 0x1 - field public static final int LEVEL_WARNING = 2; // 0x2 - field public static final int TAG_ADB_SHELL_CMD = 210002; // 0x33452 - field public static final int TAG_ADB_SHELL_INTERACTIVE = 210001; // 0x33451 - field public static final int TAG_APP_PROCESS_START = 210005; // 0x33455 - field public static final int TAG_BACKUP_SERVICE_TOGGLED = 210044; // 0x3347c - field public static final int TAG_BLUETOOTH_CONNECTION = 210039; // 0x33477 - field public static final int TAG_BLUETOOTH_DISCONNECTION = 210040; // 0x33478 - field public static final int TAG_CAMERA_POLICY_SET = 210034; // 0x33472 - field public static final int TAG_CERT_AUTHORITY_INSTALLED = 210029; // 0x3346d - field public static final int TAG_CERT_AUTHORITY_REMOVED = 210030; // 0x3346e - field public static final int TAG_CERT_VALIDATION_FAILURE = 210033; // 0x33471 - field public static final int TAG_CRYPTO_SELF_TEST_COMPLETED = 210031; // 0x3346f - field public static final int TAG_KEYGUARD_DISABLED_FEATURES_SET = 210021; // 0x33465 - field public static final int TAG_KEYGUARD_DISMISSED = 210006; // 0x33456 - field public static final int TAG_KEYGUARD_DISMISS_AUTH_ATTEMPT = 210007; // 0x33457 - field public static final int TAG_KEYGUARD_SECURED = 210008; // 0x33458 - field public static final int TAG_KEY_DESTRUCTION = 210026; // 0x3346a - field public static final int TAG_KEY_GENERATED = 210024; // 0x33468 - field public static final int TAG_KEY_IMPORT = 210025; // 0x33469 - field public static final int TAG_KEY_INTEGRITY_VIOLATION = 210032; // 0x33470 - field public static final int TAG_LOGGING_STARTED = 210011; // 0x3345b - field public static final int TAG_LOGGING_STOPPED = 210012; // 0x3345c - field public static final int TAG_LOG_BUFFER_SIZE_CRITICAL = 210015; // 0x3345f - field public static final int TAG_MAX_PASSWORD_ATTEMPTS_SET = 210020; // 0x33464 - field public static final int TAG_MAX_SCREEN_LOCK_TIMEOUT_SET = 210019; // 0x33463 - field public static final int TAG_MEDIA_MOUNT = 210013; // 0x3345d - field public static final int TAG_MEDIA_UNMOUNT = 210014; // 0x3345e - field @FlaggedApi("android.nfc.nfc_state_change_security_log_event_enabled") public static final int TAG_NFC_DISABLED = 210046; // 0x3347e - field @FlaggedApi("android.nfc.nfc_state_change_security_log_event_enabled") public static final int TAG_NFC_ENABLED = 210045; // 0x3347d - field public static final int TAG_OS_SHUTDOWN = 210010; // 0x3345a - field public static final int TAG_OS_STARTUP = 210009; // 0x33459 - field public static final int TAG_PACKAGE_INSTALLED = 210041; // 0x33479 - field public static final int TAG_PACKAGE_UNINSTALLED = 210043; // 0x3347b - field public static final int TAG_PACKAGE_UPDATED = 210042; // 0x3347a - field public static final int TAG_PASSWORD_CHANGED = 210036; // 0x33474 - field public static final int TAG_PASSWORD_COMPLEXITY_REQUIRED = 210035; // 0x33473 - field public static final int TAG_PASSWORD_COMPLEXITY_SET = 210017; // 0x33461 - field public static final int TAG_PASSWORD_EXPIRATION_SET = 210016; // 0x33460 - field public static final int TAG_PASSWORD_HISTORY_LENGTH_SET = 210018; // 0x33462 - field public static final int TAG_REMOTE_LOCK = 210022; // 0x33466 - field public static final int TAG_SYNC_RECV_FILE = 210003; // 0x33453 - field public static final int TAG_SYNC_SEND_FILE = 210004; // 0x33454 - field public static final int TAG_USER_RESTRICTION_ADDED = 210027; // 0x3346b - field public static final int TAG_USER_RESTRICTION_REMOVED = 210028; // 0x3346c - field public static final int TAG_WIFI_CONNECTION = 210037; // 0x33475 - field public static final int TAG_WIFI_DISCONNECTION = 210038; // 0x33476 - field public static final int TAG_WIPE_FAILURE = 210023; // 0x33467 - } - - public static final class SecurityLog.SecurityEvent implements android.os.Parcelable { - method public int describeContents(); - method public Object getData(); - method public long getId(); - method public int getLogLevel(); - method public int getTag(); - method public long getTimeNanos(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class SystemUpdateInfo implements android.os.Parcelable { - method public int describeContents(); - method public long getReceivedTime(); - method public int getSecurityPatchState(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SECURITY_PATCH_STATE_FALSE = 1; // 0x1 - field public static final int SECURITY_PATCH_STATE_TRUE = 2; // 0x2 - field public static final int SECURITY_PATCH_STATE_UNKNOWN = 0; // 0x0 - } - - public final class SystemUpdatePolicy implements android.os.Parcelable { - method public static android.app.admin.SystemUpdatePolicy createAutomaticInstallPolicy(); - method public static android.app.admin.SystemUpdatePolicy createPostponeInstallPolicy(); - method public static android.app.admin.SystemUpdatePolicy createWindowedInstallPolicy(int, int); - method public int describeContents(); - method public java.util.List getFreezePeriods(); - method public int getInstallWindowEnd(); - method public int getInstallWindowStart(); - method public int getPolicyType(); - method public android.app.admin.SystemUpdatePolicy setFreezePeriods(java.util.List); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_INSTALL_AUTOMATIC = 1; // 0x1 - field public static final int TYPE_INSTALL_WINDOWED = 2; // 0x2 - field public static final int TYPE_POSTPONE = 3; // 0x3 - } - - public static final class SystemUpdatePolicy.ValidationFailedException extends java.lang.IllegalArgumentException implements android.os.Parcelable { - method public int describeContents(); - method public int getErrorCode(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ERROR_COMBINED_FREEZE_PERIOD_TOO_CLOSE = 6; // 0x6 - field public static final int ERROR_COMBINED_FREEZE_PERIOD_TOO_LONG = 5; // 0x5 - field public static final int ERROR_DUPLICATE_OR_OVERLAP = 2; // 0x2 - field public static final int ERROR_NEW_FREEZE_PERIOD_TOO_CLOSE = 4; // 0x4 - field public static final int ERROR_NEW_FREEZE_PERIOD_TOO_LONG = 3; // 0x3 - field public static final int ERROR_UNKNOWN = 1; // 0x1 - } - - public final class TargetUser { - field @NonNull public static final android.app.admin.TargetUser GLOBAL; - field @NonNull public static final android.app.admin.TargetUser LOCAL_USER; - field @NonNull public static final android.app.admin.TargetUser PARENT_USER; - field @NonNull public static final android.app.admin.TargetUser UNKNOWN_USER; - } - - public final class UnsafeStateException extends java.lang.IllegalStateException implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getReasons(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class WifiSsidPolicy implements android.os.Parcelable { - ctor public WifiSsidPolicy(int, @NonNull java.util.Set); - method public int describeContents(); - method public int getPolicyType(); - method @NonNull public java.util.Set getSsids(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int WIFI_SSID_POLICY_TYPE_ALLOWLIST = 0; // 0x0 - field public static final int WIFI_SSID_POLICY_TYPE_DENYLIST = 1; // 0x1 - } - -} - -package android.app.appfunctions { - - @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public final class AppFunctionException extends java.lang.Exception implements android.os.Parcelable { - ctor public AppFunctionException(int, @Nullable String); - ctor public AppFunctionException(int, @Nullable String, @NonNull android.os.Bundle); - method public int describeContents(); - method public int getErrorCategory(); - method public int getErrorCode(); - method @Nullable public String getErrorMessage(); - method @NonNull public android.os.Bundle getExtras(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ERROR_APP_UNKNOWN_ERROR = 3000; // 0xbb8 - field public static final int ERROR_CANCELLED = 2001; // 0x7d1 - field public static final int ERROR_CATEGORY_APP = 3; // 0x3 - field public static final int ERROR_CATEGORY_REQUEST_ERROR = 1; // 0x1 - field public static final int ERROR_CATEGORY_SYSTEM = 2; // 0x2 - field public static final int ERROR_CATEGORY_UNKNOWN = 0; // 0x0 - field public static final int ERROR_DENIED = 1000; // 0x3e8 - field public static final int ERROR_DISABLED = 1002; // 0x3ea - field public static final int ERROR_ENTERPRISE_POLICY_DISALLOWED = 2002; // 0x7d2 - field public static final int ERROR_FUNCTION_NOT_FOUND = 1003; // 0x3eb - field public static final int ERROR_INVALID_ARGUMENT = 1001; // 0x3e9 - field public static final int ERROR_SYSTEM_ERROR = 2000; // 0x7d0 - } - - @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public final class AppFunctionManager { - method @RequiresPermission(anyOf={"android.permission.EXECUTE_APP_FUNCTIONS_TRUSTED", "android.permission.EXECUTE_APP_FUNCTIONS"}, conditional=true) public void executeAppFunction(@NonNull android.app.appfunctions.ExecuteAppFunctionRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); - method @RequiresPermission(anyOf={"android.permission.EXECUTE_APP_FUNCTIONS_TRUSTED", "android.permission.EXECUTE_APP_FUNCTIONS"}, conditional=true) public void isAppFunctionEnabled(@NonNull String, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void isAppFunctionEnabled(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void setAppFunctionEnabled(@NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - field public static final int APP_FUNCTION_STATE_DEFAULT = 0; // 0x0 - field public static final int APP_FUNCTION_STATE_DISABLED = 2; // 0x2 - field public static final int APP_FUNCTION_STATE_ENABLED = 1; // 0x1 - } - - @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public abstract class AppFunctionService extends android.app.Service { - ctor public AppFunctionService(); - method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent); - method @MainThread public abstract void onExecuteFunction(@NonNull android.app.appfunctions.ExecuteAppFunctionRequest, @NonNull String, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); - field @NonNull public static final String SERVICE_INTERFACE = "android.app.appfunctions.AppFunctionService"; - } - - @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public final class ExecuteAppFunctionRequest implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.os.Bundle getExtras(); - method @NonNull public String getFunctionIdentifier(); - method @NonNull public android.app.appsearch.GenericDocument getParameters(); - method @NonNull public String getTargetPackageName(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class ExecuteAppFunctionRequest.Builder { - ctor public ExecuteAppFunctionRequest.Builder(@NonNull String, @NonNull String); - method @NonNull public android.app.appfunctions.ExecuteAppFunctionRequest build(); - method @NonNull public android.app.appfunctions.ExecuteAppFunctionRequest.Builder setExtras(@NonNull android.os.Bundle); - method @NonNull public android.app.appfunctions.ExecuteAppFunctionRequest.Builder setParameters(@NonNull android.app.appsearch.GenericDocument); - } - - @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public final class ExecuteAppFunctionResponse implements android.os.Parcelable { - ctor public ExecuteAppFunctionResponse(@NonNull android.app.appsearch.GenericDocument); - ctor public ExecuteAppFunctionResponse(@NonNull android.app.appsearch.GenericDocument, @NonNull android.os.Bundle); - method public int describeContents(); - method @NonNull public android.os.Bundle getExtras(); - method @NonNull public android.app.appsearch.GenericDocument getResultDocument(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String PROPERTY_RETURN_VALUE = "androidAppfunctionsReturnValue"; - } - -} - -package android.app.assist { - - public class AssistContent implements android.os.Parcelable { - ctor public AssistContent(); - method public int describeContents(); - method public android.content.ClipData getClipData(); - method public android.os.Bundle getExtras(); - method public android.content.Intent getIntent(); - method public String getStructuredData(); - method public android.net.Uri getWebUri(); - method public boolean isAppProvidedIntent(); - method public boolean isAppProvidedWebUri(); - method public void setClipData(android.content.ClipData); - method public void setIntent(android.content.Intent); - method public void setStructuredData(String); - method public void setWebUri(android.net.Uri); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String EXTRA_APP_FUNCTION_DATA = "android.app.assist.extra.APP_FUNCTION_DATA"; - field @FlaggedApi("com.android.window.flags.enable_desktop_windowing_app_to_web_education") public static final String EXTRA_SESSION_TRANSFER_WEB_URI = "android.app.assist.extra.SESSION_TRANSFER_WEB_URI"; - } - - public class AssistStructure implements android.os.Parcelable { - ctor public AssistStructure(); - method public int describeContents(); - method public long getAcquisitionEndTime(); - method public long getAcquisitionStartTime(); - method public android.content.ComponentName getActivityComponent(); - method public android.app.assist.AssistStructure.WindowNode getWindowNodeAt(int); - method public int getWindowNodeCount(); - method public boolean isHomeActivity(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class AssistStructure.ViewNode { - method public float getAlpha(); - method @Nullable public String[] getAutofillHints(); - method @Nullable public android.view.autofill.AutofillId getAutofillId(); - method @Nullable public CharSequence[] getAutofillOptions(); - method public int getAutofillType(); - method @Nullable public android.view.autofill.AutofillValue getAutofillValue(); - method public android.app.assist.AssistStructure.ViewNode getChildAt(int); - method public int getChildCount(); - method @Nullable public String getClassName(); - method @Nullable public CharSequence getContentDescription(); - method public float getElevation(); - method @Nullable public android.os.Bundle getExtras(); - method public int getHeight(); - method @Nullable public String getHint(); - method @Nullable public String getHintIdEntry(); - method @Nullable public android.view.ViewStructure.HtmlInfo getHtmlInfo(); - method public int getId(); - method @Nullable public String getIdEntry(); - method @Nullable public String getIdPackage(); - method @Nullable public String getIdType(); - method public int getImportantForAutofill(); - method public int getInputType(); - method public int getLeft(); - method @Nullable public android.os.LocaleList getLocaleList(); - method public int getMaxTextEms(); - method public int getMaxTextLength(); - method public int getMinTextEms(); - method @Nullable public String[] getReceiveContentMimeTypes(); - method public int getScrollX(); - method public int getScrollY(); - method @Nullable public CharSequence getText(); - method public int getTextBackgroundColor(); - method public int getTextColor(); - method @Nullable public String getTextIdEntry(); - method @Nullable public int[] getTextLineBaselines(); - method @Nullable public int[] getTextLineCharOffsets(); - method public int getTextSelectionEnd(); - method public int getTextSelectionStart(); - method public float getTextSize(); - method public int getTextStyle(); - method public int getTop(); - method public android.graphics.Matrix getTransformation(); - method public int getVisibility(); - method @Nullable public String getWebDomain(); - method @Nullable public String getWebScheme(); - method public int getWidth(); - method public boolean isAccessibilityFocused(); - method public boolean isActivated(); - method public boolean isAssistBlocked(); - method public boolean isCheckable(); - method public boolean isChecked(); - method public boolean isClickable(); - method public boolean isContextClickable(); - method public boolean isEnabled(); - method public boolean isFocusable(); - method public boolean isFocused(); - method public boolean isLongClickable(); - method public boolean isOpaque(); - method public boolean isSelected(); - field public static final int TEXT_COLOR_UNDEFINED = 1; // 0x1 - field public static final int TEXT_STYLE_BOLD = 1; // 0x1 - field public static final int TEXT_STYLE_ITALIC = 2; // 0x2 - field public static final int TEXT_STYLE_STRIKE_THRU = 8; // 0x8 - field public static final int TEXT_STYLE_UNDERLINE = 4; // 0x4 - } - - public static class AssistStructure.WindowNode { - method public int getDisplayId(); - method public int getHeight(); - method public int getLeft(); - method public android.app.assist.AssistStructure.ViewNode getRootViewNode(); - method public CharSequence getTitle(); - method public int getTop(); - method public int getWidth(); - } - -} - -package android.app.backup { - - public abstract class BackupAgent extends android.content.ContextWrapper { - ctor public BackupAgent(); - method public final void fullBackupFile(java.io.File, android.app.backup.FullBackupDataOutput); - method public abstract void onBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor) throws java.io.IOException; - method public void onCreate(); - method public void onDestroy(); - method public void onFullBackup(android.app.backup.FullBackupDataOutput) throws java.io.IOException; - method public void onQuotaExceeded(long, long); - method public abstract void onRestore(android.app.backup.BackupDataInput, int, android.os.ParcelFileDescriptor) throws java.io.IOException; - method public void onRestore(android.app.backup.BackupDataInput, long, android.os.ParcelFileDescriptor) throws java.io.IOException; - method public void onRestoreFile(android.os.ParcelFileDescriptor, long, java.io.File, int, long, long) throws java.io.IOException; - method public void onRestoreFinished(); - field public static final int FLAG_CLIENT_SIDE_ENCRYPTION_ENABLED = 1; // 0x1 - field public static final int FLAG_DEVICE_TO_DEVICE_TRANSFER = 2; // 0x2 - field public static final int TYPE_DIRECTORY = 2; // 0x2 - field public static final int TYPE_FILE = 1; // 0x1 - } - - public class BackupAgentHelper extends android.app.backup.BackupAgent { - ctor public BackupAgentHelper(); - method public void addHelper(String, android.app.backup.BackupHelper); - method public void onBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor) throws java.io.IOException; - method public void onRestore(android.app.backup.BackupDataInput, int, android.os.ParcelFileDescriptor) throws java.io.IOException; - } - - public class BackupDataInput { - method public int getDataSize(); - method public String getKey(); - method public int readEntityData(byte[], int, int) throws java.io.IOException; - method public boolean readNextHeader() throws java.io.IOException; - method public void skipEntityData() throws java.io.IOException; - } - - public class BackupDataInputStream extends java.io.InputStream { - method public String getKey(); - method public int read() throws java.io.IOException; - method public int size(); - } - - public class BackupDataOutput { - method public long getQuota(); - method public int getTransportFlags(); - method public int writeEntityData(byte[], int) throws java.io.IOException; - method public int writeEntityHeader(String, int) throws java.io.IOException; - } - - public interface BackupHelper { - method public void performBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor); - method public void restoreEntity(android.app.backup.BackupDataInputStream); - method public void writeNewStateDescription(android.os.ParcelFileDescriptor); - } - - public class BackupManager { - ctor public BackupManager(android.content.Context); - method public void dataChanged(); - method public static void dataChanged(String); - method @Nullable public android.os.UserHandle getUserForAncestralSerialNumber(long); - method @Deprecated public int requestRestore(android.app.backup.RestoreObserver); - } - - public class FileBackupHelper implements android.app.backup.BackupHelper { - ctor public FileBackupHelper(android.content.Context, java.lang.String...); - method public void performBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor); - method public void restoreEntity(android.app.backup.BackupDataInputStream); - method public void writeNewStateDescription(android.os.ParcelFileDescriptor); - } - - public class FullBackupDataOutput { - method public long getQuota(); - method public int getTransportFlags(); - } - - public abstract class RestoreObserver { - ctor public RestoreObserver(); - method public void onUpdate(int, String); - method public void restoreFinished(int); - method public void restoreStarting(int); - } - - public class SharedPreferencesBackupHelper implements android.app.backup.BackupHelper { - ctor public SharedPreferencesBackupHelper(android.content.Context, java.lang.String...); - method public void performBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor); - method public void restoreEntity(android.app.backup.BackupDataInputStream); - method public void writeNewStateDescription(android.os.ParcelFileDescriptor); - } - -} - -package android.app.blob { - - public final class BlobHandle implements android.os.Parcelable { - method @NonNull public static android.app.blob.BlobHandle createWithSha256(@NonNull byte[], @NonNull CharSequence, long, @NonNull String); - method public int describeContents(); - method public long getExpiryTimeMillis(); - method @NonNull public CharSequence getLabel(); - method @NonNull public byte[] getSha256Digest(); - method @NonNull public String getTag(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class BlobStoreManager { - method public void abandonSession(@IntRange(from=1) long) throws java.io.IOException; - method public void acquireLease(@NonNull android.app.blob.BlobHandle, @IdRes int, long) throws java.io.IOException; - method public void acquireLease(@NonNull android.app.blob.BlobHandle, @NonNull CharSequence, long) throws java.io.IOException; - method public void acquireLease(@NonNull android.app.blob.BlobHandle, @IdRes int) throws java.io.IOException; - method public void acquireLease(@NonNull android.app.blob.BlobHandle, @NonNull CharSequence) throws java.io.IOException; - method @IntRange(from=1) public long createSession(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; - method @NonNull public java.util.List getLeasedBlobs() throws java.io.IOException; - method @IntRange(from=0) public long getRemainingLeaseQuotaBytes(); - method @NonNull public android.os.ParcelFileDescriptor openBlob(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; - method @NonNull public android.app.blob.BlobStoreManager.Session openSession(@IntRange(from=1) long) throws java.io.IOException; - method public void releaseLease(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; - } - - public static class BlobStoreManager.Session implements java.io.Closeable { - method public void abandon() throws java.io.IOException; - method public void allowPackageAccess(@NonNull String, @NonNull byte[]) throws java.io.IOException; - method public void allowPublicAccess() throws java.io.IOException; - method public void allowSameSignatureAccess() throws java.io.IOException; - method public void close() throws java.io.IOException; - method public void commit(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer) throws java.io.IOException; - method public long getSize() throws java.io.IOException; - method public boolean isPackageAccessAllowed(@NonNull String, @NonNull byte[]) throws java.io.IOException; - method public boolean isPublicAccessAllowed() throws java.io.IOException; - method public boolean isSameSignatureAccessAllowed() throws java.io.IOException; - method @NonNull public android.os.ParcelFileDescriptor openRead() throws java.io.IOException; - method @NonNull public android.os.ParcelFileDescriptor openWrite(long, long) throws java.io.IOException; - } - -} - -package android.app.jank { - - @FlaggedApi("android.app.jank.detailed_app_jank_metrics_api") public final class AppJankStats { - ctor public AppJankStats(int, @NonNull String, @Nullable String, @Nullable String, long, long, @NonNull android.app.jank.FrameOverrunHistogram); - method @NonNull public android.app.jank.FrameOverrunHistogram getFrameOverrunHistogram(); - method public long getJankyFrameCount(); - method public long getTotalFrameCount(); - method public int getUid(); - method @NonNull public String getWidgetCategory(); - method @NonNull public String getWidgetId(); - method @NonNull public String getWidgetState(); - field public static final String ANIMATING = "animating"; - field public static final String ANIMATION = "animation"; - field public static final String DRAGGING = "dragging"; - field public static final String FLINGING = "flinging"; - field public static final String KEYBOARD = "keyboard"; - field public static final String MEDIA = "media"; - field public static final String NAVIGATION = "navigation"; - field public static final String NONE = "none"; - field public static final String OTHER = "other"; - field public static final String PLAYBACK = "playback"; - field public static final String PREDICTIVE_BACK = "predictive_back"; - field public static final String SCROLL = "scroll"; - field public static final String SCROLLING = "scrolling"; - field public static final String SWIPING = "swiping"; - field public static final String TAPPING = "tapping"; - field public static final String WIDGET_CATEGORY_UNSPECIFIED = "widget_category_unspecified"; - field public static final String WIDGET_STATE_UNSPECIFIED = "widget_state_unspecified"; - field public static final String ZOOMING = "zooming"; - } - - @FlaggedApi("android.app.jank.detailed_app_jank_metrics_api") public class FrameOverrunHistogram { - ctor public FrameOverrunHistogram(); - method public void addFrameOverrunMillis(int); - method @NonNull public int[] getBucketCounters(); - method @NonNull public int[] getBucketEndpointsMillis(); - } - -} - -package android.app.job { - - public class JobInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getBackoffPolicy(); - method @Nullable public android.content.ClipData getClipData(); - method public int getClipGrantFlags(); - method @FlaggedApi("android.app.job.job_debug_info_apis") @NonNull public java.util.Set getDebugTags(); - method public long getEstimatedNetworkDownloadBytes(); - method public long getEstimatedNetworkUploadBytes(); - method @NonNull public android.os.PersistableBundle getExtras(); - method public long getFlexMillis(); - method public int getId(); - method public long getInitialBackoffMillis(); - method public long getIntervalMillis(); - method public long getMaxExecutionDelayMillis(); - method public static final long getMinFlexMillis(); - method public long getMinLatencyMillis(); - method public static final long getMinPeriodMillis(); - method public long getMinimumNetworkChunkBytes(); - method @Deprecated public int getNetworkType(); - method public int getPriority(); - method @Nullable public android.net.NetworkRequest getRequiredNetwork(); - method @NonNull public android.content.ComponentName getService(); - method @FlaggedApi("android.app.job.job_debug_info_apis") @Nullable public String getTraceTag(); - method @NonNull public android.os.Bundle getTransientExtras(); - method public long getTriggerContentMaxDelay(); - method public long getTriggerContentUpdateDelay(); - method @Nullable public android.app.job.JobInfo.TriggerContentUri[] getTriggerContentUris(); - method public boolean isExpedited(); - method @Deprecated @FlaggedApi("android.app.job.ignore_important_while_foreground") public boolean isImportantWhileForeground(); - method public boolean isPeriodic(); - method public boolean isPersisted(); - method public boolean isPrefetch(); - method public boolean isRequireBatteryNotLow(); - method public boolean isRequireCharging(); - method public boolean isRequireDeviceIdle(); - method public boolean isRequireStorageNotLow(); - method public boolean isUserInitiated(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int BACKOFF_POLICY_EXPONENTIAL = 1; // 0x1 - field public static final int BACKOFF_POLICY_LINEAR = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final long DEFAULT_INITIAL_BACKOFF_MILLIS = 30000L; // 0x7530L - field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L - field public static final int NETWORK_BYTES_UNKNOWN = -1; // 0xffffffff - field public static final int NETWORK_TYPE_ANY = 1; // 0x1 - field public static final int NETWORK_TYPE_CELLULAR = 4; // 0x4 - field @Deprecated public static final int NETWORK_TYPE_METERED = 4; // 0x4 - field public static final int NETWORK_TYPE_NONE = 0; // 0x0 - field public static final int NETWORK_TYPE_NOT_ROAMING = 3; // 0x3 - field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2 - field public static final int PRIORITY_DEFAULT = 300; // 0x12c - field public static final int PRIORITY_HIGH = 400; // 0x190 - field public static final int PRIORITY_LOW = 200; // 0xc8 - field public static final int PRIORITY_MAX = 500; // 0x1f4 - field public static final int PRIORITY_MIN = 100; // 0x64 - } - - public static final class JobInfo.Builder { - ctor public JobInfo.Builder(int, @NonNull android.content.ComponentName); - method @FlaggedApi("android.app.job.job_debug_info_apis") @NonNull public android.app.job.JobInfo.Builder addDebugTag(@NonNull String); - method public android.app.job.JobInfo.Builder addTriggerContentUri(@NonNull android.app.job.JobInfo.TriggerContentUri); - method public android.app.job.JobInfo build(); - method @FlaggedApi("android.app.job.job_debug_info_apis") @NonNull public android.app.job.JobInfo.Builder removeDebugTag(@NonNull String); - method public android.app.job.JobInfo.Builder setBackoffCriteria(long, int); - method public android.app.job.JobInfo.Builder setClipData(@Nullable android.content.ClipData, int); - method public android.app.job.JobInfo.Builder setEstimatedNetworkBytes(long, long); - method @NonNull public android.app.job.JobInfo.Builder setExpedited(boolean); - method public android.app.job.JobInfo.Builder setExtras(@NonNull android.os.PersistableBundle); - method @Deprecated public android.app.job.JobInfo.Builder setImportantWhileForeground(boolean); - method public android.app.job.JobInfo.Builder setMinimumLatency(long); - method @NonNull public android.app.job.JobInfo.Builder setMinimumNetworkChunkBytes(long); - method public android.app.job.JobInfo.Builder setOverrideDeadline(long); - method public android.app.job.JobInfo.Builder setPeriodic(long); - method public android.app.job.JobInfo.Builder setPeriodic(long, long); - method @RequiresPermission(android.Manifest.permission.RECEIVE_BOOT_COMPLETED) public android.app.job.JobInfo.Builder setPersisted(boolean); - method public android.app.job.JobInfo.Builder setPrefetch(boolean); - method @NonNull public android.app.job.JobInfo.Builder setPriority(int); - method public android.app.job.JobInfo.Builder setRequiredNetwork(@Nullable android.net.NetworkRequest); - method public android.app.job.JobInfo.Builder setRequiredNetworkType(int); - method public android.app.job.JobInfo.Builder setRequiresBatteryNotLow(boolean); - method public android.app.job.JobInfo.Builder setRequiresCharging(boolean); - method public android.app.job.JobInfo.Builder setRequiresDeviceIdle(boolean); - method public android.app.job.JobInfo.Builder setRequiresStorageNotLow(boolean); - method @FlaggedApi("android.app.job.job_debug_info_apis") @NonNull public android.app.job.JobInfo.Builder setTraceTag(@Nullable String); - method public android.app.job.JobInfo.Builder setTransientExtras(@NonNull android.os.Bundle); - method public android.app.job.JobInfo.Builder setTriggerContentMaxDelay(long); - method public android.app.job.JobInfo.Builder setTriggerContentUpdateDelay(long); - method @NonNull @RequiresPermission(android.Manifest.permission.RUN_USER_INITIATED_JOBS) public android.app.job.JobInfo.Builder setUserInitiated(boolean); - } - - public static final class JobInfo.TriggerContentUri implements android.os.Parcelable { - ctor public JobInfo.TriggerContentUri(@NonNull android.net.Uri, int); - method public int describeContents(); - method public int getFlags(); - method public android.net.Uri getUri(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_NOTIFY_FOR_DESCENDANTS = 1; // 0x1 - } - - public class JobParameters implements android.os.Parcelable { - method public void completeWork(@NonNull android.app.job.JobWorkItem); - method @Nullable public android.app.job.JobWorkItem dequeueWork(); - method public int describeContents(); - method @Nullable public android.content.ClipData getClipData(); - method public int getClipGrantFlags(); - method @NonNull public android.os.PersistableBundle getExtras(); - method public int getJobId(); - method @Nullable public String getJobNamespace(); - method @Nullable public android.net.Network getNetwork(); - method public int getStopReason(); - method @NonNull public android.os.Bundle getTransientExtras(); - method @Nullable public String[] getTriggeredContentAuthorities(); - method @Nullable public android.net.Uri[] getTriggeredContentUris(); - method public boolean isExpeditedJob(); - method public boolean isOverrideDeadlineExpired(); - method public boolean isUserInitiatedJob(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STOP_REASON_APP_STANDBY = 12; // 0xc - field public static final int STOP_REASON_BACKGROUND_RESTRICTION = 11; // 0xb - field public static final int STOP_REASON_CANCELLED_BY_APP = 1; // 0x1 - field public static final int STOP_REASON_CONSTRAINT_BATTERY_NOT_LOW = 5; // 0x5 - field public static final int STOP_REASON_CONSTRAINT_CHARGING = 6; // 0x6 - field public static final int STOP_REASON_CONSTRAINT_CONNECTIVITY = 7; // 0x7 - field public static final int STOP_REASON_CONSTRAINT_DEVICE_IDLE = 8; // 0x8 - field public static final int STOP_REASON_CONSTRAINT_STORAGE_NOT_LOW = 9; // 0x9 - field public static final int STOP_REASON_DEVICE_STATE = 4; // 0x4 - field public static final int STOP_REASON_ESTIMATED_APP_LAUNCH_TIME_CHANGED = 15; // 0xf - field public static final int STOP_REASON_PREEMPT = 2; // 0x2 - field public static final int STOP_REASON_QUOTA = 10; // 0xa - field public static final int STOP_REASON_SYSTEM_PROCESSING = 14; // 0xe - field public static final int STOP_REASON_TIMEOUT = 3; // 0x3 - field @FlaggedApi("android.app.job.handle_abandoned_jobs") public static final int STOP_REASON_TIMEOUT_ABANDONED = 16; // 0x10 - field public static final int STOP_REASON_UNDEFINED = 0; // 0x0 - field public static final int STOP_REASON_USER = 13; // 0xd - } - - public abstract class JobScheduler { - ctor public JobScheduler(); - method public boolean canRunUserInitiatedJobs(); - method public abstract void cancel(int); - method public abstract void cancelAll(); - method public void cancelInAllNamespaces(); - method public abstract int enqueue(@NonNull android.app.job.JobInfo, @NonNull android.app.job.JobWorkItem); - method @NonNull public android.app.job.JobScheduler forNamespace(@NonNull String); - method @NonNull public abstract java.util.List getAllPendingJobs(); - method @Nullable public String getNamespace(); - method @Nullable public abstract android.app.job.JobInfo getPendingJob(int); - method public int getPendingJobReason(int); - method @FlaggedApi("android.app.job.get_pending_job_reasons_api") @NonNull public int[] getPendingJobReasons(int); - method @FlaggedApi("android.app.job.get_pending_job_reasons_history_api") @NonNull public java.util.List getPendingJobReasonsHistory(int); - method @NonNull public java.util.Map> getPendingJobsInAllNamespaces(); - method public abstract int schedule(@NonNull android.app.job.JobInfo); - field public static final int PENDING_JOB_REASON_APP = 1; // 0x1 - field public static final int PENDING_JOB_REASON_APP_STANDBY = 2; // 0x2 - field public static final int PENDING_JOB_REASON_BACKGROUND_RESTRICTION = 3; // 0x3 - field public static final int PENDING_JOB_REASON_CONSTRAINT_BATTERY_NOT_LOW = 4; // 0x4 - field public static final int PENDING_JOB_REASON_CONSTRAINT_CHARGING = 5; // 0x5 - field public static final int PENDING_JOB_REASON_CONSTRAINT_CONNECTIVITY = 6; // 0x6 - field public static final int PENDING_JOB_REASON_CONSTRAINT_CONTENT_TRIGGER = 7; // 0x7 - field @FlaggedApi("android.app.job.get_pending_job_reasons_api") public static final int PENDING_JOB_REASON_CONSTRAINT_DEADLINE = 16; // 0x10 - field public static final int PENDING_JOB_REASON_CONSTRAINT_DEVICE_IDLE = 8; // 0x8 - field public static final int PENDING_JOB_REASON_CONSTRAINT_MINIMUM_LATENCY = 9; // 0x9 - field public static final int PENDING_JOB_REASON_CONSTRAINT_PREFETCH = 10; // 0xa - field public static final int PENDING_JOB_REASON_CONSTRAINT_STORAGE_NOT_LOW = 11; // 0xb - field public static final int PENDING_JOB_REASON_DEVICE_STATE = 12; // 0xc - field public static final int PENDING_JOB_REASON_EXECUTING = -1; // 0xffffffff - field public static final int PENDING_JOB_REASON_INVALID_JOB_ID = -2; // 0xfffffffe - field public static final int PENDING_JOB_REASON_JOB_SCHEDULER_OPTIMIZATION = 13; // 0xd - field public static final int PENDING_JOB_REASON_QUOTA = 14; // 0xe - field public static final int PENDING_JOB_REASON_UNDEFINED = 0; // 0x0 - field public static final int PENDING_JOB_REASON_USER = 15; // 0xf - field public static final int RESULT_FAILURE = 0; // 0x0 - field public static final int RESULT_SUCCESS = 1; // 0x1 - } - - public abstract class JobService extends android.app.Service { - ctor public JobService(); - method public final void jobFinished(android.app.job.JobParameters, boolean); - method public final android.os.IBinder onBind(android.content.Intent); - method public void onNetworkChanged(@NonNull android.app.job.JobParameters); - method public abstract boolean onStartJob(android.app.job.JobParameters); - method public abstract boolean onStopJob(android.app.job.JobParameters); - method public final void setNotification(@NonNull android.app.job.JobParameters, int, @NonNull android.app.Notification, int); - method public final void updateEstimatedNetworkBytes(@NonNull android.app.job.JobParameters, long, long); - method public final void updateEstimatedNetworkBytes(@NonNull android.app.job.JobParameters, @NonNull android.app.job.JobWorkItem, long, long); - method public final void updateTransferredNetworkBytes(@NonNull android.app.job.JobParameters, long, long); - method public final void updateTransferredNetworkBytes(@NonNull android.app.job.JobParameters, @NonNull android.app.job.JobWorkItem, long, long); - field public static final int JOB_END_NOTIFICATION_POLICY_DETACH = 0; // 0x0 - field public static final int JOB_END_NOTIFICATION_POLICY_REMOVE = 1; // 0x1 - field public static final String PERMISSION_BIND = "android.permission.BIND_JOB_SERVICE"; - } - - public abstract class JobServiceEngine { - ctor public JobServiceEngine(android.app.Service); - method public final android.os.IBinder getBinder(); - method public void jobFinished(android.app.job.JobParameters, boolean); - method public void onNetworkChanged(@NonNull android.app.job.JobParameters); - method public abstract boolean onStartJob(android.app.job.JobParameters); - method public abstract boolean onStopJob(android.app.job.JobParameters); - method public void setNotification(@NonNull android.app.job.JobParameters, int, @NonNull android.app.Notification, int); - method public void updateEstimatedNetworkBytes(@NonNull android.app.job.JobParameters, @Nullable android.app.job.JobWorkItem, long, long); - method public void updateTransferredNetworkBytes(@NonNull android.app.job.JobParameters, @Nullable android.app.job.JobWorkItem, long, long); - } - - public final class JobWorkItem implements android.os.Parcelable { - ctor public JobWorkItem(android.content.Intent); - ctor public JobWorkItem(android.content.Intent, long, long); - ctor public JobWorkItem(@Nullable android.content.Intent, long, long, long); - method public int describeContents(); - method public int getDeliveryCount(); - method public long getEstimatedNetworkDownloadBytes(); - method public long getEstimatedNetworkUploadBytes(); - method @NonNull public android.os.PersistableBundle getExtras(); - method public android.content.Intent getIntent(); - method public long getMinimumNetworkChunkBytes(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class JobWorkItem.Builder { - ctor public JobWorkItem.Builder(); - method @NonNull public android.app.job.JobWorkItem build(); - method @NonNull public android.app.job.JobWorkItem.Builder setEstimatedNetworkBytes(long, long); - method @NonNull public android.app.job.JobWorkItem.Builder setExtras(@NonNull android.os.PersistableBundle); - method @NonNull public android.app.job.JobWorkItem.Builder setIntent(@NonNull android.content.Intent); - method @NonNull public android.app.job.JobWorkItem.Builder setMinimumNetworkChunkBytes(long); - } - - @FlaggedApi("android.app.job.get_pending_job_reasons_history_api") public final class PendingJobReasonsInfo implements android.os.Parcelable { - ctor public PendingJobReasonsInfo(long, @NonNull int[]); - method public int describeContents(); - method @NonNull public int[] getPendingJobReasons(); - method public long getTimestampMillis(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.app.people { - - public final class ConversationStatus implements android.os.Parcelable { - method public int describeContents(); - method public int getActivity(); - method public int getAvailability(); - method @Nullable public CharSequence getDescription(); - method public long getEndTimeMillis(); - method @Nullable public android.graphics.drawable.Icon getIcon(); - method @NonNull public String getId(); - method public long getStartTimeMillis(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int ACTIVITY_ANNIVERSARY = 2; // 0x2 - field public static final int ACTIVITY_AUDIO = 4; // 0x4 - field public static final int ACTIVITY_BIRTHDAY = 1; // 0x1 - field public static final int ACTIVITY_GAME = 6; // 0x6 - field public static final int ACTIVITY_LOCATION = 7; // 0x7 - field public static final int ACTIVITY_NEW_STORY = 3; // 0x3 - field public static final int ACTIVITY_OTHER = 0; // 0x0 - field public static final int ACTIVITY_UPCOMING_BIRTHDAY = 8; // 0x8 - field public static final int ACTIVITY_VIDEO = 5; // 0x5 - field public static final int AVAILABILITY_AVAILABLE = 0; // 0x0 - field public static final int AVAILABILITY_BUSY = 1; // 0x1 - field public static final int AVAILABILITY_OFFLINE = 2; // 0x2 - field public static final int AVAILABILITY_UNKNOWN = -1; // 0xffffffff - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class ConversationStatus.Builder { - ctor public ConversationStatus.Builder(@NonNull String, @NonNull int); - method @NonNull public android.app.people.ConversationStatus build(); - method @NonNull public android.app.people.ConversationStatus.Builder setAvailability(int); - method @NonNull public android.app.people.ConversationStatus.Builder setDescription(@Nullable CharSequence); - method @NonNull public android.app.people.ConversationStatus.Builder setEndTimeMillis(long); - method @NonNull public android.app.people.ConversationStatus.Builder setIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.app.people.ConversationStatus.Builder setStartTimeMillis(long); - } - - public final class PeopleManager { - method public void addOrUpdateStatus(@NonNull String, @NonNull android.app.people.ConversationStatus); - method public void clearStatus(@NonNull String, @NonNull String); - method public void clearStatuses(@NonNull String); - method @NonNull public java.util.List getStatuses(@NonNull String); - } - -} - -package android.app.slice { - - @Deprecated public final class Slice implements android.os.Parcelable { - ctor @Deprecated protected Slice(android.os.Parcel); - method @Deprecated public int describeContents(); - method @Deprecated public java.util.List getHints(); - method @Deprecated public java.util.List getItems(); - method @Deprecated @Nullable public android.app.slice.SliceSpec getSpec(); - method @Deprecated public android.net.Uri getUri(); - method @Deprecated public boolean isCallerNeeded(); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @Deprecated public static final String EXTRA_RANGE_VALUE = "android.app.slice.extra.RANGE_VALUE"; - field @Deprecated public static final String EXTRA_TOGGLE_STATE = "android.app.slice.extra.TOGGLE_STATE"; - field @Deprecated public static final String HINT_ACTIONS = "actions"; - field @Deprecated public static final String HINT_ERROR = "error"; - field @Deprecated public static final String HINT_HORIZONTAL = "horizontal"; - field @Deprecated public static final String HINT_KEYWORDS = "keywords"; - field @Deprecated public static final String HINT_LARGE = "large"; - field @Deprecated public static final String HINT_LAST_UPDATED = "last_updated"; - field @Deprecated public static final String HINT_LIST = "list"; - field @Deprecated public static final String HINT_LIST_ITEM = "list_item"; - field @Deprecated public static final String HINT_NO_TINT = "no_tint"; - field @Deprecated public static final String HINT_PARTIAL = "partial"; - field @Deprecated public static final String HINT_PERMISSION_REQUEST = "permission_request"; - field @Deprecated public static final String HINT_SEE_MORE = "see_more"; - field @Deprecated public static final String HINT_SELECTED = "selected"; - field @Deprecated public static final String HINT_SHORTCUT = "shortcut"; - field @Deprecated public static final String HINT_SUMMARY = "summary"; - field @Deprecated public static final String HINT_TITLE = "title"; - field @Deprecated public static final String HINT_TTL = "ttl"; - field @Deprecated public static final String SUBTYPE_COLOR = "color"; - field @Deprecated public static final String SUBTYPE_CONTENT_DESCRIPTION = "content_description"; - field @Deprecated public static final String SUBTYPE_LAYOUT_DIRECTION = "layout_direction"; - field @Deprecated public static final String SUBTYPE_MAX = "max"; - field @Deprecated public static final String SUBTYPE_MESSAGE = "message"; - field @Deprecated public static final String SUBTYPE_MILLIS = "millis"; - field @Deprecated public static final String SUBTYPE_PRIORITY = "priority"; - field @Deprecated public static final String SUBTYPE_RANGE = "range"; - field @Deprecated public static final String SUBTYPE_SOURCE = "source"; - field @Deprecated public static final String SUBTYPE_TOGGLE = "toggle"; - field @Deprecated public static final String SUBTYPE_VALUE = "value"; - } - - @Deprecated public static class Slice.Builder { - ctor @Deprecated public Slice.Builder(@NonNull android.net.Uri, android.app.slice.SliceSpec); - ctor @Deprecated public Slice.Builder(@NonNull android.app.slice.Slice.Builder); - method @Deprecated public android.app.slice.Slice.Builder addAction(@NonNull android.app.PendingIntent, @NonNull android.app.slice.Slice, @Nullable String); - method @Deprecated public android.app.slice.Slice.Builder addBundle(android.os.Bundle, @Nullable String, java.util.List); - method @Deprecated public android.app.slice.Slice.Builder addHints(java.util.List); - method @Deprecated public android.app.slice.Slice.Builder addIcon(android.graphics.drawable.Icon, @Nullable String, java.util.List); - method @Deprecated public android.app.slice.Slice.Builder addInt(int, @Nullable String, java.util.List); - method @Deprecated public android.app.slice.Slice.Builder addLong(long, @Nullable String, java.util.List); - method @Deprecated public android.app.slice.Slice.Builder addRemoteInput(android.app.RemoteInput, @Nullable String, java.util.List); - method @Deprecated public android.app.slice.Slice.Builder addSubSlice(@NonNull android.app.slice.Slice, @Nullable String); - method @Deprecated public android.app.slice.Slice.Builder addText(CharSequence, @Nullable String, java.util.List); - method @Deprecated public android.app.slice.Slice build(); - method @Deprecated public android.app.slice.Slice.Builder setCallerNeeded(boolean); - } - - @Deprecated public final class SliceItem implements android.os.Parcelable { - method @Deprecated public int describeContents(); - method @Deprecated public android.app.PendingIntent getAction(); - method @Deprecated public android.os.Bundle getBundle(); - method @Deprecated public String getFormat(); - method @Deprecated @NonNull public java.util.List getHints(); - method @Deprecated public android.graphics.drawable.Icon getIcon(); - method @Deprecated public int getInt(); - method @Deprecated public long getLong(); - method @Deprecated public android.app.RemoteInput getRemoteInput(); - method @Deprecated public android.app.slice.Slice getSlice(); - method @Deprecated public String getSubType(); - method @Deprecated public CharSequence getText(); - method @Deprecated public boolean hasHint(String); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @Deprecated public static final String FORMAT_ACTION = "action"; - field @Deprecated public static final String FORMAT_BUNDLE = "bundle"; - field @Deprecated public static final String FORMAT_IMAGE = "image"; - field @Deprecated public static final String FORMAT_INT = "int"; - field @Deprecated public static final String FORMAT_LONG = "long"; - field @Deprecated public static final String FORMAT_REMOTE_INPUT = "input"; - field @Deprecated public static final String FORMAT_SLICE = "slice"; - field @Deprecated public static final String FORMAT_TEXT = "text"; - } - - @Deprecated public class SliceManager { - method @Deprecated @Nullable public android.app.slice.Slice bindSlice(@NonNull android.net.Uri, @NonNull java.util.Set); - method @Deprecated @Nullable public android.app.slice.Slice bindSlice(@NonNull android.content.Intent, @NonNull java.util.Set); - method @Deprecated public int checkSlicePermission(@NonNull android.net.Uri, int, int); - method @Deprecated @NonNull public java.util.List getPinnedSlices(); - method @Deprecated @NonNull public java.util.Set getPinnedSpecs(android.net.Uri); - method @Deprecated @NonNull @WorkerThread public java.util.Collection getSliceDescendants(@NonNull android.net.Uri); - method @Deprecated public void grantSlicePermission(@NonNull String, @NonNull android.net.Uri); - method @Deprecated @Nullable public android.net.Uri mapIntentToUri(@NonNull android.content.Intent); - method @Deprecated public void pinSlice(@NonNull android.net.Uri, @NonNull java.util.Set); - method @Deprecated public void revokeSlicePermission(@NonNull String, @NonNull android.net.Uri); - method @Deprecated public void unpinSlice(@NonNull android.net.Uri); - field @Deprecated public static final String CATEGORY_SLICE = "android.app.slice.category.SLICE"; - field @Deprecated public static final String SLICE_METADATA_KEY = "android.metadata.SLICE_URI"; - } - - @Deprecated public class SliceMetrics { - ctor @Deprecated public SliceMetrics(@NonNull android.content.Context, @NonNull android.net.Uri); - method @Deprecated public void logHidden(); - method @Deprecated public void logTouch(int, @NonNull android.net.Uri); - method @Deprecated public void logVisible(); - } - - @Deprecated public abstract class SliceProvider extends android.content.ContentProvider { - ctor @Deprecated public SliceProvider(@NonNull java.lang.String...); - ctor @Deprecated public SliceProvider(); - method @Deprecated public final int delete(android.net.Uri, String, String[]); - method @Deprecated public final String getType(android.net.Uri); - method @Deprecated public final android.net.Uri insert(android.net.Uri, android.content.ContentValues); - method @Deprecated public android.app.slice.Slice onBindSlice(android.net.Uri, java.util.Set); - method @Deprecated @NonNull public android.app.PendingIntent onCreatePermissionRequest(android.net.Uri); - method @Deprecated @NonNull public java.util.Collection onGetSliceDescendants(@NonNull android.net.Uri); - method @Deprecated @NonNull public android.net.Uri onMapIntentToUri(android.content.Intent); - method @Deprecated public void onSlicePinned(android.net.Uri); - method @Deprecated public void onSliceUnpinned(android.net.Uri); - method @Deprecated public final android.database.Cursor query(android.net.Uri, String[], String, String[], String); - method @Deprecated public final android.database.Cursor query(android.net.Uri, String[], String, String[], String, android.os.CancellationSignal); - method @Deprecated public final android.database.Cursor query(android.net.Uri, String[], android.os.Bundle, android.os.CancellationSignal); - method @Deprecated public final int update(android.net.Uri, android.content.ContentValues, String, String[]); - field @Deprecated public static final String SLICE_TYPE = "vnd.android.slice"; - } - - @Deprecated public final class SliceSpec implements android.os.Parcelable { - ctor @Deprecated public SliceSpec(@NonNull String, int); - method @Deprecated public boolean canRender(@NonNull android.app.slice.SliceSpec); - method @Deprecated public int describeContents(); - method @Deprecated public int getRevision(); - method @Deprecated public String getType(); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.app.usage { - - public final class ConfigurationStats implements android.os.Parcelable { - ctor public ConfigurationStats(android.app.usage.ConfigurationStats); - method public int describeContents(); - method public int getActivationCount(); - method public android.content.res.Configuration getConfiguration(); - method public long getFirstTimeStamp(); - method public long getLastTimeActive(); - method public long getLastTimeStamp(); - method public long getTotalTimeActive(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class EventStats implements android.os.Parcelable { - ctor public EventStats(android.app.usage.EventStats); - method public void add(android.app.usage.EventStats); - method public int describeContents(); - method public int getCount(); - method public int getEventType(); - method public long getFirstTimeStamp(); - method public long getLastEventTime(); - method public long getLastTimeStamp(); - method public long getTotalTime(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class ExternalStorageStats implements android.os.Parcelable { - method public int describeContents(); - method public long getAppBytes(); - method public long getAudioBytes(); - method public long getImageBytes(); - method public long getTotalBytes(); - method public long getVideoBytes(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class StorageStats implements android.os.Parcelable { - method public int describeContents(); - method public long getAppBytes(); - method @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public long getAppBytesByDataType(int); - method public long getCacheBytes(); - method public long getDataBytes(); - method public long getExternalCacheBytes(); - method public void writeToParcel(android.os.Parcel, int); - field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_APK = 3; // 0x3 - field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_CURRENT_PROFILE = 2; // 0x2 - field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_DEXOPT_ARTIFACT = 0; // 0x0 - field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_DM = 4; // 0x4 - field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_REFERENCE_PROFILE = 1; // 0x1 - field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_LIB = 5; // 0x5 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class StorageStatsManager { - method @WorkerThread public long getFreeBytes(@NonNull java.util.UUID) throws java.io.IOException; - method @WorkerThread public long getTotalBytes(@NonNull java.util.UUID) throws java.io.IOException; - method @NonNull @WorkerThread public android.app.usage.ExternalStorageStats queryExternalStatsForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle) throws java.io.IOException; - method @NonNull @WorkerThread public android.app.usage.StorageStats queryStatsForPackage(@NonNull java.util.UUID, @NonNull String, @NonNull android.os.UserHandle) throws java.io.IOException, android.content.pm.PackageManager.NameNotFoundException; - method @NonNull @WorkerThread public android.app.usage.StorageStats queryStatsForUid(@NonNull java.util.UUID, int) throws java.io.IOException; - method @NonNull @WorkerThread public android.app.usage.StorageStats queryStatsForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle) throws java.io.IOException; - } - - public final class UsageEvents implements android.os.Parcelable { - method public int describeContents(); - method public boolean getNextEvent(android.app.usage.UsageEvents.Event); - method public boolean hasNextEvent(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class UsageEvents.Event { - ctor public UsageEvents.Event(); - method public int getAppStandbyBucket(); - method public String getClassName(); - method public android.content.res.Configuration getConfiguration(); - method public int getEventType(); - method @FlaggedApi("android.app.usage.user_interaction_type_api") @NonNull public android.os.PersistableBundle getExtras(); - method public String getPackageName(); - method public String getShortcutId(); - method public long getTimeStamp(); - field public static final int ACTIVITY_PAUSED = 2; // 0x2 - field public static final int ACTIVITY_RESUMED = 1; // 0x1 - field public static final int ACTIVITY_STOPPED = 23; // 0x17 - field public static final int CONFIGURATION_CHANGE = 5; // 0x5 - field public static final int DEVICE_SHUTDOWN = 26; // 0x1a - field public static final int DEVICE_STARTUP = 27; // 0x1b - field public static final int FOREGROUND_SERVICE_START = 19; // 0x13 - field public static final int FOREGROUND_SERVICE_STOP = 20; // 0x14 - field public static final int KEYGUARD_HIDDEN = 18; // 0x12 - field public static final int KEYGUARD_SHOWN = 17; // 0x11 - field @Deprecated public static final int MOVE_TO_BACKGROUND = 2; // 0x2 - field @Deprecated public static final int MOVE_TO_FOREGROUND = 1; // 0x1 - field public static final int NONE = 0; // 0x0 - field public static final int SCREEN_INTERACTIVE = 15; // 0xf - field public static final int SCREEN_NON_INTERACTIVE = 16; // 0x10 - field public static final int SHORTCUT_INVOCATION = 8; // 0x8 - field public static final int STANDBY_BUCKET_CHANGED = 11; // 0xb - field public static final int USER_INTERACTION = 7; // 0x7 - } - - @FlaggedApi("android.app.usage.filter_based_event_query_api") public final class UsageEventsQuery implements android.os.Parcelable { - method public int describeContents(); - method public long getBeginTimeMillis(); - method public long getEndTimeMillis(); - method @NonNull public int[] getEventTypes(); - method @NonNull public java.util.Set getPackageNames(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class UsageEventsQuery.Builder { - ctor public UsageEventsQuery.Builder(long, long); - method @NonNull public android.app.usage.UsageEventsQuery build(); - method @NonNull public android.app.usage.UsageEventsQuery.Builder setEventTypes(@NonNull int...); - method @NonNull public android.app.usage.UsageEventsQuery.Builder setPackageNames(@NonNull java.lang.String...); - } - - public final class UsageStats implements android.os.Parcelable { - ctor public UsageStats(android.app.usage.UsageStats); - method public void add(android.app.usage.UsageStats); - method public int describeContents(); - method public long getFirstTimeStamp(); - method public long getLastTimeForegroundServiceUsed(); - method public long getLastTimeStamp(); - method public long getLastTimeUsed(); - method public long getLastTimeVisible(); - method public String getPackageName(); - method public long getTotalTimeForegroundServiceUsed(); - method public long getTotalTimeInForeground(); - method public long getTotalTimeVisible(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class UsageStatsManager { - method public int getAppStandbyBucket(); - method public boolean isAppInactive(String); - method public java.util.Map queryAndAggregateUsageStats(long, long); - method public java.util.List queryConfigurations(int, long, long); - method public java.util.List queryEventStats(int, long, long); - method public android.app.usage.UsageEvents queryEvents(long, long); - method @FlaggedApi("android.app.usage.filter_based_event_query_api") @Nullable @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public android.app.usage.UsageEvents queryEvents(@NonNull android.app.usage.UsageEventsQuery); - method public android.app.usage.UsageEvents queryEventsForSelf(long, long); - method public java.util.List queryUsageStats(int, long, long); - field @FlaggedApi("android.app.usage.user_interaction_type_api") public static final String EXTRA_EVENT_ACTION = "android.app.usage.extra.EVENT_ACTION"; - field @FlaggedApi("android.app.usage.user_interaction_type_api") public static final String EXTRA_EVENT_CATEGORY = "android.app.usage.extra.EVENT_CATEGORY"; - field public static final int INTERVAL_BEST = 4; // 0x4 - field public static final int INTERVAL_DAILY = 0; // 0x0 - field public static final int INTERVAL_MONTHLY = 2; // 0x2 - field public static final int INTERVAL_WEEKLY = 1; // 0x1 - field public static final int INTERVAL_YEARLY = 3; // 0x3 - field public static final int STANDBY_BUCKET_ACTIVE = 10; // 0xa - field public static final int STANDBY_BUCKET_FREQUENT = 30; // 0x1e - field public static final int STANDBY_BUCKET_RARE = 40; // 0x28 - field public static final int STANDBY_BUCKET_RESTRICTED = 45; // 0x2d - field public static final int STANDBY_BUCKET_WORKING_SET = 20; // 0x14 - } - -} - -package android.app.wallpaper { - - @FlaggedApi("android.app.live_wallpaper_content_handling") public final class WallpaperDescription implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.content.ComponentName getComponent(); - method @NonNull public android.os.PersistableBundle getContent(); - method @Nullable public CharSequence getContextDescription(); - method @Nullable public android.net.Uri getContextUri(); - method @NonNull public java.util.List getDescription(); - method @Nullable public String getId(); - method @Nullable public android.net.Uri getThumbnail(); - method @Nullable public CharSequence getTitle(); - method @NonNull public android.app.wallpaper.WallpaperDescription.Builder toBuilder(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class WallpaperDescription.Builder { - ctor public WallpaperDescription.Builder(); - method @NonNull public android.app.wallpaper.WallpaperDescription build(); - method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setContent(@NonNull android.os.PersistableBundle); - method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setContextDescription(@Nullable CharSequence); - method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setContextUri(@Nullable android.net.Uri); - method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setDescription(@NonNull java.util.List); - method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setId(@Nullable String); - method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setThumbnail(@Nullable android.net.Uri); - method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setTitle(@Nullable CharSequence); - } - - @FlaggedApi("android.app.live_wallpaper_content_handling") public final class WallpaperInstance implements android.os.Parcelable { - ctor public WallpaperInstance(@Nullable android.app.WallpaperInfo, @NonNull android.app.wallpaper.WallpaperDescription); - method public int describeContents(); - method @NonNull public android.app.wallpaper.WallpaperDescription getDescription(); - method @NonNull public String getId(); - method @Nullable public android.app.WallpaperInfo getInfo(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.appwidget { - - public class AppWidgetHost { - ctor public AppWidgetHost(android.content.Context, int); - method public int allocateAppWidgetId(); - method protected void clearViews(); - method public final android.appwidget.AppWidgetHostView createView(android.content.Context, int, android.appwidget.AppWidgetProviderInfo); - method public static void deleteAllHosts(); - method public void deleteAppWidgetId(int); - method public void deleteHost(); - method public int[] getAppWidgetIds(); - method public void onAppWidgetRemoved(int); - method protected android.appwidget.AppWidgetHostView onCreateView(android.content.Context, int, android.appwidget.AppWidgetProviderInfo); - method protected void onProviderChanged(int, android.appwidget.AppWidgetProviderInfo); - method protected void onProvidersChanged(); - method public final void startAppWidgetConfigureActivityForResult(@NonNull android.app.Activity, int, int, int, @Nullable android.os.Bundle); - method public void startListening(); - method public void stopListening(); - } - - public class AppWidgetHostView extends android.widget.FrameLayout { - ctor public AppWidgetHostView(android.content.Context); - ctor public AppWidgetHostView(android.content.Context, int, int); - method public int getAppWidgetId(); - method public android.appwidget.AppWidgetProviderInfo getAppWidgetInfo(); - method public static android.graphics.Rect getDefaultPaddingForWidget(android.content.Context, android.content.ComponentName, android.graphics.Rect); - method protected android.view.View getDefaultView(); - method protected android.view.View getErrorView(); - method protected void prepareView(android.view.View); - method public void resetColorResources(); - method public void setAppWidget(int, android.appwidget.AppWidgetProviderInfo); - method public void setColorResources(@NonNull android.util.SparseIntArray); - method public void setExecutor(java.util.concurrent.Executor); - method public void setOnLightBackground(boolean); - method public void updateAppWidget(android.widget.RemoteViews); - method public void updateAppWidgetOptions(android.os.Bundle); - method @Deprecated public void updateAppWidgetSize(android.os.Bundle, int, int, int, int); - method public void updateAppWidgetSize(@NonNull android.os.Bundle, @NonNull java.util.List); - } - - public class AppWidgetManager { - method public boolean bindAppWidgetIdIfAllowed(int, android.content.ComponentName); - method public boolean bindAppWidgetIdIfAllowed(int, android.content.ComponentName, android.os.Bundle); - method public boolean bindAppWidgetIdIfAllowed(int, android.os.UserHandle, android.content.ComponentName, android.os.Bundle); - method public int[] getAppWidgetIds(android.content.ComponentName); - method public android.appwidget.AppWidgetProviderInfo getAppWidgetInfo(int); - method public android.os.Bundle getAppWidgetOptions(int); - method public java.util.List getInstalledProviders(); - method @NonNull public java.util.List getInstalledProvidersForPackage(@NonNull String, @Nullable android.os.UserHandle); - method @NonNull public java.util.List getInstalledProvidersForProfile(@Nullable android.os.UserHandle); - method public static android.appwidget.AppWidgetManager getInstance(android.content.Context); - method @FlaggedApi("android.appwidget.flags.generated_previews") @Nullable public android.widget.RemoteViews getWidgetPreview(@NonNull android.content.ComponentName, @Nullable android.os.UserHandle, int); - method public boolean isRequestPinAppWidgetSupported(); - method @Deprecated public void notifyAppWidgetViewDataChanged(int[], int); - method @Deprecated public void notifyAppWidgetViewDataChanged(int, int); - method public void partiallyUpdateAppWidget(int[], android.widget.RemoteViews); - method public void partiallyUpdateAppWidget(int, android.widget.RemoteViews); - method @FlaggedApi("android.appwidget.flags.generated_previews") public void removeWidgetPreview(@NonNull android.content.ComponentName, int); - method public boolean requestPinAppWidget(@NonNull android.content.ComponentName, @Nullable android.os.Bundle, @Nullable android.app.PendingIntent); - method @FlaggedApi("android.appwidget.flags.generated_previews") public boolean setWidgetPreview(@NonNull android.content.ComponentName, int, @NonNull android.widget.RemoteViews); - method public void updateAppWidget(int[], android.widget.RemoteViews); - method public void updateAppWidget(int, android.widget.RemoteViews); - method public void updateAppWidget(android.content.ComponentName, android.widget.RemoteViews); - method public void updateAppWidgetOptions(int, android.os.Bundle); - method public void updateAppWidgetProviderInfo(android.content.ComponentName, @Nullable String); - field public static final String ACTION_APPWIDGET_BIND = "android.appwidget.action.APPWIDGET_BIND"; - field public static final String ACTION_APPWIDGET_CONFIGURE = "android.appwidget.action.APPWIDGET_CONFIGURE"; - field public static final String ACTION_APPWIDGET_DELETED = "android.appwidget.action.APPWIDGET_DELETED"; - field public static final String ACTION_APPWIDGET_DISABLED = "android.appwidget.action.APPWIDGET_DISABLED"; - field public static final String ACTION_APPWIDGET_ENABLED = "android.appwidget.action.APPWIDGET_ENABLED"; - field public static final String ACTION_APPWIDGET_HOST_RESTORED = "android.appwidget.action.APPWIDGET_HOST_RESTORED"; - field public static final String ACTION_APPWIDGET_OPTIONS_CHANGED = "android.appwidget.action.APPWIDGET_UPDATE_OPTIONS"; - field public static final String ACTION_APPWIDGET_PICK = "android.appwidget.action.APPWIDGET_PICK"; - field public static final String ACTION_APPWIDGET_RESTORED = "android.appwidget.action.APPWIDGET_RESTORED"; - field public static final String ACTION_APPWIDGET_UPDATE = "android.appwidget.action.APPWIDGET_UPDATE"; - field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EVENT_CATEGORY_APPWIDGET = "android.appwidget"; - field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EVENT_TYPE_WIDGET_INTERACTION = "widget_interaction"; - field public static final String EXTRA_APPWIDGET_ID = "appWidgetId"; - field public static final String EXTRA_APPWIDGET_IDS = "appWidgetIds"; - field public static final String EXTRA_APPWIDGET_OLD_IDS = "appWidgetOldIds"; - field public static final String EXTRA_APPWIDGET_OPTIONS = "appWidgetOptions"; - field public static final String EXTRA_APPWIDGET_PREVIEW = "appWidgetPreview"; - field public static final String EXTRA_APPWIDGET_PROVIDER = "appWidgetProvider"; - field public static final String EXTRA_APPWIDGET_PROVIDER_PROFILE = "appWidgetProviderProfile"; - field public static final String EXTRA_CUSTOM_EXTRAS = "customExtras"; - field public static final String EXTRA_CUSTOM_INFO = "customInfo"; - field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EXTRA_EVENT_CLICKED_VIEWS = "android.appwidget.extra.EVENT_CLICKED_VIEWS"; - field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EXTRA_EVENT_DURATION_MS = "android.appwidget.extra.EVENT_DURATION_MS"; - field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EXTRA_EVENT_POSITION_RECT = "android.appwidget.extra.EVENT_POSITION_RECT"; - field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EXTRA_EVENT_SCROLLED_VIEWS = "android.appwidget.extra.EVENT_SCROLLED_VIEWS"; - field public static final String EXTRA_HOST_ID = "hostId"; - field public static final int INVALID_APPWIDGET_ID = 0; // 0x0 - field public static final String META_DATA_APPWIDGET_PROVIDER = "android.appwidget.provider"; - field public static final String OPTION_APPWIDGET_HOST_CATEGORY = "appWidgetCategory"; - field public static final String OPTION_APPWIDGET_MAX_HEIGHT = "appWidgetMaxHeight"; - field public static final String OPTION_APPWIDGET_MAX_WIDTH = "appWidgetMaxWidth"; - field public static final String OPTION_APPWIDGET_MIN_HEIGHT = "appWidgetMinHeight"; - field public static final String OPTION_APPWIDGET_MIN_WIDTH = "appWidgetMinWidth"; - field public static final String OPTION_APPWIDGET_RESTORE_COMPLETED = "appWidgetRestoreCompleted"; - field public static final String OPTION_APPWIDGET_SIZES = "appWidgetSizes"; - } - - public class AppWidgetProvider extends android.content.BroadcastReceiver { - ctor public AppWidgetProvider(); - method public void onAppWidgetOptionsChanged(android.content.Context, android.appwidget.AppWidgetManager, int, android.os.Bundle); - method public void onDeleted(android.content.Context, int[]); - method public void onDisabled(android.content.Context); - method public void onEnabled(android.content.Context); - method public void onReceive(android.content.Context, android.content.Intent); - method public void onRestored(android.content.Context, int[], int[]); - method public void onUpdate(android.content.Context, android.appwidget.AppWidgetManager, int[]); - } - - public class AppWidgetProviderInfo implements android.os.Parcelable { - ctor public AppWidgetProviderInfo(); - ctor public AppWidgetProviderInfo(android.os.Parcel); - method public android.appwidget.AppWidgetProviderInfo clone(); - method public int describeContents(); - method @NonNull public android.content.pm.ActivityInfo getActivityInfo(); - method public final android.os.UserHandle getProfile(); - method @Nullable public final CharSequence loadDescription(@NonNull android.content.Context); - method public final android.graphics.drawable.Drawable loadIcon(@NonNull android.content.Context, int); - method public final String loadLabel(android.content.pm.PackageManager); - method public final android.graphics.drawable.Drawable loadPreviewImage(@NonNull android.content.Context, int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int RESIZE_BOTH = 3; // 0x3 - field public static final int RESIZE_HORIZONTAL = 1; // 0x1 - field public static final int RESIZE_NONE = 0; // 0x0 - field public static final int RESIZE_VERTICAL = 2; // 0x2 - field public static final int WIDGET_CATEGORY_HOME_SCREEN = 1; // 0x1 - field public static final int WIDGET_CATEGORY_KEYGUARD = 2; // 0x2 - field @FlaggedApi("android.appwidget.flags.not_keyguard_category") public static final int WIDGET_CATEGORY_NOT_KEYGUARD = 8; // 0x8 - field public static final int WIDGET_CATEGORY_SEARCHBOX = 4; // 0x4 - field public static final int WIDGET_FEATURE_CONFIGURATION_OPTIONAL = 4; // 0x4 - field public static final int WIDGET_FEATURE_HIDE_FROM_PICKER = 2; // 0x2 - field public static final int WIDGET_FEATURE_RECONFIGURABLE = 1; // 0x1 - field public int autoAdvanceViewId; - field public android.content.ComponentName configure; - field @IdRes public int descriptionRes; - field @FlaggedApi("android.appwidget.flags.generated_previews") public int generatedPreviewCategories; - field public int icon; - field public int initialKeyguardLayout; - field public int initialLayout; - field @Deprecated public String label; - field public int maxResizeHeight; - field public int maxResizeWidth; - field public int minHeight; - field public int minResizeHeight; - field public int minResizeWidth; - field public int minWidth; - field public int previewImage; - field @IdRes public int previewLayout; - field public android.content.ComponentName provider; - field public int resizeMode; - field public int targetCellHeight; - field public int targetCellWidth; - field public int updatePeriodMillis; - field public int widgetCategory; - field public int widgetFeatures; - } - -} - -package android.companion { - - public final class AssociatedDevice implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.bluetooth.le.ScanResult getBleDevice(); - method @Nullable public android.bluetooth.BluetoothDevice getBluetoothDevice(); - method @Nullable public android.net.wifi.ScanResult getWifiDevice(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class AssociationInfo implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.companion.AssociatedDevice getAssociatedDevice(); - method @FlaggedApi("android.companion.association_device_icon") @Nullable public android.graphics.drawable.Icon getDeviceIcon(); - method @FlaggedApi("android.companion.association_tag") @Nullable public android.companion.DeviceId getDeviceId(); - method @Nullable public android.net.MacAddress getDeviceMacAddress(); - method @Nullable public String getDeviceProfile(); - method @Nullable public CharSequence getDisplayName(); - method public int getId(); - method public int getSystemDataSyncFlags(); - method public boolean isSelfManaged(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class AssociationRequest implements android.os.Parcelable { - method public int describeContents(); - method @FlaggedApi("android.companion.association_device_icon") @Nullable public android.graphics.drawable.Icon getDeviceIcon(); - method @Nullable public String getDeviceProfile(); - method @Nullable public CharSequence getDisplayName(); - method public boolean isForceConfirmation(); - method public boolean isSelfManaged(); - method public boolean isSingleDevice(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING) public static final String DEVICE_PROFILE_APP_STREAMING = "android.app.role.COMPANION_DEVICE_APP_STREAMING"; - field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION) public static final String DEVICE_PROFILE_AUTOMOTIVE_PROJECTION = "android.app.role.SYSTEM_AUTOMOTIVE_PROJECTION"; - field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_COMPUTER) public static final String DEVICE_PROFILE_COMPUTER = "android.app.role.COMPANION_DEVICE_COMPUTER"; - field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_GLASSES) public static final String DEVICE_PROFILE_GLASSES = "android.app.role.COMPANION_DEVICE_GLASSES"; - field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING) public static final String DEVICE_PROFILE_NEARBY_DEVICE_STREAMING = "android.app.role.COMPANION_DEVICE_NEARBY_DEVICE_STREAMING"; - field public static final String DEVICE_PROFILE_WATCH = "android.app.role.COMPANION_DEVICE_WATCH"; - } - - public static final class AssociationRequest.Builder { - ctor public AssociationRequest.Builder(); - method @NonNull public android.companion.AssociationRequest.Builder addDeviceFilter(@Nullable android.companion.DeviceFilter); - method @NonNull public android.companion.AssociationRequest build(); - method @FlaggedApi("android.companion.association_device_icon") @NonNull @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public android.companion.AssociationRequest.Builder setDeviceIcon(@NonNull android.graphics.drawable.Icon); - method @NonNull public android.companion.AssociationRequest.Builder setDeviceProfile(@NonNull String); - method @NonNull public android.companion.AssociationRequest.Builder setDisplayName(@NonNull CharSequence); - method @NonNull @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public android.companion.AssociationRequest.Builder setForceConfirmation(boolean); - method @NonNull @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public android.companion.AssociationRequest.Builder setSelfManaged(boolean); - method @NonNull public android.companion.AssociationRequest.Builder setSingleDevice(boolean); - } - - public final class BluetoothDeviceFilter implements android.companion.DeviceFilter { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class BluetoothDeviceFilter.Builder { - ctor public BluetoothDeviceFilter.Builder(); - method @NonNull public android.companion.BluetoothDeviceFilter.Builder addServiceUuid(@Nullable android.os.ParcelUuid, @Nullable android.os.ParcelUuid); - method @NonNull public android.companion.BluetoothDeviceFilter build(); - method @NonNull public android.companion.BluetoothDeviceFilter.Builder setAddress(@Nullable String); - method public android.companion.BluetoothDeviceFilter.Builder setNamePattern(@Nullable java.util.regex.Pattern); - } - - public final class BluetoothLeDeviceFilter implements android.companion.DeviceFilter { - method public int describeContents(); - method public static int getRenamePrefixLengthLimit(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class BluetoothLeDeviceFilter.Builder { - ctor public BluetoothLeDeviceFilter.Builder(); - method @NonNull public android.companion.BluetoothLeDeviceFilter build(); - method public android.companion.BluetoothLeDeviceFilter.Builder setNamePattern(@Nullable java.util.regex.Pattern); - method @NonNull public android.companion.BluetoothLeDeviceFilter.Builder setRawDataFilter(@NonNull byte[], @Nullable byte[]); - method @NonNull public android.companion.BluetoothLeDeviceFilter.Builder setRenameFromBytes(@NonNull String, @NonNull String, int, int, java.nio.ByteOrder); - method @NonNull public android.companion.BluetoothLeDeviceFilter.Builder setRenameFromName(@NonNull String, @NonNull String, int, int); - method @NonNull public android.companion.BluetoothLeDeviceFilter.Builder setScanFilter(@Nullable android.bluetooth.le.ScanFilter); - } - - public final class CompanionDeviceManager { - method @RequiresPermission(anyOf={android.Manifest.permission.REQUEST_COMPANION_PROFILE_WATCH, android.Manifest.permission.REQUEST_COMPANION_PROFILE_COMPUTER, android.Manifest.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING, android.Manifest.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION}, conditional=true) public void associate(@NonNull android.companion.AssociationRequest, @NonNull android.companion.CompanionDeviceManager.Callback, @Nullable android.os.Handler); - method @RequiresPermission(anyOf={android.Manifest.permission.REQUEST_COMPANION_PROFILE_WATCH, android.Manifest.permission.REQUEST_COMPANION_PROFILE_COMPUTER, android.Manifest.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING, android.Manifest.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION}, conditional=true) public void associate(@NonNull android.companion.AssociationRequest, @NonNull java.util.concurrent.Executor, @NonNull android.companion.CompanionDeviceManager.Callback); - method @RequiresPermission(android.Manifest.permission.DELIVER_COMPANION_MESSAGES) public void attachSystemDataTransport(int, @NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws android.companion.DeviceNotAssociatedException; - method @Nullable public android.content.IntentSender buildAssociationCancellationIntent(); - method @Nullable public android.content.IntentSender buildPermissionTransferUserConsentIntent(int) throws android.companion.DeviceNotAssociatedException; - method @RequiresPermission(android.Manifest.permission.DELIVER_COMPANION_MESSAGES) public void detachSystemDataTransport(int) throws android.companion.DeviceNotAssociatedException; - method public void disableSystemDataSyncForTypes(int, int); - method @Deprecated public void disassociate(@NonNull String); - method public void disassociate(int); - method public void enableSystemDataSyncForTypes(int, int); - method @Deprecated @NonNull public java.util.List getAssociations(); - method @NonNull public java.util.List getMyAssociations(); - method @Deprecated public boolean hasNotificationAccess(android.content.ComponentName); - method @FlaggedApi("android.companion.perm_sync_user_consent") public boolean isPermissionTransferUserConsented(int); - method @FlaggedApi("android.companion.unpair_associated_device") @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public boolean removeBond(int); - method public void requestNotificationAccess(android.content.ComponentName); - method @FlaggedApi("android.companion.association_tag") public void setDeviceId(int, @Nullable android.companion.DeviceId); - method @Deprecated @FlaggedApi("android.companion.device_presence") @RequiresPermission(android.Manifest.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE) public void startObservingDevicePresence(@NonNull String) throws android.companion.DeviceNotAssociatedException; - method @FlaggedApi("android.companion.device_presence") @RequiresPermission(android.Manifest.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE) public void startObservingDevicePresence(@NonNull android.companion.ObservingDevicePresenceRequest); - method public void startSystemDataTransfer(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver) throws android.companion.DeviceNotAssociatedException; - method @Deprecated @FlaggedApi("android.companion.device_presence") @RequiresPermission(android.Manifest.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE) public void stopObservingDevicePresence(@NonNull String) throws android.companion.DeviceNotAssociatedException; - method @FlaggedApi("android.companion.device_presence") @RequiresPermission(android.Manifest.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE) public void stopObservingDevicePresence(@NonNull android.companion.ObservingDevicePresenceRequest); - field public static final String EXTRA_ASSOCIATION = "android.companion.extra.ASSOCIATION"; - field @Deprecated public static final String EXTRA_DEVICE = "android.companion.extra.DEVICE"; - field public static final int FLAG_CALL_METADATA = 1; // 0x1 - field public static final int RESULT_CANCELED = 0; // 0x0 - field public static final int RESULT_DISCOVERY_TIMEOUT = 2; // 0x2 - field public static final int RESULT_INTERNAL_ERROR = 3; // 0x3 - field public static final int RESULT_OK = -1; // 0xffffffff - field @FlaggedApi("android.companion.association_failure_code") public static final int RESULT_SECURITY_ERROR = 4; // 0x4 - field public static final int RESULT_USER_REJECTED = 1; // 0x1 - } - - public abstract static class CompanionDeviceManager.Callback { - ctor public CompanionDeviceManager.Callback(); - method public void onAssociationCreated(@NonNull android.companion.AssociationInfo); - method public void onAssociationPending(@NonNull android.content.IntentSender); - method @Deprecated public void onDeviceFound(@NonNull android.content.IntentSender); - method public abstract void onFailure(@Nullable CharSequence); - method @FlaggedApi("android.companion.association_failure_code") public void onFailure(int, @Nullable CharSequence); - } - - public abstract class CompanionDeviceService extends android.app.Service { - ctor public CompanionDeviceService(); - method @RequiresPermission(android.Manifest.permission.DELIVER_COMPANION_MESSAGES) public final void attachSystemDataTransport(int, @NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws android.companion.DeviceNotAssociatedException; - method @RequiresPermission(android.Manifest.permission.DELIVER_COMPANION_MESSAGES) public final void detachSystemDataTransport(int) throws android.companion.DeviceNotAssociatedException; - method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); - method @Deprecated @MainThread public void onDeviceAppeared(@NonNull String); - method @Deprecated @FlaggedApi("android.companion.device_presence") @MainThread public void onDeviceAppeared(@NonNull android.companion.AssociationInfo); - method @Deprecated @MainThread public void onDeviceDisappeared(@NonNull String); - method @Deprecated @FlaggedApi("android.companion.device_presence") @MainThread public void onDeviceDisappeared(@NonNull android.companion.AssociationInfo); - method @FlaggedApi("android.companion.device_presence") @MainThread public void onDevicePresenceEvent(@NonNull android.companion.DevicePresenceEvent); - field public static final String SERVICE_INTERFACE = "android.companion.CompanionDeviceService"; - } - - public class CompanionException extends java.lang.RuntimeException { - } - - public interface DeviceFilter extends android.os.Parcelable { - } - - @FlaggedApi("android.companion.association_tag") public final class DeviceId implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getCustomId(); - method @Nullable public android.net.MacAddress getMacAddress(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class DeviceId.Builder { - ctor public DeviceId.Builder(); - method @NonNull public android.companion.DeviceId build(); - method @NonNull public android.companion.DeviceId.Builder setCustomId(@Nullable String); - method @NonNull public android.companion.DeviceId.Builder setMacAddress(@Nullable android.net.MacAddress); - } - - public class DeviceNotAssociatedException extends java.lang.RuntimeException { - } - - @FlaggedApi("android.companion.device_presence") public final class DevicePresenceEvent implements android.os.Parcelable { - ctor public DevicePresenceEvent(int, int, @Nullable android.os.ParcelUuid); - method public int describeContents(); - method public int getAssociationId(); - method public int getEvent(); - method @Nullable public android.os.ParcelUuid getUuid(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int EVENT_BLE_APPEARED = 0; // 0x0 - field public static final int EVENT_BLE_DISAPPEARED = 1; // 0x1 - field public static final int EVENT_BT_CONNECTED = 2; // 0x2 - field public static final int EVENT_BT_DISCONNECTED = 3; // 0x3 - field public static final int EVENT_SELF_MANAGED_APPEARED = 4; // 0x4 - field public static final int EVENT_SELF_MANAGED_DISAPPEARED = 5; // 0x5 - field public static final int NO_ASSOCIATION = -1; // 0xffffffff - } - - @FlaggedApi("android.companion.device_presence") public final class ObservingDevicePresenceRequest implements android.os.Parcelable { - method public int describeContents(); - method public int getAssociationId(); - method @Nullable public android.os.ParcelUuid getUuid(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class ObservingDevicePresenceRequest.Builder { - ctor public ObservingDevicePresenceRequest.Builder(); - method @NonNull public android.companion.ObservingDevicePresenceRequest build(); - method @NonNull public android.companion.ObservingDevicePresenceRequest.Builder setAssociationId(int); - method @NonNull @RequiresPermission(allOf={android.Manifest.permission.REQUEST_OBSERVE_DEVICE_UUID_PRESENCE, android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_SCAN}) public android.companion.ObservingDevicePresenceRequest.Builder setUuid(@NonNull android.os.ParcelUuid); - } - - public final class WifiDeviceFilter implements android.companion.DeviceFilter { - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class WifiDeviceFilter.Builder { - ctor public WifiDeviceFilter.Builder(); - method @NonNull public android.companion.WifiDeviceFilter build(); - method @NonNull public android.companion.WifiDeviceFilter.Builder setBssid(@NonNull android.net.MacAddress); - method @NonNull public android.companion.WifiDeviceFilter.Builder setBssidMask(@NonNull android.net.MacAddress); - method @NonNull public android.companion.WifiDeviceFilter.Builder setNamePattern(@Nullable java.util.regex.Pattern); - } - -} - -package android.companion.virtual { - - public final class VirtualDevice implements android.os.Parcelable { - method public int describeContents(); - method public int getDeviceId(); - method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") @NonNull public int[] getDisplayIds(); - method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") @Nullable public CharSequence getDisplayName(); - method @Nullable public String getName(); - method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") @Nullable public String getPersistentDeviceId(); - method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public boolean hasCustomSensorSupport(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class VirtualDeviceManager { - method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") @Nullable public android.companion.virtual.VirtualDevice getVirtualDevice(int); - method @NonNull public java.util.List getVirtualDevices(); - method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public void registerVirtualDeviceListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.VirtualDeviceListener); - method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public void unregisterVirtualDeviceListener(@NonNull android.companion.virtual.VirtualDeviceManager.VirtualDeviceListener); - } - - @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public static interface VirtualDeviceManager.VirtualDeviceListener { - method public default void onVirtualDeviceClosed(int); - method public default void onVirtualDeviceCreated(int); - } - -} - -package android.content { - - public abstract class AbstractThreadedSyncAdapter { - ctor public AbstractThreadedSyncAdapter(android.content.Context, boolean); - ctor public AbstractThreadedSyncAdapter(android.content.Context, boolean, boolean); - method public android.content.Context getContext(); - method public final android.os.IBinder getSyncAdapterBinder(); - method public abstract void onPerformSync(android.accounts.Account, android.os.Bundle, String, android.content.ContentProviderClient, android.content.SyncResult); - method public void onSecurityException(android.accounts.Account, android.os.Bundle, String, android.content.SyncResult); - method public void onSyncCanceled(); - method public void onSyncCanceled(Thread); - method @MainThread public boolean onUnsyncableAccount(); - field @Deprecated public static final int LOG_SYNC_DETAILS = 2743; // 0xab7 - } - - public class ActivityNotFoundException extends java.lang.RuntimeException { - ctor public ActivityNotFoundException(); - ctor public ActivityNotFoundException(String); - } - - public abstract class AsyncQueryHandler extends android.os.Handler { - ctor public AsyncQueryHandler(android.content.ContentResolver); - method public final void cancelOperation(int); - method protected android.os.Handler createHandler(android.os.Looper); - method protected void onDeleteComplete(int, Object, int); - method protected void onInsertComplete(int, Object, android.net.Uri); - method protected void onQueryComplete(int, Object, android.database.Cursor); - method protected void onUpdateComplete(int, Object, int); - method public final void startDelete(int, Object, android.net.Uri, String, String[]); - method public final void startInsert(int, Object, android.net.Uri, android.content.ContentValues); - method public void startQuery(int, Object, android.net.Uri, String[], String, String[], String); - method public final void startUpdate(int, Object, android.net.Uri, android.content.ContentValues, String, String[]); - } - - protected static final class AsyncQueryHandler.WorkerArgs { - ctor protected AsyncQueryHandler.WorkerArgs(); - field public Object cookie; - field public android.os.Handler handler; - field public String orderBy; - field public String[] projection; - field public Object result; - field public String selection; - field public String[] selectionArgs; - field public android.net.Uri uri; - field public android.content.ContentValues values; - } - - protected class AsyncQueryHandler.WorkerHandler extends android.os.Handler { - ctor public AsyncQueryHandler.WorkerHandler(android.os.Looper); - } - - @Deprecated public abstract class AsyncTaskLoader extends android.content.Loader { - ctor @Deprecated public AsyncTaskLoader(android.content.Context); - method @Deprecated public void cancelLoadInBackground(); - method @Deprecated public boolean isLoadInBackgroundCanceled(); - method @Deprecated public abstract D loadInBackground(); - method @Deprecated public void onCanceled(D); - method @Deprecated protected D onLoadInBackground(); - method @Deprecated public void setUpdateThrottle(long); - } - - public final class AttributionSource implements android.os.Parcelable { - method public boolean checkCallingUid(); - method public int describeContents(); - method public void enforceCallingUid(); - method @Nullable public String getAttributionTag(); - method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public int getDeviceId(); - method @Nullable public android.content.AttributionSource getNext(); - method @Nullable public String getPackageName(); - method public int getPid(); - method public int getUid(); - method public boolean isTrusted(@NonNull android.content.Context); - method @NonNull public static android.content.AttributionSource myAttributionSource(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class AttributionSource.Builder { - ctor public AttributionSource.Builder(int); - ctor public AttributionSource.Builder(@NonNull android.content.AttributionSource); - method @NonNull public android.content.AttributionSource build(); - method @NonNull public android.content.AttributionSource.Builder setAttributionTag(@Nullable String); - method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @NonNull public android.content.AttributionSource.Builder setDeviceId(int); - method @NonNull public android.content.AttributionSource.Builder setNext(@Nullable android.content.AttributionSource); - method @FlaggedApi("android.permission.flags.set_next_attribution_source") @NonNull public android.content.AttributionSource.Builder setNextAttributionSource(@NonNull android.content.AttributionSource); - method @NonNull public android.content.AttributionSource.Builder setPackageName(@Nullable String); - method @NonNull public android.content.AttributionSource.Builder setPid(int); - } - - public abstract class BroadcastReceiver { - ctor public BroadcastReceiver(); - method public final void abortBroadcast(); - method public final void clearAbortBroadcast(); - method public final boolean getAbortBroadcast(); - method public final boolean getDebugUnregister(); - method public final int getResultCode(); - method public final String getResultData(); - method public final android.os.Bundle getResultExtras(boolean); - method @Nullable public String getSentFromPackage(); - method public int getSentFromUid(); - method public final android.content.BroadcastReceiver.PendingResult goAsync(); - method public final boolean isInitialStickyBroadcast(); - method public final boolean isOrderedBroadcast(); - method public abstract void onReceive(android.content.Context, android.content.Intent); - method public android.os.IBinder peekService(android.content.Context, android.content.Intent); - method public final void setDebugUnregister(boolean); - method public final void setOrderedHint(boolean); - method public final void setResult(int, String, android.os.Bundle); - method public final void setResultCode(int); - method public final void setResultData(String); - method public final void setResultExtras(android.os.Bundle); - } - - public static class BroadcastReceiver.PendingResult { - method public final void abortBroadcast(); - method public final void clearAbortBroadcast(); - method public final void finish(); - method public final boolean getAbortBroadcast(); - method public final int getResultCode(); - method public final String getResultData(); - method public final android.os.Bundle getResultExtras(boolean); - method public final void setResult(int, String, android.os.Bundle); - method public final void setResultCode(int); - method public final void setResultData(String); - method public final void setResultExtras(android.os.Bundle); - } - - public class ClipData implements android.os.Parcelable { - ctor public ClipData(CharSequence, String[], android.content.ClipData.Item); - ctor public ClipData(android.content.ClipDescription, android.content.ClipData.Item); - ctor public ClipData(android.content.ClipData); - method public void addItem(android.content.ClipData.Item); - method public void addItem(android.content.ContentResolver, android.content.ClipData.Item); - method public int describeContents(); - method public android.content.ClipDescription getDescription(); - method public android.content.ClipData.Item getItemAt(int); - method public int getItemCount(); - method public static android.content.ClipData newHtmlText(CharSequence, CharSequence, String); - method public static android.content.ClipData newIntent(CharSequence, android.content.Intent); - method public static android.content.ClipData newPlainText(CharSequence, CharSequence); - method public static android.content.ClipData newRawUri(CharSequence, android.net.Uri); - method public static android.content.ClipData newUri(android.content.ContentResolver, CharSequence, android.net.Uri); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class ClipData.Item { - ctor public ClipData.Item(CharSequence); - ctor public ClipData.Item(CharSequence, String); - ctor public ClipData.Item(android.content.Intent); - ctor public ClipData.Item(android.net.Uri); - ctor public ClipData.Item(CharSequence, android.content.Intent, android.net.Uri); - ctor public ClipData.Item(CharSequence, String, android.content.Intent, android.net.Uri); - method public String coerceToHtmlText(android.content.Context); - method public CharSequence coerceToStyledText(android.content.Context); - method public CharSequence coerceToText(android.content.Context); - method public String getHtmlText(); - method public android.content.Intent getIntent(); - method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @Nullable public android.content.IntentSender getIntentSender(); - method public CharSequence getText(); - method @Nullable public android.view.textclassifier.TextLinks getTextLinks(); - method public android.net.Uri getUri(); - } - - @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") public static final class ClipData.Item.Builder { - ctor public ClipData.Item.Builder(); - method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item build(); - method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setHtmlText(@Nullable String); - method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setIntent(@Nullable android.content.Intent); - method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setIntentSender(@Nullable android.content.IntentSender); - method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setText(@Nullable CharSequence); - method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setUri(@Nullable android.net.Uri); - } - - public class ClipDescription implements android.os.Parcelable { - ctor public ClipDescription(CharSequence, String[]); - ctor public ClipDescription(android.content.ClipDescription); - method public static boolean compareMimeTypes(String, String); - method public int describeContents(); - method public String[] filterMimeTypes(String); - method public int getClassificationStatus(); - method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(@NonNull String); - method public android.os.PersistableBundle getExtras(); - method public CharSequence getLabel(); - method public String getMimeType(int); - method public int getMimeTypeCount(); - method public long getTimestamp(); - method public boolean hasMimeType(String); - method public boolean isStyledText(); - method public void setExtras(android.os.PersistableBundle); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CLASSIFICATION_COMPLETE = 3; // 0x3 - field public static final int CLASSIFICATION_NOT_COMPLETE = 1; // 0x1 - field public static final int CLASSIFICATION_NOT_PERFORMED = 2; // 0x2 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String EXTRA_IS_REMOTE_DEVICE = "android.content.extra.IS_REMOTE_DEVICE"; - field public static final String EXTRA_IS_SENSITIVE = "android.content.extra.IS_SENSITIVE"; - field public static final String MIMETYPE_TEXT_HTML = "text/html"; - field public static final String MIMETYPE_TEXT_INTENT = "text/vnd.android.intent"; - field public static final String MIMETYPE_TEXT_PLAIN = "text/plain"; - field public static final String MIMETYPE_TEXT_URILIST = "text/uri-list"; - field public static final String MIMETYPE_UNKNOWN = "application/octet-stream"; - } - - public class ClipboardManager extends android.text.ClipboardManager { - method public void addPrimaryClipChangedListener(android.content.ClipboardManager.OnPrimaryClipChangedListener); - method public void clearPrimaryClip(); - method @Nullable public android.content.ClipData getPrimaryClip(); - method @Nullable public android.content.ClipDescription getPrimaryClipDescription(); - method @Deprecated public CharSequence getText(); - method public boolean hasPrimaryClip(); - method @Deprecated public boolean hasText(); - method public void removePrimaryClipChangedListener(android.content.ClipboardManager.OnPrimaryClipChangedListener); - method public void setPrimaryClip(@NonNull android.content.ClipData); - method @Deprecated public void setText(CharSequence); - } - - public static interface ClipboardManager.OnPrimaryClipChangedListener { - method public void onPrimaryClipChanged(); - } - - public interface ComponentCallbacks { - method public void onConfigurationChanged(@NonNull android.content.res.Configuration); - method @Deprecated public void onLowMemory(); - } - - public interface ComponentCallbacks2 extends android.content.ComponentCallbacks { - method public void onTrimMemory(int); - field public static final int TRIM_MEMORY_BACKGROUND = 40; // 0x28 - field @Deprecated public static final int TRIM_MEMORY_COMPLETE = 80; // 0x50 - field @Deprecated public static final int TRIM_MEMORY_MODERATE = 60; // 0x3c - field @Deprecated public static final int TRIM_MEMORY_RUNNING_CRITICAL = 15; // 0xf - field @Deprecated public static final int TRIM_MEMORY_RUNNING_LOW = 10; // 0xa - field @Deprecated public static final int TRIM_MEMORY_RUNNING_MODERATE = 5; // 0x5 - field public static final int TRIM_MEMORY_UI_HIDDEN = 20; // 0x14 - } - - public final class ComponentName implements java.lang.Cloneable java.lang.Comparable android.os.Parcelable { - ctor public ComponentName(@NonNull String, @NonNull String); - ctor public ComponentName(@NonNull android.content.Context, @NonNull String); - ctor public ComponentName(@NonNull android.content.Context, @NonNull Class); - ctor public ComponentName(android.os.Parcel); - method public android.content.ComponentName clone(); - method public int compareTo(android.content.ComponentName); - method @NonNull public static android.content.ComponentName createRelative(@NonNull String, @NonNull String); - method @NonNull public static android.content.ComponentName createRelative(@NonNull android.content.Context, @NonNull String); - method public int describeContents(); - method @NonNull public String flattenToShortString(); - method @NonNull public String flattenToString(); - method @NonNull public String getClassName(); - method @NonNull public String getPackageName(); - method public String getShortClassName(); - method public static android.content.ComponentName readFromParcel(android.os.Parcel); - method public String toShortString(); - method @Nullable public static android.content.ComponentName unflattenFromString(@NonNull String); - method public void writeToParcel(android.os.Parcel, int); - method public static void writeToParcel(android.content.ComponentName, android.os.Parcel); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class ContentProvider implements android.content.ComponentCallbacks2 { - ctor public ContentProvider(); - method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull String, @NonNull java.util.ArrayList) throws android.content.OperationApplicationException; - method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull java.util.ArrayList) throws android.content.OperationApplicationException; - method public void attachInfo(android.content.Context, android.content.pm.ProviderInfo); - method public int bulkInsert(@NonNull android.net.Uri, @NonNull android.content.ContentValues[]); - method @Nullable public android.os.Bundle call(@NonNull String, @NonNull String, @Nullable String, @Nullable android.os.Bundle); - method @Nullable public android.os.Bundle call(@NonNull String, @Nullable String, @Nullable android.os.Bundle); - method @Nullable public android.net.Uri canonicalize(@NonNull android.net.Uri); - method @NonNull public final android.content.ContentProvider.CallingIdentity clearCallingIdentity(); - method public abstract int delete(@NonNull android.net.Uri, @Nullable String, @Nullable String[]); - method public int delete(@NonNull android.net.Uri, @Nullable android.os.Bundle); - method public void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]); - method @Nullable public final android.content.AttributionSource getCallingAttributionSource(); - method @Nullable public final String getCallingAttributionTag(); - method @Nullable public final String getCallingPackage(); - method @Nullable public final String getCallingPackageUnchecked(); - method @Nullable public final android.content.Context getContext(); - method @Nullable public final android.content.pm.PathPermission[] getPathPermissions(); - method @Nullable public final String getReadPermission(); - method @Nullable public String[] getStreamTypes(@NonNull android.net.Uri, @NonNull String); - method @Nullable public abstract String getType(@NonNull android.net.Uri); - method @Nullable public String getTypeAnonymous(@NonNull android.net.Uri); - method @Nullable public final String getWritePermission(); - method @Nullable public abstract android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues); - method @Nullable public android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); - method protected boolean isTemporary(); - method public void onCallingPackageChanged(); - method public void onConfigurationChanged(android.content.res.Configuration); - method public abstract boolean onCreate(); - method public void onLowMemory(); - method public void onTrimMemory(int); - method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; - method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @Nullable public android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; - method @Nullable public android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @NonNull protected final android.os.ParcelFileDescriptor openFileHelper(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; - method @NonNull public android.os.ParcelFileDescriptor openPipeHelper(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable T, @NonNull android.content.ContentProvider.PipeDataWriter) throws java.io.FileNotFoundException; - method @Nullable public android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException; - method @Nullable public android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @Nullable public abstract android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String); - method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal); - method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); - method public boolean refresh(android.net.Uri, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); - method @NonNull public final android.content.Context requireContext(); - method public final void restoreCallingIdentity(@NonNull android.content.ContentProvider.CallingIdentity); - method protected final void setPathPermissions(@Nullable android.content.pm.PathPermission[]); - method protected final void setReadPermission(@Nullable String); - method protected final void setWritePermission(@Nullable String); - method public void shutdown(); - method @Nullable public android.net.Uri uncanonicalize(@NonNull android.net.Uri); - method public abstract int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]); - method public int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); - } - - public final class ContentProvider.CallingIdentity { - } - - public static interface ContentProvider.PipeDataWriter { - method public void writeDataToPipe(@NonNull android.os.ParcelFileDescriptor, @NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable T); - } - - public class ContentProviderClient implements java.lang.AutoCloseable { - method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull java.util.ArrayList) throws android.content.OperationApplicationException, android.os.RemoteException; - method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull String, @NonNull java.util.ArrayList) throws android.content.OperationApplicationException, android.os.RemoteException; - method public int bulkInsert(@NonNull android.net.Uri, @NonNull android.content.ContentValues[]) throws android.os.RemoteException; - method @Nullable public android.os.Bundle call(@NonNull String, @Nullable String, @Nullable android.os.Bundle) throws android.os.RemoteException; - method @Nullable public android.os.Bundle call(@NonNull String, @NonNull String, @Nullable String, @Nullable android.os.Bundle) throws android.os.RemoteException; - method @Nullable public final android.net.Uri canonicalize(@NonNull android.net.Uri) throws android.os.RemoteException; - method public void close(); - method public int delete(@NonNull android.net.Uri, @Nullable String, @Nullable String[]) throws android.os.RemoteException; - method public int delete(@NonNull android.net.Uri, @Nullable android.os.Bundle) throws android.os.RemoteException; - method @Nullable public android.content.ContentProvider getLocalContentProvider(); - method @Nullable public String[] getStreamTypes(@NonNull android.net.Uri, @NonNull String) throws android.os.RemoteException; - method @Nullable public String getType(@NonNull android.net.Uri) throws android.os.RemoteException; - method @Nullable public android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues) throws android.os.RemoteException; - method @Nullable public android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle) throws android.os.RemoteException; - method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException, android.os.RemoteException; - method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException, android.os.RemoteException; - method @Nullable public android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException, android.os.RemoteException; - method @Nullable public android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException, android.os.RemoteException; - method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException, android.os.RemoteException; - method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException, android.os.RemoteException; - method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException, android.os.RemoteException; - method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String) throws android.os.RemoteException; - method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal) throws android.os.RemoteException; - method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], android.os.Bundle, @Nullable android.os.CancellationSignal) throws android.os.RemoteException; - method public boolean refresh(android.net.Uri, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws android.os.RemoteException; - method @Deprecated public boolean release(); - method @Nullable public final android.net.Uri uncanonicalize(@NonNull android.net.Uri) throws android.os.RemoteException; - method public int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]) throws android.os.RemoteException; - method public int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle) throws android.os.RemoteException; - } - - public class ContentProviderOperation implements android.os.Parcelable { - method @NonNull public android.content.ContentProviderResult apply(@NonNull android.content.ContentProvider, @NonNull android.content.ContentProviderResult[], int) throws android.content.OperationApplicationException; - method public int describeContents(); - method @NonNull public android.net.Uri getUri(); - method public boolean isAssertQuery(); - method public boolean isCall(); - method public boolean isDelete(); - method public boolean isExceptionAllowed(); - method public boolean isInsert(); - method public boolean isReadOperation(); - method public boolean isUpdate(); - method public boolean isWriteOperation(); - method public boolean isYieldAllowed(); - method @NonNull public static android.content.ContentProviderOperation.Builder newAssertQuery(@NonNull android.net.Uri); - method @NonNull public static android.content.ContentProviderOperation.Builder newCall(@NonNull android.net.Uri, @Nullable String, @Nullable String); - method @NonNull public static android.content.ContentProviderOperation.Builder newDelete(@NonNull android.net.Uri); - method @NonNull public static android.content.ContentProviderOperation.Builder newInsert(@NonNull android.net.Uri); - method @NonNull public static android.content.ContentProviderOperation.Builder newUpdate(@NonNull android.net.Uri); - method @Nullable public android.os.Bundle resolveExtrasBackReferences(@NonNull android.content.ContentProviderResult[], int); - method @Nullable public String[] resolveSelectionArgsBackReferences(@NonNull android.content.ContentProviderResult[], int); - method @Nullable public android.content.ContentValues resolveValueBackReferences(@NonNull android.content.ContentProviderResult[], int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class ContentProviderOperation.Builder { - method @NonNull public android.content.ContentProviderOperation build(); - method @NonNull public android.content.ContentProviderOperation.Builder withExceptionAllowed(boolean); - method @NonNull public android.content.ContentProviderOperation.Builder withExpectedCount(int); - method @NonNull public android.content.ContentProviderOperation.Builder withExtra(@NonNull String, @Nullable Object); - method @NonNull public android.content.ContentProviderOperation.Builder withExtraBackReference(@NonNull String, int); - method @NonNull public android.content.ContentProviderOperation.Builder withExtraBackReference(@NonNull String, int, @NonNull String); - method @NonNull public android.content.ContentProviderOperation.Builder withExtras(@NonNull android.os.Bundle); - method @NonNull public android.content.ContentProviderOperation.Builder withSelection(@Nullable String, @Nullable String[]); - method @NonNull public android.content.ContentProviderOperation.Builder withSelectionBackReference(int, int); - method @NonNull public android.content.ContentProviderOperation.Builder withSelectionBackReference(int, int, @NonNull String); - method @NonNull public android.content.ContentProviderOperation.Builder withValue(@NonNull String, @Nullable Object); - method @NonNull public android.content.ContentProviderOperation.Builder withValueBackReference(@NonNull String, int); - method @NonNull public android.content.ContentProviderOperation.Builder withValueBackReference(@NonNull String, int, @NonNull String); - method @NonNull public android.content.ContentProviderOperation.Builder withValueBackReferences(@NonNull android.content.ContentValues); - method @NonNull public android.content.ContentProviderOperation.Builder withValues(@NonNull android.content.ContentValues); - method @NonNull public android.content.ContentProviderOperation.Builder withYieldAllowed(boolean); - } - - public class ContentProviderResult implements android.os.Parcelable { - ctor public ContentProviderResult(@NonNull android.net.Uri); - ctor public ContentProviderResult(int); - ctor public ContentProviderResult(@NonNull android.os.Bundle); - ctor public ContentProviderResult(@NonNull Throwable); - ctor public ContentProviderResult(android.os.Parcel); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @Nullable public final Integer count; - field @Nullable public final Throwable exception; - field @Nullable public final android.os.Bundle extras; - field @Nullable public final android.net.Uri uri; - } - - public class ContentQueryMap extends java.util.Observable { - ctor public ContentQueryMap(android.database.Cursor, String, boolean, android.os.Handler); - method public void close(); - method public java.util.Map getRows(); - method public android.content.ContentValues getValues(String); - method public void requery(); - method public void setKeepUpdated(boolean); - } - - public abstract class ContentResolver { - ctor public ContentResolver(@Nullable android.content.Context); - method @Nullable public final android.content.ContentProviderClient acquireContentProviderClient(@NonNull android.net.Uri); - method @Nullable public final android.content.ContentProviderClient acquireContentProviderClient(@NonNull String); - method @Nullable public final android.content.ContentProviderClient acquireUnstableContentProviderClient(@NonNull android.net.Uri); - method @Nullable public final android.content.ContentProviderClient acquireUnstableContentProviderClient(@NonNull String); - method public static void addPeriodicSync(android.accounts.Account, String, android.os.Bundle, long); - method public static Object addStatusChangeListener(int, android.content.SyncStatusObserver); - method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull String, @NonNull java.util.ArrayList) throws android.content.OperationApplicationException, android.os.RemoteException; - method public final int bulkInsert(@NonNull @RequiresPermission.Write android.net.Uri, @NonNull android.content.ContentValues[]); - method @Nullable public final android.os.Bundle call(@NonNull android.net.Uri, @NonNull String, @Nullable String, @Nullable android.os.Bundle); - method @Nullable public final android.os.Bundle call(@NonNull String, @NonNull String, @Nullable String, @Nullable android.os.Bundle); - method @Deprecated public void cancelSync(android.net.Uri); - method public static void cancelSync(android.accounts.Account, String); - method public static void cancelSync(android.content.SyncRequest); - method @Nullable public final android.net.Uri canonicalize(@NonNull android.net.Uri); - method public final int delete(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable String, @Nullable String[]); - method public final int delete(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.os.Bundle); - method @Deprecated public static android.content.SyncInfo getCurrentSync(); - method public static java.util.List getCurrentSyncs(); - method public static int getIsSyncable(android.accounts.Account, String); - method public static boolean getMasterSyncAutomatically(); - method @NonNull public java.util.List getOutgoingPersistedUriPermissions(); - method public static java.util.List getPeriodicSyncs(android.accounts.Account, String); - method @NonNull public java.util.List getPersistedUriPermissions(); - method @Nullable public String[] getStreamTypes(@NonNull android.net.Uri, @NonNull String); - method public static android.content.SyncAdapterType[] getSyncAdapterTypes(); - method public static boolean getSyncAutomatically(android.accounts.Account, String); - method @Nullable public final String getType(@NonNull android.net.Uri); - method @NonNull public final android.content.ContentResolver.MimeTypeInfo getTypeInfo(@NonNull String); - method @Nullable public final android.net.Uri insert(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues); - method @Nullable public final android.net.Uri insert(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); - method public static boolean isSyncActive(android.accounts.Account, String); - method public static boolean isSyncPending(android.accounts.Account, String); - method @NonNull public android.graphics.Bitmap loadThumbnail(@NonNull android.net.Uri, @NonNull android.util.Size, @Nullable android.os.CancellationSignal) throws java.io.IOException; - method public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver); - method @Deprecated public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver, boolean); - method public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver, int); - method public void notifyChange(@NonNull java.util.Collection, @Nullable android.database.ContentObserver, int); - method @Nullable public final android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @Nullable public final android.content.res.AssetFileDescriptor openAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; - method @Nullable public final android.content.res.AssetFileDescriptor openAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @Nullable public final android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @Nullable public final android.os.ParcelFileDescriptor openFileDescriptor(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; - method @Nullable public final android.os.ParcelFileDescriptor openFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @Nullable public final java.io.InputStream openInputStream(@NonNull android.net.Uri) throws java.io.FileNotFoundException; - method @Nullable public final java.io.OutputStream openOutputStream(@NonNull android.net.Uri) throws java.io.FileNotFoundException; - method @Nullable public final java.io.OutputStream openOutputStream(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; - method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException; - method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method @Nullable public final android.database.Cursor query(@NonNull @RequiresPermission.Read android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String); - method @Nullable public final android.database.Cursor query(@NonNull @RequiresPermission.Read android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal); - method @Nullable public final android.database.Cursor query(@NonNull @RequiresPermission.Read android.net.Uri, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); - method public final boolean refresh(@NonNull android.net.Uri, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); - method public final void registerContentObserver(@NonNull android.net.Uri, boolean, @NonNull android.database.ContentObserver); - method public void releasePersistableUriPermission(@NonNull android.net.Uri, int); - method public static void removePeriodicSync(android.accounts.Account, String, android.os.Bundle); - method public static void removeStatusChangeListener(Object); - method public static void requestSync(android.accounts.Account, String, android.os.Bundle); - method public static void requestSync(android.content.SyncRequest); - method public static void setIsSyncable(android.accounts.Account, String, int); - method public static void setMasterSyncAutomatically(boolean); - method public static void setSyncAutomatically(android.accounts.Account, String, boolean); - method @Deprecated public void startSync(android.net.Uri, android.os.Bundle); - method public void takePersistableUriPermission(@NonNull android.net.Uri, int); - method @Nullable public final android.net.Uri uncanonicalize(@NonNull android.net.Uri); - method public final void unregisterContentObserver(@NonNull android.database.ContentObserver); - method public final int update(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]); - method public final int update(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); - method public static void validateSyncExtrasBundle(android.os.Bundle); - method @NonNull public static android.content.ContentResolver wrap(@NonNull android.content.ContentProvider); - method @NonNull public static android.content.ContentResolver wrap(@NonNull android.content.ContentProviderClient); - field public static final String ANY_CURSOR_ITEM_TYPE = "vnd.android.cursor.item/*"; - field public static final String CURSOR_DIR_BASE_TYPE = "vnd.android.cursor.dir"; - field public static final String CURSOR_ITEM_BASE_TYPE = "vnd.android.cursor.item"; - field public static final String EXTRA_HONORED_ARGS = "android.content.extra.HONORED_ARGS"; - field public static final String EXTRA_REFRESH_SUPPORTED = "android.content.extra.REFRESH_SUPPORTED"; - field public static final String EXTRA_SIZE = "android.content.extra.SIZE"; - field public static final String EXTRA_TOTAL_COUNT = "android.content.extra.TOTAL_COUNT"; - field public static final int NOTIFY_DELETE = 16; // 0x10 - field public static final int NOTIFY_INSERT = 4; // 0x4 - field public static final int NOTIFY_SKIP_NOTIFY_FOR_DESCENDANTS = 2; // 0x2 - field public static final int NOTIFY_SYNC_TO_NETWORK = 1; // 0x1 - field public static final int NOTIFY_UPDATE = 8; // 0x8 - field public static final String QUERY_ARG_GROUP_COLUMNS = "android:query-arg-group-columns"; - field public static final String QUERY_ARG_LIMIT = "android:query-arg-limit"; - field public static final String QUERY_ARG_OFFSET = "android:query-arg-offset"; - field public static final String QUERY_ARG_SORT_COLLATION = "android:query-arg-sort-collation"; - field public static final String QUERY_ARG_SORT_COLUMNS = "android:query-arg-sort-columns"; - field public static final String QUERY_ARG_SORT_DIRECTION = "android:query-arg-sort-direction"; - field public static final String QUERY_ARG_SORT_LOCALE = "android:query-arg-sort-locale"; - field public static final String QUERY_ARG_SQL_GROUP_BY = "android:query-arg-sql-group-by"; - field public static final String QUERY_ARG_SQL_HAVING = "android:query-arg-sql-having"; - field public static final String QUERY_ARG_SQL_LIMIT = "android:query-arg-sql-limit"; - field public static final String QUERY_ARG_SQL_SELECTION = "android:query-arg-sql-selection"; - field public static final String QUERY_ARG_SQL_SELECTION_ARGS = "android:query-arg-sql-selection-args"; - field public static final String QUERY_ARG_SQL_SORT_ORDER = "android:query-arg-sql-sort-order"; - field public static final int QUERY_SORT_DIRECTION_ASCENDING = 0; // 0x0 - field public static final int QUERY_SORT_DIRECTION_DESCENDING = 1; // 0x1 - field public static final String SCHEME_ANDROID_RESOURCE = "android.resource"; - field public static final String SCHEME_CONTENT = "content"; - field public static final String SCHEME_FILE = "file"; - field @Deprecated public static final String SYNC_EXTRAS_ACCOUNT = "account"; - field public static final String SYNC_EXTRAS_DISCARD_LOCAL_DELETIONS = "discard_deletions"; - field public static final String SYNC_EXTRAS_DO_NOT_RETRY = "do_not_retry"; - field public static final String SYNC_EXTRAS_EXPEDITED = "expedited"; - field @Deprecated public static final String SYNC_EXTRAS_FORCE = "force"; - field public static final String SYNC_EXTRAS_IGNORE_BACKOFF = "ignore_backoff"; - field public static final String SYNC_EXTRAS_IGNORE_SETTINGS = "ignore_settings"; - field public static final String SYNC_EXTRAS_INITIALIZE = "initialize"; - field public static final String SYNC_EXTRAS_MANUAL = "force"; - field public static final String SYNC_EXTRAS_OVERRIDE_TOO_MANY_DELETIONS = "deletions_override"; - field public static final String SYNC_EXTRAS_REQUIRE_CHARGING = "require_charging"; - field public static final String SYNC_EXTRAS_SCHEDULE_AS_EXPEDITED_JOB = "schedule_as_expedited_job"; - field public static final String SYNC_EXTRAS_UPLOAD = "upload"; - field public static final int SYNC_OBSERVER_TYPE_ACTIVE = 4; // 0x4 - field public static final int SYNC_OBSERVER_TYPE_PENDING = 2; // 0x2 - field public static final int SYNC_OBSERVER_TYPE_SETTINGS = 1; // 0x1 - } - - public static final class ContentResolver.MimeTypeInfo { - method @NonNull public CharSequence getContentDescription(); - method @NonNull public android.graphics.drawable.Icon getIcon(); - method @NonNull public CharSequence getLabel(); - } - - public class ContentUris { - ctor public ContentUris(); - method @NonNull public static android.net.Uri.Builder appendId(@NonNull android.net.Uri.Builder, long); - method public static long parseId(@NonNull android.net.Uri); - method @NonNull public static android.net.Uri removeId(@NonNull android.net.Uri); - method @NonNull public static android.net.Uri withAppendedId(@NonNull android.net.Uri, long); - } - - public final class ContentValues implements android.os.Parcelable { - ctor public ContentValues(); - ctor public ContentValues(int); - ctor public ContentValues(android.content.ContentValues); - method public void clear(); - method public boolean containsKey(String); - method public int describeContents(); - method public Object get(String); - method public Boolean getAsBoolean(String); - method public Byte getAsByte(String); - method public byte[] getAsByteArray(String); - method public Double getAsDouble(String); - method public Float getAsFloat(String); - method public Integer getAsInteger(String); - method public Long getAsLong(String); - method public Short getAsShort(String); - method public String getAsString(String); - method public boolean isEmpty(); - method public java.util.Set keySet(); - method public void put(String, String); - method public void put(String, Byte); - method public void put(String, Short); - method public void put(String, Integer); - method public void put(String, Long); - method public void put(String, Float); - method public void put(String, Double); - method public void put(String, Boolean); - method public void put(String, byte[]); - method public void putAll(android.content.ContentValues); - method public void putNull(String); - method public void remove(String); - method public int size(); - method public java.util.Set> valueSet(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String TAG = "ContentValues"; - } - - public abstract class Context { - ctor public Context(); - method public boolean bindIsolatedService(@NonNull @RequiresPermission android.content.Intent, int, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); - method public boolean bindIsolatedService(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.Context.BindServiceFlags, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); - method public abstract boolean bindService(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, int); - method public boolean bindService(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, @NonNull android.content.Context.BindServiceFlags); - method public boolean bindService(@NonNull @RequiresPermission android.content.Intent, int, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); - method public boolean bindService(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.Context.BindServiceFlags, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); - method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL", android.Manifest.permission.INTERACT_ACROSS_PROFILES}, conditional=true) public boolean bindServiceAsUser(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, int, @NonNull android.os.UserHandle); - method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL", android.Manifest.permission.INTERACT_ACROSS_PROFILES}, conditional=true) public boolean bindServiceAsUser(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, @NonNull android.content.Context.BindServiceFlags, @NonNull android.os.UserHandle); - method @CheckResult(suggest="#enforceCallingOrSelfPermission(String,String)") public abstract int checkCallingOrSelfPermission(@NonNull String); - method @CheckResult(suggest="#enforceCallingOrSelfUriPermission(Uri,int,String)") public abstract int checkCallingOrSelfUriPermission(android.net.Uri, int); - method @NonNull public int[] checkCallingOrSelfUriPermissions(@NonNull java.util.List, int); - method @CheckResult(suggest="#enforceCallingPermission(String,String)") public abstract int checkCallingPermission(@NonNull String); - method @CheckResult(suggest="#enforceCallingUriPermission(Uri,int,String)") public abstract int checkCallingUriPermission(android.net.Uri, int); - method @NonNull public int[] checkCallingUriPermissions(@NonNull java.util.List, int); - method @FlaggedApi("android.security.content_uri_permission_apis") public int checkContentUriPermissionFull(@NonNull android.net.Uri, int, int, int); - method @CheckResult(suggest="#enforcePermission(String,int,int,String)") public abstract int checkPermission(@NonNull String, int, int); - method public abstract int checkSelfPermission(@NonNull String); - method @CheckResult(suggest="#enforceUriPermission(Uri,int,int,String)") public abstract int checkUriPermission(android.net.Uri, int, int, int); - method @CheckResult(suggest="#enforceUriPermission(Uri,String,String,int,int,int,String)") public abstract int checkUriPermission(@Nullable android.net.Uri, @Nullable String, @Nullable String, int, int, int); - method @NonNull public int[] checkUriPermissions(@NonNull java.util.List, int, int, int); - method @Deprecated public abstract void clearWallpaper() throws java.io.IOException; - method @NonNull public android.content.Context createAttributionContext(@Nullable String); - method public abstract android.content.Context createConfigurationContext(@NonNull android.content.res.Configuration); - method @NonNull public android.content.Context createContext(@NonNull android.content.ContextParams); - method public abstract android.content.Context createContextForSplit(String) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.Context createDeviceContext(int); - method public abstract android.content.Context createDeviceProtectedStorageContext(); - method @DisplayContext public abstract android.content.Context createDisplayContext(@NonNull android.view.Display); - method public abstract android.content.Context createPackageContext(String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull @UiContext public android.content.Context createWindowContext(int, @Nullable android.os.Bundle); - method @NonNull @UiContext public android.content.Context createWindowContext(@NonNull android.view.Display, int, @Nullable android.os.Bundle); - method public abstract String[] databaseList(); - method public abstract boolean deleteDatabase(String); - method public abstract boolean deleteFile(String); - method public abstract boolean deleteSharedPreferences(String); - method public abstract void enforceCallingOrSelfPermission(@NonNull String, @Nullable String); - method public abstract void enforceCallingOrSelfUriPermission(android.net.Uri, int, String); - method public abstract void enforceCallingPermission(@NonNull String, @Nullable String); - method public abstract void enforceCallingUriPermission(android.net.Uri, int, String); - method public abstract void enforcePermission(@NonNull String, int, int, @Nullable String); - method public abstract void enforceUriPermission(android.net.Uri, int, int, int, String); - method public abstract void enforceUriPermission(@Nullable android.net.Uri, @Nullable String, @Nullable String, int, int, int, @Nullable String); - method public abstract String[] fileList(); - method public abstract android.content.Context getApplicationContext(); - method public abstract android.content.pm.ApplicationInfo getApplicationInfo(); - method public abstract android.content.res.AssetManager getAssets(); - method @NonNull public android.content.AttributionSource getAttributionSource(); - method @Nullable public String getAttributionTag(); - method public abstract java.io.File getCacheDir(); - method public abstract ClassLoader getClassLoader(); - method public abstract java.io.File getCodeCacheDir(); - method @ColorInt public final int getColor(@ColorRes int); - method @NonNull public final android.content.res.ColorStateList getColorStateList(@ColorRes int); - method public abstract android.content.ContentResolver getContentResolver(); - method public abstract java.io.File getDataDir(); - method public abstract java.io.File getDatabasePath(String); - method public int getDeviceId(); - method public abstract java.io.File getDir(String, int); - method @NonNull public android.view.Display getDisplay(); - method @Nullable public final android.graphics.drawable.Drawable getDrawable(@DrawableRes int); - method @Nullable public abstract java.io.File getExternalCacheDir(); - method public abstract java.io.File[] getExternalCacheDirs(); - method @Nullable public abstract java.io.File getExternalFilesDir(@Nullable String); - method public abstract java.io.File[] getExternalFilesDirs(String); - method @Deprecated public abstract java.io.File[] getExternalMediaDirs(); - method public abstract java.io.File getFileStreamPath(String); - method public abstract java.io.File getFilesDir(); - method public java.util.concurrent.Executor getMainExecutor(); - method public abstract android.os.Looper getMainLooper(); - method public abstract java.io.File getNoBackupFilesDir(); - method public abstract java.io.File getObbDir(); - method public abstract java.io.File[] getObbDirs(); - method @NonNull public String getOpPackageName(); - method public abstract String getPackageCodePath(); - method public abstract android.content.pm.PackageManager getPackageManager(); - method public abstract String getPackageName(); - method public abstract String getPackageResourcePath(); - method @Nullable public android.content.ContextParams getParams(); - method public abstract android.content.res.Resources getResources(); - method public abstract android.content.SharedPreferences getSharedPreferences(String, int); - method @NonNull public final String getString(@StringRes int); - method @NonNull public final String getString(@StringRes int, java.lang.Object...); - method public abstract Object getSystemService(@NonNull String); - method public final T getSystemService(@NonNull Class); - method @Nullable public abstract String getSystemServiceName(@NonNull Class); - method @NonNull public final CharSequence getText(@StringRes int); - method public abstract android.content.res.Resources.Theme getTheme(); - method @Deprecated public abstract android.graphics.drawable.Drawable getWallpaper(); - method @Deprecated public abstract int getWallpaperDesiredMinimumHeight(); - method @Deprecated public abstract int getWallpaperDesiredMinimumWidth(); - method public abstract void grantUriPermission(String, android.net.Uri, int); - method public abstract boolean isDeviceProtectedStorage(); - method public boolean isRestricted(); - method public boolean isUiContext(); - method public abstract boolean moveDatabaseFrom(android.content.Context, String); - method public abstract boolean moveSharedPreferencesFrom(android.content.Context, String); - method @NonNull public final android.content.res.TypedArray obtainStyledAttributes(@NonNull @StyleableRes int[]); - method @NonNull public final android.content.res.TypedArray obtainStyledAttributes(@StyleRes int, @NonNull @StyleableRes int[]) throws android.content.res.Resources.NotFoundException; - method @NonNull public final android.content.res.TypedArray obtainStyledAttributes(@Nullable android.util.AttributeSet, @NonNull @StyleableRes int[]); - method @NonNull public final android.content.res.TypedArray obtainStyledAttributes(@Nullable android.util.AttributeSet, @NonNull @StyleableRes int[], @AttrRes int, @StyleRes int); - method public abstract java.io.FileInputStream openFileInput(String) throws java.io.FileNotFoundException; - method public abstract java.io.FileOutputStream openFileOutput(String, int) throws java.io.FileNotFoundException; - method public abstract android.database.sqlite.SQLiteDatabase openOrCreateDatabase(String, int, android.database.sqlite.SQLiteDatabase.CursorFactory); - method public abstract android.database.sqlite.SQLiteDatabase openOrCreateDatabase(String, int, android.database.sqlite.SQLiteDatabase.CursorFactory, @Nullable android.database.DatabaseErrorHandler); - method @Deprecated public abstract android.graphics.drawable.Drawable peekWallpaper(); - method public void registerComponentCallbacks(android.content.ComponentCallbacks); - method public void registerDeviceIdChangeListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer); - method @Nullable public abstract android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter); - method @Nullable public abstract android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter, int); - method @Nullable public abstract android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler); - method @Nullable public abstract android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler, int); - method @Deprecated @RequiresPermission(android.Manifest.permission.BROADCAST_STICKY) public abstract void removeStickyBroadcast(@RequiresPermission android.content.Intent); - method @Deprecated @RequiresPermission(allOf={"android.permission.INTERACT_ACROSS_USERS", android.Manifest.permission.BROADCAST_STICKY}) public abstract void removeStickyBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle); - method public void revokeSelfPermissionOnKill(@NonNull String); - method public void revokeSelfPermissionsOnKill(@NonNull java.util.Collection); - method public abstract void revokeUriPermission(android.net.Uri, int); - method public abstract void revokeUriPermission(String, android.net.Uri, int); - method public abstract void sendBroadcast(@RequiresPermission android.content.Intent); - method public abstract void sendBroadcast(@RequiresPermission android.content.Intent, @Nullable String); - method public void sendBroadcast(@NonNull android.content.Intent, @Nullable String, @Nullable android.os.Bundle); - method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public abstract void sendBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle); - method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public abstract void sendBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, @Nullable String); - method public void sendBroadcastWithMultiplePermissions(@NonNull android.content.Intent, @NonNull String[]); - method public abstract void sendOrderedBroadcast(@RequiresPermission android.content.Intent, @Nullable String); - method public void sendOrderedBroadcast(@NonNull android.content.Intent, @Nullable String, @Nullable android.os.Bundle); - method public abstract void sendOrderedBroadcast(@NonNull @RequiresPermission android.content.Intent, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method public 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); - method public void sendOrderedBroadcast(@NonNull android.content.Intent, @Nullable String, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public abstract void sendOrderedBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, @Nullable String, android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method @Deprecated @RequiresPermission(android.Manifest.permission.BROADCAST_STICKY) public abstract void sendStickyBroadcast(@RequiresPermission android.content.Intent); - method @Deprecated @RequiresPermission(android.Manifest.permission.BROADCAST_STICKY) public void sendStickyBroadcast(@NonNull @RequiresPermission android.content.Intent, @Nullable android.os.Bundle); - method @Deprecated @RequiresPermission(allOf={"android.permission.INTERACT_ACROSS_USERS", android.Manifest.permission.BROADCAST_STICKY}) public abstract void sendStickyBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle); - method @Deprecated @RequiresPermission(android.Manifest.permission.BROADCAST_STICKY) public abstract void sendStickyOrderedBroadcast(@RequiresPermission android.content.Intent, android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method @Deprecated @RequiresPermission(allOf={"android.permission.INTERACT_ACROSS_USERS", android.Manifest.permission.BROADCAST_STICKY}) public abstract void sendStickyOrderedBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method public abstract void setTheme(@StyleRes int); - method @Deprecated public abstract void setWallpaper(android.graphics.Bitmap) throws java.io.IOException; - method @Deprecated public abstract void setWallpaper(java.io.InputStream) throws java.io.IOException; - method public abstract void startActivities(@RequiresPermission android.content.Intent[]); - method public abstract void startActivities(@RequiresPermission android.content.Intent[], android.os.Bundle); - method public abstract void startActivity(@RequiresPermission android.content.Intent); - method public abstract void startActivity(@RequiresPermission android.content.Intent, @Nullable android.os.Bundle); - method @Nullable public abstract android.content.ComponentName startForegroundService(android.content.Intent); - method public abstract boolean startInstrumentation(@NonNull android.content.ComponentName, @Nullable String, @Nullable android.os.Bundle); - method public abstract void startIntentSender(android.content.IntentSender, @Nullable android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; - method public abstract void startIntentSender(android.content.IntentSender, @Nullable android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; - method @Nullable public abstract android.content.ComponentName startService(android.content.Intent); - method public abstract boolean stopService(android.content.Intent); - method public abstract void unbindService(@NonNull android.content.ServiceConnection); - method public void unregisterComponentCallbacks(android.content.ComponentCallbacks); - method public void unregisterDeviceIdChangeListener(@NonNull java.util.function.IntConsumer); - method public abstract void unregisterReceiver(android.content.BroadcastReceiver); - method public void updateServiceGroup(@NonNull android.content.ServiceConnection, int, int); - field public static final String ACCESSIBILITY_SERVICE = "accessibility"; - field public static final String ACCOUNT_SERVICE = "account"; - field public static final String ACTIVITY_SERVICE = "activity"; - field @FlaggedApi("android.security.aapm_api") public static final String ADVANCED_PROTECTION_SERVICE = "advanced_protection"; - field public static final String ALARM_SERVICE = "alarm"; - field public static final String APPWIDGET_SERVICE = "appwidget"; - field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String APP_FUNCTION_SERVICE = "app_function"; - field public static final String APP_OPS_SERVICE = "appops"; - field public static final String APP_SEARCH_SERVICE = "app_search"; - field public static final String AUDIO_SERVICE = "audio"; - field public static final String BATTERY_SERVICE = "batterymanager"; - field public static final int BIND_ABOVE_CLIENT = 8; // 0x8 - field public static final int BIND_ADJUST_WITH_ACTIVITY = 128; // 0x80 - field public static final int BIND_ALLOW_ACTIVITY_STARTS = 512; // 0x200 - field public static final int BIND_ALLOW_OOM_MANAGEMENT = 16; // 0x10 - field public static final int BIND_AUTO_CREATE = 1; // 0x1 - field public static final int BIND_DEBUG_UNBIND = 2; // 0x2 - field public static final int BIND_EXTERNAL_SERVICE = -2147483648; // 0x80000000 - field public static final long BIND_EXTERNAL_SERVICE_LONG = 4611686018427387904L; // 0x4000000000000000L - field public static final int BIND_IMPORTANT = 64; // 0x40 - field public static final int BIND_INCLUDE_CAPABILITIES = 4096; // 0x1000 - field public static final int BIND_NOT_FOREGROUND = 4; // 0x4 - field public static final int BIND_NOT_PERCEPTIBLE = 256; // 0x100 - field @FlaggedApi("android.content.flags.enable_bind_package_isolated_process") public static final int BIND_PACKAGE_ISOLATED_PROCESS = 16384; // 0x4000 - field public static final int BIND_SHARED_ISOLATED_PROCESS = 8192; // 0x2000 - field public static final int BIND_WAIVE_PRIORITY = 32; // 0x20 - field public static final String BIOMETRIC_SERVICE = "biometric"; - field public static final String BLOB_STORE_SERVICE = "blob_store"; - field public static final String BLUETOOTH_SERVICE = "bluetooth"; - field public static final String BUGREPORT_SERVICE = "bugreport"; - field public static final String CAMERA_SERVICE = "camera"; - field public static final String CAPTIONING_SERVICE = "captioning"; - field public static final String CARRIER_CONFIG_SERVICE = "carrier_config"; - field public static final String CLIPBOARD_SERVICE = "clipboard"; - field public static final String COMPANION_DEVICE_SERVICE = "companiondevice"; - field public static final String CONNECTIVITY_DIAGNOSTICS_SERVICE = "connectivity_diagnostics"; - field public static final String CONNECTIVITY_SERVICE = "connectivity"; - field public static final String CONSUMER_IR_SERVICE = "consumer_ir"; - field @FlaggedApi("android.provider.user_keys") public static final String CONTACT_KEYS_SERVICE = "contact_keys"; - field public static final int CONTEXT_IGNORE_SECURITY = 2; // 0x2 - field public static final int CONTEXT_INCLUDE_CODE = 1; // 0x1 - field public static final int CONTEXT_RESTRICTED = 4; // 0x4 - field public static final String CREDENTIAL_SERVICE = "credential"; - field public static final String CROSS_PROFILE_APPS_SERVICE = "crossprofileapps"; - field public static final int DEVICE_ID_DEFAULT = 0; // 0x0 - field public static final int DEVICE_ID_INVALID = -1; // 0xffffffff - field public static final String DEVICE_LOCK_SERVICE = "device_lock"; - field public static final String DEVICE_POLICY_SERVICE = "device_policy"; - field public static final String DISPLAY_HASH_SERVICE = "display_hash"; - field public static final String DISPLAY_SERVICE = "display"; - field public static final String DOMAIN_VERIFICATION_SERVICE = "domain_verification"; - field public static final String DOWNLOAD_SERVICE = "download"; - field public static final String DROPBOX_SERVICE = "dropbox"; - field public static final String EUICC_SERVICE = "euicc"; - field public static final String FILE_INTEGRITY_SERVICE = "file_integrity"; - field public static final String FINGERPRINT_SERVICE = "fingerprint"; - field public static final String GAME_SERVICE = "game"; - field public static final String GRAMMATICAL_INFLECTION_SERVICE = "grammatical_inflection"; - field public static final String HARDWARE_PROPERTIES_SERVICE = "hardware_properties"; - field public static final String HEALTHCONNECT_SERVICE = "healthconnect"; - field public static final String INPUT_METHOD_SERVICE = "input_method"; - field public static final String INPUT_SERVICE = "input"; - field public static final String IPSEC_SERVICE = "ipsec"; - field public static final String JOB_SCHEDULER_SERVICE = "jobscheduler"; - field public static final String KEYGUARD_SERVICE = "keyguard"; - field @FlaggedApi("android.security.keystore_grant_api") public static final String KEYSTORE_SERVICE = "keystore"; - field public static final String LAUNCHER_APPS_SERVICE = "launcherapps"; - field @UiContext public static final String LAYOUT_INFLATER_SERVICE = "layout_inflater"; - field public static final String LOCALE_SERVICE = "locale"; - field public static final String LOCATION_SERVICE = "location"; - field public static final String MEDIA_COMMUNICATION_SERVICE = "media_communication"; - field public static final String MEDIA_METRICS_SERVICE = "media_metrics"; - field public static final String MEDIA_PROJECTION_SERVICE = "media_projection"; - field @FlaggedApi("android.media.tv.flags.media_quality_fw") public static final String MEDIA_QUALITY_SERVICE = "media_quality"; - field public static final String MEDIA_ROUTER_SERVICE = "media_router"; - field public static final String MEDIA_SESSION_SERVICE = "media_session"; - field public static final String MIDI_SERVICE = "midi"; - field public static final int MODE_APPEND = 32768; // 0x8000 - field public static final int MODE_ENABLE_WRITE_AHEAD_LOGGING = 8; // 0x8 - field @Deprecated public static final int MODE_MULTI_PROCESS = 4; // 0x4 - field public static final int MODE_NO_LOCALIZED_COLLATORS = 16; // 0x10 - field public static final int MODE_PRIVATE = 0; // 0x0 - field @Deprecated public static final int MODE_WORLD_READABLE = 1; // 0x1 - field @Deprecated public static final int MODE_WORLD_WRITEABLE = 2; // 0x2 - field public static final String NETWORK_STATS_SERVICE = "netstats"; - field public static final String NFC_SERVICE = "nfc"; - field public static final String NOTIFICATION_SERVICE = "notification"; - field public static final String NSD_SERVICE = "servicediscovery"; - field public static final String OVERLAY_SERVICE = "overlay"; - field public static final String PEOPLE_SERVICE = "people"; - field public static final String PERFORMANCE_HINT_SERVICE = "performance_hint"; - field @FlaggedApi("android.security.frp_enforcement") public static final String PERSISTENT_DATA_BLOCK_SERVICE = "persistent_data_block"; - field public static final String POWER_SERVICE = "power"; - field public static final String PRINT_SERVICE = "print"; - field @FlaggedApi("android.os.telemetry_apis_framework_initialization") public static final String PROFILING_SERVICE = "profiling"; - field public static final int RECEIVER_EXPORTED = 2; // 0x2 - field public static final int RECEIVER_NOT_EXPORTED = 4; // 0x4 - field public static final int RECEIVER_VISIBLE_TO_INSTANT_APPS = 1; // 0x1 - field public static final String RESTRICTIONS_SERVICE = "restrictions"; - field public static final String ROLE_SERVICE = "role"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") public static final String SATELLITE_SERVICE = "satellite"; - field public static final String SEARCH_SERVICE = "search"; - field @FlaggedApi("android.os.security_state_service") public static final String SECURITY_STATE_SERVICE = "security_state"; - field public static final String SENSOR_SERVICE = "sensor"; - field public static final String SHORTCUT_SERVICE = "shortcut"; - field public static final String STATUS_BAR_SERVICE = "statusbar"; - field public static final String STORAGE_SERVICE = "storage"; - field public static final String STORAGE_STATS_SERVICE = "storagestats"; - field public static final String SYSTEM_HEALTH_SERVICE = "systemhealth"; - field public static final String TELECOM_SERVICE = "telecom"; - field public static final String TELEPHONY_IMS_SERVICE = "telephony_ims"; - field public static final String TELEPHONY_SERVICE = "phone"; - field public static final String TELEPHONY_SUBSCRIPTION_SERVICE = "telephony_subscription_service"; - field public static final String TEXT_CLASSIFICATION_SERVICE = "textclassification"; - field public static final String TEXT_SERVICES_MANAGER_SERVICE = "textservices"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String TV_AD_SERVICE = "tv_ad"; - field public static final String TV_INPUT_SERVICE = "tv_input"; - field public static final String TV_INTERACTIVE_APP_SERVICE = "tv_interactive_app"; - field public static final String UI_MODE_SERVICE = "uimode"; - field public static final String USAGE_STATS_SERVICE = "usagestats"; - field public static final String USB_SERVICE = "usb"; - field public static final String USER_SERVICE = "user"; - field public static final String VIBRATOR_MANAGER_SERVICE = "vibrator_manager"; - field @Deprecated public static final String VIBRATOR_SERVICE = "vibrator"; - field public static final String VIRTUAL_DEVICE_SERVICE = "virtualdevice"; - field public static final String VPN_MANAGEMENT_SERVICE = "vpn_management"; - field @UiContext public static final String WALLPAPER_SERVICE = "wallpaper"; - field public static final String WIFI_AWARE_SERVICE = "wifiaware"; - field public static final String WIFI_P2P_SERVICE = "wifip2p"; - field public static final String WIFI_RTT_RANGING_SERVICE = "wifirtt"; - field public static final String WIFI_SERVICE = "wifi"; - field @UiContext public static final String WINDOW_SERVICE = "window"; - } - - public static final class Context.BindServiceFlags { - method @NonNull public static android.content.Context.BindServiceFlags of(long); - } - - public final class ContextParams { - method @Nullable public String getAttributionTag(); - method @Nullable public android.content.AttributionSource getNextAttributionSource(); - method @FlaggedApi("android.permission.flags.should_register_attribution_source") @NonNull public boolean shouldRegisterAttributionSource(); - } - - public static final class ContextParams.Builder { - ctor public ContextParams.Builder(); - ctor public ContextParams.Builder(@NonNull android.content.ContextParams); - method @NonNull public android.content.ContextParams build(); - method @NonNull public android.content.ContextParams.Builder setAttributionTag(@Nullable String); - method @NonNull public android.content.ContextParams.Builder setNextAttributionSource(@Nullable android.content.AttributionSource); - method @FlaggedApi("android.permission.flags.should_register_attribution_source") @NonNull public android.content.ContextParams.Builder setShouldRegisterAttributionSource(boolean); - } - - public class ContextWrapper extends android.content.Context { - ctor public ContextWrapper(android.content.Context); - method protected void attachBaseContext(android.content.Context); - method public boolean bindService(android.content.Intent, android.content.ServiceConnection, int); - method public int checkCallingOrSelfPermission(String); - method public int checkCallingOrSelfUriPermission(android.net.Uri, int); - method public int checkCallingPermission(String); - method public int checkCallingUriPermission(android.net.Uri, int); - method public int checkPermission(String, int, int); - method public int checkSelfPermission(String); - method public int checkUriPermission(android.net.Uri, int, int, int); - method public int checkUriPermission(@Nullable android.net.Uri, @Nullable String, @Nullable String, int, int, int); - method @Deprecated public void clearWallpaper() throws java.io.IOException; - method public android.content.Context createConfigurationContext(android.content.res.Configuration); - method public android.content.Context createContextForSplit(String) throws android.content.pm.PackageManager.NameNotFoundException; - method public android.content.Context createDeviceProtectedStorageContext(); - method public android.content.Context createDisplayContext(android.view.Display); - method public android.content.Context createPackageContext(String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method public String[] databaseList(); - method public boolean deleteDatabase(String); - method public boolean deleteFile(String); - method public boolean deleteSharedPreferences(String); - method public void enforceCallingOrSelfPermission(String, @Nullable String); - method public void enforceCallingOrSelfUriPermission(android.net.Uri, int, String); - method public void enforceCallingPermission(String, @Nullable String); - method public void enforceCallingUriPermission(android.net.Uri, int, String); - method public void enforcePermission(String, int, int, @Nullable String); - method public void enforceUriPermission(android.net.Uri, int, int, int, String); - method public void enforceUriPermission(@Nullable android.net.Uri, @Nullable String, @Nullable String, int, int, int, @Nullable String); - method public String[] fileList(); - method public android.content.Context getApplicationContext(); - method public android.content.pm.ApplicationInfo getApplicationInfo(); - method public android.content.res.AssetManager getAssets(); - method public android.content.Context getBaseContext(); - method public java.io.File getCacheDir(); - method public ClassLoader getClassLoader(); - method public java.io.File getCodeCacheDir(); - method public android.content.ContentResolver getContentResolver(); - method public java.io.File getDataDir(); - method public java.io.File getDatabasePath(String); - method public java.io.File getDir(String, int); - method @Nullable public java.io.File getExternalCacheDir(); - method public java.io.File[] getExternalCacheDirs(); - method @Nullable public java.io.File getExternalFilesDir(@Nullable String); - method public java.io.File[] getExternalFilesDirs(String); - method public java.io.File[] getExternalMediaDirs(); - method public java.io.File getFileStreamPath(String); - method public java.io.File getFilesDir(); - method public android.os.Looper getMainLooper(); - method public java.io.File getNoBackupFilesDir(); - method public java.io.File getObbDir(); - method public java.io.File[] getObbDirs(); - method public String getPackageCodePath(); - method public android.content.pm.PackageManager getPackageManager(); - method public String getPackageName(); - method public String getPackageResourcePath(); - method public android.content.res.Resources getResources(); - method public android.content.SharedPreferences getSharedPreferences(String, int); - method public Object getSystemService(String); - method public String getSystemServiceName(Class); - method public android.content.res.Resources.Theme getTheme(); - method @Deprecated public android.graphics.drawable.Drawable getWallpaper(); - method @Deprecated public int getWallpaperDesiredMinimumHeight(); - method @Deprecated public int getWallpaperDesiredMinimumWidth(); - method public void grantUriPermission(String, android.net.Uri, int); - method public boolean isDeviceProtectedStorage(); - method public boolean moveDatabaseFrom(android.content.Context, String); - method public boolean moveSharedPreferencesFrom(android.content.Context, String); - method public java.io.FileInputStream openFileInput(String) throws java.io.FileNotFoundException; - method public java.io.FileOutputStream openFileOutput(String, int) throws java.io.FileNotFoundException; - method public android.database.sqlite.SQLiteDatabase openOrCreateDatabase(String, int, android.database.sqlite.SQLiteDatabase.CursorFactory); - method public android.database.sqlite.SQLiteDatabase openOrCreateDatabase(String, int, android.database.sqlite.SQLiteDatabase.CursorFactory, @Nullable android.database.DatabaseErrorHandler); - method @Deprecated public android.graphics.drawable.Drawable peekWallpaper(); - method public android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter); - method public android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter, int); - method public android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler); - method public android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler, int); - method @Deprecated public void removeStickyBroadcast(android.content.Intent); - method @Deprecated public void removeStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle); - method public void revokeUriPermission(android.net.Uri, int); - method public void revokeUriPermission(String, android.net.Uri, int); - method public void sendBroadcast(android.content.Intent); - method public void sendBroadcast(android.content.Intent, @Nullable String); - method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle); - method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, String); - method public void sendOrderedBroadcast(android.content.Intent, @Nullable String); - method public void sendOrderedBroadcast(android.content.Intent, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method public void sendOrderedBroadcast(@NonNull @RequiresPermission android.content.Intent, int, @Nullable String, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, @Nullable String, @Nullable android.os.Bundle, @Nullable android.os.Bundle); - method public void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method @Deprecated public void sendStickyBroadcast(android.content.Intent); - method @Deprecated public void sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle); - method @Deprecated public void sendStickyOrderedBroadcast(android.content.Intent, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method @Deprecated public void sendStickyOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); - method public void setTheme(int); - method @Deprecated public void setWallpaper(android.graphics.Bitmap) throws java.io.IOException; - method @Deprecated public void setWallpaper(java.io.InputStream) throws java.io.IOException; - method public void startActivities(android.content.Intent[]); - method public void startActivities(android.content.Intent[], @Nullable android.os.Bundle); - method public void startActivity(android.content.Intent); - method public void startActivity(android.content.Intent, @Nullable android.os.Bundle); - method @Nullable public android.content.ComponentName startForegroundService(android.content.Intent); - method public boolean startInstrumentation(android.content.ComponentName, @Nullable String, @Nullable android.os.Bundle); - method public void startIntentSender(android.content.IntentSender, @Nullable android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; - method public void startIntentSender(android.content.IntentSender, @Nullable android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; - method @Nullable public android.content.ComponentName startService(android.content.Intent); - method public boolean stopService(android.content.Intent); - method public void unbindService(android.content.ServiceConnection); - method public void unregisterReceiver(android.content.BroadcastReceiver); - } - - @Deprecated public class CursorLoader extends android.content.AsyncTaskLoader { - ctor @Deprecated public CursorLoader(android.content.Context); - ctor @Deprecated public CursorLoader(android.content.Context, android.net.Uri, String[], String, String[], String); - method @Deprecated public void deliverResult(android.database.Cursor); - method @Deprecated public String[] getProjection(); - method @Deprecated public String getSelection(); - method @Deprecated public String[] getSelectionArgs(); - method @Deprecated public String getSortOrder(); - method @Deprecated public android.net.Uri getUri(); - method @Deprecated public android.database.Cursor loadInBackground(); - method @Deprecated public void onCanceled(android.database.Cursor); - method @Deprecated public void setProjection(String[]); - method @Deprecated public void setSelection(String); - method @Deprecated public void setSelectionArgs(String[]); - method @Deprecated public void setSortOrder(String); - method @Deprecated public void setUri(android.net.Uri); - } - - public interface DialogInterface { - method public void cancel(); - method public void dismiss(); - field @Deprecated public static final int BUTTON1 = -1; // 0xffffffff - field @Deprecated public static final int BUTTON2 = -2; // 0xfffffffe - field @Deprecated public static final int BUTTON3 = -3; // 0xfffffffd - field public static final int BUTTON_NEGATIVE = -2; // 0xfffffffe - field public static final int BUTTON_NEUTRAL = -3; // 0xfffffffd - field public static final int BUTTON_POSITIVE = -1; // 0xffffffff - } - - public static interface DialogInterface.OnCancelListener { - method public void onCancel(android.content.DialogInterface); - } - - public static interface DialogInterface.OnClickListener { - method public void onClick(android.content.DialogInterface, int); - } - - public static interface DialogInterface.OnDismissListener { - method public void onDismiss(android.content.DialogInterface); - } - - public static interface DialogInterface.OnKeyListener { - method public boolean onKey(android.content.DialogInterface, int, android.view.KeyEvent); - } - - public static interface DialogInterface.OnMultiChoiceClickListener { - method public void onClick(android.content.DialogInterface, int, boolean); - } - - public static interface DialogInterface.OnShowListener { - method public void onShow(android.content.DialogInterface); - } - - public final class Entity { - ctor public Entity(android.content.ContentValues); - method public void addSubValue(android.net.Uri, android.content.ContentValues); - method public android.content.ContentValues getEntityValues(); - method public java.util.ArrayList getSubValues(); - } - - public static class Entity.NamedContentValues { - ctor public Entity.NamedContentValues(android.net.Uri, android.content.ContentValues); - field public final android.net.Uri uri; - field public final android.content.ContentValues values; - } - - public interface EntityIterator extends java.util.Iterator { - method public void close(); - method public void reset(); - } - - public class Intent implements java.lang.Cloneable android.os.Parcelable { - ctor public Intent(); - ctor public Intent(android.content.Intent); - ctor public Intent(String); - ctor public Intent(String, android.net.Uri); - ctor public Intent(android.content.Context, Class); - ctor public Intent(String, android.net.Uri, android.content.Context, Class); - method @NonNull public android.content.Intent addCategory(String); - method @NonNull public android.content.Intent addFlags(int); - method public Object clone(); - method @NonNull public android.content.Intent cloneFilter(); - method public static android.content.Intent createChooser(android.content.Intent, CharSequence); - method public static android.content.Intent createChooser(android.content.Intent, CharSequence, android.content.IntentSender); - method public int describeContents(); - method public int fillIn(@NonNull android.content.Intent, int); - method public boolean filterEquals(android.content.Intent); - method public int filterHashCode(); - method @Nullable public String getAction(); - method @Nullable public boolean[] getBooleanArrayExtra(String); - method public boolean getBooleanExtra(String, boolean); - method @Nullable public android.os.Bundle getBundleExtra(String); - method @Nullable public byte[] getByteArrayExtra(String); - method public byte getByteExtra(String, byte); - method public java.util.Set getCategories(); - method @Nullable public char[] getCharArrayExtra(String); - method public char getCharExtra(String, char); - method @Nullable public CharSequence[] getCharSequenceArrayExtra(String); - method @Nullable public java.util.ArrayList getCharSequenceArrayListExtra(String); - method @Nullable public CharSequence getCharSequenceExtra(String); - method @Nullable public android.content.ClipData getClipData(); - method @Nullable public android.content.ComponentName getComponent(); - method @Nullable public android.net.Uri getData(); - method @Nullable public String getDataString(); - method @Nullable public double[] getDoubleArrayExtra(String); - method public double getDoubleExtra(String, double); - method @Nullable public android.os.Bundle getExtras(); - method public int getFlags(); - method @Nullable public float[] getFloatArrayExtra(String); - method public float getFloatExtra(String, float); - method @Nullable public String getIdentifier(); - method @Nullable public int[] getIntArrayExtra(String); - method public int getIntExtra(String, int); - method @Nullable public java.util.ArrayList getIntegerArrayListExtra(String); - method @Deprecated public static android.content.Intent getIntent(String) throws java.net.URISyntaxException; - method public static android.content.Intent getIntentOld(String) throws java.net.URISyntaxException; - method @Nullable public long[] getLongArrayExtra(String); - method public long getLongExtra(String, long); - method @Nullable public String getPackage(); - method @Deprecated @Nullable public android.os.Parcelable[] getParcelableArrayExtra(String); - method @Nullable public T[] getParcelableArrayExtra(@Nullable String, @NonNull Class); - method @Deprecated @Nullable public java.util.ArrayList getParcelableArrayListExtra(String); - method @Nullable public java.util.ArrayList getParcelableArrayListExtra(@Nullable String, @NonNull Class); - method @Deprecated @Nullable public T getParcelableExtra(String); - method @Nullable public T getParcelableExtra(@Nullable String, @NonNull Class); - method @Nullable public String getScheme(); - method @Nullable public android.content.Intent getSelector(); - method @Deprecated @Nullable public java.io.Serializable getSerializableExtra(String); - method @Nullable public T getSerializableExtra(@Nullable String, @NonNull Class); - method @Nullable public short[] getShortArrayExtra(String); - method public short getShortExtra(String, short); - method @Nullable public android.graphics.Rect getSourceBounds(); - method @Nullable public String[] getStringArrayExtra(String); - method @Nullable public java.util.ArrayList getStringArrayListExtra(String); - method @Nullable public String getStringExtra(String); - method @Nullable public String getType(); - method public boolean hasCategory(String); - method public boolean hasExtra(String); - method public boolean hasFileDescriptors(); - method @FlaggedApi("android.security.enforce_intent_filter_match") public boolean isMismatchingFilter(); - method public static android.content.Intent makeMainActivity(android.content.ComponentName); - method public static android.content.Intent makeMainSelectorActivity(String, String); - method public static android.content.Intent makeRestartActivityTask(android.content.ComponentName); - method @Nullable public static String normalizeMimeType(@Nullable String); - method @NonNull public static android.content.Intent parseIntent(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, android.util.AttributeSet) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method public static android.content.Intent parseUri(String, int) throws java.net.URISyntaxException; - method @NonNull public android.content.Intent putCharSequenceArrayListExtra(String, @Nullable java.util.ArrayList); - method @NonNull public android.content.Intent putExtra(String, boolean); - method @NonNull public android.content.Intent putExtra(String, byte); - method @NonNull public android.content.Intent putExtra(String, char); - method @NonNull public android.content.Intent putExtra(String, short); - method @NonNull public android.content.Intent putExtra(String, int); - method @NonNull public android.content.Intent putExtra(String, long); - method @NonNull public android.content.Intent putExtra(String, float); - method @NonNull public android.content.Intent putExtra(String, double); - method @NonNull public android.content.Intent putExtra(String, @Nullable String); - method @NonNull public android.content.Intent putExtra(String, @Nullable CharSequence); - method @NonNull public android.content.Intent putExtra(String, @Nullable android.os.Parcelable); - method @NonNull public android.content.Intent putExtra(String, @Nullable android.os.Parcelable[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable java.io.Serializable); - method @NonNull public android.content.Intent putExtra(String, @Nullable boolean[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable byte[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable short[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable char[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable int[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable long[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable float[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable double[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable String[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable CharSequence[]); - method @NonNull public android.content.Intent putExtra(String, @Nullable android.os.Bundle); - method @NonNull public android.content.Intent putExtras(@NonNull android.content.Intent); - method @NonNull public android.content.Intent putExtras(@NonNull android.os.Bundle); - method @NonNull public android.content.Intent putIntegerArrayListExtra(String, @Nullable java.util.ArrayList); - method @NonNull public android.content.Intent putParcelableArrayListExtra(String, @Nullable java.util.ArrayList); - method @NonNull public android.content.Intent putStringArrayListExtra(String, @Nullable java.util.ArrayList); - method public void readFromParcel(android.os.Parcel); - method public void removeCategory(String); - method public void removeExtra(String); - method public void removeFlags(int); - method @FlaggedApi("android.security.prevent_intent_redirect") public void removeLaunchSecurityProtection(); - method @NonNull public android.content.Intent replaceExtras(@NonNull android.content.Intent); - method @NonNull public android.content.Intent replaceExtras(@Nullable android.os.Bundle); - method public android.content.ComponentName resolveActivity(@NonNull android.content.pm.PackageManager); - method public android.content.pm.ActivityInfo resolveActivityInfo(@NonNull android.content.pm.PackageManager, int); - method @Nullable public String resolveType(@NonNull android.content.Context); - method @Nullable public String resolveType(@NonNull android.content.ContentResolver); - method @Nullable public String resolveTypeIfNeeded(@NonNull android.content.ContentResolver); - method @NonNull public android.content.Intent setAction(@Nullable String); - method @NonNull public android.content.Intent setClass(@NonNull android.content.Context, @NonNull Class); - method @NonNull public android.content.Intent setClassName(@NonNull android.content.Context, @NonNull String); - method @NonNull public android.content.Intent setClassName(@NonNull String, @NonNull String); - method public void setClipData(@Nullable android.content.ClipData); - method @NonNull public android.content.Intent setComponent(@Nullable android.content.ComponentName); - method @NonNull public android.content.Intent setData(@Nullable android.net.Uri); - method @NonNull public android.content.Intent setDataAndNormalize(@NonNull android.net.Uri); - method @NonNull public android.content.Intent setDataAndType(@Nullable android.net.Uri, @Nullable String); - method @NonNull public android.content.Intent setDataAndTypeAndNormalize(@NonNull android.net.Uri, @Nullable String); - method public void setExtrasClassLoader(@Nullable ClassLoader); - method @NonNull public android.content.Intent setFlags(int); - method @NonNull public android.content.Intent setIdentifier(@Nullable String); - method @NonNull public android.content.Intent setPackage(@Nullable String); - method public void setSelector(@Nullable android.content.Intent); - method public void setSourceBounds(@Nullable android.graphics.Rect); - method @NonNull public android.content.Intent setType(@Nullable String); - method @NonNull public android.content.Intent setTypeAndNormalize(@Nullable String); - method @Deprecated public String toURI(); - method public String toUri(int); - method public void writeToParcel(android.os.Parcel, int); - field public static final String ACTION_AIRPLANE_MODE_CHANGED = "android.intent.action.AIRPLANE_MODE"; - field public static final String ACTION_ALL_APPS = "android.intent.action.ALL_APPS"; - field public static final String ACTION_ANSWER = "android.intent.action.ANSWER"; - field public static final String ACTION_APPLICATION_LOCALE_CHANGED = "android.intent.action.APPLICATION_LOCALE_CHANGED"; - field public static final String ACTION_APPLICATION_PREFERENCES = "android.intent.action.APPLICATION_PREFERENCES"; - field public static final String ACTION_APPLICATION_RESTRICTIONS_CHANGED = "android.intent.action.APPLICATION_RESTRICTIONS_CHANGED"; - field public static final String ACTION_APP_ERROR = "android.intent.action.APP_ERROR"; - field public static final String ACTION_ASSIST = "android.intent.action.ASSIST"; - field public static final String ACTION_ATTACH_DATA = "android.intent.action.ATTACH_DATA"; - field public static final String ACTION_AUTO_REVOKE_PERMISSIONS = "android.intent.action.AUTO_REVOKE_PERMISSIONS"; - field public static final String ACTION_BATTERY_CHANGED = "android.intent.action.BATTERY_CHANGED"; - field public static final String ACTION_BATTERY_LOW = "android.intent.action.BATTERY_LOW"; - field public static final String ACTION_BATTERY_OKAY = "android.intent.action.BATTERY_OKAY"; - field public static final String ACTION_BOOT_COMPLETED = "android.intent.action.BOOT_COMPLETED"; - field public static final String ACTION_BUG_REPORT = "android.intent.action.BUG_REPORT"; - field public static final String ACTION_CALL = "android.intent.action.CALL"; - field public static final String ACTION_CALL_BUTTON = "android.intent.action.CALL_BUTTON"; - field public static final String ACTION_CAMERA_BUTTON = "android.intent.action.CAMERA_BUTTON"; - field public static final String ACTION_CARRIER_SETUP = "android.intent.action.CARRIER_SETUP"; - field public static final String ACTION_CHOOSER = "android.intent.action.CHOOSER"; - field @Deprecated @RequiresPermission("android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS") public static final String ACTION_CLOSE_SYSTEM_DIALOGS = "android.intent.action.CLOSE_SYSTEM_DIALOGS"; - field public static final String ACTION_CONFIGURATION_CHANGED = "android.intent.action.CONFIGURATION_CHANGED"; - field public static final String ACTION_CREATE_DOCUMENT = "android.intent.action.CREATE_DOCUMENT"; - field public static final String ACTION_CREATE_NOTE = "android.intent.action.CREATE_NOTE"; - field public static final String ACTION_CREATE_REMINDER = "android.intent.action.CREATE_REMINDER"; - field public static final String ACTION_CREATE_SHORTCUT = "android.intent.action.CREATE_SHORTCUT"; - field public static final String ACTION_DATE_CHANGED = "android.intent.action.DATE_CHANGED"; - field public static final String ACTION_DEFAULT = "android.intent.action.VIEW"; - field public static final String ACTION_DEFINE = "android.intent.action.DEFINE"; - field public static final String ACTION_DELETE = "android.intent.action.DELETE"; - field @Deprecated public static final String ACTION_DEVICE_STORAGE_LOW = "android.intent.action.DEVICE_STORAGE_LOW"; - field @Deprecated public static final String ACTION_DEVICE_STORAGE_OK = "android.intent.action.DEVICE_STORAGE_OK"; - field public static final String ACTION_DIAL = "android.intent.action.DIAL"; - field public static final String ACTION_DOCK_EVENT = "android.intent.action.DOCK_EVENT"; - field public static final String ACTION_DREAMING_STARTED = "android.intent.action.DREAMING_STARTED"; - field public static final String ACTION_DREAMING_STOPPED = "android.intent.action.DREAMING_STOPPED"; - field public static final String ACTION_EDIT = "android.intent.action.EDIT"; - field public static final String ACTION_EXTERNAL_APPLICATIONS_AVAILABLE = "android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE"; - field public static final String ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE = "android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE"; - field public static final String ACTION_FACTORY_TEST = "android.intent.action.FACTORY_TEST"; - field public static final String ACTION_GET_CONTENT = "android.intent.action.GET_CONTENT"; - field public static final String ACTION_GET_RESTRICTION_ENTRIES = "android.intent.action.GET_RESTRICTION_ENTRIES"; - field public static final String ACTION_GTALK_SERVICE_CONNECTED = "android.intent.action.GTALK_CONNECTED"; - field public static final String ACTION_GTALK_SERVICE_DISCONNECTED = "android.intent.action.GTALK_DISCONNECTED"; - field public static final String ACTION_HEADSET_PLUG = "android.intent.action.HEADSET_PLUG"; - field public static final String ACTION_INPUT_METHOD_CHANGED = "android.intent.action.INPUT_METHOD_CHANGED"; - field public static final String ACTION_INSERT = "android.intent.action.INSERT"; - field public static final String ACTION_INSERT_OR_EDIT = "android.intent.action.INSERT_OR_EDIT"; - field public static final String ACTION_INSTALL_FAILURE = "android.intent.action.INSTALL_FAILURE"; - field @Deprecated public static final String ACTION_INSTALL_PACKAGE = "android.intent.action.INSTALL_PACKAGE"; - field @RequiresPermission(android.Manifest.permission.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE) public static final String ACTION_LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE = "android.intent.action.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE"; - field public static final String ACTION_LOCALE_CHANGED = "android.intent.action.LOCALE_CHANGED"; - field public static final String ACTION_LOCKED_BOOT_COMPLETED = "android.intent.action.LOCKED_BOOT_COMPLETED"; - field public static final String ACTION_MAIN = "android.intent.action.MAIN"; - field public static final String ACTION_MANAGED_PROFILE_ADDED = "android.intent.action.MANAGED_PROFILE_ADDED"; - field public static final String ACTION_MANAGED_PROFILE_AVAILABLE = "android.intent.action.MANAGED_PROFILE_AVAILABLE"; - field public static final String ACTION_MANAGED_PROFILE_REMOVED = "android.intent.action.MANAGED_PROFILE_REMOVED"; - field public static final String ACTION_MANAGED_PROFILE_UNAVAILABLE = "android.intent.action.MANAGED_PROFILE_UNAVAILABLE"; - field public static final String ACTION_MANAGED_PROFILE_UNLOCKED = "android.intent.action.MANAGED_PROFILE_UNLOCKED"; - field public static final String ACTION_MANAGE_NETWORK_USAGE = "android.intent.action.MANAGE_NETWORK_USAGE"; - field public static final String ACTION_MANAGE_PACKAGE_STORAGE = "android.intent.action.MANAGE_PACKAGE_STORAGE"; - field public static final String ACTION_MANAGE_UNUSED_APPS = "android.intent.action.MANAGE_UNUSED_APPS"; - field public static final String ACTION_MEDIA_BAD_REMOVAL = "android.intent.action.MEDIA_BAD_REMOVAL"; - field public static final String ACTION_MEDIA_BUTTON = "android.intent.action.MEDIA_BUTTON"; - field public static final String ACTION_MEDIA_CHECKING = "android.intent.action.MEDIA_CHECKING"; - field public static final String ACTION_MEDIA_EJECT = "android.intent.action.MEDIA_EJECT"; - field public static final String ACTION_MEDIA_MOUNTED = "android.intent.action.MEDIA_MOUNTED"; - field public static final String ACTION_MEDIA_NOFS = "android.intent.action.MEDIA_NOFS"; - field public static final String ACTION_MEDIA_REMOVED = "android.intent.action.MEDIA_REMOVED"; - field public static final String ACTION_MEDIA_SCANNER_FINISHED = "android.intent.action.MEDIA_SCANNER_FINISHED"; - field @Deprecated public static final String ACTION_MEDIA_SCANNER_SCAN_FILE = "android.intent.action.MEDIA_SCANNER_SCAN_FILE"; - field public static final String ACTION_MEDIA_SCANNER_STARTED = "android.intent.action.MEDIA_SCANNER_STARTED"; - field public static final String ACTION_MEDIA_SHARED = "android.intent.action.MEDIA_SHARED"; - field public static final String ACTION_MEDIA_UNMOUNTABLE = "android.intent.action.MEDIA_UNMOUNTABLE"; - field public static final String ACTION_MEDIA_UNMOUNTED = "android.intent.action.MEDIA_UNMOUNTED"; - field public static final String ACTION_MY_PACKAGE_REPLACED = "android.intent.action.MY_PACKAGE_REPLACED"; - field public static final String ACTION_MY_PACKAGE_SUSPENDED = "android.intent.action.MY_PACKAGE_SUSPENDED"; - field public static final String ACTION_MY_PACKAGE_UNSUSPENDED = "android.intent.action.MY_PACKAGE_UNSUSPENDED"; - field @Deprecated public static final String ACTION_NEW_OUTGOING_CALL = "android.intent.action.NEW_OUTGOING_CALL"; - field public static final String ACTION_OPEN_DOCUMENT = "android.intent.action.OPEN_DOCUMENT"; - field public static final String ACTION_OPEN_DOCUMENT_TREE = "android.intent.action.OPEN_DOCUMENT_TREE"; - field public static final String ACTION_PACKAGES_SUSPENDED = "android.intent.action.PACKAGES_SUSPENDED"; - field public static final String ACTION_PACKAGES_UNSUSPENDED = "android.intent.action.PACKAGES_UNSUSPENDED"; - field public static final String ACTION_PACKAGE_ADDED = "android.intent.action.PACKAGE_ADDED"; - field public static final String ACTION_PACKAGE_CHANGED = "android.intent.action.PACKAGE_CHANGED"; - field public static final String ACTION_PACKAGE_DATA_CLEARED = "android.intent.action.PACKAGE_DATA_CLEARED"; - field public static final String ACTION_PACKAGE_FIRST_LAUNCH = "android.intent.action.PACKAGE_FIRST_LAUNCH"; - field public static final String ACTION_PACKAGE_FULLY_REMOVED = "android.intent.action.PACKAGE_FULLY_REMOVED"; - field @Deprecated public static final String ACTION_PACKAGE_INSTALL = "android.intent.action.PACKAGE_INSTALL"; - field public static final String ACTION_PACKAGE_NEEDS_VERIFICATION = "android.intent.action.PACKAGE_NEEDS_VERIFICATION"; - field public static final String ACTION_PACKAGE_REMOVED = "android.intent.action.PACKAGE_REMOVED"; - field public static final String ACTION_PACKAGE_REPLACED = "android.intent.action.PACKAGE_REPLACED"; - field public static final String ACTION_PACKAGE_RESTARTED = "android.intent.action.PACKAGE_RESTARTED"; - field @FlaggedApi("android.content.pm.stay_stopped") public static final String ACTION_PACKAGE_UNSTOPPED = "android.intent.action.PACKAGE_UNSTOPPED"; - field public static final String ACTION_PACKAGE_VERIFIED = "android.intent.action.PACKAGE_VERIFIED"; - field public static final String ACTION_PASTE = "android.intent.action.PASTE"; - field public static final String ACTION_PICK = "android.intent.action.PICK"; - field public static final String ACTION_PICK_ACTIVITY = "android.intent.action.PICK_ACTIVITY"; - field public static final String ACTION_POWER_CONNECTED = "android.intent.action.ACTION_POWER_CONNECTED"; - field public static final String ACTION_POWER_DISCONNECTED = "android.intent.action.ACTION_POWER_DISCONNECTED"; - field public static final String ACTION_POWER_USAGE_SUMMARY = "android.intent.action.POWER_USAGE_SUMMARY"; - field public static final String ACTION_PROCESS_TEXT = "android.intent.action.PROCESS_TEXT"; - field public static final String ACTION_PROFILE_ACCESSIBLE = "android.intent.action.PROFILE_ACCESSIBLE"; - field public static final String ACTION_PROFILE_ADDED = "android.intent.action.PROFILE_ADDED"; - field @FlaggedApi("android.os.allow_private_profile") public static final String ACTION_PROFILE_AVAILABLE = "android.intent.action.PROFILE_AVAILABLE"; - field public static final String ACTION_PROFILE_INACCESSIBLE = "android.intent.action.PROFILE_INACCESSIBLE"; - field public static final String ACTION_PROFILE_REMOVED = "android.intent.action.PROFILE_REMOVED"; - field @FlaggedApi("android.os.allow_private_profile") public static final String ACTION_PROFILE_UNAVAILABLE = "android.intent.action.PROFILE_UNAVAILABLE"; - field public static final String ACTION_PROVIDER_CHANGED = "android.intent.action.PROVIDER_CHANGED"; - field public static final String ACTION_QUICK_CLOCK = "android.intent.action.QUICK_CLOCK"; - field public static final String ACTION_QUICK_VIEW = "android.intent.action.QUICK_VIEW"; - field public static final String ACTION_REBOOT = "android.intent.action.REBOOT"; - field public static final String ACTION_RUN = "android.intent.action.RUN"; - field public static final String ACTION_SAFETY_CENTER = "android.intent.action.SAFETY_CENTER"; - field public static final String ACTION_SCREEN_OFF = "android.intent.action.SCREEN_OFF"; - field public static final String ACTION_SCREEN_ON = "android.intent.action.SCREEN_ON"; - field public static final String ACTION_SEARCH = "android.intent.action.SEARCH"; - field public static final String ACTION_SEARCH_LONG_PRESS = "android.intent.action.SEARCH_LONG_PRESS"; - field public static final String ACTION_SEND = "android.intent.action.SEND"; - field public static final String ACTION_SENDTO = "android.intent.action.SENDTO"; - field public static final String ACTION_SEND_MULTIPLE = "android.intent.action.SEND_MULTIPLE"; - field public static final String ACTION_SET_WALLPAPER = "android.intent.action.SET_WALLPAPER"; - field public static final String ACTION_SHOW_APP_INFO = "android.intent.action.SHOW_APP_INFO"; - field public static final String ACTION_SHOW_WORK_APPS = "android.intent.action.SHOW_WORK_APPS"; - field public static final String ACTION_SHUTDOWN = "android.intent.action.ACTION_SHUTDOWN"; - field public static final String ACTION_SYNC = "android.intent.action.SYNC"; - field public static final String ACTION_SYSTEM_TUTORIAL = "android.intent.action.SYSTEM_TUTORIAL"; - field public static final String ACTION_TIMEZONE_CHANGED = "android.intent.action.TIMEZONE_CHANGED"; - field public static final String ACTION_TIME_CHANGED = "android.intent.action.TIME_SET"; - field public static final String ACTION_TIME_TICK = "android.intent.action.TIME_TICK"; - field public static final String ACTION_TRANSLATE = "android.intent.action.TRANSLATE"; - field public static final String ACTION_UID_REMOVED = "android.intent.action.UID_REMOVED"; - field @Deprecated public static final String ACTION_UMS_CONNECTED = "android.intent.action.UMS_CONNECTED"; - field @Deprecated public static final String ACTION_UMS_DISCONNECTED = "android.intent.action.UMS_DISCONNECTED"; - field @FlaggedApi("android.content.pm.archiving") public static final String ACTION_UNARCHIVE_PACKAGE = "android.intent.action.UNARCHIVE_PACKAGE"; - field @Deprecated public static final String ACTION_UNINSTALL_PACKAGE = "android.intent.action.UNINSTALL_PACKAGE"; - field public static final String ACTION_USER_BACKGROUND = "android.intent.action.USER_BACKGROUND"; - field public static final String ACTION_USER_FOREGROUND = "android.intent.action.USER_FOREGROUND"; - field public static final String ACTION_USER_INITIALIZE = "android.intent.action.USER_INITIALIZE"; - field public static final String ACTION_USER_PRESENT = "android.intent.action.USER_PRESENT"; - field public static final String ACTION_USER_UNLOCKED = "android.intent.action.USER_UNLOCKED"; - field public static final String ACTION_VIEW = "android.intent.action.VIEW"; - field public static final String ACTION_VIEW_LOCUS = "android.intent.action.VIEW_LOCUS"; - field @RequiresPermission(android.Manifest.permission.START_VIEW_PERMISSION_USAGE) public static final String ACTION_VIEW_PERMISSION_USAGE = "android.intent.action.VIEW_PERMISSION_USAGE"; - field @RequiresPermission(android.Manifest.permission.START_VIEW_PERMISSION_USAGE) public static final String ACTION_VIEW_PERMISSION_USAGE_FOR_PERIOD = "android.intent.action.VIEW_PERMISSION_USAGE_FOR_PERIOD"; - field public static final String ACTION_VOICE_COMMAND = "android.intent.action.VOICE_COMMAND"; - field @Deprecated public static final String ACTION_WALLPAPER_CHANGED = "android.intent.action.WALLPAPER_CHANGED"; - field public static final String ACTION_WEB_SEARCH = "android.intent.action.WEB_SEARCH"; - field public static final int CAPTURE_CONTENT_FOR_NOTE_BLOCKED_BY_ADMIN = 4; // 0x4 - field public static final int CAPTURE_CONTENT_FOR_NOTE_FAILED = 1; // 0x1 - field public static final int CAPTURE_CONTENT_FOR_NOTE_SUCCESS = 0; // 0x0 - field public static final int CAPTURE_CONTENT_FOR_NOTE_USER_CANCELED = 2; // 0x2 - field public static final int CAPTURE_CONTENT_FOR_NOTE_WINDOW_MODE_UNSUPPORTED = 3; // 0x3 - field public static final String CATEGORY_ACCESSIBILITY_SHORTCUT_TARGET = "android.intent.category.ACCESSIBILITY_SHORTCUT_TARGET"; - field public static final String CATEGORY_ALTERNATIVE = "android.intent.category.ALTERNATIVE"; - field public static final String CATEGORY_APP_BROWSER = "android.intent.category.APP_BROWSER"; - field public static final String CATEGORY_APP_CALCULATOR = "android.intent.category.APP_CALCULATOR"; - field public static final String CATEGORY_APP_CALENDAR = "android.intent.category.APP_CALENDAR"; - field public static final String CATEGORY_APP_CONTACTS = "android.intent.category.APP_CONTACTS"; - field public static final String CATEGORY_APP_EMAIL = "android.intent.category.APP_EMAIL"; - field public static final String CATEGORY_APP_FILES = "android.intent.category.APP_FILES"; - field public static final String CATEGORY_APP_FITNESS = "android.intent.category.APP_FITNESS"; - field public static final String CATEGORY_APP_GALLERY = "android.intent.category.APP_GALLERY"; - field public static final String CATEGORY_APP_MAPS = "android.intent.category.APP_MAPS"; - field public static final String CATEGORY_APP_MARKET = "android.intent.category.APP_MARKET"; - field public static final String CATEGORY_APP_MESSAGING = "android.intent.category.APP_MESSAGING"; - field public static final String CATEGORY_APP_MUSIC = "android.intent.category.APP_MUSIC"; - field public static final String CATEGORY_APP_WEATHER = "android.intent.category.APP_WEATHER"; - field public static final String CATEGORY_BROWSABLE = "android.intent.category.BROWSABLE"; - field public static final String CATEGORY_CAR_DOCK = "android.intent.category.CAR_DOCK"; - field public static final String CATEGORY_CAR_MODE = "android.intent.category.CAR_MODE"; - field public static final String CATEGORY_DEFAULT = "android.intent.category.DEFAULT"; - field public static final String CATEGORY_DESK_DOCK = "android.intent.category.DESK_DOCK"; - field public static final String CATEGORY_DEVELOPMENT_PREFERENCE = "android.intent.category.DEVELOPMENT_PREFERENCE"; - field public static final String CATEGORY_EMBED = "android.intent.category.EMBED"; - field public static final String CATEGORY_FRAMEWORK_INSTRUMENTATION_TEST = "android.intent.category.FRAMEWORK_INSTRUMENTATION_TEST"; - field public static final String CATEGORY_HE_DESK_DOCK = "android.intent.category.HE_DESK_DOCK"; - field public static final String CATEGORY_HOME = "android.intent.category.HOME"; - field public static final String CATEGORY_INFO = "android.intent.category.INFO"; - field public static final String CATEGORY_LAUNCHER = "android.intent.category.LAUNCHER"; - field public static final String CATEGORY_LEANBACK_LAUNCHER = "android.intent.category.LEANBACK_LAUNCHER"; - field public static final String CATEGORY_LE_DESK_DOCK = "android.intent.category.LE_DESK_DOCK"; - field public static final String CATEGORY_MONKEY = "android.intent.category.MONKEY"; - field public static final String CATEGORY_OPENABLE = "android.intent.category.OPENABLE"; - field public static final String CATEGORY_PREFERENCE = "android.intent.category.PREFERENCE"; - field public static final String CATEGORY_SAMPLE_CODE = "android.intent.category.SAMPLE_CODE"; - field public static final String CATEGORY_SECONDARY_HOME = "android.intent.category.SECONDARY_HOME"; - field public static final String CATEGORY_SELECTED_ALTERNATIVE = "android.intent.category.SELECTED_ALTERNATIVE"; - field public static final String CATEGORY_TAB = "android.intent.category.TAB"; - field public static final String CATEGORY_TEST = "android.intent.category.TEST"; - field public static final String CATEGORY_TYPED_OPENABLE = "android.intent.category.TYPED_OPENABLE"; - field public static final String CATEGORY_UNIT_TEST = "android.intent.category.UNIT_TEST"; - field public static final String CATEGORY_VOICE = "android.intent.category.VOICE"; - field public static final String CATEGORY_VR_HOME = "android.intent.category.VR_HOME"; - field public static final int CHOOSER_CONTENT_TYPE_ALBUM = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String EXTRA_ALARM_COUNT = "android.intent.extra.ALARM_COUNT"; - field public static final String EXTRA_ALLOW_MULTIPLE = "android.intent.extra.ALLOW_MULTIPLE"; - field @Deprecated public static final String EXTRA_ALLOW_REPLACE = "android.intent.extra.ALLOW_REPLACE"; - field public static final String EXTRA_ALTERNATE_INTENTS = "android.intent.extra.ALTERNATE_INTENTS"; - field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_ARCHIVAL = "android.intent.extra.ARCHIVAL"; - field public static final String EXTRA_ASSIST_CONTEXT = "android.intent.extra.ASSIST_CONTEXT"; - field public static final String EXTRA_ASSIST_INPUT_DEVICE_ID = "android.intent.extra.ASSIST_INPUT_DEVICE_ID"; - field public static final String EXTRA_ASSIST_INPUT_HINT_KEYBOARD = "android.intent.extra.ASSIST_INPUT_HINT_KEYBOARD"; - field public static final String EXTRA_ASSIST_PACKAGE = "android.intent.extra.ASSIST_PACKAGE"; - field public static final String EXTRA_ASSIST_UID = "android.intent.extra.ASSIST_UID"; - field public static final String EXTRA_ATTRIBUTION_TAGS = "android.intent.extra.ATTRIBUTION_TAGS"; - field public static final String EXTRA_AUTO_LAUNCH_SINGLE_CHOICE = "android.intent.extra.AUTO_LAUNCH_SINGLE_CHOICE"; - field public static final String EXTRA_BCC = "android.intent.extra.BCC"; - field public static final String EXTRA_BUG_REPORT = "android.intent.extra.BUG_REPORT"; - field public static final String EXTRA_CAPTURE_CONTENT_FOR_NOTE_STATUS_CODE = "android.intent.extra.CAPTURE_CONTENT_FOR_NOTE_STATUS_CODE"; - field public static final String EXTRA_CC = "android.intent.extra.CC"; - field @Deprecated public static final String EXTRA_CHANGED_COMPONENT_NAME = "android.intent.extra.changed_component_name"; - field public static final String EXTRA_CHANGED_COMPONENT_NAME_LIST = "android.intent.extra.changed_component_name_list"; - field public static final String EXTRA_CHANGED_PACKAGE_LIST = "android.intent.extra.changed_package_list"; - field public static final String EXTRA_CHANGED_UID_LIST = "android.intent.extra.changed_uid_list"; - field public static final String EXTRA_CHOOSER_ADDITIONAL_CONTENT_URI = "android.intent.extra.CHOOSER_ADDITIONAL_CONTENT_URI"; - field public static final String EXTRA_CHOOSER_CONTENT_TYPE_HINT = "android.intent.extra.CHOOSER_CONTENT_TYPE_HINT"; - field public static final String EXTRA_CHOOSER_CUSTOM_ACTIONS = "android.intent.extra.CHOOSER_CUSTOM_ACTIONS"; - field public static final String EXTRA_CHOOSER_FOCUSED_ITEM_POSITION = "android.intent.extra.CHOOSER_FOCUSED_ITEM_POSITION"; - field public static final String EXTRA_CHOOSER_MODIFY_SHARE_ACTION = "android.intent.extra.CHOOSER_MODIFY_SHARE_ACTION"; - field public static final String EXTRA_CHOOSER_REFINEMENT_INTENT_SENDER = "android.intent.extra.CHOOSER_REFINEMENT_INTENT_SENDER"; - field public static final String EXTRA_CHOOSER_RESULT = "android.intent.extra.CHOOSER_RESULT"; - field public static final String EXTRA_CHOOSER_RESULT_INTENT_SENDER = "android.intent.extra.CHOOSER_RESULT_INTENT_SENDER"; - field public static final String EXTRA_CHOOSER_TARGETS = "android.intent.extra.CHOOSER_TARGETS"; - field public static final String EXTRA_CHOSEN_COMPONENT = "android.intent.extra.CHOSEN_COMPONENT"; - field public static final String EXTRA_CHOSEN_COMPONENT_INTENT_SENDER = "android.intent.extra.CHOSEN_COMPONENT_INTENT_SENDER"; - field public static final String EXTRA_COMPONENT_NAME = "android.intent.extra.COMPONENT_NAME"; - field public static final String EXTRA_CONTENT_ANNOTATIONS = "android.intent.extra.CONTENT_ANNOTATIONS"; - field public static final String EXTRA_CONTENT_QUERY = "android.intent.extra.CONTENT_QUERY"; - field public static final String EXTRA_DATA_REMOVED = "android.intent.extra.DATA_REMOVED"; - field public static final String EXTRA_DOCK_STATE = "android.intent.extra.DOCK_STATE"; - field public static final int EXTRA_DOCK_STATE_CAR = 2; // 0x2 - field public static final int EXTRA_DOCK_STATE_DESK = 1; // 0x1 - field public static final int EXTRA_DOCK_STATE_HE_DESK = 4; // 0x4 - field public static final int EXTRA_DOCK_STATE_LE_DESK = 3; // 0x3 - field public static final int EXTRA_DOCK_STATE_UNDOCKED = 0; // 0x0 - field public static final String EXTRA_DONT_KILL_APP = "android.intent.extra.DONT_KILL_APP"; - field public static final String EXTRA_DURATION_MILLIS = "android.intent.extra.DURATION_MILLIS"; - field public static final String EXTRA_EMAIL = "android.intent.extra.EMAIL"; - field public static final String EXTRA_END_TIME = "android.intent.extra.END_TIME"; - field public static final String EXTRA_EXCLUDE_COMPONENTS = "android.intent.extra.EXCLUDE_COMPONENTS"; - field public static final String EXTRA_FROM_STORAGE = "android.intent.extra.FROM_STORAGE"; - field public static final String EXTRA_HTML_TEXT = "android.intent.extra.HTML_TEXT"; - field public static final String EXTRA_INDEX = "android.intent.extra.INDEX"; - field public static final String EXTRA_INITIAL_INTENTS = "android.intent.extra.INITIAL_INTENTS"; - field public static final String EXTRA_INSTALLER_PACKAGE_NAME = "android.intent.extra.INSTALLER_PACKAGE_NAME"; - field public static final String EXTRA_INTENT = "android.intent.extra.INTENT"; - field public static final String EXTRA_KEY_EVENT = "android.intent.extra.KEY_EVENT"; - field public static final String EXTRA_LOCALE_LIST = "android.intent.extra.LOCALE_LIST"; - field public static final String EXTRA_LOCAL_ONLY = "android.intent.extra.LOCAL_ONLY"; - field public static final String EXTRA_LOCUS_ID = "android.intent.extra.LOCUS_ID"; - field public static final String EXTRA_METADATA_TEXT = "android.intent.extra.METADATA_TEXT"; - field public static final String EXTRA_MIME_TYPES = "android.intent.extra.MIME_TYPES"; - field public static final String EXTRA_NOT_UNKNOWN_SOURCE = "android.intent.extra.NOT_UNKNOWN_SOURCE"; - field public static final String EXTRA_ORIGINATING_URI = "android.intent.extra.ORIGINATING_URI"; - field public static final String EXTRA_PACKAGES = "android.intent.extra.PACKAGES"; - field public static final String EXTRA_PACKAGE_NAME = "android.intent.extra.PACKAGE_NAME"; - field public static final String EXTRA_PERMISSION_GROUP_NAME = "android.intent.extra.PERMISSION_GROUP_NAME"; - field public static final String EXTRA_PHONE_NUMBER = "android.intent.extra.PHONE_NUMBER"; - field public static final String EXTRA_PROCESS_TEXT = "android.intent.extra.PROCESS_TEXT"; - field public static final String EXTRA_PROCESS_TEXT_READONLY = "android.intent.extra.PROCESS_TEXT_READONLY"; - field public static final String EXTRA_QUICK_VIEW_FEATURES = "android.intent.extra.QUICK_VIEW_FEATURES"; - field public static final String EXTRA_QUIET_MODE = "android.intent.extra.QUIET_MODE"; - field public static final String EXTRA_REFERRER = "android.intent.extra.REFERRER"; - field public static final String EXTRA_REFERRER_NAME = "android.intent.extra.REFERRER_NAME"; - field public static final String EXTRA_REMOTE_INTENT_TOKEN = "android.intent.extra.remote_intent_token"; - field public static final String EXTRA_REPLACEMENT_EXTRAS = "android.intent.extra.REPLACEMENT_EXTRAS"; - field public static final String EXTRA_REPLACING = "android.intent.extra.REPLACING"; - field public static final String EXTRA_RESTRICTIONS_BUNDLE = "android.intent.extra.restrictions_bundle"; - field public static final String EXTRA_RESTRICTIONS_INTENT = "android.intent.extra.restrictions_intent"; - field public static final String EXTRA_RESTRICTIONS_LIST = "android.intent.extra.restrictions_list"; - field public static final String EXTRA_RESULT_RECEIVER = "android.intent.extra.RESULT_RECEIVER"; - field public static final String EXTRA_RETURN_RESULT = "android.intent.extra.RETURN_RESULT"; - field @Deprecated public static final String EXTRA_SHORTCUT_ICON = "android.intent.extra.shortcut.ICON"; - field @Deprecated public static final String EXTRA_SHORTCUT_ICON_RESOURCE = "android.intent.extra.shortcut.ICON_RESOURCE"; - field public static final String EXTRA_SHORTCUT_ID = "android.intent.extra.shortcut.ID"; - field @Deprecated public static final String EXTRA_SHORTCUT_INTENT = "android.intent.extra.shortcut.INTENT"; - field @Deprecated public static final String EXTRA_SHORTCUT_NAME = "android.intent.extra.shortcut.NAME"; - field public static final String EXTRA_SHUTDOWN_USERSPACE_ONLY = "android.intent.extra.SHUTDOWN_USERSPACE_ONLY"; - field public static final String EXTRA_SPLIT_NAME = "android.intent.extra.SPLIT_NAME"; - field public static final String EXTRA_START_TIME = "android.intent.extra.START_TIME"; - field public static final String EXTRA_STREAM = "android.intent.extra.STREAM"; - field public static final String EXTRA_SUBJECT = "android.intent.extra.SUBJECT"; - field public static final String EXTRA_SUSPENDED_PACKAGE_EXTRAS = "android.intent.extra.SUSPENDED_PACKAGE_EXTRAS"; - field public static final String EXTRA_TEMPLATE = "android.intent.extra.TEMPLATE"; - field public static final String EXTRA_TEXT = "android.intent.extra.TEXT"; - field public static final String EXTRA_TIME = "android.intent.extra.TIME"; - field public static final String EXTRA_TIMEZONE = "time-zone"; - field public static final String EXTRA_TITLE = "android.intent.extra.TITLE"; - field public static final String EXTRA_UID = "android.intent.extra.UID"; - field public static final String EXTRA_USER = "android.intent.extra.USER"; - field public static final String EXTRA_USER_INITIATED = "android.intent.extra.USER_INITIATED"; - field public static final String EXTRA_USE_STYLUS_MODE = "android.intent.extra.USE_STYLUS_MODE"; - field public static final int FILL_IN_ACTION = 1; // 0x1 - field public static final int FILL_IN_CATEGORIES = 4; // 0x4 - field public static final int FILL_IN_CLIP_DATA = 128; // 0x80 - field public static final int FILL_IN_COMPONENT = 8; // 0x8 - field public static final int FILL_IN_DATA = 2; // 0x2 - field public static final int FILL_IN_IDENTIFIER = 256; // 0x100 - field public static final int FILL_IN_PACKAGE = 16; // 0x10 - field public static final int FILL_IN_SELECTOR = 64; // 0x40 - field public static final int FILL_IN_SOURCE_BOUNDS = 32; // 0x20 - field public static final int FLAG_ACTIVITY_BROUGHT_TO_FRONT = 4194304; // 0x400000 - field public static final int FLAG_ACTIVITY_CLEAR_TASK = 32768; // 0x8000 - field public static final int FLAG_ACTIVITY_CLEAR_TOP = 67108864; // 0x4000000 - field @Deprecated public static final int FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET = 524288; // 0x80000 - field public static final int FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS = 8388608; // 0x800000 - field public static final int FLAG_ACTIVITY_FORWARD_RESULT = 33554432; // 0x2000000 - field public static final int FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY = 1048576; // 0x100000 - field public static final int FLAG_ACTIVITY_LAUNCH_ADJACENT = 4096; // 0x1000 - field public static final int FLAG_ACTIVITY_MATCH_EXTERNAL = 2048; // 0x800 - field public static final int FLAG_ACTIVITY_MULTIPLE_TASK = 134217728; // 0x8000000 - field public static final int FLAG_ACTIVITY_NEW_DOCUMENT = 524288; // 0x80000 - field public static final int FLAG_ACTIVITY_NEW_TASK = 268435456; // 0x10000000 - field public static final int FLAG_ACTIVITY_NO_ANIMATION = 65536; // 0x10000 - field public static final int FLAG_ACTIVITY_NO_HISTORY = 1073741824; // 0x40000000 - field public static final int FLAG_ACTIVITY_NO_USER_ACTION = 262144; // 0x40000 - field public static final int FLAG_ACTIVITY_PREVIOUS_IS_TOP = 16777216; // 0x1000000 - field public static final int FLAG_ACTIVITY_REORDER_TO_FRONT = 131072; // 0x20000 - field public static final int FLAG_ACTIVITY_REQUIRE_DEFAULT = 512; // 0x200 - field public static final int FLAG_ACTIVITY_REQUIRE_NON_BROWSER = 1024; // 0x400 - field public static final int FLAG_ACTIVITY_RESET_TASK_IF_NEEDED = 2097152; // 0x200000 - field public static final int FLAG_ACTIVITY_RETAIN_IN_RECENTS = 8192; // 0x2000 - field public static final int FLAG_ACTIVITY_SINGLE_TOP = 536870912; // 0x20000000 - field public static final int FLAG_ACTIVITY_TASK_ON_HOME = 16384; // 0x4000 - field public static final int FLAG_DEBUG_LOG_RESOLUTION = 8; // 0x8 - field public static final int FLAG_DIRECT_BOOT_AUTO = 256; // 0x100 - field public static final int FLAG_EXCLUDE_STOPPED_PACKAGES = 16; // 0x10 - field public static final int FLAG_FROM_BACKGROUND = 4; // 0x4 - field public static final int FLAG_GRANT_PERSISTABLE_URI_PERMISSION = 64; // 0x40 - field public static final int FLAG_GRANT_PREFIX_URI_PERMISSION = 128; // 0x80 - field public static final int FLAG_GRANT_READ_URI_PERMISSION = 1; // 0x1 - field public static final int FLAG_GRANT_WRITE_URI_PERMISSION = 2; // 0x2 - field public static final int FLAG_INCLUDE_STOPPED_PACKAGES = 32; // 0x20 - field public static final int FLAG_RECEIVER_FOREGROUND = 268435456; // 0x10000000 - field public static final int FLAG_RECEIVER_NO_ABORT = 134217728; // 0x8000000 - field public static final int FLAG_RECEIVER_REGISTERED_ONLY = 1073741824; // 0x40000000 - field public static final int FLAG_RECEIVER_REPLACE_PENDING = 536870912; // 0x20000000 - field public static final int FLAG_RECEIVER_VISIBLE_TO_INSTANT_APPS = 2097152; // 0x200000 - field public static final String METADATA_DOCK_HOME = "android.dock_home"; - field public static final int URI_ALLOW_UNSAFE = 4; // 0x4 - field public static final int URI_ANDROID_APP_SCHEME = 2; // 0x2 - field public static final int URI_INTENT_SCHEME = 1; // 0x1 - } - - public static final class Intent.FilterComparison { - ctor public Intent.FilterComparison(android.content.Intent); - method public android.content.Intent getIntent(); - } - - public static class Intent.ShortcutIconResource implements android.os.Parcelable { - ctor public Intent.ShortcutIconResource(); - method public int describeContents(); - method public static android.content.Intent.ShortcutIconResource fromContext(android.content.Context, @AnyRes int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public String packageName; - field public String resourceName; - } - - public class IntentFilter implements android.os.Parcelable { - ctor public IntentFilter(); - ctor public IntentFilter(String); - ctor public IntentFilter(String, String) throws android.content.IntentFilter.MalformedMimeTypeException; - ctor public IntentFilter(android.content.IntentFilter); - method public final java.util.Iterator actionsIterator(); - method public final void addAction(String); - method public final void addCategory(String); - method public final void addDataAuthority(String, String); - method public final void addDataPath(String, int); - method public final void addDataScheme(String); - method public final void addDataSchemeSpecificPart(String, int); - method public final void addDataType(String) throws android.content.IntentFilter.MalformedMimeTypeException; - method @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final void addUriRelativeFilterGroup(@NonNull android.content.UriRelativeFilterGroup); - method @NonNull public java.util.function.Predicate asPredicate(); - method @NonNull public java.util.function.Predicate asPredicateWithTypeResolution(@NonNull android.content.ContentResolver); - method public final java.util.Iterator authoritiesIterator(); - method public final java.util.Iterator categoriesIterator(); - method @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final void clearUriRelativeFilterGroups(); - method public final int countActions(); - method public final int countCategories(); - method public final int countDataAuthorities(); - method public final int countDataPaths(); - method public final int countDataSchemeSpecificParts(); - method public final int countDataSchemes(); - method public final int countDataTypes(); - method @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final int countUriRelativeFilterGroups(); - method public static android.content.IntentFilter create(String, String); - method public final int describeContents(); - method public void dump(android.util.Printer, String); - method public final String getAction(int); - method public final String getCategory(int); - method public final android.content.IntentFilter.AuthorityEntry getDataAuthority(int); - method public final android.os.PatternMatcher getDataPath(int); - method public final String getDataScheme(int); - method public final android.os.PatternMatcher getDataSchemeSpecificPart(int); - method public final String getDataType(int); - method public final int getPriority(); - method @FlaggedApi("android.content.pm.relative_reference_intent_filters") @NonNull public final android.content.UriRelativeFilterGroup getUriRelativeFilterGroup(int); - method public final boolean hasAction(String); - method public final boolean hasCategory(String); - method public final boolean hasDataAuthority(android.net.Uri); - method public final boolean hasDataPath(String); - method public final boolean hasDataScheme(String); - method public final boolean hasDataSchemeSpecificPart(String); - method public final boolean hasDataType(String); - method public final int match(android.content.ContentResolver, android.content.Intent, boolean, String); - method public final int match(String, String, String, android.net.Uri, java.util.Set, String); - method public final boolean matchAction(String); - method public final String matchCategories(java.util.Set); - method public final int matchData(String, String, android.net.Uri); - method public final int matchDataAuthority(android.net.Uri); - method public final java.util.Iterator pathsIterator(); - method public void readFromXml(org.xmlpull.v1.XmlPullParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method public final java.util.Iterator schemeSpecificPartsIterator(); - method public final java.util.Iterator schemesIterator(); - method public final void setPriority(int); - method public final java.util.Iterator typesIterator(); - method public final void writeToParcel(android.os.Parcel, int); - method public void writeToXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int MATCH_ADJUSTMENT_MASK = 65535; // 0xffff - field public static final int MATCH_ADJUSTMENT_NORMAL = 32768; // 0x8000 - field public static final int MATCH_CATEGORY_EMPTY = 1048576; // 0x100000 - field public static final int MATCH_CATEGORY_HOST = 3145728; // 0x300000 - field public static final int MATCH_CATEGORY_MASK = 268369920; // 0xfff0000 - field public static final int MATCH_CATEGORY_PATH = 5242880; // 0x500000 - field public static final int MATCH_CATEGORY_PORT = 4194304; // 0x400000 - field public static final int MATCH_CATEGORY_SCHEME = 2097152; // 0x200000 - field public static final int MATCH_CATEGORY_SCHEME_SPECIFIC_PART = 5767168; // 0x580000 - field public static final int MATCH_CATEGORY_TYPE = 6291456; // 0x600000 - field public static final int NO_MATCH_ACTION = -3; // 0xfffffffd - field public static final int NO_MATCH_CATEGORY = -4; // 0xfffffffc - field public static final int NO_MATCH_DATA = -2; // 0xfffffffe - field public static final int NO_MATCH_TYPE = -1; // 0xffffffff - field public static final int SYSTEM_HIGH_PRIORITY = 1000; // 0x3e8 - field public static final int SYSTEM_LOW_PRIORITY = -1000; // 0xfffffc18 - } - - public static final class IntentFilter.AuthorityEntry { - ctor public IntentFilter.AuthorityEntry(String, String); - method public String getHost(); - method public int getPort(); - method public int match(android.net.Uri); - } - - public static class IntentFilter.MalformedMimeTypeException extends android.util.AndroidException { - ctor public IntentFilter.MalformedMimeTypeException(); - ctor public IntentFilter.MalformedMimeTypeException(String); - } - - public class IntentSender implements android.os.Parcelable { - method public int describeContents(); - method public String getCreatorPackage(); - method public int getCreatorUid(); - method public android.os.UserHandle getCreatorUserHandle(); - method @Deprecated public String getTargetPackage(); - method public static android.content.IntentSender readIntentSenderOrNullFromParcel(android.os.Parcel); - method public void sendIntent(android.content.Context, int, android.content.Intent, android.content.IntentSender.OnFinished, android.os.Handler) throws android.content.IntentSender.SendIntentException; - method public void sendIntent(android.content.Context, int, android.content.Intent, android.content.IntentSender.OnFinished, android.os.Handler, String) throws android.content.IntentSender.SendIntentException; - method @FlaggedApi("com.android.window.flags.bal_send_intent_with_options") public void sendIntent(@Nullable android.content.Context, int, @Nullable android.content.Intent, @Nullable String, @Nullable android.os.Bundle, @Nullable java.util.concurrent.Executor, @Nullable android.content.IntentSender.OnFinished) throws android.content.IntentSender.SendIntentException; - method public static void writeIntentSenderOrNullToParcel(android.content.IntentSender, android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static interface IntentSender.OnFinished { - method public void onSendFinished(android.content.IntentSender, android.content.Intent, int, String, android.os.Bundle); - } - - public static class IntentSender.SendIntentException extends android.util.AndroidException { - ctor public IntentSender.SendIntentException(); - ctor public IntentSender.SendIntentException(String); - ctor public IntentSender.SendIntentException(Exception); - } - - @Deprecated public class Loader { - ctor @Deprecated public Loader(android.content.Context); - method @Deprecated public void abandon(); - method @Deprecated public boolean cancelLoad(); - method @Deprecated public void commitContentChanged(); - method @Deprecated public String dataToString(D); - method @Deprecated public void deliverCancellation(); - method @Deprecated public void deliverResult(D); - method @Deprecated public void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); - method @Deprecated public void forceLoad(); - method @Deprecated public android.content.Context getContext(); - method @Deprecated public int getId(); - method @Deprecated public boolean isAbandoned(); - method @Deprecated public boolean isReset(); - method @Deprecated public boolean isStarted(); - method @Deprecated protected void onAbandon(); - method @Deprecated protected boolean onCancelLoad(); - method @Deprecated public void onContentChanged(); - method @Deprecated protected void onForceLoad(); - method @Deprecated protected void onReset(); - method @Deprecated protected void onStartLoading(); - method @Deprecated protected void onStopLoading(); - method @Deprecated public void registerListener(int, android.content.Loader.OnLoadCompleteListener); - method @Deprecated public void registerOnLoadCanceledListener(android.content.Loader.OnLoadCanceledListener); - method @Deprecated public void reset(); - method @Deprecated public void rollbackContentChanged(); - method @Deprecated public final void startLoading(); - method @Deprecated public void stopLoading(); - method @Deprecated public boolean takeContentChanged(); - method @Deprecated public void unregisterListener(android.content.Loader.OnLoadCompleteListener); - method @Deprecated public void unregisterOnLoadCanceledListener(android.content.Loader.OnLoadCanceledListener); - } - - @Deprecated public final class Loader.ForceLoadContentObserver extends android.database.ContentObserver { - ctor @Deprecated public Loader.ForceLoadContentObserver(); - } - - @Deprecated public static interface Loader.OnLoadCanceledListener { - method @Deprecated public void onLoadCanceled(android.content.Loader); - } - - @Deprecated public static interface Loader.OnLoadCompleteListener { - method @Deprecated public void onLoadComplete(android.content.Loader, D); - } - - public final class LocusId implements android.os.Parcelable { - ctor public LocusId(@NonNull String); - method public int describeContents(); - method @NonNull public String getId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class MutableContextWrapper extends android.content.ContextWrapper { - ctor public MutableContextWrapper(android.content.Context); - method public void setBaseContext(android.content.Context); - } - - public class OperationApplicationException extends java.lang.Exception { - ctor public OperationApplicationException(); - ctor public OperationApplicationException(String); - ctor public OperationApplicationException(String, Throwable); - ctor public OperationApplicationException(Throwable); - ctor public OperationApplicationException(int); - ctor public OperationApplicationException(String, int); - method public int getNumSuccessfulYieldPoints(); - } - - public class PeriodicSync implements android.os.Parcelable { - ctor public PeriodicSync(android.accounts.Account, String, android.os.Bundle, long); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public final android.accounts.Account account; - field public final String authority; - field public final android.os.Bundle extras; - field public final long period; - } - - public class QuickViewConstants { - field public static final String FEATURE_DELETE = "android:delete"; - field public static final String FEATURE_DOWNLOAD = "android:download"; - field public static final String FEATURE_EDIT = "android:edit"; - field public static final String FEATURE_PRINT = "android:print"; - field public static final String FEATURE_SEND = "android:send"; - field public static final String FEATURE_VIEW = "android:view"; - } - - public class ReceiverCallNotAllowedException extends android.util.AndroidRuntimeException { - ctor public ReceiverCallNotAllowedException(String); - } - - public class RestrictionEntry implements android.os.Parcelable { - ctor public RestrictionEntry(int, String); - ctor public RestrictionEntry(String, String); - ctor public RestrictionEntry(String, boolean); - ctor public RestrictionEntry(String, String[]); - ctor public RestrictionEntry(String, int); - ctor public RestrictionEntry(android.os.Parcel); - method public static android.content.RestrictionEntry createBundleArrayEntry(String, android.content.RestrictionEntry[]); - method public static android.content.RestrictionEntry createBundleEntry(String, android.content.RestrictionEntry[]); - method public int describeContents(); - method public String[] getAllSelectedStrings(); - method public String[] getChoiceEntries(); - method public String[] getChoiceValues(); - method public String getDescription(); - method public int getIntValue(); - method public String getKey(); - method public android.content.RestrictionEntry[] getRestrictions(); - method public boolean getSelectedState(); - method public String getSelectedString(); - method public String getTitle(); - method public int getType(); - method public void setAllSelectedStrings(String[]); - method public void setChoiceEntries(String[]); - method public void setChoiceEntries(android.content.Context, @ArrayRes int); - method public void setChoiceValues(String[]); - method public void setChoiceValues(android.content.Context, @ArrayRes int); - method public void setDescription(String); - method public void setIntValue(int); - method public void setRestrictions(android.content.RestrictionEntry[]); - method public void setSelectedState(boolean); - method public void setSelectedString(String); - method public void setTitle(String); - method public void setType(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_BOOLEAN = 1; // 0x1 - field public static final int TYPE_BUNDLE = 7; // 0x7 - field public static final int TYPE_BUNDLE_ARRAY = 8; // 0x8 - field public static final int TYPE_CHOICE = 2; // 0x2 - field public static final int TYPE_INTEGER = 5; // 0x5 - field public static final int TYPE_MULTI_SELECT = 4; // 0x4 - field public static final int TYPE_NULL = 0; // 0x0 - field public static final int TYPE_STRING = 6; // 0x6 - } - - public class RestrictionsManager { - method public static android.os.Bundle convertRestrictionsToBundle(java.util.List); - method public android.content.Intent createLocalApprovalIntent(); - method public android.os.Bundle getApplicationRestrictions(); - method @NonNull @WorkerThread public java.util.List getApplicationRestrictionsPerAdmin(); - method public java.util.List getManifestRestrictions(String); - method public boolean hasRestrictionsProvider(); - method public void notifyPermissionResponse(String, android.os.PersistableBundle); - method public void requestPermission(String, String, android.os.PersistableBundle); - field public static final String ACTION_PERMISSION_RESPONSE_RECEIVED = "android.content.action.PERMISSION_RESPONSE_RECEIVED"; - field public static final String ACTION_REQUEST_LOCAL_APPROVAL = "android.content.action.REQUEST_LOCAL_APPROVAL"; - field public static final String ACTION_REQUEST_PERMISSION = "android.content.action.REQUEST_PERMISSION"; - field public static final String EXTRA_PACKAGE_NAME = "android.content.extra.PACKAGE_NAME"; - field public static final String EXTRA_REQUEST_BUNDLE = "android.content.extra.REQUEST_BUNDLE"; - field public static final String EXTRA_REQUEST_ID = "android.content.extra.REQUEST_ID"; - field public static final String EXTRA_REQUEST_TYPE = "android.content.extra.REQUEST_TYPE"; - field public static final String EXTRA_RESPONSE_BUNDLE = "android.content.extra.RESPONSE_BUNDLE"; - field public static final String META_DATA_APP_RESTRICTIONS = "android.content.APP_RESTRICTIONS"; - field public static final String REQUEST_KEY_APPROVE_LABEL = "android.request.approve_label"; - field public static final String REQUEST_KEY_DATA = "android.request.data"; - field public static final String REQUEST_KEY_DENY_LABEL = "android.request.deny_label"; - field public static final String REQUEST_KEY_ICON = "android.request.icon"; - field public static final String REQUEST_KEY_ID = "android.request.id"; - field public static final String REQUEST_KEY_MESSAGE = "android.request.mesg"; - field public static final String REQUEST_KEY_NEW_REQUEST = "android.request.new_request"; - field public static final String REQUEST_KEY_TITLE = "android.request.title"; - field public static final String REQUEST_TYPE_APPROVAL = "android.request.type.approval"; - field public static final String RESPONSE_KEY_ERROR_CODE = "android.response.errorcode"; - field public static final String RESPONSE_KEY_MESSAGE = "android.response.msg"; - field public static final String RESPONSE_KEY_RESPONSE_TIMESTAMP = "android.response.timestamp"; - field public static final String RESPONSE_KEY_RESULT = "android.response.result"; - field public static final int RESULT_APPROVED = 1; // 0x1 - field public static final int RESULT_DENIED = 2; // 0x2 - field public static final int RESULT_ERROR = 5; // 0x5 - field public static final int RESULT_ERROR_BAD_REQUEST = 1; // 0x1 - field public static final int RESULT_ERROR_INTERNAL = 3; // 0x3 - field public static final int RESULT_ERROR_NETWORK = 2; // 0x2 - field public static final int RESULT_NO_RESPONSE = 3; // 0x3 - field public static final int RESULT_UNKNOWN_REQUEST = 4; // 0x4 - } - - public class SearchRecentSuggestionsProvider extends android.content.ContentProvider { - ctor public SearchRecentSuggestionsProvider(); - method public int delete(android.net.Uri, String, String[]); - method public String getType(android.net.Uri); - method public android.net.Uri insert(android.net.Uri, android.content.ContentValues); - method public boolean onCreate(); - method public android.database.Cursor query(android.net.Uri, String[], String, String[], String); - method protected void setupSuggestions(String, int); - method public int update(android.net.Uri, android.content.ContentValues, String, String[]); - field public static final int DATABASE_MODE_2LINES = 2; // 0x2 - field public static final int DATABASE_MODE_QUERIES = 1; // 0x1 - } - - public interface ServiceConnection { - method public default void onBindingDied(android.content.ComponentName); - method public default void onNullBinding(android.content.ComponentName); - method public void onServiceConnected(android.content.ComponentName, android.os.IBinder); - method public void onServiceDisconnected(android.content.ComponentName); - } - - public interface SharedPreferences { - method public boolean contains(String); - method public android.content.SharedPreferences.Editor edit(); - method public java.util.Map getAll(); - method public boolean getBoolean(String, boolean); - method public float getFloat(String, float); - method public int getInt(String, int); - method public long getLong(String, long); - method @Nullable public String getString(String, @Nullable String); - method @Nullable public java.util.Set getStringSet(String, @Nullable java.util.Set); - method public void registerOnSharedPreferenceChangeListener(android.content.SharedPreferences.OnSharedPreferenceChangeListener); - method public void unregisterOnSharedPreferenceChangeListener(android.content.SharedPreferences.OnSharedPreferenceChangeListener); - } - - public static interface SharedPreferences.Editor { - method public void apply(); - method public android.content.SharedPreferences.Editor clear(); - method public boolean commit(); - method public android.content.SharedPreferences.Editor putBoolean(String, boolean); - method public android.content.SharedPreferences.Editor putFloat(String, float); - method public android.content.SharedPreferences.Editor putInt(String, int); - method public android.content.SharedPreferences.Editor putLong(String, long); - method public android.content.SharedPreferences.Editor putString(String, @Nullable String); - method public android.content.SharedPreferences.Editor putStringSet(String, @Nullable java.util.Set); - method public android.content.SharedPreferences.Editor remove(String); - } - - public static interface SharedPreferences.OnSharedPreferenceChangeListener { - method public void onSharedPreferenceChanged(android.content.SharedPreferences, @Nullable String); - } - - public class SyncAdapterType implements android.os.Parcelable { - ctor public SyncAdapterType(String, String, boolean, boolean); - ctor public SyncAdapterType(android.os.Parcel); - method public boolean allowParallelSyncs(); - method public int describeContents(); - method public String getSettingsActivity(); - method public boolean isAlwaysSyncable(); - method public boolean isUserVisible(); - method public static android.content.SyncAdapterType newKey(String, String); - method public boolean supportsUploading(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public final String accountType; - field public final String authority; - field public final boolean isKey; - } - - public class SyncContext { - method public android.os.IBinder getSyncContextBinder(); - method public void onFinished(android.content.SyncResult); - } - - public class SyncInfo implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field public final android.accounts.Account account; - field public final String authority; - field public final long startTime; - } - - public class SyncRequest implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class SyncRequest.Builder { - ctor public SyncRequest.Builder(); - method public android.content.SyncRequest build(); - method public android.content.SyncRequest.Builder setDisallowMetered(boolean); - method public android.content.SyncRequest.Builder setExpedited(boolean); - method public android.content.SyncRequest.Builder setExtras(android.os.Bundle); - method public android.content.SyncRequest.Builder setIgnoreBackoff(boolean); - method public android.content.SyncRequest.Builder setIgnoreSettings(boolean); - method public android.content.SyncRequest.Builder setManual(boolean); - method public android.content.SyncRequest.Builder setNoRetry(boolean); - method public android.content.SyncRequest.Builder setRequiresCharging(boolean); - method @NonNull public android.content.SyncRequest.Builder setScheduleAsExpeditedJob(boolean); - method public android.content.SyncRequest.Builder setSyncAdapter(android.accounts.Account, String); - method public android.content.SyncRequest.Builder syncOnce(); - method public android.content.SyncRequest.Builder syncPeriodic(long, long); - } - - public final class SyncResult implements android.os.Parcelable { - ctor public SyncResult(); - method public void clear(); - method public int describeContents(); - method public boolean hasError(); - method public boolean hasHardError(); - method public boolean hasSoftError(); - method public boolean madeSomeProgress(); - method public String toDebugString(); - method public void writeToParcel(android.os.Parcel, int); - field public static final android.content.SyncResult ALREADY_IN_PROGRESS; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public boolean databaseError; - field public long delayUntil; - field public boolean fullSyncRequested; - field public boolean moreRecordsToGet; - field public boolean partialSyncUnavailable; - field public final android.content.SyncStats stats; - field public final boolean syncAlreadyInProgress; - field public boolean tooManyDeletions; - field public boolean tooManyRetries; - } - - public class SyncStats implements android.os.Parcelable { - ctor public SyncStats(); - ctor public SyncStats(android.os.Parcel); - method public void clear(); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public long numAuthExceptions; - field public long numConflictDetectedExceptions; - field public long numDeletes; - field public long numEntries; - field public long numInserts; - field public long numIoExceptions; - field public long numParseExceptions; - field public long numSkippedEntries; - field public long numUpdates; - } - - public interface SyncStatusObserver { - method public void onStatusChanged(int); - } - - public class UriMatcher { - ctor public UriMatcher(int); - method public void addURI(String, String, int); - method public int match(android.net.Uri); - field public static final int NO_MATCH = -1; // 0xffffffff - } - - public final class UriPermission implements android.os.Parcelable { - method public int describeContents(); - method public long getPersistedTime(); - method public android.net.Uri getUri(); - method public boolean isReadPermission(); - method public boolean isWritePermission(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final long INVALID_TIME = -9223372036854775808L; // 0x8000000000000000L - } - - @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final class UriRelativeFilter { - ctor public UriRelativeFilter(int, int, @NonNull String); - method @NonNull public String getFilter(); - method public int getPatternType(); - method public int getUriPart(); - method public boolean matchData(@NonNull android.net.Uri); - field public static final int FRAGMENT = 2; // 0x2 - field public static final int PATH = 0; // 0x0 - field public static final int QUERY = 1; // 0x1 - } - - @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final class UriRelativeFilterGroup { - ctor public UriRelativeFilterGroup(int); - method public void addUriRelativeFilter(@NonNull android.content.UriRelativeFilter); - method public int getAction(); - method @NonNull public java.util.Collection getUriRelativeFilters(); - method public boolean matchData(@NonNull android.net.Uri); - field public static final int ACTION_ALLOW = 0; // 0x0 - field public static final int ACTION_BLOCK = 1; // 0x1 - } - -} - -package android.content.om { - - public class FabricatedOverlay { - ctor public FabricatedOverlay(@NonNull String, @NonNull String); - method @NonNull public android.content.om.OverlayIdentifier getIdentifier(); - method @FlaggedApi("android.content.res.nine_patch_frro") @NonNull public void setNinePatchResourceValue(@NonNull String, @NonNull android.os.ParcelFileDescriptor, @Nullable String); - method @NonNull public void setResourceValue(@NonNull String, @IntRange(from=android.util.TypedValue.TYPE_FIRST_INT, to=android.util.TypedValue.TYPE_LAST_INT) int, int, @Nullable String); - method @NonNull public void setResourceValue(@NonNull String, int, @NonNull String, @Nullable String); - method @NonNull public void setResourceValue(@NonNull String, @NonNull android.os.ParcelFileDescriptor, @Nullable String); - method @FlaggedApi("android.content.res.asset_file_descriptor_frro") @NonNull public void setResourceValue(@NonNull String, @NonNull android.content.res.AssetFileDescriptor, @Nullable String); - method @FlaggedApi("android.content.res.dimension_frro") public void setResourceValue(@NonNull String, float, int, @Nullable String); - method public void setTargetOverlayable(@Nullable String); - } - - public final class OverlayIdentifier implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class OverlayInfo implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.content.om.OverlayIdentifier getOverlayIdentifier(); - method @Nullable public String getOverlayName(); - method @Nullable public String getTargetOverlayableName(); - method @NonNull public String getTargetPackageName(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class OverlayManager { - method public void commit(@NonNull android.content.om.OverlayManagerTransaction); - method @NonNull @NonUiContext public java.util.List getOverlayInfosForTarget(@NonNull String); - } - - public final class OverlayManagerTransaction implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public static android.content.om.OverlayManagerTransaction newInstance(); - method @NonNull public void registerFabricatedOverlay(@NonNull android.content.om.FabricatedOverlay); - method @NonNull public void unregisterFabricatedOverlay(@NonNull android.content.om.OverlayIdentifier); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.content.pm { - - public class ActivityInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable { - ctor public ActivityInfo(); - ctor public ActivityInfo(android.content.pm.ActivityInfo); - method public int describeContents(); - method public void dump(android.util.Printer, String); - method @NonNull public java.util.Set getKnownActivityEmbeddingCerts(); - method public final int getThemeResource(); - field public static final int COLOR_MODE_DEFAULT = 0; // 0x0 - field public static final int COLOR_MODE_HDR = 2; // 0x2 - field public static final int COLOR_MODE_WIDE_COLOR_GAMUT = 1; // 0x1 - field @FlaggedApi("android.content.res.handle_all_config_changes") public static final int CONFIG_ASSETS_PATHS = -2147483648; // 0x80000000 - field public static final int CONFIG_COLOR_MODE = 16384; // 0x4000 - field public static final int CONFIG_DENSITY = 4096; // 0x1000 - field public static final int CONFIG_FONT_SCALE = 1073741824; // 0x40000000 - field public static final int CONFIG_FONT_WEIGHT_ADJUSTMENT = 268435456; // 0x10000000 - field public static final int CONFIG_GRAMMATICAL_GENDER = 32768; // 0x8000 - field public static final int CONFIG_KEYBOARD = 16; // 0x10 - field public static final int CONFIG_KEYBOARD_HIDDEN = 32; // 0x20 - field public static final int CONFIG_LAYOUT_DIRECTION = 8192; // 0x2000 - field public static final int CONFIG_LOCALE = 4; // 0x4 - field public static final int CONFIG_MCC = 1; // 0x1 - field public static final int CONFIG_MNC = 2; // 0x2 - field public static final int CONFIG_NAVIGATION = 64; // 0x40 - field public static final int CONFIG_ORIENTATION = 128; // 0x80 - field @FlaggedApi("android.content.res.handle_all_config_changes") public static final int CONFIG_RESOURCES_UNUSED = 134217728; // 0x8000000 - field public static final int CONFIG_SCREEN_LAYOUT = 256; // 0x100 - field public static final int CONFIG_SCREEN_SIZE = 1024; // 0x400 - field public static final int CONFIG_SMALLEST_SCREEN_SIZE = 2048; // 0x800 - field public static final int CONFIG_TOUCHSCREEN = 8; // 0x8 - field public static final int CONFIG_UI_MODE = 512; // 0x200 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DOCUMENT_LAUNCH_ALWAYS = 2; // 0x2 - field public static final int DOCUMENT_LAUNCH_INTO_EXISTING = 1; // 0x1 - field public static final int DOCUMENT_LAUNCH_NEVER = 3; // 0x3 - field public static final int DOCUMENT_LAUNCH_NONE = 0; // 0x0 - field public static final int FLAG_ALLOW_TASK_REPARENTING = 64; // 0x40 - field public static final int FLAG_ALLOW_UNTRUSTED_ACTIVITY_EMBEDDING = 268435456; // 0x10000000 - field public static final int FLAG_ALWAYS_RETAIN_TASK_STATE = 8; // 0x8 - field public static final int FLAG_AUTO_REMOVE_FROM_RECENTS = 8192; // 0x2000 - field public static final int FLAG_CLEAR_TASK_ON_LAUNCH = 4; // 0x4 - field public static final int FLAG_ENABLE_VR_MODE = 32768; // 0x8000 - field public static final int FLAG_EXCLUDE_FROM_RECENTS = 32; // 0x20 - field public static final int FLAG_FINISH_ON_CLOSE_SYSTEM_DIALOGS = 256; // 0x100 - field public static final int FLAG_FINISH_ON_TASK_LAUNCH = 2; // 0x2 - field public static final int FLAG_HARDWARE_ACCELERATED = 512; // 0x200 - field public static final int FLAG_IMMERSIVE = 2048; // 0x800 - field public static final int FLAG_MULTIPROCESS = 1; // 0x1 - field public static final int FLAG_NO_HISTORY = 128; // 0x80 - field public static final int FLAG_PREFER_MINIMAL_POST_PROCESSING = 33554432; // 0x2000000 - field public static final int FLAG_RELINQUISH_TASK_IDENTITY = 4096; // 0x1000 - field public static final int FLAG_RESUME_WHILE_PAUSING = 16384; // 0x4000 - field public static final int FLAG_SINGLE_USER = 1073741824; // 0x40000000 - field public static final int FLAG_STATE_NOT_NEEDED = 16; // 0x10 - field public static final int LAUNCH_MULTIPLE = 0; // 0x0 - field public static final int LAUNCH_SINGLE_INSTANCE = 3; // 0x3 - field public static final int LAUNCH_SINGLE_INSTANCE_PER_TASK = 4; // 0x4 - field public static final int LAUNCH_SINGLE_TASK = 2; // 0x2 - field public static final int LAUNCH_SINGLE_TOP = 1; // 0x1 - field public static final int PERSIST_ACROSS_REBOOTS = 2; // 0x2 - field public static final int PERSIST_NEVER = 1; // 0x1 - field public static final int PERSIST_ROOT_ONLY = 0; // 0x0 - field public static final int SCREEN_ORIENTATION_BEHIND = 3; // 0x3 - field public static final int SCREEN_ORIENTATION_FULL_SENSOR = 10; // 0xa - field public static final int SCREEN_ORIENTATION_FULL_USER = 13; // 0xd - field public static final int SCREEN_ORIENTATION_LANDSCAPE = 0; // 0x0 - field public static final int SCREEN_ORIENTATION_LOCKED = 14; // 0xe - field public static final int SCREEN_ORIENTATION_NOSENSOR = 5; // 0x5 - field public static final int SCREEN_ORIENTATION_PORTRAIT = 1; // 0x1 - field public static final int SCREEN_ORIENTATION_REVERSE_LANDSCAPE = 8; // 0x8 - field public static final int SCREEN_ORIENTATION_REVERSE_PORTRAIT = 9; // 0x9 - field public static final int SCREEN_ORIENTATION_SENSOR = 4; // 0x4 - field public static final int SCREEN_ORIENTATION_SENSOR_LANDSCAPE = 6; // 0x6 - field public static final int SCREEN_ORIENTATION_SENSOR_PORTRAIT = 7; // 0x7 - field public static final int SCREEN_ORIENTATION_UNSPECIFIED = -1; // 0xffffffff - field public static final int SCREEN_ORIENTATION_USER = 2; // 0x2 - field public static final int SCREEN_ORIENTATION_USER_LANDSCAPE = 11; // 0xb - field public static final int SCREEN_ORIENTATION_USER_PORTRAIT = 12; // 0xc - field public static final int UIOPTION_SPLIT_ACTION_BAR_WHEN_NARROW = 1; // 0x1 - field public int colorMode; - field public int configChanges; - field public int documentLaunchMode; - field public int flags; - field public int launchMode; - field public int maxRecents; - field public String parentActivityName; - field public String permission; - field public int persistableMode; - field @Nullable public String requiredDisplayCategory; - field public int screenOrientation; - field public int softInputMode; - field public String targetActivity; - field public String taskAffinity; - field public int theme; - field public int uiOptions; - field public android.content.pm.ActivityInfo.WindowLayout windowLayout; - } - - public static final class ActivityInfo.WindowLayout { - ctor public ActivityInfo.WindowLayout(int, float, int, float, int, int, int); - field public final int gravity; - field public final int height; - field public final float heightFraction; - field public final int minHeight; - field public final int minWidth; - field public final int width; - field public final float widthFraction; - } - - public final class ApkChecksum implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public java.security.cert.Certificate getInstallerCertificate() throws java.security.cert.CertificateException; - method @Nullable public String getInstallerPackageName(); - method @Nullable public String getSplitName(); - method public int getType(); - method @NonNull public byte[] getValue(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { - ctor public ApplicationInfo(); - ctor public ApplicationInfo(android.content.pm.ApplicationInfo); - method public boolean areAttributionsUserVisible(); - method public int describeContents(); - method public void dump(android.util.Printer, String); - method public static CharSequence getCategoryTitle(android.content.Context, int); - method public int getGwpAsanMode(); - method @NonNull public java.util.Set getKnownActivityEmbeddingCerts(); - method public int getMemtagMode(); - method public int getNativeHeapZeroInitialized(); - method public int getRequestRawExternalStorageAccess(); - method @FlaggedApi("android.content.pm.audio_playback_capture_allowance") public boolean isAudioPlaybackCaptureAllowed(); - method public boolean isProfileable(); - method public boolean isProfileableByShell(); - method public boolean isResourceOverlay(); - method public boolean isVirtualPreload(); - method public CharSequence loadDescription(android.content.pm.PackageManager); - field public static final int CATEGORY_ACCESSIBILITY = 8; // 0x8 - field public static final int CATEGORY_AUDIO = 1; // 0x1 - field public static final int CATEGORY_GAME = 0; // 0x0 - field public static final int CATEGORY_IMAGE = 3; // 0x3 - field public static final int CATEGORY_MAPS = 6; // 0x6 - field public static final int CATEGORY_NEWS = 5; // 0x5 - field public static final int CATEGORY_PRODUCTIVITY = 7; // 0x7 - field public static final int CATEGORY_SOCIAL = 4; // 0x4 - field public static final int CATEGORY_UNDEFINED = -1; // 0xffffffff - field public static final int CATEGORY_VIDEO = 2; // 0x2 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_ALLOW_BACKUP = 32768; // 0x8000 - field public static final int FLAG_ALLOW_CLEAR_USER_DATA = 64; // 0x40 - field public static final int FLAG_ALLOW_TASK_REPARENTING = 32; // 0x20 - field public static final int FLAG_DEBUGGABLE = 2; // 0x2 - field public static final int FLAG_EXTERNAL_STORAGE = 262144; // 0x40000 - field public static final int FLAG_EXTRACT_NATIVE_LIBS = 268435456; // 0x10000000 - field public static final int FLAG_FACTORY_TEST = 16; // 0x10 - field public static final int FLAG_FULL_BACKUP_ONLY = 67108864; // 0x4000000 - field public static final int FLAG_HARDWARE_ACCELERATED = 536870912; // 0x20000000 - field public static final int FLAG_HAS_CODE = 4; // 0x4 - field public static final int FLAG_INSTALLED = 8388608; // 0x800000 - field public static final int FLAG_IS_DATA_ONLY = 16777216; // 0x1000000 - field @Deprecated public static final int FLAG_IS_GAME = 33554432; // 0x2000000 - field public static final int FLAG_KILL_AFTER_RESTORE = 65536; // 0x10000 - field public static final int FLAG_LARGE_HEAP = 1048576; // 0x100000 - field public static final int FLAG_MULTIARCH = -2147483648; // 0x80000000 - field public static final int FLAG_PERSISTENT = 8; // 0x8 - field public static final int FLAG_RESIZEABLE_FOR_SCREENS = 4096; // 0x1000 - field public static final int FLAG_RESTORE_ANY_VERSION = 131072; // 0x20000 - field public static final int FLAG_STOPPED = 2097152; // 0x200000 - field public static final int FLAG_SUPPORTS_LARGE_SCREENS = 2048; // 0x800 - field public static final int FLAG_SUPPORTS_NORMAL_SCREENS = 1024; // 0x400 - field public static final int FLAG_SUPPORTS_RTL = 4194304; // 0x400000 - field @Deprecated public static final int FLAG_SUPPORTS_SCREEN_DENSITIES = 8192; // 0x2000 - field public static final int FLAG_SUPPORTS_SMALL_SCREENS = 512; // 0x200 - field public static final int FLAG_SUPPORTS_XLARGE_SCREENS = 524288; // 0x80000 - field public static final int FLAG_SUSPENDED = 1073741824; // 0x40000000 - field public static final int FLAG_SYSTEM = 1; // 0x1 - field public static final int FLAG_TEST_ONLY = 256; // 0x100 - field public static final int FLAG_UPDATED_SYSTEM_APP = 128; // 0x80 - field public static final int FLAG_USES_CLEARTEXT_TRAFFIC = 134217728; // 0x8000000 - field public static final int FLAG_VM_SAFE_MODE = 16384; // 0x4000 - field public static final int GWP_ASAN_ALWAYS = 1; // 0x1 - field public static final int GWP_ASAN_DEFAULT = -1; // 0xffffffff - field public static final int GWP_ASAN_NEVER = 0; // 0x0 - field public static final int MEMTAG_ASYNC = 1; // 0x1 - field public static final int MEMTAG_DEFAULT = -1; // 0xffffffff - field public static final int MEMTAG_OFF = 0; // 0x0 - field public static final int MEMTAG_SYNC = 2; // 0x2 - field public static final int RAW_EXTERNAL_STORAGE_ACCESS_DEFAULT = 0; // 0x0 - field public static final int RAW_EXTERNAL_STORAGE_ACCESS_NOT_REQUESTED = 2; // 0x2 - field public static final int RAW_EXTERNAL_STORAGE_ACCESS_REQUESTED = 1; // 0x1 - field public static final int ZEROINIT_DEFAULT = -1; // 0xffffffff - field public static final int ZEROINIT_DISABLED = 0; // 0x0 - field public static final int ZEROINIT_ENABLED = 1; // 0x1 - field public String appComponentFactory; - field public String backupAgentName; - field public int category; - field public String className; - field public int compatibleWidthLimitDp; - field public int compileSdkVersion; - field @Nullable public String compileSdkVersionCodename; - field public String dataDir; - field public int descriptionRes; - field public String deviceProtectedDataDir; - field public boolean enabled; - field public int flags; - field public int largestWidthLimitDp; - field public String manageSpaceActivityName; - field public int minSdkVersion; - field public String nativeLibraryDir; - field public String permission; - field public String processName; - field public String publicSourceDir; - field public int requiresSmallestWidthDp; - field public String[] sharedLibraryFiles; - field public String sourceDir; - field @Nullable public String[] splitNames; - field @Nullable public String[] splitPublicSourceDirs; - field @Nullable public String[] splitSourceDirs; - field public java.util.UUID storageUuid; - field public int targetSdkVersion; - field public String taskAffinity; - field public int theme; - field public int uiOptions; - field public int uid; - } - - public static class ApplicationInfo.DisplayNameComparator implements java.util.Comparator { - ctor public ApplicationInfo.DisplayNameComparator(android.content.pm.PackageManager); - method public final int compare(android.content.pm.ApplicationInfo, android.content.pm.ApplicationInfo); - } - - @FlaggedApi("android.content.pm.archiving") public final class ArchivedActivityInfo { - ctor public ArchivedActivityInfo(@NonNull CharSequence, @NonNull android.content.ComponentName); - method @NonNull public android.content.ComponentName getComponentName(); - method @Nullable public android.graphics.drawable.Drawable getIcon(); - method @NonNull public CharSequence getLabel(); - method @Nullable public android.graphics.drawable.Drawable getMonochromeIcon(); - method @NonNull public android.content.pm.ArchivedActivityInfo setComponentName(@NonNull android.content.ComponentName); - method @NonNull public android.content.pm.ArchivedActivityInfo setIcon(@NonNull android.graphics.drawable.Drawable); - method @NonNull public android.content.pm.ArchivedActivityInfo setLabel(@NonNull CharSequence); - method @NonNull public android.content.pm.ArchivedActivityInfo setMonochromeIcon(@NonNull android.graphics.drawable.Drawable); - } - - @FlaggedApi("android.content.pm.archiving") public final class ArchivedPackageInfo { - ctor public ArchivedPackageInfo(@NonNull String, @NonNull android.content.pm.SigningInfo, @NonNull java.util.List); - method @Nullable public String getDefaultToDeviceProtectedStorage(); - method @NonNull public java.util.List getLauncherActivities(); - method @NonNull public String getPackageName(); - method @Nullable public String getRequestLegacyExternalStorage(); - method @NonNull public android.content.pm.SigningInfo getSigningInfo(); - method public int getTargetSdkVersion(); - method @Nullable public String getUserDataFragile(); - method public int getVersionCode(); - method public int getVersionCodeMajor(); - method @NonNull public android.content.pm.ArchivedPackageInfo setDefaultToDeviceProtectedStorage(@NonNull String); - method @NonNull public android.content.pm.ArchivedPackageInfo setLauncherActivities(@NonNull java.util.List); - method @NonNull public android.content.pm.ArchivedPackageInfo setPackageName(@NonNull String); - method @NonNull public android.content.pm.ArchivedPackageInfo setRequestLegacyExternalStorage(@NonNull String); - method @NonNull public android.content.pm.ArchivedPackageInfo setSigningInfo(@NonNull android.content.pm.SigningInfo); - method @NonNull public android.content.pm.ArchivedPackageInfo setTargetSdkVersion(int); - method @NonNull public android.content.pm.ArchivedPackageInfo setUserDataFragile(@NonNull String); - method @NonNull public android.content.pm.ArchivedPackageInfo setVersionCode(int); - method @NonNull public android.content.pm.ArchivedPackageInfo setVersionCodeMajor(int); - } - - public final class Attribution implements android.os.Parcelable { - method public int describeContents(); - method @IdRes public int getLabel(); - method @NonNull public String getTag(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class Capability implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getName(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class Capability.Builder { - ctor public Capability.Builder(@NonNull String); - method @NonNull public android.content.pm.Capability build(); - } - - public final class CapabilityParams implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getAliases(); - method @NonNull public String getName(); - method @NonNull public String getValue(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class CapabilityParams.Builder { - ctor public CapabilityParams.Builder(@NonNull String, @NonNull String); - method @NonNull public android.content.pm.CapabilityParams.Builder addAlias(@NonNull String); - method @NonNull public android.content.pm.CapabilityParams build(); - } - - public final class ChangedPackages implements android.os.Parcelable { - ctor public ChangedPackages(int, @NonNull java.util.List); - method public int describeContents(); - method @NonNull public java.util.List getPackageNames(); - method public int getSequenceNumber(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class Checksum implements android.os.Parcelable { - ctor public Checksum(int, @NonNull byte[]); - method public int describeContents(); - method public int getType(); - method @NonNull public byte[] getValue(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA256 = 32; // 0x20 - field public static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA512 = 64; // 0x40 - field @Deprecated public static final int TYPE_WHOLE_MD5 = 2; // 0x2 - field public static final int TYPE_WHOLE_MERKLE_ROOT_4K_SHA256 = 1; // 0x1 - field @Deprecated public static final int TYPE_WHOLE_SHA1 = 4; // 0x4 - field @Deprecated public static final int TYPE_WHOLE_SHA256 = 8; // 0x8 - field @Deprecated public static final int TYPE_WHOLE_SHA512 = 16; // 0x10 - } - - public class ComponentInfo extends android.content.pm.PackageItemInfo { - ctor public ComponentInfo(); - ctor public ComponentInfo(android.content.pm.ComponentInfo); - ctor protected ComponentInfo(android.os.Parcel); - method public final int getBannerResource(); - method public final int getIconResource(); - method public final int getLogoResource(); - method public boolean isEnabled(); - field public android.content.pm.ApplicationInfo applicationInfo; - field public String[] attributionTags; - field public int descriptionRes; - field public boolean directBootAware; - field public boolean enabled; - field public boolean exported; - field public String processName; - field public String splitName; - } - - public class ConfigurationInfo implements android.os.Parcelable { - ctor public ConfigurationInfo(); - ctor public ConfigurationInfo(android.content.pm.ConfigurationInfo); - method public int describeContents(); - method public String getGlEsVersion(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int GL_ES_VERSION_UNDEFINED = 0; // 0x0 - field public static final int INPUT_FEATURE_FIVE_WAY_NAV = 2; // 0x2 - field public static final int INPUT_FEATURE_HARD_KEYBOARD = 1; // 0x1 - field public int reqGlEsVersion; - field public int reqInputFeatures; - field public int reqKeyboardType; - field public int reqNavigation; - field public int reqTouchScreen; - } - - public class CrossProfileApps { - method public boolean canInteractAcrossProfiles(); - method public boolean canRequestInteractAcrossProfiles(); - method @NonNull public android.content.Intent createRequestInteractAcrossProfilesIntent(); - method @NonNull public android.graphics.drawable.Drawable getProfileSwitchingIconDrawable(@NonNull android.os.UserHandle); - method @NonNull public CharSequence getProfileSwitchingLabel(@NonNull android.os.UserHandle); - method @NonNull public java.util.List getTargetUserProfiles(); - method @FlaggedApi("android.app.admin.flags.allow_querying_profile_type") public boolean isManagedProfile(@NonNull android.os.UserHandle); - method @FlaggedApi("android.app.admin.flags.allow_querying_profile_type") public boolean isProfile(@NonNull android.os.UserHandle); - method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_PROFILES, "android.permission.INTERACT_ACROSS_USERS"}) public void startActivity(@NonNull android.content.Intent, @NonNull android.os.UserHandle, @Nullable android.app.Activity); - method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_PROFILES, "android.permission.INTERACT_ACROSS_USERS"}) public void startActivity(@NonNull android.content.Intent, @NonNull android.os.UserHandle, @Nullable android.app.Activity, @Nullable android.os.Bundle); - method public void startMainActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); - method public void startMainActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle, @Nullable android.app.Activity, @Nullable android.os.Bundle); - field public static final String ACTION_CAN_INTERACT_ACROSS_PROFILES_CHANGED = "android.content.pm.action.CAN_INTERACT_ACROSS_PROFILES_CHANGED"; - } - - public final class FeatureGroupInfo implements android.os.Parcelable { - ctor public FeatureGroupInfo(); - ctor public FeatureGroupInfo(android.content.pm.FeatureGroupInfo); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public android.content.pm.FeatureInfo[] features; - } - - public class FeatureInfo implements android.os.Parcelable { - ctor public FeatureInfo(); - ctor public FeatureInfo(android.content.pm.FeatureInfo); - method public int describeContents(); - method public String getGlEsVersion(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_REQUIRED = 1; // 0x1 - field public static final int GL_ES_VERSION_UNDEFINED = 0; // 0x0 - field public int flags; - field public String name; - field public int reqGlEsVersion; - field public int version; - } - - public final class InstallSourceInfo implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getInitiatingPackageName(); - method @Nullable public android.content.pm.SigningInfo getInitiatingPackageSigningInfo(); - method @Nullable public String getInstallingPackageName(); - method @Nullable public String getOriginatingPackageName(); - method public int getPackageSource(); - method @Nullable public String getUpdateOwnerPackageName(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class InstrumentationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { - ctor public InstrumentationInfo(); - ctor public InstrumentationInfo(android.content.pm.InstrumentationInfo); - method public int describeContents(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public String dataDir; - field public boolean functionalTest; - field public boolean handleProfiling; - field public String publicSourceDir; - field public String sourceDir; - field public String[] splitNames; - field public String[] splitPublicSourceDirs; - field public String[] splitSourceDirs; - field public String targetPackage; - field public String targetProcesses; - } - - public class LabeledIntent extends android.content.Intent { - ctor public LabeledIntent(android.content.Intent, String, int, int); - ctor public LabeledIntent(android.content.Intent, String, CharSequence, int); - ctor public LabeledIntent(String, int, int); - ctor public LabeledIntent(String, CharSequence, int); - method public int getIconResource(); - method public int getLabelResource(); - method public CharSequence getNonLocalizedLabel(); - method public String getSourcePackage(); - method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); - method public CharSequence loadLabel(android.content.pm.PackageManager); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class LauncherActivityInfo { - method @NonNull public android.content.pm.ActivityInfo getActivityInfo(); - method public android.content.pm.ApplicationInfo getApplicationInfo(); - method public android.graphics.drawable.Drawable getBadgedIcon(int); - method public android.content.ComponentName getComponentName(); - method public long getFirstInstallTime(); - method public android.graphics.drawable.Drawable getIcon(int); - method public CharSequence getLabel(); - method @FloatRange(from=0.0, to=1.0) public float getLoadingProgress(); - method public String getName(); - method public android.os.UserHandle getUser(); - } - - public class LauncherApps { - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public java.util.List getActivityList(String, android.os.UserHandle); - method @NonNull @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public java.util.List getAllPackageInstallerSessions(); - method @FlaggedApi("android.os.allow_private_profile") @Nullable @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.content.IntentSender getAppMarketActivityIntent(@Nullable String, @NonNull android.os.UserHandle); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.content.pm.ApplicationInfo getApplicationInfo(@NonNull String, int, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException; - method @FlaggedApi("android.os.allow_private_profile") @Nullable @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public final android.content.pm.LauncherUserInfo getLauncherUserInfo(@NonNull android.os.UserHandle); - method public android.content.pm.LauncherApps.PinItemRequest getPinItemRequest(android.content.Intent); - method @FlaggedApi("android.os.allow_private_profile") @NonNull @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public java.util.List getPreInstalledSystemPackages(@NonNull android.os.UserHandle); - method @FlaggedApi("android.os.get_private_space_settings") @Nullable @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.content.IntentSender getPrivateSpaceSettingsIntent(); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public java.util.List getProfiles(); - method public android.graphics.drawable.Drawable getShortcutBadgedIconDrawable(android.content.pm.ShortcutInfo, int); - method @Nullable public android.content.IntentSender getShortcutConfigActivityIntent(@NonNull android.content.pm.LauncherActivityInfo); - method public java.util.List getShortcutConfigActivityList(@Nullable String, @NonNull android.os.UserHandle); - method public android.graphics.drawable.Drawable getShortcutIconDrawable(@NonNull android.content.pm.ShortcutInfo, int); - method @Nullable public android.app.PendingIntent getShortcutIntent(@NonNull String, @NonNull String, @Nullable android.os.Bundle, @NonNull android.os.UserHandle); - method @Nullable public java.util.List getShortcuts(@NonNull android.content.pm.LauncherApps.ShortcutQuery, @NonNull android.os.UserHandle); - method @Nullable @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.os.Bundle getSuspendedPackageLauncherExtras(String, android.os.UserHandle); - method public boolean hasShortcutHostPermission(); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public boolean isActivityEnabled(android.content.ComponentName, android.os.UserHandle); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public boolean isPackageEnabled(String, android.os.UserHandle); - method @RequiresPermission(conditional=true, value="android.permission.ACCESS_SHORTCUTS") public void pinShortcuts(@NonNull String, @NonNull java.util.List, @NonNull android.os.UserHandle); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public void registerCallback(android.content.pm.LauncherApps.Callback); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public void registerCallback(android.content.pm.LauncherApps.Callback, android.os.Handler); - method public void registerPackageInstallerSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.content.pm.PackageInstaller.SessionCallback); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.content.pm.LauncherActivityInfo resolveActivity(android.content.Intent, android.os.UserHandle); - method @FlaggedApi("android.content.pm.archiving") public void setArchiveCompatibility(@NonNull android.content.pm.LauncherApps.ArchiveCompatibilityParams); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public boolean shouldHideFromSuggestions(@NonNull String, @NonNull android.os.UserHandle); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public void startAppDetailsActivity(android.content.ComponentName, android.os.UserHandle, android.graphics.Rect, android.os.Bundle); - method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public void startMainActivity(android.content.ComponentName, android.os.UserHandle, android.graphics.Rect, android.os.Bundle); - method public void startPackageInstallerSessionDetailsActivity(@NonNull android.content.pm.PackageInstaller.SessionInfo, @Nullable android.graphics.Rect, @Nullable android.os.Bundle); - method public void startShortcut(@NonNull String, @NonNull String, @Nullable android.graphics.Rect, @Nullable android.os.Bundle, @NonNull android.os.UserHandle); - method public void startShortcut(@NonNull android.content.pm.ShortcutInfo, @Nullable android.graphics.Rect, @Nullable android.os.Bundle); - method public void unregisterCallback(android.content.pm.LauncherApps.Callback); - method public void unregisterPackageInstallerSessionCallback(@NonNull android.content.pm.PackageInstaller.SessionCallback); - field public static final String ACTION_CONFIRM_PIN_APPWIDGET = "android.content.pm.action.CONFIRM_PIN_APPWIDGET"; - field public static final String ACTION_CONFIRM_PIN_SHORTCUT = "android.content.pm.action.CONFIRM_PIN_SHORTCUT"; - field public static final String EXTRA_PIN_ITEM_REQUEST = "android.content.pm.extra.PIN_ITEM_REQUEST"; - } - - @FlaggedApi("android.content.pm.archiving") public static class LauncherApps.ArchiveCompatibilityParams { - ctor public LauncherApps.ArchiveCompatibilityParams(); - method public void setEnableIconOverlay(boolean); - method public void setEnableUnarchivalConfirmation(boolean); - } - - public abstract static class LauncherApps.Callback { - ctor public LauncherApps.Callback(); - method public abstract void onPackageAdded(String, android.os.UserHandle); - method public abstract void onPackageChanged(String, android.os.UserHandle); - method public void onPackageLoadingProgressChanged(@NonNull String, @NonNull android.os.UserHandle, float); - method public abstract void onPackageRemoved(String, android.os.UserHandle); - method public abstract void onPackagesAvailable(String[], android.os.UserHandle, boolean); - method public void onPackagesSuspended(String[], android.os.UserHandle); - method @Deprecated public void onPackagesSuspended(String[], android.os.UserHandle, @Nullable android.os.Bundle); - method public abstract void onPackagesUnavailable(String[], android.os.UserHandle, boolean); - method public void onPackagesUnsuspended(String[], android.os.UserHandle); - method public void onShortcutsChanged(@NonNull String, @NonNull java.util.List, @NonNull android.os.UserHandle); - method @FlaggedApi("android.multiuser.add_launcher_user_config") public void onUserConfigChanged(@NonNull android.content.pm.LauncherUserInfo); - } - - public static final class LauncherApps.PinItemRequest implements android.os.Parcelable { - method public boolean accept(@Nullable android.os.Bundle); - method public boolean accept(); - method public int describeContents(); - method @Nullable public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo(android.content.Context); - method @Nullable public android.os.Bundle getExtras(); - method public int getRequestType(); - method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo(); - method public boolean isValid(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int REQUEST_TYPE_APPWIDGET = 2; // 0x2 - field public static final int REQUEST_TYPE_SHORTCUT = 1; // 0x1 - } - - public static class LauncherApps.ShortcutQuery { - ctor public LauncherApps.ShortcutQuery(); - method public android.content.pm.LauncherApps.ShortcutQuery setActivity(@Nullable android.content.ComponentName); - method public android.content.pm.LauncherApps.ShortcutQuery setChangedSince(long); - method @NonNull public android.content.pm.LauncherApps.ShortcutQuery setLocusIds(@Nullable java.util.List); - method public android.content.pm.LauncherApps.ShortcutQuery setPackage(@Nullable String); - method public android.content.pm.LauncherApps.ShortcutQuery setQueryFlags(int); - method public android.content.pm.LauncherApps.ShortcutQuery setShortcutIds(@Nullable java.util.List); - field public static final int FLAG_GET_KEY_FIELDS_ONLY = 4; // 0x4 - field public static final int FLAG_MATCH_CACHED = 16; // 0x10 - field public static final int FLAG_MATCH_DYNAMIC = 1; // 0x1 - field public static final int FLAG_MATCH_MANIFEST = 8; // 0x8 - field public static final int FLAG_MATCH_PINNED = 2; // 0x2 - field public static final int FLAG_MATCH_PINNED_BY_ANY_LAUNCHER = 1024; // 0x400 - } - - @FlaggedApi("android.os.allow_private_profile") public final class LauncherUserInfo implements android.os.Parcelable { - method @FlaggedApi("android.os.allow_private_profile") public int describeContents(); - method @FlaggedApi("android.multiuser.add_launcher_user_config") @NonNull public android.os.Bundle getUserConfig(); - method @FlaggedApi("android.os.allow_private_profile") public int getUserSerialNumber(); - method @FlaggedApi("android.os.allow_private_profile") @NonNull public String getUserType(); - method @FlaggedApi("android.os.allow_private_profile") public void writeToParcel(@NonNull android.os.Parcel, int); - field @FlaggedApi("android.os.allow_private_profile") @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @FlaggedApi("android.multiuser.add_launcher_user_config") public static final String PRIVATE_SPACE_ENTRYPOINT_HIDDEN = "private_space_entrypoint_hidden"; - } - - public final class ModuleInfo implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public CharSequence getName(); - method @Nullable public String getPackageName(); - method public boolean isHidden(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class PackageInfo implements android.os.Parcelable { - ctor public PackageInfo(); - method public int describeContents(); - method @FlaggedApi("android.content.pm.provide_info_of_apk_in_apex") @Nullable public String getApexPackageName(); - method @FlaggedApi("android.content.pm.archiving") public long getArchiveTimeMillis(); - method public long getLongVersionCode(); - method public void setLongVersionCode(long); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int INSTALL_LOCATION_AUTO = 0; // 0x0 - field public static final int INSTALL_LOCATION_INTERNAL_ONLY = 1; // 0x1 - field public static final int INSTALL_LOCATION_PREFER_EXTERNAL = 2; // 0x2 - field public static final int REQUESTED_PERMISSION_GRANTED = 2; // 0x2 - field public static final int REQUESTED_PERMISSION_IMPLICIT = 4; // 0x4 - field public static final int REQUESTED_PERMISSION_NEVER_FOR_LOCATION = 65536; // 0x10000 - field @Nullable public android.content.pm.ActivityInfo[] activities; - field @Nullable public android.content.pm.ApplicationInfo applicationInfo; - field @Nullable public android.content.pm.Attribution[] attributions; - field public int baseRevisionCode; - field @Nullable public android.content.pm.ConfigurationInfo[] configPreferences; - field @Nullable public android.content.pm.FeatureGroupInfo[] featureGroups; - field public long firstInstallTime; - field @Nullable public int[] gids; - field public int installLocation; - field @Nullable public android.content.pm.InstrumentationInfo[] instrumentation; - field public boolean isApex; - field public long lastUpdateTime; - field @NonNull public String packageName; - field @Nullable public android.content.pm.PermissionInfo[] permissions; - field @Nullable public android.content.pm.ProviderInfo[] providers; - field @Nullable public android.content.pm.ActivityInfo[] receivers; - field @Nullable public android.content.pm.FeatureInfo[] reqFeatures; - field @Nullable public String[] requestedPermissions; - field @Nullable public int[] requestedPermissionsFlags; - field @Nullable public android.content.pm.ServiceInfo[] services; - field @Nullable public String sharedUserId; - field public int sharedUserLabel; - field @Deprecated @Nullable public android.content.pm.Signature[] signatures; - field @Nullable public android.content.pm.SigningInfo signingInfo; - field @NonNull public String[] splitNames; - field @NonNull public int[] splitRevisionCodes; - field @Deprecated public int versionCode; - field @Nullable public String versionName; - } - - public class PackageInstaller { - method public void abandonSession(int); - method public void checkInstallConstraints(@NonNull java.util.List, @NonNull android.content.pm.PackageInstaller.InstallConstraints, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public void commitSessionAfterInstallConstraintsAreMet(int, @NonNull android.content.IntentSender, @NonNull android.content.pm.PackageInstaller.InstallConstraints, long); - method public int createSession(@NonNull android.content.pm.PackageInstaller.SessionParams) throws java.io.IOException; - method @Deprecated @Nullable public android.content.pm.PackageInstaller.SessionInfo getActiveStagedSession(); - method @NonNull public java.util.List getActiveStagedSessions(); - method @NonNull public java.util.List getAllSessions(); - method @NonNull public java.util.List getMySessions(); - method @Nullable public android.content.pm.PackageInstaller.SessionInfo getSessionInfo(int); - method @NonNull public java.util.List getStagedSessions(); - method @RequiresPermission(allOf={android.Manifest.permission.INSTALL_PACKAGES, "com.android.permission.INSTALL_EXISTING_PACKAGES"}) public void installExistingPackage(@NonNull String, int, @Nullable android.content.IntentSender); - method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void installPackageArchived(@NonNull android.content.pm.ArchivedPackageInfo, @NonNull android.content.pm.PackageInstaller.SessionParams, @NonNull android.content.IntentSender); - method @NonNull public android.content.pm.PackageInstaller.Session openSession(int) throws java.io.IOException; - method public void registerSessionCallback(@NonNull android.content.pm.PackageInstaller.SessionCallback); - method public void registerSessionCallback(@NonNull android.content.pm.PackageInstaller.SessionCallback, @NonNull android.os.Handler); - method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(anyOf={android.Manifest.permission.INSTALL_PACKAGES, android.Manifest.permission.REQUEST_INSTALL_PACKAGES}) public void reportUnarchivalState(@NonNull android.content.pm.PackageInstaller.UnarchivalState) throws android.content.pm.PackageManager.NameNotFoundException; - method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(anyOf={android.Manifest.permission.INSTALL_PACKAGES, android.Manifest.permission.REQUEST_INSTALL_PACKAGES}) public void reportUnarchivalStatus(int, int, long, @Nullable android.app.PendingIntent) throws android.content.pm.PackageManager.NameNotFoundException; - method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(anyOf={android.Manifest.permission.DELETE_PACKAGES, android.Manifest.permission.REQUEST_DELETE_PACKAGES}) public void requestArchive(@NonNull String, @NonNull android.content.IntentSender) throws android.content.pm.PackageManager.NameNotFoundException; - method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(anyOf={android.Manifest.permission.INSTALL_PACKAGES, android.Manifest.permission.REQUEST_INSTALL_PACKAGES}) public void requestUnarchive(@NonNull String, @NonNull android.content.IntentSender) throws java.io.IOException, android.content.pm.PackageManager.NameNotFoundException; - method @RequiresPermission(anyOf={android.Manifest.permission.DELETE_PACKAGES, android.Manifest.permission.REQUEST_DELETE_PACKAGES}) public void uninstall(@NonNull String, @NonNull android.content.IntentSender); - method @RequiresPermission(anyOf={android.Manifest.permission.DELETE_PACKAGES, android.Manifest.permission.REQUEST_DELETE_PACKAGES}) public void uninstall(@NonNull android.content.pm.VersionedPackage, @NonNull android.content.IntentSender); - method @RequiresPermission(anyOf={android.Manifest.permission.DELETE_PACKAGES, android.Manifest.permission.REQUEST_DELETE_PACKAGES}) public void uninstall(@NonNull android.content.pm.VersionedPackage, int, @NonNull android.content.IntentSender); - method @RequiresPermission(android.Manifest.permission.DELETE_PACKAGES) public void uninstallExistingPackage(@NonNull String, @Nullable android.content.IntentSender); - method public void unregisterSessionCallback(@NonNull android.content.pm.PackageInstaller.SessionCallback); - method public void updateSessionAppIcon(int, @Nullable android.graphics.Bitmap); - method public void updateSessionAppLabel(int, @Nullable CharSequence); - method public void waitForInstallConstraints(@NonNull java.util.List, @NonNull android.content.pm.PackageInstaller.InstallConstraints, @NonNull android.content.IntentSender, long); - field public static final String ACTION_SESSION_COMMITTED = "android.content.pm.action.SESSION_COMMITTED"; - field public static final String ACTION_SESSION_DETAILS = "android.content.pm.action.SESSION_DETAILS"; - field public static final String ACTION_SESSION_UPDATED = "android.content.pm.action.SESSION_UPDATED"; - field public static final String EXTRA_INSTALL_CONSTRAINTS = "android.content.pm.extra.INSTALL_CONSTRAINTS"; - field public static final String EXTRA_INSTALL_CONSTRAINTS_RESULT = "android.content.pm.extra.INSTALL_CONSTRAINTS_RESULT"; - field public static final String EXTRA_OTHER_PACKAGE_NAME = "android.content.pm.extra.OTHER_PACKAGE_NAME"; - field public static final String EXTRA_PACKAGE_NAME = "android.content.pm.extra.PACKAGE_NAME"; - field public static final String EXTRA_PRE_APPROVAL = "android.content.pm.extra.PRE_APPROVAL"; - field public static final String EXTRA_SESSION = "android.content.pm.extra.SESSION"; - field public static final String EXTRA_SESSION_ID = "android.content.pm.extra.SESSION_ID"; - field public static final String EXTRA_STATUS = "android.content.pm.extra.STATUS"; - field public static final String EXTRA_STATUS_MESSAGE = "android.content.pm.extra.STATUS_MESSAGE"; - field public static final String EXTRA_STORAGE_PATH = "android.content.pm.extra.STORAGE_PATH"; - field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_UNARCHIVE_ALL_USERS = "android.content.pm.extra.UNARCHIVE_ALL_USERS"; - field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_UNARCHIVE_ID = "android.content.pm.extra.UNARCHIVE_ID"; - field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_UNARCHIVE_PACKAGE_NAME = "android.content.pm.extra.UNARCHIVE_PACKAGE_NAME"; - field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_UNARCHIVE_STATUS = "android.content.pm.extra.UNARCHIVE_STATUS"; - field public static final int PACKAGE_SOURCE_DOWNLOADED_FILE = 4; // 0x4 - field public static final int PACKAGE_SOURCE_LOCAL_FILE = 3; // 0x3 - field public static final int PACKAGE_SOURCE_OTHER = 1; // 0x1 - field public static final int PACKAGE_SOURCE_STORE = 2; // 0x2 - field public static final int PACKAGE_SOURCE_UNSPECIFIED = 0; // 0x0 - field public static final int STATUS_FAILURE = 1; // 0x1 - field public static final int STATUS_FAILURE_ABORTED = 3; // 0x3 - field public static final int STATUS_FAILURE_BLOCKED = 2; // 0x2 - field public static final int STATUS_FAILURE_CONFLICT = 5; // 0x5 - field public static final int STATUS_FAILURE_INCOMPATIBLE = 7; // 0x7 - field public static final int STATUS_FAILURE_INVALID = 4; // 0x4 - field public static final int STATUS_FAILURE_STORAGE = 6; // 0x6 - field public static final int STATUS_FAILURE_TIMEOUT = 8; // 0x8 - field public static final int STATUS_PENDING_USER_ACTION = -1; // 0xffffffff - field public static final int STATUS_SUCCESS = 0; // 0x0 - field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_INSTALLER_DISABLED = 4; // 0x4 - field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_INSTALLER_UNINSTALLED = 5; // 0x5 - field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_INSUFFICIENT_STORAGE = 2; // 0x2 - field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_NO_CONNECTIVITY = 3; // 0x3 - field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_USER_ACTION_NEEDED = 1; // 0x1 - field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_GENERIC_ERROR = 100; // 0x64 - field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_OK = 0; // 0x0 - } - - public static final class PackageInstaller.InstallConstraints implements android.os.Parcelable { - method public int describeContents(); - method public boolean isAppNotForegroundRequired(); - method public boolean isAppNotInteractingRequired(); - method public boolean isAppNotTopVisibleRequired(); - method public boolean isDeviceIdleRequired(); - method public boolean isNotInCallRequired(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @NonNull public static final android.content.pm.PackageInstaller.InstallConstraints GENTLE_UPDATE; - } - - public static final class PackageInstaller.InstallConstraints.Builder { - ctor public PackageInstaller.InstallConstraints.Builder(); - method @NonNull public android.content.pm.PackageInstaller.InstallConstraints build(); - method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setAppNotForegroundRequired(); - method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setAppNotInteractingRequired(); - method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setAppNotTopVisibleRequired(); - method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setDeviceIdleRequired(); - method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setNotInCallRequired(); - } - - public static final class PackageInstaller.InstallConstraintsResult implements android.os.Parcelable { - method public boolean areAllConstraintsSatisfied(); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class PackageInstaller.PreapprovalDetails implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.graphics.Bitmap getIcon(); - method @NonNull public CharSequence getLabel(); - method @NonNull public android.icu.util.ULocale getLocale(); - method @NonNull public String getPackageName(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class PackageInstaller.PreapprovalDetails.Builder { - ctor public PackageInstaller.PreapprovalDetails.Builder(); - method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails build(); - method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails.Builder setIcon(@NonNull android.graphics.Bitmap); - method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails.Builder setLabel(@NonNull CharSequence); - method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails.Builder setLocale(@NonNull android.icu.util.ULocale); - method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails.Builder setPackageName(@NonNull String); - } - - public static class PackageInstaller.Session implements java.io.Closeable { - method public void abandon(); - method public void addChildSessionId(int); - method public void close(); - method public void commit(@NonNull android.content.IntentSender); - method public void fsync(@NonNull java.io.OutputStream) throws java.io.IOException; - method @NonNull public android.os.PersistableBundle getAppMetadata(); - method @NonNull public int[] getChildSessionIds(); - method @NonNull public String[] getNames() throws java.io.IOException; - method public int getParentSessionId(); - method public boolean isApplicationEnabledSettingPersistent(); - method public boolean isMultiPackage(); - method public boolean isRequestUpdateOwnership(); - method public boolean isStaged(); - method @NonNull public java.io.InputStream openRead(@NonNull String) throws java.io.IOException; - method @NonNull public java.io.OutputStream openWrite(@NonNull String, long, long) throws java.io.IOException; - method public void removeChildSessionId(int); - method public void removeSplit(@NonNull String) throws java.io.IOException; - method public void requestChecksums(@NonNull String, int, @NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.content.pm.PackageManager.OnChecksumsReadyListener) throws java.security.cert.CertificateEncodingException, java.io.FileNotFoundException; - method public void requestUserPreapproval(@NonNull android.content.pm.PackageInstaller.PreapprovalDetails, @NonNull android.content.IntentSender); - method public void setAppMetadata(@Nullable android.os.PersistableBundle) throws java.io.IOException; - method @Deprecated public void setChecksums(@NonNull String, @NonNull java.util.List, @Nullable byte[]) throws java.io.IOException; - method public void setStagingProgress(float); - method public void transfer(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - } - - public abstract static class PackageInstaller.SessionCallback { - ctor public PackageInstaller.SessionCallback(); - method public abstract void onActiveChanged(int, boolean); - method public abstract void onBadgingChanged(int); - method public abstract void onCreated(int); - method public abstract void onFinished(int, boolean); - method public abstract void onProgressChanged(int, float); - } - - public static class PackageInstaller.SessionInfo implements android.os.Parcelable { - method @Nullable public android.content.Intent createDetailsIntent(); - method public int describeContents(); - method @Nullable public android.graphics.Bitmap getAppIcon(); - method @Nullable public CharSequence getAppLabel(); - method @Nullable public String getAppPackageName(); - method @NonNull public int[] getChildSessionIds(); - method public long getCreatedMillis(); - method public boolean getDontKillApp(); - method public int getInstallLocation(); - method public int getInstallReason(); - method @Nullable public String getInstallerAttributionTag(); - method @Nullable public String getInstallerPackageName(); - method public int getInstallerUid(); - method public int getMode(); - method public int getOriginatingUid(); - method @Nullable public android.net.Uri getOriginatingUri(); - method public int getPackageSource(); - method public int getParentSessionId(); - method public float getProgress(); - method @Nullable public android.net.Uri getReferrerUri(); - method public int getRequireUserAction(); - method public int getSessionId(); - method public long getSize(); - method public int getStagedSessionErrorCode(); - method @NonNull public String getStagedSessionErrorMessage(); - method public long getUpdatedMillis(); - method @NonNull public android.os.UserHandle getUser(); - method public boolean hasParentSessionId(); - method public boolean isActive(); - method public boolean isApplicationEnabledSettingPersistent(); - method @FlaggedApi("android.content.pm.sdk_dependency_installer") public boolean isAutoInstallDependenciesEnabled(); - method public boolean isCommitted(); - method public boolean isMultiPackage(); - method public boolean isPreApprovalRequested(); - method public boolean isRequestUpdateOwnership(); - method public boolean isSealed(); - method public boolean isStaged(); - method public boolean isStagedSessionActive(); - method public boolean isStagedSessionApplied(); - method public boolean isStagedSessionFailed(); - method public boolean isStagedSessionReady(); - method @FlaggedApi("android.content.pm.archiving") public boolean isUnarchival(); - method public void writeToParcel(android.os.Parcel, int); - field public static final android.os.Parcelable.Creator CREATOR; - field public static final int INVALID_ID = -1; // 0xffffffff - field public static final int SESSION_ACTIVATION_FAILED = 2; // 0x2 - field public static final int SESSION_CONFLICT = 4; // 0x4 - field public static final int SESSION_NO_ERROR = 0; // 0x0 - field public static final int SESSION_UNKNOWN_ERROR = 3; // 0x3 - field public static final int SESSION_VERIFICATION_FAILED = 1; // 0x1 - field @Deprecated public static final int STAGED_SESSION_ACTIVATION_FAILED = 2; // 0x2 - field @Deprecated public static final int STAGED_SESSION_CONFLICT = 4; // 0x4 - field @Deprecated public static final int STAGED_SESSION_NO_ERROR = 0; // 0x0 - field @Deprecated public static final int STAGED_SESSION_UNKNOWN = 3; // 0x3 - field @Deprecated public static final int STAGED_SESSION_VERIFICATION_FAILED = 1; // 0x1 - } - - public static class PackageInstaller.SessionParams implements android.os.Parcelable { - ctor public PackageInstaller.SessionParams(int); - method public int describeContents(); - method public void setAppIcon(@Nullable android.graphics.Bitmap); - method public void setAppLabel(@Nullable CharSequence); - method public void setAppPackageName(@Nullable String); - method public void setApplicationEnabledSettingPersistent(); - method @FlaggedApi("android.content.pm.sdk_dependency_installer") public void setAutoInstallDependenciesEnabled(boolean); - method @Deprecated public void setAutoRevokePermissionsMode(boolean); - method public void setDontKillApp(boolean); - method public void setInstallLocation(int); - method public void setInstallReason(int); - method public void setInstallScenario(int); - method public void setInstallerPackageName(@Nullable String); - method public void setMultiPackage(); - method public void setOriginatingUid(int); - method public void setOriginatingUri(@Nullable android.net.Uri); - method public void setPackageSource(int); - method @NonNull @RequiresPermission(value="android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS", conditional=true) public android.content.pm.PackageInstaller.SessionParams setPermissionState(@NonNull String, int); - method public void setReferrerUri(@Nullable android.net.Uri); - method @RequiresPermission(android.Manifest.permission.ENFORCE_UPDATE_OWNERSHIP) public void setRequestUpdateOwnership(boolean); - method public void setRequireUserAction(int); - method public void setSize(long); - method @FlaggedApi("android.content.pm.archiving") public void setUnarchiveId(int); - method public void setWhitelistedRestrictedPermissions(@Nullable java.util.Set); - method public void writeToParcel(android.os.Parcel, int); - field public static final android.os.Parcelable.Creator CREATOR; - field public static final int MODE_FULL_INSTALL = 1; // 0x1 - field public static final int MODE_INHERIT_EXISTING = 2; // 0x2 - field public static final int PERMISSION_STATE_DEFAULT = 0; // 0x0 - field public static final int PERMISSION_STATE_DENIED = 2; // 0x2 - field public static final int PERMISSION_STATE_GRANTED = 1; // 0x1 - field @NonNull public static final java.util.Set RESTRICTED_PERMISSIONS_ALL; - field public static final int USER_ACTION_NOT_REQUIRED = 2; // 0x2 - field public static final int USER_ACTION_REQUIRED = 1; // 0x1 - field public static final int USER_ACTION_UNSPECIFIED = 0; // 0x0 - } - - @FlaggedApi("android.content.pm.archiving") public static final class PackageInstaller.UnarchivalState { - method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createGenericErrorState(int); - method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createInsufficientStorageState(int, long, @Nullable android.app.PendingIntent); - method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createNoConnectivityState(int); - method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createOkState(int); - method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createUserActionRequiredState(int, @NonNull android.app.PendingIntent); - } - - public class PackageItemInfo { - ctor public PackageItemInfo(); - ctor public PackageItemInfo(android.content.pm.PackageItemInfo); - ctor protected PackageItemInfo(android.os.Parcel); - method protected void dumpBack(android.util.Printer, String); - method protected void dumpFront(android.util.Printer, String); - method public android.graphics.drawable.Drawable loadBanner(android.content.pm.PackageManager); - method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); - method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager); - method public android.graphics.drawable.Drawable loadLogo(android.content.pm.PackageManager); - method public android.graphics.drawable.Drawable loadUnbadgedIcon(android.content.pm.PackageManager); - method public android.content.res.XmlResourceParser loadXmlMetaData(android.content.pm.PackageManager, String); - method public void writeToParcel(android.os.Parcel, int); - field public int banner; - field public int icon; - field @FlaggedApi("android.content.pm.archiving") public boolean isArchived; - field public int labelRes; - field public int logo; - field public android.os.Bundle metaData; - field public String name; - field public CharSequence nonLocalizedLabel; - field public String packageName; - } - - public static class PackageItemInfo.DisplayNameComparator implements java.util.Comparator { - ctor public PackageItemInfo.DisplayNameComparator(android.content.pm.PackageManager); - method public final int compare(android.content.pm.PackageItemInfo, android.content.pm.PackageItemInfo); - } - - public abstract class PackageManager { - ctor @Deprecated public PackageManager(); - method @Deprecated public abstract void addPackageToPreferred(@NonNull String); - method @Deprecated @FlaggedApi("android.permission.flags.permission_tree_apis_deprecated") public abstract boolean addPermission(@NonNull android.content.pm.PermissionInfo); - method @Deprecated @FlaggedApi("android.permission.flags.permission_tree_apis_deprecated") public abstract boolean addPermissionAsync(@NonNull android.content.pm.PermissionInfo); - method @Deprecated public abstract void addPreferredActivity(@NonNull android.content.IntentFilter, int, @Nullable android.content.ComponentName[], @NonNull android.content.ComponentName); - method @RequiresPermission(value="android.permission.WHITELIST_RESTRICTED_PERMISSIONS", conditional=true) public boolean addWhitelistedRestrictedPermission(@NonNull String, @NonNull String, int); - method public boolean canPackageQuery(@NonNull String, @NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public boolean[] canPackageQuery(@NonNull String, @NonNull String[]) throws android.content.pm.PackageManager.NameNotFoundException; - method public abstract boolean canRequestPackageInstalls(); - method public abstract String[] canonicalToCurrentPackageNames(@NonNull String[]); - method @CheckResult public abstract int checkPermission(@NonNull String, @NonNull String); - method @CheckResult public abstract int checkSignatures(@NonNull String, @NonNull String); - method @CheckResult public abstract int checkSignatures(int, int); - method public abstract void clearInstantAppCookie(); - method @Deprecated public abstract void clearPackagePreferredActivities(@NonNull String); - method public abstract String[] currentToCanonicalPackageNames(@NonNull String[]); - method public abstract void extendVerificationTimeout(int, int, long); - method @Nullable public abstract android.graphics.drawable.Drawable getActivityBanner(@NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; - method @Nullable public abstract android.graphics.drawable.Drawable getActivityBanner(@NonNull android.content.Intent) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.graphics.drawable.Drawable getActivityIcon(@NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.graphics.drawable.Drawable getActivityIcon(@NonNull android.content.Intent) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.content.pm.ActivityInfo getActivityInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.pm.ActivityInfo getActivityInfo(@NonNull android.content.ComponentName, @NonNull android.content.pm.PackageManager.ComponentInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; - method @Nullable public abstract android.graphics.drawable.Drawable getActivityLogo(@NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; - method @Nullable public abstract android.graphics.drawable.Drawable getActivityLogo(@NonNull android.content.Intent) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract java.util.List getAllPermissionGroups(int); - method @Nullable public abstract android.graphics.drawable.Drawable getApplicationBanner(@NonNull android.content.pm.ApplicationInfo); - method @Nullable public abstract android.graphics.drawable.Drawable getApplicationBanner(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method public abstract int getApplicationEnabledSetting(@NonNull String); - method @NonNull public abstract android.graphics.drawable.Drawable getApplicationIcon(@NonNull android.content.pm.ApplicationInfo); - method @NonNull public abstract android.graphics.drawable.Drawable getApplicationIcon(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.content.pm.ApplicationInfo getApplicationInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.pm.ApplicationInfo getApplicationInfo(@NonNull String, @NonNull android.content.pm.PackageManager.ApplicationInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract CharSequence getApplicationLabel(@NonNull android.content.pm.ApplicationInfo); - method @Nullable public abstract android.graphics.drawable.Drawable getApplicationLogo(@NonNull android.content.pm.ApplicationInfo); - method @Nullable public abstract android.graphics.drawable.Drawable getApplicationLogo(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @FlaggedApi("android.content.pm.archiving") @Nullable public android.content.pm.ArchivedPackageInfo getArchivedPackage(@NonNull String); - method @NonNull public CharSequence getBackgroundPermissionOptionLabel(); - method @Nullable public abstract android.content.pm.ChangedPackages getChangedPackages(@IntRange(from=0) int); - method public abstract int getComponentEnabledSetting(@NonNull android.content.ComponentName); - method @NonNull public abstract android.graphics.drawable.Drawable getDefaultActivityIcon(); - method @Nullable public abstract android.graphics.drawable.Drawable getDrawable(@NonNull String, @DrawableRes int, @Nullable android.content.pm.ApplicationInfo); - method public void getGroupOfPlatformPermission(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @NonNull public android.content.pm.InstallSourceInfo getInstallSourceInfo(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract java.util.List getInstalledApplications(int); - method @NonNull public java.util.List getInstalledApplications(@NonNull android.content.pm.PackageManager.ApplicationInfoFlags); - method @NonNull public java.util.List getInstalledModules(int); - method @NonNull public abstract java.util.List getInstalledPackages(int); - method @NonNull public java.util.List getInstalledPackages(@NonNull android.content.pm.PackageManager.PackageInfoFlags); - method @Deprecated @Nullable public abstract String getInstallerPackageName(@NonNull String); - method @NonNull public abstract byte[] getInstantAppCookie(); - method public abstract int getInstantAppCookieMaxBytes(); - method @NonNull public abstract android.content.pm.InstrumentationInfo getInstrumentationInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @Nullable public abstract android.content.Intent getLaunchIntentForPackage(@NonNull String); - method @NonNull public android.content.IntentSender getLaunchIntentSenderForPackage(@NonNull String); - method @Nullable public abstract android.content.Intent getLeanbackLaunchIntentForPackage(@NonNull String); - method @NonNull public java.util.Set getMimeGroup(@NonNull String); - method @NonNull public android.content.pm.ModuleInfo getModuleInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @Nullable public abstract String getNameForUid(int); - method @Nullable public android.content.pm.PackageInfo getPackageArchiveInfo(@NonNull String, int); - method @Nullable public android.content.pm.PackageInfo getPackageArchiveInfo(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags); - method public abstract int[] getPackageGids(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method public abstract int[] getPackageGids(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @Nullable public int[] getPackageGids(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; - method public abstract android.content.pm.PackageInfo getPackageInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.pm.PackageInfo getPackageInfo(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; - method public abstract android.content.pm.PackageInfo getPackageInfo(@NonNull android.content.pm.VersionedPackage, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.pm.PackageInfo getPackageInfo(@NonNull android.content.pm.VersionedPackage, @NonNull android.content.pm.PackageManager.PackageInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.content.pm.PackageInstaller getPackageInstaller(); - method public abstract int getPackageUid(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method public int getPackageUid(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; - method @Nullable public abstract String[] getPackagesForUid(int); - method @NonNull public abstract java.util.List getPackagesHoldingPermissions(@NonNull String[], int); - method @NonNull public java.util.List getPackagesHoldingPermissions(@NonNull String[], @NonNull android.content.pm.PackageManager.PackageInfoFlags); - method @NonNull public abstract android.content.pm.PermissionGroupInfo getPermissionGroupInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method public abstract android.content.pm.PermissionInfo getPermissionInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method public void getPlatformPermissionsForGroup(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer>); - method @Deprecated public abstract int getPreferredActivities(@NonNull java.util.List, @NonNull java.util.List, @Nullable String); - method @Deprecated @NonNull public abstract java.util.List getPreferredPackages(int); - method @NonNull public android.content.pm.PackageManager.Property getProperty(@NonNull String, @NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.pm.PackageManager.Property getProperty(@NonNull String, @NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.content.pm.ProviderInfo getProviderInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.pm.ProviderInfo getProviderInfo(@NonNull android.content.ComponentName, @NonNull android.content.pm.PackageManager.ComponentInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.content.pm.ActivityInfo getReceiverInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.pm.ActivityInfo getReceiverInfo(@NonNull android.content.ComponentName, @NonNull android.content.pm.PackageManager.ComponentInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.content.res.Resources getResourcesForActivity(@NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.content.res.Resources getResourcesForApplication(@NonNull android.content.pm.ApplicationInfo) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.res.Resources getResourcesForApplication(@NonNull android.content.pm.ApplicationInfo, @Nullable android.content.res.Configuration) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.content.res.Resources getResourcesForApplication(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract android.content.pm.ServiceInfo getServiceInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.content.pm.ServiceInfo getServiceInfo(@NonNull android.content.ComponentName, @NonNull android.content.pm.PackageManager.ComponentInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public abstract java.util.List getSharedLibraries(int); - method @NonNull public java.util.List getSharedLibraries(@NonNull android.content.pm.PackageManager.PackageInfoFlags); - method @Nullable public android.os.Bundle getSuspendedPackageAppExtras(); - method public boolean getSyntheticAppDetailsActivityEnabled(@NonNull String); - method @NonNull public abstract android.content.pm.FeatureInfo[] getSystemAvailableFeatures(); - method @Nullable public abstract String[] getSystemSharedLibraryNames(); - method @IntRange(from=0) public int getTargetSdkVersion(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @Nullable public abstract CharSequence getText(@NonNull String, @StringRes int, @Nullable android.content.pm.ApplicationInfo); - method @NonNull public abstract android.graphics.drawable.Drawable getUserBadgedDrawableForDensity(@NonNull android.graphics.drawable.Drawable, @NonNull android.os.UserHandle, @Nullable android.graphics.Rect, int); - method @NonNull public abstract android.graphics.drawable.Drawable getUserBadgedIcon(@NonNull android.graphics.drawable.Drawable, @NonNull android.os.UserHandle); - method @NonNull public abstract CharSequence getUserBadgedLabel(@NonNull CharSequence, @NonNull android.os.UserHandle); - method @NonNull @RequiresPermission(value="android.permission.WHITELIST_RESTRICTED_PERMISSIONS", conditional=true) public java.util.Set getWhitelistedRestrictedPermissions(@NonNull String, int); - method @Nullable public abstract android.content.res.XmlResourceParser getXml(@NonNull String, @XmlRes int, @Nullable android.content.pm.ApplicationInfo); - method public boolean hasSigningCertificate(@NonNull String, @NonNull byte[], int); - method public boolean hasSigningCertificate(int, @NonNull byte[], int); - method public abstract boolean hasSystemFeature(@NonNull String); - method public abstract boolean hasSystemFeature(@NonNull String, int); - method @FlaggedApi("android.content.pm.archiving") public boolean isAppArchivable(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @RequiresPermission(value="android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS", conditional=true) public boolean isAutoRevokeWhitelisted(@NonNull String); - method public boolean isAutoRevokeWhitelisted(); - method public boolean isDefaultApplicationIcon(@NonNull android.graphics.drawable.Drawable); - method public boolean isDeviceUpgrading(); - method public abstract boolean isInstantApp(); - method public abstract boolean isInstantApp(@NonNull String); - method @FlaggedApi("android.content.pm.quarantined_enabled") public boolean isPackageQuarantined(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @FlaggedApi("android.content.pm.stay_stopped") public boolean isPackageStopped(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method public boolean isPackageSuspended(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method public boolean isPackageSuspended(); - method @CheckResult public abstract boolean isPermissionRevokedByPolicy(@NonNull String, @NonNull String); - method public abstract boolean isSafeMode(); - method @FlaggedApi("android.content.pm.get_package_info") @WorkerThread public T parseAndroidManifest(@NonNull java.io.File, @NonNull java.util.function.Function) throws java.io.IOException; - method @FlaggedApi("android.content.pm.get_package_info_with_fd") @WorkerThread public T parseAndroidManifest(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.function.Function) throws java.io.IOException; - method @NonNull public java.util.List queryActivityProperty(@NonNull String); - method @NonNull public java.util.List queryApplicationProperty(@NonNull String); - method @NonNull public abstract java.util.List queryBroadcastReceivers(@NonNull android.content.Intent, int); - method @NonNull public java.util.List queryBroadcastReceivers(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); - method @NonNull public abstract java.util.List queryContentProviders(@Nullable String, int, int); - method @NonNull public java.util.List queryContentProviders(@Nullable String, int, @NonNull android.content.pm.PackageManager.ComponentInfoFlags); - method @NonNull public abstract java.util.List queryInstrumentation(@NonNull String, int); - method @NonNull public abstract java.util.List queryIntentActivities(@NonNull android.content.Intent, int); - method @NonNull public java.util.List queryIntentActivities(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); - method @NonNull public abstract java.util.List queryIntentActivityOptions(@Nullable android.content.ComponentName, @Nullable android.content.Intent[], @NonNull android.content.Intent, int); - method @NonNull public java.util.List queryIntentActivityOptions(@Nullable android.content.ComponentName, @Nullable java.util.List, @NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); - method @NonNull public abstract java.util.List queryIntentContentProviders(@NonNull android.content.Intent, int); - method @NonNull public java.util.List queryIntentContentProviders(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); - method @NonNull public abstract java.util.List queryIntentServices(@NonNull android.content.Intent, int); - method @NonNull public java.util.List queryIntentServices(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); - method @NonNull public abstract java.util.List queryPermissionsByGroup(@Nullable String, int) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public java.util.List queryProviderProperty(@NonNull String); - method @NonNull public java.util.List queryReceiverProperty(@NonNull String); - method @NonNull public java.util.List queryServiceProperty(@NonNull String); - method public void relinquishUpdateOwnership(@NonNull String); - method @Deprecated public abstract void removePackageFromPreferred(@NonNull String); - method @Deprecated @FlaggedApi("android.permission.flags.permission_tree_apis_deprecated") public abstract void removePermission(@NonNull String); - method @RequiresPermission(value="android.permission.WHITELIST_RESTRICTED_PERMISSIONS", conditional=true) public boolean removeWhitelistedRestrictedPermission(@NonNull String, @NonNull String, int); - method public void requestChecksums(@NonNull String, boolean, int, @NonNull java.util.List, @NonNull android.content.pm.PackageManager.OnChecksumsReadyListener) throws java.security.cert.CertificateEncodingException, android.content.pm.PackageManager.NameNotFoundException; - method @Nullable public abstract android.content.pm.ResolveInfo resolveActivity(@NonNull android.content.Intent, int); - method @Nullable public android.content.pm.ResolveInfo resolveActivity(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); - method @Nullable public abstract android.content.pm.ProviderInfo resolveContentProvider(@NonNull String, int); - method @Nullable public android.content.pm.ProviderInfo resolveContentProvider(@NonNull String, @NonNull android.content.pm.PackageManager.ComponentInfoFlags); - method @Nullable public abstract android.content.pm.ResolveInfo resolveService(@NonNull android.content.Intent, int); - method @Nullable public android.content.pm.ResolveInfo resolveService(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); - method public abstract void setApplicationCategoryHint(@NonNull String, int); - method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public abstract void setApplicationEnabledSetting(@NonNull String, int, int); - method @RequiresPermission(value="android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS", conditional=true) public boolean setAutoRevokeWhitelisted(@NonNull String, boolean); - method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public abstract void setComponentEnabledSetting(@NonNull android.content.ComponentName, int, int); - method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public void setComponentEnabledSettings(@NonNull java.util.List); - method public abstract void setInstallerPackageName(@NonNull String, @Nullable String); - method public void setMimeGroup(@NonNull String, @NonNull java.util.Set); - method public abstract void updateInstantAppCookie(@Nullable byte[]); - method public abstract void verifyPendingInstall(int, int); - field public static final int CERT_INPUT_RAW_X509 = 0; // 0x0 - field public static final int CERT_INPUT_SHA256 = 1; // 0x1 - field public static final int COMPONENT_ENABLED_STATE_DEFAULT = 0; // 0x0 - field public static final int COMPONENT_ENABLED_STATE_DISABLED = 2; // 0x2 - field public static final int COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED = 4; // 0x4 - field public static final int COMPONENT_ENABLED_STATE_DISABLED_USER = 3; // 0x3 - field public static final int COMPONENT_ENABLED_STATE_ENABLED = 1; // 0x1 - field @FlaggedApi("android.content.pm.archiving") public static final int DELETE_ARCHIVE = 16; // 0x10 - field public static final int DONT_KILL_APP = 1; // 0x1 - field public static final String EXTRA_VERIFICATION_ID = "android.content.pm.extra.VERIFICATION_ID"; - field public static final String EXTRA_VERIFICATION_RESULT = "android.content.pm.extra.VERIFICATION_RESULT"; - field public static final String FEATURE_ACTIVITIES_ON_SECONDARY_DISPLAYS = "android.software.activities_on_secondary_displays"; - field public static final String FEATURE_APP_WIDGETS = "android.software.app_widgets"; - field public static final String FEATURE_AUDIO_LOW_LATENCY = "android.hardware.audio.low_latency"; - field public static final String FEATURE_AUDIO_OUTPUT = "android.hardware.audio.output"; - field public static final String FEATURE_AUDIO_PRO = "android.hardware.audio.pro"; - field @FlaggedApi("android.media.audio.feature_spatial_audio_headtracking_low_latency") public static final String FEATURE_AUDIO_SPATIAL_HEADTRACKING_LOW_LATENCY = "android.hardware.audio.spatial.headtracking.low_latency"; - field public static final String FEATURE_AUTOFILL = "android.software.autofill"; - field public static final String FEATURE_AUTOMOTIVE = "android.hardware.type.automotive"; - field public static final String FEATURE_BACKUP = "android.software.backup"; - field public static final String FEATURE_BLUETOOTH = "android.hardware.bluetooth"; - field public static final String FEATURE_BLUETOOTH_LE = "android.hardware.bluetooth_le"; - field @FlaggedApi("com.android.ranging.flags.ranging_cs_enabled") public static final String FEATURE_BLUETOOTH_LE_CHANNEL_SOUNDING = "android.hardware.bluetooth_le.channel_sounding"; - field public static final String FEATURE_CAMERA = "android.hardware.camera"; - field public static final String FEATURE_CAMERA_ANY = "android.hardware.camera.any"; - field public static final String FEATURE_CAMERA_AR = "android.hardware.camera.ar"; - field public static final String FEATURE_CAMERA_AUTOFOCUS = "android.hardware.camera.autofocus"; - field public static final String FEATURE_CAMERA_CAPABILITY_MANUAL_POST_PROCESSING = "android.hardware.camera.capability.manual_post_processing"; - field public static final String FEATURE_CAMERA_CAPABILITY_MANUAL_SENSOR = "android.hardware.camera.capability.manual_sensor"; - field public static final String FEATURE_CAMERA_CAPABILITY_RAW = "android.hardware.camera.capability.raw"; - field public static final String FEATURE_CAMERA_CONCURRENT = "android.hardware.camera.concurrent"; - field public static final String FEATURE_CAMERA_EXTERNAL = "android.hardware.camera.external"; - field public static final String FEATURE_CAMERA_FLASH = "android.hardware.camera.flash"; - field public static final String FEATURE_CAMERA_FRONT = "android.hardware.camera.front"; - field public static final String FEATURE_CAMERA_LEVEL_FULL = "android.hardware.camera.level.full"; - field public static final String FEATURE_CANT_SAVE_STATE = "android.software.cant_save_state"; - field public static final String FEATURE_COMPANION_DEVICE_SETUP = "android.software.companion_device_setup"; - field @Deprecated public static final String FEATURE_CONNECTION_SERVICE = "android.software.connectionservice"; - field public static final String FEATURE_CONSUMER_IR = "android.hardware.consumerir"; - field public static final String FEATURE_CONTROLS = "android.software.controls"; - field public static final String FEATURE_CREDENTIALS = "android.software.credentials"; - field public static final String FEATURE_DEVICE_ADMIN = "android.software.device_admin"; - field public static final String FEATURE_DEVICE_LOCK = "android.software.device_lock"; - field public static final String FEATURE_EMBEDDED = "android.hardware.type.embedded"; - field public static final String FEATURE_ETHERNET = "android.hardware.ethernet"; - field public static final String FEATURE_EXPANDED_PICTURE_IN_PICTURE = "android.software.expanded_picture_in_picture"; - field public static final String FEATURE_FACE = "android.hardware.biometrics.face"; - field public static final String FEATURE_FAKETOUCH = "android.hardware.faketouch"; - field public static final String FEATURE_FAKETOUCH_MULTITOUCH_DISTINCT = "android.hardware.faketouch.multitouch.distinct"; - field public static final String FEATURE_FAKETOUCH_MULTITOUCH_JAZZHAND = "android.hardware.faketouch.multitouch.jazzhand"; - field public static final String FEATURE_FINGERPRINT = "android.hardware.fingerprint"; - field public static final String FEATURE_FREEFORM_WINDOW_MANAGEMENT = "android.software.freeform_window_management"; - field public static final String FEATURE_GAMEPAD = "android.hardware.gamepad"; - field public static final String FEATURE_HARDWARE_KEYSTORE = "android.hardware.hardware_keystore"; - field public static final String FEATURE_HIFI_SENSORS = "android.hardware.sensor.hifi_sensors"; - field public static final String FEATURE_HOME_SCREEN = "android.software.home_screen"; - field public static final String FEATURE_IDENTITY_CREDENTIAL_HARDWARE = "android.hardware.identity_credential"; - field public static final String FEATURE_IDENTITY_CREDENTIAL_HARDWARE_DIRECT_ACCESS = "android.hardware.identity_credential_direct_access"; - field public static final String FEATURE_INPUT_METHODS = "android.software.input_methods"; - field public static final String FEATURE_IPSEC_TUNNELS = "android.software.ipsec_tunnels"; - field public static final String FEATURE_IPSEC_TUNNEL_MIGRATION = "android.software.ipsec_tunnel_migration"; - field public static final String FEATURE_IRIS = "android.hardware.biometrics.iris"; - field public static final String FEATURE_KEYSTORE_APP_ATTEST_KEY = "android.hardware.keystore.app_attest_key"; - field public static final String FEATURE_KEYSTORE_LIMITED_USE_KEY = "android.hardware.keystore.limited_use_key"; - field public static final String FEATURE_KEYSTORE_SINGLE_USE_KEY = "android.hardware.keystore.single_use_key"; - field public static final String FEATURE_LEANBACK = "android.software.leanback"; - field public static final String FEATURE_LEANBACK_ONLY = "android.software.leanback_only"; - field public static final String FEATURE_LIVE_TV = "android.software.live_tv"; - field public static final String FEATURE_LIVE_WALLPAPER = "android.software.live_wallpaper"; - field public static final String FEATURE_LOCATION = "android.hardware.location"; - field public static final String FEATURE_LOCATION_GPS = "android.hardware.location.gps"; - field public static final String FEATURE_LOCATION_NETWORK = "android.hardware.location.network"; - field public static final String FEATURE_MANAGED_USERS = "android.software.managed_users"; - field public static final String FEATURE_MICROPHONE = "android.hardware.microphone"; - field public static final String FEATURE_MIDI = "android.software.midi"; - field public static final String FEATURE_NFC = "android.hardware.nfc"; - field public static final String FEATURE_NFC_BEAM = "android.sofware.nfc.beam"; - field @FlaggedApi("android.nfc.enable_nfc_charging") public static final String FEATURE_NFC_CHARGING = "android.hardware.nfc.charging"; - field public static final String FEATURE_NFC_HOST_CARD_EMULATION = "android.hardware.nfc.hce"; - field public static final String FEATURE_NFC_HOST_CARD_EMULATION_NFCF = "android.hardware.nfc.hcef"; - field public static final String FEATURE_NFC_OFF_HOST_CARD_EMULATION_ESE = "android.hardware.nfc.ese"; - field public static final String FEATURE_NFC_OFF_HOST_CARD_EMULATION_UICC = "android.hardware.nfc.uicc"; - field public static final String FEATURE_OPENGLES_DEQP_LEVEL = "android.software.opengles.deqp.level"; - field public static final String FEATURE_OPENGLES_EXTENSION_PACK = "android.hardware.opengles.aep"; - field public static final String FEATURE_PC = "android.hardware.type.pc"; - field public static final String FEATURE_PICTURE_IN_PICTURE = "android.software.picture_in_picture"; - field public static final String FEATURE_PRINTING = "android.software.print"; - field public static final String FEATURE_RAM_LOW = "android.hardware.ram.low"; - field public static final String FEATURE_RAM_NORMAL = "android.hardware.ram.normal"; - field public static final String FEATURE_SCREEN_LANDSCAPE = "android.hardware.screen.landscape"; - field public static final String FEATURE_SCREEN_PORTRAIT = "android.hardware.screen.portrait"; - field public static final String FEATURE_SECURELY_REMOVES_USERS = "android.software.securely_removes_users"; - field public static final String FEATURE_SECURE_LOCK_SCREEN = "android.software.secure_lock_screen"; - field public static final String FEATURE_SECURITY_MODEL_COMPATIBLE = "android.hardware.security.model.compatible"; - field public static final String FEATURE_SENSOR_ACCELEROMETER = "android.hardware.sensor.accelerometer"; - field public static final String FEATURE_SENSOR_ACCELEROMETER_LIMITED_AXES = "android.hardware.sensor.accelerometer_limited_axes"; - field public static final String FEATURE_SENSOR_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED = "android.hardware.sensor.accelerometer_limited_axes_uncalibrated"; - field public static final String FEATURE_SENSOR_AMBIENT_TEMPERATURE = "android.hardware.sensor.ambient_temperature"; - field public static final String FEATURE_SENSOR_BAROMETER = "android.hardware.sensor.barometer"; - field public static final String FEATURE_SENSOR_COMPASS = "android.hardware.sensor.compass"; - field public static final String FEATURE_SENSOR_DYNAMIC_HEAD_TRACKER = "android.hardware.sensor.dynamic.head_tracker"; - field public static final String FEATURE_SENSOR_GYROSCOPE = "android.hardware.sensor.gyroscope"; - field public static final String FEATURE_SENSOR_GYROSCOPE_LIMITED_AXES = "android.hardware.sensor.gyroscope_limited_axes"; - field public static final String FEATURE_SENSOR_GYROSCOPE_LIMITED_AXES_UNCALIBRATED = "android.hardware.sensor.gyroscope_limited_axes_uncalibrated"; - field public static final String FEATURE_SENSOR_HEADING = "android.hardware.sensor.heading"; - field public static final String FEATURE_SENSOR_HEART_RATE = "android.hardware.sensor.heartrate"; - field public static final String FEATURE_SENSOR_HEART_RATE_ECG = "android.hardware.sensor.heartrate.ecg"; - field public static final String FEATURE_SENSOR_HINGE_ANGLE = "android.hardware.sensor.hinge_angle"; - field public static final String FEATURE_SENSOR_LIGHT = "android.hardware.sensor.light"; - field public static final String FEATURE_SENSOR_PROXIMITY = "android.hardware.sensor.proximity"; - field public static final String FEATURE_SENSOR_RELATIVE_HUMIDITY = "android.hardware.sensor.relative_humidity"; - field public static final String FEATURE_SENSOR_STEP_COUNTER = "android.hardware.sensor.stepcounter"; - field public static final String FEATURE_SENSOR_STEP_DETECTOR = "android.hardware.sensor.stepdetector"; - field public static final String FEATURE_SE_OMAPI_ESE = "android.hardware.se.omapi.ese"; - field public static final String FEATURE_SE_OMAPI_SD = "android.hardware.se.omapi.sd"; - field public static final String FEATURE_SE_OMAPI_UICC = "android.hardware.se.omapi.uicc"; - field public static final String FEATURE_SIP = "android.software.sip"; - field public static final String FEATURE_SIP_VOIP = "android.software.sip.voip"; - field public static final String FEATURE_STRONGBOX_KEYSTORE = "android.hardware.strongbox_keystore"; - field public static final String FEATURE_TELECOM = "android.software.telecom"; - field public static final String FEATURE_TELEPHONY = "android.hardware.telephony"; - field public static final String FEATURE_TELEPHONY_CALLING = "android.hardware.telephony.calling"; - field public static final String FEATURE_TELEPHONY_CDMA = "android.hardware.telephony.cdma"; - field public static final String FEATURE_TELEPHONY_DATA = "android.hardware.telephony.data"; - field public static final String FEATURE_TELEPHONY_EUICC = "android.hardware.telephony.euicc"; - field public static final String FEATURE_TELEPHONY_EUICC_MEP = "android.hardware.telephony.euicc.mep"; - field public static final String FEATURE_TELEPHONY_GSM = "android.hardware.telephony.gsm"; - field public static final String FEATURE_TELEPHONY_IMS = "android.hardware.telephony.ims"; - field public static final String FEATURE_TELEPHONY_MBMS = "android.hardware.telephony.mbms"; - field public static final String FEATURE_TELEPHONY_MESSAGING = "android.hardware.telephony.messaging"; - field public static final String FEATURE_TELEPHONY_RADIO_ACCESS = "android.hardware.telephony.radio.access"; - field public static final String FEATURE_TELEPHONY_SUBSCRIPTION = "android.hardware.telephony.subscription"; - field @Deprecated public static final String FEATURE_TELEVISION = "android.hardware.type.television"; - field @FlaggedApi("com.android.net.thread.platform.flags.thread_enabled_platform") public static final String FEATURE_THREAD_NETWORK = "android.hardware.thread_network"; - field public static final String FEATURE_TOUCHSCREEN = "android.hardware.touchscreen"; - field public static final String FEATURE_TOUCHSCREEN_MULTITOUCH = "android.hardware.touchscreen.multitouch"; - field public static final String FEATURE_TOUCHSCREEN_MULTITOUCH_DISTINCT = "android.hardware.touchscreen.multitouch.distinct"; - field public static final String FEATURE_TOUCHSCREEN_MULTITOUCH_JAZZHAND = "android.hardware.touchscreen.multitouch.jazzhand"; - field public static final String FEATURE_USB_ACCESSORY = "android.hardware.usb.accessory"; - field public static final String FEATURE_USB_HOST = "android.hardware.usb.host"; - field public static final String FEATURE_UWB = "android.hardware.uwb"; - field public static final String FEATURE_VERIFIED_BOOT = "android.software.verified_boot"; - field public static final String FEATURE_VR_HEADTRACKING = "android.hardware.vr.headtracking"; - field @Deprecated public static final String FEATURE_VR_MODE = "android.software.vr.mode"; - field public static final String FEATURE_VR_MODE_HIGH_PERFORMANCE = "android.hardware.vr.high_performance"; - field public static final String FEATURE_VULKAN_DEQP_LEVEL = "android.software.vulkan.deqp.level"; - field public static final String FEATURE_VULKAN_HARDWARE_COMPUTE = "android.hardware.vulkan.compute"; - field public static final String FEATURE_VULKAN_HARDWARE_LEVEL = "android.hardware.vulkan.level"; - field public static final String FEATURE_VULKAN_HARDWARE_VERSION = "android.hardware.vulkan.version"; - field public static final String FEATURE_WALLET_LOCATION_BASED_SUGGESTIONS = "android.software.wallet_location_based_suggestions"; - field public static final String FEATURE_WATCH = "android.hardware.type.watch"; - field public static final String FEATURE_WEBVIEW = "android.software.webview"; - field public static final String FEATURE_WIFI = "android.hardware.wifi"; - field public static final String FEATURE_WIFI_AWARE = "android.hardware.wifi.aware"; - field public static final String FEATURE_WIFI_DIRECT = "android.hardware.wifi.direct"; - field public static final String FEATURE_WIFI_PASSPOINT = "android.hardware.wifi.passpoint"; - field public static final String FEATURE_WIFI_RTT = "android.hardware.wifi.rtt"; - field public static final String FEATURE_WINDOW_MAGNIFICATION = "android.software.window_magnification"; - field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_API_OPENXR = "android.software.xr.api.openxr"; - field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_API_SPATIAL = "android.software.xr.api.spatial"; - field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_INPUT_CONTROLLER = "android.hardware.xr.input.controller"; - field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_INPUT_EYE_TRACKING = "android.hardware.xr.input.eye_tracking"; - field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_INPUT_HAND_TRACKING = "android.hardware.xr.input.hand_tracking"; - field public static final int FLAG_PERMISSION_WHITELIST_INSTALLER = 2; // 0x2 - field public static final int FLAG_PERMISSION_WHITELIST_SYSTEM = 1; // 0x1 - field public static final int FLAG_PERMISSION_WHITELIST_UPGRADE = 4; // 0x4 - field public static final int GET_ACTIVITIES = 1; // 0x1 - field @Deprecated public static final int GET_ATTRIBUTIONS = -2147483648; // 0x80000000 - field public static final long GET_ATTRIBUTIONS_LONG = 2147483648L; // 0x80000000L - field public static final int GET_CONFIGURATIONS = 16384; // 0x4000 - field @Deprecated public static final int GET_DISABLED_COMPONENTS = 512; // 0x200 - field @Deprecated public static final int GET_DISABLED_UNTIL_USED_COMPONENTS = 32768; // 0x8000 - field public static final int GET_GIDS = 256; // 0x100 - field public static final int GET_INSTRUMENTATION = 16; // 0x10 - field @Deprecated public static final int GET_INTENT_FILTERS = 32; // 0x20 - field public static final int GET_META_DATA = 128; // 0x80 - field public static final int GET_PERMISSIONS = 4096; // 0x1000 - field public static final int GET_PROVIDERS = 8; // 0x8 - field public static final int GET_RECEIVERS = 2; // 0x2 - field public static final int GET_RESOLVED_FILTER = 64; // 0x40 - field public static final int GET_SERVICES = 4; // 0x4 - field public static final int GET_SHARED_LIBRARY_FILES = 1024; // 0x400 - field @Deprecated public static final int GET_SIGNATURES = 64; // 0x40 - field public static final int GET_SIGNING_CERTIFICATES = 134217728; // 0x8000000 - field @Deprecated public static final int GET_UNINSTALLED_PACKAGES = 8192; // 0x2000 - field public static final int GET_URI_PERMISSION_PATTERNS = 2048; // 0x800 - field public static final int INSTALL_REASON_DEVICE_RESTORE = 2; // 0x2 - field public static final int INSTALL_REASON_DEVICE_SETUP = 3; // 0x3 - field public static final int INSTALL_REASON_POLICY = 1; // 0x1 - field public static final int INSTALL_REASON_UNKNOWN = 0; // 0x0 - field public static final int INSTALL_REASON_USER = 4; // 0x4 - field public static final int INSTALL_SCENARIO_BULK = 2; // 0x2 - field public static final int INSTALL_SCENARIO_BULK_SECONDARY = 3; // 0x3 - field public static final int INSTALL_SCENARIO_DEFAULT = 0; // 0x0 - field public static final int INSTALL_SCENARIO_FAST = 1; // 0x1 - field public static final int MATCH_ALL = 131072; // 0x20000 - field public static final int MATCH_APEX = 1073741824; // 0x40000000 - field @FlaggedApi("android.content.pm.archiving") public static final long MATCH_ARCHIVED_PACKAGES = 4294967296L; // 0x100000000L - field public static final int MATCH_DEFAULT_ONLY = 65536; // 0x10000 - field public static final int MATCH_DIRECT_BOOT_AUTO = 268435456; // 0x10000000 - field public static final int MATCH_DIRECT_BOOT_AWARE = 524288; // 0x80000 - field public static final int MATCH_DIRECT_BOOT_UNAWARE = 262144; // 0x40000 - field public static final int MATCH_DISABLED_COMPONENTS = 512; // 0x200 - field public static final int MATCH_DISABLED_UNTIL_USED_COMPONENTS = 32768; // 0x8000 - field @FlaggedApi("android.content.pm.quarantined_enabled") public static final long MATCH_QUARANTINED_COMPONENTS = 8589934592L; // 0x200000000L - field public static final int MATCH_SYSTEM_ONLY = 1048576; // 0x100000 - field public static final int MATCH_UNINSTALLED_PACKAGES = 8192; // 0x2000 - field public static final long MAXIMUM_VERIFICATION_TIMEOUT = 3600000L; // 0x36ee80L - field public static final int PERMISSION_DENIED = -1; // 0xffffffff - field public static final int PERMISSION_GRANTED = 0; // 0x0 - field public static final String PROPERTY_COMPAT_OVERRIDE_LANDSCAPE_TO_PORTRAIT = "android.camera.PROPERTY_COMPAT_OVERRIDE_LANDSCAPE_TO_PORTRAIT"; - field public static final String PROPERTY_MEDIA_CAPABILITIES = "android.media.PROPERTY_MEDIA_CAPABILITIES"; - field public static final String PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES = "android.net.PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES"; - field public static final String PROPERTY_SPECIAL_USE_FGS_SUBTYPE = "android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE"; - field @FlaggedApi("com.android.server.backup.enable_restricted_mode_changes") public static final String PROPERTY_USE_RESTRICTED_BACKUP_MODE = "android.app.backup.PROPERTY_USE_RESTRICTED_BACKUP_MODE"; - field public static final int SIGNATURE_FIRST_NOT_SIGNED = -1; // 0xffffffff - field public static final int SIGNATURE_MATCH = 0; // 0x0 - field public static final int SIGNATURE_NEITHER_SIGNED = 1; // 0x1 - field public static final int SIGNATURE_NO_MATCH = -3; // 0xfffffffd - field public static final int SIGNATURE_SECOND_NOT_SIGNED = -2; // 0xfffffffe - field public static final int SIGNATURE_UNKNOWN_PACKAGE = -4; // 0xfffffffc - field public static final int SYNCHRONOUS = 2; // 0x2 - field @NonNull public static final java.util.List TRUST_ALL; - field @NonNull public static final java.util.List TRUST_NONE; - field public static final int VERIFICATION_ALLOW = 1; // 0x1 - field public static final int VERIFICATION_REJECT = -1; // 0xffffffff - field public static final int VERSION_CODE_HIGHEST = -1; // 0xffffffff - } - - public static final class PackageManager.ApplicationInfoFlags { - method public long getValue(); - method @NonNull public static android.content.pm.PackageManager.ApplicationInfoFlags of(long); - } - - public static final class PackageManager.ComponentEnabledSetting implements android.os.Parcelable { - ctor public PackageManager.ComponentEnabledSetting(@NonNull android.content.ComponentName, int, int); - method public int describeContents(); - method @Nullable public android.content.ComponentName getComponentName(); - method public int getEnabledFlags(); - method public int getEnabledState(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class PackageManager.ComponentInfoFlags { - method public long getValue(); - method @NonNull public static android.content.pm.PackageManager.ComponentInfoFlags of(long); - } - - public static class PackageManager.NameNotFoundException extends android.util.AndroidException { - ctor public PackageManager.NameNotFoundException(); - ctor public PackageManager.NameNotFoundException(String); - } - - @java.lang.FunctionalInterface public static interface PackageManager.OnChecksumsReadyListener { - method public void onChecksumsReady(@NonNull java.util.List); - } - - public static final class PackageManager.PackageInfoFlags { - method public long getValue(); - method @NonNull public static android.content.pm.PackageManager.PackageInfoFlags of(long); - } - - public static final class PackageManager.Property implements android.os.Parcelable { - method public int describeContents(); - method public boolean getBoolean(); - method @Nullable public String getClassName(); - method public float getFloat(); - method public int getInteger(); - method @NonNull public String getName(); - method @NonNull public String getPackageName(); - method public int getResourceId(); - method @Nullable public String getString(); - method public boolean isBoolean(); - method public boolean isFloat(); - method public boolean isInteger(); - method public boolean isResourceId(); - method public boolean isString(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class PackageManager.ResolveInfoFlags { - method public long getValue(); - method @NonNull public static android.content.pm.PackageManager.ResolveInfoFlags of(long); - } - - @Deprecated public class PackageStats implements android.os.Parcelable { - ctor @Deprecated public PackageStats(String); - ctor @Deprecated public PackageStats(android.os.Parcel); - ctor @Deprecated public PackageStats(android.content.pm.PackageStats); - method @Deprecated public int describeContents(); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @Deprecated public long cacheSize; - field @Deprecated public long codeSize; - field @Deprecated public long dataSize; - field @Deprecated public long externalCacheSize; - field @Deprecated public long externalCodeSize; - field @Deprecated public long externalDataSize; - field @Deprecated public long externalMediaSize; - field @Deprecated public long externalObbSize; - field @Deprecated public String packageName; - } - - public class PathPermission extends android.os.PatternMatcher { - ctor public PathPermission(String, int, String, String); - ctor public PathPermission(android.os.Parcel); - method public String getReadPermission(); - method public String getWritePermission(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class PermissionGroupInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { - ctor @Deprecated public PermissionGroupInfo(); - ctor @Deprecated public PermissionGroupInfo(@NonNull android.content.pm.PermissionGroupInfo); - method public int describeContents(); - method @Nullable public CharSequence loadDescription(@NonNull android.content.pm.PackageManager); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_PERSONAL_INFO = 1; // 0x1 - field @StringRes public int descriptionRes; - field public int flags; - field @Nullable public CharSequence nonLocalizedDescription; - field public int priority; - } - - public class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { - ctor @Deprecated public PermissionInfo(); - ctor @Deprecated public PermissionInfo(@NonNull android.content.pm.PermissionInfo); - method public int describeContents(); - method public int getProtection(); - method public int getProtectionFlags(); - method @Nullable public CharSequence loadDescription(@NonNull android.content.pm.PackageManager); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_COSTS_MONEY = 1; // 0x1 - field public static final int FLAG_HARD_RESTRICTED = 4; // 0x4 - field public static final int FLAG_IMMUTABLY_RESTRICTED = 16; // 0x10 - field public static final int FLAG_INSTALLED = 1073741824; // 0x40000000 - field public static final int FLAG_SOFT_RESTRICTED = 8; // 0x8 - field public static final int PROTECTION_DANGEROUS = 1; // 0x1 - field public static final int PROTECTION_FLAG_APPOP = 64; // 0x40 - field public static final int PROTECTION_FLAG_DEVELOPMENT = 32; // 0x20 - field public static final int PROTECTION_FLAG_INSTALLER = 256; // 0x100 - field public static final int PROTECTION_FLAG_INSTANT = 4096; // 0x1000 - field public static final int PROTECTION_FLAG_PRE23 = 128; // 0x80 - field public static final int PROTECTION_FLAG_PREINSTALLED = 1024; // 0x400 - field public static final int PROTECTION_FLAG_PRIVILEGED = 16; // 0x10 - field public static final int PROTECTION_FLAG_RUNTIME_ONLY = 8192; // 0x2000 - field public static final int PROTECTION_FLAG_SETUP = 2048; // 0x800 - field @Deprecated public static final int PROTECTION_FLAG_SYSTEM = 16; // 0x10 - field public static final int PROTECTION_FLAG_VERIFIER = 512; // 0x200 - field public static final int PROTECTION_INTERNAL = 4; // 0x4 - field @Deprecated public static final int PROTECTION_MASK_BASE = 15; // 0xf - field @Deprecated public static final int PROTECTION_MASK_FLAGS = 65520; // 0xfff0 - field public static final int PROTECTION_NORMAL = 0; // 0x0 - field public static final int PROTECTION_SIGNATURE = 2; // 0x2 - field @Deprecated public static final int PROTECTION_SIGNATURE_OR_SYSTEM = 3; // 0x3 - field @StringRes public int descriptionRes; - field public int flags; - field @Nullable public String group; - field @Nullable public CharSequence nonLocalizedDescription; - field @Deprecated public int protectionLevel; - } - - public final class ProviderInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable { - ctor public ProviderInfo(); - ctor public ProviderInfo(android.content.pm.ProviderInfo); - method public int describeContents(); - method public void dump(android.util.Printer, String); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_SINGLE_USER = 1073741824; // 0x40000000 - field public String authority; - field public int flags; - field public boolean forceUriPermissions; - field public boolean grantUriPermissions; - field public int initOrder; - field @Deprecated public boolean isSyncable; - field public boolean multiprocess; - field public android.content.pm.PathPermission[] pathPermissions; - field public String readPermission; - field public android.os.PatternMatcher[] uriPermissionPatterns; - field public String writePermission; - } - - public class ResolveInfo implements android.os.Parcelable { - ctor public ResolveInfo(); - ctor public ResolveInfo(android.content.pm.ResolveInfo); - method public int describeContents(); - method public void dump(android.util.Printer, String); - method public final int getIconResource(); - method public boolean isCrossProfileIntentForwarderActivity(); - method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); - method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public android.content.pm.ActivityInfo activityInfo; - field public android.content.IntentFilter filter; - field public int icon; - field public boolean isDefault; - field public boolean isInstantAppAvailable; - field public int labelRes; - field public int match; - field public CharSequence nonLocalizedLabel; - field public int preferredOrder; - field public int priority; - field public android.content.pm.ProviderInfo providerInfo; - field public String resolvePackageName; - field public android.content.pm.ServiceInfo serviceInfo; - field public int specificIndex; - } - - public static class ResolveInfo.DisplayNameComparator implements java.util.Comparator { - ctor public ResolveInfo.DisplayNameComparator(android.content.pm.PackageManager); - method public final int compare(android.content.pm.ResolveInfo, android.content.pm.ResolveInfo); - } - - public class ServiceInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable { - ctor public ServiceInfo(); - ctor public ServiceInfo(android.content.pm.ServiceInfo); - method public int describeContents(); - method public void dump(android.util.Printer, String); - method public int getForegroundServiceType(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_ALLOW_SHARED_ISOLATED_PROCESS = 16; // 0x10 - field public static final int FLAG_EXTERNAL_SERVICE = 4; // 0x4 - field public static final int FLAG_ISOLATED_PROCESS = 2; // 0x2 - field public static final int FLAG_SINGLE_USER = 1073741824; // 0x40000000 - field public static final int FLAG_STOP_WITH_TASK = 1; // 0x1 - field public static final int FLAG_USE_APP_ZYGOTE = 8; // 0x8 - field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_CAMERA}, anyOf={android.Manifest.permission.CAMERA}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_CAMERA = 64; // 0x40 - field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE}, anyOf={android.Manifest.permission.BLUETOOTH_ADVERTISE, android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_SCAN, android.Manifest.permission.CHANGE_NETWORK_STATE, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_MULTICAST_STATE, android.Manifest.permission.NFC, android.Manifest.permission.TRANSMIT_IR, android.Manifest.permission.UWB_RANGING, android.Manifest.permission.RANGING}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE = 16; // 0x10 - field @RequiresPermission(value=android.Manifest.permission.FOREGROUND_SERVICE_DATA_SYNC, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_DATA_SYNC = 1; // 0x1 - field @FlaggedApi("android.permission.flags.replace_body_sensor_permission_enabled") @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_HEALTH}, anyOf={android.Manifest.permission.ACTIVITY_RECOGNITION, android.Manifest.permission.HIGH_SAMPLING_RATE_SENSORS, android.health.connect.HealthPermissions.READ_HEART_RATE, android.health.connect.HealthPermissions.READ_SKIN_TEMPERATURE, android.health.connect.HealthPermissions.READ_OXYGEN_SATURATION}) public static final int FOREGROUND_SERVICE_TYPE_HEALTH = 256; // 0x100 - field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_LOCATION}, anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_LOCATION = 8; // 0x8 - field public static final int FOREGROUND_SERVICE_TYPE_MANIFEST = -1; // 0xffffffff - field @RequiresPermission(value=android.Manifest.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK = 2; // 0x2 - field @FlaggedApi("android.content.pm.introduce_media_processing_type") @RequiresPermission(android.Manifest.permission.FOREGROUND_SERVICE_MEDIA_PROCESSING) public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING = 8192; // 0x2000 - field @RequiresPermission(value=android.Manifest.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION = 32; // 0x20 - field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_MICROPHONE}, anyOf={android.Manifest.permission.CAPTURE_AUDIO_OUTPUT, android.Manifest.permission.RECORD_AUDIO}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_MICROPHONE = 128; // 0x80 - field @Deprecated public static final int FOREGROUND_SERVICE_TYPE_NONE = 0; // 0x0 - field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_PHONE_CALL}, anyOf={android.Manifest.permission.MANAGE_OWN_CALLS}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_PHONE_CALL = 4; // 0x4 - field @RequiresPermission(android.Manifest.permission.FOREGROUND_SERVICE_REMOTE_MESSAGING) public static final int FOREGROUND_SERVICE_TYPE_REMOTE_MESSAGING = 512; // 0x200 - field public static final int FOREGROUND_SERVICE_TYPE_SHORT_SERVICE = 2048; // 0x800 - field @RequiresPermission(android.Manifest.permission.FOREGROUND_SERVICE_SPECIAL_USE) public static final int FOREGROUND_SERVICE_TYPE_SPECIAL_USE = 1073741824; // 0x40000000 - field @RequiresPermission(android.Manifest.permission.FOREGROUND_SERVICE_SYSTEM_EXEMPTED) public static final int FOREGROUND_SERVICE_TYPE_SYSTEM_EXEMPTED = 1024; // 0x400 - field public int flags; - field public String permission; - } - - public final class SharedLibraryInfo implements android.os.Parcelable { - method public int describeContents(); - method @FlaggedApi("android.content.pm.sdk_dependency_installer") @NonNull public java.util.List getCertDigests(); - method @NonNull public android.content.pm.VersionedPackage getDeclaringPackage(); - method @NonNull public java.util.List getDependentPackages(); - method @IntRange(from=0xffffffff) public long getLongVersion(); - method public String getName(); - method @FlaggedApi("android.content.pm.sdk_lib_independence") @NonNull public java.util.List getOptionalDependentPackages(); - method public int getType(); - method @Deprecated @IntRange(from=0xffffffff) public int getVersion(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_BUILTIN = 0; // 0x0 - field public static final int TYPE_DYNAMIC = 1; // 0x1 - field public static final int TYPE_SDK_PACKAGE = 3; // 0x3 - field public static final int TYPE_STATIC = 2; // 0x2 - field public static final int VERSION_UNDEFINED = -1; // 0xffffffff - } - - public final class ShortcutInfo implements android.os.Parcelable { - method @NonNull public static android.content.pm.ShortcutInfo createFromGenericDocument(@NonNull android.content.Context, @NonNull android.app.appsearch.GenericDocument); - method public int describeContents(); - method @Nullable public android.content.ComponentName getActivity(); - method @NonNull public java.util.List getCapabilities(); - method @NonNull public java.util.List getCapabilityParams(@NonNull android.content.pm.Capability); - method @Nullable public java.util.Set getCategories(); - method @Nullable public CharSequence getDisabledMessage(); - method public int getDisabledReason(); - method public int getExcludedFromSurfaces(); - method @Nullable public android.os.PersistableBundle getExtras(); - method @NonNull public String getId(); - method @Nullable public android.content.Intent getIntent(); - method @Nullable public android.content.Intent[] getIntents(); - method public long getLastChangedTimestamp(); - method @Nullable public android.content.LocusId getLocusId(); - method @Nullable public CharSequence getLongLabel(); - method @NonNull public String getPackage(); - method public int getRank(); - method @Nullable public CharSequence getShortLabel(); - method public android.os.UserHandle getUserHandle(); - method public boolean hasKeyFieldsOnly(); - method public boolean isCached(); - method public boolean isDeclaredInManifest(); - method public boolean isDynamic(); - method public boolean isEnabled(); - method public boolean isExcludedFromSurfaces(int); - method public boolean isImmutable(); - method public boolean isPinned(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DISABLED_REASON_APP_CHANGED = 2; // 0x2 - field public static final int DISABLED_REASON_BACKUP_NOT_SUPPORTED = 101; // 0x65 - field public static final int DISABLED_REASON_BY_APP = 1; // 0x1 - field public static final int DISABLED_REASON_NOT_DISABLED = 0; // 0x0 - field public static final int DISABLED_REASON_OTHER_RESTORE_ISSUE = 103; // 0x67 - field public static final int DISABLED_REASON_SIGNATURE_MISMATCH = 102; // 0x66 - field public static final int DISABLED_REASON_UNKNOWN = 3; // 0x3 - field public static final int DISABLED_REASON_VERSION_LOWER = 100; // 0x64 - field public static final String SHORTCUT_CATEGORY_CONVERSATION = "android.shortcut.conversation"; - field public static final int SURFACE_LAUNCHER = 1; // 0x1 - } - - public static class ShortcutInfo.Builder { - ctor public ShortcutInfo.Builder(android.content.Context, String); - method @NonNull public android.content.pm.ShortcutInfo.Builder addCapabilityBinding(@NonNull android.content.pm.Capability, @Nullable android.content.pm.CapabilityParams); - method @NonNull public android.content.pm.ShortcutInfo build(); - method @NonNull public android.content.pm.ShortcutInfo.Builder setActivity(@NonNull android.content.ComponentName); - method @NonNull public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set); - method @NonNull public android.content.pm.ShortcutInfo.Builder setDisabledMessage(@NonNull CharSequence); - method @NonNull public android.content.pm.ShortcutInfo.Builder setExcludedFromSurfaces(int); - method @NonNull public android.content.pm.ShortcutInfo.Builder setExtras(@NonNull android.os.PersistableBundle); - method @NonNull public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon); - method @NonNull public android.content.pm.ShortcutInfo.Builder setIntent(@NonNull android.content.Intent); - method @NonNull public android.content.pm.ShortcutInfo.Builder setIntents(@NonNull android.content.Intent[]); - method @NonNull public android.content.pm.ShortcutInfo.Builder setLocusId(@NonNull android.content.LocusId); - method @NonNull public android.content.pm.ShortcutInfo.Builder setLongLabel(@NonNull CharSequence); - method @NonNull public android.content.pm.ShortcutInfo.Builder setLongLived(boolean); - method @NonNull public android.content.pm.ShortcutInfo.Builder setPerson(@NonNull android.app.Person); - method @NonNull public android.content.pm.ShortcutInfo.Builder setPersons(@NonNull android.app.Person[]); - method @NonNull public android.content.pm.ShortcutInfo.Builder setRank(int); - method @NonNull public android.content.pm.ShortcutInfo.Builder setShortLabel(@NonNull CharSequence); - method @NonNull public android.content.pm.ShortcutInfo.Builder setStartingTheme(int); - } - - public class ShortcutManager { - method @WorkerThread public boolean addDynamicShortcuts(@NonNull java.util.List); - method @WorkerThread public android.content.Intent createShortcutResultIntent(@NonNull android.content.pm.ShortcutInfo); - method public void disableShortcuts(@NonNull java.util.List); - method public void disableShortcuts(@NonNull java.util.List, CharSequence); - method public void enableShortcuts(@NonNull java.util.List); - method @NonNull @WorkerThread public java.util.List getDynamicShortcuts(); - method public int getIconMaxHeight(); - method public int getIconMaxWidth(); - method @NonNull @WorkerThread public java.util.List getManifestShortcuts(); - method public int getMaxShortcutCountPerActivity(); - method @NonNull @WorkerThread public java.util.List getPinnedShortcuts(); - method @NonNull @WorkerThread public java.util.List getShortcuts(int); - method public boolean isRateLimitingActive(); - method public boolean isRequestPinShortcutSupported(); - method public void pushDynamicShortcut(@NonNull android.content.pm.ShortcutInfo); - method public void removeAllDynamicShortcuts(); - method public void removeDynamicShortcuts(@NonNull java.util.List); - method public void removeLongLivedShortcuts(@NonNull java.util.List); - method public void reportShortcutUsed(String); - method @WorkerThread public boolean requestPinShortcut(@NonNull android.content.pm.ShortcutInfo, @Nullable android.content.IntentSender); - method @WorkerThread public boolean setDynamicShortcuts(@NonNull java.util.List); - method @WorkerThread public boolean updateShortcuts(@NonNull java.util.List); - field public static final int FLAG_MATCH_CACHED = 8; // 0x8 - field public static final int FLAG_MATCH_DYNAMIC = 2; // 0x2 - field public static final int FLAG_MATCH_MANIFEST = 1; // 0x1 - field public static final int FLAG_MATCH_PINNED = 4; // 0x4 - } - - public class Signature implements android.os.Parcelable { - ctor public Signature(byte[]); - ctor public Signature(String); - method public int describeContents(); - method public byte[] toByteArray(); - method public char[] toChars(); - method public char[] toChars(char[], int[]); - method public String toCharsString(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class SigningInfo implements android.os.Parcelable { - ctor public SigningInfo(); - ctor @FlaggedApi("android.content.pm.archiving") public SigningInfo(int, @Nullable java.util.Collection, @Nullable java.util.Collection, @Nullable java.util.Collection); - ctor public SigningInfo(android.content.pm.SigningInfo); - method public int describeContents(); - method public android.content.pm.Signature[] getApkContentsSigners(); - method @FlaggedApi("android.content.pm.archiving") @NonNull public java.util.Collection getPublicKeys(); - method @FlaggedApi("android.content.pm.archiving") public int getSchemeVersion(); - method public android.content.pm.Signature[] getSigningCertificateHistory(); - method public boolean hasMultipleSigners(); - method public boolean hasPastSigningCertificates(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class VersionedPackage implements android.os.Parcelable { - ctor public VersionedPackage(@NonNull String, int); - ctor public VersionedPackage(@NonNull String, long); - method public int describeContents(); - method public long getLongVersionCode(); - method @NonNull public String getPackageName(); - method @Deprecated public int getVersionCode(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.content.pm.verify.domain { - - public final class DomainVerificationManager { - method @Nullable public android.content.pm.verify.domain.DomainVerificationUserState getDomainVerificationUserState(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - } - - public final class DomainVerificationUserState implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.Map getHostToStateMap(); - method @NonNull public String getPackageName(); - method @NonNull public android.os.UserHandle getUser(); - method @NonNull public boolean isLinkHandlingAllowed(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DOMAIN_STATE_NONE = 0; // 0x0 - field public static final int DOMAIN_STATE_SELECTED = 1; // 0x1 - field public static final int DOMAIN_STATE_VERIFIED = 2; // 0x2 - } - -} - -package android.content.res { - - public class AssetFileDescriptor implements java.io.Closeable android.os.Parcelable { - ctor public AssetFileDescriptor(android.os.ParcelFileDescriptor, long, long); - ctor public AssetFileDescriptor(android.os.ParcelFileDescriptor, long, long, android.os.Bundle); - method public void close() throws java.io.IOException; - method public java.io.FileInputStream createInputStream() throws java.io.IOException; - method public java.io.FileOutputStream createOutputStream() throws java.io.IOException; - method public int describeContents(); - method public long getDeclaredLength(); - method public android.os.Bundle getExtras(); - method public java.io.FileDescriptor getFileDescriptor(); - method public long getLength(); - method public android.os.ParcelFileDescriptor getParcelFileDescriptor(); - method public long getStartOffset(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final long UNKNOWN_LENGTH = -1L; // 0xffffffffffffffffL - } - - public static class AssetFileDescriptor.AutoCloseInputStream extends android.os.ParcelFileDescriptor.AutoCloseInputStream { - ctor public AssetFileDescriptor.AutoCloseInputStream(android.content.res.AssetFileDescriptor) throws java.io.IOException; - } - - public static class AssetFileDescriptor.AutoCloseOutputStream extends android.os.ParcelFileDescriptor.AutoCloseOutputStream { - ctor public AssetFileDescriptor.AutoCloseOutputStream(android.content.res.AssetFileDescriptor) throws java.io.IOException; - } - - public final class AssetManager implements java.lang.AutoCloseable { - method public void close(); - method public String[] getLocales(); - method @Nullable public String[] list(@NonNull String) throws java.io.IOException; - method @NonNull public java.io.InputStream open(@NonNull String) throws java.io.IOException; - method @NonNull public java.io.InputStream open(@NonNull String, int) throws java.io.IOException; - method @NonNull public android.content.res.AssetFileDescriptor openFd(@NonNull String) throws java.io.IOException; - method @NonNull public android.content.res.AssetFileDescriptor openNonAssetFd(@NonNull String) throws java.io.IOException; - method @NonNull public android.content.res.AssetFileDescriptor openNonAssetFd(int, @NonNull String) throws java.io.IOException; - method @NonNull public android.content.res.XmlResourceParser openXmlResourceParser(@NonNull String) throws java.io.IOException; - method @NonNull public android.content.res.XmlResourceParser openXmlResourceParser(int, @NonNull String) throws java.io.IOException; - field public static final int ACCESS_BUFFER = 3; // 0x3 - field public static final int ACCESS_RANDOM = 1; // 0x1 - field public static final int ACCESS_STREAMING = 2; // 0x2 - field public static final int ACCESS_UNKNOWN = 0; // 0x0 - } - - public final class AssetManager.AssetInputStream extends java.io.InputStream { - method public int read() throws java.io.IOException; - } - - public class ColorStateList implements android.os.Parcelable { - ctor public ColorStateList(int[][], @ColorInt int[]); - method @Deprecated @NonNull public static android.content.res.ColorStateList createFromXml(android.content.res.Resources, org.xmlpull.v1.XmlPullParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method @NonNull public static android.content.res.ColorStateList createFromXml(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @Nullable android.content.res.Resources.Theme) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method public int describeContents(); - method public int getChangingConfigurations(); - method public int getColorForState(@Nullable int[], int); - method @ColorInt public int getDefaultColor(); - method public boolean isOpaque(); - method public boolean isStateful(); - method @NonNull public static android.content.res.ColorStateList valueOf(@ColorInt int); - method @NonNull public android.content.res.ColorStateList withAlpha(int); - method @NonNull public android.content.res.ColorStateList withLStar(float); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class Configuration implements java.lang.Comparable android.os.Parcelable { - ctor public Configuration(); - ctor public Configuration(android.content.res.Configuration); - method public int compareTo(android.content.res.Configuration); - method public int describeContents(); - method public int diff(android.content.res.Configuration); - method public boolean equals(android.content.res.Configuration); - method @NonNull public static android.content.res.Configuration generateDelta(@NonNull android.content.res.Configuration, @NonNull android.content.res.Configuration); - method public int getGrammaticalGender(); - method public int getLayoutDirection(); - method @NonNull public android.os.LocaleList getLocales(); - method public boolean isLayoutSizeAtLeast(int); - method public boolean isNightModeActive(); - method public boolean isScreenHdr(); - method public boolean isScreenRound(); - method public boolean isScreenWideColorGamut(); - method public static boolean needNewResources(int, int); - method public void readFromParcel(android.os.Parcel); - method public void setLayoutDirection(java.util.Locale); - method public void setLocale(@Nullable java.util.Locale); - method public void setLocales(@Nullable android.os.LocaleList); - method public void setTo(android.content.res.Configuration); - method public void setToDefaults(); - method public int updateFrom(@NonNull android.content.res.Configuration); - method public void writeToParcel(android.os.Parcel, int); - field public static final int COLOR_MODE_HDR_MASK = 12; // 0xc - field public static final int COLOR_MODE_HDR_NO = 4; // 0x4 - field public static final int COLOR_MODE_HDR_SHIFT = 2; // 0x2 - field public static final int COLOR_MODE_HDR_UNDEFINED = 0; // 0x0 - field public static final int COLOR_MODE_HDR_YES = 8; // 0x8 - field public static final int COLOR_MODE_UNDEFINED = 0; // 0x0 - field public static final int COLOR_MODE_WIDE_COLOR_GAMUT_MASK = 3; // 0x3 - field public static final int COLOR_MODE_WIDE_COLOR_GAMUT_NO = 1; // 0x1 - field public static final int COLOR_MODE_WIDE_COLOR_GAMUT_UNDEFINED = 0; // 0x0 - field public static final int COLOR_MODE_WIDE_COLOR_GAMUT_YES = 2; // 0x2 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DENSITY_DPI_UNDEFINED = 0; // 0x0 - field public static final int FONT_WEIGHT_ADJUSTMENT_UNDEFINED = 2147483647; // 0x7fffffff - field public static final int GRAMMATICAL_GENDER_FEMININE = 2; // 0x2 - field public static final int GRAMMATICAL_GENDER_MASCULINE = 3; // 0x3 - field public static final int GRAMMATICAL_GENDER_NEUTRAL = 1; // 0x1 - field public static final int GRAMMATICAL_GENDER_NOT_SPECIFIED = 0; // 0x0 - field public static final int HARDKEYBOARDHIDDEN_NO = 1; // 0x1 - field public static final int HARDKEYBOARDHIDDEN_UNDEFINED = 0; // 0x0 - field public static final int HARDKEYBOARDHIDDEN_YES = 2; // 0x2 - field public static final int KEYBOARDHIDDEN_NO = 1; // 0x1 - field public static final int KEYBOARDHIDDEN_UNDEFINED = 0; // 0x0 - field public static final int KEYBOARDHIDDEN_YES = 2; // 0x2 - field public static final int KEYBOARD_12KEY = 3; // 0x3 - field public static final int KEYBOARD_NOKEYS = 1; // 0x1 - field public static final int KEYBOARD_QWERTY = 2; // 0x2 - field public static final int KEYBOARD_UNDEFINED = 0; // 0x0 - field public static final int MNC_ZERO = 65535; // 0xffff - field public static final int NAVIGATIONHIDDEN_NO = 1; // 0x1 - field public static final int NAVIGATIONHIDDEN_UNDEFINED = 0; // 0x0 - field public static final int NAVIGATIONHIDDEN_YES = 2; // 0x2 - field public static final int NAVIGATION_DPAD = 2; // 0x2 - field public static final int NAVIGATION_NONAV = 1; // 0x1 - field public static final int NAVIGATION_TRACKBALL = 3; // 0x3 - field public static final int NAVIGATION_UNDEFINED = 0; // 0x0 - field public static final int NAVIGATION_WHEEL = 4; // 0x4 - field public static final int ORIENTATION_LANDSCAPE = 2; // 0x2 - field public static final int ORIENTATION_PORTRAIT = 1; // 0x1 - field @Deprecated public static final int ORIENTATION_SQUARE = 3; // 0x3 - field public static final int ORIENTATION_UNDEFINED = 0; // 0x0 - field public static final int SCREENLAYOUT_LAYOUTDIR_LTR = 64; // 0x40 - field public static final int SCREENLAYOUT_LAYOUTDIR_MASK = 192; // 0xc0 - field public static final int SCREENLAYOUT_LAYOUTDIR_RTL = 128; // 0x80 - field public static final int SCREENLAYOUT_LAYOUTDIR_SHIFT = 6; // 0x6 - field public static final int SCREENLAYOUT_LAYOUTDIR_UNDEFINED = 0; // 0x0 - field public static final int SCREENLAYOUT_LONG_MASK = 48; // 0x30 - field public static final int SCREENLAYOUT_LONG_NO = 16; // 0x10 - field public static final int SCREENLAYOUT_LONG_UNDEFINED = 0; // 0x0 - field public static final int SCREENLAYOUT_LONG_YES = 32; // 0x20 - field public static final int SCREENLAYOUT_ROUND_MASK = 768; // 0x300 - field public static final int SCREENLAYOUT_ROUND_NO = 256; // 0x100 - field public static final int SCREENLAYOUT_ROUND_UNDEFINED = 0; // 0x0 - field public static final int SCREENLAYOUT_ROUND_YES = 512; // 0x200 - field public static final int SCREENLAYOUT_SIZE_LARGE = 3; // 0x3 - field public static final int SCREENLAYOUT_SIZE_MASK = 15; // 0xf - field public static final int SCREENLAYOUT_SIZE_NORMAL = 2; // 0x2 - field public static final int SCREENLAYOUT_SIZE_SMALL = 1; // 0x1 - field public static final int SCREENLAYOUT_SIZE_UNDEFINED = 0; // 0x0 - field public static final int SCREENLAYOUT_SIZE_XLARGE = 4; // 0x4 - field public static final int SCREENLAYOUT_UNDEFINED = 0; // 0x0 - field public static final int SCREEN_HEIGHT_DP_UNDEFINED = 0; // 0x0 - field public static final int SCREEN_WIDTH_DP_UNDEFINED = 0; // 0x0 - field public static final int SMALLEST_SCREEN_WIDTH_DP_UNDEFINED = 0; // 0x0 - field public static final int TOUCHSCREEN_FINGER = 3; // 0x3 - field public static final int TOUCHSCREEN_NOTOUCH = 1; // 0x1 - field @Deprecated public static final int TOUCHSCREEN_STYLUS = 2; // 0x2 - field public static final int TOUCHSCREEN_UNDEFINED = 0; // 0x0 - field public static final int UI_MODE_NIGHT_MASK = 48; // 0x30 - field public static final int UI_MODE_NIGHT_NO = 16; // 0x10 - field public static final int UI_MODE_NIGHT_UNDEFINED = 0; // 0x0 - field public static final int UI_MODE_NIGHT_YES = 32; // 0x20 - field public static final int UI_MODE_TYPE_APPLIANCE = 5; // 0x5 - field public static final int UI_MODE_TYPE_CAR = 3; // 0x3 - field public static final int UI_MODE_TYPE_DESK = 2; // 0x2 - field public static final int UI_MODE_TYPE_MASK = 15; // 0xf - field public static final int UI_MODE_TYPE_NORMAL = 1; // 0x1 - field public static final int UI_MODE_TYPE_TELEVISION = 4; // 0x4 - field public static final int UI_MODE_TYPE_UNDEFINED = 0; // 0x0 - field public static final int UI_MODE_TYPE_VR_HEADSET = 7; // 0x7 - field public static final int UI_MODE_TYPE_WATCH = 6; // 0x6 - field public int colorMode; - field public int densityDpi; - field public float fontScale; - field public int fontWeightAdjustment; - field public int hardKeyboardHidden; - field public int keyboard; - field public int keyboardHidden; - field @Deprecated public java.util.Locale locale; - field public int mcc; - field public int mnc; - field public int navigation; - field public int navigationHidden; - field public int orientation; - field public int screenHeightDp; - field public int screenLayout; - field public int screenWidthDp; - field public int smallestScreenWidthDp; - field public int touchscreen; - field public int uiMode; - } - - @FlaggedApi("android.content.res.font_scale_converter_public") public interface FontScaleConverter { - method public float convertDpToSp(float); - method public float convertSpToDp(float); - method @AnyThread @Nullable public static android.content.res.FontScaleConverter forScale(float); - method @AnyThread public static boolean isNonLinearFontScalingActive(float); - } - - public class ObbInfo implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int OBB_OVERLAY = 1; // 0x1 - field public String filename; - field public int flags; - field public String packageName; - field public int version; - } - - public class ObbScanner { - method public static android.content.res.ObbInfo getObbInfo(String) throws java.io.IOException; - } - - public class Resources { - ctor @Deprecated public Resources(android.content.res.AssetManager, android.util.DisplayMetrics, android.content.res.Configuration); - method public void addLoaders(@NonNull android.content.res.loader.ResourcesLoader...); - method public final void finishPreloading(); - method public final void flushLayoutCache(); - method @NonNull public android.content.res.XmlResourceParser getAnimation(@AnimRes @AnimatorRes int) throws android.content.res.Resources.NotFoundException; - method public final android.content.res.AssetManager getAssets(); - method @AnyRes public static int getAttributeSetSourceResId(@Nullable android.util.AttributeSet); - method public boolean getBoolean(@BoolRes int) throws android.content.res.Resources.NotFoundException; - method @Deprecated @ColorInt public int getColor(@ColorRes int) throws android.content.res.Resources.NotFoundException; - method @ColorInt public int getColor(@ColorRes int, @Nullable android.content.res.Resources.Theme) throws android.content.res.Resources.NotFoundException; - method @Deprecated @NonNull public android.content.res.ColorStateList getColorStateList(@ColorRes int) throws android.content.res.Resources.NotFoundException; - method @NonNull public android.content.res.ColorStateList getColorStateList(@ColorRes int, @Nullable android.content.res.Resources.Theme) throws android.content.res.Resources.NotFoundException; - method public android.content.res.Configuration getConfiguration(); - method public float getDimension(@DimenRes int) throws android.content.res.Resources.NotFoundException; - method public int getDimensionPixelOffset(@DimenRes int) throws android.content.res.Resources.NotFoundException; - method public int getDimensionPixelSize(@DimenRes int) throws android.content.res.Resources.NotFoundException; - method public android.util.DisplayMetrics getDisplayMetrics(); - method @Deprecated public android.graphics.drawable.Drawable getDrawable(@DrawableRes int) throws android.content.res.Resources.NotFoundException; - method public android.graphics.drawable.Drawable getDrawable(@DrawableRes int, @Nullable android.content.res.Resources.Theme) throws android.content.res.Resources.NotFoundException; - method @Deprecated @Nullable public android.graphics.drawable.Drawable getDrawableForDensity(@DrawableRes int, int) throws android.content.res.Resources.NotFoundException; - method @Nullable public android.graphics.drawable.Drawable getDrawableForDensity(@DrawableRes int, int, @Nullable android.content.res.Resources.Theme); - method public float getFloat(@DimenRes int); - method @NonNull public android.graphics.Typeface getFont(@FontRes int) throws android.content.res.Resources.NotFoundException; - method public float getFraction(@FractionRes int, int, int); - method @Discouraged(message="Use of this function is discouraged because resource reflection makes it harder to perform build optimizations and compile-time verification of code. It is much more efficient to retrieve resources by identifier (e.g. `R.foo.bar`) than by name (e.g. `getIdentifier(\"bar\", \"foo\", null)`).") public int getIdentifier(String, String, String); - method @NonNull public int[] getIntArray(@ArrayRes int) throws android.content.res.Resources.NotFoundException; - method public int getInteger(@IntegerRes int) throws android.content.res.Resources.NotFoundException; - method @NonNull public android.content.res.XmlResourceParser getLayout(@LayoutRes int) throws android.content.res.Resources.NotFoundException; - method @Deprecated public android.graphics.Movie getMovie(@RawRes int) throws android.content.res.Resources.NotFoundException; - method @NonNull public String getQuantityString(@PluralsRes int, int, java.lang.Object...) throws android.content.res.Resources.NotFoundException; - method @NonNull public String getQuantityString(@PluralsRes int, int) throws android.content.res.Resources.NotFoundException; - method @NonNull public CharSequence getQuantityText(@PluralsRes int, int) throws android.content.res.Resources.NotFoundException; - method public String getResourceEntryName(@AnyRes int) throws android.content.res.Resources.NotFoundException; - method public String getResourceName(@AnyRes int) throws android.content.res.Resources.NotFoundException; - method public String getResourcePackageName(@AnyRes int) throws android.content.res.Resources.NotFoundException; - method public String getResourceTypeName(@AnyRes int) throws android.content.res.Resources.NotFoundException; - method @NonNull public String getString(@StringRes int) throws android.content.res.Resources.NotFoundException; - method @NonNull public String getString(@StringRes int, java.lang.Object...) throws android.content.res.Resources.NotFoundException; - method @NonNull public String[] getStringArray(@ArrayRes int) throws android.content.res.Resources.NotFoundException; - method public static android.content.res.Resources getSystem(); - method @NonNull public CharSequence getText(@StringRes int) throws android.content.res.Resources.NotFoundException; - method public CharSequence getText(@StringRes int, CharSequence); - method @NonNull public CharSequence[] getTextArray(@ArrayRes int) throws android.content.res.Resources.NotFoundException; - method public void getValue(@AnyRes int, android.util.TypedValue, boolean) throws android.content.res.Resources.NotFoundException; - method @Discouraged(message="Use of this function is discouraged because it makes internal calls to `getIdentifier()`, which uses resource reflection. Reflection makes it harder to perform build optimizations and compile-time verification of code. It is much more efficient to retrieve resource values by identifier (e.g. `getValue(R.foo.bar, outValue, true)`) than by name (e.g. `getValue(\"foo\", outvalue, true)`).") public void getValue(String, android.util.TypedValue, boolean) throws android.content.res.Resources.NotFoundException; - method public void getValueForDensity(@AnyRes int, int, android.util.TypedValue, boolean) throws android.content.res.Resources.NotFoundException; - method @NonNull public android.content.res.XmlResourceParser getXml(@XmlRes int) throws android.content.res.Resources.NotFoundException; - method public final android.content.res.Resources.Theme newTheme(); - method public android.content.res.TypedArray obtainAttributes(android.util.AttributeSet, @StyleableRes int[]); - method @NonNull public android.content.res.TypedArray obtainTypedArray(@ArrayRes int) throws android.content.res.Resources.NotFoundException; - method @NonNull public java.io.InputStream openRawResource(@RawRes int) throws android.content.res.Resources.NotFoundException; - method @NonNull public java.io.InputStream openRawResource(@RawRes int, android.util.TypedValue) throws android.content.res.Resources.NotFoundException; - method public android.content.res.AssetFileDescriptor openRawResourceFd(@RawRes int) throws android.content.res.Resources.NotFoundException; - method public void parseBundleExtra(String, android.util.AttributeSet, android.os.Bundle) throws org.xmlpull.v1.XmlPullParserException; - method public void parseBundleExtras(android.content.res.XmlResourceParser, android.os.Bundle) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method @FlaggedApi("android.content.res.register_resource_paths") public static void registerResourcePaths(@NonNull String, @NonNull android.content.pm.ApplicationInfo); - method public void removeLoaders(@NonNull android.content.res.loader.ResourcesLoader...); - method @Deprecated public void updateConfiguration(android.content.res.Configuration, android.util.DisplayMetrics); - field @AnyRes public static final int ID_NULL = 0; // 0x0 - } - - public static class Resources.NotFoundException extends java.lang.RuntimeException { - ctor public Resources.NotFoundException(); - ctor public Resources.NotFoundException(String); - ctor public Resources.NotFoundException(String, Exception); - } - - public final class Resources.Theme { - method public void applyStyle(int, boolean); - method public void dump(int, String, String); - method @NonNull public int[] getAttributeResolutionStack(@AttrRes int, @StyleRes int, @StyleRes int); - method public int getChangingConfigurations(); - method public android.graphics.drawable.Drawable getDrawable(@DrawableRes int) throws android.content.res.Resources.NotFoundException; - method @StyleRes public int getExplicitStyle(@Nullable android.util.AttributeSet); - method public android.content.res.Resources getResources(); - method @NonNull public android.content.res.TypedArray obtainStyledAttributes(@NonNull @StyleableRes int[]); - method @NonNull public android.content.res.TypedArray obtainStyledAttributes(@StyleRes int, @NonNull @StyleableRes int[]) throws android.content.res.Resources.NotFoundException; - method @NonNull public android.content.res.TypedArray obtainStyledAttributes(@Nullable android.util.AttributeSet, @NonNull @StyleableRes int[], @AttrRes int, @StyleRes int); - method public void rebase(); - method public boolean resolveAttribute(int, android.util.TypedValue, boolean); - method public void setTo(android.content.res.Resources.Theme); - } - - public class TypedArray implements java.lang.AutoCloseable { - method public void close(); - method public boolean getBoolean(@StyleableRes int, boolean); - method public int getChangingConfigurations(); - method @ColorInt public int getColor(@StyleableRes int, @ColorInt int); - method @Nullable public android.content.res.ColorStateList getColorStateList(@StyleableRes int); - method public float getDimension(@StyleableRes int, float); - method public int getDimensionPixelOffset(@StyleableRes int, int); - method public int getDimensionPixelSize(@StyleableRes int, int); - method @Nullable public android.graphics.drawable.Drawable getDrawable(@StyleableRes int); - method public float getFloat(@StyleableRes int, float); - method @Nullable public android.graphics.Typeface getFont(@StyleableRes int); - method public float getFraction(@StyleableRes int, int, int, float); - method public int getIndex(int); - method public int getIndexCount(); - method public int getInt(@StyleableRes int, int); - method public int getInteger(@StyleableRes int, int); - method public int getLayoutDimension(@StyleableRes int, String); - method public int getLayoutDimension(@StyleableRes int, int); - method public String getNonResourceString(@StyleableRes int); - method public String getPositionDescription(); - method @AnyRes public int getResourceId(@StyleableRes int, int); - method public android.content.res.Resources getResources(); - method @AnyRes public int getSourceResourceId(@StyleableRes int, @AnyRes int); - method @Nullable public String getString(@StyleableRes int); - method public CharSequence getText(@StyleableRes int); - method public CharSequence[] getTextArray(@StyleableRes int); - method public int getType(@StyleableRes int); - method public boolean getValue(@StyleableRes int, android.util.TypedValue); - method public boolean hasValue(@StyleableRes int); - method public boolean hasValueOrEmpty(@StyleableRes int); - method public int length(); - method public android.util.TypedValue peekValue(@StyleableRes int); - method public void recycle(); - } - - public interface XmlResourceParser extends org.xmlpull.v1.XmlPullParser android.util.AttributeSet java.lang.AutoCloseable { - method public void close(); - method public String getAttributeNamespace(int); - } - -} - -package android.content.res.loader { - - public interface AssetsProvider { - method @Nullable public default android.content.res.AssetFileDescriptor loadAssetFd(@NonNull String, int); - } - - public class ResourcesLoader { - ctor public ResourcesLoader(); - method public void addProvider(@NonNull android.content.res.loader.ResourcesProvider); - method public void clearProviders(); - method @NonNull public java.util.List getProviders(); - method public void removeProvider(@NonNull android.content.res.loader.ResourcesProvider); - method public void setProviders(@NonNull java.util.List); - } - - public class ResourcesProvider implements java.lang.AutoCloseable java.io.Closeable { - method public void close(); - method @NonNull public static android.content.res.loader.ResourcesProvider empty(@NonNull android.content.res.loader.AssetsProvider); - method @NonNull public static android.content.res.loader.ResourcesProvider loadFromApk(@NonNull android.os.ParcelFileDescriptor) throws java.io.IOException; - method @NonNull public static android.content.res.loader.ResourcesProvider loadFromApk(@NonNull android.os.ParcelFileDescriptor, @Nullable android.content.res.loader.AssetsProvider) throws java.io.IOException; - method @NonNull public static android.content.res.loader.ResourcesProvider loadFromDirectory(@NonNull String, @Nullable android.content.res.loader.AssetsProvider) throws java.io.IOException; - method @NonNull public static android.content.res.loader.ResourcesProvider loadFromSplit(@NonNull android.content.Context, @NonNull String) throws java.io.IOException; - method @NonNull public static android.content.res.loader.ResourcesProvider loadFromTable(@NonNull android.os.ParcelFileDescriptor, @Nullable android.content.res.loader.AssetsProvider) throws java.io.IOException; - method @NonNull public static android.content.res.loader.ResourcesProvider loadOverlay(@NonNull android.content.om.OverlayInfo) throws java.io.IOException; - } - -} - -package android.credentials { - - public class ClearCredentialStateException extends java.lang.Exception { - ctor public ClearCredentialStateException(@NonNull String, @Nullable String); - ctor public ClearCredentialStateException(@NonNull String, @Nullable String, @Nullable Throwable); - ctor public ClearCredentialStateException(@NonNull String, @Nullable Throwable); - ctor public ClearCredentialStateException(@NonNull String); - method @NonNull public String getType(); - field @NonNull public static final String TYPE_UNKNOWN = "android.credentials.ClearCredentialStateException.TYPE_UNKNOWN"; - } - - public final class ClearCredentialStateRequest implements android.os.Parcelable { - ctor public ClearCredentialStateRequest(@NonNull android.os.Bundle); - method public int describeContents(); - method @NonNull public android.os.Bundle getData(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class CreateCredentialException extends java.lang.Exception { - ctor public CreateCredentialException(@NonNull String, @Nullable String); - ctor public CreateCredentialException(@NonNull String, @Nullable String, @Nullable Throwable); - ctor public CreateCredentialException(@NonNull String, @Nullable Throwable); - ctor public CreateCredentialException(@NonNull String); - method @NonNull public String getType(); - field @NonNull public static final String TYPE_INTERRUPTED = "android.credentials.CreateCredentialException.TYPE_INTERRUPTED"; - field @NonNull public static final String TYPE_NO_CREATE_OPTIONS = "android.credentials.CreateCredentialException.TYPE_NO_CREATE_OPTIONS"; - field @NonNull public static final String TYPE_UNKNOWN = "android.credentials.CreateCredentialException.TYPE_UNKNOWN"; - field @NonNull public static final String TYPE_USER_CANCELED = "android.credentials.CreateCredentialException.TYPE_USER_CANCELED"; - } - - public final class CreateCredentialRequest implements android.os.Parcelable { - method public boolean alwaysSendAppInfoToProvider(); - method public int describeContents(); - method @NonNull public android.os.Bundle getCandidateQueryData(); - method @NonNull public android.os.Bundle getCredentialData(); - method @Nullable public String getOrigin(); - method @NonNull public String getType(); - method public boolean isSystemProviderRequired(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class CreateCredentialRequest.Builder { - ctor public CreateCredentialRequest.Builder(@NonNull String, @NonNull android.os.Bundle, @NonNull android.os.Bundle); - method @NonNull public android.credentials.CreateCredentialRequest build(); - method @NonNull public android.credentials.CreateCredentialRequest.Builder setAlwaysSendAppInfoToProvider(boolean); - method @NonNull public android.credentials.CreateCredentialRequest.Builder setIsSystemProviderRequired(boolean); - method @NonNull @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_SET_ORIGIN) public android.credentials.CreateCredentialRequest.Builder setOrigin(@NonNull String); - } - - public final class CreateCredentialResponse implements android.os.Parcelable { - ctor public CreateCredentialResponse(@NonNull android.os.Bundle); - method public int describeContents(); - method @NonNull public android.os.Bundle getData(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class Credential implements android.os.Parcelable { - ctor public Credential(@NonNull String, @NonNull android.os.Bundle); - method public int describeContents(); - method @NonNull public android.os.Bundle getData(); - method @NonNull public String getType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @NonNull public static final String TYPE_PASSWORD_CREDENTIAL = "android.credentials.TYPE_PASSWORD_CREDENTIAL"; - } - - public final class CredentialDescription implements android.os.Parcelable { - ctor public CredentialDescription(@NonNull String, @NonNull java.util.Set, @NonNull java.util.List); - method public int describeContents(); - method @NonNull public java.util.List getCredentialEntries(); - method @NonNull public java.util.Set getSupportedElementKeys(); - method @NonNull public String getType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CredentialManager { - method public void clearCredentialState(@NonNull android.credentials.ClearCredentialStateRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void createCredential(@NonNull android.content.Context, @NonNull android.credentials.CreateCredentialRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void getCredential(@NonNull android.content.Context, @NonNull android.credentials.GetCredentialRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void getCredential(@NonNull android.content.Context, @NonNull android.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public boolean isEnabledCredentialProviderService(@NonNull android.content.ComponentName); - method public void prepareGetCredential(@NonNull android.credentials.GetCredentialRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void registerCredentialDescription(@NonNull android.credentials.RegisterCredentialDescriptionRequest); - method public void unregisterCredentialDescription(@NonNull android.credentials.UnregisterCredentialDescriptionRequest); - } - - public final class CredentialOption implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.Set getAllowedProviders(); - method @NonNull public android.os.Bundle getCandidateQueryData(); - method @NonNull public android.os.Bundle getCredentialRetrievalData(); - method @NonNull public String getType(); - method public boolean isSystemProviderRequired(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String SUPPORTED_ELEMENT_KEYS = "android.credentials.GetCredentialOption.SUPPORTED_ELEMENT_KEYS"; - } - - public static final class CredentialOption.Builder { - ctor public CredentialOption.Builder(@NonNull String, @NonNull android.os.Bundle, @NonNull android.os.Bundle); - method @NonNull public android.credentials.CredentialOption.Builder addAllowedProvider(@NonNull android.content.ComponentName); - method @NonNull public android.credentials.CredentialOption build(); - method @NonNull public android.credentials.CredentialOption.Builder setAllowedProviders(@NonNull java.util.Set); - method @NonNull public android.credentials.CredentialOption.Builder setIsSystemProviderRequired(boolean); - } - - public class GetCredentialException extends java.lang.Exception { - ctor public GetCredentialException(@NonNull String, @Nullable String); - ctor public GetCredentialException(@NonNull String, @Nullable String, @Nullable Throwable); - ctor public GetCredentialException(@NonNull String, @Nullable Throwable); - ctor public GetCredentialException(@NonNull String); - method @NonNull public String getType(); - field @NonNull public static final String TYPE_INTERRUPTED = "android.credentials.GetCredentialException.TYPE_INTERRUPTED"; - field @NonNull public static final String TYPE_NO_CREDENTIAL = "android.credentials.GetCredentialException.TYPE_NO_CREDENTIAL"; - field @NonNull public static final String TYPE_UNKNOWN = "android.credentials.GetCredentialException.TYPE_UNKNOWN"; - field @NonNull public static final String TYPE_USER_CANCELED = "android.credentials.GetCredentialException.TYPE_USER_CANCELED"; - } - - public final class GetCredentialRequest implements android.os.Parcelable { - method public boolean alwaysSendAppInfoToProvider(); - method public int describeContents(); - method @NonNull public java.util.List getCredentialOptions(); - method @NonNull public android.os.Bundle getData(); - method @Nullable public String getOrigin(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class GetCredentialRequest.Builder { - ctor public GetCredentialRequest.Builder(@NonNull android.os.Bundle); - method @NonNull public android.credentials.GetCredentialRequest.Builder addCredentialOption(@NonNull android.credentials.CredentialOption); - method @NonNull public android.credentials.GetCredentialRequest build(); - method @NonNull public android.credentials.GetCredentialRequest.Builder setAlwaysSendAppInfoToProvider(boolean); - method @NonNull public android.credentials.GetCredentialRequest.Builder setCredentialOptions(@NonNull java.util.List); - method @NonNull @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_SET_ORIGIN) public android.credentials.GetCredentialRequest.Builder setOrigin(@NonNull String); - } - - public final class GetCredentialResponse implements android.os.Parcelable { - ctor public GetCredentialResponse(@NonNull android.credentials.Credential); - method public int describeContents(); - method @NonNull public android.credentials.Credential getCredential(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class PrepareGetCredentialResponse { - method @NonNull public android.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle getPendingGetCredentialHandle(); - method @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS) public boolean hasAuthenticationResults(); - method @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS) public boolean hasCredentialResults(@NonNull String); - method @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS) public boolean hasRemoteResults(); - } - - public static final class PrepareGetCredentialResponse.PendingGetCredentialHandle { - } - - public final class RegisterCredentialDescriptionRequest implements android.os.Parcelable { - ctor public RegisterCredentialDescriptionRequest(@NonNull android.credentials.CredentialDescription); - ctor public RegisterCredentialDescriptionRequest(@NonNull java.util.Set); - method public int describeContents(); - method @NonNull public java.util.Set getCredentialDescriptions(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class UnregisterCredentialDescriptionRequest implements android.os.Parcelable { - ctor public UnregisterCredentialDescriptionRequest(@NonNull android.credentials.CredentialDescription); - ctor public UnregisterCredentialDescriptionRequest(@NonNull java.util.Set); - method public int describeContents(); - method @NonNull public java.util.Set getCredentialDescriptions(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.database { - - public abstract class AbstractCursor implements android.database.CrossProcessCursor { - ctor public AbstractCursor(); - method protected void checkPosition(); - method public void close(); - method public void copyStringToBuffer(int, android.database.CharArrayBuffer); - method public void deactivate(); - method public void fillWindow(int, android.database.CursorWindow); - method protected void finalize(); - method public byte[] getBlob(int); - method public int getColumnCount(); - method public int getColumnIndex(String); - method public int getColumnIndexOrThrow(String); - method public String getColumnName(int); - method public android.os.Bundle getExtras(); - method public android.net.Uri getNotificationUri(); - method public java.util.List getNotificationUris(); - method public final int getPosition(); - method public int getType(int); - method @Deprecated protected Object getUpdatedField(int); - method public boolean getWantsAllOnMoveCalls(); - method public android.database.CursorWindow getWindow(); - method public final boolean isAfterLast(); - method public final boolean isBeforeFirst(); - method public boolean isClosed(); - method @Deprecated protected boolean isFieldUpdated(int); - method public final boolean isFirst(); - method public final boolean isLast(); - method public final boolean move(int); - method public final boolean moveToFirst(); - method public final boolean moveToLast(); - method public final boolean moveToNext(); - method public final boolean moveToPosition(int); - method public final boolean moveToPrevious(); - method protected void onChange(boolean); - method public boolean onMove(int, int); - method public void registerContentObserver(android.database.ContentObserver); - method public void registerDataSetObserver(android.database.DataSetObserver); - method public boolean requery(); - method public android.os.Bundle respond(android.os.Bundle); - method public void setExtras(android.os.Bundle); - method public void setNotificationUri(android.content.ContentResolver, android.net.Uri); - method public void setNotificationUris(@NonNull android.content.ContentResolver, @NonNull java.util.List); - method public void unregisterContentObserver(android.database.ContentObserver); - method public void unregisterDataSetObserver(android.database.DataSetObserver); - field @Deprecated protected boolean mClosed; - field @Deprecated protected android.content.ContentResolver mContentResolver; - field @Deprecated protected int mPos; - } - - protected static class AbstractCursor.SelfContentObserver extends android.database.ContentObserver { - ctor public AbstractCursor.SelfContentObserver(android.database.AbstractCursor); - } - - public abstract class AbstractWindowedCursor extends android.database.AbstractCursor { - ctor public AbstractWindowedCursor(); - method public double getDouble(int); - method public float getFloat(int); - method public int getInt(int); - method public long getLong(int); - method public short getShort(int); - method public String getString(int); - method public boolean hasWindow(); - method @Deprecated public boolean isBlob(int); - method @Deprecated public boolean isFloat(int); - method @Deprecated public boolean isLong(int); - method public boolean isNull(int); - method @Deprecated public boolean isString(int); - method public void setWindow(android.database.CursorWindow); - field protected android.database.CursorWindow mWindow; - } - - public final class CharArrayBuffer { - ctor public CharArrayBuffer(int); - ctor public CharArrayBuffer(char[]); - field public char[] data; - field public int sizeCopied; - } - - public class ContentObservable extends android.database.Observable { - ctor public ContentObservable(); - method @Deprecated public void dispatchChange(boolean); - method public void dispatchChange(boolean, android.net.Uri); - method @Deprecated public void notifyChange(boolean); - method public void registerObserver(android.database.ContentObserver); - } - - public abstract class ContentObserver { - ctor public ContentObserver(android.os.Handler); - method public boolean deliverSelfNotifications(); - method @Deprecated public final void dispatchChange(boolean); - method public final void dispatchChange(boolean, @Nullable android.net.Uri); - method public final void dispatchChange(boolean, @Nullable android.net.Uri, int); - method public final void dispatchChange(boolean, @NonNull java.util.Collection, int); - method public void onChange(boolean); - method public void onChange(boolean, @Nullable android.net.Uri); - method public void onChange(boolean, @Nullable android.net.Uri, int); - method public void onChange(boolean, @NonNull java.util.Collection, int); - } - - public interface CrossProcessCursor extends android.database.Cursor { - method public void fillWindow(int, android.database.CursorWindow); - method public android.database.CursorWindow getWindow(); - method public boolean onMove(int, int); - } - - public class CrossProcessCursorWrapper extends android.database.CursorWrapper implements android.database.CrossProcessCursor { - ctor public CrossProcessCursorWrapper(android.database.Cursor); - method public void fillWindow(int, android.database.CursorWindow); - method public android.database.CursorWindow getWindow(); - method public boolean onMove(int, int); - } - - public interface Cursor extends java.io.Closeable { - method public void close(); - method public void copyStringToBuffer(@IntRange(from=0) int, android.database.CharArrayBuffer); - method @Deprecated public void deactivate(); - method public byte[] getBlob(@IntRange(from=0) int); - method @IntRange(from=0) public int getColumnCount(); - method @IntRange(from=0xffffffff) public int getColumnIndex(String); - method @IntRange(from=0) public int getColumnIndexOrThrow(String) throws java.lang.IllegalArgumentException; - method public String getColumnName(@IntRange(from=0) int); - method public String[] getColumnNames(); - method @IntRange(from=0) public int getCount(); - method public double getDouble(@IntRange(from=0) int); - method public android.os.Bundle getExtras(); - method public float getFloat(@IntRange(from=0) int); - method public int getInt(@IntRange(from=0) int); - method public long getLong(@IntRange(from=0) int); - method public android.net.Uri getNotificationUri(); - method @Nullable public default java.util.List getNotificationUris(); - method @IntRange(from=0xffffffff) public int getPosition(); - method public short getShort(@IntRange(from=0) int); - method public String getString(@IntRange(from=0) int); - method public int getType(@IntRange(from=0) int); - method public boolean getWantsAllOnMoveCalls(); - method public boolean isAfterLast(); - method public boolean isBeforeFirst(); - method public boolean isClosed(); - method public boolean isFirst(); - method public boolean isLast(); - method public boolean isNull(@IntRange(from=0) int); - method public boolean move(int); - method public boolean moveToFirst(); - method public boolean moveToLast(); - method public boolean moveToNext(); - method public boolean moveToPosition(@IntRange(from=0xffffffff) int); - method public boolean moveToPrevious(); - method public void registerContentObserver(android.database.ContentObserver); - method public void registerDataSetObserver(android.database.DataSetObserver); - method @Deprecated public boolean requery(); - method public android.os.Bundle respond(android.os.Bundle); - method public void setExtras(android.os.Bundle); - method public void setNotificationUri(android.content.ContentResolver, android.net.Uri); - method public default void setNotificationUris(@NonNull android.content.ContentResolver, @NonNull java.util.List); - method public void unregisterContentObserver(android.database.ContentObserver); - method public void unregisterDataSetObserver(android.database.DataSetObserver); - field public static final int FIELD_TYPE_BLOB = 4; // 0x4 - field public static final int FIELD_TYPE_FLOAT = 2; // 0x2 - field public static final int FIELD_TYPE_INTEGER = 1; // 0x1 - field public static final int FIELD_TYPE_NULL = 0; // 0x0 - field public static final int FIELD_TYPE_STRING = 3; // 0x3 - } - - public class CursorIndexOutOfBoundsException extends java.lang.IndexOutOfBoundsException { - ctor public CursorIndexOutOfBoundsException(int, int); - ctor public CursorIndexOutOfBoundsException(String); - } - - public final class CursorJoiner implements java.lang.Iterable java.util.Iterator { - ctor public CursorJoiner(android.database.Cursor, String[], android.database.Cursor, String[]); - method public boolean hasNext(); - method public java.util.Iterator iterator(); - method public android.database.CursorJoiner.Result next(); - method public void remove(); - } - - public enum CursorJoiner.Result { - enum_constant public static final android.database.CursorJoiner.Result BOTH; - enum_constant public static final android.database.CursorJoiner.Result LEFT; - enum_constant public static final android.database.CursorJoiner.Result RIGHT; - } - - public class CursorWindow extends android.database.sqlite.SQLiteClosable implements android.os.Parcelable { - ctor public CursorWindow(String); - ctor public CursorWindow(String, long); - ctor @Deprecated public CursorWindow(boolean); - method public boolean allocRow(); - method public void clear(); - method public void copyStringToBuffer(@IntRange(from=0) int, @IntRange(from=0) int, android.database.CharArrayBuffer); - method public int describeContents(); - method public void freeLastRow(); - method public byte[] getBlob(@IntRange(from=0) int, @IntRange(from=0) int); - method public double getDouble(@IntRange(from=0) int, @IntRange(from=0) int); - method public float getFloat(@IntRange(from=0) int, @IntRange(from=0) int); - method public int getInt(@IntRange(from=0) int, @IntRange(from=0) int); - method public long getLong(@IntRange(from=0) int, @IntRange(from=0) int); - method @IntRange(from=0) public int getNumRows(); - method public short getShort(@IntRange(from=0) int, @IntRange(from=0) int); - method @IntRange(from=0) public int getStartPosition(); - method public String getString(@IntRange(from=0) int, @IntRange(from=0) int); - method public int getType(@IntRange(from=0) int, @IntRange(from=0) int); - method @Deprecated public boolean isBlob(@IntRange(from=0) int, @IntRange(from=0) int); - method @Deprecated public boolean isFloat(@IntRange(from=0) int, @IntRange(from=0) int); - method @Deprecated public boolean isLong(@IntRange(from=0) int, @IntRange(from=0) int); - method @Deprecated public boolean isNull(@IntRange(from=0) int, @IntRange(from=0) int); - method @Deprecated public boolean isString(@IntRange(from=0) int, @IntRange(from=0) int); - method public static android.database.CursorWindow newFromParcel(android.os.Parcel); - method protected void onAllReferencesReleased(); - method public boolean putBlob(byte[], @IntRange(from=0) int, @IntRange(from=0) int); - method public boolean putDouble(double, @IntRange(from=0) int, @IntRange(from=0) int); - method public boolean putLong(long, @IntRange(from=0) int, @IntRange(from=0) int); - method public boolean putNull(@IntRange(from=0) int, @IntRange(from=0) int); - method public boolean putString(String, @IntRange(from=0) int, @IntRange(from=0) int); - method public boolean setNumColumns(@IntRange(from=0) int); - method public void setStartPosition(@IntRange(from=0) int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class CursorWindowAllocationException extends java.lang.RuntimeException { - ctor public CursorWindowAllocationException(@NonNull String); - } - - public class CursorWrapper implements android.database.Cursor { - ctor public CursorWrapper(android.database.Cursor); - method public void close(); - method public void copyStringToBuffer(int, android.database.CharArrayBuffer); - method @Deprecated public void deactivate(); - method public byte[] getBlob(int); - method public int getColumnCount(); - method public int getColumnIndex(String); - method public int getColumnIndexOrThrow(String) throws java.lang.IllegalArgumentException; - method public String getColumnName(int); - method public String[] getColumnNames(); - method public int getCount(); - method public double getDouble(int); - method public android.os.Bundle getExtras(); - method public float getFloat(int); - method public int getInt(int); - method public long getLong(int); - method public android.net.Uri getNotificationUri(); - method public java.util.List getNotificationUris(); - method public int getPosition(); - method public short getShort(int); - method public String getString(int); - method public int getType(int); - method public boolean getWantsAllOnMoveCalls(); - method public android.database.Cursor getWrappedCursor(); - method public boolean isAfterLast(); - method public boolean isBeforeFirst(); - method public boolean isClosed(); - method public boolean isFirst(); - method public boolean isLast(); - method public boolean isNull(int); - method public boolean move(int); - method public boolean moveToFirst(); - method public boolean moveToLast(); - method public boolean moveToNext(); - method public boolean moveToPosition(int); - method public boolean moveToPrevious(); - method public void registerContentObserver(android.database.ContentObserver); - method public void registerDataSetObserver(android.database.DataSetObserver); - method @Deprecated public boolean requery(); - method public android.os.Bundle respond(android.os.Bundle); - method public void setExtras(android.os.Bundle); - method public void setNotificationUri(android.content.ContentResolver, android.net.Uri); - method public void setNotificationUris(android.content.ContentResolver, java.util.List); - method public void unregisterContentObserver(android.database.ContentObserver); - method public void unregisterDataSetObserver(android.database.DataSetObserver); - } - - public class DataSetObservable extends android.database.Observable { - ctor public DataSetObservable(); - method public void notifyChanged(); - method public void notifyInvalidated(); - } - - public abstract class DataSetObserver { - ctor public DataSetObserver(); - method public void onChanged(); - method public void onInvalidated(); - } - - public interface DatabaseErrorHandler { - method public void onCorruption(android.database.sqlite.SQLiteDatabase); - } - - public class DatabaseUtils { - ctor public DatabaseUtils(); - method public static void appendEscapedSQLString(StringBuilder, String); - method public static String[] appendSelectionArgs(String[], String[]); - method public static final void appendValueToSql(StringBuilder, Object); - method public static void bindObjectToProgram(android.database.sqlite.SQLiteProgram, int, Object); - method public static android.os.ParcelFileDescriptor blobFileDescriptorForQuery(android.database.sqlite.SQLiteDatabase, String, String[]); - method public static android.os.ParcelFileDescriptor blobFileDescriptorForQuery(android.database.sqlite.SQLiteStatement, String[]); - method public static String concatenateWhere(String, String); - method public static void createDbFromSqlStatements(android.content.Context, String, int, String); - method public static void cursorDoubleToContentValues(android.database.Cursor, String, android.content.ContentValues, String); - method public static void cursorDoubleToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); - method public static void cursorDoubleToCursorValues(android.database.Cursor, String, android.content.ContentValues); - method public static void cursorFloatToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); - method public static void cursorIntToContentValues(android.database.Cursor, String, android.content.ContentValues); - method public static void cursorIntToContentValues(android.database.Cursor, String, android.content.ContentValues, String); - method public static void cursorIntToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); - method public static void cursorLongToContentValues(android.database.Cursor, String, android.content.ContentValues); - method public static void cursorLongToContentValues(android.database.Cursor, String, android.content.ContentValues, String); - method public static void cursorLongToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); - method public static void cursorRowToContentValues(android.database.Cursor, android.content.ContentValues); - method public static void cursorShortToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); - method public static void cursorStringToContentValues(android.database.Cursor, String, android.content.ContentValues); - method public static void cursorStringToContentValues(android.database.Cursor, String, android.content.ContentValues, String); - method public static void cursorStringToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); - method public static void cursorStringToInsertHelper(android.database.Cursor, String, android.database.DatabaseUtils.InsertHelper, int); - method public static void dumpCurrentRow(android.database.Cursor); - method public static void dumpCurrentRow(android.database.Cursor, java.io.PrintStream); - method public static void dumpCurrentRow(android.database.Cursor, StringBuilder); - method public static String dumpCurrentRowToString(android.database.Cursor); - method public static void dumpCursor(android.database.Cursor); - method public static void dumpCursor(android.database.Cursor, java.io.PrintStream); - method public static void dumpCursor(android.database.Cursor, StringBuilder); - method public static String dumpCursorToString(android.database.Cursor); - method public static String getCollationKey(String); - method public static String getHexCollationKey(String); - method public static int getSqlStatementType(String); - method public static long longForQuery(android.database.sqlite.SQLiteDatabase, String, String[]); - method public static long longForQuery(android.database.sqlite.SQLiteStatement, String[]); - method public static long queryNumEntries(android.database.sqlite.SQLiteDatabase, String); - method public static long queryNumEntries(android.database.sqlite.SQLiteDatabase, String, String); - method public static long queryNumEntries(android.database.sqlite.SQLiteDatabase, String, String, String[]); - method public static final void readExceptionFromParcel(android.os.Parcel); - method public static void readExceptionWithFileNotFoundExceptionFromParcel(android.os.Parcel) throws java.io.FileNotFoundException; - method public static void readExceptionWithOperationApplicationExceptionFromParcel(android.os.Parcel) throws android.content.OperationApplicationException; - method public static String sqlEscapeString(String); - method public static String stringForQuery(android.database.sqlite.SQLiteDatabase, String, String[]); - method public static String stringForQuery(android.database.sqlite.SQLiteStatement, String[]); - method public static final void writeExceptionToParcel(android.os.Parcel, Exception); - field public static final int STATEMENT_ABORT = 6; // 0x6 - field public static final int STATEMENT_ATTACH = 3; // 0x3 - field public static final int STATEMENT_BEGIN = 4; // 0x4 - field public static final int STATEMENT_COMMIT = 5; // 0x5 - field public static final int STATEMENT_DDL = 8; // 0x8 - field public static final int STATEMENT_OTHER = 99; // 0x63 - field public static final int STATEMENT_PRAGMA = 7; // 0x7 - field public static final int STATEMENT_SELECT = 1; // 0x1 - field public static final int STATEMENT_UNPREPARED = 9; // 0x9 - field public static final int STATEMENT_UPDATE = 2; // 0x2 - } - - @Deprecated public static class DatabaseUtils.InsertHelper { - ctor @Deprecated public DatabaseUtils.InsertHelper(android.database.sqlite.SQLiteDatabase, String); - method @Deprecated public void bind(int, double); - method @Deprecated public void bind(int, float); - method @Deprecated public void bind(int, long); - method @Deprecated public void bind(int, int); - method @Deprecated public void bind(int, boolean); - method @Deprecated public void bind(int, byte[]); - method @Deprecated public void bind(int, String); - method @Deprecated public void bindNull(int); - method @Deprecated public void close(); - method @Deprecated public long execute(); - method @Deprecated public int getColumnIndex(String); - method @Deprecated public long insert(android.content.ContentValues); - method @Deprecated public void prepareForInsert(); - method @Deprecated public void prepareForReplace(); - method @Deprecated public long replace(android.content.ContentValues); - } - - public final class DefaultDatabaseErrorHandler implements android.database.DatabaseErrorHandler { - ctor public DefaultDatabaseErrorHandler(); - method public void onCorruption(android.database.sqlite.SQLiteDatabase); - } - - public class MatrixCursor extends android.database.AbstractCursor { - ctor public MatrixCursor(String[], int); - ctor public MatrixCursor(String[]); - method public void addRow(Object[]); - method public void addRow(Iterable); - method public String[] getColumnNames(); - method public int getCount(); - method public double getDouble(int); - method public float getFloat(int); - method public int getInt(int); - method public long getLong(int); - method public short getShort(int); - method public String getString(int); - method public boolean isNull(int); - method public android.database.MatrixCursor.RowBuilder newRow(); - } - - public class MatrixCursor.RowBuilder { - method public android.database.MatrixCursor.RowBuilder add(Object); - method public android.database.MatrixCursor.RowBuilder add(String, Object); - } - - public class MergeCursor extends android.database.AbstractCursor { - ctor public MergeCursor(android.database.Cursor[]); - method public String[] getColumnNames(); - method public int getCount(); - method public double getDouble(int); - method public float getFloat(int); - method public int getInt(int); - method public long getLong(int); - method public short getShort(int); - method public String getString(int); - method public boolean isNull(int); - } - - public abstract class Observable { - ctor public Observable(); - method public void registerObserver(T); - method public void unregisterAll(); - method public void unregisterObserver(T); - field protected final java.util.ArrayList mObservers; - } - - public class SQLException extends java.lang.RuntimeException { - ctor public SQLException(); - ctor public SQLException(String); - ctor public SQLException(String, Throwable); - } - - public class StaleDataException extends java.lang.RuntimeException { - ctor public StaleDataException(); - ctor public StaleDataException(String); - } - -} - -package android.database.sqlite { - - public class SQLiteAbortException extends android.database.sqlite.SQLiteException { - ctor public SQLiteAbortException(); - ctor public SQLiteAbortException(String); - } - - public class SQLiteAccessPermException extends android.database.sqlite.SQLiteException { - ctor public SQLiteAccessPermException(); - ctor public SQLiteAccessPermException(String); - } - - public class SQLiteBindOrColumnIndexOutOfRangeException extends android.database.sqlite.SQLiteException { - ctor public SQLiteBindOrColumnIndexOutOfRangeException(); - ctor public SQLiteBindOrColumnIndexOutOfRangeException(String); - } - - public class SQLiteBlobTooBigException extends android.database.sqlite.SQLiteException { - ctor public SQLiteBlobTooBigException(); - ctor public SQLiteBlobTooBigException(String); - } - - public class SQLiteCantOpenDatabaseException extends android.database.sqlite.SQLiteException { - ctor public SQLiteCantOpenDatabaseException(); - ctor public SQLiteCantOpenDatabaseException(String); - } - - public abstract class SQLiteClosable implements java.io.Closeable { - ctor public SQLiteClosable(); - method public void acquireReference(); - method public void close(); - method protected abstract void onAllReferencesReleased(); - method @Deprecated protected void onAllReferencesReleasedFromContainer(); - method public void releaseReference(); - method @Deprecated public void releaseReferenceFromContainer(); - } - - public class SQLiteConstraintException extends android.database.sqlite.SQLiteException { - ctor public SQLiteConstraintException(); - ctor public SQLiteConstraintException(String); - } - - public class SQLiteCursor extends android.database.AbstractWindowedCursor { - ctor @Deprecated public SQLiteCursor(android.database.sqlite.SQLiteDatabase, android.database.sqlite.SQLiteCursorDriver, String, android.database.sqlite.SQLiteQuery); - ctor public SQLiteCursor(android.database.sqlite.SQLiteCursorDriver, String, android.database.sqlite.SQLiteQuery); - method public String[] getColumnNames(); - method public int getCount(); - method public android.database.sqlite.SQLiteDatabase getDatabase(); - method public void setFillWindowForwardOnly(boolean); - method public void setSelectionArguments(String[]); - } - - public interface SQLiteCursorDriver { - method public void cursorClosed(); - method public void cursorDeactivated(); - method public void cursorRequeried(android.database.Cursor); - method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase.CursorFactory, String[]); - method public void setBindArguments(String[]); - } - - public final class SQLiteDatabase extends android.database.sqlite.SQLiteClosable { - method public void beginTransaction(); - method public void beginTransactionNonExclusive(); - method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public void beginTransactionReadOnly(); - method public void beginTransactionWithListener(@Nullable android.database.sqlite.SQLiteTransactionListener); - method public void beginTransactionWithListenerNonExclusive(@Nullable android.database.sqlite.SQLiteTransactionListener); - method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public void beginTransactionWithListenerReadOnly(@Nullable android.database.sqlite.SQLiteTransactionListener); - method public android.database.sqlite.SQLiteStatement compileStatement(String) throws android.database.SQLException; - method @NonNull public static android.database.sqlite.SQLiteDatabase create(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); - method @NonNull public static android.database.sqlite.SQLiteDatabase createInMemory(@NonNull android.database.sqlite.SQLiteDatabase.OpenParams); - method @FlaggedApi("android.database.sqlite.sqlite_apis_35") @NonNull public android.database.sqlite.SQLiteRawStatement createRawStatement(@NonNull String); - method public int delete(@NonNull String, @Nullable String, @Nullable String[]); - method public static boolean deleteDatabase(@NonNull java.io.File); - method public void disableWriteAheadLogging(); - method public boolean enableWriteAheadLogging(); - method public void endTransaction(); - method public void execPerConnectionSQL(@NonNull String, @Nullable Object[]) throws android.database.SQLException; - method public void execSQL(String) throws android.database.SQLException; - method public void execSQL(@NonNull String, @NonNull Object[]) throws android.database.SQLException; - method public static String findEditTable(String); - method public java.util.List> getAttachedDbs(); - method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public long getLastChangedRowCount(); - method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public long getLastInsertRowId(); - method public long getMaximumSize(); - method public long getPageSize(); - method public String getPath(); - method @Deprecated public java.util.Map getSyncedTables(); - method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public long getTotalChangedRowCount(); - method public int getVersion(); - method public boolean inTransaction(); - method public long insert(@NonNull String, @Nullable String, @Nullable android.content.ContentValues); - method public long insertOrThrow(@NonNull String, @Nullable String, @Nullable android.content.ContentValues) throws android.database.SQLException; - method public long insertWithOnConflict(@NonNull String, @Nullable String, @Nullable android.content.ContentValues, int); - method public boolean isDatabaseIntegrityOk(); - method public boolean isDbLockedByCurrentThread(); - method @Deprecated public boolean isDbLockedByOtherThreads(); - method public boolean isOpen(); - method public boolean isReadOnly(); - method public boolean isWriteAheadLoggingEnabled(); - method @Deprecated public void markTableSyncable(String, String); - method @Deprecated public void markTableSyncable(String, String, String); - method public boolean needUpgrade(int); - method protected void onAllReferencesReleased(); - method public static android.database.sqlite.SQLiteDatabase openDatabase(@NonNull String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, int); - method public static android.database.sqlite.SQLiteDatabase openDatabase(@NonNull java.io.File, @NonNull android.database.sqlite.SQLiteDatabase.OpenParams); - method public static android.database.sqlite.SQLiteDatabase openDatabase(@NonNull String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, int, @Nullable android.database.DatabaseErrorHandler); - method public static android.database.sqlite.SQLiteDatabase openOrCreateDatabase(@NonNull java.io.File, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); - method public static android.database.sqlite.SQLiteDatabase openOrCreateDatabase(@NonNull String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); - method public static android.database.sqlite.SQLiteDatabase openOrCreateDatabase(@NonNull String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, @Nullable android.database.DatabaseErrorHandler); - method @NonNull public android.database.Cursor query(boolean, @NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String); - method @NonNull public android.database.Cursor query(boolean, @NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String, @Nullable android.os.CancellationSignal); - method @NonNull public android.database.Cursor query(@NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String); - method @NonNull public android.database.Cursor query(@NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String); - method @NonNull public android.database.Cursor queryWithFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, boolean, @NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String); - method @NonNull public android.database.Cursor queryWithFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, boolean, @NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String, @Nullable android.os.CancellationSignal); - method @NonNull public android.database.Cursor rawQuery(@NonNull String, @Nullable String[]); - method @NonNull public android.database.Cursor rawQuery(@NonNull String, @Nullable String[], @Nullable android.os.CancellationSignal); - method @NonNull public android.database.Cursor rawQueryWithFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, @NonNull String, @Nullable String[], @NonNull String); - method @NonNull public android.database.Cursor rawQueryWithFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, @NonNull String, @Nullable String[], @NonNull String, @Nullable android.os.CancellationSignal); - method public static int releaseMemory(); - method public long replace(@NonNull String, @Nullable String, @Nullable android.content.ContentValues); - method public long replaceOrThrow(@NonNull String, @Nullable String, @Nullable android.content.ContentValues) throws android.database.SQLException; - method public void setCustomAggregateFunction(@NonNull String, @NonNull java.util.function.BinaryOperator) throws android.database.sqlite.SQLiteException; - method public void setCustomScalarFunction(@NonNull String, @NonNull java.util.function.UnaryOperator) throws android.database.sqlite.SQLiteException; - method public void setForeignKeyConstraintsEnabled(boolean); - method public void setLocale(java.util.Locale); - method @Deprecated public void setLockingEnabled(boolean); - method public void setMaxSqlCacheSize(int); - method public long setMaximumSize(long); - method public void setPageSize(long); - method public void setTransactionSuccessful(); - method public void setVersion(int); - method public int update(@NonNull String, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]); - method public int updateWithOnConflict(@NonNull String, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[], int); - method public void validateSql(@NonNull String, @Nullable android.os.CancellationSignal); - method @Deprecated public boolean yieldIfContended(); - method public boolean yieldIfContendedSafely(); - method public boolean yieldIfContendedSafely(long); - field public static final int CONFLICT_ABORT = 2; // 0x2 - field public static final int CONFLICT_FAIL = 3; // 0x3 - field public static final int CONFLICT_IGNORE = 4; // 0x4 - field public static final int CONFLICT_NONE = 0; // 0x0 - field public static final int CONFLICT_REPLACE = 5; // 0x5 - field public static final int CONFLICT_ROLLBACK = 1; // 0x1 - field public static final int CREATE_IF_NECESSARY = 268435456; // 0x10000000 - field public static final int ENABLE_WRITE_AHEAD_LOGGING = 536870912; // 0x20000000 - field public static final String JOURNAL_MODE_DELETE = "DELETE"; - field public static final String JOURNAL_MODE_MEMORY = "MEMORY"; - field public static final String JOURNAL_MODE_OFF = "OFF"; - field public static final String JOURNAL_MODE_PERSIST = "PERSIST"; - field public static final String JOURNAL_MODE_TRUNCATE = "TRUNCATE"; - field public static final String JOURNAL_MODE_WAL = "WAL"; - field public static final int MAX_SQL_CACHE_SIZE = 100; // 0x64 - field public static final int NO_LOCALIZED_COLLATORS = 16; // 0x10 - field public static final int OPEN_READONLY = 1; // 0x1 - field public static final int OPEN_READWRITE = 0; // 0x0 - field public static final int SQLITE_MAX_LIKE_PATTERN_LENGTH = 50000; // 0xc350 - field public static final String SYNC_MODE_EXTRA = "EXTRA"; - field public static final String SYNC_MODE_FULL = "FULL"; - field public static final String SYNC_MODE_NORMAL = "NORMAL"; - field public static final String SYNC_MODE_OFF = "OFF"; - } - - public static interface SQLiteDatabase.CursorFactory { - method public android.database.Cursor newCursor(android.database.sqlite.SQLiteDatabase, android.database.sqlite.SQLiteCursorDriver, String, android.database.sqlite.SQLiteQuery); - } - - public static final class SQLiteDatabase.OpenParams { - method @Nullable public android.database.sqlite.SQLiteDatabase.CursorFactory getCursorFactory(); - method @Nullable public android.database.DatabaseErrorHandler getErrorHandler(); - method public long getIdleConnectionTimeout(); - method @Nullable public String getJournalMode(); - method @IntRange(from=0xffffffff) public int getLookasideSlotCount(); - method @IntRange(from=0xffffffff) public int getLookasideSlotSize(); - method public int getOpenFlags(); - method @Nullable public String getSynchronousMode(); - } - - public static final class SQLiteDatabase.OpenParams.Builder { - ctor public SQLiteDatabase.OpenParams.Builder(); - ctor public SQLiteDatabase.OpenParams.Builder(android.database.sqlite.SQLiteDatabase.OpenParams); - method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder addOpenFlags(int); - method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams build(); - method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder removeOpenFlags(int); - method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setCursorFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); - method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setErrorHandler(@Nullable android.database.DatabaseErrorHandler); - method @Deprecated @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setIdleConnectionTimeout(@IntRange(from=0) long); - method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setJournalMode(@NonNull String); - method public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setLookasideConfig(@IntRange(from=0) int, @IntRange(from=0) int); - method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setOpenFlags(int); - method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setSynchronousMode(@NonNull String); - } - - public class SQLiteDatabaseCorruptException extends android.database.sqlite.SQLiteException { - ctor public SQLiteDatabaseCorruptException(); - ctor public SQLiteDatabaseCorruptException(String); - } - - public class SQLiteDatabaseLockedException extends android.database.sqlite.SQLiteException { - ctor public SQLiteDatabaseLockedException(); - ctor public SQLiteDatabaseLockedException(String); - } - - public class SQLiteDatatypeMismatchException extends android.database.sqlite.SQLiteException { - ctor public SQLiteDatatypeMismatchException(); - ctor public SQLiteDatatypeMismatchException(String); - } - - public class SQLiteDiskIOException extends android.database.sqlite.SQLiteException { - ctor public SQLiteDiskIOException(); - ctor public SQLiteDiskIOException(String); - } - - public class SQLiteDoneException extends android.database.sqlite.SQLiteException { - ctor public SQLiteDoneException(); - ctor public SQLiteDoneException(String); - } - - public class SQLiteException extends android.database.SQLException { - ctor public SQLiteException(); - ctor public SQLiteException(String); - ctor public SQLiteException(String, Throwable); - } - - public class SQLiteFullException extends android.database.sqlite.SQLiteException { - ctor public SQLiteFullException(); - ctor public SQLiteFullException(String); - } - - public class SQLiteMisuseException extends android.database.sqlite.SQLiteException { - ctor public SQLiteMisuseException(); - ctor public SQLiteMisuseException(String); - } - - public abstract class SQLiteOpenHelper implements java.lang.AutoCloseable { - ctor public SQLiteOpenHelper(@Nullable android.content.Context, @Nullable String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, int); - ctor public SQLiteOpenHelper(@Nullable android.content.Context, @Nullable String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, int, @Nullable android.database.DatabaseErrorHandler); - ctor public SQLiteOpenHelper(@Nullable android.content.Context, @Nullable String, int, @NonNull android.database.sqlite.SQLiteDatabase.OpenParams); - method public void close(); - method public String getDatabaseName(); - method public android.database.sqlite.SQLiteDatabase getReadableDatabase(); - method public android.database.sqlite.SQLiteDatabase getWritableDatabase(); - method public void onConfigure(android.database.sqlite.SQLiteDatabase); - method public abstract void onCreate(android.database.sqlite.SQLiteDatabase); - method public void onDowngrade(android.database.sqlite.SQLiteDatabase, int, int); - method public void onOpen(android.database.sqlite.SQLiteDatabase); - method public abstract void onUpgrade(android.database.sqlite.SQLiteDatabase, int, int); - method @Deprecated public void setIdleConnectionTimeout(@IntRange(from=0) long); - method public void setLookasideConfig(@IntRange(from=0) int, @IntRange(from=0) int); - method public void setOpenParams(@NonNull android.database.sqlite.SQLiteDatabase.OpenParams); - method public void setWriteAheadLoggingEnabled(boolean); - } - - public class SQLiteOutOfMemoryException extends android.database.sqlite.SQLiteException { - ctor public SQLiteOutOfMemoryException(); - ctor public SQLiteOutOfMemoryException(String); - } - - public abstract class SQLiteProgram extends android.database.sqlite.SQLiteClosable { - method public void bindAllArgsAsStrings(String[]); - method public void bindBlob(int, byte[]); - method public void bindDouble(int, double); - method public void bindLong(int, long); - method public void bindNull(int); - method public void bindString(int, String); - method public void clearBindings(); - method @Deprecated public final int getUniqueId(); - method protected void onAllReferencesReleased(); - } - - public final class SQLiteQuery extends android.database.sqlite.SQLiteProgram { - } - - public class SQLiteQueryBuilder { - ctor public SQLiteQueryBuilder(); - method public static void appendColumns(StringBuilder, String[]); - method public void appendWhere(@NonNull CharSequence); - method public void appendWhereEscapeString(@NonNull String); - method public void appendWhereStandalone(@NonNull CharSequence); - method public String buildQuery(String[], String, String, String, String, String); - method @Deprecated public String buildQuery(String[], String, String[], String, String, String, String); - method public static String buildQueryString(boolean, String, String[], String, String, String, String, String); - method public String buildUnionQuery(String[], String, String); - method public String buildUnionSubQuery(String, String[], java.util.Set, int, String, String, String, String); - method @Deprecated public String buildUnionSubQuery(String, String[], java.util.Set, int, String, String, String[], String, String); - method public int delete(@NonNull android.database.sqlite.SQLiteDatabase, @Nullable String, @Nullable String[]); - method @Nullable public android.database.sqlite.SQLiteDatabase.CursorFactory getCursorFactory(); - method @Nullable public java.util.Collection getProjectionGreylist(); - method @Nullable public java.util.Map getProjectionMap(); - method @Nullable public String getTables(); - method public long insert(@NonNull android.database.sqlite.SQLiteDatabase, @NonNull android.content.ContentValues); - method public boolean isDistinct(); - method public boolean isStrict(); - method public boolean isStrictColumns(); - method public boolean isStrictGrammar(); - method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase, String[], String, String[], String, String, String); - method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase, String[], String, String[], String, String, String, String); - method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase, String[], String, String[], String, String, String, String, android.os.CancellationSignal); - method public void setCursorFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); - method public void setDistinct(boolean); - method public void setProjectionGreylist(@Nullable java.util.Collection); - method public void setProjectionMap(@Nullable java.util.Map); - method public void setStrict(boolean); - method public void setStrictColumns(boolean); - method public void setStrictGrammar(boolean); - method public void setTables(@Nullable String); - method public int update(@NonNull android.database.sqlite.SQLiteDatabase, @NonNull android.content.ContentValues, @Nullable String, @Nullable String[]); - } - - @FlaggedApi("android.database.sqlite.sqlite_apis_35") public final class SQLiteRawStatement implements java.io.Closeable { - method public void bindBlob(int, @NonNull byte[]); - method public void bindBlob(int, @NonNull byte[], int, int); - method public void bindDouble(int, double); - method public void bindInt(int, int); - method public void bindLong(int, long); - method public void bindNull(int); - method public void bindText(int, @NonNull String); - method public void clearBindings(); - method public void close(); - method @Nullable public byte[] getColumnBlob(int); - method public double getColumnDouble(int); - method public int getColumnInt(int); - method public int getColumnLength(int); - method public long getColumnLong(int); - method @NonNull public String getColumnName(int); - method @NonNull public String getColumnText(int); - method public int getColumnType(int); - method public int getParameterCount(); - method public int getParameterIndex(@NonNull String); - method @Nullable public String getParameterName(int); - method public int getResultColumnCount(); - method public boolean isOpen(); - method public int readColumnBlob(int, @NonNull byte[], int, int, int); - method public void reset(); - method public boolean step(); - field public static final int SQLITE_DATA_TYPE_BLOB = 4; // 0x4 - field public static final int SQLITE_DATA_TYPE_FLOAT = 2; // 0x2 - field public static final int SQLITE_DATA_TYPE_INTEGER = 1; // 0x1 - field public static final int SQLITE_DATA_TYPE_NULL = 5; // 0x5 - field public static final int SQLITE_DATA_TYPE_TEXT = 3; // 0x3 - } - - public class SQLiteReadOnlyDatabaseException extends android.database.sqlite.SQLiteException { - ctor public SQLiteReadOnlyDatabaseException(); - ctor public SQLiteReadOnlyDatabaseException(String); - } - - public final class SQLiteStatement extends android.database.sqlite.SQLiteProgram { - method public void execute(); - method public long executeInsert(); - method public int executeUpdateDelete(); - method public android.os.ParcelFileDescriptor simpleQueryForBlobFileDescriptor(); - method public long simpleQueryForLong(); - method public String simpleQueryForString(); - } - - public class SQLiteTableLockedException extends android.database.sqlite.SQLiteException { - ctor public SQLiteTableLockedException(); - ctor public SQLiteTableLockedException(String); - } - - public interface SQLiteTransactionListener { - method public void onBegin(); - method public void onCommit(); - method public void onRollback(); - } - -} - -package android.drm { - - @Deprecated public class DrmConvertedStatus { - ctor @Deprecated public DrmConvertedStatus(int, byte[], int); - field @Deprecated public static final int STATUS_ERROR = 3; // 0x3 - field @Deprecated public static final int STATUS_INPUTDATA_ERROR = 2; // 0x2 - field @Deprecated public static final int STATUS_OK = 1; // 0x1 - field @Deprecated public final byte[] convertedData; - field @Deprecated public final int offset; - field @Deprecated public final int statusCode; - } - - @Deprecated public class DrmErrorEvent extends android.drm.DrmEvent { - ctor @Deprecated public DrmErrorEvent(int, int, String); - ctor @Deprecated public DrmErrorEvent(int, int, String, java.util.HashMap); - field @Deprecated public static final int TYPE_ACQUIRE_DRM_INFO_FAILED = 2008; // 0x7d8 - field @Deprecated public static final int TYPE_NOT_SUPPORTED = 2003; // 0x7d3 - field @Deprecated public static final int TYPE_NO_INTERNET_CONNECTION = 2005; // 0x7d5 - field @Deprecated public static final int TYPE_OUT_OF_MEMORY = 2004; // 0x7d4 - field @Deprecated public static final int TYPE_PROCESS_DRM_INFO_FAILED = 2006; // 0x7d6 - field @Deprecated public static final int TYPE_REMOVE_ALL_RIGHTS_FAILED = 2007; // 0x7d7 - field @Deprecated public static final int TYPE_RIGHTS_NOT_INSTALLED = 2001; // 0x7d1 - field @Deprecated public static final int TYPE_RIGHTS_RENEWAL_NOT_ALLOWED = 2002; // 0x7d2 - } - - @Deprecated public class DrmEvent { - ctor @Deprecated protected DrmEvent(int, int, String, java.util.HashMap); - ctor @Deprecated protected DrmEvent(int, int, String); - method @Deprecated public Object getAttribute(String); - method @Deprecated public String getMessage(); - method @Deprecated public int getType(); - method @Deprecated public int getUniqueId(); - field @Deprecated public static final String DRM_INFO_OBJECT = "drm_info_object"; - field @Deprecated public static final String DRM_INFO_STATUS_OBJECT = "drm_info_status_object"; - field @Deprecated public static final int TYPE_ALL_RIGHTS_REMOVED = 1001; // 0x3e9 - field @Deprecated public static final int TYPE_DRM_INFO_PROCESSED = 1002; // 0x3ea - } - - @Deprecated public class DrmInfo { - ctor @Deprecated public DrmInfo(int, byte[], String); - ctor @Deprecated public DrmInfo(int, String, String); - method @Deprecated public Object get(String); - method @Deprecated public byte[] getData(); - method @Deprecated public int getInfoType(); - method @Deprecated public String getMimeType(); - method @Deprecated public java.util.Iterator iterator(); - method @Deprecated public java.util.Iterator keyIterator(); - method @Deprecated public void put(String, Object); - } - - @Deprecated public class DrmInfoEvent extends android.drm.DrmEvent { - ctor @Deprecated public DrmInfoEvent(int, int, String); - ctor @Deprecated public DrmInfoEvent(int, int, String, java.util.HashMap); - field @Deprecated public static final int TYPE_ACCOUNT_ALREADY_REGISTERED = 5; // 0x5 - field @Deprecated public static final int TYPE_ALREADY_REGISTERED_BY_ANOTHER_ACCOUNT = 1; // 0x1 - field @Deprecated public static final int TYPE_REMOVE_RIGHTS = 2; // 0x2 - field @Deprecated public static final int TYPE_RIGHTS_INSTALLED = 3; // 0x3 - field @Deprecated public static final int TYPE_RIGHTS_REMOVED = 6; // 0x6 - field @Deprecated public static final int TYPE_WAIT_FOR_RIGHTS = 4; // 0x4 - } - - @Deprecated public class DrmInfoRequest { - ctor @Deprecated public DrmInfoRequest(int, String); - method @Deprecated public Object get(String); - method @Deprecated public int getInfoType(); - method @Deprecated public String getMimeType(); - method @Deprecated public java.util.Iterator iterator(); - method @Deprecated public java.util.Iterator keyIterator(); - method @Deprecated public void put(String, Object); - field @Deprecated public static final String ACCOUNT_ID = "account_id"; - field @Deprecated public static final String SUBSCRIPTION_ID = "subscription_id"; - field @Deprecated public static final int TYPE_REGISTRATION_INFO = 1; // 0x1 - field @Deprecated public static final int TYPE_RIGHTS_ACQUISITION_INFO = 3; // 0x3 - field @Deprecated public static final int TYPE_RIGHTS_ACQUISITION_PROGRESS_INFO = 4; // 0x4 - field @Deprecated public static final int TYPE_UNREGISTRATION_INFO = 2; // 0x2 - } - - @Deprecated public class DrmInfoStatus { - ctor @Deprecated public DrmInfoStatus(int, int, android.drm.ProcessedData, String); - field @Deprecated public static final int STATUS_ERROR = 2; // 0x2 - field @Deprecated public static final int STATUS_OK = 1; // 0x1 - field @Deprecated public final android.drm.ProcessedData data; - field @Deprecated public final int infoType; - field @Deprecated public final String mimeType; - field @Deprecated public final int statusCode; - } - - @Deprecated public class DrmManagerClient implements java.lang.AutoCloseable { - ctor @Deprecated public DrmManagerClient(android.content.Context); - method @Deprecated public android.drm.DrmInfo acquireDrmInfo(android.drm.DrmInfoRequest); - method @Deprecated public int acquireRights(android.drm.DrmInfoRequest); - method @Deprecated public boolean canHandle(String, String); - method @Deprecated public boolean canHandle(android.net.Uri, String); - method @Deprecated public int checkRightsStatus(String); - method @Deprecated public int checkRightsStatus(android.net.Uri); - method @Deprecated public int checkRightsStatus(String, int); - method @Deprecated public int checkRightsStatus(android.net.Uri, int); - method @Deprecated public void close(); - method @Deprecated public android.drm.DrmConvertedStatus closeConvertSession(int); - method @Deprecated public android.drm.DrmConvertedStatus convertData(int, byte[]); - method @Deprecated public String[] getAvailableDrmEngines(); - method @Deprecated @NonNull public java.util.Collection getAvailableDrmSupportInfo(); - method @Deprecated public android.content.ContentValues getConstraints(String, int); - method @Deprecated public android.content.ContentValues getConstraints(android.net.Uri, int); - method @Deprecated public int getDrmObjectType(String, String); - method @Deprecated public int getDrmObjectType(android.net.Uri, String); - method @Deprecated public android.content.ContentValues getMetadata(String); - method @Deprecated public android.content.ContentValues getMetadata(android.net.Uri); - method @Deprecated public String getOriginalMimeType(String); - method @Deprecated public String getOriginalMimeType(android.net.Uri); - method @Deprecated public int openConvertSession(String); - method @Deprecated public int processDrmInfo(android.drm.DrmInfo); - method @Deprecated public void release(); - method @Deprecated public int removeAllRights(); - method @Deprecated public int removeRights(String); - method @Deprecated public int removeRights(android.net.Uri); - method @Deprecated public int saveRights(android.drm.DrmRights, String, String) throws java.io.IOException; - method @Deprecated public void setOnErrorListener(android.drm.DrmManagerClient.OnErrorListener); - method @Deprecated public void setOnEventListener(android.drm.DrmManagerClient.OnEventListener); - method @Deprecated public void setOnInfoListener(android.drm.DrmManagerClient.OnInfoListener); - field @Deprecated public static final int ERROR_NONE = 0; // 0x0 - field @Deprecated public static final int ERROR_UNKNOWN = -2000; // 0xfffff830 - } - - @Deprecated public static interface DrmManagerClient.OnErrorListener { - method @Deprecated public void onError(android.drm.DrmManagerClient, android.drm.DrmErrorEvent); - } - - @Deprecated public static interface DrmManagerClient.OnEventListener { - method @Deprecated public void onEvent(android.drm.DrmManagerClient, android.drm.DrmEvent); - } - - @Deprecated public static interface DrmManagerClient.OnInfoListener { - method @Deprecated public void onInfo(android.drm.DrmManagerClient, android.drm.DrmInfoEvent); - } - - @Deprecated public class DrmRights { - ctor @Deprecated public DrmRights(String, String); - ctor @Deprecated public DrmRights(String, String, String); - ctor @Deprecated public DrmRights(String, String, String, String); - ctor @Deprecated public DrmRights(java.io.File, String); - ctor @Deprecated public DrmRights(android.drm.ProcessedData, String); - method @Deprecated public String getAccountId(); - method @Deprecated public byte[] getData(); - method @Deprecated public String getMimeType(); - method @Deprecated public String getSubscriptionId(); - } - - @Deprecated public class DrmStore { - ctor @Deprecated public DrmStore(); - } - - @Deprecated public static class DrmStore.Action { - ctor @Deprecated public DrmStore.Action(); - field @Deprecated public static final int DEFAULT = 0; // 0x0 - field @Deprecated public static final int DISPLAY = 7; // 0x7 - field @Deprecated public static final int EXECUTE = 6; // 0x6 - field @Deprecated public static final int OUTPUT = 4; // 0x4 - field @Deprecated public static final int PLAY = 1; // 0x1 - field @Deprecated public static final int PREVIEW = 5; // 0x5 - field @Deprecated public static final int RINGTONE = 2; // 0x2 - field @Deprecated public static final int TRANSFER = 3; // 0x3 - } - - @Deprecated public static interface DrmStore.ConstraintsColumns { - field @Deprecated public static final String EXTENDED_METADATA = "extended_metadata"; - field @Deprecated public static final String LICENSE_AVAILABLE_TIME = "license_available_time"; - field @Deprecated public static final String LICENSE_EXPIRY_TIME = "license_expiry_time"; - field @Deprecated public static final String LICENSE_START_TIME = "license_start_time"; - field @Deprecated public static final String MAX_REPEAT_COUNT = "max_repeat_count"; - field @Deprecated public static final String REMAINING_REPEAT_COUNT = "remaining_repeat_count"; - } - - @Deprecated public static class DrmStore.DrmObjectType { - ctor @Deprecated public DrmStore.DrmObjectType(); - field @Deprecated public static final int CONTENT = 1; // 0x1 - field @Deprecated public static final int RIGHTS_OBJECT = 2; // 0x2 - field @Deprecated public static final int TRIGGER_OBJECT = 3; // 0x3 - field @Deprecated public static final int UNKNOWN = 0; // 0x0 - } - - @Deprecated public static class DrmStore.Playback { - ctor @Deprecated public DrmStore.Playback(); - field @Deprecated public static final int PAUSE = 2; // 0x2 - field @Deprecated public static final int RESUME = 3; // 0x3 - field @Deprecated public static final int START = 0; // 0x0 - field @Deprecated public static final int STOP = 1; // 0x1 - } - - @Deprecated public static class DrmStore.RightsStatus { - ctor @Deprecated public DrmStore.RightsStatus(); - field @Deprecated public static final int RIGHTS_EXPIRED = 2; // 0x2 - field @Deprecated public static final int RIGHTS_INVALID = 1; // 0x1 - field @Deprecated public static final int RIGHTS_NOT_ACQUIRED = 3; // 0x3 - field @Deprecated public static final int RIGHTS_VALID = 0; // 0x0 - } - - @Deprecated public class DrmSupportInfo { - ctor @Deprecated public DrmSupportInfo(); - method @Deprecated public void addFileSuffix(String); - method @Deprecated public void addMimeType(String); - method @Deprecated public String getDescriprition(); - method @Deprecated public String getDescription(); - method @Deprecated public java.util.Iterator getFileSuffixIterator(); - method @Deprecated public java.util.Iterator getMimeTypeIterator(); - method @Deprecated public void setDescription(String); - } - - @Deprecated public class DrmUtils { - ctor @Deprecated public DrmUtils(); - method @Deprecated public static android.drm.DrmUtils.ExtendedMetadataParser getExtendedMetadataParser(byte[]); - } - - @Deprecated public static class DrmUtils.ExtendedMetadataParser { - method @Deprecated public String get(String); - method @Deprecated public java.util.Iterator iterator(); - method @Deprecated public java.util.Iterator keyIterator(); - } - - @Deprecated public class ProcessedData { - method @Deprecated public String getAccountId(); - method @Deprecated public byte[] getData(); - method @Deprecated public String getSubscriptionId(); - } - -} - -package android.gesture { - - public class Gesture implements android.os.Parcelable { - ctor public Gesture(); - method public void addStroke(android.gesture.GestureStroke); - method public Object clone(); - method public int describeContents(); - method public android.graphics.RectF getBoundingBox(); - method public long getID(); - method public float getLength(); - method public java.util.ArrayList getStrokes(); - method public int getStrokesCount(); - method public android.graphics.Bitmap toBitmap(int, int, int, int, int); - method public android.graphics.Bitmap toBitmap(int, int, int, int); - method public android.graphics.Path toPath(); - method public android.graphics.Path toPath(android.graphics.Path); - method public android.graphics.Path toPath(int, int, int, int); - method public android.graphics.Path toPath(android.graphics.Path, int, int, int, int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class GestureLibraries { - method public static android.gesture.GestureLibrary fromFile(String); - method public static android.gesture.GestureLibrary fromFile(java.io.File); - method @NonNull public static android.gesture.GestureLibrary fromFileDescriptor(@NonNull android.os.ParcelFileDescriptor); - method public static android.gesture.GestureLibrary fromPrivateFile(android.content.Context, String); - method public static android.gesture.GestureLibrary fromRawResource(android.content.Context, @RawRes int); - } - - public abstract class GestureLibrary { - ctor protected GestureLibrary(); - method public void addGesture(String, android.gesture.Gesture); - method public java.util.Set getGestureEntries(); - method public java.util.ArrayList getGestures(String); - method public int getOrientationStyle(); - method public int getSequenceType(); - method public boolean isReadOnly(); - method public abstract boolean load(); - method public java.util.ArrayList recognize(android.gesture.Gesture); - method public void removeEntry(String); - method public void removeGesture(String, android.gesture.Gesture); - method public abstract boolean save(); - method public void setOrientationStyle(int); - method public void setSequenceType(int); - field protected final android.gesture.GestureStore mStore; - } - - public class GestureOverlayView extends android.widget.FrameLayout { - ctor public GestureOverlayView(android.content.Context); - ctor public GestureOverlayView(android.content.Context, android.util.AttributeSet); - ctor public GestureOverlayView(android.content.Context, android.util.AttributeSet, int); - ctor public GestureOverlayView(android.content.Context, android.util.AttributeSet, int, int); - method public void addOnGestureListener(android.gesture.GestureOverlayView.OnGestureListener); - method public void addOnGesturePerformedListener(android.gesture.GestureOverlayView.OnGesturePerformedListener); - method public void addOnGesturingListener(android.gesture.GestureOverlayView.OnGesturingListener); - method public void cancelClearAnimation(); - method public void cancelGesture(); - method public void clear(boolean); - method public java.util.ArrayList getCurrentStroke(); - method public long getFadeOffset(); - method public android.gesture.Gesture getGesture(); - method @ColorInt public int getGestureColor(); - method public android.graphics.Path getGesturePath(); - method public android.graphics.Path getGesturePath(android.graphics.Path); - method public float getGestureStrokeAngleThreshold(); - method public float getGestureStrokeLengthThreshold(); - method public float getGestureStrokeSquarenessTreshold(); - method public int getGestureStrokeType(); - method public float getGestureStrokeWidth(); - method public int getOrientation(); - method @ColorInt public int getUncertainGestureColor(); - method public boolean isEventsInterceptionEnabled(); - method public boolean isFadeEnabled(); - method public boolean isGestureVisible(); - method public boolean isGesturing(); - method public void removeAllOnGestureListeners(); - method public void removeAllOnGesturePerformedListeners(); - method public void removeAllOnGesturingListeners(); - method public void removeOnGestureListener(android.gesture.GestureOverlayView.OnGestureListener); - method public void removeOnGesturePerformedListener(android.gesture.GestureOverlayView.OnGesturePerformedListener); - method public void removeOnGesturingListener(android.gesture.GestureOverlayView.OnGesturingListener); - method public void setEventsInterceptionEnabled(boolean); - method public void setFadeEnabled(boolean); - method public void setFadeOffset(long); - method public void setGesture(android.gesture.Gesture); - method public void setGestureColor(@ColorInt int); - method public void setGestureStrokeAngleThreshold(float); - method public void setGestureStrokeLengthThreshold(float); - method public void setGestureStrokeSquarenessTreshold(float); - method public void setGestureStrokeType(int); - method public void setGestureStrokeWidth(float); - method public void setGestureVisible(boolean); - method public void setOrientation(int); - method public void setUncertainGestureColor(@ColorInt int); - field public static final int GESTURE_STROKE_TYPE_MULTIPLE = 1; // 0x1 - field public static final int GESTURE_STROKE_TYPE_SINGLE = 0; // 0x0 - field public static final int ORIENTATION_HORIZONTAL = 0; // 0x0 - field public static final int ORIENTATION_VERTICAL = 1; // 0x1 - } - - public static interface GestureOverlayView.OnGestureListener { - method public void onGesture(android.gesture.GestureOverlayView, android.view.MotionEvent); - method public void onGestureCancelled(android.gesture.GestureOverlayView, android.view.MotionEvent); - method public void onGestureEnded(android.gesture.GestureOverlayView, android.view.MotionEvent); - method public void onGestureStarted(android.gesture.GestureOverlayView, android.view.MotionEvent); - } - - public static interface GestureOverlayView.OnGesturePerformedListener { - method public void onGesturePerformed(android.gesture.GestureOverlayView, android.gesture.Gesture); - } - - public static interface GestureOverlayView.OnGesturingListener { - method public void onGesturingEnded(android.gesture.GestureOverlayView); - method public void onGesturingStarted(android.gesture.GestureOverlayView); - } - - public class GesturePoint { - ctor public GesturePoint(float, float, long); - method public Object clone(); - field public final long timestamp; - field public final float x; - field public final float y; - } - - public class GestureStore { - ctor public GestureStore(); - method public void addGesture(String, android.gesture.Gesture); - method public java.util.Set getGestureEntries(); - method public java.util.ArrayList getGestures(String); - method public int getOrientationStyle(); - method public int getSequenceType(); - method public boolean hasChanged(); - method public void load(java.io.InputStream) throws java.io.IOException; - method public void load(java.io.InputStream, boolean) throws java.io.IOException; - method public java.util.ArrayList recognize(android.gesture.Gesture); - method public void removeEntry(String); - method public void removeGesture(String, android.gesture.Gesture); - method public void save(java.io.OutputStream) throws java.io.IOException; - method public void save(java.io.OutputStream, boolean) throws java.io.IOException; - method public void setOrientationStyle(int); - method public void setSequenceType(int); - field public static final int ORIENTATION_INVARIANT = 1; // 0x1 - field public static final int ORIENTATION_SENSITIVE = 2; // 0x2 - field public static final int SEQUENCE_INVARIANT = 1; // 0x1 - field public static final int SEQUENCE_SENSITIVE = 2; // 0x2 - } - - public class GestureStroke { - ctor public GestureStroke(java.util.ArrayList); - method public void clearPath(); - method public Object clone(); - method public android.gesture.OrientedBoundingBox computeOrientedBoundingBox(); - method public android.graphics.Path getPath(); - method public android.graphics.Path toPath(float, float, int); - field public final android.graphics.RectF boundingBox; - field public final float length; - field public final float[] points; - } - - public final class GestureUtils { - method public static android.gesture.OrientedBoundingBox computeOrientedBoundingBox(java.util.ArrayList); - method public static android.gesture.OrientedBoundingBox computeOrientedBoundingBox(float[]); - method public static float[] spatialSampling(android.gesture.Gesture, int); - method public static float[] spatialSampling(android.gesture.Gesture, int, boolean); - method public static float[] temporalSampling(android.gesture.GestureStroke, int); - } - - public class OrientedBoundingBox { - field public final float centerX; - field public final float centerY; - field public final float height; - field public final float orientation; - field public final float squareness; - field public final float width; - } - - public class Prediction { - field public final String name; - field public double score; - } - -} - -package android.graphics { - - public final class Bitmap implements android.os.Parcelable { - method @NonNull public android.graphics.Bitmap asShared(); - method @WorkerThread public boolean compress(@NonNull android.graphics.Bitmap.CompressFormat, int, @NonNull java.io.OutputStream); - method public android.graphics.Bitmap copy(@NonNull android.graphics.Bitmap.Config, boolean); - method public void copyPixelsFromBuffer(@NonNull java.nio.Buffer); - method public void copyPixelsToBuffer(@NonNull java.nio.Buffer); - method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Bitmap); - method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Bitmap, int, int, int, int); - method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Bitmap, int, int, int, int, @Nullable android.graphics.Matrix, boolean); - method @NonNull public static android.graphics.Bitmap createBitmap(int, int, @NonNull android.graphics.Bitmap.Config); - method @NonNull public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, int, int, @NonNull android.graphics.Bitmap.Config); - method @NonNull public static android.graphics.Bitmap createBitmap(int, int, @NonNull android.graphics.Bitmap.Config, boolean); - method @NonNull public static android.graphics.Bitmap createBitmap(int, int, @NonNull android.graphics.Bitmap.Config, boolean, @NonNull android.graphics.ColorSpace); - method @NonNull public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, int, int, @NonNull android.graphics.Bitmap.Config, boolean); - method @NonNull public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, int, int, @NonNull android.graphics.Bitmap.Config, boolean, @NonNull android.graphics.ColorSpace); - method @NonNull public static android.graphics.Bitmap createBitmap(@ColorInt @NonNull int[], int, int, int, int, @NonNull android.graphics.Bitmap.Config); - method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.util.DisplayMetrics, @ColorInt @NonNull int[], int, int, int, int, @NonNull android.graphics.Bitmap.Config); - method @NonNull public static android.graphics.Bitmap createBitmap(@ColorInt @NonNull int[], int, int, android.graphics.Bitmap.Config); - method @NonNull public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, @ColorInt @NonNull int[], int, int, @NonNull android.graphics.Bitmap.Config); - method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Picture); - method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Picture, int, int, @NonNull android.graphics.Bitmap.Config); - method @NonNull public static android.graphics.Bitmap createScaledBitmap(@NonNull android.graphics.Bitmap, int, int, boolean); - method public int describeContents(); - method public void eraseColor(@ColorInt int); - method public void eraseColor(@ColorLong long); - method @CheckResult @NonNull public android.graphics.Bitmap extractAlpha(); - method @CheckResult @NonNull public android.graphics.Bitmap extractAlpha(@Nullable android.graphics.Paint, int[]); - method public int getAllocationByteCount(); - method public int getByteCount(); - method @NonNull public android.graphics.Color getColor(int, int); - method @Nullable public android.graphics.ColorSpace getColorSpace(); - method @Nullable public android.graphics.Bitmap.Config getConfig(); - method public int getDensity(); - method @Nullable public android.graphics.Gainmap getGainmap(); - method public int getGenerationId(); - method @NonNull public android.hardware.HardwareBuffer getHardwareBuffer(); - method public int getHeight(); - method @Nullable public byte[] getNinePatchChunk(); - method @ColorInt public int getPixel(int, int); - method public void getPixels(@ColorInt @NonNull int[], int, int, int, int, int, int); - method public int getRowBytes(); - method public int getScaledHeight(@NonNull android.graphics.Canvas); - method public int getScaledHeight(@NonNull android.util.DisplayMetrics); - method public int getScaledHeight(int); - method public int getScaledWidth(@NonNull android.graphics.Canvas); - method public int getScaledWidth(@NonNull android.util.DisplayMetrics); - method public int getScaledWidth(int); - method public int getWidth(); - method public boolean hasAlpha(); - method public boolean hasGainmap(); - method public boolean hasMipMap(); - method public boolean isMutable(); - method public boolean isPremultiplied(); - method public boolean isRecycled(); - method public void prepareToDraw(); - method public void reconfigure(int, int, @NonNull android.graphics.Bitmap.Config); - method public void recycle(); - method @WorkerThread public boolean sameAs(@Nullable android.graphics.Bitmap); - method public void setColorSpace(@NonNull android.graphics.ColorSpace); - method public void setConfig(@NonNull android.graphics.Bitmap.Config); - method public void setDensity(int); - method public void setGainmap(@Nullable android.graphics.Gainmap); - method public void setHasAlpha(boolean); - method public void setHasMipMap(boolean); - method public void setHeight(int); - method public void setPixel(int, int, @ColorInt int); - method public void setPixels(@ColorInt @NonNull int[], int, int, int, int, int, int); - method public void setPremultiplied(boolean); - method public void setWidth(int); - method @Nullable public static android.graphics.Bitmap wrapHardwareBuffer(@NonNull android.hardware.HardwareBuffer, @Nullable android.graphics.ColorSpace); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DENSITY_NONE = 0; // 0x0 - } - - public enum Bitmap.CompressFormat { - enum_constant public static final android.graphics.Bitmap.CompressFormat JPEG; - enum_constant public static final android.graphics.Bitmap.CompressFormat PNG; - enum_constant @Deprecated public static final android.graphics.Bitmap.CompressFormat WEBP; - enum_constant public static final android.graphics.Bitmap.CompressFormat WEBP_LOSSLESS; - enum_constant public static final android.graphics.Bitmap.CompressFormat WEBP_LOSSY; - } - - public enum Bitmap.Config { - enum_constant public static final android.graphics.Bitmap.Config ALPHA_8; - enum_constant @Deprecated public static final android.graphics.Bitmap.Config ARGB_4444; - enum_constant public static final android.graphics.Bitmap.Config ARGB_8888; - enum_constant public static final android.graphics.Bitmap.Config HARDWARE; - enum_constant public static final android.graphics.Bitmap.Config RGBA_1010102; - enum_constant public static final android.graphics.Bitmap.Config RGBA_F16; - enum_constant public static final android.graphics.Bitmap.Config RGB_565; - } - - public class BitmapFactory { - ctor public BitmapFactory(); - method public static android.graphics.Bitmap decodeByteArray(byte[], int, int, android.graphics.BitmapFactory.Options); - method public static android.graphics.Bitmap decodeByteArray(byte[], int, int); - method public static android.graphics.Bitmap decodeFile(String, android.graphics.BitmapFactory.Options); - method public static android.graphics.Bitmap decodeFile(String); - method public static android.graphics.Bitmap decodeFileDescriptor(java.io.FileDescriptor, android.graphics.Rect, android.graphics.BitmapFactory.Options); - method public static android.graphics.Bitmap decodeFileDescriptor(java.io.FileDescriptor); - method public static android.graphics.Bitmap decodeResource(android.content.res.Resources, int, android.graphics.BitmapFactory.Options); - method public static android.graphics.Bitmap decodeResource(android.content.res.Resources, int); - method @Nullable public static android.graphics.Bitmap decodeResourceStream(@Nullable android.content.res.Resources, @Nullable android.util.TypedValue, @Nullable java.io.InputStream, @Nullable android.graphics.Rect, @Nullable android.graphics.BitmapFactory.Options); - method @Nullable public static android.graphics.Bitmap decodeStream(@Nullable java.io.InputStream, @Nullable android.graphics.Rect, @Nullable android.graphics.BitmapFactory.Options); - method public static android.graphics.Bitmap decodeStream(java.io.InputStream); - } - - public static class BitmapFactory.Options { - ctor public BitmapFactory.Options(); - method @Deprecated public void requestCancelDecode(); - field public android.graphics.Bitmap inBitmap; - field public int inDensity; - field @Deprecated public boolean inDither; - field @Deprecated public boolean inInputShareable; - field public boolean inJustDecodeBounds; - field public boolean inMutable; - field @Deprecated public boolean inPreferQualityOverSpeed; - field public android.graphics.ColorSpace inPreferredColorSpace; - field public android.graphics.Bitmap.Config inPreferredConfig; - field public boolean inPremultiplied; - field @Deprecated public boolean inPurgeable; - field public int inSampleSize; - field public boolean inScaled; - field public int inScreenDensity; - field public int inTargetDensity; - field public byte[] inTempStorage; - field @Deprecated public boolean mCancel; - field public android.graphics.ColorSpace outColorSpace; - field public android.graphics.Bitmap.Config outConfig; - field public int outHeight; - field public String outMimeType; - field public int outWidth; - } - - public final class BitmapRegionDecoder { - method public android.graphics.Bitmap decodeRegion(android.graphics.Rect, android.graphics.BitmapFactory.Options); - method public int getHeight(); - method public int getWidth(); - method public boolean isRecycled(); - method @Deprecated @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull byte[], int, int, boolean) throws java.io.IOException; - method @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull byte[], int, int) throws java.io.IOException; - method @Deprecated @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull java.io.FileDescriptor, boolean) throws java.io.IOException; - method @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull android.os.ParcelFileDescriptor) throws java.io.IOException; - method @Deprecated @Nullable public static android.graphics.BitmapRegionDecoder newInstance(@NonNull java.io.InputStream, boolean) throws java.io.IOException; - method @Nullable public static android.graphics.BitmapRegionDecoder newInstance(@NonNull java.io.InputStream) throws java.io.IOException; - method @Deprecated @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull String, boolean) throws java.io.IOException; - method @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull String) throws java.io.IOException; - method public void recycle(); - } - - public class BitmapShader extends android.graphics.Shader { - ctor public BitmapShader(@NonNull android.graphics.Bitmap, @NonNull android.graphics.Shader.TileMode, @NonNull android.graphics.Shader.TileMode); - method public int getFilterMode(); - method public int getMaxAnisotropy(); - method public void setFilterMode(int); - method public void setMaxAnisotropy(@IntRange(from=1) int); - method @FlaggedApi("com.android.graphics.hwui.flags.gainmap_animations") public void setOverrideGainmap(@Nullable android.graphics.Gainmap); - field public static final int FILTER_MODE_DEFAULT = 0; // 0x0 - field public static final int FILTER_MODE_LINEAR = 2; // 0x2 - field public static final int FILTER_MODE_NEAREST = 1; // 0x1 - } - - public enum BlendMode { - enum_constant public static final android.graphics.BlendMode CLEAR; - enum_constant public static final android.graphics.BlendMode COLOR; - enum_constant public static final android.graphics.BlendMode COLOR_BURN; - enum_constant public static final android.graphics.BlendMode COLOR_DODGE; - enum_constant public static final android.graphics.BlendMode DARKEN; - enum_constant public static final android.graphics.BlendMode DIFFERENCE; - enum_constant public static final android.graphics.BlendMode DST; - enum_constant public static final android.graphics.BlendMode DST_ATOP; - enum_constant public static final android.graphics.BlendMode DST_IN; - enum_constant public static final android.graphics.BlendMode DST_OUT; - enum_constant public static final android.graphics.BlendMode DST_OVER; - enum_constant public static final android.graphics.BlendMode EXCLUSION; - enum_constant public static final android.graphics.BlendMode HARD_LIGHT; - enum_constant public static final android.graphics.BlendMode HUE; - enum_constant public static final android.graphics.BlendMode LIGHTEN; - enum_constant public static final android.graphics.BlendMode LUMINOSITY; - enum_constant public static final android.graphics.BlendMode MODULATE; - enum_constant public static final android.graphics.BlendMode MULTIPLY; - enum_constant public static final android.graphics.BlendMode OVERLAY; - enum_constant public static final android.graphics.BlendMode PLUS; - enum_constant public static final android.graphics.BlendMode SATURATION; - enum_constant public static final android.graphics.BlendMode SCREEN; - enum_constant public static final android.graphics.BlendMode SOFT_LIGHT; - enum_constant public static final android.graphics.BlendMode SRC; - enum_constant public static final android.graphics.BlendMode SRC_ATOP; - enum_constant public static final android.graphics.BlendMode SRC_IN; - enum_constant public static final android.graphics.BlendMode SRC_OUT; - enum_constant public static final android.graphics.BlendMode SRC_OVER; - enum_constant public static final android.graphics.BlendMode XOR; - } - - public final class BlendModeColorFilter extends android.graphics.ColorFilter { - ctor public BlendModeColorFilter(@ColorInt int, @NonNull android.graphics.BlendMode); - method @ColorInt public int getColor(); - method public android.graphics.BlendMode getMode(); - } - - public class BlurMaskFilter extends android.graphics.MaskFilter { - ctor public BlurMaskFilter(float, android.graphics.BlurMaskFilter.Blur); - } - - public enum BlurMaskFilter.Blur { - enum_constant public static final android.graphics.BlurMaskFilter.Blur INNER; - enum_constant public static final android.graphics.BlurMaskFilter.Blur NORMAL; - enum_constant public static final android.graphics.BlurMaskFilter.Blur OUTER; - enum_constant public static final android.graphics.BlurMaskFilter.Blur SOLID; - } - - public class Camera { - ctor public Camera(); - method public void applyToCanvas(android.graphics.Canvas); - method public float dotWithNormal(float, float, float); - method public float getLocationX(); - method public float getLocationY(); - method public float getLocationZ(); - method public void getMatrix(android.graphics.Matrix); - method public void restore(); - method public void rotate(float, float, float); - method public void rotateX(float); - method public void rotateY(float); - method public void rotateZ(float); - method public void save(); - method public void setLocation(float, float, float); - method public void translate(float, float, float); - } - - public class Canvas { - ctor public Canvas(); - ctor public Canvas(@NonNull android.graphics.Bitmap); - method public boolean clipOutPath(@NonNull android.graphics.Path); - method public boolean clipOutRect(@NonNull android.graphics.RectF); - method public boolean clipOutRect(@NonNull android.graphics.Rect); - method public boolean clipOutRect(float, float, float, float); - method public boolean clipOutRect(int, int, int, int); - method @FlaggedApi("com.android.graphics.hwui.flags.clip_shader") public void clipOutShader(@NonNull android.graphics.Shader); - method @Deprecated public boolean clipPath(@NonNull android.graphics.Path, @NonNull android.graphics.Region.Op); - method public boolean clipPath(@NonNull android.graphics.Path); - method @Deprecated public boolean clipRect(@NonNull android.graphics.RectF, @NonNull android.graphics.Region.Op); - method @Deprecated public boolean clipRect(@NonNull android.graphics.Rect, @NonNull android.graphics.Region.Op); - method public boolean clipRect(@NonNull android.graphics.RectF); - method public boolean clipRect(@NonNull android.graphics.Rect); - method @Deprecated public boolean clipRect(float, float, float, float, @NonNull android.graphics.Region.Op); - method public boolean clipRect(float, float, float, float); - method public boolean clipRect(int, int, int, int); - method @FlaggedApi("com.android.graphics.hwui.flags.clip_shader") public void clipShader(@NonNull android.graphics.Shader); - method public void concat(@Nullable android.graphics.Matrix); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void concat(@Nullable android.graphics.Matrix44); - method public void disableZ(); - method public void drawARGB(int, int, int, int); - method public void drawArc(@NonNull android.graphics.RectF, float, float, boolean, @NonNull android.graphics.Paint); - method public void drawArc(float, float, float, float, float, float, boolean, @NonNull android.graphics.Paint); - method public void drawBitmap(@NonNull android.graphics.Bitmap, float, float, @Nullable android.graphics.Paint); - method public void drawBitmap(@NonNull android.graphics.Bitmap, @Nullable android.graphics.Rect, @NonNull android.graphics.RectF, @Nullable android.graphics.Paint); - method public void drawBitmap(@NonNull android.graphics.Bitmap, @Nullable android.graphics.Rect, @NonNull android.graphics.Rect, @Nullable android.graphics.Paint); - method @Deprecated public void drawBitmap(@NonNull int[], int, int, float, float, int, int, boolean, @Nullable android.graphics.Paint); - method @Deprecated public void drawBitmap(@NonNull int[], int, int, int, int, int, int, boolean, @Nullable android.graphics.Paint); - method public void drawBitmap(@NonNull android.graphics.Bitmap, @NonNull android.graphics.Matrix, @Nullable android.graphics.Paint); - method public void drawBitmapMesh(@NonNull android.graphics.Bitmap, int, int, @NonNull float[], int, @Nullable int[], int, @Nullable android.graphics.Paint); - method public void drawCircle(float, float, float, @NonNull android.graphics.Paint); - method public void drawColor(@ColorInt int); - method public void drawColor(@ColorLong long); - method public void drawColor(@ColorInt int, @NonNull android.graphics.PorterDuff.Mode); - method public void drawColor(@ColorInt int, @NonNull android.graphics.BlendMode); - method public void drawColor(@ColorLong long, @NonNull android.graphics.BlendMode); - method public void drawDoubleRoundRect(@NonNull android.graphics.RectF, float, float, @NonNull android.graphics.RectF, float, float, @NonNull android.graphics.Paint); - method public void drawDoubleRoundRect(@NonNull android.graphics.RectF, @NonNull float[], @NonNull android.graphics.RectF, @NonNull float[], @NonNull android.graphics.Paint); - method public void drawGlyphs(@NonNull int[], @IntRange(from=0) int, @NonNull float[], @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.fonts.Font, @NonNull android.graphics.Paint); - method public void drawLine(float, float, float, float, @NonNull android.graphics.Paint); - method public void drawLines(@NonNull @Size(multiple=4) float[], int, int, @NonNull android.graphics.Paint); - method public void drawLines(@NonNull @Size(multiple=4) float[], @NonNull android.graphics.Paint); - method public void drawMesh(@NonNull android.graphics.Mesh, @Nullable android.graphics.BlendMode, @NonNull android.graphics.Paint); - method public void drawOval(@NonNull android.graphics.RectF, @NonNull android.graphics.Paint); - method public void drawOval(float, float, float, float, @NonNull android.graphics.Paint); - method public void drawPaint(@NonNull android.graphics.Paint); - method public void drawPatch(@NonNull android.graphics.NinePatch, @NonNull android.graphics.Rect, @Nullable android.graphics.Paint); - method public void drawPatch(@NonNull android.graphics.NinePatch, @NonNull android.graphics.RectF, @Nullable android.graphics.Paint); - method public void drawPath(@NonNull android.graphics.Path, @NonNull android.graphics.Paint); - method public void drawPicture(@NonNull android.graphics.Picture); - method public void drawPicture(@NonNull android.graphics.Picture, @NonNull android.graphics.RectF); - method public void drawPicture(@NonNull android.graphics.Picture, @NonNull android.graphics.Rect); - method public void drawPoint(float, float, @NonNull android.graphics.Paint); - method public void drawPoints(@Size(multiple=2) float[], int, int, @NonNull android.graphics.Paint); - method public void drawPoints(@NonNull @Size(multiple=2) float[], @NonNull android.graphics.Paint); - method @Deprecated public void drawPosText(@NonNull char[], int, int, @NonNull @Size(multiple=2) float[], @NonNull android.graphics.Paint); - method @Deprecated public void drawPosText(@NonNull String, @NonNull @Size(multiple=2) float[], @NonNull android.graphics.Paint); - method public void drawRGB(int, int, int); - method public void drawRect(@NonNull android.graphics.RectF, @NonNull android.graphics.Paint); - method public void drawRect(@NonNull android.graphics.Rect, @NonNull android.graphics.Paint); - method public void drawRect(float, float, float, float, @NonNull android.graphics.Paint); - method @FlaggedApi("com.android.graphics.hwui.flags.draw_region") public void drawRegion(@NonNull android.graphics.Region, @NonNull android.graphics.Paint); - method public void drawRenderNode(@NonNull android.graphics.RenderNode); - method public void drawRoundRect(@NonNull android.graphics.RectF, float, float, @NonNull android.graphics.Paint); - method public void drawRoundRect(float, float, float, float, float, float, @NonNull android.graphics.Paint); - method public void drawText(@NonNull char[], int, int, float, float, @NonNull android.graphics.Paint); - method public void drawText(@NonNull String, float, float, @NonNull android.graphics.Paint); - method public void drawText(@NonNull String, int, int, float, float, @NonNull android.graphics.Paint); - method public void drawText(@NonNull CharSequence, int, int, float, float, @NonNull android.graphics.Paint); - method public void drawTextOnPath(@NonNull char[], int, int, @NonNull android.graphics.Path, float, float, @NonNull android.graphics.Paint); - method public void drawTextOnPath(@NonNull String, @NonNull android.graphics.Path, float, float, @NonNull android.graphics.Paint); - method public void drawTextRun(@NonNull char[], int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); - method public void drawTextRun(@NonNull CharSequence, int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); - method public void drawTextRun(@NonNull android.graphics.text.MeasuredText, int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); - method public void drawVertices(@NonNull android.graphics.Canvas.VertexMode, int, @NonNull float[], int, @Nullable float[], int, @Nullable int[], int, @Nullable short[], int, int, @NonNull android.graphics.Paint); - method public void enableZ(); - method public boolean getClipBounds(@NonNull android.graphics.Rect); - method @NonNull public final android.graphics.Rect getClipBounds(); - method public int getDensity(); - method @Nullable public android.graphics.DrawFilter getDrawFilter(); - method public int getHeight(); - method @Deprecated public void getMatrix(@NonNull android.graphics.Matrix); - method @Deprecated @NonNull public final android.graphics.Matrix getMatrix(); - method public int getMaximumBitmapHeight(); - method public int getMaximumBitmapWidth(); - method public int getSaveCount(); - method public int getWidth(); - method public boolean isHardwareAccelerated(); - method public boolean isOpaque(); - method @Deprecated public boolean quickReject(@NonNull android.graphics.RectF, @NonNull android.graphics.Canvas.EdgeType); - method public boolean quickReject(@NonNull android.graphics.RectF); - method @Deprecated public boolean quickReject(@NonNull android.graphics.Path, @NonNull android.graphics.Canvas.EdgeType); - method public boolean quickReject(@NonNull android.graphics.Path); - method @Deprecated public boolean quickReject(float, float, float, float, @NonNull android.graphics.Canvas.EdgeType); - method public boolean quickReject(float, float, float, float); - method public void restore(); - method public void restoreToCount(int); - method public void rotate(float); - method public final void rotate(float, float, float); - method public int save(); - method @Deprecated public int saveLayer(@Nullable android.graphics.RectF, @Nullable android.graphics.Paint, int); - method public int saveLayer(@Nullable android.graphics.RectF, @Nullable android.graphics.Paint); - method @Deprecated public int saveLayer(float, float, float, float, @Nullable android.graphics.Paint, int); - method public int saveLayer(float, float, float, float, @Nullable android.graphics.Paint); - method @Deprecated public int saveLayerAlpha(@Nullable android.graphics.RectF, int, int); - method public int saveLayerAlpha(@Nullable android.graphics.RectF, int); - method @Deprecated public int saveLayerAlpha(float, float, float, float, int, int); - method public int saveLayerAlpha(float, float, float, float, int); - method public void scale(float, float); - method public final void scale(float, float, float, float); - method public void setBitmap(@Nullable android.graphics.Bitmap); - method public void setDensity(int); - method public void setDrawFilter(@Nullable android.graphics.DrawFilter); - method public void setMatrix(@Nullable android.graphics.Matrix); - method public void skew(float, float); - method public void translate(float, float); - field public static final int ALL_SAVE_FLAG = 31; // 0x1f - } - - @Deprecated public enum Canvas.EdgeType { - enum_constant @Deprecated public static final android.graphics.Canvas.EdgeType AA; - enum_constant @Deprecated public static final android.graphics.Canvas.EdgeType BW; - } - - public enum Canvas.VertexMode { - enum_constant public static final android.graphics.Canvas.VertexMode TRIANGLES; - enum_constant public static final android.graphics.Canvas.VertexMode TRIANGLE_FAN; - enum_constant public static final android.graphics.Canvas.VertexMode TRIANGLE_STRIP; - } - - @AnyThread public class Color { - ctor public Color(); - method @ColorInt public static int HSVToColor(@Size(3) float[]); - method @ColorInt public static int HSVToColor(@IntRange(from=0, to=255) int, @Size(3) float[]); - method public static void RGBToHSV(@IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @Size(3) float[]); - method public float alpha(); - method public static float alpha(@ColorLong long); - method @IntRange(from=0, to=255) public static int alpha(int); - method @ColorInt public static int argb(@IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int); - method @ColorInt public static int argb(float, float, float, float); - method public float blue(); - method public static float blue(@ColorLong long); - method @IntRange(from=0, to=255) public static int blue(int); - method @NonNull public static android.graphics.ColorSpace colorSpace(@ColorLong long); - method public static void colorToHSV(@ColorInt int, @Size(3) float[]); - method @NonNull public android.graphics.Color convert(@NonNull android.graphics.ColorSpace); - method @ColorLong public static long convert(@ColorInt int, @NonNull android.graphics.ColorSpace); - method @ColorLong public static long convert(@ColorLong long, @NonNull android.graphics.ColorSpace); - method @ColorLong public static long convert(float, float, float, float, @NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace); - method @ColorLong public static long convert(@ColorLong long, @NonNull android.graphics.ColorSpace.Connector); - method @ColorLong public static long convert(float, float, float, float, @NonNull android.graphics.ColorSpace.Connector); - method @NonNull public android.graphics.ColorSpace getColorSpace(); - method public float getComponent(@IntRange(from=0, to=4) int); - method @IntRange(from=4, to=5) public int getComponentCount(); - method @NonNull @Size(min=4, max=5) public float[] getComponents(); - method @NonNull @Size(min=4) public float[] getComponents(@Nullable @Size(min=4) float[]); - method public android.graphics.ColorSpace.Model getModel(); - method public float green(); - method public static float green(@ColorLong long); - method @IntRange(from=0, to=255) public static int green(int); - method public static boolean isInColorSpace(@ColorLong long, @NonNull android.graphics.ColorSpace); - method public boolean isSrgb(); - method public static boolean isSrgb(@ColorLong long); - method public boolean isWideGamut(); - method public static boolean isWideGamut(@ColorLong long); - method public float luminance(); - method public static float luminance(@ColorLong long); - method public static float luminance(@ColorInt int); - method @ColorLong public long pack(); - method @ColorLong public static long pack(@ColorInt int); - method @ColorLong public static long pack(float, float, float); - method @ColorLong public static long pack(float, float, float, float); - method @ColorLong public static long pack(float, float, float, float, @NonNull android.graphics.ColorSpace); - method @ColorInt public static int parseColor(@Size(min=1) String); - method public float red(); - method public static float red(@ColorLong long); - method @IntRange(from=0, to=255) public static int red(int); - method @ColorInt public static int rgb(@IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int); - method @ColorInt public static int rgb(float, float, float); - method @ColorInt public int toArgb(); - method @ColorInt public static int toArgb(@ColorLong long); - method @NonNull public static android.graphics.Color valueOf(@ColorInt int); - method @NonNull public static android.graphics.Color valueOf(@ColorLong long); - method @NonNull public static android.graphics.Color valueOf(float, float, float); - method @NonNull public static android.graphics.Color valueOf(float, float, float, float); - method @NonNull public static android.graphics.Color valueOf(float, float, float, float, @NonNull android.graphics.ColorSpace); - method @NonNull public static android.graphics.Color valueOf(@NonNull @Size(min=4, max=5) float[], @NonNull android.graphics.ColorSpace); - field @ColorInt public static final int BLACK = -16777216; // 0xff000000 - field @ColorInt public static final int BLUE = -16776961; // 0xff0000ff - field @ColorInt public static final int CYAN = -16711681; // 0xff00ffff - field @ColorInt public static final int DKGRAY = -12303292; // 0xff444444 - field @ColorInt public static final int GRAY = -7829368; // 0xff888888 - field @ColorInt public static final int GREEN = -16711936; // 0xff00ff00 - field @ColorInt public static final int LTGRAY = -3355444; // 0xffcccccc - field @ColorInt public static final int MAGENTA = -65281; // 0xffff00ff - field @ColorInt public static final int RED = -65536; // 0xffff0000 - field @ColorInt public static final int TRANSPARENT = 0; // 0x0 - field @ColorInt public static final int WHITE = -1; // 0xffffffff - field @ColorInt public static final int YELLOW = -256; // 0xffffff00 - } - - public class ColorFilter { - ctor @Deprecated public ColorFilter(); - } - - public class ColorMatrixColorFilter extends android.graphics.ColorFilter { - ctor public ColorMatrixColorFilter(@NonNull android.graphics.ColorMatrix); - ctor public ColorMatrixColorFilter(@NonNull float[]); - method public void getColorMatrix(android.graphics.ColorMatrix); - } - - @AnyThread public abstract class ColorSpace { - method @NonNull public static android.graphics.ColorSpace adapt(@NonNull android.graphics.ColorSpace, @NonNull @Size(min=2, max=3) float[]); - method @NonNull public static android.graphics.ColorSpace adapt(@NonNull android.graphics.ColorSpace, @NonNull @Size(min=2, max=3) float[], @NonNull android.graphics.ColorSpace.Adaptation); - method @NonNull @Size(3) public static float[] cctToXyz(@IntRange(from=1) int); - method @NonNull @Size(9) public static float[] chromaticAdaptation(@NonNull android.graphics.ColorSpace.Adaptation, @NonNull @Size(min=2, max=3) float[], @NonNull @Size(min=2, max=3) float[]); - method @NonNull public static android.graphics.ColorSpace.Connector connect(@NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace); - method @NonNull public static android.graphics.ColorSpace.Connector connect(@NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace.RenderIntent); - method @NonNull public static android.graphics.ColorSpace.Connector connect(@NonNull android.graphics.ColorSpace); - method @NonNull public static android.graphics.ColorSpace.Connector connect(@NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace.RenderIntent); - method @NonNull @Size(min=3) public float[] fromXyz(float, float, float); - method @NonNull @Size(min=3) public abstract float[] fromXyz(@NonNull @Size(min=3) float[]); - method @NonNull public static android.graphics.ColorSpace get(@NonNull android.graphics.ColorSpace.Named); - method @IntRange(from=1, to=4) public int getComponentCount(); - method public int getDataSpace(); - method @Nullable public static android.graphics.ColorSpace getFromDataSpace(int); - method @IntRange(from=android.graphics.ColorSpace.MIN_ID, to=android.graphics.ColorSpace.MAX_ID) public int getId(); - method public abstract float getMaxValue(@IntRange(from=0, to=3) int); - method public abstract float getMinValue(@IntRange(from=0, to=3) int); - method @NonNull public android.graphics.ColorSpace.Model getModel(); - method @NonNull public String getName(); - method public boolean isSrgb(); - method public abstract boolean isWideGamut(); - method @Nullable public static android.graphics.ColorSpace match(@NonNull @Size(9) float[], @NonNull android.graphics.ColorSpace.Rgb.TransferParameters); - method @NonNull @Size(3) public float[] toXyz(float, float, float); - method @NonNull @Size(min=3) public abstract float[] toXyz(@NonNull @Size(min=3) float[]); - field public static final float[] ILLUMINANT_A; - field public static final float[] ILLUMINANT_B; - field public static final float[] ILLUMINANT_C; - field public static final float[] ILLUMINANT_D50; - field public static final float[] ILLUMINANT_D55; - field public static final float[] ILLUMINANT_D60; - field public static final float[] ILLUMINANT_D65; - field public static final float[] ILLUMINANT_D75; - field public static final float[] ILLUMINANT_E; - field public static final int MAX_ID = 63; // 0x3f - field public static final int MIN_ID = -1; // 0xffffffff - } - - public enum ColorSpace.Adaptation { - enum_constant public static final android.graphics.ColorSpace.Adaptation BRADFORD; - enum_constant public static final android.graphics.ColorSpace.Adaptation CIECAT02; - enum_constant public static final android.graphics.ColorSpace.Adaptation VON_KRIES; - } - - @AnyThread public static class ColorSpace.Connector { - method @NonNull public android.graphics.ColorSpace getDestination(); - method public android.graphics.ColorSpace.RenderIntent getRenderIntent(); - method @NonNull public android.graphics.ColorSpace getSource(); - method @NonNull @Size(3) public float[] transform(float, float, float); - method @NonNull @Size(min=3) public float[] transform(@NonNull @Size(min=3) float[]); - } - - public enum ColorSpace.Model { - method @IntRange(from=1, to=4) public int getComponentCount(); - enum_constant public static final android.graphics.ColorSpace.Model CMYK; - enum_constant public static final android.graphics.ColorSpace.Model LAB; - enum_constant public static final android.graphics.ColorSpace.Model RGB; - enum_constant public static final android.graphics.ColorSpace.Model XYZ; - } - - public enum ColorSpace.Named { - enum_constant public static final android.graphics.ColorSpace.Named ACES; - enum_constant public static final android.graphics.ColorSpace.Named ACESCG; - enum_constant public static final android.graphics.ColorSpace.Named ADOBE_RGB; - enum_constant public static final android.graphics.ColorSpace.Named BT2020; - enum_constant public static final android.graphics.ColorSpace.Named BT2020_HLG; - enum_constant public static final android.graphics.ColorSpace.Named BT2020_PQ; - enum_constant public static final android.graphics.ColorSpace.Named BT709; - enum_constant public static final android.graphics.ColorSpace.Named CIE_LAB; - enum_constant public static final android.graphics.ColorSpace.Named CIE_XYZ; - enum_constant public static final android.graphics.ColorSpace.Named DCI_P3; - enum_constant @FlaggedApi("com.android.graphics.flags.display_bt2020_colorspace") public static final android.graphics.ColorSpace.Named DISPLAY_BT2020; - enum_constant public static final android.graphics.ColorSpace.Named DISPLAY_P3; - enum_constant public static final android.graphics.ColorSpace.Named EXTENDED_SRGB; - enum_constant public static final android.graphics.ColorSpace.Named LINEAR_EXTENDED_SRGB; - enum_constant public static final android.graphics.ColorSpace.Named LINEAR_SRGB; - enum_constant public static final android.graphics.ColorSpace.Named NTSC_1953; - enum_constant @FlaggedApi("com.android.graphics.flags.ok_lab_colorspace") public static final android.graphics.ColorSpace.Named OK_LAB; - enum_constant public static final android.graphics.ColorSpace.Named PRO_PHOTO_RGB; - enum_constant public static final android.graphics.ColorSpace.Named SMPTE_C; - enum_constant public static final android.graphics.ColorSpace.Named SRGB; - } - - public enum ColorSpace.RenderIntent { - enum_constant public static final android.graphics.ColorSpace.RenderIntent ABSOLUTE; - enum_constant public static final android.graphics.ColorSpace.RenderIntent PERCEPTUAL; - enum_constant public static final android.graphics.ColorSpace.RenderIntent RELATIVE; - enum_constant public static final android.graphics.ColorSpace.RenderIntent SATURATION; - } - - @AnyThread public static class ColorSpace.Rgb extends android.graphics.ColorSpace { - ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(9) float[], @NonNull java.util.function.DoubleUnaryOperator, @NonNull java.util.function.DoubleUnaryOperator); - ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(min=6, max=9) float[], @NonNull @Size(min=2, max=3) float[], @NonNull java.util.function.DoubleUnaryOperator, @NonNull java.util.function.DoubleUnaryOperator, float, float); - ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(9) float[], @NonNull android.graphics.ColorSpace.Rgb.TransferParameters); - ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(min=6, max=9) float[], @NonNull @Size(min=2, max=3) float[], @NonNull android.graphics.ColorSpace.Rgb.TransferParameters); - ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(9) float[], double); - ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(min=6, max=9) float[], @NonNull @Size(min=2, max=3) float[], double); - method @NonNull @Size(3) public float[] fromLinear(float, float, float); - method @NonNull @Size(min=3) public float[] fromLinear(@NonNull @Size(min=3) float[]); - method @NonNull @Size(min=3) public float[] fromXyz(@NonNull @Size(min=3) float[]); - method @NonNull public java.util.function.DoubleUnaryOperator getEotf(); - method @NonNull @Size(min=9) public float[] getInverseTransform(@NonNull @Size(min=9) float[]); - method @NonNull @Size(9) public float[] getInverseTransform(); - method public float getMaxValue(int); - method public float getMinValue(int); - method @NonNull public java.util.function.DoubleUnaryOperator getOetf(); - method @NonNull @Size(min=6) public float[] getPrimaries(@NonNull @Size(min=6) float[]); - method @NonNull @Size(6) public float[] getPrimaries(); - method @Nullable public android.graphics.ColorSpace.Rgb.TransferParameters getTransferParameters(); - method @NonNull @Size(min=9) public float[] getTransform(@NonNull @Size(min=9) float[]); - method @NonNull @Size(9) public float[] getTransform(); - method @NonNull @Size(min=2) public float[] getWhitePoint(@NonNull @Size(min=2) float[]); - method @NonNull @Size(2) public float[] getWhitePoint(); - method public boolean isWideGamut(); - method @NonNull @Size(3) public float[] toLinear(float, float, float); - method @NonNull @Size(min=3) public float[] toLinear(@NonNull @Size(min=3) float[]); - method @NonNull @Size(min=3) public float[] toXyz(@NonNull @Size(min=3) float[]); - } - - public static class ColorSpace.Rgb.TransferParameters { - ctor public ColorSpace.Rgb.TransferParameters(double, double, double, double, double); - ctor public ColorSpace.Rgb.TransferParameters(double, double, double, double, double, double, double); - field public final double a; - field public final double b; - field public final double c; - field public final double d; - field public final double e; - field public final double f; - field public final double g; - } - - public class ComposePathEffect extends android.graphics.PathEffect { - ctor public ComposePathEffect(android.graphics.PathEffect, android.graphics.PathEffect); - } - - public class ComposeShader extends android.graphics.Shader { - ctor @Deprecated public ComposeShader(@NonNull android.graphics.Shader, @NonNull android.graphics.Shader, @NonNull android.graphics.Xfermode); - ctor public ComposeShader(@NonNull android.graphics.Shader, @NonNull android.graphics.Shader, @NonNull android.graphics.PorterDuff.Mode); - ctor public ComposeShader(@NonNull android.graphics.Shader, @NonNull android.graphics.Shader, @NonNull android.graphics.BlendMode); - } - - public class CornerPathEffect extends android.graphics.PathEffect { - ctor public CornerPathEffect(float); - } - - public class DashPathEffect extends android.graphics.PathEffect { - ctor public DashPathEffect(float[], float); - } - - public class DiscretePathEffect extends android.graphics.PathEffect { - ctor public DiscretePathEffect(float, float); - } - - public class DrawFilter { - ctor public DrawFilter(); - } - - public class EmbossMaskFilter extends android.graphics.MaskFilter { - ctor @Deprecated public EmbossMaskFilter(float[], float, float, float); - } - - public final class Gainmap implements android.os.Parcelable { - ctor public Gainmap(@NonNull android.graphics.Bitmap); - ctor @FlaggedApi("com.android.graphics.hwui.flags.gainmap_constructor_with_metadata") public Gainmap(@NonNull android.graphics.Gainmap, @NonNull android.graphics.Bitmap); - method public int describeContents(); - method @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") @Nullable public android.graphics.ColorSpace getAlternativeImagePrimaries(); - method @NonNull public float getDisplayRatioForFullHdr(); - method @NonNull public float[] getEpsilonHdr(); - method @NonNull public float[] getEpsilonSdr(); - method @NonNull public android.graphics.Bitmap getGainmapContents(); - method @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public int getGainmapDirection(); - method @NonNull public float[] getGamma(); - method @NonNull public float getMinDisplayRatioForHdrTransition(); - method @NonNull public float[] getRatioMax(); - method @NonNull public float[] getRatioMin(); - method @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public void setAlternativeImagePrimaries(@Nullable android.graphics.ColorSpace); - method public void setDisplayRatioForFullHdr(@FloatRange(from=1.0f) float); - method public void setEpsilonHdr(float, float, float); - method public void setEpsilonSdr(float, float, float); - method public void setGainmapContents(@NonNull android.graphics.Bitmap); - method @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public void setGainmapDirection(int); - method public void setGamma(float, float, float); - method public void setMinDisplayRatioForHdrTransition(@FloatRange(from=1.0f) float); - method public void setRatioMax(float, float, float); - method public void setRatioMin(float, float, float); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public static final int GAINMAP_DIRECTION_HDR_TO_SDR = 1; // 0x1 - field @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public static final int GAINMAP_DIRECTION_SDR_TO_HDR = 0; // 0x0 - } - - public class HardwareBufferRenderer implements java.lang.AutoCloseable { - ctor public HardwareBufferRenderer(@NonNull android.hardware.HardwareBuffer); - method public void close(); - method public boolean isClosed(); - method @NonNull public android.graphics.HardwareBufferRenderer.RenderRequest obtainRenderRequest(); - method public void setContentRoot(@Nullable android.graphics.RenderNode); - method public void setLightSourceAlpha(@FloatRange(from=0.0f, to=1.0f) float, @FloatRange(from=0.0f, to=1.0f) float); - method public void setLightSourceGeometry(float, float, @FloatRange(from=0.0f) float, @FloatRange(from=0.0f) float); - } - - public final class HardwareBufferRenderer.RenderRequest { - method public void draw(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @NonNull public android.graphics.HardwareBufferRenderer.RenderRequest setBufferTransform(int); - method @NonNull public android.graphics.HardwareBufferRenderer.RenderRequest setColorSpace(@Nullable android.graphics.ColorSpace); - } - - public static final class HardwareBufferRenderer.RenderResult { - method @NonNull public android.hardware.SyncFence getFence(); - method public int getStatus(); - field public static final int ERROR_UNKNOWN = 1; // 0x1 - field public static final int SUCCESS = 0; // 0x0 - } - - public class HardwareRenderer { - ctor public HardwareRenderer(); - method public void clearContent(); - method @NonNull public android.graphics.HardwareRenderer.FrameRenderRequest createRenderRequest(); - method public void destroy(); - method public static boolean isDrawingEnabled(); - method public boolean isOpaque(); - method public void notifyFramePending(); - method public void setContentRoot(@Nullable android.graphics.RenderNode); - method public static void setDrawingEnabled(boolean); - method public void setLightSourceAlpha(@FloatRange(from=0.0f, to=1.0f) float, @FloatRange(from=0.0f, to=1.0f) float); - method public void setLightSourceGeometry(float, float, float, float); - method public void setName(@NonNull String); - method public void setOpaque(boolean); - method public void setSurface(@Nullable android.view.Surface); - method public void start(); - method public void stop(); - field public static final int SYNC_CONTEXT_IS_STOPPED = 4; // 0x4 - field public static final int SYNC_FRAME_DROPPED = 8; // 0x8 - field public static final int SYNC_LOST_SURFACE_REWARD_IF_FOUND = 2; // 0x2 - field public static final int SYNC_OK = 0; // 0x0 - field public static final int SYNC_REDRAW_REQUESTED = 1; // 0x1 - } - - public final class HardwareRenderer.FrameRenderRequest { - method @NonNull public android.graphics.HardwareRenderer.FrameRenderRequest setFrameCommitCallback(@NonNull java.util.concurrent.Executor, @NonNull Runnable); - method @NonNull public android.graphics.HardwareRenderer.FrameRenderRequest setVsyncTime(long); - method @NonNull public android.graphics.HardwareRenderer.FrameRenderRequest setWaitForPresent(boolean); - method public int syncAndDraw(); - } - - public final class ImageDecoder implements java.lang.AutoCloseable { - method public void close(); - method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull android.content.res.Resources, int); - method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull android.content.ContentResolver, @NonNull android.net.Uri); - method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull android.content.res.AssetManager, @NonNull String); - method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull byte[], int, int) throws java.lang.ArrayIndexOutOfBoundsException; - method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull byte[]); - method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull java.nio.ByteBuffer); - method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull java.io.File); - method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull java.util.concurrent.Callable); - method @NonNull @WorkerThread public static android.graphics.Bitmap decodeBitmap(@NonNull android.graphics.ImageDecoder.Source, @NonNull android.graphics.ImageDecoder.OnHeaderDecodedListener) throws java.io.IOException; - method @NonNull @WorkerThread public static android.graphics.Bitmap decodeBitmap(@NonNull android.graphics.ImageDecoder.Source) throws java.io.IOException; - method @NonNull @WorkerThread public static android.graphics.drawable.Drawable decodeDrawable(@NonNull android.graphics.ImageDecoder.Source, @NonNull android.graphics.ImageDecoder.OnHeaderDecodedListener) throws java.io.IOException; - method @NonNull @WorkerThread public static android.graphics.drawable.Drawable decodeDrawable(@NonNull android.graphics.ImageDecoder.Source) throws java.io.IOException; - method public int getAllocator(); - method @Nullable public android.graphics.Rect getCrop(); - method public int getMemorySizePolicy(); - method @Nullable public android.graphics.ImageDecoder.OnPartialImageListener getOnPartialImageListener(); - method @Nullable public android.graphics.PostProcessor getPostProcessor(); - method public boolean isDecodeAsAlphaMaskEnabled(); - method public static boolean isMimeTypeSupported(@NonNull String); - method public boolean isMutableRequired(); - method public boolean isUnpremultipliedRequired(); - method public void setAllocator(int); - method public void setCrop(@Nullable android.graphics.Rect); - method public void setDecodeAsAlphaMaskEnabled(boolean); - method public void setMemorySizePolicy(int); - method public void setMutableRequired(boolean); - method public void setOnPartialImageListener(@Nullable android.graphics.ImageDecoder.OnPartialImageListener); - method public void setPostProcessor(@Nullable android.graphics.PostProcessor); - method public void setTargetColorSpace(android.graphics.ColorSpace); - method public void setTargetSampleSize(@IntRange(from=1) int); - method public void setTargetSize(@IntRange(from=1) @Px int, @IntRange(from=1) @Px int); - method public void setUnpremultipliedRequired(boolean); - field public static final int ALLOCATOR_DEFAULT = 0; // 0x0 - field public static final int ALLOCATOR_HARDWARE = 3; // 0x3 - field public static final int ALLOCATOR_SHARED_MEMORY = 2; // 0x2 - field public static final int ALLOCATOR_SOFTWARE = 1; // 0x1 - field public static final int MEMORY_POLICY_DEFAULT = 1; // 0x1 - field public static final int MEMORY_POLICY_LOW_RAM = 0; // 0x0 - } - - public static final class ImageDecoder.DecodeException extends java.io.IOException { - method public int getError(); - method @NonNull public android.graphics.ImageDecoder.Source getSource(); - field public static final int SOURCE_EXCEPTION = 1; // 0x1 - field public static final int SOURCE_INCOMPLETE = 2; // 0x2 - field public static final int SOURCE_MALFORMED_DATA = 3; // 0x3 - } - - public static class ImageDecoder.ImageInfo { - method @Nullable public android.graphics.ColorSpace getColorSpace(); - method @NonNull public String getMimeType(); - method @NonNull public android.util.Size getSize(); - method public boolean isAnimated(); - } - - public static interface ImageDecoder.OnHeaderDecodedListener { - method public void onHeaderDecoded(@NonNull android.graphics.ImageDecoder, @NonNull android.graphics.ImageDecoder.ImageInfo, @NonNull android.graphics.ImageDecoder.Source); - } - - public static interface ImageDecoder.OnPartialImageListener { - method public boolean onPartialImage(@NonNull android.graphics.ImageDecoder.DecodeException); - } - - public abstract static class ImageDecoder.Source { - } - - public class ImageFormat { - ctor public ImageFormat(); - method public static int getBitsPerPixel(int); - field public static final int DEPTH16 = 1144402265; // 0x44363159 - field public static final int DEPTH_JPEG = 1768253795; // 0x69656963 - field public static final int DEPTH_POINT_CLOUD = 257; // 0x101 - field public static final int FLEX_RGBA_8888 = 42; // 0x2a - field public static final int FLEX_RGB_888 = 41; // 0x29 - field public static final int HEIC = 1212500294; // 0x48454946 - field @FlaggedApi("com.android.internal.camera.flags.camera_heif_gainmap") public static final int HEIC_ULTRAHDR = 4102; // 0x1006 - field public static final int JPEG = 256; // 0x100 - field public static final int JPEG_R = 4101; // 0x1005 - field public static final int NV16 = 16; // 0x10 - field public static final int NV21 = 17; // 0x11 - field public static final int PRIVATE = 34; // 0x22 - field public static final int RAW10 = 37; // 0x25 - field public static final int RAW12 = 38; // 0x26 - field public static final int RAW_PRIVATE = 36; // 0x24 - field public static final int RAW_SENSOR = 32; // 0x20 - field public static final int RGB_565 = 4; // 0x4 - field public static final int UNKNOWN = 0; // 0x0 - field public static final int Y8 = 538982489; // 0x20203859 - field public static final int YCBCR_P010 = 54; // 0x36 - field @FlaggedApi("android.media.codec.p210_format_support") public static final int YCBCR_P210 = 60; // 0x3c - field public static final int YUV_420_888 = 35; // 0x23 - field public static final int YUV_422_888 = 39; // 0x27 - field public static final int YUV_444_888 = 40; // 0x28 - field public static final int YUY2 = 20; // 0x14 - field public static final int YV12 = 842094169; // 0x32315659 - } - - public final class Insets implements android.os.Parcelable { - method @NonNull public static android.graphics.Insets add(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); - method public int describeContents(); - method @NonNull public static android.graphics.Insets max(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); - method @NonNull public static android.graphics.Insets min(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); - method @NonNull public static android.graphics.Insets of(int, int, int, int); - method @NonNull public static android.graphics.Insets of(@Nullable android.graphics.Rect); - method @NonNull public static android.graphics.Insets subtract(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @NonNull public static final android.graphics.Insets NONE; - field public final int bottom; - field public final int left; - field public final int right; - field public final int top; - } - - public class Interpolator { - ctor public Interpolator(int); - ctor public Interpolator(int, int); - method public final int getKeyFrameCount(); - method public final int getValueCount(); - method public void reset(int); - method public void reset(int, int); - method public void setKeyFrame(int, int, float[]); - method public void setKeyFrame(int, int, float[], float[]); - method public void setRepeatMirror(float, boolean); - method public android.graphics.Interpolator.Result timeToValues(float[]); - method public android.graphics.Interpolator.Result timeToValues(int, float[]); - } - - public enum Interpolator.Result { - enum_constant public static final android.graphics.Interpolator.Result FREEZE_END; - enum_constant public static final android.graphics.Interpolator.Result FREEZE_START; - enum_constant public static final android.graphics.Interpolator.Result NORMAL; - } - - public class LightingColorFilter extends android.graphics.ColorFilter { - ctor public LightingColorFilter(@ColorInt int, @ColorInt int); - method @ColorInt public int getColorAdd(); - method @ColorInt public int getColorMultiply(); - } - - public class LinearGradient extends android.graphics.Shader { - ctor public LinearGradient(float, float, float, float, @ColorInt @NonNull int[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); - ctor public LinearGradient(float, float, float, float, @ColorLong @NonNull long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); - ctor public LinearGradient(float, float, float, float, @ColorInt int, @ColorInt int, @NonNull android.graphics.Shader.TileMode); - ctor public LinearGradient(float, float, float, float, @ColorLong long, @ColorLong long, @NonNull android.graphics.Shader.TileMode); - } - - public class MaskFilter { - ctor public MaskFilter(); - } - - public class Matrix { - ctor public Matrix(); - ctor public Matrix(android.graphics.Matrix); - method public final void dump(@NonNull java.io.PrintWriter); - method public void getValues(float[]); - method public boolean invert(android.graphics.Matrix); - method public boolean isAffine(); - method public boolean isIdentity(); - method public void mapPoints(float[], int, float[], int, int); - method public void mapPoints(float[], float[]); - method public void mapPoints(float[]); - method public float mapRadius(float); - method public boolean mapRect(android.graphics.RectF, android.graphics.RectF); - method public boolean mapRect(android.graphics.RectF); - method public void mapVectors(float[], int, float[], int, int); - method public void mapVectors(float[], float[]); - method public void mapVectors(float[]); - method public boolean postConcat(android.graphics.Matrix); - method public boolean postRotate(float, float, float); - method public boolean postRotate(float); - method public boolean postScale(float, float, float, float); - method public boolean postScale(float, float); - method public boolean postSkew(float, float, float, float); - method public boolean postSkew(float, float); - method public boolean postTranslate(float, float); - method public boolean preConcat(android.graphics.Matrix); - method public boolean preRotate(float, float, float); - method public boolean preRotate(float); - method public boolean preScale(float, float, float, float); - method public boolean preScale(float, float); - method public boolean preSkew(float, float, float, float); - method public boolean preSkew(float, float); - method public boolean preTranslate(float, float); - method public boolean rectStaysRect(); - method public void reset(); - method public void set(android.graphics.Matrix); - method public boolean setConcat(android.graphics.Matrix, android.graphics.Matrix); - method public boolean setPolyToPoly(float[], int, float[], int, int); - method public boolean setRectToRect(android.graphics.RectF, android.graphics.RectF, android.graphics.Matrix.ScaleToFit); - method public void setRotate(float, float, float); - method public void setRotate(float); - method public void setScale(float, float, float, float); - method public void setScale(float, float); - method public void setSinCos(float, float, float, float); - method public void setSinCos(float, float); - method public void setSkew(float, float, float, float); - method public void setSkew(float, float); - method public void setTranslate(float, float); - method public void setValues(float[]); - method public String toShortString(); - field @NonNull public static final android.graphics.Matrix IDENTITY_MATRIX; - field public static final int MPERSP_0 = 6; // 0x6 - field public static final int MPERSP_1 = 7; // 0x7 - field public static final int MPERSP_2 = 8; // 0x8 - field public static final int MSCALE_X = 0; // 0x0 - field public static final int MSCALE_Y = 4; // 0x4 - field public static final int MSKEW_X = 1; // 0x1 - field public static final int MSKEW_Y = 3; // 0x3 - field public static final int MTRANS_X = 2; // 0x2 - field public static final int MTRANS_Y = 5; // 0x5 - } - - public enum Matrix.ScaleToFit { - enum_constant public static final android.graphics.Matrix.ScaleToFit CENTER; - enum_constant public static final android.graphics.Matrix.ScaleToFit END; - enum_constant public static final android.graphics.Matrix.ScaleToFit FILL; - enum_constant public static final android.graphics.Matrix.ScaleToFit START; - } - - @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public class Matrix44 { - ctor @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public Matrix44(); - ctor @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public Matrix44(@NonNull android.graphics.Matrix); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public android.graphics.Matrix44 concat(@NonNull android.graphics.Matrix44); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public float get(@IntRange(from=0, to=3) int, @IntRange(from=0, to=3) int); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void getValues(@NonNull float[]); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public boolean invert(); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public boolean isIdentity(); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public float[] map(float, float, float, float); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void map(float, float, float, float, @NonNull float[]); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void reset(); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public android.graphics.Matrix44 rotate(float, float, float, float); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public android.graphics.Matrix44 scale(float, float, float); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void set(@IntRange(from=0, to=3) int, @IntRange(from=0, to=3) int, float); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void setValues(@NonNull float[]); - method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public android.graphics.Matrix44 translate(float, float, float); - } - - public class Mesh { - ctor public Mesh(@NonNull android.graphics.MeshSpecification, int, @NonNull java.nio.Buffer, int, @NonNull android.graphics.RectF); - ctor public Mesh(@NonNull android.graphics.MeshSpecification, int, @NonNull java.nio.Buffer, int, @NonNull java.nio.ShortBuffer, @NonNull android.graphics.RectF); - method public void setColorUniform(@NonNull String, @ColorInt int); - method public void setColorUniform(@NonNull String, @ColorLong long); - method public void setColorUniform(@NonNull String, @NonNull android.graphics.Color); - method public void setFloatUniform(@NonNull String, float); - method public void setFloatUniform(@NonNull String, float, float); - method public void setFloatUniform(@NonNull String, float, float, float); - method public void setFloatUniform(@NonNull String, float, float, float, float); - method public void setFloatUniform(@NonNull String, @NonNull float[]); - method public void setIntUniform(@NonNull String, int); - method public void setIntUniform(@NonNull String, int, int); - method public void setIntUniform(@NonNull String, int, int, int); - method public void setIntUniform(@NonNull String, int, int, int, int); - method public void setIntUniform(@NonNull String, @NonNull int[]); - field public static final int TRIANGLES = 0; // 0x0 - field public static final int TRIANGLE_STRIP = 1; // 0x1 - } - - public class MeshSpecification { - method @NonNull public static android.graphics.MeshSpecification make(@NonNull @Size(max=8) android.graphics.MeshSpecification.Attribute[], @IntRange(from=1, to=1024) int, @NonNull @Size(max=6) android.graphics.MeshSpecification.Varying[], @NonNull String, @NonNull String); - method @NonNull public static android.graphics.MeshSpecification make(@NonNull @Size(max=8) android.graphics.MeshSpecification.Attribute[], @IntRange(from=1, to=1024) int, @NonNull @Size(max=6) android.graphics.MeshSpecification.Varying[], @NonNull String, @NonNull String, @NonNull android.graphics.ColorSpace); - method @NonNull public static android.graphics.MeshSpecification make(@NonNull @Size(max=8) android.graphics.MeshSpecification.Attribute[], @IntRange(from=1, to=1024) int, @NonNull @Size(max=6) android.graphics.MeshSpecification.Varying[], @NonNull String, @NonNull String, @NonNull android.graphics.ColorSpace, int); - field public static final int ALPHA_TYPE_OPAQUE = 1; // 0x1 - field public static final int ALPHA_TYPE_PREMULTIPLIED = 2; // 0x2 - field public static final int ALPHA_TYPE_UNKNOWN = 0; // 0x0 - field public static final int ALPHA_TYPE_UNPREMULTIPLIED = 3; // 0x3 - field public static final int TYPE_FLOAT = 0; // 0x0 - field public static final int TYPE_FLOAT2 = 1; // 0x1 - field public static final int TYPE_FLOAT3 = 2; // 0x2 - field public static final int TYPE_FLOAT4 = 3; // 0x3 - field public static final int TYPE_UBYTE4 = 4; // 0x4 - } - - public static class MeshSpecification.Attribute { - ctor public MeshSpecification.Attribute(int, int, @NonNull String); - method @NonNull public String getName(); - method public int getOffset(); - method public int getType(); - } - - public static class MeshSpecification.Varying { - ctor public MeshSpecification.Varying(int, @NonNull String); - method @NonNull public String getName(); - method public int getType(); - } - - @Deprecated public class Movie { - method @Deprecated public static android.graphics.Movie decodeByteArray(byte[], int, int); - method @Deprecated public static android.graphics.Movie decodeFile(String); - method @Deprecated public static android.graphics.Movie decodeStream(java.io.InputStream); - method @Deprecated public void draw(android.graphics.Canvas, float, float, android.graphics.Paint); - method @Deprecated public void draw(android.graphics.Canvas, float, float); - method @Deprecated public int duration(); - method @Deprecated public int height(); - method @Deprecated public boolean isOpaque(); - method @Deprecated public boolean setTime(int); - method @Deprecated public int width(); - } - - public class NinePatch { - ctor public NinePatch(android.graphics.Bitmap, byte[]); - ctor public NinePatch(android.graphics.Bitmap, byte[], String); - method public void draw(android.graphics.Canvas, android.graphics.RectF); - method public void draw(android.graphics.Canvas, android.graphics.Rect); - method public void draw(android.graphics.Canvas, android.graphics.Rect, android.graphics.Paint); - method public android.graphics.Bitmap getBitmap(); - method public int getDensity(); - method public int getHeight(); - method public String getName(); - method public android.graphics.Paint getPaint(); - method public final android.graphics.Region getTransparentRegion(android.graphics.Rect); - method public int getWidth(); - method public final boolean hasAlpha(); - method public static boolean isNinePatchChunk(byte[]); - method public void setPaint(android.graphics.Paint); - } - - public final class Outline { - ctor public Outline(); - ctor public Outline(@NonNull android.graphics.Outline); - method public boolean canClip(); - method public float getAlpha(); - method public float getRadius(); - method public boolean getRect(@NonNull android.graphics.Rect); - method public boolean isEmpty(); - method public void offset(int, int); - method public void set(@NonNull android.graphics.Outline); - method public void setAlpha(@FloatRange(from=0.0, to=1.0) float); - method @Deprecated public void setConvexPath(@NonNull android.graphics.Path); - method public void setEmpty(); - method public void setOval(int, int, int, int); - method public void setOval(@NonNull android.graphics.Rect); - method public void setPath(@NonNull android.graphics.Path); - method public void setRect(int, int, int, int); - method public void setRect(@NonNull android.graphics.Rect); - method public void setRoundRect(int, int, int, int, float); - method public void setRoundRect(@NonNull android.graphics.Rect, float); - } - - public class Paint { - ctor public Paint(); - ctor public Paint(int); - ctor public Paint(android.graphics.Paint); - method public float ascent(); - method public int breakText(char[], int, int, float, float[]); - method public int breakText(CharSequence, int, int, boolean, float, float[]); - method public int breakText(String, boolean, float, float[]); - method public void clearShadowLayer(); - method public float descent(); - method public boolean equalsForTextMeasurement(@NonNull android.graphics.Paint); - method public int getAlpha(); - method @Nullable public android.graphics.BlendMode getBlendMode(); - method @ColorInt public int getColor(); - method public android.graphics.ColorFilter getColorFilter(); - method @ColorLong public long getColorLong(); - method public int getEndHyphenEdit(); - method public boolean getFillPath(android.graphics.Path, android.graphics.Path); - method public int getFlags(); - method public String getFontFeatureSettings(); - method public float getFontMetrics(android.graphics.Paint.FontMetrics); - method public android.graphics.Paint.FontMetrics getFontMetrics(); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void getFontMetricsForLocale(@NonNull android.graphics.Paint.FontMetrics); - method public void getFontMetricsInt(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, boolean, @NonNull android.graphics.Paint.FontMetricsInt); - method public void getFontMetricsInt(@NonNull char[], @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, boolean, @NonNull android.graphics.Paint.FontMetricsInt); - method public int getFontMetricsInt(android.graphics.Paint.FontMetricsInt); - method public android.graphics.Paint.FontMetricsInt getFontMetricsInt(); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void getFontMetricsIntForLocale(@NonNull android.graphics.Paint.FontMetricsInt); - method public float getFontSpacing(); - method public String getFontVariationSettings(); - method public int getHinting(); - method public float getLetterSpacing(); - method public android.graphics.MaskFilter getMaskFilter(); - method public int getOffsetForAdvance(char[], int, int, int, int, boolean, float); - method public int getOffsetForAdvance(CharSequence, int, int, int, int, boolean, float); - method public android.graphics.PathEffect getPathEffect(); - method public float getRunAdvance(char[], int, int, int, int, boolean, int); - method public float getRunAdvance(CharSequence, int, int, int, int, boolean, int); - method public float getRunCharacterAdvance(@NonNull char[], int, int, int, int, boolean, int, @Nullable float[], int); - method public float getRunCharacterAdvance(@NonNull CharSequence, int, int, int, int, boolean, int, @Nullable float[], int); - method public android.graphics.Shader getShader(); - method @ColorInt public int getShadowLayerColor(); - method @ColorLong public long getShadowLayerColorLong(); - method public float getShadowLayerDx(); - method public float getShadowLayerDy(); - method public float getShadowLayerRadius(); - method public int getStartHyphenEdit(); - method @Px public float getStrikeThruPosition(); - method @Px public float getStrikeThruThickness(); - method public android.graphics.Paint.Cap getStrokeCap(); - method public android.graphics.Paint.Join getStrokeJoin(); - method public float getStrokeMiter(); - method public float getStrokeWidth(); - method public android.graphics.Paint.Style getStyle(); - method public android.graphics.Paint.Align getTextAlign(); - method public void getTextBounds(String, int, int, android.graphics.Rect); - method public void getTextBounds(@NonNull CharSequence, int, int, @NonNull android.graphics.Rect); - method public void getTextBounds(char[], int, int, android.graphics.Rect); - method @NonNull public java.util.Locale getTextLocale(); - method @NonNull @Size(min=1) public android.os.LocaleList getTextLocales(); - method public void getTextPath(char[], int, int, float, float, android.graphics.Path); - method public void getTextPath(String, int, int, float, float, android.graphics.Path); - method public float getTextRunAdvances(@NonNull char[], @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, boolean, @Nullable float[], @IntRange(from=0) int); - method public int getTextRunCursor(@NonNull char[], @IntRange(from=0) int, @IntRange(from=0) int, boolean, @IntRange(from=0) int, int); - method public int getTextRunCursor(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, boolean, @IntRange(from=0) int, int); - method public float getTextScaleX(); - method public float getTextSize(); - method public float getTextSkewX(); - method public int getTextWidths(char[], int, int, float[]); - method public int getTextWidths(CharSequence, int, int, float[]); - method public int getTextWidths(String, int, int, float[]); - method public int getTextWidths(String, float[]); - method public android.graphics.Typeface getTypeface(); - method @Px public float getUnderlinePosition(); - method @Px public float getUnderlineThickness(); - method @Px public float getWordSpacing(); - method public android.graphics.Xfermode getXfermode(); - method public boolean hasGlyph(String); - method public final boolean isAntiAlias(); - method public final boolean isDither(); - method @Deprecated @FlaggedApi("com.android.text.flags.deprecate_elegant_text_height_api") public boolean isElegantTextHeight(); - method public final boolean isFakeBoldText(); - method public final boolean isFilterBitmap(); - method public final boolean isLinearText(); - method public final boolean isStrikeThruText(); - method public final boolean isSubpixelText(); - method public final boolean isUnderlineText(); - method public float measureText(char[], int, int); - method public float measureText(String, int, int); - method public float measureText(String); - method public float measureText(CharSequence, int, int); - method public void reset(); - method public void set(android.graphics.Paint); - method public void setARGB(int, int, int, int); - method public void setAlpha(int); - method public void setAntiAlias(boolean); - method public void setBlendMode(@Nullable android.graphics.BlendMode); - method public void setColor(@ColorInt int); - method public void setColor(@ColorLong long); - method public android.graphics.ColorFilter setColorFilter(android.graphics.ColorFilter); - method public void setDither(boolean); - method @Deprecated @FlaggedApi("com.android.text.flags.deprecate_elegant_text_height_api") public void setElegantTextHeight(boolean); - method public void setEndHyphenEdit(int); - method public void setFakeBoldText(boolean); - method public void setFilterBitmap(boolean); - method public void setFlags(int); - method public void setFontFeatureSettings(String); - method public boolean setFontVariationSettings(String); - method public void setHinting(int); - method public void setLetterSpacing(float); - method public void setLinearText(boolean); - method public android.graphics.MaskFilter setMaskFilter(android.graphics.MaskFilter); - method public android.graphics.PathEffect setPathEffect(android.graphics.PathEffect); - method public android.graphics.Shader setShader(android.graphics.Shader); - method public void setShadowLayer(float, float, float, @ColorInt int); - method public void setShadowLayer(float, float, float, @ColorLong long); - method public void setStartHyphenEdit(int); - method public void setStrikeThruText(boolean); - method public void setStrokeCap(android.graphics.Paint.Cap); - method public void setStrokeJoin(android.graphics.Paint.Join); - method public void setStrokeMiter(float); - method public void setStrokeWidth(float); - method public void setStyle(android.graphics.Paint.Style); - method public void setSubpixelText(boolean); - method public void setTextAlign(android.graphics.Paint.Align); - method public void setTextLocale(@NonNull java.util.Locale); - method public void setTextLocales(@NonNull @Size(min=1) android.os.LocaleList); - method public void setTextScaleX(float); - method public void setTextSize(float); - method public void setTextSkewX(float); - method public android.graphics.Typeface setTypeface(android.graphics.Typeface); - method public void setUnderlineText(boolean); - method public void setWordSpacing(@Px float); - method public android.graphics.Xfermode setXfermode(android.graphics.Xfermode); - field public static final int ANTI_ALIAS_FLAG = 1; // 0x1 - field public static final int CURSOR_AFTER = 0; // 0x0 - field public static final int CURSOR_AT = 4; // 0x4 - field public static final int CURSOR_AT_OR_AFTER = 1; // 0x1 - field public static final int CURSOR_AT_OR_BEFORE = 3; // 0x3 - field public static final int CURSOR_BEFORE = 2; // 0x2 - field public static final int DEV_KERN_TEXT_FLAG = 256; // 0x100 - field public static final int DITHER_FLAG = 4; // 0x4 - field public static final int EMBEDDED_BITMAP_TEXT_FLAG = 1024; // 0x400 - field public static final int END_HYPHEN_EDIT_INSERT_ARMENIAN_HYPHEN = 3; // 0x3 - field public static final int END_HYPHEN_EDIT_INSERT_HYPHEN = 2; // 0x2 - field public static final int END_HYPHEN_EDIT_INSERT_MAQAF = 4; // 0x4 - field public static final int END_HYPHEN_EDIT_INSERT_UCAS_HYPHEN = 5; // 0x5 - field public static final int END_HYPHEN_EDIT_INSERT_ZWJ_AND_HYPHEN = 6; // 0x6 - field public static final int END_HYPHEN_EDIT_NO_EDIT = 0; // 0x0 - field public static final int END_HYPHEN_EDIT_REPLACE_WITH_HYPHEN = 1; // 0x1 - field public static final int FAKE_BOLD_TEXT_FLAG = 32; // 0x20 - field public static final int FILTER_BITMAP_FLAG = 2; // 0x2 - field public static final int HINTING_OFF = 0; // 0x0 - field public static final int HINTING_ON = 1; // 0x1 - field public static final int LINEAR_TEXT_FLAG = 64; // 0x40 - field public static final int START_HYPHEN_EDIT_INSERT_HYPHEN = 1; // 0x1 - field public static final int START_HYPHEN_EDIT_INSERT_ZWJ = 2; // 0x2 - field public static final int START_HYPHEN_EDIT_NO_EDIT = 0; // 0x0 - field public static final int STRIKE_THRU_TEXT_FLAG = 16; // 0x10 - field public static final int SUBPIXEL_TEXT_FLAG = 128; // 0x80 - field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int TEXT_RUN_FLAG_LEFT_EDGE = 8192; // 0x2000 - field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int TEXT_RUN_FLAG_RIGHT_EDGE = 16384; // 0x4000 - field public static final int UNDERLINE_TEXT_FLAG = 8; // 0x8 - field @FlaggedApi("com.android.text.flags.vertical_text_layout") public static final int VERTICAL_TEXT_FLAG = 4096; // 0x1000 - } - - public enum Paint.Align { - enum_constant public static final android.graphics.Paint.Align CENTER; - enum_constant public static final android.graphics.Paint.Align LEFT; - enum_constant public static final android.graphics.Paint.Align RIGHT; - } - - public enum Paint.Cap { - enum_constant public static final android.graphics.Paint.Cap BUTT; - enum_constant public static final android.graphics.Paint.Cap ROUND; - enum_constant public static final android.graphics.Paint.Cap SQUARE; - } - - public static class Paint.FontMetrics { - ctor public Paint.FontMetrics(); - field public float ascent; - field public float bottom; - field public float descent; - field public float leading; - field public float top; - } - - public static class Paint.FontMetricsInt { - ctor public Paint.FontMetricsInt(); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void set(@NonNull android.graphics.Paint.FontMetricsInt); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void set(@NonNull android.graphics.Paint.FontMetrics); - field public int ascent; - field public int bottom; - field public int descent; - field public int leading; - field public int top; - } - - public enum Paint.Join { - enum_constant public static final android.graphics.Paint.Join BEVEL; - enum_constant public static final android.graphics.Paint.Join MITER; - enum_constant public static final android.graphics.Paint.Join ROUND; - } - - public enum Paint.Style { - enum_constant public static final android.graphics.Paint.Style FILL; - enum_constant public static final android.graphics.Paint.Style FILL_AND_STROKE; - enum_constant public static final android.graphics.Paint.Style STROKE; - } - - public class PaintFlagsDrawFilter extends android.graphics.DrawFilter { - ctor public PaintFlagsDrawFilter(int, int); - } - - public final class ParcelableColorSpace implements android.os.Parcelable { - ctor public ParcelableColorSpace(@NonNull android.graphics.ColorSpace); - method public int describeContents(); - method @NonNull public android.graphics.ColorSpace getColorSpace(); - method public static boolean isParcelable(@NonNull android.graphics.ColorSpace); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class Path { - ctor public Path(); - ctor public Path(@Nullable android.graphics.Path); - method public void addArc(@NonNull android.graphics.RectF, float, float); - method public void addArc(float, float, float, float, float, float); - method public void addCircle(float, float, float, @NonNull android.graphics.Path.Direction); - method public void addOval(@NonNull android.graphics.RectF, @NonNull android.graphics.Path.Direction); - method public void addOval(float, float, float, float, @NonNull android.graphics.Path.Direction); - method public void addPath(@NonNull android.graphics.Path, float, float); - method public void addPath(@NonNull android.graphics.Path); - method public void addPath(@NonNull android.graphics.Path, @NonNull android.graphics.Matrix); - method public void addRect(@NonNull android.graphics.RectF, @NonNull android.graphics.Path.Direction); - method public void addRect(float, float, float, float, @NonNull android.graphics.Path.Direction); - method public void addRoundRect(@NonNull android.graphics.RectF, float, float, @NonNull android.graphics.Path.Direction); - method public void addRoundRect(float, float, float, float, float, float, @NonNull android.graphics.Path.Direction); - method public void addRoundRect(@NonNull android.graphics.RectF, @NonNull float[], @NonNull android.graphics.Path.Direction); - method public void addRoundRect(float, float, float, float, @NonNull float[], @NonNull android.graphics.Path.Direction); - method @NonNull @Size(min=6, multiple=3) public float[] approximate(@FloatRange(from=0) float); - method public void arcTo(@NonNull android.graphics.RectF, float, float, boolean); - method public void arcTo(@NonNull android.graphics.RectF, float, float); - method public void arcTo(float, float, float, float, float, float, boolean); - method public void close(); - method public void computeBounds(@NonNull android.graphics.RectF, boolean); - method @FlaggedApi("com.android.graphics.flags.exact_compute_bounds") public void computeBounds(@NonNull android.graphics.RectF); - method public void conicTo(float, float, float, float, float); - method public void cubicTo(float, float, float, float, float, float); - method @NonNull public android.graphics.Path.FillType getFillType(); - method public int getGenerationId(); - method @NonNull public android.graphics.PathIterator getPathIterator(); - method public void incReserve(int); - method public boolean interpolate(@NonNull android.graphics.Path, float, @NonNull android.graphics.Path); - method @Deprecated public boolean isConvex(); - method public boolean isEmpty(); - method public boolean isInterpolatable(@NonNull android.graphics.Path); - method public boolean isInverseFillType(); - method public boolean isRect(@Nullable android.graphics.RectF); - method public void lineTo(float, float); - method public void moveTo(float, float); - method public void offset(float, float, @Nullable android.graphics.Path); - method public void offset(float, float); - method public boolean op(@NonNull android.graphics.Path, @NonNull android.graphics.Path.Op); - method public boolean op(@NonNull android.graphics.Path, @NonNull android.graphics.Path, @NonNull android.graphics.Path.Op); - method public void quadTo(float, float, float, float); - method public void rConicTo(float, float, float, float, float); - method public void rCubicTo(float, float, float, float, float, float); - method public void rLineTo(float, float); - method public void rMoveTo(float, float); - method public void rQuadTo(float, float, float, float); - method public void reset(); - method public void rewind(); - method public void set(@NonNull android.graphics.Path); - method public void setFillType(@NonNull android.graphics.Path.FillType); - method public void setLastPoint(float, float); - method public void toggleInverseFillType(); - method public void transform(@NonNull android.graphics.Matrix, @Nullable android.graphics.Path); - method public void transform(@NonNull android.graphics.Matrix); - } - - public enum Path.Direction { - enum_constant public static final android.graphics.Path.Direction CCW; - enum_constant public static final android.graphics.Path.Direction CW; - } - - public enum Path.FillType { - enum_constant public static final android.graphics.Path.FillType EVEN_ODD; - enum_constant public static final android.graphics.Path.FillType INVERSE_EVEN_ODD; - enum_constant public static final android.graphics.Path.FillType INVERSE_WINDING; - enum_constant public static final android.graphics.Path.FillType WINDING; - } - - public enum Path.Op { - enum_constant public static final android.graphics.Path.Op DIFFERENCE; - enum_constant public static final android.graphics.Path.Op INTERSECT; - enum_constant public static final android.graphics.Path.Op REVERSE_DIFFERENCE; - enum_constant public static final android.graphics.Path.Op UNION; - enum_constant public static final android.graphics.Path.Op XOR; - } - - public class PathDashPathEffect extends android.graphics.PathEffect { - ctor public PathDashPathEffect(android.graphics.Path, float, float, android.graphics.PathDashPathEffect.Style); - } - - public enum PathDashPathEffect.Style { - enum_constant public static final android.graphics.PathDashPathEffect.Style MORPH; - enum_constant public static final android.graphics.PathDashPathEffect.Style ROTATE; - enum_constant public static final android.graphics.PathDashPathEffect.Style TRANSLATE; - } - - public class PathEffect { - ctor public PathEffect(); - } - - public class PathIterator implements java.util.Iterator { - method public boolean hasNext(); - method @NonNull public int next(@NonNull float[], int); - method @NonNull public android.graphics.PathIterator.Segment next(); - method @NonNull public int peek(); - field public static final int VERB_CLOSE = 5; // 0x5 - field public static final int VERB_CONIC = 3; // 0x3 - field public static final int VERB_CUBIC = 4; // 0x4 - field public static final int VERB_DONE = 6; // 0x6 - field public static final int VERB_LINE = 1; // 0x1 - field public static final int VERB_MOVE = 0; // 0x0 - field public static final int VERB_QUAD = 2; // 0x2 - } - - public static class PathIterator.Segment { - method public float getConicWeight(); - method @NonNull public float[] getPoints(); - method @NonNull public int getVerb(); - } - - public class PathMeasure { - ctor public PathMeasure(); - ctor public PathMeasure(android.graphics.Path, boolean); - method public float getLength(); - method public boolean getMatrix(float, android.graphics.Matrix, int); - method public boolean getPosTan(float, float[], float[]); - method public boolean getSegment(float, float, android.graphics.Path, boolean); - method public boolean isClosed(); - method public boolean nextContour(); - method public void setPath(android.graphics.Path, boolean); - field public static final int POSITION_MATRIX_FLAG = 1; // 0x1 - field public static final int TANGENT_MATRIX_FLAG = 2; // 0x2 - } - - public class Picture { - ctor public Picture(); - ctor public Picture(android.graphics.Picture); - method @NonNull public android.graphics.Canvas beginRecording(int, int); - method public void draw(@NonNull android.graphics.Canvas); - method public void endRecording(); - method public int getHeight(); - method public int getWidth(); - method public boolean requiresHardwareAcceleration(); - } - - public class PixelFormat { - ctor public PixelFormat(); - method public static boolean formatHasAlpha(int); - method public static void getPixelFormatInfo(int, android.graphics.PixelFormat); - field @Deprecated public static final int A_8 = 8; // 0x8 - field @Deprecated public static final int JPEG = 256; // 0x100 - field @Deprecated public static final int LA_88 = 10; // 0xa - field @Deprecated public static final int L_8 = 9; // 0x9 - field public static final int OPAQUE = -1; // 0xffffffff - field public static final int RGBA_1010102 = 43; // 0x2b - field @Deprecated public static final int RGBA_4444 = 7; // 0x7 - field @Deprecated public static final int RGBA_5551 = 6; // 0x6 - field public static final int RGBA_8888 = 1; // 0x1 - field public static final int RGBA_F16 = 22; // 0x16 - field public static final int RGBX_8888 = 2; // 0x2 - field @Deprecated public static final int RGB_332 = 11; // 0xb - field public static final int RGB_565 = 4; // 0x4 - field public static final int RGB_888 = 3; // 0x3 - field public static final int TRANSLUCENT = -3; // 0xfffffffd - field public static final int TRANSPARENT = -2; // 0xfffffffe - field public static final int UNKNOWN = 0; // 0x0 - field @Deprecated public static final int YCbCr_420_SP = 17; // 0x11 - field @Deprecated public static final int YCbCr_422_I = 20; // 0x14 - field @Deprecated public static final int YCbCr_422_SP = 16; // 0x10 - field public int bitsPerPixel; - field public int bytesPerPixel; - } - - public class Point implements android.os.Parcelable { - ctor public Point(); - ctor public Point(int, int); - ctor public Point(@NonNull android.graphics.Point); - method public int describeContents(); - method public final boolean equals(int, int); - method public final void negate(); - method public final void offset(int, int); - method public void readFromParcel(@NonNull android.os.Parcel); - method public void set(int, int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public int x; - field public int y; - } - - public class PointF implements android.os.Parcelable { - ctor public PointF(); - ctor public PointF(float, float); - ctor public PointF(@NonNull android.graphics.Point); - ctor public PointF(@NonNull android.graphics.PointF); - method public int describeContents(); - method public final boolean equals(float, float); - method public final float length(); - method public static float length(float, float); - method public final void negate(); - method public final void offset(float, float); - method public void readFromParcel(@NonNull android.os.Parcel); - method public final void set(float, float); - method public final void set(@NonNull android.graphics.PointF); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public float x; - field public float y; - } - - public class PorterDuff { - ctor public PorterDuff(); - } - - public enum PorterDuff.Mode { - enum_constant public static final android.graphics.PorterDuff.Mode ADD; - enum_constant public static final android.graphics.PorterDuff.Mode CLEAR; - enum_constant public static final android.graphics.PorterDuff.Mode DARKEN; - enum_constant public static final android.graphics.PorterDuff.Mode DST; - enum_constant public static final android.graphics.PorterDuff.Mode DST_ATOP; - enum_constant public static final android.graphics.PorterDuff.Mode DST_IN; - enum_constant public static final android.graphics.PorterDuff.Mode DST_OUT; - enum_constant public static final android.graphics.PorterDuff.Mode DST_OVER; - enum_constant public static final android.graphics.PorterDuff.Mode LIGHTEN; - enum_constant public static final android.graphics.PorterDuff.Mode MULTIPLY; - enum_constant public static final android.graphics.PorterDuff.Mode OVERLAY; - enum_constant public static final android.graphics.PorterDuff.Mode SCREEN; - enum_constant public static final android.graphics.PorterDuff.Mode SRC; - enum_constant public static final android.graphics.PorterDuff.Mode SRC_ATOP; - enum_constant public static final android.graphics.PorterDuff.Mode SRC_IN; - enum_constant public static final android.graphics.PorterDuff.Mode SRC_OUT; - enum_constant public static final android.graphics.PorterDuff.Mode SRC_OVER; - enum_constant public static final android.graphics.PorterDuff.Mode XOR; - } - - public class PorterDuffColorFilter extends android.graphics.ColorFilter { - ctor public PorterDuffColorFilter(@ColorInt int, @NonNull android.graphics.PorterDuff.Mode); - } - - public class PorterDuffXfermode extends android.graphics.Xfermode { - ctor public PorterDuffXfermode(android.graphics.PorterDuff.Mode); - } - - public interface PostProcessor { - method public int onPostProcess(@NonNull android.graphics.Canvas); - } - - public class RadialGradient extends android.graphics.Shader { - ctor public RadialGradient(float, float, float, @ColorInt @NonNull int[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); - ctor public RadialGradient(float, float, float, @ColorLong @NonNull long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); - ctor public RadialGradient(float, float, @FloatRange(from=0.0f) float, float, float, @FloatRange(from=0.0f, fromInclusive=false) float, @ColorLong @NonNull long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); - ctor public RadialGradient(float, float, float, @ColorInt int, @ColorInt int, @NonNull android.graphics.Shader.TileMode); - ctor public RadialGradient(float, float, float, @ColorLong long, @ColorLong long, @NonNull android.graphics.Shader.TileMode); - } - - public final class RecordingCanvas extends android.graphics.Canvas { - } - - public final class Rect implements android.os.Parcelable { - ctor public Rect(); - ctor public Rect(int, int, int, int); - ctor public Rect(@Nullable android.graphics.Rect); - method public int centerX(); - method public int centerY(); - method public boolean contains(int, int); - method public boolean contains(int, int, int, int); - method public boolean contains(@NonNull android.graphics.Rect); - method public int describeContents(); - method public float exactCenterX(); - method public float exactCenterY(); - method @NonNull public String flattenToString(); - method public int height(); - method public void inset(int, int); - method public void inset(@NonNull android.graphics.Insets); - method public void inset(int, int, int, int); - method @CheckResult public boolean intersect(int, int, int, int); - method @CheckResult public boolean intersect(@NonNull android.graphics.Rect); - method public boolean intersects(int, int, int, int); - method public static boolean intersects(@NonNull android.graphics.Rect, @NonNull android.graphics.Rect); - method public boolean isEmpty(); - method public void offset(int, int); - method public void offsetTo(int, int); - method public void readFromParcel(@NonNull android.os.Parcel); - method public void set(int, int, int, int); - method public void set(@NonNull android.graphics.Rect); - method public void setEmpty(); - method @CheckResult public boolean setIntersect(@NonNull android.graphics.Rect, @NonNull android.graphics.Rect); - method public void sort(); - method @NonNull public String toShortString(); - method @Nullable public static android.graphics.Rect unflattenFromString(@Nullable String); - method public void union(int, int, int, int); - method public void union(@NonNull android.graphics.Rect); - method public void union(int, int); - method public int width(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public int bottom; - field public int left; - field public int right; - field public int top; - } - - public class RectF implements android.os.Parcelable { - ctor public RectF(); - ctor public RectF(float, float, float, float); - ctor public RectF(@Nullable android.graphics.RectF); - ctor public RectF(@Nullable android.graphics.Rect); - method public final float centerX(); - method public final float centerY(); - method public boolean contains(float, float); - method public boolean contains(float, float, float, float); - method public boolean contains(@NonNull android.graphics.RectF); - method public int describeContents(); - method public final float height(); - method public void inset(float, float); - method public boolean intersect(float, float, float, float); - method public boolean intersect(@NonNull android.graphics.RectF); - method public boolean intersects(float, float, float, float); - method public static boolean intersects(@NonNull android.graphics.RectF, @NonNull android.graphics.RectF); - method public final boolean isEmpty(); - method public void offset(float, float); - method public void offsetTo(float, float); - method public void readFromParcel(@NonNull android.os.Parcel); - method public void round(@NonNull android.graphics.Rect); - method public void roundOut(@NonNull android.graphics.Rect); - method public void set(float, float, float, float); - method public void set(@NonNull android.graphics.RectF); - method public void set(@NonNull android.graphics.Rect); - method public void setEmpty(); - method public boolean setIntersect(@NonNull android.graphics.RectF, @NonNull android.graphics.RectF); - method public void sort(); - method @NonNull public String toShortString(); - method public void union(float, float, float, float); - method public void union(@NonNull android.graphics.RectF); - method public void union(float, float); - method public final float width(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public float bottom; - field public float left; - field public float right; - field public float top; - } - - public class Region implements android.os.Parcelable { - ctor public Region(); - ctor public Region(@NonNull android.graphics.Region); - ctor public Region(@NonNull android.graphics.Rect); - ctor public Region(int, int, int, int); - method public boolean contains(int, int); - method public int describeContents(); - method @NonNull public android.graphics.Path getBoundaryPath(); - method public boolean getBoundaryPath(@NonNull android.graphics.Path); - method @NonNull public android.graphics.Rect getBounds(); - method public boolean getBounds(@NonNull android.graphics.Rect); - method public boolean isComplex(); - method public boolean isEmpty(); - method public boolean isRect(); - method public boolean op(@NonNull android.graphics.Rect, @NonNull android.graphics.Region.Op); - method public boolean op(int, int, int, int, @NonNull android.graphics.Region.Op); - method public boolean op(@NonNull android.graphics.Region, @NonNull android.graphics.Region.Op); - method public boolean op(@NonNull android.graphics.Rect, @NonNull android.graphics.Region, @NonNull android.graphics.Region.Op); - method public boolean op(@NonNull android.graphics.Region, @NonNull android.graphics.Region, @NonNull android.graphics.Region.Op); - method public boolean quickContains(@NonNull android.graphics.Rect); - method public boolean quickContains(int, int, int, int); - method public boolean quickReject(@NonNull android.graphics.Rect); - method public boolean quickReject(int, int, int, int); - method public boolean quickReject(android.graphics.Region); - method public boolean set(@NonNull android.graphics.Region); - method public boolean set(@NonNull android.graphics.Rect); - method public boolean set(int, int, int, int); - method public void setEmpty(); - method public boolean setPath(@NonNull android.graphics.Path, @NonNull android.graphics.Region); - method public void translate(int, int); - method public void translate(int, int, android.graphics.Region); - method public final boolean union(@NonNull android.graphics.Rect); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public enum Region.Op { - enum_constant public static final android.graphics.Region.Op DIFFERENCE; - enum_constant public static final android.graphics.Region.Op INTERSECT; - enum_constant public static final android.graphics.Region.Op REPLACE; - enum_constant public static final android.graphics.Region.Op REVERSE_DIFFERENCE; - enum_constant public static final android.graphics.Region.Op UNION; - enum_constant public static final android.graphics.Region.Op XOR; - } - - public class RegionIterator { - ctor public RegionIterator(android.graphics.Region); - method public final boolean next(android.graphics.Rect); - } - - public final class RenderEffect { - method @NonNull public static android.graphics.RenderEffect createBitmapEffect(@NonNull android.graphics.Bitmap); - method @NonNull public static android.graphics.RenderEffect createBitmapEffect(@NonNull android.graphics.Bitmap, @Nullable android.graphics.Rect, @NonNull android.graphics.Rect); - method @NonNull public static android.graphics.RenderEffect createBlendModeEffect(@NonNull android.graphics.RenderEffect, @NonNull android.graphics.RenderEffect, @NonNull android.graphics.BlendMode); - method @NonNull public static android.graphics.RenderEffect createBlurEffect(float, float, @NonNull android.graphics.RenderEffect, @NonNull android.graphics.Shader.TileMode); - method @NonNull public static android.graphics.RenderEffect createBlurEffect(float, float, @NonNull android.graphics.Shader.TileMode); - method @NonNull public static android.graphics.RenderEffect createChainEffect(@NonNull android.graphics.RenderEffect, @NonNull android.graphics.RenderEffect); - method @NonNull public static android.graphics.RenderEffect createColorFilterEffect(@NonNull android.graphics.ColorFilter, @NonNull android.graphics.RenderEffect); - method @NonNull public static android.graphics.RenderEffect createColorFilterEffect(@NonNull android.graphics.ColorFilter); - method @NonNull public static android.graphics.RenderEffect createOffsetEffect(float, float); - method @NonNull public static android.graphics.RenderEffect createOffsetEffect(float, float, @NonNull android.graphics.RenderEffect); - method @NonNull public static android.graphics.RenderEffect createRuntimeShaderEffect(@NonNull android.graphics.RuntimeShader, @NonNull String); - method @NonNull public static android.graphics.RenderEffect createShaderEffect(@NonNull android.graphics.Shader); - } - - public final class RenderNode { - ctor public RenderNode(@Nullable String); - method @NonNull public android.graphics.RecordingCanvas beginRecording(int, int); - method @NonNull public android.graphics.RecordingCanvas beginRecording(); - method public long computeApproximateMemoryUsage(); - method public void discardDisplayList(); - method public void endRecording(); - method public float getAlpha(); - method @ColorInt public int getAmbientShadowColor(); - method public int getBottom(); - method @FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE) public float getCameraDistance(); - method public boolean getClipToBounds(); - method public boolean getClipToOutline(); - method public float getElevation(); - method public int getHeight(); - method public void getInverseMatrix(@NonNull android.graphics.Matrix); - method public int getLeft(); - method public void getMatrix(@NonNull android.graphics.Matrix); - method public float getPivotX(); - method public float getPivotY(); - method public int getRight(); - method public float getRotationX(); - method public float getRotationY(); - method public float getRotationZ(); - method public float getScaleX(); - method public float getScaleY(); - method @ColorInt public int getSpotShadowColor(); - method public int getTop(); - method public float getTranslationX(); - method public float getTranslationY(); - method public float getTranslationZ(); - method public long getUniqueId(); - method public boolean getUseCompositingLayer(); - method public int getWidth(); - method public boolean hasDisplayList(); - method public boolean hasIdentityMatrix(); - method public boolean hasOverlappingRendering(); - method public boolean hasShadow(); - method public boolean isForceDarkAllowed(); - method public boolean isPivotExplicitlySet(); - method public boolean offsetLeftAndRight(int); - method public boolean offsetTopAndBottom(int); - method public boolean resetPivot(); - method public boolean setAlpha(float); - method public boolean setAmbientShadowColor(@ColorInt int); - method public boolean setCameraDistance(@FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE) float); - method public boolean setClipRect(@Nullable android.graphics.Rect); - method public boolean setClipToBounds(boolean); - method public boolean setClipToOutline(boolean); - method public boolean setElevation(float); - method public boolean setForceDarkAllowed(boolean); - method public boolean setHasOverlappingRendering(boolean); - method public boolean setOutline(@Nullable android.graphics.Outline); - method public boolean setPivotX(float); - method public boolean setPivotY(float); - method public boolean setPosition(int, int, int, int); - method public boolean setPosition(@NonNull android.graphics.Rect); - method public boolean setProjectBackwards(boolean); - method public boolean setProjectionReceiver(boolean); - method public boolean setRenderEffect(@Nullable android.graphics.RenderEffect); - method public boolean setRotationX(float); - method public boolean setRotationY(float); - method public boolean setRotationZ(float); - method public boolean setScaleX(float); - method public boolean setScaleY(float); - method public boolean setSpotShadowColor(@ColorInt int); - method public boolean setTranslationX(float); - method public boolean setTranslationY(float); - method public boolean setTranslationZ(float); - method public boolean setUseCompositingLayer(boolean, @Nullable android.graphics.Paint); - } - - @FlaggedApi("com.android.graphics.hwui.flags.runtime_color_filters_blenders") public class RuntimeColorFilter extends android.graphics.ColorFilter { - ctor public RuntimeColorFilter(@NonNull String); - method public void setColorUniform(@NonNull String, @ColorInt int); - method public void setColorUniform(@NonNull String, @ColorLong long); - method public void setColorUniform(@NonNull String, @NonNull android.graphics.Color); - method public void setFloatUniform(@NonNull String, float); - method public void setFloatUniform(@NonNull String, float, float); - method public void setFloatUniform(@NonNull String, float, float, float); - method public void setFloatUniform(@NonNull String, float, float, float, float); - method public void setFloatUniform(@NonNull String, @NonNull float[]); - method public void setInputColorFilter(@NonNull String, @NonNull android.graphics.ColorFilter); - method public void setInputShader(@NonNull String, @NonNull android.graphics.Shader); - method public void setInputXfermode(@NonNull String, @NonNull android.graphics.RuntimeXfermode); - method public void setIntUniform(@NonNull String, int); - method public void setIntUniform(@NonNull String, int, int); - method public void setIntUniform(@NonNull String, int, int, int); - method public void setIntUniform(@NonNull String, int, int, int, int); - method public void setIntUniform(@NonNull String, @NonNull int[]); - } - - public class RuntimeShader extends android.graphics.Shader { - ctor public RuntimeShader(@NonNull String); - method public void setColorUniform(@NonNull String, @ColorInt int); - method public void setColorUniform(@NonNull String, @ColorLong long); - method public void setColorUniform(@NonNull String, @NonNull android.graphics.Color); - method public void setFloatUniform(@NonNull String, float); - method public void setFloatUniform(@NonNull String, float, float); - method public void setFloatUniform(@NonNull String, float, float, float); - method public void setFloatUniform(@NonNull String, float, float, float, float); - method public void setFloatUniform(@NonNull String, @NonNull float[]); - method public void setInputBuffer(@NonNull String, @NonNull android.graphics.BitmapShader); - method @FlaggedApi("com.android.graphics.hwui.flags.runtime_color_filters_blenders") public void setInputColorFilter(@NonNull String, @NonNull android.graphics.ColorFilter); - method public void setInputShader(@NonNull String, @NonNull android.graphics.Shader); - method @FlaggedApi("com.android.graphics.hwui.flags.runtime_color_filters_blenders") public void setInputXfermode(@NonNull String, @NonNull android.graphics.RuntimeXfermode); - method public void setIntUniform(@NonNull String, int); - method public void setIntUniform(@NonNull String, int, int); - method public void setIntUniform(@NonNull String, int, int, int); - method public void setIntUniform(@NonNull String, int, int, int, int); - method public void setIntUniform(@NonNull String, @NonNull int[]); - } - - @FlaggedApi("com.android.graphics.hwui.flags.runtime_color_filters_blenders") public class RuntimeXfermode extends android.graphics.Xfermode { - ctor public RuntimeXfermode(@NonNull String); - method public void setColorUniform(@NonNull String, @ColorInt int); - method public void setColorUniform(@NonNull String, @ColorLong long); - method public void setColorUniform(@NonNull String, @NonNull android.graphics.Color); - method public void setFloatUniform(@NonNull String, float); - method public void setFloatUniform(@NonNull String, float, float); - method public void setFloatUniform(@NonNull String, float, float, float); - method public void setFloatUniform(@NonNull String, float, float, float, float); - method public void setFloatUniform(@NonNull String, @NonNull float[]); - method public void setInputColorFilter(@NonNull String, @NonNull android.graphics.ColorFilter); - method public void setInputShader(@NonNull String, @NonNull android.graphics.Shader); - method public void setInputXfermode(@NonNull String, @NonNull android.graphics.RuntimeXfermode); - method public void setIntUniform(@NonNull String, int); - method public void setIntUniform(@NonNull String, int, int); - method public void setIntUniform(@NonNull String, int, int, int); - method public void setIntUniform(@NonNull String, int, int, int, int); - method public void setIntUniform(@NonNull String, @NonNull int[]); - } - - public class Shader { - ctor @Deprecated public Shader(); - method public boolean getLocalMatrix(@NonNull android.graphics.Matrix); - method public void setLocalMatrix(@Nullable android.graphics.Matrix); - } - - public enum Shader.TileMode { - enum_constant public static final android.graphics.Shader.TileMode CLAMP; - enum_constant public static final android.graphics.Shader.TileMode DECAL; - enum_constant public static final android.graphics.Shader.TileMode MIRROR; - enum_constant public static final android.graphics.Shader.TileMode REPEAT; - } - - public class SumPathEffect extends android.graphics.PathEffect { - ctor public SumPathEffect(android.graphics.PathEffect, android.graphics.PathEffect); - } - - public class SurfaceTexture { - ctor public SurfaceTexture(int); - ctor public SurfaceTexture(int, boolean); - ctor public SurfaceTexture(boolean); - method public void attachToGLContext(int); - method public void detachFromGLContext(); - method public int getDataSpace(); - method public long getTimestamp(); - method public void getTransformMatrix(float[]); - method public boolean isReleased(); - method public void release(); - method public void releaseTexImage(); - method public void setDefaultBufferSize(int, int); - method public void setOnFrameAvailableListener(@Nullable android.graphics.SurfaceTexture.OnFrameAvailableListener); - method public void setOnFrameAvailableListener(@Nullable android.graphics.SurfaceTexture.OnFrameAvailableListener, @Nullable android.os.Handler); - method public void updateTexImage(); - } - - public static interface SurfaceTexture.OnFrameAvailableListener { - method public void onFrameAvailable(android.graphics.SurfaceTexture); - } - - @Deprecated public static class SurfaceTexture.OutOfResourcesException extends java.lang.Exception { - ctor @Deprecated public SurfaceTexture.OutOfResourcesException(); - ctor @Deprecated public SurfaceTexture.OutOfResourcesException(String); - } - - public class SweepGradient extends android.graphics.Shader { - ctor public SweepGradient(float, float, @ColorInt @NonNull int[], @Nullable float[]); - ctor public SweepGradient(float, float, @ColorLong @NonNull long[], @Nullable float[]); - ctor public SweepGradient(float, float, @ColorInt int, @ColorInt int); - ctor public SweepGradient(float, float, @ColorLong long, @ColorLong long); - } - - public class Typeface { - method public static android.graphics.Typeface create(String, int); - method public static android.graphics.Typeface create(android.graphics.Typeface, int); - method @NonNull public static android.graphics.Typeface create(@Nullable android.graphics.Typeface, @IntRange(from=1, to=1000) int, boolean); - method public static android.graphics.Typeface createFromAsset(android.content.res.AssetManager, String); - method public static android.graphics.Typeface createFromFile(@Nullable java.io.File); - method public static android.graphics.Typeface createFromFile(@Nullable String); - method public static android.graphics.Typeface defaultFromStyle(int); - method public int getStyle(); - method @Nullable public final String getSystemFontFamilyName(); - method @IntRange(from=0, to=1000) public int getWeight(); - method public final boolean isBold(); - method public final boolean isItalic(); - field public static final int BOLD = 1; // 0x1 - field public static final int BOLD_ITALIC = 3; // 0x3 - field public static final android.graphics.Typeface DEFAULT; - field public static final android.graphics.Typeface DEFAULT_BOLD; - field public static final int ITALIC = 2; // 0x2 - field public static final android.graphics.Typeface MONOSPACE; - field public static final int NORMAL = 0; // 0x0 - field public static final android.graphics.Typeface SANS_SERIF; - field public static final android.graphics.Typeface SERIF; - } - - public static final class Typeface.Builder { - ctor public Typeface.Builder(@NonNull java.io.File); - ctor public Typeface.Builder(@NonNull java.io.FileDescriptor); - ctor public Typeface.Builder(@NonNull String); - ctor public Typeface.Builder(@NonNull android.content.res.AssetManager, @NonNull String); - method public android.graphics.Typeface build(); - method public android.graphics.Typeface.Builder setFallback(@Nullable String); - method public android.graphics.Typeface.Builder setFontVariationSettings(@Nullable String); - method public android.graphics.Typeface.Builder setFontVariationSettings(@Nullable android.graphics.fonts.FontVariationAxis[]); - method public android.graphics.Typeface.Builder setItalic(boolean); - method public android.graphics.Typeface.Builder setTtcIndex(@IntRange(from=0) int); - method public android.graphics.Typeface.Builder setWeight(@IntRange(from=1, to=1000) int); - } - - public static final class Typeface.CustomFallbackBuilder { - ctor public Typeface.CustomFallbackBuilder(@NonNull android.graphics.fonts.FontFamily); - method @NonNull public android.graphics.Typeface.CustomFallbackBuilder addCustomFallback(@NonNull android.graphics.fonts.FontFamily); - method @NonNull public android.graphics.Typeface build(); - method @IntRange(from=64) public static int getMaxCustomFallbackCount(); - method @NonNull public android.graphics.Typeface.CustomFallbackBuilder setStyle(@NonNull android.graphics.fonts.FontStyle); - method @NonNull public android.graphics.Typeface.CustomFallbackBuilder setSystemFallback(@NonNull String); - } - - public class Xfermode { - ctor public Xfermode(); - } - - public class YuvImage { - ctor public YuvImage(byte[], int, int, int, int[]); - ctor public YuvImage(@NonNull byte[], int, int, int, @Nullable int[], @NonNull android.graphics.ColorSpace); - method public boolean compressToJpeg(android.graphics.Rect, int, java.io.OutputStream); - method public boolean compressToJpegR(@NonNull android.graphics.YuvImage, int, @NonNull java.io.OutputStream); - method @FlaggedApi("com.android.graphics.flags.yuv_image_compress_to_ultra_hdr") public boolean compressToJpegR(@NonNull android.graphics.YuvImage, int, @NonNull java.io.OutputStream, @NonNull byte[]); - method @NonNull public android.graphics.ColorSpace getColorSpace(); - method public int getHeight(); - method public int[] getStrides(); - method public int getWidth(); - method public byte[] getYuvData(); - method public int getYuvFormat(); - } - -} - -package android.graphics.drawable { - - public class AdaptiveIconDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { - ctor public AdaptiveIconDrawable(android.graphics.drawable.Drawable, android.graphics.drawable.Drawable); - ctor public AdaptiveIconDrawable(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); - method public void draw(android.graphics.Canvas); - method public android.graphics.drawable.Drawable getBackground(); - method public static float getExtraInsetFraction(); - method public android.graphics.drawable.Drawable getForeground(); - method public android.graphics.Path getIconMask(); - method @Nullable public android.graphics.drawable.Drawable getMonochrome(); - method public int getOpacity(); - method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); - method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); - method public void setAlpha(int); - method public void setColorFilter(android.graphics.ColorFilter); - method public void setDither(boolean); - method public void setOpacity(int); - method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); - } - - public interface Animatable { - method public boolean isRunning(); - method public void start(); - method public void stop(); - } - - public interface Animatable2 extends android.graphics.drawable.Animatable { - method public void clearAnimationCallbacks(); - method public void registerAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); - method public boolean unregisterAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); - } - - public abstract static class Animatable2.AnimationCallback { - ctor public Animatable2.AnimationCallback(); - method public void onAnimationEnd(android.graphics.drawable.Drawable); - method public void onAnimationStart(android.graphics.drawable.Drawable); - } - - public class AnimatedImageDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Animatable2 { - ctor public AnimatedImageDrawable(); - method public void clearAnimationCallbacks(); - method public void draw(@NonNull android.graphics.Canvas); - method public int getOpacity(); - method public int getRepeatCount(); - method public final boolean isAutoMirrored(); - method public boolean isRunning(); - method public void registerAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); - method public void setAlpha(@IntRange(from=0, to=255) int); - method public void setColorFilter(@Nullable android.graphics.ColorFilter); - method public void setRepeatCount(@IntRange(from=android.graphics.drawable.AnimatedImageDrawable.REPEAT_INFINITE) int); - method public void start(); - method public void stop(); - method public boolean unregisterAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); - field public static final int REPEAT_INFINITE = -1; // 0xffffffff - } - - public class AnimatedStateListDrawable extends android.graphics.drawable.StateListDrawable { - ctor public AnimatedStateListDrawable(); - method public void addState(@NonNull int[], @NonNull android.graphics.drawable.Drawable, int); - method public void addTransition(int, int, @NonNull T, boolean); - } - - public class AnimatedVectorDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Animatable2 { - ctor public AnimatedVectorDrawable(); - method public void clearAnimationCallbacks(); - method public void draw(android.graphics.Canvas); - method public int getOpacity(); - method public boolean isRunning(); - method public void registerAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); - method public void reset(); - method public void setAlpha(int); - method public void setColorFilter(android.graphics.ColorFilter); - method public void start(); - method public void stop(); - method public boolean unregisterAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); - } - - public class AnimationDrawable extends android.graphics.drawable.DrawableContainer implements android.graphics.drawable.Animatable java.lang.Runnable { - ctor public AnimationDrawable(); - method public void addFrame(@NonNull android.graphics.drawable.Drawable, int); - method public int getDuration(int); - method public android.graphics.drawable.Drawable getFrame(int); - method public int getNumberOfFrames(); - method public boolean isOneShot(); - method public boolean isRunning(); - method public void run(); - method public void setOneShot(boolean); - method public void start(); - method public void stop(); - } - - public class BitmapDrawable extends android.graphics.drawable.Drawable { - ctor @Deprecated public BitmapDrawable(); - ctor @Deprecated public BitmapDrawable(android.content.res.Resources); - ctor @Deprecated public BitmapDrawable(android.graphics.Bitmap); - ctor public BitmapDrawable(android.content.res.Resources, android.graphics.Bitmap); - ctor @Deprecated public BitmapDrawable(String); - ctor public BitmapDrawable(android.content.res.Resources, String); - ctor @Deprecated public BitmapDrawable(java.io.InputStream); - ctor public BitmapDrawable(android.content.res.Resources, java.io.InputStream); - method public void draw(android.graphics.Canvas); - method public final android.graphics.Bitmap getBitmap(); - method public final android.graphics.drawable.Drawable.ConstantState getConstantState(); - method public int getGravity(); - method public int getOpacity(); - method public final android.graphics.Paint getPaint(); - method public android.graphics.Shader.TileMode getTileModeX(); - method public android.graphics.Shader.TileMode getTileModeY(); - method public boolean hasAntiAlias(); - method public boolean hasMipMap(); - method public final boolean isAutoMirrored(); - method public void setAlpha(int); - method public void setAntiAlias(boolean); - method public void setBitmap(@Nullable android.graphics.Bitmap); - method public void setColorFilter(android.graphics.ColorFilter); - method public void setDither(boolean); - method public void setGravity(int); - method public void setMipMap(boolean); - method public void setTargetDensity(android.graphics.Canvas); - method public void setTargetDensity(android.util.DisplayMetrics); - method public void setTargetDensity(int); - method public void setTileModeX(android.graphics.Shader.TileMode); - method public void setTileModeXY(android.graphics.Shader.TileMode, android.graphics.Shader.TileMode); - method public final void setTileModeY(android.graphics.Shader.TileMode); - } - - public class ClipDrawable extends android.graphics.drawable.DrawableWrapper { - ctor public ClipDrawable(android.graphics.drawable.Drawable, int, int); - field public static final int HORIZONTAL = 1; // 0x1 - field public static final int VERTICAL = 2; // 0x2 - } - - public class ColorDrawable extends android.graphics.drawable.Drawable { - ctor public ColorDrawable(); - ctor public ColorDrawable(@ColorInt int); - method public void draw(android.graphics.Canvas); - method @ColorInt public int getColor(); - method public int getOpacity(); - method public void setAlpha(int); - method public void setColor(@ColorInt int); - method public void setColorFilter(android.graphics.ColorFilter); - } - - public class ColorStateListDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { - ctor public ColorStateListDrawable(); - ctor public ColorStateListDrawable(@NonNull android.content.res.ColorStateList); - method public void clearAlpha(); - method public void draw(@NonNull android.graphics.Canvas); - method @NonNull public android.content.res.ColorStateList getColorStateList(); - method public int getOpacity(); - method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); - method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); - method public void setAlpha(@IntRange(from=0, to=255) int); - method public void setColorFilter(@Nullable android.graphics.ColorFilter); - method public void setColorStateList(@NonNull android.content.res.ColorStateList); - method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); - } - - public abstract class Drawable { - ctor public Drawable(); - method public void applyTheme(@NonNull android.content.res.Resources.Theme); - method public boolean canApplyTheme(); - method public void clearColorFilter(); - method public final void copyBounds(@NonNull android.graphics.Rect); - method @NonNull public final android.graphics.Rect copyBounds(); - method @Nullable public static android.graphics.drawable.Drawable createFromPath(String); - method @Nullable public static android.graphics.drawable.Drawable createFromResourceStream(@Nullable android.content.res.Resources, @Nullable android.util.TypedValue, @Nullable java.io.InputStream, @Nullable String); - method @Deprecated @Nullable public static android.graphics.drawable.Drawable createFromResourceStream(@Nullable android.content.res.Resources, @Nullable android.util.TypedValue, @Nullable java.io.InputStream, @Nullable String, @Nullable android.graphics.BitmapFactory.Options); - method @Nullable public static android.graphics.drawable.Drawable createFromStream(@Nullable java.io.InputStream, @Nullable String); - method @NonNull public static android.graphics.drawable.Drawable createFromXml(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method @NonNull public static android.graphics.drawable.Drawable createFromXml(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @Nullable android.content.res.Resources.Theme) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method @NonNull public static android.graphics.drawable.Drawable createFromXmlInner(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @NonNull android.util.AttributeSet) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method @NonNull public static android.graphics.drawable.Drawable createFromXmlInner(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @NonNull android.util.AttributeSet, @Nullable android.content.res.Resources.Theme) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method public abstract void draw(@NonNull android.graphics.Canvas); - method @IntRange(from=0, to=255) public int getAlpha(); - method @NonNull public final android.graphics.Rect getBounds(); - method @Nullable public android.graphics.drawable.Drawable.Callback getCallback(); - method public int getChangingConfigurations(); - method @Nullable public android.graphics.ColorFilter getColorFilter(); - method @Nullable public android.graphics.drawable.Drawable.ConstantState getConstantState(); - method @NonNull public android.graphics.drawable.Drawable getCurrent(); - method @NonNull public android.graphics.Rect getDirtyBounds(); - method public void getHotspotBounds(@NonNull android.graphics.Rect); - method public int getIntrinsicHeight(); - method public int getIntrinsicWidth(); - method public int getLayoutDirection(); - method @IntRange(from=0, to=10000) public final int getLevel(); - method public int getMinimumHeight(); - method public int getMinimumWidth(); - method @Deprecated public abstract int getOpacity(); - method @NonNull public android.graphics.Insets getOpticalInsets(); - method public void getOutline(@NonNull android.graphics.Outline); - method public boolean getPadding(@NonNull android.graphics.Rect); - method @NonNull public int[] getState(); - method @Nullable public android.graphics.Region getTransparentRegion(); - method public boolean hasFocusStateSpecified(); - method public void inflate(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @NonNull android.util.AttributeSet) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method public void inflate(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @NonNull android.util.AttributeSet, @Nullable android.content.res.Resources.Theme) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method public void invalidateSelf(); - method public boolean isAutoMirrored(); - method public boolean isFilterBitmap(); - method public boolean isProjected(); - method public boolean isStateful(); - method public final boolean isVisible(); - method public void jumpToCurrentState(); - method @NonNull public android.graphics.drawable.Drawable mutate(); - method protected void onBoundsChange(@NonNull android.graphics.Rect); - method public boolean onLayoutDirectionChanged(int); - method protected boolean onLevelChange(int); - method protected boolean onStateChange(@NonNull int[]); - method public static int resolveOpacity(int, int); - method public void scheduleSelf(@NonNull Runnable, long); - method public abstract void setAlpha(@IntRange(from=0, to=255) int); - method public void setAutoMirrored(boolean); - method public void setBounds(int, int, int, int); - method public void setBounds(@NonNull android.graphics.Rect); - method public final void setCallback(@Nullable android.graphics.drawable.Drawable.Callback); - method public void setChangingConfigurations(int); - method public abstract void setColorFilter(@Nullable android.graphics.ColorFilter); - method @Deprecated public void setColorFilter(@ColorInt int, @NonNull android.graphics.PorterDuff.Mode); - method @Deprecated public void setDither(boolean); - method public void setFilterBitmap(boolean); - method public void setHotspot(float, float); - method public void setHotspotBounds(int, int, int, int); - method public final boolean setLayoutDirection(int); - method public final boolean setLevel(@IntRange(from=0, to=10000) int); - method public boolean setState(@NonNull int[]); - method public void setTint(@ColorInt int); - method public void setTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setTintList(@Nullable android.content.res.ColorStateList); - method public void setTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public boolean setVisible(boolean, boolean); - method public void unscheduleSelf(@NonNull Runnable); - } - - public static interface Drawable.Callback { - method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); - method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); - method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); - } - - public abstract static class Drawable.ConstantState { - ctor public Drawable.ConstantState(); - method public boolean canApplyTheme(); - method public abstract int getChangingConfigurations(); - method @NonNull public abstract android.graphics.drawable.Drawable newDrawable(); - method @NonNull public android.graphics.drawable.Drawable newDrawable(@Nullable android.content.res.Resources); - method @NonNull public android.graphics.drawable.Drawable newDrawable(@Nullable android.content.res.Resources, @Nullable android.content.res.Resources.Theme); - } - - public class DrawableContainer extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { - ctor public DrawableContainer(); - method public void draw(android.graphics.Canvas); - method public int getOpacity(); - method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); - method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); - method public boolean selectDrawable(int); - method public void setAlpha(int); - method public void setColorFilter(android.graphics.ColorFilter); - method protected void setConstantState(android.graphics.drawable.DrawableContainer.DrawableContainerState); - method public void setDither(boolean); - method public void setEnterFadeDuration(int); - method public void setExitFadeDuration(int); - method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); - } - - public abstract static class DrawableContainer.DrawableContainerState extends android.graphics.drawable.Drawable.ConstantState { - method public final int addChild(android.graphics.drawable.Drawable); - method public boolean canConstantState(); - method protected void computeConstantSize(); - method public int getChangingConfigurations(); - method public final android.graphics.drawable.Drawable getChild(int); - method public final int getChildCount(); - method public final android.graphics.drawable.Drawable[] getChildren(); - method public final int getConstantHeight(); - method public final int getConstantMinimumHeight(); - method public final int getConstantMinimumWidth(); - method public final android.graphics.Rect getConstantPadding(); - method public final int getConstantWidth(); - method public final int getEnterFadeDuration(); - method public final int getExitFadeDuration(); - method public final int getOpacity(); - method public void growArray(int, int); - method public final boolean isConstantSize(); - method public final boolean isStateful(); - method public final void setConstantSize(boolean); - method public final void setEnterFadeDuration(int); - method public final void setExitFadeDuration(int); - method public final void setVariablePadding(boolean); - } - - public abstract class DrawableWrapper extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { - ctor public DrawableWrapper(@Nullable android.graphics.drawable.Drawable); - method public void draw(@NonNull android.graphics.Canvas); - method @Nullable public android.graphics.drawable.Drawable getDrawable(); - method public int getOpacity(); - method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); - method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); - method public void setAlpha(int); - method public void setColorFilter(@Nullable android.graphics.ColorFilter); - method public void setDrawable(@Nullable android.graphics.drawable.Drawable); - method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); - } - - public class GradientDrawable extends android.graphics.drawable.Drawable { - ctor public GradientDrawable(); - ctor public GradientDrawable(android.graphics.drawable.GradientDrawable.Orientation, @ColorInt int[]); - method public void draw(android.graphics.Canvas); - method @Nullable public android.content.res.ColorStateList getColor(); - method @Nullable public int[] getColors(); - method @Nullable public float[] getCornerRadii(); - method public float getCornerRadius(); - method public float getGradientCenterX(); - method public float getGradientCenterY(); - method public float getGradientRadius(); - method public int getGradientType(); - method @Px public int getInnerRadius(); - method public float getInnerRadiusRatio(); - method public int getOpacity(); - method public android.graphics.drawable.GradientDrawable.Orientation getOrientation(); - method public int getShape(); - method @Px public int getThickness(); - method public float getThicknessRatio(); - method public boolean getUseLevel(); - method public void setAlpha(int); - method public void setColor(@ColorInt int); - method public void setColor(@Nullable android.content.res.ColorStateList); - method public void setColorFilter(@Nullable android.graphics.ColorFilter); - method public void setColors(@ColorInt @Nullable int[]); - method public void setColors(@ColorInt @Nullable int[], @Nullable float[]); - method public void setCornerRadii(@Nullable float[]); - method public void setCornerRadius(float); - method public void setDither(boolean); - method public void setGradientCenter(float, float); - method public void setGradientRadius(float); - method public void setGradientType(int); - method public void setInnerRadius(@Px int); - method public void setInnerRadiusRatio(@FloatRange(from=0.0f, fromInclusive=false) float); - method public void setOrientation(android.graphics.drawable.GradientDrawable.Orientation); - method public void setPadding(@Px int, @Px int, @Px int, @Px int); - method public void setShape(int); - method public void setSize(int, int); - method public void setStroke(int, @ColorInt int); - method public void setStroke(int, android.content.res.ColorStateList); - method public void setStroke(int, @ColorInt int, float, float); - method public void setStroke(int, android.content.res.ColorStateList, float, float); - method public void setThickness(@Px int); - method public void setThicknessRatio(@FloatRange(from=0.0f, fromInclusive=false) float); - method public void setUseLevel(boolean); - field public static final int LINE = 2; // 0x2 - field public static final int LINEAR_GRADIENT = 0; // 0x0 - field public static final int OVAL = 1; // 0x1 - field public static final int RADIAL_GRADIENT = 1; // 0x1 - field public static final int RECTANGLE = 0; // 0x0 - field public static final int RING = 3; // 0x3 - field public static final int SWEEP_GRADIENT = 2; // 0x2 - } - - public enum GradientDrawable.Orientation { - enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation BL_TR; - enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation BOTTOM_TOP; - enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation BR_TL; - enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation LEFT_RIGHT; - enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation RIGHT_LEFT; - enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation TL_BR; - enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation TOP_BOTTOM; - enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation TR_BL; - } - - public final class Icon implements android.os.Parcelable { - method @NonNull public static android.graphics.drawable.Icon createWithAdaptiveBitmap(android.graphics.Bitmap); - method @NonNull public static android.graphics.drawable.Icon createWithAdaptiveBitmapContentUri(@NonNull String); - method @NonNull public static android.graphics.drawable.Icon createWithAdaptiveBitmapContentUri(@NonNull android.net.Uri); - method @NonNull public static android.graphics.drawable.Icon createWithBitmap(android.graphics.Bitmap); - method @NonNull public static android.graphics.drawable.Icon createWithContentUri(String); - method @NonNull public static android.graphics.drawable.Icon createWithContentUri(android.net.Uri); - method @NonNull public static android.graphics.drawable.Icon createWithData(byte[], int, int); - method @NonNull public static android.graphics.drawable.Icon createWithFilePath(String); - method @NonNull public static android.graphics.drawable.Icon createWithResource(android.content.Context, @DrawableRes int); - method @NonNull public static android.graphics.drawable.Icon createWithResource(String, @DrawableRes int); - method public int describeContents(); - method @DrawableRes public int getResId(); - method @NonNull public String getResPackage(); - method public int getType(); - method @NonNull public android.net.Uri getUri(); - method @Nullable public android.graphics.drawable.Drawable loadDrawable(android.content.Context); - method public void loadDrawableAsync(@NonNull android.content.Context, @NonNull android.os.Message); - method public void loadDrawableAsync(@NonNull android.content.Context, android.graphics.drawable.Icon.OnDrawableLoadedListener, android.os.Handler); - method @NonNull public android.graphics.drawable.Icon setTint(@ColorInt int); - method @NonNull public android.graphics.drawable.Icon setTintBlendMode(@NonNull android.graphics.BlendMode); - method @NonNull public android.graphics.drawable.Icon setTintList(android.content.res.ColorStateList); - method @NonNull public android.graphics.drawable.Icon setTintMode(@NonNull android.graphics.PorterDuff.Mode); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_ADAPTIVE_BITMAP = 5; // 0x5 - field public static final int TYPE_BITMAP = 1; // 0x1 - field public static final int TYPE_DATA = 3; // 0x3 - field public static final int TYPE_RESOURCE = 2; // 0x2 - field public static final int TYPE_URI = 4; // 0x4 - field public static final int TYPE_URI_ADAPTIVE_BITMAP = 6; // 0x6 - } - - public static interface Icon.OnDrawableLoadedListener { - method public void onDrawableLoaded(android.graphics.drawable.Drawable); - } - - public class InsetDrawable extends android.graphics.drawable.DrawableWrapper { - ctor public InsetDrawable(@Nullable android.graphics.drawable.Drawable, int); - ctor public InsetDrawable(@Nullable android.graphics.drawable.Drawable, float); - ctor public InsetDrawable(@Nullable android.graphics.drawable.Drawable, int, int, int, int); - ctor public InsetDrawable(@Nullable android.graphics.drawable.Drawable, float, float, float, float); - } - - public class LayerDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { - ctor public LayerDrawable(@NonNull android.graphics.drawable.Drawable[]); - method public int addLayer(android.graphics.drawable.Drawable); - method public void draw(android.graphics.Canvas); - method public android.graphics.drawable.Drawable findDrawableByLayerId(int); - method public int findIndexByLayerId(int); - method public int getBottomPadding(); - method public android.graphics.drawable.Drawable getDrawable(int); - method public int getEndPadding(); - method public int getId(int); - method public int getLayerGravity(int); - method public int getLayerHeight(int); - method public int getLayerInsetBottom(int); - method public int getLayerInsetEnd(int); - method public int getLayerInsetLeft(int); - method public int getLayerInsetRight(int); - method public int getLayerInsetStart(int); - method public int getLayerInsetTop(int); - method public int getLayerWidth(int); - method public int getLeftPadding(); - method public int getNumberOfLayers(); - method public int getOpacity(); - method public int getPaddingMode(); - method public int getRightPadding(); - method public int getStartPadding(); - method public int getTopPadding(); - method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); - method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); - method public void setAlpha(int); - method public void setColorFilter(android.graphics.ColorFilter); - method public void setDither(boolean); - method public void setDrawable(int, android.graphics.drawable.Drawable); - method public boolean setDrawableByLayerId(int, android.graphics.drawable.Drawable); - method public void setId(int, int); - method public void setLayerGravity(int, int); - method public void setLayerHeight(int, int); - method public void setLayerInset(int, int, int, int, int); - method public void setLayerInsetBottom(int, int); - method public void setLayerInsetEnd(int, int); - method public void setLayerInsetLeft(int, int); - method public void setLayerInsetRelative(int, int, int, int, int); - method public void setLayerInsetRight(int, int); - method public void setLayerInsetStart(int, int); - method public void setLayerInsetTop(int, int); - method public void setLayerSize(int, int, int); - method public void setLayerWidth(int, int); - method public void setOpacity(int); - method public void setPadding(int, int, int, int); - method public void setPaddingMode(int); - method public void setPaddingRelative(int, int, int, int); - method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); - field public static final int INSET_UNDEFINED = -2147483648; // 0x80000000 - field public static final int PADDING_MODE_NEST = 0; // 0x0 - field public static final int PADDING_MODE_STACK = 1; // 0x1 - } - - public class LevelListDrawable extends android.graphics.drawable.DrawableContainer { - ctor public LevelListDrawable(); - method public void addLevel(int, int, android.graphics.drawable.Drawable); - } - - public class NinePatchDrawable extends android.graphics.drawable.Drawable { - ctor @Deprecated public NinePatchDrawable(android.graphics.Bitmap, byte[], android.graphics.Rect, String); - ctor public NinePatchDrawable(android.content.res.Resources, android.graphics.Bitmap, byte[], android.graphics.Rect, String); - ctor @Deprecated public NinePatchDrawable(@NonNull android.graphics.NinePatch); - ctor public NinePatchDrawable(@Nullable android.content.res.Resources, @NonNull android.graphics.NinePatch); - method public void draw(android.graphics.Canvas); - method public int getOpacity(); - method @NonNull public android.graphics.Paint getPaint(); - method public void setAlpha(int); - method public void setColorFilter(@Nullable android.graphics.ColorFilter); - method public void setDither(boolean); - method public void setTargetDensity(@NonNull android.graphics.Canvas); - method public void setTargetDensity(@NonNull android.util.DisplayMetrics); - method public void setTargetDensity(int); - } - - public class PaintDrawable extends android.graphics.drawable.ShapeDrawable { - ctor public PaintDrawable(); - ctor public PaintDrawable(int); - method public void setCornerRadii(float[]); - method public void setCornerRadius(float); - } - - public class PictureDrawable extends android.graphics.drawable.Drawable { - ctor public PictureDrawable(android.graphics.Picture); - method public void draw(android.graphics.Canvas); - method public int getOpacity(); - method public android.graphics.Picture getPicture(); - method public void setAlpha(int); - method public void setColorFilter(android.graphics.ColorFilter); - method public void setPicture(android.graphics.Picture); - } - - public class RippleDrawable extends android.graphics.drawable.LayerDrawable { - ctor public RippleDrawable(@NonNull android.content.res.ColorStateList, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); - method @NonNull public android.content.res.ColorStateList getEffectColor(); - method public int getRadius(); - method public void setColor(@NonNull android.content.res.ColorStateList); - method public void setEffectColor(@NonNull android.content.res.ColorStateList); - method public void setRadius(int); - field public static final int RADIUS_AUTO = -1; // 0xffffffff - } - - public class RotateDrawable extends android.graphics.drawable.DrawableWrapper { - ctor public RotateDrawable(); - method public float getFromDegrees(); - method public float getPivotX(); - method public float getPivotY(); - method public float getToDegrees(); - method public boolean isPivotXRelative(); - method public boolean isPivotYRelative(); - method public void setFromDegrees(float); - method public void setPivotX(float); - method public void setPivotXRelative(boolean); - method public void setPivotY(float); - method public void setPivotYRelative(boolean); - method public void setToDegrees(float); - } - - public class ScaleDrawable extends android.graphics.drawable.DrawableWrapper { - ctor public ScaleDrawable(android.graphics.drawable.Drawable, int, float, float); - } - - public class ShapeDrawable extends android.graphics.drawable.Drawable { - ctor public ShapeDrawable(); - ctor public ShapeDrawable(android.graphics.drawable.shapes.Shape); - method public void draw(android.graphics.Canvas); - method public int getOpacity(); - method public android.graphics.Paint getPaint(); - method public android.graphics.drawable.ShapeDrawable.ShaderFactory getShaderFactory(); - method public android.graphics.drawable.shapes.Shape getShape(); - method protected boolean inflateTag(String, android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet); - method protected void onDraw(android.graphics.drawable.shapes.Shape, android.graphics.Canvas, android.graphics.Paint); - method public void setAlpha(int); - method public void setColorFilter(android.graphics.ColorFilter); - method public void setDither(boolean); - method public void setIntrinsicHeight(int); - method public void setIntrinsicWidth(int); - method public void setPadding(int, int, int, int); - method public void setPadding(android.graphics.Rect); - method public void setShaderFactory(android.graphics.drawable.ShapeDrawable.ShaderFactory); - method public void setShape(android.graphics.drawable.shapes.Shape); - } - - public abstract static class ShapeDrawable.ShaderFactory { - ctor public ShapeDrawable.ShaderFactory(); - method public abstract android.graphics.Shader resize(int, int); - } - - public class StateListDrawable extends android.graphics.drawable.DrawableContainer { - ctor public StateListDrawable(); - method public void addState(int[], android.graphics.drawable.Drawable); - method public int findStateDrawableIndex(@NonNull int[]); - method public int getStateCount(); - method @Nullable public android.graphics.drawable.Drawable getStateDrawable(int); - method @NonNull public int[] getStateSet(int); - } - - public class TransitionDrawable extends android.graphics.drawable.LayerDrawable implements android.graphics.drawable.Drawable.Callback { - ctor public TransitionDrawable(android.graphics.drawable.Drawable[]); - method public boolean isCrossFadeEnabled(); - method public void resetTransition(); - method public void reverseTransition(int); - method public void setCrossFadeEnabled(boolean); - method public void startTransition(int); - } - - public class VectorDrawable extends android.graphics.drawable.Drawable { - ctor public VectorDrawable(); - method public void draw(android.graphics.Canvas); - method public int getOpacity(); - method public void setAlpha(int); - method public void setColorFilter(android.graphics.ColorFilter); - } - -} - -package android.graphics.drawable.shapes { - - public class ArcShape extends android.graphics.drawable.shapes.RectShape { - ctor public ArcShape(float, float); - method public android.graphics.drawable.shapes.ArcShape clone() throws java.lang.CloneNotSupportedException; - method public final float getStartAngle(); - method public final float getSweepAngle(); - } - - public class OvalShape extends android.graphics.drawable.shapes.RectShape { - ctor public OvalShape(); - method public android.graphics.drawable.shapes.OvalShape clone() throws java.lang.CloneNotSupportedException; - } - - public class PathShape extends android.graphics.drawable.shapes.Shape { - ctor public PathShape(@NonNull android.graphics.Path, float, float); - method public android.graphics.drawable.shapes.PathShape clone() throws java.lang.CloneNotSupportedException; - method public void draw(android.graphics.Canvas, android.graphics.Paint); - } - - public class RectShape extends android.graphics.drawable.shapes.Shape { - ctor public RectShape(); - method public android.graphics.drawable.shapes.RectShape clone() throws java.lang.CloneNotSupportedException; - method public void draw(android.graphics.Canvas, android.graphics.Paint); - method protected final android.graphics.RectF rect(); - } - - public class RoundRectShape extends android.graphics.drawable.shapes.RectShape { - ctor public RoundRectShape(@Nullable float[], @Nullable android.graphics.RectF, @Nullable float[]); - method public android.graphics.drawable.shapes.RoundRectShape clone() throws java.lang.CloneNotSupportedException; - } - - public abstract class Shape implements java.lang.Cloneable { - ctor public Shape(); - method public android.graphics.drawable.shapes.Shape clone() throws java.lang.CloneNotSupportedException; - method public abstract void draw(android.graphics.Canvas, android.graphics.Paint); - method public final float getHeight(); - method public void getOutline(@NonNull android.graphics.Outline); - method public final float getWidth(); - method public boolean hasAlpha(); - method protected void onResize(float, float); - method public final void resize(float, float); - } - -} - -package android.graphics.fonts { - - public final class Font { - method @Nullable public android.graphics.fonts.FontVariationAxis[] getAxes(); - method @NonNull public java.nio.ByteBuffer getBuffer(); - method @Nullable public java.io.File getFile(); - method public float getGlyphBounds(@IntRange(from=0) int, @NonNull android.graphics.Paint, @Nullable android.graphics.RectF); - method @NonNull public android.os.LocaleList getLocaleList(); - method public void getMetrics(@NonNull android.graphics.Paint, @Nullable android.graphics.Paint.FontMetrics); - method public int getSourceIdentifier(); - method @NonNull public android.graphics.fonts.FontStyle getStyle(); - method @IntRange(from=0) public int getTtcIndex(); - } - - public static final class Font.Builder { - ctor public Font.Builder(@NonNull java.nio.ByteBuffer); - ctor public Font.Builder(@NonNull java.io.File); - ctor public Font.Builder(@NonNull android.os.ParcelFileDescriptor); - ctor public Font.Builder(@NonNull android.os.ParcelFileDescriptor, @IntRange(from=0) long, @IntRange(from=0xffffffff) long); - ctor public Font.Builder(@NonNull android.content.res.AssetManager, @NonNull String); - ctor public Font.Builder(@NonNull android.content.res.Resources, int); - ctor public Font.Builder(@NonNull android.graphics.fonts.Font); - method @NonNull public android.graphics.fonts.Font build() throws java.io.IOException; - method @NonNull public android.graphics.fonts.Font.Builder setFontVariationSettings(@Nullable String); - method @NonNull public android.graphics.fonts.Font.Builder setFontVariationSettings(@Nullable android.graphics.fonts.FontVariationAxis[]); - method @NonNull public android.graphics.fonts.Font.Builder setSlant(int); - method @NonNull public android.graphics.fonts.Font.Builder setTtcIndex(@IntRange(from=0) int); - method @NonNull public android.graphics.fonts.Font.Builder setWeight(@IntRange(from=android.graphics.fonts.FontStyle.FONT_WEIGHT_MIN, to=android.graphics.fonts.FontStyle.FONT_WEIGHT_MAX) int); - } - - public final class FontFamily { - method @NonNull public android.graphics.fonts.Font getFont(@IntRange(from=0) int); - method @IntRange(from=1) public int getSize(); - } - - public static final class FontFamily.Builder { - ctor public FontFamily.Builder(@NonNull android.graphics.fonts.Font); - method @NonNull public android.graphics.fonts.FontFamily.Builder addFont(@NonNull android.graphics.fonts.Font); - method @NonNull public android.graphics.fonts.FontFamily build(); - method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") @Nullable public android.graphics.fonts.FontFamily buildVariableFamily(); - } - - public final class FontStyle { - ctor public FontStyle(); - ctor public FontStyle(int, int); - method public int getSlant(); - method @IntRange(from=0, to=1000) public int getWeight(); - field public static final int FONT_SLANT_ITALIC = 1; // 0x1 - field public static final int FONT_SLANT_UPRIGHT = 0; // 0x0 - field public static final int FONT_WEIGHT_BLACK = 900; // 0x384 - field public static final int FONT_WEIGHT_BOLD = 700; // 0x2bc - field public static final int FONT_WEIGHT_EXTRA_BOLD = 800; // 0x320 - field public static final int FONT_WEIGHT_EXTRA_LIGHT = 200; // 0xc8 - field public static final int FONT_WEIGHT_LIGHT = 300; // 0x12c - field public static final int FONT_WEIGHT_MAX = 1000; // 0x3e8 - field public static final int FONT_WEIGHT_MEDIUM = 500; // 0x1f4 - field public static final int FONT_WEIGHT_MIN = 1; // 0x1 - field public static final int FONT_WEIGHT_NORMAL = 400; // 0x190 - field public static final int FONT_WEIGHT_SEMI_BOLD = 600; // 0x258 - field public static final int FONT_WEIGHT_THIN = 100; // 0x64 - field public static final int FONT_WEIGHT_UNSPECIFIED = -1; // 0xffffffff - } - - public final class FontVariationAxis { - ctor public FontVariationAxis(@NonNull String, float); - method @Nullable public static android.graphics.fonts.FontVariationAxis[] fromFontVariationSettings(@Nullable String); - method public float getStyleValue(); - method public String getTag(); - method @NonNull public static String toFontVariationSettings(@Nullable android.graphics.fonts.FontVariationAxis[]); - } - - public final class SystemFonts { - method @NonNull public static java.util.Set getAvailableFonts(); - } - -} - -package android.graphics.pdf { - - public class PdfDocument { - ctor public PdfDocument(); - method public void close(); - method public void finishPage(android.graphics.pdf.PdfDocument.Page); - method public java.util.List getPages(); - method public android.graphics.pdf.PdfDocument.Page startPage(android.graphics.pdf.PdfDocument.PageInfo); - method public void writeTo(java.io.OutputStream) throws java.io.IOException; - } - - public static final class PdfDocument.Page { - method public android.graphics.Canvas getCanvas(); - method public android.graphics.pdf.PdfDocument.PageInfo getInfo(); - } - - public static final class PdfDocument.PageInfo { - method public android.graphics.Rect getContentRect(); - method public int getPageHeight(); - method public int getPageNumber(); - method public int getPageWidth(); - } - - public static final class PdfDocument.PageInfo.Builder { - ctor public PdfDocument.PageInfo.Builder(int, int, int); - method public android.graphics.pdf.PdfDocument.PageInfo create(); - method public android.graphics.pdf.PdfDocument.PageInfo.Builder setContentRect(android.graphics.Rect); - } - -} - -package android.graphics.text { - - public final class LineBreakConfig implements android.os.Parcelable { - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public int describeContents(); - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public int getHyphenation(); - method public int getLineBreakStyle(); - method public int getLineBreakWordStyle(); - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.graphics.text.LineBreakConfig merge(@NonNull android.graphics.text.LineBreakConfig); - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public void writeToParcel(@NonNull android.os.Parcel, int); - field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int HYPHENATION_DISABLED = 0; // 0x0 - field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int HYPHENATION_ENABLED = 1; // 0x1 - field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int HYPHENATION_UNSPECIFIED = -1; // 0xffffffff - field @FlaggedApi("com.android.text.flags.word_style_auto") public static final int LINE_BREAK_STYLE_AUTO = 5; // 0x5 - field public static final int LINE_BREAK_STYLE_LOOSE = 1; // 0x1 - field public static final int LINE_BREAK_STYLE_NONE = 0; // 0x0 - field public static final int LINE_BREAK_STYLE_NORMAL = 2; // 0x2 - field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int LINE_BREAK_STYLE_NO_BREAK = 4; // 0x4 - field public static final int LINE_BREAK_STYLE_STRICT = 3; // 0x3 - field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int LINE_BREAK_STYLE_UNSPECIFIED = -1; // 0xffffffff - field @FlaggedApi("com.android.text.flags.word_style_auto") public static final int LINE_BREAK_WORD_STYLE_AUTO = 2; // 0x2 - field public static final int LINE_BREAK_WORD_STYLE_NONE = 0; // 0x0 - field public static final int LINE_BREAK_WORD_STYLE_PHRASE = 1; // 0x1 - field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int LINE_BREAK_WORD_STYLE_UNSPECIFIED = -1; // 0xffffffff - } - - public static final class LineBreakConfig.Builder { - ctor public LineBreakConfig.Builder(); - method @NonNull public android.graphics.text.LineBreakConfig build(); - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.graphics.text.LineBreakConfig.Builder merge(@NonNull android.graphics.text.LineBreakConfig); - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.graphics.text.LineBreakConfig.Builder setHyphenation(int); - method @NonNull public android.graphics.text.LineBreakConfig.Builder setLineBreakStyle(int); - method @NonNull public android.graphics.text.LineBreakConfig.Builder setLineBreakWordStyle(int); - } - - public class LineBreaker { - method @NonNull public android.graphics.text.LineBreaker.Result computeLineBreaks(@NonNull android.graphics.text.MeasuredText, @NonNull android.graphics.text.LineBreaker.ParagraphConstraints, @IntRange(from=0) int); - method @FlaggedApi("com.android.text.flags.missing_getter_apis") public int getBreakStrategy(); - method @FlaggedApi("com.android.text.flags.missing_getter_apis") public int getHyphenationFrequency(); - method @FlaggedApi("com.android.text.flags.missing_getter_apis") @Nullable public int[] getIndents(); - method @FlaggedApi("com.android.text.flags.missing_getter_apis") public int getJustificationMode(); - method @FlaggedApi("com.android.text.flags.missing_getter_apis") public boolean getUseBoundsForWidth(); - field public static final int BREAK_STRATEGY_BALANCED = 2; // 0x2 - field public static final int BREAK_STRATEGY_HIGH_QUALITY = 1; // 0x1 - field public static final int BREAK_STRATEGY_SIMPLE = 0; // 0x0 - field public static final int HYPHENATION_FREQUENCY_FULL = 2; // 0x2 - field public static final int HYPHENATION_FREQUENCY_NONE = 0; // 0x0 - field public static final int HYPHENATION_FREQUENCY_NORMAL = 1; // 0x1 - field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int JUSTIFICATION_MODE_INTER_CHARACTER = 2; // 0x2 - field public static final int JUSTIFICATION_MODE_INTER_WORD = 1; // 0x1 - field public static final int JUSTIFICATION_MODE_NONE = 0; // 0x0 - } - - public static final class LineBreaker.Builder { - ctor public LineBreaker.Builder(); - method @NonNull public android.graphics.text.LineBreaker build(); - method @NonNull public android.graphics.text.LineBreaker.Builder setBreakStrategy(int); - method @NonNull public android.graphics.text.LineBreaker.Builder setHyphenationFrequency(int); - method @NonNull public android.graphics.text.LineBreaker.Builder setIndents(@Nullable int[]); - method @NonNull public android.graphics.text.LineBreaker.Builder setJustificationMode(int); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.graphics.text.LineBreaker.Builder setUseBoundsForWidth(boolean); - } - - public static class LineBreaker.ParagraphConstraints { - ctor public LineBreaker.ParagraphConstraints(); - method @FloatRange(from=0) @Px public float getDefaultTabStop(); - method @FloatRange(from=0.0f) @Px public float getFirstWidth(); - method @IntRange(from=0) @Px public int getFirstWidthLineCount(); - method @Nullable public float[] getTabStops(); - method @FloatRange(from=0.0f) @Px public float getWidth(); - method public void setIndent(@FloatRange(from=0.0f) @Px float, @IntRange(from=0) @Px int); - method public void setTabStops(@Nullable float[], @FloatRange(from=0) @Px float); - method public void setWidth(@FloatRange(from=0.0f) @Px float); - } - - public static class LineBreaker.Result { - method public int getEndLineHyphenEdit(int); - method @Px public float getLineAscent(@IntRange(from=0) int); - method @IntRange(from=0) public int getLineBreakOffset(@IntRange(from=0) int); - method @IntRange(from=0) public int getLineCount(); - method @Px public float getLineDescent(@IntRange(from=0) int); - method @Px public float getLineWidth(@IntRange(from=0) int); - method public int getStartLineHyphenEdit(int); - method public boolean hasLineTab(int); - } - - public class MeasuredText { - method public void getBounds(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.Rect); - method @FloatRange(from=0.0f) @Px public float getCharWidthAt(@IntRange(from=0) int); - method public void getFontMetricsInt(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.Paint.FontMetricsInt); - method @FloatRange(from=0.0) @Px public float getWidth(@IntRange(from=0) int, @IntRange(from=0) int); - } - - public static final class MeasuredText.Builder { - ctor public MeasuredText.Builder(@NonNull char[]); - ctor public MeasuredText.Builder(@NonNull android.graphics.text.MeasuredText); - method @NonNull public android.graphics.text.MeasuredText.Builder appendReplacementRun(@NonNull android.graphics.Paint, @IntRange(from=0) int, @FloatRange(from=0) @Px float); - method @NonNull public android.graphics.text.MeasuredText.Builder appendStyleRun(@NonNull android.graphics.Paint, @IntRange(from=0) int, boolean); - method @NonNull public android.graphics.text.MeasuredText.Builder appendStyleRun(@NonNull android.graphics.Paint, @Nullable android.graphics.text.LineBreakConfig, @IntRange(from=0) int, boolean); - method @NonNull public android.graphics.text.MeasuredText build(); - method @Deprecated @NonNull public android.graphics.text.MeasuredText.Builder setComputeHyphenation(boolean); - method @NonNull public android.graphics.text.MeasuredText.Builder setComputeHyphenation(int); - method @NonNull public android.graphics.text.MeasuredText.Builder setComputeLayout(boolean); - field public static final int HYPHENATION_MODE_FAST = 2; // 0x2 - field public static final int HYPHENATION_MODE_NONE = 0; // 0x0 - field public static final int HYPHENATION_MODE_NORMAL = 1; // 0x1 - } - - public final class PositionedGlyphs { - method public float getAdvance(); - method public float getAscent(); - method public float getDescent(); - method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public boolean getFakeBold(@IntRange(from=0) int); - method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public boolean getFakeItalic(@IntRange(from=0) int); - method @NonNull public android.graphics.fonts.Font getFont(@IntRange(from=0) int); - method @IntRange(from=0) public int getGlyphId(@IntRange(from=0) int); - method public float getGlyphX(@IntRange(from=0) int); - method public float getGlyphY(@IntRange(from=0) int); - method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public float getItalicOverride(@IntRange(from=0) int); - method public float getOffsetX(); - method public float getOffsetY(); - method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public float getWeightOverride(@IntRange(from=0) int); - method @IntRange(from=0) public int glyphCount(); - field @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public static final float NO_OVERRIDE = 1.4E-45f; - } - - public class TextRunShaper { - method @NonNull public static android.graphics.text.PositionedGlyphs shapeTextRun(@NonNull char[], int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); - method @NonNull public static android.graphics.text.PositionedGlyphs shapeTextRun(@NonNull CharSequence, int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); - } - -} - -package android.hardware { - - public abstract class BatteryState { - ctor public BatteryState(); - method @FloatRange(from=-1.0F, to=1.0f) public abstract float getCapacity(); - method public abstract int getStatus(); - method public abstract boolean isPresent(); - field public static final int STATUS_CHARGING = 2; // 0x2 - field public static final int STATUS_DISCHARGING = 3; // 0x3 - field public static final int STATUS_FULL = 5; // 0x5 - field public static final int STATUS_NOT_CHARGING = 4; // 0x4 - field public static final int STATUS_UNKNOWN = 1; // 0x1 - } - - @Deprecated public class Camera { - method @Deprecated public final void addCallbackBuffer(byte[]); - method @Deprecated public final void autoFocus(android.hardware.Camera.AutoFocusCallback); - method @Deprecated public final void cancelAutoFocus(); - method @Deprecated public final boolean enableShutterSound(boolean); - method @Deprecated protected void finalize(); - method @Deprecated public static void getCameraInfo(int, android.hardware.Camera.CameraInfo); - method @Deprecated public static int getNumberOfCameras(); - method @Deprecated public android.hardware.Camera.Parameters getParameters(); - method @Deprecated public final void lock(); - method @Deprecated public static android.hardware.Camera open(int); - method @Deprecated public static android.hardware.Camera open(); - method @Deprecated public final void reconnect() throws java.io.IOException; - method @Deprecated public final void release(); - method @Deprecated public void setAutoFocusMoveCallback(android.hardware.Camera.AutoFocusMoveCallback); - method @Deprecated public final void setDisplayOrientation(int); - method @Deprecated public final void setErrorCallback(android.hardware.Camera.ErrorCallback); - method @Deprecated public final void setFaceDetectionListener(android.hardware.Camera.FaceDetectionListener); - method @Deprecated public final void setOneShotPreviewCallback(android.hardware.Camera.PreviewCallback); - method @Deprecated public void setParameters(android.hardware.Camera.Parameters); - method @Deprecated public final void setPreviewCallback(android.hardware.Camera.PreviewCallback); - method @Deprecated public final void setPreviewCallbackWithBuffer(android.hardware.Camera.PreviewCallback); - method @Deprecated public final void setPreviewDisplay(android.view.SurfaceHolder) throws java.io.IOException; - method @Deprecated public final void setPreviewTexture(android.graphics.SurfaceTexture) throws java.io.IOException; - method @Deprecated public final void setZoomChangeListener(android.hardware.Camera.OnZoomChangeListener); - method @Deprecated public final void startFaceDetection(); - method @Deprecated public final void startPreview(); - method @Deprecated public final void startSmoothZoom(int); - method @Deprecated public final void stopFaceDetection(); - method @Deprecated public final void stopPreview(); - method @Deprecated public final void stopSmoothZoom(); - method @Deprecated public final void takePicture(android.hardware.Camera.ShutterCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback); - method @Deprecated public final void takePicture(android.hardware.Camera.ShutterCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback); - method @Deprecated public final void unlock(); - field @Deprecated public static final String ACTION_NEW_PICTURE = "android.hardware.action.NEW_PICTURE"; - field @Deprecated public static final String ACTION_NEW_VIDEO = "android.hardware.action.NEW_VIDEO"; - field @Deprecated public static final int CAMERA_ERROR_EVICTED = 2; // 0x2 - field @Deprecated public static final int CAMERA_ERROR_SERVER_DIED = 100; // 0x64 - field @Deprecated public static final int CAMERA_ERROR_UNKNOWN = 1; // 0x1 - } - - @Deprecated public static class Camera.Area { - ctor @Deprecated public Camera.Area(android.graphics.Rect, int); - field @Deprecated public android.graphics.Rect rect; - field @Deprecated public int weight; - } - - @Deprecated public static interface Camera.AutoFocusCallback { - method @Deprecated public void onAutoFocus(boolean, android.hardware.Camera); - } - - @Deprecated public static interface Camera.AutoFocusMoveCallback { - method @Deprecated public void onAutoFocusMoving(boolean, android.hardware.Camera); - } - - @Deprecated public static class Camera.CameraInfo { - ctor @Deprecated public Camera.CameraInfo(); - field @Deprecated public static final int CAMERA_FACING_BACK = 0; // 0x0 - field @Deprecated public static final int CAMERA_FACING_FRONT = 1; // 0x1 - field @Deprecated public boolean canDisableShutterSound; - field @Deprecated public int facing; - field @Deprecated public int orientation; - } - - @Deprecated public static interface Camera.ErrorCallback { - method @Deprecated public void onError(int, android.hardware.Camera); - } - - @Deprecated public static class Camera.Face { - ctor @Deprecated public Camera.Face(); - field @Deprecated public int id; - field @Deprecated public android.graphics.Point leftEye; - field @Deprecated public android.graphics.Point mouth; - field @Deprecated public android.graphics.Rect rect; - field @Deprecated public android.graphics.Point rightEye; - field @Deprecated public int score; - } - - @Deprecated public static interface Camera.FaceDetectionListener { - method @Deprecated public void onFaceDetection(android.hardware.Camera.Face[], android.hardware.Camera); - } - - @Deprecated public static interface Camera.OnZoomChangeListener { - method @Deprecated public void onZoomChange(int, boolean, android.hardware.Camera); - } - - @Deprecated public class Camera.Parameters { - method @Deprecated public String flatten(); - method @Deprecated public String get(String); - method @Deprecated public String getAntibanding(); - method @Deprecated public boolean getAutoExposureLock(); - method @Deprecated public boolean getAutoWhiteBalanceLock(); - method @Deprecated public String getColorEffect(); - method @Deprecated public int getExposureCompensation(); - method @Deprecated public float getExposureCompensationStep(); - method @Deprecated public String getFlashMode(); - method @Deprecated public float getFocalLength(); - method @Deprecated public java.util.List getFocusAreas(); - method @Deprecated public void getFocusDistances(float[]); - method @Deprecated public String getFocusMode(); - method @Deprecated public float getHorizontalViewAngle(); - method @Deprecated public int getInt(String); - method @Deprecated public int getJpegQuality(); - method @Deprecated public int getJpegThumbnailQuality(); - method @Deprecated public android.hardware.Camera.Size getJpegThumbnailSize(); - method @Deprecated public int getMaxExposureCompensation(); - method @Deprecated public int getMaxNumDetectedFaces(); - method @Deprecated public int getMaxNumFocusAreas(); - method @Deprecated public int getMaxNumMeteringAreas(); - method @Deprecated public int getMaxZoom(); - method @Deprecated public java.util.List getMeteringAreas(); - method @Deprecated public int getMinExposureCompensation(); - method @Deprecated public int getPictureFormat(); - method @Deprecated public android.hardware.Camera.Size getPictureSize(); - method @Deprecated public android.hardware.Camera.Size getPreferredPreviewSizeForVideo(); - method @Deprecated public int getPreviewFormat(); - method @Deprecated public void getPreviewFpsRange(int[]); - method @Deprecated public int getPreviewFrameRate(); - method @Deprecated public android.hardware.Camera.Size getPreviewSize(); - method @Deprecated public String getSceneMode(); - method @Deprecated public java.util.List getSupportedAntibanding(); - method @Deprecated public java.util.List getSupportedColorEffects(); - method @Deprecated public java.util.List getSupportedFlashModes(); - method @Deprecated public java.util.List getSupportedFocusModes(); - method @Deprecated public java.util.List getSupportedJpegThumbnailSizes(); - method @Deprecated public java.util.List getSupportedPictureFormats(); - method @Deprecated public java.util.List getSupportedPictureSizes(); - method @Deprecated public java.util.List getSupportedPreviewFormats(); - method @Deprecated public java.util.List getSupportedPreviewFpsRange(); - method @Deprecated public java.util.List getSupportedPreviewFrameRates(); - method @Deprecated public java.util.List getSupportedPreviewSizes(); - method @Deprecated public java.util.List getSupportedSceneModes(); - method @Deprecated public java.util.List getSupportedVideoSizes(); - method @Deprecated public java.util.List getSupportedWhiteBalance(); - method @Deprecated public float getVerticalViewAngle(); - method @Deprecated public boolean getVideoStabilization(); - method @Deprecated public String getWhiteBalance(); - method @Deprecated public int getZoom(); - method @Deprecated public java.util.List getZoomRatios(); - method @Deprecated public boolean isAutoExposureLockSupported(); - method @Deprecated public boolean isAutoWhiteBalanceLockSupported(); - method @Deprecated public boolean isSmoothZoomSupported(); - method @Deprecated public boolean isVideoSnapshotSupported(); - method @Deprecated public boolean isVideoStabilizationSupported(); - method @Deprecated public boolean isZoomSupported(); - method @Deprecated public void remove(String); - method @Deprecated public void removeGpsData(); - method @Deprecated public void set(String, String); - method @Deprecated public void set(String, int); - method @Deprecated public void setAntibanding(String); - method @Deprecated public void setAutoExposureLock(boolean); - method @Deprecated public void setAutoWhiteBalanceLock(boolean); - method @Deprecated public void setColorEffect(String); - method @Deprecated public void setExposureCompensation(int); - method @Deprecated public void setFlashMode(String); - method @Deprecated public void setFocusAreas(java.util.List); - method @Deprecated public void setFocusMode(String); - method @Deprecated public void setGpsAltitude(double); - method @Deprecated public void setGpsLatitude(double); - method @Deprecated public void setGpsLongitude(double); - method @Deprecated public void setGpsProcessingMethod(String); - method @Deprecated public void setGpsTimestamp(long); - method @Deprecated public void setJpegQuality(int); - method @Deprecated public void setJpegThumbnailQuality(int); - method @Deprecated public void setJpegThumbnailSize(int, int); - method @Deprecated public void setMeteringAreas(java.util.List); - method @Deprecated public void setPictureFormat(int); - method @Deprecated public void setPictureSize(int, int); - method @Deprecated public void setPreviewFormat(int); - method @Deprecated public void setPreviewFpsRange(int, int); - method @Deprecated public void setPreviewFrameRate(int); - method @Deprecated public void setPreviewSize(int, int); - method @Deprecated public void setRecordingHint(boolean); - method @Deprecated public void setRotation(int); - method @Deprecated public void setSceneMode(String); - method @Deprecated public void setVideoStabilization(boolean); - method @Deprecated public void setWhiteBalance(String); - method @Deprecated public void setZoom(int); - method @Deprecated public void unflatten(String); - field @Deprecated public static final String ANTIBANDING_50HZ = "50hz"; - field @Deprecated public static final String ANTIBANDING_60HZ = "60hz"; - field @Deprecated public static final String ANTIBANDING_AUTO = "auto"; - field @Deprecated public static final String ANTIBANDING_OFF = "off"; - field @Deprecated public static final String EFFECT_AQUA = "aqua"; - field @Deprecated public static final String EFFECT_BLACKBOARD = "blackboard"; - field @Deprecated public static final String EFFECT_MONO = "mono"; - field @Deprecated public static final String EFFECT_NEGATIVE = "negative"; - field @Deprecated public static final String EFFECT_NONE = "none"; - field @Deprecated public static final String EFFECT_POSTERIZE = "posterize"; - field @Deprecated public static final String EFFECT_SEPIA = "sepia"; - field @Deprecated public static final String EFFECT_SOLARIZE = "solarize"; - field @Deprecated public static final String EFFECT_WHITEBOARD = "whiteboard"; - field @Deprecated public static final String FLASH_MODE_AUTO = "auto"; - field @Deprecated public static final String FLASH_MODE_OFF = "off"; - field @Deprecated public static final String FLASH_MODE_ON = "on"; - field @Deprecated public static final String FLASH_MODE_RED_EYE = "red-eye"; - field @Deprecated public static final String FLASH_MODE_TORCH = "torch"; - field @Deprecated public static final int FOCUS_DISTANCE_FAR_INDEX = 2; // 0x2 - field @Deprecated public static final int FOCUS_DISTANCE_NEAR_INDEX = 0; // 0x0 - field @Deprecated public static final int FOCUS_DISTANCE_OPTIMAL_INDEX = 1; // 0x1 - field @Deprecated public static final String FOCUS_MODE_AUTO = "auto"; - field @Deprecated public static final String FOCUS_MODE_CONTINUOUS_PICTURE = "continuous-picture"; - field @Deprecated public static final String FOCUS_MODE_CONTINUOUS_VIDEO = "continuous-video"; - field @Deprecated public static final String FOCUS_MODE_EDOF = "edof"; - field @Deprecated public static final String FOCUS_MODE_FIXED = "fixed"; - field @Deprecated public static final String FOCUS_MODE_INFINITY = "infinity"; - field @Deprecated public static final String FOCUS_MODE_MACRO = "macro"; - field @Deprecated public static final int PREVIEW_FPS_MAX_INDEX = 1; // 0x1 - field @Deprecated public static final int PREVIEW_FPS_MIN_INDEX = 0; // 0x0 - field @Deprecated public static final String SCENE_MODE_ACTION = "action"; - field @Deprecated public static final String SCENE_MODE_AUTO = "auto"; - field @Deprecated public static final String SCENE_MODE_BARCODE = "barcode"; - field @Deprecated public static final String SCENE_MODE_BEACH = "beach"; - field @Deprecated public static final String SCENE_MODE_CANDLELIGHT = "candlelight"; - field @Deprecated public static final String SCENE_MODE_FIREWORKS = "fireworks"; - field @Deprecated public static final String SCENE_MODE_HDR = "hdr"; - field @Deprecated public static final String SCENE_MODE_LANDSCAPE = "landscape"; - field @Deprecated public static final String SCENE_MODE_NIGHT = "night"; - field @Deprecated public static final String SCENE_MODE_NIGHT_PORTRAIT = "night-portrait"; - field @Deprecated public static final String SCENE_MODE_PARTY = "party"; - field @Deprecated public static final String SCENE_MODE_PORTRAIT = "portrait"; - field @Deprecated public static final String SCENE_MODE_SNOW = "snow"; - field @Deprecated public static final String SCENE_MODE_SPORTS = "sports"; - field @Deprecated public static final String SCENE_MODE_STEADYPHOTO = "steadyphoto"; - field @Deprecated public static final String SCENE_MODE_SUNSET = "sunset"; - field @Deprecated public static final String SCENE_MODE_THEATRE = "theatre"; - field @Deprecated public static final String WHITE_BALANCE_AUTO = "auto"; - field @Deprecated public static final String WHITE_BALANCE_CLOUDY_DAYLIGHT = "cloudy-daylight"; - field @Deprecated public static final String WHITE_BALANCE_DAYLIGHT = "daylight"; - field @Deprecated public static final String WHITE_BALANCE_FLUORESCENT = "fluorescent"; - field @Deprecated public static final String WHITE_BALANCE_INCANDESCENT = "incandescent"; - field @Deprecated public static final String WHITE_BALANCE_SHADE = "shade"; - field @Deprecated public static final String WHITE_BALANCE_TWILIGHT = "twilight"; - field @Deprecated public static final String WHITE_BALANCE_WARM_FLUORESCENT = "warm-fluorescent"; - } - - @Deprecated public static interface Camera.PictureCallback { - method @Deprecated public void onPictureTaken(byte[], android.hardware.Camera); - } - - @Deprecated public static interface Camera.PreviewCallback { - method @Deprecated public void onPreviewFrame(byte[], android.hardware.Camera); - } - - @Deprecated public static interface Camera.ShutterCallback { - method @Deprecated public void onShutter(); - } - - @Deprecated public class Camera.Size { - ctor @Deprecated public Camera.Size(int, int); - field @Deprecated public int height; - field @Deprecated public int width; - } - - public final class ConsumerIrManager { - method public android.hardware.ConsumerIrManager.CarrierFrequencyRange[] getCarrierFrequencies(); - method public boolean hasIrEmitter(); - method public void transmit(int, int[]); - } - - public final class ConsumerIrManager.CarrierFrequencyRange { - ctor public ConsumerIrManager.CarrierFrequencyRange(int, int); - method public int getMaxFrequency(); - method public int getMinFrequency(); - } - - public final class DataSpace { - method public static int getRange(int); - method public static int getStandard(int); - method public static int getTransfer(int); - method public static int pack(int, int, int); - field public static final int DATASPACE_ADOBE_RGB = 151715840; // 0x90b0000 - field public static final int DATASPACE_BT2020 = 147193856; // 0x8c60000 - field public static final int DATASPACE_BT2020_HLG = 168165376; // 0xa060000 - field public static final int DATASPACE_BT2020_PQ = 163971072; // 0x9c60000 - field public static final int DATASPACE_BT601_525 = 281280512; // 0x10c40000 - field public static final int DATASPACE_BT601_625 = 281149440; // 0x10c20000 - field public static final int DATASPACE_BT709 = 281083904; // 0x10c10000 - field public static final int DATASPACE_DCI_P3 = 155844608; // 0x94a0000 - field public static final int DATASPACE_DEPTH = 4096; // 0x1000 - field @FlaggedApi("com.android.graphics.flags.display_bt2020_colorspace") public static final int DATASPACE_DISPLAY_BT2020 = 142999552; // 0x8860000 - field public static final int DATASPACE_DISPLAY_P3 = 143261696; // 0x88a0000 - field public static final int DATASPACE_DYNAMIC_DEPTH = 4098; // 0x1002 - field public static final int DATASPACE_HEIF = 4100; // 0x1004 - field @FlaggedApi("com.android.internal.camera.flags.camera_heif_gainmap") public static final int DATASPACE_HEIF_ULTRAHDR = 4102; // 0x1006 - field public static final int DATASPACE_JFIF = 146931712; // 0x8c20000 - field public static final int DATASPACE_JPEG_R = 4101; // 0x1005 - field public static final int DATASPACE_SCRGB = 411107328; // 0x18810000 - field public static final int DATASPACE_SCRGB_LINEAR = 406913024; // 0x18410000 - field public static final int DATASPACE_SRGB = 142671872; // 0x8810000 - field public static final int DATASPACE_SRGB_LINEAR = 138477568; // 0x8410000 - field public static final int DATASPACE_UNKNOWN = 0; // 0x0 - field public static final int RANGE_EXTENDED = 402653184; // 0x18000000 - field public static final int RANGE_FULL = 134217728; // 0x8000000 - field public static final int RANGE_LIMITED = 268435456; // 0x10000000 - field public static final int RANGE_UNSPECIFIED = 0; // 0x0 - field public static final int STANDARD_ADOBE_RGB = 720896; // 0xb0000 - field public static final int STANDARD_BT2020 = 393216; // 0x60000 - field public static final int STANDARD_BT2020_CONSTANT_LUMINANCE = 458752; // 0x70000 - field public static final int STANDARD_BT470M = 524288; // 0x80000 - field public static final int STANDARD_BT601_525 = 262144; // 0x40000 - field public static final int STANDARD_BT601_525_UNADJUSTED = 327680; // 0x50000 - field public static final int STANDARD_BT601_625 = 131072; // 0x20000 - field public static final int STANDARD_BT601_625_UNADJUSTED = 196608; // 0x30000 - field public static final int STANDARD_BT709 = 65536; // 0x10000 - field public static final int STANDARD_DCI_P3 = 655360; // 0xa0000 - field public static final int STANDARD_FILM = 589824; // 0x90000 - field public static final int STANDARD_UNSPECIFIED = 0; // 0x0 - field public static final int TRANSFER_GAMMA2_2 = 16777216; // 0x1000000 - field public static final int TRANSFER_GAMMA2_6 = 20971520; // 0x1400000 - field public static final int TRANSFER_GAMMA2_8 = 25165824; // 0x1800000 - field public static final int TRANSFER_HLG = 33554432; // 0x2000000 - field public static final int TRANSFER_LINEAR = 4194304; // 0x400000 - field public static final int TRANSFER_SMPTE_170M = 12582912; // 0xc00000 - field public static final int TRANSFER_SRGB = 8388608; // 0x800000 - field public static final int TRANSFER_ST2084 = 29360128; // 0x1c00000 - field public static final int TRANSFER_UNSPECIFIED = 0; // 0x0 - } - - @FlaggedApi("android.hardware.flags.luts_api") public final class DisplayLuts { - ctor @FlaggedApi("android.hardware.flags.luts_api") public DisplayLuts(); - method @FlaggedApi("android.hardware.flags.luts_api") public void set(@NonNull android.hardware.DisplayLuts.Entry); - method @FlaggedApi("android.hardware.flags.luts_api") public void set(@NonNull android.hardware.DisplayLuts.Entry, @NonNull android.hardware.DisplayLuts.Entry); - } - - @FlaggedApi("android.hardware.flags.luts_api") public static class DisplayLuts.Entry { - ctor @FlaggedApi("android.hardware.flags.luts_api") public DisplayLuts.Entry(@NonNull float[], int, int); - method @FlaggedApi("android.hardware.flags.luts_api") @NonNull public float[] getBuffer(); - method @FlaggedApi("android.hardware.flags.luts_api") public int getDimension(); - method @FlaggedApi("android.hardware.flags.luts_api") public int getSamplingKey(); - } - - public class GeomagneticField { - ctor public GeomagneticField(float, float, float, long); - method public float getDeclination(); - method public float getFieldStrength(); - method public float getHorizontalStrength(); - method public float getInclination(); - method public float getX(); - method public float getY(); - method public float getZ(); - } - - public final class HardwareBuffer implements java.lang.AutoCloseable android.os.Parcelable { - method public void close(); - method @NonNull public static android.hardware.HardwareBuffer create(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int, long); - method public int describeContents(); - method public int getFormat(); - method public int getHeight(); - method public long getId(); - method public int getLayers(); - method public long getUsage(); - method public int getWidth(); - method public boolean isClosed(); - method public static boolean isSupported(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int, long); - method public void writeToParcel(android.os.Parcel, int); - field public static final int BLOB = 33; // 0x21 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DS_24UI8 = 50; // 0x32 - field public static final int DS_FP32UI8 = 52; // 0x34 - field public static final int D_16 = 48; // 0x30 - field public static final int D_24 = 49; // 0x31 - field public static final int D_FP32 = 51; // 0x33 - field @FlaggedApi("com.android.graphics.hwui.flags.requested_formats_v") public static final int RGBA_10101010 = 59; // 0x3b - field public static final int RGBA_1010102 = 43; // 0x2b - field public static final int RGBA_8888 = 1; // 0x1 - field public static final int RGBA_FP16 = 22; // 0x16 - field public static final int RGBX_8888 = 2; // 0x2 - field public static final int RGB_565 = 4; // 0x4 - field public static final int RGB_888 = 3; // 0x3 - field @FlaggedApi("com.android.graphics.hwui.flags.requested_formats_v") public static final int RG_1616 = 58; // 0x3a - field @FlaggedApi("com.android.graphics.hwui.flags.requested_formats_v") public static final int R_16 = 57; // 0x39 - field @FlaggedApi("com.android.graphics.hwui.flags.requested_formats_v") public static final int R_8 = 56; // 0x38 - field public static final int S_UI8 = 53; // 0x35 - field public static final long USAGE_COMPOSER_OVERLAY = 2048L; // 0x800L - field public static final long USAGE_CPU_READ_OFTEN = 3L; // 0x3L - field public static final long USAGE_CPU_READ_RARELY = 2L; // 0x2L - field public static final long USAGE_CPU_WRITE_OFTEN = 48L; // 0x30L - field public static final long USAGE_CPU_WRITE_RARELY = 32L; // 0x20L - field public static final long USAGE_FRONT_BUFFER = 4294967296L; // 0x100000000L - field public static final long USAGE_GPU_COLOR_OUTPUT = 512L; // 0x200L - field public static final long USAGE_GPU_CUBE_MAP = 33554432L; // 0x2000000L - field public static final long USAGE_GPU_DATA_BUFFER = 16777216L; // 0x1000000L - field public static final long USAGE_GPU_MIPMAP_COMPLETE = 67108864L; // 0x4000000L - field public static final long USAGE_GPU_SAMPLED_IMAGE = 256L; // 0x100L - field public static final long USAGE_PROTECTED_CONTENT = 16384L; // 0x4000L - field public static final long USAGE_SENSOR_DIRECT_DATA = 8388608L; // 0x800000L - field public static final long USAGE_VIDEO_ENCODE = 65536L; // 0x10000L - field public static final int YCBCR_420_888 = 35; // 0x23 - field public static final int YCBCR_P010 = 54; // 0x36 - field @FlaggedApi("android.media.codec.p210_format_support") public static final int YCBCR_P210 = 60; // 0x3c - } - - @FlaggedApi("android.hardware.flags.luts_api") public final class LutProperties { - method @FlaggedApi("android.hardware.flags.luts_api") public int getDimension(); - method @FlaggedApi("android.hardware.flags.luts_api") @NonNull public int[] getSamplingKeys(); - method @FlaggedApi("android.hardware.flags.luts_api") public int getSize(); - field @FlaggedApi("android.hardware.flags.luts_api") public static final int ONE_DIMENSION = 1; // 0x1 - field @FlaggedApi("android.hardware.flags.luts_api") public static final int SAMPLING_KEY_CIE_Y = 2; // 0x2 - field @FlaggedApi("android.hardware.flags.luts_api") public static final int SAMPLING_KEY_MAX_RGB = 1; // 0x1 - field @FlaggedApi("android.hardware.flags.luts_api") public static final int SAMPLING_KEY_RGB = 0; // 0x0 - field @FlaggedApi("android.hardware.flags.luts_api") public static final int THREE_DIMENSION = 3; // 0x3 - } - - @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public final class OverlayProperties implements android.os.Parcelable { - method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public int describeContents(); - method @FlaggedApi("android.hardware.flags.luts_api") @NonNull public android.hardware.LutProperties[] getLutProperties(); - method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public boolean isCombinationSupported(int, int); - method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public boolean isMixedColorSpacesSupported(); - method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public void writeToParcel(@NonNull android.os.Parcel, int); - field @FlaggedApi("android.hardware.flags.overlayproperties_class_api") @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class Sensor { - method public int getFifoMaxEventCount(); - method public int getFifoReservedEventCount(); - method public int getHighestDirectReportRateLevel(); - method public int getId(); - method public int getMaxDelay(); - method public float getMaximumRange(); - method public int getMinDelay(); - method public String getName(); - method public float getPower(); - method public int getReportingMode(); - method public float getResolution(); - method public String getStringType(); - method public int getType(); - method public String getVendor(); - method public int getVersion(); - method public boolean isAdditionalInfoSupported(); - method public boolean isDirectChannelTypeSupported(int); - method public boolean isDynamicSensor(); - method public boolean isWakeUpSensor(); - field public static final int REPORTING_MODE_CONTINUOUS = 0; // 0x0 - field public static final int REPORTING_MODE_ONE_SHOT = 2; // 0x2 - field public static final int REPORTING_MODE_ON_CHANGE = 1; // 0x1 - field public static final int REPORTING_MODE_SPECIAL_TRIGGER = 3; // 0x3 - field public static final String STRING_TYPE_ACCELEROMETER = "android.sensor.accelerometer"; - field public static final String STRING_TYPE_ACCELEROMETER_LIMITED_AXES = "android.sensor.accelerometer_limited_axes"; - field public static final String STRING_TYPE_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED = "android.sensor.accelerometer_limited_axes_uncalibrated"; - field public static final String STRING_TYPE_ACCELEROMETER_UNCALIBRATED = "android.sensor.accelerometer_uncalibrated"; - field public static final String STRING_TYPE_AMBIENT_TEMPERATURE = "android.sensor.ambient_temperature"; - field public static final String STRING_TYPE_GAME_ROTATION_VECTOR = "android.sensor.game_rotation_vector"; - field public static final String STRING_TYPE_GEOMAGNETIC_ROTATION_VECTOR = "android.sensor.geomagnetic_rotation_vector"; - field public static final String STRING_TYPE_GRAVITY = "android.sensor.gravity"; - field public static final String STRING_TYPE_GYROSCOPE = "android.sensor.gyroscope"; - field public static final String STRING_TYPE_GYROSCOPE_LIMITED_AXES = "android.sensor.gyroscope_limited_axes"; - field public static final String STRING_TYPE_GYROSCOPE_LIMITED_AXES_UNCALIBRATED = "android.sensor.gyroscope_limited_axes_uncalibrated"; - field public static final String STRING_TYPE_GYROSCOPE_UNCALIBRATED = "android.sensor.gyroscope_uncalibrated"; - field public static final String STRING_TYPE_HEADING = "android.sensor.heading"; - field public static final String STRING_TYPE_HEAD_TRACKER = "android.sensor.head_tracker"; - field public static final String STRING_TYPE_HEART_BEAT = "android.sensor.heart_beat"; - field public static final String STRING_TYPE_HEART_RATE = "android.sensor.heart_rate"; - field public static final String STRING_TYPE_HINGE_ANGLE = "android.sensor.hinge_angle"; - field public static final String STRING_TYPE_LIGHT = "android.sensor.light"; - field public static final String STRING_TYPE_LINEAR_ACCELERATION = "android.sensor.linear_acceleration"; - field public static final String STRING_TYPE_LOW_LATENCY_OFFBODY_DETECT = "android.sensor.low_latency_offbody_detect"; - field public static final String STRING_TYPE_MAGNETIC_FIELD = "android.sensor.magnetic_field"; - field public static final String STRING_TYPE_MAGNETIC_FIELD_UNCALIBRATED = "android.sensor.magnetic_field_uncalibrated"; - field public static final String STRING_TYPE_MOTION_DETECT = "android.sensor.motion_detect"; - field @Deprecated public static final String STRING_TYPE_ORIENTATION = "android.sensor.orientation"; - field public static final String STRING_TYPE_POSE_6DOF = "android.sensor.pose_6dof"; - field public static final String STRING_TYPE_PRESSURE = "android.sensor.pressure"; - field public static final String STRING_TYPE_PROXIMITY = "android.sensor.proximity"; - field public static final String STRING_TYPE_RELATIVE_HUMIDITY = "android.sensor.relative_humidity"; - field public static final String STRING_TYPE_ROTATION_VECTOR = "android.sensor.rotation_vector"; - field public static final String STRING_TYPE_SIGNIFICANT_MOTION = "android.sensor.significant_motion"; - field public static final String STRING_TYPE_STATIONARY_DETECT = "android.sensor.stationary_detect"; - field public static final String STRING_TYPE_STEP_COUNTER = "android.sensor.step_counter"; - field public static final String STRING_TYPE_STEP_DETECTOR = "android.sensor.step_detector"; - field @Deprecated public static final String STRING_TYPE_TEMPERATURE = "android.sensor.temperature"; - field public static final int TYPE_ACCELEROMETER = 1; // 0x1 - field public static final int TYPE_ACCELEROMETER_LIMITED_AXES = 38; // 0x26 - field public static final int TYPE_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED = 40; // 0x28 - field public static final int TYPE_ACCELEROMETER_UNCALIBRATED = 35; // 0x23 - field public static final int TYPE_ALL = -1; // 0xffffffff - field public static final int TYPE_AMBIENT_TEMPERATURE = 13; // 0xd - field public static final int TYPE_DEVICE_PRIVATE_BASE = 65536; // 0x10000 - field public static final int TYPE_GAME_ROTATION_VECTOR = 15; // 0xf - field public static final int TYPE_GEOMAGNETIC_ROTATION_VECTOR = 20; // 0x14 - field public static final int TYPE_GRAVITY = 9; // 0x9 - field public static final int TYPE_GYROSCOPE = 4; // 0x4 - field public static final int TYPE_GYROSCOPE_LIMITED_AXES = 39; // 0x27 - field public static final int TYPE_GYROSCOPE_LIMITED_AXES_UNCALIBRATED = 41; // 0x29 - field public static final int TYPE_GYROSCOPE_UNCALIBRATED = 16; // 0x10 - field public static final int TYPE_HEADING = 42; // 0x2a - field public static final int TYPE_HEAD_TRACKER = 37; // 0x25 - field public static final int TYPE_HEART_BEAT = 31; // 0x1f - field public static final int TYPE_HEART_RATE = 21; // 0x15 - field public static final int TYPE_HINGE_ANGLE = 36; // 0x24 - field public static final int TYPE_LIGHT = 5; // 0x5 - field public static final int TYPE_LINEAR_ACCELERATION = 10; // 0xa - field public static final int TYPE_LOW_LATENCY_OFFBODY_DETECT = 34; // 0x22 - field public static final int TYPE_MAGNETIC_FIELD = 2; // 0x2 - field public static final int TYPE_MAGNETIC_FIELD_UNCALIBRATED = 14; // 0xe - field public static final int TYPE_MOTION_DETECT = 30; // 0x1e - field @Deprecated public static final int TYPE_ORIENTATION = 3; // 0x3 - field public static final int TYPE_POSE_6DOF = 28; // 0x1c - field public static final int TYPE_PRESSURE = 6; // 0x6 - field public static final int TYPE_PROXIMITY = 8; // 0x8 - field public static final int TYPE_RELATIVE_HUMIDITY = 12; // 0xc - field public static final int TYPE_ROTATION_VECTOR = 11; // 0xb - field public static final int TYPE_SIGNIFICANT_MOTION = 17; // 0x11 - field public static final int TYPE_STATIONARY_DETECT = 29; // 0x1d - field public static final int TYPE_STEP_COUNTER = 19; // 0x13 - field public static final int TYPE_STEP_DETECTOR = 18; // 0x12 - field @Deprecated public static final int TYPE_TEMPERATURE = 7; // 0x7 - } - - public class SensorAdditionalInfo { - field public static final int TYPE_FRAME_BEGIN = 0; // 0x0 - field public static final int TYPE_FRAME_END = 1; // 0x1 - field public static final int TYPE_INTERNAL_TEMPERATURE = 65537; // 0x10001 - field public static final int TYPE_SAMPLING = 65540; // 0x10004 - field public static final int TYPE_SENSOR_PLACEMENT = 65539; // 0x10003 - field public static final int TYPE_UNTRACKED_DELAY = 65536; // 0x10000 - field public static final int TYPE_VEC3_CALIBRATION = 65538; // 0x10002 - field public final float[] floatValues; - field public final int[] intValues; - field public final android.hardware.Sensor sensor; - field public final int serial; - field public final int type; - } - - public final class SensorDirectChannel implements java.nio.channels.Channel { - method public void close(); - method public int configure(android.hardware.Sensor, int); - method public boolean isOpen(); - field public static final int RATE_FAST = 2; // 0x2 - field public static final int RATE_NORMAL = 1; // 0x1 - field public static final int RATE_STOP = 0; // 0x0 - field public static final int RATE_VERY_FAST = 3; // 0x3 - field public static final int TYPE_HARDWARE_BUFFER = 2; // 0x2 - field public static final int TYPE_MEMORY_FILE = 1; // 0x1 - } - - public class SensorEvent { - field public int accuracy; - field public boolean firstEventAfterDiscontinuity; - field public android.hardware.Sensor sensor; - field public long timestamp; - field public final float[] values; - } - - public abstract class SensorEventCallback implements android.hardware.SensorEventListener2 { - ctor public SensorEventCallback(); - method public void onAccuracyChanged(android.hardware.Sensor, int); - method public void onFlushCompleted(android.hardware.Sensor); - method public void onSensorAdditionalInfo(android.hardware.SensorAdditionalInfo); - method public void onSensorChanged(android.hardware.SensorEvent); - } - - public interface SensorEventListener { - method public void onAccuracyChanged(android.hardware.Sensor, int); - method public void onSensorChanged(android.hardware.SensorEvent); - } - - public interface SensorEventListener2 extends android.hardware.SensorEventListener { - method public void onFlushCompleted(android.hardware.Sensor); - } - - @Deprecated public interface SensorListener { - method @Deprecated public void onAccuracyChanged(int, int); - method @Deprecated public void onSensorChanged(int, float[]); - } - - public abstract class SensorManager { - method public boolean cancelTriggerSensor(android.hardware.TriggerEventListener, android.hardware.Sensor); - method public android.hardware.SensorDirectChannel createDirectChannel(android.os.MemoryFile); - method public android.hardware.SensorDirectChannel createDirectChannel(android.hardware.HardwareBuffer); - method public boolean flush(android.hardware.SensorEventListener); - method public static float getAltitude(float, float); - method public static void getAngleChange(float[], float[], float[]); - method @Nullable public android.hardware.Sensor getDefaultSensor(int); - method @Nullable public android.hardware.Sensor getDefaultSensor(int, boolean); - method public java.util.List getDynamicSensorList(int); - method public static float getInclination(float[]); - method public static float[] getOrientation(float[], float[]); - method public static void getQuaternionFromVector(float[], float[]); - method public static boolean getRotationMatrix(float[], float[], float[], float[]); - method public static void getRotationMatrixFromVector(float[], float[]); - method public java.util.List getSensorList(int); - method @Deprecated public int getSensors(); - method public boolean isDynamicSensorDiscoverySupported(); - method public void registerDynamicSensorCallback(android.hardware.SensorManager.DynamicSensorCallback); - method public void registerDynamicSensorCallback(android.hardware.SensorManager.DynamicSensorCallback, android.os.Handler); - method @Deprecated public boolean registerListener(android.hardware.SensorListener, int); - method @Deprecated public boolean registerListener(android.hardware.SensorListener, int, int); - method public boolean registerListener(android.hardware.SensorEventListener, android.hardware.Sensor, int); - method public boolean registerListener(android.hardware.SensorEventListener, android.hardware.Sensor, int, int); - method public boolean registerListener(android.hardware.SensorEventListener, android.hardware.Sensor, int, android.os.Handler); - method public boolean registerListener(android.hardware.SensorEventListener, android.hardware.Sensor, int, int, android.os.Handler); - method public static boolean remapCoordinateSystem(float[], int, int, float[]); - method public boolean requestTriggerSensor(android.hardware.TriggerEventListener, android.hardware.Sensor); - method public void unregisterDynamicSensorCallback(android.hardware.SensorManager.DynamicSensorCallback); - method @Deprecated public void unregisterListener(android.hardware.SensorListener); - method @Deprecated public void unregisterListener(android.hardware.SensorListener, int); - method public void unregisterListener(android.hardware.SensorEventListener, android.hardware.Sensor); - method public void unregisterListener(android.hardware.SensorEventListener); - field public static final int AXIS_MINUS_X = 129; // 0x81 - field public static final int AXIS_MINUS_Y = 130; // 0x82 - field public static final int AXIS_MINUS_Z = 131; // 0x83 - field public static final int AXIS_X = 1; // 0x1 - field public static final int AXIS_Y = 2; // 0x2 - field public static final int AXIS_Z = 3; // 0x3 - field @Deprecated public static final int DATA_X = 0; // 0x0 - field @Deprecated public static final int DATA_Y = 1; // 0x1 - field @Deprecated public static final int DATA_Z = 2; // 0x2 - field public static final float GRAVITY_DEATH_STAR_I = 3.5303614E-7f; - field public static final float GRAVITY_EARTH = 9.80665f; - field public static final float GRAVITY_JUPITER = 23.12f; - field public static final float GRAVITY_MARS = 3.71f; - field public static final float GRAVITY_MERCURY = 3.7f; - field public static final float GRAVITY_MOON = 1.6f; - field public static final float GRAVITY_NEPTUNE = 11.0f; - field public static final float GRAVITY_PLUTO = 0.6f; - field public static final float GRAVITY_SATURN = 8.96f; - field public static final float GRAVITY_SUN = 275.0f; - field public static final float GRAVITY_THE_ISLAND = 4.815162f; - field public static final float GRAVITY_URANUS = 8.69f; - field public static final float GRAVITY_VENUS = 8.87f; - field public static final float LIGHT_CLOUDY = 100.0f; - field public static final float LIGHT_FULLMOON = 0.25f; - field public static final float LIGHT_NO_MOON = 0.001f; - field public static final float LIGHT_OVERCAST = 10000.0f; - field public static final float LIGHT_SHADE = 20000.0f; - field public static final float LIGHT_SUNLIGHT = 110000.0f; - field public static final float LIGHT_SUNLIGHT_MAX = 120000.0f; - field public static final float LIGHT_SUNRISE = 400.0f; - field public static final float MAGNETIC_FIELD_EARTH_MAX = 60.0f; - field public static final float MAGNETIC_FIELD_EARTH_MIN = 30.0f; - field public static final float PRESSURE_STANDARD_ATMOSPHERE = 1013.25f; - field @Deprecated public static final int RAW_DATA_INDEX = 3; // 0x3 - field @Deprecated public static final int RAW_DATA_X = 3; // 0x3 - field @Deprecated public static final int RAW_DATA_Y = 4; // 0x4 - field @Deprecated public static final int RAW_DATA_Z = 5; // 0x5 - field @Deprecated public static final int SENSOR_ACCELEROMETER = 2; // 0x2 - field @Deprecated public static final int SENSOR_ALL = 127; // 0x7f - field public static final int SENSOR_DELAY_FASTEST = 0; // 0x0 - field public static final int SENSOR_DELAY_GAME = 1; // 0x1 - field public static final int SENSOR_DELAY_NORMAL = 3; // 0x3 - field public static final int SENSOR_DELAY_UI = 2; // 0x2 - field @Deprecated public static final int SENSOR_LIGHT = 16; // 0x10 - field @Deprecated public static final int SENSOR_MAGNETIC_FIELD = 8; // 0x8 - field @Deprecated public static final int SENSOR_MAX = 64; // 0x40 - field @Deprecated public static final int SENSOR_MIN = 1; // 0x1 - field @Deprecated public static final int SENSOR_ORIENTATION = 1; // 0x1 - field @Deprecated public static final int SENSOR_ORIENTATION_RAW = 128; // 0x80 - field @Deprecated public static final int SENSOR_PROXIMITY = 32; // 0x20 - field public static final int SENSOR_STATUS_ACCURACY_HIGH = 3; // 0x3 - field public static final int SENSOR_STATUS_ACCURACY_LOW = 1; // 0x1 - field public static final int SENSOR_STATUS_ACCURACY_MEDIUM = 2; // 0x2 - field public static final int SENSOR_STATUS_NO_CONTACT = -1; // 0xffffffff - field public static final int SENSOR_STATUS_UNRELIABLE = 0; // 0x0 - field @Deprecated public static final int SENSOR_TEMPERATURE = 4; // 0x4 - field @Deprecated public static final int SENSOR_TRICORDER = 64; // 0x40 - field public static final float STANDARD_GRAVITY = 9.80665f; - } - - public abstract static class SensorManager.DynamicSensorCallback { - ctor public SensorManager.DynamicSensorCallback(); - method public void onDynamicSensorConnected(android.hardware.Sensor); - method public void onDynamicSensorDisconnected(android.hardware.Sensor); - } - - public final class SensorPrivacyManager { - method public boolean supportsSensorToggle(int); - method public boolean supportsSensorToggle(int, int); - field public static final int TOGGLE_TYPE_HARDWARE = 2; // 0x2 - field public static final int TOGGLE_TYPE_SOFTWARE = 1; // 0x1 - } - - public static class SensorPrivacyManager.Sensors { - field public static final int CAMERA = 2; // 0x2 - field public static final int MICROPHONE = 1; // 0x1 - } - - public final class SyncFence implements java.lang.AutoCloseable android.os.Parcelable { - ctor @FlaggedApi("com.android.window.flags.sdk_desired_present_time") public SyncFence(@NonNull android.hardware.SyncFence); - method public boolean await(@NonNull java.time.Duration); - method public boolean awaitForever(); - method public void close(); - method public int describeContents(); - method public long getSignalTime(); - method public boolean isValid(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final long SIGNAL_TIME_INVALID = -1L; // 0xffffffffffffffffL - field public static final long SIGNAL_TIME_PENDING = 9223372036854775807L; // 0x7fffffffffffffffL - } - - public final class TriggerEvent { - field public android.hardware.Sensor sensor; - field public long timestamp; - field public final float[] values; - } - - public abstract class TriggerEventListener { - ctor public TriggerEventListener(); - method public abstract void onTrigger(android.hardware.TriggerEvent); - } - -} - -package android.hardware.biometrics { - - public class BiometricManager { - method @Deprecated @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public int canAuthenticate(); - method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public int canAuthenticate(int); - method @FlaggedApi("android.hardware.biometrics.last_authentication_time") @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public long getLastAuthenticationTime(int); - method @NonNull @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public android.hardware.biometrics.BiometricManager.Strings getStrings(int); - field public static final int BIOMETRIC_ERROR_HW_UNAVAILABLE = 1; // 0x1 - field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int BIOMETRIC_ERROR_IDENTITY_CHECK_NOT_ACTIVE = 20; // 0x14 - field public static final int BIOMETRIC_ERROR_NONE_ENROLLED = 11; // 0xb - field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int BIOMETRIC_ERROR_NOT_ENABLED_FOR_APPS = 21; // 0x15 - field public static final int BIOMETRIC_ERROR_NO_HARDWARE = 12; // 0xc - field public static final int BIOMETRIC_ERROR_SECURITY_UPDATE_REQUIRED = 15; // 0xf - field @FlaggedApi("android.hardware.biometrics.last_authentication_time") public static final long BIOMETRIC_NO_AUTHENTICATION = -1L; // 0xffffffffffffffffL - field public static final int BIOMETRIC_SUCCESS = 0; // 0x0 - } - - public static interface BiometricManager.Authenticators { - field public static final int BIOMETRIC_STRONG = 15; // 0xf - field public static final int BIOMETRIC_WEAK = 255; // 0xff - field public static final int DEVICE_CREDENTIAL = 32768; // 0x8000 - field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int IDENTITY_CHECK = 65536; // 0x10000 - } - - public static class BiometricManager.Strings { - method @Nullable @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public CharSequence getButtonLabel(); - method @Nullable @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public CharSequence getPromptMessage(); - method @Nullable @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public CharSequence getSettingName(); - } - - public class BiometricPrompt { - method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public void authenticate(@NonNull android.hardware.biometrics.BiometricPrompt.CryptoObject, @NonNull android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.biometrics.BiometricPrompt.AuthenticationCallback); - method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public void authenticate(@NonNull android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.biometrics.BiometricPrompt.AuthenticationCallback); - method @Nullable public int getAllowedAuthenticators(); - method @Nullable public android.hardware.biometrics.PromptContentView getContentView(); - method @Nullable public CharSequence getDescription(); - method @Nullable @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.graphics.Bitmap getLogoBitmap(); - method @Nullable @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public String getLogoDescription(); - method @DrawableRes @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public int getLogoRes(); - method @Nullable public CharSequence getNegativeButtonText(); - method @Nullable public CharSequence getSubtitle(); - method @NonNull public CharSequence getTitle(); - method public boolean isConfirmationRequired(); - field public static final int AUTHENTICATION_RESULT_TYPE_BIOMETRIC = 2; // 0x2 - field public static final int AUTHENTICATION_RESULT_TYPE_DEVICE_CREDENTIAL = 1; // 0x1 - field public static final int BIOMETRIC_ACQUIRED_GOOD = 0; // 0x0 - field public static final int BIOMETRIC_ACQUIRED_IMAGER_DIRTY = 3; // 0x3 - field public static final int BIOMETRIC_ACQUIRED_INSUFFICIENT = 2; // 0x2 - field public static final int BIOMETRIC_ACQUIRED_PARTIAL = 1; // 0x1 - field public static final int BIOMETRIC_ACQUIRED_TOO_FAST = 5; // 0x5 - field public static final int BIOMETRIC_ACQUIRED_TOO_SLOW = 4; // 0x4 - field public static final int BIOMETRIC_ERROR_CANCELED = 5; // 0x5 - field public static final int BIOMETRIC_ERROR_HW_NOT_PRESENT = 12; // 0xc - field public static final int BIOMETRIC_ERROR_HW_UNAVAILABLE = 1; // 0x1 - field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int BIOMETRIC_ERROR_IDENTITY_CHECK_NOT_ACTIVE = 20; // 0x14 - field public static final int BIOMETRIC_ERROR_LOCKOUT = 7; // 0x7 - field public static final int BIOMETRIC_ERROR_LOCKOUT_PERMANENT = 9; // 0x9 - field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int BIOMETRIC_ERROR_NOT_ENABLED_FOR_APPS = 21; // 0x15 - field public static final int BIOMETRIC_ERROR_NO_BIOMETRICS = 11; // 0xb - field public static final int BIOMETRIC_ERROR_NO_DEVICE_CREDENTIAL = 14; // 0xe - field public static final int BIOMETRIC_ERROR_NO_SPACE = 4; // 0x4 - field public static final int BIOMETRIC_ERROR_SECURITY_UPDATE_REQUIRED = 15; // 0xf - field public static final int BIOMETRIC_ERROR_TIMEOUT = 3; // 0x3 - field public static final int BIOMETRIC_ERROR_UNABLE_TO_PROCESS = 2; // 0x2 - field public static final int BIOMETRIC_ERROR_USER_CANCELED = 10; // 0xa - field public static final int BIOMETRIC_ERROR_VENDOR = 8; // 0x8 - field @FlaggedApi("android.hardware.biometrics.last_authentication_time") public static final long BIOMETRIC_NO_AUTHENTICATION = -1L; // 0xffffffffffffffffL - } - - public abstract static class BiometricPrompt.AuthenticationCallback { - ctor public BiometricPrompt.AuthenticationCallback(); - method public void onAuthenticationError(int, CharSequence); - method public void onAuthenticationFailed(); - method public void onAuthenticationHelp(int, CharSequence); - method public void onAuthenticationSucceeded(android.hardware.biometrics.BiometricPrompt.AuthenticationResult); - } - - public static class BiometricPrompt.AuthenticationResult { - method public int getAuthenticationType(); - method public android.hardware.biometrics.BiometricPrompt.CryptoObject getCryptoObject(); - } - - public static class BiometricPrompt.Builder { - ctor public BiometricPrompt.Builder(android.content.Context); - method @NonNull public android.hardware.biometrics.BiometricPrompt build(); - method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setAllowedAuthenticators(int); - method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setConfirmationRequired(boolean); - method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setContentView(@NonNull android.hardware.biometrics.PromptContentView); - method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setDescription(@NonNull CharSequence); - method @Deprecated @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setDeviceCredentialAllowed(boolean); - method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.BiometricPrompt.Builder setLogoBitmap(@NonNull android.graphics.Bitmap); - method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.BiometricPrompt.Builder setLogoDescription(@NonNull String); - method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.BiometricPrompt.Builder setLogoRes(@DrawableRes int); - method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setNegativeButton(@NonNull CharSequence, @NonNull java.util.concurrent.Executor, @NonNull android.content.DialogInterface.OnClickListener); - method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setSubtitle(@NonNull CharSequence); - method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setTitle(@NonNull CharSequence); - } - - public static final class BiometricPrompt.CryptoObject { - ctor public BiometricPrompt.CryptoObject(@NonNull java.security.Signature); - ctor public BiometricPrompt.CryptoObject(@NonNull javax.crypto.Cipher); - ctor public BiometricPrompt.CryptoObject(@NonNull javax.crypto.Mac); - ctor @Deprecated public BiometricPrompt.CryptoObject(@NonNull android.security.identity.IdentityCredential); - ctor public BiometricPrompt.CryptoObject(@NonNull android.security.identity.PresentationSession); - ctor @FlaggedApi("android.hardware.biometrics.add_key_agreement_crypto_object") public BiometricPrompt.CryptoObject(@NonNull javax.crypto.KeyAgreement); - ctor @FlaggedApi("android.hardware.biometrics.get_op_id_crypto_object") public BiometricPrompt.CryptoObject(long); - method @Nullable public javax.crypto.Cipher getCipher(); - method @Deprecated @Nullable public android.security.identity.IdentityCredential getIdentityCredential(); - method @FlaggedApi("android.hardware.biometrics.add_key_agreement_crypto_object") @Nullable public javax.crypto.KeyAgreement getKeyAgreement(); - method @Nullable public javax.crypto.Mac getMac(); - method @FlaggedApi("android.hardware.biometrics.get_op_id_crypto_object") public long getOperationHandle(); - method @Nullable public android.security.identity.PresentationSession getPresentationSession(); - method @Nullable public java.security.Signature getSignature(); - } - - public interface PromptContentItem { - } - - public final class PromptContentItemBulletedText implements android.os.Parcelable android.hardware.biometrics.PromptContentItem { - ctor public PromptContentItemBulletedText(@NonNull String); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class PromptContentItemPlainText implements android.os.Parcelable android.hardware.biometrics.PromptContentItem { - ctor public PromptContentItemPlainText(@NonNull String); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface PromptContentView { - } - - public final class PromptContentViewWithMoreOptionsButton implements android.os.Parcelable android.hardware.biometrics.PromptContentView { - method public int describeContents(); - method @Nullable @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public String getDescription(); - method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.content.DialogInterface.OnClickListener getMoreOptionsButtonListener(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class PromptContentViewWithMoreOptionsButton.Builder { - ctor public PromptContentViewWithMoreOptionsButton.Builder(); - method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.PromptContentViewWithMoreOptionsButton build(); - method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.PromptContentViewWithMoreOptionsButton.Builder setDescription(@NonNull String); - method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.PromptContentViewWithMoreOptionsButton.Builder setMoreOptionsButtonListener(@NonNull java.util.concurrent.Executor, @NonNull android.content.DialogInterface.OnClickListener); - } - - public final class PromptVerticalListContentView implements android.os.Parcelable android.hardware.biometrics.PromptContentView { - method public int describeContents(); - method @Nullable public String getDescription(); - method @NonNull public java.util.List getListItems(); - method public static int getMaxEachItemCharacterNumber(); - method public static int getMaxItemCount(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class PromptVerticalListContentView.Builder { - ctor public PromptVerticalListContentView.Builder(); - method @NonNull public android.hardware.biometrics.PromptVerticalListContentView.Builder addListItem(@NonNull android.hardware.biometrics.PromptContentItem); - method @NonNull public android.hardware.biometrics.PromptVerticalListContentView.Builder addListItem(@NonNull android.hardware.biometrics.PromptContentItem, int); - method @NonNull public android.hardware.biometrics.PromptVerticalListContentView build(); - method @NonNull public android.hardware.biometrics.PromptVerticalListContentView.Builder setDescription(@NonNull String); - } - -} - -package android.hardware.camera2 { - - public class CameraAccessException extends android.util.AndroidException { - ctor public CameraAccessException(int); - ctor public CameraAccessException(int, String); - ctor public CameraAccessException(int, String, Throwable); - ctor public CameraAccessException(int, Throwable); - method public final int getReason(); - field public static final int CAMERA_DISABLED = 1; // 0x1 - field public static final int CAMERA_DISCONNECTED = 2; // 0x2 - field public static final int CAMERA_ERROR = 3; // 0x3 - field public static final int CAMERA_IN_USE = 4; // 0x4 - field public static final int MAX_CAMERAS_IN_USE = 5; // 0x5 - } - - public abstract class CameraCaptureSession implements java.lang.AutoCloseable { - ctor public CameraCaptureSession(); - method public abstract void abortCaptures() throws android.hardware.camera2.CameraAccessException; - method public abstract int capture(@NonNull android.hardware.camera2.CaptureRequest, @Nullable android.hardware.camera2.CameraCaptureSession.CaptureCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method public abstract int captureBurst(@NonNull java.util.List, @Nullable android.hardware.camera2.CameraCaptureSession.CaptureCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method public int captureBurstRequests(@NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException; - method public int captureSingleRequest(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException; - method public abstract void close(); - method public abstract void finalizeOutputConfigurations(java.util.List) throws android.hardware.camera2.CameraAccessException; - method @NonNull public abstract android.hardware.camera2.CameraDevice getDevice(); - method @Nullable public abstract android.view.Surface getInputSurface(); - method public abstract boolean isReprocessable(); - method public abstract void prepare(@NonNull android.view.Surface) throws android.hardware.camera2.CameraAccessException; - method public abstract int setRepeatingBurst(@NonNull java.util.List, @Nullable android.hardware.camera2.CameraCaptureSession.CaptureCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method public int setRepeatingBurstRequests(@NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException; - method public abstract int setRepeatingRequest(@NonNull android.hardware.camera2.CaptureRequest, @Nullable android.hardware.camera2.CameraCaptureSession.CaptureCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method public int setSingleRepeatingRequest(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException; - method public abstract void stopRepeating() throws android.hardware.camera2.CameraAccessException; - method public boolean supportsOfflineProcessing(@NonNull android.view.Surface); - method @Nullable public android.hardware.camera2.CameraOfflineSession switchToOffline(@NonNull java.util.Collection, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraOfflineSession.CameraOfflineSessionCallback) throws android.hardware.camera2.CameraAccessException; - method public void updateOutputConfiguration(android.hardware.camera2.params.OutputConfiguration) throws android.hardware.camera2.CameraAccessException; - } - - public abstract static class CameraCaptureSession.CaptureCallback { - ctor public CameraCaptureSession.CaptureCallback(); - method public void onCaptureBufferLost(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.view.Surface, long); - method public void onCaptureCompleted(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.hardware.camera2.TotalCaptureResult); - method public void onCaptureFailed(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.hardware.camera2.CaptureFailure); - method public void onCaptureProgressed(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.hardware.camera2.CaptureResult); - method public void onCaptureSequenceAborted(@NonNull android.hardware.camera2.CameraCaptureSession, int); - method public void onCaptureSequenceCompleted(@NonNull android.hardware.camera2.CameraCaptureSession, int, long); - method public void onCaptureStarted(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, long, long); - method public void onReadoutStarted(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, long, long); - } - - public abstract static class CameraCaptureSession.StateCallback { - ctor public CameraCaptureSession.StateCallback(); - method public void onActive(@NonNull android.hardware.camera2.CameraCaptureSession); - method public void onCaptureQueueEmpty(@NonNull android.hardware.camera2.CameraCaptureSession); - method public void onClosed(@NonNull android.hardware.camera2.CameraCaptureSession); - method public abstract void onConfigureFailed(@NonNull android.hardware.camera2.CameraCaptureSession); - method public abstract void onConfigured(@NonNull android.hardware.camera2.CameraCaptureSession); - method public void onReady(@NonNull android.hardware.camera2.CameraCaptureSession); - method public void onSurfacePrepared(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.view.Surface); - } - - public final class CameraCharacteristics extends android.hardware.camera2.CameraMetadata> { - method @Nullable public T get(android.hardware.camera2.CameraCharacteristics.Key); - method @NonNull public java.util.List> getAvailableCaptureRequestKeys(); - method @NonNull public java.util.List> getAvailableCaptureResultKeys(); - method public java.util.List> getAvailablePhysicalCameraRequestKeys(); - method @NonNull public java.util.List> getAvailableSessionCharacteristicsKeys(); - method public java.util.List> getAvailableSessionKeys(); - method @NonNull public java.util.List> getKeys(); - method @NonNull public java.util.List> getKeysNeedingPermission(); - method @NonNull public java.util.Set getPhysicalCameraIds(); - method @Nullable public android.hardware.camera2.params.RecommendedStreamConfigurationMap getRecommendedStreamConfigurationMap(int); - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key AUTOMOTIVE_LENS_FACING; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key AUTOMOTIVE_LOCATION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES; - field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key COLOR_CORRECTION_AVAILABLE_MODES; - field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> COLOR_CORRECTION_COLOR_TEMPERATURE_RANGE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_AVAILABLE_ANTIBANDING_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_AVAILABLE_MODES; - field @FlaggedApi("com.android.internal.camera.flags.ae_priority") @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_AVAILABLE_PRIORITY_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key[]> CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> CONTROL_AE_COMPENSATION_RANGE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_COMPENSATION_STEP; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_LOCK_AVAILABLE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AF_AVAILABLE_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AUTOFRAMING_AVAILABLE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_EFFECTS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_CAPABILITIES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_SCENE_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_SETTINGS_OVERRIDES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AWB_AVAILABLE_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AWB_LOCK_AVAILABLE; - field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> CONTROL_LOW_LIGHT_BOOST_INFO_LUMINANCE_RANGE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_MAX_REGIONS_AE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_MAX_REGIONS_AF; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_MAX_REGIONS_AWB; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> CONTROL_POST_RAW_SENSITIVITY_BOOST_RANGE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> CONTROL_ZOOM_RATIO_RANGE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key DEPTH_DEPTH_IS_EXCLUSIVE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key DISTORTION_CORRECTION_AVAILABLE_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key EDGE_AVAILABLE_EDGE_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_INFO_AVAILABLE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_INFO_STRENGTH_DEFAULT_LEVEL; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_INFO_STRENGTH_MAXIMUM_LEVEL; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_SINGLE_STRENGTH_DEFAULT_LEVEL; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_SINGLE_STRENGTH_MAX_LEVEL; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_TORCH_STRENGTH_DEFAULT_LEVEL; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_TORCH_STRENGTH_MAX_LEVEL; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key INFO_DEVICE_STATE_SENSOR_ORIENTATION_MAP; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key INFO_SESSION_CONFIGURATION_QUERY_VERSION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key INFO_SUPPORTED_HARDWARE_LEVEL; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key INFO_VERSION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key JPEG_AVAILABLE_THUMBNAIL_SIZES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_DISTORTION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_DISTORTION_MAXIMUM_RESOLUTION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_FACING; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_AVAILABLE_APERTURES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_AVAILABLE_FILTER_DENSITIES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_AVAILABLE_FOCAL_LENGTHS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_FOCUS_DISTANCE_CALIBRATION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_HYPERFOCAL_DISTANCE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_MINIMUM_FOCUS_DISTANCE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INTRINSIC_CALIBRATION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INTRINSIC_CALIBRATION_MAXIMUM_RESOLUTION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_POSE_REFERENCE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_POSE_ROTATION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_POSE_TRANSLATION; - field @Deprecated @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_RADIAL_DISTORTION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REPROCESS_MAX_CAPTURE_STALL; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_AVAILABLE_CAPABILITIES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_AVAILABLE_COLOR_SPACE_PROFILES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_MAX_NUM_INPUT_STREAMS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_MAX_NUM_OUTPUT_PROC; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_MAX_NUM_OUTPUT_PROC_STALLING; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_MAX_NUM_OUTPUT_RAW; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_PARTIAL_RESULT_COUNT; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_PIPELINE_MAX_DEPTH; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_AVAILABLE_MAX_DIGITAL_ZOOM; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_AVAILABLE_ROTATE_AND_CROP_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_AVAILABLE_STREAM_USE_CASES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_CROPPING_TYPE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_DEFAULT_SECURE_IMAGE_SIZE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_CONCURRENT_STREAM_COMBINATIONS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_MAXIMUM_RESOLUTION_STREAM_COMBINATIONS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_PREVIEW_STABILIZATION_OUTPUT_STREAM_COMBINATIONS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_STREAM_COMBINATIONS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_TEN_BIT_OUTPUT_STREAM_COMBINATIONS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_USE_CASE_STREAM_COMBINATIONS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MULTI_RESOLUTION_STREAM_CONFIGURATION_MAP; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_STREAM_CONFIGURATION_MAP; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_STREAM_CONFIGURATION_MAP_MAXIMUM_RESOLUTION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_AVAILABLE_TEST_PATTERN_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_BLACK_LEVEL_PATTERN; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_CALIBRATION_TRANSFORM1; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_CALIBRATION_TRANSFORM2; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_COLOR_TRANSFORM1; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_COLOR_TRANSFORM2; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_FORWARD_MATRIX1; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_FORWARD_MATRIX2; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_ACTIVE_ARRAY_SIZE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_BINNING_FACTOR; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_COLOR_FILTER_ARRANGEMENT; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> SENSOR_INFO_EXPOSURE_TIME_RANGE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_LENS_SHADING_APPLIED; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_MAX_FRAME_DURATION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PHYSICAL_SIZE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PIXEL_ARRAY_SIZE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PIXEL_ARRAY_SIZE_MAXIMUM_RESOLUTION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> SENSOR_INFO_SENSITIVITY_RANGE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_TIMESTAMP_SOURCE; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_WHITE_LEVEL; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_MAX_ANALOG_SENSITIVITY; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_OPTICAL_BLACK_REGIONS; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_ORIENTATION; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_READOUT_TIMESTAMP; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_REFERENCE_ILLUMINANT1; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_REFERENCE_ILLUMINANT2; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SHADING_AVAILABLE_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_AVAILABLE_OIS_DATA_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_MAX_FACE_COUNT; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SYNC_MAX_LATENCY; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key TONEMAP_AVAILABLE_TONE_MAP_MODES; - field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key TONEMAP_MAX_CURVE_POINTS; - } - - public static final class CameraCharacteristics.Key { - ctor public CameraCharacteristics.Key(@NonNull String, @NonNull Class); - method @NonNull public String getName(); - } - - public abstract class CameraConstrainedHighSpeedCaptureSession extends android.hardware.camera2.CameraCaptureSession { - ctor public CameraConstrainedHighSpeedCaptureSession(); - method @NonNull public abstract java.util.List createHighSpeedRequestList(@NonNull android.hardware.camera2.CaptureRequest) throws android.hardware.camera2.CameraAccessException; - } - - public abstract class CameraDevice implements java.lang.AutoCloseable { - method public abstract void close(); - method @NonNull public abstract android.hardware.camera2.CaptureRequest.Builder createCaptureRequest(int) throws android.hardware.camera2.CameraAccessException; - method @NonNull public android.hardware.camera2.CaptureRequest.Builder createCaptureRequest(int, java.util.Set) throws android.hardware.camera2.CameraAccessException; - method @Deprecated public abstract void createCaptureSession(@NonNull java.util.List, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method public void createCaptureSession(android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; - method @Deprecated public abstract void createCaptureSessionByOutputConfigurations(java.util.List, android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method @Deprecated public abstract void createConstrainedHighSpeedCaptureSession(@NonNull java.util.List, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method public void createExtensionSession(@NonNull android.hardware.camera2.params.ExtensionSessionConfiguration) throws android.hardware.camera2.CameraAccessException; - method @NonNull public abstract android.hardware.camera2.CaptureRequest.Builder createReprocessCaptureRequest(@NonNull android.hardware.camera2.TotalCaptureResult) throws android.hardware.camera2.CameraAccessException; - method @Deprecated public abstract void createReprocessableCaptureSession(@NonNull android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method @Deprecated public abstract void createReprocessableCaptureSessionByConfigurations(@NonNull android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method public int getCameraAudioRestriction() throws android.hardware.camera2.CameraAccessException; - method @NonNull public abstract String getId(); - method public boolean isSessionConfigurationSupported(@NonNull android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; - method public void setCameraAudioRestriction(int) throws android.hardware.camera2.CameraAccessException; - field public static final int AUDIO_RESTRICTION_NONE = 0; // 0x0 - field public static final int AUDIO_RESTRICTION_VIBRATION = 1; // 0x1 - field public static final int AUDIO_RESTRICTION_VIBRATION_SOUND = 3; // 0x3 - field public static final int TEMPLATE_MANUAL = 6; // 0x6 - field public static final int TEMPLATE_PREVIEW = 1; // 0x1 - field public static final int TEMPLATE_RECORD = 3; // 0x3 - field public static final int TEMPLATE_STILL_CAPTURE = 2; // 0x2 - field public static final int TEMPLATE_VIDEO_SNAPSHOT = 4; // 0x4 - field public static final int TEMPLATE_ZERO_SHUTTER_LAG = 5; // 0x5 - } - - @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public abstract static class CameraDevice.CameraDeviceSetup { - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public abstract android.hardware.camera2.CaptureRequest.Builder createCaptureRequest(int) throws android.hardware.camera2.CameraAccessException; - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public abstract String getId(); - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public abstract android.hardware.camera2.CameraCharacteristics getSessionCharacteristics(@NonNull android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public abstract boolean isSessionConfigurationSupported(@NonNull android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @RequiresPermission(android.Manifest.permission.CAMERA) public abstract void openCamera(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraDevice.StateCallback) throws android.hardware.camera2.CameraAccessException; - } - - public abstract static class CameraDevice.StateCallback { - ctor public CameraDevice.StateCallback(); - method public void onClosed(@NonNull android.hardware.camera2.CameraDevice); - method public abstract void onDisconnected(@NonNull android.hardware.camera2.CameraDevice); - method public abstract void onError(@NonNull android.hardware.camera2.CameraDevice, int); - method public abstract void onOpened(@NonNull android.hardware.camera2.CameraDevice); - field public static final int ERROR_CAMERA_DEVICE = 4; // 0x4 - field public static final int ERROR_CAMERA_DISABLED = 3; // 0x3 - field public static final int ERROR_CAMERA_IN_USE = 1; // 0x1 - field public static final int ERROR_CAMERA_SERVICE = 5; // 0x5 - field public static final int ERROR_MAX_CAMERAS_IN_USE = 2; // 0x2 - } - - public final class CameraExtensionCharacteristics { - method @FlaggedApi("com.android.internal.camera.flags.camera_extensions_characteristics_get") public T get(int, @NonNull android.hardware.camera2.CameraCharacteristics.Key); - method @NonNull public java.util.Set getAvailableCaptureRequestKeys(int); - method @NonNull public java.util.Set getAvailableCaptureResultKeys(int); - method @Nullable public android.util.Range getEstimatedCaptureLatencyRangeMillis(int, @NonNull android.util.Size, int); - method @NonNull public java.util.List getExtensionSupportedSizes(int, @NonNull Class); - method @NonNull public java.util.List getExtensionSupportedSizes(int, int); - method @FlaggedApi("com.android.internal.camera.flags.camera_extensions_characteristics_get") @NonNull public java.util.Set getKeys(int); - method @NonNull public java.util.List getPostviewSupportedSizes(int, @NonNull android.util.Size, int); - method @NonNull public java.util.List getSupportedExtensions(); - method public boolean isCaptureProcessProgressAvailable(int); - method public boolean isPostviewAvailable(int); - field public static final int EXTENSION_AUTOMATIC = 0; // 0x0 - field @Deprecated public static final int EXTENSION_BEAUTY = 1; // 0x1 - field public static final int EXTENSION_BOKEH = 2; // 0x2 - field public static final int EXTENSION_FACE_RETOUCH = 1; // 0x1 - field public static final int EXTENSION_HDR = 3; // 0x3 - field public static final int EXTENSION_NIGHT = 4; // 0x4 - } - - public abstract class CameraExtensionSession implements java.lang.AutoCloseable { - method public int capture(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraExtensionSession.ExtensionCaptureCallback) throws android.hardware.camera2.CameraAccessException; - method public void close() throws android.hardware.camera2.CameraAccessException; - method @NonNull public android.hardware.camera2.CameraDevice getDevice(); - method @Nullable public android.hardware.camera2.CameraExtensionSession.StillCaptureLatency getRealtimeStillCaptureLatency() throws android.hardware.camera2.CameraAccessException; - method public int setRepeatingRequest(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraExtensionSession.ExtensionCaptureCallback) throws android.hardware.camera2.CameraAccessException; - method public void stopRepeating() throws android.hardware.camera2.CameraAccessException; - } - - public abstract static class CameraExtensionSession.ExtensionCaptureCallback { - ctor public CameraExtensionSession.ExtensionCaptureCallback(); - method public void onCaptureFailed(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest); - method public void onCaptureFailed(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest, int); - method public void onCaptureProcessProgressed(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest, @IntRange(from=0, to=100) int); - method public void onCaptureProcessStarted(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest); - method public void onCaptureResultAvailable(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.hardware.camera2.TotalCaptureResult); - method public void onCaptureSequenceAborted(@NonNull android.hardware.camera2.CameraExtensionSession, int); - method public void onCaptureSequenceCompleted(@NonNull android.hardware.camera2.CameraExtensionSession, int); - method public void onCaptureStarted(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest, long); - } - - public abstract static class CameraExtensionSession.StateCallback { - ctor public CameraExtensionSession.StateCallback(); - method public void onClosed(@NonNull android.hardware.camera2.CameraExtensionSession); - method public abstract void onConfigureFailed(@NonNull android.hardware.camera2.CameraExtensionSession); - method public abstract void onConfigured(@NonNull android.hardware.camera2.CameraExtensionSession); - } - - public static final class CameraExtensionSession.StillCaptureLatency { - ctor public CameraExtensionSession.StillCaptureLatency(long, long); - method public long getCaptureLatency(); - method public long getProcessingLatency(); - } - - public final class CameraManager { - method @NonNull public android.hardware.camera2.CameraCharacteristics getCameraCharacteristics(@NonNull String) throws android.hardware.camera2.CameraAccessException; - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public android.hardware.camera2.CameraDevice.CameraDeviceSetup getCameraDeviceSetup(@NonNull String) throws android.hardware.camera2.CameraAccessException; - method @NonNull public android.hardware.camera2.CameraExtensionCharacteristics getCameraExtensionCharacteristics(@NonNull String) throws android.hardware.camera2.CameraAccessException; - method @NonNull public String[] getCameraIdList() throws android.hardware.camera2.CameraAccessException; - method @NonNull public java.util.Set> getConcurrentCameraIds() throws android.hardware.camera2.CameraAccessException; - method public int getTorchStrengthLevel(@NonNull String) throws android.hardware.camera2.CameraAccessException; - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public boolean isCameraDeviceSetupSupported(@NonNull String) throws android.hardware.camera2.CameraAccessException; - method @RequiresPermission(android.Manifest.permission.CAMERA) public boolean isConcurrentSessionConfigurationSupported(@NonNull java.util.Map) throws android.hardware.camera2.CameraAccessException; - method @RequiresPermission(android.Manifest.permission.CAMERA) public void openCamera(@NonNull String, @NonNull android.hardware.camera2.CameraDevice.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; - method @RequiresPermission(android.Manifest.permission.CAMERA) public void openCamera(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraDevice.StateCallback) throws android.hardware.camera2.CameraAccessException; - method public void registerAvailabilityCallback(@NonNull android.hardware.camera2.CameraManager.AvailabilityCallback, @Nullable android.os.Handler); - method public void registerAvailabilityCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraManager.AvailabilityCallback); - method public void registerTorchCallback(@NonNull android.hardware.camera2.CameraManager.TorchCallback, @Nullable android.os.Handler); - method public void registerTorchCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraManager.TorchCallback); - method public void setTorchMode(@NonNull String, boolean) throws android.hardware.camera2.CameraAccessException; - method public void turnOnTorchWithStrengthLevel(@NonNull String, int) throws android.hardware.camera2.CameraAccessException; - method public void unregisterAvailabilityCallback(@NonNull android.hardware.camera2.CameraManager.AvailabilityCallback); - method public void unregisterTorchCallback(@NonNull android.hardware.camera2.CameraManager.TorchCallback); - } - - public abstract static class CameraManager.AvailabilityCallback { - ctor public CameraManager.AvailabilityCallback(); - method public void onCameraAccessPrioritiesChanged(); - method public void onCameraAvailable(@NonNull String); - method public void onCameraUnavailable(@NonNull String); - method public void onPhysicalCameraAvailable(@NonNull String, @NonNull String); - method public void onPhysicalCameraUnavailable(@NonNull String, @NonNull String); - } - - public abstract static class CameraManager.TorchCallback { - ctor public CameraManager.TorchCallback(); - method public void onTorchModeChanged(@NonNull String, boolean); - method public void onTorchModeUnavailable(@NonNull String); - method public void onTorchStrengthLevelChanged(@NonNull String, int); - } - - public abstract class CameraMetadata { - method @NonNull public java.util.List getKeys(); - field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_FRONT = 1; // 0x1 - field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_LEFT = 3; // 0x3 - field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_OTHER = 0; // 0x0 - field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_REAR = 2; // 0x2 - field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_RIGHT = 4; // 0x4 - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_OTHER = 5; // 0x5 - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_1_CENTER = 7; // 0x7 - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_1_LEFT = 6; // 0x6 - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_1_RIGHT = 8; // 0x8 - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_2_CENTER = 10; // 0xa - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_2_LEFT = 9; // 0x9 - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_2_RIGHT = 11; // 0xb - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_3_CENTER = 13; // 0xd - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_3_LEFT = 12; // 0xc - field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_3_RIGHT = 14; // 0xe - field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_FRONT = 2; // 0x2 - field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_LEFT = 4; // 0x4 - field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_OTHER = 1; // 0x1 - field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_REAR = 3; // 0x3 - field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_RIGHT = 5; // 0x5 - field public static final int AUTOMOTIVE_LOCATION_EXTRA_FRONT = 7; // 0x7 - field public static final int AUTOMOTIVE_LOCATION_EXTRA_LEFT = 9; // 0x9 - field public static final int AUTOMOTIVE_LOCATION_EXTRA_OTHER = 6; // 0x6 - field public static final int AUTOMOTIVE_LOCATION_EXTRA_REAR = 8; // 0x8 - field public static final int AUTOMOTIVE_LOCATION_EXTRA_RIGHT = 10; // 0xa - field public static final int AUTOMOTIVE_LOCATION_INTERIOR = 0; // 0x0 - field public static final int COLOR_CORRECTION_ABERRATION_MODE_FAST = 1; // 0x1 - field public static final int COLOR_CORRECTION_ABERRATION_MODE_HIGH_QUALITY = 2; // 0x2 - field public static final int COLOR_CORRECTION_ABERRATION_MODE_OFF = 0; // 0x0 - field @FlaggedApi("com.android.internal.camera.flags.color_temperature") public static final int COLOR_CORRECTION_MODE_CCT = 3; // 0x3 - field public static final int COLOR_CORRECTION_MODE_FAST = 1; // 0x1 - field public static final int COLOR_CORRECTION_MODE_HIGH_QUALITY = 2; // 0x2 - field public static final int COLOR_CORRECTION_MODE_TRANSFORM_MATRIX = 0; // 0x0 - field public static final int CONTROL_AE_ANTIBANDING_MODE_50HZ = 1; // 0x1 - field public static final int CONTROL_AE_ANTIBANDING_MODE_60HZ = 2; // 0x2 - field public static final int CONTROL_AE_ANTIBANDING_MODE_AUTO = 3; // 0x3 - field public static final int CONTROL_AE_ANTIBANDING_MODE_OFF = 0; // 0x0 - field public static final int CONTROL_AE_MODE_OFF = 0; // 0x0 - field public static final int CONTROL_AE_MODE_ON = 1; // 0x1 - field public static final int CONTROL_AE_MODE_ON_ALWAYS_FLASH = 3; // 0x3 - field public static final int CONTROL_AE_MODE_ON_AUTO_FLASH = 2; // 0x2 - field public static final int CONTROL_AE_MODE_ON_AUTO_FLASH_REDEYE = 4; // 0x4 - field public static final int CONTROL_AE_MODE_ON_EXTERNAL_FLASH = 5; // 0x5 - field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") public static final int CONTROL_AE_MODE_ON_LOW_LIGHT_BOOST_BRIGHTNESS_PRIORITY = 6; // 0x6 - field public static final int CONTROL_AE_PRECAPTURE_TRIGGER_CANCEL = 2; // 0x2 - field public static final int CONTROL_AE_PRECAPTURE_TRIGGER_IDLE = 0; // 0x0 - field public static final int CONTROL_AE_PRECAPTURE_TRIGGER_START = 1; // 0x1 - field @FlaggedApi("com.android.internal.camera.flags.ae_priority") public static final int CONTROL_AE_PRIORITY_MODE_OFF = 0; // 0x0 - field @FlaggedApi("com.android.internal.camera.flags.ae_priority") public static final int CONTROL_AE_PRIORITY_MODE_SENSOR_EXPOSURE_TIME_PRIORITY = 2; // 0x2 - field @FlaggedApi("com.android.internal.camera.flags.ae_priority") public static final int CONTROL_AE_PRIORITY_MODE_SENSOR_SENSITIVITY_PRIORITY = 1; // 0x1 - field public static final int CONTROL_AE_STATE_CONVERGED = 2; // 0x2 - field public static final int CONTROL_AE_STATE_FLASH_REQUIRED = 4; // 0x4 - field public static final int CONTROL_AE_STATE_INACTIVE = 0; // 0x0 - field public static final int CONTROL_AE_STATE_LOCKED = 3; // 0x3 - field public static final int CONTROL_AE_STATE_PRECAPTURE = 5; // 0x5 - field public static final int CONTROL_AE_STATE_SEARCHING = 1; // 0x1 - field public static final int CONTROL_AF_MODE_AUTO = 1; // 0x1 - field public static final int CONTROL_AF_MODE_CONTINUOUS_PICTURE = 4; // 0x4 - field public static final int CONTROL_AF_MODE_CONTINUOUS_VIDEO = 3; // 0x3 - field public static final int CONTROL_AF_MODE_EDOF = 5; // 0x5 - field public static final int CONTROL_AF_MODE_MACRO = 2; // 0x2 - field public static final int CONTROL_AF_MODE_OFF = 0; // 0x0 - field public static final int CONTROL_AF_SCENE_CHANGE_DETECTED = 1; // 0x1 - field public static final int CONTROL_AF_SCENE_CHANGE_NOT_DETECTED = 0; // 0x0 - field public static final int CONTROL_AF_STATE_ACTIVE_SCAN = 3; // 0x3 - field public static final int CONTROL_AF_STATE_FOCUSED_LOCKED = 4; // 0x4 - field public static final int CONTROL_AF_STATE_INACTIVE = 0; // 0x0 - field public static final int CONTROL_AF_STATE_NOT_FOCUSED_LOCKED = 5; // 0x5 - field public static final int CONTROL_AF_STATE_PASSIVE_FOCUSED = 2; // 0x2 - field public static final int CONTROL_AF_STATE_PASSIVE_SCAN = 1; // 0x1 - field public static final int CONTROL_AF_STATE_PASSIVE_UNFOCUSED = 6; // 0x6 - field public static final int CONTROL_AF_TRIGGER_CANCEL = 2; // 0x2 - field public static final int CONTROL_AF_TRIGGER_IDLE = 0; // 0x0 - field public static final int CONTROL_AF_TRIGGER_START = 1; // 0x1 - field public static final int CONTROL_AUTOFRAMING_OFF = 0; // 0x0 - field public static final int CONTROL_AUTOFRAMING_ON = 1; // 0x1 - field public static final int CONTROL_AUTOFRAMING_STATE_CONVERGED = 2; // 0x2 - field public static final int CONTROL_AUTOFRAMING_STATE_FRAMING = 1; // 0x1 - field public static final int CONTROL_AUTOFRAMING_STATE_INACTIVE = 0; // 0x0 - field public static final int CONTROL_AWB_MODE_AUTO = 1; // 0x1 - field public static final int CONTROL_AWB_MODE_CLOUDY_DAYLIGHT = 6; // 0x6 - field public static final int CONTROL_AWB_MODE_DAYLIGHT = 5; // 0x5 - field public static final int CONTROL_AWB_MODE_FLUORESCENT = 3; // 0x3 - field public static final int CONTROL_AWB_MODE_INCANDESCENT = 2; // 0x2 - field public static final int CONTROL_AWB_MODE_OFF = 0; // 0x0 - field public static final int CONTROL_AWB_MODE_SHADE = 8; // 0x8 - field public static final int CONTROL_AWB_MODE_TWILIGHT = 7; // 0x7 - field public static final int CONTROL_AWB_MODE_WARM_FLUORESCENT = 4; // 0x4 - field public static final int CONTROL_AWB_STATE_CONVERGED = 2; // 0x2 - field public static final int CONTROL_AWB_STATE_INACTIVE = 0; // 0x0 - field public static final int CONTROL_AWB_STATE_LOCKED = 3; // 0x3 - field public static final int CONTROL_AWB_STATE_SEARCHING = 1; // 0x1 - field public static final int CONTROL_CAPTURE_INTENT_CUSTOM = 0; // 0x0 - field public static final int CONTROL_CAPTURE_INTENT_MANUAL = 6; // 0x6 - field public static final int CONTROL_CAPTURE_INTENT_MOTION_TRACKING = 7; // 0x7 - field public static final int CONTROL_CAPTURE_INTENT_PREVIEW = 1; // 0x1 - field public static final int CONTROL_CAPTURE_INTENT_STILL_CAPTURE = 2; // 0x2 - field public static final int CONTROL_CAPTURE_INTENT_VIDEO_RECORD = 3; // 0x3 - field public static final int CONTROL_CAPTURE_INTENT_VIDEO_SNAPSHOT = 4; // 0x4 - field public static final int CONTROL_CAPTURE_INTENT_ZERO_SHUTTER_LAG = 5; // 0x5 - field public static final int CONTROL_EFFECT_MODE_AQUA = 8; // 0x8 - field public static final int CONTROL_EFFECT_MODE_BLACKBOARD = 7; // 0x7 - field public static final int CONTROL_EFFECT_MODE_MONO = 1; // 0x1 - field public static final int CONTROL_EFFECT_MODE_NEGATIVE = 2; // 0x2 - field public static final int CONTROL_EFFECT_MODE_OFF = 0; // 0x0 - field public static final int CONTROL_EFFECT_MODE_POSTERIZE = 5; // 0x5 - field public static final int CONTROL_EFFECT_MODE_SEPIA = 4; // 0x4 - field public static final int CONTROL_EFFECT_MODE_SOLARIZE = 3; // 0x3 - field public static final int CONTROL_EFFECT_MODE_WHITEBOARD = 6; // 0x6 - field public static final int CONTROL_EXTENDED_SCENE_MODE_BOKEH_CONTINUOUS = 2; // 0x2 - field public static final int CONTROL_EXTENDED_SCENE_MODE_BOKEH_STILL_CAPTURE = 1; // 0x1 - field public static final int CONTROL_EXTENDED_SCENE_MODE_DISABLED = 0; // 0x0 - field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") public static final int CONTROL_LOW_LIGHT_BOOST_STATE_ACTIVE = 1; // 0x1 - field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") public static final int CONTROL_LOW_LIGHT_BOOST_STATE_INACTIVE = 0; // 0x0 - field public static final int CONTROL_MODE_AUTO = 1; // 0x1 - field public static final int CONTROL_MODE_OFF = 0; // 0x0 - field public static final int CONTROL_MODE_OFF_KEEP_STATE = 3; // 0x3 - field public static final int CONTROL_MODE_USE_EXTENDED_SCENE_MODE = 4; // 0x4 - field public static final int CONTROL_MODE_USE_SCENE_MODE = 2; // 0x2 - field public static final int CONTROL_SCENE_MODE_ACTION = 2; // 0x2 - field public static final int CONTROL_SCENE_MODE_BARCODE = 16; // 0x10 - field public static final int CONTROL_SCENE_MODE_BEACH = 8; // 0x8 - field public static final int CONTROL_SCENE_MODE_CANDLELIGHT = 15; // 0xf - field public static final int CONTROL_SCENE_MODE_DISABLED = 0; // 0x0 - field public static final int CONTROL_SCENE_MODE_FACE_PRIORITY = 1; // 0x1 - field public static final int CONTROL_SCENE_MODE_FIREWORKS = 12; // 0xc - field public static final int CONTROL_SCENE_MODE_HDR = 18; // 0x12 - field @Deprecated public static final int CONTROL_SCENE_MODE_HIGH_SPEED_VIDEO = 17; // 0x11 - field public static final int CONTROL_SCENE_MODE_LANDSCAPE = 4; // 0x4 - field public static final int CONTROL_SCENE_MODE_NIGHT = 5; // 0x5 - field public static final int CONTROL_SCENE_MODE_NIGHT_PORTRAIT = 6; // 0x6 - field public static final int CONTROL_SCENE_MODE_PARTY = 14; // 0xe - field public static final int CONTROL_SCENE_MODE_PORTRAIT = 3; // 0x3 - field public static final int CONTROL_SCENE_MODE_SNOW = 9; // 0x9 - field public static final int CONTROL_SCENE_MODE_SPORTS = 13; // 0xd - field public static final int CONTROL_SCENE_MODE_STEADYPHOTO = 11; // 0xb - field public static final int CONTROL_SCENE_MODE_SUNSET = 10; // 0xa - field public static final int CONTROL_SCENE_MODE_THEATRE = 7; // 0x7 - field public static final int CONTROL_SETTINGS_OVERRIDE_OFF = 0; // 0x0 - field public static final int CONTROL_SETTINGS_OVERRIDE_ZOOM = 1; // 0x1 - field public static final int CONTROL_VIDEO_STABILIZATION_MODE_OFF = 0; // 0x0 - field public static final int CONTROL_VIDEO_STABILIZATION_MODE_ON = 1; // 0x1 - field public static final int CONTROL_VIDEO_STABILIZATION_MODE_PREVIEW_STABILIZATION = 2; // 0x2 - field @FlaggedApi("com.android.internal.camera.flags.zoom_method") public static final int CONTROL_ZOOM_METHOD_AUTO = 0; // 0x0 - field @FlaggedApi("com.android.internal.camera.flags.zoom_method") public static final int CONTROL_ZOOM_METHOD_ZOOM_RATIO = 1; // 0x1 - field public static final int DISTORTION_CORRECTION_MODE_FAST = 1; // 0x1 - field public static final int DISTORTION_CORRECTION_MODE_HIGH_QUALITY = 2; // 0x2 - field public static final int DISTORTION_CORRECTION_MODE_OFF = 0; // 0x0 - field public static final int EDGE_MODE_FAST = 1; // 0x1 - field public static final int EDGE_MODE_HIGH_QUALITY = 2; // 0x2 - field public static final int EDGE_MODE_OFF = 0; // 0x0 - field public static final int EDGE_MODE_ZERO_SHUTTER_LAG = 3; // 0x3 - field @FlaggedApi("com.android.internal.camera.flags.night_mode_indicator") public static final int EXTENSION_NIGHT_MODE_INDICATOR_OFF = 1; // 0x1 - field @FlaggedApi("com.android.internal.camera.flags.night_mode_indicator") public static final int EXTENSION_NIGHT_MODE_INDICATOR_ON = 2; // 0x2 - field @FlaggedApi("com.android.internal.camera.flags.night_mode_indicator") public static final int EXTENSION_NIGHT_MODE_INDICATOR_UNKNOWN = 0; // 0x0 - field public static final int FLASH_MODE_OFF = 0; // 0x0 - field public static final int FLASH_MODE_SINGLE = 1; // 0x1 - field public static final int FLASH_MODE_TORCH = 2; // 0x2 - field public static final int FLASH_STATE_CHARGING = 1; // 0x1 - field public static final int FLASH_STATE_FIRED = 3; // 0x3 - field public static final int FLASH_STATE_PARTIAL = 4; // 0x4 - field public static final int FLASH_STATE_READY = 2; // 0x2 - field public static final int FLASH_STATE_UNAVAILABLE = 0; // 0x0 - field public static final int HOT_PIXEL_MODE_FAST = 1; // 0x1 - field public static final int HOT_PIXEL_MODE_HIGH_QUALITY = 2; // 0x2 - field public static final int HOT_PIXEL_MODE_OFF = 0; // 0x0 - field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_3 = 3; // 0x3 - field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_EXTERNAL = 4; // 0x4 - field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_FULL = 1; // 0x1 - field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY = 2; // 0x2 - field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED = 0; // 0x0 - field public static final int LENS_FACING_BACK = 1; // 0x1 - field public static final int LENS_FACING_EXTERNAL = 2; // 0x2 - field public static final int LENS_FACING_FRONT = 0; // 0x0 - field public static final int LENS_INFO_FOCUS_DISTANCE_CALIBRATION_APPROXIMATE = 1; // 0x1 - field public static final int LENS_INFO_FOCUS_DISTANCE_CALIBRATION_CALIBRATED = 2; // 0x2 - field public static final int LENS_INFO_FOCUS_DISTANCE_CALIBRATION_UNCALIBRATED = 0; // 0x0 - field public static final int LENS_OPTICAL_STABILIZATION_MODE_OFF = 0; // 0x0 - field public static final int LENS_OPTICAL_STABILIZATION_MODE_ON = 1; // 0x1 - field public static final int LENS_POSE_REFERENCE_AUTOMOTIVE = 3; // 0x3 - field public static final int LENS_POSE_REFERENCE_GYROSCOPE = 1; // 0x1 - field public static final int LENS_POSE_REFERENCE_PRIMARY_CAMERA = 0; // 0x0 - field public static final int LENS_POSE_REFERENCE_UNDEFINED = 2; // 0x2 - field public static final int LENS_STATE_MOVING = 1; // 0x1 - field public static final int LENS_STATE_STATIONARY = 0; // 0x0 - field public static final int LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_APPROXIMATE = 0; // 0x0 - field public static final int LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_CALIBRATED = 1; // 0x1 - field public static final int NOISE_REDUCTION_MODE_FAST = 1; // 0x1 - field public static final int NOISE_REDUCTION_MODE_HIGH_QUALITY = 2; // 0x2 - field public static final int NOISE_REDUCTION_MODE_MINIMAL = 3; // 0x3 - field public static final int NOISE_REDUCTION_MODE_OFF = 0; // 0x0 - field public static final int NOISE_REDUCTION_MODE_ZERO_SHUTTER_LAG = 4; // 0x4 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE = 0; // 0x0 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE = 6; // 0x6 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_COLOR_SPACE_PROFILES = 20; // 0x14 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO = 9; // 0x9 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_DEPTH_OUTPUT = 8; // 0x8 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT = 18; // 0x12 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA = 11; // 0xb - field public static final int REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING = 2; // 0x2 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR = 1; // 0x1 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_MONOCHROME = 12; // 0xc - field public static final int REQUEST_AVAILABLE_CAPABILITIES_MOTION_TRACKING = 10; // 0xa - field public static final int REQUEST_AVAILABLE_CAPABILITIES_OFFLINE_PROCESSING = 15; // 0xf - field public static final int REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING = 4; // 0x4 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_RAW = 3; // 0x3 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS = 5; // 0x5 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_REMOSAIC_REPROCESSING = 17; // 0x11 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_SECURE_IMAGE_DATA = 13; // 0xd - field public static final int REQUEST_AVAILABLE_CAPABILITIES_STREAM_USE_CASE = 19; // 0x13 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA = 14; // 0xe - field public static final int REQUEST_AVAILABLE_CAPABILITIES_ULTRA_HIGH_RESOLUTION_SENSOR = 16; // 0x10 - field public static final int REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING = 7; // 0x7 - field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_CROPPED_RAW = 6; // 0x6 - field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_DEFAULT = 0; // 0x0 - field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_PREVIEW = 1; // 0x1 - field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_PREVIEW_VIDEO_STILL = 4; // 0x4 - field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_STILL_CAPTURE = 2; // 0x2 - field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_VIDEO_CALL = 5; // 0x5 - field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_VIDEO_RECORD = 3; // 0x3 - field public static final int SCALER_CROPPING_TYPE_CENTER_ONLY = 0; // 0x0 - field public static final int SCALER_CROPPING_TYPE_FREEFORM = 1; // 0x1 - field public static final int SCALER_ROTATE_AND_CROP_180 = 2; // 0x2 - field public static final int SCALER_ROTATE_AND_CROP_270 = 3; // 0x3 - field public static final int SCALER_ROTATE_AND_CROP_90 = 1; // 0x1 - field public static final int SCALER_ROTATE_AND_CROP_AUTO = 4; // 0x4 - field public static final int SCALER_ROTATE_AND_CROP_NONE = 0; // 0x0 - field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_BGGR = 3; // 0x3 - field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GBRG = 2; // 0x2 - field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GRBG = 1; // 0x1 - field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO = 5; // 0x5 - field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR = 6; // 0x6 - field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGB = 4; // 0x4 - field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGGB = 0; // 0x0 - field public static final int SENSOR_INFO_TIMESTAMP_SOURCE_REALTIME = 1; // 0x1 - field public static final int SENSOR_INFO_TIMESTAMP_SOURCE_UNKNOWN = 0; // 0x0 - field public static final int SENSOR_PIXEL_MODE_DEFAULT = 0; // 0x0 - field public static final int SENSOR_PIXEL_MODE_MAXIMUM_RESOLUTION = 1; // 0x1 - field public static final int SENSOR_READOUT_TIMESTAMP_HARDWARE = 1; // 0x1 - field public static final int SENSOR_READOUT_TIMESTAMP_NOT_SUPPORTED = 0; // 0x0 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_CLOUDY_WEATHER = 10; // 0xa - field public static final int SENSOR_REFERENCE_ILLUMINANT1_COOL_WHITE_FLUORESCENT = 14; // 0xe - field public static final int SENSOR_REFERENCE_ILLUMINANT1_D50 = 23; // 0x17 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_D55 = 20; // 0x14 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_D65 = 21; // 0x15 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_D75 = 22; // 0x16 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT = 1; // 0x1 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT_FLUORESCENT = 12; // 0xc - field public static final int SENSOR_REFERENCE_ILLUMINANT1_DAY_WHITE_FLUORESCENT = 13; // 0xd - field public static final int SENSOR_REFERENCE_ILLUMINANT1_FINE_WEATHER = 9; // 0x9 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_FLASH = 4; // 0x4 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_FLUORESCENT = 2; // 0x2 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_ISO_STUDIO_TUNGSTEN = 24; // 0x18 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_SHADE = 11; // 0xb - field public static final int SENSOR_REFERENCE_ILLUMINANT1_STANDARD_A = 17; // 0x11 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_STANDARD_B = 18; // 0x12 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_STANDARD_C = 19; // 0x13 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_TUNGSTEN = 3; // 0x3 - field public static final int SENSOR_REFERENCE_ILLUMINANT1_WHITE_FLUORESCENT = 15; // 0xf - field public static final int SENSOR_TEST_PATTERN_MODE_COLOR_BARS = 2; // 0x2 - field public static final int SENSOR_TEST_PATTERN_MODE_COLOR_BARS_FADE_TO_GRAY = 3; // 0x3 - field public static final int SENSOR_TEST_PATTERN_MODE_CUSTOM1 = 256; // 0x100 - field public static final int SENSOR_TEST_PATTERN_MODE_OFF = 0; // 0x0 - field public static final int SENSOR_TEST_PATTERN_MODE_PN9 = 4; // 0x4 - field public static final int SENSOR_TEST_PATTERN_MODE_SOLID_COLOR = 1; // 0x1 - field public static final int SHADING_MODE_FAST = 1; // 0x1 - field public static final int SHADING_MODE_HIGH_QUALITY = 2; // 0x2 - field public static final int SHADING_MODE_OFF = 0; // 0x0 - field public static final int STATISTICS_FACE_DETECT_MODE_FULL = 2; // 0x2 - field public static final int STATISTICS_FACE_DETECT_MODE_OFF = 0; // 0x0 - field public static final int STATISTICS_FACE_DETECT_MODE_SIMPLE = 1; // 0x1 - field public static final int STATISTICS_LENS_SHADING_MAP_MODE_OFF = 0; // 0x0 - field public static final int STATISTICS_LENS_SHADING_MAP_MODE_ON = 1; // 0x1 - field public static final int STATISTICS_OIS_DATA_MODE_OFF = 0; // 0x0 - field public static final int STATISTICS_OIS_DATA_MODE_ON = 1; // 0x1 - field public static final int STATISTICS_SCENE_FLICKER_50HZ = 1; // 0x1 - field public static final int STATISTICS_SCENE_FLICKER_60HZ = 2; // 0x2 - field public static final int STATISTICS_SCENE_FLICKER_NONE = 0; // 0x0 - field public static final int SYNC_MAX_LATENCY_PER_FRAME_CONTROL = 0; // 0x0 - field public static final int SYNC_MAX_LATENCY_UNKNOWN = -1; // 0xffffffff - field public static final int TONEMAP_MODE_CONTRAST_CURVE = 0; // 0x0 - field public static final int TONEMAP_MODE_FAST = 1; // 0x1 - field public static final int TONEMAP_MODE_GAMMA_VALUE = 3; // 0x3 - field public static final int TONEMAP_MODE_HIGH_QUALITY = 2; // 0x2 - field public static final int TONEMAP_MODE_PRESET_CURVE = 4; // 0x4 - field public static final int TONEMAP_PRESET_CURVE_REC709 = 1; // 0x1 - field public static final int TONEMAP_PRESET_CURVE_SRGB = 0; // 0x0 - } - - public abstract class CameraOfflineSession extends android.hardware.camera2.CameraCaptureSession { - ctor public CameraOfflineSession(); - } - - public abstract static class CameraOfflineSession.CameraOfflineSessionCallback { - ctor public CameraOfflineSession.CameraOfflineSessionCallback(); - method public abstract void onClosed(@NonNull android.hardware.camera2.CameraOfflineSession); - method public abstract void onError(@NonNull android.hardware.camera2.CameraOfflineSession, int); - method public abstract void onIdle(@NonNull android.hardware.camera2.CameraOfflineSession); - method public abstract void onReady(@NonNull android.hardware.camera2.CameraOfflineSession); - method public abstract void onSwitchFailed(@NonNull android.hardware.camera2.CameraOfflineSession); - field public static final int STATUS_INTERNAL_ERROR = 0; // 0x0 - } - - public class CaptureFailure { - method public long getFrameNumber(); - method @Nullable public String getPhysicalCameraId(); - method public int getReason(); - method @NonNull public android.hardware.camera2.CaptureRequest getRequest(); - method public int getSequenceId(); - method public boolean wasImageCaptured(); - field public static final int REASON_ERROR = 0; // 0x0 - field public static final int REASON_FLUSHED = 1; // 0x1 - } - - public final class CaptureRequest extends android.hardware.camera2.CameraMetadata> implements android.os.Parcelable { - method public int describeContents(); - method protected void finalize(); - method @Nullable public T get(android.hardware.camera2.CaptureRequest.Key); - method @NonNull public java.util.List> getKeys(); - method @Nullable public Object getTag(); - method public boolean isReprocess(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key BLACK_LEVEL_LOCK; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_ABERRATION_MODE; - field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_COLOR_TEMPERATURE; - field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_COLOR_TINT; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_GAINS; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_TRANSFORM; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_ANTIBANDING_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_EXPOSURE_COMPENSATION; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_LOCK; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_PRECAPTURE_TRIGGER; - field @FlaggedApi("com.android.internal.camera.flags.ae_priority") @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_PRIORITY_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_REGIONS; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key> CONTROL_AE_TARGET_FPS_RANGE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AF_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AF_REGIONS; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AF_TRIGGER; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AUTOFRAMING; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AWB_LOCK; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AWB_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AWB_REGIONS; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_CAPTURE_INTENT; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_EFFECT_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_ENABLE_ZSL; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_EXTENDED_SCENE_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_POST_RAW_SENSITIVITY_BOOST; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_SCENE_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_SETTINGS_OVERRIDE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_VIDEO_STABILIZATION_MODE; - field @FlaggedApi("com.android.internal.camera.flags.zoom_method") @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_ZOOM_METHOD; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_ZOOM_RATIO; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key DISTORTION_CORRECTION_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key EDGE_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key EXTENSION_STRENGTH; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key FLASH_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key FLASH_STRENGTH_LEVEL; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key HOT_PIXEL_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_GPS_LOCATION; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_ORIENTATION; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_QUALITY; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_THUMBNAIL_QUALITY; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_THUMBNAIL_SIZE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_APERTURE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_FILTER_DENSITY; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_FOCAL_LENGTH; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_FOCUS_DISTANCE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_OPTICAL_STABILIZATION_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key NOISE_REDUCTION_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key REPROCESS_EFFECTIVE_EXPOSURE_FACTOR; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SCALER_CROP_REGION; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SCALER_ROTATE_AND_CROP; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_EXPOSURE_TIME; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_FRAME_DURATION; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_PIXEL_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_SENSITIVITY; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_TEST_PATTERN_DATA; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_TEST_PATTERN_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SHADING_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key STATISTICS_FACE_DETECT_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key STATISTICS_HOT_PIXEL_MAP_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key STATISTICS_LENS_SHADING_MAP_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key STATISTICS_OIS_DATA_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key TONEMAP_CURVE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key TONEMAP_GAMMA; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key TONEMAP_MODE; - field @NonNull public static final android.hardware.camera2.CaptureRequest.Key TONEMAP_PRESET_CURVE; - } - - public static final class CaptureRequest.Builder { - method public void addTarget(@NonNull android.view.Surface); - method @NonNull public android.hardware.camera2.CaptureRequest build(); - method @Nullable public T get(android.hardware.camera2.CaptureRequest.Key); - method @Nullable public T getPhysicalCameraKey(android.hardware.camera2.CaptureRequest.Key, @NonNull String); - method public void removeTarget(@NonNull android.view.Surface); - method public void set(@NonNull android.hardware.camera2.CaptureRequest.Key, T); - method public android.hardware.camera2.CaptureRequest.Builder setPhysicalCameraKey(@NonNull android.hardware.camera2.CaptureRequest.Key, T, @NonNull String); - method public void setTag(@Nullable Object); - } - - public static final class CaptureRequest.Key { - ctor public CaptureRequest.Key(@NonNull String, @NonNull Class); - method @NonNull public String getName(); - } - - public class CaptureResult extends android.hardware.camera2.CameraMetadata> { - method @Nullable public T get(android.hardware.camera2.CaptureResult.Key); - method @NonNull public String getCameraId(); - method public long getFrameNumber(); - method @NonNull public java.util.List> getKeys(); - method @NonNull public android.hardware.camera2.CaptureRequest getRequest(); - method public int getSequenceId(); - field @NonNull public static final android.hardware.camera2.CaptureResult.Key BLACK_LEVEL_LOCK; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_ABERRATION_MODE; - field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_COLOR_TEMPERATURE; - field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_COLOR_TINT; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_GAINS; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_TRANSFORM; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_ANTIBANDING_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_EXPOSURE_COMPENSATION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_LOCK; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_PRECAPTURE_TRIGGER; - field @FlaggedApi("com.android.internal.camera.flags.ae_priority") @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_PRIORITY_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_REGIONS; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_STATE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key> CONTROL_AE_TARGET_FPS_RANGE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_REGIONS; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_SCENE_CHANGE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_STATE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_TRIGGER; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AUTOFRAMING; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AUTOFRAMING_STATE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AWB_LOCK; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AWB_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AWB_REGIONS; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AWB_STATE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_CAPTURE_INTENT; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_EFFECT_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_ENABLE_ZSL; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_EXTENDED_SCENE_MODE; - field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_LOW_LIGHT_BOOST_STATE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_POST_RAW_SENSITIVITY_BOOST; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_SCENE_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_SETTINGS_OVERRIDE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_VIDEO_STABILIZATION_MODE; - field @FlaggedApi("com.android.internal.camera.flags.zoom_method") @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_ZOOM_METHOD; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_ZOOM_RATIO; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key DISTORTION_CORRECTION_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key EDGE_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key EXTENSION_CURRENT_TYPE; - field @FlaggedApi("com.android.internal.camera.flags.night_mode_indicator") @NonNull public static final android.hardware.camera2.CaptureResult.Key EXTENSION_NIGHT_MODE_INDICATOR; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key EXTENSION_STRENGTH; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key FLASH_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key FLASH_STATE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key FLASH_STRENGTH_LEVEL; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key HOT_PIXEL_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_GPS_LOCATION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_ORIENTATION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_QUALITY; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_THUMBNAIL_QUALITY; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_THUMBNAIL_SIZE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_APERTURE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_DISTORTION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_FILTER_DENSITY; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_FOCAL_LENGTH; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_FOCUS_DISTANCE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key> LENS_FOCUS_RANGE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_INTRINSIC_CALIBRATION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_OPTICAL_STABILIZATION_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_POSE_ROTATION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_POSE_TRANSLATION; - field @Deprecated @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_RADIAL_DISTORTION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_STATE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_ID; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_SENSOR_CROP_REGION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key NOISE_REDUCTION_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key REPROCESS_EFFECTIVE_EXPOSURE_FACTOR; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key REQUEST_PIPELINE_DEPTH; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SCALER_CROP_REGION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SCALER_RAW_CROP_REGION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SCALER_ROTATE_AND_CROP; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_DYNAMIC_BLACK_LEVEL; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_DYNAMIC_WHITE_LEVEL; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_EXPOSURE_TIME; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_FRAME_DURATION; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_GREEN_SPLIT; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_NEUTRAL_COLOR_POINT; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key[]> SENSOR_NOISE_PROFILE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_PIXEL_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_RAW_BINNING_FACTOR_USED; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_ROLLING_SHUTTER_SKEW; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_SENSITIVITY; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_TEST_PATTERN_DATA; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_TEST_PATTERN_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_TIMESTAMP; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key SHADING_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_FACES; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_FACE_DETECT_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_HOT_PIXEL_MAP; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_HOT_PIXEL_MAP_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_LENS_INTRINSICS_SAMPLES; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_LENS_SHADING_CORRECTION_MAP; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_LENS_SHADING_MAP_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_OIS_DATA_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_OIS_SAMPLES; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_SCENE_FLICKER; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key TONEMAP_CURVE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key TONEMAP_GAMMA; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key TONEMAP_MODE; - field @NonNull public static final android.hardware.camera2.CaptureResult.Key TONEMAP_PRESET_CURVE; - } - - public static final class CaptureResult.Key { - ctor public CaptureResult.Key(@NonNull String, @NonNull Class); - method @NonNull public String getName(); - } - - public final class DngCreator implements java.lang.AutoCloseable { - ctor public DngCreator(@NonNull android.hardware.camera2.CameraCharacteristics, @NonNull android.hardware.camera2.CaptureResult); - method public void close(); - method @NonNull public android.hardware.camera2.DngCreator setDescription(@NonNull String); - method @NonNull public android.hardware.camera2.DngCreator setLocation(@NonNull android.location.Location); - method @NonNull public android.hardware.camera2.DngCreator setOrientation(int); - method @NonNull public android.hardware.camera2.DngCreator setThumbnail(@NonNull android.graphics.Bitmap); - method @NonNull public android.hardware.camera2.DngCreator setThumbnail(@NonNull android.media.Image); - method public void writeByteBuffer(@NonNull java.io.OutputStream, @NonNull android.util.Size, @NonNull java.nio.ByteBuffer, @IntRange(from=0) long) throws java.io.IOException; - method public void writeImage(@NonNull java.io.OutputStream, @NonNull android.media.Image) throws java.io.IOException; - method public void writeInputStream(@NonNull java.io.OutputStream, @NonNull android.util.Size, @NonNull java.io.InputStream, @IntRange(from=0) long) throws java.io.IOException; - field public static final int MAX_THUMBNAIL_DIMENSION = 256; // 0x100 - } - - public class MultiResolutionImageReader implements java.lang.AutoCloseable { - ctor public MultiResolutionImageReader(@NonNull java.util.Collection, int, @IntRange(from=1) int); - ctor @FlaggedApi("com.android.internal.camera.flags.multiresolution_imagereader_usage_public") public MultiResolutionImageReader(@NonNull java.util.Collection, int, @IntRange(from=1) int, long); - method public void close(); - method protected void finalize(); - method public void flush(); - method @NonNull public android.hardware.camera2.params.MultiResolutionStreamInfo getStreamInfoForImageReader(@NonNull android.media.ImageReader); - method @NonNull public android.view.Surface getSurface(); - method public void setOnImageAvailableListener(@Nullable android.media.ImageReader.OnImageAvailableListener, @Nullable java.util.concurrent.Executor); - } - - public final class TotalCaptureResult extends android.hardware.camera2.CaptureResult { - method @NonNull public java.util.List getPartialResults(); - method @Deprecated public java.util.Map getPhysicalCameraResults(); - method @NonNull public java.util.Map getPhysicalCameraTotalResults(); - } - -} - -package android.hardware.camera2.params { - - public final class BlackLevelPattern { - ctor public BlackLevelPattern(@NonNull int[]); - method public void copyTo(int[], int); - method public int getOffsetForIndex(int, int); - field public static final int COUNT = 4; // 0x4 - } - - public final class Capability { - ctor public Capability(int, @NonNull android.util.Size, @NonNull android.util.Range); - method @NonNull public android.util.Size getMaxStreamingSize(); - method public int getMode(); - method @NonNull public android.util.Range getZoomRatioRange(); - } - - public final class ColorSpaceProfiles { - ctor public ColorSpaceProfiles(@NonNull long[]); - method @NonNull public java.util.Set getSupportedColorSpaces(int); - method @NonNull public java.util.Set getSupportedColorSpacesForDynamicRange(int, long); - method @NonNull public java.util.Set getSupportedDynamicRangeProfiles(@NonNull android.graphics.ColorSpace.Named, int); - method @NonNull public java.util.Set getSupportedImageFormatsForColorSpace(@NonNull android.graphics.ColorSpace.Named); - field public static final int UNSPECIFIED = -1; // 0xffffffff - } - - public final class ColorSpaceTransform { - ctor public ColorSpaceTransform(android.util.Rational[]); - ctor public ColorSpaceTransform(int[]); - method public void copyElements(android.util.Rational[], int); - method public void copyElements(int[], int); - method public android.util.Rational getElement(int, int); - } - - public final class DeviceStateSensorOrientationMap { - method public int getSensorOrientation(long); - field public static final long FOLDED = 4L; // 0x4L - field public static final long NORMAL = 0L; // 0x0L - } - - public static final class DeviceStateSensorOrientationMap.Builder { - ctor public DeviceStateSensorOrientationMap.Builder(); - method @NonNull public android.hardware.camera2.params.DeviceStateSensorOrientationMap.Builder addOrientationForState(long, long); - method @NonNull public android.hardware.camera2.params.DeviceStateSensorOrientationMap build(); - } - - public final class DynamicRangeProfiles { - ctor public DynamicRangeProfiles(@NonNull long[]); - method @NonNull public java.util.Set getProfileCaptureRequestConstraints(long); - method @NonNull public java.util.Set getSupportedProfiles(); - method public boolean isExtraLatencyPresent(long); - field public static final long DOLBY_VISION_10B_HDR_OEM = 64L; // 0x40L - field public static final long DOLBY_VISION_10B_HDR_OEM_PO = 128L; // 0x80L - field public static final long DOLBY_VISION_10B_HDR_REF = 16L; // 0x10L - field public static final long DOLBY_VISION_10B_HDR_REF_PO = 32L; // 0x20L - field public static final long DOLBY_VISION_8B_HDR_OEM = 1024L; // 0x400L - field public static final long DOLBY_VISION_8B_HDR_OEM_PO = 2048L; // 0x800L - field public static final long DOLBY_VISION_8B_HDR_REF = 256L; // 0x100L - field public static final long DOLBY_VISION_8B_HDR_REF_PO = 512L; // 0x200L - field public static final long HDR10 = 4L; // 0x4L - field public static final long HDR10_PLUS = 8L; // 0x8L - field public static final long HLG10 = 2L; // 0x2L - field public static final long PUBLIC_MAX = 4096L; // 0x1000L - field public static final long STANDARD = 1L; // 0x1L - } - - public final class ExtensionSessionConfiguration { - ctor public ExtensionSessionConfiguration(int, @NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraExtensionSession.StateCallback); - method public void clearColorSpace(); - method @Nullable public android.graphics.ColorSpace getColorSpace(); - method @NonNull public java.util.concurrent.Executor getExecutor(); - method public int getExtension(); - method @NonNull public java.util.List getOutputConfigurations(); - method @Nullable public android.hardware.camera2.params.OutputConfiguration getPostviewOutputConfiguration(); - method @NonNull public android.hardware.camera2.CameraExtensionSession.StateCallback getStateCallback(); - method public void setColorSpace(@NonNull android.graphics.ColorSpace.Named); - method public void setPostviewOutputConfiguration(@Nullable android.hardware.camera2.params.OutputConfiguration); - } - - public final class Face { - method public android.graphics.Rect getBounds(); - method public int getId(); - method public android.graphics.Point getLeftEyePosition(); - method public android.graphics.Point getMouthPosition(); - method public android.graphics.Point getRightEyePosition(); - method @IntRange(from=android.hardware.camera2.params.Face.SCORE_MIN, to=android.hardware.camera2.params.Face.SCORE_MAX) public int getScore(); - field public static final int ID_UNSUPPORTED = -1; // 0xffffffff - field public static final int SCORE_MAX = 100; // 0x64 - field public static final int SCORE_MIN = 1; // 0x1 - } - - public static final class Face.Builder { - ctor public Face.Builder(); - ctor public Face.Builder(@NonNull android.hardware.camera2.params.Face); - method @NonNull public android.hardware.camera2.params.Face build(); - method @NonNull public android.hardware.camera2.params.Face.Builder setBounds(@NonNull android.graphics.Rect); - method @NonNull public android.hardware.camera2.params.Face.Builder setId(int); - method @NonNull public android.hardware.camera2.params.Face.Builder setLeftEyePosition(@NonNull android.graphics.Point); - method @NonNull public android.hardware.camera2.params.Face.Builder setMouthPosition(@NonNull android.graphics.Point); - method @NonNull public android.hardware.camera2.params.Face.Builder setRightEyePosition(@NonNull android.graphics.Point); - method @NonNull public android.hardware.camera2.params.Face.Builder setScore(@IntRange(from=android.hardware.camera2.params.Face.SCORE_MIN, to=android.hardware.camera2.params.Face.SCORE_MAX) int); - } - - public final class InputConfiguration { - ctor public InputConfiguration(int, int, int); - ctor public InputConfiguration(@NonNull java.util.Collection, int); - method public int getFormat(); - method public int getHeight(); - method public int getWidth(); - method public boolean isMultiResolution(); - } - - public final class LensIntrinsicsSample { - ctor public LensIntrinsicsSample(long, @NonNull float[]); - method @NonNull public float[] getLensIntrinsics(); - method public long getTimestampNanos(); - } - - public final class LensShadingMap { - method public void copyGainFactors(float[], int); - method public int getColumnCount(); - method public float getGainFactor(int, int, int); - method public int getGainFactorCount(); - method public android.hardware.camera2.params.RggbChannelVector getGainFactorVector(int, int); - method public int getRowCount(); - field public static final float MINIMUM_GAIN_FACTOR = 1.0f; - } - - public final class MandatoryStreamCombination { - method @NonNull public CharSequence getDescription(); - method @NonNull public java.util.List getStreamsInformation(); - method public boolean isReprocessable(); - } - - public static final class MandatoryStreamCombination.MandatoryStreamInformation { - method public int get10BitFormat(); - method @NonNull public java.util.List getAvailableSizes(); - method public int getFormat(); - method public long getStreamUseCase(); - method public boolean is10BitCapable(); - method public boolean isInput(); - method public boolean isMaximumSize(); - method public boolean isUltraHighResolution(); - } - - public final class MeteringRectangle { - ctor public MeteringRectangle(int, int, int, int, int); - ctor public MeteringRectangle(android.graphics.Point, android.util.Size, int); - ctor public MeteringRectangle(android.graphics.Rect, int); - method public boolean equals(android.hardware.camera2.params.MeteringRectangle); - method public int getHeight(); - method public int getMeteringWeight(); - method public android.graphics.Rect getRect(); - method public android.util.Size getSize(); - method public android.graphics.Point getUpperLeftPoint(); - method public int getWidth(); - method public int getX(); - method public int getY(); - field public static final int METERING_WEIGHT_DONT_CARE = 0; // 0x0 - field public static final int METERING_WEIGHT_MAX = 1000; // 0x3e8 - field public static final int METERING_WEIGHT_MIN = 0; // 0x0 - } - - public final class MultiResolutionStreamConfigurationMap { - method @NonNull public int[] getInputFormats(); - method @NonNull public java.util.Collection getInputInfo(int); - method @NonNull public int[] getOutputFormats(); - method @NonNull public java.util.Collection getOutputInfo(int); - } - - public class MultiResolutionStreamInfo { - ctor public MultiResolutionStreamInfo(@IntRange(from=1) int, @IntRange(from=1) int, @NonNull String); - method @IntRange(from=1) public int getHeight(); - method @NonNull public String getPhysicalCameraId(); - method @IntRange(from=1) public int getWidth(); - } - - public final class OisSample { - ctor public OisSample(long, float, float); - method public long getTimestamp(); - method public float getXshift(); - method public float getYshift(); - } - - public final class OutputConfiguration implements android.os.Parcelable { - ctor public OutputConfiguration(@NonNull android.view.Surface); - ctor public OutputConfiguration(int, @NonNull android.view.Surface); - ctor public OutputConfiguration(@NonNull android.util.Size, @NonNull Class); - ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public OutputConfiguration(int, @NonNull android.util.Size); - ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public OutputConfiguration(int, int, @NonNull android.util.Size); - ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public OutputConfiguration(int, @NonNull android.util.Size, long); - ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public OutputConfiguration(int, int, @NonNull android.util.Size, long); - method public void addSensorPixelModeUsed(int); - method public void addSurface(@NonNull android.view.Surface); - method @NonNull public static java.util.Collection createInstancesForMultiResolutionOutput(@NonNull android.hardware.camera2.MultiResolutionImageReader); - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public static java.util.List createInstancesForMultiResolutionOutput(@NonNull java.util.Collection, int); - method public int describeContents(); - method public void enableSurfaceSharing(); - method public long getDynamicRangeProfile(); - method public int getMaxSharedSurfaceCount(); - method public int getMirrorMode(); - method @FlaggedApi("com.android.internal.camera.flags.mirror_mode_shared_surfaces") public int getMirrorMode(@NonNull android.view.Surface); - method public long getStreamUseCase(); - method @Nullable public android.view.Surface getSurface(); - method public int getSurfaceGroupId(); - method @NonNull public java.util.List getSurfaces(); - method public int getTimestampBase(); - method public boolean isReadoutTimestampEnabled(); - method public void removeSensorPixelModeUsed(int); - method public void removeSurface(@NonNull android.view.Surface); - method public void setDynamicRangeProfile(long); - method public void setMirrorMode(int); - method @FlaggedApi("com.android.internal.camera.flags.mirror_mode_shared_surfaces") public void setMirrorMode(@NonNull android.view.Surface, int); - method public void setPhysicalCameraId(@Nullable String); - method public void setReadoutTimestampEnabled(boolean); - method public void setStreamUseCase(long); - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public static void setSurfacesForMultiResolutionOutput(@NonNull java.util.Collection, @NonNull android.hardware.camera2.MultiResolutionImageReader); - method public void setTimestampBase(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int MIRROR_MODE_AUTO = 0; // 0x0 - field public static final int MIRROR_MODE_H = 2; // 0x2 - field public static final int MIRROR_MODE_NONE = 1; // 0x1 - field public static final int MIRROR_MODE_V = 3; // 0x3 - field public static final int SURFACE_GROUP_ID_NONE = -1; // 0xffffffff - field public static final int TIMESTAMP_BASE_CHOREOGRAPHER_SYNCED = 4; // 0x4 - field public static final int TIMESTAMP_BASE_DEFAULT = 0; // 0x0 - field public static final int TIMESTAMP_BASE_MONOTONIC = 2; // 0x2 - field public static final int TIMESTAMP_BASE_REALTIME = 3; // 0x3 - field public static final int TIMESTAMP_BASE_SENSOR = 1; // 0x1 - } - - public final class RecommendedStreamConfigurationMap { - method @Nullable public java.util.Set getHighResolutionOutputSizes(int); - method @Nullable public java.util.Set> getHighSpeedVideoFpsRanges(); - method @Nullable public java.util.Set> getHighSpeedVideoFpsRangesFor(@NonNull android.util.Size); - method @Nullable public java.util.Set getHighSpeedVideoSizes(); - method @Nullable public java.util.Set getHighSpeedVideoSizesFor(@NonNull android.util.Range); - method @Nullable public java.util.Set getInputFormats(); - method @Nullable public java.util.Set getInputSizes(int); - method @NonNull public java.util.Set getOutputFormats(); - method @IntRange(from=0) public long getOutputMinFrameDuration(int, @NonNull android.util.Size); - method @IntRange(from=0) public long getOutputMinFrameDuration(@NonNull Class, @NonNull android.util.Size); - method @Nullable public java.util.Set getOutputSizes(int); - method @Nullable public java.util.Set getOutputSizes(@NonNull Class); - method @IntRange(from=0) public long getOutputStallDuration(int, @NonNull android.util.Size); - method @IntRange(from=0) public long getOutputStallDuration(@NonNull Class, @NonNull android.util.Size); - method public int getRecommendedUseCase(); - method @Nullable public java.util.Set getValidOutputFormatsForInput(int); - method public boolean isOutputSupportedFor(int); - method public boolean isOutputSupportedFor(@NonNull android.view.Surface); - field public static final int USECASE_10BIT_OUTPUT = 8; // 0x8 - field public static final int USECASE_LOW_LATENCY_SNAPSHOT = 6; // 0x6 - field public static final int USECASE_PREVIEW = 0; // 0x0 - field public static final int USECASE_RAW = 5; // 0x5 - field public static final int USECASE_RECORD = 1; // 0x1 - field public static final int USECASE_SNAPSHOT = 3; // 0x3 - field public static final int USECASE_VIDEO_SNAPSHOT = 2; // 0x2 - field public static final int USECASE_ZSL = 4; // 0x4 - } - - public final class RggbChannelVector { - ctor public RggbChannelVector(float, float, float, float); - method public void copyTo(float[], int); - method public float getBlue(); - method public float getComponent(int); - method public float getGreenEven(); - method public float getGreenOdd(); - method public float getRed(); - field public static final int BLUE = 3; // 0x3 - field public static final int COUNT = 4; // 0x4 - field public static final int GREEN_EVEN = 1; // 0x1 - field public static final int GREEN_ODD = 2; // 0x2 - field public static final int RED = 0; // 0x0 - } - - public final class SessionConfiguration implements android.os.Parcelable { - ctor public SessionConfiguration(int, @NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback); - ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public SessionConfiguration(int, @NonNull java.util.List); - method public void clearColorSpace(); - method public int describeContents(); - method @Nullable public android.graphics.ColorSpace getColorSpace(); - method public java.util.concurrent.Executor getExecutor(); - method public android.hardware.camera2.params.InputConfiguration getInputConfiguration(); - method public java.util.List getOutputConfigurations(); - method public android.hardware.camera2.CaptureRequest getSessionParameters(); - method public int getSessionType(); - method public android.hardware.camera2.CameraCaptureSession.StateCallback getStateCallback(); - method public void setColorSpace(@NonNull android.graphics.ColorSpace.Named); - method public void setInputConfiguration(@NonNull android.hardware.camera2.params.InputConfiguration); - method public void setSessionParameters(android.hardware.camera2.CaptureRequest); - method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public void setStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SESSION_HIGH_SPEED = 1; // 0x1 - field public static final int SESSION_REGULAR = 0; // 0x0 - } - - public final class StreamConfigurationMap { - method public android.util.Size[] getHighResolutionOutputSizes(int); - method public android.util.Range[] getHighSpeedVideoFpsRanges(); - method public android.util.Range[] getHighSpeedVideoFpsRangesFor(android.util.Size); - method public android.util.Size[] getHighSpeedVideoSizes(); - method public android.util.Size[] getHighSpeedVideoSizesFor(android.util.Range); - method public int[] getInputFormats(); - method public android.util.Size[] getInputSizes(int); - method public int[] getOutputFormats(); - method public long getOutputMinFrameDuration(int, android.util.Size); - method public long getOutputMinFrameDuration(Class, android.util.Size); - method public android.util.Size[] getOutputSizes(Class); - method public android.util.Size[] getOutputSizes(int); - method public long getOutputStallDuration(int, android.util.Size); - method public long getOutputStallDuration(Class, android.util.Size); - method public int[] getValidOutputFormatsForInput(int); - method public boolean isOutputSupportedFor(int); - method public static boolean isOutputSupportedFor(Class); - method public boolean isOutputSupportedFor(android.view.Surface); - } - - public final class TonemapCurve { - ctor public TonemapCurve(float[], float[], float[]); - method public void copyColorCurve(int, float[], int); - method public android.graphics.PointF getPoint(int, int); - method public int getPointCount(int); - field public static final int CHANNEL_BLUE = 2; // 0x2 - field public static final int CHANNEL_GREEN = 1; // 0x1 - field public static final int CHANNEL_RED = 0; // 0x0 - field public static final float LEVEL_BLACK = 0.0f; - field public static final float LEVEL_WHITE = 1.0f; - field public static final int POINT_SIZE = 2; // 0x2 - } - -} - -package android.hardware.display { - - public final class DeviceProductInfo implements android.os.Parcelable { - ctor public DeviceProductInfo(@Nullable String, @NonNull String, @NonNull String, @IntRange(from=1990) int, int); - method public int describeContents(); - method public int getConnectionToSinkType(); - method @IntRange(from=0xffffffff, to=53) public int getManufactureWeek(); - method @IntRange(from=0xffffffff) public int getManufactureYear(); - method @NonNull public String getManufacturerPnpId(); - method @IntRange(from=0xffffffff) public int getModelYear(); - method @Nullable public String getName(); - method @NonNull public String getProductId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CONNECTION_TO_SINK_BUILT_IN = 1; // 0x1 - field public static final int CONNECTION_TO_SINK_DIRECT = 2; // 0x2 - field public static final int CONNECTION_TO_SINK_TRANSITIVE = 3; // 0x3 - field public static final int CONNECTION_TO_SINK_UNKNOWN = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class DisplayManager { - method public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull String, @IntRange(from=1) int, @IntRange(from=1) int, @IntRange(from=1) int, @Nullable android.view.Surface, int); - method public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull String, @IntRange(from=1) int, @IntRange(from=1) int, @IntRange(from=1) int, @Nullable android.view.Surface, int, @Nullable android.hardware.display.VirtualDisplay.Callback, @Nullable android.os.Handler); - method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull android.hardware.display.VirtualDisplayConfig); - method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull android.hardware.display.VirtualDisplayConfig, @Nullable android.os.Handler, @Nullable android.hardware.display.VirtualDisplay.Callback); - method public android.view.Display getDisplay(int); - method public android.view.Display[] getDisplays(); - method public android.view.Display[] getDisplays(String); - method @NonNull public android.hardware.display.HdrConversionMode getHdrConversionMode(); - method public int getMatchContentFrameRateUserPreference(); - method public void registerDisplayListener(android.hardware.display.DisplayManager.DisplayListener, android.os.Handler); - method @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public void registerDisplayListener(@NonNull java.util.concurrent.Executor, long, @NonNull android.hardware.display.DisplayManager.DisplayListener); - method public void unregisterDisplayListener(android.hardware.display.DisplayManager.DisplayListener); - field public static final String DISPLAY_CATEGORY_PRESENTATION = "android.hardware.display.category.PRESENTATION"; - field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_ADDED = 1L; // 0x1L - field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_CHANGED = 4L; // 0x4L - field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_REFRESH_RATE = 8L; // 0x8L - field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_REMOVED = 2L; // 0x2L - field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_STATE = 16L; // 0x10L - field public static final int MATCH_CONTENT_FRAMERATE_ALWAYS = 2; // 0x2 - field public static final int MATCH_CONTENT_FRAMERATE_NEVER = 0; // 0x0 - field public static final int MATCH_CONTENT_FRAMERATE_SEAMLESSS_ONLY = 1; // 0x1 - field public static final int MATCH_CONTENT_FRAMERATE_UNKNOWN = -1; // 0xffffffff - field public static final int VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR = 16; // 0x10 - field public static final int VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY = 8; // 0x8 - field public static final int VIRTUAL_DISPLAY_FLAG_PRESENTATION = 2; // 0x2 - field public static final int VIRTUAL_DISPLAY_FLAG_PUBLIC = 1; // 0x1 - field public static final int VIRTUAL_DISPLAY_FLAG_SECURE = 4; // 0x4 - } - - public static interface DisplayManager.DisplayListener { - method public void onDisplayAdded(int); - method public void onDisplayChanged(int); - method public void onDisplayRemoved(int); - } - - public final class HdrConversionMode implements android.os.Parcelable { - ctor public HdrConversionMode(int, int); - ctor public HdrConversionMode(int); - method public int describeContents(); - method public int getConversionMode(); - method public int getPreferredHdrOutputType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int HDR_CONVERSION_FORCE = 3; // 0x3 - field public static final int HDR_CONVERSION_PASSTHROUGH = 1; // 0x1 - field public static final int HDR_CONVERSION_SYSTEM = 2; // 0x2 - field public static final int HDR_CONVERSION_UNSUPPORTED = 0; // 0x0 - } - - public final class VirtualDisplay { - method public android.view.Display getDisplay(); - method public android.view.Surface getSurface(); - method public void release(); - method public void resize(int, int, int); - method @FlaggedApi("android.companion.virtualdevice.flags.virtual_display_rotation_api") public void setRotation(int); - method public void setSurface(android.view.Surface); - } - - public abstract static class VirtualDisplay.Callback { - ctor public VirtualDisplay.Callback(); - method public void onPaused(); - method public void onResumed(); - method public void onStopped(); - } - - public final class VirtualDisplayConfig implements android.os.Parcelable { - method public int describeContents(); - method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @FloatRange(from=0.0f, to=1.0f) public float getDefaultBrightness(); - method public int getDensityDpi(); - method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @FloatRange(from=0.0f, to=1.0f) public float getDimBrightness(); - method @NonNull public java.util.Set getDisplayCategories(); - method public int getFlags(); - method public int getHeight(); - method @NonNull public String getName(); - method public float getRequestedRefreshRate(); - method @Nullable public android.view.Surface getSurface(); - method public int getWidth(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") public static interface VirtualDisplayConfig.BrightnessListener { - method public void onBrightnessChanged(@FloatRange(from=0.0f, to=1.0f) float); - } - - public static final class VirtualDisplayConfig.Builder { - ctor public VirtualDisplayConfig.Builder(@NonNull String, @IntRange(from=1) int, @IntRange(from=1) int, @IntRange(from=1) int); - method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder addDisplayCategory(@NonNull String); - method @NonNull public android.hardware.display.VirtualDisplayConfig build(); - method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setBrightnessListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.display.VirtualDisplayConfig.BrightnessListener); - method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setDefaultBrightness(@FloatRange(from=0.0f, to=1.0f) float); - method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setDimBrightness(@FloatRange(from=0.0f, to=1.0f) float); - method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setDisplayCategories(@NonNull java.util.Set); - method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setFlags(int); - method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setRequestedRefreshRate(@FloatRange(from=0.0f) float); - method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setSurface(@Nullable android.view.Surface); - } - -} - -package android.hardware.fingerprint { - - @Deprecated public class FingerprintManager { - method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.USE_BIOMETRIC, android.Manifest.permission.USE_FINGERPRINT}) public void authenticate(@Nullable android.hardware.fingerprint.FingerprintManager.CryptoObject, @Nullable android.os.CancellationSignal, int, @NonNull android.hardware.fingerprint.FingerprintManager.AuthenticationCallback, @Nullable android.os.Handler); - method @Deprecated @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) public boolean hasEnrolledFingerprints(); - method @Deprecated @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) public boolean isHardwareDetected(); - field @Deprecated public static final int FINGERPRINT_ACQUIRED_GOOD = 0; // 0x0 - field @Deprecated public static final int FINGERPRINT_ACQUIRED_IMAGER_DIRTY = 3; // 0x3 - field @Deprecated public static final int FINGERPRINT_ACQUIRED_INSUFFICIENT = 2; // 0x2 - field @Deprecated public static final int FINGERPRINT_ACQUIRED_PARTIAL = 1; // 0x1 - field @Deprecated public static final int FINGERPRINT_ACQUIRED_TOO_FAST = 5; // 0x5 - field @Deprecated public static final int FINGERPRINT_ACQUIRED_TOO_SLOW = 4; // 0x4 - field @Deprecated public static final int FINGERPRINT_ERROR_CANCELED = 5; // 0x5 - field @Deprecated public static final int FINGERPRINT_ERROR_HW_NOT_PRESENT = 12; // 0xc - field @Deprecated public static final int FINGERPRINT_ERROR_HW_UNAVAILABLE = 1; // 0x1 - field @Deprecated public static final int FINGERPRINT_ERROR_LOCKOUT = 7; // 0x7 - field @Deprecated public static final int FINGERPRINT_ERROR_LOCKOUT_PERMANENT = 9; // 0x9 - field @Deprecated public static final int FINGERPRINT_ERROR_NO_FINGERPRINTS = 11; // 0xb - field @Deprecated public static final int FINGERPRINT_ERROR_NO_SPACE = 4; // 0x4 - field @Deprecated public static final int FINGERPRINT_ERROR_TIMEOUT = 3; // 0x3 - field @Deprecated public static final int FINGERPRINT_ERROR_UNABLE_TO_PROCESS = 2; // 0x2 - field @Deprecated public static final int FINGERPRINT_ERROR_USER_CANCELED = 10; // 0xa - field @Deprecated public static final int FINGERPRINT_ERROR_VENDOR = 8; // 0x8 - } - - @Deprecated public abstract static class FingerprintManager.AuthenticationCallback { - ctor @Deprecated public FingerprintManager.AuthenticationCallback(); - method @Deprecated public void onAuthenticationError(int, CharSequence); - method @Deprecated public void onAuthenticationFailed(); - method @Deprecated public void onAuthenticationHelp(int, CharSequence); - method @Deprecated public void onAuthenticationSucceeded(android.hardware.fingerprint.FingerprintManager.AuthenticationResult); - } - - @Deprecated public static class FingerprintManager.AuthenticationResult { - method @Deprecated public android.hardware.fingerprint.FingerprintManager.CryptoObject getCryptoObject(); - } - - @Deprecated public static final class FingerprintManager.CryptoObject { - ctor @Deprecated public FingerprintManager.CryptoObject(@NonNull java.security.Signature); - ctor @Deprecated public FingerprintManager.CryptoObject(@NonNull javax.crypto.Cipher); - ctor @Deprecated public FingerprintManager.CryptoObject(@NonNull javax.crypto.Mac); - method @Deprecated public javax.crypto.Cipher getCipher(); - method @Deprecated public javax.crypto.Mac getMac(); - method @Deprecated public java.security.Signature getSignature(); - } - -} - -package android.hardware.input { - - public final class HostUsiVersion implements android.os.Parcelable { - method public int describeContents(); - method public int getMajorVersion(); - method public int getMinorVersion(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class InputManager { - method @Nullable public android.hardware.input.HostUsiVersion getHostUsiVersion(@NonNull android.view.Display); - method @Nullable public android.view.InputDevice getInputDevice(int); - method public int[] getInputDeviceIds(); - method @FlaggedApi("com.android.input.flags.input_device_view_behavior_api") @Nullable public android.view.InputDevice.ViewBehavior getInputDeviceViewBehavior(int); - method @FloatRange(from=0, to=1) public float getMaximumObscuringOpacityForTouch(); - method public boolean isStylusPointerIconEnabled(); - method public void registerInputDeviceListener(android.hardware.input.InputManager.InputDeviceListener, android.os.Handler); - method public void unregisterInputDeviceListener(android.hardware.input.InputManager.InputDeviceListener); - method @Nullable public android.view.VerifiedInputEvent verifyInputEvent(@NonNull android.view.InputEvent); - field public static final String ACTION_QUERY_KEYBOARD_LAYOUTS = "android.hardware.input.action.QUERY_KEYBOARD_LAYOUTS"; - field public static final String META_DATA_KEYBOARD_LAYOUTS = "android.hardware.input.metadata.KEYBOARD_LAYOUTS"; - } - - public static interface InputManager.InputDeviceListener { - method public void onInputDeviceAdded(int); - method public void onInputDeviceChanged(int); - method public void onInputDeviceRemoved(int); - } - -} - -package android.hardware.lights { - - public final class Light implements android.os.Parcelable { - method public int describeContents(); - method public int getId(); - method @NonNull public String getName(); - method public int getOrdinal(); - method public int getType(); - method public boolean hasBrightnessControl(); - method public boolean hasRgbControl(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int LIGHT_CAPABILITY_BRIGHTNESS = 1; // 0x1 - field public static final int LIGHT_CAPABILITY_COLOR_RGB = 2; // 0x2 - field @Deprecated public static final int LIGHT_CAPABILITY_RGB = 0; // 0x0 - field public static final int LIGHT_TYPE_INPUT = 10001; // 0x2711 - field public static final int LIGHT_TYPE_KEYBOARD_BACKLIGHT = 10003; // 0x2713 - field public static final int LIGHT_TYPE_MICROPHONE = 8; // 0x8 - field public static final int LIGHT_TYPE_PLAYER_ID = 10002; // 0x2712 - } - - public final class LightState implements android.os.Parcelable { - method public int describeContents(); - method @ColorInt public int getColor(); - method public int getPlayerId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class LightState.Builder { - ctor public LightState.Builder(); - method @NonNull public android.hardware.lights.LightState build(); - method @NonNull public android.hardware.lights.LightState.Builder setColor(@ColorInt int); - method @NonNull public android.hardware.lights.LightState.Builder setPlayerId(int); - } - - public abstract class LightsManager { - method @NonNull public abstract android.hardware.lights.LightState getLightState(@NonNull android.hardware.lights.Light); - method @NonNull public abstract java.util.List getLights(); - method @NonNull public abstract android.hardware.lights.LightsManager.LightsSession openSession(); - } - - public abstract static class LightsManager.LightsSession implements java.lang.AutoCloseable { - method public abstract void close(); - method public abstract void requestLights(@NonNull android.hardware.lights.LightsRequest); - } - - public final class LightsRequest { - method @NonNull public java.util.List getLightStates(); - method @NonNull public java.util.List getLights(); - method @NonNull public java.util.Map getLightsAndStates(); - } - - public static final class LightsRequest.Builder { - ctor public LightsRequest.Builder(); - method @NonNull public android.hardware.lights.LightsRequest.Builder addLight(@NonNull android.hardware.lights.Light, @NonNull android.hardware.lights.LightState); - method @NonNull public android.hardware.lights.LightsRequest build(); - method @NonNull public android.hardware.lights.LightsRequest.Builder clearLight(@NonNull android.hardware.lights.Light); - } - -} - -package android.hardware.usb { - - public class UsbAccessory implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getDescription(); - method @NonNull public String getManufacturer(); - method @NonNull public String getModel(); - method @Nullable public String getSerial(); - method @Nullable public String getUri(); - method @Nullable public String getVersion(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class UsbConfiguration implements android.os.Parcelable { - method public int describeContents(); - method public int getId(); - method @NonNull public android.hardware.usb.UsbInterface getInterface(int); - method public int getInterfaceCount(); - method public int getMaxPower(); - method @Nullable public String getName(); - method public boolean isRemoteWakeup(); - method public boolean isSelfPowered(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class UsbConstants { - ctor public UsbConstants(); - field public static final int USB_CLASS_APP_SPEC = 254; // 0xfe - field public static final int USB_CLASS_AUDIO = 1; // 0x1 - field public static final int USB_CLASS_CDC_DATA = 10; // 0xa - field public static final int USB_CLASS_COMM = 2; // 0x2 - field public static final int USB_CLASS_CONTENT_SEC = 13; // 0xd - field public static final int USB_CLASS_CSCID = 11; // 0xb - field public static final int USB_CLASS_HID = 3; // 0x3 - field public static final int USB_CLASS_HUB = 9; // 0x9 - field public static final int USB_CLASS_MASS_STORAGE = 8; // 0x8 - field public static final int USB_CLASS_MISC = 239; // 0xef - field public static final int USB_CLASS_PER_INTERFACE = 0; // 0x0 - field public static final int USB_CLASS_PHYSICA = 5; // 0x5 - field public static final int USB_CLASS_PRINTER = 7; // 0x7 - field public static final int USB_CLASS_STILL_IMAGE = 6; // 0x6 - field public static final int USB_CLASS_VENDOR_SPEC = 255; // 0xff - field public static final int USB_CLASS_VIDEO = 14; // 0xe - field public static final int USB_CLASS_WIRELESS_CONTROLLER = 224; // 0xe0 - field public static final int USB_DIR_IN = 128; // 0x80 - field public static final int USB_DIR_OUT = 0; // 0x0 - field public static final int USB_ENDPOINT_DIR_MASK = 128; // 0x80 - field public static final int USB_ENDPOINT_NUMBER_MASK = 15; // 0xf - field public static final int USB_ENDPOINT_XFERTYPE_MASK = 3; // 0x3 - field public static final int USB_ENDPOINT_XFER_BULK = 2; // 0x2 - field public static final int USB_ENDPOINT_XFER_CONTROL = 0; // 0x0 - field public static final int USB_ENDPOINT_XFER_INT = 3; // 0x3 - field public static final int USB_ENDPOINT_XFER_ISOC = 1; // 0x1 - field public static final int USB_INTERFACE_SUBCLASS_BOOT = 1; // 0x1 - field public static final int USB_SUBCLASS_VENDOR_SPEC = 255; // 0xff - field public static final int USB_TYPE_CLASS = 32; // 0x20 - field public static final int USB_TYPE_MASK = 96; // 0x60 - field public static final int USB_TYPE_RESERVED = 96; // 0x60 - field public static final int USB_TYPE_STANDARD = 0; // 0x0 - field public static final int USB_TYPE_VENDOR = 64; // 0x40 - } - - public class UsbDevice implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.hardware.usb.UsbConfiguration getConfiguration(int); - method public int getConfigurationCount(); - method public int getDeviceClass(); - method public int getDeviceId(); - method public static int getDeviceId(String); - method @NonNull public String getDeviceName(); - method public static String getDeviceName(int); - method public int getDeviceProtocol(); - method public int getDeviceSubclass(); - method @NonNull public android.hardware.usb.UsbInterface getInterface(int); - method public int getInterfaceCount(); - method @Nullable public String getManufacturerName(); - method public int getProductId(); - method @Nullable public String getProductName(); - method @Nullable public String getSerialNumber(); - method public int getVendorId(); - method @NonNull public String getVersion(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class UsbDeviceConnection { - method public int bulkTransfer(android.hardware.usb.UsbEndpoint, byte[], int, int); - method public int bulkTransfer(android.hardware.usb.UsbEndpoint, byte[], int, int, int); - method public boolean claimInterface(android.hardware.usb.UsbInterface, boolean); - method public void close(); - method public int controlTransfer(int, int, int, int, @Nullable byte[], int, int); - method public int controlTransfer(int, int, int, int, @Nullable byte[], int, int, int); - method public int getFileDescriptor(); - method public byte[] getRawDescriptors(); - method public String getSerial(); - method public boolean releaseInterface(android.hardware.usb.UsbInterface); - method public android.hardware.usb.UsbRequest requestWait(); - method public android.hardware.usb.UsbRequest requestWait(long) throws java.util.concurrent.TimeoutException; - method public boolean setConfiguration(android.hardware.usb.UsbConfiguration); - method public boolean setInterface(android.hardware.usb.UsbInterface); - } - - public class UsbEndpoint implements android.os.Parcelable { - method public int describeContents(); - method public int getAddress(); - method public int getAttributes(); - method public int getDirection(); - method public int getEndpointNumber(); - method public int getInterval(); - method public int getMaxPacketSize(); - method public int getType(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class UsbInterface implements android.os.Parcelable { - method public int describeContents(); - method public int getAlternateSetting(); - method public android.hardware.usb.UsbEndpoint getEndpoint(int); - method public int getEndpointCount(); - method public int getId(); - method public int getInterfaceClass(); - method public int getInterfaceProtocol(); - method public int getInterfaceSubclass(); - method @Nullable public String getName(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class UsbManager { - method public android.hardware.usb.UsbAccessory[] getAccessoryList(); - method public java.util.HashMap getDeviceList(); - method public boolean hasPermission(android.hardware.usb.UsbDevice); - method public boolean hasPermission(android.hardware.usb.UsbAccessory); - method public android.os.ParcelFileDescriptor openAccessory(android.hardware.usb.UsbAccessory); - method @FlaggedApi("android.hardware.usb.flags.enable_accessory_stream_api") @NonNull public java.io.InputStream openAccessoryInputStream(@NonNull android.hardware.usb.UsbAccessory); - method @FlaggedApi("android.hardware.usb.flags.enable_accessory_stream_api") @NonNull public java.io.OutputStream openAccessoryOutputStream(@NonNull android.hardware.usb.UsbAccessory); - method public android.hardware.usb.UsbDeviceConnection openDevice(android.hardware.usb.UsbDevice); - method public void requestPermission(android.hardware.usb.UsbDevice, android.app.PendingIntent); - method public void requestPermission(android.hardware.usb.UsbAccessory, android.app.PendingIntent); - field public static final String ACTION_USB_ACCESSORY_ATTACHED = "android.hardware.usb.action.USB_ACCESSORY_ATTACHED"; - field public static final String ACTION_USB_ACCESSORY_DETACHED = "android.hardware.usb.action.USB_ACCESSORY_DETACHED"; - field public static final String ACTION_USB_DEVICE_ATTACHED = "android.hardware.usb.action.USB_DEVICE_ATTACHED"; - field public static final String ACTION_USB_DEVICE_DETACHED = "android.hardware.usb.action.USB_DEVICE_DETACHED"; - field public static final String EXTRA_ACCESSORY = "accessory"; - field public static final String EXTRA_DEVICE = "device"; - field public static final String EXTRA_PERMISSION_GRANTED = "permission"; - } - - public class UsbRequest { - ctor public UsbRequest(); - method public boolean cancel(); - method public void close(); - method public Object getClientData(); - method public android.hardware.usb.UsbEndpoint getEndpoint(); - method public boolean initialize(android.hardware.usb.UsbDeviceConnection, android.hardware.usb.UsbEndpoint); - method @Deprecated public boolean queue(java.nio.ByteBuffer, int); - method public boolean queue(@Nullable java.nio.ByteBuffer); - method public void setClientData(Object); - } - -} - -package android.inputmethodservice { - - public abstract class AbstractInputMethodService extends android.app.Service implements android.view.KeyEvent.Callback { - ctor public AbstractInputMethodService(); - method public android.view.KeyEvent.DispatcherState getKeyDispatcherState(); - method public final android.os.IBinder onBind(android.content.Intent); - method public abstract android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl onCreateInputMethodInterface(); - method public abstract android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl onCreateInputMethodSessionInterface(); - method public boolean onGenericMotionEvent(android.view.MotionEvent); - method @FlaggedApi("android.view.inputmethod.verify_key_event") public boolean onShouldVerifyKeyEvent(@NonNull android.view.KeyEvent); - method public boolean onTrackballEvent(android.view.MotionEvent); - } - - public abstract class AbstractInputMethodService.AbstractInputMethodImpl implements android.view.inputmethod.InputMethod { - ctor public AbstractInputMethodService.AbstractInputMethodImpl(); - method @MainThread public void createSession(android.view.inputmethod.InputMethod.SessionCallback); - method @MainThread public void revokeSession(android.view.inputmethod.InputMethodSession); - method @MainThread public void setSessionEnabled(android.view.inputmethod.InputMethodSession, boolean); - } - - public abstract class AbstractInputMethodService.AbstractInputMethodSessionImpl implements android.view.inputmethod.InputMethodSession { - ctor public AbstractInputMethodService.AbstractInputMethodSessionImpl(); - method public void dispatchGenericMotionEvent(int, android.view.MotionEvent, android.view.inputmethod.InputMethodSession.EventCallback); - method public void dispatchKeyEvent(int, android.view.KeyEvent, android.view.inputmethod.InputMethodSession.EventCallback); - method public void dispatchTrackballEvent(int, android.view.MotionEvent, android.view.inputmethod.InputMethodSession.EventCallback); - method public boolean isEnabled(); - method public boolean isRevoked(); - method @FlaggedApi("android.view.inputmethod.verify_key_event") public boolean onShouldVerifyKeyEvent(@NonNull android.view.KeyEvent); - method public void revokeSelf(); - method public void setEnabled(boolean); - } - - public class ExtractEditText extends android.widget.EditText { - ctor public ExtractEditText(android.content.Context); - ctor public ExtractEditText(android.content.Context, android.util.AttributeSet); - ctor public ExtractEditText(android.content.Context, android.util.AttributeSet, int); - ctor public ExtractEditText(android.content.Context, android.util.AttributeSet, int, int); - method public void finishInternalChanges(); - method public boolean hasVerticalScrollBar(); - method public void startInternalChanges(); - } - - @UiContext public class InputMethodService extends android.inputmethodservice.AbstractInputMethodService { - ctor public InputMethodService(); - method @Deprecated public boolean enableHardwareAcceleration(); - method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public final void finishConnectionlessStylusHandwriting(@Nullable CharSequence); - method public final void finishStylusHandwriting(); - method public int getBackDisposition(); - method public int getCandidatesHiddenVisibility(); - method public android.view.inputmethod.InputBinding getCurrentInputBinding(); - method public android.view.inputmethod.InputConnection getCurrentInputConnection(); - method public android.view.inputmethod.EditorInfo getCurrentInputEditorInfo(); - method public boolean getCurrentInputStarted(); - method @Deprecated public int getInputMethodWindowRecommendedHeight(); - method public android.view.LayoutInflater getLayoutInflater(); - method public int getMaxWidth(); - method @NonNull public static final java.time.Duration getStylusHandwritingIdleTimeoutMax(); - method @NonNull public final java.time.Duration getStylusHandwritingSessionTimeout(); - method @Nullable public final android.view.Window getStylusHandwritingWindow(); - method public CharSequence getTextForImeAction(int); - method public android.app.Dialog getWindow(); - method public void hideStatusIcon(); - method public void hideWindow(); - method public boolean isExtractViewShown(); - method public boolean isFullscreenMode(); - method public boolean isInputViewShown(); - method public boolean isShowInputRequested(); - method public void onAppPrivateCommand(String, android.os.Bundle); - method public void onBindInput(); - method public void onComputeInsets(android.inputmethodservice.InputMethodService.Insets); - method public void onConfigureWindow(android.view.Window, boolean, boolean); - method public android.view.View onCreateCandidatesView(); - method public android.view.View onCreateExtractTextView(); - method @Nullable public android.view.inputmethod.InlineSuggestionsRequest onCreateInlineSuggestionsRequest(@NonNull android.os.Bundle); - method @Deprecated public android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl onCreateInputMethodInterface(); - method @Deprecated public android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl onCreateInputMethodSessionInterface(); - method public android.view.View onCreateInputView(); - method protected void onCurrentInputMethodSubtypeChanged(android.view.inputmethod.InputMethodSubtype); - method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") public void onCustomImeSwitcherButtonRequestedVisible(boolean); - method public void onDisplayCompletions(android.view.inputmethod.CompletionInfo[]); - method public boolean onEvaluateFullscreenMode(); - method @CallSuper public boolean onEvaluateInputViewShown(); - method public boolean onExtractTextContextMenuItem(int); - method public void onExtractedCursorMovement(int, int); - method public void onExtractedSelectionChanged(int, int); - method public void onExtractedTextClicked(); - method public void onExtractingInputChanged(android.view.inputmethod.EditorInfo); - method public void onFinishCandidatesView(boolean); - method public void onFinishInput(); - method public void onFinishInputView(boolean); - method public void onFinishStylusHandwriting(); - method public void onInitializeInterface(); - method public boolean onInlineSuggestionsResponse(@NonNull android.view.inputmethod.InlineSuggestionsResponse); - method public boolean onKeyDown(int, android.view.KeyEvent); - method public boolean onKeyLongPress(int, android.view.KeyEvent); - method public boolean onKeyMultiple(int, int, android.view.KeyEvent); - method public boolean onKeyUp(int, android.view.KeyEvent); - method public void onPrepareStylusHandwriting(); - method public boolean onShowInputRequested(int, boolean); - method public void onStartCandidatesView(android.view.inputmethod.EditorInfo, boolean); - method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public boolean onStartConnectionlessStylusHandwriting(int, @Nullable android.view.inputmethod.CursorAnchorInfo); - method public void onStartInput(android.view.inputmethod.EditorInfo, boolean); - method public void onStartInputView(android.view.inputmethod.EditorInfo, boolean); - method public boolean onStartStylusHandwriting(); - method public void onStylusHandwritingMotionEvent(@NonNull android.view.MotionEvent); - method public void onUnbindInput(); - method @Deprecated public void onUpdateCursor(android.graphics.Rect); - method public void onUpdateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo); - method public void onUpdateEditorToolType(int); - method public void onUpdateExtractedText(int, android.view.inputmethod.ExtractedText); - method public void onUpdateExtractingViews(android.view.inputmethod.EditorInfo); - method public void onUpdateExtractingVisibility(android.view.inputmethod.EditorInfo); - method public void onUpdateSelection(int, int, int, int, int, int); - method @Deprecated public void onViewClicked(boolean); - method public void onWindowHidden(); - method public void onWindowShown(); - method public void requestHideSelf(int); - method public final void requestShowSelf(int); - method public boolean sendDefaultEditorAction(boolean); - method public void sendDownUpKeyEvents(int); - method public void sendKeyChar(char); - method public void setBackDisposition(int); - method public void setCandidatesView(android.view.View); - method public void setCandidatesViewShown(boolean); - method public void setExtractView(android.view.View); - method public void setExtractViewShown(boolean); - method public void setInputView(android.view.View); - method @FlaggedApi("android.view.inputmethod.adaptive_handwriting_bounds") public final void setStylusHandwritingRegion(@NonNull android.graphics.Region); - method public final void setStylusHandwritingSessionTimeout(@NonNull java.time.Duration); - method public final boolean shouldOfferSwitchingToNextInputMethod(); - method public void showStatusIcon(@DrawableRes int); - method public void showWindow(boolean); - method public void switchInputMethod(String); - method public final void switchInputMethod(String, android.view.inputmethod.InputMethodSubtype); - method public final boolean switchToNextInputMethod(boolean); - method public final boolean switchToPreviousInputMethod(); - method public void updateFullscreenMode(); - method public void updateInputViewShown(); - field public static final int BACK_DISPOSITION_ADJUST_NOTHING = 3; // 0x3 - field public static final int BACK_DISPOSITION_DEFAULT = 0; // 0x0 - field @Deprecated public static final int BACK_DISPOSITION_WILL_DISMISS = 2; // 0x2 - field @Deprecated public static final int BACK_DISPOSITION_WILL_NOT_DISMISS = 1; // 0x1 - } - - public class InputMethodService.InputMethodImpl extends android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl { - ctor public InputMethodService.InputMethodImpl(); - method @MainThread public void attachToken(android.os.IBinder); - method @MainThread public void bindInput(android.view.inputmethod.InputBinding); - method @MainThread public void changeInputMethodSubtype(android.view.inputmethod.InputMethodSubtype); - method @MainThread public void hideSoftInput(int, android.os.ResultReceiver); - method @MainThread public void restartInput(android.view.inputmethod.InputConnection, android.view.inputmethod.EditorInfo); - method @MainThread public void showSoftInput(int, android.os.ResultReceiver); - method @MainThread public void startInput(android.view.inputmethod.InputConnection, android.view.inputmethod.EditorInfo); - method @MainThread public void unbindInput(); - } - - public class InputMethodService.InputMethodSessionImpl extends android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl { - ctor public InputMethodService.InputMethodSessionImpl(); - method public void appPrivateCommand(String, android.os.Bundle); - method public void displayCompletions(android.view.inputmethod.CompletionInfo[]); - method public void finishInput(); - method @Deprecated public void toggleSoftInput(int, int); - method public void updateCursor(android.graphics.Rect); - method public void updateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo); - method public void updateExtractedText(int, android.view.inputmethod.ExtractedText); - method public void updateSelection(int, int, int, int, int, int); - method public void viewClicked(boolean); - } - - public static final class InputMethodService.Insets { - ctor public InputMethodService.Insets(); - field public static final int TOUCHABLE_INSETS_CONTENT = 1; // 0x1 - field public static final int TOUCHABLE_INSETS_FRAME = 0; // 0x0 - field public static final int TOUCHABLE_INSETS_REGION = 3; // 0x3 - field public static final int TOUCHABLE_INSETS_VISIBLE = 2; // 0x2 - field public int contentTopInsets; - field public int touchableInsets; - field public final android.graphics.Region touchableRegion; - field public int visibleTopInsets; - } - - @Deprecated public class Keyboard { - ctor @Deprecated public Keyboard(android.content.Context, int); - ctor @Deprecated public Keyboard(android.content.Context, @XmlRes int, int, int, int); - ctor @Deprecated public Keyboard(android.content.Context, @XmlRes int, int); - ctor @Deprecated public Keyboard(android.content.Context, int, CharSequence, int, int); - method @Deprecated protected android.inputmethodservice.Keyboard.Key createKeyFromXml(android.content.res.Resources, android.inputmethodservice.Keyboard.Row, int, int, android.content.res.XmlResourceParser); - method @Deprecated protected android.inputmethodservice.Keyboard.Row createRowFromXml(android.content.res.Resources, android.content.res.XmlResourceParser); - method @Deprecated public int getHeight(); - method @Deprecated protected int getHorizontalGap(); - method @Deprecated protected int getKeyHeight(); - method @Deprecated protected int getKeyWidth(); - method @Deprecated public java.util.List getKeys(); - method @Deprecated public int getMinWidth(); - method @Deprecated public java.util.List getModifierKeys(); - method @Deprecated public int[] getNearestKeys(int, int); - method @Deprecated public int getShiftKeyIndex(); - method @Deprecated protected int getVerticalGap(); - method @Deprecated public boolean isShifted(); - method @Deprecated protected void setHorizontalGap(int); - method @Deprecated protected void setKeyHeight(int); - method @Deprecated protected void setKeyWidth(int); - method @Deprecated public boolean setShifted(boolean); - method @Deprecated protected void setVerticalGap(int); - field @Deprecated public static final int EDGE_BOTTOM = 8; // 0x8 - field @Deprecated public static final int EDGE_LEFT = 1; // 0x1 - field @Deprecated public static final int EDGE_RIGHT = 2; // 0x2 - field @Deprecated public static final int EDGE_TOP = 4; // 0x4 - field @Deprecated public static final int KEYCODE_ALT = -6; // 0xfffffffa - field @Deprecated public static final int KEYCODE_CANCEL = -3; // 0xfffffffd - field @Deprecated public static final int KEYCODE_DELETE = -5; // 0xfffffffb - field @Deprecated public static final int KEYCODE_DONE = -4; // 0xfffffffc - field @Deprecated public static final int KEYCODE_MODE_CHANGE = -2; // 0xfffffffe - field @Deprecated public static final int KEYCODE_SHIFT = -1; // 0xffffffff - } - - @Deprecated public static class Keyboard.Key { - ctor @Deprecated public Keyboard.Key(android.inputmethodservice.Keyboard.Row); - ctor @Deprecated public Keyboard.Key(android.content.res.Resources, android.inputmethodservice.Keyboard.Row, int, int, android.content.res.XmlResourceParser); - method @Deprecated public int[] getCurrentDrawableState(); - method @Deprecated public boolean isInside(int, int); - method @Deprecated public void onPressed(); - method @Deprecated public void onReleased(boolean); - method @Deprecated public int squaredDistanceFrom(int, int); - field @Deprecated public int[] codes; - field @Deprecated public int edgeFlags; - field @Deprecated public int gap; - field @Deprecated public int height; - field @Deprecated public android.graphics.drawable.Drawable icon; - field @Deprecated public android.graphics.drawable.Drawable iconPreview; - field @Deprecated public CharSequence label; - field @Deprecated public boolean modifier; - field @Deprecated public boolean on; - field @Deprecated public CharSequence popupCharacters; - field @Deprecated public int popupResId; - field @Deprecated public boolean pressed; - field @Deprecated public boolean repeatable; - field @Deprecated public boolean sticky; - field @Deprecated public CharSequence text; - field @Deprecated public int width; - field @Deprecated public int x; - field @Deprecated public int y; - } - - @Deprecated public static class Keyboard.Row { - ctor @Deprecated public Keyboard.Row(android.inputmethodservice.Keyboard); - ctor @Deprecated public Keyboard.Row(android.content.res.Resources, android.inputmethodservice.Keyboard, android.content.res.XmlResourceParser); - field @Deprecated public int defaultHeight; - field @Deprecated public int defaultHorizontalGap; - field @Deprecated public int defaultWidth; - field @Deprecated public int mode; - field @Deprecated public int rowEdgeFlags; - field @Deprecated public int verticalGap; - } - - @Deprecated public class KeyboardView extends android.view.View implements android.view.View.OnClickListener { - ctor @Deprecated public KeyboardView(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public KeyboardView(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public KeyboardView(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated public void closing(); - method @Deprecated public android.inputmethodservice.Keyboard getKeyboard(); - method @Deprecated protected android.inputmethodservice.KeyboardView.OnKeyboardActionListener getOnKeyboardActionListener(); - method @Deprecated public boolean handleBack(); - method @Deprecated public void invalidateAllKeys(); - method @Deprecated public void invalidateKey(int); - method @Deprecated public boolean isPreviewEnabled(); - method @Deprecated public boolean isProximityCorrectionEnabled(); - method @Deprecated public boolean isShifted(); - method @Deprecated public void onClick(android.view.View); - method @Deprecated public void onDetachedFromWindow(); - method @Deprecated public void onDraw(android.graphics.Canvas); - method @Deprecated protected boolean onLongPress(android.inputmethodservice.Keyboard.Key); - method @Deprecated public void onMeasure(int, int); - method @Deprecated public void onSizeChanged(int, int, int, int); - method @Deprecated public void setKeyboard(android.inputmethodservice.Keyboard); - method @Deprecated public void setOnKeyboardActionListener(android.inputmethodservice.KeyboardView.OnKeyboardActionListener); - method @Deprecated public void setPopupOffset(int, int); - method @Deprecated public void setPopupParent(android.view.View); - method @Deprecated public void setPreviewEnabled(boolean); - method @Deprecated public void setProximityCorrectionEnabled(boolean); - method @Deprecated public boolean setShifted(boolean); - method @Deprecated public void setVerticalCorrection(int); - method @Deprecated protected void swipeDown(); - method @Deprecated protected void swipeLeft(); - method @Deprecated protected void swipeRight(); - method @Deprecated protected void swipeUp(); - } - - @Deprecated public static interface KeyboardView.OnKeyboardActionListener { - method @Deprecated public void onKey(int, int[]); - method @Deprecated public void onPress(int); - method @Deprecated public void onRelease(int); - method @Deprecated public void onText(CharSequence); - method @Deprecated public void swipeDown(); - method @Deprecated public void swipeLeft(); - method @Deprecated public void swipeRight(); - method @Deprecated public void swipeUp(); - } - -} - -package android.location { - - public class Location implements android.os.Parcelable { - ctor public Location(@Nullable String); - ctor public Location(@NonNull android.location.Location); - method public float bearingTo(@NonNull android.location.Location); - method @NonNull public static String convert(@FloatRange double, int); - method @FloatRange public static double convert(@NonNull String); - method public int describeContents(); - method public static void distanceBetween(@FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double, @FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double, float[]); - method @FloatRange(from=0.0) public float distanceTo(@NonNull android.location.Location); - method @Deprecated public void dump(@NonNull android.util.Printer, @Nullable String); - method @FloatRange(from=0.0) public float getAccuracy(); - method @FloatRange public double getAltitude(); - method @FloatRange(from=0.0, to=360.0, toInclusive=false) public float getBearing(); - method @FloatRange(from=0.0) public float getBearingAccuracyDegrees(); - method @IntRange(from=0) public long getElapsedRealtimeAgeMillis(); - method public long getElapsedRealtimeAgeMillis(@IntRange(from=0) long); - method @IntRange(from=0) public long getElapsedRealtimeMillis(); - method @IntRange(from=0) public long getElapsedRealtimeNanos(); - method @FloatRange(from=0.0) public double getElapsedRealtimeUncertaintyNanos(); - method @Nullable public android.os.Bundle getExtras(); - method @FloatRange(from=-90.0, to=90.0) public double getLatitude(); - method @FloatRange(from=-180.0, to=180.0) public double getLongitude(); - method @FloatRange(from=0.0) public float getMslAltitudeAccuracyMeters(); - method @FloatRange public double getMslAltitudeMeters(); - method @Nullable public String getProvider(); - method @FloatRange(from=0.0) public float getSpeed(); - method @FloatRange(from=0.0) public float getSpeedAccuracyMetersPerSecond(); - method @IntRange(from=0) public long getTime(); - method @FloatRange(from=0.0) public float getVerticalAccuracyMeters(); - method public boolean hasAccuracy(); - method public boolean hasAltitude(); - method public boolean hasBearing(); - method public boolean hasBearingAccuracy(); - method public boolean hasElapsedRealtimeUncertaintyNanos(); - method public boolean hasMslAltitude(); - method public boolean hasMslAltitudeAccuracy(); - method public boolean hasSpeed(); - method public boolean hasSpeedAccuracy(); - method public boolean hasVerticalAccuracy(); - method public boolean isComplete(); - method @Deprecated public boolean isFromMockProvider(); - method public boolean isMock(); - method public void removeAccuracy(); - method public void removeAltitude(); - method public void removeBearing(); - method public void removeBearingAccuracy(); - method public void removeElapsedRealtimeUncertaintyNanos(); - method public void removeMslAltitude(); - method public void removeMslAltitudeAccuracy(); - method public void removeSpeed(); - method public void removeSpeedAccuracy(); - method public void removeVerticalAccuracy(); - method public void reset(); - method public void set(@NonNull android.location.Location); - method public void setAccuracy(@FloatRange(from=0.0) float); - method public void setAltitude(@FloatRange double); - method public void setBearing(@FloatRange(fromInclusive=false, toInclusive=false) float); - method public void setBearingAccuracyDegrees(@FloatRange(from=0.0) float); - method public void setElapsedRealtimeNanos(@IntRange(from=0) long); - method public void setElapsedRealtimeUncertaintyNanos(@FloatRange(from=0.0) double); - method public void setExtras(@Nullable android.os.Bundle); - method public void setLatitude(@FloatRange(from=-90.0, to=90.0) double); - method public void setLongitude(@FloatRange(from=-180.0, to=180.0) double); - method public void setMock(boolean); - method public void setMslAltitudeAccuracyMeters(@FloatRange(from=0.0) float); - method public void setMslAltitudeMeters(@FloatRange double); - method public void setProvider(@Nullable String); - method public void setSpeed(@FloatRange(from=0.0) float); - method public void setSpeedAccuracyMetersPerSecond(@FloatRange(from=0.0) float); - method public void setTime(@IntRange(from=0) long); - method public void setVerticalAccuracyMeters(@FloatRange(from=0.0) float); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FORMAT_DEGREES = 0; // 0x0 - field public static final int FORMAT_MINUTES = 1; // 0x1 - field public static final int FORMAT_SECONDS = 2; // 0x2 - } - -} - -package android.media { - - public class AsyncPlayer { - ctor public AsyncPlayer(String); - method @Deprecated public void play(android.content.Context, android.net.Uri, boolean, int); - method public void play(@NonNull android.content.Context, @NonNull android.net.Uri, boolean, @NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException; - method public void stop(); - } - - public final class AudioAttributes implements android.os.Parcelable { - method public boolean areHapticChannelsMuted(); - method public int describeContents(); - method public int getAllowedCapturePolicy(); - method public int getContentType(); - method public int getFlags(); - method public int getSpatializationBehavior(); - method public int getUsage(); - method public int getVolumeControlStream(); - method public boolean isContentSpatialized(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int ALLOW_CAPTURE_BY_ALL = 1; // 0x1 - field public static final int ALLOW_CAPTURE_BY_NONE = 3; // 0x3 - field public static final int ALLOW_CAPTURE_BY_SYSTEM = 2; // 0x2 - field public static final int CONTENT_TYPE_MOVIE = 3; // 0x3 - field public static final int CONTENT_TYPE_MUSIC = 2; // 0x2 - field public static final int CONTENT_TYPE_SONIFICATION = 4; // 0x4 - field public static final int CONTENT_TYPE_SPEECH = 1; // 0x1 - field public static final int CONTENT_TYPE_UNKNOWN = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_AUDIBILITY_ENFORCED = 1; // 0x1 - field public static final int FLAG_HW_AV_SYNC = 16; // 0x10 - field @Deprecated public static final int FLAG_LOW_LATENCY = 256; // 0x100 - field public static final int SPATIALIZATION_BEHAVIOR_AUTO = 0; // 0x0 - field public static final int SPATIALIZATION_BEHAVIOR_NEVER = 1; // 0x1 - field public static final int USAGE_ALARM = 4; // 0x4 - field public static final int USAGE_ASSISTANCE_ACCESSIBILITY = 11; // 0xb - field public static final int USAGE_ASSISTANCE_NAVIGATION_GUIDANCE = 12; // 0xc - field public static final int USAGE_ASSISTANCE_SONIFICATION = 13; // 0xd - field public static final int USAGE_ASSISTANT = 16; // 0x10 - field public static final int USAGE_GAME = 14; // 0xe - field public static final int USAGE_MEDIA = 1; // 0x1 - field public static final int USAGE_NOTIFICATION = 5; // 0x5 - field @Deprecated public static final int USAGE_NOTIFICATION_COMMUNICATION_DELAYED = 9; // 0x9 - field @Deprecated public static final int USAGE_NOTIFICATION_COMMUNICATION_INSTANT = 8; // 0x8 - field @Deprecated public static final int USAGE_NOTIFICATION_COMMUNICATION_REQUEST = 7; // 0x7 - field public static final int USAGE_NOTIFICATION_EVENT = 10; // 0xa - field public static final int USAGE_NOTIFICATION_RINGTONE = 6; // 0x6 - field public static final int USAGE_UNKNOWN = 0; // 0x0 - field public static final int USAGE_VOICE_COMMUNICATION = 2; // 0x2 - field public static final int USAGE_VOICE_COMMUNICATION_SIGNALLING = 3; // 0x3 - } - - public static class AudioAttributes.Builder { - ctor public AudioAttributes.Builder(); - ctor public AudioAttributes.Builder(android.media.AudioAttributes); - method public android.media.AudioAttributes build(); - method @NonNull public android.media.AudioAttributes.Builder setAllowedCapturePolicy(int); - method public android.media.AudioAttributes.Builder setContentType(int); - method public android.media.AudioAttributes.Builder setFlags(int); - method @NonNull public android.media.AudioAttributes.Builder setHapticChannelsMuted(boolean); - method @NonNull public android.media.AudioAttributes.Builder setIsContentSpatialized(boolean); - method public android.media.AudioAttributes.Builder setLegacyStreamType(int); - method @NonNull public android.media.AudioAttributes.Builder setSpatializationBehavior(int); - method public android.media.AudioAttributes.Builder setUsage(int); - } - - public class AudioDescriptor implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public byte[] getDescriptor(); - method public int getEncapsulationType(); - method public int getStandard(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STANDARD_EDID = 1; // 0x1 - field public static final int STANDARD_NONE = 0; // 0x0 - field public static final int STANDARD_SADB = 2; // 0x2 - field public static final int STANDARD_VSADB = 3; // 0x3 - } - - public abstract class AudioDeviceCallback { - ctor public AudioDeviceCallback(); - method public void onAudioDevicesAdded(android.media.AudioDeviceInfo[]); - method public void onAudioDevicesRemoved(android.media.AudioDeviceInfo[]); - } - - public final class AudioDeviceInfo { - method @NonNull public String getAddress(); - method @NonNull public java.util.List getAudioDescriptors(); - method @NonNull public java.util.List getAudioProfiles(); - method @NonNull public int[] getChannelCounts(); - method @NonNull public int[] getChannelIndexMasks(); - method @NonNull public int[] getChannelMasks(); - method @NonNull public int[] getEncapsulationMetadataTypes(); - method @NonNull public int[] getEncapsulationModes(); - method @NonNull public int[] getEncodings(); - method public int getId(); - method public CharSequence getProductName(); - method @NonNull public int[] getSampleRates(); - method @FlaggedApi("android.media.audio.speaker_layout_api") public int getSpeakerLayoutChannelMask(); - method public int getType(); - method public boolean isSink(); - method public boolean isSource(); - field public static final int TYPE_AUX_LINE = 19; // 0x13 - field public static final int TYPE_BLE_BROADCAST = 30; // 0x1e - field public static final int TYPE_BLE_HEADSET = 26; // 0x1a - field public static final int TYPE_BLE_SPEAKER = 27; // 0x1b - field public static final int TYPE_BLUETOOTH_A2DP = 8; // 0x8 - field public static final int TYPE_BLUETOOTH_SCO = 7; // 0x7 - field public static final int TYPE_BUILTIN_EARPIECE = 1; // 0x1 - field public static final int TYPE_BUILTIN_MIC = 15; // 0xf - field public static final int TYPE_BUILTIN_SPEAKER = 2; // 0x2 - field public static final int TYPE_BUILTIN_SPEAKER_SAFE = 24; // 0x18 - field public static final int TYPE_BUS = 21; // 0x15 - field public static final int TYPE_DOCK = 13; // 0xd - field public static final int TYPE_DOCK_ANALOG = 31; // 0x1f - field public static final int TYPE_FM = 14; // 0xe - field public static final int TYPE_FM_TUNER = 16; // 0x10 - field public static final int TYPE_HDMI = 9; // 0x9 - field public static final int TYPE_HDMI_ARC = 10; // 0xa - field public static final int TYPE_HDMI_EARC = 29; // 0x1d - field public static final int TYPE_HEARING_AID = 23; // 0x17 - field public static final int TYPE_IP = 20; // 0x14 - field public static final int TYPE_LINE_ANALOG = 5; // 0x5 - field public static final int TYPE_LINE_DIGITAL = 6; // 0x6 - field @FlaggedApi("android.media.audio.enable_multichannel_group_device") public static final int TYPE_MULTICHANNEL_GROUP = 32; // 0x20 - field public static final int TYPE_REMOTE_SUBMIX = 25; // 0x19 - field public static final int TYPE_TELEPHONY = 18; // 0x12 - field public static final int TYPE_TV_TUNER = 17; // 0x11 - field public static final int TYPE_UNKNOWN = 0; // 0x0 - field public static final int TYPE_USB_ACCESSORY = 12; // 0xc - field public static final int TYPE_USB_DEVICE = 11; // 0xb - field public static final int TYPE_USB_HEADSET = 22; // 0x16 - field public static final int TYPE_WIRED_HEADPHONES = 4; // 0x4 - field public static final int TYPE_WIRED_HEADSET = 3; // 0x3 - } - - public final class AudioFocusRequest { - method public boolean acceptsDelayedFocusGain(); - method @NonNull public android.media.AudioAttributes getAudioAttributes(); - method public int getFocusGain(); - method public boolean willPauseWhenDucked(); - } - - public static final class AudioFocusRequest.Builder { - ctor public AudioFocusRequest.Builder(int); - ctor public AudioFocusRequest.Builder(@NonNull android.media.AudioFocusRequest); - method public android.media.AudioFocusRequest build(); - method @NonNull public android.media.AudioFocusRequest.Builder setAcceptsDelayedFocusGain(boolean); - method @NonNull public android.media.AudioFocusRequest.Builder setAudioAttributes(@NonNull android.media.AudioAttributes); - method @NonNull public android.media.AudioFocusRequest.Builder setFocusGain(int); - method @NonNull public android.media.AudioFocusRequest.Builder setForceDucking(boolean); - method @NonNull public android.media.AudioFocusRequest.Builder setOnAudioFocusChangeListener(@NonNull android.media.AudioManager.OnAudioFocusChangeListener); - method @NonNull public android.media.AudioFocusRequest.Builder setOnAudioFocusChangeListener(@NonNull android.media.AudioManager.OnAudioFocusChangeListener, @NonNull android.os.Handler); - method @NonNull public android.media.AudioFocusRequest.Builder setWillPauseWhenDucked(boolean); - } - - public final class AudioFormat implements android.os.Parcelable { - method public int describeContents(); - method public int getChannelCount(); - method public int getChannelIndexMask(); - method public int getChannelMask(); - method public int getEncoding(); - method @IntRange(from=1) public int getFrameSizeInBytes(); - method public int getSampleRate(); - method public void writeToParcel(android.os.Parcel, int); - field @Deprecated public static final int CHANNEL_CONFIGURATION_DEFAULT = 1; // 0x1 - field @Deprecated public static final int CHANNEL_CONFIGURATION_INVALID = 0; // 0x0 - field @Deprecated public static final int CHANNEL_CONFIGURATION_MONO = 2; // 0x2 - field @Deprecated public static final int CHANNEL_CONFIGURATION_STEREO = 3; // 0x3 - field public static final int CHANNEL_INVALID = 0; // 0x0 - field public static final int CHANNEL_IN_BACK = 32; // 0x20 - field public static final int CHANNEL_IN_BACK_PROCESSED = 512; // 0x200 - field public static final int CHANNEL_IN_DEFAULT = 1; // 0x1 - field public static final int CHANNEL_IN_FRONT = 16; // 0x10 - field public static final int CHANNEL_IN_FRONT_PROCESSED = 256; // 0x100 - field public static final int CHANNEL_IN_LEFT = 4; // 0x4 - field public static final int CHANNEL_IN_LEFT_PROCESSED = 64; // 0x40 - field public static final int CHANNEL_IN_MONO = 16; // 0x10 - field public static final int CHANNEL_IN_PRESSURE = 1024; // 0x400 - field public static final int CHANNEL_IN_RIGHT = 8; // 0x8 - field public static final int CHANNEL_IN_RIGHT_PROCESSED = 128; // 0x80 - field public static final int CHANNEL_IN_STEREO = 12; // 0xc - field public static final int CHANNEL_IN_VOICE_DNLINK = 32768; // 0x8000 - field public static final int CHANNEL_IN_VOICE_UPLINK = 16384; // 0x4000 - field public static final int CHANNEL_IN_X_AXIS = 2048; // 0x800 - field public static final int CHANNEL_IN_Y_AXIS = 4096; // 0x1000 - field public static final int CHANNEL_IN_Z_AXIS = 8192; // 0x2000 - field public static final int CHANNEL_OUT_5POINT1 = 252; // 0xfc - field public static final int CHANNEL_OUT_5POINT1POINT2 = 3145980; // 0x3000fc - field public static final int CHANNEL_OUT_5POINT1POINT4 = 737532; // 0xb40fc - field public static final int CHANNEL_OUT_6POINT1 = 1276; // 0x4fc - field @Deprecated public static final int CHANNEL_OUT_7POINT1 = 1020; // 0x3fc - field public static final int CHANNEL_OUT_7POINT1POINT2 = 3152124; // 0x3018fc - field public static final int CHANNEL_OUT_7POINT1POINT4 = 743676; // 0xb58fc - field public static final int CHANNEL_OUT_7POINT1_SURROUND = 6396; // 0x18fc - field public static final int CHANNEL_OUT_9POINT1POINT4 = 202070268; // 0xc0b58fc - field public static final int CHANNEL_OUT_9POINT1POINT6 = 205215996; // 0xc3b58fc - field public static final int CHANNEL_OUT_BACK_CENTER = 1024; // 0x400 - field public static final int CHANNEL_OUT_BACK_LEFT = 64; // 0x40 - field public static final int CHANNEL_OUT_BACK_RIGHT = 128; // 0x80 - field public static final int CHANNEL_OUT_BOTTOM_FRONT_CENTER = 8388608; // 0x800000 - field public static final int CHANNEL_OUT_BOTTOM_FRONT_LEFT = 4194304; // 0x400000 - field public static final int CHANNEL_OUT_BOTTOM_FRONT_RIGHT = 16777216; // 0x1000000 - field public static final int CHANNEL_OUT_DEFAULT = 1; // 0x1 - field public static final int CHANNEL_OUT_FRONT_CENTER = 16; // 0x10 - field public static final int CHANNEL_OUT_FRONT_LEFT = 4; // 0x4 - field public static final int CHANNEL_OUT_FRONT_LEFT_OF_CENTER = 256; // 0x100 - field public static final int CHANNEL_OUT_FRONT_RIGHT = 8; // 0x8 - field public static final int CHANNEL_OUT_FRONT_RIGHT_OF_CENTER = 512; // 0x200 - field public static final int CHANNEL_OUT_FRONT_WIDE_LEFT = 67108864; // 0x4000000 - field public static final int CHANNEL_OUT_FRONT_WIDE_RIGHT = 134217728; // 0x8000000 - field public static final int CHANNEL_OUT_LOW_FREQUENCY = 32; // 0x20 - field public static final int CHANNEL_OUT_LOW_FREQUENCY_2 = 33554432; // 0x2000000 - field public static final int CHANNEL_OUT_MONO = 4; // 0x4 - field public static final int CHANNEL_OUT_QUAD = 204; // 0xcc - field public static final int CHANNEL_OUT_SIDE_LEFT = 2048; // 0x800 - field public static final int CHANNEL_OUT_SIDE_RIGHT = 4096; // 0x1000 - field public static final int CHANNEL_OUT_STEREO = 12; // 0xc - field public static final int CHANNEL_OUT_SURROUND = 1052; // 0x41c - field public static final int CHANNEL_OUT_TOP_BACK_CENTER = 262144; // 0x40000 - field public static final int CHANNEL_OUT_TOP_BACK_LEFT = 131072; // 0x20000 - field public static final int CHANNEL_OUT_TOP_BACK_RIGHT = 524288; // 0x80000 - field public static final int CHANNEL_OUT_TOP_CENTER = 8192; // 0x2000 - field public static final int CHANNEL_OUT_TOP_FRONT_CENTER = 32768; // 0x8000 - field public static final int CHANNEL_OUT_TOP_FRONT_LEFT = 16384; // 0x4000 - field public static final int CHANNEL_OUT_TOP_FRONT_RIGHT = 65536; // 0x10000 - field public static final int CHANNEL_OUT_TOP_SIDE_LEFT = 1048576; // 0x100000 - field public static final int CHANNEL_OUT_TOP_SIDE_RIGHT = 2097152; // 0x200000 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ENCODING_AAC_ELD = 15; // 0xf - field public static final int ENCODING_AAC_HE_V1 = 11; // 0xb - field public static final int ENCODING_AAC_HE_V2 = 12; // 0xc - field public static final int ENCODING_AAC_LC = 10; // 0xa - field public static final int ENCODING_AAC_XHE = 16; // 0x10 - field public static final int ENCODING_AC3 = 5; // 0x5 - field public static final int ENCODING_AC4 = 17; // 0x11 - field @FlaggedApi("android.media.audio.dolby_ac4_level4_encoding_api") public static final int ENCODING_AC4_L4 = 32; // 0x20 - field public static final int ENCODING_DEFAULT = 1; // 0x1 - field public static final int ENCODING_DOLBY_MAT = 19; // 0x13 - field public static final int ENCODING_DOLBY_TRUEHD = 14; // 0xe - field public static final int ENCODING_DRA = 28; // 0x1c - field public static final int ENCODING_DSD = 31; // 0x1f - field public static final int ENCODING_DTS = 7; // 0x7 - field public static final int ENCODING_DTS_HD = 8; // 0x8 - field public static final int ENCODING_DTS_HD_MA = 29; // 0x1d - field @Deprecated public static final int ENCODING_DTS_UHD = 27; // 0x1b - field public static final int ENCODING_DTS_UHD_P1 = 27; // 0x1b - field public static final int ENCODING_DTS_UHD_P2 = 30; // 0x1e - field public static final int ENCODING_E_AC3 = 6; // 0x6 - field public static final int ENCODING_E_AC3_JOC = 18; // 0x12 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_ENHANCED_PROFILE_AAC = 42; // 0x2a - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_ENHANCED_PROFILE_FLAC = 43; // 0x2b - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_ENHANCED_PROFILE_OPUS = 41; // 0x29 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_ENHANCED_PROFILE_PCM = 44; // 0x2c - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_PROFILE_AAC = 38; // 0x26 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_PROFILE_FLAC = 39; // 0x27 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_PROFILE_OPUS = 37; // 0x25 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_PROFILE_PCM = 40; // 0x28 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_SIMPLE_PROFILE_AAC = 34; // 0x22 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_SIMPLE_PROFILE_FLAC = 35; // 0x23 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_SIMPLE_PROFILE_OPUS = 33; // 0x21 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_SIMPLE_PROFILE_PCM = 36; // 0x24 - field public static final int ENCODING_IEC61937 = 13; // 0xd - field public static final int ENCODING_INVALID = 0; // 0x0 - field public static final int ENCODING_MP3 = 9; // 0x9 - field public static final int ENCODING_MPEGH_BL_L3 = 23; // 0x17 - field public static final int ENCODING_MPEGH_BL_L4 = 24; // 0x18 - field public static final int ENCODING_MPEGH_LC_L3 = 25; // 0x19 - field public static final int ENCODING_MPEGH_LC_L4 = 26; // 0x1a - field public static final int ENCODING_OPUS = 20; // 0x14 - field public static final int ENCODING_PCM_16BIT = 2; // 0x2 - field public static final int ENCODING_PCM_24BIT_PACKED = 21; // 0x15 - field public static final int ENCODING_PCM_32BIT = 22; // 0x16 - field public static final int ENCODING_PCM_8BIT = 3; // 0x3 - field public static final int ENCODING_PCM_FLOAT = 4; // 0x4 - field public static final int SAMPLE_RATE_UNSPECIFIED = 0; // 0x0 - } - - public static class AudioFormat.Builder { - ctor public AudioFormat.Builder(); - ctor public AudioFormat.Builder(android.media.AudioFormat); - method public android.media.AudioFormat build(); - method @NonNull public android.media.AudioFormat.Builder setChannelIndexMask(int); - method @NonNull public android.media.AudioFormat.Builder setChannelMask(int); - method public android.media.AudioFormat.Builder setEncoding(int) throws java.lang.IllegalArgumentException; - method public android.media.AudioFormat.Builder setSampleRate(int) throws java.lang.IllegalArgumentException; - } - - public class AudioManager { - method @Deprecated public int abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener); - method public int abandonAudioFocusRequest(@NonNull android.media.AudioFocusRequest); - method public void addOnCommunicationDeviceChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnCommunicationDeviceChangedListener); - method public void addOnModeChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnModeChangedListener); - method public void addOnPreferredMixerAttributesChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnPreferredMixerAttributesChangedListener); - method public void adjustStreamVolume(int, int, int); - method public void adjustSuggestedStreamVolume(int, int, int); - method public void adjustVolume(int, int); - method public void adjustVolumeGroupVolume(int, int, int); - method public void clearCommunicationDevice(); - method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS) public boolean clearPreferredMixerAttributes(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioDeviceInfo); - method public void dispatchMediaKeyEvent(android.view.KeyEvent); - method public int generateAudioSessionId(); - method @NonNull public java.util.List getActivePlaybackConfigurations(); - method @NonNull public java.util.List getActiveRecordingConfigurations(); - method public int getAllowedCapturePolicy(); - method @NonNull public java.util.List getAudioDevicesForAttributes(@NonNull android.media.AudioAttributes); - method public int getAudioHwSyncForSession(int); - method @NonNull public java.util.List getAvailableCommunicationDevices(); - method @Nullable public android.media.AudioDeviceInfo getCommunicationDevice(); - method public android.media.AudioDeviceInfo[] getDevices(int); - method public static int getDirectPlaybackSupport(@NonNull android.media.AudioFormat, @NonNull android.media.AudioAttributes); - method @NonNull public java.util.List getDirectProfilesForAttributes(@NonNull android.media.AudioAttributes); - method public int getEncodedSurroundMode(); - method public java.util.List getMicrophones() throws java.io.IOException; - method public int getMode(); - method public String getParameters(String); - method @Deprecated public static int getPlaybackOffloadSupport(@NonNull android.media.AudioFormat, @NonNull android.media.AudioAttributes); - method @Nullable public android.media.AudioMixerAttributes getPreferredMixerAttributes(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioDeviceInfo); - method public String getProperty(String); - method public int getRingerMode(); - method @Deprecated public int getRouting(int); - method @NonNull public android.media.Spatializer getSpatializer(); - method public int getStreamMaxVolume(int); - method public int getStreamMinVolume(int); - method public int getStreamVolume(int); - method public float getStreamVolumeDb(int, int, int); - method @FlaggedApi("android.media.audio.supported_device_types_api") @NonNull public java.util.Set getSupportedDeviceTypes(int); - method @NonNull public java.util.List getSupportedMixerAttributes(@NonNull android.media.AudioDeviceInfo); - method @Deprecated public int getVibrateSetting(int); - method public int getVolumeGroupIdForAttributes(@NonNull android.media.AudioAttributes); - method @Deprecated public boolean isBluetoothA2dpOn(); - method public boolean isBluetoothScoAvailableOffCall(); - method @Deprecated public boolean isBluetoothScoOn(); - method public boolean isCallScreeningModeSupported(); - method public static boolean isHapticPlaybackSupported(); - method public boolean isMicrophoneMute(); - method public boolean isMusicActive(); - method public static boolean isOffloadedPlaybackSupported(@NonNull android.media.AudioFormat, @NonNull android.media.AudioAttributes); - method public boolean isRampingRingerEnabled(); - method @Deprecated public boolean isSpeakerphoneOn(); - method public boolean isStreamMute(int); - method public boolean isSurroundFormatEnabled(int); - method public boolean isVolumeFixed(); - method public boolean isVolumeGroupMuted(int); - method @Deprecated public boolean isWiredHeadsetOn(); - method public void loadSoundEffects(); - method public void playSoundEffect(int); - method public void playSoundEffect(int, float); - method public void registerAudioDeviceCallback(android.media.AudioDeviceCallback, @Nullable android.os.Handler); - method public void registerAudioPlaybackCallback(@NonNull android.media.AudioManager.AudioPlaybackCallback, @Nullable android.os.Handler); - method public void registerAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback, @Nullable android.os.Handler); - method @Deprecated public void registerMediaButtonEventReceiver(android.content.ComponentName); - method @Deprecated public void registerMediaButtonEventReceiver(android.app.PendingIntent); - method @Deprecated public void registerRemoteControlClient(android.media.RemoteControlClient); - method @Deprecated public boolean registerRemoteController(android.media.RemoteController); - method public void removeOnCommunicationDeviceChangedListener(@NonNull android.media.AudioManager.OnCommunicationDeviceChangedListener); - method public void removeOnModeChangedListener(@NonNull android.media.AudioManager.OnModeChangedListener); - method public void removeOnPreferredMixerAttributesChangedListener(@NonNull android.media.AudioManager.OnPreferredMixerAttributesChangedListener); - method @Deprecated public int requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, int, int); - method public int requestAudioFocus(@NonNull android.media.AudioFocusRequest); - method public void setAllowedCapturePolicy(int); - method @Deprecated public void setBluetoothA2dpOn(boolean); - method public void setBluetoothScoOn(boolean); - method public boolean setCommunicationDevice(@NonNull android.media.AudioDeviceInfo); - method @RequiresPermission(android.Manifest.permission.WRITE_SETTINGS) public boolean setEncodedSurroundMode(int); - method public void setMicrophoneMute(boolean); - method public void setMode(int); - method public void setParameters(String); - method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS) public boolean setPreferredMixerAttributes(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioDeviceInfo, @NonNull android.media.AudioMixerAttributes); - method public void setRingerMode(int); - method @Deprecated public void setRouting(int, int, int); - method @Deprecated public void setSpeakerphoneOn(boolean); - method @Deprecated public void setStreamMute(int, boolean); - method @Deprecated public void setStreamSolo(int, boolean); - method public void setStreamVolume(int, int, int); - method @RequiresPermission(android.Manifest.permission.WRITE_SETTINGS) public boolean setSurroundFormatEnabled(int, boolean); - method @Deprecated public void setVibrateSetting(int, int); - method @Deprecated public void setWiredHeadsetOn(boolean); - method @Deprecated public boolean shouldVibrate(int); - method @Deprecated public void startBluetoothSco(); - method @Deprecated public void stopBluetoothSco(); - method public void unloadSoundEffects(); - method public void unregisterAudioDeviceCallback(android.media.AudioDeviceCallback); - method public void unregisterAudioPlaybackCallback(@NonNull android.media.AudioManager.AudioPlaybackCallback); - method public void unregisterAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback); - method @Deprecated public void unregisterMediaButtonEventReceiver(android.content.ComponentName); - method @Deprecated public void unregisterMediaButtonEventReceiver(android.app.PendingIntent); - method @Deprecated public void unregisterRemoteControlClient(android.media.RemoteControlClient); - method @Deprecated public void unregisterRemoteController(android.media.RemoteController); - field public static final String ACTION_AUDIO_BECOMING_NOISY = "android.media.AUDIO_BECOMING_NOISY"; - field public static final String ACTION_HDMI_AUDIO_PLUG = "android.media.action.HDMI_AUDIO_PLUG"; - field public static final String ACTION_HEADSET_PLUG = "android.intent.action.HEADSET_PLUG"; - field public static final String ACTION_MICROPHONE_MUTE_CHANGED = "android.media.action.MICROPHONE_MUTE_CHANGED"; - field @Deprecated public static final String ACTION_SCO_AUDIO_STATE_CHANGED = "android.media.SCO_AUDIO_STATE_CHANGED"; - field public static final String ACTION_SCO_AUDIO_STATE_UPDATED = "android.media.ACTION_SCO_AUDIO_STATE_UPDATED"; - field public static final String ACTION_SPEAKERPHONE_STATE_CHANGED = "android.media.action.SPEAKERPHONE_STATE_CHANGED"; - field public static final int ADJUST_LOWER = -1; // 0xffffffff - field public static final int ADJUST_MUTE = -100; // 0xffffff9c - field public static final int ADJUST_RAISE = 1; // 0x1 - field public static final int ADJUST_SAME = 0; // 0x0 - field public static final int ADJUST_TOGGLE_MUTE = 101; // 0x65 - field public static final int ADJUST_UNMUTE = 100; // 0x64 - field public static final int AUDIOFOCUS_GAIN = 1; // 0x1 - field public static final int AUDIOFOCUS_GAIN_TRANSIENT = 2; // 0x2 - field public static final int AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE = 4; // 0x4 - field public static final int AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK = 3; // 0x3 - field public static final int AUDIOFOCUS_LOSS = -1; // 0xffffffff - field public static final int AUDIOFOCUS_LOSS_TRANSIENT = -2; // 0xfffffffe - field public static final int AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK = -3; // 0xfffffffd - field public static final int AUDIOFOCUS_NONE = 0; // 0x0 - field public static final int AUDIOFOCUS_REQUEST_DELAYED = 2; // 0x2 - field public static final int AUDIOFOCUS_REQUEST_FAILED = 0; // 0x0 - field public static final int AUDIOFOCUS_REQUEST_GRANTED = 1; // 0x1 - field public static final int AUDIO_SESSION_ID_GENERATE = 0; // 0x0 - field public static final int DIRECT_PLAYBACK_BITSTREAM_SUPPORTED = 4; // 0x4 - field public static final int DIRECT_PLAYBACK_NOT_SUPPORTED = 0; // 0x0 - field public static final int DIRECT_PLAYBACK_OFFLOAD_GAPLESS_SUPPORTED = 3; // 0x3 - field public static final int DIRECT_PLAYBACK_OFFLOAD_SUPPORTED = 1; // 0x1 - field public static final int ENCODED_SURROUND_OUTPUT_ALWAYS = 2; // 0x2 - field public static final int ENCODED_SURROUND_OUTPUT_AUTO = 0; // 0x0 - field public static final int ENCODED_SURROUND_OUTPUT_MANUAL = 3; // 0x3 - field public static final int ENCODED_SURROUND_OUTPUT_NEVER = 1; // 0x1 - field public static final int ENCODED_SURROUND_OUTPUT_UNKNOWN = -1; // 0xffffffff - field public static final int ERROR = -1; // 0xffffffff - field public static final int ERROR_DEAD_OBJECT = -6; // 0xfffffffa - field public static final String EXTRA_AUDIO_PLUG_STATE = "android.media.extra.AUDIO_PLUG_STATE"; - field public static final String EXTRA_ENCODINGS = "android.media.extra.ENCODINGS"; - field public static final String EXTRA_MAX_CHANNEL_COUNT = "android.media.extra.MAX_CHANNEL_COUNT"; - field public static final String EXTRA_RINGER_MODE = "android.media.EXTRA_RINGER_MODE"; - field public static final String EXTRA_SCO_AUDIO_PREVIOUS_STATE = "android.media.extra.SCO_AUDIO_PREVIOUS_STATE"; - field public static final String EXTRA_SCO_AUDIO_STATE = "android.media.extra.SCO_AUDIO_STATE"; - field @Deprecated public static final String EXTRA_VIBRATE_SETTING = "android.media.EXTRA_VIBRATE_SETTING"; - field @Deprecated public static final String EXTRA_VIBRATE_TYPE = "android.media.EXTRA_VIBRATE_TYPE"; - field public static final int FLAG_ALLOW_RINGER_MODES = 2; // 0x2 - field public static final int FLAG_PLAY_SOUND = 4; // 0x4 - field public static final int FLAG_REMOVE_SOUND_AND_VIBRATE = 8; // 0x8 - field public static final int FLAG_SHOW_UI = 1; // 0x1 - field public static final int FLAG_VIBRATE = 16; // 0x10 - field public static final int FX_BACK = 10; // 0xa - field public static final int FX_FOCUS_NAVIGATION_DOWN = 2; // 0x2 - field public static final int FX_FOCUS_NAVIGATION_LEFT = 3; // 0x3 - field public static final int FX_FOCUS_NAVIGATION_RIGHT = 4; // 0x4 - field public static final int FX_FOCUS_NAVIGATION_UP = 1; // 0x1 - field public static final int FX_KEYPRESS_DELETE = 7; // 0x7 - field public static final int FX_KEYPRESS_INVALID = 9; // 0x9 - field public static final int FX_KEYPRESS_RETURN = 8; // 0x8 - field public static final int FX_KEYPRESS_SPACEBAR = 6; // 0x6 - field public static final int FX_KEYPRESS_STANDARD = 5; // 0x5 - field public static final int FX_KEY_CLICK = 0; // 0x0 - field public static final int GET_DEVICES_ALL = 3; // 0x3 - field public static final int GET_DEVICES_INPUTS = 1; // 0x1 - field public static final int GET_DEVICES_OUTPUTS = 2; // 0x2 - field public static final int MODE_CALL_REDIRECT = 5; // 0x5 - field public static final int MODE_CALL_SCREENING = 4; // 0x4 - field public static final int MODE_COMMUNICATION_REDIRECT = 6; // 0x6 - field public static final int MODE_CURRENT = -1; // 0xffffffff - field public static final int MODE_INVALID = -2; // 0xfffffffe - field public static final int MODE_IN_CALL = 2; // 0x2 - field public static final int MODE_IN_COMMUNICATION = 3; // 0x3 - field public static final int MODE_NORMAL = 0; // 0x0 - field public static final int MODE_RINGTONE = 1; // 0x1 - field @Deprecated public static final int NUM_STREAMS = 5; // 0x5 - field public static final int PLAYBACK_OFFLOAD_GAPLESS_SUPPORTED = 2; // 0x2 - field public static final int PLAYBACK_OFFLOAD_NOT_SUPPORTED = 0; // 0x0 - field public static final int PLAYBACK_OFFLOAD_SUPPORTED = 1; // 0x1 - field public static final String PROPERTY_OUTPUT_FRAMES_PER_BUFFER = "android.media.property.OUTPUT_FRAMES_PER_BUFFER"; - field public static final String PROPERTY_OUTPUT_SAMPLE_RATE = "android.media.property.OUTPUT_SAMPLE_RATE"; - field public static final String PROPERTY_SUPPORT_AUDIO_SOURCE_UNPROCESSED = "android.media.property.SUPPORT_AUDIO_SOURCE_UNPROCESSED"; - field public static final String PROPERTY_SUPPORT_MIC_NEAR_ULTRASOUND = "android.media.property.SUPPORT_MIC_NEAR_ULTRASOUND"; - field public static final String PROPERTY_SUPPORT_SPEAKER_NEAR_ULTRASOUND = "android.media.property.SUPPORT_SPEAKER_NEAR_ULTRASOUND"; - field public static final String RINGER_MODE_CHANGED_ACTION = "android.media.RINGER_MODE_CHANGED"; - field public static final int RINGER_MODE_NORMAL = 2; // 0x2 - field public static final int RINGER_MODE_SILENT = 0; // 0x0 - field public static final int RINGER_MODE_VIBRATE = 1; // 0x1 - field @Deprecated public static final int ROUTE_ALL = -1; // 0xffffffff - field @Deprecated public static final int ROUTE_BLUETOOTH = 4; // 0x4 - field @Deprecated public static final int ROUTE_BLUETOOTH_A2DP = 16; // 0x10 - field @Deprecated public static final int ROUTE_BLUETOOTH_SCO = 4; // 0x4 - field @Deprecated public static final int ROUTE_EARPIECE = 1; // 0x1 - field @Deprecated public static final int ROUTE_HEADSET = 8; // 0x8 - field @Deprecated public static final int ROUTE_SPEAKER = 2; // 0x2 - field public static final int SCO_AUDIO_STATE_CONNECTED = 1; // 0x1 - field public static final int SCO_AUDIO_STATE_CONNECTING = 2; // 0x2 - field public static final int SCO_AUDIO_STATE_DISCONNECTED = 0; // 0x0 - field public static final int SCO_AUDIO_STATE_ERROR = -1; // 0xffffffff - field public static final int STREAM_ACCESSIBILITY = 10; // 0xa - field public static final int STREAM_ALARM = 4; // 0x4 - field public static final int STREAM_DTMF = 8; // 0x8 - field public static final int STREAM_MUSIC = 3; // 0x3 - field public static final int STREAM_NOTIFICATION = 5; // 0x5 - field public static final int STREAM_RING = 2; // 0x2 - field public static final int STREAM_SYSTEM = 1; // 0x1 - field public static final int STREAM_VOICE_CALL = 0; // 0x0 - field public static final int USE_DEFAULT_STREAM_TYPE = -2147483648; // 0x80000000 - field @Deprecated public static final String VIBRATE_SETTING_CHANGED_ACTION = "android.media.VIBRATE_SETTING_CHANGED"; - field @Deprecated public static final int VIBRATE_SETTING_OFF = 0; // 0x0 - field @Deprecated public static final int VIBRATE_SETTING_ON = 1; // 0x1 - field @Deprecated public static final int VIBRATE_SETTING_ONLY_SILENT = 2; // 0x2 - field @Deprecated public static final int VIBRATE_TYPE_NOTIFICATION = 1; // 0x1 - field @Deprecated public static final int VIBRATE_TYPE_RINGER = 0; // 0x0 - } - - public abstract static class AudioManager.AudioPlaybackCallback { - ctor public AudioManager.AudioPlaybackCallback(); - method public void onPlaybackConfigChanged(java.util.List); - } - - public abstract static class AudioManager.AudioRecordingCallback { - ctor public AudioManager.AudioRecordingCallback(); - method public void onRecordingConfigChanged(java.util.List); - } - - public static interface AudioManager.OnAudioFocusChangeListener { - method public void onAudioFocusChange(int); - } - - public static interface AudioManager.OnCommunicationDeviceChangedListener { - method public void onCommunicationDeviceChanged(@Nullable android.media.AudioDeviceInfo); - } - - public static interface AudioManager.OnModeChangedListener { - method public void onModeChanged(int); - } - - public static interface AudioManager.OnPreferredMixerAttributesChangedListener { - method public void onPreferredMixerAttributesChanged(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioDeviceInfo, @Nullable android.media.AudioMixerAttributes); - } - - public final class AudioMetadata { - method @NonNull public static android.media.AudioMetadataMap createMap(); - } - - public static class AudioMetadata.Format { - field @NonNull public static final android.media.AudioMetadata.Key KEY_ATMOS_PRESENT; - field @NonNull public static final android.media.AudioMetadata.Key KEY_AUDIO_ENCODING; - field @NonNull public static final android.media.AudioMetadata.Key KEY_BIT_RATE; - field @NonNull public static final android.media.AudioMetadata.Key KEY_BIT_WIDTH; - field @NonNull public static final android.media.AudioMetadata.Key KEY_CHANNEL_MASK; - field @NonNull public static final android.media.AudioMetadata.Key KEY_MIME; - field @NonNull public static final android.media.AudioMetadata.Key KEY_PRESENTATION_CONTENT_CLASSIFIER; - field @NonNull public static final android.media.AudioMetadata.Key KEY_PRESENTATION_ID; - field @NonNull public static final android.media.AudioMetadata.Key KEY_PRESENTATION_LANGUAGE; - field @NonNull public static final android.media.AudioMetadata.Key KEY_PROGRAM_ID; - field @NonNull public static final android.media.AudioMetadata.Key KEY_SAMPLE_RATE; - } - - public static interface AudioMetadata.Key { - method @NonNull public String getName(); - method @NonNull public Class getValueClass(); - } - - public interface AudioMetadataMap extends android.media.AudioMetadataReadMap { - method @Nullable public T remove(@NonNull android.media.AudioMetadata.Key); - method @Nullable public T set(@NonNull android.media.AudioMetadata.Key, @NonNull T); - } - - public interface AudioMetadataReadMap { - method public boolean containsKey(@NonNull android.media.AudioMetadata.Key); - method @NonNull public android.media.AudioMetadataMap dup(); - method @Nullable public T get(@NonNull android.media.AudioMetadata.Key); - method @IntRange(from=0) public int size(); - } - - public final class AudioMixerAttributes implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.media.AudioFormat getFormat(); - method public int getMixerBehavior(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int MIXER_BEHAVIOR_BIT_PERFECT = 1; // 0x1 - field public static final int MIXER_BEHAVIOR_DEFAULT = 0; // 0x0 - } - - public static final class AudioMixerAttributes.Builder { - ctor public AudioMixerAttributes.Builder(@NonNull android.media.AudioFormat); - method @NonNull public android.media.AudioMixerAttributes build(); - method @NonNull public android.media.AudioMixerAttributes.Builder setMixerBehavior(int); - } - - public final class AudioPlaybackCaptureConfiguration { - method @NonNull public int[] getExcludeUids(); - method @NonNull public int[] getExcludeUsages(); - method @NonNull public int[] getMatchingUids(); - method @NonNull public int[] getMatchingUsages(); - method @NonNull public android.media.projection.MediaProjection getMediaProjection(); - } - - public static final class AudioPlaybackCaptureConfiguration.Builder { - ctor public AudioPlaybackCaptureConfiguration.Builder(@NonNull android.media.projection.MediaProjection); - method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder addMatchingUid(int); - method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder addMatchingUsage(int); - method @NonNull public android.media.AudioPlaybackCaptureConfiguration build(); - method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder excludeUid(int); - method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder excludeUsage(int); - } - - public final class AudioPlaybackConfiguration implements android.os.Parcelable { - method public int describeContents(); - method public android.media.AudioAttributes getAudioAttributes(); - method @Deprecated @FlaggedApi("android.media.audio.routed_device_ids") @Nullable public android.media.AudioDeviceInfo getAudioDeviceInfo(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class AudioPresentation implements android.os.Parcelable { - method public int describeContents(); - method public java.util.Map getLabels(); - method public java.util.Locale getLocale(); - method public int getMasteringIndication(); - method public int getPresentationId(); - method public int getProgramId(); - method public boolean hasAudioDescription(); - method public boolean hasDialogueEnhancement(); - method public boolean hasSpokenSubtitles(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CONTENT_COMMENTARY = 5; // 0x5 - field public static final int CONTENT_DIALOG = 4; // 0x4 - field public static final int CONTENT_EMERGENCY = 6; // 0x6 - field public static final int CONTENT_HEARING_IMPAIRED = 3; // 0x3 - field public static final int CONTENT_MAIN = 0; // 0x0 - field public static final int CONTENT_MUSIC_AND_EFFECTS = 1; // 0x1 - field public static final int CONTENT_UNKNOWN = -1; // 0xffffffff - field public static final int CONTENT_VISUALLY_IMPAIRED = 2; // 0x2 - field public static final int CONTENT_VOICEOVER = 7; // 0x7 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int MASTERED_FOR_3D = 3; // 0x3 - field public static final int MASTERED_FOR_HEADPHONE = 4; // 0x4 - field public static final int MASTERED_FOR_STEREO = 1; // 0x1 - field public static final int MASTERED_FOR_SURROUND = 2; // 0x2 - field public static final int MASTERING_NOT_INDICATED = 0; // 0x0 - field public static final int PRESENTATION_ID_UNKNOWN = -1; // 0xffffffff - field public static final int PROGRAM_ID_UNKNOWN = -1; // 0xffffffff - } - - public static final class AudioPresentation.Builder { - ctor public AudioPresentation.Builder(int); - method @NonNull public android.media.AudioPresentation build(); - method @NonNull public android.media.AudioPresentation.Builder setHasAudioDescription(boolean); - method @NonNull public android.media.AudioPresentation.Builder setHasDialogueEnhancement(boolean); - method @NonNull public android.media.AudioPresentation.Builder setHasSpokenSubtitles(boolean); - method @NonNull public android.media.AudioPresentation.Builder setLabels(@NonNull java.util.Map); - method @NonNull public android.media.AudioPresentation.Builder setLocale(@NonNull android.icu.util.ULocale); - method @NonNull public android.media.AudioPresentation.Builder setMasteringIndication(int); - method @NonNull public android.media.AudioPresentation.Builder setProgramId(int); - } - - public class AudioProfile implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public int[] getChannelIndexMasks(); - method @NonNull public int[] getChannelMasks(); - method public int getEncapsulationType(); - method public int getFormat(); - method @NonNull public int[] getSampleRates(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int AUDIO_ENCAPSULATION_TYPE_IEC61937 = 1; // 0x1 - field public static final int AUDIO_ENCAPSULATION_TYPE_NONE = 0; // 0x0 - field public static final int AUDIO_ENCAPSULATION_TYPE_PCM = 2; // 0x2 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection { - ctor @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public AudioRecord(int, int, int, int, int) throws java.lang.IllegalArgumentException; - method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); - method @Deprecated public void addOnRoutingChangedListener(android.media.AudioRecord.OnRoutingChangedListener, android.os.Handler); - method protected void finalize(); - method public java.util.List getActiveMicrophones() throws java.io.IOException; - method @Nullable public android.media.AudioRecordingConfiguration getActiveRecordingConfiguration(); - method public int getAudioFormat(); - method public int getAudioSessionId(); - method public int getAudioSource(); - method public int getBufferSizeInFrames(); - method public int getChannelConfiguration(); - method public int getChannelCount(); - method @NonNull public android.media.AudioFormat getFormat(); - method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); - method public android.os.PersistableBundle getMetrics(); - method public static int getMinBufferSize(int, int, int); - method public int getNotificationMarkerPosition(); - method public int getPositionNotificationPeriod(); - method public android.media.AudioDeviceInfo getPreferredDevice(); - method public int getRecordingState(); - method public android.media.AudioDeviceInfo getRoutedDevice(); - method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public java.util.List getRoutedDevices(); - method public int getSampleRate(); - method public int getState(); - method public int getTimestamp(@NonNull android.media.AudioTimestamp, int); - method public boolean isPrivacySensitive(); - method public int read(@NonNull byte[], int, int); - method public int read(@NonNull byte[], int, int, int); - method public int read(@NonNull short[], int, int); - method public int read(@NonNull short[], int, int, int); - method public int read(@NonNull float[], int, int, int); - method public int read(@NonNull java.nio.ByteBuffer, int); - method public int read(@NonNull java.nio.ByteBuffer, int, int); - method public void registerAudioRecordingCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioRecordingCallback); - method public void release(); - method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); - method @Deprecated public void removeOnRoutingChangedListener(android.media.AudioRecord.OnRoutingChangedListener); - method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); - method public int setNotificationMarkerPosition(int); - method public int setPositionNotificationPeriod(int); - method public boolean setPreferredDevice(android.media.AudioDeviceInfo); - method public boolean setPreferredMicrophoneDirection(int); - method public boolean setPreferredMicrophoneFieldDimension(@FloatRange(from=-1.0, to=1.0) float); - method public void setRecordPositionUpdateListener(android.media.AudioRecord.OnRecordPositionUpdateListener); - method public void setRecordPositionUpdateListener(android.media.AudioRecord.OnRecordPositionUpdateListener, android.os.Handler); - method public void startRecording() throws java.lang.IllegalStateException; - method public void startRecording(android.media.MediaSyncEvent) throws java.lang.IllegalStateException; - method public void stop() throws java.lang.IllegalStateException; - method public void unregisterAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback); - field public static final int ERROR = -1; // 0xffffffff - field public static final int ERROR_BAD_VALUE = -2; // 0xfffffffe - field public static final int ERROR_DEAD_OBJECT = -6; // 0xfffffffa - field public static final int ERROR_INVALID_OPERATION = -3; // 0xfffffffd - field public static final int READ_BLOCKING = 0; // 0x0 - field public static final int READ_NON_BLOCKING = 1; // 0x1 - field public static final int RECORDSTATE_RECORDING = 3; // 0x3 - field public static final int RECORDSTATE_STOPPED = 1; // 0x1 - field public static final int STATE_INITIALIZED = 1; // 0x1 - field public static final int STATE_UNINITIALIZED = 0; // 0x0 - field public static final int SUCCESS = 0; // 0x0 - } - - public static class AudioRecord.Builder { - ctor public AudioRecord.Builder(); - method @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public android.media.AudioRecord build() throws java.lang.UnsupportedOperationException; - method public android.media.AudioRecord.Builder setAudioFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException; - method @NonNull public android.media.AudioRecord.Builder setAudioPlaybackCaptureConfig(@NonNull android.media.AudioPlaybackCaptureConfiguration); - method public android.media.AudioRecord.Builder setAudioSource(int) throws java.lang.IllegalArgumentException; - method public android.media.AudioRecord.Builder setBufferSizeInBytes(int) throws java.lang.IllegalArgumentException; - method @NonNull public android.media.AudioRecord.Builder setContext(@NonNull android.content.Context); - method @NonNull public android.media.AudioRecord.Builder setPrivacySensitive(boolean); - } - - public static final class AudioRecord.MetricsConstants { - field public static final String CHANNELS = "android.media.audiorecord.channels"; - field public static final String ENCODING = "android.media.audiorecord.encoding"; - field @Deprecated public static final String LATENCY = "android.media.audiorecord.latency"; - field public static final String SAMPLERATE = "android.media.audiorecord.samplerate"; - field public static final String SOURCE = "android.media.audiorecord.source"; - } - - public static interface AudioRecord.OnRecordPositionUpdateListener { - method public void onMarkerReached(android.media.AudioRecord); - method public void onPeriodicNotification(android.media.AudioRecord); - } - - @Deprecated public static interface AudioRecord.OnRoutingChangedListener extends android.media.AudioRouting.OnRoutingChangedListener { - method @Deprecated public void onRoutingChanged(android.media.AudioRecord); - method @Deprecated public default void onRoutingChanged(android.media.AudioRouting); - } - - public final class AudioRecordingConfiguration implements android.os.Parcelable { - method public int describeContents(); - method public android.media.AudioDeviceInfo getAudioDevice(); - method public int getAudioSource(); - method public int getClientAudioSessionId(); - method public int getClientAudioSource(); - method @NonNull public java.util.List getClientEffects(); - method public android.media.AudioFormat getClientFormat(); - method @NonNull public java.util.List getEffects(); - method public android.media.AudioFormat getFormat(); - method public boolean isClientSilenced(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface AudioRecordingMonitor { - method @Nullable public android.media.AudioRecordingConfiguration getActiveRecordingConfiguration(); - method public void registerAudioRecordingCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioRecordingCallback); - method public void unregisterAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback); - } - - public interface AudioRouting { - method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); - method public android.media.AudioDeviceInfo getPreferredDevice(); - method public android.media.AudioDeviceInfo getRoutedDevice(); - method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public default java.util.List getRoutedDevices(); - method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); - method public boolean setPreferredDevice(android.media.AudioDeviceInfo); - } - - public static interface AudioRouting.OnRoutingChangedListener { - method public void onRoutingChanged(android.media.AudioRouting); - } - - public final class AudioTimestamp implements android.os.Parcelable { - ctor public AudioTimestamp(); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TIMEBASE_BOOTTIME = 1; // 0x1 - field public static final int TIMEBASE_MONOTONIC = 0; // 0x0 - field public long framePosition; - field public long nanoTime; - } - - public class AudioTrack implements android.media.AudioRouting android.media.VolumeAutomation { - ctor @Deprecated public AudioTrack(int, int, int, int, int, int) throws java.lang.IllegalArgumentException; - ctor @Deprecated public AudioTrack(int, int, int, int, int, int, int) throws java.lang.IllegalArgumentException; - ctor public AudioTrack(android.media.AudioAttributes, android.media.AudioFormat, int, int, int) throws java.lang.IllegalArgumentException; - method public void addOnCodecFormatChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioTrack.OnCodecFormatChangedListener); - method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); - method @Deprecated public void addOnRoutingChangedListener(android.media.AudioTrack.OnRoutingChangedListener, android.os.Handler); - method public int attachAuxEffect(int); - method @NonNull public android.media.VolumeShaper createVolumeShaper(@NonNull android.media.VolumeShaper.Configuration); - method protected void finalize(); - method public void flush(); - method @NonNull public android.media.AudioAttributes getAudioAttributes(); - method public float getAudioDescriptionMixLeveldB(); - method public int getAudioFormat(); - method public int getAudioSessionId(); - method @IntRange(from=0) public int getBufferCapacityInFrames(); - method @IntRange(from=0) public int getBufferSizeInFrames(); - method public int getChannelConfiguration(); - method public int getChannelCount(); - method public int getDualMonoMode(); - method @NonNull public android.media.AudioFormat getFormat(); - method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); - method public static float getMaxVolume(); - method public android.os.PersistableBundle getMetrics(); - method public static int getMinBufferSize(int, int, int); - method public static float getMinVolume(); - method @Deprecated protected int getNativeFrameCount(); - method public static int getNativeOutputSampleRate(int); - method public int getNotificationMarkerPosition(); - method @IntRange(from=0) public int getOffloadDelay(); - method @IntRange(from=0) public int getOffloadPadding(); - method public int getPerformanceMode(); - method public int getPlayState(); - method public int getPlaybackHeadPosition(); - method @NonNull public android.media.PlaybackParams getPlaybackParams(); - method public int getPlaybackRate(); - method public int getPositionNotificationPeriod(); - method public android.media.AudioDeviceInfo getPreferredDevice(); - method public android.media.AudioDeviceInfo getRoutedDevice(); - method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public java.util.List getRoutedDevices(); - method public int getSampleRate(); - method @IntRange(from=1) public int getStartThresholdInFrames(); - method public int getState(); - method public int getStreamType(); - method public boolean getTimestamp(android.media.AudioTimestamp); - method public int getUnderrunCount(); - method @Deprecated public static boolean isDirectPlaybackSupported(@NonNull android.media.AudioFormat, @NonNull android.media.AudioAttributes); - method public boolean isOffloadedPlayback(); - method public void pause() throws java.lang.IllegalStateException; - method public void play() throws java.lang.IllegalStateException; - method public void registerStreamEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioTrack.StreamEventCallback); - method public void release(); - method public int reloadStaticData(); - method public void removeOnCodecFormatChangedListener(@NonNull android.media.AudioTrack.OnCodecFormatChangedListener); - method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); - method @Deprecated public void removeOnRoutingChangedListener(android.media.AudioTrack.OnRoutingChangedListener); - method public boolean setAudioDescriptionMixLeveldB(@FloatRange(to=48.0f, toInclusive=true) float); - method public int setAuxEffectSendLevel(@FloatRange(from=0.0) float); - method public int setBufferSizeInFrames(@IntRange(from=0) int); - method public boolean setDualMonoMode(int); - method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); - method public int setLoopPoints(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0xffffffff) int); - method public int setNotificationMarkerPosition(int); - method public void setOffloadDelayPadding(@IntRange(from=0) int, @IntRange(from=0) int); - method public void setOffloadEndOfStream(); - method public int setPlaybackHeadPosition(@IntRange(from=0) int); - method public void setPlaybackParams(@NonNull android.media.PlaybackParams); - method public void setPlaybackPositionUpdateListener(android.media.AudioTrack.OnPlaybackPositionUpdateListener); - method public void setPlaybackPositionUpdateListener(android.media.AudioTrack.OnPlaybackPositionUpdateListener, android.os.Handler); - method public int setPlaybackRate(int); - method public int setPositionNotificationPeriod(int); - method public boolean setPreferredDevice(android.media.AudioDeviceInfo); - method public int setPresentation(@NonNull android.media.AudioPresentation); - method @IntRange(from=1) public int setStartThresholdInFrames(@IntRange(from=1) int); - method @Deprecated protected void setState(int); - method @Deprecated public int setStereoVolume(float, float); - method public int setVolume(float); - method public void stop() throws java.lang.IllegalStateException; - method public void unregisterStreamEventCallback(@NonNull android.media.AudioTrack.StreamEventCallback); - method public int write(@NonNull byte[], int, int); - method public int write(@NonNull byte[], int, int, int); - method public int write(@NonNull short[], int, int); - method public int write(@NonNull short[], int, int, int); - method public int write(@NonNull float[], int, int, int); - method public int write(@NonNull java.nio.ByteBuffer, int, int); - method public int write(@NonNull java.nio.ByteBuffer, int, int, long); - field public static final int DUAL_MONO_MODE_LL = 2; // 0x2 - field public static final int DUAL_MONO_MODE_LR = 1; // 0x1 - field public static final int DUAL_MONO_MODE_OFF = 0; // 0x0 - field public static final int DUAL_MONO_MODE_RR = 3; // 0x3 - field public static final int ENCAPSULATION_METADATA_TYPE_DVB_AD_DESCRIPTOR = 2; // 0x2 - field public static final int ENCAPSULATION_METADATA_TYPE_FRAMEWORK_TUNER = 1; // 0x1 - field public static final int ENCAPSULATION_METADATA_TYPE_SUPPLEMENTARY_AUDIO_PLACEMENT = 3; // 0x3 - field public static final int ENCAPSULATION_MODE_ELEMENTARY_STREAM = 1; // 0x1 - field public static final int ENCAPSULATION_MODE_NONE = 0; // 0x0 - field public static final int ERROR = -1; // 0xffffffff - field public static final int ERROR_BAD_VALUE = -2; // 0xfffffffe - field public static final int ERROR_DEAD_OBJECT = -6; // 0xfffffffa - field public static final int ERROR_INVALID_OPERATION = -3; // 0xfffffffd - field public static final int MODE_STATIC = 0; // 0x0 - field public static final int MODE_STREAM = 1; // 0x1 - field public static final int PERFORMANCE_MODE_LOW_LATENCY = 1; // 0x1 - field public static final int PERFORMANCE_MODE_NONE = 0; // 0x0 - field public static final int PERFORMANCE_MODE_POWER_SAVING = 2; // 0x2 - field public static final int PLAYSTATE_PAUSED = 2; // 0x2 - field public static final int PLAYSTATE_PLAYING = 3; // 0x3 - field public static final int PLAYSTATE_STOPPED = 1; // 0x1 - field public static final int STATE_INITIALIZED = 1; // 0x1 - field public static final int STATE_NO_STATIC_DATA = 2; // 0x2 - field public static final int STATE_UNINITIALIZED = 0; // 0x0 - field public static final int SUCCESS = 0; // 0x0 - field public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_LEFT = 1; // 0x1 - field public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_NORMAL = 0; // 0x0 - field public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_RIGHT = 2; // 0x2 - field public static final int WRITE_BLOCKING = 0; // 0x0 - field public static final int WRITE_NON_BLOCKING = 1; // 0x1 - } - - public static class AudioTrack.Builder { - ctor public AudioTrack.Builder(); - method @NonNull public android.media.AudioTrack build() throws java.lang.UnsupportedOperationException; - method @NonNull public android.media.AudioTrack.Builder setAudioAttributes(@NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException; - method @NonNull public android.media.AudioTrack.Builder setAudioFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException; - method @NonNull public android.media.AudioTrack.Builder setBufferSizeInBytes(@IntRange(from=0) int) throws java.lang.IllegalArgumentException; - method @NonNull public android.media.AudioTrack.Builder setContext(@NonNull android.content.Context); - method @NonNull public android.media.AudioTrack.Builder setEncapsulationMode(int); - method @NonNull public android.media.AudioTrack.Builder setOffloadedPlayback(boolean); - method @NonNull public android.media.AudioTrack.Builder setPerformanceMode(int); - method @NonNull public android.media.AudioTrack.Builder setSessionId(@IntRange(from=1) int) throws java.lang.IllegalArgumentException; - method @NonNull public android.media.AudioTrack.Builder setTransferMode(int) throws java.lang.IllegalArgumentException; - } - - public static final class AudioTrack.MetricsConstants { - field @Deprecated public static final String CHANNELMASK = "android.media.audiorecord.channelmask"; - field public static final String CONTENTTYPE = "android.media.audiotrack.type"; - field @Deprecated public static final String SAMPLERATE = "android.media.audiorecord.samplerate"; - field public static final String STREAMTYPE = "android.media.audiotrack.streamtype"; - field public static final String USAGE = "android.media.audiotrack.usage"; - } - - public static interface AudioTrack.OnCodecFormatChangedListener { - method public void onCodecFormatChanged(@NonNull android.media.AudioTrack, @Nullable android.media.AudioMetadataReadMap); - } - - public static interface AudioTrack.OnPlaybackPositionUpdateListener { - method public void onMarkerReached(android.media.AudioTrack); - method public void onPeriodicNotification(android.media.AudioTrack); - } - - @Deprecated public static interface AudioTrack.OnRoutingChangedListener extends android.media.AudioRouting.OnRoutingChangedListener { - method @Deprecated public void onRoutingChanged(android.media.AudioTrack); - method @Deprecated public default void onRoutingChanged(android.media.AudioRouting); - } - - public abstract static class AudioTrack.StreamEventCallback { - ctor public AudioTrack.StreamEventCallback(); - method public void onDataRequest(@NonNull android.media.AudioTrack, @IntRange(from=0) int); - method public void onPresentationEnded(@NonNull android.media.AudioTrack); - method public void onTearDown(@NonNull android.media.AudioTrack); - } - - public class CamcorderProfile { - method @Deprecated public static android.media.CamcorderProfile get(int); - method @Deprecated public static android.media.CamcorderProfile get(int, int); - method @Nullable public static android.media.EncoderProfiles getAll(@NonNull String, int); - method public static boolean hasProfile(int); - method public static boolean hasProfile(int, int); - field public static final int QUALITY_1080P = 6; // 0x6 - field public static final int QUALITY_2160P = 8; // 0x8 - field public static final int QUALITY_2K = 12; // 0xc - field public static final int QUALITY_480P = 4; // 0x4 - field public static final int QUALITY_4KDCI = 10; // 0xa - field public static final int QUALITY_720P = 5; // 0x5 - field public static final int QUALITY_8KUHD = 13; // 0xd - field public static final int QUALITY_CIF = 3; // 0x3 - field public static final int QUALITY_HIGH = 1; // 0x1 - field public static final int QUALITY_HIGH_SPEED_1080P = 2004; // 0x7d4 - field public static final int QUALITY_HIGH_SPEED_2160P = 2005; // 0x7d5 - field public static final int QUALITY_HIGH_SPEED_480P = 2002; // 0x7d2 - field public static final int QUALITY_HIGH_SPEED_4KDCI = 2008; // 0x7d8 - field public static final int QUALITY_HIGH_SPEED_720P = 2003; // 0x7d3 - field public static final int QUALITY_HIGH_SPEED_CIF = 2006; // 0x7d6 - field public static final int QUALITY_HIGH_SPEED_HIGH = 2001; // 0x7d1 - field public static final int QUALITY_HIGH_SPEED_LOW = 2000; // 0x7d0 - field public static final int QUALITY_HIGH_SPEED_VGA = 2007; // 0x7d7 - field public static final int QUALITY_LOW = 0; // 0x0 - field public static final int QUALITY_QCIF = 2; // 0x2 - field public static final int QUALITY_QHD = 11; // 0xb - field public static final int QUALITY_QVGA = 7; // 0x7 - field public static final int QUALITY_TIME_LAPSE_1080P = 1006; // 0x3ee - field public static final int QUALITY_TIME_LAPSE_2160P = 1008; // 0x3f0 - field public static final int QUALITY_TIME_LAPSE_2K = 1012; // 0x3f4 - field public static final int QUALITY_TIME_LAPSE_480P = 1004; // 0x3ec - field public static final int QUALITY_TIME_LAPSE_4KDCI = 1010; // 0x3f2 - field public static final int QUALITY_TIME_LAPSE_720P = 1005; // 0x3ed - field public static final int QUALITY_TIME_LAPSE_8KUHD = 1013; // 0x3f5 - field public static final int QUALITY_TIME_LAPSE_CIF = 1003; // 0x3eb - field public static final int QUALITY_TIME_LAPSE_HIGH = 1001; // 0x3e9 - field public static final int QUALITY_TIME_LAPSE_LOW = 1000; // 0x3e8 - field public static final int QUALITY_TIME_LAPSE_QCIF = 1002; // 0x3ea - field public static final int QUALITY_TIME_LAPSE_QHD = 1011; // 0x3f3 - field public static final int QUALITY_TIME_LAPSE_QVGA = 1007; // 0x3ef - field public static final int QUALITY_TIME_LAPSE_VGA = 1009; // 0x3f1 - field public static final int QUALITY_VGA = 9; // 0x9 - field public int audioBitRate; - field public int audioChannels; - field public int audioCodec; - field public int audioSampleRate; - field public int duration; - field public int fileFormat; - field public int quality; - field public int videoBitRate; - field public int videoCodec; - field public int videoFrameHeight; - field public int videoFrameRate; - field public int videoFrameWidth; - } - - public class CameraProfile { - ctor public CameraProfile(); - method public static int getJpegEncodingQualityParameter(int); - method public static int getJpegEncodingQualityParameter(int, int); - field public static final int QUALITY_HIGH = 2; // 0x2 - field public static final int QUALITY_LOW = 0; // 0x0 - field public static final int QUALITY_MEDIUM = 1; // 0x1 - } - - public final class DeniedByServerException extends android.media.MediaDrmException { - ctor public DeniedByServerException(String); - } - - public abstract class DrmInitData { - method @Deprecated public abstract android.media.DrmInitData.SchemeInitData get(java.util.UUID); - method @NonNull public android.media.DrmInitData.SchemeInitData getSchemeInitDataAt(int); - method public int getSchemeInitDataCount(); - } - - public static final class DrmInitData.SchemeInitData { - ctor public DrmInitData.SchemeInitData(@NonNull java.util.UUID, @NonNull String, @NonNull byte[]); - field @NonNull public static final java.util.UUID UUID_NIL; - field public final byte[] data; - field public final String mimeType; - field @NonNull public final java.util.UUID uuid; - } - - public final class EncoderProfiles { - method @NonNull public java.util.List getAudioProfiles(); - method public int getDefaultDurationSeconds(); - method public int getRecommendedFileFormat(); - method @NonNull public java.util.List getVideoProfiles(); - } - - public static final class EncoderProfiles.AudioProfile { - method public int getBitrate(); - method public int getChannels(); - method public int getCodec(); - method @NonNull public String getMediaType(); - method public int getProfile(); - method public int getSampleRate(); - } - - public static final class EncoderProfiles.VideoProfile { - method public int getBitDepth(); - method public int getBitrate(); - method public int getChromaSubsampling(); - method public int getCodec(); - method public int getFrameRate(); - method public int getHdrFormat(); - method public int getHeight(); - method @NonNull public String getMediaType(); - method public int getProfile(); - method public int getWidth(); - field public static final int HDR_DOLBY_VISION = 4; // 0x4 - field public static final int HDR_HDR10 = 2; // 0x2 - field public static final int HDR_HDR10PLUS = 3; // 0x3 - field public static final int HDR_HLG = 1; // 0x1 - field public static final int HDR_NONE = 0; // 0x0 - field public static final int YUV_420 = 0; // 0x0 - field public static final int YUV_422 = 1; // 0x1 - field public static final int YUV_444 = 2; // 0x2 - } - - public class ExifInterface { - ctor public ExifInterface(@NonNull java.io.File) throws java.io.IOException; - ctor public ExifInterface(@NonNull String) throws java.io.IOException; - ctor public ExifInterface(@NonNull java.io.FileDescriptor) throws java.io.IOException; - ctor public ExifInterface(@NonNull java.io.InputStream) throws java.io.IOException; - ctor public ExifInterface(@NonNull java.io.InputStream, int) throws java.io.IOException; - method public double getAltitude(double); - method @Nullable public String getAttribute(@NonNull String); - method @Nullable public byte[] getAttributeBytes(@NonNull String); - method public double getAttributeDouble(@NonNull String, double); - method public int getAttributeInt(@NonNull String, int); - method @Nullable public long[] getAttributeRange(@NonNull String); - method public long getDateTime(); - method public long getDateTimeDigitized(); - method public long getDateTimeOriginal(); - method public long getGpsDateTime(); - method public boolean getLatLong(float[]); - method public byte[] getThumbnail(); - method public android.graphics.Bitmap getThumbnailBitmap(); - method public byte[] getThumbnailBytes(); - method @Nullable public long[] getThumbnailRange(); - method public boolean hasAttribute(@NonNull String); - method public boolean hasThumbnail(); - method public static boolean isSupportedMimeType(@NonNull String); - method public boolean isThumbnailCompressed(); - method public void saveAttributes() throws java.io.IOException; - method public void setAttribute(@NonNull String, @Nullable String); - field public static final int ORIENTATION_FLIP_HORIZONTAL = 2; // 0x2 - field public static final int ORIENTATION_FLIP_VERTICAL = 4; // 0x4 - field public static final int ORIENTATION_NORMAL = 1; // 0x1 - field public static final int ORIENTATION_ROTATE_180 = 3; // 0x3 - field public static final int ORIENTATION_ROTATE_270 = 8; // 0x8 - field public static final int ORIENTATION_ROTATE_90 = 6; // 0x6 - field public static final int ORIENTATION_TRANSPOSE = 5; // 0x5 - field public static final int ORIENTATION_TRANSVERSE = 7; // 0x7 - field public static final int ORIENTATION_UNDEFINED = 0; // 0x0 - field public static final int STREAM_TYPE_EXIF_DATA_ONLY = 1; // 0x1 - field public static final int STREAM_TYPE_FULL_IMAGE_DATA = 0; // 0x0 - field @Deprecated public static final String TAG_APERTURE = "FNumber"; - field public static final String TAG_APERTURE_VALUE = "ApertureValue"; - field public static final String TAG_ARTIST = "Artist"; - field public static final String TAG_BITS_PER_SAMPLE = "BitsPerSample"; - field public static final String TAG_BRIGHTNESS_VALUE = "BrightnessValue"; - field public static final String TAG_CFA_PATTERN = "CFAPattern"; - field public static final String TAG_COLOR_SPACE = "ColorSpace"; - field public static final String TAG_COMPONENTS_CONFIGURATION = "ComponentsConfiguration"; - field public static final String TAG_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel"; - field public static final String TAG_COMPRESSION = "Compression"; - field public static final String TAG_CONTRAST = "Contrast"; - field public static final String TAG_COPYRIGHT = "Copyright"; - field public static final String TAG_CUSTOM_RENDERED = "CustomRendered"; - field public static final String TAG_DATETIME = "DateTime"; - field public static final String TAG_DATETIME_DIGITIZED = "DateTimeDigitized"; - field public static final String TAG_DATETIME_ORIGINAL = "DateTimeOriginal"; - field public static final String TAG_DEFAULT_CROP_SIZE = "DefaultCropSize"; - field public static final String TAG_DEVICE_SETTING_DESCRIPTION = "DeviceSettingDescription"; - field public static final String TAG_DIGITAL_ZOOM_RATIO = "DigitalZoomRatio"; - field public static final String TAG_DNG_VERSION = "DNGVersion"; - field public static final String TAG_EXIF_VERSION = "ExifVersion"; - field public static final String TAG_EXPOSURE_BIAS_VALUE = "ExposureBiasValue"; - field public static final String TAG_EXPOSURE_INDEX = "ExposureIndex"; - field public static final String TAG_EXPOSURE_MODE = "ExposureMode"; - field public static final String TAG_EXPOSURE_PROGRAM = "ExposureProgram"; - field public static final String TAG_EXPOSURE_TIME = "ExposureTime"; - field public static final String TAG_FILE_SOURCE = "FileSource"; - field public static final String TAG_FLASH = "Flash"; - field public static final String TAG_FLASHPIX_VERSION = "FlashpixVersion"; - field public static final String TAG_FLASH_ENERGY = "FlashEnergy"; - field public static final String TAG_FOCAL_LENGTH = "FocalLength"; - field public static final String TAG_FOCAL_LENGTH_IN_35MM_FILM = "FocalLengthIn35mmFilm"; - field public static final String TAG_FOCAL_PLANE_RESOLUTION_UNIT = "FocalPlaneResolutionUnit"; - field public static final String TAG_FOCAL_PLANE_X_RESOLUTION = "FocalPlaneXResolution"; - field public static final String TAG_FOCAL_PLANE_Y_RESOLUTION = "FocalPlaneYResolution"; - field public static final String TAG_F_NUMBER = "FNumber"; - field public static final String TAG_GAIN_CONTROL = "GainControl"; - field public static final String TAG_GPS_ALTITUDE = "GPSAltitude"; - field public static final String TAG_GPS_ALTITUDE_REF = "GPSAltitudeRef"; - field public static final String TAG_GPS_AREA_INFORMATION = "GPSAreaInformation"; - field public static final String TAG_GPS_DATESTAMP = "GPSDateStamp"; - field public static final String TAG_GPS_DEST_BEARING = "GPSDestBearing"; - field public static final String TAG_GPS_DEST_BEARING_REF = "GPSDestBearingRef"; - field public static final String TAG_GPS_DEST_DISTANCE = "GPSDestDistance"; - field public static final String TAG_GPS_DEST_DISTANCE_REF = "GPSDestDistanceRef"; - field public static final String TAG_GPS_DEST_LATITUDE = "GPSDestLatitude"; - field public static final String TAG_GPS_DEST_LATITUDE_REF = "GPSDestLatitudeRef"; - field public static final String TAG_GPS_DEST_LONGITUDE = "GPSDestLongitude"; - field public static final String TAG_GPS_DEST_LONGITUDE_REF = "GPSDestLongitudeRef"; - field public static final String TAG_GPS_DIFFERENTIAL = "GPSDifferential"; - field public static final String TAG_GPS_DOP = "GPSDOP"; - field public static final String TAG_GPS_IMG_DIRECTION = "GPSImgDirection"; - field public static final String TAG_GPS_IMG_DIRECTION_REF = "GPSImgDirectionRef"; - field public static final String TAG_GPS_LATITUDE = "GPSLatitude"; - field public static final String TAG_GPS_LATITUDE_REF = "GPSLatitudeRef"; - field public static final String TAG_GPS_LONGITUDE = "GPSLongitude"; - field public static final String TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef"; - field public static final String TAG_GPS_MAP_DATUM = "GPSMapDatum"; - field public static final String TAG_GPS_MEASURE_MODE = "GPSMeasureMode"; - field public static final String TAG_GPS_PROCESSING_METHOD = "GPSProcessingMethod"; - field public static final String TAG_GPS_SATELLITES = "GPSSatellites"; - field public static final String TAG_GPS_SPEED = "GPSSpeed"; - field public static final String TAG_GPS_SPEED_REF = "GPSSpeedRef"; - field public static final String TAG_GPS_STATUS = "GPSStatus"; - field public static final String TAG_GPS_TIMESTAMP = "GPSTimeStamp"; - field public static final String TAG_GPS_TRACK = "GPSTrack"; - field public static final String TAG_GPS_TRACK_REF = "GPSTrackRef"; - field public static final String TAG_GPS_VERSION_ID = "GPSVersionID"; - field public static final String TAG_IMAGE_DESCRIPTION = "ImageDescription"; - field public static final String TAG_IMAGE_LENGTH = "ImageLength"; - field public static final String TAG_IMAGE_UNIQUE_ID = "ImageUniqueID"; - field public static final String TAG_IMAGE_WIDTH = "ImageWidth"; - field public static final String TAG_INTEROPERABILITY_INDEX = "InteroperabilityIndex"; - field @Deprecated public static final String TAG_ISO = "ISOSpeedRatings"; - field public static final String TAG_ISO_SPEED_RATINGS = "ISOSpeedRatings"; - field public static final String TAG_JPEG_INTERCHANGE_FORMAT = "JPEGInterchangeFormat"; - field public static final String TAG_JPEG_INTERCHANGE_FORMAT_LENGTH = "JPEGInterchangeFormatLength"; - field public static final String TAG_LIGHT_SOURCE = "LightSource"; - field public static final String TAG_MAKE = "Make"; - field public static final String TAG_MAKER_NOTE = "MakerNote"; - field public static final String TAG_MAX_APERTURE_VALUE = "MaxApertureValue"; - field public static final String TAG_METERING_MODE = "MeteringMode"; - field public static final String TAG_MODEL = "Model"; - field public static final String TAG_NEW_SUBFILE_TYPE = "NewSubfileType"; - field public static final String TAG_OECF = "OECF"; - field public static final String TAG_OFFSET_TIME = "OffsetTime"; - field public static final String TAG_OFFSET_TIME_DIGITIZED = "OffsetTimeDigitized"; - field public static final String TAG_OFFSET_TIME_ORIGINAL = "OffsetTimeOriginal"; - field public static final String TAG_ORF_ASPECT_FRAME = "AspectFrame"; - field public static final String TAG_ORF_PREVIEW_IMAGE_LENGTH = "PreviewImageLength"; - field public static final String TAG_ORF_PREVIEW_IMAGE_START = "PreviewImageStart"; - field public static final String TAG_ORF_THUMBNAIL_IMAGE = "ThumbnailImage"; - field public static final String TAG_ORIENTATION = "Orientation"; - field public static final String TAG_PHOTOMETRIC_INTERPRETATION = "PhotometricInterpretation"; - field public static final String TAG_PIXEL_X_DIMENSION = "PixelXDimension"; - field public static final String TAG_PIXEL_Y_DIMENSION = "PixelYDimension"; - field public static final String TAG_PLANAR_CONFIGURATION = "PlanarConfiguration"; - field public static final String TAG_PRIMARY_CHROMATICITIES = "PrimaryChromaticities"; - field public static final String TAG_REFERENCE_BLACK_WHITE = "ReferenceBlackWhite"; - field public static final String TAG_RELATED_SOUND_FILE = "RelatedSoundFile"; - field public static final String TAG_RESOLUTION_UNIT = "ResolutionUnit"; - field public static final String TAG_ROWS_PER_STRIP = "RowsPerStrip"; - field public static final String TAG_RW2_ISO = "ISO"; - field public static final String TAG_RW2_JPG_FROM_RAW = "JpgFromRaw"; - field public static final String TAG_RW2_SENSOR_BOTTOM_BORDER = "SensorBottomBorder"; - field public static final String TAG_RW2_SENSOR_LEFT_BORDER = "SensorLeftBorder"; - field public static final String TAG_RW2_SENSOR_RIGHT_BORDER = "SensorRightBorder"; - field public static final String TAG_RW2_SENSOR_TOP_BORDER = "SensorTopBorder"; - field public static final String TAG_SAMPLES_PER_PIXEL = "SamplesPerPixel"; - field public static final String TAG_SATURATION = "Saturation"; - field public static final String TAG_SCENE_CAPTURE_TYPE = "SceneCaptureType"; - field public static final String TAG_SCENE_TYPE = "SceneType"; - field public static final String TAG_SENSING_METHOD = "SensingMethod"; - field public static final String TAG_SHARPNESS = "Sharpness"; - field public static final String TAG_SHUTTER_SPEED_VALUE = "ShutterSpeedValue"; - field public static final String TAG_SOFTWARE = "Software"; - field public static final String TAG_SPATIAL_FREQUENCY_RESPONSE = "SpatialFrequencyResponse"; - field public static final String TAG_SPECTRAL_SENSITIVITY = "SpectralSensitivity"; - field public static final String TAG_STRIP_BYTE_COUNTS = "StripByteCounts"; - field public static final String TAG_STRIP_OFFSETS = "StripOffsets"; - field public static final String TAG_SUBFILE_TYPE = "SubfileType"; - field public static final String TAG_SUBJECT_AREA = "SubjectArea"; - field public static final String TAG_SUBJECT_DISTANCE = "SubjectDistance"; - field public static final String TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange"; - field public static final String TAG_SUBJECT_LOCATION = "SubjectLocation"; - field public static final String TAG_SUBSEC_TIME = "SubSecTime"; - field @Deprecated public static final String TAG_SUBSEC_TIME_DIG = "SubSecTimeDigitized"; - field public static final String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized"; - field @Deprecated public static final String TAG_SUBSEC_TIME_ORIG = "SubSecTimeOriginal"; - field public static final String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal"; - field public static final String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength"; - field public static final String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth"; - field public static final String TAG_THUMBNAIL_ORIENTATION = "ThumbnailOrientation"; - field public static final String TAG_TRANSFER_FUNCTION = "TransferFunction"; - field public static final String TAG_USER_COMMENT = "UserComment"; - field public static final String TAG_WHITE_BALANCE = "WhiteBalance"; - field public static final String TAG_WHITE_POINT = "WhitePoint"; - field public static final String TAG_XMP = "Xmp"; - field public static final String TAG_X_RESOLUTION = "XResolution"; - field public static final String TAG_Y_CB_CR_COEFFICIENTS = "YCbCrCoefficients"; - field public static final String TAG_Y_CB_CR_POSITIONING = "YCbCrPositioning"; - field public static final String TAG_Y_CB_CR_SUB_SAMPLING = "YCbCrSubSampling"; - field public static final String TAG_Y_RESOLUTION = "YResolution"; - field public static final int WHITEBALANCE_AUTO = 0; // 0x0 - field public static final int WHITEBALANCE_MANUAL = 1; // 0x1 - } - - public class FaceDetector { - ctor public FaceDetector(int, int, int); - method public int findFaces(android.graphics.Bitmap, android.media.FaceDetector.Face[]); - } - - public class FaceDetector.Face { - method public float confidence(); - method public float eyesDistance(); - method public void getMidPoint(android.graphics.PointF); - method public float pose(int); - field public static final float CONFIDENCE_THRESHOLD = 0.4f; - field public static final int EULER_X = 0; // 0x0 - field public static final int EULER_Y = 1; // 0x1 - field public static final int EULER_Z = 2; // 0x2 - } - - public abstract class Image implements java.lang.AutoCloseable { - method public abstract void close(); - method public android.graphics.Rect getCropRect(); - method public int getDataSpace(); - method @NonNull public android.hardware.SyncFence getFence() throws java.io.IOException; - method public abstract int getFormat(); - method @Nullable public android.hardware.HardwareBuffer getHardwareBuffer(); - method public abstract int getHeight(); - method public abstract android.media.Image.Plane[] getPlanes(); - method public abstract long getTimestamp(); - method public abstract int getWidth(); - method public void setCropRect(android.graphics.Rect); - method public void setDataSpace(int); - method public void setFence(@NonNull android.hardware.SyncFence) throws java.io.IOException; - method public void setTimestamp(long); - } - - public abstract static class Image.Plane { - method public abstract java.nio.ByteBuffer getBuffer(); - method public abstract int getPixelStride(); - method public abstract int getRowStride(); - } - - public class ImageReader implements java.lang.AutoCloseable { - method public android.media.Image acquireLatestImage(); - method public android.media.Image acquireNextImage(); - method public void close(); - method public void discardFreeBuffers(); - method public int getDataSpace(); - method public int getHardwareBufferFormat(); - method public int getHeight(); - method public int getImageFormat(); - method public int getMaxImages(); - method public android.view.Surface getSurface(); - method public long getUsage(); - method public int getWidth(); - method @NonNull public static android.media.ImageReader newInstance(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int); - method @NonNull public static android.media.ImageReader newInstance(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int, long); - method public void setOnImageAvailableListener(android.media.ImageReader.OnImageAvailableListener, android.os.Handler); - } - - public static final class ImageReader.Builder { - ctor public ImageReader.Builder(@IntRange(from=1) int, @IntRange(from=1) int); - method @NonNull public android.media.ImageReader build(); - method @NonNull public android.media.ImageReader.Builder setDefaultDataSpace(int); - method @NonNull public android.media.ImageReader.Builder setDefaultHardwareBufferFormat(int); - method @NonNull public android.media.ImageReader.Builder setImageFormat(int); - method @NonNull public android.media.ImageReader.Builder setMaxImages(int); - method @NonNull public android.media.ImageReader.Builder setUsage(long); - } - - public static interface ImageReader.OnImageAvailableListener { - method public void onImageAvailable(android.media.ImageReader); - } - - public class ImageWriter implements java.lang.AutoCloseable { - method public void close(); - method public android.media.Image dequeueInputImage(); - method public int getDataSpace(); - method public int getFormat(); - method public int getHardwareBufferFormat(); - method public int getHeight(); - method public int getMaxImages(); - method public long getUsage(); - method public int getWidth(); - method @NonNull public static android.media.ImageWriter newInstance(@NonNull android.view.Surface, @IntRange(from=1) int); - method @NonNull public static android.media.ImageWriter newInstance(@NonNull android.view.Surface, @IntRange(from=1) int, int); - method public void queueInputImage(android.media.Image); - method public void setOnImageReleasedListener(android.media.ImageWriter.OnImageReleasedListener, android.os.Handler); - } - - public static final class ImageWriter.Builder { - ctor public ImageWriter.Builder(@NonNull android.view.Surface); - method @NonNull public android.media.ImageWriter build(); - method @NonNull public android.media.ImageWriter.Builder setDataSpace(int); - method @NonNull public android.media.ImageWriter.Builder setHardwareBufferFormat(int); - method @NonNull public android.media.ImageWriter.Builder setImageFormat(int); - method @NonNull public android.media.ImageWriter.Builder setMaxImages(@IntRange(from=1) int); - method @NonNull public android.media.ImageWriter.Builder setUsage(long); - method @NonNull public android.media.ImageWriter.Builder setWidthAndHeight(@IntRange(from=1) int, @IntRange(from=1) int); - } - - public static interface ImageWriter.OnImageReleasedListener { - method public void onImageReleased(android.media.ImageWriter); - } - - public class JetPlayer { - method public boolean clearQueue(); - method public Object clone() throws java.lang.CloneNotSupportedException; - method public boolean closeJetFile(); - method protected void finalize(); - method public static android.media.JetPlayer getJetPlayer(); - method public static int getMaxTracks(); - method public boolean loadJetFile(String); - method public boolean loadJetFile(android.content.res.AssetFileDescriptor); - method public boolean pause(); - method public boolean play(); - method public boolean queueJetSegment(int, int, int, int, int, byte); - method public boolean queueJetSegmentMuteArray(int, int, int, int, boolean[], byte); - method public void release(); - method public void setEventListener(android.media.JetPlayer.OnJetEventListener); - method public void setEventListener(android.media.JetPlayer.OnJetEventListener, android.os.Handler); - method public boolean setMuteArray(boolean[], boolean); - method public boolean setMuteFlag(int, boolean, boolean); - method public boolean setMuteFlags(int, boolean); - method public boolean triggerClip(int); - } - - public static interface JetPlayer.OnJetEventListener { - method public void onJetEvent(android.media.JetPlayer, short, byte, byte, byte, byte); - method public void onJetNumQueuedSegmentUpdate(android.media.JetPlayer, int); - method public void onJetPauseUpdate(android.media.JetPlayer, int); - method public void onJetUserIdUpdate(android.media.JetPlayer, int, int); - } - - @FlaggedApi("android.media.audio.loudness_configurator_api") public class LoudnessCodecController implements java.lang.AutoCloseable { - method @FlaggedApi("android.media.audio.loudness_configurator_api") public boolean addMediaCodec(@NonNull android.media.MediaCodec); - method @FlaggedApi("android.media.audio.loudness_configurator_api") public void close(); - method @FlaggedApi("android.media.audio.loudness_configurator_api") @NonNull public static android.media.LoudnessCodecController create(int); - method @FlaggedApi("android.media.audio.loudness_configurator_api") @NonNull public static android.media.LoudnessCodecController create(int, @NonNull java.util.concurrent.Executor, @NonNull android.media.LoudnessCodecController.OnLoudnessCodecUpdateListener); - method @FlaggedApi("android.media.audio.loudness_configurator_api") @NonNull public android.os.Bundle getLoudnessCodecParams(@NonNull android.media.MediaCodec); - method @FlaggedApi("android.media.audio.loudness_configurator_api") public void removeMediaCodec(@NonNull android.media.MediaCodec); - } - - @FlaggedApi("android.media.audio.loudness_configurator_api") public static interface LoudnessCodecController.OnLoudnessCodecUpdateListener { - method @FlaggedApi("android.media.audio.loudness_configurator_api") @NonNull public default android.os.Bundle onLoudnessCodecUpdate(@NonNull android.media.MediaCodec, @NonNull android.os.Bundle); - } - - public class MediaActionSound { - ctor public MediaActionSound(); - method public void load(int); - method public static boolean mustPlayShutterSound(); - method public void play(int); - method public void release(); - field public static final int FOCUS_COMPLETE = 1; // 0x1 - field public static final int SHUTTER_CLICK = 0; // 0x0 - field public static final int START_VIDEO_RECORDING = 2; // 0x2 - field public static final int STOP_VIDEO_RECORDING = 3; // 0x3 - } - - public final class MediaCas implements java.lang.AutoCloseable { - ctor public MediaCas(int) throws android.media.MediaCasException.UnsupportedCasException; - ctor public MediaCas(@NonNull android.content.Context, int, @Nullable String, int) throws android.media.MediaCasException.UnsupportedCasException; - ctor public MediaCas(@NonNull android.content.Context, int, @Nullable String, int, @Nullable android.os.Handler, @Nullable android.media.MediaCas.EventListener) throws android.media.MediaCasException.UnsupportedCasException; - method public void close(); - method public static android.media.MediaCas.PluginDescriptor[] enumeratePlugins(); - method protected void finalize(); - method public static boolean isSystemIdSupported(int); - method public android.media.MediaCas.Session openSession() throws android.media.MediaCasException; - method @Nullable public android.media.MediaCas.Session openSession(int, int) throws android.media.MediaCasException; - method public void processEmm(@NonNull byte[], int, int) throws android.media.MediaCasException; - method public void processEmm(@NonNull byte[]) throws android.media.MediaCasException; - method public void provision(@NonNull String) throws android.media.MediaCasException; - method public void refreshEntitlements(int, @Nullable byte[]) throws android.media.MediaCasException; - method public void sendEvent(int, int, @Nullable byte[]) throws android.media.MediaCasException; - method public void setEventListener(@Nullable android.media.MediaCas.EventListener, @Nullable android.os.Handler); - method public void setPrivateData(@NonNull byte[]) throws android.media.MediaCasException; - field public static final int PLUGIN_STATUS_PHYSICAL_MODULE_CHANGED = 0; // 0x0 - field public static final int PLUGIN_STATUS_SESSION_NUMBER_CHANGED = 1; // 0x1 - field public static final int SCRAMBLING_MODE_AES128 = 9; // 0x9 - field public static final int SCRAMBLING_MODE_AES_CBC = 14; // 0xe - field public static final int SCRAMBLING_MODE_AES_ECB = 10; // 0xa - field public static final int SCRAMBLING_MODE_AES_SCTE52 = 11; // 0xb - field public static final int SCRAMBLING_MODE_DVB_CISSA_V1 = 6; // 0x6 - field public static final int SCRAMBLING_MODE_DVB_CSA1 = 1; // 0x1 - field public static final int SCRAMBLING_MODE_DVB_CSA2 = 2; // 0x2 - field public static final int SCRAMBLING_MODE_DVB_CSA3_ENHANCE = 5; // 0x5 - field public static final int SCRAMBLING_MODE_DVB_CSA3_MINIMAL = 4; // 0x4 - field public static final int SCRAMBLING_MODE_DVB_CSA3_STANDARD = 3; // 0x3 - field public static final int SCRAMBLING_MODE_DVB_IDSA = 7; // 0x7 - field public static final int SCRAMBLING_MODE_MULTI2 = 8; // 0x8 - field public static final int SCRAMBLING_MODE_RESERVED = 0; // 0x0 - field public static final int SCRAMBLING_MODE_TDES_ECB = 12; // 0xc - field public static final int SCRAMBLING_MODE_TDES_SCTE52 = 13; // 0xd - field public static final int SESSION_USAGE_LIVE = 0; // 0x0 - field public static final int SESSION_USAGE_PLAYBACK = 1; // 0x1 - field public static final int SESSION_USAGE_RECORD = 2; // 0x2 - field public static final int SESSION_USAGE_TIMESHIFT = 3; // 0x3 - } - - public static interface MediaCas.EventListener { - method public void onEvent(@NonNull android.media.MediaCas, int, int, @Nullable byte[]); - method public default void onPluginStatusUpdate(@NonNull android.media.MediaCas, int, int); - method public default void onResourceLost(@NonNull android.media.MediaCas); - method public default void onSessionEvent(@NonNull android.media.MediaCas, @NonNull android.media.MediaCas.Session, int, int, @Nullable byte[]); - } - - public static class MediaCas.PluginDescriptor { - method @NonNull public String getName(); - method public int getSystemId(); - } - - public final class MediaCas.Session implements java.lang.AutoCloseable { - method public void close(); - method @NonNull public byte[] getSessionId(); - method public void processEcm(@NonNull byte[], int, int) throws android.media.MediaCasException; - method public void processEcm(@NonNull byte[]) throws android.media.MediaCasException; - method public void sendSessionEvent(int, int, @Nullable byte[]) throws android.media.MediaCasException; - method public void setPrivateData(@NonNull byte[]) throws android.media.MediaCasException; - } - - public class MediaCasException extends java.lang.Exception { - } - - public static final class MediaCasException.DeniedByServerException extends android.media.MediaCasException { - } - - public static final class MediaCasException.InsufficientResourceException extends android.media.MediaCasException { - } - - public static final class MediaCasException.NotProvisionedException extends android.media.MediaCasException { - } - - public static final class MediaCasException.ResourceBusyException extends android.media.MediaCasException { - } - - public static final class MediaCasException.UnsupportedCasException extends android.media.MediaCasException { - } - - public class MediaCasStateException extends java.lang.IllegalStateException { - method @NonNull public String getDiagnosticInfo(); - } - - public final class MediaCodec { - method public void configure(@Nullable android.media.MediaFormat, @Nullable android.view.Surface, @Nullable android.media.MediaCrypto, int); - method public void configure(@Nullable android.media.MediaFormat, @Nullable android.view.Surface, int, @Nullable android.media.MediaDescrambler); - method @NonNull public static android.media.MediaCodec createByCodecName(@NonNull String) throws java.io.IOException; - method @NonNull public static android.media.MediaCodec createDecoderByType(@NonNull String) throws java.io.IOException; - method @NonNull public static android.media.MediaCodec createEncoderByType(@NonNull String) throws java.io.IOException; - method @NonNull public android.view.Surface createInputSurface(); - method @NonNull public static android.view.Surface createPersistentInputSurface(); - method public int dequeueInputBuffer(long); - method public int dequeueOutputBuffer(@NonNull android.media.MediaCodec.BufferInfo, long); - method @FlaggedApi("android.media.codec.null_output_surface") public void detachOutputSurface(); - method protected void finalize(); - method public void flush(); - method @NonNull public String getCanonicalName(); - method @NonNull public android.media.MediaCodecInfo getCodecInfo(); - method @Nullable public java.nio.ByteBuffer getInputBuffer(int); - method @Deprecated @NonNull public java.nio.ByteBuffer[] getInputBuffers(); - method @NonNull public android.media.MediaFormat getInputFormat(); - method @Nullable public android.media.Image getInputImage(int); - method public android.os.PersistableBundle getMetrics(); - method @NonNull public String getName(); - method @Nullable public java.nio.ByteBuffer getOutputBuffer(int); - method @Deprecated @NonNull public java.nio.ByteBuffer[] getOutputBuffers(); - method @NonNull public android.media.MediaFormat getOutputFormat(); - method @NonNull public android.media.MediaFormat getOutputFormat(int); - method @NonNull public android.media.MediaCodec.OutputFrame getOutputFrame(int); - method @Nullable public android.media.Image getOutputImage(int); - method @Nullable public android.media.MediaCodec.ParameterDescriptor getParameterDescriptor(@NonNull String); - method @NonNull public android.media.MediaCodec.QueueRequest getQueueRequest(int); - method @NonNull public java.util.List getSupportedVendorParameters(); - method @Nullable public static android.media.Image mapHardwareBuffer(@NonNull android.hardware.HardwareBuffer); - method public void queueInputBuffer(int, int, int, long, int) throws android.media.MediaCodec.CryptoException; - method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public void queueInputBuffers(int, @NonNull java.util.ArrayDeque); - method public void queueSecureInputBuffer(int, int, @NonNull android.media.MediaCodec.CryptoInfo, long, int) throws android.media.MediaCodec.CryptoException; - method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public void queueSecureInputBuffers(int, @NonNull java.util.ArrayDeque, @NonNull java.util.ArrayDeque); - method public void release(); - method public void releaseOutputBuffer(int, boolean); - method public void releaseOutputBuffer(int, long); - method public void reset(); - method public void setAudioPresentation(@NonNull android.media.AudioPresentation); - method public void setCallback(@Nullable android.media.MediaCodec.Callback, @Nullable android.os.Handler); - method public void setCallback(@Nullable android.media.MediaCodec.Callback); - method public void setInputSurface(@NonNull android.view.Surface); - method public void setOnFirstTunnelFrameReadyListener(@Nullable android.os.Handler, @Nullable android.media.MediaCodec.OnFirstTunnelFrameReadyListener); - method public void setOnFrameRenderedListener(@Nullable android.media.MediaCodec.OnFrameRenderedListener, @Nullable android.os.Handler); - method public void setOutputSurface(@NonNull android.view.Surface); - method public void setParameters(@Nullable android.os.Bundle); - method public void setVideoScalingMode(int); - method public void signalEndOfInputStream(); - method public void start(); - method public void stop(); - method public void subscribeToVendorParameters(@NonNull java.util.List); - method public void unsubscribeFromVendorParameters(@NonNull java.util.List); - field public static final int BUFFER_FLAG_CODEC_CONFIG = 2; // 0x2 - field public static final int BUFFER_FLAG_DECODE_ONLY = 32; // 0x20 - field public static final int BUFFER_FLAG_END_OF_STREAM = 4; // 0x4 - field public static final int BUFFER_FLAG_KEY_FRAME = 1; // 0x1 - field public static final int BUFFER_FLAG_PARTIAL_FRAME = 8; // 0x8 - field @Deprecated public static final int BUFFER_FLAG_SYNC_FRAME = 1; // 0x1 - field @FlaggedApi("android.media.codec.null_output_surface") public static final int CONFIGURE_FLAG_DETACHED_SURFACE = 8; // 0x8 - field public static final int CONFIGURE_FLAG_ENCODE = 1; // 0x1 - field public static final int CONFIGURE_FLAG_USE_BLOCK_MODEL = 2; // 0x2 - field public static final int CONFIGURE_FLAG_USE_CRYPTO_ASYNC = 4; // 0x4 - field public static final int CRYPTO_MODE_AES_CBC = 2; // 0x2 - field public static final int CRYPTO_MODE_AES_CTR = 1; // 0x1 - field public static final int CRYPTO_MODE_UNENCRYPTED = 0; // 0x0 - field @Deprecated public static final int INFO_OUTPUT_BUFFERS_CHANGED = -3; // 0xfffffffd - field public static final int INFO_OUTPUT_FORMAT_CHANGED = -2; // 0xfffffffe - field public static final int INFO_TRY_AGAIN_LATER = -1; // 0xffffffff - field public static final String PARAMETER_KEY_HDR10_PLUS_INFO = "hdr10-plus-info"; - field public static final String PARAMETER_KEY_LOW_LATENCY = "low-latency"; - field public static final String PARAMETER_KEY_OFFSET_TIME = "time-offset-us"; - field @FlaggedApi("android.media.codec.region_of_interest") public static final String PARAMETER_KEY_QP_OFFSET_MAP = "qp-offset-map"; - field @FlaggedApi("android.media.codec.region_of_interest") public static final String PARAMETER_KEY_QP_OFFSET_RECTS = "qp-offset-rects"; - field public static final String PARAMETER_KEY_REQUEST_SYNC_FRAME = "request-sync"; - field public static final String PARAMETER_KEY_SUSPEND = "drop-input-frames"; - field public static final String PARAMETER_KEY_SUSPEND_TIME = "drop-start-time-us"; - field public static final String PARAMETER_KEY_TUNNEL_PEEK = "tunnel-peek"; - field public static final String PARAMETER_KEY_VIDEO_BITRATE = "video-bitrate"; - field public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT = 1; // 0x1 - field public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING = 2; // 0x2 - } - - public static final class MediaCodec.BufferInfo { - ctor public MediaCodec.BufferInfo(); - method public void set(int, int, long, int); - field public int flags; - field public int offset; - field public long presentationTimeUs; - field public int size; - } - - public abstract static class MediaCodec.Callback { - ctor public MediaCodec.Callback(); - method public void onCryptoError(@NonNull android.media.MediaCodec, @NonNull android.media.MediaCodec.CryptoException); - method public abstract void onError(@NonNull android.media.MediaCodec, @NonNull android.media.MediaCodec.CodecException); - method public abstract void onInputBufferAvailable(@NonNull android.media.MediaCodec, int); - method @FlaggedApi("android.media.codec.subsession_metrics") public void onMetricsFlushed(@NonNull android.media.MediaCodec, @NonNull android.os.PersistableBundle); - method public abstract void onOutputBufferAvailable(@NonNull android.media.MediaCodec, int, @NonNull android.media.MediaCodec.BufferInfo); - method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public void onOutputBuffersAvailable(@NonNull android.media.MediaCodec, int, @NonNull java.util.ArrayDeque); - method public abstract void onOutputFormatChanged(@NonNull android.media.MediaCodec, @NonNull android.media.MediaFormat); - } - - public static final class MediaCodec.CodecException extends java.lang.IllegalStateException { - method @NonNull public String getDiagnosticInfo(); - method public int getErrorCode(); - method public boolean isRecoverable(); - method public boolean isTransient(); - field public static final int ERROR_INSUFFICIENT_RESOURCE = 1100; // 0x44c - field public static final int ERROR_RECLAIMED = 1101; // 0x44d - } - - public static final class MediaCodec.CryptoException extends java.lang.RuntimeException implements android.media.MediaDrmThrowable { - ctor public MediaCodec.CryptoException(int, @Nullable String); - method @Nullable public android.media.MediaCodec.CryptoInfo getCryptoInfo(); - method public int getErrorCode(); - method public int getErrorContext(); - method public int getOemError(); - method public int getVendorError(); - field @Deprecated public static final int ERROR_FRAME_TOO_LARGE = 8; // 0x8 - field @Deprecated public static final int ERROR_INSUFFICIENT_OUTPUT_PROTECTION = 4; // 0x4 - field @Deprecated public static final int ERROR_INSUFFICIENT_SECURITY = 7; // 0x7 - field @Deprecated public static final int ERROR_KEY_EXPIRED = 2; // 0x2 - field @Deprecated public static final int ERROR_LOST_STATE = 9; // 0x9 - field @Deprecated public static final int ERROR_NO_KEY = 1; // 0x1 - field @Deprecated public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 - field @Deprecated public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 - field @Deprecated public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 - } - - public static final class MediaCodec.CryptoInfo { - ctor public MediaCodec.CryptoInfo(); - method @NonNull public android.media.MediaCodec.CryptoInfo.Pattern getPattern(); - method public void set(int, @NonNull int[], @NonNull int[], @NonNull byte[], @NonNull byte[], int); - method public void setPattern(android.media.MediaCodec.CryptoInfo.Pattern); - field public byte[] iv; - field public byte[] key; - field public int mode; - field public int[] numBytesOfClearData; - field public int[] numBytesOfEncryptedData; - field public int numSubSamples; - } - - public static final class MediaCodec.CryptoInfo.Pattern { - ctor public MediaCodec.CryptoInfo.Pattern(int, int); - method public int getEncryptBlocks(); - method public int getSkipBlocks(); - method public void set(int, int); - } - - public class MediaCodec.IncompatibleWithBlockModelException extends java.lang.RuntimeException { - } - - public class MediaCodec.InvalidBufferFlagsException extends java.lang.RuntimeException { - } - - public static final class MediaCodec.LinearBlock { - method protected void finalize(); - method public static boolean isCodecCopyFreeCompatible(@NonNull String[]); - method public boolean isMappable(); - method @NonNull public java.nio.ByteBuffer map(); - method @Nullable public static android.media.MediaCodec.LinearBlock obtain(int, @NonNull String[]); - method public void recycle(); - } - - public static final class MediaCodec.MetricsConstants { - field public static final String CODEC = "android.media.mediacodec.codec"; - field public static final String ENCODER = "android.media.mediacodec.encoder"; - field public static final String HEIGHT = "android.media.mediacodec.height"; - field public static final String MIME_TYPE = "android.media.mediacodec.mime"; - field public static final String MODE = "android.media.mediacodec.mode"; - field public static final String MODE_AUDIO = "audio"; - field public static final String MODE_VIDEO = "video"; - field public static final String ROTATION = "android.media.mediacodec.rotation"; - field public static final String SECURE = "android.media.mediacodec.secure"; - field public static final String WIDTH = "android.media.mediacodec.width"; - } - - public static interface MediaCodec.OnFirstTunnelFrameReadyListener { - method public void onFirstTunnelFrameReady(@NonNull android.media.MediaCodec); - } - - public static interface MediaCodec.OnFrameRenderedListener { - method public void onFrameRendered(@NonNull android.media.MediaCodec, long, long); - } - - public static final class MediaCodec.OutputFrame { - method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") @NonNull public java.util.ArrayDeque getBufferInfos(); - method @NonNull public java.util.Set getChangedKeys(); - method public int getFlags(); - method @NonNull public android.media.MediaFormat getFormat(); - method @Nullable public android.hardware.HardwareBuffer getHardwareBuffer(); - method @Nullable public android.media.MediaCodec.LinearBlock getLinearBlock(); - method public long getPresentationTimeUs(); - } - - public static class MediaCodec.ParameterDescriptor { - method @NonNull public String getName(); - method public int getType(); - } - - public final class MediaCodec.QueueRequest { - method public void queue(); - method @NonNull public android.media.MediaCodec.QueueRequest setByteBufferParameter(@NonNull String, @NonNull java.nio.ByteBuffer); - method @NonNull public android.media.MediaCodec.QueueRequest setEncryptedLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, int, int, @NonNull android.media.MediaCodec.CryptoInfo); - method @NonNull public android.media.MediaCodec.QueueRequest setFlags(int); - method @NonNull public android.media.MediaCodec.QueueRequest setFloatParameter(@NonNull String, float); - method @NonNull public android.media.MediaCodec.QueueRequest setHardwareBuffer(@NonNull android.hardware.HardwareBuffer); - method @NonNull public android.media.MediaCodec.QueueRequest setIntegerParameter(@NonNull String, int); - method @NonNull public android.media.MediaCodec.QueueRequest setLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, int, int); - method @NonNull public android.media.MediaCodec.QueueRequest setLongParameter(@NonNull String, long); - method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") @NonNull public android.media.MediaCodec.QueueRequest setMultiFrameEncryptedLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, @NonNull java.util.ArrayDeque, @NonNull java.util.ArrayDeque); - method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") @NonNull public android.media.MediaCodec.QueueRequest setMultiFrameLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, @NonNull java.util.ArrayDeque); - method @NonNull public android.media.MediaCodec.QueueRequest setPresentationTimeUs(long); - method @NonNull public android.media.MediaCodec.QueueRequest setStringParameter(@NonNull String, @NonNull String); - } - - public final class MediaCodecInfo { - method @NonNull public String getCanonicalName(); - method public android.media.MediaCodecInfo.CodecCapabilities getCapabilitiesForType(String); - method @NonNull public String getName(); - method @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public int getSecurityModel(); - method public String[] getSupportedTypes(); - method public boolean isAlias(); - method public boolean isEncoder(); - method public boolean isHardwareAccelerated(); - method public boolean isSoftwareOnly(); - method public boolean isVendor(); - field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final int SECURITY_MODEL_MEMORY_SAFE = 1; // 0x1 - field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final int SECURITY_MODEL_SANDBOXED = 0; // 0x0 - } - - public static final class MediaCodecInfo.AudioCapabilities { - method public android.util.Range getBitrateRange(); - method @NonNull public android.util.Range[] getInputChannelCountRanges(); - method @IntRange(from=1, to=255) public int getMaxInputChannelCount(); - method @IntRange(from=1, to=255) public int getMinInputChannelCount(); - method public android.util.Range[] getSupportedSampleRateRanges(); - method public int[] getSupportedSampleRates(); - method public boolean isSampleRateSupported(int); - } - - public static final class MediaCodecInfo.CodecCapabilities { - ctor public MediaCodecInfo.CodecCapabilities(); - method public static android.media.MediaCodecInfo.CodecCapabilities createFromProfileLevel(String, int, int); - method public android.media.MediaCodecInfo.AudioCapabilities getAudioCapabilities(); - method public android.media.MediaFormat getDefaultFormat(); - method public android.media.MediaCodecInfo.EncoderCapabilities getEncoderCapabilities(); - method public int getMaxSupportedInstances(); - method public String getMimeType(); - method public android.media.MediaCodecInfo.VideoCapabilities getVideoCapabilities(); - method public boolean isFeatureRequired(String); - method public boolean isFeatureSupported(String); - method public boolean isFormatSupported(android.media.MediaFormat); - field @Deprecated public static final int COLOR_Format12bitRGB444 = 3; // 0x3 - field @Deprecated public static final int COLOR_Format16bitARGB1555 = 5; // 0x5 - field @Deprecated public static final int COLOR_Format16bitARGB4444 = 4; // 0x4 - field @Deprecated public static final int COLOR_Format16bitBGR565 = 7; // 0x7 - field public static final int COLOR_Format16bitRGB565 = 6; // 0x6 - field @Deprecated public static final int COLOR_Format18BitBGR666 = 41; // 0x29 - field @Deprecated public static final int COLOR_Format18bitARGB1665 = 9; // 0x9 - field @Deprecated public static final int COLOR_Format18bitRGB666 = 8; // 0x8 - field @Deprecated public static final int COLOR_Format19bitARGB1666 = 10; // 0xa - field @Deprecated public static final int COLOR_Format24BitABGR6666 = 43; // 0x2b - field @Deprecated public static final int COLOR_Format24BitARGB6666 = 42; // 0x2a - field @Deprecated public static final int COLOR_Format24bitARGB1887 = 13; // 0xd - field public static final int COLOR_Format24bitBGR888 = 12; // 0xc - field @Deprecated public static final int COLOR_Format24bitRGB888 = 11; // 0xb - field @Deprecated public static final int COLOR_Format25bitARGB1888 = 14; // 0xe - field public static final int COLOR_Format32bitABGR2101010 = 2130750114; // 0x7f00aaa2 - field public static final int COLOR_Format32bitABGR8888 = 2130747392; // 0x7f00a000 - field @Deprecated public static final int COLOR_Format32bitARGB8888 = 16; // 0x10 - field @Deprecated public static final int COLOR_Format32bitBGRA8888 = 15; // 0xf - field public static final int COLOR_Format64bitABGRFloat = 2130710294; // 0x7f000f16 - field @Deprecated public static final int COLOR_Format8bitRGB332 = 2; // 0x2 - field @Deprecated public static final int COLOR_FormatCbYCrY = 27; // 0x1b - field @Deprecated public static final int COLOR_FormatCrYCbY = 28; // 0x1c - field public static final int COLOR_FormatL16 = 36; // 0x24 - field @Deprecated public static final int COLOR_FormatL2 = 33; // 0x21 - field @Deprecated public static final int COLOR_FormatL24 = 37; // 0x25 - field @Deprecated public static final int COLOR_FormatL32 = 38; // 0x26 - field @Deprecated public static final int COLOR_FormatL4 = 34; // 0x22 - field public static final int COLOR_FormatL8 = 35; // 0x23 - field @Deprecated public static final int COLOR_FormatMonochrome = 1; // 0x1 - field public static final int COLOR_FormatRGBAFlexible = 2134288520; // 0x7f36a888 - field public static final int COLOR_FormatRGBFlexible = 2134292616; // 0x7f36b888 - field public static final int COLOR_FormatRawBayer10bit = 31; // 0x1f - field public static final int COLOR_FormatRawBayer8bit = 30; // 0x1e - field public static final int COLOR_FormatRawBayer8bitcompressed = 32; // 0x20 - field public static final int COLOR_FormatSurface = 2130708361; // 0x7f000789 - field @Deprecated public static final int COLOR_FormatYCbYCr = 25; // 0x19 - field @Deprecated public static final int COLOR_FormatYCrYCb = 26; // 0x1a - field @Deprecated public static final int COLOR_FormatYUV411PackedPlanar = 18; // 0x12 - field @Deprecated public static final int COLOR_FormatYUV411Planar = 17; // 0x11 - field public static final int COLOR_FormatYUV420Flexible = 2135033992; // 0x7f420888 - field @Deprecated public static final int COLOR_FormatYUV420PackedPlanar = 20; // 0x14 - field @Deprecated public static final int COLOR_FormatYUV420PackedSemiPlanar = 39; // 0x27 - field @Deprecated public static final int COLOR_FormatYUV420Planar = 19; // 0x13 - field @Deprecated public static final int COLOR_FormatYUV420SemiPlanar = 21; // 0x15 - field public static final int COLOR_FormatYUV422Flexible = 2135042184; // 0x7f422888 - field @Deprecated public static final int COLOR_FormatYUV422PackedPlanar = 23; // 0x17 - field @Deprecated public static final int COLOR_FormatYUV422PackedSemiPlanar = 40; // 0x28 - field @Deprecated public static final int COLOR_FormatYUV422Planar = 22; // 0x16 - field @Deprecated public static final int COLOR_FormatYUV422SemiPlanar = 24; // 0x18 - field public static final int COLOR_FormatYUV444Flexible = 2135181448; // 0x7f444888 - field @Deprecated public static final int COLOR_FormatYUV444Interleaved = 29; // 0x1d - field public static final int COLOR_FormatYUVP010 = 54; // 0x36 - field @FlaggedApi("android.media.codec.p210_format_support") public static final int COLOR_FormatYUVP210 = 60; // 0x3c - field @Deprecated public static final int COLOR_QCOM_FormatYUV420SemiPlanar = 2141391872; // 0x7fa30c00 - field @Deprecated public static final int COLOR_TI_FormatYUV420PackedSemiPlanar = 2130706688; // 0x7f000100 - field public static final String FEATURE_AdaptivePlayback = "adaptive-playback"; - field @FlaggedApi("android.media.codec.null_output_surface") public static final String FEATURE_DetachedSurface = "detached-surface"; - field @FlaggedApi("android.media.codec.dynamic_color_aspects") public static final String FEATURE_DynamicColorAspects = "dynamic-color-aspects"; - field public static final String FEATURE_DynamicTimestamp = "dynamic-timestamp"; - field public static final String FEATURE_EncodingStatistics = "encoding-statistics"; - field public static final String FEATURE_FrameParsing = "frame-parsing"; - field public static final String FEATURE_HdrEditing = "hdr-editing"; - field @FlaggedApi("android.media.codec.hlg_editing") public static final String FEATURE_HlgEditing = "hlg-editing"; - field public static final String FEATURE_IntraRefresh = "intra-refresh"; - field public static final String FEATURE_LowLatency = "low-latency"; - field public static final String FEATURE_MultipleFrames = "multiple-frames"; - field public static final String FEATURE_PartialFrame = "partial-frame"; - field public static final String FEATURE_QpBounds = "qp-bounds"; - field @FlaggedApi("android.media.codec.region_of_interest") public static final String FEATURE_Roi = "region-of-interest"; - field public static final String FEATURE_SecurePlayback = "secure-playback"; - field public static final String FEATURE_TunneledPlayback = "tunneled-playback"; - field public int[] colorFormats; - field public android.media.MediaCodecInfo.CodecProfileLevel[] profileLevels; - } - - public static final class MediaCodecInfo.CodecProfileLevel { - ctor public MediaCodecInfo.CodecProfileLevel(); - field public static final int AACObjectELD = 39; // 0x27 - field public static final int AACObjectERLC = 17; // 0x11 - field public static final int AACObjectERScalable = 20; // 0x14 - field public static final int AACObjectHE = 5; // 0x5 - field public static final int AACObjectHE_PS = 29; // 0x1d - field public static final int AACObjectLC = 2; // 0x2 - field public static final int AACObjectLD = 23; // 0x17 - field public static final int AACObjectLTP = 4; // 0x4 - field public static final int AACObjectMain = 1; // 0x1 - field public static final int AACObjectSSR = 3; // 0x3 - field public static final int AACObjectScalable = 6; // 0x6 - field public static final int AACObjectXHE = 42; // 0x2a - field public static final int AC4Level0 = 1; // 0x1 - field public static final int AC4Level1 = 2; // 0x2 - field public static final int AC4Level2 = 4; // 0x4 - field public static final int AC4Level3 = 8; // 0x8 - field public static final int AC4Level4 = 16; // 0x10 - field public static final int AC4Profile00 = 257; // 0x101 - field public static final int AC4Profile10 = 513; // 0x201 - field public static final int AC4Profile11 = 514; // 0x202 - field public static final int AC4Profile21 = 1026; // 0x402 - field public static final int AC4Profile22 = 1028; // 0x404 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band0 = 513; // 0x201 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band1 = 514; // 0x202 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band2 = 516; // 0x204 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band3 = 520; // 0x208 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band0 = 257; // 0x101 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band1 = 258; // 0x102 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band2 = 260; // 0x104 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band3 = 264; // 0x108 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band0 = 2049; // 0x801 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band1 = 2050; // 0x802 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band2 = 2052; // 0x804 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band3 = 2056; // 0x808 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band0 = 1025; // 0x401 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band1 = 1026; // 0x402 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band2 = 1028; // 0x404 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band3 = 1032; // 0x408 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band0 = 8193; // 0x2001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band1 = 8194; // 0x2002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band2 = 8196; // 0x2004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band3 = 8200; // 0x2008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band0 = 4097; // 0x1001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band1 = 4098; // 0x1002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band2 = 4100; // 0x1004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band3 = 4104; // 0x1008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band0 = 32769; // 0x8001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band1 = 32770; // 0x8002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band2 = 32772; // 0x8004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band3 = 32776; // 0x8008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band0 = 16385; // 0x4001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band1 = 16386; // 0x4002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band2 = 16388; // 0x4004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band3 = 16392; // 0x4008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band0 = 131073; // 0x20001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band1 = 131074; // 0x20002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band2 = 131076; // 0x20004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band3 = 131080; // 0x20008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band0 = 65537; // 0x10001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band1 = 65538; // 0x10002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band2 = 65540; // 0x10004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band3 = 65544; // 0x10008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band0 = 524289; // 0x80001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band1 = 524290; // 0x80002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band2 = 524292; // 0x80004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band3 = 524296; // 0x80008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band0 = 262145; // 0x40001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band1 = 262146; // 0x40002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band2 = 262148; // 0x40004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band3 = 262152; // 0x40008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band0 = 2097153; // 0x200001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band1 = 2097154; // 0x200002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band2 = 2097156; // 0x200004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band3 = 2097160; // 0x200008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band0 = 1048577; // 0x100001 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band1 = 1048578; // 0x100002 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band2 = 1048580; // 0x100004 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band3 = 1048584; // 0x100008 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVProfile422_10 = 1; // 0x1 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVProfile422_10HDR10 = 4096; // 0x1000 - field @FlaggedApi("android.media.codec.apv_support") public static final int APVProfile422_10HDR10Plus = 8192; // 0x2000 - field public static final int AV1Level2 = 1; // 0x1 - field public static final int AV1Level21 = 2; // 0x2 - field public static final int AV1Level22 = 4; // 0x4 - field public static final int AV1Level23 = 8; // 0x8 - field public static final int AV1Level3 = 16; // 0x10 - field public static final int AV1Level31 = 32; // 0x20 - field public static final int AV1Level32 = 64; // 0x40 - field public static final int AV1Level33 = 128; // 0x80 - field public static final int AV1Level4 = 256; // 0x100 - field public static final int AV1Level41 = 512; // 0x200 - field public static final int AV1Level42 = 1024; // 0x400 - field public static final int AV1Level43 = 2048; // 0x800 - field public static final int AV1Level5 = 4096; // 0x1000 - field public static final int AV1Level51 = 8192; // 0x2000 - field public static final int AV1Level52 = 16384; // 0x4000 - field public static final int AV1Level53 = 32768; // 0x8000 - field public static final int AV1Level6 = 65536; // 0x10000 - field public static final int AV1Level61 = 131072; // 0x20000 - field public static final int AV1Level62 = 262144; // 0x40000 - field public static final int AV1Level63 = 524288; // 0x80000 - field public static final int AV1Level7 = 1048576; // 0x100000 - field public static final int AV1Level71 = 2097152; // 0x200000 - field public static final int AV1Level72 = 4194304; // 0x400000 - field public static final int AV1Level73 = 8388608; // 0x800000 - field public static final int AV1ProfileMain10 = 2; // 0x2 - field public static final int AV1ProfileMain10HDR10 = 4096; // 0x1000 - field public static final int AV1ProfileMain10HDR10Plus = 8192; // 0x2000 - field public static final int AV1ProfileMain8 = 1; // 0x1 - field public static final int AVCLevel1 = 1; // 0x1 - field public static final int AVCLevel11 = 4; // 0x4 - field public static final int AVCLevel12 = 8; // 0x8 - field public static final int AVCLevel13 = 16; // 0x10 - field public static final int AVCLevel1b = 2; // 0x2 - field public static final int AVCLevel2 = 32; // 0x20 - field public static final int AVCLevel21 = 64; // 0x40 - field public static final int AVCLevel22 = 128; // 0x80 - field public static final int AVCLevel3 = 256; // 0x100 - field public static final int AVCLevel31 = 512; // 0x200 - field public static final int AVCLevel32 = 1024; // 0x400 - field public static final int AVCLevel4 = 2048; // 0x800 - field public static final int AVCLevel41 = 4096; // 0x1000 - field public static final int AVCLevel42 = 8192; // 0x2000 - field public static final int AVCLevel5 = 16384; // 0x4000 - field public static final int AVCLevel51 = 32768; // 0x8000 - field public static final int AVCLevel52 = 65536; // 0x10000 - field public static final int AVCLevel6 = 131072; // 0x20000 - field public static final int AVCLevel61 = 262144; // 0x40000 - field public static final int AVCLevel62 = 524288; // 0x80000 - field public static final int AVCProfileBaseline = 1; // 0x1 - field public static final int AVCProfileConstrainedBaseline = 65536; // 0x10000 - field public static final int AVCProfileConstrainedHigh = 524288; // 0x80000 - field public static final int AVCProfileExtended = 4; // 0x4 - field public static final int AVCProfileHigh = 8; // 0x8 - field public static final int AVCProfileHigh10 = 16; // 0x10 - field public static final int AVCProfileHigh422 = 32; // 0x20 - field public static final int AVCProfileHigh444 = 64; // 0x40 - field public static final int AVCProfileMain = 2; // 0x2 - field public static final int DTS_HDProfileHRA = 1; // 0x1 - field public static final int DTS_HDProfileLBR = 2; // 0x2 - field public static final int DTS_HDProfileMA = 4; // 0x4 - field public static final int DTS_UHDProfileP1 = 1; // 0x1 - field public static final int DTS_UHDProfileP2 = 2; // 0x2 - field public static final int DolbyVisionLevel8k30 = 1024; // 0x400 - field public static final int DolbyVisionLevel8k60 = 2048; // 0x800 - field public static final int DolbyVisionLevelFhd24 = 4; // 0x4 - field public static final int DolbyVisionLevelFhd30 = 8; // 0x8 - field public static final int DolbyVisionLevelFhd60 = 16; // 0x10 - field public static final int DolbyVisionLevelHd24 = 1; // 0x1 - field public static final int DolbyVisionLevelHd30 = 2; // 0x2 - field public static final int DolbyVisionLevelUhd120 = 512; // 0x200 - field public static final int DolbyVisionLevelUhd24 = 32; // 0x20 - field public static final int DolbyVisionLevelUhd30 = 64; // 0x40 - field public static final int DolbyVisionLevelUhd48 = 128; // 0x80 - field public static final int DolbyVisionLevelUhd60 = 256; // 0x100 - field public static final int DolbyVisionProfileDvav110 = 1024; // 0x400 - field public static final int DolbyVisionProfileDvavPen = 2; // 0x2 - field public static final int DolbyVisionProfileDvavPer = 1; // 0x1 - field public static final int DolbyVisionProfileDvavSe = 512; // 0x200 - field public static final int DolbyVisionProfileDvheDen = 8; // 0x8 - field public static final int DolbyVisionProfileDvheDer = 4; // 0x4 - field public static final int DolbyVisionProfileDvheDtb = 128; // 0x80 - field public static final int DolbyVisionProfileDvheDth = 64; // 0x40 - field public static final int DolbyVisionProfileDvheDtr = 16; // 0x10 - field public static final int DolbyVisionProfileDvheSt = 256; // 0x100 - field public static final int DolbyVisionProfileDvheStn = 32; // 0x20 - field public static final int H263Level10 = 1; // 0x1 - field public static final int H263Level20 = 2; // 0x2 - field public static final int H263Level30 = 4; // 0x4 - field public static final int H263Level40 = 8; // 0x8 - field public static final int H263Level45 = 16; // 0x10 - field public static final int H263Level50 = 32; // 0x20 - field public static final int H263Level60 = 64; // 0x40 - field public static final int H263Level70 = 128; // 0x80 - field public static final int H263ProfileBackwardCompatible = 4; // 0x4 - field public static final int H263ProfileBaseline = 1; // 0x1 - field public static final int H263ProfileH320Coding = 2; // 0x2 - field public static final int H263ProfileHighCompression = 32; // 0x20 - field public static final int H263ProfileHighLatency = 256; // 0x100 - field public static final int H263ProfileISWV2 = 8; // 0x8 - field public static final int H263ProfileISWV3 = 16; // 0x10 - field public static final int H263ProfileInterlace = 128; // 0x80 - field public static final int H263ProfileInternet = 64; // 0x40 - field public static final int HEVCHighTierLevel1 = 2; // 0x2 - field public static final int HEVCHighTierLevel2 = 8; // 0x8 - field public static final int HEVCHighTierLevel21 = 32; // 0x20 - field public static final int HEVCHighTierLevel3 = 128; // 0x80 - field public static final int HEVCHighTierLevel31 = 512; // 0x200 - field public static final int HEVCHighTierLevel4 = 2048; // 0x800 - field public static final int HEVCHighTierLevel41 = 8192; // 0x2000 - field public static final int HEVCHighTierLevel5 = 32768; // 0x8000 - field public static final int HEVCHighTierLevel51 = 131072; // 0x20000 - field public static final int HEVCHighTierLevel52 = 524288; // 0x80000 - field public static final int HEVCHighTierLevel6 = 2097152; // 0x200000 - field public static final int HEVCHighTierLevel61 = 8388608; // 0x800000 - field public static final int HEVCHighTierLevel62 = 33554432; // 0x2000000 - field public static final int HEVCMainTierLevel1 = 1; // 0x1 - field public static final int HEVCMainTierLevel2 = 4; // 0x4 - field public static final int HEVCMainTierLevel21 = 16; // 0x10 - field public static final int HEVCMainTierLevel3 = 64; // 0x40 - field public static final int HEVCMainTierLevel31 = 256; // 0x100 - field public static final int HEVCMainTierLevel4 = 1024; // 0x400 - field public static final int HEVCMainTierLevel41 = 4096; // 0x1000 - field public static final int HEVCMainTierLevel5 = 16384; // 0x4000 - field public static final int HEVCMainTierLevel51 = 65536; // 0x10000 - field public static final int HEVCMainTierLevel52 = 262144; // 0x40000 - field public static final int HEVCMainTierLevel6 = 1048576; // 0x100000 - field public static final int HEVCMainTierLevel61 = 4194304; // 0x400000 - field public static final int HEVCMainTierLevel62 = 16777216; // 0x1000000 - field public static final int HEVCProfileMain = 1; // 0x1 - field public static final int HEVCProfileMain10 = 2; // 0x2 - field public static final int HEVCProfileMain10HDR10 = 4096; // 0x1000 - field public static final int HEVCProfileMain10HDR10Plus = 8192; // 0x2000 - field public static final int HEVCProfileMainStill = 4; // 0x4 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseAac = 16908290; // 0x1020002 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseEnhancedAac = 17039362; // 0x1040002 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseEnhancedFlac = 17039364; // 0x1040004 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseEnhancedOpus = 17039361; // 0x1040001 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseEnhancedPcm = 17039368; // 0x1040008 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseFlac = 16908292; // 0x1020004 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseOpus = 16908289; // 0x1020001 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBasePcm = 16908296; // 0x1020008 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileSimpleAac = 16842754; // 0x1010002 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileSimpleFlac = 16842756; // 0x1010004 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileSimpleOpus = 16842753; // 0x1010001 - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileSimplePcm = 16842760; // 0x1010008 - field public static final int MPEG2LevelH14 = 2; // 0x2 - field public static final int MPEG2LevelHL = 3; // 0x3 - field public static final int MPEG2LevelHP = 4; // 0x4 - field public static final int MPEG2LevelLL = 0; // 0x0 - field public static final int MPEG2LevelML = 1; // 0x1 - field public static final int MPEG2Profile422 = 2; // 0x2 - field public static final int MPEG2ProfileHigh = 5; // 0x5 - field public static final int MPEG2ProfileMain = 1; // 0x1 - field public static final int MPEG2ProfileSNR = 3; // 0x3 - field public static final int MPEG2ProfileSimple = 0; // 0x0 - field public static final int MPEG2ProfileSpatial = 4; // 0x4 - field public static final int MPEG4Level0 = 1; // 0x1 - field public static final int MPEG4Level0b = 2; // 0x2 - field public static final int MPEG4Level1 = 4; // 0x4 - field public static final int MPEG4Level2 = 8; // 0x8 - field public static final int MPEG4Level3 = 16; // 0x10 - field public static final int MPEG4Level3b = 24; // 0x18 - field public static final int MPEG4Level4 = 32; // 0x20 - field public static final int MPEG4Level4a = 64; // 0x40 - field public static final int MPEG4Level5 = 128; // 0x80 - field public static final int MPEG4Level6 = 256; // 0x100 - field public static final int MPEG4ProfileAdvancedCoding = 4096; // 0x1000 - field public static final int MPEG4ProfileAdvancedCore = 8192; // 0x2000 - field public static final int MPEG4ProfileAdvancedRealTime = 1024; // 0x400 - field public static final int MPEG4ProfileAdvancedScalable = 16384; // 0x4000 - field public static final int MPEG4ProfileAdvancedSimple = 32768; // 0x8000 - field public static final int MPEG4ProfileBasicAnimated = 256; // 0x100 - field public static final int MPEG4ProfileCore = 4; // 0x4 - field public static final int MPEG4ProfileCoreScalable = 2048; // 0x800 - field public static final int MPEG4ProfileHybrid = 512; // 0x200 - field public static final int MPEG4ProfileMain = 8; // 0x8 - field public static final int MPEG4ProfileNbit = 16; // 0x10 - field public static final int MPEG4ProfileScalableTexture = 32; // 0x20 - field public static final int MPEG4ProfileSimple = 1; // 0x1 - field public static final int MPEG4ProfileSimpleFBA = 128; // 0x80 - field public static final int MPEG4ProfileSimpleFace = 64; // 0x40 - field public static final int MPEG4ProfileSimpleScalable = 2; // 0x2 - field public static final int VP8Level_Version0 = 1; // 0x1 - field public static final int VP8Level_Version1 = 2; // 0x2 - field public static final int VP8Level_Version2 = 4; // 0x4 - field public static final int VP8Level_Version3 = 8; // 0x8 - field public static final int VP8ProfileMain = 1; // 0x1 - field public static final int VP9Level1 = 1; // 0x1 - field public static final int VP9Level11 = 2; // 0x2 - field public static final int VP9Level2 = 4; // 0x4 - field public static final int VP9Level21 = 8; // 0x8 - field public static final int VP9Level3 = 16; // 0x10 - field public static final int VP9Level31 = 32; // 0x20 - field public static final int VP9Level4 = 64; // 0x40 - field public static final int VP9Level41 = 128; // 0x80 - field public static final int VP9Level5 = 256; // 0x100 - field public static final int VP9Level51 = 512; // 0x200 - field public static final int VP9Level52 = 1024; // 0x400 - field public static final int VP9Level6 = 2048; // 0x800 - field public static final int VP9Level61 = 4096; // 0x1000 - field public static final int VP9Level62 = 8192; // 0x2000 - field public static final int VP9Profile0 = 1; // 0x1 - field public static final int VP9Profile1 = 2; // 0x2 - field public static final int VP9Profile2 = 4; // 0x4 - field public static final int VP9Profile2HDR = 4096; // 0x1000 - field public static final int VP9Profile2HDR10Plus = 16384; // 0x4000 - field public static final int VP9Profile3 = 8; // 0x8 - field public static final int VP9Profile3HDR = 8192; // 0x2000 - field public static final int VP9Profile3HDR10Plus = 32768; // 0x8000 - field public int level; - field public int profile; - } - - public static final class MediaCodecInfo.EncoderCapabilities { - method public android.util.Range getComplexityRange(); - method public android.util.Range getQualityRange(); - method public boolean isBitrateModeSupported(int); - field public static final int BITRATE_MODE_CBR = 2; // 0x2 - field public static final int BITRATE_MODE_CBR_FD = 3; // 0x3 - field public static final int BITRATE_MODE_CQ = 0; // 0x0 - field public static final int BITRATE_MODE_VBR = 1; // 0x1 - } - - public static final class MediaCodecInfo.VideoCapabilities { - method public boolean areSizeAndRateSupported(int, int, double); - method @Nullable public android.util.Range getAchievableFrameRatesFor(int, int); - method public android.util.Range getBitrateRange(); - method public int getHeightAlignment(); - method public android.util.Range getSupportedFrameRates(); - method public android.util.Range getSupportedFrameRatesFor(int, int); - method public android.util.Range getSupportedHeights(); - method public android.util.Range getSupportedHeightsFor(int); - method @Nullable public java.util.List getSupportedPerformancePoints(); - method public android.util.Range getSupportedWidths(); - method public android.util.Range getSupportedWidthsFor(int); - method public int getWidthAlignment(); - method public boolean isSizeSupported(int, int); - } - - public static final class MediaCodecInfo.VideoCapabilities.PerformancePoint { - ctor public MediaCodecInfo.VideoCapabilities.PerformancePoint(int, int, int); - method public boolean covers(@NonNull android.media.MediaFormat); - method public boolean covers(@NonNull android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint); - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_100; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_120; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_200; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_24; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_240; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_25; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_30; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_50; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_60; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_100; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_120; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_200; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_24; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_240; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_25; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_30; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_50; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_60; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_24; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_25; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_30; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_48; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_50; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_60; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_100; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_120; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_200; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_24; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_240; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_25; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_30; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_50; - field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_60; - } - - public final class MediaCodecList { - ctor public MediaCodecList(int); - method public String findDecoderForFormat(android.media.MediaFormat); - method public String findEncoderForFormat(android.media.MediaFormat); - method @Deprecated public static int getCodecCount(); - method @Deprecated public static android.media.MediaCodecInfo getCodecInfoAt(int); - method public android.media.MediaCodecInfo[] getCodecInfos(); - field public static final int ALL_CODECS = 1; // 0x1 - field public static final int REGULAR_CODECS = 0; // 0x0 - } - - public final class MediaCrypto { - ctor public MediaCrypto(@NonNull java.util.UUID, @NonNull byte[]) throws android.media.MediaCryptoException; - method protected void finalize(); - method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID); - method public void release(); - method public boolean requiresSecureDecoderComponent(@NonNull String); - method public void setMediaDrmSession(@NonNull byte[]) throws android.media.MediaCryptoException; - } - - public final class MediaCryptoException extends java.lang.Exception implements android.media.MediaDrmThrowable { - ctor public MediaCryptoException(@Nullable String); - method public int getErrorContext(); - method public int getOemError(); - method public int getVendorError(); - } - - public abstract class MediaDataSource implements java.io.Closeable { - ctor public MediaDataSource(); - method public abstract long getSize() throws java.io.IOException; - method public abstract int readAt(long, byte[], int, int) throws java.io.IOException; - } - - public final class MediaDescrambler implements java.lang.AutoCloseable { - ctor public MediaDescrambler(int) throws android.media.MediaCasException.UnsupportedCasException; - method public void close(); - method public int descramble(@NonNull java.nio.ByteBuffer, @NonNull java.nio.ByteBuffer, @NonNull android.media.MediaCodec.CryptoInfo); - method protected void finalize(); - method public boolean requiresSecureDecoderComponent(@NonNull String); - method public void setMediaCasSession(@NonNull android.media.MediaCas.Session); - field public static final byte SCRAMBLE_CONTROL_EVEN_KEY = 2; // 0x2 - field public static final byte SCRAMBLE_CONTROL_ODD_KEY = 3; // 0x3 - field public static final byte SCRAMBLE_CONTROL_RESERVED = 1; // 0x1 - field public static final byte SCRAMBLE_CONTROL_UNSCRAMBLED = 0; // 0x0 - field public static final byte SCRAMBLE_FLAG_PES_HEADER = 1; // 0x1 - } - - public class MediaDescription implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public CharSequence getDescription(); - method @Nullable public android.os.Bundle getExtras(); - method @Nullable public android.graphics.Bitmap getIconBitmap(); - method @Nullable public android.net.Uri getIconUri(); - method @Nullable public String getMediaId(); - method @Nullable public android.net.Uri getMediaUri(); - method @Nullable public CharSequence getSubtitle(); - method @Nullable public CharSequence getTitle(); - method public void writeToParcel(android.os.Parcel, int); - field public static final long BT_FOLDER_TYPE_ALBUMS = 2L; // 0x2L - field public static final long BT_FOLDER_TYPE_ARTISTS = 3L; // 0x3L - field public static final long BT_FOLDER_TYPE_GENRES = 4L; // 0x4L - field public static final long BT_FOLDER_TYPE_MIXED = 0L; // 0x0L - field public static final long BT_FOLDER_TYPE_PLAYLISTS = 5L; // 0x5L - field public static final long BT_FOLDER_TYPE_TITLES = 1L; // 0x1L - field public static final long BT_FOLDER_TYPE_YEARS = 6L; // 0x6L - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String EXTRA_BT_FOLDER_TYPE = "android.media.extra.BT_FOLDER_TYPE"; - } - - public static class MediaDescription.Builder { - ctor public MediaDescription.Builder(); - method public android.media.MediaDescription build(); - method public android.media.MediaDescription.Builder setDescription(@Nullable CharSequence); - method public android.media.MediaDescription.Builder setExtras(@Nullable android.os.Bundle); - method public android.media.MediaDescription.Builder setIconBitmap(@Nullable android.graphics.Bitmap); - method public android.media.MediaDescription.Builder setIconUri(@Nullable android.net.Uri); - method public android.media.MediaDescription.Builder setMediaId(@Nullable String); - method public android.media.MediaDescription.Builder setMediaUri(@Nullable android.net.Uri); - method public android.media.MediaDescription.Builder setSubtitle(@Nullable CharSequence); - method public android.media.MediaDescription.Builder setTitle(@Nullable CharSequence); - } - - public final class MediaDrm implements java.lang.AutoCloseable { - ctor public MediaDrm(@NonNull java.util.UUID) throws android.media.UnsupportedSchemeException; - method public void clearOnEventListener(); - method public void clearOnExpirationUpdateListener(); - method public void clearOnKeyStatusChangeListener(); - method public void clearOnSessionLostStateListener(); - method public void close(); - method public void closeSession(@NonNull byte[]); - method public int getConnectedHdcpLevel(); - method public android.media.MediaDrm.CryptoSession getCryptoSession(@NonNull byte[], @NonNull String, @NonNull String); - method @NonNull public android.media.MediaDrm.KeyRequest getKeyRequest(@NonNull byte[], @Nullable byte[], @Nullable String, int, @Nullable java.util.HashMap) throws android.media.NotProvisionedException; - method @NonNull public java.util.List getLogMessages(); - method public int getMaxHdcpLevel(); - method public static int getMaxSecurityLevel(); - method public int getMaxSessionCount(); - method public android.os.PersistableBundle getMetrics(); - method @NonNull public java.util.List getOfflineLicenseKeySetIds(); - method public int getOfflineLicenseState(@NonNull byte[]); - method public int getOpenSessionCount(); - method @Nullable public android.media.MediaDrm.PlaybackComponent getPlaybackComponent(@NonNull byte[]); - method @NonNull public byte[] getPropertyByteArray(String); - method @NonNull public String getPropertyString(@NonNull String); - method @NonNull public android.media.MediaDrm.ProvisionRequest getProvisionRequest(); - method @Deprecated @NonNull public byte[] getSecureStop(@NonNull byte[]); - method @Deprecated @NonNull public java.util.List getSecureStopIds(); - method @Deprecated @NonNull public java.util.List getSecureStops(); - method public int getSecurityLevel(@NonNull byte[]); - method @NonNull public static java.util.List getSupportedCryptoSchemes(); - method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID); - method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID, @NonNull String); - method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID, @NonNull String, int); - method @NonNull public byte[] openSession() throws android.media.NotProvisionedException, android.media.ResourceBusyException; - method @NonNull public byte[] openSession(int) throws android.media.NotProvisionedException, android.media.ResourceBusyException; - method @Nullable public byte[] provideKeyResponse(@NonNull byte[], @NonNull byte[]) throws android.media.DeniedByServerException, android.media.NotProvisionedException; - method public void provideProvisionResponse(@NonNull byte[]) throws android.media.DeniedByServerException; - method @NonNull public java.util.HashMap queryKeyStatus(@NonNull byte[]); - method @Deprecated public void release(); - method @Deprecated public void releaseAllSecureStops(); - method @Deprecated public void releaseSecureStops(@NonNull byte[]); - method @Deprecated public void removeAllSecureStops(); - method public void removeKeys(@NonNull byte[]); - method public void removeOfflineLicense(@NonNull byte[]); - method @Deprecated public void removeSecureStop(@NonNull byte[]); - method public boolean requiresSecureDecoder(@NonNull String); - method public boolean requiresSecureDecoder(@NonNull String, int); - method public void restoreKeys(@NonNull byte[], @NonNull byte[]); - method public void setOnEventListener(@Nullable android.media.MediaDrm.OnEventListener); - method public void setOnEventListener(@Nullable android.media.MediaDrm.OnEventListener, @Nullable android.os.Handler); - method public void setOnEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaDrm.OnEventListener); - method public void setOnExpirationUpdateListener(@Nullable android.media.MediaDrm.OnExpirationUpdateListener, @Nullable android.os.Handler); - method public void setOnExpirationUpdateListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaDrm.OnExpirationUpdateListener); - method public void setOnKeyStatusChangeListener(@Nullable android.media.MediaDrm.OnKeyStatusChangeListener, @Nullable android.os.Handler); - method public void setOnKeyStatusChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaDrm.OnKeyStatusChangeListener); - method public void setOnSessionLostStateListener(@Nullable android.media.MediaDrm.OnSessionLostStateListener, @Nullable android.os.Handler); - method public void setOnSessionLostStateListener(@NonNull java.util.concurrent.Executor, @Nullable android.media.MediaDrm.OnSessionLostStateListener); - method public void setPropertyByteArray(@NonNull String, @NonNull byte[]); - method public void setPropertyString(@NonNull String, @NonNull String); - field @Deprecated public static final int EVENT_KEY_EXPIRED = 3; // 0x3 - field public static final int EVENT_KEY_REQUIRED = 2; // 0x2 - field @Deprecated public static final int EVENT_PROVISION_REQUIRED = 1; // 0x1 - field public static final int EVENT_SESSION_RECLAIMED = 5; // 0x5 - field public static final int EVENT_VENDOR_DEFINED = 4; // 0x4 - field public static final int HDCP_LEVEL_UNKNOWN = 0; // 0x0 - field public static final int HDCP_NONE = 1; // 0x1 - field public static final int HDCP_NO_DIGITAL_OUTPUT = 2147483647; // 0x7fffffff - field public static final int HDCP_V1 = 2; // 0x2 - field public static final int HDCP_V2 = 3; // 0x3 - field public static final int HDCP_V2_1 = 4; // 0x4 - field public static final int HDCP_V2_2 = 5; // 0x5 - field public static final int HDCP_V2_3 = 6; // 0x6 - field public static final int KEY_TYPE_OFFLINE = 2; // 0x2 - field public static final int KEY_TYPE_RELEASE = 3; // 0x3 - field public static final int KEY_TYPE_STREAMING = 1; // 0x1 - field public static final int OFFLINE_LICENSE_STATE_RELEASED = 2; // 0x2 - field public static final int OFFLINE_LICENSE_STATE_UNKNOWN = 0; // 0x0 - field public static final int OFFLINE_LICENSE_STATE_USABLE = 1; // 0x1 - field public static final String PROPERTY_ALGORITHMS = "algorithms"; - field public static final String PROPERTY_DESCRIPTION = "description"; - field public static final String PROPERTY_DEVICE_UNIQUE_ID = "deviceUniqueId"; - field public static final String PROPERTY_VENDOR = "vendor"; - field public static final String PROPERTY_VERSION = "version"; - field public static final int SECURITY_LEVEL_HW_SECURE_ALL = 5; // 0x5 - field public static final int SECURITY_LEVEL_HW_SECURE_CRYPTO = 3; // 0x3 - field public static final int SECURITY_LEVEL_HW_SECURE_DECODE = 4; // 0x4 - field public static final int SECURITY_LEVEL_SW_SECURE_CRYPTO = 1; // 0x1 - field public static final int SECURITY_LEVEL_SW_SECURE_DECODE = 2; // 0x2 - field public static final int SECURITY_LEVEL_UNKNOWN = 0; // 0x0 - } - - public final class MediaDrm.CryptoSession { - method @NonNull public byte[] decrypt(@NonNull byte[], @NonNull byte[], @NonNull byte[]); - method @NonNull public byte[] encrypt(@NonNull byte[], @NonNull byte[], @NonNull byte[]); - method @NonNull public byte[] sign(@NonNull byte[], @NonNull byte[]); - method public boolean verify(@NonNull byte[], @NonNull byte[], @NonNull byte[]); - } - - public static final class MediaDrm.ErrorCodes { - field public static final int ERROR_CERTIFICATE_MALFORMED = 10; // 0xa - field public static final int ERROR_CERTIFICATE_MISSING = 11; // 0xb - field public static final int ERROR_CRYPTO_LIBRARY = 12; // 0xc - field public static final int ERROR_FRAME_TOO_LARGE = 8; // 0x8 - field public static final int ERROR_GENERIC_OEM = 13; // 0xd - field public static final int ERROR_GENERIC_PLUGIN = 14; // 0xe - field public static final int ERROR_INIT_DATA = 15; // 0xf - field public static final int ERROR_INSUFFICIENT_OUTPUT_PROTECTION = 4; // 0x4 - field public static final int ERROR_INSUFFICIENT_SECURITY = 7; // 0x7 - field public static final int ERROR_KEY_EXPIRED = 2; // 0x2 - field public static final int ERROR_KEY_NOT_LOADED = 16; // 0x10 - field public static final int ERROR_LICENSE_PARSE = 17; // 0x11 - field public static final int ERROR_LICENSE_POLICY = 18; // 0x12 - field public static final int ERROR_LICENSE_RELEASE = 19; // 0x13 - field public static final int ERROR_LICENSE_REQUEST_REJECTED = 20; // 0x14 - field public static final int ERROR_LICENSE_RESTORE = 21; // 0x15 - field public static final int ERROR_LICENSE_STATE = 22; // 0x16 - field public static final int ERROR_LOST_STATE = 9; // 0x9 - field public static final int ERROR_MEDIA_FRAMEWORK = 23; // 0x17 - field public static final int ERROR_NO_KEY = 1; // 0x1 - field public static final int ERROR_PROVISIONING_CERTIFICATE = 24; // 0x18 - field public static final int ERROR_PROVISIONING_CONFIG = 25; // 0x19 - field public static final int ERROR_PROVISIONING_PARSE = 26; // 0x1a - field public static final int ERROR_PROVISIONING_REQUEST_REJECTED = 27; // 0x1b - field public static final int ERROR_PROVISIONING_RETRY = 28; // 0x1c - field public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 - field public static final int ERROR_RESOURCE_CONTENTION = 29; // 0x1d - field public static final int ERROR_SECURE_STOP_RELEASE = 30; // 0x1e - field public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 - field public static final int ERROR_STORAGE_READ = 31; // 0x1f - field public static final int ERROR_STORAGE_WRITE = 32; // 0x20 - field public static final int ERROR_UNKNOWN = 0; // 0x0 - field public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 - field public static final int ERROR_ZERO_SUBSAMPLES = 33; // 0x21 - } - - public static final class MediaDrm.KeyRequest { - method @NonNull public byte[] getData(); - method @NonNull public String getDefaultUrl(); - method public int getRequestType(); - field public static final int REQUEST_TYPE_INITIAL = 0; // 0x0 - field public static final int REQUEST_TYPE_NONE = 3; // 0x3 - field public static final int REQUEST_TYPE_RELEASE = 2; // 0x2 - field public static final int REQUEST_TYPE_RENEWAL = 1; // 0x1 - field public static final int REQUEST_TYPE_UPDATE = 4; // 0x4 - } - - public static final class MediaDrm.KeyStatus { - method @NonNull public byte[] getKeyId(); - method public int getStatusCode(); - field public static final int STATUS_EXPIRED = 1; // 0x1 - field public static final int STATUS_INTERNAL_ERROR = 4; // 0x4 - field public static final int STATUS_OUTPUT_NOT_ALLOWED = 2; // 0x2 - field public static final int STATUS_PENDING = 3; // 0x3 - field public static final int STATUS_USABLE = 0; // 0x0 - field public static final int STATUS_USABLE_IN_FUTURE = 5; // 0x5 - } - - public static final class MediaDrm.LogMessage { - method @NonNull public String getMessage(); - method public int getPriority(); - method public long getTimestampMillis(); - } - - public static final class MediaDrm.MediaDrmStateException extends java.lang.IllegalStateException implements android.media.MediaDrmThrowable { - method @NonNull public String getDiagnosticInfo(); - method public int getErrorCode(); - method public int getErrorContext(); - method public int getOemError(); - method public int getVendorError(); - method public boolean isTransient(); - } - - public static final class MediaDrm.MetricsConstants { - field public static final String CLOSE_SESSION_ERROR_COUNT = "drm.mediadrm.close_session.error.count"; - field public static final String CLOSE_SESSION_ERROR_LIST = "drm.mediadrm.close_session.error.list"; - field public static final String CLOSE_SESSION_OK_COUNT = "drm.mediadrm.close_session.ok.count"; - field public static final String EVENT_KEY_EXPIRED_COUNT = "drm.mediadrm.event.KEY_EXPIRED.count"; - field public static final String EVENT_KEY_NEEDED_COUNT = "drm.mediadrm.event.KEY_NEEDED.count"; - field public static final String EVENT_PROVISION_REQUIRED_COUNT = "drm.mediadrm.event.PROVISION_REQUIRED.count"; - field public static final String EVENT_SESSION_RECLAIMED_COUNT = "drm.mediadrm.event.SESSION_RECLAIMED.count"; - field public static final String EVENT_VENDOR_DEFINED_COUNT = "drm.mediadrm.event.VENDOR_DEFINED.count"; - field public static final String GET_DEVICE_UNIQUE_ID_ERROR_COUNT = "drm.mediadrm.get_device_unique_id.error.count"; - field public static final String GET_DEVICE_UNIQUE_ID_ERROR_LIST = "drm.mediadrm.get_device_unique_id.error.list"; - field public static final String GET_DEVICE_UNIQUE_ID_OK_COUNT = "drm.mediadrm.get_device_unique_id.ok.count"; - field public static final String GET_KEY_REQUEST_ERROR_COUNT = "drm.mediadrm.get_key_request.error.count"; - field public static final String GET_KEY_REQUEST_ERROR_LIST = "drm.mediadrm.get_key_request.error.list"; - field public static final String GET_KEY_REQUEST_OK_COUNT = "drm.mediadrm.get_key_request.ok.count"; - field public static final String GET_KEY_REQUEST_OK_TIME_MICROS = "drm.mediadrm.get_key_request.ok.average_time_micros"; - field public static final String GET_PROVISION_REQUEST_ERROR_COUNT = "drm.mediadrm.get_provision_request.error.count"; - field public static final String GET_PROVISION_REQUEST_ERROR_LIST = "drm.mediadrm.get_provision_request.error.list"; - field public static final String GET_PROVISION_REQUEST_OK_COUNT = "drm.mediadrm.get_provision_request.ok.count"; - field public static final String KEY_STATUS_EXPIRED_COUNT = "drm.mediadrm.key_status.EXPIRED.count"; - field public static final String KEY_STATUS_INTERNAL_ERROR_COUNT = "drm.mediadrm.key_status.INTERNAL_ERROR.count"; - field public static final String KEY_STATUS_OUTPUT_NOT_ALLOWED_COUNT = "drm.mediadrm.key_status_change.OUTPUT_NOT_ALLOWED.count"; - field public static final String KEY_STATUS_PENDING_COUNT = "drm.mediadrm.key_status_change.PENDING.count"; - field public static final String KEY_STATUS_USABLE_COUNT = "drm.mediadrm.key_status_change.USABLE.count"; - field public static final String OPEN_SESSION_ERROR_COUNT = "drm.mediadrm.open_session.error.count"; - field public static final String OPEN_SESSION_ERROR_LIST = "drm.mediadrm.open_session.error.list"; - field public static final String OPEN_SESSION_OK_COUNT = "drm.mediadrm.open_session.ok.count"; - field public static final String PROVIDE_KEY_RESPONSE_ERROR_COUNT = "drm.mediadrm.provide_key_response.error.count"; - field public static final String PROVIDE_KEY_RESPONSE_ERROR_LIST = "drm.mediadrm.provide_key_response.error.list"; - field public static final String PROVIDE_KEY_RESPONSE_OK_COUNT = "drm.mediadrm.provide_key_response.ok.count"; - field public static final String PROVIDE_KEY_RESPONSE_OK_TIME_MICROS = "drm.mediadrm.provide_key_response.ok.average_time_micros"; - field public static final String PROVIDE_PROVISION_RESPONSE_ERROR_COUNT = "drm.mediadrm.provide_provision_response.error.count"; - field public static final String PROVIDE_PROVISION_RESPONSE_ERROR_LIST = "drm.mediadrm.provide_provision_response.error.list"; - field public static final String PROVIDE_PROVISION_RESPONSE_OK_COUNT = "drm.mediadrm.provide_provision_response.ok.count"; - field public static final String SESSION_END_TIMES_MS = "drm.mediadrm.session_end_times_ms"; - field public static final String SESSION_START_TIMES_MS = "drm.mediadrm.session_start_times_ms"; - } - - public static interface MediaDrm.OnEventListener { - method public void onEvent(@NonNull android.media.MediaDrm, @Nullable byte[], int, int, @Nullable byte[]); - } - - public static interface MediaDrm.OnExpirationUpdateListener { - method public void onExpirationUpdate(@NonNull android.media.MediaDrm, @NonNull byte[], long); - } - - public static interface MediaDrm.OnKeyStatusChangeListener { - method public void onKeyStatusChange(@NonNull android.media.MediaDrm, @NonNull byte[], @NonNull java.util.List, boolean); - } - - public static interface MediaDrm.OnSessionLostStateListener { - method public void onSessionLostState(@NonNull android.media.MediaDrm, @NonNull byte[]); - } - - public final class MediaDrm.PlaybackComponent { - method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); - method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); - } - - public static final class MediaDrm.ProvisionRequest { - method @NonNull public byte[] getData(); - method @NonNull public String getDefaultUrl(); - } - - public static final class MediaDrm.SessionException extends java.lang.RuntimeException implements android.media.MediaDrmThrowable { - ctor public MediaDrm.SessionException(int, @Nullable String); - method @Deprecated public int getErrorCode(); - method public int getErrorContext(); - method public int getOemError(); - method public int getVendorError(); - method public boolean isTransient(); - field @Deprecated public static final int ERROR_RESOURCE_CONTENTION = 1; // 0x1 - field @Deprecated public static final int ERROR_UNKNOWN = 0; // 0x0 - } - - public class MediaDrmException extends java.lang.Exception implements android.media.MediaDrmThrowable { - ctor public MediaDrmException(String); - method public int getErrorContext(); - method public int getOemError(); - method public int getVendorError(); - } - - public class MediaDrmResetException extends java.lang.IllegalStateException implements android.media.MediaDrmThrowable { - ctor public MediaDrmResetException(String); - } - - public interface MediaDrmThrowable { - method public default int getErrorContext(); - method public default int getOemError(); - method public default int getVendorError(); - } - - public final class MediaExtractor { - ctor public MediaExtractor(); - method public boolean advance(); - method protected void finalize(); - method @NonNull public java.util.List getAudioPresentations(int); - method public long getCachedDuration(); - method public android.media.MediaExtractor.CasInfo getCasInfo(int); - method public android.media.DrmInitData getDrmInitData(); - method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); - method public android.os.PersistableBundle getMetrics(); - method @Nullable public java.util.Map getPsshInfo(); - method public boolean getSampleCryptoInfo(@NonNull android.media.MediaCodec.CryptoInfo); - method public int getSampleFlags(); - method public long getSampleSize(); - method public long getSampleTime(); - method public int getSampleTrackIndex(); - method public int getTrackCount(); - method @NonNull public android.media.MediaFormat getTrackFormat(int); - method public boolean hasCacheReachedEndOfStream(); - method public int readSampleData(@NonNull java.nio.ByteBuffer, int); - method public void release(); - method public void seekTo(long, int); - method public void selectTrack(int); - method public void setDataSource(@NonNull android.media.MediaDataSource) throws java.io.IOException; - method public void setDataSource(@NonNull android.content.Context, @NonNull android.net.Uri, @Nullable java.util.Map) throws java.io.IOException; - method public void setDataSource(@NonNull String, @Nullable java.util.Map) throws java.io.IOException; - method public void setDataSource(@NonNull String) throws java.io.IOException; - method public void setDataSource(@NonNull android.content.res.AssetFileDescriptor) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method public void setDataSource(@NonNull java.io.FileDescriptor) throws java.io.IOException; - method public void setDataSource(@NonNull java.io.FileDescriptor, long, long) throws java.io.IOException; - method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); - method @Deprecated public void setMediaCas(@NonNull android.media.MediaCas); - method public void unselectTrack(int); - field public static final int SAMPLE_FLAG_ENCRYPTED = 2; // 0x2 - field public static final int SAMPLE_FLAG_PARTIAL_FRAME = 4; // 0x4 - field public static final int SAMPLE_FLAG_SYNC = 1; // 0x1 - field public static final int SEEK_TO_CLOSEST_SYNC = 2; // 0x2 - field public static final int SEEK_TO_NEXT_SYNC = 1; // 0x1 - field public static final int SEEK_TO_PREVIOUS_SYNC = 0; // 0x0 - } - - public static final class MediaExtractor.CasInfo { - method @Nullable public byte[] getPrivateData(); - method public android.media.MediaCas.Session getSession(); - method public int getSystemId(); - } - - public static final class MediaExtractor.MetricsConstants { - field public static final String FORMAT = "android.media.mediaextractor.fmt"; - field public static final String MIME_TYPE = "android.media.mediaextractor.mime"; - field public static final String TRACKS = "android.media.mediaextractor.ntrk"; - } - - public final class MediaFormat { - ctor public MediaFormat(); - ctor public MediaFormat(@NonNull android.media.MediaFormat); - method public boolean containsFeature(@NonNull String); - method public boolean containsKey(@NonNull String); - method @NonNull public static android.media.MediaFormat createAudioFormat(@NonNull String, int, int); - method @NonNull public static android.media.MediaFormat createSubtitleFormat(@NonNull String, String); - method @NonNull public static android.media.MediaFormat createVideoFormat(@NonNull String, int, int); - method @Nullable public java.nio.ByteBuffer getByteBuffer(@NonNull String); - method @NonNull public java.nio.ByteBuffer getByteBuffer(@NonNull String, @NonNull java.nio.ByteBuffer); - method public boolean getFeatureEnabled(@NonNull String); - method @NonNull public java.util.Set getFeatures(); - method public float getFloat(@NonNull String); - method public float getFloat(@NonNull String, float); - method public int getInteger(@NonNull String); - method public int getInteger(@NonNull String, int); - method @NonNull public java.util.Set getKeys(); - method public long getLong(@NonNull String); - method public long getLong(@NonNull String, long); - method @Nullable public Number getNumber(@NonNull String); - method @NonNull public Number getNumber(@NonNull String, @NonNull Number); - method @Nullable public String getString(@NonNull String); - method @NonNull public String getString(@NonNull String, @NonNull String); - method public int getValueTypeForKey(@NonNull String); - method public void removeFeature(@NonNull String); - method public void removeKey(@NonNull String); - method public void setByteBuffer(@NonNull String, @Nullable java.nio.ByteBuffer); - method public void setFeatureEnabled(@NonNull String, boolean); - method public void setFloat(@NonNull String, float); - method public void setInteger(@NonNull String, int); - method public void setLong(@NonNull String, long); - method public void setString(@NonNull String, @Nullable String); - field public static final int COLOR_RANGE_FULL = 1; // 0x1 - field public static final int COLOR_RANGE_LIMITED = 2; // 0x2 - field public static final int COLOR_STANDARD_BT2020 = 6; // 0x6 - field public static final int COLOR_STANDARD_BT601_NTSC = 4; // 0x4 - field public static final int COLOR_STANDARD_BT601_PAL = 2; // 0x2 - field public static final int COLOR_STANDARD_BT709 = 1; // 0x1 - field public static final int COLOR_TRANSFER_HLG = 7; // 0x7 - field public static final int COLOR_TRANSFER_LINEAR = 1; // 0x1 - field public static final int COLOR_TRANSFER_SDR_VIDEO = 3; // 0x3 - field public static final int COLOR_TRANSFER_ST2084 = 6; // 0x6 - field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final int FLAG_SECURITY_MODEL_MEMORY_SAFE = 2; // 0x2 - field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final int FLAG_SECURITY_MODEL_SANDBOXED = 1; // 0x1 - field public static final String KEY_AAC_DRC_ALBUM_MODE = "aac-drc-album-mode"; - field public static final String KEY_AAC_DRC_ATTENUATION_FACTOR = "aac-drc-cut-level"; - field public static final String KEY_AAC_DRC_BOOST_FACTOR = "aac-drc-boost-level"; - field public static final String KEY_AAC_DRC_EFFECT_TYPE = "aac-drc-effect-type"; - field public static final String KEY_AAC_DRC_HEAVY_COMPRESSION = "aac-drc-heavy-compression"; - field public static final String KEY_AAC_DRC_OUTPUT_LOUDNESS = "aac-drc-output-loudness"; - field public static final String KEY_AAC_DRC_TARGET_REFERENCE_LEVEL = "aac-target-ref-level"; - field public static final String KEY_AAC_ENCODED_TARGET_LEVEL = "aac-encoded-target-level"; - field @Deprecated public static final String KEY_AAC_MAX_OUTPUT_CHANNEL_COUNT = "aac-max-output-channel_count"; - field public static final String KEY_AAC_PROFILE = "aac-profile"; - field public static final String KEY_AAC_SBR_MODE = "aac-sbr-mode"; - field public static final String KEY_ALLOW_FRAME_DROP = "allow-frame-drop"; - field public static final String KEY_AUDIO_SESSION_ID = "audio-session-id"; - field public static final String KEY_BITRATE_MODE = "bitrate-mode"; - field public static final String KEY_BIT_RATE = "bitrate"; - field @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public static final String KEY_BUFFER_BATCH_MAX_OUTPUT_SIZE = "buffer-batch-max-output-size"; - field @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public static final String KEY_BUFFER_BATCH_THRESHOLD_OUTPUT_SIZE = "buffer-batch-threshold-output-size"; - field public static final String KEY_CAPTION_SERVICE_NUMBER = "caption-service-number"; - field public static final String KEY_CAPTURE_RATE = "capture-rate"; - field public static final String KEY_CHANNEL_COUNT = "channel-count"; - field public static final String KEY_CHANNEL_MASK = "channel-mask"; - field public static final String KEY_CODECS_STRING = "codecs-string"; - field public static final String KEY_COLOR_FORMAT = "color-format"; - field public static final String KEY_COLOR_RANGE = "color-range"; - field public static final String KEY_COLOR_STANDARD = "color-standard"; - field public static final String KEY_COLOR_TRANSFER = "color-transfer"; - field public static final String KEY_COLOR_TRANSFER_REQUEST = "color-transfer-request"; - field public static final String KEY_COMPLEXITY = "complexity"; - field public static final String KEY_CREATE_INPUT_SURFACE_SUSPENDED = "create-input-buffers-suspended"; - field public static final String KEY_CROP_BOTTOM = "crop-bottom"; - field public static final String KEY_CROP_LEFT = "crop-left"; - field public static final String KEY_CROP_RIGHT = "crop-right"; - field public static final String KEY_CROP_TOP = "crop-top"; - field public static final String KEY_DURATION = "durationUs"; - field public static final String KEY_ENCODER_DELAY = "encoder-delay"; - field public static final String KEY_ENCODER_PADDING = "encoder-padding"; - field public static final String KEY_FLAC_COMPRESSION_LEVEL = "flac-compression-level"; - field public static final String KEY_FRAME_RATE = "frame-rate"; - field public static final String KEY_GRID_COLUMNS = "grid-cols"; - field public static final String KEY_GRID_ROWS = "grid-rows"; - field public static final String KEY_HAPTIC_CHANNEL_COUNT = "haptic-channel-count"; - field public static final String KEY_HARDWARE_AV_SYNC_ID = "hw-av-sync-id"; - field public static final String KEY_HDR10_PLUS_INFO = "hdr10-plus-info"; - field public static final String KEY_HDR_STATIC_INFO = "hdr-static-info"; - field public static final String KEY_HEIGHT = "height"; - field @FlaggedApi("com.android.media.codec.flags.codec_importance") public static final String KEY_IMPORTANCE = "importance"; - field public static final String KEY_INTRA_REFRESH_PERIOD = "intra-refresh-period"; - field public static final String KEY_IS_ADTS = "is-adts"; - field public static final String KEY_IS_AUTOSELECT = "is-autoselect"; - field public static final String KEY_IS_DEFAULT = "is-default"; - field public static final String KEY_IS_FORCED_SUBTITLE = "is-forced-subtitle"; - field public static final String KEY_I_FRAME_INTERVAL = "i-frame-interval"; - field public static final String KEY_LANGUAGE = "language"; - field public static final String KEY_LATENCY = "latency"; - field public static final String KEY_LEVEL = "level"; - field public static final String KEY_LOW_LATENCY = "low-latency"; - field public static final String KEY_MAX_B_FRAMES = "max-bframes"; - field public static final String KEY_MAX_FPS_TO_ENCODER = "max-fps-to-encoder"; - field public static final String KEY_MAX_HEIGHT = "max-height"; - field public static final String KEY_MAX_INPUT_SIZE = "max-input-size"; - field public static final String KEY_MAX_OUTPUT_CHANNEL_COUNT = "max-output-channel-count"; - field public static final String KEY_MAX_PTS_GAP_TO_ENCODER = "max-pts-gap-to-encoder"; - field public static final String KEY_MAX_WIDTH = "max-width"; - field public static final String KEY_MIME = "mime"; - field public static final String KEY_MPEGH_COMPATIBLE_SETS = "mpegh-compatible-sets"; - field public static final String KEY_MPEGH_PROFILE_LEVEL_INDICATION = "mpegh-profile-level-indication"; - field public static final String KEY_MPEGH_REFERENCE_CHANNEL_LAYOUT = "mpegh-reference-channel-layout"; - field @FlaggedApi("android.media.codec.num_input_slots") public static final String KEY_NUM_SLOTS = "num-slots"; - field public static final String KEY_OPERATING_RATE = "operating-rate"; - field public static final String KEY_OUTPUT_REORDER_DEPTH = "output-reorder-depth"; - field public static final String KEY_PCM_ENCODING = "pcm-encoding"; - field @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public static final String KEY_PICTURE_PROFILE_ID = "picture-profile-id"; - field @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public static final String KEY_PICTURE_PROFILE_INSTANCE = "picture-profile-instance"; - field public static final String KEY_PICTURE_TYPE = "picture-type"; - field public static final String KEY_PIXEL_ASPECT_RATIO_HEIGHT = "sar-height"; - field public static final String KEY_PIXEL_ASPECT_RATIO_WIDTH = "sar-width"; - field public static final String KEY_PREPEND_HEADER_TO_SYNC_FRAMES = "prepend-sps-pps-to-idr-frames"; - field public static final String KEY_PRIORITY = "priority"; - field public static final String KEY_PROFILE = "profile"; - field public static final String KEY_PUSH_BLANK_BUFFERS_ON_STOP = "push-blank-buffers-on-shutdown"; - field public static final String KEY_QUALITY = "quality"; - field public static final String KEY_REPEAT_PREVIOUS_FRAME_AFTER = "repeat-previous-frame-after"; - field public static final String KEY_ROTATION = "rotation-degrees"; - field public static final String KEY_SAMPLE_RATE = "sample-rate"; - field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final String KEY_SECURITY_MODEL = "security-model"; - field public static final String KEY_SLICE_HEIGHT = "slice-height"; - field public static final String KEY_SLOW_MOTION_MARKERS = "slow-motion-markers"; - field public static final String KEY_STRIDE = "stride"; - field public static final String KEY_TEMPORAL_LAYERING = "ts-schema"; - field public static final String KEY_TILE_HEIGHT = "tile-height"; - field public static final String KEY_TILE_WIDTH = "tile-width"; - field public static final String KEY_TRACK_ID = "track-id"; - field public static final String KEY_VIDEO_ENCODING_STATISTICS_LEVEL = "video-encoding-statistics-level"; - field public static final String KEY_VIDEO_QP_AVERAGE = "video-qp-average"; - field public static final String KEY_VIDEO_QP_B_MAX = "video-qp-b-max"; - field public static final String KEY_VIDEO_QP_B_MIN = "video-qp-b-min"; - field public static final String KEY_VIDEO_QP_I_MAX = "video-qp-i-max"; - field public static final String KEY_VIDEO_QP_I_MIN = "video-qp-i-min"; - field public static final String KEY_VIDEO_QP_MAX = "video-qp-max"; - field public static final String KEY_VIDEO_QP_MIN = "video-qp-min"; - field public static final String KEY_VIDEO_QP_P_MAX = "video-qp-p-max"; - field public static final String KEY_VIDEO_QP_P_MIN = "video-qp-p-min"; - field public static final String KEY_WIDTH = "width"; - field public static final String LOG_SESSION_ID = "log-session-id"; - field public static final String MIMETYPE_AUDIO_AAC = "audio/mp4a-latm"; - field public static final String MIMETYPE_AUDIO_AAC_ELD = "audio/mp4a.40.39"; - field public static final String MIMETYPE_AUDIO_AAC_HE_V1 = "audio/mp4a.40.05"; - field public static final String MIMETYPE_AUDIO_AAC_HE_V2 = "audio/mp4a.40.29"; - field public static final String MIMETYPE_AUDIO_AAC_LC = "audio/mp4a.40.02"; - field public static final String MIMETYPE_AUDIO_AAC_XHE = "audio/mp4a.40.42"; - field public static final String MIMETYPE_AUDIO_AC3 = "audio/ac3"; - field public static final String MIMETYPE_AUDIO_AC4 = "audio/ac4"; - field public static final String MIMETYPE_AUDIO_AMR_NB = "audio/3gpp"; - field public static final String MIMETYPE_AUDIO_AMR_WB = "audio/amr-wb"; - field public static final String MIMETYPE_AUDIO_DOLBY_MAT = "audio/vnd.dolby.mat"; - field public static final String MIMETYPE_AUDIO_DOLBY_TRUEHD = "audio/vnd.dolby.mlp"; - field public static final String MIMETYPE_AUDIO_DRA = "audio/vnd.dra"; - field public static final String MIMETYPE_AUDIO_DTS = "audio/vnd.dts"; - field public static final String MIMETYPE_AUDIO_DTS_HD = "audio/vnd.dts.hd"; - field public static final String MIMETYPE_AUDIO_DTS_UHD = "audio/vnd.dts.uhd"; - field public static final String MIMETYPE_AUDIO_EAC3 = "audio/eac3"; - field public static final String MIMETYPE_AUDIO_EAC3_JOC = "audio/eac3-joc"; - field public static final String MIMETYPE_AUDIO_FLAC = "audio/flac"; - field public static final String MIMETYPE_AUDIO_G711_ALAW = "audio/g711-alaw"; - field public static final String MIMETYPE_AUDIO_G711_MLAW = "audio/g711-mlaw"; - field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final String MIMETYPE_AUDIO_IAMF = "audio/iamf"; - field public static final String MIMETYPE_AUDIO_IEC61937 = "audio/x-iec61937"; - field public static final String MIMETYPE_AUDIO_MPEG = "audio/mpeg"; - field public static final String MIMETYPE_AUDIO_MPEGH_BL_L3 = "audio/mhm1.03"; - field public static final String MIMETYPE_AUDIO_MPEGH_BL_L4 = "audio/mhm1.04"; - field public static final String MIMETYPE_AUDIO_MPEGH_LC_L3 = "audio/mhm1.0d"; - field public static final String MIMETYPE_AUDIO_MPEGH_LC_L4 = "audio/mhm1.0e"; - field public static final String MIMETYPE_AUDIO_MPEGH_MHA1 = "audio/mha1"; - field public static final String MIMETYPE_AUDIO_MPEGH_MHM1 = "audio/mhm1"; - field public static final String MIMETYPE_AUDIO_MSGSM = "audio/gsm"; - field public static final String MIMETYPE_AUDIO_OPUS = "audio/opus"; - field public static final String MIMETYPE_AUDIO_QCELP = "audio/qcelp"; - field public static final String MIMETYPE_AUDIO_RAW = "audio/raw"; - field public static final String MIMETYPE_AUDIO_SCRAMBLED = "audio/scrambled"; - field public static final String MIMETYPE_AUDIO_VORBIS = "audio/vorbis"; - field public static final String MIMETYPE_IMAGE_ANDROID_HEIC = "image/vnd.android.heic"; - field public static final String MIMETYPE_IMAGE_AVIF = "image/avif"; - field public static final String MIMETYPE_TEXT_CEA_608 = "text/cea-608"; - field public static final String MIMETYPE_TEXT_CEA_708 = "text/cea-708"; - field public static final String MIMETYPE_TEXT_SUBRIP = "application/x-subrip"; - field public static final String MIMETYPE_TEXT_VTT = "text/vtt"; - field @FlaggedApi("android.media.codec.apv_support") public static final String MIMETYPE_VIDEO_APV = "video/apv"; - field public static final String MIMETYPE_VIDEO_AV1 = "video/av01"; - field public static final String MIMETYPE_VIDEO_AVC = "video/avc"; - field public static final String MIMETYPE_VIDEO_DOLBY_VISION = "video/dolby-vision"; - field public static final String MIMETYPE_VIDEO_H263 = "video/3gpp"; - field public static final String MIMETYPE_VIDEO_HEVC = "video/hevc"; - field public static final String MIMETYPE_VIDEO_MPEG2 = "video/mpeg2"; - field public static final String MIMETYPE_VIDEO_MPEG4 = "video/mp4v-es"; - field public static final String MIMETYPE_VIDEO_RAW = "video/raw"; - field public static final String MIMETYPE_VIDEO_SCRAMBLED = "video/scrambled"; - field public static final String MIMETYPE_VIDEO_VP8 = "video/x-vnd.on2.vp8"; - field public static final String MIMETYPE_VIDEO_VP9 = "video/x-vnd.on2.vp9"; - field public static final int PICTURE_TYPE_B = 3; // 0x3 - field public static final int PICTURE_TYPE_I = 1; // 0x1 - field public static final int PICTURE_TYPE_P = 2; // 0x2 - field public static final int PICTURE_TYPE_UNKNOWN = 0; // 0x0 - field public static final int TYPE_BYTE_BUFFER = 5; // 0x5 - field public static final int TYPE_FLOAT = 3; // 0x3 - field public static final int TYPE_INTEGER = 1; // 0x1 - field public static final int TYPE_LONG = 2; // 0x2 - field public static final int TYPE_NULL = 0; // 0x0 - field public static final int TYPE_STRING = 4; // 0x4 - field public static final int VIDEO_ENCODING_STATISTICS_LEVEL_1 = 1; // 0x1 - field public static final int VIDEO_ENCODING_STATISTICS_LEVEL_NONE = 0; // 0x0 - } - - @FlaggedApi("android.media.codec.region_of_interest") public static final class MediaFormat.QpOffsetRect { - ctor public MediaFormat.QpOffsetRect(@NonNull android.graphics.Rect, int); - method @NonNull public String flattenToString(); - method @NonNull public static String flattenToString(@NonNull java.util.List); - method public void set(@NonNull android.graphics.Rect, int); - } - - public final class MediaMetadata implements android.os.Parcelable { - method public boolean containsKey(String); - method public int describeContents(); - method public android.graphics.Bitmap getBitmap(String); - method @IntRange(from=1) public int getBitmapDimensionLimit(); - method @NonNull public android.media.MediaDescription getDescription(); - method public long getLong(String); - method public android.media.Rating getRating(String); - method public String getString(String); - method public CharSequence getText(String); - method public java.util.Set keySet(); - method public int size(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String METADATA_KEY_ALBUM = "android.media.metadata.ALBUM"; - field public static final String METADATA_KEY_ALBUM_ART = "android.media.metadata.ALBUM_ART"; - field public static final String METADATA_KEY_ALBUM_ARTIST = "android.media.metadata.ALBUM_ARTIST"; - field public static final String METADATA_KEY_ALBUM_ART_URI = "android.media.metadata.ALBUM_ART_URI"; - field public static final String METADATA_KEY_ART = "android.media.metadata.ART"; - field public static final String METADATA_KEY_ARTIST = "android.media.metadata.ARTIST"; - field public static final String METADATA_KEY_ART_URI = "android.media.metadata.ART_URI"; - field public static final String METADATA_KEY_AUTHOR = "android.media.metadata.AUTHOR"; - field public static final String METADATA_KEY_BT_FOLDER_TYPE = "android.media.metadata.BT_FOLDER_TYPE"; - field public static final String METADATA_KEY_COMPILATION = "android.media.metadata.COMPILATION"; - field public static final String METADATA_KEY_COMPOSER = "android.media.metadata.COMPOSER"; - field public static final String METADATA_KEY_DATE = "android.media.metadata.DATE"; - field public static final String METADATA_KEY_DISC_NUMBER = "android.media.metadata.DISC_NUMBER"; - field public static final String METADATA_KEY_DISPLAY_DESCRIPTION = "android.media.metadata.DISPLAY_DESCRIPTION"; - field public static final String METADATA_KEY_DISPLAY_ICON = "android.media.metadata.DISPLAY_ICON"; - field public static final String METADATA_KEY_DISPLAY_ICON_URI = "android.media.metadata.DISPLAY_ICON_URI"; - field public static final String METADATA_KEY_DISPLAY_SUBTITLE = "android.media.metadata.DISPLAY_SUBTITLE"; - field public static final String METADATA_KEY_DISPLAY_TITLE = "android.media.metadata.DISPLAY_TITLE"; - field public static final String METADATA_KEY_DURATION = "android.media.metadata.DURATION"; - field public static final String METADATA_KEY_GENRE = "android.media.metadata.GENRE"; - field public static final String METADATA_KEY_MEDIA_ID = "android.media.metadata.MEDIA_ID"; - field public static final String METADATA_KEY_MEDIA_URI = "android.media.metadata.MEDIA_URI"; - field public static final String METADATA_KEY_NUM_TRACKS = "android.media.metadata.NUM_TRACKS"; - field public static final String METADATA_KEY_RATING = "android.media.metadata.RATING"; - field public static final String METADATA_KEY_TITLE = "android.media.metadata.TITLE"; - field public static final String METADATA_KEY_TRACK_NUMBER = "android.media.metadata.TRACK_NUMBER"; - field public static final String METADATA_KEY_USER_RATING = "android.media.metadata.USER_RATING"; - field public static final String METADATA_KEY_WRITER = "android.media.metadata.WRITER"; - field public static final String METADATA_KEY_YEAR = "android.media.metadata.YEAR"; - } - - public static final class MediaMetadata.Builder { - ctor public MediaMetadata.Builder(); - ctor public MediaMetadata.Builder(android.media.MediaMetadata); - method public android.media.MediaMetadata build(); - method public android.media.MediaMetadata.Builder putBitmap(String, android.graphics.Bitmap); - method public android.media.MediaMetadata.Builder putLong(String, long); - method public android.media.MediaMetadata.Builder putRating(String, android.media.Rating); - method public android.media.MediaMetadata.Builder putString(String, String); - method public android.media.MediaMetadata.Builder putText(String, CharSequence); - method @NonNull public android.media.MediaMetadata.Builder setBitmapDimensionLimit(@IntRange(from=1) int); - } - - @Deprecated public abstract class MediaMetadataEditor { - method @Deprecated public void addEditableKey(int); - method @Deprecated public abstract void apply(); - method @Deprecated public void clear(); - method @Deprecated public android.graphics.Bitmap getBitmap(int, android.graphics.Bitmap) throws java.lang.IllegalArgumentException; - method @Deprecated public int[] getEditableKeys(); - method @Deprecated public long getLong(int, long) throws java.lang.IllegalArgumentException; - method @Deprecated public Object getObject(int, Object) throws java.lang.IllegalArgumentException; - method @Deprecated public String getString(int, String) throws java.lang.IllegalArgumentException; - method @Deprecated public android.media.MediaMetadataEditor putBitmap(int, android.graphics.Bitmap) throws java.lang.IllegalArgumentException; - method @Deprecated public android.media.MediaMetadataEditor putLong(int, long) throws java.lang.IllegalArgumentException; - method @Deprecated public android.media.MediaMetadataEditor putObject(int, Object) throws java.lang.IllegalArgumentException; - method @Deprecated public android.media.MediaMetadataEditor putString(int, String) throws java.lang.IllegalArgumentException; - method @Deprecated public void removeEditableKeys(); - field @Deprecated public static final int BITMAP_KEY_ARTWORK = 100; // 0x64 - field @Deprecated public static final int RATING_KEY_BY_OTHERS = 101; // 0x65 - field @Deprecated public static final int RATING_KEY_BY_USER = 268435457; // 0x10000001 - } - - public class MediaMetadataRetriever implements java.lang.AutoCloseable { - ctor public MediaMetadataRetriever(); - method public void close() throws java.io.IOException; - method @Nullable public String extractMetadata(int); - method @Nullable public byte[] getEmbeddedPicture(); - method @Nullable public android.graphics.Bitmap getFrameAtIndex(int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); - method @Nullable public android.graphics.Bitmap getFrameAtIndex(int); - method @Nullable public android.graphics.Bitmap getFrameAtTime(long, int); - method @Nullable public android.graphics.Bitmap getFrameAtTime(long, int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); - method @Nullable public android.graphics.Bitmap getFrameAtTime(long); - method @Nullable public android.graphics.Bitmap getFrameAtTime(); - method @NonNull public java.util.List getFramesAtIndex(int, int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); - method @NonNull public java.util.List getFramesAtIndex(int, int); - method @Nullable public android.graphics.Bitmap getImageAtIndex(int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); - method @Nullable public android.graphics.Bitmap getImageAtIndex(int); - method @Nullable public android.graphics.Bitmap getPrimaryImage(@NonNull android.media.MediaMetadataRetriever.BitmapParams); - method @Nullable public android.graphics.Bitmap getPrimaryImage(); - method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, @IntRange(from=1) int, @IntRange(from=1) int); - method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, @IntRange(from=1) int, @IntRange(from=1) int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); - method public void release() throws java.io.IOException; - method public void setDataSource(String) throws java.lang.IllegalArgumentException; - method public void setDataSource(String, java.util.Map) throws java.lang.IllegalArgumentException; - method public void setDataSource(java.io.FileDescriptor, long, long) throws java.lang.IllegalArgumentException; - method public void setDataSource(java.io.FileDescriptor) throws java.lang.IllegalArgumentException; - method public void setDataSource(android.content.Context, android.net.Uri) throws java.lang.IllegalArgumentException, java.lang.SecurityException; - method public void setDataSource(android.media.MediaDataSource) throws java.lang.IllegalArgumentException; - field public static final int METADATA_KEY_ALBUM = 1; // 0x1 - field public static final int METADATA_KEY_ALBUMARTIST = 13; // 0xd - field public static final int METADATA_KEY_ARTIST = 2; // 0x2 - field public static final int METADATA_KEY_AUTHOR = 3; // 0x3 - field public static final int METADATA_KEY_BITRATE = 20; // 0x14 - field public static final int METADATA_KEY_BITS_PER_SAMPLE = 39; // 0x27 - field public static final int METADATA_KEY_CAPTURE_FRAMERATE = 25; // 0x19 - field public static final int METADATA_KEY_CD_TRACK_NUMBER = 0; // 0x0 - field public static final int METADATA_KEY_COLOR_RANGE = 37; // 0x25 - field public static final int METADATA_KEY_COLOR_STANDARD = 35; // 0x23 - field public static final int METADATA_KEY_COLOR_TRANSFER = 36; // 0x24 - field public static final int METADATA_KEY_COMPILATION = 15; // 0xf - field public static final int METADATA_KEY_COMPOSER = 4; // 0x4 - field public static final int METADATA_KEY_DATE = 5; // 0x5 - field public static final int METADATA_KEY_DISC_NUMBER = 14; // 0xe - field public static final int METADATA_KEY_DURATION = 9; // 0x9 - field public static final int METADATA_KEY_EXIF_LENGTH = 34; // 0x22 - field public static final int METADATA_KEY_EXIF_OFFSET = 33; // 0x21 - field public static final int METADATA_KEY_GENRE = 6; // 0x6 - field public static final int METADATA_KEY_HAS_AUDIO = 16; // 0x10 - field public static final int METADATA_KEY_HAS_IMAGE = 26; // 0x1a - field public static final int METADATA_KEY_HAS_VIDEO = 17; // 0x11 - field public static final int METADATA_KEY_IMAGE_COUNT = 27; // 0x1b - field public static final int METADATA_KEY_IMAGE_HEIGHT = 30; // 0x1e - field public static final int METADATA_KEY_IMAGE_PRIMARY = 28; // 0x1c - field public static final int METADATA_KEY_IMAGE_ROTATION = 31; // 0x1f - field public static final int METADATA_KEY_IMAGE_WIDTH = 29; // 0x1d - field public static final int METADATA_KEY_LOCATION = 23; // 0x17 - field public static final int METADATA_KEY_MIMETYPE = 12; // 0xc - field public static final int METADATA_KEY_NUM_TRACKS = 10; // 0xa - field public static final int METADATA_KEY_SAMPLERATE = 38; // 0x26 - field public static final int METADATA_KEY_TITLE = 7; // 0x7 - field public static final int METADATA_KEY_VIDEO_FRAME_COUNT = 32; // 0x20 - field public static final int METADATA_KEY_VIDEO_HEIGHT = 19; // 0x13 - field public static final int METADATA_KEY_VIDEO_ROTATION = 24; // 0x18 - field public static final int METADATA_KEY_VIDEO_WIDTH = 18; // 0x12 - field public static final int METADATA_KEY_WRITER = 11; // 0xb - field public static final int METADATA_KEY_XMP_LENGTH = 42; // 0x2a - field public static final int METADATA_KEY_XMP_OFFSET = 41; // 0x29 - field public static final int METADATA_KEY_YEAR = 8; // 0x8 - field public static final int OPTION_CLOSEST = 3; // 0x3 - field public static final int OPTION_CLOSEST_SYNC = 2; // 0x2 - field public static final int OPTION_NEXT_SYNC = 1; // 0x1 - field public static final int OPTION_PREVIOUS_SYNC = 0; // 0x0 - } - - public static final class MediaMetadataRetriever.BitmapParams { - ctor public MediaMetadataRetriever.BitmapParams(); - method @NonNull public android.graphics.Bitmap.Config getActualConfig(); - method @NonNull public android.graphics.Bitmap.Config getPreferredConfig(); - method public void setPreferredConfig(@NonNull android.graphics.Bitmap.Config); - } - - public final class MediaMuxer { - ctor public MediaMuxer(@NonNull String, int) throws java.io.IOException; - ctor public MediaMuxer(@NonNull java.io.FileDescriptor, int) throws java.io.IOException; - method public int addTrack(@NonNull android.media.MediaFormat); - method public void release(); - method public void setLocation(float, float); - method public void setOrientationHint(int); - method public void start(); - method public void stop(); - method public void writeSampleData(int, @NonNull java.nio.ByteBuffer, @NonNull android.media.MediaCodec.BufferInfo); - } - - public static final class MediaMuxer.OutputFormat { - field public static final int MUXER_OUTPUT_3GPP = 2; // 0x2 - field public static final int MUXER_OUTPUT_HEIF = 3; // 0x3 - field public static final int MUXER_OUTPUT_MPEG_4 = 0; // 0x0 - field public static final int MUXER_OUTPUT_OGG = 4; // 0x4 - field public static final int MUXER_OUTPUT_WEBM = 1; // 0x1 - } - - public class MediaPlayer implements android.media.AudioRouting android.media.VolumeAutomation { - ctor public MediaPlayer(); - ctor public MediaPlayer(@NonNull android.content.Context); - method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); - method public void addTimedTextSource(String, String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method public void addTimedTextSource(android.content.Context, android.net.Uri, String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method public void addTimedTextSource(java.io.FileDescriptor, String) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method public void addTimedTextSource(java.io.FileDescriptor, long, long, String) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method public void attachAuxEffect(int); - method public void clearOnMediaTimeDiscontinuityListener(); - method public void clearOnSubtitleDataListener(); - method public static android.media.MediaPlayer create(android.content.Context, android.net.Uri); - method public static android.media.MediaPlayer create(android.content.Context, android.net.Uri, android.view.SurfaceHolder); - method public static android.media.MediaPlayer create(android.content.Context, android.net.Uri, android.view.SurfaceHolder, android.media.AudioAttributes, int); - method public static android.media.MediaPlayer create(android.content.Context, int); - method public static android.media.MediaPlayer create(android.content.Context, int, android.media.AudioAttributes, int); - method @NonNull public android.media.VolumeShaper createVolumeShaper(@NonNull android.media.VolumeShaper.Configuration); - method public void deselectTrack(int) throws java.lang.IllegalStateException; - method protected void finalize(); - method public int getAudioSessionId(); - method public int getCurrentPosition(); - method public android.media.MediaPlayer.DrmInfo getDrmInfo(); - method @NonNull public String getDrmPropertyString(@NonNull String) throws android.media.MediaPlayer.NoDrmSchemeException; - method public int getDuration(); - method @NonNull public android.media.MediaDrm.KeyRequest getKeyRequest(@Nullable byte[], @Nullable byte[], @Nullable String, int, @Nullable java.util.Map) throws android.media.MediaPlayer.NoDrmSchemeException; - method public android.os.PersistableBundle getMetrics(); - method @NonNull public android.media.PlaybackParams getPlaybackParams(); - method public android.media.AudioDeviceInfo getPreferredDevice(); - method public android.media.AudioDeviceInfo getRoutedDevice(); - method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public java.util.List getRoutedDevices(); - method public int getSelectedTrack(int) throws java.lang.IllegalStateException; - method @NonNull public android.media.SyncParams getSyncParams(); - method @Nullable public android.media.MediaTimestamp getTimestamp(); - method public android.media.MediaPlayer.TrackInfo[] getTrackInfo() throws java.lang.IllegalStateException; - method public int getVideoHeight(); - method public int getVideoWidth(); - method public boolean isLooping(); - method public boolean isPlaying(); - method public void pause() throws java.lang.IllegalStateException; - method public void prepare() throws java.io.IOException, java.lang.IllegalStateException; - method public void prepareAsync() throws java.lang.IllegalStateException; - method public void prepareDrm(@NonNull java.util.UUID) throws android.media.MediaPlayer.ProvisioningNetworkErrorException, android.media.MediaPlayer.ProvisioningServerErrorException, android.media.ResourceBusyException, android.media.UnsupportedSchemeException; - method public byte[] provideKeyResponse(@Nullable byte[], @NonNull byte[]) throws android.media.DeniedByServerException, android.media.MediaPlayer.NoDrmSchemeException; - method public void release(); - method public void releaseDrm() throws android.media.MediaPlayer.NoDrmSchemeException; - method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); - method public void reset(); - method public void restoreKeys(@NonNull byte[]) throws android.media.MediaPlayer.NoDrmSchemeException; - method public void seekTo(long, int); - method public void seekTo(int) throws java.lang.IllegalStateException; - method public void selectTrack(int) throws java.lang.IllegalStateException; - method public void setAudioAttributes(android.media.AudioAttributes) throws java.lang.IllegalArgumentException; - method public void setAudioSessionId(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method @Deprecated public void setAudioStreamType(int); - method public void setAuxEffectSendLevel(float); - method public void setDataSource(@NonNull android.content.Context, @NonNull android.net.Uri) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.SecurityException; - method public void setDataSource(@NonNull android.content.Context, @NonNull android.net.Uri, @Nullable java.util.Map, @Nullable java.util.List) throws java.io.IOException; - method public void setDataSource(@NonNull android.content.Context, @NonNull android.net.Uri, @Nullable java.util.Map) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.SecurityException; - method public void setDataSource(String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.SecurityException; - method public void setDataSource(@NonNull android.content.res.AssetFileDescriptor) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method public void setDataSource(java.io.FileDescriptor) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method public void setDataSource(java.io.FileDescriptor, long, long) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method public void setDataSource(android.media.MediaDataSource) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; - method public void setDisplay(android.view.SurfaceHolder); - method public void setDrmPropertyString(@NonNull String, @NonNull String) throws android.media.MediaPlayer.NoDrmSchemeException; - method public void setLooping(boolean); - method public void setNextMediaPlayer(android.media.MediaPlayer); - method public void setOnBufferingUpdateListener(android.media.MediaPlayer.OnBufferingUpdateListener); - method public void setOnCompletionListener(android.media.MediaPlayer.OnCompletionListener); - method public void setOnDrmConfigHelper(android.media.MediaPlayer.OnDrmConfigHelper); - method public void setOnDrmInfoListener(android.media.MediaPlayer.OnDrmInfoListener); - method public void setOnDrmInfoListener(android.media.MediaPlayer.OnDrmInfoListener, android.os.Handler); - method public void setOnDrmPreparedListener(android.media.MediaPlayer.OnDrmPreparedListener); - method public void setOnDrmPreparedListener(android.media.MediaPlayer.OnDrmPreparedListener, android.os.Handler); - method public void setOnErrorListener(android.media.MediaPlayer.OnErrorListener); - method public void setOnInfoListener(android.media.MediaPlayer.OnInfoListener); - method public void setOnMediaTimeDiscontinuityListener(@NonNull android.media.MediaPlayer.OnMediaTimeDiscontinuityListener, @NonNull android.os.Handler); - method public void setOnMediaTimeDiscontinuityListener(@NonNull android.media.MediaPlayer.OnMediaTimeDiscontinuityListener); - method public void setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener); - method public void setOnSeekCompleteListener(android.media.MediaPlayer.OnSeekCompleteListener); - method public void setOnSubtitleDataListener(@NonNull android.media.MediaPlayer.OnSubtitleDataListener, @NonNull android.os.Handler); - method public void setOnSubtitleDataListener(@NonNull android.media.MediaPlayer.OnSubtitleDataListener); - method public void setOnTimedMetaDataAvailableListener(android.media.MediaPlayer.OnTimedMetaDataAvailableListener); - method public void setOnTimedTextListener(android.media.MediaPlayer.OnTimedTextListener); - method public void setOnVideoSizeChangedListener(android.media.MediaPlayer.OnVideoSizeChangedListener); - method public void setPlaybackParams(@NonNull android.media.PlaybackParams); - method public boolean setPreferredDevice(android.media.AudioDeviceInfo); - method public void setScreenOnWhilePlaying(boolean); - method public void setSurface(android.view.Surface); - method public void setSyncParams(@NonNull android.media.SyncParams); - method public void setVideoScalingMode(int); - method public void setVolume(float, float); - method public void setWakeMode(android.content.Context, int); - method public void start() throws java.lang.IllegalStateException; - method public void stop() throws java.lang.IllegalStateException; - field public static final int MEDIA_ERROR_IO = -1004; // 0xfffffc14 - field public static final int MEDIA_ERROR_MALFORMED = -1007; // 0xfffffc11 - field public static final int MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK = 200; // 0xc8 - field public static final int MEDIA_ERROR_SERVER_DIED = 100; // 0x64 - field public static final int MEDIA_ERROR_TIMED_OUT = -110; // 0xffffff92 - field public static final int MEDIA_ERROR_UNKNOWN = 1; // 0x1 - field public static final int MEDIA_ERROR_UNSUPPORTED = -1010; // 0xfffffc0e - field public static final int MEDIA_INFO_AUDIO_NOT_PLAYING = 804; // 0x324 - field public static final int MEDIA_INFO_BAD_INTERLEAVING = 800; // 0x320 - field public static final int MEDIA_INFO_BUFFERING_END = 702; // 0x2be - field public static final int MEDIA_INFO_BUFFERING_START = 701; // 0x2bd - field public static final int MEDIA_INFO_METADATA_UPDATE = 802; // 0x322 - field public static final int MEDIA_INFO_NOT_SEEKABLE = 801; // 0x321 - field public static final int MEDIA_INFO_STARTED_AS_NEXT = 2; // 0x2 - field public static final int MEDIA_INFO_SUBTITLE_TIMED_OUT = 902; // 0x386 - field public static final int MEDIA_INFO_UNKNOWN = 1; // 0x1 - field public static final int MEDIA_INFO_UNSUPPORTED_SUBTITLE = 901; // 0x385 - field public static final int MEDIA_INFO_VIDEO_NOT_PLAYING = 805; // 0x325 - field public static final int MEDIA_INFO_VIDEO_RENDERING_START = 3; // 0x3 - field public static final int MEDIA_INFO_VIDEO_TRACK_LAGGING = 700; // 0x2bc - field @Deprecated public static final String MEDIA_MIMETYPE_TEXT_SUBRIP = "application/x-subrip"; - field public static final int PREPARE_DRM_STATUS_PREPARATION_ERROR = 3; // 0x3 - field public static final int PREPARE_DRM_STATUS_PROVISIONING_NETWORK_ERROR = 1; // 0x1 - field public static final int PREPARE_DRM_STATUS_PROVISIONING_SERVER_ERROR = 2; // 0x2 - field public static final int PREPARE_DRM_STATUS_SUCCESS = 0; // 0x0 - field public static final int SEEK_CLOSEST = 3; // 0x3 - field public static final int SEEK_CLOSEST_SYNC = 2; // 0x2 - field public static final int SEEK_NEXT_SYNC = 1; // 0x1 - field public static final int SEEK_PREVIOUS_SYNC = 0; // 0x0 - field public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT = 1; // 0x1 - field public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING = 2; // 0x2 - } - - public static final class MediaPlayer.DrmInfo { - method public java.util.Map getPssh(); - method public java.util.UUID[] getSupportedSchemes(); - } - - public static final class MediaPlayer.MetricsConstants { - field public static final String CODEC_AUDIO = "android.media.mediaplayer.audio.codec"; - field public static final String CODEC_VIDEO = "android.media.mediaplayer.video.codec"; - field public static final String DURATION = "android.media.mediaplayer.durationMs"; - field public static final String ERRORS = "android.media.mediaplayer.err"; - field public static final String ERROR_CODE = "android.media.mediaplayer.errcode"; - field public static final String FRAMES = "android.media.mediaplayer.frames"; - field public static final String FRAMES_DROPPED = "android.media.mediaplayer.dropped"; - field public static final String HEIGHT = "android.media.mediaplayer.height"; - field public static final String MIME_TYPE_AUDIO = "android.media.mediaplayer.audio.mime"; - field public static final String MIME_TYPE_VIDEO = "android.media.mediaplayer.video.mime"; - field public static final String PLAYING = "android.media.mediaplayer.playingMs"; - field public static final String WIDTH = "android.media.mediaplayer.width"; - } - - public static final class MediaPlayer.NoDrmSchemeException extends android.media.MediaDrmException { - ctor public MediaPlayer.NoDrmSchemeException(String); - } - - public static interface MediaPlayer.OnBufferingUpdateListener { - method public void onBufferingUpdate(android.media.MediaPlayer, int); - } - - public static interface MediaPlayer.OnCompletionListener { - method public void onCompletion(android.media.MediaPlayer); - } - - public static interface MediaPlayer.OnDrmConfigHelper { - method public void onDrmConfig(android.media.MediaPlayer); - } - - public static interface MediaPlayer.OnDrmInfoListener { - method public void onDrmInfo(android.media.MediaPlayer, android.media.MediaPlayer.DrmInfo); - } - - public static interface MediaPlayer.OnDrmPreparedListener { - method public void onDrmPrepared(android.media.MediaPlayer, int); - } - - public static interface MediaPlayer.OnErrorListener { - method public boolean onError(android.media.MediaPlayer, int, int); - } - - public static interface MediaPlayer.OnInfoListener { - method public boolean onInfo(android.media.MediaPlayer, int, int); - } - - public static interface MediaPlayer.OnMediaTimeDiscontinuityListener { - method public void onMediaTimeDiscontinuity(@NonNull android.media.MediaPlayer, @NonNull android.media.MediaTimestamp); - } - - public static interface MediaPlayer.OnPreparedListener { - method public void onPrepared(android.media.MediaPlayer); - } - - public static interface MediaPlayer.OnSeekCompleteListener { - method public void onSeekComplete(android.media.MediaPlayer); - } - - public static interface MediaPlayer.OnSubtitleDataListener { - method public void onSubtitleData(@NonNull android.media.MediaPlayer, @NonNull android.media.SubtitleData); - } - - public static interface MediaPlayer.OnTimedMetaDataAvailableListener { - method public void onTimedMetaDataAvailable(android.media.MediaPlayer, android.media.TimedMetaData); - } - - public static interface MediaPlayer.OnTimedTextListener { - method public void onTimedText(android.media.MediaPlayer, android.media.TimedText); - } - - public static interface MediaPlayer.OnVideoSizeChangedListener { - method public void onVideoSizeChanged(android.media.MediaPlayer, int, int); - } - - public static final class MediaPlayer.ProvisioningNetworkErrorException extends android.media.MediaDrmException { - ctor public MediaPlayer.ProvisioningNetworkErrorException(String); - } - - public static final class MediaPlayer.ProvisioningServerErrorException extends android.media.MediaDrmException { - ctor public MediaPlayer.ProvisioningServerErrorException(String); - } - - public static class MediaPlayer.TrackInfo implements android.os.Parcelable { - method public int describeContents(); - method public android.media.MediaFormat getFormat(); - method public String getLanguage(); - method public int getTrackType(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int MEDIA_TRACK_TYPE_AUDIO = 2; // 0x2 - field public static final int MEDIA_TRACK_TYPE_METADATA = 5; // 0x5 - field public static final int MEDIA_TRACK_TYPE_SUBTITLE = 4; // 0x4 - field public static final int MEDIA_TRACK_TYPE_TIMEDTEXT = 3; // 0x3 - field public static final int MEDIA_TRACK_TYPE_UNKNOWN = 0; // 0x0 - field public static final int MEDIA_TRACK_TYPE_VIDEO = 1; // 0x1 - } - - public class MediaRecorder implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection { - ctor @Deprecated public MediaRecorder(); - ctor public MediaRecorder(@NonNull android.content.Context); - method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); - method protected void finalize(); - method public java.util.List getActiveMicrophones() throws java.io.IOException; - method @Nullable public android.media.AudioRecordingConfiguration getActiveRecordingConfiguration(); - method public static final int getAudioSourceMax(); - method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); - method public int getMaxAmplitude() throws java.lang.IllegalStateException; - method public android.os.PersistableBundle getMetrics(); - method public android.media.AudioDeviceInfo getPreferredDevice(); - method public android.media.AudioDeviceInfo getRoutedDevice(); - method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public java.util.List getRoutedDevices(); - method public android.view.Surface getSurface(); - method public boolean isPrivacySensitive(); - method public void pause() throws java.lang.IllegalStateException; - method public void prepare() throws java.io.IOException, java.lang.IllegalStateException; - method public void registerAudioRecordingCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioRecordingCallback); - method public void release(); - method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); - method public void reset(); - method public void resume() throws java.lang.IllegalStateException; - method public void setAudioChannels(int); - method public void setAudioEncoder(int) throws java.lang.IllegalStateException; - method public void setAudioEncodingBitRate(int); - method public void setAudioProfile(@NonNull android.media.EncoderProfiles.AudioProfile); - method public void setAudioSamplingRate(int); - method public void setAudioSource(int) throws java.lang.IllegalStateException; - method @Deprecated public void setCamera(android.hardware.Camera); - method public void setCaptureRate(double); - method public void setInputSurface(@NonNull android.view.Surface); - method public void setLocation(float, float); - method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); - method public void setMaxDuration(int) throws java.lang.IllegalArgumentException; - method public void setMaxFileSize(long) throws java.lang.IllegalArgumentException; - method public void setNextOutputFile(java.io.FileDescriptor) throws java.io.IOException; - method public void setNextOutputFile(java.io.File) throws java.io.IOException; - method public void setOnErrorListener(android.media.MediaRecorder.OnErrorListener); - method public void setOnInfoListener(android.media.MediaRecorder.OnInfoListener); - method public void setOrientationHint(int); - method public void setOutputFile(java.io.FileDescriptor) throws java.lang.IllegalStateException; - method public void setOutputFile(java.io.File); - method public void setOutputFile(String) throws java.lang.IllegalStateException; - method public void setOutputFormat(int) throws java.lang.IllegalStateException; - method public boolean setPreferredDevice(android.media.AudioDeviceInfo); - method public boolean setPreferredMicrophoneDirection(int); - method public boolean setPreferredMicrophoneFieldDimension(@FloatRange(from=-1.0, to=1.0) float); - method public void setPreviewDisplay(android.view.Surface); - method public void setPrivacySensitive(boolean); - method public void setProfile(android.media.CamcorderProfile); - method public void setVideoEncoder(int) throws java.lang.IllegalStateException; - method public void setVideoEncodingBitRate(int); - method public void setVideoEncodingProfileLevel(int, int); - method public void setVideoFrameRate(int) throws java.lang.IllegalStateException; - method public void setVideoProfile(@NonNull android.media.EncoderProfiles.VideoProfile); - method public void setVideoSize(int, int) throws java.lang.IllegalStateException; - method public void setVideoSource(int) throws java.lang.IllegalStateException; - method public void start() throws java.lang.IllegalStateException; - method public void stop() throws java.lang.IllegalStateException; - method public void unregisterAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback); - field public static final int MEDIA_ERROR_SERVER_DIED = 100; // 0x64 - field public static final int MEDIA_RECORDER_ERROR_UNKNOWN = 1; // 0x1 - field public static final int MEDIA_RECORDER_INFO_MAX_DURATION_REACHED = 800; // 0x320 - field public static final int MEDIA_RECORDER_INFO_MAX_FILESIZE_APPROACHING = 802; // 0x322 - field public static final int MEDIA_RECORDER_INFO_MAX_FILESIZE_REACHED = 801; // 0x321 - field public static final int MEDIA_RECORDER_INFO_NEXT_OUTPUT_FILE_STARTED = 803; // 0x323 - field public static final int MEDIA_RECORDER_INFO_UNKNOWN = 1; // 0x1 - } - - public final class MediaRecorder.AudioEncoder { - field public static final int AAC = 3; // 0x3 - field public static final int AAC_ELD = 5; // 0x5 - field public static final int AMR_NB = 1; // 0x1 - field public static final int AMR_WB = 2; // 0x2 - field public static final int DEFAULT = 0; // 0x0 - field public static final int HE_AAC = 4; // 0x4 - field public static final int OPUS = 7; // 0x7 - field public static final int VORBIS = 6; // 0x6 - } - - public final class MediaRecorder.AudioSource { - field public static final int CAMCORDER = 5; // 0x5 - field public static final int DEFAULT = 0; // 0x0 - field public static final int MIC = 1; // 0x1 - field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int REMOTE_SUBMIX = 8; // 0x8 - field public static final int UNPROCESSED = 9; // 0x9 - field public static final int VOICE_CALL = 4; // 0x4 - field public static final int VOICE_COMMUNICATION = 7; // 0x7 - field public static final int VOICE_DOWNLINK = 3; // 0x3 - field public static final int VOICE_PERFORMANCE = 10; // 0xa - field public static final int VOICE_RECOGNITION = 6; // 0x6 - field public static final int VOICE_UPLINK = 2; // 0x2 - } - - public static final class MediaRecorder.MetricsConstants { - field public static final String AUDIO_BITRATE = "android.media.mediarecorder.audio-bitrate"; - field public static final String AUDIO_CHANNELS = "android.media.mediarecorder.audio-channels"; - field public static final String AUDIO_SAMPLERATE = "android.media.mediarecorder.audio-samplerate"; - field public static final String AUDIO_TIMESCALE = "android.media.mediarecorder.audio-timescale"; - field public static final String CAPTURE_FPS = "android.media.mediarecorder.capture-fps"; - field public static final String CAPTURE_FPS_ENABLE = "android.media.mediarecorder.capture-fpsenable"; - field public static final String FRAMERATE = "android.media.mediarecorder.frame-rate"; - field public static final String HEIGHT = "android.media.mediarecorder.height"; - field public static final String MOVIE_TIMESCALE = "android.media.mediarecorder.movie-timescale"; - field public static final String ROTATION = "android.media.mediarecorder.rotation"; - field public static final String VIDEO_BITRATE = "android.media.mediarecorder.video-bitrate"; - field public static final String VIDEO_IFRAME_INTERVAL = "android.media.mediarecorder.video-iframe-interval"; - field public static final String VIDEO_LEVEL = "android.media.mediarecorder.video-encoder-level"; - field public static final String VIDEO_PROFILE = "android.media.mediarecorder.video-encoder-profile"; - field public static final String VIDEO_TIMESCALE = "android.media.mediarecorder.video-timescale"; - field public static final String WIDTH = "android.media.mediarecorder.width"; - } - - public static interface MediaRecorder.OnErrorListener { - method public void onError(android.media.MediaRecorder, int, int); - } - - public static interface MediaRecorder.OnInfoListener { - method public void onInfo(android.media.MediaRecorder, int, int); - } - - public final class MediaRecorder.OutputFormat { - field public static final int AAC_ADTS = 6; // 0x6 - field public static final int AMR_NB = 3; // 0x3 - field public static final int AMR_WB = 4; // 0x4 - field public static final int DEFAULT = 0; // 0x0 - field public static final int MPEG_2_TS = 8; // 0x8 - field public static final int MPEG_4 = 2; // 0x2 - field public static final int OGG = 11; // 0xb - field @Deprecated public static final int RAW_AMR = 3; // 0x3 - field public static final int THREE_GPP = 1; // 0x1 - field public static final int WEBM = 9; // 0x9 - } - - public final class MediaRecorder.VideoEncoder { - field public static final int AV1 = 8; // 0x8 - field public static final int DEFAULT = 0; // 0x0 - field public static final int DOLBY_VISION = 7; // 0x7 - field public static final int H263 = 1; // 0x1 - field public static final int H264 = 2; // 0x2 - field public static final int HEVC = 5; // 0x5 - field public static final int MPEG_4_SP = 3; // 0x3 - field public static final int VP8 = 4; // 0x4 - field public static final int VP9 = 6; // 0x6 - } - - public final class MediaRecorder.VideoSource { - field public static final int CAMERA = 1; // 0x1 - field public static final int DEFAULT = 0; // 0x0 - field public static final int SURFACE = 2; // 0x2 - } - - public final class MediaRoute2Info implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getClientPackageName(); - method public int getConnectionState(); - method @NonNull public java.util.Set getDeduplicationIds(); - method @Nullable public CharSequence getDescription(); - method @Nullable public android.os.Bundle getExtras(); - method @NonNull public java.util.List getFeatures(); - method @Nullable public android.net.Uri getIconUri(); - method @NonNull public String getId(); - method @NonNull public CharSequence getName(); - method @FlaggedApi("com.android.media.flags.enable_route_visibility_control_api") @NonNull public java.util.List> getRequiredPermissions(); - method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public int getSuitabilityStatus(); - method @FlaggedApi("com.android.media.flags.enable_mirroring_in_media_router_2") public int getSupportedRoutingTypes(); - method public int getType(); - method public int getVolume(); - method public int getVolumeHandling(); - method public int getVolumeMax(); - method public boolean isSystemRoute(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CONNECTION_STATE_CONNECTED = 2; // 0x2 - field public static final int CONNECTION_STATE_CONNECTING = 1; // 0x1 - field public static final int CONNECTION_STATE_DISCONNECTED = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String FEATURE_LIVE_AUDIO = "android.media.route.feature.LIVE_AUDIO"; - field public static final String FEATURE_LIVE_VIDEO = "android.media.route.feature.LIVE_VIDEO"; - field public static final String FEATURE_REMOTE_AUDIO_PLAYBACK = "android.media.route.feature.REMOTE_AUDIO_PLAYBACK"; - field public static final String FEATURE_REMOTE_PLAYBACK = "android.media.route.feature.REMOTE_PLAYBACK"; - field public static final String FEATURE_REMOTE_VIDEO_PLAYBACK = "android.media.route.feature.REMOTE_VIDEO_PLAYBACK"; - field @FlaggedApi("com.android.media.flags.enable_mirroring_in_media_router_2") public static final int FLAG_ROUTING_TYPE_REMOTE = 4; // 0x4 - field @FlaggedApi("com.android.media.flags.enable_mirroring_in_media_router_2") public static final int FLAG_ROUTING_TYPE_SYSTEM_AUDIO = 1; // 0x1 - field public static final int PLAYBACK_VOLUME_FIXED = 0; // 0x0 - field public static final int PLAYBACK_VOLUME_VARIABLE = 1; // 0x1 - field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int SUITABILITY_STATUS_NOT_SUITABLE_FOR_TRANSFER = 2; // 0x2 - field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int SUITABILITY_STATUS_SUITABLE_FOR_DEFAULT_TRANSFER = 0; // 0x0 - field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int SUITABILITY_STATUS_SUITABLE_FOR_MANUAL_TRANSFER = 1; // 0x1 - field @FlaggedApi("com.android.media.flags.enable_new_wired_media_route_2_info_types") public static final int TYPE_AUX_LINE = 19; // 0x13 - field public static final int TYPE_BLE_HEADSET = 26; // 0x1a - field public static final int TYPE_BLUETOOTH_A2DP = 8; // 0x8 - field public static final int TYPE_BUILTIN_SPEAKER = 2; // 0x2 - field public static final int TYPE_DOCK = 13; // 0xd - field public static final int TYPE_GROUP = 2000; // 0x7d0 - field public static final int TYPE_HDMI = 9; // 0x9 - field @FlaggedApi("com.android.media.flags.enable_audio_policies_device_and_bluetooth_controller") public static final int TYPE_HDMI_ARC = 10; // 0xa - field @FlaggedApi("com.android.media.flags.enable_audio_policies_device_and_bluetooth_controller") public static final int TYPE_HDMI_EARC = 29; // 0x1d - field public static final int TYPE_HEARING_AID = 23; // 0x17 - field @FlaggedApi("com.android.media.flags.enable_new_wired_media_route_2_info_types") public static final int TYPE_LINE_ANALOG = 5; // 0x5 - field @FlaggedApi("com.android.media.flags.enable_new_wired_media_route_2_info_types") public static final int TYPE_LINE_DIGITAL = 6; // 0x6 - field @FlaggedApi("android.media.audio.enable_multichannel_group_device") public static final int TYPE_MULTICHANNEL_SPEAKER_GROUP = 32; // 0x20 - field public static final int TYPE_REMOTE_AUDIO_VIDEO_RECEIVER = 1003; // 0x3eb - field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_CAR = 1008; // 0x3f0 - field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_COMPUTER = 1006; // 0x3ee - field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_GAME_CONSOLE = 1007; // 0x3ef - field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_SMARTPHONE = 1010; // 0x3f2 - field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_SMARTWATCH = 1009; // 0x3f1 - field public static final int TYPE_REMOTE_SPEAKER = 1002; // 0x3ea - field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_TABLET = 1004; // 0x3ec - field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_TABLET_DOCKED = 1005; // 0x3ed - field public static final int TYPE_REMOTE_TV = 1001; // 0x3e9 - field public static final int TYPE_UNKNOWN = 0; // 0x0 - field public static final int TYPE_USB_ACCESSORY = 12; // 0xc - field public static final int TYPE_USB_DEVICE = 11; // 0xb - field public static final int TYPE_USB_HEADSET = 22; // 0x16 - field public static final int TYPE_WIRED_HEADPHONES = 4; // 0x4 - field public static final int TYPE_WIRED_HEADSET = 3; // 0x3 - } - - public static final class MediaRoute2Info.Builder { - ctor public MediaRoute2Info.Builder(@NonNull String, @NonNull CharSequence); - ctor public MediaRoute2Info.Builder(@NonNull android.media.MediaRoute2Info); - method @NonNull public android.media.MediaRoute2Info.Builder addFeature(@NonNull String); - method @NonNull public android.media.MediaRoute2Info.Builder addFeatures(@NonNull java.util.Collection); - method @NonNull public android.media.MediaRoute2Info build(); - method @NonNull public android.media.MediaRoute2Info.Builder clearFeatures(); - method @NonNull public android.media.MediaRoute2Info.Builder setClientPackageName(@Nullable String); - method @NonNull public android.media.MediaRoute2Info.Builder setConnectionState(int); - method @NonNull public android.media.MediaRoute2Info.Builder setDeduplicationIds(@NonNull java.util.Set); - method @NonNull public android.media.MediaRoute2Info.Builder setDescription(@Nullable CharSequence); - method @NonNull public android.media.MediaRoute2Info.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.media.MediaRoute2Info.Builder setIconUri(@Nullable android.net.Uri); - method @FlaggedApi("com.android.media.flags.enable_route_visibility_control_api") @NonNull public android.media.MediaRoute2Info.Builder setRequiredPermissions(@NonNull java.util.Set); - method @FlaggedApi("com.android.media.flags.enable_route_visibility_control_api") @NonNull public android.media.MediaRoute2Info.Builder setRequiredPermissions(@NonNull java.util.List>); - method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") @NonNull public android.media.MediaRoute2Info.Builder setSuitabilityStatus(int); - method @FlaggedApi("com.android.media.flags.enable_mirroring_in_media_router_2") @NonNull public android.media.MediaRoute2Info.Builder setSupportedRoutingTypes(int); - method @NonNull public android.media.MediaRoute2Info.Builder setType(int); - method @NonNull public android.media.MediaRoute2Info.Builder setVisibilityPublic(); - method @NonNull public android.media.MediaRoute2Info.Builder setVisibilityRestricted(@NonNull java.util.Set); - method @NonNull public android.media.MediaRoute2Info.Builder setVolume(int); - method @NonNull public android.media.MediaRoute2Info.Builder setVolumeHandling(int); - method @NonNull public android.media.MediaRoute2Info.Builder setVolumeMax(int); - } - - public abstract class MediaRoute2ProviderService extends android.app.Service { - ctor public MediaRoute2ProviderService(); - method @NonNull public final java.util.List getAllSessionInfo(); - method @Nullable public final android.media.RoutingSessionInfo getSessionInfo(@NonNull String); - method public final void notifyRequestFailed(long, int); - method public final void notifyRoutes(@NonNull java.util.Collection); - method public final void notifySessionCreated(long, @NonNull android.media.RoutingSessionInfo); - method public final void notifySessionReleased(@NonNull String); - method public final void notifySessionUpdated(@NonNull android.media.RoutingSessionInfo); - method @CallSuper @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); - method public abstract void onCreateSession(long, @NonNull String, @NonNull String, @Nullable android.os.Bundle); - method public abstract void onDeselectRoute(long, @NonNull String, @NonNull String); - method public void onDiscoveryPreferenceChanged(@NonNull android.media.RouteDiscoveryPreference); - method public abstract void onReleaseSession(long, @NonNull String); - method public abstract void onSelectRoute(long, @NonNull String, @NonNull String); - method public abstract void onSetRouteVolume(long, @NonNull String, int); - method public abstract void onSetSessionVolume(long, @NonNull String, int); - method public abstract void onTransferToRoute(long, @NonNull String, @NonNull String); - field public static final int REASON_INVALID_COMMAND = 4; // 0x4 - field public static final int REASON_NETWORK_ERROR = 2; // 0x2 - field public static final int REASON_REJECTED = 1; // 0x1 - field public static final int REASON_ROUTE_NOT_AVAILABLE = 3; // 0x3 - field public static final int REASON_UNKNOWN_ERROR = 0; // 0x0 - field public static final long REQUEST_ID_NONE = 0L; // 0x0L - field public static final String SERVICE_INTERFACE = "android.media.MediaRoute2ProviderService"; - } - - public class MediaRouter { - method public void addCallback(int, android.media.MediaRouter.Callback); - method public void addCallback(int, android.media.MediaRouter.Callback, int); - method public void addUserRoute(android.media.MediaRouter.UserRouteInfo); - method public void clearUserRoutes(); - method public android.media.MediaRouter.RouteCategory createRouteCategory(CharSequence, boolean); - method public android.media.MediaRouter.RouteCategory createRouteCategory(int, boolean); - method public android.media.MediaRouter.UserRouteInfo createUserRoute(android.media.MediaRouter.RouteCategory); - method public android.media.MediaRouter.RouteCategory getCategoryAt(int); - method public int getCategoryCount(); - method public android.media.MediaRouter.RouteInfo getDefaultRoute(); - method public android.media.MediaRouter.RouteInfo getRouteAt(int); - method public int getRouteCount(); - method public android.media.MediaRouter.RouteInfo getSelectedRoute(int); - method public void removeCallback(android.media.MediaRouter.Callback); - method public void removeUserRoute(android.media.MediaRouter.UserRouteInfo); - method public void selectRoute(int, @NonNull android.media.MediaRouter.RouteInfo); - field public static final int CALLBACK_FLAG_PERFORM_ACTIVE_SCAN = 1; // 0x1 - field public static final int CALLBACK_FLAG_UNFILTERED_EVENTS = 2; // 0x2 - field public static final int ROUTE_TYPE_LIVE_AUDIO = 1; // 0x1 - field public static final int ROUTE_TYPE_LIVE_VIDEO = 2; // 0x2 - field public static final int ROUTE_TYPE_USER = 8388608; // 0x800000 - } - - public abstract static class MediaRouter.Callback { - ctor public MediaRouter.Callback(); - method public abstract void onRouteAdded(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); - method public abstract void onRouteChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); - method public abstract void onRouteGrouped(android.media.MediaRouter, android.media.MediaRouter.RouteInfo, android.media.MediaRouter.RouteGroup, int); - method public void onRoutePresentationDisplayChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); - method public abstract void onRouteRemoved(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); - method public abstract void onRouteSelected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo); - method public abstract void onRouteUngrouped(android.media.MediaRouter, android.media.MediaRouter.RouteInfo, android.media.MediaRouter.RouteGroup); - method public abstract void onRouteUnselected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo); - method public abstract void onRouteVolumeChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); - } - - public static class MediaRouter.RouteCategory { - method public CharSequence getName(); - method public CharSequence getName(android.content.Context); - method public java.util.List getRoutes(java.util.List); - method public int getSupportedTypes(); - method public boolean isGroupable(); - } - - public static class MediaRouter.RouteGroup extends android.media.MediaRouter.RouteInfo { - method public void addRoute(android.media.MediaRouter.RouteInfo); - method public void addRoute(android.media.MediaRouter.RouteInfo, int); - method public android.media.MediaRouter.RouteInfo getRouteAt(int); - method public int getRouteCount(); - method public void removeRoute(android.media.MediaRouter.RouteInfo); - method public void removeRoute(int); - method public void setIconDrawable(android.graphics.drawable.Drawable); - method public void setIconResource(@DrawableRes int); - } - - public static class MediaRouter.RouteInfo { - method public android.media.MediaRouter.RouteCategory getCategory(); - method public CharSequence getDescription(); - method public int getDeviceType(); - method public android.media.MediaRouter.RouteGroup getGroup(); - method public android.graphics.drawable.Drawable getIconDrawable(); - method public CharSequence getName(); - method public CharSequence getName(android.content.Context); - method public int getPlaybackStream(); - method public int getPlaybackType(); - method public android.view.Display getPresentationDisplay(); - method public CharSequence getStatus(); - method public int getSupportedTypes(); - method public Object getTag(); - method public int getVolume(); - method public int getVolumeHandling(); - method public int getVolumeMax(); - method public boolean isConnecting(); - method public boolean isEnabled(); - method public void requestSetVolume(int); - method public void requestUpdateVolume(int); - method public void setTag(Object); - field public static final int DEVICE_TYPE_BLUETOOTH = 3; // 0x3 - field public static final int DEVICE_TYPE_SPEAKER = 2; // 0x2 - field public static final int DEVICE_TYPE_TV = 1; // 0x1 - field public static final int DEVICE_TYPE_UNKNOWN = 0; // 0x0 - field public static final int PLAYBACK_TYPE_LOCAL = 0; // 0x0 - field public static final int PLAYBACK_TYPE_REMOTE = 1; // 0x1 - field public static final int PLAYBACK_VOLUME_FIXED = 0; // 0x0 - field public static final int PLAYBACK_VOLUME_VARIABLE = 1; // 0x1 - } - - public static class MediaRouter.SimpleCallback extends android.media.MediaRouter.Callback { - ctor public MediaRouter.SimpleCallback(); - method public void onRouteAdded(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); - method public void onRouteChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); - method public void onRouteGrouped(android.media.MediaRouter, android.media.MediaRouter.RouteInfo, android.media.MediaRouter.RouteGroup, int); - method public void onRouteRemoved(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); - method public void onRouteSelected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo); - method public void onRouteUngrouped(android.media.MediaRouter, android.media.MediaRouter.RouteInfo, android.media.MediaRouter.RouteGroup); - method public void onRouteUnselected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo); - method public void onRouteVolumeChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); - } - - public static class MediaRouter.UserRouteInfo extends android.media.MediaRouter.RouteInfo { - method public android.media.RemoteControlClient getRemoteControlClient(); - method public void setDescription(CharSequence); - method public void setIconDrawable(android.graphics.drawable.Drawable); - method public void setIconResource(@DrawableRes int); - method public void setName(CharSequence); - method public void setName(int); - method public void setPlaybackStream(int); - method public void setPlaybackType(int); - method public void setRemoteControlClient(android.media.RemoteControlClient); - method public void setStatus(CharSequence); - method public void setVolume(int); - method public void setVolumeCallback(android.media.MediaRouter.VolumeCallback); - method public void setVolumeHandling(int); - method public void setVolumeMax(int); - } - - public abstract static class MediaRouter.VolumeCallback { - ctor public MediaRouter.VolumeCallback(); - method public abstract void onVolumeSetRequest(android.media.MediaRouter.RouteInfo, int); - method public abstract void onVolumeUpdateRequest(android.media.MediaRouter.RouteInfo, int); - } - - public final class MediaRouter2 { - method @FlaggedApi("com.android.media.flags.enable_screen_off_scanning") public void cancelScanRequest(@NonNull android.media.MediaRouter2.ScanToken); - method @Nullable public android.media.MediaRouter2.RoutingController getController(@NonNull String); - method @NonNull public java.util.List getControllers(); - method @NonNull public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context); - method @FlaggedApi("com.android.media.flags.enable_privileged_routing_for_media_routing_control") @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MEDIA_CONTENT_CONTROL, android.Manifest.permission.MEDIA_ROUTING_CONTROL}) public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull Runnable); - method @FlaggedApi("com.android.media.flags.enable_rlp_callbacks_in_media_router2") @Nullable public android.media.RouteListingPreference getRouteListingPreference(); - method @NonNull public java.util.List getRoutes(); - method @NonNull public android.media.MediaRouter2.RoutingController getSystemController(); - method public void registerControllerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.ControllerCallback); - method public void registerRouteCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.RouteCallback, @NonNull android.media.RouteDiscoveryPreference); - method @FlaggedApi("com.android.media.flags.enable_rlp_callbacks_in_media_router2") public void registerRouteListingPreferenceUpdatedCallback(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public void registerTransferCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.TransferCallback); - method @FlaggedApi("com.android.media.flags.enable_screen_off_scanning") @NonNull public android.media.MediaRouter2.ScanToken requestScan(@NonNull android.media.MediaRouter2.ScanRequest); - method public void setOnGetControllerHintsListener(@Nullable android.media.MediaRouter2.OnGetControllerHintsListener); - method public void setRouteListingPreference(@Nullable android.media.RouteListingPreference); - method @FlaggedApi("com.android.media.flags.enable_privileged_routing_for_media_routing_control") @RequiresPermission(anyOf={android.Manifest.permission.MEDIA_CONTENT_CONTROL, android.Manifest.permission.MEDIA_ROUTING_CONTROL}) public void setRouteVolume(@NonNull android.media.MediaRoute2Info, int); - method public boolean showSystemOutputSwitcher(); - method public void stop(); - method public void transferTo(@NonNull android.media.MediaRoute2Info); - method public void unregisterControllerCallback(@NonNull android.media.MediaRouter2.ControllerCallback); - method public void unregisterRouteCallback(@NonNull android.media.MediaRouter2.RouteCallback); - method @FlaggedApi("com.android.media.flags.enable_rlp_callbacks_in_media_router2") public void unregisterRouteListingPreferenceUpdatedCallback(@NonNull java.util.function.Consumer); - method public void unregisterTransferCallback(@NonNull android.media.MediaRouter2.TransferCallback); - } - - public abstract static class MediaRouter2.ControllerCallback { - ctor public MediaRouter2.ControllerCallback(); - method public void onControllerUpdated(@NonNull android.media.MediaRouter2.RoutingController); - } - - public static interface MediaRouter2.OnGetControllerHintsListener { - method @Nullable public android.os.Bundle onGetControllerHints(@NonNull android.media.MediaRoute2Info); - } - - public abstract static class MediaRouter2.RouteCallback { - ctor public MediaRouter2.RouteCallback(); - method @Deprecated public void onRoutesAdded(@NonNull java.util.List); - method @Deprecated public void onRoutesChanged(@NonNull java.util.List); - method @Deprecated public void onRoutesRemoved(@NonNull java.util.List); - method public void onRoutesUpdated(@NonNull java.util.List); - } - - public class MediaRouter2.RoutingController { - method public void deselectRoute(@NonNull android.media.MediaRoute2Info); - method @Nullable public android.os.Bundle getControlHints(); - method @NonNull public java.util.List getDeselectableRoutes(); - method @NonNull public String getId(); - method @NonNull public android.media.RoutingSessionInfo getRoutingSessionInfo(); - method @NonNull public java.util.List getSelectableRoutes(); - method @NonNull public java.util.List getSelectedRoutes(); - method @FlaggedApi("com.android.media.flags.enable_get_transferable_routes") @NonNull public java.util.List getTransferableRoutes(); - method public int getVolume(); - method public int getVolumeHandling(); - method public int getVolumeMax(); - method public boolean isReleased(); - method public void release(); - method public void selectRoute(@NonNull android.media.MediaRoute2Info); - method public void setVolume(int); - method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public boolean wasTransferInitiatedBySelf(); - } - - @FlaggedApi("com.android.media.flags.enable_screen_off_scanning") public static final class MediaRouter2.ScanRequest { - method public boolean isScreenOffScan(); - } - - public static final class MediaRouter2.ScanRequest.Builder { - ctor public MediaRouter2.ScanRequest.Builder(); - method @NonNull public android.media.MediaRouter2.ScanRequest build(); - method @NonNull public android.media.MediaRouter2.ScanRequest.Builder setScreenOffScan(boolean); - } - - @FlaggedApi("com.android.media.flags.enable_screen_off_scanning") public static final class MediaRouter2.ScanToken { - } - - public abstract static class MediaRouter2.TransferCallback { - ctor public MediaRouter2.TransferCallback(); - method public void onStop(@NonNull android.media.MediaRouter2.RoutingController); - method public void onTransfer(@NonNull android.media.MediaRouter2.RoutingController, @NonNull android.media.MediaRouter2.RoutingController); - method public void onTransferFailure(@NonNull android.media.MediaRoute2Info); - } - - public class MediaScannerConnection implements android.content.ServiceConnection { - ctor public MediaScannerConnection(android.content.Context, android.media.MediaScannerConnection.MediaScannerConnectionClient); - method public void connect(); - method public void disconnect(); - method public boolean isConnected(); - method public void onServiceConnected(android.content.ComponentName, android.os.IBinder); - method public void onServiceDisconnected(android.content.ComponentName); - method public void scanFile(String, String); - method public static void scanFile(android.content.Context, String[], String[], android.media.MediaScannerConnection.OnScanCompletedListener); - } - - public static interface MediaScannerConnection.MediaScannerConnectionClient extends android.media.MediaScannerConnection.OnScanCompletedListener { - method public void onMediaScannerConnected(); - } - - public static interface MediaScannerConnection.OnScanCompletedListener { - method public void onScanCompleted(String, android.net.Uri); - } - - public final class MediaSync { - ctor public MediaSync(); - method @NonNull public android.view.Surface createInputSurface(); - method protected void finalize(); - method public void flush(); - method @NonNull public android.media.PlaybackParams getPlaybackParams(); - method @NonNull public android.media.SyncParams getSyncParams(); - method @Nullable public android.media.MediaTimestamp getTimestamp(); - method public void queueAudio(@NonNull java.nio.ByteBuffer, int, long); - method public void release(); - method public void setAudioTrack(@Nullable android.media.AudioTrack); - method public void setCallback(@Nullable android.media.MediaSync.Callback, @Nullable android.os.Handler); - method public void setOnErrorListener(@Nullable android.media.MediaSync.OnErrorListener, @Nullable android.os.Handler); - method public void setPlaybackParams(@NonNull android.media.PlaybackParams); - method public void setSurface(@Nullable android.view.Surface); - method public void setSyncParams(@NonNull android.media.SyncParams); - field public static final int MEDIASYNC_ERROR_AUDIOTRACK_FAIL = 1; // 0x1 - field public static final int MEDIASYNC_ERROR_SURFACE_FAIL = 2; // 0x2 - } - - public abstract static class MediaSync.Callback { - ctor public MediaSync.Callback(); - method public abstract void onAudioBufferConsumed(@NonNull android.media.MediaSync, @NonNull java.nio.ByteBuffer, int); - } - - public static interface MediaSync.OnErrorListener { - method public void onError(@NonNull android.media.MediaSync, int, int); - } - - public class MediaSyncEvent implements android.os.Parcelable { - method public static android.media.MediaSyncEvent createEvent(int) throws java.lang.IllegalArgumentException; - method public int describeContents(); - method public int getAudioSessionId(); - method public int getType(); - method public android.media.MediaSyncEvent setAudioSessionId(int) throws java.lang.IllegalArgumentException; - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SYNC_EVENT_NONE = 0; // 0x0 - field public static final int SYNC_EVENT_PRESENTATION_COMPLETE = 1; // 0x1 - } - - public final class MediaTimestamp { - ctor public MediaTimestamp(long, long, @FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE) float); - method public long getAnchorMediaTimeUs(); - method public long getAnchorSystemNanoTime(); - method @Deprecated public long getAnchorSytemNanoTime(); - method @FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE) public float getMediaClockRate(); - field public static final android.media.MediaTimestamp TIMESTAMP_UNKNOWN; - } - - public interface MicrophoneDirection { - method public boolean setPreferredMicrophoneDirection(int); - method public boolean setPreferredMicrophoneFieldDimension(@FloatRange(from=-1.0, to=1.0) float); - field public static final int MIC_DIRECTION_AWAY_FROM_USER = 2; // 0x2 - field public static final int MIC_DIRECTION_EXTERNAL = 3; // 0x3 - field public static final int MIC_DIRECTION_TOWARDS_USER = 1; // 0x1 - field public static final int MIC_DIRECTION_UNSPECIFIED = 0; // 0x0 - } - - public final class MicrophoneInfo { - method @NonNull public String getAddress(); - method public java.util.List> getChannelMapping(); - method public String getDescription(); - method public int getDirectionality(); - method public java.util.List> getFrequencyResponse(); - method public int getGroup(); - method public int getId(); - method public int getIndexInTheGroup(); - method public int getLocation(); - method public float getMaxSpl(); - method public float getMinSpl(); - method public android.media.MicrophoneInfo.Coordinate3F getOrientation(); - method public android.media.MicrophoneInfo.Coordinate3F getPosition(); - method public float getSensitivity(); - method public int getType(); - field public static final int CHANNEL_MAPPING_DIRECT = 1; // 0x1 - field public static final int CHANNEL_MAPPING_PROCESSED = 2; // 0x2 - field public static final int DIRECTIONALITY_BI_DIRECTIONAL = 2; // 0x2 - field public static final int DIRECTIONALITY_CARDIOID = 3; // 0x3 - field public static final int DIRECTIONALITY_HYPER_CARDIOID = 4; // 0x4 - field public static final int DIRECTIONALITY_OMNI = 1; // 0x1 - field public static final int DIRECTIONALITY_SUPER_CARDIOID = 5; // 0x5 - field public static final int DIRECTIONALITY_UNKNOWN = 0; // 0x0 - field public static final int GROUP_UNKNOWN = -1; // 0xffffffff - field public static final int INDEX_IN_THE_GROUP_UNKNOWN = -1; // 0xffffffff - field public static final int LOCATION_MAINBODY = 1; // 0x1 - field public static final int LOCATION_MAINBODY_MOVABLE = 2; // 0x2 - field public static final int LOCATION_PERIPHERAL = 3; // 0x3 - field public static final int LOCATION_UNKNOWN = 0; // 0x0 - field public static final android.media.MicrophoneInfo.Coordinate3F ORIENTATION_UNKNOWN; - field public static final android.media.MicrophoneInfo.Coordinate3F POSITION_UNKNOWN; - field public static final float SENSITIVITY_UNKNOWN = -3.4028235E38f; - field public static final float SPL_UNKNOWN = -3.4028235E38f; - } - - public static final class MicrophoneInfo.Coordinate3F { - field public final float x; - field public final float y; - field public final float z; - } - - public final class NotProvisionedException extends android.media.MediaDrmException { - ctor public NotProvisionedException(String); - } - - public final class PlaybackParams implements android.os.Parcelable { - ctor public PlaybackParams(); - method public android.media.PlaybackParams allowDefaults(); - method public int describeContents(); - method public int getAudioFallbackMode(); - method public float getPitch(); - method public float getSpeed(); - method public android.media.PlaybackParams setAudioFallbackMode(int); - method public android.media.PlaybackParams setPitch(float); - method public android.media.PlaybackParams setSpeed(float); - method public void writeToParcel(android.os.Parcel, int); - field public static final int AUDIO_FALLBACK_MODE_DEFAULT = 0; // 0x0 - field public static final int AUDIO_FALLBACK_MODE_FAIL = 2; // 0x2 - field public static final int AUDIO_FALLBACK_MODE_MUTE = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class Rating implements android.os.Parcelable { - method public int describeContents(); - method public float getPercentRating(); - method public int getRatingStyle(); - method public float getStarRating(); - method public boolean hasHeart(); - method public boolean isRated(); - method public boolean isThumbUp(); - method public static android.media.Rating newHeartRating(boolean); - method public static android.media.Rating newPercentageRating(float); - method public static android.media.Rating newStarRating(int, float); - method public static android.media.Rating newThumbRating(boolean); - method public static android.media.Rating newUnratedRating(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int RATING_3_STARS = 3; // 0x3 - field public static final int RATING_4_STARS = 4; // 0x4 - field public static final int RATING_5_STARS = 5; // 0x5 - field public static final int RATING_HEART = 1; // 0x1 - field public static final int RATING_NONE = 0; // 0x0 - field public static final int RATING_PERCENTAGE = 6; // 0x6 - field public static final int RATING_THUMB_UP_DOWN = 2; // 0x2 - } - - @Deprecated public class RemoteControlClient { - ctor @Deprecated public RemoteControlClient(android.app.PendingIntent); - ctor @Deprecated public RemoteControlClient(android.app.PendingIntent, android.os.Looper); - method @Deprecated public android.media.RemoteControlClient.MetadataEditor editMetadata(boolean); - method @Deprecated public android.media.session.MediaSession getMediaSession(); - method @Deprecated public void setMetadataUpdateListener(android.media.RemoteControlClient.OnMetadataUpdateListener); - method @Deprecated public void setOnGetPlaybackPositionListener(android.media.RemoteControlClient.OnGetPlaybackPositionListener); - method @Deprecated public void setPlaybackPositionUpdateListener(android.media.RemoteControlClient.OnPlaybackPositionUpdateListener); - method @Deprecated public void setPlaybackState(int); - method @Deprecated public void setPlaybackState(int, long, float); - method @Deprecated public void setTransportControlFlags(int); - field @Deprecated public static final int FLAG_KEY_MEDIA_FAST_FORWARD = 64; // 0x40 - field @Deprecated public static final int FLAG_KEY_MEDIA_NEXT = 128; // 0x80 - field @Deprecated public static final int FLAG_KEY_MEDIA_PAUSE = 16; // 0x10 - field @Deprecated public static final int FLAG_KEY_MEDIA_PLAY = 4; // 0x4 - field @Deprecated public static final int FLAG_KEY_MEDIA_PLAY_PAUSE = 8; // 0x8 - field @Deprecated public static final int FLAG_KEY_MEDIA_POSITION_UPDATE = 256; // 0x100 - field @Deprecated public static final int FLAG_KEY_MEDIA_PREVIOUS = 1; // 0x1 - field @Deprecated public static final int FLAG_KEY_MEDIA_RATING = 512; // 0x200 - field @Deprecated public static final int FLAG_KEY_MEDIA_REWIND = 2; // 0x2 - field @Deprecated public static final int FLAG_KEY_MEDIA_STOP = 32; // 0x20 - field @Deprecated public static final int PLAYSTATE_BUFFERING = 8; // 0x8 - field @Deprecated public static final int PLAYSTATE_ERROR = 9; // 0x9 - field @Deprecated public static final int PLAYSTATE_FAST_FORWARDING = 4; // 0x4 - field @Deprecated public static final int PLAYSTATE_PAUSED = 2; // 0x2 - field @Deprecated public static final int PLAYSTATE_PLAYING = 3; // 0x3 - field @Deprecated public static final int PLAYSTATE_REWINDING = 5; // 0x5 - field @Deprecated public static final int PLAYSTATE_SKIPPING_BACKWARDS = 7; // 0x7 - field @Deprecated public static final int PLAYSTATE_SKIPPING_FORWARDS = 6; // 0x6 - field @Deprecated public static final int PLAYSTATE_STOPPED = 1; // 0x1 - } - - @Deprecated public class RemoteControlClient.MetadataEditor extends android.media.MediaMetadataEditor { - method @Deprecated public void apply(); - method @Deprecated public Object clone() throws java.lang.CloneNotSupportedException; - method @Deprecated public android.media.RemoteControlClient.MetadataEditor putBitmap(int, android.graphics.Bitmap) throws java.lang.IllegalArgumentException; - method @Deprecated public android.media.RemoteControlClient.MetadataEditor putLong(int, long) throws java.lang.IllegalArgumentException; - method @Deprecated public android.media.RemoteControlClient.MetadataEditor putObject(int, Object) throws java.lang.IllegalArgumentException; - method @Deprecated public android.media.RemoteControlClient.MetadataEditor putString(int, String) throws java.lang.IllegalArgumentException; - field @Deprecated public static final int BITMAP_KEY_ARTWORK = 100; // 0x64 - } - - @Deprecated public static interface RemoteControlClient.OnGetPlaybackPositionListener { - method @Deprecated public long onGetPlaybackPosition(); - } - - @Deprecated public static interface RemoteControlClient.OnMetadataUpdateListener { - method @Deprecated public void onMetadataUpdate(int, Object); - } - - @Deprecated public static interface RemoteControlClient.OnPlaybackPositionUpdateListener { - method @Deprecated public void onPlaybackPositionUpdate(long); - } - - @Deprecated public final class RemoteController { - ctor @Deprecated public RemoteController(android.content.Context, android.media.RemoteController.OnClientUpdateListener) throws java.lang.IllegalArgumentException; - ctor @Deprecated public RemoteController(android.content.Context, android.media.RemoteController.OnClientUpdateListener, android.os.Looper) throws java.lang.IllegalArgumentException; - method @Deprecated public boolean clearArtworkConfiguration(); - method @Deprecated public android.media.RemoteController.MetadataEditor editMetadata(); - method @Deprecated public long getEstimatedMediaPosition(); - method @Deprecated public boolean seekTo(long) throws java.lang.IllegalArgumentException; - method @Deprecated public boolean sendMediaKeyEvent(android.view.KeyEvent) throws java.lang.IllegalArgumentException; - method @Deprecated public boolean setArtworkConfiguration(int, int) throws java.lang.IllegalArgumentException; - method @Deprecated public boolean setSynchronizationMode(int) throws java.lang.IllegalArgumentException; - field @Deprecated public static final int POSITION_SYNCHRONIZATION_CHECK = 1; // 0x1 - field @Deprecated public static final int POSITION_SYNCHRONIZATION_NONE = 0; // 0x0 - } - - @Deprecated public class RemoteController.MetadataEditor extends android.media.MediaMetadataEditor { - method @Deprecated public void apply(); - } - - @Deprecated public static interface RemoteController.OnClientUpdateListener { - method @Deprecated public void onClientChange(boolean); - method @Deprecated public void onClientMetadataUpdate(android.media.RemoteController.MetadataEditor); - method @Deprecated public void onClientPlaybackStateUpdate(int); - method @Deprecated public void onClientPlaybackStateUpdate(int, long, long, float); - method @Deprecated public void onClientTransportControlUpdate(int); - } - - public final class ResourceBusyException extends android.media.MediaDrmException { - ctor public ResourceBusyException(String); - } - - public class Ringtone { - method protected void finalize(); - method public android.media.AudioAttributes getAudioAttributes(); - method @Deprecated public int getStreamType(); - method public String getTitle(android.content.Context); - method public float getVolume(); - method public boolean isHapticGeneratorEnabled(); - method public boolean isLooping(); - method public boolean isPlaying(); - method public void play(); - method public void setAudioAttributes(android.media.AudioAttributes) throws java.lang.IllegalArgumentException; - method public boolean setHapticGeneratorEnabled(boolean); - method public void setLooping(boolean); - method @Deprecated public void setStreamType(int); - method public void setVolume(float); - method public void stop(); - } - - public class RingtoneManager { - ctor public RingtoneManager(android.app.Activity); - ctor public RingtoneManager(android.content.Context); - method public static android.net.Uri getActualDefaultRingtoneUri(android.content.Context, int); - method public android.database.Cursor getCursor(); - method public static int getDefaultType(android.net.Uri); - method public static android.net.Uri getDefaultUri(int); - method @Deprecated public boolean getIncludeDrm(); - method public android.media.Ringtone getRingtone(int); - method public static android.media.Ringtone getRingtone(android.content.Context, android.net.Uri); - method public int getRingtonePosition(android.net.Uri); - method public android.net.Uri getRingtoneUri(int); - method public boolean getStopPreviousRingtone(); - method public static android.net.Uri getValidRingtoneUri(android.content.Context); - method public boolean hasHapticChannels(int); - method public static boolean hasHapticChannels(@NonNull android.net.Uri); - method public static boolean hasHapticChannels(@NonNull android.content.Context, @NonNull android.net.Uri); - method public int inferStreamType(); - method public static boolean isDefault(android.net.Uri); - method @Nullable public static android.content.res.AssetFileDescriptor openDefaultRingtoneUri(@NonNull android.content.Context, @NonNull android.net.Uri) throws java.io.FileNotFoundException; - method public static void setActualDefaultRingtoneUri(android.content.Context, int, android.net.Uri); - method @Deprecated public void setIncludeDrm(boolean); - method public void setStopPreviousRingtone(boolean); - method public void setType(int); - method public void stopPreviousRingtone(); - field public static final String ACTION_RINGTONE_PICKER = "android.intent.action.RINGTONE_PICKER"; - field public static final String EXTRA_RINGTONE_DEFAULT_URI = "android.intent.extra.ringtone.DEFAULT_URI"; - field public static final String EXTRA_RINGTONE_EXISTING_URI = "android.intent.extra.ringtone.EXISTING_URI"; - field @Deprecated public static final String EXTRA_RINGTONE_INCLUDE_DRM = "android.intent.extra.ringtone.INCLUDE_DRM"; - field public static final String EXTRA_RINGTONE_PICKED_URI = "android.intent.extra.ringtone.PICKED_URI"; - field public static final String EXTRA_RINGTONE_SHOW_DEFAULT = "android.intent.extra.ringtone.SHOW_DEFAULT"; - field public static final String EXTRA_RINGTONE_SHOW_SILENT = "android.intent.extra.ringtone.SHOW_SILENT"; - field public static final String EXTRA_RINGTONE_TITLE = "android.intent.extra.ringtone.TITLE"; - field public static final String EXTRA_RINGTONE_TYPE = "android.intent.extra.ringtone.TYPE"; - field public static final int ID_COLUMN_INDEX = 0; // 0x0 - field public static final int TITLE_COLUMN_INDEX = 1; // 0x1 - field public static final int TYPE_ALARM = 4; // 0x4 - field public static final int TYPE_ALL = 7; // 0x7 - field public static final int TYPE_NOTIFICATION = 2; // 0x2 - field public static final int TYPE_RINGTONE = 1; // 0x1 - field public static final int URI_COLUMN_INDEX = 2; // 0x2 - } - - public final class RouteDiscoveryPreference implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getPreferredFeatures(); - method public boolean shouldPerformActiveScan(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class RouteDiscoveryPreference.Builder { - ctor public RouteDiscoveryPreference.Builder(@NonNull java.util.List, boolean); - ctor public RouteDiscoveryPreference.Builder(@NonNull android.media.RouteDiscoveryPreference); - method @NonNull public android.media.RouteDiscoveryPreference build(); - method @NonNull public android.media.RouteDiscoveryPreference.Builder setPreferredFeatures(@NonNull java.util.List); - method @NonNull public android.media.RouteDiscoveryPreference.Builder setShouldPerformActiveScan(boolean); - } - - public final class RouteListingPreference implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getItems(); - method @Nullable public android.content.ComponentName getLinkedItemComponentName(); - method public boolean getUseSystemOrdering(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final String ACTION_TRANSFER_MEDIA = "android.media.action.TRANSFER_MEDIA"; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String EXTRA_ROUTE_ID = "android.media.extra.ROUTE_ID"; - } - - public static final class RouteListingPreference.Builder { - ctor public RouteListingPreference.Builder(); - method @NonNull public android.media.RouteListingPreference build(); - method @NonNull public android.media.RouteListingPreference.Builder setItems(@NonNull java.util.List); - method @NonNull public android.media.RouteListingPreference.Builder setLinkedItemComponentName(@Nullable android.content.ComponentName); - method @NonNull public android.media.RouteListingPreference.Builder setUseSystemOrdering(boolean); - } - - public static final class RouteListingPreference.Item implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public CharSequence getCustomSubtextMessage(); - method public int getFlags(); - method @NonNull public String getRouteId(); - method public int getSelectionBehavior(); - method public int getSubText(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_ONGOING_SESSION = 1; // 0x1 - field public static final int FLAG_ONGOING_SESSION_MANAGED = 2; // 0x2 - field public static final int FLAG_SUGGESTED = 4; // 0x4 - field public static final int SELECTION_BEHAVIOR_GO_TO_APP = 2; // 0x2 - field public static final int SELECTION_BEHAVIOR_NONE = 0; // 0x0 - field public static final int SELECTION_BEHAVIOR_TRANSFER = 1; // 0x1 - field public static final int SUBTEXT_AD_ROUTING_DISALLOWED = 4; // 0x4 - field public static final int SUBTEXT_CUSTOM = 10000; // 0x2710 - field public static final int SUBTEXT_DEVICE_LOW_POWER = 5; // 0x5 - field public static final int SUBTEXT_DOWNLOADED_CONTENT_ROUTING_DISALLOWED = 3; // 0x3 - field public static final int SUBTEXT_ERROR_UNKNOWN = 1; // 0x1 - field public static final int SUBTEXT_NONE = 0; // 0x0 - field public static final int SUBTEXT_SUBSCRIPTION_REQUIRED = 2; // 0x2 - field public static final int SUBTEXT_TRACK_UNSUPPORTED = 7; // 0x7 - field public static final int SUBTEXT_UNAUTHORIZED = 6; // 0x6 - } - - public static final class RouteListingPreference.Item.Builder { - ctor public RouteListingPreference.Item.Builder(@NonNull String); - method @NonNull public android.media.RouteListingPreference.Item build(); - method @NonNull public android.media.RouteListingPreference.Item.Builder setCustomSubtextMessage(@Nullable CharSequence); - method @NonNull public android.media.RouteListingPreference.Item.Builder setFlags(int); - method @NonNull public android.media.RouteListingPreference.Item.Builder setSelectionBehavior(int); - method @NonNull public android.media.RouteListingPreference.Item.Builder setSubText(int); - } - - public final class RoutingSessionInfo implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getClientPackageName(); - method @Nullable public android.os.Bundle getControlHints(); - method @NonNull public java.util.List getDeselectableRoutes(); - method @NonNull public String getId(); - method @Nullable public CharSequence getName(); - method @NonNull public java.util.List getSelectableRoutes(); - method @NonNull public java.util.List getSelectedRoutes(); - method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public int getTransferReason(); - method @NonNull public java.util.List getTransferableRoutes(); - method public int getVolume(); - method public int getVolumeHandling(); - method public int getVolumeMax(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int TRANSFER_REASON_APP = 2; // 0x2 - field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int TRANSFER_REASON_FALLBACK = 0; // 0x0 - field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int TRANSFER_REASON_SYSTEM_REQUEST = 1; // 0x1 - } - - public static final class RoutingSessionInfo.Builder { - ctor public RoutingSessionInfo.Builder(@NonNull String, @NonNull String); - ctor public RoutingSessionInfo.Builder(@NonNull android.media.RoutingSessionInfo); - method @NonNull public android.media.RoutingSessionInfo.Builder addDeselectableRoute(@NonNull String); - method @NonNull public android.media.RoutingSessionInfo.Builder addSelectableRoute(@NonNull String); - method @NonNull public android.media.RoutingSessionInfo.Builder addSelectedRoute(@NonNull String); - method @NonNull public android.media.RoutingSessionInfo.Builder addTransferableRoute(@NonNull String); - method @NonNull public android.media.RoutingSessionInfo build(); - method @NonNull public android.media.RoutingSessionInfo.Builder clearDeselectableRoutes(); - method @NonNull public android.media.RoutingSessionInfo.Builder clearSelectableRoutes(); - method @NonNull public android.media.RoutingSessionInfo.Builder clearSelectedRoutes(); - method @NonNull public android.media.RoutingSessionInfo.Builder clearTransferableRoutes(); - method @NonNull public android.media.RoutingSessionInfo.Builder removeDeselectableRoute(@NonNull String); - method @NonNull public android.media.RoutingSessionInfo.Builder removeSelectableRoute(@NonNull String); - method @NonNull public android.media.RoutingSessionInfo.Builder removeSelectedRoute(@NonNull String); - method @NonNull public android.media.RoutingSessionInfo.Builder removeTransferableRoute(@NonNull String); - method @NonNull public android.media.RoutingSessionInfo.Builder setControlHints(@Nullable android.os.Bundle); - method @NonNull public android.media.RoutingSessionInfo.Builder setName(@Nullable CharSequence); - method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") @NonNull public android.media.RoutingSessionInfo.Builder setTransferInitiator(@Nullable android.os.UserHandle, @Nullable String); - method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") @NonNull public android.media.RoutingSessionInfo.Builder setTransferReason(int); - method @NonNull public android.media.RoutingSessionInfo.Builder setVolume(int); - method @NonNull public android.media.RoutingSessionInfo.Builder setVolumeHandling(int); - method @NonNull public android.media.RoutingSessionInfo.Builder setVolumeMax(int); - } - - public class SoundPool { - ctor @Deprecated public SoundPool(int, int, int); - method public final void autoPause(); - method public final void autoResume(); - method protected void finalize(); - method public int load(String, int); - method public int load(android.content.Context, int, int); - method public int load(android.content.res.AssetFileDescriptor, int); - method public int load(java.io.FileDescriptor, long, long, int); - method public final void pause(int); - method public final int play(int, float, float, int, int, float); - method public final void release(); - method public final void resume(int); - method public final void setLoop(int, int); - method public void setOnLoadCompleteListener(android.media.SoundPool.OnLoadCompleteListener); - method public final void setPriority(int, int); - method public final void setRate(int, float); - method public final void setVolume(int, float, float); - method public final void stop(int); - method public final boolean unload(int); - } - - public static class SoundPool.Builder { - ctor public SoundPool.Builder(); - method public android.media.SoundPool build(); - method public android.media.SoundPool.Builder setAudioAttributes(android.media.AudioAttributes) throws java.lang.IllegalArgumentException; - method @NonNull public android.media.SoundPool.Builder setAudioSessionId(int); - method @NonNull public android.media.SoundPool.Builder setContext(@NonNull android.content.Context); - method public android.media.SoundPool.Builder setMaxStreams(int) throws java.lang.IllegalArgumentException; - } - - public static interface SoundPool.OnLoadCompleteListener { - method public void onLoadComplete(android.media.SoundPool, int, int); - } - - public class Spatializer { - method public void addOnHeadTrackerAvailableListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnHeadTrackerAvailableListener); - method public void addOnSpatializerStateChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnSpatializerStateChangedListener); - method public boolean canBeSpatialized(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioFormat); - method public int getImmersiveAudioLevel(); - method @FlaggedApi("android.media.audio.spatializer_capabilities") @NonNull public java.util.List getSpatializedChannelMasks(); - method public boolean isAvailable(); - method public boolean isEnabled(); - method public boolean isHeadTrackerAvailable(); - method public void removeOnHeadTrackerAvailableListener(@NonNull android.media.Spatializer.OnHeadTrackerAvailableListener); - method public void removeOnSpatializerStateChangedListener(@NonNull android.media.Spatializer.OnSpatializerStateChangedListener); - field public static final int SPATIALIZER_IMMERSIVE_LEVEL_MULTICHANNEL = 1; // 0x1 - field public static final int SPATIALIZER_IMMERSIVE_LEVEL_NONE = 0; // 0x0 - field public static final int SPATIALIZER_IMMERSIVE_LEVEL_OTHER = -1; // 0xffffffff - } - - public static interface Spatializer.OnHeadTrackerAvailableListener { - method public void onHeadTrackerAvailableChanged(@NonNull android.media.Spatializer, boolean); - } - - public static interface Spatializer.OnSpatializerStateChangedListener { - method public void onSpatializerAvailableChanged(@NonNull android.media.Spatializer, boolean); - method public void onSpatializerEnabledChanged(@NonNull android.media.Spatializer, boolean); - } - - public final class SubtitleData { - ctor public SubtitleData(int, long, long, @NonNull byte[]); - method @NonNull public byte[] getData(); - method public long getDurationUs(); - method public long getStartTimeUs(); - method public int getTrackIndex(); - } - - public final class SyncParams { - ctor public SyncParams(); - method public android.media.SyncParams allowDefaults(); - method public int getAudioAdjustMode(); - method public float getFrameRate(); - method public int getSyncSource(); - method public float getTolerance(); - method public android.media.SyncParams setAudioAdjustMode(int); - method public android.media.SyncParams setFrameRate(float); - method public android.media.SyncParams setSyncSource(int); - method public android.media.SyncParams setTolerance(float); - field public static final int AUDIO_ADJUST_MODE_DEFAULT = 0; // 0x0 - field public static final int AUDIO_ADJUST_MODE_RESAMPLE = 2; // 0x2 - field public static final int AUDIO_ADJUST_MODE_STRETCH = 1; // 0x1 - field public static final int SYNC_SOURCE_AUDIO = 2; // 0x2 - field public static final int SYNC_SOURCE_DEFAULT = 0; // 0x0 - field public static final int SYNC_SOURCE_SYSTEM_CLOCK = 1; // 0x1 - field public static final int SYNC_SOURCE_VSYNC = 3; // 0x3 - } - - public class ThumbnailUtils { - ctor public ThumbnailUtils(); - method @Deprecated @Nullable public static android.graphics.Bitmap createAudioThumbnail(@NonNull String, int); - method @NonNull public static android.graphics.Bitmap createAudioThumbnail(@NonNull java.io.File, @NonNull android.util.Size, @Nullable android.os.CancellationSignal) throws java.io.IOException; - method @Deprecated @Nullable public static android.graphics.Bitmap createImageThumbnail(@NonNull String, int); - method @NonNull public static android.graphics.Bitmap createImageThumbnail(@NonNull java.io.File, @NonNull android.util.Size, @Nullable android.os.CancellationSignal) throws java.io.IOException; - method @Deprecated @Nullable public static android.graphics.Bitmap createVideoThumbnail(@NonNull String, int); - method @NonNull public static android.graphics.Bitmap createVideoThumbnail(@NonNull java.io.File, @NonNull android.util.Size, @Nullable android.os.CancellationSignal) throws java.io.IOException; - method public static android.graphics.Bitmap extractThumbnail(android.graphics.Bitmap, int, int); - method public static android.graphics.Bitmap extractThumbnail(android.graphics.Bitmap, int, int, int); - field public static final int OPTIONS_RECYCLE_INPUT = 2; // 0x2 - } - - public final class TimedMetaData { - ctor public TimedMetaData(long, @NonNull byte[]); - method public byte[] getMetaData(); - method public long getTimestamp(); - } - - public final class TimedText { - method public android.graphics.Rect getBounds(); - method public String getText(); - } - - public class ToneGenerator { - ctor public ToneGenerator(int, int); - method protected void finalize(); - method public final int getAudioSessionId(); - method public void release(); - method public boolean startTone(int); - method public boolean startTone(int, int); - method public void stopTone(); - field public static final int MAX_VOLUME = 100; // 0x64 - field public static final int MIN_VOLUME = 0; // 0x0 - field public static final int TONE_CDMA_ABBR_ALERT = 97; // 0x61 - field public static final int TONE_CDMA_ABBR_INTERCEPT = 37; // 0x25 - field public static final int TONE_CDMA_ABBR_REORDER = 39; // 0x27 - field public static final int TONE_CDMA_ALERT_AUTOREDIAL_LITE = 87; // 0x57 - field public static final int TONE_CDMA_ALERT_CALL_GUARD = 93; // 0x5d - field public static final int TONE_CDMA_ALERT_INCALL_LITE = 91; // 0x5b - field public static final int TONE_CDMA_ALERT_NETWORK_LITE = 86; // 0x56 - field public static final int TONE_CDMA_ANSWER = 42; // 0x2a - field public static final int TONE_CDMA_CALLDROP_LITE = 95; // 0x5f - field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_INTERGROUP = 46; // 0x2e - field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_NORMAL = 45; // 0x2d - field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PAT3 = 48; // 0x30 - field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PAT5 = 50; // 0x32 - field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PAT6 = 51; // 0x33 - field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PAT7 = 52; // 0x34 - field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PING_RING = 49; // 0x31 - field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_SP_PRI = 47; // 0x2f - field public static final int TONE_CDMA_CONFIRM = 41; // 0x29 - field public static final int TONE_CDMA_DIAL_TONE_LITE = 34; // 0x22 - field public static final int TONE_CDMA_EMERGENCY_RINGBACK = 92; // 0x5c - field public static final int TONE_CDMA_HIGH_L = 53; // 0x35 - field public static final int TONE_CDMA_HIGH_PBX_L = 71; // 0x47 - field public static final int TONE_CDMA_HIGH_PBX_SLS = 80; // 0x50 - field public static final int TONE_CDMA_HIGH_PBX_SS = 74; // 0x4a - field public static final int TONE_CDMA_HIGH_PBX_SSL = 77; // 0x4d - field public static final int TONE_CDMA_HIGH_PBX_S_X4 = 83; // 0x53 - field public static final int TONE_CDMA_HIGH_SLS = 65; // 0x41 - field public static final int TONE_CDMA_HIGH_SS = 56; // 0x38 - field public static final int TONE_CDMA_HIGH_SSL = 59; // 0x3b - field public static final int TONE_CDMA_HIGH_SS_2 = 62; // 0x3e - field public static final int TONE_CDMA_HIGH_S_X4 = 68; // 0x44 - field public static final int TONE_CDMA_INTERCEPT = 36; // 0x24 - field public static final int TONE_CDMA_KEYPAD_VOLUME_KEY_LITE = 89; // 0x59 - field public static final int TONE_CDMA_LOW_L = 55; // 0x37 - field public static final int TONE_CDMA_LOW_PBX_L = 73; // 0x49 - field public static final int TONE_CDMA_LOW_PBX_SLS = 82; // 0x52 - field public static final int TONE_CDMA_LOW_PBX_SS = 76; // 0x4c - field public static final int TONE_CDMA_LOW_PBX_SSL = 79; // 0x4f - field public static final int TONE_CDMA_LOW_PBX_S_X4 = 85; // 0x55 - field public static final int TONE_CDMA_LOW_SLS = 67; // 0x43 - field public static final int TONE_CDMA_LOW_SS = 58; // 0x3a - field public static final int TONE_CDMA_LOW_SSL = 61; // 0x3d - field public static final int TONE_CDMA_LOW_SS_2 = 64; // 0x40 - field public static final int TONE_CDMA_LOW_S_X4 = 70; // 0x46 - field public static final int TONE_CDMA_MED_L = 54; // 0x36 - field public static final int TONE_CDMA_MED_PBX_L = 72; // 0x48 - field public static final int TONE_CDMA_MED_PBX_SLS = 81; // 0x51 - field public static final int TONE_CDMA_MED_PBX_SS = 75; // 0x4b - field public static final int TONE_CDMA_MED_PBX_SSL = 78; // 0x4e - field public static final int TONE_CDMA_MED_PBX_S_X4 = 84; // 0x54 - field public static final int TONE_CDMA_MED_SLS = 66; // 0x42 - field public static final int TONE_CDMA_MED_SS = 57; // 0x39 - field public static final int TONE_CDMA_MED_SSL = 60; // 0x3c - field public static final int TONE_CDMA_MED_SS_2 = 63; // 0x3f - field public static final int TONE_CDMA_MED_S_X4 = 69; // 0x45 - field public static final int TONE_CDMA_NETWORK_BUSY = 40; // 0x28 - field public static final int TONE_CDMA_NETWORK_BUSY_ONE_SHOT = 96; // 0x60 - field public static final int TONE_CDMA_NETWORK_CALLWAITING = 43; // 0x2b - field public static final int TONE_CDMA_NETWORK_USA_RINGBACK = 35; // 0x23 - field public static final int TONE_CDMA_ONE_MIN_BEEP = 88; // 0x58 - field public static final int TONE_CDMA_PIP = 44; // 0x2c - field public static final int TONE_CDMA_PRESSHOLDKEY_LITE = 90; // 0x5a - field public static final int TONE_CDMA_REORDER = 38; // 0x26 - field public static final int TONE_CDMA_SIGNAL_OFF = 98; // 0x62 - field public static final int TONE_CDMA_SOFT_ERROR_LITE = 94; // 0x5e - field public static final int TONE_DTMF_0 = 0; // 0x0 - field public static final int TONE_DTMF_1 = 1; // 0x1 - field public static final int TONE_DTMF_2 = 2; // 0x2 - field public static final int TONE_DTMF_3 = 3; // 0x3 - field public static final int TONE_DTMF_4 = 4; // 0x4 - field public static final int TONE_DTMF_5 = 5; // 0x5 - field public static final int TONE_DTMF_6 = 6; // 0x6 - field public static final int TONE_DTMF_7 = 7; // 0x7 - field public static final int TONE_DTMF_8 = 8; // 0x8 - field public static final int TONE_DTMF_9 = 9; // 0x9 - field public static final int TONE_DTMF_A = 12; // 0xc - field public static final int TONE_DTMF_B = 13; // 0xd - field public static final int TONE_DTMF_C = 14; // 0xe - field public static final int TONE_DTMF_D = 15; // 0xf - field public static final int TONE_DTMF_P = 11; // 0xb - field public static final int TONE_DTMF_S = 10; // 0xa - field public static final int TONE_PROP_ACK = 25; // 0x19 - field public static final int TONE_PROP_BEEP = 24; // 0x18 - field public static final int TONE_PROP_BEEP2 = 28; // 0x1c - field public static final int TONE_PROP_NACK = 26; // 0x1a - field public static final int TONE_PROP_PROMPT = 27; // 0x1b - field public static final int TONE_SUP_BUSY = 17; // 0x11 - field public static final int TONE_SUP_CALL_WAITING = 22; // 0x16 - field public static final int TONE_SUP_CONFIRM = 32; // 0x20 - field public static final int TONE_SUP_CONGESTION = 18; // 0x12 - field public static final int TONE_SUP_CONGESTION_ABBREV = 31; // 0x1f - field public static final int TONE_SUP_DIAL = 16; // 0x10 - field public static final int TONE_SUP_ERROR = 21; // 0x15 - field public static final int TONE_SUP_INTERCEPT = 29; // 0x1d - field public static final int TONE_SUP_INTERCEPT_ABBREV = 30; // 0x1e - field public static final int TONE_SUP_PIP = 33; // 0x21 - field public static final int TONE_SUP_RADIO_ACK = 19; // 0x13 - field public static final int TONE_SUP_RADIO_NOTAVAIL = 20; // 0x14 - field public static final int TONE_SUP_RINGTONE = 23; // 0x17 - } - - public final class UnsupportedSchemeException extends android.media.MediaDrmException { - ctor public UnsupportedSchemeException(String); - } - - public interface VolumeAutomation { - method @NonNull public android.media.VolumeShaper createVolumeShaper(@NonNull android.media.VolumeShaper.Configuration); - } - - public abstract class VolumeProvider { - ctor public VolumeProvider(int, int, int); - ctor public VolumeProvider(int, int, int, @Nullable String); - method public final int getCurrentVolume(); - method public final int getMaxVolume(); - method public final int getVolumeControl(); - method @Nullable public final String getVolumeControlId(); - method public void onAdjustVolume(int); - method public void onSetVolumeTo(int); - method public final void setCurrentVolume(int); - field public static final int VOLUME_CONTROL_ABSOLUTE = 2; // 0x2 - field public static final int VOLUME_CONTROL_FIXED = 0; // 0x0 - field public static final int VOLUME_CONTROL_RELATIVE = 1; // 0x1 - } - - public final class VolumeShaper implements java.lang.AutoCloseable { - method public void apply(@NonNull android.media.VolumeShaper.Operation); - method public void close(); - method protected void finalize(); - method public float getVolume(); - method public void replace(@NonNull android.media.VolumeShaper.Configuration, @NonNull android.media.VolumeShaper.Operation, boolean); - } - - public static final class VolumeShaper.Configuration implements android.os.Parcelable { - method public int describeContents(); - method public long getDuration(); - method public int getInterpolatorType(); - method public static int getMaximumCurvePoints(); - method public float[] getTimes(); - method public float[] getVolumes(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final android.media.VolumeShaper.Configuration CUBIC_RAMP; - field public static final int INTERPOLATOR_TYPE_CUBIC = 2; // 0x2 - field public static final int INTERPOLATOR_TYPE_CUBIC_MONOTONIC = 3; // 0x3 - field public static final int INTERPOLATOR_TYPE_LINEAR = 1; // 0x1 - field public static final int INTERPOLATOR_TYPE_STEP = 0; // 0x0 - field public static final android.media.VolumeShaper.Configuration LINEAR_RAMP; - field public static final android.media.VolumeShaper.Configuration SCURVE_RAMP; - field public static final android.media.VolumeShaper.Configuration SINE_RAMP; - } - - public static final class VolumeShaper.Configuration.Builder { - ctor public VolumeShaper.Configuration.Builder(); - ctor public VolumeShaper.Configuration.Builder(@NonNull android.media.VolumeShaper.Configuration); - method @NonNull public android.media.VolumeShaper.Configuration build(); - method @NonNull public android.media.VolumeShaper.Configuration.Builder invertVolumes(); - method @NonNull public android.media.VolumeShaper.Configuration.Builder reflectTimes(); - method @NonNull public android.media.VolumeShaper.Configuration.Builder scaleToEndVolume(float); - method @NonNull public android.media.VolumeShaper.Configuration.Builder scaleToStartVolume(float); - method @NonNull public android.media.VolumeShaper.Configuration.Builder setCurve(@NonNull float[], @NonNull float[]); - method @NonNull public android.media.VolumeShaper.Configuration.Builder setDuration(long); - method @NonNull public android.media.VolumeShaper.Configuration.Builder setInterpolatorType(int); - } - - public static final class VolumeShaper.Operation implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final android.media.VolumeShaper.Operation PLAY; - field public static final android.media.VolumeShaper.Operation REVERSE; - } - -} - -package android.media.audiofx { - - public class AcousticEchoCanceler extends android.media.audiofx.AudioEffect { - method public static android.media.audiofx.AcousticEchoCanceler create(int); - method public static boolean isAvailable(); - } - - public class AudioEffect { - method protected void finalize(); - method public android.media.audiofx.AudioEffect.Descriptor getDescriptor() throws java.lang.IllegalStateException; - method public boolean getEnabled() throws java.lang.IllegalStateException; - method public int getId() throws java.lang.IllegalStateException; - method public boolean hasControl() throws java.lang.IllegalStateException; - method public static android.media.audiofx.AudioEffect.Descriptor[] queryEffects(); - method public void release(); - method public void setControlStatusListener(android.media.audiofx.AudioEffect.OnControlStatusChangeListener); - method public void setEnableStatusListener(android.media.audiofx.AudioEffect.OnEnableStatusChangeListener); - method public int setEnabled(boolean) throws java.lang.IllegalStateException; - field public static final String ACTION_CLOSE_AUDIO_EFFECT_CONTROL_SESSION = "android.media.action.CLOSE_AUDIO_EFFECT_CONTROL_SESSION"; - field public static final String ACTION_DISPLAY_AUDIO_EFFECT_CONTROL_PANEL = "android.media.action.DISPLAY_AUDIO_EFFECT_CONTROL_PANEL"; - field public static final String ACTION_OPEN_AUDIO_EFFECT_CONTROL_SESSION = "android.media.action.OPEN_AUDIO_EFFECT_CONTROL_SESSION"; - field public static final int ALREADY_EXISTS = -2; // 0xfffffffe - field public static final int CONTENT_TYPE_GAME = 2; // 0x2 - field public static final int CONTENT_TYPE_MOVIE = 1; // 0x1 - field public static final int CONTENT_TYPE_MUSIC = 0; // 0x0 - field public static final int CONTENT_TYPE_VOICE = 3; // 0x3 - field public static final String EFFECT_AUXILIARY = "Auxiliary"; - field public static final String EFFECT_INSERT = "Insert"; - field public static final String EFFECT_POST_PROCESSING = "Post Processing"; - field public static final String EFFECT_PRE_PROCESSING = "Pre Processing"; - field public static final java.util.UUID EFFECT_TYPE_AEC; - field public static final java.util.UUID EFFECT_TYPE_AGC; - field public static final java.util.UUID EFFECT_TYPE_BASS_BOOST; - field public static final java.util.UUID EFFECT_TYPE_DYNAMICS_PROCESSING; - field public static final java.util.UUID EFFECT_TYPE_ENV_REVERB; - field public static final java.util.UUID EFFECT_TYPE_EQUALIZER; - field @NonNull public static final java.util.UUID EFFECT_TYPE_HAPTIC_GENERATOR; - field public static final java.util.UUID EFFECT_TYPE_LOUDNESS_ENHANCER; - field public static final java.util.UUID EFFECT_TYPE_NS; - field public static final java.util.UUID EFFECT_TYPE_PRESET_REVERB; - field public static final java.util.UUID EFFECT_TYPE_VIRTUALIZER; - field public static final int ERROR = -1; // 0xffffffff - field public static final int ERROR_BAD_VALUE = -4; // 0xfffffffc - field public static final int ERROR_DEAD_OBJECT = -7; // 0xfffffff9 - field public static final int ERROR_INVALID_OPERATION = -5; // 0xfffffffb - field public static final int ERROR_NO_INIT = -3; // 0xfffffffd - field public static final int ERROR_NO_MEMORY = -6; // 0xfffffffa - field public static final String EXTRA_AUDIO_SESSION = "android.media.extra.AUDIO_SESSION"; - field public static final String EXTRA_CONTENT_TYPE = "android.media.extra.CONTENT_TYPE"; - field public static final String EXTRA_PACKAGE_NAME = "android.media.extra.PACKAGE_NAME"; - field public static final int SUCCESS = 0; // 0x0 - } - - public static class AudioEffect.Descriptor { - ctor public AudioEffect.Descriptor(); - ctor public AudioEffect.Descriptor(String, String, String, String, String); - field public String connectMode; - field public String implementor; - field public String name; - field public java.util.UUID type; - field public java.util.UUID uuid; - } - - public static interface AudioEffect.OnControlStatusChangeListener { - method public void onControlStatusChange(android.media.audiofx.AudioEffect, boolean); - } - - public static interface AudioEffect.OnEnableStatusChangeListener { - method public void onEnableStatusChange(android.media.audiofx.AudioEffect, boolean); - } - - public class AutomaticGainControl extends android.media.audiofx.AudioEffect { - method public static android.media.audiofx.AutomaticGainControl create(int); - method public static boolean isAvailable(); - } - - public class BassBoost extends android.media.audiofx.AudioEffect { - ctor public BassBoost(int, int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; - method public android.media.audiofx.BassBoost.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getRoundedStrength() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public boolean getStrengthSupported(); - method public void setParameterListener(android.media.audiofx.BassBoost.OnParameterChangeListener); - method public void setProperties(android.media.audiofx.BassBoost.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setStrength(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - field public static final int PARAM_STRENGTH = 1; // 0x1 - field public static final int PARAM_STRENGTH_SUPPORTED = 0; // 0x0 - } - - public static interface BassBoost.OnParameterChangeListener { - method public void onParameterChange(android.media.audiofx.BassBoost, int, int, short); - } - - public static class BassBoost.Settings { - ctor public BassBoost.Settings(); - ctor public BassBoost.Settings(String); - field public short strength; - } - - public final class DynamicsProcessing extends android.media.audiofx.AudioEffect { - ctor public DynamicsProcessing(int); - ctor public DynamicsProcessing(int, int, @Nullable android.media.audiofx.DynamicsProcessing.Config); - method public android.media.audiofx.DynamicsProcessing.Channel getChannelByChannelIndex(int); - method public int getChannelCount(); - method public android.media.audiofx.DynamicsProcessing.Config getConfig(); - method public float getInputGainByChannelIndex(int); - method public android.media.audiofx.DynamicsProcessing.Limiter getLimiterByChannelIndex(int); - method public android.media.audiofx.DynamicsProcessing.MbcBand getMbcBandByChannelIndex(int, int); - method public android.media.audiofx.DynamicsProcessing.Mbc getMbcByChannelIndex(int); - method public android.media.audiofx.DynamicsProcessing.EqBand getPostEqBandByChannelIndex(int, int); - method public android.media.audiofx.DynamicsProcessing.Eq getPostEqByChannelIndex(int); - method public android.media.audiofx.DynamicsProcessing.EqBand getPreEqBandByChannelIndex(int, int); - method public android.media.audiofx.DynamicsProcessing.Eq getPreEqByChannelIndex(int); - method public void setAllChannelsTo(android.media.audiofx.DynamicsProcessing.Channel); - method public void setChannelTo(int, android.media.audiofx.DynamicsProcessing.Channel); - method public void setInputGainAllChannelsTo(float); - method public void setInputGainbyChannel(int, float); - method public void setLimiterAllChannelsTo(android.media.audiofx.DynamicsProcessing.Limiter); - method public void setLimiterByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Limiter); - method public void setMbcAllChannelsTo(android.media.audiofx.DynamicsProcessing.Mbc); - method public void setMbcBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.MbcBand); - method public void setMbcBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.MbcBand); - method public void setMbcByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Mbc); - method public void setPostEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); - method public void setPostEqBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.EqBand); - method public void setPostEqBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.EqBand); - method public void setPostEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); - method public void setPreEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); - method public void setPreEqBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.EqBand); - method public void setPreEqBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.EqBand); - method public void setPreEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); - field public static final int VARIANT_FAVOR_FREQUENCY_RESOLUTION = 0; // 0x0 - field public static final int VARIANT_FAVOR_TIME_RESOLUTION = 1; // 0x1 - } - - public static class DynamicsProcessing.BandBase { - ctor public DynamicsProcessing.BandBase(boolean, float); - method public float getCutoffFrequency(); - method public boolean isEnabled(); - method public void setCutoffFrequency(float); - method public void setEnabled(boolean); - } - - public static class DynamicsProcessing.BandStage extends android.media.audiofx.DynamicsProcessing.Stage { - ctor public DynamicsProcessing.BandStage(boolean, boolean, int); - method public int getBandCount(); - } - - public static final class DynamicsProcessing.Channel { - ctor public DynamicsProcessing.Channel(float, boolean, int, boolean, int, boolean, int, boolean); - ctor public DynamicsProcessing.Channel(android.media.audiofx.DynamicsProcessing.Channel); - method public float getInputGain(); - method public android.media.audiofx.DynamicsProcessing.Limiter getLimiter(); - method public android.media.audiofx.DynamicsProcessing.Mbc getMbc(); - method public android.media.audiofx.DynamicsProcessing.MbcBand getMbcBand(int); - method public android.media.audiofx.DynamicsProcessing.Eq getPostEq(); - method public android.media.audiofx.DynamicsProcessing.EqBand getPostEqBand(int); - method public android.media.audiofx.DynamicsProcessing.Eq getPreEq(); - method public android.media.audiofx.DynamicsProcessing.EqBand getPreEqBand(int); - method public void setInputGain(float); - method public void setLimiter(android.media.audiofx.DynamicsProcessing.Limiter); - method public void setMbc(android.media.audiofx.DynamicsProcessing.Mbc); - method public void setMbcBand(int, android.media.audiofx.DynamicsProcessing.MbcBand); - method public void setPostEq(android.media.audiofx.DynamicsProcessing.Eq); - method public void setPostEqBand(int, android.media.audiofx.DynamicsProcessing.EqBand); - method public void setPreEq(android.media.audiofx.DynamicsProcessing.Eq); - method public void setPreEqBand(int, android.media.audiofx.DynamicsProcessing.EqBand); - } - - public static final class DynamicsProcessing.Config { - method public android.media.audiofx.DynamicsProcessing.Channel getChannelByChannelIndex(int); - method public float getInputGainByChannelIndex(int); - method public android.media.audiofx.DynamicsProcessing.Limiter getLimiterByChannelIndex(int); - method public android.media.audiofx.DynamicsProcessing.MbcBand getMbcBandByChannelIndex(int, int); - method public int getMbcBandCount(); - method public android.media.audiofx.DynamicsProcessing.Mbc getMbcByChannelIndex(int); - method public android.media.audiofx.DynamicsProcessing.EqBand getPostEqBandByChannelIndex(int, int); - method public int getPostEqBandCount(); - method public android.media.audiofx.DynamicsProcessing.Eq getPostEqByChannelIndex(int); - method public android.media.audiofx.DynamicsProcessing.EqBand getPreEqBandByChannelIndex(int, int); - method public int getPreEqBandCount(); - method public android.media.audiofx.DynamicsProcessing.Eq getPreEqByChannelIndex(int); - method public float getPreferredFrameDuration(); - method public int getVariant(); - method public boolean isLimiterInUse(); - method public boolean isMbcInUse(); - method public boolean isPostEqInUse(); - method public boolean isPreEqInUse(); - method public void setAllChannelsTo(android.media.audiofx.DynamicsProcessing.Channel); - method public void setChannelTo(int, android.media.audiofx.DynamicsProcessing.Channel); - method public void setInputGainAllChannelsTo(float); - method public void setInputGainByChannelIndex(int, float); - method public void setLimiterAllChannelsTo(android.media.audiofx.DynamicsProcessing.Limiter); - method public void setLimiterByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Limiter); - method public void setMbcAllChannelsTo(android.media.audiofx.DynamicsProcessing.Mbc); - method public void setMbcBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.MbcBand); - method public void setMbcBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.MbcBand); - method public void setMbcByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Mbc); - method public void setPostEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); - method public void setPostEqBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.EqBand); - method public void setPostEqBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.EqBand); - method public void setPostEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); - method public void setPreEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); - method public void setPreEqBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.EqBand); - method public void setPreEqBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.EqBand); - method public void setPreEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); - } - - public static final class DynamicsProcessing.Config.Builder { - ctor public DynamicsProcessing.Config.Builder(int, int, boolean, int, boolean, int, boolean, int, boolean); - method public android.media.audiofx.DynamicsProcessing.Config build(); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setAllChannelsTo(android.media.audiofx.DynamicsProcessing.Channel); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setChannelTo(int, android.media.audiofx.DynamicsProcessing.Channel); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setInputGainAllChannelsTo(float); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setInputGainByChannelIndex(int, float); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setLimiterAllChannelsTo(android.media.audiofx.DynamicsProcessing.Limiter); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setLimiterByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Limiter); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setMbcAllChannelsTo(android.media.audiofx.DynamicsProcessing.Mbc); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setMbcByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Mbc); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setPostEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setPostEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setPreEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setPreEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); - method public android.media.audiofx.DynamicsProcessing.Config.Builder setPreferredFrameDuration(float); - } - - public static final class DynamicsProcessing.Eq extends android.media.audiofx.DynamicsProcessing.BandStage { - ctor public DynamicsProcessing.Eq(boolean, boolean, int); - ctor public DynamicsProcessing.Eq(android.media.audiofx.DynamicsProcessing.Eq); - method public android.media.audiofx.DynamicsProcessing.EqBand getBand(int); - method public void setBand(int, android.media.audiofx.DynamicsProcessing.EqBand); - } - - public static final class DynamicsProcessing.EqBand extends android.media.audiofx.DynamicsProcessing.BandBase { - ctor public DynamicsProcessing.EqBand(boolean, float, float); - ctor public DynamicsProcessing.EqBand(android.media.audiofx.DynamicsProcessing.EqBand); - method public float getGain(); - method public void setGain(float); - } - - public static final class DynamicsProcessing.Limiter extends android.media.audiofx.DynamicsProcessing.Stage { - ctor public DynamicsProcessing.Limiter(boolean, boolean, int, float, float, float, float, float); - ctor public DynamicsProcessing.Limiter(android.media.audiofx.DynamicsProcessing.Limiter); - method public float getAttackTime(); - method public int getLinkGroup(); - method public float getPostGain(); - method public float getRatio(); - method public float getReleaseTime(); - method public float getThreshold(); - method public void setAttackTime(float); - method public void setLinkGroup(int); - method public void setPostGain(float); - method public void setRatio(float); - method public void setReleaseTime(float); - method public void setThreshold(float); - } - - public static final class DynamicsProcessing.Mbc extends android.media.audiofx.DynamicsProcessing.BandStage { - ctor public DynamicsProcessing.Mbc(boolean, boolean, int); - ctor public DynamicsProcessing.Mbc(android.media.audiofx.DynamicsProcessing.Mbc); - method public android.media.audiofx.DynamicsProcessing.MbcBand getBand(int); - method public void setBand(int, android.media.audiofx.DynamicsProcessing.MbcBand); - } - - public static final class DynamicsProcessing.MbcBand extends android.media.audiofx.DynamicsProcessing.BandBase { - ctor public DynamicsProcessing.MbcBand(boolean, float, float, float, float, float, float, float, float, float, float); - ctor public DynamicsProcessing.MbcBand(android.media.audiofx.DynamicsProcessing.MbcBand); - method public float getAttackTime(); - method public float getExpanderRatio(); - method public float getKneeWidth(); - method public float getNoiseGateThreshold(); - method public float getPostGain(); - method public float getPreGain(); - method public float getRatio(); - method public float getReleaseTime(); - method public float getThreshold(); - method public void setAttackTime(float); - method public void setExpanderRatio(float); - method public void setKneeWidth(float); - method public void setNoiseGateThreshold(float); - method public void setPostGain(float); - method public void setPreGain(float); - method public void setRatio(float); - method public void setReleaseTime(float); - method public void setThreshold(float); - } - - public static class DynamicsProcessing.Stage { - ctor public DynamicsProcessing.Stage(boolean, boolean); - method public boolean isEnabled(); - method public boolean isInUse(); - method public void setEnabled(boolean); - } - - public class EnvironmentalReverb extends android.media.audiofx.AudioEffect { - ctor public EnvironmentalReverb(int, int) throws java.lang.IllegalArgumentException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; - method public short getDecayHFRatio() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public int getDecayTime() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getDensity() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getDiffusion() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public android.media.audiofx.EnvironmentalReverb.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public int getReflectionsDelay() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getReflectionsLevel() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public int getReverbDelay() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getReverbLevel() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getRoomHFLevel() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getRoomLevel() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setDecayHFRatio(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setDecayTime(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setDensity(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setDiffusion(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setParameterListener(android.media.audiofx.EnvironmentalReverb.OnParameterChangeListener); - method public void setProperties(android.media.audiofx.EnvironmentalReverb.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setReflectionsDelay(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setReflectionsLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setReverbDelay(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setReverbLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setRoomHFLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setRoomLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - field public static final int PARAM_DECAY_HF_RATIO = 3; // 0x3 - field public static final int PARAM_DECAY_TIME = 2; // 0x2 - field public static final int PARAM_DENSITY = 9; // 0x9 - field public static final int PARAM_DIFFUSION = 8; // 0x8 - field public static final int PARAM_REFLECTIONS_DELAY = 5; // 0x5 - field public static final int PARAM_REFLECTIONS_LEVEL = 4; // 0x4 - field public static final int PARAM_REVERB_DELAY = 7; // 0x7 - field public static final int PARAM_REVERB_LEVEL = 6; // 0x6 - field public static final int PARAM_ROOM_HF_LEVEL = 1; // 0x1 - field public static final int PARAM_ROOM_LEVEL = 0; // 0x0 - } - - public static interface EnvironmentalReverb.OnParameterChangeListener { - method public void onParameterChange(android.media.audiofx.EnvironmentalReverb, int, int, int); - } - - public static class EnvironmentalReverb.Settings { - ctor public EnvironmentalReverb.Settings(); - ctor public EnvironmentalReverb.Settings(String); - field public short decayHFRatio; - field public int decayTime; - field public short density; - field public short diffusion; - field public int reflectionsDelay; - field public short reflectionsLevel; - field public int reverbDelay; - field public short reverbLevel; - field public short roomHFLevel; - field public short roomLevel; - } - - public class Equalizer extends android.media.audiofx.AudioEffect { - ctor public Equalizer(int, int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; - method public short getBand(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public int[] getBandFreqRange(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getBandLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short[] getBandLevelRange() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public int getCenterFreq(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getCurrentPreset() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getNumberOfBands() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public short getNumberOfPresets() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public String getPresetName(short); - method public android.media.audiofx.Equalizer.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setBandLevel(short, short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setParameterListener(android.media.audiofx.Equalizer.OnParameterChangeListener); - method public void setProperties(android.media.audiofx.Equalizer.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void usePreset(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - field public static final int PARAM_BAND_FREQ_RANGE = 4; // 0x4 - field public static final int PARAM_BAND_LEVEL = 2; // 0x2 - field public static final int PARAM_CENTER_FREQ = 3; // 0x3 - field public static final int PARAM_CURRENT_PRESET = 6; // 0x6 - field public static final int PARAM_GET_BAND = 5; // 0x5 - field public static final int PARAM_GET_NUM_OF_PRESETS = 7; // 0x7 - field public static final int PARAM_GET_PRESET_NAME = 8; // 0x8 - field public static final int PARAM_LEVEL_RANGE = 1; // 0x1 - field public static final int PARAM_NUM_BANDS = 0; // 0x0 - field public static final int PARAM_STRING_SIZE_MAX = 32; // 0x20 - } - - public static interface Equalizer.OnParameterChangeListener { - method public void onParameterChange(android.media.audiofx.Equalizer, int, int, int, int); - } - - public static class Equalizer.Settings { - ctor public Equalizer.Settings(); - ctor public Equalizer.Settings(String); - field public short[] bandLevels; - field public short curPreset; - field public short numBands; - } - - public class HapticGenerator extends android.media.audiofx.AudioEffect implements java.lang.AutoCloseable { - method public void close(); - method @NonNull public static android.media.audiofx.HapticGenerator create(int); - method public static boolean isAvailable(); - method public int setEnabled(boolean); - } - - public class LoudnessEnhancer extends android.media.audiofx.AudioEffect { - ctor public LoudnessEnhancer(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; - method public float getTargetGain() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setTargetGain(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - field public static final int PARAM_TARGET_GAIN_MB = 0; // 0x0 - } - - public class NoiseSuppressor extends android.media.audiofx.AudioEffect { - method public static android.media.audiofx.NoiseSuppressor create(int); - method public static boolean isAvailable(); - } - - public class PresetReverb extends android.media.audiofx.AudioEffect { - ctor public PresetReverb(int, int) throws java.lang.IllegalArgumentException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; - method public short getPreset() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public android.media.audiofx.PresetReverb.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setParameterListener(android.media.audiofx.PresetReverb.OnParameterChangeListener); - method public void setPreset(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method public void setProperties(android.media.audiofx.PresetReverb.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - field public static final int PARAM_PRESET = 0; // 0x0 - field public static final short PRESET_LARGEHALL = 5; // 0x5 - field public static final short PRESET_LARGEROOM = 3; // 0x3 - field public static final short PRESET_MEDIUMHALL = 4; // 0x4 - field public static final short PRESET_MEDIUMROOM = 2; // 0x2 - field public static final short PRESET_NONE = 0; // 0x0 - field public static final short PRESET_PLATE = 6; // 0x6 - field public static final short PRESET_SMALLROOM = 1; // 0x1 - } - - public static interface PresetReverb.OnParameterChangeListener { - method public void onParameterChange(android.media.audiofx.PresetReverb, int, int, short); - } - - public static class PresetReverb.Settings { - ctor public PresetReverb.Settings(); - ctor public PresetReverb.Settings(String); - field public short preset; - } - - @Deprecated public class Virtualizer extends android.media.audiofx.AudioEffect { - ctor @Deprecated public Virtualizer(int, int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; - method @Deprecated public boolean canVirtualize(int, int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method @Deprecated public boolean forceVirtualizationMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method @Deprecated public android.media.audiofx.Virtualizer.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method @Deprecated public short getRoundedStrength() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method @Deprecated public boolean getSpeakerAngles(int, int, int[]) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method @Deprecated public boolean getStrengthSupported(); - method @Deprecated public int getVirtualizationMode() throws java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method @Deprecated public void setParameterListener(android.media.audiofx.Virtualizer.OnParameterChangeListener); - method @Deprecated public void setProperties(android.media.audiofx.Virtualizer.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - method @Deprecated public void setStrength(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; - field @Deprecated public static final int PARAM_STRENGTH = 1; // 0x1 - field @Deprecated public static final int PARAM_STRENGTH_SUPPORTED = 0; // 0x0 - field @Deprecated public static final int VIRTUALIZATION_MODE_AUTO = 1; // 0x1 - field @Deprecated public static final int VIRTUALIZATION_MODE_BINAURAL = 2; // 0x2 - field @Deprecated public static final int VIRTUALIZATION_MODE_OFF = 0; // 0x0 - field @Deprecated public static final int VIRTUALIZATION_MODE_TRANSAURAL = 3; // 0x3 - } - - @Deprecated public static interface Virtualizer.OnParameterChangeListener { - method @Deprecated public void onParameterChange(android.media.audiofx.Virtualizer, int, int, short); - } - - @Deprecated public static class Virtualizer.Settings { - ctor @Deprecated public Virtualizer.Settings(); - ctor @Deprecated public Virtualizer.Settings(String); - field @Deprecated public short strength; - } - - public class Visualizer { - ctor public Visualizer(int) throws java.lang.RuntimeException, java.lang.UnsupportedOperationException; - method protected void finalize(); - method public int getCaptureSize() throws java.lang.IllegalStateException; - method public static int[] getCaptureSizeRange(); - method public boolean getEnabled(); - method public int getFft(byte[]) throws java.lang.IllegalStateException; - method public static int getMaxCaptureRate(); - method public int getMeasurementMode() throws java.lang.IllegalStateException; - method public int getMeasurementPeakRms(android.media.audiofx.Visualizer.MeasurementPeakRms); - method public int getSamplingRate() throws java.lang.IllegalStateException; - method public int getScalingMode() throws java.lang.IllegalStateException; - method public int getWaveForm(byte[]) throws java.lang.IllegalStateException; - method public void release(); - method public int setCaptureSize(int) throws java.lang.IllegalStateException; - method public int setDataCaptureListener(@Nullable android.media.audiofx.Visualizer.OnDataCaptureListener, int, boolean, boolean); - method public int setEnabled(boolean) throws java.lang.IllegalStateException; - method public int setMeasurementMode(int) throws java.lang.IllegalStateException; - method public int setScalingMode(int) throws java.lang.IllegalStateException; - field public static final int ALREADY_EXISTS = -2; // 0xfffffffe - field public static final int ERROR = -1; // 0xffffffff - field public static final int ERROR_BAD_VALUE = -4; // 0xfffffffc - field public static final int ERROR_DEAD_OBJECT = -7; // 0xfffffff9 - field public static final int ERROR_INVALID_OPERATION = -5; // 0xfffffffb - field public static final int ERROR_NO_INIT = -3; // 0xfffffffd - field public static final int ERROR_NO_MEMORY = -6; // 0xfffffffa - field public static final int MEASUREMENT_MODE_NONE = 0; // 0x0 - field public static final int MEASUREMENT_MODE_PEAK_RMS = 1; // 0x1 - field public static final int SCALING_MODE_AS_PLAYED = 1; // 0x1 - field public static final int SCALING_MODE_NORMALIZED = 0; // 0x0 - field public static final int STATE_ENABLED = 2; // 0x2 - field public static final int STATE_INITIALIZED = 1; // 0x1 - field public static final int STATE_UNINITIALIZED = 0; // 0x0 - field public static final int SUCCESS = 0; // 0x0 - } - - public static final class Visualizer.MeasurementPeakRms { - ctor public Visualizer.MeasurementPeakRms(); - field public int mPeak; - field public int mRms; - } - - public static interface Visualizer.OnDataCaptureListener { - method public void onFftDataCapture(android.media.audiofx.Visualizer, byte[], int); - method public void onWaveFormDataCapture(android.media.audiofx.Visualizer, byte[], int); - } - -} - -package android.media.browse { - - public final class MediaBrowser { - ctor public MediaBrowser(android.content.Context, android.content.ComponentName, android.media.browse.MediaBrowser.ConnectionCallback, android.os.Bundle); - method public void connect(); - method public void disconnect(); - method @Nullable public android.os.Bundle getExtras(); - method public void getItem(@NonNull String, @NonNull android.media.browse.MediaBrowser.ItemCallback); - method @NonNull public String getRoot(); - method @NonNull public android.content.ComponentName getServiceComponent(); - method @NonNull public android.media.session.MediaSession.Token getSessionToken(); - method public boolean isConnected(); - method public void subscribe(@NonNull String, @NonNull android.media.browse.MediaBrowser.SubscriptionCallback); - method public void subscribe(@NonNull String, @NonNull android.os.Bundle, @NonNull android.media.browse.MediaBrowser.SubscriptionCallback); - method public void unsubscribe(@NonNull String); - method public void unsubscribe(@NonNull String, @NonNull android.media.browse.MediaBrowser.SubscriptionCallback); - field public static final String EXTRA_PAGE = "android.media.browse.extra.PAGE"; - field public static final String EXTRA_PAGE_SIZE = "android.media.browse.extra.PAGE_SIZE"; - } - - public static class MediaBrowser.ConnectionCallback { - ctor public MediaBrowser.ConnectionCallback(); - method public void onConnected(); - method public void onConnectionFailed(); - method public void onConnectionSuspended(); - } - - public abstract static class MediaBrowser.ItemCallback { - ctor public MediaBrowser.ItemCallback(); - method public void onError(@NonNull String); - method public void onItemLoaded(android.media.browse.MediaBrowser.MediaItem); - } - - public static class MediaBrowser.MediaItem implements android.os.Parcelable { - ctor public MediaBrowser.MediaItem(@NonNull android.media.MediaDescription, int); - method public int describeContents(); - method @NonNull public android.media.MediaDescription getDescription(); - method public int getFlags(); - method @Nullable public String getMediaId(); - method public boolean isBrowsable(); - method public boolean isPlayable(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_BROWSABLE = 1; // 0x1 - field public static final int FLAG_PLAYABLE = 2; // 0x2 - } - - public abstract static class MediaBrowser.SubscriptionCallback { - ctor public MediaBrowser.SubscriptionCallback(); - method public void onChildrenLoaded(@NonNull String, @NonNull java.util.List); - method public void onChildrenLoaded(@NonNull String, @NonNull java.util.List, @NonNull android.os.Bundle); - method public void onError(@NonNull String); - method public void onError(@NonNull String, @NonNull android.os.Bundle); - } - -} - -package android.media.effect { - - public abstract class Effect { - ctor public Effect(); - method public abstract void apply(int, int, int, int); - method public abstract String getName(); - method public abstract void release(); - method public abstract void setParameter(String, Object); - method public void setUpdateListener(android.media.effect.EffectUpdateListener); - } - - public class EffectContext { - method public static android.media.effect.EffectContext createWithCurrentGlContext(); - method public android.media.effect.EffectFactory getFactory(); - method public void release(); - } - - public class EffectFactory { - method public android.media.effect.Effect createEffect(String); - method public static boolean isEffectSupported(String); - field public static final String EFFECT_AUTOFIX = "android.media.effect.effects.AutoFixEffect"; - field public static final String EFFECT_BACKDROPPER = "android.media.effect.effects.BackDropperEffect"; - field public static final String EFFECT_BITMAPOVERLAY = "android.media.effect.effects.BitmapOverlayEffect"; - field public static final String EFFECT_BLACKWHITE = "android.media.effect.effects.BlackWhiteEffect"; - field public static final String EFFECT_BRIGHTNESS = "android.media.effect.effects.BrightnessEffect"; - field public static final String EFFECT_CONTRAST = "android.media.effect.effects.ContrastEffect"; - field public static final String EFFECT_CROP = "android.media.effect.effects.CropEffect"; - field public static final String EFFECT_CROSSPROCESS = "android.media.effect.effects.CrossProcessEffect"; - field public static final String EFFECT_DOCUMENTARY = "android.media.effect.effects.DocumentaryEffect"; - field public static final String EFFECT_DUOTONE = "android.media.effect.effects.DuotoneEffect"; - field public static final String EFFECT_FILLLIGHT = "android.media.effect.effects.FillLightEffect"; - field public static final String EFFECT_FISHEYE = "android.media.effect.effects.FisheyeEffect"; - field public static final String EFFECT_FLIP = "android.media.effect.effects.FlipEffect"; - field public static final String EFFECT_GRAIN = "android.media.effect.effects.GrainEffect"; - field public static final String EFFECT_GRAYSCALE = "android.media.effect.effects.GrayscaleEffect"; - field public static final String EFFECT_LOMOISH = "android.media.effect.effects.LomoishEffect"; - field public static final String EFFECT_NEGATIVE = "android.media.effect.effects.NegativeEffect"; - field public static final String EFFECT_POSTERIZE = "android.media.effect.effects.PosterizeEffect"; - field public static final String EFFECT_REDEYE = "android.media.effect.effects.RedEyeEffect"; - field public static final String EFFECT_ROTATE = "android.media.effect.effects.RotateEffect"; - field public static final String EFFECT_SATURATE = "android.media.effect.effects.SaturateEffect"; - field public static final String EFFECT_SEPIA = "android.media.effect.effects.SepiaEffect"; - field public static final String EFFECT_SHARPEN = "android.media.effect.effects.SharpenEffect"; - field public static final String EFFECT_STRAIGHTEN = "android.media.effect.effects.StraightenEffect"; - field public static final String EFFECT_TEMPERATURE = "android.media.effect.effects.ColorTemperatureEffect"; - field public static final String EFFECT_TINT = "android.media.effect.effects.TintEffect"; - field public static final String EFFECT_VIGNETTE = "android.media.effect.effects.VignetteEffect"; - } - - public interface EffectUpdateListener { - method public void onEffectUpdated(android.media.effect.Effect, Object); - } - -} - -package android.media.metrics { - - public final class BundleSession implements java.lang.AutoCloseable { - method public void close(); - method @NonNull public android.media.metrics.LogSessionId getSessionId(); - method public void reportBundleMetrics(@NonNull android.os.PersistableBundle); - field public static final String KEY_STATSD_ATOM = "bundlesession-statsd-atom"; - } - - @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public final class EditingEndedEvent extends android.media.metrics.Event implements android.os.Parcelable { - method public int describeContents(); - method public int getErrorCode(); - method @Nullable public String getExporterName(); - method public float getFinalProgressPercent(); - method public int getFinalState(); - method @NonNull public java.util.List getInputMediaItemInfos(); - method @Nullable public String getMuxerName(); - method public long getOperationTypes(); - method @Nullable public android.media.metrics.MediaItemInfo getOutputMediaItemInfo(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ERROR_CODE_AUDIO_PROCESSING_FAILED = 18; // 0x12 - field public static final int ERROR_CODE_DECODER_INIT_FAILED = 11; // 0xb - field public static final int ERROR_CODE_DECODING_FAILED = 12; // 0xc - field public static final int ERROR_CODE_DECODING_FORMAT_UNSUPPORTED = 13; // 0xd - field public static final int ERROR_CODE_ENCODER_INIT_FAILED = 14; // 0xe - field public static final int ERROR_CODE_ENCODING_FAILED = 15; // 0xf - field public static final int ERROR_CODE_ENCODING_FORMAT_UNSUPPORTED = 16; // 0x10 - field public static final int ERROR_CODE_FAILED_RUNTIME_CHECK = 2; // 0x2 - field public static final int ERROR_CODE_IO_BAD_HTTP_STATUS = 6; // 0x6 - field public static final int ERROR_CODE_IO_CLEARTEXT_NOT_PERMITTED = 9; // 0x9 - field public static final int ERROR_CODE_IO_FILE_NOT_FOUND = 7; // 0x7 - field public static final int ERROR_CODE_IO_NETWORK_CONNECTION_FAILED = 4; // 0x4 - field public static final int ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT = 5; // 0x5 - field public static final int ERROR_CODE_IO_NO_PERMISSION = 8; // 0x8 - field public static final int ERROR_CODE_IO_READ_POSITION_OUT_OF_RANGE = 10; // 0xa - field public static final int ERROR_CODE_IO_UNSPECIFIED = 3; // 0x3 - field public static final int ERROR_CODE_MUXING_FAILED = 19; // 0x13 - field public static final int ERROR_CODE_NONE = 1; // 0x1 - field public static final int ERROR_CODE_VIDEO_FRAME_PROCESSING_FAILED = 17; // 0x11 - field public static final int FINAL_STATE_CANCELED = 2; // 0x2 - field public static final int FINAL_STATE_ERROR = 3; // 0x3 - field public static final int FINAL_STATE_SUCCEEDED = 1; // 0x1 - field public static final long OPERATION_TYPE_AUDIO_EDIT = 8L; // 0x8L - field public static final long OPERATION_TYPE_AUDIO_TRANSCODE = 2L; // 0x2L - field public static final long OPERATION_TYPE_AUDIO_TRANSMUX = 32L; // 0x20L - field public static final long OPERATION_TYPE_PAUSED = 64L; // 0x40L - field public static final long OPERATION_TYPE_RESUMED = 128L; // 0x80L - field public static final long OPERATION_TYPE_VIDEO_EDIT = 4L; // 0x4L - field public static final long OPERATION_TYPE_VIDEO_TRANSCODE = 1L; // 0x1L - field public static final long OPERATION_TYPE_VIDEO_TRANSMUX = 16L; // 0x10L - field public static final int PROGRESS_PERCENT_UNKNOWN = -1; // 0xffffffff - field public static final int TIME_SINCE_CREATED_UNKNOWN = -1; // 0xffffffff - } - - @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public static final class EditingEndedEvent.Builder { - ctor public EditingEndedEvent.Builder(int); - method @NonNull public android.media.metrics.EditingEndedEvent.Builder addInputMediaItemInfo(@NonNull android.media.metrics.MediaItemInfo); - method @NonNull public android.media.metrics.EditingEndedEvent.Builder addOperationType(long); - method @NonNull public android.media.metrics.EditingEndedEvent build(); - method @NonNull public android.media.metrics.EditingEndedEvent.Builder setErrorCode(int); - method @NonNull public android.media.metrics.EditingEndedEvent.Builder setExporterName(@NonNull String); - method @NonNull public android.media.metrics.EditingEndedEvent.Builder setFinalProgressPercent(@FloatRange(from=0, to=100) float); - method @NonNull public android.media.metrics.EditingEndedEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); - method @NonNull public android.media.metrics.EditingEndedEvent.Builder setMuxerName(@NonNull String); - method @NonNull public android.media.metrics.EditingEndedEvent.Builder setOutputMediaItemInfo(@NonNull android.media.metrics.MediaItemInfo); - method @NonNull public android.media.metrics.EditingEndedEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=android.media.metrics.EditingEndedEvent.TIME_SINCE_CREATED_UNKNOWN) long); - } - - public final class EditingSession implements java.lang.AutoCloseable { - method public void close(); - method @NonNull public android.media.metrics.LogSessionId getSessionId(); - method @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public void reportEditingEndedEvent(@NonNull android.media.metrics.EditingEndedEvent); - } - - public abstract class Event { - method @NonNull public android.os.Bundle getMetricsBundle(); - method @IntRange(from=0xffffffff) public long getTimeSinceCreatedMillis(); - } - - public final class LogSessionId { - method @NonNull public String getStringId(); - field @NonNull public static final android.media.metrics.LogSessionId LOG_SESSION_ID_NONE; - } - - @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public final class MediaItemInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getAudioChannelCount(); - method public long getAudioSampleCount(); - method public int getAudioSampleRateHz(); - method public long getClipDurationMillis(); - method @NonNull public java.util.List getCodecNames(); - method @Nullable public String getContainerMimeType(); - method public long getDataTypes(); - method public long getDurationMillis(); - method @NonNull public java.util.List getSampleMimeTypes(); - method public int getSourceType(); - method public int getVideoDataSpace(); - method public float getVideoFrameRate(); - method public long getVideoSampleCount(); - method @NonNull public android.util.Size getVideoSize(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final long DATA_TYPE_AUDIO = 4L; // 0x4L - field public static final long DATA_TYPE_DEPTH = 16L; // 0x10L - field public static final long DATA_TYPE_GAIN_MAP = 32L; // 0x20L - field public static final long DATA_TYPE_GAPLESS = 256L; // 0x100L - field public static final long DATA_TYPE_HIGH_DYNAMIC_RANGE_VIDEO = 1024L; // 0x400L - field public static final long DATA_TYPE_HIGH_FRAME_RATE = 64L; // 0x40L - field public static final long DATA_TYPE_IMAGE = 1L; // 0x1L - field public static final long DATA_TYPE_METADATA = 8L; // 0x8L - field public static final long DATA_TYPE_SPATIAL_AUDIO = 512L; // 0x200L - field public static final long DATA_TYPE_SPEED_SETTING_CUE_POINTS = 128L; // 0x80L - field public static final long DATA_TYPE_VIDEO = 2L; // 0x2L - field public static final int SOURCE_TYPE_CAMERA = 2; // 0x2 - field public static final int SOURCE_TYPE_EDITING_SESSION = 3; // 0x3 - field public static final int SOURCE_TYPE_GALLERY = 1; // 0x1 - field public static final int SOURCE_TYPE_GENERATED = 7; // 0x7 - field public static final int SOURCE_TYPE_LOCAL_FILE = 4; // 0x4 - field public static final int SOURCE_TYPE_REMOTE_FILE = 5; // 0x5 - field public static final int SOURCE_TYPE_REMOTE_LIVE_STREAM = 6; // 0x6 - field public static final int SOURCE_TYPE_UNSPECIFIED = 0; // 0x0 - field public static final int VALUE_UNSPECIFIED = -1; // 0xffffffff - } - - @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public static final class MediaItemInfo.Builder { - ctor public MediaItemInfo.Builder(); - method @NonNull public android.media.metrics.MediaItemInfo.Builder addCodecName(@NonNull String); - method @NonNull public android.media.metrics.MediaItemInfo.Builder addDataType(long); - method @NonNull public android.media.metrics.MediaItemInfo.Builder addSampleMimeType(@NonNull String); - method @NonNull public android.media.metrics.MediaItemInfo build(); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setAudioChannelCount(@IntRange(from=0) int); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setAudioSampleCount(@IntRange(from=0) long); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setAudioSampleRateHz(@IntRange(from=0) int); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setClipDurationMillis(long); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setContainerMimeType(@NonNull String); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setDurationMillis(long); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setSourceType(int); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setVideoDataSpace(int); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setVideoFrameRate(@FloatRange(from=0) float); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setVideoSampleCount(@IntRange(from=0) long); - method @NonNull public android.media.metrics.MediaItemInfo.Builder setVideoSize(@NonNull android.util.Size); - } - - public final class MediaMetricsManager { - method @NonNull public android.media.metrics.BundleSession createBundleSession(); - method @NonNull public android.media.metrics.EditingSession createEditingSession(); - method @NonNull public android.media.metrics.PlaybackSession createPlaybackSession(); - method @NonNull public android.media.metrics.RecordingSession createRecordingSession(); - method @NonNull public android.media.metrics.TranscodingSession createTranscodingSession(); - method @NonNull public void releaseSessionId(@NonNull String); - field public static final long INVALID_TIMESTAMP = -1L; // 0xffffffffffffffffL - } - - public final class NetworkEvent extends android.media.metrics.Event implements android.os.Parcelable { - method public int describeContents(); - method public int getNetworkType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int NETWORK_TYPE_2G = 4; // 0x4 - field public static final int NETWORK_TYPE_3G = 5; // 0x5 - field public static final int NETWORK_TYPE_4G = 6; // 0x6 - field public static final int NETWORK_TYPE_5G_NSA = 7; // 0x7 - field public static final int NETWORK_TYPE_5G_SA = 8; // 0x8 - field public static final int NETWORK_TYPE_ETHERNET = 3; // 0x3 - field public static final int NETWORK_TYPE_OFFLINE = 9; // 0x9 - field public static final int NETWORK_TYPE_OTHER = 1; // 0x1 - field public static final int NETWORK_TYPE_UNKNOWN = 0; // 0x0 - field public static final int NETWORK_TYPE_WIFI = 2; // 0x2 - } - - public static final class NetworkEvent.Builder { - ctor public NetworkEvent.Builder(); - method @NonNull public android.media.metrics.NetworkEvent build(); - method @NonNull public android.media.metrics.NetworkEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); - method @NonNull public android.media.metrics.NetworkEvent.Builder setNetworkType(int); - method @NonNull public android.media.metrics.NetworkEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=0xffffffff) long); - } - - public final class PlaybackErrorEvent extends android.media.metrics.Event implements android.os.Parcelable { - method public int describeContents(); - method public int getErrorCode(); - method @IntRange(from=java.lang.Integer.MIN_VALUE, to=java.lang.Integer.MAX_VALUE) public int getSubErrorCode(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ERROR_AUDIO_TRACK_INIT_FAILED = 17; // 0x11 - field public static final int ERROR_AUDIO_TRACK_OTHER = 19; // 0x13 - field public static final int ERROR_AUDIO_TRACK_WRITE_FAILED = 18; // 0x12 - field public static final int ERROR_DECODER_INIT_FAILED = 13; // 0xd - field public static final int ERROR_DECODING_FAILED = 14; // 0xe - field public static final int ERROR_DECODING_FORMAT_EXCEEDS_CAPABILITIES = 15; // 0xf - field public static final int ERROR_DECODING_FORMAT_UNSUPPORTED = 35; // 0x23 - field public static final int ERROR_DECODING_OTHER = 16; // 0x10 - field public static final int ERROR_DRM_CONTENT_ERROR = 28; // 0x1c - field public static final int ERROR_DRM_DEVICE_REVOKED = 29; // 0x1d - field public static final int ERROR_DRM_DISALLOWED_OPERATION = 26; // 0x1a - field public static final int ERROR_DRM_LICENSE_ACQUISITION_FAILED = 25; // 0x19 - field public static final int ERROR_DRM_OTHER = 30; // 0x1e - field public static final int ERROR_DRM_PROVISIONING_FAILED = 24; // 0x18 - field public static final int ERROR_DRM_SCHEME_UNSUPPORTED = 23; // 0x17 - field public static final int ERROR_DRM_SYSTEM_ERROR = 27; // 0x1b - field public static final int ERROR_IO_BAD_HTTP_STATUS = 5; // 0x5 - field public static final int ERROR_IO_CONNECTION_CLOSED = 8; // 0x8 - field public static final int ERROR_IO_CONNECTION_TIMEOUT = 7; // 0x7 - field public static final int ERROR_IO_DNS_FAILED = 6; // 0x6 - field public static final int ERROR_IO_FILE_NOT_FOUND = 31; // 0x1f - field public static final int ERROR_IO_NETWORK_CONNECTION_FAILED = 4; // 0x4 - field public static final int ERROR_IO_NETWORK_UNAVAILABLE = 3; // 0x3 - field public static final int ERROR_IO_NO_PERMISSION = 32; // 0x20 - field public static final int ERROR_IO_OTHER = 9; // 0x9 - field public static final int ERROR_OTHER = 1; // 0x1 - field public static final int ERROR_PARSING_CONTAINER_MALFORMED = 11; // 0xb - field public static final int ERROR_PARSING_CONTAINER_UNSUPPORTED = 34; // 0x22 - field public static final int ERROR_PARSING_MANIFEST_MALFORMED = 10; // 0xa - field public static final int ERROR_PARSING_MANIFEST_UNSUPPORTED = 33; // 0x21 - field public static final int ERROR_PARSING_OTHER = 12; // 0xc - field public static final int ERROR_PLAYER_BEHIND_LIVE_WINDOW = 21; // 0x15 - field public static final int ERROR_PLAYER_OTHER = 22; // 0x16 - field public static final int ERROR_PLAYER_REMOTE = 20; // 0x14 - field public static final int ERROR_RUNTIME = 2; // 0x2 - field public static final int ERROR_UNKNOWN = 0; // 0x0 - } - - public static final class PlaybackErrorEvent.Builder { - ctor public PlaybackErrorEvent.Builder(); - method @NonNull public android.media.metrics.PlaybackErrorEvent build(); - method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setErrorCode(int); - method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setException(@NonNull Exception); - method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); - method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setSubErrorCode(@IntRange(from=java.lang.Integer.MIN_VALUE, to=java.lang.Integer.MAX_VALUE) int); - method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=0xffffffff) long); - } - - public final class PlaybackMetrics implements android.os.Parcelable { - method public int describeContents(); - method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getAudioUnderrunCount(); - method public int getContentType(); - method @NonNull public byte[] getDrmSessionId(); - method public int getDrmType(); - method @NonNull public long[] getExperimentIds(); - method @IntRange(from=0xffffffff) public long getLocalBytesRead(); - method @IntRange(from=0xffffffff) public long getMediaDurationMillis(); - method @NonNull public android.os.Bundle getMetricsBundle(); - method @IntRange(from=0xffffffff) public long getNetworkBytesRead(); - method @IntRange(from=0xffffffff) public long getNetworkTransferDurationMillis(); - method public int getPlaybackType(); - method @Nullable public String getPlayerName(); - method @Nullable public String getPlayerVersion(); - method public int getStreamSource(); - method public int getStreamType(); - method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getVideoFramesDropped(); - method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getVideoFramesPlayed(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CONTENT_TYPE_AD = 2; // 0x2 - field public static final int CONTENT_TYPE_MAIN = 1; // 0x1 - field public static final int CONTENT_TYPE_OTHER = 3; // 0x3 - field public static final int CONTENT_TYPE_UNKNOWN = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DRM_TYPE_CLEARKEY = 6; // 0x6 - field public static final int DRM_TYPE_NONE = 0; // 0x0 - field public static final int DRM_TYPE_OTHER = 1; // 0x1 - field public static final int DRM_TYPE_PLAY_READY = 2; // 0x2 - field public static final int DRM_TYPE_WIDEVINE_L1 = 3; // 0x3 - field public static final int DRM_TYPE_WIDEVINE_L3 = 4; // 0x4 - field public static final int DRM_TYPE_WV_L3_FALLBACK = 5; // 0x5 - field public static final int PLAYBACK_TYPE_LIVE = 2; // 0x2 - field public static final int PLAYBACK_TYPE_OTHER = 3; // 0x3 - field public static final int PLAYBACK_TYPE_UNKNOWN = 0; // 0x0 - field public static final int PLAYBACK_TYPE_VOD = 1; // 0x1 - field public static final int STREAM_SOURCE_DEVICE = 2; // 0x2 - field public static final int STREAM_SOURCE_MIXED = 3; // 0x3 - field public static final int STREAM_SOURCE_NETWORK = 1; // 0x1 - field public static final int STREAM_SOURCE_UNKNOWN = 0; // 0x0 - field public static final int STREAM_TYPE_DASH = 3; // 0x3 - field public static final int STREAM_TYPE_HLS = 4; // 0x4 - field public static final int STREAM_TYPE_OTHER = 1; // 0x1 - field public static final int STREAM_TYPE_PROGRESSIVE = 2; // 0x2 - field public static final int STREAM_TYPE_SS = 5; // 0x5 - field public static final int STREAM_TYPE_UNKNOWN = 0; // 0x0 - } - - public static final class PlaybackMetrics.Builder { - ctor public PlaybackMetrics.Builder(); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder addExperimentId(long); - method @NonNull public android.media.metrics.PlaybackMetrics build(); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setAudioUnderrunCount(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setContentType(int); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setDrmSessionId(@NonNull byte[]); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setDrmType(int); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setLocalBytesRead(@IntRange(from=0xffffffff) long); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setMediaDurationMillis(@IntRange(from=0xffffffff) long); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setMetricsBundle(@NonNull android.os.Bundle); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setNetworkBytesRead(@IntRange(from=0xffffffff) long); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setNetworkTransferDurationMillis(@IntRange(from=0xffffffff) long); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setPlaybackType(int); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setPlayerName(@NonNull String); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setPlayerVersion(@NonNull String); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setStreamSource(int); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setStreamType(int); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setVideoFramesDropped(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); - method @NonNull public android.media.metrics.PlaybackMetrics.Builder setVideoFramesPlayed(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); - } - - public final class PlaybackSession implements java.lang.AutoCloseable { - method public void close(); - method @NonNull public android.media.metrics.LogSessionId getSessionId(); - method public void reportNetworkEvent(@NonNull android.media.metrics.NetworkEvent); - method public void reportPlaybackErrorEvent(@NonNull android.media.metrics.PlaybackErrorEvent); - method public void reportPlaybackMetrics(@NonNull android.media.metrics.PlaybackMetrics); - method public void reportPlaybackStateEvent(@NonNull android.media.metrics.PlaybackStateEvent); - method public void reportTrackChangeEvent(@NonNull android.media.metrics.TrackChangeEvent); - } - - public final class PlaybackStateEvent extends android.media.metrics.Event implements android.os.Parcelable { - method public int describeContents(); - method public int getState(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STATE_ABANDONED = 15; // 0xf - field public static final int STATE_BUFFERING = 6; // 0x6 - field public static final int STATE_ENDED = 11; // 0xb - field public static final int STATE_FAILED = 13; // 0xd - field public static final int STATE_INTERRUPTED_BY_AD = 14; // 0xe - field public static final int STATE_JOINING_BACKGROUND = 1; // 0x1 - field public static final int STATE_JOINING_FOREGROUND = 2; // 0x2 - field public static final int STATE_NOT_STARTED = 0; // 0x0 - field public static final int STATE_PAUSED = 4; // 0x4 - field public static final int STATE_PAUSED_BUFFERING = 7; // 0x7 - field public static final int STATE_PLAYING = 3; // 0x3 - field public static final int STATE_SEEKING = 5; // 0x5 - field public static final int STATE_STOPPED = 12; // 0xc - field public static final int STATE_SUPPRESSED = 9; // 0x9 - field public static final int STATE_SUPPRESSED_BUFFERING = 10; // 0xa - } - - public static final class PlaybackStateEvent.Builder { - ctor public PlaybackStateEvent.Builder(); - method @NonNull public android.media.metrics.PlaybackStateEvent build(); - method @NonNull public android.media.metrics.PlaybackStateEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); - method @NonNull public android.media.metrics.PlaybackStateEvent.Builder setState(int); - method @NonNull public android.media.metrics.PlaybackStateEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=0xffffffff) long); - } - - public final class RecordingSession implements java.lang.AutoCloseable { - method public void close(); - method @NonNull public android.media.metrics.LogSessionId getSessionId(); - } - - public final class TrackChangeEvent extends android.media.metrics.Event implements android.os.Parcelable { - method public int describeContents(); - method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getAudioSampleRate(); - method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getBitrate(); - method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getChannelCount(); - method @Nullable public String getCodecName(); - method @Nullable public String getContainerMimeType(); - method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getHeight(); - method @Nullable public String getLanguage(); - method @Nullable public String getLanguageRegion(); - method @Nullable public String getSampleMimeType(); - method public int getTrackChangeReason(); - method public int getTrackState(); - method public int getTrackType(); - method @FloatRange(from=0xffffffff, to=java.lang.Float.MAX_VALUE) public float getVideoFrameRate(); - method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getWidth(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TRACK_CHANGE_REASON_ADAPTIVE = 4; // 0x4 - field public static final int TRACK_CHANGE_REASON_INITIAL = 2; // 0x2 - field public static final int TRACK_CHANGE_REASON_MANUAL = 3; // 0x3 - field public static final int TRACK_CHANGE_REASON_OTHER = 1; // 0x1 - field public static final int TRACK_CHANGE_REASON_UNKNOWN = 0; // 0x0 - field public static final int TRACK_STATE_OFF = 0; // 0x0 - field public static final int TRACK_STATE_ON = 1; // 0x1 - field public static final int TRACK_TYPE_AUDIO = 0; // 0x0 - field public static final int TRACK_TYPE_TEXT = 2; // 0x2 - field public static final int TRACK_TYPE_VIDEO = 1; // 0x1 - } - - public static final class TrackChangeEvent.Builder { - ctor public TrackChangeEvent.Builder(int); - method @NonNull public android.media.metrics.TrackChangeEvent build(); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setAudioSampleRate(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setBitrate(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setChannelCount(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setCodecName(@NonNull String); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setContainerMimeType(@NonNull String); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setHeight(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setLanguage(@NonNull String); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setLanguageRegion(@NonNull String); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setSampleMimeType(@NonNull String); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=0xffffffff) long); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setTrackChangeReason(int); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setTrackState(int); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setVideoFrameRate(@FloatRange(from=0xffffffff, to=java.lang.Float.MAX_VALUE) float); - method @NonNull public android.media.metrics.TrackChangeEvent.Builder setWidth(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); - } - - public final class TranscodingSession implements java.lang.AutoCloseable { - method public void close(); - method @NonNull public android.media.metrics.LogSessionId getSessionId(); - } - -} - -package android.media.midi { - - public final class MidiDevice implements java.io.Closeable { - method public void close() throws java.io.IOException; - method public android.media.midi.MidiDevice.MidiConnection connectPorts(android.media.midi.MidiInputPort, int); - method public android.media.midi.MidiDeviceInfo getInfo(); - method public android.media.midi.MidiInputPort openInputPort(int); - method public android.media.midi.MidiOutputPort openOutputPort(int); - } - - public class MidiDevice.MidiConnection implements java.io.Closeable { - method public void close() throws java.io.IOException; - } - - public final class MidiDeviceInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getDefaultProtocol(); - method public int getId(); - method public int getInputPortCount(); - method public int getOutputPortCount(); - method public android.media.midi.MidiDeviceInfo.PortInfo[] getPorts(); - method public android.os.Bundle getProperties(); - method public int getType(); - method public boolean isPrivate(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String PROPERTY_BLUETOOTH_DEVICE = "bluetooth_device"; - field public static final String PROPERTY_MANUFACTURER = "manufacturer"; - field public static final String PROPERTY_NAME = "name"; - field public static final String PROPERTY_PRODUCT = "product"; - field public static final String PROPERTY_SERIAL_NUMBER = "serial_number"; - field public static final String PROPERTY_USB_DEVICE = "usb_device"; - field public static final String PROPERTY_VERSION = "version"; - field public static final int PROTOCOL_UMP_MIDI_1_0_UP_TO_128_BITS = 3; // 0x3 - field public static final int PROTOCOL_UMP_MIDI_1_0_UP_TO_128_BITS_AND_JRTS = 4; // 0x4 - field public static final int PROTOCOL_UMP_MIDI_1_0_UP_TO_64_BITS = 1; // 0x1 - field public static final int PROTOCOL_UMP_MIDI_1_0_UP_TO_64_BITS_AND_JRTS = 2; // 0x2 - field public static final int PROTOCOL_UMP_MIDI_2_0 = 17; // 0x11 - field public static final int PROTOCOL_UMP_MIDI_2_0_AND_JRTS = 18; // 0x12 - field public static final int PROTOCOL_UMP_USE_MIDI_CI = 0; // 0x0 - field public static final int PROTOCOL_UNKNOWN = -1; // 0xffffffff - field public static final int TYPE_BLUETOOTH = 3; // 0x3 - field public static final int TYPE_USB = 1; // 0x1 - field public static final int TYPE_VIRTUAL = 2; // 0x2 - } - - public static final class MidiDeviceInfo.PortInfo { - method public String getName(); - method public int getPortNumber(); - method public int getType(); - field public static final int TYPE_INPUT = 1; // 0x1 - field public static final int TYPE_OUTPUT = 2; // 0x2 - } - - public abstract class MidiDeviceService extends android.app.Service { - ctor public MidiDeviceService(); - method public final android.media.midi.MidiDeviceInfo getDeviceInfo(); - method public final android.media.midi.MidiReceiver[] getOutputPortReceivers(); - method public android.os.IBinder onBind(android.content.Intent); - method public void onClose(); - method public void onDeviceStatusChanged(android.media.midi.MidiDeviceStatus); - method public abstract android.media.midi.MidiReceiver[] onGetInputPortReceivers(); - field public static final String SERVICE_INTERFACE = "android.media.midi.MidiDeviceService"; - } - - public final class MidiDeviceStatus implements android.os.Parcelable { - method public int describeContents(); - method public android.media.midi.MidiDeviceInfo getDeviceInfo(); - method public int getOutputPortOpenCount(int); - method public boolean isInputPortOpen(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class MidiInputPort extends android.media.midi.MidiReceiver implements java.io.Closeable { - method public void close() throws java.io.IOException; - method public int getPortNumber(); - method public void onSend(byte[], int, int, long) throws java.io.IOException; - } - - public final class MidiManager { - method @Deprecated public android.media.midi.MidiDeviceInfo[] getDevices(); - method @NonNull public java.util.Set getDevicesForTransport(int); - method public void openBluetoothDevice(android.bluetooth.BluetoothDevice, android.media.midi.MidiManager.OnDeviceOpenedListener, android.os.Handler); - method public void openDevice(android.media.midi.MidiDeviceInfo, android.media.midi.MidiManager.OnDeviceOpenedListener, android.os.Handler); - method @Deprecated public void registerDeviceCallback(android.media.midi.MidiManager.DeviceCallback, android.os.Handler); - method public void registerDeviceCallback(int, @NonNull java.util.concurrent.Executor, @NonNull android.media.midi.MidiManager.DeviceCallback); - method public void unregisterDeviceCallback(android.media.midi.MidiManager.DeviceCallback); - field public static final int TRANSPORT_MIDI_BYTE_STREAM = 1; // 0x1 - field public static final int TRANSPORT_UNIVERSAL_MIDI_PACKETS = 2; // 0x2 - } - - public static class MidiManager.DeviceCallback { - ctor public MidiManager.DeviceCallback(); - method public void onDeviceAdded(android.media.midi.MidiDeviceInfo); - method public void onDeviceRemoved(android.media.midi.MidiDeviceInfo); - method public void onDeviceStatusChanged(android.media.midi.MidiDeviceStatus); - } - - public static interface MidiManager.OnDeviceOpenedListener { - method public void onDeviceOpened(android.media.midi.MidiDevice); - } - - public final class MidiOutputPort extends android.media.midi.MidiSender implements java.io.Closeable { - method public void close() throws java.io.IOException; - method public int getPortNumber(); - method public void onConnect(android.media.midi.MidiReceiver); - method public void onDisconnect(android.media.midi.MidiReceiver); - } - - public abstract class MidiReceiver { - ctor public MidiReceiver(); - ctor public MidiReceiver(int); - method public void flush() throws java.io.IOException; - method public final int getMaxMessageSize(); - method public void onFlush() throws java.io.IOException; - method public abstract void onSend(byte[], int, int, long) throws java.io.IOException; - method public void send(byte[], int, int) throws java.io.IOException; - method public void send(byte[], int, int, long) throws java.io.IOException; - } - - public abstract class MidiSender { - ctor public MidiSender(); - method public void connect(android.media.midi.MidiReceiver); - method public void disconnect(android.media.midi.MidiReceiver); - method public abstract void onConnect(android.media.midi.MidiReceiver); - method public abstract void onDisconnect(android.media.midi.MidiReceiver); - } - - @FlaggedApi("android.media.midi.virtual_ump") public abstract class MidiUmpDeviceService extends android.app.Service { - ctor public MidiUmpDeviceService(); - method @FlaggedApi("android.media.midi.virtual_ump") @Nullable public final android.media.midi.MidiDeviceInfo getDeviceInfo(); - method @FlaggedApi("android.media.midi.virtual_ump") @NonNull public final java.util.List getOutputPortReceivers(); - method @FlaggedApi("android.media.midi.virtual_ump") @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); - method @FlaggedApi("android.media.midi.virtual_ump") public void onClose(); - method @FlaggedApi("android.media.midi.virtual_ump") public void onDeviceStatusChanged(@NonNull android.media.midi.MidiDeviceStatus); - method @FlaggedApi("android.media.midi.virtual_ump") @NonNull public abstract java.util.List onGetInputPortReceivers(); - field @FlaggedApi("android.media.midi.virtual_ump") public static final String SERVICE_INTERFACE = "android.media.midi.MidiUmpDeviceService"; - } - -} - -package android.media.projection { - - public final class MediaProjection { - method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull String, int, int, int, int, @Nullable android.view.Surface, @Nullable android.hardware.display.VirtualDisplay.Callback, @Nullable android.os.Handler); - method public void registerCallback(@NonNull android.media.projection.MediaProjection.Callback, @Nullable android.os.Handler); - method public void stop(); - method public void unregisterCallback(@NonNull android.media.projection.MediaProjection.Callback); - } - - public abstract static class MediaProjection.Callback { - ctor public MediaProjection.Callback(); - method public void onCapturedContentResize(int, int); - method public void onCapturedContentVisibilityChanged(boolean); - method public void onStop(); - } - - public final class MediaProjectionConfig implements android.os.Parcelable { - method @NonNull public static android.media.projection.MediaProjectionConfig createConfigForDefaultDisplay(); - method @NonNull public static android.media.projection.MediaProjectionConfig createConfigForUserChoice(); - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class MediaProjectionManager { - method @NonNull public android.content.Intent createScreenCaptureIntent(); - method @NonNull public android.content.Intent createScreenCaptureIntent(@NonNull android.media.projection.MediaProjectionConfig); - method @Nullable public android.media.projection.MediaProjection getMediaProjection(int, @NonNull android.content.Intent); - } - -} - -package android.media.quality { - - @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class ActiveProcessingPicture implements android.os.Parcelable { - ctor public ActiveProcessingPicture(int, @NonNull String); - method public int describeContents(); - method public int getId(); - method @NonNull public String getProfileId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class AmbientBacklightEvent implements android.os.Parcelable { - ctor public AmbientBacklightEvent(int, @Nullable android.media.quality.AmbientBacklightMetadata); - method public int describeContents(); - method public int getEventType(); - method @Nullable public android.media.quality.AmbientBacklightMetadata getMetadata(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int AMBIENT_BACKLIGHT_EVENT_DISABLED = 2; // 0x2 - field public static final int AMBIENT_BACKLIGHT_EVENT_ENABLED = 1; // 0x1 - field public static final int AMBIENT_BACKLIGHT_EVENT_INTERRUPTED = 4; // 0x4 - field public static final int AMBIENT_BACKLIGHT_EVENT_METADATA = 3; // 0x3 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class AmbientBacklightMetadata implements android.os.Parcelable { - ctor public AmbientBacklightMetadata(@NonNull String, int, int, int, int, int, @NonNull int[]); - method public int describeContents(); - method public int getColorFormat(); - method public int getCompressAlgorithm(); - method @IntRange(from=0, to=128) public int getHorizontalZonesNumber(); - method @NonNull public String getPackageName(); - method public int getSource(); - method @IntRange(from=0, to=80) public int getVerticalZonesNumber(); - method @NonNull public int[] getZonesColors(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class AmbientBacklightSettings implements android.os.Parcelable { - ctor public AmbientBacklightSettings(int, int, int, int, int, boolean, int); - method public int describeContents(); - method public int getColorFormat(); - method @IntRange(from=0) public int getHorizontalZonesNumber(); - method @IntRange(from=1) public int getMaxFps(); - method public int getSource(); - method public int getThreshold(); - method @IntRange(from=0) public int getVerticalZonesNumber(); - method public boolean isLetterboxOmitted(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int ALGORITHM_NONE = 0; // 0x0 - field public static final int ALGORITHM_RLE = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SOURCE_AUDIO = 1; // 0x1 - field public static final int SOURCE_AUDIO_VIDEO = 3; // 0x3 - field public static final int SOURCE_NONE = 0; // 0x0 - field public static final int SOURCE_VIDEO = 2; // 0x2 - } - - @FlaggedApi("android.media.tv.flags.media_quality_fw") public class MediaQualityContract { - } - - public static final class MediaQualityContract.PictureQuality { - field public static final String PARAMETER_AUTO_PICTURE_QUALITY_ENABLED = "auto_picture_quality_enabled"; - field public static final String PARAMETER_AUTO_SUPER_RESOLUTION_ENABLED = "auto_super_resolution_enabled"; - field public static final String PARAMETER_BLUE_STRETCH = "blue_stretch"; - field public static final String PARAMETER_BRIGHTNESS = "brightness"; - field public static final String PARAMETER_COLOR_TEMPERATURE = "color_temperature"; - field public static final String PARAMETER_COLOR_TUNE = "color_tune"; - field public static final String PARAMETER_COLOR_TUNER_BLUE_GAIN = "color_tuner_blue_gain"; - field public static final String PARAMETER_COLOR_TUNER_BLUE_OFFSET = "color_tuner_blue_offset"; - field public static final String PARAMETER_COLOR_TUNER_BRIGHTNESS = "color_tuner_brightness"; - field public static final String PARAMETER_COLOR_TUNER_GREEN_GAIN = "color_tuner_green_gain"; - field public static final String PARAMETER_COLOR_TUNER_GREEN_OFFSET = "color_tuner_green_offset"; - field public static final String PARAMETER_COLOR_TUNER_HUE = "color_tuner_hue"; - field public static final String PARAMETER_COLOR_TUNER_RED_GAIN = "color_tuner_red_gain"; - field public static final String PARAMETER_COLOR_TUNER_RED_OFFSET = "color_tuner_red_offset"; - field public static final String PARAMETER_COLOR_TUNER_SATURATION = "color_tuner_saturation"; - field public static final String PARAMETER_CONTRAST = "contrast"; - field public static final String PARAMETER_DECONTOUR = "decontour"; - field public static final String PARAMETER_DYNAMIC_LUMA_CONTROL = "dynamic_luma_control"; - field public static final String PARAMETER_FILM_MODE = "film_mode"; - field public static final String PARAMETER_FLESH_TONE = "flesh_tone"; - field public static final String PARAMETER_GLOBAL_DIMMING = "global_dimming"; - field public static final String PARAMETER_HUE = "hue"; - field public static final String PARAMETER_MPEG_NOISE_REDUCTION = "mpeg_noise_reduction"; - field public static final String PARAMETER_NOISE_REDUCTION = "noise_reduction"; - field public static final String PARAMETER_SATURATION = "saturation"; - field public static final String PARAMETER_SHARPNESS = "sharpness"; - } - - public static final class MediaQualityContract.SoundQuality { - field public static final String PARAMETER_BALANCE = "balance"; - field public static final String PARAMETER_BASS = "bass"; - field public static final String PARAMETER_TREBLE = "treble"; - } - - @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class MediaQualityManager { - method public void addActiveProcessingPictureListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.quality.MediaQualityManager.ActiveProcessingPictureListener); - method public void createPictureProfile(@NonNull android.media.quality.PictureProfile); - method public void createSoundProfile(@NonNull android.media.quality.SoundProfile); - method @NonNull public java.util.List getAvailablePictureProfiles(boolean); - method @NonNull public java.util.List getAvailableSoundProfiles(boolean); - method @NonNull public java.util.List getParamCapabilities(@NonNull java.util.List); - method @Nullable public android.media.quality.PictureProfile getPictureProfile(int, @NonNull String, boolean); - method @Nullable public android.media.quality.SoundProfile getSoundProfile(int, @NonNull String, boolean); - method public boolean isAmbientBacklightEnabled(); - method public boolean isAutoPictureQualityEnabled(); - method public boolean isAutoSoundQualityEnabled(); - method public boolean isSuperResolutionEnabled(); - method public void registerAmbientBacklightCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.quality.MediaQualityManager.AmbientBacklightCallback); - method public void registerPictureProfileCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.quality.MediaQualityManager.PictureProfileCallback); - method public void registerSoundProfileCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.quality.MediaQualityManager.SoundProfileCallback); - method public void removeActiveProcessingPictureListener(@NonNull android.media.quality.MediaQualityManager.ActiveProcessingPictureListener); - method public void removePictureProfile(@NonNull String); - method public void removeSoundProfile(@NonNull String); - method public void setAmbientBacklightEnabled(boolean); - method public void setAmbientBacklightSettings(@NonNull android.media.quality.AmbientBacklightSettings); - method public void unregisterAmbientBacklightCallback(@NonNull android.media.quality.MediaQualityManager.AmbientBacklightCallback); - method public void unregisterPictureProfileCallback(@NonNull android.media.quality.MediaQualityManager.PictureProfileCallback); - method public void unregisterSoundProfileCallback(@NonNull android.media.quality.MediaQualityManager.SoundProfileCallback); - method public void updatePictureProfile(@NonNull String, @NonNull android.media.quality.PictureProfile); - method public void updateSoundProfile(@NonNull String, @NonNull android.media.quality.SoundProfile); - } - - public static interface MediaQualityManager.ActiveProcessingPictureListener { - method public void onActiveProcessingPicturesChanged(@NonNull java.util.List); - } - - public abstract static class MediaQualityManager.AmbientBacklightCallback { - ctor public MediaQualityManager.AmbientBacklightCallback(); - method public void onAmbientBacklightEvent(@NonNull android.media.quality.AmbientBacklightEvent); - } - - public abstract static class MediaQualityManager.PictureProfileCallback { - ctor public MediaQualityManager.PictureProfileCallback(); - method public void onError(@Nullable String, int); - method public void onParamCapabilitiesChanged(@Nullable String, @NonNull java.util.List); - method public void onPictureProfileAdded(@NonNull String, @NonNull android.media.quality.PictureProfile); - method public void onPictureProfileRemoved(@NonNull String, @NonNull android.media.quality.PictureProfile); - method public void onPictureProfileUpdated(@NonNull String, @NonNull android.media.quality.PictureProfile); - } - - public abstract static class MediaQualityManager.SoundProfileCallback { - ctor public MediaQualityManager.SoundProfileCallback(); - method public void onError(@Nullable String, int); - method public void onParamCapabilitiesChanged(@Nullable String, @NonNull java.util.List); - method public void onSoundProfileAdded(@NonNull String, @NonNull android.media.quality.SoundProfile); - method public void onSoundProfileRemoved(@NonNull String, @NonNull android.media.quality.SoundProfile); - method public void onSoundProfileUpdated(@NonNull String, @NonNull android.media.quality.SoundProfile); - } - - @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class ParamCapability implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.os.Bundle getCapabilities(); - method @NonNull public String getParamName(); - method public int getParamType(); - method public boolean isSupported(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final String CAPABILITY_DEFAULT = "default"; - field public static final String CAPABILITY_ENUM = "enum"; - field public static final String CAPABILITY_MAX = "max"; - field public static final String CAPABILITY_MIN = "min"; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_DOUBLE = 3; // 0x3 - field public static final int TYPE_INT = 1; // 0x1 - field public static final int TYPE_LONG = 2; // 0x2 - field public static final int TYPE_STRING = 4; // 0x4 - } - - @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class PictureProfile implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getInputId(); - method @NonNull public String getName(); - method @Nullable public String getPackageName(); - method @NonNull public android.os.PersistableBundle getParameters(); - method @Nullable public String getProfileId(); - method public int getProfileType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ERROR_DUPLICATE = 2; // 0x2 - field public static final int ERROR_INVALID_ARGUMENT = 3; // 0x3 - field public static final int ERROR_NOT_ALLOWLISTED = 4; // 0x4 - field public static final int ERROR_NO_PERMISSION = 1; // 0x1 - field public static final int ERROR_UNKNOWN = 0; // 0x0 - field public static final int TYPE_APPLICATION = 2; // 0x2 - field public static final int TYPE_SYSTEM = 1; // 0x1 - } - - public static final class PictureProfile.Builder { - ctor public PictureProfile.Builder(@NonNull String); - ctor public PictureProfile.Builder(@NonNull android.media.quality.PictureProfile); - method @NonNull public android.media.quality.PictureProfile build(); - method @NonNull public android.media.quality.PictureProfile.Builder setParameters(@NonNull android.os.PersistableBundle); - } - - @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class SoundProfile implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getInputId(); - method @NonNull public String getName(); - method @Nullable public String getPackageName(); - method @NonNull public android.os.PersistableBundle getParameters(); - method @Nullable public String getProfileId(); - method public int getProfileType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ERROR_DUPLICATE = 2; // 0x2 - field public static final int ERROR_INVALID_ARGUMENT = 3; // 0x3 - field public static final int ERROR_NOT_ALLOWLISTED = 4; // 0x4 - field public static final int ERROR_NO_PERMISSION = 1; // 0x1 - field public static final int ERROR_UNKNOWN = 0; // 0x0 - field public static final int TYPE_APPLICATION = 2; // 0x2 - field public static final int TYPE_SYSTEM = 1; // 0x1 - } - - public static final class SoundProfile.Builder { - ctor public SoundProfile.Builder(@NonNull String); - ctor public SoundProfile.Builder(@NonNull android.media.quality.SoundProfile); - method @NonNull public android.media.quality.SoundProfile build(); - method @NonNull public android.media.quality.SoundProfile.Builder setParameters(@NonNull android.os.PersistableBundle); - } - -} - -package android.media.session { - - public final class MediaController { - ctor public MediaController(@NonNull android.content.Context, @NonNull android.media.session.MediaSession.Token); - method public void adjustVolume(int, int); - method public boolean dispatchMediaButtonEvent(@NonNull android.view.KeyEvent); - method @Nullable public android.os.Bundle getExtras(); - method public long getFlags(); - method @Nullable public android.media.MediaMetadata getMetadata(); - method public String getPackageName(); - method @NonNull public android.media.session.MediaController.PlaybackInfo getPlaybackInfo(); - method @Nullable public android.media.session.PlaybackState getPlaybackState(); - method @Nullable public java.util.List getQueue(); - method @Nullable public CharSequence getQueueTitle(); - method public int getRatingType(); - method @Nullable public android.app.PendingIntent getSessionActivity(); - method @NonNull public android.os.Bundle getSessionInfo(); - method @NonNull public android.media.session.MediaSession.Token getSessionToken(); - method @NonNull public String getTag(); - method @NonNull public android.media.session.MediaController.TransportControls getTransportControls(); - method public void registerCallback(@NonNull android.media.session.MediaController.Callback); - method public void registerCallback(@NonNull android.media.session.MediaController.Callback, @Nullable android.os.Handler); - method public void sendCommand(@NonNull String, @Nullable android.os.Bundle, @Nullable android.os.ResultReceiver); - method public void setVolumeTo(int, int); - method public void unregisterCallback(@NonNull android.media.session.MediaController.Callback); - } - - public abstract static class MediaController.Callback { - ctor public MediaController.Callback(); - method public void onAudioInfoChanged(@NonNull android.media.session.MediaController.PlaybackInfo); - method public void onExtrasChanged(@Nullable android.os.Bundle); - method public void onMetadataChanged(@Nullable android.media.MediaMetadata); - method public void onPlaybackStateChanged(@Nullable android.media.session.PlaybackState); - method public void onQueueChanged(@Nullable java.util.List); - method public void onQueueTitleChanged(@Nullable CharSequence); - method public void onSessionDestroyed(); - method public void onSessionEvent(@NonNull String, @Nullable android.os.Bundle); - } - - public static final class MediaController.PlaybackInfo implements android.os.Parcelable { - method public int describeContents(); - method public android.media.AudioAttributes getAudioAttributes(); - method public int getCurrentVolume(); - method public int getMaxVolume(); - method public int getPlaybackType(); - method public int getVolumeControl(); - method @Nullable public String getVolumeControlId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int PLAYBACK_TYPE_LOCAL = 1; // 0x1 - field public static final int PLAYBACK_TYPE_REMOTE = 2; // 0x2 - } - - public final class MediaController.TransportControls { - method public void fastForward(); - method public void pause(); - method public void play(); - method public void playFromMediaId(String, android.os.Bundle); - method public void playFromSearch(String, android.os.Bundle); - method public void playFromUri(android.net.Uri, android.os.Bundle); - method public void prepare(); - method public void prepareFromMediaId(String, android.os.Bundle); - method public void prepareFromSearch(String, android.os.Bundle); - method public void prepareFromUri(android.net.Uri, android.os.Bundle); - method public void rewind(); - method public void seekTo(long); - method public void sendCustomAction(@NonNull android.media.session.PlaybackState.CustomAction, @Nullable android.os.Bundle); - method public void sendCustomAction(@NonNull String, @Nullable android.os.Bundle); - method public void setPlaybackSpeed(float); - method public void setRating(android.media.Rating); - method public void skipToNext(); - method public void skipToPrevious(); - method public void skipToQueueItem(long); - method public void stop(); - } - - public final class MediaSession { - ctor public MediaSession(@NonNull android.content.Context, @NonNull String); - ctor public MediaSession(@NonNull android.content.Context, @NonNull String, @Nullable android.os.Bundle); - method @NonNull public android.media.session.MediaController getController(); - method @NonNull public android.media.session.MediaSessionManager.RemoteUserInfo getCurrentControllerInfo(); - method @NonNull public android.media.session.MediaSession.Token getSessionToken(); - method public boolean isActive(); - method public void release(); - method public void sendSessionEvent(@NonNull String, @Nullable android.os.Bundle); - method public void setActive(boolean); - method public void setCallback(@Nullable android.media.session.MediaSession.Callback); - method public void setCallback(@Nullable android.media.session.MediaSession.Callback, @Nullable android.os.Handler); - method public void setExtras(@Nullable android.os.Bundle); - method public void setFlags(int); - method public void setMediaButtonBroadcastReceiver(@Nullable android.content.ComponentName); - method @Deprecated public void setMediaButtonReceiver(@Nullable android.app.PendingIntent); - method public void setMetadata(@Nullable android.media.MediaMetadata); - method public void setPlaybackState(@Nullable android.media.session.PlaybackState); - method public void setPlaybackToLocal(android.media.AudioAttributes); - method public void setPlaybackToRemote(@NonNull android.media.VolumeProvider); - method public void setQueue(@Nullable java.util.List); - method public void setQueueTitle(@Nullable CharSequence); - method public void setRatingType(int); - method public void setSessionActivity(@Nullable android.app.PendingIntent); - field @Deprecated public static final int FLAG_HANDLES_MEDIA_BUTTONS = 1; // 0x1 - field @Deprecated public static final int FLAG_HANDLES_TRANSPORT_CONTROLS = 2; // 0x2 - } - - public abstract static class MediaSession.Callback { - ctor public MediaSession.Callback(); - method public void onCommand(@NonNull String, @Nullable android.os.Bundle, @Nullable android.os.ResultReceiver); - method public void onCustomAction(@NonNull String, @Nullable android.os.Bundle); - method public void onFastForward(); - method public boolean onMediaButtonEvent(@NonNull android.content.Intent); - method public void onPause(); - method public void onPlay(); - method public void onPlayFromMediaId(String, android.os.Bundle); - method public void onPlayFromSearch(String, android.os.Bundle); - method public void onPlayFromUri(android.net.Uri, android.os.Bundle); - method public void onPrepare(); - method public void onPrepareFromMediaId(String, android.os.Bundle); - method public void onPrepareFromSearch(String, android.os.Bundle); - method public void onPrepareFromUri(android.net.Uri, android.os.Bundle); - method public void onRewind(); - method public void onSeekTo(long); - method public void onSetPlaybackSpeed(float); - method public void onSetRating(@NonNull android.media.Rating); - method public void onSkipToNext(); - method public void onSkipToPrevious(); - method public void onSkipToQueueItem(long); - method public void onStop(); - } - - public static final class MediaSession.QueueItem implements android.os.Parcelable { - ctor public MediaSession.QueueItem(android.media.MediaDescription, long); - method public int describeContents(); - method public android.media.MediaDescription getDescription(); - method public long getQueueId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int UNKNOWN_ID = -1; // 0xffffffff - } - - public static final class MediaSession.Token implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class MediaSessionManager { - method public void addOnActiveSessionsChangedListener(@NonNull android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, @Nullable android.content.ComponentName); - method public void addOnActiveSessionsChangedListener(@NonNull android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, @Nullable android.content.ComponentName, @Nullable android.os.Handler); - method public void addOnMediaKeyEventSessionChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnMediaKeyEventSessionChangedListener); - method public void addOnSession2TokensChangedListener(@NonNull android.media.session.MediaSessionManager.OnSession2TokensChangedListener); - method public void addOnSession2TokensChangedListener(@NonNull android.media.session.MediaSessionManager.OnSession2TokensChangedListener, @NonNull android.os.Handler); - method @NonNull public java.util.List getActiveSessions(@Nullable android.content.ComponentName); - method @Nullable public android.media.session.MediaSession.Token getMediaKeyEventSession(); - method @NonNull public String getMediaKeyEventSessionPackageName(); - method @NonNull public java.util.List getSession2Tokens(); - method public boolean isTrustedForMediaControl(@NonNull android.media.session.MediaSessionManager.RemoteUserInfo); - method @Deprecated public void notifySession2Created(@NonNull android.media.Session2Token); - method public void removeOnActiveSessionsChangedListener(@NonNull android.media.session.MediaSessionManager.OnActiveSessionsChangedListener); - method public void removeOnMediaKeyEventSessionChangedListener(@NonNull android.media.session.MediaSessionManager.OnMediaKeyEventSessionChangedListener); - method public void removeOnSession2TokensChangedListener(@NonNull android.media.session.MediaSessionManager.OnSession2TokensChangedListener); - } - - public static interface MediaSessionManager.OnActiveSessionsChangedListener { - method public void onActiveSessionsChanged(@Nullable java.util.List); - } - - public static interface MediaSessionManager.OnMediaKeyEventSessionChangedListener { - method public void onMediaKeyEventSessionChanged(@NonNull String, @Nullable android.media.session.MediaSession.Token); - } - - public static interface MediaSessionManager.OnSession2TokensChangedListener { - method public void onSession2TokensChanged(@NonNull java.util.List); - } - - public static final class MediaSessionManager.RemoteUserInfo { - ctor public MediaSessionManager.RemoteUserInfo(@NonNull String, int, int); - method public String getPackageName(); - method public int getPid(); - method public int getUid(); - } - - public final class PlaybackState implements android.os.Parcelable { - method public int describeContents(); - method public long getActions(); - method public long getActiveQueueItemId(); - method public long getBufferedPosition(); - method public java.util.List getCustomActions(); - method public CharSequence getErrorMessage(); - method @Nullable public android.os.Bundle getExtras(); - method public long getLastPositionUpdateTime(); - method public float getPlaybackSpeed(); - method public long getPosition(); - method public int getState(); - method public boolean isActive(); - method public void writeToParcel(android.os.Parcel, int); - field public static final long ACTION_FAST_FORWARD = 64L; // 0x40L - field public static final long ACTION_PAUSE = 2L; // 0x2L - field public static final long ACTION_PLAY = 4L; // 0x4L - field public static final long ACTION_PLAY_FROM_MEDIA_ID = 1024L; // 0x400L - field public static final long ACTION_PLAY_FROM_SEARCH = 2048L; // 0x800L - field public static final long ACTION_PLAY_FROM_URI = 8192L; // 0x2000L - field public static final long ACTION_PLAY_PAUSE = 512L; // 0x200L - field public static final long ACTION_PREPARE = 16384L; // 0x4000L - field public static final long ACTION_PREPARE_FROM_MEDIA_ID = 32768L; // 0x8000L - field public static final long ACTION_PREPARE_FROM_SEARCH = 65536L; // 0x10000L - field public static final long ACTION_PREPARE_FROM_URI = 131072L; // 0x20000L - field public static final long ACTION_REWIND = 8L; // 0x8L - field public static final long ACTION_SEEK_TO = 256L; // 0x100L - field public static final long ACTION_SET_PLAYBACK_SPEED = 4194304L; // 0x400000L - field public static final long ACTION_SET_RATING = 128L; // 0x80L - field public static final long ACTION_SKIP_TO_NEXT = 32L; // 0x20L - field public static final long ACTION_SKIP_TO_PREVIOUS = 16L; // 0x10L - field public static final long ACTION_SKIP_TO_QUEUE_ITEM = 4096L; // 0x1000L - field public static final long ACTION_STOP = 1L; // 0x1L - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final long PLAYBACK_POSITION_UNKNOWN = -1L; // 0xffffffffffffffffL - field public static final int STATE_BUFFERING = 6; // 0x6 - field public static final int STATE_CONNECTING = 8; // 0x8 - field public static final int STATE_ERROR = 7; // 0x7 - field public static final int STATE_FAST_FORWARDING = 4; // 0x4 - field public static final int STATE_NONE = 0; // 0x0 - field public static final int STATE_PAUSED = 2; // 0x2 - field public static final int STATE_PLAYING = 3; // 0x3 - field public static final int STATE_REWINDING = 5; // 0x5 - field public static final int STATE_SKIPPING_TO_NEXT = 10; // 0xa - field public static final int STATE_SKIPPING_TO_PREVIOUS = 9; // 0x9 - field public static final int STATE_SKIPPING_TO_QUEUE_ITEM = 11; // 0xb - field public static final int STATE_STOPPED = 1; // 0x1 - } - - public static final class PlaybackState.Builder { - ctor public PlaybackState.Builder(); - ctor public PlaybackState.Builder(android.media.session.PlaybackState); - method public android.media.session.PlaybackState.Builder addCustomAction(String, String, int); - method public android.media.session.PlaybackState.Builder addCustomAction(android.media.session.PlaybackState.CustomAction); - method public android.media.session.PlaybackState build(); - method public android.media.session.PlaybackState.Builder setActions(long); - method public android.media.session.PlaybackState.Builder setActiveQueueItemId(long); - method public android.media.session.PlaybackState.Builder setBufferedPosition(long); - method public android.media.session.PlaybackState.Builder setErrorMessage(CharSequence); - method public android.media.session.PlaybackState.Builder setExtras(android.os.Bundle); - method public android.media.session.PlaybackState.Builder setState(int, long, float, long); - method public android.media.session.PlaybackState.Builder setState(int, long, float); - } - - public static final class PlaybackState.CustomAction implements android.os.Parcelable { - method public int describeContents(); - method public String getAction(); - method public android.os.Bundle getExtras(); - method public int getIcon(); - method public CharSequence getName(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class PlaybackState.CustomAction.Builder { - ctor public PlaybackState.CustomAction.Builder(String, CharSequence, @DrawableRes int); - method public android.media.session.PlaybackState.CustomAction build(); - method public android.media.session.PlaybackState.CustomAction.Builder setExtras(android.os.Bundle); - } - -} - -package android.media.tv { - - public final class AdBuffer implements android.os.Parcelable { - ctor public AdBuffer(int, @NonNull String, @NonNull android.os.SharedMemory, int, int, long, int); - method public int describeContents(); - method public int getFlags(); - method public int getId(); - method public int getLength(); - method @NonNull public String getMimeType(); - method public int getOffset(); - method public long getPresentationTimeUs(); - method @NonNull public android.os.SharedMemory getSharedMemory(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class AdRequest implements android.os.Parcelable { - ctor public AdRequest(int, int, @Nullable android.os.ParcelFileDescriptor, long, long, long, @Nullable String, @NonNull android.os.Bundle); - ctor public AdRequest(int, int, @Nullable android.net.Uri, long, long, long, @NonNull android.os.Bundle); - method public int describeContents(); - method public long getEchoIntervalMillis(); - method @Nullable public android.os.ParcelFileDescriptor getFileDescriptor(); - method public int getId(); - method @Nullable public String getMediaFileType(); - method @NonNull public android.os.Bundle getMetadata(); - method public int getRequestType(); - method public long getStartTimeMillis(); - method public long getStopTimeMillis(); - method @Nullable public android.net.Uri getUri(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int REQUEST_TYPE_START = 1; // 0x1 - field public static final int REQUEST_TYPE_STOP = 2; // 0x2 - } - - public final class AdResponse implements android.os.Parcelable { - ctor public AdResponse(int, int, long); - method public int describeContents(); - method public long getElapsedTimeMillis(); - method public int getId(); - method public int getResponseType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int RESPONSE_TYPE_BUFFERING = 5; // 0x5 - field public static final int RESPONSE_TYPE_ERROR = 4; // 0x4 - field public static final int RESPONSE_TYPE_FINISHED = 2; // 0x2 - field public static final int RESPONSE_TYPE_PLAYING = 1; // 0x1 - field public static final int RESPONSE_TYPE_STOPPED = 3; // 0x3 - } - - public final class AitInfo implements android.os.Parcelable { - ctor public AitInfo(int, int); - method public int describeContents(); - method public int getType(); - method public int getVersion(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class BroadcastInfoRequest implements android.os.Parcelable { - method public int describeContents(); - method public int getOption(); - method public int getRequestId(); - method public int getType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int REQUEST_OPTION_AUTO_UPDATE = 1; // 0x1 - field @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public static final int REQUEST_OPTION_ONESHOT = 3; // 0x3 - field @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public static final int REQUEST_OPTION_ONEWAY = 2; // 0x2 - field public static final int REQUEST_OPTION_REPEAT = 0; // 0x0 - } - - public abstract class BroadcastInfoResponse implements android.os.Parcelable { - method public int describeContents(); - method public int getRequestId(); - method public int getResponseResult(); - method public int getSequence(); - method public int getType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int RESPONSE_RESULT_CANCEL = 3; // 0x3 - field public static final int RESPONSE_RESULT_ERROR = 1; // 0x1 - field public static final int RESPONSE_RESULT_OK = 2; // 0x2 - } - - public final class CommandRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { - ctor public CommandRequest(int, int, @NonNull String, @NonNull String, @NonNull String, @NonNull String); - method @NonNull public String getArgumentType(); - method @NonNull public String getArguments(); - method @NonNull public String getName(); - method @NonNull public String getNamespace(); - field public static final String ARGUMENT_TYPE_JSON = "json"; - field public static final String ARGUMENT_TYPE_XML = "xml"; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CommandResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { - ctor public CommandResponse(int, int, int, @Nullable String, @NonNull String); - method @Nullable public String getResponse(); - method @NonNull public String getResponseType(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String RESPONSE_TYPE_JSON = "json"; - field public static final String RESPONSE_TYPE_XML = "xml"; - } - - public final class DsmccRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { - ctor public DsmccRequest(int, int, @NonNull android.net.Uri); - method @NonNull public android.net.Uri getUri(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class DsmccResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { - ctor public DsmccResponse(int, int, int, @Nullable android.os.ParcelFileDescriptor); - ctor public DsmccResponse(int, int, int, boolean, @Nullable java.util.List); - ctor public DsmccResponse(int, int, int, @Nullable int[], @Nullable String[]); - method @NonNull public String getBiopMessageType(); - method @NonNull public java.util.List getChildList(); - method @NonNull public android.os.ParcelFileDescriptor getFile(); - method @NonNull public int[] getStreamEventIds(); - method @NonNull public String[] getStreamEventNames(); - field public static final String BIOP_MESSAGE_TYPE_DIRECTORY = "directory"; - field public static final String BIOP_MESSAGE_TYPE_FILE = "file"; - field public static final String BIOP_MESSAGE_TYPE_SERVICE_GATEWAY = "service_gateway"; - field public static final String BIOP_MESSAGE_TYPE_STREAM = "stream"; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class PesRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { - ctor public PesRequest(int, int, int, int); - method public int getStreamId(); - method public int getTsPid(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class PesResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { - ctor public PesResponse(int, int, int, @Nullable String); - method @Nullable public String getSharedFilterToken(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class SectionRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { - ctor public SectionRequest(int, int, int, int, int); - method public int getTableId(); - method public int getTsPid(); - method public int getVersion(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class SectionResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { - ctor public SectionResponse(int, int, int, int, int, @Nullable android.os.Bundle); - method @NonNull public android.os.Bundle getSessionData(); - method public int getSessionId(); - method public int getVersion(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public final class SignalingDataInfo implements android.os.Parcelable { - ctor public SignalingDataInfo(@NonNull String, @NonNull String, int, int); - ctor public SignalingDataInfo(@NonNull String, @NonNull String, int, int, @NonNull String); - method public int describeContents(); - method @NonNull public String getEncoding(); - method public int getGroup(); - method @NonNull public String getSignalingDataType(); - method @NonNull public String getTable(); - method public int getVersion(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final String CONTENT_ENCODING_BASE64 = "Base64"; - field public static final String CONTENT_ENCODING_UTF_8 = "UTF-8"; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int LLS_NO_GROUP_ID = -1; // 0xffffffff - } - - @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public final class SignalingDataRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { - ctor public SignalingDataRequest(int, int, int, @NonNull java.util.List); - method public int getGroup(); - method @NonNull public java.util.List getSignalingDataTypes(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SIGNALING_DATA_NO_GROUP_ID = -1; // 0xffffffff - field public static final String SIGNALING_METADATA_AEAT = "AEAT"; - field public static final String SIGNALING_METADATA_AEI = "AEI"; - field public static final String SIGNALING_METADATA_APD = "APD"; - field public static final String SIGNALING_METADATA_ASD = "ASD"; - field public static final String SIGNALING_METADATA_ASPD = "ASPD"; - field public static final String SIGNALING_METADATA_CAD = "CAD"; - field public static final String SIGNALING_METADATA_CDT = "CDT"; - field public static final String SIGNALING_METADATA_CRIT = "CRIT"; - field public static final String SIGNALING_METADATA_DCIT = "DCIT"; - field public static final String SIGNALING_METADATA_DWD = "DWD"; - field public static final String SIGNALING_METADATA_EMSG = "EMSG"; - field public static final String SIGNALING_METADATA_EVTI = "EVTI"; - field public static final String SIGNALING_METADATA_HELD = "HELD"; - field public static final String SIGNALING_METADATA_IED = "IED"; - field public static final String SIGNALING_METADATA_MPD = "MPD"; - field public static final String SIGNALING_METADATA_MPIT = "MPIT"; - field public static final String SIGNALING_METADATA_MPT = "MPT"; - field public static final String SIGNALING_METADATA_OSN = "OSN"; - field public static final String SIGNALING_METADATA_PAT = "PAT"; - field public static final String SIGNALING_METADATA_RDT = "RDT"; - field public static final String SIGNALING_METADATA_RRT = "RRT"; - field public static final String SIGNALING_METADATA_RSAT = "RSAT"; - field public static final String SIGNALING_METADATA_SLT = "SLT"; - field public static final String SIGNALING_METADATA_SMT = "SMT"; - field public static final String SIGNALING_METADATA_SSD = "SSD"; - field public static final String SIGNALING_METADATA_STSID = "STSID"; - field public static final String SIGNALING_METADATA_STT = "STT"; - field public static final String SIGNALING_METADATA_USBD = "USBD"; - field public static final String SIGNALING_METADATA_USD = "USD"; - field public static final String SIGNALING_METADATA_VSPD = "VSPD"; - } - - @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public final class SignalingDataResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { - ctor public SignalingDataResponse(int, int, int, @NonNull java.util.List, @NonNull java.util.List); - method @NonNull public java.util.List getSignalingDataInfoList(); - method @NonNull public java.util.List getSignalingDataTypes(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class StreamEventRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { - ctor public StreamEventRequest(int, int, @NonNull android.net.Uri, @NonNull String); - method @NonNull public String getEventName(); - method @NonNull public android.net.Uri getTargetUri(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class StreamEventResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { - ctor public StreamEventResponse(int, int, int, int, long, @Nullable byte[]); - method @Nullable public byte[] getData(); - method public int getEventId(); - method public long getNptMillis(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class TableRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { - ctor public TableRequest(int, int, int, int, int); - method public int getTableId(); - method public int getTableName(); - method public int getVersion(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TABLE_NAME_BAT = 4; // 0x4 - field public static final int TABLE_NAME_CAT = 2; // 0x2 - field public static final int TABLE_NAME_EIT = 6; // 0x6 - field public static final int TABLE_NAME_NIT = 3; // 0x3 - field public static final int TABLE_NAME_PAT = 0; // 0x0 - field public static final int TABLE_NAME_PMT = 1; // 0x1 - field public static final int TABLE_NAME_SDT = 5; // 0x5 - field public static final int TABLE_NAME_SIT = 9; // 0x9 - field public static final int TABLE_NAME_TDT = 7; // 0x7 - field public static final int TABLE_NAME_TOT = 8; // 0x8 - } - - public final class TableResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { - ctor @Deprecated public TableResponse(int, int, int, @Nullable android.net.Uri, int, int); - method public int getSize(); - method @Nullable public byte[] getTableByteArray(); - method @Nullable public android.os.SharedMemory getTableSharedMemory(); - method @Nullable public android.net.Uri getTableUri(); - method public int getVersion(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TableResponse.Builder { - ctor public TableResponse.Builder(int, int, int, int, int); - method @NonNull public android.media.tv.TableResponse build(); - method @NonNull public android.media.tv.TableResponse.Builder setTableByteArray(@NonNull byte[]); - method @NonNull public android.media.tv.TableResponse.Builder setTableSharedMemory(@NonNull android.os.SharedMemory); - method @NonNull public android.media.tv.TableResponse.Builder setTableUri(@NonNull android.net.Uri); - } - - public final class TimelineRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { - ctor public TimelineRequest(int, int, int); - ctor public TimelineRequest(int, int, int, @NonNull String); - method public int getIntervalMillis(); - method @Nullable public String getSelector(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class TimelineResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { - ctor public TimelineResponse(int, int, int, @Nullable String, int, int, long, long); - method @Nullable public android.net.Uri getSelector(); - method public long getTicks(); - method public int getUnitsPerSecond(); - method public int getUnitsPerTick(); - method public long getWallClock(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class TsRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { - ctor public TsRequest(int, int, int); - method public int getTsPid(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class TsResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { - ctor public TsResponse(int, int, int, @Nullable String); - method @Nullable public String getSharedFilterToken(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class TvContentRating { - method public boolean contains(@NonNull android.media.tv.TvContentRating); - method public static android.media.tv.TvContentRating createRating(String, String, String, java.lang.String...); - method public String flattenToString(); - method public String getDomain(); - method public String getMainRating(); - method public String getRatingSystem(); - method public java.util.List getSubRatings(); - method public static android.media.tv.TvContentRating unflattenFromString(String); - field public static final android.media.tv.TvContentRating UNRATED; - } - - public final class TvContract { - method public static android.net.Uri buildChannelLogoUri(long); - method public static android.net.Uri buildChannelLogoUri(android.net.Uri); - method public static android.net.Uri buildChannelUri(long); - method public static android.net.Uri buildChannelUriForPassthroughInput(String); - method public static android.net.Uri buildChannelsUriForInput(@Nullable String); - method public static String buildInputId(android.content.ComponentName); - method public static android.net.Uri buildPreviewProgramUri(long); - method public static android.net.Uri buildPreviewProgramsUriForChannel(long); - method public static android.net.Uri buildPreviewProgramsUriForChannel(android.net.Uri); - method public static android.net.Uri buildProgramUri(long); - method public static android.net.Uri buildProgramsUriForChannel(long); - method public static android.net.Uri buildProgramsUriForChannel(android.net.Uri); - method public static android.net.Uri buildProgramsUriForChannel(long, long, long); - method public static android.net.Uri buildProgramsUriForChannel(android.net.Uri, long, long); - method public static android.net.Uri buildRecordedProgramUri(long); - method public static android.net.Uri buildWatchNextProgramUri(long); - method public static boolean isChannelUri(@NonNull android.net.Uri); - method public static boolean isChannelUriForPassthroughInput(@NonNull android.net.Uri); - method public static boolean isChannelUriForTunerInput(@NonNull android.net.Uri); - method public static boolean isProgramUri(@NonNull android.net.Uri); - method public static boolean isRecordedProgramUri(@NonNull android.net.Uri); - method public static void requestChannelBrowsable(android.content.Context, long); - field public static final String ACTION_INITIALIZE_PROGRAMS = "android.media.tv.action.INITIALIZE_PROGRAMS"; - field public static final String ACTION_PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT = "android.media.tv.action.PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT"; - field public static final String ACTION_PREVIEW_PROGRAM_BROWSABLE_DISABLED = "android.media.tv.action.PREVIEW_PROGRAM_BROWSABLE_DISABLED"; - field public static final String ACTION_REQUEST_CHANNEL_BROWSABLE = "android.media.tv.action.REQUEST_CHANNEL_BROWSABLE"; - field public static final String ACTION_WATCH_NEXT_PROGRAM_BROWSABLE_DISABLED = "android.media.tv.action.WATCH_NEXT_PROGRAM_BROWSABLE_DISABLED"; - field public static final String AUTHORITY = "android.media.tv"; - field public static final String EXTRA_CHANNEL_ID = "android.media.tv.extra.CHANNEL_ID"; - field public static final String EXTRA_PREVIEW_PROGRAM_ID = "android.media.tv.extra.PREVIEW_PROGRAM_ID"; - field public static final String EXTRA_WATCH_NEXT_PROGRAM_ID = "android.media.tv.extra.WATCH_NEXT_PROGRAM_ID"; - } - - public static interface TvContract.BaseTvColumns extends android.provider.BaseColumns { - field public static final String COLUMN_PACKAGE_NAME = "package_name"; - } - - public static final class TvContract.Channels implements android.media.tv.TvContract.BaseTvColumns { - method @Nullable public static String getVideoResolution(String); - field @FlaggedApi("android.media.tv.flags.broadcast_visibility_types") public static final int BROADCAST_VISIBILITY_TYPE_INVISIBLE = 2; // 0x2 - field @FlaggedApi("android.media.tv.flags.broadcast_visibility_types") public static final int BROADCAST_VISIBILITY_TYPE_NUMERIC_SELECTABLE_ONLY = 1; // 0x1 - field @FlaggedApi("android.media.tv.flags.broadcast_visibility_types") public static final int BROADCAST_VISIBILITY_TYPE_VISIBLE = 0; // 0x0 - field public static final String COLUMN_APP_LINK_COLOR = "app_link_color"; - field public static final String COLUMN_APP_LINK_ICON_URI = "app_link_icon_uri"; - field public static final String COLUMN_APP_LINK_INTENT_URI = "app_link_intent_uri"; - field public static final String COLUMN_APP_LINK_POSTER_ART_URI = "app_link_poster_art_uri"; - field public static final String COLUMN_APP_LINK_TEXT = "app_link_text"; - field public static final String COLUMN_BROADCAST_GENRE = "broadcast_genre"; - field @FlaggedApi("android.media.tv.flags.broadcast_visibility_types") public static final String COLUMN_BROADCAST_VISIBILITY_TYPE = "broadcast_visibility_type"; - field public static final String COLUMN_BROWSABLE = "browsable"; - field public static final String COLUMN_CHANNEL_LIST_ID = "channel_list_id"; - field public static final String COLUMN_DESCRIPTION = "description"; - field public static final String COLUMN_DISPLAY_NAME = "display_name"; - field public static final String COLUMN_DISPLAY_NUMBER = "display_number"; - field public static final String COLUMN_GLOBAL_CONTENT_ID = "global_content_id"; - field public static final String COLUMN_INPUT_ID = "input_id"; - field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; - field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; - field public static final String COLUMN_LOCKED = "locked"; - field public static final String COLUMN_NETWORK_AFFILIATION = "network_affiliation"; - field public static final String COLUMN_ORIGINAL_NETWORK_ID = "original_network_id"; - field public static final String COLUMN_REMOTE_CONTROL_KEY_PRESET_NUMBER = "remote_control_key_preset_number"; - field public static final String COLUMN_SCRAMBLED = "scrambled"; - field public static final String COLUMN_SEARCHABLE = "searchable"; - field public static final String COLUMN_SERVICE_ID = "service_id"; - field public static final String COLUMN_SERVICE_TYPE = "service_type"; - field public static final String COLUMN_TRANSIENT = "transient"; - field public static final String COLUMN_TRANSPORT_STREAM_ID = "transport_stream_id"; - field public static final String COLUMN_TYPE = "type"; - field public static final String COLUMN_VERSION_NUMBER = "version_number"; - field public static final String COLUMN_VIDEO_FORMAT = "video_format"; - field public static final String COLUMN_VIDEO_RESOLUTION = "video_resolution"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/channel"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/channel"; - field public static final android.net.Uri CONTENT_URI; - field public static final String SERVICE_TYPE_AUDIO = "SERVICE_TYPE_AUDIO"; - field public static final String SERVICE_TYPE_AUDIO_VIDEO = "SERVICE_TYPE_AUDIO_VIDEO"; - field public static final String SERVICE_TYPE_OTHER = "SERVICE_TYPE_OTHER"; - field public static final String TYPE_1SEG = "TYPE_1SEG"; - field public static final String TYPE_ATSC3_T = "TYPE_ATSC3_T"; - field public static final String TYPE_ATSC_C = "TYPE_ATSC_C"; - field public static final String TYPE_ATSC_M_H = "TYPE_ATSC_M_H"; - field public static final String TYPE_ATSC_T = "TYPE_ATSC_T"; - field public static final String TYPE_CMMB = "TYPE_CMMB"; - field public static final String TYPE_DTMB = "TYPE_DTMB"; - field public static final String TYPE_DVB_C = "TYPE_DVB_C"; - field public static final String TYPE_DVB_C2 = "TYPE_DVB_C2"; - field public static final String TYPE_DVB_H = "TYPE_DVB_H"; - field public static final String TYPE_DVB_S = "TYPE_DVB_S"; - field public static final String TYPE_DVB_S2 = "TYPE_DVB_S2"; - field public static final String TYPE_DVB_SH = "TYPE_DVB_SH"; - field public static final String TYPE_DVB_T = "TYPE_DVB_T"; - field public static final String TYPE_DVB_T2 = "TYPE_DVB_T2"; - field public static final String TYPE_ISDB_C = "TYPE_ISDB_C"; - field public static final String TYPE_ISDB_S = "TYPE_ISDB_S"; - field public static final String TYPE_ISDB_S3 = "TYPE_ISDB_S3"; - field public static final String TYPE_ISDB_T = "TYPE_ISDB_T"; - field public static final String TYPE_ISDB_TB = "TYPE_ISDB_TB"; - field public static final String TYPE_NTSC = "TYPE_NTSC"; - field public static final String TYPE_OTHER = "TYPE_OTHER"; - field public static final String TYPE_PAL = "TYPE_PAL"; - field public static final String TYPE_PREVIEW = "TYPE_PREVIEW"; - field public static final String TYPE_SECAM = "TYPE_SECAM"; - field public static final String TYPE_S_DMB = "TYPE_S_DMB"; - field public static final String TYPE_T_DMB = "TYPE_T_DMB"; - field public static final String VIDEO_FORMAT_1080I = "VIDEO_FORMAT_1080I"; - field public static final String VIDEO_FORMAT_1080P = "VIDEO_FORMAT_1080P"; - field public static final String VIDEO_FORMAT_2160P = "VIDEO_FORMAT_2160P"; - field public static final String VIDEO_FORMAT_240P = "VIDEO_FORMAT_240P"; - field public static final String VIDEO_FORMAT_360P = "VIDEO_FORMAT_360P"; - field public static final String VIDEO_FORMAT_4320P = "VIDEO_FORMAT_4320P"; - field public static final String VIDEO_FORMAT_480I = "VIDEO_FORMAT_480I"; - field public static final String VIDEO_FORMAT_480P = "VIDEO_FORMAT_480P"; - field public static final String VIDEO_FORMAT_576I = "VIDEO_FORMAT_576I"; - field public static final String VIDEO_FORMAT_576P = "VIDEO_FORMAT_576P"; - field public static final String VIDEO_FORMAT_720P = "VIDEO_FORMAT_720P"; - field public static final String VIDEO_RESOLUTION_ED = "VIDEO_RESOLUTION_ED"; - field public static final String VIDEO_RESOLUTION_FHD = "VIDEO_RESOLUTION_FHD"; - field public static final String VIDEO_RESOLUTION_HD = "VIDEO_RESOLUTION_HD"; - field public static final String VIDEO_RESOLUTION_SD = "VIDEO_RESOLUTION_SD"; - field public static final String VIDEO_RESOLUTION_UHD = "VIDEO_RESOLUTION_UHD"; - } - - public static final class TvContract.Channels.Logo { - field public static final String CONTENT_DIRECTORY = "logo"; - } - - public static final class TvContract.PreviewPrograms implements android.media.tv.TvContract.BaseTvColumns { - field public static final int ASPECT_RATIO_16_9 = 0; // 0x0 - field public static final int ASPECT_RATIO_1_1 = 3; // 0x3 - field public static final int ASPECT_RATIO_2_3 = 4; // 0x4 - field public static final int ASPECT_RATIO_3_2 = 1; // 0x1 - field public static final int ASPECT_RATIO_4_3 = 2; // 0x2 - field public static final int AVAILABILITY_AVAILABLE = 0; // 0x0 - field public static final int AVAILABILITY_FREE_WITH_SUBSCRIPTION = 1; // 0x1 - field public static final int AVAILABILITY_PAID_CONTENT = 2; // 0x2 - field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language"; - field public static final String COLUMN_AUTHOR = "author"; - field public static final String COLUMN_AVAILABILITY = "availability"; - field public static final String COLUMN_BROWSABLE = "browsable"; - field public static final String COLUMN_CANONICAL_GENRE = "canonical_genre"; - field public static final String COLUMN_CHANNEL_ID = "channel_id"; - field public static final String COLUMN_CONTENT_ID = "content_id"; - field public static final String COLUMN_CONTENT_RATING = "content_rating"; - field public static final String COLUMN_DURATION_MILLIS = "duration_millis"; - field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis"; - field public static final String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; - field public static final String COLUMN_EPISODE_TITLE = "episode_title"; - field public static final String COLUMN_INTENT_URI = "intent_uri"; - field public static final String COLUMN_INTERACTION_COUNT = "interaction_count"; - field public static final String COLUMN_INTERACTION_TYPE = "interaction_type"; - field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; - field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; - field public static final String COLUMN_ITEM_COUNT = "item_count"; - field public static final String COLUMN_LAST_PLAYBACK_POSITION_MILLIS = "last_playback_position_millis"; - field public static final String COLUMN_LIVE = "live"; - field public static final String COLUMN_LOGO_URI = "logo_uri"; - field public static final String COLUMN_LONG_DESCRIPTION = "long_description"; - field public static final String COLUMN_OFFER_PRICE = "offer_price"; - field public static final String COLUMN_POSTER_ART_ASPECT_RATIO = "poster_art_aspect_ratio"; - field public static final String COLUMN_POSTER_ART_URI = "poster_art_uri"; - field public static final String COLUMN_PREVIEW_VIDEO_URI = "preview_video_uri"; - field public static final String COLUMN_RELEASE_DATE = "release_date"; - field public static final String COLUMN_REVIEW_RATING = "review_rating"; - field public static final String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; - field public static final String COLUMN_SEARCHABLE = "searchable"; - field public static final String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; - field public static final String COLUMN_SEASON_TITLE = "season_title"; - field public static final String COLUMN_SERIES_ID = "series_id"; - field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; - field public static final String COLUMN_SPLIT_ID = "split_id"; - field public static final String COLUMN_STARTING_PRICE = "starting_price"; - field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; - field public static final String COLUMN_THUMBNAIL_ASPECT_RATIO = "poster_thumbnail_aspect_ratio"; - field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; - field public static final String COLUMN_TITLE = "title"; - field public static final String COLUMN_TRANSIENT = "transient"; - field public static final String COLUMN_TYPE = "type"; - field public static final String COLUMN_VERSION_NUMBER = "version_number"; - field public static final String COLUMN_VIDEO_HEIGHT = "video_height"; - field public static final String COLUMN_VIDEO_WIDTH = "video_width"; - field public static final String COLUMN_WEIGHT = "weight"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/preview_program"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/preview_program"; - field public static final android.net.Uri CONTENT_URI; - field public static final int INTERACTION_TYPE_FANS = 3; // 0x3 - field public static final int INTERACTION_TYPE_FOLLOWERS = 2; // 0x2 - field public static final int INTERACTION_TYPE_LIKES = 4; // 0x4 - field public static final int INTERACTION_TYPE_LISTENS = 1; // 0x1 - field public static final int INTERACTION_TYPE_THUMBS = 5; // 0x5 - field public static final int INTERACTION_TYPE_VIEWERS = 6; // 0x6 - field public static final int INTERACTION_TYPE_VIEWS = 0; // 0x0 - field public static final int REVIEW_RATING_STYLE_PERCENTAGE = 2; // 0x2 - field public static final int REVIEW_RATING_STYLE_STARS = 0; // 0x0 - field public static final int REVIEW_RATING_STYLE_THUMBS_UP_DOWN = 1; // 0x1 - field public static final int TYPE_ALBUM = 8; // 0x8 - field public static final int TYPE_ARTIST = 9; // 0x9 - field public static final int TYPE_CHANNEL = 6; // 0x6 - field public static final int TYPE_CLIP = 4; // 0x4 - field public static final int TYPE_EVENT = 5; // 0x5 - field public static final int TYPE_MOVIE = 0; // 0x0 - field public static final int TYPE_PLAYLIST = 10; // 0xa - field public static final int TYPE_STATION = 11; // 0xb - field public static final int TYPE_TRACK = 7; // 0x7 - field public static final int TYPE_TV_EPISODE = 3; // 0x3 - field public static final int TYPE_TV_SEASON = 2; // 0x2 - field public static final int TYPE_TV_SERIES = 1; // 0x1 - } - - public static final class TvContract.Programs implements android.media.tv.TvContract.BaseTvColumns { - field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language"; - field public static final String COLUMN_BROADCAST_GENRE = "broadcast_genre"; - field public static final String COLUMN_CANONICAL_GENRE = "canonical_genre"; - field public static final String COLUMN_CHANNEL_ID = "channel_id"; - field public static final String COLUMN_CONTENT_RATING = "content_rating"; - field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis"; - field public static final String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; - field @Deprecated public static final String COLUMN_EPISODE_NUMBER = "episode_number"; - field public static final String COLUMN_EPISODE_TITLE = "episode_title"; - field public static final String COLUMN_EVENT_ID = "event_id"; - field public static final String COLUMN_GLOBAL_CONTENT_ID = "global_content_id"; - field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; - field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; - field public static final String COLUMN_LONG_DESCRIPTION = "long_description"; - field public static final String COLUMN_MULTI_SERIES_ID = "multi_series_id"; - field public static final String COLUMN_POSTER_ART_URI = "poster_art_uri"; - field public static final String COLUMN_RECORDING_PROHIBITED = "recording_prohibited"; - field public static final String COLUMN_REVIEW_RATING = "review_rating"; - field public static final String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; - field public static final String COLUMN_SCRAMBLED = "scrambled"; - field public static final String COLUMN_SEARCHABLE = "searchable"; - field public static final String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; - field @Deprecated public static final String COLUMN_SEASON_NUMBER = "season_number"; - field public static final String COLUMN_SEASON_TITLE = "season_title"; - field public static final String COLUMN_SERIES_ID = "series_id"; - field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; - field public static final String COLUMN_SPLIT_ID = "split_id"; - field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; - field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; - field public static final String COLUMN_TITLE = "title"; - field public static final String COLUMN_VERSION_NUMBER = "version_number"; - field public static final String COLUMN_VIDEO_HEIGHT = "video_height"; - field public static final String COLUMN_VIDEO_WIDTH = "video_width"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/program"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/program"; - field public static final android.net.Uri CONTENT_URI; - field public static final int REVIEW_RATING_STYLE_PERCENTAGE = 2; // 0x2 - field public static final int REVIEW_RATING_STYLE_STARS = 0; // 0x0 - field public static final int REVIEW_RATING_STYLE_THUMBS_UP_DOWN = 1; // 0x1 - } - - public static final class TvContract.Programs.Genres { - method public static String[] decode(@NonNull String); - method public static String encode(@NonNull java.lang.String...); - method public static boolean isCanonical(String); - field public static final String ANIMAL_WILDLIFE = "ANIMAL_WILDLIFE"; - field public static final String ARTS = "ARTS"; - field public static final String COMEDY = "COMEDY"; - field public static final String DRAMA = "DRAMA"; - field public static final String EDUCATION = "EDUCATION"; - field public static final String ENTERTAINMENT = "ENTERTAINMENT"; - field public static final String FAMILY_KIDS = "FAMILY_KIDS"; - field public static final String GAMING = "GAMING"; - field public static final String LIFE_STYLE = "LIFE_STYLE"; - field public static final String MOVIES = "MOVIES"; - field public static final String MUSIC = "MUSIC"; - field public static final String NEWS = "NEWS"; - field public static final String PREMIER = "PREMIER"; - field public static final String SHOPPING = "SHOPPING"; - field public static final String SPORTS = "SPORTS"; - field public static final String TECH_SCIENCE = "TECH_SCIENCE"; - field public static final String TRAVEL = "TRAVEL"; - } - - public static final class TvContract.RecordedPrograms implements android.media.tv.TvContract.BaseTvColumns { - field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language"; - field public static final String COLUMN_BROADCAST_GENRE = "broadcast_genre"; - field public static final String COLUMN_CANONICAL_GENRE = "canonical_genre"; - field public static final String COLUMN_CHANNEL_ID = "channel_id"; - field public static final String COLUMN_CONTENT_RATING = "content_rating"; - field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis"; - field public static final String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; - field public static final String COLUMN_EPISODE_TITLE = "episode_title"; - field public static final String COLUMN_INPUT_ID = "input_id"; - field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; - field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; - field public static final String COLUMN_LONG_DESCRIPTION = "long_description"; - field public static final String COLUMN_MULTI_SERIES_ID = "multi_series_id"; - field public static final String COLUMN_POSTER_ART_URI = "poster_art_uri"; - field public static final String COLUMN_RECORDING_DATA_BYTES = "recording_data_bytes"; - field public static final String COLUMN_RECORDING_DATA_URI = "recording_data_uri"; - field public static final String COLUMN_RECORDING_DURATION_MILLIS = "recording_duration_millis"; - field public static final String COLUMN_RECORDING_EXPIRE_TIME_UTC_MILLIS = "recording_expire_time_utc_millis"; - field public static final String COLUMN_REVIEW_RATING = "review_rating"; - field public static final String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; - field public static final String COLUMN_SEARCHABLE = "searchable"; - field public static final String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; - field public static final String COLUMN_SEASON_TITLE = "season_title"; - field public static final String COLUMN_SERIES_ID = "series_id"; - field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; - field public static final String COLUMN_SPLIT_ID = "split_id"; - field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; - field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; - field public static final String COLUMN_TITLE = "title"; - field public static final String COLUMN_VERSION_NUMBER = "version_number"; - field public static final String COLUMN_VIDEO_HEIGHT = "video_height"; - field public static final String COLUMN_VIDEO_WIDTH = "video_width"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/recorded_program"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/recorded_program"; - field public static final android.net.Uri CONTENT_URI; - field public static final int REVIEW_RATING_STYLE_PERCENTAGE = 2; // 0x2 - field public static final int REVIEW_RATING_STYLE_STARS = 0; // 0x0 - field public static final int REVIEW_RATING_STYLE_THUMBS_UP_DOWN = 1; // 0x1 - } - - public static final class TvContract.WatchNextPrograms implements android.media.tv.TvContract.BaseTvColumns { - field public static final int ASPECT_RATIO_16_9 = 0; // 0x0 - field public static final int ASPECT_RATIO_1_1 = 3; // 0x3 - field public static final int ASPECT_RATIO_2_3 = 4; // 0x4 - field public static final int ASPECT_RATIO_3_2 = 1; // 0x1 - field public static final int ASPECT_RATIO_4_3 = 2; // 0x2 - field public static final int AVAILABILITY_AVAILABLE = 0; // 0x0 - field public static final int AVAILABILITY_FREE_WITH_SUBSCRIPTION = 1; // 0x1 - field public static final int AVAILABILITY_PAID_CONTENT = 2; // 0x2 - field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language"; - field public static final String COLUMN_AUTHOR = "author"; - field public static final String COLUMN_AVAILABILITY = "availability"; - field public static final String COLUMN_BROWSABLE = "browsable"; - field public static final String COLUMN_CANONICAL_GENRE = "canonical_genre"; - field public static final String COLUMN_CONTENT_ID = "content_id"; - field public static final String COLUMN_CONTENT_RATING = "content_rating"; - field public static final String COLUMN_DURATION_MILLIS = "duration_millis"; - field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis"; - field public static final String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; - field public static final String COLUMN_EPISODE_TITLE = "episode_title"; - field public static final String COLUMN_INTENT_URI = "intent_uri"; - field public static final String COLUMN_INTERACTION_COUNT = "interaction_count"; - field public static final String COLUMN_INTERACTION_TYPE = "interaction_type"; - field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; - field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; - field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; - field public static final String COLUMN_ITEM_COUNT = "item_count"; - field public static final String COLUMN_LAST_ENGAGEMENT_TIME_UTC_MILLIS = "last_engagement_time_utc_millis"; - field public static final String COLUMN_LAST_PLAYBACK_POSITION_MILLIS = "last_playback_position_millis"; - field public static final String COLUMN_LIVE = "live"; - field public static final String COLUMN_LOGO_URI = "logo_uri"; - field public static final String COLUMN_LONG_DESCRIPTION = "long_description"; - field public static final String COLUMN_OFFER_PRICE = "offer_price"; - field public static final String COLUMN_POSTER_ART_ASPECT_RATIO = "poster_art_aspect_ratio"; - field public static final String COLUMN_POSTER_ART_URI = "poster_art_uri"; - field public static final String COLUMN_PREVIEW_VIDEO_URI = "preview_video_uri"; - field public static final String COLUMN_RELEASE_DATE = "release_date"; - field public static final String COLUMN_REVIEW_RATING = "review_rating"; - field public static final String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; - field public static final String COLUMN_SEARCHABLE = "searchable"; - field public static final String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; - field public static final String COLUMN_SEASON_TITLE = "season_title"; - field public static final String COLUMN_SERIES_ID = "series_id"; - field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; - field public static final String COLUMN_SPLIT_ID = "split_id"; - field public static final String COLUMN_STARTING_PRICE = "starting_price"; - field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; - field public static final String COLUMN_THUMBNAIL_ASPECT_RATIO = "poster_thumbnail_aspect_ratio"; - field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; - field public static final String COLUMN_TITLE = "title"; - field public static final String COLUMN_TRANSIENT = "transient"; - field public static final String COLUMN_TYPE = "type"; - field public static final String COLUMN_VERSION_NUMBER = "version_number"; - field public static final String COLUMN_VIDEO_HEIGHT = "video_height"; - field public static final String COLUMN_VIDEO_WIDTH = "video_width"; - field public static final String COLUMN_WATCH_NEXT_TYPE = "watch_next_type"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/watch_next_program"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/watch_next_program"; - field public static final android.net.Uri CONTENT_URI; - field public static final int INTERACTION_TYPE_FANS = 3; // 0x3 - field public static final int INTERACTION_TYPE_FOLLOWERS = 2; // 0x2 - field public static final int INTERACTION_TYPE_LIKES = 4; // 0x4 - field public static final int INTERACTION_TYPE_LISTENS = 1; // 0x1 - field public static final int INTERACTION_TYPE_THUMBS = 5; // 0x5 - field public static final int INTERACTION_TYPE_VIEWERS = 6; // 0x6 - field public static final int INTERACTION_TYPE_VIEWS = 0; // 0x0 - field public static final int REVIEW_RATING_STYLE_PERCENTAGE = 2; // 0x2 - field public static final int REVIEW_RATING_STYLE_STARS = 0; // 0x0 - field public static final int REVIEW_RATING_STYLE_THUMBS_UP_DOWN = 1; // 0x1 - field public static final int TYPE_ALBUM = 8; // 0x8 - field public static final int TYPE_ARTIST = 9; // 0x9 - field public static final int TYPE_CHANNEL = 6; // 0x6 - field public static final int TYPE_CLIP = 4; // 0x4 - field public static final int TYPE_EVENT = 5; // 0x5 - field public static final int TYPE_MOVIE = 0; // 0x0 - field public static final int TYPE_PLAYLIST = 10; // 0xa - field public static final int TYPE_STATION = 11; // 0xb - field public static final int TYPE_TRACK = 7; // 0x7 - field public static final int TYPE_TV_EPISODE = 3; // 0x3 - field public static final int TYPE_TV_SEASON = 2; // 0x2 - field public static final int TYPE_TV_SERIES = 1; // 0x1 - field public static final int WATCH_NEXT_TYPE_CONTINUE = 0; // 0x0 - field public static final int WATCH_NEXT_TYPE_NEW = 2; // 0x2 - field public static final int WATCH_NEXT_TYPE_NEXT = 1; // 0x1 - field public static final int WATCH_NEXT_TYPE_WATCHLIST = 3; // 0x3 - } - - public final class TvInputInfo implements android.os.Parcelable { - method public boolean canPauseRecording(); - method public boolean canRecord(); - method @Deprecated public android.content.Intent createSettingsIntent(); - method public android.content.Intent createSetupIntent(); - method public int describeContents(); - method public android.os.Bundle getExtras(); - method public String getId(); - method public String getParentId(); - method public android.content.pm.ServiceInfo getServiceInfo(); - method public int getTunerCount(); - method public int getType(); - method public boolean isHidden(android.content.Context); - method public boolean isPassthroughInput(); - method public CharSequence loadCustomLabel(android.content.Context); - method public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.Context); - method public CharSequence loadLabel(@NonNull android.content.Context); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String EXTRA_INPUT_ID = "android.media.tv.extra.INPUT_ID"; - field public static final int TYPE_COMPONENT = 1004; // 0x3ec - field public static final int TYPE_COMPOSITE = 1001; // 0x3e9 - field public static final int TYPE_DISPLAY_PORT = 1008; // 0x3f0 - field public static final int TYPE_DVI = 1006; // 0x3ee - field public static final int TYPE_HDMI = 1007; // 0x3ef - field public static final int TYPE_OTHER = 1000; // 0x3e8 - field public static final int TYPE_SCART = 1003; // 0x3eb - field public static final int TYPE_SVIDEO = 1002; // 0x3ea - field public static final int TYPE_TUNER = 0; // 0x0 - field public static final int TYPE_VGA = 1005; // 0x3ed - } - - public static final class TvInputInfo.Builder { - ctor public TvInputInfo.Builder(android.content.Context, android.content.ComponentName); - method public android.media.tv.TvInputInfo build(); - method @NonNull public android.media.tv.TvInputInfo.Builder setCanPauseRecording(boolean); - method public android.media.tv.TvInputInfo.Builder setCanRecord(boolean); - method public android.media.tv.TvInputInfo.Builder setExtras(android.os.Bundle); - method public android.media.tv.TvInputInfo.Builder setTunerCount(int); - } - - public final class TvInputManager { - method public java.util.List getBlockedRatings(); - method public int getInputState(@NonNull String); - method @Nullable public android.media.tv.TvInputInfo getTvInputInfo(@NonNull String); - method public java.util.List getTvInputList(); - method public boolean isParentalControlsEnabled(); - method public boolean isRatingBlocked(@NonNull android.media.tv.TvContentRating); - method public void registerCallback(@NonNull android.media.tv.TvInputManager.TvInputCallback, @NonNull android.os.Handler); - method public void unregisterCallback(@NonNull android.media.tv.TvInputManager.TvInputCallback); - method public void updateTvInputInfo(@NonNull android.media.tv.TvInputInfo); - field public static final String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED"; - field public static final String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED"; - field public static final String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS"; - field public static final String ACTION_SETUP_INPUTS = "android.media.tv.action.SETUP_INPUTS"; - field public static final String ACTION_VIEW_RECORDING_SCHEDULES = "android.media.tv.action.VIEW_RECORDING_SCHEDULES"; - field public static final int BROADCAST_INFO_STREAM_EVENT = 5; // 0x5 - field public static final int BROADCAST_INFO_TYPE_COMMAND = 7; // 0x7 - field public static final int BROADCAST_INFO_TYPE_DSMCC = 6; // 0x6 - field public static final int BROADCAST_INFO_TYPE_PES = 4; // 0x4 - field public static final int BROADCAST_INFO_TYPE_SECTION = 3; // 0x3 - field public static final int BROADCAST_INFO_TYPE_TABLE = 2; // 0x2 - field public static final int BROADCAST_INFO_TYPE_TIMELINE = 8; // 0x8 - field public static final int BROADCAST_INFO_TYPE_TS = 1; // 0x1 - field public static final int INPUT_STATE_CONNECTED = 0; // 0x0 - field public static final int INPUT_STATE_CONNECTED_STANDBY = 1; // 0x1 - field public static final int INPUT_STATE_DISCONNECTED = 2; // 0x2 - field public static final String META_DATA_CONTENT_RATING_SYSTEMS = "android.media.tv.metadata.CONTENT_RATING_SYSTEMS"; - field public static final int RECORDING_ERROR_INSUFFICIENT_SPACE = 1; // 0x1 - field public static final int RECORDING_ERROR_RESOURCE_BUSY = 2; // 0x2 - field public static final int RECORDING_ERROR_UNKNOWN = 0; // 0x0 - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_AD_BUFFER = "ad_buffer"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_AD_RESPONSE = "ad_response"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_BROADCAST_INFO_RESPONSE = "broadcast_info_response"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_CHANNEL_URI = "channel_uri"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_TRACKS = "tracks"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_TRACK_ID = "track_id"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_TRACK_TYPE = "track_type"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_TV_MESSAGE_TYPE = "tv_message_type"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_VIDEO_UNAVAILABLE_REASON = "video_unavailable_reason"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_AD_BUFFER_CONSUMED = "ad_buffer_consumed"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_AD_RESPONSE = "ad_response"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_BROADCAST_INFO_RESPONSE = "broadcast_info_response"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_TRACKS_CHANGED = "tracks_changed"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_TRACK_SELECTED = "track_selected"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_TUNED = "tuned"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_TV_MESSAGE = "tv_message"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_VIDEO_AVAILABLE = "video_available"; - field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_VIDEO_UNAVAILABLE = "video_unavailable"; - field public static final int SIGNAL_STRENGTH_LOST = 1; // 0x1 - field public static final int SIGNAL_STRENGTH_STRONG = 3; // 0x3 - field public static final int SIGNAL_STRENGTH_WEAK = 2; // 0x2 - field public static final long TIME_SHIFT_INVALID_TIME = -9223372036854775808L; // 0x8000000000000000L - field public static final int TIME_SHIFT_MODE_AUTO = 4; // 0x4 - field public static final int TIME_SHIFT_MODE_LOCAL = 2; // 0x2 - field public static final int TIME_SHIFT_MODE_NETWORK = 3; // 0x3 - field public static final int TIME_SHIFT_MODE_OFF = 1; // 0x1 - field public static final int TIME_SHIFT_STATUS_AVAILABLE = 3; // 0x3 - field public static final int TIME_SHIFT_STATUS_UNAVAILABLE = 2; // 0x2 - field public static final int TIME_SHIFT_STATUS_UNKNOWN = 0; // 0x0 - field public static final int TIME_SHIFT_STATUS_UNSUPPORTED = 1; // 0x1 - field public static final long TV_MESSAGE_GROUP_ID_NONE = -1L; // 0xffffffffffffffffL - field public static final String TV_MESSAGE_KEY_GROUP_ID = "android.media.tv.TvInputManager.group_id"; - field public static final String TV_MESSAGE_KEY_RAW_DATA = "android.media.tv.TvInputManager.raw_data"; - field public static final String TV_MESSAGE_KEY_STREAM_ID = "android.media.tv.TvInputManager.stream_id"; - field public static final String TV_MESSAGE_KEY_SUBTYPE = "android.media.tv.TvInputManager.subtype"; - field public static final String TV_MESSAGE_SUBTYPE_CC_608E = "CTA 608-E"; - field public static final String TV_MESSAGE_SUBTYPE_WATERMARKING_A335 = "ATSC A/335"; - field public static final int TV_MESSAGE_TYPE_CLOSED_CAPTION = 2; // 0x2 - field public static final int TV_MESSAGE_TYPE_OTHER = 1000; // 0x3e8 - field public static final int TV_MESSAGE_TYPE_WATERMARK = 1; // 0x1 - field public static final int VIDEO_UNAVAILABLE_REASON_AUDIO_ONLY = 4; // 0x4 - field public static final int VIDEO_UNAVAILABLE_REASON_BUFFERING = 3; // 0x3 - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_BLACKOUT = 16; // 0x10 - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_CARD_INVALID = 15; // 0xf - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_CARD_MUTE = 14; // 0xe - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_INSUFFICIENT_OUTPUT_PROTECTION = 7; // 0x7 - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_LICENSE_EXPIRED = 10; // 0xa - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_NEED_ACTIVATION = 11; // 0xb - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_NEED_PAIRING = 12; // 0xc - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_NO_CARD = 13; // 0xd - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_PVR_RECORDING_NOT_ALLOWED = 8; // 0x8 - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_REBOOTING = 17; // 0x11 - field public static final int VIDEO_UNAVAILABLE_REASON_CAS_UNKNOWN = 18; // 0x12 - field public static final int VIDEO_UNAVAILABLE_REASON_INSUFFICIENT_RESOURCE = 6; // 0x6 - field public static final int VIDEO_UNAVAILABLE_REASON_NOT_CONNECTED = 5; // 0x5 - field @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public static final int VIDEO_UNAVAILABLE_REASON_STOPPED = 19; // 0x13 - field public static final int VIDEO_UNAVAILABLE_REASON_TUNING = 1; // 0x1 - field public static final int VIDEO_UNAVAILABLE_REASON_UNKNOWN = 0; // 0x0 - field public static final int VIDEO_UNAVAILABLE_REASON_WEAK_SIGNAL = 2; // 0x2 - } - - public abstract static class TvInputManager.TvInputCallback { - ctor public TvInputManager.TvInputCallback(); - method public void onInputAdded(String); - method public void onInputRemoved(String); - method public void onInputStateChanged(String, int); - method public void onInputUpdated(String); - method public void onTvInputInfoUpdated(android.media.tv.TvInputInfo); - } - - public abstract class TvInputService extends android.app.Service { - ctor public TvInputService(); - method public final android.os.IBinder onBind(android.content.Intent); - method @Nullable public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(@NonNull String); - method @Nullable public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(@NonNull String, @NonNull String); - method @Nullable public abstract android.media.tv.TvInputService.Session onCreateSession(@NonNull String); - method @Nullable public android.media.tv.TvInputService.Session onCreateSession(@NonNull String, @NonNull String); - method @Nullable public android.media.tv.TvInputService.Session onCreateSession(@NonNull String, @NonNull String, @NonNull android.content.AttributionSource); - field public static final int PRIORITY_HINT_USE_CASE_TYPE_BACKGROUND = 100; // 0x64 - field public static final int PRIORITY_HINT_USE_CASE_TYPE_LIVE = 400; // 0x190 - field public static final int PRIORITY_HINT_USE_CASE_TYPE_PLAYBACK = 300; // 0x12c - field public static final int PRIORITY_HINT_USE_CASE_TYPE_RECORD = 500; // 0x1f4 - field public static final int PRIORITY_HINT_USE_CASE_TYPE_SCAN = 200; // 0xc8 - field public static final String SERVICE_INTERFACE = "android.media.tv.TvInputService"; - field public static final String SERVICE_META_DATA = "android.media.tv.input"; - } - - public abstract static class TvInputService.HardwareSession extends android.media.tv.TvInputService.Session { - ctor public TvInputService.HardwareSession(android.content.Context); - method public abstract String getHardwareInputId(); - method public void onHardwareVideoAvailable(); - method public void onHardwareVideoUnavailable(int); - method public final boolean onSetSurface(android.view.Surface); - } - - public abstract static class TvInputService.RecordingSession { - ctor public TvInputService.RecordingSession(android.content.Context); - method public void notifyError(int); - method public void notifyRecordingStopped(android.net.Uri); - method public void notifyTuned(android.net.Uri); - method public void onAppPrivateCommand(@NonNull String, android.os.Bundle); - method public void onPauseRecording(@NonNull android.os.Bundle); - method public abstract void onRelease(); - method public void onResumeRecording(@NonNull android.os.Bundle); - method public abstract void onStartRecording(@Nullable android.net.Uri); - method public void onStartRecording(@Nullable android.net.Uri, @NonNull android.os.Bundle); - method public abstract void onStopRecording(); - method public abstract void onTune(android.net.Uri); - method public void onTune(android.net.Uri, android.os.Bundle); - } - - public abstract static class TvInputService.Session implements android.view.KeyEvent.Callback { - ctor public TvInputService.Session(android.content.Context); - method public void layoutSurface(int, int, int, int); - method public void notifyAdBufferConsumed(@NonNull android.media.tv.AdBuffer); - method public void notifyAdResponse(@NonNull android.media.tv.AdResponse); - method public void notifyAitInfoUpdated(@NonNull android.media.tv.AitInfo); - method public void notifyAudioPresentationChanged(@NonNull java.util.List); - method public void notifyAudioPresentationSelected(int, int); - method public void notifyAvailableSpeeds(@NonNull float[]); - method public void notifyBroadcastInfoResponse(@NonNull android.media.tv.BroadcastInfoResponse); - method public void notifyChannelRetuned(android.net.Uri); - method public void notifyContentAllowed(); - method public void notifyContentBlocked(@NonNull android.media.tv.TvContentRating); - method public void notifyCueingMessageAvailability(boolean); - method public void notifySignalStrength(int); - method public void notifyTimeShiftMode(int); - method public void notifyTimeShiftStatusChanged(int); - method public void notifyTrackSelected(int, String); - method public void notifyTracksChanged(java.util.List); - method public void notifyTuned(@NonNull android.net.Uri); - method public void notifyTvMessage(int, @NonNull android.os.Bundle); - method public void notifyVideoAvailable(); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void notifyVideoFreezeUpdated(boolean); - method public void notifyVideoUnavailable(int); - method public void onAdBufferReady(@NonNull android.media.tv.AdBuffer); - method public void onAppPrivateCommand(@NonNull String, android.os.Bundle); - method public android.view.View onCreateOverlayView(); - method public boolean onGenericMotionEvent(android.view.MotionEvent); - method public boolean onKeyDown(int, android.view.KeyEvent); - method public boolean onKeyLongPress(int, android.view.KeyEvent); - method public boolean onKeyMultiple(int, int, android.view.KeyEvent); - method public boolean onKeyUp(int, android.view.KeyEvent); - method public void onOverlayViewSizeChanged(int, int); - method public abstract void onRelease(); - method public void onRemoveBroadcastInfo(int); - method public void onRequestAd(@NonNull android.media.tv.AdRequest); - method public void onRequestBroadcastInfo(@NonNull android.media.tv.BroadcastInfoRequest); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onResumePlayback(); - method public boolean onSelectAudioPresentation(int, int); - method public boolean onSelectTrack(int, @Nullable String); - method public abstract void onSetCaptionEnabled(boolean); - method public void onSetInteractiveAppNotificationEnabled(boolean); - method public abstract void onSetStreamVolume(@FloatRange(from=0.0, to=1.0) float); - method public abstract boolean onSetSurface(@Nullable android.view.Surface); - method public void onSetTvMessageEnabled(int, boolean); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onStopPlayback(int); - method public void onSurfaceChanged(int, int, int); - method public long onTimeShiftGetCurrentPosition(); - method public long onTimeShiftGetStartPosition(); - method public void onTimeShiftPause(); - method public void onTimeShiftPlay(android.net.Uri); - method public void onTimeShiftResume(); - method public void onTimeShiftSeekTo(long); - method public void onTimeShiftSetMode(int); - method public void onTimeShiftSetPlaybackParams(android.media.PlaybackParams); - method public boolean onTouchEvent(android.view.MotionEvent); - method public boolean onTrackballEvent(android.view.MotionEvent); - method public abstract boolean onTune(android.net.Uri); - method public boolean onTune(android.net.Uri, android.os.Bundle); - method @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public void onTvAdSessionData(@NonNull String, @NonNull android.os.Bundle); - method public void onTvMessage(int, @NonNull android.os.Bundle); - method public void onUnblockContent(android.media.tv.TvContentRating); - method @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public void sendTvInputSessionData(@NonNull String, @NonNull android.os.Bundle); - method public void setOverlayViewEnabled(boolean); - } - - public class TvRecordingClient { - ctor public TvRecordingClient(android.content.Context, String, @NonNull android.media.tv.TvRecordingClient.RecordingCallback, android.os.Handler); - method public void pauseRecording(); - method public void pauseRecording(@NonNull android.os.Bundle); - method public void release(); - method public void resumeRecording(); - method public void resumeRecording(@NonNull android.os.Bundle); - method public void sendAppPrivateCommand(@NonNull String, android.os.Bundle); - method public void setTvInteractiveAppView(@Nullable android.media.tv.interactive.TvInteractiveAppView, @Nullable String); - method public void startRecording(@Nullable android.net.Uri); - method public void startRecording(@Nullable android.net.Uri, @NonNull android.os.Bundle); - method public void stopRecording(); - method public void tune(String, android.net.Uri); - method public void tune(String, android.net.Uri, android.os.Bundle); - } - - public abstract static class TvRecordingClient.RecordingCallback { - ctor public TvRecordingClient.RecordingCallback(); - method public void onConnectionFailed(String); - method public void onDisconnected(String); - method public void onError(int); - method public void onRecordingStopped(android.net.Uri); - method public void onTuned(android.net.Uri); - } - - public final class TvRecordingInfo implements android.os.Parcelable { - ctor public TvRecordingInfo(@NonNull String, long, long, int, @NonNull String, @NonNull String, long, long, @NonNull android.net.Uri, @Nullable android.net.Uri, @NonNull java.util.List, @Nullable android.net.Uri, long, long); - method public int describeContents(); - method @NonNull public android.net.Uri getChannelUri(); - method @NonNull public java.util.List getContentRatings(); - method @NonNull public String getDescription(); - method public long getEndPaddingMillis(); - method @NonNull public String getName(); - method @Nullable public android.net.Uri getProgramUri(); - method @IntRange(from=0xffffffff) public long getRecordingDurationMillis(); - method @NonNull public String getRecordingId(); - method @IntRange(from=0xffffffff) public long getRecordingStartTimeMillis(); - method @Nullable public android.net.Uri getRecordingUri(); - method public int getRepeatDays(); - method @IntRange(from=0) public long getScheduledDurationMillis(); - method @IntRange(from=0) public long getScheduledStartTimeMillis(); - method public long getStartPaddingMillis(); - method public void setDescription(@NonNull String); - method public void setName(@NonNull String); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FRIDAY = 32; // 0x20 - field public static final int MONDAY = 2; // 0x2 - field public static final int RECORDING_ALL = 3; // 0x3 - field public static final int RECORDING_IN_PROGRESS = 2; // 0x2 - field public static final int RECORDING_SCHEDULED = 1; // 0x1 - field public static final int SATURDAY = 64; // 0x40 - field public static final int SUNDAY = 1; // 0x1 - field public static final int THURSDAY = 16; // 0x10 - field public static final int TUESDAY = 4; // 0x4 - field public static final int WEDNESDAY = 8; // 0x8 - } - - public final class TvTrackInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getAudioChannelCount(); - method public int getAudioSampleRate(); - method public CharSequence getDescription(); - method @Nullable public String getEncoding(); - method public android.os.Bundle getExtra(); - method public String getId(); - method public String getLanguage(); - method public int getType(); - method public byte getVideoActiveFormatDescription(); - method public float getVideoFrameRate(); - method public int getVideoHeight(); - method public float getVideoPixelAspectRatio(); - method public int getVideoWidth(); - method public boolean isAudioDescription(); - method public boolean isEncrypted(); - method public boolean isHardOfHearing(); - method public boolean isSpokenSubtitle(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_AUDIO = 0; // 0x0 - field public static final int TYPE_SUBTITLE = 2; // 0x2 - field public static final int TYPE_VIDEO = 1; // 0x1 - } - - public static final class TvTrackInfo.Builder { - ctor public TvTrackInfo.Builder(int, @NonNull String); - method @NonNull public android.media.tv.TvTrackInfo build(); - method @NonNull public android.media.tv.TvTrackInfo.Builder setAudioChannelCount(int); - method @NonNull public android.media.tv.TvTrackInfo.Builder setAudioDescription(boolean); - method @NonNull public android.media.tv.TvTrackInfo.Builder setAudioSampleRate(int); - method @NonNull public android.media.tv.TvTrackInfo.Builder setDescription(@NonNull CharSequence); - method @NonNull public android.media.tv.TvTrackInfo.Builder setEncoding(@Nullable String); - method @NonNull public android.media.tv.TvTrackInfo.Builder setEncrypted(boolean); - method @NonNull public android.media.tv.TvTrackInfo.Builder setExtra(@NonNull android.os.Bundle); - method @NonNull public android.media.tv.TvTrackInfo.Builder setHardOfHearing(boolean); - method @NonNull public android.media.tv.TvTrackInfo.Builder setLanguage(@NonNull String); - method @NonNull public android.media.tv.TvTrackInfo.Builder setSpokenSubtitle(boolean); - method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoActiveFormatDescription(byte); - method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoFrameRate(float); - method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoHeight(int); - method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoPixelAspectRatio(float); - method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoWidth(int); - } - - public class TvView extends android.view.ViewGroup { - ctor public TvView(android.content.Context); - ctor public TvView(android.content.Context, android.util.AttributeSet); - ctor public TvView(android.content.Context, android.util.AttributeSet, int); - method public boolean dispatchUnhandledInputEvent(android.view.InputEvent); - method @NonNull public java.util.List getAudioPresentations(); - method public String getSelectedTrack(int); - method public java.util.List getTracks(int); - method protected void onLayout(boolean, int, int, int, int); - method public boolean onUnhandledInputEvent(android.view.InputEvent); - method public void overrideTvAppAttributionSource(@NonNull android.content.AttributionSource); - method public void reset(); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void resumePlayback(); - method public void selectAudioPresentation(int, int); - method public void selectTrack(int, String); - method public void sendAppPrivateCommand(@NonNull String, android.os.Bundle); - method public void setCallback(@Nullable android.media.tv.TvView.TvInputCallback); - method public void setCaptionEnabled(boolean); - method public void setInteractiveAppNotificationEnabled(boolean); - method public void setOnUnhandledInputEventListener(android.media.tv.TvView.OnUnhandledInputEventListener); - method public void setStreamVolume(@FloatRange(from=0.0, to=1.0) float); - method public void setTimeShiftPositionCallback(@Nullable android.media.tv.TvView.TimeShiftPositionCallback); - method public void setTvMessageEnabled(int, boolean); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void setVideoFrozen(boolean); - method public void setZOrderMediaOverlay(boolean); - method public void setZOrderOnTop(boolean); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void stopPlayback(int); - method public void timeShiftPause(); - method public void timeShiftPlay(String, android.net.Uri); - method public void timeShiftResume(); - method public void timeShiftSeekTo(long); - method public void timeShiftSetMode(int); - method public void timeShiftSetPlaybackParams(@NonNull android.media.PlaybackParams); - method public void tune(@NonNull String, android.net.Uri); - method public void tune(String, android.net.Uri, android.os.Bundle); - } - - public static interface TvView.OnUnhandledInputEventListener { - method public boolean onUnhandledInputEvent(android.view.InputEvent); - } - - public abstract static class TvView.TimeShiftPositionCallback { - ctor public TvView.TimeShiftPositionCallback(); - method public void onTimeShiftCurrentPositionChanged(String, long); - method public void onTimeShiftStartPositionChanged(String, long); - } - - public abstract static class TvView.TvInputCallback { - ctor public TvView.TvInputCallback(); - method public void onAitInfoUpdated(@NonNull String, @NonNull android.media.tv.AitInfo); - method public void onAudioPresentationSelected(@NonNull String, int, int); - method public void onAudioPresentationsChanged(@NonNull String, @NonNull java.util.List); - method public void onAvailableSpeeds(@NonNull String, @NonNull float[]); - method public void onChannelRetuned(String, android.net.Uri); - method public void onConnectionFailed(String); - method public void onContentAllowed(String); - method public void onContentBlocked(String, android.media.tv.TvContentRating); - method public void onCueingMessageAvailability(@NonNull String, boolean); - method public void onDisconnected(String); - method public void onSignalStrengthUpdated(@NonNull String, int); - method public void onTimeShiftMode(@NonNull String, int); - method public void onTimeShiftStatusChanged(String, int); - method public void onTrackSelected(String, int, String); - method public void onTracksChanged(String, java.util.List); - method public void onTuned(@NonNull String, @NonNull android.net.Uri); - method public void onTvMessage(@NonNull String, int, @NonNull android.os.Bundle); - method public void onVideoAvailable(String); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onVideoFreezeUpdated(@NonNull String, boolean); - method public void onVideoSizeChanged(String, int, int); - method public void onVideoUnavailable(String, int); - } - -} - -package android.media.tv.ad { - - @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public final class TvAdManager { - method @NonNull public java.util.List getTvAdServiceList(); - method public void registerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.ad.TvAdManager.TvAdServiceCallback); - method public void sendAppLinkCommand(@NonNull String, @NonNull android.os.Bundle); - method public void unregisterCallback(@NonNull android.media.tv.ad.TvAdManager.TvAdServiceCallback); - field public static final String ACTION_APP_LINK_COMMAND = "android.media.tv.ad.action.APP_LINK_COMMAND"; - field public static final String APP_LINK_KEY_BACK_URI = "back_uri"; - field public static final String APP_LINK_KEY_CLASS_NAME = "class_name"; - field public static final String APP_LINK_KEY_COMMAND_TYPE = "command_type"; - field public static final String APP_LINK_KEY_PACKAGE_NAME = "package_name"; - field public static final String APP_LINK_KEY_SERVICE_ID = "service_id"; - field public static final int ERROR_BLOCKED = 5; // 0x5 - field public static final int ERROR_ENCRYPTED = 6; // 0x6 - field public static final int ERROR_NONE = 0; // 0x0 - field public static final int ERROR_NOT_SUPPORTED = 2; // 0x2 - field public static final int ERROR_RESOURCE_UNAVAILABLE = 4; // 0x4 - field public static final int ERROR_UNKNOWN = 1; // 0x1 - field public static final int ERROR_UNKNOWN_CHANNEL = 7; // 0x7 - field public static final int ERROR_WEAK_SIGNAL = 3; // 0x3 - field public static final String INTENT_KEY_AD_SERVICE_ID = "ad_service_id"; - field public static final String INTENT_KEY_CHANNEL_URI = "channel_uri"; - field public static final String INTENT_KEY_COMMAND_TYPE = "command_type"; - field public static final String INTENT_KEY_TV_INPUT_ID = "tv_input_id"; - field public static final String SESSION_DATA_KEY_AD_BUFFER = "ad_buffer"; - field public static final String SESSION_DATA_KEY_AD_REQUEST = "ad_request"; - field public static final String SESSION_DATA_KEY_BROADCAST_INFO_REQUEST = "broadcast_info_request"; - field public static final String SESSION_DATA_KEY_REQUEST_ID = "request_id"; - field public static final String SESSION_DATA_TYPE_AD_BUFFER_READY = "ad_buffer_ready"; - field public static final String SESSION_DATA_TYPE_AD_REQUEST = "ad_request"; - field public static final String SESSION_DATA_TYPE_BROADCAST_INFO_REQUEST = "broadcast_info_request"; - field public static final String SESSION_DATA_TYPE_REMOVE_BROADCAST_INFO_REQUEST = "remove_broadcast_info_request"; - field public static final int SESSION_STATE_ERROR = 3; // 0x3 - field public static final int SESSION_STATE_RUNNING = 2; // 0x2 - field public static final int SESSION_STATE_STOPPED = 1; // 0x1 - } - - public abstract static class TvAdManager.TvAdServiceCallback { - ctor public TvAdManager.TvAdServiceCallback(); - method public void onAdServiceAdded(@NonNull String); - method public void onAdServiceRemoved(@NonNull String); - method public void onAdServiceUpdated(@NonNull String); - } - - @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public abstract class TvAdService extends android.app.Service { - ctor public TvAdService(); - method public void onAppLinkCommand(@NonNull android.os.Bundle); - method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent); - method @Nullable public abstract android.media.tv.ad.TvAdService.Session onCreateSession(@NonNull String, @NonNull String); - field public static final String SERVICE_INTERFACE = "android.media.tv.ad.TvAdService"; - field public static final String SERVICE_META_DATA = "android.media.tv.ad.service"; - } - - public abstract static class TvAdService.Session implements android.view.KeyEvent.Callback { - ctor public TvAdService.Session(@NonNull android.content.Context); - method public boolean isMediaViewEnabled(); - method @CallSuper public void layoutSurface(int, int, int, int); - method @CallSuper public void notifySessionStateChanged(int, int); - method @Nullable public android.view.View onCreateMediaView(); - method public void onCurrentChannelUri(@Nullable android.net.Uri); - method public void onCurrentTvInputId(@Nullable String); - method public void onCurrentVideoBounds(@NonNull android.graphics.Rect); - method public void onError(@NonNull String, @NonNull android.os.Bundle); - method public boolean onGenericMotionEvent(@NonNull android.view.MotionEvent); - method public boolean onKeyDown(int, @Nullable android.view.KeyEvent); - method public boolean onKeyLongPress(int, @Nullable android.view.KeyEvent); - method public boolean onKeyMultiple(int, int, @Nullable android.view.KeyEvent); - method public boolean onKeyUp(int, @Nullable android.view.KeyEvent); - method public void onMediaViewSizeChanged(@Px int, @Px int); - method public abstract void onRelease(); - method public void onResetAdService(); - method public abstract boolean onSetSurface(@Nullable android.view.Surface); - method public void onSigningResult(@NonNull String, @NonNull byte[]); - method public void onStartAdService(); - method public void onStopAdService(); - method public void onSurfaceChanged(int, int, int); - method public boolean onTouchEvent(@NonNull android.view.MotionEvent); - method public void onTrackInfoList(@NonNull java.util.List); - method public boolean onTrackballEvent(@NonNull android.view.MotionEvent); - method public void onTvInputSessionData(@NonNull String, @NonNull android.os.Bundle); - method public void onTvMessage(int, @NonNull android.os.Bundle); - method @CallSuper public void requestCurrentChannelUri(); - method @CallSuper public void requestCurrentTvInputId(); - method @CallSuper public void requestCurrentVideoBounds(); - method @CallSuper public void requestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); - method @CallSuper public void requestTrackInfoList(); - method public void sendTvAdSessionData(@NonNull String, @NonNull android.os.Bundle); - method @CallSuper public void setMediaViewEnabled(boolean); - } - - @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public final class TvAdServiceInfo implements android.os.Parcelable { - ctor public TvAdServiceInfo(@NonNull android.content.Context, @NonNull android.content.ComponentName); - method public int describeContents(); - method @NonNull public String getId(); - method @Nullable public android.content.pm.ServiceInfo getServiceInfo(); - method @NonNull public java.util.List getSupportedTypes(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public class TvAdView extends android.view.ViewGroup { - ctor public TvAdView(@NonNull android.content.Context); - ctor public TvAdView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); - ctor public TvAdView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); - method public void clearCallback(); - method public void clearOnUnhandledInputEventListener(); - method public boolean dispatchUnhandledInputEvent(@NonNull android.view.InputEvent); - method @Nullable public android.media.tv.ad.TvAdView.OnUnhandledInputEventListener getOnUnhandledInputEventListener(); - method public void notifyError(@NonNull String, @NonNull android.os.Bundle); - method public void notifyTvMessage(@NonNull int, @NonNull android.os.Bundle); - method public void onAttachedToWindow(); - method public void onDetachedFromWindow(); - method public void onLayout(boolean, int, int, int, int); - method public void onMeasure(int, int); - method public boolean onUnhandledInputEvent(@NonNull android.view.InputEvent); - method public void onVisibilityChanged(@NonNull android.view.View, int); - method public void prepareAdService(@NonNull String, @NonNull String); - method public void reset(); - method public void resetAdService(); - method public void sendCurrentChannelUri(@Nullable android.net.Uri); - method public void sendCurrentTvInputId(@Nullable String); - method public void sendCurrentVideoBounds(@NonNull android.graphics.Rect); - method public void sendSigningResult(@NonNull String, @NonNull byte[]); - method public void sendTrackInfoList(@Nullable java.util.List); - method public void setCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.ad.TvAdView.TvAdCallback); - method public void setOnUnhandledInputEventListener(@NonNull android.media.tv.ad.TvAdView.OnUnhandledInputEventListener); - method public boolean setTvView(@Nullable android.media.tv.TvView); - method @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public void setZOrderMediaOverlay(boolean); - method @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public void setZOrderOnTop(boolean); - method public void startAdService(); - method public void stopAdService(); - field public static final String ERROR_KEY_ERROR_CODE = "error_code"; - field public static final String ERROR_KEY_METHOD_NAME = "method_name"; - } - - public static interface TvAdView.OnUnhandledInputEventListener { - method public boolean onUnhandledInputEvent(@NonNull android.view.InputEvent); - } - - public abstract static class TvAdView.TvAdCallback { - ctor public TvAdView.TvAdCallback(); - method public void onRequestCurrentChannelUri(@NonNull String); - method public void onRequestCurrentTvInputId(@NonNull String); - method public void onRequestCurrentVideoBounds(@NonNull String); - method public void onRequestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); - method public void onRequestTrackInfoList(@NonNull String); - method public void onStateChanged(@NonNull String, int, int); - } - -} - -package android.media.tv.interactive { - - public final class AppLinkInfo implements android.os.Parcelable { - ctor public AppLinkInfo(@NonNull String, @NonNull String, @NonNull String); - method public int describeContents(); - method @NonNull public android.content.ComponentName getComponentName(); - method @NonNull public android.net.Uri getUri(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class TvInteractiveAppManager { - method @NonNull public java.util.List getAppLinkInfoList(); - method @NonNull public java.util.List getTvInteractiveAppServiceList(); - method public void registerAppLinkInfo(@NonNull String, @NonNull android.media.tv.interactive.AppLinkInfo); - method public void registerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.interactive.TvInteractiveAppManager.TvInteractiveAppCallback); - method public void sendAppLinkCommand(@NonNull String, @NonNull android.os.Bundle); - method public void unregisterAppLinkInfo(@NonNull String, @NonNull android.media.tv.interactive.AppLinkInfo); - method public void unregisterCallback(@NonNull android.media.tv.interactive.TvInteractiveAppManager.TvInteractiveAppCallback); - field public static final String ACTION_APP_LINK_COMMAND = "android.media.tv.interactive.action.APP_LINK_COMMAND"; - field public static final String APP_LINK_KEY_BACK_URI = "back_uri"; - field public static final String APP_LINK_KEY_CLASS_NAME = "class_name"; - field public static final String APP_LINK_KEY_COMMAND_TYPE = "command_type"; - field public static final String APP_LINK_KEY_PACKAGE_NAME = "package_name"; - field public static final String APP_LINK_KEY_SERVICE_ID = "service_id"; - field public static final int ERROR_BLOCKED = 5; // 0x5 - field public static final int ERROR_ENCRYPTED = 6; // 0x6 - field public static final int ERROR_NONE = 0; // 0x0 - field public static final int ERROR_NOT_SUPPORTED = 2; // 0x2 - field public static final int ERROR_RESOURCE_UNAVAILABLE = 4; // 0x4 - field public static final int ERROR_UNKNOWN = 1; // 0x1 - field public static final int ERROR_UNKNOWN_CHANNEL = 7; // 0x7 - field public static final int ERROR_WEAK_SIGNAL = 3; // 0x3 - field public static final String INTENT_KEY_BI_INTERACTIVE_APP_TYPE = "bi_interactive_app_type"; - field public static final String INTENT_KEY_BI_INTERACTIVE_APP_URI = "bi_interactive_app_uri"; - field public static final String INTENT_KEY_CHANNEL_URI = "channel_uri"; - field public static final String INTENT_KEY_COMMAND_TYPE = "command_type"; - field public static final String INTENT_KEY_INTERACTIVE_APP_SERVICE_ID = "interactive_app_id"; - field public static final String INTENT_KEY_TV_INPUT_ID = "tv_input_id"; - field public static final int INTERACTIVE_APP_STATE_ERROR = 3; // 0x3 - field public static final int INTERACTIVE_APP_STATE_RUNNING = 2; // 0x2 - field public static final int INTERACTIVE_APP_STATE_STOPPED = 1; // 0x1 - field public static final int SERVICE_STATE_ERROR = 4; // 0x4 - field public static final int SERVICE_STATE_PREPARING = 2; // 0x2 - field public static final int SERVICE_STATE_READY = 3; // 0x3 - field public static final int SERVICE_STATE_UNREALIZED = 1; // 0x1 - field public static final int TELETEXT_APP_STATE_ERROR = 3; // 0x3 - field public static final int TELETEXT_APP_STATE_HIDE = 2; // 0x2 - field public static final int TELETEXT_APP_STATE_SHOW = 1; // 0x1 - } - - public abstract static class TvInteractiveAppManager.TvInteractiveAppCallback { - ctor public TvInteractiveAppManager.TvInteractiveAppCallback(); - method public void onInteractiveAppServiceAdded(@NonNull String); - method public void onInteractiveAppServiceRemoved(@NonNull String); - method public void onInteractiveAppServiceUpdated(@NonNull String); - method public void onTvInteractiveAppServiceStateChanged(@NonNull String, int, int, int); - } - - public abstract class TvInteractiveAppService extends android.app.Service { - ctor public TvInteractiveAppService(); - method public final void notifyStateChanged(int, int, int); - method public void onAppLinkCommand(@NonNull android.os.Bundle); - method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); - method @Nullable public abstract android.media.tv.interactive.TvInteractiveAppService.Session onCreateSession(@NonNull String, int); - method public void onRegisterAppLinkInfo(@NonNull android.media.tv.interactive.AppLinkInfo); - method public void onUnregisterAppLinkInfo(@NonNull android.media.tv.interactive.AppLinkInfo); - field public static final String COMMAND_PARAMETER_KEY_CHANGE_CHANNEL_QUIETLY = "command_change_channel_quietly"; - field public static final String COMMAND_PARAMETER_KEY_CHANNEL_URI = "command_channel_uri"; - field public static final String COMMAND_PARAMETER_KEY_INPUT_ID = "command_input_id"; - field public static final String COMMAND_PARAMETER_KEY_PLAYBACK_PARAMS = "command_playback_params"; - field public static final String COMMAND_PARAMETER_KEY_PROGRAM_URI = "command_program_uri"; - field public static final String COMMAND_PARAMETER_KEY_STOP_MODE = "command_stop_mode"; - field public static final String COMMAND_PARAMETER_KEY_TIME_POSITION = "command_time_position"; - field public static final String COMMAND_PARAMETER_KEY_TIME_SHIFT_MODE = "command_time_shift_mode"; - field public static final String COMMAND_PARAMETER_KEY_TRACK_ID = "command_track_id"; - field public static final String COMMAND_PARAMETER_KEY_TRACK_TYPE = "command_track_type"; - field public static final String COMMAND_PARAMETER_KEY_VOLUME = "command_volume"; - field public static final int COMMAND_PARAMETER_VALUE_STOP_MODE_BLANK = 1; // 0x1 - field public static final int COMMAND_PARAMETER_VALUE_STOP_MODE_FREEZE = 2; // 0x2 - field public static final String PLAYBACK_COMMAND_TYPE_SELECT_TRACK = "select_track"; - field public static final String PLAYBACK_COMMAND_TYPE_SET_STREAM_VOLUME = "set_stream_volume"; - field public static final String PLAYBACK_COMMAND_TYPE_STOP = "stop"; - field public static final String PLAYBACK_COMMAND_TYPE_TUNE = "tune"; - field public static final String PLAYBACK_COMMAND_TYPE_TUNE_NEXT = "tune_next"; - field public static final String PLAYBACK_COMMAND_TYPE_TUNE_PREV = "tune_previous"; - field public static final String SERVICE_INTERFACE = "android.media.tv.interactive.TvInteractiveAppService"; - field public static final String SERVICE_META_DATA = "android.media.tv.interactive.app"; - field public static final String TIME_SHIFT_COMMAND_TYPE_PAUSE = "pause"; - field public static final String TIME_SHIFT_COMMAND_TYPE_PLAY = "play"; - field public static final String TIME_SHIFT_COMMAND_TYPE_RESUME = "resume"; - field public static final String TIME_SHIFT_COMMAND_TYPE_SEEK_TO = "seek_to"; - field public static final String TIME_SHIFT_COMMAND_TYPE_SET_MODE = "set_mode"; - field public static final String TIME_SHIFT_COMMAND_TYPE_SET_PLAYBACK_PARAMS = "set_playback_params"; - } - - public abstract static class TvInteractiveAppService.Session implements android.view.KeyEvent.Callback { - ctor public TvInteractiveAppService.Session(@NonNull android.content.Context); - method public boolean isMediaViewEnabled(); - method @CallSuper public void layoutSurface(int, int, int, int); - method @CallSuper public void notifyAdBufferReady(@NonNull android.media.tv.AdBuffer); - method @CallSuper public final void notifyBiInteractiveAppCreated(@NonNull android.net.Uri, @Nullable String); - method @CallSuper public void notifySessionStateChanged(int, int); - method @CallSuper public final void notifyTeletextAppStateChanged(int); - method public void onAdBufferConsumed(@NonNull android.media.tv.AdBuffer); - method public void onAdResponse(@NonNull android.media.tv.AdResponse); - method public void onAvailableSpeeds(@NonNull float[]); - method public void onBroadcastInfoResponse(@NonNull android.media.tv.BroadcastInfoResponse); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onCertificate(@NonNull String, int, @NonNull android.net.http.SslCertificate); - method public void onContentAllowed(); - method public void onContentBlocked(@NonNull android.media.tv.TvContentRating); - method public void onCreateBiInteractiveAppRequest(@NonNull android.net.Uri, @Nullable android.os.Bundle); - method @Nullable public android.view.View onCreateMediaView(); - method public void onCurrentChannelLcn(int); - method public void onCurrentChannelUri(@Nullable android.net.Uri); - method public void onCurrentTvInputId(@Nullable String); - method public void onCurrentVideoBounds(@NonNull android.graphics.Rect); - method public void onDestroyBiInteractiveAppRequest(@NonNull String); - method public void onError(@NonNull String, @NonNull android.os.Bundle); - method public boolean onGenericMotionEvent(@NonNull android.view.MotionEvent); - method public boolean onKeyDown(int, @NonNull android.view.KeyEvent); - method public boolean onKeyLongPress(int, @NonNull android.view.KeyEvent); - method public boolean onKeyMultiple(int, int, @NonNull android.view.KeyEvent); - method public boolean onKeyUp(int, @NonNull android.view.KeyEvent); - method public void onMediaViewSizeChanged(@Px int, @Px int); - method public void onRecordingConnectionFailed(@NonNull String, @NonNull String); - method public void onRecordingDisconnected(@NonNull String, @NonNull String); - method public void onRecordingError(@NonNull String, int); - method public void onRecordingScheduled(@NonNull String, @Nullable String); - method public void onRecordingStarted(@NonNull String, @Nullable String); - method public void onRecordingStopped(@NonNull String); - method public void onRecordingTuned(@NonNull String, @NonNull android.net.Uri); - method public abstract void onRelease(); - method public void onResetInteractiveApp(); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onSelectedTrackInfo(@NonNull java.util.List); - method public abstract boolean onSetSurface(@Nullable android.view.Surface); - method public void onSetTeletextAppEnabled(boolean); - method public void onSignalStrength(int); - method public void onSigningResult(@NonNull String, @NonNull byte[]); - method public void onStartInteractiveApp(); - method public void onStopInteractiveApp(); - method public void onStreamVolume(float); - method public void onSurfaceChanged(int, int, int); - method public void onTimeShiftCurrentPositionChanged(@NonNull String, long); - method public void onTimeShiftMode(int); - method public void onTimeShiftPlaybackParams(@NonNull android.media.PlaybackParams); - method public void onTimeShiftStartPositionChanged(@NonNull String, long); - method public void onTimeShiftStatusChanged(@NonNull String, int); - method public boolean onTouchEvent(@NonNull android.view.MotionEvent); - method public void onTrackInfoList(@NonNull java.util.List); - method public void onTrackSelected(int, @NonNull String); - method public boolean onTrackballEvent(@NonNull android.view.MotionEvent); - method public void onTracksChanged(@NonNull java.util.List); - method public void onTuned(@NonNull android.net.Uri); - method public void onTvMessage(int, @NonNull android.os.Bundle); - method public void onTvRecordingInfo(@Nullable android.media.tv.TvRecordingInfo); - method public void onTvRecordingInfoList(@NonNull java.util.List); - method public void onVideoAvailable(); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onVideoFreezeUpdated(boolean); - method public void onVideoUnavailable(int); - method @CallSuper public void removeBroadcastInfo(int); - method @CallSuper public void requestAd(@NonNull android.media.tv.AdRequest); - method @CallSuper public void requestAvailableSpeeds(); - method @CallSuper public void requestBroadcastInfo(@NonNull android.media.tv.BroadcastInfoRequest); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") @CallSuper public void requestCertificate(@NonNull String, int); - method @CallSuper public void requestCurrentChannelLcn(); - method @CallSuper public void requestCurrentChannelUri(); - method @CallSuper public void requestCurrentTvInputId(); - method @CallSuper public void requestCurrentVideoBounds(); - method @CallSuper public void requestScheduleRecording(@NonNull String, @NonNull String, @NonNull android.net.Uri, @NonNull android.net.Uri, @NonNull android.os.Bundle); - method @CallSuper public void requestScheduleRecording(@NonNull String, @NonNull String, @NonNull android.net.Uri, long, long, int, @NonNull android.os.Bundle); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") @CallSuper public void requestSelectedTrackInfo(); - method @CallSuper public void requestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") @CallSuper public void requestSigning(@NonNull String, @NonNull String, @NonNull String, int, @NonNull byte[]); - method @CallSuper public void requestStartRecording(@NonNull String, @Nullable android.net.Uri); - method @CallSuper public void requestStopRecording(@NonNull String); - method @CallSuper public void requestStreamVolume(); - method @CallSuper public void requestTimeShiftMode(); - method @CallSuper public void requestTrackInfoList(); - method @CallSuper public void requestTvRecordingInfo(@NonNull String); - method @CallSuper public void requestTvRecordingInfoList(int); - method @CallSuper public void sendPlaybackCommandRequest(@NonNull String, @Nullable android.os.Bundle); - method @CallSuper public void sendTimeShiftCommandRequest(@NonNull String, @Nullable android.os.Bundle); - method @CallSuper public void setMediaViewEnabled(boolean); - method @CallSuper public void setTvRecordingInfo(@NonNull String, @NonNull android.media.tv.TvRecordingInfo); - method @CallSuper public void setVideoBounds(@NonNull android.graphics.Rect); - } - - public final class TvInteractiveAppServiceInfo implements android.os.Parcelable { - ctor public TvInteractiveAppServiceInfo(@NonNull android.content.Context, @NonNull android.content.ComponentName); - method public int describeContents(); - method @NonNull public java.util.List getCustomSupportedTypes(); - method @NonNull public String getId(); - method @Nullable public android.content.pm.ServiceInfo getServiceInfo(); - method @NonNull public int getSupportedTypes(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int INTERACTIVE_APP_TYPE_ATSC = 2; // 0x2 - field public static final int INTERACTIVE_APP_TYPE_GINGA = 4; // 0x4 - field public static final int INTERACTIVE_APP_TYPE_HBBTV = 1; // 0x1 - field public static final int INTERACTIVE_APP_TYPE_OTHER = -2147483648; // 0x80000000 - field public static final int INTERACTIVE_APP_TYPE_TARGETED_AD = 8; // 0x8 - } - - public class TvInteractiveAppView extends android.view.ViewGroup { - ctor public TvInteractiveAppView(@NonNull android.content.Context); - ctor public TvInteractiveAppView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); - ctor public TvInteractiveAppView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); - method public void clearCallback(); - method public void clearOnUnhandledInputEventListener(); - method public void createBiInteractiveApp(@NonNull android.net.Uri, @Nullable android.os.Bundle); - method public void destroyBiInteractiveApp(@NonNull String); - method public boolean dispatchUnhandledInputEvent(@NonNull android.view.InputEvent); - method @Nullable public android.media.tv.interactive.TvInteractiveAppView.OnUnhandledInputEventListener getOnUnhandledInputEventListener(); - method public void notifyError(@NonNull String, @NonNull android.os.Bundle); - method public void notifyRecordingScheduled(@NonNull String, @Nullable String); - method public void notifyRecordingStarted(@NonNull String, @Nullable String); - method public void notifyRecordingStopped(@NonNull String); - method public void notifyTimeShiftCurrentPositionChanged(@NonNull String, long); - method public void notifyTimeShiftPlaybackParams(@NonNull android.media.PlaybackParams); - method public void notifyTimeShiftStartPositionChanged(@NonNull String, long); - method public void notifyTimeShiftStatusChanged(@NonNull String, int); - method public void notifyTvMessage(@NonNull int, @NonNull android.os.Bundle); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void notifyVideoFreezeUpdated(boolean); - method public void onAttachedToWindow(); - method public void onDetachedFromWindow(); - method public void onLayout(boolean, int, int, int, int); - method public void onMeasure(int, int); - method public boolean onUnhandledInputEvent(@NonNull android.view.InputEvent); - method public void onVisibilityChanged(@NonNull android.view.View, int); - method public void prepareInteractiveApp(@NonNull String, int); - method public void reset(); - method public void resetInteractiveApp(); - method public void sendAvailableSpeeds(@NonNull float[]); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void sendCertificate(@NonNull String, int, @NonNull android.net.http.SslCertificate); - method public void sendCurrentChannelLcn(int); - method public void sendCurrentChannelUri(@Nullable android.net.Uri); - method public void sendCurrentTvInputId(@Nullable String); - method public void sendCurrentVideoBounds(@NonNull android.graphics.Rect); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void sendSelectedTrackInfo(@Nullable java.util.List); - method public void sendSigningResult(@NonNull String, @NonNull byte[]); - method public void sendStreamVolume(float); - method public void sendTimeShiftMode(int); - method public void sendTrackInfoList(@Nullable java.util.List); - method public void sendTvRecordingInfo(@Nullable android.media.tv.TvRecordingInfo); - method public void sendTvRecordingInfoList(@NonNull java.util.List); - method public void setCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.interactive.TvInteractiveAppView.TvInteractiveAppCallback); - method public void setOnUnhandledInputEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.interactive.TvInteractiveAppView.OnUnhandledInputEventListener); - method public void setTeletextAppEnabled(boolean); - method public int setTvView(@Nullable android.media.tv.TvView); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void setZOrderMediaOverlay(boolean); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void setZOrderOnTop(boolean); - method public void startInteractiveApp(); - method public void stopInteractiveApp(); - field public static final String BI_INTERACTIVE_APP_KEY_ALIAS = "alias"; - field public static final String BI_INTERACTIVE_APP_KEY_CERTIFICATE = "certificate"; - field public static final String BI_INTERACTIVE_APP_KEY_HTTP_ADDITIONAL_HEADERS = "http_additional_headers"; - field public static final String BI_INTERACTIVE_APP_KEY_HTTP_USER_AGENT = "http_user_agent"; - field public static final String BI_INTERACTIVE_APP_KEY_PRIVATE_KEY = "private_key"; - field public static final String ERROR_KEY_METHOD_NAME = "method_name"; - } - - public static interface TvInteractiveAppView.OnUnhandledInputEventListener { - method public boolean onUnhandledInputEvent(@NonNull android.view.InputEvent); - } - - public abstract static class TvInteractiveAppView.TvInteractiveAppCallback { - ctor public TvInteractiveAppView.TvInteractiveAppCallback(); - method public void onBiInteractiveAppCreated(@NonNull String, @NonNull android.net.Uri, @Nullable String); - method public void onPlaybackCommandRequest(@NonNull String, @NonNull String, @NonNull android.os.Bundle); - method public void onRequestAvailableSpeeds(@NonNull String); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onRequestCertificate(@NonNull String, @NonNull String, int); - method public void onRequestCurrentChannelLcn(@NonNull String); - method public void onRequestCurrentChannelUri(@NonNull String); - method public void onRequestCurrentTvInputId(@NonNull String); - method public void onRequestCurrentVideoBounds(@NonNull String); - method public void onRequestScheduleRecording(@NonNull String, @NonNull String, @NonNull String, @NonNull android.net.Uri, @NonNull android.net.Uri, @NonNull android.os.Bundle); - method public void onRequestScheduleRecording(@NonNull String, @NonNull String, @NonNull String, @NonNull android.net.Uri, long, long, int, @NonNull android.os.Bundle); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onRequestSelectedTrackInfo(@NonNull String); - method public void onRequestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); - method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onRequestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull String, int, @NonNull byte[]); - method public void onRequestStartRecording(@NonNull String, @NonNull String, @Nullable android.net.Uri); - method public void onRequestStopRecording(@NonNull String, @NonNull String); - method public void onRequestStreamVolume(@NonNull String); - method public void onRequestTimeShiftMode(@NonNull String); - method public void onRequestTrackInfoList(@NonNull String); - method public void onRequestTvRecordingInfo(@NonNull String, @NonNull String); - method public void onRequestTvRecordingInfoList(@NonNull String, int); - method public void onSetTvRecordingInfo(@NonNull String, @NonNull String, @NonNull android.media.tv.TvRecordingInfo); - method public void onSetVideoBounds(@NonNull String, @NonNull android.graphics.Rect); - method public void onStateChanged(@NonNull String, int, int); - method public void onTeletextAppStateChanged(@NonNull String, int); - method public void onTimeShiftCommandRequest(@NonNull String, @NonNull String, @NonNull android.os.Bundle); - } - -} - -package android.mtp { - - public final class MtpConstants { - ctor public MtpConstants(); - method public static boolean isAbstractObject(int); - field public static final int ASSOCIATION_TYPE_GENERIC_FOLDER = 1; // 0x1 - field public static final int FORMAT_3GP_CONTAINER = 47492; // 0xb984 - field public static final int FORMAT_AAC = 47363; // 0xb903 - field public static final int FORMAT_ABSTRACT_AUDIO_ALBUM = 47619; // 0xba03 - field public static final int FORMAT_ABSTRACT_AUDIO_PLAYLIST = 47625; // 0xba09 - field public static final int FORMAT_ABSTRACT_AV_PLAYLIST = 47621; // 0xba05 - field public static final int FORMAT_ABSTRACT_DOCUMENT = 47745; // 0xba81 - field public static final int FORMAT_ABSTRACT_IMAGE_ALBUM = 47618; // 0xba02 - field public static final int FORMAT_ABSTRACT_MEDIACAST = 47627; // 0xba0b - field public static final int FORMAT_ABSTRACT_MULTIMEDIA_ALBUM = 47617; // 0xba01 - field public static final int FORMAT_ABSTRACT_VIDEO_ALBUM = 47620; // 0xba04 - field public static final int FORMAT_ABSTRACT_VIDEO_PLAYLIST = 47626; // 0xba0a - field public static final int FORMAT_AIFF = 12295; // 0x3007 - field public static final int FORMAT_ASF = 12300; // 0x300c - field public static final int FORMAT_ASSOCIATION = 12289; // 0x3001 - field public static final int FORMAT_ASX_PLAYLIST = 47635; // 0xba13 - field public static final int FORMAT_AUDIBLE = 47364; // 0xb904 - field public static final int FORMAT_AVI = 12298; // 0x300a - field public static final int FORMAT_BMP = 14340; // 0x3804 - field public static final int FORMAT_DEFINED = 14336; // 0x3800 - field public static final int FORMAT_DNG = 14353; // 0x3811 - field public static final int FORMAT_DPOF = 12294; // 0x3006 - field public static final int FORMAT_EXECUTABLE = 12291; // 0x3003 - field public static final int FORMAT_EXIF_JPEG = 14337; // 0x3801 - field public static final int FORMAT_FLAC = 47366; // 0xb906 - field public static final int FORMAT_GIF = 14343; // 0x3807 - field public static final int FORMAT_HTML = 12293; // 0x3005 - field public static final int FORMAT_JFIF = 14344; // 0x3808 - field public static final int FORMAT_JP2 = 14351; // 0x380f - field public static final int FORMAT_JPX = 14352; // 0x3810 - field public static final int FORMAT_M3U_PLAYLIST = 47633; // 0xba11 - field public static final int FORMAT_MP2 = 47491; // 0xb983 - field public static final int FORMAT_MP3 = 12297; // 0x3009 - field public static final int FORMAT_MP4_CONTAINER = 47490; // 0xb982 - field public static final int FORMAT_MPEG = 12299; // 0x300b - field public static final int FORMAT_MPL_PLAYLIST = 47634; // 0xba12 - field public static final int FORMAT_MS_EXCEL_SPREADSHEET = 47749; // 0xba85 - field public static final int FORMAT_MS_POWERPOINT_PRESENTATION = 47750; // 0xba86 - field public static final int FORMAT_MS_WORD_DOCUMENT = 47747; // 0xba83 - field public static final int FORMAT_OGG = 47362; // 0xb902 - field public static final int FORMAT_PICT = 14346; // 0x380a - field public static final int FORMAT_PLS_PLAYLIST = 47636; // 0xba14 - field public static final int FORMAT_PNG = 14347; // 0x380b - field public static final int FORMAT_SCRIPT = 12290; // 0x3002 - field public static final int FORMAT_TEXT = 12292; // 0x3004 - field public static final int FORMAT_TIFF = 14349; // 0x380d - field public static final int FORMAT_TIFF_EP = 14338; // 0x3802 - field public static final int FORMAT_UNDEFINED = 12288; // 0x3000 - field public static final int FORMAT_UNDEFINED_AUDIO = 47360; // 0xb900 - field public static final int FORMAT_UNDEFINED_COLLECTION = 47616; // 0xba00 - field public static final int FORMAT_UNDEFINED_DOCUMENT = 47744; // 0xba80 - field public static final int FORMAT_UNDEFINED_FIRMWARE = 47106; // 0xb802 - field public static final int FORMAT_UNDEFINED_VIDEO = 47488; // 0xb980 - field public static final int FORMAT_WAV = 12296; // 0x3008 - field public static final int FORMAT_WINDOWS_IMAGE_FORMAT = 47233; // 0xb881 - field public static final int FORMAT_WMA = 47361; // 0xb901 - field public static final int FORMAT_WMV = 47489; // 0xb981 - field public static final int FORMAT_WPL_PLAYLIST = 47632; // 0xba10 - field public static final int FORMAT_XML_DOCUMENT = 47746; // 0xba82 - field public static final int OPERATION_CLOSE_SESSION = 4099; // 0x1003 - field public static final int OPERATION_COPY_OBJECT = 4122; // 0x101a - field public static final int OPERATION_DELETE_OBJECT = 4107; // 0x100b - field public static final int OPERATION_FORMAT_STORE = 4111; // 0x100f - field public static final int OPERATION_GET_DEVICE_INFO = 4097; // 0x1001 - field public static final int OPERATION_GET_DEVICE_PROP_DESC = 4116; // 0x1014 - field public static final int OPERATION_GET_DEVICE_PROP_VALUE = 4117; // 0x1015 - field public static final int OPERATION_GET_NUM_OBJECTS = 4102; // 0x1006 - field public static final int OPERATION_GET_OBJECT = 4105; // 0x1009 - field public static final int OPERATION_GET_OBJECT_HANDLES = 4103; // 0x1007 - field public static final int OPERATION_GET_OBJECT_INFO = 4104; // 0x1008 - field public static final int OPERATION_GET_OBJECT_PROPS_SUPPORTED = 38913; // 0x9801 - field public static final int OPERATION_GET_OBJECT_PROP_DESC = 38914; // 0x9802 - field public static final int OPERATION_GET_OBJECT_PROP_VALUE = 38915; // 0x9803 - field public static final int OPERATION_GET_OBJECT_REFERENCES = 38928; // 0x9810 - field public static final int OPERATION_GET_PARTIAL_OBJECT = 4123; // 0x101b - field public static final int OPERATION_GET_PARTIAL_OBJECT_64 = 38337; // 0x95c1 - field public static final int OPERATION_GET_STORAGE_INFO = 4101; // 0x1005 - field public static final int OPERATION_GET_STORAGE_I_DS = 4100; // 0x1004 - field public static final int OPERATION_GET_THUMB = 4106; // 0x100a - field public static final int OPERATION_INITIATE_CAPTURE = 4110; // 0x100e - field public static final int OPERATION_INITIATE_OPEN_CAPTURE = 4124; // 0x101c - field public static final int OPERATION_MOVE_OBJECT = 4121; // 0x1019 - field public static final int OPERATION_OPEN_SESSION = 4098; // 0x1002 - field public static final int OPERATION_POWER_DOWN = 4115; // 0x1013 - field public static final int OPERATION_RESET_DEVICE = 4112; // 0x1010 - field public static final int OPERATION_RESET_DEVICE_PROP_VALUE = 4119; // 0x1017 - field public static final int OPERATION_SELF_TEST = 4113; // 0x1011 - field public static final int OPERATION_SEND_OBJECT = 4109; // 0x100d - field public static final int OPERATION_SEND_OBJECT_INFO = 4108; // 0x100c - field public static final int OPERATION_SET_DEVICE_PROP_VALUE = 4118; // 0x1016 - field public static final int OPERATION_SET_OBJECT_PROP_VALUE = 38916; // 0x9804 - field public static final int OPERATION_SET_OBJECT_PROTECTION = 4114; // 0x1012 - field public static final int OPERATION_SET_OBJECT_REFERENCES = 38929; // 0x9811 - field public static final int OPERATION_SKIP = 38944; // 0x9820 - field public static final int OPERATION_TERMINATE_OPEN_CAPTURE = 4120; // 0x1018 - field public static final int PROTECTION_STATUS_NONE = 0; // 0x0 - field public static final int PROTECTION_STATUS_NON_TRANSFERABLE_DATA = 32771; // 0x8003 - field public static final int PROTECTION_STATUS_READ_ONLY = 32769; // 0x8001 - field public static final int PROTECTION_STATUS_READ_ONLY_DATA = 32770; // 0x8002 - } - - public final class MtpDevice { - ctor public MtpDevice(@NonNull android.hardware.usb.UsbDevice); - method public void close(); - method public boolean deleteObject(int); - method public int getDeviceId(); - method @Nullable public android.mtp.MtpDeviceInfo getDeviceInfo(); - method @NonNull public String getDeviceName(); - method @Nullable public byte[] getObject(int, int); - method @Nullable public int[] getObjectHandles(int, int, int); - method @Nullable public android.mtp.MtpObjectInfo getObjectInfo(int); - method public long getParent(int); - method public long getPartialObject(int, long, long, @NonNull byte[]) throws java.io.IOException; - method public long getPartialObject64(int, long, long, @NonNull byte[]) throws java.io.IOException; - method public long getStorageId(int); - method @Nullable public int[] getStorageIds(); - method @Nullable public android.mtp.MtpStorageInfo getStorageInfo(int); - method @Nullable public byte[] getThumbnail(int); - method public boolean importFile(int, @NonNull String); - method public boolean importFile(int, @NonNull android.os.ParcelFileDescriptor); - method public boolean open(@NonNull android.hardware.usb.UsbDeviceConnection); - method @NonNull public android.mtp.MtpEvent readEvent(@Nullable android.os.CancellationSignal) throws java.io.IOException; - method public boolean sendObject(int, long, @NonNull android.os.ParcelFileDescriptor); - method @Nullable public android.mtp.MtpObjectInfo sendObjectInfo(@NonNull android.mtp.MtpObjectInfo); - } - - public class MtpDeviceInfo { - method @NonNull public final int[] getEventsSupported(); - method @NonNull public final String getManufacturer(); - method @NonNull public final String getModel(); - method @NonNull public final int[] getOperationsSupported(); - method @NonNull public final String getSerialNumber(); - method @NonNull public final String getVersion(); - method public boolean isEventSupported(int); - method public boolean isOperationSupported(int); - } - - public class MtpEvent { - method public int getDevicePropCode(); - method public int getEventCode(); - method public int getObjectFormatCode(); - method public int getObjectHandle(); - method public int getObjectPropCode(); - method public int getParameter1(); - method public int getParameter2(); - method public int getParameter3(); - method public int getStorageId(); - method public int getTransactionId(); - field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001 - field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d - field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008 - field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006 - field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b - field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002 - field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007 - field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801 - field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802 - field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803 - field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003 - field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009 - field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c - field public static final int EVENT_STORE_ADDED = 16388; // 0x4004 - field public static final int EVENT_STORE_FULL = 16394; // 0x400a - field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005 - field public static final int EVENT_UNDEFINED = 16384; // 0x4000 - field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e - } - - public final class MtpObjectInfo { - method public int getAssociationDesc(); - method public int getAssociationType(); - method public int getCompressedSize(); - method public long getCompressedSizeLong(); - method public long getDateCreated(); - method public long getDateModified(); - method public int getFormat(); - method public int getImagePixDepth(); - method public long getImagePixDepthLong(); - method public int getImagePixHeight(); - method public long getImagePixHeightLong(); - method public int getImagePixWidth(); - method public long getImagePixWidthLong(); - method @NonNull public String getKeywords(); - method @NonNull public String getName(); - method public int getObjectHandle(); - method public int getParent(); - method public int getProtectionStatus(); - method public int getSequenceNumber(); - method public long getSequenceNumberLong(); - method public int getStorageId(); - method public int getThumbCompressedSize(); - method public long getThumbCompressedSizeLong(); - method public int getThumbFormat(); - method public int getThumbPixHeight(); - method public long getThumbPixHeightLong(); - method public int getThumbPixWidth(); - method public long getThumbPixWidthLong(); - } - - public static class MtpObjectInfo.Builder { - ctor public MtpObjectInfo.Builder(); - ctor public MtpObjectInfo.Builder(android.mtp.MtpObjectInfo); - method public android.mtp.MtpObjectInfo build(); - method public android.mtp.MtpObjectInfo.Builder setAssociationDesc(int); - method public android.mtp.MtpObjectInfo.Builder setAssociationType(int); - method public android.mtp.MtpObjectInfo.Builder setCompressedSize(long); - method public android.mtp.MtpObjectInfo.Builder setDateCreated(long); - method public android.mtp.MtpObjectInfo.Builder setDateModified(long); - method public android.mtp.MtpObjectInfo.Builder setFormat(int); - method public android.mtp.MtpObjectInfo.Builder setImagePixDepth(long); - method public android.mtp.MtpObjectInfo.Builder setImagePixHeight(long); - method public android.mtp.MtpObjectInfo.Builder setImagePixWidth(long); - method public android.mtp.MtpObjectInfo.Builder setKeywords(@NonNull String); - method public android.mtp.MtpObjectInfo.Builder setName(@NonNull String); - method public android.mtp.MtpObjectInfo.Builder setObjectHandle(int); - method public android.mtp.MtpObjectInfo.Builder setParent(int); - method public android.mtp.MtpObjectInfo.Builder setProtectionStatus(int); - method public android.mtp.MtpObjectInfo.Builder setSequenceNumber(long); - method public android.mtp.MtpObjectInfo.Builder setStorageId(int); - method public android.mtp.MtpObjectInfo.Builder setThumbCompressedSize(long); - method public android.mtp.MtpObjectInfo.Builder setThumbFormat(int); - method public android.mtp.MtpObjectInfo.Builder setThumbPixHeight(long); - method public android.mtp.MtpObjectInfo.Builder setThumbPixWidth(long); - } - - public final class MtpStorageInfo { - method @NonNull public String getDescription(); - method public long getFreeSpace(); - method public long getMaxCapacity(); - method public int getStorageId(); - method @NonNull public String getVolumeIdentifier(); - } - -} - -package android.net { - - public class Credentials { - ctor public Credentials(int, int, int); - method public int getGid(); - method public int getPid(); - method public int getUid(); - } - - public final class Ikev2VpnProfile extends android.net.PlatformVpnProfile { - method @NonNull public java.util.List getAllowedAlgorithms(); - method @Nullable public android.net.ipsec.ike.IkeTunnelConnectionParams getIkeTunnelConnectionParams(); - method public int getMaxMtu(); - method @Nullable public String getPassword(); - method @Nullable public byte[] getPresharedKey(); - method @Nullable public android.net.ProxyInfo getProxyInfo(); - method @Nullable public java.security.PrivateKey getRsaPrivateKey(); - method @NonNull public String getServerAddr(); - method @Nullable public java.security.cert.X509Certificate getServerRootCaCert(); - method @Nullable public java.security.cert.X509Certificate getUserCert(); - method @NonNull public String getUserIdentity(); - method @Nullable public String getUsername(); - method public boolean isAutomaticIpVersionSelectionEnabled(); - method public boolean isAutomaticNattKeepaliveTimerEnabled(); - method public boolean isBypassable(); - method public boolean isMetered(); - } - - public static final class Ikev2VpnProfile.Builder { - ctor public Ikev2VpnProfile.Builder(@NonNull String, @NonNull String); - ctor public Ikev2VpnProfile.Builder(@NonNull android.net.ipsec.ike.IkeTunnelConnectionParams); - method @NonNull public android.net.Ikev2VpnProfile build(); - method @NonNull public android.net.Ikev2VpnProfile.Builder setAllowedAlgorithms(@NonNull java.util.List); - method @NonNull public android.net.Ikev2VpnProfile.Builder setAuthDigitalSignature(@NonNull java.security.cert.X509Certificate, @NonNull java.security.PrivateKey, @Nullable java.security.cert.X509Certificate); - method @NonNull public android.net.Ikev2VpnProfile.Builder setAuthPsk(@NonNull byte[]); - method @NonNull public android.net.Ikev2VpnProfile.Builder setAuthUsernamePassword(@NonNull String, @NonNull String, @Nullable java.security.cert.X509Certificate); - method @NonNull public android.net.Ikev2VpnProfile.Builder setAutomaticIpVersionSelectionEnabled(boolean); - method @NonNull public android.net.Ikev2VpnProfile.Builder setAutomaticNattKeepaliveTimerEnabled(boolean); - method @NonNull public android.net.Ikev2VpnProfile.Builder setBypassable(boolean); - method @NonNull public android.net.Ikev2VpnProfile.Builder setLocalRoutesExcluded(boolean); - method @NonNull public android.net.Ikev2VpnProfile.Builder setMaxMtu(int); - method @NonNull public android.net.Ikev2VpnProfile.Builder setMetered(boolean); - method @NonNull public android.net.Ikev2VpnProfile.Builder setProxy(@Nullable android.net.ProxyInfo); - method @NonNull public android.net.Ikev2VpnProfile.Builder setRequiresInternetValidation(boolean); - } - - public class LocalServerSocket implements java.io.Closeable { - ctor public LocalServerSocket(String) throws java.io.IOException; - ctor public LocalServerSocket(java.io.FileDescriptor) throws java.io.IOException; - method public android.net.LocalSocket accept() throws java.io.IOException; - method public void close() throws java.io.IOException; - method public java.io.FileDescriptor getFileDescriptor(); - method public android.net.LocalSocketAddress getLocalSocketAddress(); - } - - public class LocalSocket implements java.io.Closeable { - ctor public LocalSocket(); - ctor public LocalSocket(int); - method public void bind(android.net.LocalSocketAddress) throws java.io.IOException; - method public void close() throws java.io.IOException; - method public void connect(android.net.LocalSocketAddress) throws java.io.IOException; - method public void connect(android.net.LocalSocketAddress, int) throws java.io.IOException; - method public java.io.FileDescriptor[] getAncillaryFileDescriptors() throws java.io.IOException; - method public java.io.FileDescriptor getFileDescriptor(); - method public java.io.InputStream getInputStream() throws java.io.IOException; - method public android.net.LocalSocketAddress getLocalSocketAddress(); - method public java.io.OutputStream getOutputStream() throws java.io.IOException; - method public android.net.Credentials getPeerCredentials() throws java.io.IOException; - method public int getReceiveBufferSize() throws java.io.IOException; - method public android.net.LocalSocketAddress getRemoteSocketAddress(); - method public int getSendBufferSize() throws java.io.IOException; - method public int getSoTimeout() throws java.io.IOException; - method public boolean isBound(); - method public boolean isClosed(); - method public boolean isConnected(); - method public boolean isInputShutdown(); - method public boolean isOutputShutdown(); - method public void setFileDescriptorsForSend(java.io.FileDescriptor[]); - method public void setReceiveBufferSize(int) throws java.io.IOException; - method public void setSendBufferSize(int) throws java.io.IOException; - method public void setSoTimeout(int) throws java.io.IOException; - method public void shutdownInput() throws java.io.IOException; - method public void shutdownOutput() throws java.io.IOException; - field public static final int SOCKET_DGRAM = 1; // 0x1 - field public static final int SOCKET_SEQPACKET = 3; // 0x3 - field public static final int SOCKET_STREAM = 2; // 0x2 - } - - public class LocalSocketAddress { - ctor public LocalSocketAddress(String, android.net.LocalSocketAddress.Namespace); - ctor public LocalSocketAddress(String); - method public String getName(); - method public android.net.LocalSocketAddress.Namespace getNamespace(); - } - - public enum LocalSocketAddress.Namespace { - enum_constant public static final android.net.LocalSocketAddress.Namespace ABSTRACT; - enum_constant public static final android.net.LocalSocketAddress.Namespace FILESYSTEM; - enum_constant public static final android.net.LocalSocketAddress.Namespace RESERVED; - } - - public class MailTo { - method public String getBody(); - method public String getCc(); - method public java.util.Map getHeaders(); - method public String getSubject(); - method public String getTo(); - method public static boolean isMailTo(String); - method public static android.net.MailTo parse(String) throws android.net.ParseException; - field public static final String MAILTO_SCHEME = "mailto:"; - } - - public abstract class NetworkSpecifier { - ctor public NetworkSpecifier(); - } - - public abstract class PlatformVpnProfile { - method public final boolean areLocalRoutesExcluded(); - method public final int getType(); - method @NonNull public final String getTypeString(); - method public final boolean isInternetValidationRequired(); - field public static final int TYPE_IKEV2_IPSEC_PSK = 7; // 0x7 - field public static final int TYPE_IKEV2_IPSEC_RSA = 8; // 0x8 - field public static final int TYPE_IKEV2_IPSEC_USER_PASS = 6; // 0x6 - } - - public final class Proxy { - ctor public Proxy(); - method @Deprecated public static String getDefaultHost(); - method @Deprecated public static int getDefaultPort(); - method @Deprecated public static String getHost(android.content.Context); - method @Deprecated public static int getPort(android.content.Context); - field public static final String PROXY_CHANGE_ACTION = "android.intent.action.PROXY_CHANGE"; - } - - @Deprecated public class SSLCertificateSocketFactory extends javax.net.ssl.SSLSocketFactory { - ctor @Deprecated public SSLCertificateSocketFactory(int); - method @Deprecated public java.net.Socket createSocket(java.net.Socket, String, int, boolean) throws java.io.IOException; - method @Deprecated public java.net.Socket createSocket(java.net.InetAddress, int, java.net.InetAddress, int) throws java.io.IOException; - method @Deprecated public java.net.Socket createSocket(java.net.InetAddress, int) throws java.io.IOException; - method @Deprecated public java.net.Socket createSocket(String, int, java.net.InetAddress, int) throws java.io.IOException; - method @Deprecated public java.net.Socket createSocket(String, int) throws java.io.IOException; - method @Deprecated public static javax.net.SocketFactory getDefault(int); - method @Deprecated public static javax.net.ssl.SSLSocketFactory getDefault(int, android.net.SSLSessionCache); - method @Deprecated public String[] getDefaultCipherSuites(); - method @Deprecated public static javax.net.ssl.SSLSocketFactory getInsecure(int, android.net.SSLSessionCache); - method @Deprecated public byte[] getNpnSelectedProtocol(java.net.Socket); - method @Deprecated public String[] getSupportedCipherSuites(); - method @Deprecated public void setHostname(java.net.Socket, String); - method @Deprecated public void setKeyManagers(javax.net.ssl.KeyManager[]); - method @Deprecated public void setNpnProtocols(byte[][]); - method @Deprecated public void setTrustManagers(javax.net.ssl.TrustManager[]); - method @Deprecated public void setUseSessionTickets(java.net.Socket, boolean); - } - - public final class SSLSessionCache { - ctor public SSLSessionCache(java.io.File) throws java.io.IOException; - ctor public SSLSessionCache(android.content.Context); - } - - public final class TelephonyNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable { - method public int describeContents(); - method public int getSubscriptionId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TelephonyNetworkSpecifier.Builder { - ctor public TelephonyNetworkSpecifier.Builder(); - method @NonNull public android.net.TelephonyNetworkSpecifier build(); - method @NonNull public android.net.TelephonyNetworkSpecifier.Builder setSubscriptionId(int); - } - - public abstract class Uri implements java.lang.Comparable android.os.Parcelable { - method public abstract android.net.Uri.Builder buildUpon(); - method public int compareTo(android.net.Uri); - method public static String decode(String); - method public static String encode(String); - method public static String encode(String, String); - method public static android.net.Uri fromFile(java.io.File); - method public static android.net.Uri fromParts(String, String, String); - method @Nullable public abstract String getAuthority(); - method public boolean getBooleanQueryParameter(String, boolean); - method @Nullable public abstract String getEncodedAuthority(); - method @Nullable public abstract String getEncodedFragment(); - method @Nullable public abstract String getEncodedPath(); - method @Nullable public abstract String getEncodedQuery(); - method public abstract String getEncodedSchemeSpecificPart(); - method @Nullable public abstract String getEncodedUserInfo(); - method @Nullable public abstract String getFragment(); - method @Nullable public abstract String getHost(); - method @Nullable public abstract String getLastPathSegment(); - method @Nullable public abstract String getPath(); - method public abstract java.util.List getPathSegments(); - method public abstract int getPort(); - method @Nullable public abstract String getQuery(); - method @Nullable public String getQueryParameter(String); - method public java.util.Set getQueryParameterNames(); - method public java.util.List getQueryParameters(String); - method @Nullable public abstract String getScheme(); - method public abstract String getSchemeSpecificPart(); - method @Nullable public abstract String getUserInfo(); - method public boolean isAbsolute(); - method public abstract boolean isHierarchical(); - method public boolean isOpaque(); - method public abstract boolean isRelative(); - method public android.net.Uri normalizeScheme(); - method public static android.net.Uri parse(String); - method public abstract String toString(); - method public static android.net.Uri withAppendedPath(android.net.Uri, String); - method public static void writeToParcel(android.os.Parcel, android.net.Uri); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final android.net.Uri EMPTY; - } - - public static final class Uri.Builder { - ctor public Uri.Builder(); - method public android.net.Uri.Builder appendEncodedPath(String); - method public android.net.Uri.Builder appendPath(String); - method public android.net.Uri.Builder appendQueryParameter(String, String); - method public android.net.Uri.Builder authority(String); - method public android.net.Uri build(); - method public android.net.Uri.Builder clearQuery(); - method public android.net.Uri.Builder encodedAuthority(String); - method public android.net.Uri.Builder encodedFragment(String); - method public android.net.Uri.Builder encodedOpaquePart(String); - method public android.net.Uri.Builder encodedPath(String); - method public android.net.Uri.Builder encodedQuery(String); - method public android.net.Uri.Builder fragment(String); - method public android.net.Uri.Builder opaquePart(String); - method public android.net.Uri.Builder path(String); - method public android.net.Uri.Builder query(String); - method public android.net.Uri.Builder scheme(String); - } - - public class UrlQuerySanitizer { - ctor public UrlQuerySanitizer(); - ctor public UrlQuerySanitizer(String); - method protected void addSanitizedEntry(String, String); - method protected void clear(); - method protected int decodeHexDigit(char); - method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAllButNulAndAngleBracketsLegal(); - method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAllButNulLegal(); - method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAllButWhitespaceLegal(); - method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAllIllegal(); - method public boolean getAllowUnregisteredParamaters(); - method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAmpAndSpaceLegal(); - method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAmpLegal(); - method public android.net.UrlQuerySanitizer.ValueSanitizer getEffectiveValueSanitizer(String); - method public java.util.List getParameterList(); - method public java.util.Set getParameterSet(); - method public boolean getPreferFirstRepeatedParameter(); - method public static final android.net.UrlQuerySanitizer.ValueSanitizer getSpaceLegal(); - method public android.net.UrlQuerySanitizer.ValueSanitizer getUnregisteredParameterValueSanitizer(); - method public static final android.net.UrlQuerySanitizer.ValueSanitizer getUrlAndSpaceLegal(); - method public static final android.net.UrlQuerySanitizer.ValueSanitizer getUrlLegal(); - method public String getValue(String); - method public android.net.UrlQuerySanitizer.ValueSanitizer getValueSanitizer(String); - method public boolean hasParameter(String); - method protected boolean isHexDigit(char); - method protected void parseEntry(String, String); - method public void parseQuery(String); - method public void parseUrl(String); - method public void registerParameter(String, android.net.UrlQuerySanitizer.ValueSanitizer); - method public void registerParameters(String[], android.net.UrlQuerySanitizer.ValueSanitizer); - method public void setAllowUnregisteredParamaters(boolean); - method public void setPreferFirstRepeatedParameter(boolean); - method public void setUnregisteredParameterValueSanitizer(android.net.UrlQuerySanitizer.ValueSanitizer); - method public String unescape(String); - } - - public static class UrlQuerySanitizer.IllegalCharacterValueSanitizer implements android.net.UrlQuerySanitizer.ValueSanitizer { - ctor public UrlQuerySanitizer.IllegalCharacterValueSanitizer(int); - method public String sanitize(String); - field public static final int ALL_BUT_NUL_AND_ANGLE_BRACKETS_LEGAL = 1439; // 0x59f - field public static final int ALL_BUT_NUL_LEGAL = 1535; // 0x5ff - field public static final int ALL_BUT_WHITESPACE_LEGAL = 1532; // 0x5fc - field public static final int ALL_ILLEGAL = 0; // 0x0 - field public static final int ALL_OK = 2047; // 0x7ff - field public static final int ALL_WHITESPACE_OK = 3; // 0x3 - field public static final int AMP_AND_SPACE_LEGAL = 129; // 0x81 - field public static final int AMP_LEGAL = 128; // 0x80 - field public static final int AMP_OK = 128; // 0x80 - field public static final int DQUOTE_OK = 8; // 0x8 - field public static final int GT_OK = 64; // 0x40 - field public static final int LT_OK = 32; // 0x20 - field public static final int NON_7_BIT_ASCII_OK = 4; // 0x4 - field public static final int NUL_OK = 512; // 0x200 - field public static final int OTHER_WHITESPACE_OK = 2; // 0x2 - field public static final int PCT_OK = 256; // 0x100 - field public static final int SCRIPT_URL_OK = 1024; // 0x400 - field public static final int SPACE_LEGAL = 1; // 0x1 - field public static final int SPACE_OK = 1; // 0x1 - field public static final int SQUOTE_OK = 16; // 0x10 - field public static final int URL_AND_SPACE_LEGAL = 405; // 0x195 - field public static final int URL_LEGAL = 404; // 0x194 - } - - public class UrlQuerySanitizer.ParameterValuePair { - ctor public UrlQuerySanitizer.ParameterValuePair(String, String); - field public String mParameter; - field public String mValue; - } - - public static interface UrlQuerySanitizer.ValueSanitizer { - method public String sanitize(String); - } - - public class VpnManager { - method public void deleteProvisionedVpnProfile(); - method @Nullable public android.net.VpnProfileState getProvisionedVpnProfileState(); - method @Nullable public android.content.Intent provisionVpnProfile(@NonNull android.net.PlatformVpnProfile); - method @Deprecated public void startProvisionedVpnProfile(); - method @NonNull public String startProvisionedVpnProfileSession(); - method public void stopProvisionedVpnProfile(); - field public static final String ACTION_VPN_MANAGER_EVENT = "android.net.action.VPN_MANAGER_EVENT"; - field public static final String CATEGORY_EVENT_ALWAYS_ON_STATE_CHANGED = "android.net.category.EVENT_ALWAYS_ON_STATE_CHANGED"; - field public static final String CATEGORY_EVENT_DEACTIVATED_BY_USER = "android.net.category.EVENT_DEACTIVATED_BY_USER"; - field public static final String CATEGORY_EVENT_IKE_ERROR = "android.net.category.EVENT_IKE_ERROR"; - field public static final String CATEGORY_EVENT_NETWORK_ERROR = "android.net.category.EVENT_NETWORK_ERROR"; - field public static final int ERROR_CLASS_NOT_RECOVERABLE = 1; // 0x1 - field public static final int ERROR_CLASS_RECOVERABLE = 2; // 0x2 - field public static final int ERROR_CODE_NETWORK_IO = 3; // 0x3 - field public static final int ERROR_CODE_NETWORK_LOST = 2; // 0x2 - field public static final int ERROR_CODE_NETWORK_PROTOCOL_TIMEOUT = 1; // 0x1 - field public static final int ERROR_CODE_NETWORK_UNKNOWN_HOST = 0; // 0x0 - field public static final String EXTRA_ERROR_CLASS = "android.net.extra.ERROR_CLASS"; - field public static final String EXTRA_ERROR_CODE = "android.net.extra.ERROR_CODE"; - field public static final String EXTRA_SESSION_KEY = "android.net.extra.SESSION_KEY"; - field public static final String EXTRA_TIMESTAMP_MILLIS = "android.net.extra.TIMESTAMP_MILLIS"; - field public static final String EXTRA_UNDERLYING_LINK_PROPERTIES = "android.net.extra.UNDERLYING_LINK_PROPERTIES"; - field public static final String EXTRA_UNDERLYING_NETWORK = "android.net.extra.UNDERLYING_NETWORK"; - field public static final String EXTRA_UNDERLYING_NETWORK_CAPABILITIES = "android.net.extra.UNDERLYING_NETWORK_CAPABILITIES"; - field public static final String EXTRA_VPN_PROFILE_STATE = "android.net.extra.VPN_PROFILE_STATE"; - } - - public final class VpnProfileState implements android.os.Parcelable { - ctor public VpnProfileState(int, @Nullable String, boolean, boolean); - method public int describeContents(); - method @Nullable public String getSessionId(); - method public int getState(); - method public boolean isAlwaysOn(); - method public boolean isLockdownEnabled(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STATE_CONNECTED = 2; // 0x2 - field public static final int STATE_CONNECTING = 1; // 0x1 - field public static final int STATE_DISCONNECTED = 0; // 0x0 - field public static final int STATE_FAILED = 3; // 0x3 - } - - public class VpnService extends android.app.Service { - ctor public VpnService(); - method public final boolean isAlwaysOn(); - method public final boolean isLockdownEnabled(); - method public android.os.IBinder onBind(android.content.Intent); - method public void onRevoke(); - method public static android.content.Intent prepare(android.content.Context); - method public boolean protect(int); - method public boolean protect(java.net.Socket); - method public boolean protect(java.net.DatagramSocket); - method public boolean setUnderlyingNetworks(android.net.Network[]); - field public static final String SERVICE_INTERFACE = "android.net.VpnService"; - field public static final String SERVICE_META_DATA_SUPPORTS_ALWAYS_ON = "android.net.VpnService.SUPPORTS_ALWAYS_ON"; - } - - public class VpnService.Builder { - ctor public VpnService.Builder(); - method @NonNull public android.net.VpnService.Builder addAddress(@NonNull java.net.InetAddress, int); - method @NonNull public android.net.VpnService.Builder addAddress(@NonNull String, int); - method @NonNull public android.net.VpnService.Builder addAllowedApplication(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.net.VpnService.Builder addDisallowedApplication(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; - method @NonNull public android.net.VpnService.Builder addDnsServer(@NonNull java.net.InetAddress); - method @NonNull public android.net.VpnService.Builder addDnsServer(@NonNull String); - method @NonNull public android.net.VpnService.Builder addRoute(@NonNull java.net.InetAddress, int); - method @NonNull public android.net.VpnService.Builder addRoute(@NonNull android.net.IpPrefix); - method @NonNull public android.net.VpnService.Builder addRoute(@NonNull String, int); - method @NonNull public android.net.VpnService.Builder addSearchDomain(@NonNull String); - method @NonNull public android.net.VpnService.Builder allowBypass(); - method @NonNull public android.net.VpnService.Builder allowFamily(int); - method @Nullable public android.os.ParcelFileDescriptor establish(); - method @NonNull public android.net.VpnService.Builder excludeRoute(@NonNull android.net.IpPrefix); - method @NonNull public android.net.VpnService.Builder setBlocking(boolean); - method @NonNull public android.net.VpnService.Builder setConfigureIntent(@NonNull android.app.PendingIntent); - method @NonNull public android.net.VpnService.Builder setHttpProxy(@NonNull android.net.ProxyInfo); - method @NonNull public android.net.VpnService.Builder setMetered(boolean); - method @NonNull public android.net.VpnService.Builder setMtu(int); - method @NonNull public android.net.VpnService.Builder setSession(@NonNull String); - method @NonNull public android.net.VpnService.Builder setUnderlyingNetworks(@Nullable android.net.Network[]); - } - -} - -package android.net.http { - - public final class HttpResponseCache extends java.net.ResponseCache implements java.io.Closeable { - method public void close() throws java.io.IOException; - method public void delete() throws java.io.IOException; - method public void flush(); - method public java.net.CacheResponse get(java.net.URI, String, java.util.Map>) throws java.io.IOException; - method public int getHitCount(); - method public static android.net.http.HttpResponseCache getInstalled(); - method public int getNetworkCount(); - method public int getRequestCount(); - method public static android.net.http.HttpResponseCache install(java.io.File, long) throws java.io.IOException; - method public long maxSize(); - method public java.net.CacheRequest put(java.net.URI, java.net.URLConnection) throws java.io.IOException; - method public long size(); - } - - public class SslCertificate { - ctor @Deprecated public SslCertificate(String, String, String, String); - ctor @Deprecated public SslCertificate(String, String, java.util.Date, java.util.Date); - ctor public SslCertificate(java.security.cert.X509Certificate); - method public android.net.http.SslCertificate.DName getIssuedBy(); - method public android.net.http.SslCertificate.DName getIssuedTo(); - method @Deprecated public String getValidNotAfter(); - method public java.util.Date getValidNotAfterDate(); - method @Deprecated public String getValidNotBefore(); - method public java.util.Date getValidNotBeforeDate(); - method @Nullable public java.security.cert.X509Certificate getX509Certificate(); - method public static android.net.http.SslCertificate restoreState(android.os.Bundle); - method public static android.os.Bundle saveState(android.net.http.SslCertificate); - } - - public class SslCertificate.DName { - ctor public SslCertificate.DName(String); - method public String getCName(); - method public String getDName(); - method public String getOName(); - method public String getUName(); - } - - public class SslError { - ctor @Deprecated public SslError(int, android.net.http.SslCertificate); - ctor @Deprecated public SslError(int, java.security.cert.X509Certificate); - ctor public SslError(int, android.net.http.SslCertificate, String); - ctor public SslError(int, java.security.cert.X509Certificate, String); - method public boolean addError(int); - method public android.net.http.SslCertificate getCertificate(); - method public int getPrimaryError(); - method public String getUrl(); - method public boolean hasError(int); - field public static final int SSL_DATE_INVALID = 4; // 0x4 - field public static final int SSL_EXPIRED = 1; // 0x1 - field public static final int SSL_IDMISMATCH = 2; // 0x2 - field public static final int SSL_INVALID = 5; // 0x5 - field @Deprecated public static final int SSL_MAX_ERROR = 6; // 0x6 - field public static final int SSL_NOTYETVALID = 0; // 0x0 - field public static final int SSL_UNTRUSTED = 3; // 0x3 - } - - public class X509TrustManagerExtensions { - ctor public X509TrustManagerExtensions(javax.net.ssl.X509TrustManager) throws java.lang.IllegalArgumentException; - method public java.util.List checkServerTrusted(java.security.cert.X509Certificate[], String, String) throws java.security.cert.CertificateException; - method @FlaggedApi("android.net.platform.flags.x509_extensions_certificate_transparency") @NonNull public java.util.List checkServerTrusted(@NonNull java.security.cert.X509Certificate[], @Nullable byte[], @Nullable byte[], @NonNull String, @NonNull String) throws java.security.cert.CertificateException; - method public boolean isSameTrustConfiguration(String, String); - method public boolean isUserAddedCertificate(java.security.cert.X509Certificate); - } - -} - -package android.net.rtp { - - @Deprecated public class AudioCodec { - method @Deprecated public static android.net.rtp.AudioCodec getCodec(int, String, String); - method @Deprecated public static android.net.rtp.AudioCodec[] getCodecs(); - field @Deprecated public static final android.net.rtp.AudioCodec AMR; - field @Deprecated public static final android.net.rtp.AudioCodec GSM; - field @Deprecated public static final android.net.rtp.AudioCodec GSM_EFR; - field @Deprecated public static final android.net.rtp.AudioCodec PCMA; - field @Deprecated public static final android.net.rtp.AudioCodec PCMU; - field @Deprecated public final String fmtp; - field @Deprecated public final String rtpmap; - field @Deprecated public final int type; - } - - @Deprecated public class AudioGroup { - ctor @Deprecated public AudioGroup(); - ctor @Deprecated public AudioGroup(@NonNull android.content.Context); - method @Deprecated public void clear(); - method @Deprecated public int getMode(); - method @Deprecated public android.net.rtp.AudioStream[] getStreams(); - method @Deprecated public void sendDtmf(int); - method @Deprecated public void setMode(int); - field @Deprecated public static final int MODE_ECHO_SUPPRESSION = 3; // 0x3 - field @Deprecated public static final int MODE_MUTED = 1; // 0x1 - field @Deprecated public static final int MODE_NORMAL = 2; // 0x2 - field @Deprecated public static final int MODE_ON_HOLD = 0; // 0x0 - } - - @Deprecated public class AudioStream extends android.net.rtp.RtpStream { - ctor @Deprecated public AudioStream(java.net.InetAddress) throws java.net.SocketException; - method @Deprecated public android.net.rtp.AudioCodec getCodec(); - method @Deprecated public int getDtmfType(); - method @Deprecated public android.net.rtp.AudioGroup getGroup(); - method @Deprecated public final boolean isBusy(); - method @Deprecated public void join(android.net.rtp.AudioGroup); - method @Deprecated public void setCodec(android.net.rtp.AudioCodec); - method @Deprecated public void setDtmfType(int); - } - - @Deprecated public class RtpStream { - method @Deprecated public void associate(java.net.InetAddress, int); - method @Deprecated public java.net.InetAddress getLocalAddress(); - method @Deprecated public int getLocalPort(); - method @Deprecated public int getMode(); - method @Deprecated public java.net.InetAddress getRemoteAddress(); - method @Deprecated public int getRemotePort(); - method @Deprecated public boolean isBusy(); - method @Deprecated public void release(); - method @Deprecated public void setMode(int); - field @Deprecated public static final int MODE_NORMAL = 0; // 0x0 - field @Deprecated public static final int MODE_RECEIVE_ONLY = 2; // 0x2 - field @Deprecated public static final int MODE_SEND_ONLY = 1; // 0x1 - } - -} - -package android.net.sip { - - @Deprecated public class SipAudioCall { - ctor @Deprecated public SipAudioCall(android.content.Context, android.net.sip.SipProfile); - method @Deprecated public void answerCall(int) throws android.net.sip.SipException; - method @Deprecated public void attachCall(android.net.sip.SipSession, String) throws android.net.sip.SipException; - method @Deprecated public void close(); - method @Deprecated public void continueCall(int) throws android.net.sip.SipException; - method @Deprecated public void endCall() throws android.net.sip.SipException; - method @Deprecated public android.net.sip.SipProfile getLocalProfile(); - method @Deprecated public android.net.sip.SipProfile getPeerProfile(); - method @Deprecated public int getState(); - method @Deprecated public void holdCall(int) throws android.net.sip.SipException; - method @Deprecated public boolean isInCall(); - method @Deprecated public boolean isMuted(); - method @Deprecated public boolean isOnHold(); - method @Deprecated public void makeCall(android.net.sip.SipProfile, android.net.sip.SipSession, int) throws android.net.sip.SipException; - method @Deprecated public void sendDtmf(int); - method @Deprecated public void sendDtmf(int, android.os.Message); - method @Deprecated public void setListener(android.net.sip.SipAudioCall.Listener); - method @Deprecated public void setListener(android.net.sip.SipAudioCall.Listener, boolean); - method @Deprecated public void setSpeakerMode(boolean); - method @Deprecated public void startAudio(); - method @Deprecated public void toggleMute(); - } - - @Deprecated public static class SipAudioCall.Listener { - ctor @Deprecated public SipAudioCall.Listener(); - method @Deprecated public void onCallBusy(android.net.sip.SipAudioCall); - method @Deprecated public void onCallEnded(android.net.sip.SipAudioCall); - method @Deprecated public void onCallEstablished(android.net.sip.SipAudioCall); - method @Deprecated public void onCallHeld(android.net.sip.SipAudioCall); - method @Deprecated public void onCalling(android.net.sip.SipAudioCall); - method @Deprecated public void onChanged(android.net.sip.SipAudioCall); - method @Deprecated public void onError(android.net.sip.SipAudioCall, int, String); - method @Deprecated public void onReadyToCall(android.net.sip.SipAudioCall); - method @Deprecated public void onRinging(android.net.sip.SipAudioCall, android.net.sip.SipProfile); - method @Deprecated public void onRingingBack(android.net.sip.SipAudioCall); - } - - @Deprecated public class SipErrorCode { - method @Deprecated public static String toString(int); - field @Deprecated public static final int CLIENT_ERROR = -4; // 0xfffffffc - field @Deprecated public static final int CROSS_DOMAIN_AUTHENTICATION = -11; // 0xfffffff5 - field @Deprecated public static final int DATA_CONNECTION_LOST = -10; // 0xfffffff6 - field @Deprecated public static final int INVALID_CREDENTIALS = -8; // 0xfffffff8 - field @Deprecated public static final int INVALID_REMOTE_URI = -6; // 0xfffffffa - field @Deprecated public static final int IN_PROGRESS = -9; // 0xfffffff7 - field @Deprecated public static final int NO_ERROR = 0; // 0x0 - field @Deprecated public static final int PEER_NOT_REACHABLE = -7; // 0xfffffff9 - field @Deprecated public static final int SERVER_ERROR = -2; // 0xfffffffe - field @Deprecated public static final int SERVER_UNREACHABLE = -12; // 0xfffffff4 - field @Deprecated public static final int SOCKET_ERROR = -1; // 0xffffffff - field @Deprecated public static final int TIME_OUT = -5; // 0xfffffffb - field @Deprecated public static final int TRANSACTION_TERMINTED = -3; // 0xfffffffd - } - - @Deprecated public class SipException extends java.lang.Exception { - ctor @Deprecated public SipException(); - ctor @Deprecated public SipException(String); - ctor @Deprecated public SipException(String, Throwable); - } - - @Deprecated public class SipManager { - method @Deprecated public void close(String) throws android.net.sip.SipException; - method @Deprecated public android.net.sip.SipSession createSipSession(android.net.sip.SipProfile, android.net.sip.SipSession.Listener) throws android.net.sip.SipException; - method @Deprecated public static String getCallId(android.content.Intent); - method @Deprecated public static String getOfferSessionDescription(android.content.Intent); - method @Deprecated public android.net.sip.SipSession getSessionFor(android.content.Intent) throws android.net.sip.SipException; - method @Deprecated public static boolean isApiSupported(android.content.Context); - method @Deprecated public static boolean isIncomingCallIntent(android.content.Intent); - method @Deprecated public boolean isOpened(String) throws android.net.sip.SipException; - method @Deprecated public boolean isRegistered(String) throws android.net.sip.SipException; - method @Deprecated public static boolean isSipWifiOnly(android.content.Context); - method @Deprecated public static boolean isVoipSupported(android.content.Context); - method @Deprecated public android.net.sip.SipAudioCall makeAudioCall(android.net.sip.SipProfile, android.net.sip.SipProfile, android.net.sip.SipAudioCall.Listener, int) throws android.net.sip.SipException; - method @Deprecated public android.net.sip.SipAudioCall makeAudioCall(String, String, android.net.sip.SipAudioCall.Listener, int) throws android.net.sip.SipException; - method @Deprecated public static android.net.sip.SipManager newInstance(android.content.Context); - method @Deprecated public void open(android.net.sip.SipProfile) throws android.net.sip.SipException; - method @Deprecated public void open(android.net.sip.SipProfile, android.app.PendingIntent, android.net.sip.SipRegistrationListener) throws android.net.sip.SipException; - method @Deprecated public void register(android.net.sip.SipProfile, int, android.net.sip.SipRegistrationListener) throws android.net.sip.SipException; - method @Deprecated public void setRegistrationListener(String, android.net.sip.SipRegistrationListener) throws android.net.sip.SipException; - method @Deprecated public android.net.sip.SipAudioCall takeAudioCall(android.content.Intent, android.net.sip.SipAudioCall.Listener) throws android.net.sip.SipException; - method @Deprecated public void unregister(android.net.sip.SipProfile, android.net.sip.SipRegistrationListener) throws android.net.sip.SipException; - field @Deprecated public static final String EXTRA_CALL_ID = "android:sipCallID"; - field @Deprecated public static final String EXTRA_OFFER_SD = "android:sipOfferSD"; - field @Deprecated public static final int INCOMING_CALL_RESULT_CODE = 101; // 0x65 - } - - @Deprecated public class SipProfile implements java.lang.Cloneable android.os.Parcelable java.io.Serializable { - method @Deprecated public int describeContents(); - method @Deprecated public String getAuthUserName(); - method @Deprecated public boolean getAutoRegistration(); - method @Deprecated public String getDisplayName(); - method @Deprecated public String getPassword(); - method @Deprecated public int getPort(); - method @Deprecated public String getProfileName(); - method @Deprecated public String getProtocol(); - method @Deprecated public String getProxyAddress(); - method @Deprecated public boolean getSendKeepAlive(); - method @Deprecated public String getSipDomain(); - method @Deprecated public String getUriString(); - method @Deprecated public String getUserName(); - method @Deprecated public void setCallingUid(int); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated public static final android.os.Parcelable.Creator CREATOR; - } - - @Deprecated public static class SipProfile.Builder { - ctor @Deprecated public SipProfile.Builder(android.net.sip.SipProfile); - ctor @Deprecated public SipProfile.Builder(String) throws java.text.ParseException; - ctor @Deprecated public SipProfile.Builder(String, String) throws java.text.ParseException; - method @Deprecated public android.net.sip.SipProfile build(); - method @Deprecated public android.net.sip.SipProfile.Builder setAuthUserName(String); - method @Deprecated public android.net.sip.SipProfile.Builder setAutoRegistration(boolean); - method @Deprecated public android.net.sip.SipProfile.Builder setDisplayName(String); - method @Deprecated public android.net.sip.SipProfile.Builder setOutboundProxy(String); - method @Deprecated public android.net.sip.SipProfile.Builder setPassword(String); - method @Deprecated public android.net.sip.SipProfile.Builder setPort(int) throws java.lang.IllegalArgumentException; - method @Deprecated public android.net.sip.SipProfile.Builder setProfileName(String); - method @Deprecated public android.net.sip.SipProfile.Builder setProtocol(String) throws java.lang.IllegalArgumentException; - method @Deprecated public android.net.sip.SipProfile.Builder setSendKeepAlive(boolean); - } - - @Deprecated public interface SipRegistrationListener { - method @Deprecated public void onRegistering(String); - method @Deprecated public void onRegistrationDone(String, long); - method @Deprecated public void onRegistrationFailed(String, int, String); - } - - @Deprecated public final class SipSession { - method @Deprecated public void answerCall(String, int); - method @Deprecated public void changeCall(String, int); - method @Deprecated public void endCall(); - method @Deprecated public String getCallId(); - method @Deprecated public String getLocalIp(); - method @Deprecated public android.net.sip.SipProfile getLocalProfile(); - method @Deprecated public android.net.sip.SipProfile getPeerProfile(); - method @Deprecated public int getState(); - method @Deprecated public boolean isInCall(); - method @Deprecated public void makeCall(android.net.sip.SipProfile, String, int); - method @Deprecated public void register(int); - method @Deprecated public void setListener(android.net.sip.SipSession.Listener); - method @Deprecated public void unregister(); - } - - @Deprecated public static class SipSession.Listener { - ctor @Deprecated public SipSession.Listener(); - method @Deprecated public void onCallBusy(android.net.sip.SipSession); - method @Deprecated public void onCallChangeFailed(android.net.sip.SipSession, int, String); - method @Deprecated public void onCallEnded(android.net.sip.SipSession); - method @Deprecated public void onCallEstablished(android.net.sip.SipSession, String); - method @Deprecated public void onCalling(android.net.sip.SipSession); - method @Deprecated public void onError(android.net.sip.SipSession, int, String); - method @Deprecated public void onRegistering(android.net.sip.SipSession); - method @Deprecated public void onRegistrationDone(android.net.sip.SipSession, int); - method @Deprecated public void onRegistrationFailed(android.net.sip.SipSession, int, String); - method @Deprecated public void onRegistrationTimeout(android.net.sip.SipSession); - method @Deprecated public void onRinging(android.net.sip.SipSession, android.net.sip.SipProfile, String); - method @Deprecated public void onRingingBack(android.net.sip.SipSession); - } - - @Deprecated public static class SipSession.State { - method @Deprecated public static String toString(int); - field @Deprecated public static final int DEREGISTERING = 2; // 0x2 - field @Deprecated public static final int INCOMING_CALL = 3; // 0x3 - field @Deprecated public static final int INCOMING_CALL_ANSWERING = 4; // 0x4 - field @Deprecated public static final int IN_CALL = 8; // 0x8 - field @Deprecated public static final int NOT_DEFINED = 101; // 0x65 - field @Deprecated public static final int OUTGOING_CALL = 5; // 0x5 - field @Deprecated public static final int OUTGOING_CALL_CANCELING = 7; // 0x7 - field @Deprecated public static final int OUTGOING_CALL_RING_BACK = 6; // 0x6 - field @Deprecated public static final int PINGING = 9; // 0x9 - field @Deprecated public static final int READY_TO_CALL = 0; // 0x0 - field @Deprecated public static final int REGISTERING = 1; // 0x1 - } - -} - -package android.opengl { - - public class EGL14 { - ctor public EGL14(); - method public static boolean eglBindAPI(int); - method public static boolean eglBindTexImage(android.opengl.EGLDisplay, android.opengl.EGLSurface, int); - method public static boolean eglChooseConfig(android.opengl.EGLDisplay, int[], int, android.opengl.EGLConfig[], int, int, int[], int); - method public static boolean eglCopyBuffers(android.opengl.EGLDisplay, android.opengl.EGLSurface, int); - method public static android.opengl.EGLContext eglCreateContext(android.opengl.EGLDisplay, android.opengl.EGLConfig, android.opengl.EGLContext, int[], int); - method public static android.opengl.EGLSurface eglCreatePbufferFromClientBuffer(android.opengl.EGLDisplay, int, int, android.opengl.EGLConfig, int[], int); - method public static android.opengl.EGLSurface eglCreatePbufferSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, int[], int); - method @Deprecated public static android.opengl.EGLSurface eglCreatePixmapSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, int, int[], int); - method public static android.opengl.EGLSurface eglCreateWindowSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, Object, int[], int); - method public static boolean eglDestroyContext(android.opengl.EGLDisplay, android.opengl.EGLContext); - method public static boolean eglDestroySurface(android.opengl.EGLDisplay, android.opengl.EGLSurface); - method public static boolean eglGetConfigAttrib(android.opengl.EGLDisplay, android.opengl.EGLConfig, int, int[], int); - method public static boolean eglGetConfigs(android.opengl.EGLDisplay, android.opengl.EGLConfig[], int, int, int[], int); - method public static android.opengl.EGLContext eglGetCurrentContext(); - method public static android.opengl.EGLDisplay eglGetCurrentDisplay(); - method public static android.opengl.EGLSurface eglGetCurrentSurface(int); - method public static android.opengl.EGLDisplay eglGetDisplay(int); - method public static int eglGetError(); - method public static boolean eglInitialize(android.opengl.EGLDisplay, int[], int, int[], int); - method public static boolean eglMakeCurrent(android.opengl.EGLDisplay, android.opengl.EGLSurface, android.opengl.EGLSurface, android.opengl.EGLContext); - method public static int eglQueryAPI(); - method public static boolean eglQueryContext(android.opengl.EGLDisplay, android.opengl.EGLContext, int, int[], int); - method public static String eglQueryString(android.opengl.EGLDisplay, int); - method public static boolean eglQuerySurface(android.opengl.EGLDisplay, android.opengl.EGLSurface, int, int[], int); - method public static boolean eglReleaseTexImage(android.opengl.EGLDisplay, android.opengl.EGLSurface, int); - method public static boolean eglReleaseThread(); - method public static boolean eglSurfaceAttrib(android.opengl.EGLDisplay, android.opengl.EGLSurface, int, int); - method public static boolean eglSwapBuffers(android.opengl.EGLDisplay, android.opengl.EGLSurface); - method public static boolean eglSwapInterval(android.opengl.EGLDisplay, int); - method public static boolean eglTerminate(android.opengl.EGLDisplay); - method public static boolean eglWaitClient(); - method public static boolean eglWaitGL(); - method public static boolean eglWaitNative(int); - field public static final int EGL_ALPHA_MASK_SIZE = 12350; // 0x303e - field public static final int EGL_ALPHA_SIZE = 12321; // 0x3021 - field public static final int EGL_BACK_BUFFER = 12420; // 0x3084 - field public static final int EGL_BAD_ACCESS = 12290; // 0x3002 - field public static final int EGL_BAD_ALLOC = 12291; // 0x3003 - field public static final int EGL_BAD_ATTRIBUTE = 12292; // 0x3004 - field public static final int EGL_BAD_CONFIG = 12293; // 0x3005 - field public static final int EGL_BAD_CONTEXT = 12294; // 0x3006 - field public static final int EGL_BAD_CURRENT_SURFACE = 12295; // 0x3007 - field public static final int EGL_BAD_DISPLAY = 12296; // 0x3008 - field public static final int EGL_BAD_MATCH = 12297; // 0x3009 - field public static final int EGL_BAD_NATIVE_PIXMAP = 12298; // 0x300a - field public static final int EGL_BAD_NATIVE_WINDOW = 12299; // 0x300b - field public static final int EGL_BAD_PARAMETER = 12300; // 0x300c - field public static final int EGL_BAD_SURFACE = 12301; // 0x300d - field public static final int EGL_BIND_TO_TEXTURE_RGB = 12345; // 0x3039 - field public static final int EGL_BIND_TO_TEXTURE_RGBA = 12346; // 0x303a - field public static final int EGL_BLUE_SIZE = 12322; // 0x3022 - field public static final int EGL_BUFFER_DESTROYED = 12437; // 0x3095 - field public static final int EGL_BUFFER_PRESERVED = 12436; // 0x3094 - field public static final int EGL_BUFFER_SIZE = 12320; // 0x3020 - field public static final int EGL_CLIENT_APIS = 12429; // 0x308d - field public static final int EGL_COLOR_BUFFER_TYPE = 12351; // 0x303f - field public static final int EGL_CONFIG_CAVEAT = 12327; // 0x3027 - field public static final int EGL_CONFIG_ID = 12328; // 0x3028 - field public static final int EGL_CONFORMANT = 12354; // 0x3042 - field public static final int EGL_CONTEXT_CLIENT_TYPE = 12439; // 0x3097 - field public static final int EGL_CONTEXT_CLIENT_VERSION = 12440; // 0x3098 - field public static final int EGL_CONTEXT_LOST = 12302; // 0x300e - field public static final int EGL_CORE_NATIVE_ENGINE = 12379; // 0x305b - field public static final int EGL_DEFAULT_DISPLAY = 0; // 0x0 - field public static final int EGL_DEPTH_SIZE = 12325; // 0x3025 - field public static final int EGL_DISPLAY_SCALING = 10000; // 0x2710 - field public static final int EGL_DRAW = 12377; // 0x3059 - field public static final int EGL_EXTENSIONS = 12373; // 0x3055 - field public static final int EGL_FALSE = 0; // 0x0 - field public static final int EGL_GREEN_SIZE = 12323; // 0x3023 - field public static final int EGL_HEIGHT = 12374; // 0x3056 - field public static final int EGL_HORIZONTAL_RESOLUTION = 12432; // 0x3090 - field public static final int EGL_LARGEST_PBUFFER = 12376; // 0x3058 - field public static final int EGL_LEVEL = 12329; // 0x3029 - field public static final int EGL_LUMINANCE_BUFFER = 12431; // 0x308f - field public static final int EGL_LUMINANCE_SIZE = 12349; // 0x303d - field public static final int EGL_MATCH_NATIVE_PIXMAP = 12353; // 0x3041 - field public static final int EGL_MAX_PBUFFER_HEIGHT = 12330; // 0x302a - field public static final int EGL_MAX_PBUFFER_PIXELS = 12331; // 0x302b - field public static final int EGL_MAX_PBUFFER_WIDTH = 12332; // 0x302c - field public static final int EGL_MAX_SWAP_INTERVAL = 12348; // 0x303c - field public static final int EGL_MIN_SWAP_INTERVAL = 12347; // 0x303b - field public static final int EGL_MIPMAP_LEVEL = 12419; // 0x3083 - field public static final int EGL_MIPMAP_TEXTURE = 12418; // 0x3082 - field public static final int EGL_MULTISAMPLE_RESOLVE = 12441; // 0x3099 - field public static final int EGL_MULTISAMPLE_RESOLVE_BOX = 12443; // 0x309b - field public static final int EGL_MULTISAMPLE_RESOLVE_BOX_BIT = 512; // 0x200 - field public static final int EGL_MULTISAMPLE_RESOLVE_DEFAULT = 12442; // 0x309a - field public static final int EGL_NATIVE_RENDERABLE = 12333; // 0x302d - field public static final int EGL_NATIVE_VISUAL_ID = 12334; // 0x302e - field public static final int EGL_NATIVE_VISUAL_TYPE = 12335; // 0x302f - field public static final int EGL_NONE = 12344; // 0x3038 - field public static final int EGL_NON_CONFORMANT_CONFIG = 12369; // 0x3051 - field public static final int EGL_NOT_INITIALIZED = 12289; // 0x3001 - field public static android.opengl.EGLContext EGL_NO_CONTEXT; - field public static android.opengl.EGLDisplay EGL_NO_DISPLAY; - field public static android.opengl.EGLSurface EGL_NO_SURFACE; - field public static final int EGL_NO_TEXTURE = 12380; // 0x305c - field public static final int EGL_OPENGL_API = 12450; // 0x30a2 - field public static final int EGL_OPENGL_BIT = 8; // 0x8 - field public static final int EGL_OPENGL_ES2_BIT = 4; // 0x4 - field public static final int EGL_OPENGL_ES_API = 12448; // 0x30a0 - field public static final int EGL_OPENGL_ES_BIT = 1; // 0x1 - field public static final int EGL_OPENVG_API = 12449; // 0x30a1 - field public static final int EGL_OPENVG_BIT = 2; // 0x2 - field public static final int EGL_OPENVG_IMAGE = 12438; // 0x3096 - field public static final int EGL_PBUFFER_BIT = 1; // 0x1 - field public static final int EGL_PIXEL_ASPECT_RATIO = 12434; // 0x3092 - field public static final int EGL_PIXMAP_BIT = 2; // 0x2 - field public static final int EGL_READ = 12378; // 0x305a - field public static final int EGL_RED_SIZE = 12324; // 0x3024 - field public static final int EGL_RENDERABLE_TYPE = 12352; // 0x3040 - field public static final int EGL_RENDER_BUFFER = 12422; // 0x3086 - field public static final int EGL_RGB_BUFFER = 12430; // 0x308e - field public static final int EGL_SAMPLES = 12337; // 0x3031 - field public static final int EGL_SAMPLE_BUFFERS = 12338; // 0x3032 - field public static final int EGL_SINGLE_BUFFER = 12421; // 0x3085 - field public static final int EGL_SLOW_CONFIG = 12368; // 0x3050 - field public static final int EGL_STENCIL_SIZE = 12326; // 0x3026 - field public static final int EGL_SUCCESS = 12288; // 0x3000 - field public static final int EGL_SURFACE_TYPE = 12339; // 0x3033 - field public static final int EGL_SWAP_BEHAVIOR = 12435; // 0x3093 - field public static final int EGL_SWAP_BEHAVIOR_PRESERVED_BIT = 1024; // 0x400 - field public static final int EGL_TEXTURE_2D = 12383; // 0x305f - field public static final int EGL_TEXTURE_FORMAT = 12416; // 0x3080 - field public static final int EGL_TEXTURE_RGB = 12381; // 0x305d - field public static final int EGL_TEXTURE_RGBA = 12382; // 0x305e - field public static final int EGL_TEXTURE_TARGET = 12417; // 0x3081 - field public static final int EGL_TRANSPARENT_BLUE_VALUE = 12341; // 0x3035 - field public static final int EGL_TRANSPARENT_GREEN_VALUE = 12342; // 0x3036 - field public static final int EGL_TRANSPARENT_RED_VALUE = 12343; // 0x3037 - field public static final int EGL_TRANSPARENT_RGB = 12370; // 0x3052 - field public static final int EGL_TRANSPARENT_TYPE = 12340; // 0x3034 - field public static final int EGL_TRUE = 1; // 0x1 - field public static final int EGL_VENDOR = 12371; // 0x3053 - field public static final int EGL_VERSION = 12372; // 0x3054 - field public static final int EGL_VERTICAL_RESOLUTION = 12433; // 0x3091 - field public static final int EGL_VG_ALPHA_FORMAT = 12424; // 0x3088 - field public static final int EGL_VG_ALPHA_FORMAT_NONPRE = 12427; // 0x308b - field public static final int EGL_VG_ALPHA_FORMAT_PRE = 12428; // 0x308c - field public static final int EGL_VG_ALPHA_FORMAT_PRE_BIT = 64; // 0x40 - field public static final int EGL_VG_COLORSPACE = 12423; // 0x3087 - field public static final int EGL_VG_COLORSPACE_LINEAR = 12426; // 0x308a - field public static final int EGL_VG_COLORSPACE_LINEAR_BIT = 32; // 0x20 - field public static final int EGL_VG_COLORSPACE_sRGB = 12425; // 0x3089 - field public static final int EGL_WIDTH = 12375; // 0x3057 - field public static final int EGL_WINDOW_BIT = 4; // 0x4 - } - - public final class EGL15 { - method public static int eglClientWaitSync(android.opengl.EGLDisplay, android.opengl.EGLSync, int, long); - method public static android.opengl.EGLImage eglCreateImage(android.opengl.EGLDisplay, android.opengl.EGLContext, int, long, long[], int); - method public static android.opengl.EGLSurface eglCreatePlatformPixmapSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, java.nio.Buffer, long[], int); - method public static android.opengl.EGLSurface eglCreatePlatformWindowSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, java.nio.Buffer, long[], int); - method public static android.opengl.EGLSync eglCreateSync(android.opengl.EGLDisplay, int, long[], int); - method public static boolean eglDestroyImage(android.opengl.EGLDisplay, android.opengl.EGLImage); - method public static boolean eglDestroySync(android.opengl.EGLDisplay, android.opengl.EGLSync); - method public static android.opengl.EGLDisplay eglGetPlatformDisplay(int, long, long[], int); - method public static boolean eglGetSyncAttrib(android.opengl.EGLDisplay, android.opengl.EGLSync, int, long[], int); - method public static boolean eglWaitSync(android.opengl.EGLDisplay, android.opengl.EGLSync, int); - field public static final int EGL_CL_EVENT_HANDLE = 12444; // 0x309c - field public static final int EGL_CONDITION_SATISFIED = 12534; // 0x30f6 - field public static final int EGL_CONTEXT_MAJOR_VERSION = 12440; // 0x3098 - field public static final int EGL_CONTEXT_MINOR_VERSION = 12539; // 0x30fb - field public static final int EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT = 2; // 0x2 - field public static final int EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT = 1; // 0x1 - field public static final int EGL_CONTEXT_OPENGL_DEBUG = 12720; // 0x31b0 - field public static final int EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE = 12721; // 0x31b1 - field public static final int EGL_CONTEXT_OPENGL_PROFILE_MASK = 12541; // 0x30fd - field public static final int EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY = 12733; // 0x31bd - field public static final int EGL_CONTEXT_OPENGL_ROBUST_ACCESS = 12722; // 0x31b2 - field public static final long EGL_FOREVER = -1L; // 0xffffffffffffffffL - field public static final int EGL_GL_COLORSPACE = 12445; // 0x309d - field public static final int EGL_GL_COLORSPACE_LINEAR = 12426; // 0x308a - field public static final int EGL_GL_COLORSPACE_SRGB = 12425; // 0x3089 - field public static final int EGL_GL_RENDERBUFFER = 12473; // 0x30b9 - field public static final int EGL_GL_TEXTURE_2D = 12465; // 0x30b1 - field public static final int EGL_GL_TEXTURE_3D = 12466; // 0x30b2 - field public static final int EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 12468; // 0x30b4 - field public static final int EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 12470; // 0x30b6 - field public static final int EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 12472; // 0x30b8 - field public static final int EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X = 12467; // 0x30b3 - field public static final int EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 12469; // 0x30b5 - field public static final int EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 12471; // 0x30b7 - field public static final int EGL_GL_TEXTURE_LEVEL = 12476; // 0x30bc - field public static final int EGL_GL_TEXTURE_ZOFFSET = 12477; // 0x30bd - field public static final int EGL_IMAGE_PRESERVED = 12498; // 0x30d2 - field public static final int EGL_LOSE_CONTEXT_ON_RESET = 12735; // 0x31bf - field public static final android.opengl.EGLContext EGL_NO_CONTEXT; - field public static final android.opengl.EGLDisplay EGL_NO_DISPLAY; - field public static final android.opengl.EGLImage EGL_NO_IMAGE; - field public static final int EGL_NO_RESET_NOTIFICATION = 12734; // 0x31be - field public static final android.opengl.EGLSurface EGL_NO_SURFACE; - field public static final android.opengl.EGLSync EGL_NO_SYNC; - field public static final int EGL_OPENGL_ES3_BIT = 64; // 0x40 - field public static final int EGL_PLATFORM_ANDROID_KHR = 12609; // 0x3141 - field public static final int EGL_SIGNALED = 12530; // 0x30f2 - field public static final int EGL_SYNC_CL_EVENT = 12542; // 0x30fe - field public static final int EGL_SYNC_CL_EVENT_COMPLETE = 12543; // 0x30ff - field public static final int EGL_SYNC_CONDITION = 12536; // 0x30f8 - field public static final int EGL_SYNC_FENCE = 12537; // 0x30f9 - field public static final int EGL_SYNC_FLUSH_COMMANDS_BIT = 1; // 0x1 - field public static final int EGL_SYNC_PRIOR_COMMANDS_COMPLETE = 12528; // 0x30f0 - field public static final int EGL_SYNC_STATUS = 12529; // 0x30f1 - field public static final int EGL_SYNC_TYPE = 12535; // 0x30f7 - field public static final int EGL_TIMEOUT_EXPIRED = 12533; // 0x30f5 - field public static final int EGL_UNSIGNALED = 12531; // 0x30f3 - } - - public class EGLConfig extends android.opengl.EGLObjectHandle { - } - - public class EGLContext extends android.opengl.EGLObjectHandle { - } - - public class EGLDisplay extends android.opengl.EGLObjectHandle { - } - - public class EGLExt { - ctor public EGLExt(); - method @NonNull public static android.hardware.SyncFence eglDupNativeFenceFDANDROID(@NonNull android.opengl.EGLDisplay, @NonNull android.opengl.EGLSync); - method public static boolean eglPresentationTimeANDROID(android.opengl.EGLDisplay, android.opengl.EGLSurface, long); - field public static final int EGL_CONTEXT_FLAGS_KHR = 12540; // 0x30fc - field public static final int EGL_CONTEXT_MAJOR_VERSION_KHR = 12440; // 0x3098 - field public static final int EGL_CONTEXT_MINOR_VERSION_KHR = 12539; // 0x30fb - field public static final int EGL_NO_NATIVE_FENCE_FD_ANDROID = -1; // 0xffffffff - field public static final int EGL_OPENGL_ES3_BIT_KHR = 64; // 0x40 - field public static final int EGL_RECORDABLE_ANDROID = 12610; // 0x3142 - field public static final int EGL_SYNC_NATIVE_FENCE_ANDROID = 12612; // 0x3144 - field public static final int EGL_SYNC_NATIVE_FENCE_FD_ANDROID = 12613; // 0x3145 - field public static final int EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID = 12614; // 0x3146 - } - - public class EGLImage extends android.opengl.EGLObjectHandle { - } - - public abstract class EGLObjectHandle { - ctor @Deprecated protected EGLObjectHandle(int); - ctor protected EGLObjectHandle(long); - method @Deprecated public int getHandle(); - method public long getNativeHandle(); - } - - public class EGLSurface extends android.opengl.EGLObjectHandle { - } - - public class EGLSync extends android.opengl.EGLObjectHandle { - } - - public class ETC1 { - ctor public ETC1(); - method public static void decodeBlock(java.nio.Buffer, java.nio.Buffer); - method public static void decodeImage(java.nio.Buffer, java.nio.Buffer, int, int, int, int); - method public static void encodeBlock(java.nio.Buffer, int, java.nio.Buffer); - method public static void encodeImage(java.nio.Buffer, int, int, int, int, java.nio.Buffer); - method public static void formatHeader(java.nio.Buffer, int, int); - method public static int getEncodedDataSize(int, int); - method public static int getHeight(java.nio.Buffer); - method public static int getWidth(java.nio.Buffer); - method public static boolean isValid(java.nio.Buffer); - field public static final int DECODED_BLOCK_SIZE = 48; // 0x30 - field public static final int ENCODED_BLOCK_SIZE = 8; // 0x8 - field public static final int ETC1_RGB8_OES = 36196; // 0x8d64 - field public static final int ETC_PKM_HEADER_SIZE = 16; // 0x10 - } - - public class ETC1Util { - ctor public ETC1Util(); - method public static android.opengl.ETC1Util.ETC1Texture compressTexture(java.nio.Buffer, int, int, int, int); - method public static android.opengl.ETC1Util.ETC1Texture createTexture(java.io.InputStream) throws java.io.IOException; - method public static boolean isETC1Supported(); - method public static void loadTexture(int, int, int, int, int, java.io.InputStream) throws java.io.IOException; - method public static void loadTexture(int, int, int, int, int, android.opengl.ETC1Util.ETC1Texture); - method public static void writeTexture(android.opengl.ETC1Util.ETC1Texture, java.io.OutputStream) throws java.io.IOException; - } - - public static class ETC1Util.ETC1Texture { - ctor public ETC1Util.ETC1Texture(int, int, java.nio.ByteBuffer); - method public java.nio.ByteBuffer getData(); - method public int getHeight(); - method public int getWidth(); - } - - public class GLDebugHelper { - ctor public GLDebugHelper(); - method public static javax.microedition.khronos.opengles.GL wrap(javax.microedition.khronos.opengles.GL, int, java.io.Writer); - method public static javax.microedition.khronos.egl.EGL wrap(javax.microedition.khronos.egl.EGL, int, java.io.Writer); - field public static final int CONFIG_CHECK_GL_ERROR = 1; // 0x1 - field public static final int CONFIG_CHECK_THREAD = 2; // 0x2 - field public static final int CONFIG_LOG_ARGUMENT_NAMES = 4; // 0x4 - field public static final int ERROR_WRONG_THREAD = 28672; // 0x7000 - } - - public class GLES10 { - ctor public GLES10(); - method public static void glActiveTexture(int); - method public static void glAlphaFunc(int, float); - method public static void glAlphaFuncx(int, int); - method public static void glBindTexture(int, int); - method public static void glBlendFunc(int, int); - method public static void glClear(int); - method public static void glClearColor(float, float, float, float); - method public static void glClearColorx(int, int, int, int); - method public static void glClearDepthf(float); - method public static void glClearDepthx(int); - method public static void glClearStencil(int); - method public static void glClientActiveTexture(int); - method public static void glColor4f(float, float, float, float); - method public static void glColor4x(int, int, int, int); - method public static void glColorMask(boolean, boolean, boolean, boolean); - method public static void glColorPointer(int, int, int, java.nio.Buffer); - method public static void glCompressedTexImage2D(int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glCompressedTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glCopyTexImage2D(int, int, int, int, int, int, int, int); - method public static void glCopyTexSubImage2D(int, int, int, int, int, int, int, int); - method public static void glCullFace(int); - method public static void glDeleteTextures(int, int[], int); - method public static void glDeleteTextures(int, java.nio.IntBuffer); - method public static void glDepthFunc(int); - method public static void glDepthMask(boolean); - method public static void glDepthRangef(float, float); - method public static void glDepthRangex(int, int); - method public static void glDisable(int); - method public static void glDisableClientState(int); - method public static void glDrawArrays(int, int, int); - method public static void glDrawElements(int, int, int, java.nio.Buffer); - method public static void glEnable(int); - method public static void glEnableClientState(int); - method public static void glFinish(); - method public static void glFlush(); - method public static void glFogf(int, float); - method public static void glFogfv(int, float[], int); - method public static void glFogfv(int, java.nio.FloatBuffer); - method public static void glFogx(int, int); - method public static void glFogxv(int, int[], int); - method public static void glFogxv(int, java.nio.IntBuffer); - method public static void glFrontFace(int); - method public static void glFrustumf(float, float, float, float, float, float); - method public static void glFrustumx(int, int, int, int, int, int); - method public static void glGenTextures(int, int[], int); - method public static void glGenTextures(int, java.nio.IntBuffer); - method public static int glGetError(); - method public static void glGetIntegerv(int, int[], int); - method public static void glGetIntegerv(int, java.nio.IntBuffer); - method public static String glGetString(int); - method public static void glHint(int, int); - method public static void glLightModelf(int, float); - method public static void glLightModelfv(int, float[], int); - method public static void glLightModelfv(int, java.nio.FloatBuffer); - method public static void glLightModelx(int, int); - method public static void glLightModelxv(int, int[], int); - method public static void glLightModelxv(int, java.nio.IntBuffer); - method public static void glLightf(int, int, float); - method public static void glLightfv(int, int, float[], int); - method public static void glLightfv(int, int, java.nio.FloatBuffer); - method public static void glLightx(int, int, int); - method public static void glLightxv(int, int, int[], int); - method public static void glLightxv(int, int, java.nio.IntBuffer); - method public static void glLineWidth(float); - method public static void glLineWidthx(int); - method public static void glLoadIdentity(); - method public static void glLoadMatrixf(float[], int); - method public static void glLoadMatrixf(java.nio.FloatBuffer); - method public static void glLoadMatrixx(int[], int); - method public static void glLoadMatrixx(java.nio.IntBuffer); - method public static void glLogicOp(int); - method public static void glMaterialf(int, int, float); - method public static void glMaterialfv(int, int, float[], int); - method public static void glMaterialfv(int, int, java.nio.FloatBuffer); - method public static void glMaterialx(int, int, int); - method public static void glMaterialxv(int, int, int[], int); - method public static void glMaterialxv(int, int, java.nio.IntBuffer); - method public static void glMatrixMode(int); - method public static void glMultMatrixf(float[], int); - method public static void glMultMatrixf(java.nio.FloatBuffer); - method public static void glMultMatrixx(int[], int); - method public static void glMultMatrixx(java.nio.IntBuffer); - method public static void glMultiTexCoord4f(int, float, float, float, float); - method public static void glMultiTexCoord4x(int, int, int, int, int); - method public static void glNormal3f(float, float, float); - method public static void glNormal3x(int, int, int); - method public static void glNormalPointer(int, int, java.nio.Buffer); - method public static void glOrthof(float, float, float, float, float, float); - method public static void glOrthox(int, int, int, int, int, int); - method public static void glPixelStorei(int, int); - method public static void glPointSize(float); - method public static void glPointSizex(int); - method public static void glPolygonOffset(float, float); - method public static void glPolygonOffsetx(int, int); - method public static void glPopMatrix(); - method public static void glPushMatrix(); - method public static void glReadPixels(int, int, int, int, int, int, java.nio.Buffer); - method public static void glRotatef(float, float, float, float); - method public static void glRotatex(int, int, int, int); - method public static void glSampleCoverage(float, boolean); - method public static void glSampleCoveragex(int, boolean); - method public static void glScalef(float, float, float); - method public static void glScalex(int, int, int); - method public static void glScissor(int, int, int, int); - method public static void glShadeModel(int); - method public static void glStencilFunc(int, int, int); - method public static void glStencilMask(int); - method public static void glStencilOp(int, int, int); - method public static void glTexCoordPointer(int, int, int, java.nio.Buffer); - method public static void glTexEnvf(int, int, float); - method public static void glTexEnvfv(int, int, float[], int); - method public static void glTexEnvfv(int, int, java.nio.FloatBuffer); - method public static void glTexEnvx(int, int, int); - method public static void glTexEnvxv(int, int, int[], int); - method public static void glTexEnvxv(int, int, java.nio.IntBuffer); - method public static void glTexImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glTexParameterf(int, int, float); - method public static void glTexParameterx(int, int, int); - method public static void glTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glTranslatef(float, float, float); - method public static void glTranslatex(int, int, int); - method public static void glVertexPointer(int, int, int, java.nio.Buffer); - method public static void glViewport(int, int, int, int); - field public static final int GL_ADD = 260; // 0x104 - field public static final int GL_ALIASED_LINE_WIDTH_RANGE = 33902; // 0x846e - field public static final int GL_ALIASED_POINT_SIZE_RANGE = 33901; // 0x846d - field public static final int GL_ALPHA = 6406; // 0x1906 - field public static final int GL_ALPHA_BITS = 3413; // 0xd55 - field public static final int GL_ALPHA_TEST = 3008; // 0xbc0 - field public static final int GL_ALWAYS = 519; // 0x207 - field public static final int GL_AMBIENT = 4608; // 0x1200 - field public static final int GL_AMBIENT_AND_DIFFUSE = 5634; // 0x1602 - field public static final int GL_AND = 5377; // 0x1501 - field public static final int GL_AND_INVERTED = 5380; // 0x1504 - field public static final int GL_AND_REVERSE = 5378; // 0x1502 - field public static final int GL_BACK = 1029; // 0x405 - field public static final int GL_BLEND = 3042; // 0xbe2 - field public static final int GL_BLUE_BITS = 3412; // 0xd54 - field public static final int GL_BYTE = 5120; // 0x1400 - field public static final int GL_CCW = 2305; // 0x901 - field public static final int GL_CLAMP_TO_EDGE = 33071; // 0x812f - field public static final int GL_CLEAR = 5376; // 0x1500 - field public static final int GL_COLOR_ARRAY = 32886; // 0x8076 - field public static final int GL_COLOR_BUFFER_BIT = 16384; // 0x4000 - field public static final int GL_COLOR_LOGIC_OP = 3058; // 0xbf2 - field public static final int GL_COLOR_MATERIAL = 2903; // 0xb57 - field public static final int GL_COMPRESSED_TEXTURE_FORMATS = 34467; // 0x86a3 - field public static final int GL_CONSTANT_ATTENUATION = 4615; // 0x1207 - field public static final int GL_COPY = 5379; // 0x1503 - field public static final int GL_COPY_INVERTED = 5388; // 0x150c - field public static final int GL_CULL_FACE = 2884; // 0xb44 - field public static final int GL_CW = 2304; // 0x900 - field public static final int GL_DECAL = 8449; // 0x2101 - field public static final int GL_DECR = 7683; // 0x1e03 - field public static final int GL_DEPTH_BITS = 3414; // 0xd56 - field public static final int GL_DEPTH_BUFFER_BIT = 256; // 0x100 - field public static final int GL_DEPTH_TEST = 2929; // 0xb71 - field public static final int GL_DIFFUSE = 4609; // 0x1201 - field public static final int GL_DITHER = 3024; // 0xbd0 - field public static final int GL_DONT_CARE = 4352; // 0x1100 - field public static final int GL_DST_ALPHA = 772; // 0x304 - field public static final int GL_DST_COLOR = 774; // 0x306 - field public static final int GL_EMISSION = 5632; // 0x1600 - field public static final int GL_EQUAL = 514; // 0x202 - field public static final int GL_EQUIV = 5385; // 0x1509 - field public static final int GL_EXP = 2048; // 0x800 - field public static final int GL_EXP2 = 2049; // 0x801 - field public static final int GL_EXTENSIONS = 7939; // 0x1f03 - field public static final int GL_FALSE = 0; // 0x0 - field public static final int GL_FASTEST = 4353; // 0x1101 - field public static final int GL_FIXED = 5132; // 0x140c - field public static final int GL_FLAT = 7424; // 0x1d00 - field public static final int GL_FLOAT = 5126; // 0x1406 - field public static final int GL_FOG = 2912; // 0xb60 - field public static final int GL_FOG_COLOR = 2918; // 0xb66 - field public static final int GL_FOG_DENSITY = 2914; // 0xb62 - field public static final int GL_FOG_END = 2916; // 0xb64 - field public static final int GL_FOG_HINT = 3156; // 0xc54 - field public static final int GL_FOG_MODE = 2917; // 0xb65 - field public static final int GL_FOG_START = 2915; // 0xb63 - field public static final int GL_FRONT = 1028; // 0x404 - field public static final int GL_FRONT_AND_BACK = 1032; // 0x408 - field public static final int GL_GEQUAL = 518; // 0x206 - field public static final int GL_GREATER = 516; // 0x204 - field public static final int GL_GREEN_BITS = 3411; // 0xd53 - field public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES = 35739; // 0x8b9b - field public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE_OES = 35738; // 0x8b9a - field public static final int GL_INCR = 7682; // 0x1e02 - field public static final int GL_INVALID_ENUM = 1280; // 0x500 - field public static final int GL_INVALID_OPERATION = 1282; // 0x502 - field public static final int GL_INVALID_VALUE = 1281; // 0x501 - field public static final int GL_INVERT = 5386; // 0x150a - field public static final int GL_KEEP = 7680; // 0x1e00 - field public static final int GL_LEQUAL = 515; // 0x203 - field public static final int GL_LESS = 513; // 0x201 - field public static final int GL_LIGHT0 = 16384; // 0x4000 - field public static final int GL_LIGHT1 = 16385; // 0x4001 - field public static final int GL_LIGHT2 = 16386; // 0x4002 - field public static final int GL_LIGHT3 = 16387; // 0x4003 - field public static final int GL_LIGHT4 = 16388; // 0x4004 - field public static final int GL_LIGHT5 = 16389; // 0x4005 - field public static final int GL_LIGHT6 = 16390; // 0x4006 - field public static final int GL_LIGHT7 = 16391; // 0x4007 - field public static final int GL_LIGHTING = 2896; // 0xb50 - field public static final int GL_LIGHT_MODEL_AMBIENT = 2899; // 0xb53 - field public static final int GL_LIGHT_MODEL_TWO_SIDE = 2898; // 0xb52 - field public static final int GL_LINEAR = 9729; // 0x2601 - field public static final int GL_LINEAR_ATTENUATION = 4616; // 0x1208 - field public static final int GL_LINEAR_MIPMAP_LINEAR = 9987; // 0x2703 - field public static final int GL_LINEAR_MIPMAP_NEAREST = 9985; // 0x2701 - field public static final int GL_LINES = 1; // 0x1 - field public static final int GL_LINE_LOOP = 2; // 0x2 - field public static final int GL_LINE_SMOOTH = 2848; // 0xb20 - field public static final int GL_LINE_SMOOTH_HINT = 3154; // 0xc52 - field public static final int GL_LINE_STRIP = 3; // 0x3 - field public static final int GL_LUMINANCE = 6409; // 0x1909 - field public static final int GL_LUMINANCE_ALPHA = 6410; // 0x190a - field public static final int GL_MAX_ELEMENTS_INDICES = 33001; // 0x80e9 - field public static final int GL_MAX_ELEMENTS_VERTICES = 33000; // 0x80e8 - field public static final int GL_MAX_LIGHTS = 3377; // 0xd31 - field public static final int GL_MAX_MODELVIEW_STACK_DEPTH = 3382; // 0xd36 - field public static final int GL_MAX_PROJECTION_STACK_DEPTH = 3384; // 0xd38 - field public static final int GL_MAX_TEXTURE_SIZE = 3379; // 0xd33 - field public static final int GL_MAX_TEXTURE_STACK_DEPTH = 3385; // 0xd39 - field public static final int GL_MAX_TEXTURE_UNITS = 34018; // 0x84e2 - field public static final int GL_MAX_VIEWPORT_DIMS = 3386; // 0xd3a - field public static final int GL_MODELVIEW = 5888; // 0x1700 - field public static final int GL_MODULATE = 8448; // 0x2100 - field public static final int GL_MULTISAMPLE = 32925; // 0x809d - field public static final int GL_NAND = 5390; // 0x150e - field public static final int GL_NEAREST = 9728; // 0x2600 - field public static final int GL_NEAREST_MIPMAP_LINEAR = 9986; // 0x2702 - field public static final int GL_NEAREST_MIPMAP_NEAREST = 9984; // 0x2700 - field public static final int GL_NEVER = 512; // 0x200 - field public static final int GL_NICEST = 4354; // 0x1102 - field public static final int GL_NOOP = 5381; // 0x1505 - field public static final int GL_NOR = 5384; // 0x1508 - field public static final int GL_NORMALIZE = 2977; // 0xba1 - field public static final int GL_NORMAL_ARRAY = 32885; // 0x8075 - field public static final int GL_NOTEQUAL = 517; // 0x205 - field public static final int GL_NO_ERROR = 0; // 0x0 - field public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 34466; // 0x86a2 - field public static final int GL_ONE = 1; // 0x1 - field public static final int GL_ONE_MINUS_DST_ALPHA = 773; // 0x305 - field public static final int GL_ONE_MINUS_DST_COLOR = 775; // 0x307 - field public static final int GL_ONE_MINUS_SRC_ALPHA = 771; // 0x303 - field public static final int GL_ONE_MINUS_SRC_COLOR = 769; // 0x301 - field public static final int GL_OR = 5383; // 0x1507 - field public static final int GL_OR_INVERTED = 5389; // 0x150d - field public static final int GL_OR_REVERSE = 5387; // 0x150b - field public static final int GL_OUT_OF_MEMORY = 1285; // 0x505 - field public static final int GL_PACK_ALIGNMENT = 3333; // 0xd05 - field public static final int GL_PALETTE4_R5_G6_B5_OES = 35730; // 0x8b92 - field public static final int GL_PALETTE4_RGB5_A1_OES = 35732; // 0x8b94 - field public static final int GL_PALETTE4_RGB8_OES = 35728; // 0x8b90 - field public static final int GL_PALETTE4_RGBA4_OES = 35731; // 0x8b93 - field public static final int GL_PALETTE4_RGBA8_OES = 35729; // 0x8b91 - field public static final int GL_PALETTE8_R5_G6_B5_OES = 35735; // 0x8b97 - field public static final int GL_PALETTE8_RGB5_A1_OES = 35737; // 0x8b99 - field public static final int GL_PALETTE8_RGB8_OES = 35733; // 0x8b95 - field public static final int GL_PALETTE8_RGBA4_OES = 35736; // 0x8b98 - field public static final int GL_PALETTE8_RGBA8_OES = 35734; // 0x8b96 - field public static final int GL_PERSPECTIVE_CORRECTION_HINT = 3152; // 0xc50 - field public static final int GL_POINTS = 0; // 0x0 - field public static final int GL_POINT_FADE_THRESHOLD_SIZE = 33064; // 0x8128 - field public static final int GL_POINT_SIZE = 2833; // 0xb11 - field public static final int GL_POINT_SMOOTH = 2832; // 0xb10 - field public static final int GL_POINT_SMOOTH_HINT = 3153; // 0xc51 - field public static final int GL_POLYGON_OFFSET_FILL = 32823; // 0x8037 - field public static final int GL_POLYGON_SMOOTH_HINT = 3155; // 0xc53 - field public static final int GL_POSITION = 4611; // 0x1203 - field public static final int GL_PROJECTION = 5889; // 0x1701 - field public static final int GL_QUADRATIC_ATTENUATION = 4617; // 0x1209 - field public static final int GL_RED_BITS = 3410; // 0xd52 - field public static final int GL_RENDERER = 7937; // 0x1f01 - field public static final int GL_REPEAT = 10497; // 0x2901 - field public static final int GL_REPLACE = 7681; // 0x1e01 - field public static final int GL_RESCALE_NORMAL = 32826; // 0x803a - field public static final int GL_RGB = 6407; // 0x1907 - field public static final int GL_RGBA = 6408; // 0x1908 - field public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 32926; // 0x809e - field public static final int GL_SAMPLE_ALPHA_TO_ONE = 32927; // 0x809f - field public static final int GL_SAMPLE_COVERAGE = 32928; // 0x80a0 - field public static final int GL_SCISSOR_TEST = 3089; // 0xc11 - field public static final int GL_SET = 5391; // 0x150f - field public static final int GL_SHININESS = 5633; // 0x1601 - field public static final int GL_SHORT = 5122; // 0x1402 - field public static final int GL_SMOOTH = 7425; // 0x1d01 - field public static final int GL_SMOOTH_LINE_WIDTH_RANGE = 2850; // 0xb22 - field public static final int GL_SMOOTH_POINT_SIZE_RANGE = 2834; // 0xb12 - field public static final int GL_SPECULAR = 4610; // 0x1202 - field public static final int GL_SPOT_CUTOFF = 4614; // 0x1206 - field public static final int GL_SPOT_DIRECTION = 4612; // 0x1204 - field public static final int GL_SPOT_EXPONENT = 4613; // 0x1205 - field public static final int GL_SRC_ALPHA = 770; // 0x302 - field public static final int GL_SRC_ALPHA_SATURATE = 776; // 0x308 - field public static final int GL_SRC_COLOR = 768; // 0x300 - field public static final int GL_STACK_OVERFLOW = 1283; // 0x503 - field public static final int GL_STACK_UNDERFLOW = 1284; // 0x504 - field public static final int GL_STENCIL_BITS = 3415; // 0xd57 - field public static final int GL_STENCIL_BUFFER_BIT = 1024; // 0x400 - field public static final int GL_STENCIL_TEST = 2960; // 0xb90 - field public static final int GL_SUBPIXEL_BITS = 3408; // 0xd50 - field public static final int GL_TEXTURE = 5890; // 0x1702 - field public static final int GL_TEXTURE0 = 33984; // 0x84c0 - field public static final int GL_TEXTURE1 = 33985; // 0x84c1 - field public static final int GL_TEXTURE10 = 33994; // 0x84ca - field public static final int GL_TEXTURE11 = 33995; // 0x84cb - field public static final int GL_TEXTURE12 = 33996; // 0x84cc - field public static final int GL_TEXTURE13 = 33997; // 0x84cd - field public static final int GL_TEXTURE14 = 33998; // 0x84ce - field public static final int GL_TEXTURE15 = 33999; // 0x84cf - field public static final int GL_TEXTURE16 = 34000; // 0x84d0 - field public static final int GL_TEXTURE17 = 34001; // 0x84d1 - field public static final int GL_TEXTURE18 = 34002; // 0x84d2 - field public static final int GL_TEXTURE19 = 34003; // 0x84d3 - field public static final int GL_TEXTURE2 = 33986; // 0x84c2 - field public static final int GL_TEXTURE20 = 34004; // 0x84d4 - field public static final int GL_TEXTURE21 = 34005; // 0x84d5 - field public static final int GL_TEXTURE22 = 34006; // 0x84d6 - field public static final int GL_TEXTURE23 = 34007; // 0x84d7 - field public static final int GL_TEXTURE24 = 34008; // 0x84d8 - field public static final int GL_TEXTURE25 = 34009; // 0x84d9 - field public static final int GL_TEXTURE26 = 34010; // 0x84da - field public static final int GL_TEXTURE27 = 34011; // 0x84db - field public static final int GL_TEXTURE28 = 34012; // 0x84dc - field public static final int GL_TEXTURE29 = 34013; // 0x84dd - field public static final int GL_TEXTURE3 = 33987; // 0x84c3 - field public static final int GL_TEXTURE30 = 34014; // 0x84de - field public static final int GL_TEXTURE31 = 34015; // 0x84df - field public static final int GL_TEXTURE4 = 33988; // 0x84c4 - field public static final int GL_TEXTURE5 = 33989; // 0x84c5 - field public static final int GL_TEXTURE6 = 33990; // 0x84c6 - field public static final int GL_TEXTURE7 = 33991; // 0x84c7 - field public static final int GL_TEXTURE8 = 33992; // 0x84c8 - field public static final int GL_TEXTURE9 = 33993; // 0x84c9 - field public static final int GL_TEXTURE_2D = 3553; // 0xde1 - field public static final int GL_TEXTURE_COORD_ARRAY = 32888; // 0x8078 - field public static final int GL_TEXTURE_ENV = 8960; // 0x2300 - field public static final int GL_TEXTURE_ENV_COLOR = 8705; // 0x2201 - field public static final int GL_TEXTURE_ENV_MODE = 8704; // 0x2200 - field public static final int GL_TEXTURE_MAG_FILTER = 10240; // 0x2800 - field public static final int GL_TEXTURE_MIN_FILTER = 10241; // 0x2801 - field public static final int GL_TEXTURE_WRAP_S = 10242; // 0x2802 - field public static final int GL_TEXTURE_WRAP_T = 10243; // 0x2803 - field public static final int GL_TRIANGLES = 4; // 0x4 - field public static final int GL_TRIANGLE_FAN = 6; // 0x6 - field public static final int GL_TRIANGLE_STRIP = 5; // 0x5 - field public static final int GL_TRUE = 1; // 0x1 - field public static final int GL_UNPACK_ALIGNMENT = 3317; // 0xcf5 - field public static final int GL_UNSIGNED_BYTE = 5121; // 0x1401 - field public static final int GL_UNSIGNED_SHORT = 5123; // 0x1403 - field public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 32819; // 0x8033 - field public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 32820; // 0x8034 - field public static final int GL_UNSIGNED_SHORT_5_6_5 = 33635; // 0x8363 - field public static final int GL_VENDOR = 7936; // 0x1f00 - field public static final int GL_VERSION = 7938; // 0x1f02 - field public static final int GL_VERTEX_ARRAY = 32884; // 0x8074 - field public static final int GL_XOR = 5382; // 0x1506 - field public static final int GL_ZERO = 0; // 0x0 - } - - public class GLES10Ext { - ctor public GLES10Ext(); - method public static int glQueryMatrixxOES(int[], int, int[], int); - method public static int glQueryMatrixxOES(java.nio.IntBuffer, java.nio.IntBuffer); - } - - public class GLES11 extends android.opengl.GLES10 { - ctor public GLES11(); - method public static void glBindBuffer(int, int); - method public static void glBufferData(int, int, java.nio.Buffer, int); - method public static void glBufferSubData(int, int, int, java.nio.Buffer); - method public static void glClipPlanef(int, float[], int); - method public static void glClipPlanef(int, java.nio.FloatBuffer); - method public static void glClipPlanex(int, int[], int); - method public static void glClipPlanex(int, java.nio.IntBuffer); - method public static void glColor4ub(byte, byte, byte, byte); - method public static void glColorPointer(int, int, int, int); - method public static void glDeleteBuffers(int, int[], int); - method public static void glDeleteBuffers(int, java.nio.IntBuffer); - method public static void glDrawElements(int, int, int, int); - method public static void glGenBuffers(int, int[], int); - method public static void glGenBuffers(int, java.nio.IntBuffer); - method public static void glGetBooleanv(int, boolean[], int); - method public static void glGetBooleanv(int, java.nio.IntBuffer); - method public static void glGetBufferParameteriv(int, int, int[], int); - method public static void glGetBufferParameteriv(int, int, java.nio.IntBuffer); - method public static void glGetClipPlanef(int, float[], int); - method public static void glGetClipPlanef(int, java.nio.FloatBuffer); - method public static void glGetClipPlanex(int, int[], int); - method public static void glGetClipPlanex(int, java.nio.IntBuffer); - method public static void glGetFixedv(int, int[], int); - method public static void glGetFixedv(int, java.nio.IntBuffer); - method public static void glGetFloatv(int, float[], int); - method public static void glGetFloatv(int, java.nio.FloatBuffer); - method public static void glGetLightfv(int, int, float[], int); - method public static void glGetLightfv(int, int, java.nio.FloatBuffer); - method public static void glGetLightxv(int, int, int[], int); - method public static void glGetLightxv(int, int, java.nio.IntBuffer); - method public static void glGetMaterialfv(int, int, float[], int); - method public static void glGetMaterialfv(int, int, java.nio.FloatBuffer); - method public static void glGetMaterialxv(int, int, int[], int); - method public static void glGetMaterialxv(int, int, java.nio.IntBuffer); - method public static void glGetTexEnvfv(int, int, float[], int); - method public static void glGetTexEnvfv(int, int, java.nio.FloatBuffer); - method public static void glGetTexEnviv(int, int, int[], int); - method public static void glGetTexEnviv(int, int, java.nio.IntBuffer); - method public static void glGetTexEnvxv(int, int, int[], int); - method public static void glGetTexEnvxv(int, int, java.nio.IntBuffer); - method public static void glGetTexParameterfv(int, int, float[], int); - method public static void glGetTexParameterfv(int, int, java.nio.FloatBuffer); - method public static void glGetTexParameteriv(int, int, int[], int); - method public static void glGetTexParameteriv(int, int, java.nio.IntBuffer); - method public static void glGetTexParameterxv(int, int, int[], int); - method public static void glGetTexParameterxv(int, int, java.nio.IntBuffer); - method public static boolean glIsBuffer(int); - method public static boolean glIsEnabled(int); - method public static boolean glIsTexture(int); - method public static void glNormalPointer(int, int, int); - method public static void glPointParameterf(int, float); - method public static void glPointParameterfv(int, float[], int); - method public static void glPointParameterfv(int, java.nio.FloatBuffer); - method public static void glPointParameterx(int, int); - method public static void glPointParameterxv(int, int[], int); - method public static void glPointParameterxv(int, java.nio.IntBuffer); - method public static void glPointSizePointerOES(int, int, java.nio.Buffer); - method public static void glTexCoordPointer(int, int, int, int); - method public static void glTexEnvi(int, int, int); - method public static void glTexEnviv(int, int, int[], int); - method public static void glTexEnviv(int, int, java.nio.IntBuffer); - method public static void glTexParameterfv(int, int, float[], int); - method public static void glTexParameterfv(int, int, java.nio.FloatBuffer); - method public static void glTexParameteri(int, int, int); - method public static void glTexParameteriv(int, int, int[], int); - method public static void glTexParameteriv(int, int, java.nio.IntBuffer); - method public static void glTexParameterxv(int, int, int[], int); - method public static void glTexParameterxv(int, int, java.nio.IntBuffer); - method public static void glVertexPointer(int, int, int, int); - field public static final int GL_ACTIVE_TEXTURE = 34016; // 0x84e0 - field public static final int GL_ADD_SIGNED = 34164; // 0x8574 - field public static final int GL_ALPHA_SCALE = 3356; // 0xd1c - field public static final int GL_ALPHA_TEST_FUNC = 3009; // 0xbc1 - field public static final int GL_ALPHA_TEST_REF = 3010; // 0xbc2 - field public static final int GL_ARRAY_BUFFER = 34962; // 0x8892 - field public static final int GL_ARRAY_BUFFER_BINDING = 34964; // 0x8894 - field public static final int GL_BLEND_DST = 3040; // 0xbe0 - field public static final int GL_BLEND_SRC = 3041; // 0xbe1 - field public static final int GL_BUFFER_ACCESS = 35003; // 0x88bb - field public static final int GL_BUFFER_SIZE = 34660; // 0x8764 - field public static final int GL_BUFFER_USAGE = 34661; // 0x8765 - field public static final int GL_CLIENT_ACTIVE_TEXTURE = 34017; // 0x84e1 - field public static final int GL_CLIP_PLANE0 = 12288; // 0x3000 - field public static final int GL_CLIP_PLANE1 = 12289; // 0x3001 - field public static final int GL_CLIP_PLANE2 = 12290; // 0x3002 - field public static final int GL_CLIP_PLANE3 = 12291; // 0x3003 - field public static final int GL_CLIP_PLANE4 = 12292; // 0x3004 - field public static final int GL_CLIP_PLANE5 = 12293; // 0x3005 - field public static final int GL_COLOR_ARRAY_BUFFER_BINDING = 34968; // 0x8898 - field public static final int GL_COLOR_ARRAY_POINTER = 32912; // 0x8090 - field public static final int GL_COLOR_ARRAY_SIZE = 32897; // 0x8081 - field public static final int GL_COLOR_ARRAY_STRIDE = 32899; // 0x8083 - field public static final int GL_COLOR_ARRAY_TYPE = 32898; // 0x8082 - field public static final int GL_COLOR_CLEAR_VALUE = 3106; // 0xc22 - field public static final int GL_COLOR_WRITEMASK = 3107; // 0xc23 - field public static final int GL_COMBINE = 34160; // 0x8570 - field public static final int GL_COMBINE_ALPHA = 34162; // 0x8572 - field public static final int GL_COMBINE_RGB = 34161; // 0x8571 - field public static final int GL_CONSTANT = 34166; // 0x8576 - field public static final int GL_COORD_REPLACE_OES = 34914; // 0x8862 - field public static final int GL_CULL_FACE_MODE = 2885; // 0xb45 - field public static final int GL_CURRENT_COLOR = 2816; // 0xb00 - field public static final int GL_CURRENT_NORMAL = 2818; // 0xb02 - field public static final int GL_CURRENT_TEXTURE_COORDS = 2819; // 0xb03 - field public static final int GL_DEPTH_CLEAR_VALUE = 2931; // 0xb73 - field public static final int GL_DEPTH_FUNC = 2932; // 0xb74 - field public static final int GL_DEPTH_RANGE = 2928; // 0xb70 - field public static final int GL_DEPTH_WRITEMASK = 2930; // 0xb72 - field public static final int GL_DOT3_RGB = 34478; // 0x86ae - field public static final int GL_DOT3_RGBA = 34479; // 0x86af - field public static final int GL_DYNAMIC_DRAW = 35048; // 0x88e8 - field public static final int GL_ELEMENT_ARRAY_BUFFER = 34963; // 0x8893 - field public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING = 34965; // 0x8895 - field public static final int GL_FRONT_FACE = 2886; // 0xb46 - field public static final int GL_GENERATE_MIPMAP = 33169; // 0x8191 - field public static final int GL_GENERATE_MIPMAP_HINT = 33170; // 0x8192 - field public static final int GL_INTERPOLATE = 34165; // 0x8575 - field public static final int GL_LINE_WIDTH = 2849; // 0xb21 - field public static final int GL_LOGIC_OP_MODE = 3056; // 0xbf0 - field public static final int GL_MATRIX_MODE = 2976; // 0xba0 - field public static final int GL_MAX_CLIP_PLANES = 3378; // 0xd32 - field public static final int GL_MODELVIEW_MATRIX = 2982; // 0xba6 - field public static final int GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES = 35213; // 0x898d - field public static final int GL_MODELVIEW_STACK_DEPTH = 2979; // 0xba3 - field public static final int GL_NORMAL_ARRAY_BUFFER_BINDING = 34967; // 0x8897 - field public static final int GL_NORMAL_ARRAY_POINTER = 32911; // 0x808f - field public static final int GL_NORMAL_ARRAY_STRIDE = 32895; // 0x807f - field public static final int GL_NORMAL_ARRAY_TYPE = 32894; // 0x807e - field public static final int GL_OPERAND0_ALPHA = 34200; // 0x8598 - field public static final int GL_OPERAND0_RGB = 34192; // 0x8590 - field public static final int GL_OPERAND1_ALPHA = 34201; // 0x8599 - field public static final int GL_OPERAND1_RGB = 34193; // 0x8591 - field public static final int GL_OPERAND2_ALPHA = 34202; // 0x859a - field public static final int GL_OPERAND2_RGB = 34194; // 0x8592 - field public static final int GL_POINT_DISTANCE_ATTENUATION = 33065; // 0x8129 - field public static final int GL_POINT_FADE_THRESHOLD_SIZE = 33064; // 0x8128 - field public static final int GL_POINT_SIZE = 2833; // 0xb11 - field public static final int GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES = 35743; // 0x8b9f - field public static final int GL_POINT_SIZE_ARRAY_OES = 35740; // 0x8b9c - field public static final int GL_POINT_SIZE_ARRAY_POINTER_OES = 35212; // 0x898c - field public static final int GL_POINT_SIZE_ARRAY_STRIDE_OES = 35211; // 0x898b - field public static final int GL_POINT_SIZE_ARRAY_TYPE_OES = 35210; // 0x898a - field public static final int GL_POINT_SIZE_MAX = 33063; // 0x8127 - field public static final int GL_POINT_SIZE_MIN = 33062; // 0x8126 - field public static final int GL_POINT_SPRITE_OES = 34913; // 0x8861 - field public static final int GL_POLYGON_OFFSET_FACTOR = 32824; // 0x8038 - field public static final int GL_POLYGON_OFFSET_UNITS = 10752; // 0x2a00 - field public static final int GL_PREVIOUS = 34168; // 0x8578 - field public static final int GL_PRIMARY_COLOR = 34167; // 0x8577 - field public static final int GL_PROJECTION_MATRIX = 2983; // 0xba7 - field public static final int GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES = 35214; // 0x898e - field public static final int GL_PROJECTION_STACK_DEPTH = 2980; // 0xba4 - field public static final int GL_RGB_SCALE = 34163; // 0x8573 - field public static final int GL_SAMPLES = 32937; // 0x80a9 - field public static final int GL_SAMPLE_BUFFERS = 32936; // 0x80a8 - field public static final int GL_SAMPLE_COVERAGE_INVERT = 32939; // 0x80ab - field public static final int GL_SAMPLE_COVERAGE_VALUE = 32938; // 0x80aa - field public static final int GL_SCISSOR_BOX = 3088; // 0xc10 - field public static final int GL_SHADE_MODEL = 2900; // 0xb54 - field public static final int GL_SRC0_ALPHA = 34184; // 0x8588 - field public static final int GL_SRC0_RGB = 34176; // 0x8580 - field public static final int GL_SRC1_ALPHA = 34185; // 0x8589 - field public static final int GL_SRC1_RGB = 34177; // 0x8581 - field public static final int GL_SRC2_ALPHA = 34186; // 0x858a - field public static final int GL_SRC2_RGB = 34178; // 0x8582 - field public static final int GL_STATIC_DRAW = 35044; // 0x88e4 - field public static final int GL_STENCIL_CLEAR_VALUE = 2961; // 0xb91 - field public static final int GL_STENCIL_FAIL = 2964; // 0xb94 - field public static final int GL_STENCIL_FUNC = 2962; // 0xb92 - field public static final int GL_STENCIL_PASS_DEPTH_FAIL = 2965; // 0xb95 - field public static final int GL_STENCIL_PASS_DEPTH_PASS = 2966; // 0xb96 - field public static final int GL_STENCIL_REF = 2967; // 0xb97 - field public static final int GL_STENCIL_VALUE_MASK = 2963; // 0xb93 - field public static final int GL_STENCIL_WRITEMASK = 2968; // 0xb98 - field public static final int GL_SUBTRACT = 34023; // 0x84e7 - field public static final int GL_TEXTURE_BINDING_2D = 32873; // 0x8069 - field public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 34970; // 0x889a - field public static final int GL_TEXTURE_COORD_ARRAY_POINTER = 32914; // 0x8092 - field public static final int GL_TEXTURE_COORD_ARRAY_SIZE = 32904; // 0x8088 - field public static final int GL_TEXTURE_COORD_ARRAY_STRIDE = 32906; // 0x808a - field public static final int GL_TEXTURE_COORD_ARRAY_TYPE = 32905; // 0x8089 - field public static final int GL_TEXTURE_MATRIX = 2984; // 0xba8 - field public static final int GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES = 35215; // 0x898f - field public static final int GL_TEXTURE_STACK_DEPTH = 2981; // 0xba5 - field public static final int GL_VERTEX_ARRAY_BUFFER_BINDING = 34966; // 0x8896 - field public static final int GL_VERTEX_ARRAY_POINTER = 32910; // 0x808e - field public static final int GL_VERTEX_ARRAY_SIZE = 32890; // 0x807a - field public static final int GL_VERTEX_ARRAY_STRIDE = 32892; // 0x807c - field public static final int GL_VERTEX_ARRAY_TYPE = 32891; // 0x807b - field public static final int GL_VIEWPORT = 2978; // 0xba2 - field public static final int GL_WRITE_ONLY = 35001; // 0x88b9 - } - - public class GLES11Ext { - ctor public GLES11Ext(); - method public static void glAlphaFuncxOES(int, int); - method public static void glBindFramebufferOES(int, int); - method public static void glBindRenderbufferOES(int, int); - method public static void glBlendEquationOES(int); - method public static void glBlendEquationSeparateOES(int, int); - method public static void glBlendFuncSeparateOES(int, int, int, int); - method public static int glCheckFramebufferStatusOES(int); - method public static void glClearColorxOES(int, int, int, int); - method public static void glClearDepthfOES(float); - method public static void glClearDepthxOES(int); - method public static void glClipPlanefOES(int, float[], int); - method public static void glClipPlanefOES(int, java.nio.FloatBuffer); - method public static void glClipPlanexOES(int, int[], int); - method public static void glClipPlanexOES(int, java.nio.IntBuffer); - method public static void glColor4xOES(int, int, int, int); - method public static void glCurrentPaletteMatrixOES(int); - method public static void glDeleteFramebuffersOES(int, int[], int); - method public static void glDeleteFramebuffersOES(int, java.nio.IntBuffer); - method public static void glDeleteRenderbuffersOES(int, int[], int); - method public static void glDeleteRenderbuffersOES(int, java.nio.IntBuffer); - method public static void glDepthRangefOES(float, float); - method public static void glDepthRangexOES(int, int); - method public static void glDrawTexfOES(float, float, float, float, float); - method public static void glDrawTexfvOES(float[], int); - method public static void glDrawTexfvOES(java.nio.FloatBuffer); - method public static void glDrawTexiOES(int, int, int, int, int); - method public static void glDrawTexivOES(int[], int); - method public static void glDrawTexivOES(java.nio.IntBuffer); - method public static void glDrawTexsOES(short, short, short, short, short); - method public static void glDrawTexsvOES(short[], int); - method public static void glDrawTexsvOES(java.nio.ShortBuffer); - method public static void glDrawTexxOES(int, int, int, int, int); - method public static void glDrawTexxvOES(int[], int); - method public static void glDrawTexxvOES(java.nio.IntBuffer); - method public static void glEGLImageTargetRenderbufferStorageOES(int, java.nio.Buffer); - method public static void glEGLImageTargetTexture2DOES(int, java.nio.Buffer); - method public static void glFogxOES(int, int); - method public static void glFogxvOES(int, int[], int); - method public static void glFogxvOES(int, java.nio.IntBuffer); - method public static void glFramebufferRenderbufferOES(int, int, int, int); - method public static void glFramebufferTexture2DOES(int, int, int, int, int); - method public static void glFrustumfOES(float, float, float, float, float, float); - method public static void glFrustumxOES(int, int, int, int, int, int); - method public static void glGenFramebuffersOES(int, int[], int); - method public static void glGenFramebuffersOES(int, java.nio.IntBuffer); - method public static void glGenRenderbuffersOES(int, int[], int); - method public static void glGenRenderbuffersOES(int, java.nio.IntBuffer); - method public static void glGenerateMipmapOES(int); - method public static void glGetClipPlanefOES(int, float[], int); - method public static void glGetClipPlanefOES(int, java.nio.FloatBuffer); - method public static void glGetClipPlanexOES(int, int[], int); - method public static void glGetClipPlanexOES(int, java.nio.IntBuffer); - method public static void glGetFixedvOES(int, int[], int); - method public static void glGetFixedvOES(int, java.nio.IntBuffer); - method public static void glGetFramebufferAttachmentParameterivOES(int, int, int, int[], int); - method public static void glGetFramebufferAttachmentParameterivOES(int, int, int, java.nio.IntBuffer); - method public static void glGetLightxvOES(int, int, int[], int); - method public static void glGetLightxvOES(int, int, java.nio.IntBuffer); - method public static void glGetMaterialxvOES(int, int, int[], int); - method public static void glGetMaterialxvOES(int, int, java.nio.IntBuffer); - method public static void glGetRenderbufferParameterivOES(int, int, int[], int); - method public static void glGetRenderbufferParameterivOES(int, int, java.nio.IntBuffer); - method public static void glGetTexEnvxvOES(int, int, int[], int); - method public static void glGetTexEnvxvOES(int, int, java.nio.IntBuffer); - method public static void glGetTexGenfvOES(int, int, float[], int); - method public static void glGetTexGenfvOES(int, int, java.nio.FloatBuffer); - method public static void glGetTexGenivOES(int, int, int[], int); - method public static void glGetTexGenivOES(int, int, java.nio.IntBuffer); - method public static void glGetTexGenxvOES(int, int, int[], int); - method public static void glGetTexGenxvOES(int, int, java.nio.IntBuffer); - method public static void glGetTexParameterxvOES(int, int, int[], int); - method public static void glGetTexParameterxvOES(int, int, java.nio.IntBuffer); - method public static boolean glIsFramebufferOES(int); - method public static boolean glIsRenderbufferOES(int); - method public static void glLightModelxOES(int, int); - method public static void glLightModelxvOES(int, int[], int); - method public static void glLightModelxvOES(int, java.nio.IntBuffer); - method public static void glLightxOES(int, int, int); - method public static void glLightxvOES(int, int, int[], int); - method public static void glLightxvOES(int, int, java.nio.IntBuffer); - method public static void glLineWidthxOES(int); - method public static void glLoadMatrixxOES(int[], int); - method public static void glLoadMatrixxOES(java.nio.IntBuffer); - method public static void glLoadPaletteFromModelViewMatrixOES(); - method public static void glMaterialxOES(int, int, int); - method public static void glMaterialxvOES(int, int, int[], int); - method public static void glMaterialxvOES(int, int, java.nio.IntBuffer); - method public static void glMatrixIndexPointerOES(int, int, int, java.nio.Buffer); - method public static void glMultMatrixxOES(int[], int); - method public static void glMultMatrixxOES(java.nio.IntBuffer); - method public static void glMultiTexCoord4xOES(int, int, int, int, int); - method public static void glNormal3xOES(int, int, int); - method public static void glOrthofOES(float, float, float, float, float, float); - method public static void glOrthoxOES(int, int, int, int, int, int); - method public static void glPointParameterxOES(int, int); - method public static void glPointParameterxvOES(int, int[], int); - method public static void glPointParameterxvOES(int, java.nio.IntBuffer); - method public static void glPointSizexOES(int); - method public static void glPolygonOffsetxOES(int, int); - method public static void glRenderbufferStorageOES(int, int, int, int); - method public static void glRotatexOES(int, int, int, int); - method public static void glSampleCoveragexOES(int, boolean); - method public static void glScalexOES(int, int, int); - method public static void glTexEnvxOES(int, int, int); - method public static void glTexEnvxvOES(int, int, int[], int); - method public static void glTexEnvxvOES(int, int, java.nio.IntBuffer); - method public static void glTexGenfOES(int, int, float); - method public static void glTexGenfvOES(int, int, float[], int); - method public static void glTexGenfvOES(int, int, java.nio.FloatBuffer); - method public static void glTexGeniOES(int, int, int); - method public static void glTexGenivOES(int, int, int[], int); - method public static void glTexGenivOES(int, int, java.nio.IntBuffer); - method public static void glTexGenxOES(int, int, int); - method public static void glTexGenxvOES(int, int, int[], int); - method public static void glTexGenxvOES(int, int, java.nio.IntBuffer); - method public static void glTexParameterxOES(int, int, int); - method public static void glTexParameterxvOES(int, int, int[], int); - method public static void glTexParameterxvOES(int, int, java.nio.IntBuffer); - method public static void glTranslatexOES(int, int, int); - method public static void glWeightPointerOES(int, int, int, java.nio.Buffer); - field public static final int GL_3DC_XY_AMD = 34810; // 0x87fa - field public static final int GL_3DC_X_AMD = 34809; // 0x87f9 - field public static final int GL_ATC_RGBA_EXPLICIT_ALPHA_AMD = 35987; // 0x8c93 - field public static final int GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD = 34798; // 0x87ee - field public static final int GL_ATC_RGB_AMD = 35986; // 0x8c92 - field public static final int GL_BGRA = 32993; // 0x80e1 - field public static final int GL_BLEND_DST_ALPHA_OES = 32970; // 0x80ca - field public static final int GL_BLEND_DST_RGB_OES = 32968; // 0x80c8 - field public static final int GL_BLEND_EQUATION_ALPHA_OES = 34877; // 0x883d - field public static final int GL_BLEND_EQUATION_OES = 32777; // 0x8009 - field public static final int GL_BLEND_EQUATION_RGB_OES = 32777; // 0x8009 - field public static final int GL_BLEND_SRC_ALPHA_OES = 32971; // 0x80cb - field public static final int GL_BLEND_SRC_RGB_OES = 32969; // 0x80c9 - field public static final int GL_BUFFER_ACCESS_OES = 35003; // 0x88bb - field public static final int GL_BUFFER_MAPPED_OES = 35004; // 0x88bc - field public static final int GL_BUFFER_MAP_POINTER_OES = 35005; // 0x88bd - field public static final int GL_COLOR_ATTACHMENT0_OES = 36064; // 0x8ce0 - field public static final int GL_CURRENT_PALETTE_MATRIX_OES = 34883; // 0x8843 - field public static final int GL_DECR_WRAP_OES = 34056; // 0x8508 - field public static final int GL_DEPTH24_STENCIL8_OES = 35056; // 0x88f0 - field public static final int GL_DEPTH_ATTACHMENT_OES = 36096; // 0x8d00 - field public static final int GL_DEPTH_COMPONENT16_OES = 33189; // 0x81a5 - field public static final int GL_DEPTH_COMPONENT24_OES = 33190; // 0x81a6 - field public static final int GL_DEPTH_COMPONENT32_OES = 33191; // 0x81a7 - field public static final int GL_DEPTH_STENCIL_OES = 34041; // 0x84f9 - field public static final int GL_ETC1_RGB8_OES = 36196; // 0x8d64 - field public static final int GL_FIXED_OES = 5132; // 0x140c - field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES = 36049; // 0x8cd1 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES = 36048; // 0x8cd0 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES = 36051; // 0x8cd3 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES = 36050; // 0x8cd2 - field public static final int GL_FRAMEBUFFER_BINDING_OES = 36006; // 0x8ca6 - field public static final int GL_FRAMEBUFFER_COMPLETE_OES = 36053; // 0x8cd5 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES = 36054; // 0x8cd6 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES = 36057; // 0x8cd9 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES = 36058; // 0x8cda - field public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES = 36055; // 0x8cd7 - field public static final int GL_FRAMEBUFFER_OES = 36160; // 0x8d40 - field public static final int GL_FRAMEBUFFER_UNSUPPORTED_OES = 36061; // 0x8cdd - field public static final int GL_FUNC_ADD_OES = 32774; // 0x8006 - field public static final int GL_FUNC_REVERSE_SUBTRACT_OES = 32779; // 0x800b - field public static final int GL_FUNC_SUBTRACT_OES = 32778; // 0x800a - field public static final int GL_INCR_WRAP_OES = 34055; // 0x8507 - field public static final int GL_INVALID_FRAMEBUFFER_OPERATION_OES = 1286; // 0x506 - field public static final int GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES = 35742; // 0x8b9e - field public static final int GL_MATRIX_INDEX_ARRAY_OES = 34884; // 0x8844 - field public static final int GL_MATRIX_INDEX_ARRAY_POINTER_OES = 34889; // 0x8849 - field public static final int GL_MATRIX_INDEX_ARRAY_SIZE_OES = 34886; // 0x8846 - field public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_OES = 34888; // 0x8848 - field public static final int GL_MATRIX_INDEX_ARRAY_TYPE_OES = 34887; // 0x8847 - field public static final int GL_MATRIX_PALETTE_OES = 34880; // 0x8840 - field public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES = 34076; // 0x851c - field public static final int GL_MAX_PALETTE_MATRICES_OES = 34882; // 0x8842 - field public static final int GL_MAX_RENDERBUFFER_SIZE_OES = 34024; // 0x84e8 - field public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 34047; // 0x84ff - field public static final int GL_MAX_VERTEX_UNITS_OES = 34468; // 0x86a4 - field public static final int GL_MIRRORED_REPEAT_OES = 33648; // 0x8370 - field public static final int GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES = 35213; // 0x898d - field public static final int GL_NONE_OES = 0; // 0x0 - field public static final int GL_NORMAL_MAP_OES = 34065; // 0x8511 - field public static final int GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES = 35214; // 0x898e - field public static final int GL_REFLECTION_MAP_OES = 34066; // 0x8512 - field public static final int GL_RENDERBUFFER_ALPHA_SIZE_OES = 36179; // 0x8d53 - field public static final int GL_RENDERBUFFER_BINDING_OES = 36007; // 0x8ca7 - field public static final int GL_RENDERBUFFER_BLUE_SIZE_OES = 36178; // 0x8d52 - field public static final int GL_RENDERBUFFER_DEPTH_SIZE_OES = 36180; // 0x8d54 - field public static final int GL_RENDERBUFFER_GREEN_SIZE_OES = 36177; // 0x8d51 - field public static final int GL_RENDERBUFFER_HEIGHT_OES = 36163; // 0x8d43 - field public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_OES = 36164; // 0x8d44 - field public static final int GL_RENDERBUFFER_OES = 36161; // 0x8d41 - field public static final int GL_RENDERBUFFER_RED_SIZE_OES = 36176; // 0x8d50 - field public static final int GL_RENDERBUFFER_STENCIL_SIZE_OES = 36181; // 0x8d55 - field public static final int GL_RENDERBUFFER_WIDTH_OES = 36162; // 0x8d42 - field public static final int GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES = 36200; // 0x8d68 - field public static final int GL_RGB565_OES = 36194; // 0x8d62 - field public static final int GL_RGB5_A1_OES = 32855; // 0x8057 - field public static final int GL_RGB8_OES = 32849; // 0x8051 - field public static final int GL_RGBA4_OES = 32854; // 0x8056 - field public static final int GL_RGBA8_OES = 32856; // 0x8058 - field public static final int GL_SAMPLER_EXTERNAL_OES = 36198; // 0x8d66 - field public static final int GL_STENCIL_ATTACHMENT_OES = 36128; // 0x8d20 - field public static final int GL_STENCIL_INDEX1_OES = 36166; // 0x8d46 - field public static final int GL_STENCIL_INDEX4_OES = 36167; // 0x8d47 - field public static final int GL_STENCIL_INDEX8_OES = 36168; // 0x8d48 - field public static final int GL_TEXTURE_BINDING_CUBE_MAP_OES = 34068; // 0x8514 - field public static final int GL_TEXTURE_BINDING_EXTERNAL_OES = 36199; // 0x8d67 - field public static final int GL_TEXTURE_CROP_RECT_OES = 35741; // 0x8b9d - field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES = 34070; // 0x8516 - field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES = 34072; // 0x8518 - field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES = 34074; // 0x851a - field public static final int GL_TEXTURE_CUBE_MAP_OES = 34067; // 0x8513 - field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES = 34069; // 0x8515 - field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES = 34071; // 0x8517 - field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES = 34073; // 0x8519 - field public static final int GL_TEXTURE_EXTERNAL_OES = 36197; // 0x8d65 - field public static final int GL_TEXTURE_GEN_MODE_OES = 9472; // 0x2500 - field public static final int GL_TEXTURE_GEN_STR_OES = 36192; // 0x8d60 - field public static final int GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES = 35215; // 0x898f - field public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 34046; // 0x84fe - field public static final int GL_UNSIGNED_INT_24_8_OES = 34042; // 0x84fa - field public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_OES = 34974; // 0x889e - field public static final int GL_WEIGHT_ARRAY_OES = 34477; // 0x86ad - field public static final int GL_WEIGHT_ARRAY_POINTER_OES = 34476; // 0x86ac - field public static final int GL_WEIGHT_ARRAY_SIZE_OES = 34475; // 0x86ab - field public static final int GL_WEIGHT_ARRAY_STRIDE_OES = 34474; // 0x86aa - field public static final int GL_WEIGHT_ARRAY_TYPE_OES = 34473; // 0x86a9 - field public static final int GL_WRITE_ONLY_OES = 35001; // 0x88b9 - } - - public class GLES20 { - ctor public GLES20(); - method public static void glActiveTexture(int); - method public static void glAttachShader(int, int); - method public static void glBindAttribLocation(int, int, String); - method public static void glBindBuffer(int, int); - method public static void glBindFramebuffer(int, int); - method public static void glBindRenderbuffer(int, int); - method public static void glBindTexture(int, int); - method public static void glBlendColor(float, float, float, float); - method public static void glBlendEquation(int); - method public static void glBlendEquationSeparate(int, int); - method public static void glBlendFunc(int, int); - method public static void glBlendFuncSeparate(int, int, int, int); - method public static void glBufferData(int, int, java.nio.Buffer, int); - method public static void glBufferSubData(int, int, int, java.nio.Buffer); - method public static int glCheckFramebufferStatus(int); - method public static void glClear(int); - method public static void glClearColor(float, float, float, float); - method public static void glClearDepthf(float); - method public static void glClearStencil(int); - method public static void glColorMask(boolean, boolean, boolean, boolean); - method public static void glCompileShader(int); - method public static void glCompressedTexImage2D(int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glCompressedTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glCopyTexImage2D(int, int, int, int, int, int, int, int); - method public static void glCopyTexSubImage2D(int, int, int, int, int, int, int, int); - method public static int glCreateProgram(); - method public static int glCreateShader(int); - method public static void glCullFace(int); - method public static void glDeleteBuffers(int, int[], int); - method public static void glDeleteBuffers(int, java.nio.IntBuffer); - method public static void glDeleteFramebuffers(int, int[], int); - method public static void glDeleteFramebuffers(int, java.nio.IntBuffer); - method public static void glDeleteProgram(int); - method public static void glDeleteRenderbuffers(int, int[], int); - method public static void glDeleteRenderbuffers(int, java.nio.IntBuffer); - method public static void glDeleteShader(int); - method public static void glDeleteTextures(int, int[], int); - method public static void glDeleteTextures(int, java.nio.IntBuffer); - method public static void glDepthFunc(int); - method public static void glDepthMask(boolean); - method public static void glDepthRangef(float, float); - method public static void glDetachShader(int, int); - method public static void glDisable(int); - method public static void glDisableVertexAttribArray(int); - method public static void glDrawArrays(int, int, int); - method public static void glDrawElements(int, int, int, int); - method public static void glDrawElements(int, int, int, java.nio.Buffer); - method public static void glEnable(int); - method public static void glEnableVertexAttribArray(int); - method public static void glFinish(); - method public static void glFlush(); - method public static void glFramebufferRenderbuffer(int, int, int, int); - method public static void glFramebufferTexture2D(int, int, int, int, int); - method public static void glFrontFace(int); - method public static void glGenBuffers(int, int[], int); - method public static void glGenBuffers(int, java.nio.IntBuffer); - method public static void glGenFramebuffers(int, int[], int); - method public static void glGenFramebuffers(int, java.nio.IntBuffer); - method public static void glGenRenderbuffers(int, int[], int); - method public static void glGenRenderbuffers(int, java.nio.IntBuffer); - method public static void glGenTextures(int, int[], int); - method public static void glGenTextures(int, java.nio.IntBuffer); - method public static void glGenerateMipmap(int); - method public static void glGetActiveAttrib(int, int, int, int[], int, int[], int, int[], int, byte[], int); - method public static String glGetActiveAttrib(int, int, int[], int, int[], int); - method public static String glGetActiveAttrib(int, int, java.nio.IntBuffer, java.nio.IntBuffer); - method public static void glGetActiveUniform(int, int, int, int[], int, int[], int, int[], int, byte[], int); - method public static String glGetActiveUniform(int, int, int[], int, int[], int); - method public static String glGetActiveUniform(int, int, java.nio.IntBuffer, java.nio.IntBuffer); - method public static void glGetAttachedShaders(int, int, int[], int, int[], int); - method public static void glGetAttachedShaders(int, int, java.nio.IntBuffer, java.nio.IntBuffer); - method public static int glGetAttribLocation(int, String); - method public static void glGetBooleanv(int, boolean[], int); - method public static void glGetBooleanv(int, java.nio.IntBuffer); - method public static void glGetBufferParameteriv(int, int, int[], int); - method public static void glGetBufferParameteriv(int, int, java.nio.IntBuffer); - method public static int glGetError(); - method public static void glGetFloatv(int, float[], int); - method public static void glGetFloatv(int, java.nio.FloatBuffer); - method public static void glGetFramebufferAttachmentParameteriv(int, int, int, int[], int); - method public static void glGetFramebufferAttachmentParameteriv(int, int, int, java.nio.IntBuffer); - method public static void glGetIntegerv(int, int[], int); - method public static void glGetIntegerv(int, java.nio.IntBuffer); - method public static String glGetProgramInfoLog(int); - method public static void glGetProgramiv(int, int, int[], int); - method public static void glGetProgramiv(int, int, java.nio.IntBuffer); - method public static void glGetRenderbufferParameteriv(int, int, int[], int); - method public static void glGetRenderbufferParameteriv(int, int, java.nio.IntBuffer); - method public static String glGetShaderInfoLog(int); - method public static void glGetShaderPrecisionFormat(int, int, int[], int, int[], int); - method public static void glGetShaderPrecisionFormat(int, int, java.nio.IntBuffer, java.nio.IntBuffer); - method public static void glGetShaderSource(int, int, int[], int, byte[], int); - method public static String glGetShaderSource(int); - method public static void glGetShaderiv(int, int, int[], int); - method public static void glGetShaderiv(int, int, java.nio.IntBuffer); - method public static String glGetString(int); - method public static void glGetTexParameterfv(int, int, float[], int); - method public static void glGetTexParameterfv(int, int, java.nio.FloatBuffer); - method public static void glGetTexParameteriv(int, int, int[], int); - method public static void glGetTexParameteriv(int, int, java.nio.IntBuffer); - method public static int glGetUniformLocation(int, String); - method public static void glGetUniformfv(int, int, float[], int); - method public static void glGetUniformfv(int, int, java.nio.FloatBuffer); - method public static void glGetUniformiv(int, int, int[], int); - method public static void glGetUniformiv(int, int, java.nio.IntBuffer); - method public static void glGetVertexAttribfv(int, int, float[], int); - method public static void glGetVertexAttribfv(int, int, java.nio.FloatBuffer); - method public static void glGetVertexAttribiv(int, int, int[], int); - method public static void glGetVertexAttribiv(int, int, java.nio.IntBuffer); - method public static void glHint(int, int); - method public static boolean glIsBuffer(int); - method public static boolean glIsEnabled(int); - method public static boolean glIsFramebuffer(int); - method public static boolean glIsProgram(int); - method public static boolean glIsRenderbuffer(int); - method public static boolean glIsShader(int); - method public static boolean glIsTexture(int); - method public static void glLineWidth(float); - method public static void glLinkProgram(int); - method public static void glPixelStorei(int, int); - method public static void glPolygonOffset(float, float); - method public static void glReadPixels(int, int, int, int, int, int, java.nio.Buffer); - method public static void glReleaseShaderCompiler(); - method public static void glRenderbufferStorage(int, int, int, int); - method public static void glSampleCoverage(float, boolean); - method public static void glScissor(int, int, int, int); - method public static void glShaderBinary(int, int[], int, int, java.nio.Buffer, int); - method public static void glShaderBinary(int, java.nio.IntBuffer, int, java.nio.Buffer, int); - method public static void glShaderSource(int, String); - method public static void glStencilFunc(int, int, int); - method public static void glStencilFuncSeparate(int, int, int, int); - method public static void glStencilMask(int); - method public static void glStencilMaskSeparate(int, int); - method public static void glStencilOp(int, int, int); - method public static void glStencilOpSeparate(int, int, int, int); - method public static void glTexImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glTexParameterf(int, int, float); - method public static void glTexParameterfv(int, int, float[], int); - method public static void glTexParameterfv(int, int, java.nio.FloatBuffer); - method public static void glTexParameteri(int, int, int); - method public static void glTexParameteriv(int, int, int[], int); - method public static void glTexParameteriv(int, int, java.nio.IntBuffer); - method public static void glTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glUniform1f(int, float); - method public static void glUniform1fv(int, int, float[], int); - method public static void glUniform1fv(int, int, java.nio.FloatBuffer); - method public static void glUniform1i(int, int); - method public static void glUniform1iv(int, int, int[], int); - method public static void glUniform1iv(int, int, java.nio.IntBuffer); - method public static void glUniform2f(int, float, float); - method public static void glUniform2fv(int, int, float[], int); - method public static void glUniform2fv(int, int, java.nio.FloatBuffer); - method public static void glUniform2i(int, int, int); - method public static void glUniform2iv(int, int, int[], int); - method public static void glUniform2iv(int, int, java.nio.IntBuffer); - method public static void glUniform3f(int, float, float, float); - method public static void glUniform3fv(int, int, float[], int); - method public static void glUniform3fv(int, int, java.nio.FloatBuffer); - method public static void glUniform3i(int, int, int, int); - method public static void glUniform3iv(int, int, int[], int); - method public static void glUniform3iv(int, int, java.nio.IntBuffer); - method public static void glUniform4f(int, float, float, float, float); - method public static void glUniform4fv(int, int, float[], int); - method public static void glUniform4fv(int, int, java.nio.FloatBuffer); - method public static void glUniform4i(int, int, int, int, int); - method public static void glUniform4iv(int, int, int[], int); - method public static void glUniform4iv(int, int, java.nio.IntBuffer); - method public static void glUniformMatrix2fv(int, int, boolean, float[], int); - method public static void glUniformMatrix2fv(int, int, boolean, java.nio.FloatBuffer); - method public static void glUniformMatrix3fv(int, int, boolean, float[], int); - method public static void glUniformMatrix3fv(int, int, boolean, java.nio.FloatBuffer); - method public static void glUniformMatrix4fv(int, int, boolean, float[], int); - method public static void glUniformMatrix4fv(int, int, boolean, java.nio.FloatBuffer); - method public static void glUseProgram(int); - method public static void glValidateProgram(int); - method public static void glVertexAttrib1f(int, float); - method public static void glVertexAttrib1fv(int, float[], int); - method public static void glVertexAttrib1fv(int, java.nio.FloatBuffer); - method public static void glVertexAttrib2f(int, float, float); - method public static void glVertexAttrib2fv(int, float[], int); - method public static void glVertexAttrib2fv(int, java.nio.FloatBuffer); - method public static void glVertexAttrib3f(int, float, float, float); - method public static void glVertexAttrib3fv(int, float[], int); - method public static void glVertexAttrib3fv(int, java.nio.FloatBuffer); - method public static void glVertexAttrib4f(int, float, float, float, float); - method public static void glVertexAttrib4fv(int, float[], int); - method public static void glVertexAttrib4fv(int, java.nio.FloatBuffer); - method public static void glVertexAttribPointer(int, int, int, boolean, int, int); - method public static void glVertexAttribPointer(int, int, int, boolean, int, java.nio.Buffer); - method public static void glViewport(int, int, int, int); - field public static final int GL_ACTIVE_ATTRIBUTES = 35721; // 0x8b89 - field public static final int GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 35722; // 0x8b8a - field public static final int GL_ACTIVE_TEXTURE = 34016; // 0x84e0 - field public static final int GL_ACTIVE_UNIFORMS = 35718; // 0x8b86 - field public static final int GL_ACTIVE_UNIFORM_MAX_LENGTH = 35719; // 0x8b87 - field public static final int GL_ALIASED_LINE_WIDTH_RANGE = 33902; // 0x846e - field public static final int GL_ALIASED_POINT_SIZE_RANGE = 33901; // 0x846d - field public static final int GL_ALPHA = 6406; // 0x1906 - field public static final int GL_ALPHA_BITS = 3413; // 0xd55 - field public static final int GL_ALWAYS = 519; // 0x207 - field public static final int GL_ARRAY_BUFFER = 34962; // 0x8892 - field public static final int GL_ARRAY_BUFFER_BINDING = 34964; // 0x8894 - field public static final int GL_ATTACHED_SHADERS = 35717; // 0x8b85 - field public static final int GL_BACK = 1029; // 0x405 - field public static final int GL_BLEND = 3042; // 0xbe2 - field public static final int GL_BLEND_COLOR = 32773; // 0x8005 - field public static final int GL_BLEND_DST_ALPHA = 32970; // 0x80ca - field public static final int GL_BLEND_DST_RGB = 32968; // 0x80c8 - field public static final int GL_BLEND_EQUATION = 32777; // 0x8009 - field public static final int GL_BLEND_EQUATION_ALPHA = 34877; // 0x883d - field public static final int GL_BLEND_EQUATION_RGB = 32777; // 0x8009 - field public static final int GL_BLEND_SRC_ALPHA = 32971; // 0x80cb - field public static final int GL_BLEND_SRC_RGB = 32969; // 0x80c9 - field public static final int GL_BLUE_BITS = 3412; // 0xd54 - field public static final int GL_BOOL = 35670; // 0x8b56 - field public static final int GL_BOOL_VEC2 = 35671; // 0x8b57 - field public static final int GL_BOOL_VEC3 = 35672; // 0x8b58 - field public static final int GL_BOOL_VEC4 = 35673; // 0x8b59 - field public static final int GL_BUFFER_SIZE = 34660; // 0x8764 - field public static final int GL_BUFFER_USAGE = 34661; // 0x8765 - field public static final int GL_BYTE = 5120; // 0x1400 - field public static final int GL_CCW = 2305; // 0x901 - field public static final int GL_CLAMP_TO_EDGE = 33071; // 0x812f - field public static final int GL_COLOR_ATTACHMENT0 = 36064; // 0x8ce0 - field public static final int GL_COLOR_BUFFER_BIT = 16384; // 0x4000 - field public static final int GL_COLOR_CLEAR_VALUE = 3106; // 0xc22 - field public static final int GL_COLOR_WRITEMASK = 3107; // 0xc23 - field public static final int GL_COMPILE_STATUS = 35713; // 0x8b81 - field public static final int GL_COMPRESSED_TEXTURE_FORMATS = 34467; // 0x86a3 - field public static final int GL_CONSTANT_ALPHA = 32771; // 0x8003 - field public static final int GL_CONSTANT_COLOR = 32769; // 0x8001 - field public static final int GL_CULL_FACE = 2884; // 0xb44 - field public static final int GL_CULL_FACE_MODE = 2885; // 0xb45 - field public static final int GL_CURRENT_PROGRAM = 35725; // 0x8b8d - field public static final int GL_CURRENT_VERTEX_ATTRIB = 34342; // 0x8626 - field public static final int GL_CW = 2304; // 0x900 - field public static final int GL_DECR = 7683; // 0x1e03 - field public static final int GL_DECR_WRAP = 34056; // 0x8508 - field public static final int GL_DELETE_STATUS = 35712; // 0x8b80 - field public static final int GL_DEPTH_ATTACHMENT = 36096; // 0x8d00 - field public static final int GL_DEPTH_BITS = 3414; // 0xd56 - field public static final int GL_DEPTH_BUFFER_BIT = 256; // 0x100 - field public static final int GL_DEPTH_CLEAR_VALUE = 2931; // 0xb73 - field public static final int GL_DEPTH_COMPONENT = 6402; // 0x1902 - field public static final int GL_DEPTH_COMPONENT16 = 33189; // 0x81a5 - field public static final int GL_DEPTH_FUNC = 2932; // 0xb74 - field public static final int GL_DEPTH_RANGE = 2928; // 0xb70 - field public static final int GL_DEPTH_TEST = 2929; // 0xb71 - field public static final int GL_DEPTH_WRITEMASK = 2930; // 0xb72 - field public static final int GL_DITHER = 3024; // 0xbd0 - field public static final int GL_DONT_CARE = 4352; // 0x1100 - field public static final int GL_DST_ALPHA = 772; // 0x304 - field public static final int GL_DST_COLOR = 774; // 0x306 - field public static final int GL_DYNAMIC_DRAW = 35048; // 0x88e8 - field public static final int GL_ELEMENT_ARRAY_BUFFER = 34963; // 0x8893 - field public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING = 34965; // 0x8895 - field public static final int GL_EQUAL = 514; // 0x202 - field public static final int GL_EXTENSIONS = 7939; // 0x1f03 - field public static final int GL_FALSE = 0; // 0x0 - field public static final int GL_FASTEST = 4353; // 0x1101 - field public static final int GL_FIXED = 5132; // 0x140c - field public static final int GL_FLOAT = 5126; // 0x1406 - field public static final int GL_FLOAT_MAT2 = 35674; // 0x8b5a - field public static final int GL_FLOAT_MAT3 = 35675; // 0x8b5b - field public static final int GL_FLOAT_MAT4 = 35676; // 0x8b5c - field public static final int GL_FLOAT_VEC2 = 35664; // 0x8b50 - field public static final int GL_FLOAT_VEC3 = 35665; // 0x8b51 - field public static final int GL_FLOAT_VEC4 = 35666; // 0x8b52 - field public static final int GL_FRAGMENT_SHADER = 35632; // 0x8b30 - field public static final int GL_FRAMEBUFFER = 36160; // 0x8d40 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 36049; // 0x8cd1 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 36048; // 0x8cd0 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 36051; // 0x8cd3 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 36050; // 0x8cd2 - field public static final int GL_FRAMEBUFFER_BINDING = 36006; // 0x8ca6 - field public static final int GL_FRAMEBUFFER_COMPLETE = 36053; // 0x8cd5 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 36054; // 0x8cd6 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 36057; // 0x8cd9 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 36055; // 0x8cd7 - field public static final int GL_FRAMEBUFFER_UNSUPPORTED = 36061; // 0x8cdd - field public static final int GL_FRONT = 1028; // 0x404 - field public static final int GL_FRONT_AND_BACK = 1032; // 0x408 - field public static final int GL_FRONT_FACE = 2886; // 0xb46 - field public static final int GL_FUNC_ADD = 32774; // 0x8006 - field public static final int GL_FUNC_REVERSE_SUBTRACT = 32779; // 0x800b - field public static final int GL_FUNC_SUBTRACT = 32778; // 0x800a - field public static final int GL_GENERATE_MIPMAP_HINT = 33170; // 0x8192 - field public static final int GL_GEQUAL = 518; // 0x206 - field public static final int GL_GREATER = 516; // 0x204 - field public static final int GL_GREEN_BITS = 3411; // 0xd53 - field public static final int GL_HIGH_FLOAT = 36338; // 0x8df2 - field public static final int GL_HIGH_INT = 36341; // 0x8df5 - field public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT = 35739; // 0x8b9b - field public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE = 35738; // 0x8b9a - field public static final int GL_INCR = 7682; // 0x1e02 - field public static final int GL_INCR_WRAP = 34055; // 0x8507 - field public static final int GL_INFO_LOG_LENGTH = 35716; // 0x8b84 - field public static final int GL_INT = 5124; // 0x1404 - field public static final int GL_INT_VEC2 = 35667; // 0x8b53 - field public static final int GL_INT_VEC3 = 35668; // 0x8b54 - field public static final int GL_INT_VEC4 = 35669; // 0x8b55 - field public static final int GL_INVALID_ENUM = 1280; // 0x500 - field public static final int GL_INVALID_FRAMEBUFFER_OPERATION = 1286; // 0x506 - field public static final int GL_INVALID_OPERATION = 1282; // 0x502 - field public static final int GL_INVALID_VALUE = 1281; // 0x501 - field public static final int GL_INVERT = 5386; // 0x150a - field public static final int GL_KEEP = 7680; // 0x1e00 - field public static final int GL_LEQUAL = 515; // 0x203 - field public static final int GL_LESS = 513; // 0x201 - field public static final int GL_LINEAR = 9729; // 0x2601 - field public static final int GL_LINEAR_MIPMAP_LINEAR = 9987; // 0x2703 - field public static final int GL_LINEAR_MIPMAP_NEAREST = 9985; // 0x2701 - field public static final int GL_LINES = 1; // 0x1 - field public static final int GL_LINE_LOOP = 2; // 0x2 - field public static final int GL_LINE_STRIP = 3; // 0x3 - field public static final int GL_LINE_WIDTH = 2849; // 0xb21 - field public static final int GL_LINK_STATUS = 35714; // 0x8b82 - field public static final int GL_LOW_FLOAT = 36336; // 0x8df0 - field public static final int GL_LOW_INT = 36339; // 0x8df3 - field public static final int GL_LUMINANCE = 6409; // 0x1909 - field public static final int GL_LUMINANCE_ALPHA = 6410; // 0x190a - field public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 35661; // 0x8b4d - field public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 34076; // 0x851c - field public static final int GL_MAX_FRAGMENT_UNIFORM_VECTORS = 36349; // 0x8dfd - field public static final int GL_MAX_RENDERBUFFER_SIZE = 34024; // 0x84e8 - field public static final int GL_MAX_TEXTURE_IMAGE_UNITS = 34930; // 0x8872 - field public static final int GL_MAX_TEXTURE_SIZE = 3379; // 0xd33 - field public static final int GL_MAX_VARYING_VECTORS = 36348; // 0x8dfc - field public static final int GL_MAX_VERTEX_ATTRIBS = 34921; // 0x8869 - field public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 35660; // 0x8b4c - field public static final int GL_MAX_VERTEX_UNIFORM_VECTORS = 36347; // 0x8dfb - field public static final int GL_MAX_VIEWPORT_DIMS = 3386; // 0xd3a - field public static final int GL_MEDIUM_FLOAT = 36337; // 0x8df1 - field public static final int GL_MEDIUM_INT = 36340; // 0x8df4 - field public static final int GL_MIRRORED_REPEAT = 33648; // 0x8370 - field public static final int GL_NEAREST = 9728; // 0x2600 - field public static final int GL_NEAREST_MIPMAP_LINEAR = 9986; // 0x2702 - field public static final int GL_NEAREST_MIPMAP_NEAREST = 9984; // 0x2700 - field public static final int GL_NEVER = 512; // 0x200 - field public static final int GL_NICEST = 4354; // 0x1102 - field public static final int GL_NONE = 0; // 0x0 - field public static final int GL_NOTEQUAL = 517; // 0x205 - field public static final int GL_NO_ERROR = 0; // 0x0 - field public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 34466; // 0x86a2 - field public static final int GL_NUM_SHADER_BINARY_FORMATS = 36345; // 0x8df9 - field public static final int GL_ONE = 1; // 0x1 - field public static final int GL_ONE_MINUS_CONSTANT_ALPHA = 32772; // 0x8004 - field public static final int GL_ONE_MINUS_CONSTANT_COLOR = 32770; // 0x8002 - field public static final int GL_ONE_MINUS_DST_ALPHA = 773; // 0x305 - field public static final int GL_ONE_MINUS_DST_COLOR = 775; // 0x307 - field public static final int GL_ONE_MINUS_SRC_ALPHA = 771; // 0x303 - field public static final int GL_ONE_MINUS_SRC_COLOR = 769; // 0x301 - field public static final int GL_OUT_OF_MEMORY = 1285; // 0x505 - field public static final int GL_PACK_ALIGNMENT = 3333; // 0xd05 - field public static final int GL_POINTS = 0; // 0x0 - field public static final int GL_POLYGON_OFFSET_FACTOR = 32824; // 0x8038 - field public static final int GL_POLYGON_OFFSET_FILL = 32823; // 0x8037 - field public static final int GL_POLYGON_OFFSET_UNITS = 10752; // 0x2a00 - field public static final int GL_RED_BITS = 3410; // 0xd52 - field public static final int GL_RENDERBUFFER = 36161; // 0x8d41 - field public static final int GL_RENDERBUFFER_ALPHA_SIZE = 36179; // 0x8d53 - field public static final int GL_RENDERBUFFER_BINDING = 36007; // 0x8ca7 - field public static final int GL_RENDERBUFFER_BLUE_SIZE = 36178; // 0x8d52 - field public static final int GL_RENDERBUFFER_DEPTH_SIZE = 36180; // 0x8d54 - field public static final int GL_RENDERBUFFER_GREEN_SIZE = 36177; // 0x8d51 - field public static final int GL_RENDERBUFFER_HEIGHT = 36163; // 0x8d43 - field public static final int GL_RENDERBUFFER_INTERNAL_FORMAT = 36164; // 0x8d44 - field public static final int GL_RENDERBUFFER_RED_SIZE = 36176; // 0x8d50 - field public static final int GL_RENDERBUFFER_STENCIL_SIZE = 36181; // 0x8d55 - field public static final int GL_RENDERBUFFER_WIDTH = 36162; // 0x8d42 - field public static final int GL_RENDERER = 7937; // 0x1f01 - field public static final int GL_REPEAT = 10497; // 0x2901 - field public static final int GL_REPLACE = 7681; // 0x1e01 - field public static final int GL_RGB = 6407; // 0x1907 - field public static final int GL_RGB565 = 36194; // 0x8d62 - field public static final int GL_RGB5_A1 = 32855; // 0x8057 - field public static final int GL_RGBA = 6408; // 0x1908 - field public static final int GL_RGBA4 = 32854; // 0x8056 - field public static final int GL_SAMPLER_2D = 35678; // 0x8b5e - field public static final int GL_SAMPLER_CUBE = 35680; // 0x8b60 - field public static final int GL_SAMPLES = 32937; // 0x80a9 - field public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 32926; // 0x809e - field public static final int GL_SAMPLE_BUFFERS = 32936; // 0x80a8 - field public static final int GL_SAMPLE_COVERAGE = 32928; // 0x80a0 - field public static final int GL_SAMPLE_COVERAGE_INVERT = 32939; // 0x80ab - field public static final int GL_SAMPLE_COVERAGE_VALUE = 32938; // 0x80aa - field public static final int GL_SCISSOR_BOX = 3088; // 0xc10 - field public static final int GL_SCISSOR_TEST = 3089; // 0xc11 - field public static final int GL_SHADER_BINARY_FORMATS = 36344; // 0x8df8 - field public static final int GL_SHADER_COMPILER = 36346; // 0x8dfa - field public static final int GL_SHADER_SOURCE_LENGTH = 35720; // 0x8b88 - field public static final int GL_SHADER_TYPE = 35663; // 0x8b4f - field public static final int GL_SHADING_LANGUAGE_VERSION = 35724; // 0x8b8c - field public static final int GL_SHORT = 5122; // 0x1402 - field public static final int GL_SRC_ALPHA = 770; // 0x302 - field public static final int GL_SRC_ALPHA_SATURATE = 776; // 0x308 - field public static final int GL_SRC_COLOR = 768; // 0x300 - field public static final int GL_STATIC_DRAW = 35044; // 0x88e4 - field public static final int GL_STENCIL_ATTACHMENT = 36128; // 0x8d20 - field public static final int GL_STENCIL_BACK_FAIL = 34817; // 0x8801 - field public static final int GL_STENCIL_BACK_FUNC = 34816; // 0x8800 - field public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL = 34818; // 0x8802 - field public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS = 34819; // 0x8803 - field public static final int GL_STENCIL_BACK_REF = 36003; // 0x8ca3 - field public static final int GL_STENCIL_BACK_VALUE_MASK = 36004; // 0x8ca4 - field public static final int GL_STENCIL_BACK_WRITEMASK = 36005; // 0x8ca5 - field public static final int GL_STENCIL_BITS = 3415; // 0xd57 - field public static final int GL_STENCIL_BUFFER_BIT = 1024; // 0x400 - field public static final int GL_STENCIL_CLEAR_VALUE = 2961; // 0xb91 - field public static final int GL_STENCIL_FAIL = 2964; // 0xb94 - field public static final int GL_STENCIL_FUNC = 2962; // 0xb92 - field @Deprecated public static final int GL_STENCIL_INDEX = 6401; // 0x1901 - field public static final int GL_STENCIL_INDEX8 = 36168; // 0x8d48 - field public static final int GL_STENCIL_PASS_DEPTH_FAIL = 2965; // 0xb95 - field public static final int GL_STENCIL_PASS_DEPTH_PASS = 2966; // 0xb96 - field public static final int GL_STENCIL_REF = 2967; // 0xb97 - field public static final int GL_STENCIL_TEST = 2960; // 0xb90 - field public static final int GL_STENCIL_VALUE_MASK = 2963; // 0xb93 - field public static final int GL_STENCIL_WRITEMASK = 2968; // 0xb98 - field public static final int GL_STREAM_DRAW = 35040; // 0x88e0 - field public static final int GL_SUBPIXEL_BITS = 3408; // 0xd50 - field public static final int GL_TEXTURE = 5890; // 0x1702 - field public static final int GL_TEXTURE0 = 33984; // 0x84c0 - field public static final int GL_TEXTURE1 = 33985; // 0x84c1 - field public static final int GL_TEXTURE10 = 33994; // 0x84ca - field public static final int GL_TEXTURE11 = 33995; // 0x84cb - field public static final int GL_TEXTURE12 = 33996; // 0x84cc - field public static final int GL_TEXTURE13 = 33997; // 0x84cd - field public static final int GL_TEXTURE14 = 33998; // 0x84ce - field public static final int GL_TEXTURE15 = 33999; // 0x84cf - field public static final int GL_TEXTURE16 = 34000; // 0x84d0 - field public static final int GL_TEXTURE17 = 34001; // 0x84d1 - field public static final int GL_TEXTURE18 = 34002; // 0x84d2 - field public static final int GL_TEXTURE19 = 34003; // 0x84d3 - field public static final int GL_TEXTURE2 = 33986; // 0x84c2 - field public static final int GL_TEXTURE20 = 34004; // 0x84d4 - field public static final int GL_TEXTURE21 = 34005; // 0x84d5 - field public static final int GL_TEXTURE22 = 34006; // 0x84d6 - field public static final int GL_TEXTURE23 = 34007; // 0x84d7 - field public static final int GL_TEXTURE24 = 34008; // 0x84d8 - field public static final int GL_TEXTURE25 = 34009; // 0x84d9 - field public static final int GL_TEXTURE26 = 34010; // 0x84da - field public static final int GL_TEXTURE27 = 34011; // 0x84db - field public static final int GL_TEXTURE28 = 34012; // 0x84dc - field public static final int GL_TEXTURE29 = 34013; // 0x84dd - field public static final int GL_TEXTURE3 = 33987; // 0x84c3 - field public static final int GL_TEXTURE30 = 34014; // 0x84de - field public static final int GL_TEXTURE31 = 34015; // 0x84df - field public static final int GL_TEXTURE4 = 33988; // 0x84c4 - field public static final int GL_TEXTURE5 = 33989; // 0x84c5 - field public static final int GL_TEXTURE6 = 33990; // 0x84c6 - field public static final int GL_TEXTURE7 = 33991; // 0x84c7 - field public static final int GL_TEXTURE8 = 33992; // 0x84c8 - field public static final int GL_TEXTURE9 = 33993; // 0x84c9 - field public static final int GL_TEXTURE_2D = 3553; // 0xde1 - field public static final int GL_TEXTURE_BINDING_2D = 32873; // 0x8069 - field public static final int GL_TEXTURE_BINDING_CUBE_MAP = 34068; // 0x8514 - field public static final int GL_TEXTURE_CUBE_MAP = 34067; // 0x8513 - field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 34070; // 0x8516 - field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072; // 0x8518 - field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074; // 0x851a - field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 34069; // 0x8515 - field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 34071; // 0x8517 - field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 34073; // 0x8519 - field public static final int GL_TEXTURE_MAG_FILTER = 10240; // 0x2800 - field public static final int GL_TEXTURE_MIN_FILTER = 10241; // 0x2801 - field public static final int GL_TEXTURE_WRAP_S = 10242; // 0x2802 - field public static final int GL_TEXTURE_WRAP_T = 10243; // 0x2803 - field public static final int GL_TRIANGLES = 4; // 0x4 - field public static final int GL_TRIANGLE_FAN = 6; // 0x6 - field public static final int GL_TRIANGLE_STRIP = 5; // 0x5 - field public static final int GL_TRUE = 1; // 0x1 - field public static final int GL_UNPACK_ALIGNMENT = 3317; // 0xcf5 - field public static final int GL_UNSIGNED_BYTE = 5121; // 0x1401 - field public static final int GL_UNSIGNED_INT = 5125; // 0x1405 - field public static final int GL_UNSIGNED_SHORT = 5123; // 0x1403 - field public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 32819; // 0x8033 - field public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 32820; // 0x8034 - field public static final int GL_UNSIGNED_SHORT_5_6_5 = 33635; // 0x8363 - field public static final int GL_VALIDATE_STATUS = 35715; // 0x8b83 - field public static final int GL_VENDOR = 7936; // 0x1f00 - field public static final int GL_VERSION = 7938; // 0x1f02 - field public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 34975; // 0x889f - field public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED = 34338; // 0x8622 - field public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 34922; // 0x886a - field public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER = 34373; // 0x8645 - field public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE = 34339; // 0x8623 - field public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE = 34340; // 0x8624 - field public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE = 34341; // 0x8625 - field public static final int GL_VERTEX_SHADER = 35633; // 0x8b31 - field public static final int GL_VIEWPORT = 2978; // 0xba2 - field public static final int GL_ZERO = 0; // 0x0 - } - - public class GLES30 extends android.opengl.GLES20 { - ctor public GLES30(); - method public static void glBeginQuery(int, int); - method public static void glBeginTransformFeedback(int); - method public static void glBindBufferBase(int, int, int); - method public static void glBindBufferRange(int, int, int, int, int); - method public static void glBindSampler(int, int); - method public static void glBindTransformFeedback(int, int); - method public static void glBindVertexArray(int); - method public static void glBlitFramebuffer(int, int, int, int, int, int, int, int, int, int); - method public static void glClearBufferfi(int, int, float, int); - method public static void glClearBufferfv(int, int, float[], int); - method public static void glClearBufferfv(int, int, java.nio.FloatBuffer); - method public static void glClearBufferiv(int, int, int[], int); - method public static void glClearBufferiv(int, int, java.nio.IntBuffer); - method public static void glClearBufferuiv(int, int, int[], int); - method public static void glClearBufferuiv(int, int, java.nio.IntBuffer); - method public static int glClientWaitSync(long, int, long); - method public static void glCompressedTexImage3D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glCompressedTexImage3D(int, int, int, int, int, int, int, int, int); - method public static void glCompressedTexSubImage3D(int, int, int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glCompressedTexSubImage3D(int, int, int, int, int, int, int, int, int, int, int); - method public static void glCopyBufferSubData(int, int, int, int, int); - method public static void glCopyTexSubImage3D(int, int, int, int, int, int, int, int, int); - method public static void glDeleteQueries(int, int[], int); - method public static void glDeleteQueries(int, java.nio.IntBuffer); - method public static void glDeleteSamplers(int, int[], int); - method public static void glDeleteSamplers(int, java.nio.IntBuffer); - method public static void glDeleteSync(long); - method public static void glDeleteTransformFeedbacks(int, int[], int); - method public static void glDeleteTransformFeedbacks(int, java.nio.IntBuffer); - method public static void glDeleteVertexArrays(int, int[], int); - method public static void glDeleteVertexArrays(int, java.nio.IntBuffer); - method public static void glDrawArraysInstanced(int, int, int, int); - method public static void glDrawBuffers(int, int[], int); - method public static void glDrawBuffers(int, java.nio.IntBuffer); - method public static void glDrawElementsInstanced(int, int, int, java.nio.Buffer, int); - method public static void glDrawElementsInstanced(int, int, int, int, int); - method public static void glDrawRangeElements(int, int, int, int, int, java.nio.Buffer); - method public static void glDrawRangeElements(int, int, int, int, int, int); - method public static void glEndQuery(int); - method public static void glEndTransformFeedback(); - method public static long glFenceSync(int, int); - method public static void glFlushMappedBufferRange(int, int, int); - method public static void glFramebufferTextureLayer(int, int, int, int, int); - method public static void glGenQueries(int, int[], int); - method public static void glGenQueries(int, java.nio.IntBuffer); - method public static void glGenSamplers(int, int[], int); - method public static void glGenSamplers(int, java.nio.IntBuffer); - method public static void glGenTransformFeedbacks(int, int[], int); - method public static void glGenTransformFeedbacks(int, java.nio.IntBuffer); - method public static void glGenVertexArrays(int, int[], int); - method public static void glGenVertexArrays(int, java.nio.IntBuffer); - method public static void glGetActiveUniformBlockName(int, int, int, int[], int, byte[], int); - method public static void glGetActiveUniformBlockName(int, int, java.nio.Buffer, java.nio.Buffer); - method public static String glGetActiveUniformBlockName(int, int); - method public static void glGetActiveUniformBlockiv(int, int, int, int[], int); - method public static void glGetActiveUniformBlockiv(int, int, int, java.nio.IntBuffer); - method public static void glGetActiveUniformsiv(int, int, int[], int, int, int[], int); - method public static void glGetActiveUniformsiv(int, int, java.nio.IntBuffer, int, java.nio.IntBuffer); - method public static void glGetBufferParameteri64v(int, int, long[], int); - method public static void glGetBufferParameteri64v(int, int, java.nio.LongBuffer); - method public static java.nio.Buffer glGetBufferPointerv(int, int); - method public static int glGetFragDataLocation(int, String); - method public static void glGetInteger64i_v(int, int, long[], int); - method public static void glGetInteger64i_v(int, int, java.nio.LongBuffer); - method public static void glGetInteger64v(int, long[], int); - method public static void glGetInteger64v(int, java.nio.LongBuffer); - method public static void glGetIntegeri_v(int, int, int[], int); - method public static void glGetIntegeri_v(int, int, java.nio.IntBuffer); - method public static void glGetInternalformativ(int, int, int, int, int[], int); - method public static void glGetInternalformativ(int, int, int, int, java.nio.IntBuffer); - method public static void glGetProgramBinary(int, int, int[], int, int[], int, java.nio.Buffer); - method public static void glGetProgramBinary(int, int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.Buffer); - method public static void glGetQueryObjectuiv(int, int, int[], int); - method public static void glGetQueryObjectuiv(int, int, java.nio.IntBuffer); - method public static void glGetQueryiv(int, int, int[], int); - method public static void glGetQueryiv(int, int, java.nio.IntBuffer); - method public static void glGetSamplerParameterfv(int, int, float[], int); - method public static void glGetSamplerParameterfv(int, int, java.nio.FloatBuffer); - method public static void glGetSamplerParameteriv(int, int, int[], int); - method public static void glGetSamplerParameteriv(int, int, java.nio.IntBuffer); - method public static String glGetStringi(int, int); - method public static void glGetSynciv(long, int, int, int[], int, int[], int); - method public static void glGetSynciv(long, int, int, java.nio.IntBuffer, java.nio.IntBuffer); - method public static void glGetTransformFeedbackVarying(int, int, int, int[], int, int[], int, int[], int, byte[], int); - method @Deprecated public static void glGetTransformFeedbackVarying(int, int, int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, byte); - method public static void glGetTransformFeedbackVarying(int, int, int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.ByteBuffer); - method public static String glGetTransformFeedbackVarying(int, int, int[], int, int[], int); - method public static String glGetTransformFeedbackVarying(int, int, java.nio.IntBuffer, java.nio.IntBuffer); - method public static int glGetUniformBlockIndex(int, String); - method public static void glGetUniformIndices(int, String[], int[], int); - method public static void glGetUniformIndices(int, String[], java.nio.IntBuffer); - method public static void glGetUniformuiv(int, int, int[], int); - method public static void glGetUniformuiv(int, int, java.nio.IntBuffer); - method public static void glGetVertexAttribIiv(int, int, int[], int); - method public static void glGetVertexAttribIiv(int, int, java.nio.IntBuffer); - method public static void glGetVertexAttribIuiv(int, int, int[], int); - method public static void glGetVertexAttribIuiv(int, int, java.nio.IntBuffer); - method public static void glInvalidateFramebuffer(int, int, int[], int); - method public static void glInvalidateFramebuffer(int, int, java.nio.IntBuffer); - method public static void glInvalidateSubFramebuffer(int, int, int[], int, int, int, int, int); - method public static void glInvalidateSubFramebuffer(int, int, java.nio.IntBuffer, int, int, int, int); - method public static boolean glIsQuery(int); - method public static boolean glIsSampler(int); - method public static boolean glIsSync(long); - method public static boolean glIsTransformFeedback(int); - method public static boolean glIsVertexArray(int); - method public static java.nio.Buffer glMapBufferRange(int, int, int, int); - method public static void glPauseTransformFeedback(); - method public static void glProgramBinary(int, int, java.nio.Buffer, int); - method public static void glProgramParameteri(int, int, int); - method public static void glReadBuffer(int); - method public static void glReadPixels(int, int, int, int, int, int, int); - method public static void glRenderbufferStorageMultisample(int, int, int, int, int); - method public static void glResumeTransformFeedback(); - method public static void glSamplerParameterf(int, int, float); - method public static void glSamplerParameterfv(int, int, float[], int); - method public static void glSamplerParameterfv(int, int, java.nio.FloatBuffer); - method public static void glSamplerParameteri(int, int, int); - method public static void glSamplerParameteriv(int, int, int[], int); - method public static void glSamplerParameteriv(int, int, java.nio.IntBuffer); - method public static void glTexImage3D(int, int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glTexImage3D(int, int, int, int, int, int, int, int, int, int); - method public static void glTexStorage2D(int, int, int, int, int); - method public static void glTexStorage3D(int, int, int, int, int, int); - method public static void glTexSubImage3D(int, int, int, int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glTexSubImage3D(int, int, int, int, int, int, int, int, int, int, int); - method public static void glTransformFeedbackVaryings(int, String[], int); - method public static void glUniform1ui(int, int); - method public static void glUniform1uiv(int, int, int[], int); - method public static void glUniform1uiv(int, int, java.nio.IntBuffer); - method public static void glUniform2ui(int, int, int); - method public static void glUniform2uiv(int, int, int[], int); - method public static void glUniform2uiv(int, int, java.nio.IntBuffer); - method public static void glUniform3ui(int, int, int, int); - method public static void glUniform3uiv(int, int, int[], int); - method public static void glUniform3uiv(int, int, java.nio.IntBuffer); - method public static void glUniform4ui(int, int, int, int, int); - method public static void glUniform4uiv(int, int, int[], int); - method public static void glUniform4uiv(int, int, java.nio.IntBuffer); - method public static void glUniformBlockBinding(int, int, int); - method public static void glUniformMatrix2x3fv(int, int, boolean, float[], int); - method public static void glUniformMatrix2x3fv(int, int, boolean, java.nio.FloatBuffer); - method public static void glUniformMatrix2x4fv(int, int, boolean, float[], int); - method public static void glUniformMatrix2x4fv(int, int, boolean, java.nio.FloatBuffer); - method public static void glUniformMatrix3x2fv(int, int, boolean, float[], int); - method public static void glUniformMatrix3x2fv(int, int, boolean, java.nio.FloatBuffer); - method public static void glUniformMatrix3x4fv(int, int, boolean, float[], int); - method public static void glUniformMatrix3x4fv(int, int, boolean, java.nio.FloatBuffer); - method public static void glUniformMatrix4x2fv(int, int, boolean, float[], int); - method public static void glUniformMatrix4x2fv(int, int, boolean, java.nio.FloatBuffer); - method public static void glUniformMatrix4x3fv(int, int, boolean, float[], int); - method public static void glUniformMatrix4x3fv(int, int, boolean, java.nio.FloatBuffer); - method public static boolean glUnmapBuffer(int); - method public static void glVertexAttribDivisor(int, int); - method public static void glVertexAttribI4i(int, int, int, int, int); - method public static void glVertexAttribI4iv(int, int[], int); - method public static void glVertexAttribI4iv(int, java.nio.IntBuffer); - method public static void glVertexAttribI4ui(int, int, int, int, int); - method public static void glVertexAttribI4uiv(int, int[], int); - method public static void glVertexAttribI4uiv(int, java.nio.IntBuffer); - method public static void glVertexAttribIPointer(int, int, int, int, java.nio.Buffer); - method public static void glVertexAttribIPointer(int, int, int, int, int); - method public static void glWaitSync(long, int, long); - field public static final int GL_ACTIVE_UNIFORM_BLOCKS = 35382; // 0x8a36 - field public static final int GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 35381; // 0x8a35 - field public static final int GL_ALREADY_SIGNALED = 37146; // 0x911a - field public static final int GL_ANY_SAMPLES_PASSED = 35887; // 0x8c2f - field public static final int GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 36202; // 0x8d6a - field public static final int GL_BLUE = 6405; // 0x1905 - field public static final int GL_BUFFER_ACCESS_FLAGS = 37151; // 0x911f - field public static final int GL_BUFFER_MAPPED = 35004; // 0x88bc - field public static final int GL_BUFFER_MAP_LENGTH = 37152; // 0x9120 - field public static final int GL_BUFFER_MAP_OFFSET = 37153; // 0x9121 - field public static final int GL_BUFFER_MAP_POINTER = 35005; // 0x88bd - field public static final int GL_COLOR = 6144; // 0x1800 - field public static final int GL_COLOR_ATTACHMENT1 = 36065; // 0x8ce1 - field public static final int GL_COLOR_ATTACHMENT10 = 36074; // 0x8cea - field public static final int GL_COLOR_ATTACHMENT11 = 36075; // 0x8ceb - field public static final int GL_COLOR_ATTACHMENT12 = 36076; // 0x8cec - field public static final int GL_COLOR_ATTACHMENT13 = 36077; // 0x8ced - field public static final int GL_COLOR_ATTACHMENT14 = 36078; // 0x8cee - field public static final int GL_COLOR_ATTACHMENT15 = 36079; // 0x8cef - field public static final int GL_COLOR_ATTACHMENT2 = 36066; // 0x8ce2 - field public static final int GL_COLOR_ATTACHMENT3 = 36067; // 0x8ce3 - field public static final int GL_COLOR_ATTACHMENT4 = 36068; // 0x8ce4 - field public static final int GL_COLOR_ATTACHMENT5 = 36069; // 0x8ce5 - field public static final int GL_COLOR_ATTACHMENT6 = 36070; // 0x8ce6 - field public static final int GL_COLOR_ATTACHMENT7 = 36071; // 0x8ce7 - field public static final int GL_COLOR_ATTACHMENT8 = 36072; // 0x8ce8 - field public static final int GL_COLOR_ATTACHMENT9 = 36073; // 0x8ce9 - field public static final int GL_COMPARE_REF_TO_TEXTURE = 34894; // 0x884e - field public static final int GL_COMPRESSED_R11_EAC = 37488; // 0x9270 - field public static final int GL_COMPRESSED_RG11_EAC = 37490; // 0x9272 - field public static final int GL_COMPRESSED_RGB8_ETC2 = 37492; // 0x9274 - field public static final int GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37494; // 0x9276 - field public static final int GL_COMPRESSED_RGBA8_ETC2_EAC = 37496; // 0x9278 - field public static final int GL_COMPRESSED_SIGNED_R11_EAC = 37489; // 0x9271 - field public static final int GL_COMPRESSED_SIGNED_RG11_EAC = 37491; // 0x9273 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 37497; // 0x9279 - field public static final int GL_COMPRESSED_SRGB8_ETC2 = 37493; // 0x9275 - field public static final int GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37495; // 0x9277 - field public static final int GL_CONDITION_SATISFIED = 37148; // 0x911c - field public static final int GL_COPY_READ_BUFFER = 36662; // 0x8f36 - field public static final int GL_COPY_READ_BUFFER_BINDING = 36662; // 0x8f36 - field public static final int GL_COPY_WRITE_BUFFER = 36663; // 0x8f37 - field public static final int GL_COPY_WRITE_BUFFER_BINDING = 36663; // 0x8f37 - field public static final int GL_CURRENT_QUERY = 34917; // 0x8865 - field public static final int GL_DEPTH = 6145; // 0x1801 - field public static final int GL_DEPTH24_STENCIL8 = 35056; // 0x88f0 - field public static final int GL_DEPTH32F_STENCIL8 = 36013; // 0x8cad - field public static final int GL_DEPTH_COMPONENT24 = 33190; // 0x81a6 - field public static final int GL_DEPTH_COMPONENT32F = 36012; // 0x8cac - field public static final int GL_DEPTH_STENCIL = 34041; // 0x84f9 - field public static final int GL_DEPTH_STENCIL_ATTACHMENT = 33306; // 0x821a - field public static final int GL_DRAW_BUFFER0 = 34853; // 0x8825 - field public static final int GL_DRAW_BUFFER1 = 34854; // 0x8826 - field public static final int GL_DRAW_BUFFER10 = 34863; // 0x882f - field public static final int GL_DRAW_BUFFER11 = 34864; // 0x8830 - field public static final int GL_DRAW_BUFFER12 = 34865; // 0x8831 - field public static final int GL_DRAW_BUFFER13 = 34866; // 0x8832 - field public static final int GL_DRAW_BUFFER14 = 34867; // 0x8833 - field public static final int GL_DRAW_BUFFER15 = 34868; // 0x8834 - field public static final int GL_DRAW_BUFFER2 = 34855; // 0x8827 - field public static final int GL_DRAW_BUFFER3 = 34856; // 0x8828 - field public static final int GL_DRAW_BUFFER4 = 34857; // 0x8829 - field public static final int GL_DRAW_BUFFER5 = 34858; // 0x882a - field public static final int GL_DRAW_BUFFER6 = 34859; // 0x882b - field public static final int GL_DRAW_BUFFER7 = 34860; // 0x882c - field public static final int GL_DRAW_BUFFER8 = 34861; // 0x882d - field public static final int GL_DRAW_BUFFER9 = 34862; // 0x882e - field public static final int GL_DRAW_FRAMEBUFFER = 36009; // 0x8ca9 - field public static final int GL_DRAW_FRAMEBUFFER_BINDING = 36006; // 0x8ca6 - field public static final int GL_DYNAMIC_COPY = 35050; // 0x88ea - field public static final int GL_DYNAMIC_READ = 35049; // 0x88e9 - field public static final int GL_FLOAT_32_UNSIGNED_INT_24_8_REV = 36269; // 0x8dad - field public static final int GL_FLOAT_MAT2x3 = 35685; // 0x8b65 - field public static final int GL_FLOAT_MAT2x4 = 35686; // 0x8b66 - field public static final int GL_FLOAT_MAT3x2 = 35687; // 0x8b67 - field public static final int GL_FLOAT_MAT3x4 = 35688; // 0x8b68 - field public static final int GL_FLOAT_MAT4x2 = 35689; // 0x8b69 - field public static final int GL_FLOAT_MAT4x3 = 35690; // 0x8b6a - field public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 35723; // 0x8b8b - field public static final int GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 33301; // 0x8215 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 33300; // 0x8214 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 33296; // 0x8210 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 33297; // 0x8211 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 33302; // 0x8216 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 33299; // 0x8213 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = 33298; // 0x8212 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 33303; // 0x8217 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 36052; // 0x8cd4 - field public static final int GL_FRAMEBUFFER_DEFAULT = 33304; // 0x8218 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 36182; // 0x8d56 - field public static final int GL_FRAMEBUFFER_UNDEFINED = 33305; // 0x8219 - field public static final int GL_GREEN = 6404; // 0x1904 - field public static final int GL_HALF_FLOAT = 5131; // 0x140b - field public static final int GL_INTERLEAVED_ATTRIBS = 35980; // 0x8c8c - field public static final int GL_INT_2_10_10_10_REV = 36255; // 0x8d9f - field public static final int GL_INT_SAMPLER_2D = 36298; // 0x8dca - field public static final int GL_INT_SAMPLER_2D_ARRAY = 36303; // 0x8dcf - field public static final int GL_INT_SAMPLER_3D = 36299; // 0x8dcb - field public static final int GL_INT_SAMPLER_CUBE = 36300; // 0x8dcc - field public static final int GL_INVALID_INDEX = -1; // 0xffffffff - field public static final int GL_MAJOR_VERSION = 33307; // 0x821b - field public static final int GL_MAP_FLUSH_EXPLICIT_BIT = 16; // 0x10 - field public static final int GL_MAP_INVALIDATE_BUFFER_BIT = 8; // 0x8 - field public static final int GL_MAP_INVALIDATE_RANGE_BIT = 4; // 0x4 - field public static final int GL_MAP_READ_BIT = 1; // 0x1 - field public static final int GL_MAP_UNSYNCHRONIZED_BIT = 32; // 0x20 - field public static final int GL_MAP_WRITE_BIT = 2; // 0x2 - field public static final int GL_MAX = 32776; // 0x8008 - field public static final int GL_MAX_3D_TEXTURE_SIZE = 32883; // 0x8073 - field public static final int GL_MAX_ARRAY_TEXTURE_LAYERS = 35071; // 0x88ff - field public static final int GL_MAX_COLOR_ATTACHMENTS = 36063; // 0x8cdf - field public static final int GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 35379; // 0x8a33 - field public static final int GL_MAX_COMBINED_UNIFORM_BLOCKS = 35374; // 0x8a2e - field public static final int GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 35377; // 0x8a31 - field public static final int GL_MAX_DRAW_BUFFERS = 34852; // 0x8824 - field public static final int GL_MAX_ELEMENTS_INDICES = 33001; // 0x80e9 - field public static final int GL_MAX_ELEMENTS_VERTICES = 33000; // 0x80e8 - field public static final int GL_MAX_ELEMENT_INDEX = 36203; // 0x8d6b - field public static final int GL_MAX_FRAGMENT_INPUT_COMPONENTS = 37157; // 0x9125 - field public static final int GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 35373; // 0x8a2d - field public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 35657; // 0x8b49 - field public static final int GL_MAX_PROGRAM_TEXEL_OFFSET = 35077; // 0x8905 - field public static final int GL_MAX_SAMPLES = 36183; // 0x8d57 - field public static final int GL_MAX_SERVER_WAIT_TIMEOUT = 37137; // 0x9111 - field public static final int GL_MAX_TEXTURE_LOD_BIAS = 34045; // 0x84fd - field public static final int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 35978; // 0x8c8a - field public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 35979; // 0x8c8b - field public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 35968; // 0x8c80 - field public static final int GL_MAX_UNIFORM_BLOCK_SIZE = 35376; // 0x8a30 - field public static final int GL_MAX_UNIFORM_BUFFER_BINDINGS = 35375; // 0x8a2f - field public static final int GL_MAX_VARYING_COMPONENTS = 35659; // 0x8b4b - field public static final int GL_MAX_VERTEX_OUTPUT_COMPONENTS = 37154; // 0x9122 - field public static final int GL_MAX_VERTEX_UNIFORM_BLOCKS = 35371; // 0x8a2b - field public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS = 35658; // 0x8b4a - field public static final int GL_MIN = 32775; // 0x8007 - field public static final int GL_MINOR_VERSION = 33308; // 0x821c - field public static final int GL_MIN_PROGRAM_TEXEL_OFFSET = 35076; // 0x8904 - field public static final int GL_NUM_EXTENSIONS = 33309; // 0x821d - field public static final int GL_NUM_PROGRAM_BINARY_FORMATS = 34814; // 0x87fe - field public static final int GL_NUM_SAMPLE_COUNTS = 37760; // 0x9380 - field public static final int GL_OBJECT_TYPE = 37138; // 0x9112 - field public static final int GL_PACK_ROW_LENGTH = 3330; // 0xd02 - field public static final int GL_PACK_SKIP_PIXELS = 3332; // 0xd04 - field public static final int GL_PACK_SKIP_ROWS = 3331; // 0xd03 - field public static final int GL_PIXEL_PACK_BUFFER = 35051; // 0x88eb - field public static final int GL_PIXEL_PACK_BUFFER_BINDING = 35053; // 0x88ed - field public static final int GL_PIXEL_UNPACK_BUFFER = 35052; // 0x88ec - field public static final int GL_PIXEL_UNPACK_BUFFER_BINDING = 35055; // 0x88ef - field public static final int GL_PRIMITIVE_RESTART_FIXED_INDEX = 36201; // 0x8d69 - field public static final int GL_PROGRAM_BINARY_FORMATS = 34815; // 0x87ff - field public static final int GL_PROGRAM_BINARY_LENGTH = 34625; // 0x8741 - field public static final int GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 33367; // 0x8257 - field public static final int GL_QUERY_RESULT = 34918; // 0x8866 - field public static final int GL_QUERY_RESULT_AVAILABLE = 34919; // 0x8867 - field public static final int GL_R11F_G11F_B10F = 35898; // 0x8c3a - field public static final int GL_R16F = 33325; // 0x822d - field public static final int GL_R16I = 33331; // 0x8233 - field public static final int GL_R16UI = 33332; // 0x8234 - field public static final int GL_R32F = 33326; // 0x822e - field public static final int GL_R32I = 33333; // 0x8235 - field public static final int GL_R32UI = 33334; // 0x8236 - field public static final int GL_R8 = 33321; // 0x8229 - field public static final int GL_R8I = 33329; // 0x8231 - field public static final int GL_R8UI = 33330; // 0x8232 - field public static final int GL_R8_SNORM = 36756; // 0x8f94 - field public static final int GL_RASTERIZER_DISCARD = 35977; // 0x8c89 - field public static final int GL_READ_BUFFER = 3074; // 0xc02 - field public static final int GL_READ_FRAMEBUFFER = 36008; // 0x8ca8 - field public static final int GL_READ_FRAMEBUFFER_BINDING = 36010; // 0x8caa - field public static final int GL_RED = 6403; // 0x1903 - field public static final int GL_RED_INTEGER = 36244; // 0x8d94 - field public static final int GL_RENDERBUFFER_SAMPLES = 36011; // 0x8cab - field public static final int GL_RG = 33319; // 0x8227 - field public static final int GL_RG16F = 33327; // 0x822f - field public static final int GL_RG16I = 33337; // 0x8239 - field public static final int GL_RG16UI = 33338; // 0x823a - field public static final int GL_RG32F = 33328; // 0x8230 - field public static final int GL_RG32I = 33339; // 0x823b - field public static final int GL_RG32UI = 33340; // 0x823c - field public static final int GL_RG8 = 33323; // 0x822b - field public static final int GL_RG8I = 33335; // 0x8237 - field public static final int GL_RG8UI = 33336; // 0x8238 - field public static final int GL_RG8_SNORM = 36757; // 0x8f95 - field public static final int GL_RGB10_A2 = 32857; // 0x8059 - field public static final int GL_RGB10_A2UI = 36975; // 0x906f - field public static final int GL_RGB16F = 34843; // 0x881b - field public static final int GL_RGB16I = 36233; // 0x8d89 - field public static final int GL_RGB16UI = 36215; // 0x8d77 - field public static final int GL_RGB32F = 34837; // 0x8815 - field public static final int GL_RGB32I = 36227; // 0x8d83 - field public static final int GL_RGB32UI = 36209; // 0x8d71 - field public static final int GL_RGB8 = 32849; // 0x8051 - field public static final int GL_RGB8I = 36239; // 0x8d8f - field public static final int GL_RGB8UI = 36221; // 0x8d7d - field public static final int GL_RGB8_SNORM = 36758; // 0x8f96 - field public static final int GL_RGB9_E5 = 35901; // 0x8c3d - field public static final int GL_RGBA16F = 34842; // 0x881a - field public static final int GL_RGBA16I = 36232; // 0x8d88 - field public static final int GL_RGBA16UI = 36214; // 0x8d76 - field public static final int GL_RGBA32F = 34836; // 0x8814 - field public static final int GL_RGBA32I = 36226; // 0x8d82 - field public static final int GL_RGBA32UI = 36208; // 0x8d70 - field public static final int GL_RGBA8 = 32856; // 0x8058 - field public static final int GL_RGBA8I = 36238; // 0x8d8e - field public static final int GL_RGBA8UI = 36220; // 0x8d7c - field public static final int GL_RGBA8_SNORM = 36759; // 0x8f97 - field public static final int GL_RGBA_INTEGER = 36249; // 0x8d99 - field public static final int GL_RGB_INTEGER = 36248; // 0x8d98 - field public static final int GL_RG_INTEGER = 33320; // 0x8228 - field public static final int GL_SAMPLER_2D_ARRAY = 36289; // 0x8dc1 - field public static final int GL_SAMPLER_2D_ARRAY_SHADOW = 36292; // 0x8dc4 - field public static final int GL_SAMPLER_2D_SHADOW = 35682; // 0x8b62 - field public static final int GL_SAMPLER_3D = 35679; // 0x8b5f - field public static final int GL_SAMPLER_BINDING = 35097; // 0x8919 - field public static final int GL_SAMPLER_CUBE_SHADOW = 36293; // 0x8dc5 - field public static final int GL_SEPARATE_ATTRIBS = 35981; // 0x8c8d - field public static final int GL_SIGNALED = 37145; // 0x9119 - field public static final int GL_SIGNED_NORMALIZED = 36764; // 0x8f9c - field public static final int GL_SRGB = 35904; // 0x8c40 - field public static final int GL_SRGB8 = 35905; // 0x8c41 - field public static final int GL_SRGB8_ALPHA8 = 35907; // 0x8c43 - field public static final int GL_STATIC_COPY = 35046; // 0x88e6 - field public static final int GL_STATIC_READ = 35045; // 0x88e5 - field public static final int GL_STENCIL = 6146; // 0x1802 - field public static final int GL_STREAM_COPY = 35042; // 0x88e2 - field public static final int GL_STREAM_READ = 35041; // 0x88e1 - field public static final int GL_SYNC_CONDITION = 37139; // 0x9113 - field public static final int GL_SYNC_FENCE = 37142; // 0x9116 - field public static final int GL_SYNC_FLAGS = 37141; // 0x9115 - field public static final int GL_SYNC_FLUSH_COMMANDS_BIT = 1; // 0x1 - field public static final int GL_SYNC_GPU_COMMANDS_COMPLETE = 37143; // 0x9117 - field public static final int GL_SYNC_STATUS = 37140; // 0x9114 - field public static final int GL_TEXTURE_2D_ARRAY = 35866; // 0x8c1a - field public static final int GL_TEXTURE_3D = 32879; // 0x806f - field public static final int GL_TEXTURE_BASE_LEVEL = 33084; // 0x813c - field public static final int GL_TEXTURE_BINDING_2D_ARRAY = 35869; // 0x8c1d - field public static final int GL_TEXTURE_BINDING_3D = 32874; // 0x806a - field public static final int GL_TEXTURE_COMPARE_FUNC = 34893; // 0x884d - field public static final int GL_TEXTURE_COMPARE_MODE = 34892; // 0x884c - field public static final int GL_TEXTURE_IMMUTABLE_FORMAT = 37167; // 0x912f - field public static final int GL_TEXTURE_IMMUTABLE_LEVELS = 33503; // 0x82df - field public static final int GL_TEXTURE_MAX_LEVEL = 33085; // 0x813d - field public static final int GL_TEXTURE_MAX_LOD = 33083; // 0x813b - field public static final int GL_TEXTURE_MIN_LOD = 33082; // 0x813a - field public static final int GL_TEXTURE_SWIZZLE_A = 36421; // 0x8e45 - field public static final int GL_TEXTURE_SWIZZLE_B = 36420; // 0x8e44 - field public static final int GL_TEXTURE_SWIZZLE_G = 36419; // 0x8e43 - field public static final int GL_TEXTURE_SWIZZLE_R = 36418; // 0x8e42 - field public static final int GL_TEXTURE_WRAP_R = 32882; // 0x8072 - field public static final int GL_TIMEOUT_EXPIRED = 37147; // 0x911b - field public static final long GL_TIMEOUT_IGNORED = -1L; // 0xffffffffffffffffL - field public static final int GL_TRANSFORM_FEEDBACK = 36386; // 0x8e22 - field public static final int GL_TRANSFORM_FEEDBACK_ACTIVE = 36388; // 0x8e24 - field public static final int GL_TRANSFORM_FEEDBACK_BINDING = 36389; // 0x8e25 - field public static final int GL_TRANSFORM_FEEDBACK_BUFFER = 35982; // 0x8c8e - field public static final int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = 35983; // 0x8c8f - field public static final int GL_TRANSFORM_FEEDBACK_BUFFER_MODE = 35967; // 0x8c7f - field public static final int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = 35973; // 0x8c85 - field public static final int GL_TRANSFORM_FEEDBACK_BUFFER_START = 35972; // 0x8c84 - field public static final int GL_TRANSFORM_FEEDBACK_PAUSED = 36387; // 0x8e23 - field public static final int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 35976; // 0x8c88 - field public static final int GL_TRANSFORM_FEEDBACK_VARYINGS = 35971; // 0x8c83 - field public static final int GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 35958; // 0x8c76 - field public static final int GL_UNIFORM_ARRAY_STRIDE = 35388; // 0x8a3c - field public static final int GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 35394; // 0x8a42 - field public static final int GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 35395; // 0x8a43 - field public static final int GL_UNIFORM_BLOCK_BINDING = 35391; // 0x8a3f - field public static final int GL_UNIFORM_BLOCK_DATA_SIZE = 35392; // 0x8a40 - field public static final int GL_UNIFORM_BLOCK_INDEX = 35386; // 0x8a3a - field public static final int GL_UNIFORM_BLOCK_NAME_LENGTH = 35393; // 0x8a41 - field public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 35398; // 0x8a46 - field public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 35396; // 0x8a44 - field public static final int GL_UNIFORM_BUFFER = 35345; // 0x8a11 - field public static final int GL_UNIFORM_BUFFER_BINDING = 35368; // 0x8a28 - field public static final int GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 35380; // 0x8a34 - field public static final int GL_UNIFORM_BUFFER_SIZE = 35370; // 0x8a2a - field public static final int GL_UNIFORM_BUFFER_START = 35369; // 0x8a29 - field public static final int GL_UNIFORM_IS_ROW_MAJOR = 35390; // 0x8a3e - field public static final int GL_UNIFORM_MATRIX_STRIDE = 35389; // 0x8a3d - field public static final int GL_UNIFORM_NAME_LENGTH = 35385; // 0x8a39 - field public static final int GL_UNIFORM_OFFSET = 35387; // 0x8a3b - field public static final int GL_UNIFORM_SIZE = 35384; // 0x8a38 - field public static final int GL_UNIFORM_TYPE = 35383; // 0x8a37 - field public static final int GL_UNPACK_IMAGE_HEIGHT = 32878; // 0x806e - field public static final int GL_UNPACK_ROW_LENGTH = 3314; // 0xcf2 - field public static final int GL_UNPACK_SKIP_IMAGES = 32877; // 0x806d - field public static final int GL_UNPACK_SKIP_PIXELS = 3316; // 0xcf4 - field public static final int GL_UNPACK_SKIP_ROWS = 3315; // 0xcf3 - field public static final int GL_UNSIGNALED = 37144; // 0x9118 - field public static final int GL_UNSIGNED_INT_10F_11F_11F_REV = 35899; // 0x8c3b - field public static final int GL_UNSIGNED_INT_24_8 = 34042; // 0x84fa - field public static final int GL_UNSIGNED_INT_2_10_10_10_REV = 33640; // 0x8368 - field public static final int GL_UNSIGNED_INT_5_9_9_9_REV = 35902; // 0x8c3e - field public static final int GL_UNSIGNED_INT_SAMPLER_2D = 36306; // 0x8dd2 - field public static final int GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = 36311; // 0x8dd7 - field public static final int GL_UNSIGNED_INT_SAMPLER_3D = 36307; // 0x8dd3 - field public static final int GL_UNSIGNED_INT_SAMPLER_CUBE = 36308; // 0x8dd4 - field public static final int GL_UNSIGNED_INT_VEC2 = 36294; // 0x8dc6 - field public static final int GL_UNSIGNED_INT_VEC3 = 36295; // 0x8dc7 - field public static final int GL_UNSIGNED_INT_VEC4 = 36296; // 0x8dc8 - field public static final int GL_UNSIGNED_NORMALIZED = 35863; // 0x8c17 - field public static final int GL_VERTEX_ARRAY_BINDING = 34229; // 0x85b5 - field public static final int GL_VERTEX_ATTRIB_ARRAY_DIVISOR = 35070; // 0x88fe - field public static final int GL_VERTEX_ATTRIB_ARRAY_INTEGER = 35069; // 0x88fd - field public static final int GL_WAIT_FAILED = 37149; // 0x911d - } - - public class GLES31 extends android.opengl.GLES30 { - method public static void glActiveShaderProgram(int, int); - method public static void glBindImageTexture(int, int, int, boolean, int, int, int); - method public static void glBindProgramPipeline(int); - method public static void glBindVertexBuffer(int, int, long, int); - method public static int glCreateShaderProgramv(int, String[]); - method public static void glDeleteProgramPipelines(int, int[], int); - method public static void glDeleteProgramPipelines(int, java.nio.IntBuffer); - method public static void glDispatchCompute(int, int, int); - method public static void glDispatchComputeIndirect(long); - method public static void glDrawArraysIndirect(int, long); - method public static void glDrawElementsIndirect(int, int, long); - method public static void glFramebufferParameteri(int, int, int); - method public static void glGenProgramPipelines(int, int[], int); - method public static void glGenProgramPipelines(int, java.nio.IntBuffer); - method public static void glGetBooleani_v(int, int, boolean[], int); - method public static void glGetBooleani_v(int, int, java.nio.IntBuffer); - method public static void glGetFramebufferParameteriv(int, int, int[], int); - method public static void glGetFramebufferParameteriv(int, int, java.nio.IntBuffer); - method public static void glGetMultisamplefv(int, int, float[], int); - method public static void glGetMultisamplefv(int, int, java.nio.FloatBuffer); - method public static void glGetProgramInterfaceiv(int, int, int, int[], int); - method public static void glGetProgramInterfaceiv(int, int, int, java.nio.IntBuffer); - method public static String glGetProgramPipelineInfoLog(int); - method public static void glGetProgramPipelineiv(int, int, int[], int); - method public static void glGetProgramPipelineiv(int, int, java.nio.IntBuffer); - method public static int glGetProgramResourceIndex(int, int, String); - method public static int glGetProgramResourceLocation(int, int, String); - method public static String glGetProgramResourceName(int, int, int); - method public static void glGetProgramResourceiv(int, int, int, int, int[], int, int, int[], int, int[], int); - method public static void glGetProgramResourceiv(int, int, int, int, java.nio.IntBuffer, int, java.nio.IntBuffer, java.nio.IntBuffer); - method public static void glGetTexLevelParameterfv(int, int, int, float[], int); - method public static void glGetTexLevelParameterfv(int, int, int, java.nio.FloatBuffer); - method public static void glGetTexLevelParameteriv(int, int, int, int[], int); - method public static void glGetTexLevelParameteriv(int, int, int, java.nio.IntBuffer); - method public static boolean glIsProgramPipeline(int); - method public static void glMemoryBarrier(int); - method public static void glMemoryBarrierByRegion(int); - method public static void glProgramUniform1f(int, int, float); - method public static void glProgramUniform1fv(int, int, int, float[], int); - method public static void glProgramUniform1fv(int, int, int, java.nio.FloatBuffer); - method public static void glProgramUniform1i(int, int, int); - method public static void glProgramUniform1iv(int, int, int, int[], int); - method public static void glProgramUniform1iv(int, int, int, java.nio.IntBuffer); - method public static void glProgramUniform1ui(int, int, int); - method public static void glProgramUniform1uiv(int, int, int, int[], int); - method public static void glProgramUniform1uiv(int, int, int, java.nio.IntBuffer); - method public static void glProgramUniform2f(int, int, float, float); - method public static void glProgramUniform2fv(int, int, int, float[], int); - method public static void glProgramUniform2fv(int, int, int, java.nio.FloatBuffer); - method public static void glProgramUniform2i(int, int, int, int); - method public static void glProgramUniform2iv(int, int, int, int[], int); - method public static void glProgramUniform2iv(int, int, int, java.nio.IntBuffer); - method public static void glProgramUniform2ui(int, int, int, int); - method public static void glProgramUniform2uiv(int, int, int, int[], int); - method public static void glProgramUniform2uiv(int, int, int, java.nio.IntBuffer); - method public static void glProgramUniform3f(int, int, float, float, float); - method public static void glProgramUniform3fv(int, int, int, float[], int); - method public static void glProgramUniform3fv(int, int, int, java.nio.FloatBuffer); - method public static void glProgramUniform3i(int, int, int, int, int); - method public static void glProgramUniform3iv(int, int, int, int[], int); - method public static void glProgramUniform3iv(int, int, int, java.nio.IntBuffer); - method public static void glProgramUniform3ui(int, int, int, int, int); - method public static void glProgramUniform3uiv(int, int, int, int[], int); - method public static void glProgramUniform3uiv(int, int, int, java.nio.IntBuffer); - method public static void glProgramUniform4f(int, int, float, float, float, float); - method public static void glProgramUniform4fv(int, int, int, float[], int); - method public static void glProgramUniform4fv(int, int, int, java.nio.FloatBuffer); - method public static void glProgramUniform4i(int, int, int, int, int, int); - method public static void glProgramUniform4iv(int, int, int, int[], int); - method public static void glProgramUniform4iv(int, int, int, java.nio.IntBuffer); - method public static void glProgramUniform4ui(int, int, int, int, int, int); - method public static void glProgramUniform4uiv(int, int, int, int[], int); - method public static void glProgramUniform4uiv(int, int, int, java.nio.IntBuffer); - method public static void glProgramUniformMatrix2fv(int, int, int, boolean, float[], int); - method public static void glProgramUniformMatrix2fv(int, int, int, boolean, java.nio.FloatBuffer); - method public static void glProgramUniformMatrix2x3fv(int, int, int, boolean, float[], int); - method public static void glProgramUniformMatrix2x3fv(int, int, int, boolean, java.nio.FloatBuffer); - method public static void glProgramUniformMatrix2x4fv(int, int, int, boolean, float[], int); - method public static void glProgramUniformMatrix2x4fv(int, int, int, boolean, java.nio.FloatBuffer); - method public static void glProgramUniformMatrix3fv(int, int, int, boolean, float[], int); - method public static void glProgramUniformMatrix3fv(int, int, int, boolean, java.nio.FloatBuffer); - method public static void glProgramUniformMatrix3x2fv(int, int, int, boolean, float[], int); - method public static void glProgramUniformMatrix3x2fv(int, int, int, boolean, java.nio.FloatBuffer); - method public static void glProgramUniformMatrix3x4fv(int, int, int, boolean, float[], int); - method public static void glProgramUniformMatrix3x4fv(int, int, int, boolean, java.nio.FloatBuffer); - method public static void glProgramUniformMatrix4fv(int, int, int, boolean, float[], int); - method public static void glProgramUniformMatrix4fv(int, int, int, boolean, java.nio.FloatBuffer); - method public static void glProgramUniformMatrix4x2fv(int, int, int, boolean, float[], int); - method public static void glProgramUniformMatrix4x2fv(int, int, int, boolean, java.nio.FloatBuffer); - method public static void glProgramUniformMatrix4x3fv(int, int, int, boolean, float[], int); - method public static void glProgramUniformMatrix4x3fv(int, int, int, boolean, java.nio.FloatBuffer); - method public static void glSampleMaski(int, int); - method public static void glTexStorage2DMultisample(int, int, int, int, int, boolean); - method public static void glUseProgramStages(int, int, int); - method public static void glValidateProgramPipeline(int); - method public static void glVertexAttribBinding(int, int); - method public static void glVertexAttribFormat(int, int, int, boolean, int); - method public static void glVertexAttribIFormat(int, int, int, int); - method public static void glVertexBindingDivisor(int, int); - field public static final int GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = 37593; // 0x92d9 - field public static final int GL_ACTIVE_PROGRAM = 33369; // 0x8259 - field public static final int GL_ACTIVE_RESOURCES = 37621; // 0x92f5 - field public static final int GL_ACTIVE_VARIABLES = 37637; // 0x9305 - field public static final int GL_ALL_BARRIER_BITS = -1; // 0xffffffff - field public static final int GL_ALL_SHADER_BITS = -1; // 0xffffffff - field public static final int GL_ARRAY_SIZE = 37627; // 0x92fb - field public static final int GL_ARRAY_STRIDE = 37630; // 0x92fe - field public static final int GL_ATOMIC_COUNTER_BARRIER_BIT = 4096; // 0x1000 - field public static final int GL_ATOMIC_COUNTER_BUFFER = 37568; // 0x92c0 - field public static final int GL_ATOMIC_COUNTER_BUFFER_BINDING = 37569; // 0x92c1 - field public static final int GL_ATOMIC_COUNTER_BUFFER_INDEX = 37633; // 0x9301 - field public static final int GL_ATOMIC_COUNTER_BUFFER_SIZE = 37571; // 0x92c3 - field public static final int GL_ATOMIC_COUNTER_BUFFER_START = 37570; // 0x92c2 - field public static final int GL_BLOCK_INDEX = 37629; // 0x92fd - field public static final int GL_BUFFER_BINDING = 37634; // 0x9302 - field public static final int GL_BUFFER_DATA_SIZE = 37635; // 0x9303 - field public static final int GL_BUFFER_UPDATE_BARRIER_BIT = 512; // 0x200 - field public static final int GL_BUFFER_VARIABLE = 37605; // 0x92e5 - field public static final int GL_COMMAND_BARRIER_BIT = 64; // 0x40 - field public static final int GL_COMPUTE_SHADER = 37305; // 0x91b9 - field public static final int GL_COMPUTE_SHADER_BIT = 32; // 0x20 - field public static final int GL_COMPUTE_WORK_GROUP_SIZE = 33383; // 0x8267 - field public static final int GL_DEPTH_STENCIL_TEXTURE_MODE = 37098; // 0x90ea - field public static final int GL_DISPATCH_INDIRECT_BUFFER = 37102; // 0x90ee - field public static final int GL_DISPATCH_INDIRECT_BUFFER_BINDING = 37103; // 0x90ef - field public static final int GL_DRAW_INDIRECT_BUFFER = 36671; // 0x8f3f - field public static final int GL_DRAW_INDIRECT_BUFFER_BINDING = 36675; // 0x8f43 - field public static final int GL_ELEMENT_ARRAY_BARRIER_BIT = 2; // 0x2 - field public static final int GL_FRAGMENT_SHADER_BIT = 2; // 0x2 - field public static final int GL_FRAMEBUFFER_BARRIER_BIT = 1024; // 0x400 - field public static final int GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = 37652; // 0x9314 - field public static final int GL_FRAMEBUFFER_DEFAULT_HEIGHT = 37649; // 0x9311 - field public static final int GL_FRAMEBUFFER_DEFAULT_SAMPLES = 37651; // 0x9313 - field public static final int GL_FRAMEBUFFER_DEFAULT_WIDTH = 37648; // 0x9310 - field public static final int GL_IMAGE_2D = 36941; // 0x904d - field public static final int GL_IMAGE_2D_ARRAY = 36947; // 0x9053 - field public static final int GL_IMAGE_3D = 36942; // 0x904e - field public static final int GL_IMAGE_BINDING_ACCESS = 36670; // 0x8f3e - field public static final int GL_IMAGE_BINDING_FORMAT = 36974; // 0x906e - field public static final int GL_IMAGE_BINDING_LAYER = 36669; // 0x8f3d - field public static final int GL_IMAGE_BINDING_LAYERED = 36668; // 0x8f3c - field public static final int GL_IMAGE_BINDING_LEVEL = 36667; // 0x8f3b - field public static final int GL_IMAGE_BINDING_NAME = 36666; // 0x8f3a - field public static final int GL_IMAGE_CUBE = 36944; // 0x9050 - field public static final int GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = 37065; // 0x90c9 - field public static final int GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = 37064; // 0x90c8 - field public static final int GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = 37063; // 0x90c7 - field public static final int GL_INT_IMAGE_2D = 36952; // 0x9058 - field public static final int GL_INT_IMAGE_2D_ARRAY = 36958; // 0x905e - field public static final int GL_INT_IMAGE_3D = 36953; // 0x9059 - field public static final int GL_INT_IMAGE_CUBE = 36955; // 0x905b - field public static final int GL_INT_SAMPLER_2D_MULTISAMPLE = 37129; // 0x9109 - field public static final int GL_IS_ROW_MAJOR = 37632; // 0x9300 - field public static final int GL_LOCATION = 37646; // 0x930e - field public static final int GL_MATRIX_STRIDE = 37631; // 0x92ff - field public static final int GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 37596; // 0x92dc - field public static final int GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = 37592; // 0x92d8 - field public static final int GL_MAX_COLOR_TEXTURE_SAMPLES = 37134; // 0x910e - field public static final int GL_MAX_COMBINED_ATOMIC_COUNTERS = 37591; // 0x92d7 - field public static final int GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = 37585; // 0x92d1 - field public static final int GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = 33382; // 0x8266 - field public static final int GL_MAX_COMBINED_IMAGE_UNIFORMS = 37071; // 0x90cf - field public static final int GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = 36665; // 0x8f39 - field public static final int GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = 37084; // 0x90dc - field public static final int GL_MAX_COMPUTE_ATOMIC_COUNTERS = 33381; // 0x8265 - field public static final int GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = 33380; // 0x8264 - field public static final int GL_MAX_COMPUTE_IMAGE_UNIFORMS = 37309; // 0x91bd - field public static final int GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = 37083; // 0x90db - field public static final int GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = 33378; // 0x8262 - field public static final int GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = 37308; // 0x91bc - field public static final int GL_MAX_COMPUTE_UNIFORM_BLOCKS = 37307; // 0x91bb - field public static final int GL_MAX_COMPUTE_UNIFORM_COMPONENTS = 33379; // 0x8263 - field public static final int GL_MAX_COMPUTE_WORK_GROUP_COUNT = 37310; // 0x91be - field public static final int GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = 37099; // 0x90eb - field public static final int GL_MAX_COMPUTE_WORK_GROUP_SIZE = 37311; // 0x91bf - field public static final int GL_MAX_DEPTH_TEXTURE_SAMPLES = 37135; // 0x910f - field public static final int GL_MAX_FRAGMENT_ATOMIC_COUNTERS = 37590; // 0x92d6 - field public static final int GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = 37584; // 0x92d0 - field public static final int GL_MAX_FRAGMENT_IMAGE_UNIFORMS = 37070; // 0x90ce - field public static final int GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = 37082; // 0x90da - field public static final int GL_MAX_FRAMEBUFFER_HEIGHT = 37654; // 0x9316 - field public static final int GL_MAX_FRAMEBUFFER_SAMPLES = 37656; // 0x9318 - field public static final int GL_MAX_FRAMEBUFFER_WIDTH = 37653; // 0x9315 - field public static final int GL_MAX_IMAGE_UNITS = 36664; // 0x8f38 - field public static final int GL_MAX_INTEGER_SAMPLES = 37136; // 0x9110 - field public static final int GL_MAX_NAME_LENGTH = 37622; // 0x92f6 - field public static final int GL_MAX_NUM_ACTIVE_VARIABLES = 37623; // 0x92f7 - field public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 36447; // 0x8e5f - field public static final int GL_MAX_SAMPLE_MASK_WORDS = 36441; // 0x8e59 - field public static final int GL_MAX_SHADER_STORAGE_BLOCK_SIZE = 37086; // 0x90de - field public static final int GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = 37085; // 0x90dd - field public static final int GL_MAX_UNIFORM_LOCATIONS = 33390; // 0x826e - field public static final int GL_MAX_VERTEX_ATOMIC_COUNTERS = 37586; // 0x92d2 - field public static final int GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = 37580; // 0x92cc - field public static final int GL_MAX_VERTEX_ATTRIB_BINDINGS = 33498; // 0x82da - field public static final int GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = 33497; // 0x82d9 - field public static final int GL_MAX_VERTEX_ATTRIB_STRIDE = 33509; // 0x82e5 - field public static final int GL_MAX_VERTEX_IMAGE_UNIFORMS = 37066; // 0x90ca - field public static final int GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = 37078; // 0x90d6 - field public static final int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 36446; // 0x8e5e - field public static final int GL_NAME_LENGTH = 37625; // 0x92f9 - field public static final int GL_NUM_ACTIVE_VARIABLES = 37636; // 0x9304 - field public static final int GL_OFFSET = 37628; // 0x92fc - field public static final int GL_PIXEL_BUFFER_BARRIER_BIT = 128; // 0x80 - field public static final int GL_PROGRAM_INPUT = 37603; // 0x92e3 - field public static final int GL_PROGRAM_OUTPUT = 37604; // 0x92e4 - field public static final int GL_PROGRAM_PIPELINE_BINDING = 33370; // 0x825a - field public static final int GL_PROGRAM_SEPARABLE = 33368; // 0x8258 - field public static final int GL_READ_ONLY = 35000; // 0x88b8 - field public static final int GL_READ_WRITE = 35002; // 0x88ba - field public static final int GL_REFERENCED_BY_COMPUTE_SHADER = 37643; // 0x930b - field public static final int GL_REFERENCED_BY_FRAGMENT_SHADER = 37642; // 0x930a - field public static final int GL_REFERENCED_BY_VERTEX_SHADER = 37638; // 0x9306 - field public static final int GL_SAMPLER_2D_MULTISAMPLE = 37128; // 0x9108 - field public static final int GL_SAMPLE_MASK = 36433; // 0x8e51 - field public static final int GL_SAMPLE_MASK_VALUE = 36434; // 0x8e52 - field public static final int GL_SAMPLE_POSITION = 36432; // 0x8e50 - field public static final int GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = 32; // 0x20 - field public static final int GL_SHADER_STORAGE_BARRIER_BIT = 8192; // 0x2000 - field public static final int GL_SHADER_STORAGE_BLOCK = 37606; // 0x92e6 - field public static final int GL_SHADER_STORAGE_BUFFER = 37074; // 0x90d2 - field public static final int GL_SHADER_STORAGE_BUFFER_BINDING = 37075; // 0x90d3 - field public static final int GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = 37087; // 0x90df - field public static final int GL_SHADER_STORAGE_BUFFER_SIZE = 37077; // 0x90d5 - field public static final int GL_SHADER_STORAGE_BUFFER_START = 37076; // 0x90d4 - field public static final int GL_STENCIL_INDEX = 6401; // 0x1901 - field public static final int GL_TEXTURE_2D_MULTISAMPLE = 37120; // 0x9100 - field public static final int GL_TEXTURE_ALPHA_SIZE = 32863; // 0x805f - field public static final int GL_TEXTURE_ALPHA_TYPE = 35859; // 0x8c13 - field public static final int GL_TEXTURE_BINDING_2D_MULTISAMPLE = 37124; // 0x9104 - field public static final int GL_TEXTURE_BLUE_SIZE = 32862; // 0x805e - field public static final int GL_TEXTURE_BLUE_TYPE = 35858; // 0x8c12 - field public static final int GL_TEXTURE_COMPRESSED = 34465; // 0x86a1 - field public static final int GL_TEXTURE_DEPTH = 32881; // 0x8071 - field public static final int GL_TEXTURE_DEPTH_SIZE = 34890; // 0x884a - field public static final int GL_TEXTURE_DEPTH_TYPE = 35862; // 0x8c16 - field public static final int GL_TEXTURE_FETCH_BARRIER_BIT = 8; // 0x8 - field public static final int GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 37127; // 0x9107 - field public static final int GL_TEXTURE_GREEN_SIZE = 32861; // 0x805d - field public static final int GL_TEXTURE_GREEN_TYPE = 35857; // 0x8c11 - field public static final int GL_TEXTURE_HEIGHT = 4097; // 0x1001 - field public static final int GL_TEXTURE_INTERNAL_FORMAT = 4099; // 0x1003 - field public static final int GL_TEXTURE_RED_SIZE = 32860; // 0x805c - field public static final int GL_TEXTURE_RED_TYPE = 35856; // 0x8c10 - field public static final int GL_TEXTURE_SAMPLES = 37126; // 0x9106 - field public static final int GL_TEXTURE_SHARED_SIZE = 35903; // 0x8c3f - field public static final int GL_TEXTURE_STENCIL_SIZE = 35057; // 0x88f1 - field public static final int GL_TEXTURE_UPDATE_BARRIER_BIT = 256; // 0x100 - field public static final int GL_TEXTURE_WIDTH = 4096; // 0x1000 - field public static final int GL_TOP_LEVEL_ARRAY_SIZE = 37644; // 0x930c - field public static final int GL_TOP_LEVEL_ARRAY_STRIDE = 37645; // 0x930d - field public static final int GL_TRANSFORM_FEEDBACK_BARRIER_BIT = 2048; // 0x800 - field public static final int GL_TRANSFORM_FEEDBACK_VARYING = 37620; // 0x92f4 - field public static final int GL_TYPE = 37626; // 0x92fa - field public static final int GL_UNIFORM = 37601; // 0x92e1 - field public static final int GL_UNIFORM_BARRIER_BIT = 4; // 0x4 - field public static final int GL_UNIFORM_BLOCK = 37602; // 0x92e2 - field public static final int GL_UNSIGNED_INT_ATOMIC_COUNTER = 37595; // 0x92db - field public static final int GL_UNSIGNED_INT_IMAGE_2D = 36963; // 0x9063 - field public static final int GL_UNSIGNED_INT_IMAGE_2D_ARRAY = 36969; // 0x9069 - field public static final int GL_UNSIGNED_INT_IMAGE_3D = 36964; // 0x9064 - field public static final int GL_UNSIGNED_INT_IMAGE_CUBE = 36966; // 0x9066 - field public static final int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 37130; // 0x910a - field public static final int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = 1; // 0x1 - field public static final int GL_VERTEX_ATTRIB_BINDING = 33492; // 0x82d4 - field public static final int GL_VERTEX_ATTRIB_RELATIVE_OFFSET = 33493; // 0x82d5 - field public static final int GL_VERTEX_BINDING_BUFFER = 36687; // 0x8f4f - field public static final int GL_VERTEX_BINDING_DIVISOR = 33494; // 0x82d6 - field public static final int GL_VERTEX_BINDING_OFFSET = 33495; // 0x82d7 - field public static final int GL_VERTEX_BINDING_STRIDE = 33496; // 0x82d8 - field public static final int GL_VERTEX_SHADER_BIT = 1; // 0x1 - field public static final int GL_WRITE_ONLY = 35001; // 0x88b9 - } - - public class GLES31Ext { - method public static void glBlendBarrierKHR(); - method public static void glBlendEquationSeparateiEXT(int, int, int); - method public static void glBlendEquationiEXT(int, int); - method public static void glBlendFuncSeparateiEXT(int, int, int, int, int); - method public static void glBlendFunciEXT(int, int, int); - method public static void glColorMaskiEXT(int, boolean, boolean, boolean, boolean); - method public static void glCopyImageSubDataEXT(int, int, int, int, int, int, int, int, int, int, int, int, int, int, int); - method public static void glDebugMessageCallbackKHR(android.opengl.GLES31Ext.DebugProcKHR); - method public static void glDebugMessageControlKHR(int, int, int, int, int[], int, boolean); - method public static void glDebugMessageControlKHR(int, int, int, int, java.nio.IntBuffer, boolean); - method public static void glDebugMessageInsertKHR(int, int, int, int, String); - method public static void glDisableiEXT(int, int); - method public static void glEnableiEXT(int, int); - method public static void glFramebufferTextureEXT(int, int, int, int); - method public static android.opengl.GLES31Ext.DebugProcKHR glGetDebugMessageCallbackKHR(); - method public static int glGetDebugMessageLogKHR(int, int, int[], int, int[], int, int[], int, int[], int, int[], int, byte[], int); - method public static int glGetDebugMessageLogKHR(int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.ByteBuffer); - method public static String[] glGetDebugMessageLogKHR(int, int[], int, int[], int, int[], int, int[], int); - method public static String[] glGetDebugMessageLogKHR(int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer); - method public static String glGetObjectLabelKHR(int, int); - method public static String glGetObjectPtrLabelKHR(long); - method public static void glGetSamplerParameterIivEXT(int, int, int[], int); - method public static void glGetSamplerParameterIivEXT(int, int, java.nio.IntBuffer); - method public static void glGetSamplerParameterIuivEXT(int, int, int[], int); - method public static void glGetSamplerParameterIuivEXT(int, int, java.nio.IntBuffer); - method public static void glGetTexParameterIivEXT(int, int, int[], int); - method public static void glGetTexParameterIivEXT(int, int, java.nio.IntBuffer); - method public static void glGetTexParameterIuivEXT(int, int, int[], int); - method public static void glGetTexParameterIuivEXT(int, int, java.nio.IntBuffer); - method public static boolean glIsEnablediEXT(int, int); - method public static void glMinSampleShadingOES(float); - method public static void glObjectLabelKHR(int, int, int, String); - method public static void glObjectPtrLabelKHR(long, String); - method public static void glPatchParameteriEXT(int, int); - method public static void glPopDebugGroupKHR(); - method public static void glPrimitiveBoundingBoxEXT(float, float, float, float, float, float, float, float); - method public static void glPushDebugGroupKHR(int, int, int, String); - method public static void glSamplerParameterIivEXT(int, int, int[], int); - method public static void glSamplerParameterIivEXT(int, int, java.nio.IntBuffer); - method public static void glSamplerParameterIuivEXT(int, int, int[], int); - method public static void glSamplerParameterIuivEXT(int, int, java.nio.IntBuffer); - method public static void glTexBufferEXT(int, int, int); - method public static void glTexBufferRangeEXT(int, int, int, int, int); - method public static void glTexParameterIivEXT(int, int, int[], int); - method public static void glTexParameterIivEXT(int, int, java.nio.IntBuffer); - method public static void glTexParameterIuivEXT(int, int, int[], int); - method public static void glTexParameterIuivEXT(int, int, java.nio.IntBuffer); - method public static void glTexStorage3DMultisampleOES(int, int, int, int, int, int, boolean); - field public static final int GL_BLEND_ADVANCED_COHERENT_KHR = 37509; // 0x9285 - field public static final int GL_BUFFER_KHR = 33504; // 0x82e0 - field public static final int GL_CLAMP_TO_BORDER_EXT = 33069; // 0x812d - field public static final int GL_COLORBURN_KHR = 37530; // 0x929a - field public static final int GL_COLORDODGE_KHR = 37529; // 0x9299 - field public static final int GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 37819; // 0x93bb - field public static final int GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 37816; // 0x93b8 - field public static final int GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 37817; // 0x93b9 - field public static final int GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 37818; // 0x93ba - field public static final int GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 37820; // 0x93bc - field public static final int GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 37821; // 0x93bd - field public static final int GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 37808; // 0x93b0 - field public static final int GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 37809; // 0x93b1 - field public static final int GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 37810; // 0x93b2 - field public static final int GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 37811; // 0x93b3 - field public static final int GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 37812; // 0x93b4 - field public static final int GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 37813; // 0x93b5 - field public static final int GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 37814; // 0x93b6 - field public static final int GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 37815; // 0x93b7 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 37851; // 0x93db - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 37848; // 0x93d8 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 37849; // 0x93d9 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 37850; // 0x93da - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 37852; // 0x93dc - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 37853; // 0x93dd - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 37840; // 0x93d0 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 37841; // 0x93d1 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 37842; // 0x93d2 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 37843; // 0x93d3 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 37844; // 0x93d4 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 37845; // 0x93d5 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 37846; // 0x93d6 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 37847; // 0x93d7 - field public static final int GL_CONTEXT_FLAG_DEBUG_BIT_KHR = 2; // 0x2 - field public static final int GL_DARKEN_KHR = 37527; // 0x9297 - field public static final int GL_DEBUG_CALLBACK_FUNCTION_KHR = 33348; // 0x8244 - field public static final int GL_DEBUG_CALLBACK_USER_PARAM_KHR = 33349; // 0x8245 - field public static final int GL_DEBUG_GROUP_STACK_DEPTH_KHR = 33389; // 0x826d - field public static final int GL_DEBUG_LOGGED_MESSAGES_KHR = 37189; // 0x9145 - field public static final int GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_KHR = 33347; // 0x8243 - field public static final int GL_DEBUG_OUTPUT_KHR = 37600; // 0x92e0 - field public static final int GL_DEBUG_OUTPUT_SYNCHRONOUS_KHR = 33346; // 0x8242 - field public static final int GL_DEBUG_SEVERITY_HIGH_KHR = 37190; // 0x9146 - field public static final int GL_DEBUG_SEVERITY_LOW_KHR = 37192; // 0x9148 - field public static final int GL_DEBUG_SEVERITY_MEDIUM_KHR = 37191; // 0x9147 - field public static final int GL_DEBUG_SEVERITY_NOTIFICATION_KHR = 33387; // 0x826b - field public static final int GL_DEBUG_SOURCE_API_KHR = 33350; // 0x8246 - field public static final int GL_DEBUG_SOURCE_APPLICATION_KHR = 33354; // 0x824a - field public static final int GL_DEBUG_SOURCE_OTHER_KHR = 33355; // 0x824b - field public static final int GL_DEBUG_SOURCE_SHADER_COMPILER_KHR = 33352; // 0x8248 - field public static final int GL_DEBUG_SOURCE_THIRD_PARTY_KHR = 33353; // 0x8249 - field public static final int GL_DEBUG_SOURCE_WINDOW_SYSTEM_KHR = 33351; // 0x8247 - field public static final int GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_KHR = 33357; // 0x824d - field public static final int GL_DEBUG_TYPE_ERROR_KHR = 33356; // 0x824c - field public static final int GL_DEBUG_TYPE_MARKER_KHR = 33384; // 0x8268 - field public static final int GL_DEBUG_TYPE_OTHER_KHR = 33361; // 0x8251 - field public static final int GL_DEBUG_TYPE_PERFORMANCE_KHR = 33360; // 0x8250 - field public static final int GL_DEBUG_TYPE_POP_GROUP_KHR = 33386; // 0x826a - field public static final int GL_DEBUG_TYPE_PORTABILITY_KHR = 33359; // 0x824f - field public static final int GL_DEBUG_TYPE_PUSH_GROUP_KHR = 33385; // 0x8269 - field public static final int GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_KHR = 33358; // 0x824e - field public static final int GL_DECODE_EXT = 35401; // 0x8a49 - field public static final int GL_DIFFERENCE_KHR = 37534; // 0x929e - field public static final int GL_EXCLUSION_KHR = 37536; // 0x92a0 - field public static final int GL_FIRST_VERTEX_CONVENTION_EXT = 36429; // 0x8e4d - field public static final int GL_FRACTIONAL_EVEN_EXT = 36476; // 0x8e7c - field public static final int GL_FRACTIONAL_ODD_EXT = 36475; // 0x8e7b - field public static final int GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES = 36445; // 0x8e5d - field public static final int GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = 36263; // 0x8da7 - field public static final int GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT = 37650; // 0x9312 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = 36264; // 0x8da8 - field public static final int GL_GEOMETRY_LINKED_INPUT_TYPE_EXT = 35095; // 0x8917 - field public static final int GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT = 35096; // 0x8918 - field public static final int GL_GEOMETRY_LINKED_VERTICES_OUT_EXT = 35094; // 0x8916 - field public static final int GL_GEOMETRY_SHADER_BIT_EXT = 4; // 0x4 - field public static final int GL_GEOMETRY_SHADER_EXT = 36313; // 0x8dd9 - field public static final int GL_GEOMETRY_SHADER_INVOCATIONS_EXT = 34943; // 0x887f - field public static final int GL_HARDLIGHT_KHR = 37531; // 0x929b - field public static final int GL_HSL_COLOR_KHR = 37551; // 0x92af - field public static final int GL_HSL_HUE_KHR = 37549; // 0x92ad - field public static final int GL_HSL_LUMINOSITY_KHR = 37552; // 0x92b0 - field public static final int GL_HSL_SATURATION_KHR = 37550; // 0x92ae - field public static final int GL_IMAGE_BUFFER_EXT = 36945; // 0x9051 - field public static final int GL_IMAGE_CUBE_MAP_ARRAY_EXT = 36948; // 0x9054 - field public static final int GL_INT_IMAGE_BUFFER_EXT = 36956; // 0x905c - field public static final int GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 36959; // 0x905f - field public static final int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 37132; // 0x910c - field public static final int GL_INT_SAMPLER_BUFFER_EXT = 36304; // 0x8dd0 - field public static final int GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT = 36878; // 0x900e - field public static final int GL_ISOLINES_EXT = 36474; // 0x8e7a - field public static final int GL_IS_PER_PATCH_EXT = 37607; // 0x92e7 - field public static final int GL_LAST_VERTEX_CONVENTION_EXT = 36430; // 0x8e4e - field public static final int GL_LAYER_PROVOKING_VERTEX_EXT = 33374; // 0x825e - field public static final int GL_LIGHTEN_KHR = 37528; // 0x9298 - field public static final int GL_LINES_ADJACENCY_EXT = 10; // 0xa - field public static final int GL_LINE_STRIP_ADJACENCY_EXT = 11; // 0xb - field public static final int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT = 35378; // 0x8a32 - field public static final int GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT = 36382; // 0x8e1e - field public static final int GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT = 36383; // 0x8e1f - field public static final int GL_MAX_DEBUG_GROUP_STACK_DEPTH_KHR = 33388; // 0x826c - field public static final int GL_MAX_DEBUG_LOGGED_MESSAGES_KHR = 37188; // 0x9144 - field public static final int GL_MAX_DEBUG_MESSAGE_LENGTH_KHR = 37187; // 0x9143 - field public static final int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES = 36444; // 0x8e5c - field public static final int GL_MAX_FRAMEBUFFER_LAYERS_EXT = 37655; // 0x9317 - field public static final int GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT = 37589; // 0x92d5 - field public static final int GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT = 37583; // 0x92cf - field public static final int GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT = 37069; // 0x90cd - field public static final int GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT = 37155; // 0x9123 - field public static final int GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT = 37156; // 0x9124 - field public static final int GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT = 36320; // 0x8de0 - field public static final int GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT = 36442; // 0x8e5a - field public static final int GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT = 37079; // 0x90d7 - field public static final int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = 35881; // 0x8c29 - field public static final int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = 36321; // 0x8de1 - field public static final int GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT = 35372; // 0x8a2c - field public static final int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = 36319; // 0x8ddf - field public static final int GL_MAX_LABEL_LENGTH_KHR = 33512; // 0x82e8 - field public static final int GL_MAX_PATCH_VERTICES_EXT = 36477; // 0x8e7d - field public static final int GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT = 37587; // 0x92d3 - field public static final int GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT = 37581; // 0x92cd - field public static final int GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT = 37067; // 0x90cb - field public static final int GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT = 34924; // 0x886c - field public static final int GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT = 36483; // 0x8e83 - field public static final int GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT = 37080; // 0x90d8 - field public static final int GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT = 36481; // 0x8e81 - field public static final int GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT = 36485; // 0x8e85 - field public static final int GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT = 36489; // 0x8e89 - field public static final int GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT = 36479; // 0x8e7f - field public static final int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT = 37588; // 0x92d4 - field public static final int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT = 37582; // 0x92ce - field public static final int GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT = 37068; // 0x90cc - field public static final int GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT = 34925; // 0x886d - field public static final int GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT = 36486; // 0x8e86 - field public static final int GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT = 37081; // 0x90d9 - field public static final int GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT = 36482; // 0x8e82 - field public static final int GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT = 36490; // 0x8e8a - field public static final int GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT = 36480; // 0x8e80 - field public static final int GL_MAX_TESS_GEN_LEVEL_EXT = 36478; // 0x8e7e - field public static final int GL_MAX_TESS_PATCH_COMPONENTS_EXT = 36484; // 0x8e84 - field public static final int GL_MAX_TEXTURE_BUFFER_SIZE_EXT = 35883; // 0x8c2b - field public static final int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES = 36443; // 0x8e5b - field public static final int GL_MIN_SAMPLE_SHADING_VALUE_OES = 35895; // 0x8c37 - field public static final int GL_MULTIPLY_KHR = 37524; // 0x9294 - field public static final int GL_OVERLAY_KHR = 37526; // 0x9296 - field public static final int GL_PATCHES_EXT = 14; // 0xe - field public static final int GL_PATCH_VERTICES_EXT = 36466; // 0x8e72 - field public static final int GL_PRIMITIVES_GENERATED_EXT = 35975; // 0x8c87 - field public static final int GL_PRIMITIVE_BOUNDING_BOX_EXT = 37566; // 0x92be - field public static final int GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 33313; // 0x8221 - field public static final int GL_PROGRAM_KHR = 33506; // 0x82e2 - field public static final int GL_QUADS_EXT = 7; // 0x7 - field public static final int GL_QUERY_KHR = 33507; // 0x82e3 - field public static final int GL_REFERENCED_BY_GEOMETRY_SHADER_EXT = 37641; // 0x9309 - field public static final int GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT = 37639; // 0x9307 - field public static final int GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT = 37640; // 0x9308 - field public static final int GL_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 37131; // 0x910b - field public static final int GL_SAMPLER_BUFFER_EXT = 36290; // 0x8dc2 - field public static final int GL_SAMPLER_CUBE_MAP_ARRAY_EXT = 36876; // 0x900c - field public static final int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT = 36877; // 0x900d - field public static final int GL_SAMPLER_KHR = 33510; // 0x82e6 - field public static final int GL_SAMPLE_SHADING_OES = 35894; // 0x8c36 - field public static final int GL_SCREEN_KHR = 37525; // 0x9295 - field public static final int GL_SHADER_KHR = 33505; // 0x82e1 - field public static final int GL_SKIP_DECODE_EXT = 35402; // 0x8a4a - field public static final int GL_SOFTLIGHT_KHR = 37532; // 0x929c - field public static final int GL_STACK_OVERFLOW_KHR = 1283; // 0x503 - field public static final int GL_STACK_UNDERFLOW_KHR = 1284; // 0x504 - field public static final int GL_STENCIL_INDEX8_OES = 36168; // 0x8d48 - field public static final int GL_STENCIL_INDEX_OES = 6401; // 0x1901 - field public static final int GL_TESS_CONTROL_OUTPUT_VERTICES_EXT = 36469; // 0x8e75 - field public static final int GL_TESS_CONTROL_SHADER_BIT_EXT = 8; // 0x8 - field public static final int GL_TESS_CONTROL_SHADER_EXT = 36488; // 0x8e88 - field public static final int GL_TESS_EVALUATION_SHADER_BIT_EXT = 16; // 0x10 - field public static final int GL_TESS_EVALUATION_SHADER_EXT = 36487; // 0x8e87 - field public static final int GL_TESS_GEN_MODE_EXT = 36470; // 0x8e76 - field public static final int GL_TESS_GEN_POINT_MODE_EXT = 36473; // 0x8e79 - field public static final int GL_TESS_GEN_SPACING_EXT = 36471; // 0x8e77 - field public static final int GL_TESS_GEN_VERTEX_ORDER_EXT = 36472; // 0x8e78 - field public static final int GL_TEXTURE_2D_MULTISAMPLE_ARRAY_OES = 37122; // 0x9102 - field public static final int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY_OES = 37125; // 0x9105 - field public static final int GL_TEXTURE_BINDING_BUFFER_EXT = 35884; // 0x8c2c - field public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_EXT = 36874; // 0x900a - field public static final int GL_TEXTURE_BORDER_COLOR_EXT = 4100; // 0x1004 - field public static final int GL_TEXTURE_BUFFER_BINDING_EXT = 35882; // 0x8c2a - field public static final int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = 35885; // 0x8c2d - field public static final int GL_TEXTURE_BUFFER_EXT = 35882; // 0x8c2a - field public static final int GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_EXT = 37279; // 0x919f - field public static final int GL_TEXTURE_BUFFER_OFFSET_EXT = 37277; // 0x919d - field public static final int GL_TEXTURE_BUFFER_SIZE_EXT = 37278; // 0x919e - field public static final int GL_TEXTURE_CUBE_MAP_ARRAY_EXT = 36873; // 0x9009 - field public static final int GL_TEXTURE_SRGB_DECODE_EXT = 35400; // 0x8a48 - field public static final int GL_TRIANGLES_ADJACENCY_EXT = 12; // 0xc - field public static final int GL_TRIANGLE_STRIP_ADJACENCY_EXT = 13; // 0xd - field public static final int GL_UNDEFINED_VERTEX_EXT = 33376; // 0x8260 - field public static final int GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = 36967; // 0x9067 - field public static final int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 36970; // 0x906a - field public static final int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 37133; // 0x910d - field public static final int GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT = 36312; // 0x8dd8 - field public static final int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT = 36879; // 0x900f - field public static final int GL_VERTEX_ARRAY_KHR = 32884; // 0x8074 - } - - public static interface GLES31Ext.DebugProcKHR { - method public void onMessage(int, int, int, int, String); - } - - public class GLES32 extends android.opengl.GLES31 { - method public static void glBlendBarrier(); - method public static void glBlendEquationSeparatei(int, int, int); - method public static void glBlendEquationi(int, int); - method public static void glBlendFuncSeparatei(int, int, int, int, int); - method public static void glBlendFunci(int, int, int); - method public static void glColorMaski(int, boolean, boolean, boolean, boolean); - method public static void glCopyImageSubData(int, int, int, int, int, int, int, int, int, int, int, int, int, int, int); - method public static void glDebugMessageCallback(android.opengl.GLES32.DebugProc); - method public static void glDebugMessageControl(int, int, int, int, int[], int, boolean); - method public static void glDebugMessageControl(int, int, int, int, java.nio.IntBuffer, boolean); - method public static void glDebugMessageInsert(int, int, int, int, int, String); - method public static void glDisablei(int, int); - method public static void glDrawElementsBaseVertex(int, int, int, java.nio.Buffer, int); - method public static void glDrawElementsInstancedBaseVertex(int, int, int, java.nio.Buffer, int, int); - method public static void glDrawElementsInstancedBaseVertex(int, int, int, int, int, int); - method public static void glDrawRangeElementsBaseVertex(int, int, int, int, int, java.nio.Buffer, int); - method public static void glEnablei(int, int); - method public static void glFramebufferTexture(int, int, int, int); - method public static int glGetDebugMessageLog(int, int, int[], int, int[], int, int[], int, int[], int, int[], int, byte[], int); - method public static int glGetDebugMessageLog(int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.ByteBuffer); - method public static String[] glGetDebugMessageLog(int, int[], int, int[], int, int[], int, int[], int); - method public static String[] glGetDebugMessageLog(int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer); - method public static int glGetGraphicsResetStatus(); - method public static String glGetObjectLabel(int, int); - method public static String glGetObjectPtrLabel(long); - method public static long glGetPointerv(int); - method public static void glGetSamplerParameterIiv(int, int, int[], int); - method public static void glGetSamplerParameterIiv(int, int, java.nio.IntBuffer); - method public static void glGetSamplerParameterIuiv(int, int, int[], int); - method public static void glGetSamplerParameterIuiv(int, int, java.nio.IntBuffer); - method public static void glGetTexParameterIiv(int, int, int[], int); - method public static void glGetTexParameterIiv(int, int, java.nio.IntBuffer); - method public static void glGetTexParameterIuiv(int, int, int[], int); - method public static void glGetTexParameterIuiv(int, int, java.nio.IntBuffer); - method public static void glGetnUniformfv(int, int, int, float[], int); - method public static void glGetnUniformfv(int, int, int, java.nio.FloatBuffer); - method public static void glGetnUniformiv(int, int, int, int[], int); - method public static void glGetnUniformiv(int, int, int, java.nio.IntBuffer); - method public static void glGetnUniformuiv(int, int, int, int[], int); - method public static void glGetnUniformuiv(int, int, int, java.nio.IntBuffer); - method public static boolean glIsEnabledi(int, int); - method public static void glMinSampleShading(float); - method public static void glObjectLabel(int, int, int, String); - method public static void glObjectPtrLabel(long, String); - method public static void glPatchParameteri(int, int); - method public static void glPopDebugGroup(); - method public static void glPrimitiveBoundingBox(float, float, float, float, float, float, float, float); - method public static void glPushDebugGroup(int, int, int, String); - method public static void glReadnPixels(int, int, int, int, int, int, int, java.nio.Buffer); - method public static void glSamplerParameterIiv(int, int, int[], int); - method public static void glSamplerParameterIiv(int, int, java.nio.IntBuffer); - method public static void glSamplerParameterIuiv(int, int, int[], int); - method public static void glSamplerParameterIuiv(int, int, java.nio.IntBuffer); - method public static void glTexBuffer(int, int, int); - method public static void glTexBufferRange(int, int, int, int, int); - method public static void glTexParameterIiv(int, int, int[], int); - method public static void glTexParameterIiv(int, int, java.nio.IntBuffer); - method public static void glTexParameterIuiv(int, int, int[], int); - method public static void glTexParameterIuiv(int, int, java.nio.IntBuffer); - method public static void glTexStorage3DMultisample(int, int, int, int, int, int, boolean); - field public static final int GL_BUFFER = 33504; // 0x82e0 - field public static final int GL_CLAMP_TO_BORDER = 33069; // 0x812d - field public static final int GL_COLORBURN = 37530; // 0x929a - field public static final int GL_COLORDODGE = 37529; // 0x9299 - field public static final int GL_COMPRESSED_RGBA_ASTC_10x10 = 37819; // 0x93bb - field public static final int GL_COMPRESSED_RGBA_ASTC_10x5 = 37816; // 0x93b8 - field public static final int GL_COMPRESSED_RGBA_ASTC_10x6 = 37817; // 0x93b9 - field public static final int GL_COMPRESSED_RGBA_ASTC_10x8 = 37818; // 0x93ba - field public static final int GL_COMPRESSED_RGBA_ASTC_12x10 = 37820; // 0x93bc - field public static final int GL_COMPRESSED_RGBA_ASTC_12x12 = 37821; // 0x93bd - field public static final int GL_COMPRESSED_RGBA_ASTC_4x4 = 37808; // 0x93b0 - field public static final int GL_COMPRESSED_RGBA_ASTC_5x4 = 37809; // 0x93b1 - field public static final int GL_COMPRESSED_RGBA_ASTC_5x5 = 37810; // 0x93b2 - field public static final int GL_COMPRESSED_RGBA_ASTC_6x5 = 37811; // 0x93b3 - field public static final int GL_COMPRESSED_RGBA_ASTC_6x6 = 37812; // 0x93b4 - field public static final int GL_COMPRESSED_RGBA_ASTC_8x5 = 37813; // 0x93b5 - field public static final int GL_COMPRESSED_RGBA_ASTC_8x6 = 37814; // 0x93b6 - field public static final int GL_COMPRESSED_RGBA_ASTC_8x8 = 37815; // 0x93b7 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10 = 37851; // 0x93db - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5 = 37848; // 0x93d8 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6 = 37849; // 0x93d9 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8 = 37850; // 0x93da - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10 = 37852; // 0x93dc - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12 = 37853; // 0x93dd - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4 = 37840; // 0x93d0 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4 = 37841; // 0x93d1 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5 = 37842; // 0x93d2 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5 = 37843; // 0x93d3 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6 = 37844; // 0x93d4 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5 = 37845; // 0x93d5 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6 = 37846; // 0x93d6 - field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8 = 37847; // 0x93d7 - field public static final int GL_CONTEXT_FLAGS = 33310; // 0x821e - field public static final int GL_CONTEXT_FLAG_DEBUG_BIT = 2; // 0x2 - field public static final int GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = 4; // 0x4 - field public static final int GL_CONTEXT_LOST = 1287; // 0x507 - field public static final int GL_DARKEN = 37527; // 0x9297 - field public static final int GL_DEBUG_CALLBACK_FUNCTION = 33348; // 0x8244 - field public static final int GL_DEBUG_CALLBACK_USER_PARAM = 33349; // 0x8245 - field public static final int GL_DEBUG_GROUP_STACK_DEPTH = 33389; // 0x826d - field public static final int GL_DEBUG_LOGGED_MESSAGES = 37189; // 0x9145 - field public static final int GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 33347; // 0x8243 - field public static final int GL_DEBUG_OUTPUT = 37600; // 0x92e0 - field public static final int GL_DEBUG_OUTPUT_SYNCHRONOUS = 33346; // 0x8242 - field public static final int GL_DEBUG_SEVERITY_HIGH = 37190; // 0x9146 - field public static final int GL_DEBUG_SEVERITY_LOW = 37192; // 0x9148 - field public static final int GL_DEBUG_SEVERITY_MEDIUM = 37191; // 0x9147 - field public static final int GL_DEBUG_SEVERITY_NOTIFICATION = 33387; // 0x826b - field public static final int GL_DEBUG_SOURCE_API = 33350; // 0x8246 - field public static final int GL_DEBUG_SOURCE_APPLICATION = 33354; // 0x824a - field public static final int GL_DEBUG_SOURCE_OTHER = 33355; // 0x824b - field public static final int GL_DEBUG_SOURCE_SHADER_COMPILER = 33352; // 0x8248 - field public static final int GL_DEBUG_SOURCE_THIRD_PARTY = 33353; // 0x8249 - field public static final int GL_DEBUG_SOURCE_WINDOW_SYSTEM = 33351; // 0x8247 - field public static final int GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = 33357; // 0x824d - field public static final int GL_DEBUG_TYPE_ERROR = 33356; // 0x824c - field public static final int GL_DEBUG_TYPE_MARKER = 33384; // 0x8268 - field public static final int GL_DEBUG_TYPE_OTHER = 33361; // 0x8251 - field public static final int GL_DEBUG_TYPE_PERFORMANCE = 33360; // 0x8250 - field public static final int GL_DEBUG_TYPE_POP_GROUP = 33386; // 0x826a - field public static final int GL_DEBUG_TYPE_PORTABILITY = 33359; // 0x824f - field public static final int GL_DEBUG_TYPE_PUSH_GROUP = 33385; // 0x8269 - field public static final int GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = 33358; // 0x824e - field public static final int GL_DIFFERENCE = 37534; // 0x929e - field public static final int GL_EXCLUSION = 37536; // 0x92a0 - field public static final int GL_FIRST_VERTEX_CONVENTION = 36429; // 0x8e4d - field public static final int GL_FRACTIONAL_EVEN = 36476; // 0x8e7c - field public static final int GL_FRACTIONAL_ODD = 36475; // 0x8e7b - field public static final int GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 36445; // 0x8e5d - field public static final int GL_FRAMEBUFFER_ATTACHMENT_LAYERED = 36263; // 0x8da7 - field public static final int GL_FRAMEBUFFER_DEFAULT_LAYERS = 37650; // 0x9312 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 36264; // 0x8da8 - field public static final int GL_GEOMETRY_INPUT_TYPE = 35095; // 0x8917 - field public static final int GL_GEOMETRY_OUTPUT_TYPE = 35096; // 0x8918 - field public static final int GL_GEOMETRY_SHADER = 36313; // 0x8dd9 - field public static final int GL_GEOMETRY_SHADER_BIT = 4; // 0x4 - field public static final int GL_GEOMETRY_SHADER_INVOCATIONS = 34943; // 0x887f - field public static final int GL_GEOMETRY_VERTICES_OUT = 35094; // 0x8916 - field public static final int GL_GUILTY_CONTEXT_RESET = 33363; // 0x8253 - field public static final int GL_HARDLIGHT = 37531; // 0x929b - field public static final int GL_HSL_COLOR = 37551; // 0x92af - field public static final int GL_HSL_HUE = 37549; // 0x92ad - field public static final int GL_HSL_LUMINOSITY = 37552; // 0x92b0 - field public static final int GL_HSL_SATURATION = 37550; // 0x92ae - field public static final int GL_IMAGE_BUFFER = 36945; // 0x9051 - field public static final int GL_IMAGE_CUBE_MAP_ARRAY = 36948; // 0x9054 - field public static final int GL_INNOCENT_CONTEXT_RESET = 33364; // 0x8254 - field public static final int GL_INT_IMAGE_BUFFER = 36956; // 0x905c - field public static final int GL_INT_IMAGE_CUBE_MAP_ARRAY = 36959; // 0x905f - field public static final int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 37132; // 0x910c - field public static final int GL_INT_SAMPLER_BUFFER = 36304; // 0x8dd0 - field public static final int GL_INT_SAMPLER_CUBE_MAP_ARRAY = 36878; // 0x900e - field public static final int GL_ISOLINES = 36474; // 0x8e7a - field public static final int GL_IS_PER_PATCH = 37607; // 0x92e7 - field public static final int GL_LAST_VERTEX_CONVENTION = 36430; // 0x8e4e - field public static final int GL_LAYER_PROVOKING_VERTEX = 33374; // 0x825e - field public static final int GL_LIGHTEN = 37528; // 0x9298 - field public static final int GL_LINES_ADJACENCY = 10; // 0xa - field public static final int GL_LINE_STRIP_ADJACENCY = 11; // 0xb - field public static final int GL_LOSE_CONTEXT_ON_RESET = 33362; // 0x8252 - field public static final int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 35378; // 0x8a32 - field public static final int GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 36382; // 0x8e1e - field public static final int GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 36383; // 0x8e1f - field public static final int GL_MAX_DEBUG_GROUP_STACK_DEPTH = 33388; // 0x826c - field public static final int GL_MAX_DEBUG_LOGGED_MESSAGES = 37188; // 0x9144 - field public static final int GL_MAX_DEBUG_MESSAGE_LENGTH = 37187; // 0x9143 - field public static final int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 36444; // 0x8e5c - field public static final int GL_MAX_FRAMEBUFFER_LAYERS = 37655; // 0x9317 - field public static final int GL_MAX_GEOMETRY_ATOMIC_COUNTERS = 37589; // 0x92d5 - field public static final int GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = 37583; // 0x92cf - field public static final int GL_MAX_GEOMETRY_IMAGE_UNIFORMS = 37069; // 0x90cd - field public static final int GL_MAX_GEOMETRY_INPUT_COMPONENTS = 37155; // 0x9123 - field public static final int GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = 37156; // 0x9124 - field public static final int GL_MAX_GEOMETRY_OUTPUT_VERTICES = 36320; // 0x8de0 - field public static final int GL_MAX_GEOMETRY_SHADER_INVOCATIONS = 36442; // 0x8e5a - field public static final int GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = 37079; // 0x90d7 - field public static final int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 35881; // 0x8c29 - field public static final int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 36321; // 0x8de1 - field public static final int GL_MAX_GEOMETRY_UNIFORM_BLOCKS = 35372; // 0x8a2c - field public static final int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = 36319; // 0x8ddf - field public static final int GL_MAX_LABEL_LENGTH = 33512; // 0x82e8 - field public static final int GL_MAX_PATCH_VERTICES = 36477; // 0x8e7d - field public static final int GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = 37587; // 0x92d3 - field public static final int GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = 37581; // 0x92cd - field public static final int GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = 37067; // 0x90cb - field public static final int GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = 34924; // 0x886c - field public static final int GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 36483; // 0x8e83 - field public static final int GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = 37080; // 0x90d8 - field public static final int GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 36481; // 0x8e81 - field public static final int GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 36485; // 0x8e85 - field public static final int GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = 36489; // 0x8e89 - field public static final int GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 36479; // 0x8e7f - field public static final int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = 37588; // 0x92d4 - field public static final int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = 37582; // 0x92ce - field public static final int GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = 37068; // 0x90cc - field public static final int GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = 34925; // 0x886d - field public static final int GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 36486; // 0x8e86 - field public static final int GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = 37081; // 0x90d9 - field public static final int GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 36482; // 0x8e82 - field public static final int GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 36490; // 0x8e8a - field public static final int GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 36480; // 0x8e80 - field public static final int GL_MAX_TESS_GEN_LEVEL = 36478; // 0x8e7e - field public static final int GL_MAX_TESS_PATCH_COMPONENTS = 36484; // 0x8e84 - field public static final int GL_MAX_TEXTURE_BUFFER_SIZE = 35883; // 0x8c2b - field public static final int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = 36443; // 0x8e5b - field public static final int GL_MIN_SAMPLE_SHADING_VALUE = 35895; // 0x8c37 - field public static final int GL_MULTIPLY = 37524; // 0x9294 - field public static final int GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY = 37762; // 0x9382 - field public static final int GL_MULTISAMPLE_LINE_WIDTH_RANGE = 37761; // 0x9381 - field public static final int GL_NO_RESET_NOTIFICATION = 33377; // 0x8261 - field public static final int GL_OVERLAY = 37526; // 0x9296 - field public static final int GL_PATCHES = 14; // 0xe - field public static final int GL_PATCH_VERTICES = 36466; // 0x8e72 - field public static final int GL_PRIMITIVES_GENERATED = 35975; // 0x8c87 - field public static final int GL_PRIMITIVE_BOUNDING_BOX = 37566; // 0x92be - field public static final int GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 33313; // 0x8221 - field public static final int GL_PROGRAM = 33506; // 0x82e2 - field public static final int GL_PROGRAM_PIPELINE = 33508; // 0x82e4 - field public static final int GL_QUADS = 7; // 0x7 - field public static final int GL_QUERY = 33507; // 0x82e3 - field public static final int GL_REFERENCED_BY_GEOMETRY_SHADER = 37641; // 0x9309 - field public static final int GL_REFERENCED_BY_TESS_CONTROL_SHADER = 37639; // 0x9307 - field public static final int GL_REFERENCED_BY_TESS_EVALUATION_SHADER = 37640; // 0x9308 - field public static final int GL_RESET_NOTIFICATION_STRATEGY = 33366; // 0x8256 - field public static final int GL_SAMPLER = 33510; // 0x82e6 - field public static final int GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 37131; // 0x910b - field public static final int GL_SAMPLER_BUFFER = 36290; // 0x8dc2 - field public static final int GL_SAMPLER_CUBE_MAP_ARRAY = 36876; // 0x900c - field public static final int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = 36877; // 0x900d - field public static final int GL_SAMPLE_SHADING = 35894; // 0x8c36 - field public static final int GL_SCREEN = 37525; // 0x9295 - field public static final int GL_SHADER = 33505; // 0x82e1 - field public static final int GL_SOFTLIGHT = 37532; // 0x929c - field public static final int GL_STACK_OVERFLOW = 1283; // 0x503 - field public static final int GL_STACK_UNDERFLOW = 1284; // 0x504 - field public static final int GL_TESS_CONTROL_OUTPUT_VERTICES = 36469; // 0x8e75 - field public static final int GL_TESS_CONTROL_SHADER = 36488; // 0x8e88 - field public static final int GL_TESS_CONTROL_SHADER_BIT = 8; // 0x8 - field public static final int GL_TESS_EVALUATION_SHADER = 36487; // 0x8e87 - field public static final int GL_TESS_EVALUATION_SHADER_BIT = 16; // 0x10 - field public static final int GL_TESS_GEN_MODE = 36470; // 0x8e76 - field public static final int GL_TESS_GEN_POINT_MODE = 36473; // 0x8e79 - field public static final int GL_TESS_GEN_SPACING = 36471; // 0x8e77 - field public static final int GL_TESS_GEN_VERTEX_ORDER = 36472; // 0x8e78 - field public static final int GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 37122; // 0x9102 - field public static final int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 37125; // 0x9105 - field public static final int GL_TEXTURE_BINDING_BUFFER = 35884; // 0x8c2c - field public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY = 36874; // 0x900a - field public static final int GL_TEXTURE_BORDER_COLOR = 4100; // 0x1004 - field public static final int GL_TEXTURE_BUFFER = 35882; // 0x8c2a - field public static final int GL_TEXTURE_BUFFER_BINDING = 35882; // 0x8c2a - field public static final int GL_TEXTURE_BUFFER_DATA_STORE_BINDING = 35885; // 0x8c2d - field public static final int GL_TEXTURE_BUFFER_OFFSET = 37277; // 0x919d - field public static final int GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = 37279; // 0x919f - field public static final int GL_TEXTURE_BUFFER_SIZE = 37278; // 0x919e - field public static final int GL_TEXTURE_CUBE_MAP_ARRAY = 36873; // 0x9009 - field public static final int GL_TRIANGLES_ADJACENCY = 12; // 0xc - field public static final int GL_TRIANGLE_STRIP_ADJACENCY = 13; // 0xd - field public static final int GL_UNDEFINED_VERTEX = 33376; // 0x8260 - field public static final int GL_UNKNOWN_CONTEXT_RESET = 33365; // 0x8255 - field public static final int GL_UNSIGNED_INT_IMAGE_BUFFER = 36967; // 0x9067 - field public static final int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = 36970; // 0x906a - field public static final int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 37133; // 0x910d - field public static final int GL_UNSIGNED_INT_SAMPLER_BUFFER = 36312; // 0x8dd8 - field public static final int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = 36879; // 0x900f - field public static final int GL_VERTEX_ARRAY = 32884; // 0x8074 - } - - public static interface GLES32.DebugProc { - method public void onMessage(int, int, int, int, String); - } - - public class GLException extends java.lang.RuntimeException { - ctor public GLException(int); - ctor public GLException(int, String); - } - - public class GLSurfaceView extends android.view.SurfaceView implements android.view.SurfaceHolder.Callback2 { - ctor public GLSurfaceView(android.content.Context); - ctor public GLSurfaceView(android.content.Context, android.util.AttributeSet); - method public int getDebugFlags(); - method public boolean getPreserveEGLContextOnPause(); - method public int getRenderMode(); - method public void onPause(); - method public void onResume(); - method public void queueEvent(Runnable); - method public void requestRender(); - method public void setDebugFlags(int); - method public void setEGLConfigChooser(android.opengl.GLSurfaceView.EGLConfigChooser); - method public void setEGLConfigChooser(boolean); - method public void setEGLConfigChooser(int, int, int, int, int, int); - method public void setEGLContextClientVersion(int); - method public void setEGLContextFactory(android.opengl.GLSurfaceView.EGLContextFactory); - method public void setEGLWindowSurfaceFactory(android.opengl.GLSurfaceView.EGLWindowSurfaceFactory); - method public void setGLWrapper(android.opengl.GLSurfaceView.GLWrapper); - method public void setPreserveEGLContextOnPause(boolean); - method public void setRenderMode(int); - method public void setRenderer(android.opengl.GLSurfaceView.Renderer); - method public void surfaceChanged(android.view.SurfaceHolder, int, int, int); - method public void surfaceCreated(android.view.SurfaceHolder); - method public void surfaceDestroyed(android.view.SurfaceHolder); - method @Deprecated public void surfaceRedrawNeeded(android.view.SurfaceHolder); - method public void surfaceRedrawNeededAsync(android.view.SurfaceHolder, Runnable); - field public static final int DEBUG_CHECK_GL_ERROR = 1; // 0x1 - field public static final int DEBUG_LOG_GL_CALLS = 2; // 0x2 - field public static final int RENDERMODE_CONTINUOUSLY = 1; // 0x1 - field public static final int RENDERMODE_WHEN_DIRTY = 0; // 0x0 - } - - public static interface GLSurfaceView.EGLConfigChooser { - method public javax.microedition.khronos.egl.EGLConfig chooseConfig(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay); - } - - public static interface GLSurfaceView.EGLContextFactory { - method public javax.microedition.khronos.egl.EGLContext createContext(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig); - method public void destroyContext(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLContext); - } - - public static interface GLSurfaceView.EGLWindowSurfaceFactory { - method public javax.microedition.khronos.egl.EGLSurface createWindowSurface(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, Object); - method public void destroySurface(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface); - } - - public static interface GLSurfaceView.GLWrapper { - method public javax.microedition.khronos.opengles.GL wrap(javax.microedition.khronos.opengles.GL); - } - - public static interface GLSurfaceView.Renderer { - method public void onDrawFrame(javax.microedition.khronos.opengles.GL10); - method public void onSurfaceChanged(javax.microedition.khronos.opengles.GL10, int, int); - method public void onSurfaceCreated(javax.microedition.khronos.opengles.GL10, javax.microedition.khronos.egl.EGLConfig); - } - - public class GLU { - ctor public GLU(); - method public static String gluErrorString(int); - method public static void gluLookAt(javax.microedition.khronos.opengles.GL10, float, float, float, float, float, float, float, float, float); - method public static void gluOrtho2D(javax.microedition.khronos.opengles.GL10, float, float, float, float); - method public static void gluPerspective(javax.microedition.khronos.opengles.GL10, float, float, float, float); - method public static int gluProject(float, float, float, float[], int, float[], int, int[], int, float[], int); - method public static int gluUnProject(float, float, float, float[], int, float[], int, int[], int, float[], int); - } - - public final class GLUtils { - method public static String getEGLErrorString(int); - method public static int getInternalFormat(android.graphics.Bitmap); - method public static int getType(android.graphics.Bitmap); - method public static void texImage2D(int, int, int, android.graphics.Bitmap, int); - method public static void texImage2D(int, int, int, android.graphics.Bitmap, int, int); - method public static void texImage2D(int, int, android.graphics.Bitmap, int); - method public static void texSubImage2D(int, int, int, int, android.graphics.Bitmap); - method public static void texSubImage2D(int, int, int, int, android.graphics.Bitmap, int, int); - } - - public class Matrix { - ctor @Deprecated public Matrix(); - method public static void frustumM(float[], int, float, float, float, float, float, float); - method public static boolean invertM(float[], int, float[], int); - method public static float length(float, float, float); - method public static void multiplyMM(float[], int, float[], int, float[], int); - method public static void multiplyMV(float[], int, float[], int, float[], int); - method public static void orthoM(float[], int, float, float, float, float, float, float); - method public static void perspectiveM(float[], int, float, float, float, float); - method public static void rotateM(float[], int, float[], int, float, float, float, float); - method public static void rotateM(float[], int, float, float, float, float); - method public static void scaleM(float[], int, float[], int, float, float, float); - method public static void scaleM(float[], int, float, float, float); - method public static void setIdentityM(float[], int); - method public static void setLookAtM(float[], int, float, float, float, float, float, float, float, float, float); - method @Deprecated public static void setRotateEulerM(float[], int, float, float, float); - method public static void setRotateEulerM2(@NonNull float[], int, float, float, float); - method public static void setRotateM(float[], int, float, float, float, float); - method public static void translateM(float[], int, float[], int, float, float, float); - method public static void translateM(float[], int, float, float, float); - method public static void transposeM(float[], int, float[], int); - } - - public class Visibility { - ctor public Visibility(); - method public static void computeBoundingSphere(float[], int, int, float[], int); - method public static int frustumCullSpheres(float[], int, float[], int, int, int[], int, int); - method public static int visibilityTest(float[], int, float[], int, char[], int, int); - } - -} - -package android.os { - - @Deprecated public abstract class AsyncTask { - ctor @Deprecated public AsyncTask(); - method @Deprecated public final boolean cancel(boolean); - method @Deprecated @WorkerThread protected abstract Result doInBackground(Params...); - method @Deprecated @MainThread public final android.os.AsyncTask execute(Params...); - method @Deprecated @MainThread public static void execute(Runnable); - method @Deprecated @MainThread public final android.os.AsyncTask executeOnExecutor(java.util.concurrent.Executor, Params...); - method @Deprecated public final Result get() throws java.util.concurrent.ExecutionException, java.lang.InterruptedException; - method @Deprecated public final Result get(long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException; - method @Deprecated public final android.os.AsyncTask.Status getStatus(); - method @Deprecated public final boolean isCancelled(); - method @Deprecated @MainThread protected void onCancelled(Result); - method @Deprecated @MainThread protected void onCancelled(); - method @Deprecated @MainThread protected void onPostExecute(Result); - method @Deprecated @MainThread protected void onPreExecute(); - method @Deprecated @MainThread protected void onProgressUpdate(Progress...); - method @Deprecated @WorkerThread protected final void publishProgress(Progress...); - field @Deprecated public static final java.util.concurrent.Executor SERIAL_EXECUTOR; - field @Deprecated public static final java.util.concurrent.Executor THREAD_POOL_EXECUTOR; - } - - @Deprecated public enum AsyncTask.Status { - enum_constant @Deprecated public static final android.os.AsyncTask.Status FINISHED; - enum_constant @Deprecated public static final android.os.AsyncTask.Status PENDING; - enum_constant @Deprecated public static final android.os.AsyncTask.Status RUNNING; - } - - public class BadParcelableException extends android.util.AndroidRuntimeException { - ctor public BadParcelableException(String); - ctor public BadParcelableException(Exception); - } - - public class BaseBundle { - method public void clear(); - method public boolean containsKey(String); - method @Deprecated @Nullable public Object get(String); - method public boolean getBoolean(String); - method public boolean getBoolean(String, boolean); - method @Nullable public boolean[] getBooleanArray(@Nullable String); - method public double getDouble(String); - method public double getDouble(String, double); - method @Nullable public double[] getDoubleArray(@Nullable String); - method public int getInt(String); - method public int getInt(String, int); - method @Nullable public int[] getIntArray(@Nullable String); - method public long getLong(String); - method public long getLong(String, long); - method @Nullable public long[] getLongArray(@Nullable String); - method @Nullable public String getString(@Nullable String); - method public String getString(@Nullable String, String); - method @Nullable public String[] getStringArray(@Nullable String); - method public boolean isEmpty(); - method public java.util.Set keySet(); - method public void putAll(android.os.PersistableBundle); - method public void putBoolean(@Nullable String, boolean); - method public void putBooleanArray(@Nullable String, @Nullable boolean[]); - method public void putDouble(@Nullable String, double); - method public void putDoubleArray(@Nullable String, @Nullable double[]); - method public void putInt(@Nullable String, int); - method public void putIntArray(@Nullable String, @Nullable int[]); - method public void putLong(@Nullable String, long); - method public void putLongArray(@Nullable String, @Nullable long[]); - method public void putString(@Nullable String, @Nullable String); - method public void putStringArray(@Nullable String, @Nullable String[]); - method public void remove(String); - method public int size(); - } - - public class BatteryManager { - method public long computeChargeTimeRemaining(); - method public int getIntProperty(int); - method public long getLongProperty(int); - method @FlaggedApi("android.os.battery_part_status_api") @Nullable public String getStringProperty(int); - method public boolean isCharging(); - field public static final String ACTION_CHARGING = "android.os.action.CHARGING"; - field public static final String ACTION_DISCHARGING = "android.os.action.DISCHARGING"; - field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_CRITICAL = 1; // 0x1 - field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_FULL = 5; // 0x5 - field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_HIGH = 4; // 0x4 - field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_LOW = 2; // 0x2 - field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_NORMAL = 3; // 0x3 - field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_UNKNOWN = 0; // 0x0 - field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_UNSUPPORTED = -1; // 0xffffffff - field public static final int BATTERY_HEALTH_COLD = 7; // 0x7 - field public static final int BATTERY_HEALTH_DEAD = 4; // 0x4 - field public static final int BATTERY_HEALTH_GOOD = 2; // 0x2 - field public static final int BATTERY_HEALTH_OVERHEAT = 3; // 0x3 - field public static final int BATTERY_HEALTH_OVER_VOLTAGE = 5; // 0x5 - field public static final int BATTERY_HEALTH_UNKNOWN = 1; // 0x1 - field public static final int BATTERY_HEALTH_UNSPECIFIED_FAILURE = 6; // 0x6 - field public static final int BATTERY_PLUGGED_AC = 1; // 0x1 - field public static final int BATTERY_PLUGGED_DOCK = 8; // 0x8 - field public static final int BATTERY_PLUGGED_USB = 2; // 0x2 - field public static final int BATTERY_PLUGGED_WIRELESS = 4; // 0x4 - field public static final int BATTERY_PROPERTY_CAPACITY = 4; // 0x4 - field public static final int BATTERY_PROPERTY_CHARGE_COUNTER = 1; // 0x1 - field public static final int BATTERY_PROPERTY_CURRENT_AVERAGE = 3; // 0x3 - field public static final int BATTERY_PROPERTY_CURRENT_NOW = 2; // 0x2 - field public static final int BATTERY_PROPERTY_ENERGY_COUNTER = 5; // 0x5 - field @FlaggedApi("android.os.state_of_health_public") public static final int BATTERY_PROPERTY_STATE_OF_HEALTH = 10; // 0xa - field public static final int BATTERY_PROPERTY_STATUS = 6; // 0x6 - field public static final int BATTERY_STATUS_CHARGING = 2; // 0x2 - field public static final int BATTERY_STATUS_DISCHARGING = 3; // 0x3 - field public static final int BATTERY_STATUS_FULL = 5; // 0x5 - field public static final int BATTERY_STATUS_NOT_CHARGING = 4; // 0x4 - field public static final int BATTERY_STATUS_UNKNOWN = 1; // 0x1 - field public static final String EXTRA_BATTERY_LOW = "battery_low"; - field @FlaggedApi("android.os.battery_part_status_api") public static final String EXTRA_CAPACITY_LEVEL = "android.os.extra.CAPACITY_LEVEL"; - field public static final String EXTRA_CHARGING_STATUS = "android.os.extra.CHARGING_STATUS"; - field public static final String EXTRA_CYCLE_COUNT = "android.os.extra.CYCLE_COUNT"; - field public static final String EXTRA_HEALTH = "health"; - field public static final String EXTRA_ICON_SMALL = "icon-small"; - field public static final String EXTRA_LEVEL = "level"; - field public static final String EXTRA_PLUGGED = "plugged"; - field public static final String EXTRA_PRESENT = "present"; - field public static final String EXTRA_SCALE = "scale"; - field public static final String EXTRA_STATUS = "status"; - field public static final String EXTRA_TECHNOLOGY = "technology"; - field public static final String EXTRA_TEMPERATURE = "temperature"; - field public static final String EXTRA_VOLTAGE = "voltage"; - } - - public class Binder implements android.os.IBinder { - ctor public Binder(); - ctor public Binder(@Nullable String); - method public void attachInterface(@Nullable android.os.IInterface, @Nullable String); - method public static final long clearCallingIdentity(); - method public static final long clearCallingWorkSource(); - method public void dump(@NonNull java.io.FileDescriptor, @Nullable String[]); - method protected void dump(@NonNull java.io.FileDescriptor, @NonNull java.io.PrintWriter, @Nullable String[]); - method public void dumpAsync(@NonNull java.io.FileDescriptor, @Nullable String[]); - method public static final void flushPendingCommands(); - method public static final int getCallingPid(); - method public static final int getCallingUid(); - method public static final int getCallingUidOrThrow(); - method @NonNull public static final android.os.UserHandle getCallingUserHandle(); - method public static final int getCallingWorkSourceUid(); - method @Nullable public String getInterfaceDescriptor(); - method public boolean isBinderAlive(); - method public static final void joinThreadPool(); - method public void linkToDeath(@NonNull android.os.IBinder.DeathRecipient, int); - method protected boolean onTransact(int, @NonNull android.os.Parcel, @Nullable android.os.Parcel, int) throws android.os.RemoteException; - method public boolean pingBinder(); - method @Nullable public android.os.IInterface queryLocalInterface(@NonNull String); - method public static final void restoreCallingIdentity(long); - method public static final void restoreCallingWorkSource(long); - method public static final long setCallingWorkSourceUid(int); - method public final boolean transact(int, @NonNull android.os.Parcel, @Nullable android.os.Parcel, int) throws android.os.RemoteException; - method public boolean unlinkToDeath(@NonNull android.os.IBinder.DeathRecipient, int); - } - - public final class BugreportManager { - method @WorkerThread public void cancelBugreport(); - method @WorkerThread public void startConnectivityBugreport(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.concurrent.Executor, @NonNull android.os.BugreportManager.BugreportCallback); - } - - public abstract static class BugreportManager.BugreportCallback { - ctor public BugreportManager.BugreportCallback(); - method public void onEarlyReportFinished(); - method public void onError(int); - method public void onFinished(); - method public void onProgress(@FloatRange(from=0.0f, to=100.0f) float); - field public static final int BUGREPORT_ERROR_ANOTHER_REPORT_IN_PROGRESS = 5; // 0x5 - field public static final int BUGREPORT_ERROR_INVALID_INPUT = 1; // 0x1 - field public static final int BUGREPORT_ERROR_NO_BUGREPORT_TO_RETRIEVE = 6; // 0x6 - field public static final int BUGREPORT_ERROR_RUNTIME = 2; // 0x2 - field public static final int BUGREPORT_ERROR_USER_CONSENT_TIMED_OUT = 4; // 0x4 - field public static final int BUGREPORT_ERROR_USER_DENIED_CONSENT = 3; // 0x3 - } - - public class Build { - ctor public Build(); - method @FlaggedApi("android.os.api_for_backported_fixes") public static int getBackportedFixStatus(long); - method @NonNull public static java.util.List getFingerprintedPartitions(); - method @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static int getMajorSdkVersion(int); - method @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static int getMinorSdkVersion(int); - method public static String getRadioVersion(); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public static String getSerial(); - field @FlaggedApi("android.os.api_for_backported_fixes") public static final int BACKPORTED_FIX_STATUS_FIXED = 1; // 0x1 - field @FlaggedApi("android.os.api_for_backported_fixes") public static final int BACKPORTED_FIX_STATUS_NOT_APPLICABLE = 2; // 0x2 - field @FlaggedApi("android.os.api_for_backported_fixes") public static final int BACKPORTED_FIX_STATUS_NOT_FIXED = 3; // 0x3 - field @FlaggedApi("android.os.api_for_backported_fixes") public static final int BACKPORTED_FIX_STATUS_UNKNOWN = 0; // 0x0 - field public static final String BOARD; - field public static final String BOOTLOADER; - field public static final String BRAND; - field @Deprecated public static final String CPU_ABI; - field @Deprecated public static final String CPU_ABI2; - field public static final String DEVICE; - field public static final String DISPLAY; - field public static final String FINGERPRINT; - field public static final String HARDWARE; - field public static final String HOST; - field public static final String ID; - field public static final String MANUFACTURER; - field public static final String MODEL; - field @NonNull public static final String ODM_SKU; - field public static final String PRODUCT; - field @Deprecated public static final String RADIO; - field @Deprecated public static final String SERIAL; - field @NonNull public static final String SKU; - field @NonNull public static final String SOC_MANUFACTURER; - field @NonNull public static final String SOC_MODEL; - field public static final String[] SUPPORTED_32_BIT_ABIS; - field public static final String[] SUPPORTED_64_BIT_ABIS; - field public static final String[] SUPPORTED_ABIS; - field public static final String TAGS; - field public static final long TIME; - field public static final String TYPE; - field public static final String UNKNOWN = "unknown"; - field public static final String USER; - } - - public static class Build.Partition { - method public long getBuildTimeMillis(); - method @NonNull public String getFingerprint(); - method @NonNull public String getName(); - field public static final String PARTITION_NAME_SYSTEM = "system"; - } - - public static class Build.VERSION { - ctor public Build.VERSION(); - field public static final String BASE_OS; - field public static final String CODENAME; - field public static final String INCREMENTAL; - field public static final int MEDIA_PERFORMANCE_CLASS; - field public static final int PREVIEW_SDK_INT; - field public static final String RELEASE; - field @NonNull public static final String RELEASE_OR_CODENAME; - field @NonNull public static final String RELEASE_OR_PREVIEW_DISPLAY; - field @Deprecated public static final String SDK; - field public static final int SDK_INT; - field @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static final int SDK_INT_FULL; - field public static final String SECURITY_PATCH; - } - - public static class Build.VERSION_CODES { - ctor public Build.VERSION_CODES(); - field @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static final int BAKLAVA = 10000; // 0x2710 - field public static final int BASE = 1; // 0x1 - field public static final int BASE_1_1 = 2; // 0x2 - field public static final int CUPCAKE = 3; // 0x3 - field public static final int CUR_DEVELOPMENT = 10000; // 0x2710 - field public static final int DONUT = 4; // 0x4 - field public static final int ECLAIR = 5; // 0x5 - field public static final int ECLAIR_0_1 = 6; // 0x6 - field public static final int ECLAIR_MR1 = 7; // 0x7 - field public static final int FROYO = 8; // 0x8 - field public static final int GINGERBREAD = 9; // 0x9 - field public static final int GINGERBREAD_MR1 = 10; // 0xa - field public static final int HONEYCOMB = 11; // 0xb - field public static final int HONEYCOMB_MR1 = 12; // 0xc - field public static final int HONEYCOMB_MR2 = 13; // 0xd - field public static final int ICE_CREAM_SANDWICH = 14; // 0xe - field public static final int ICE_CREAM_SANDWICH_MR1 = 15; // 0xf - field public static final int JELLY_BEAN = 16; // 0x10 - field public static final int JELLY_BEAN_MR1 = 17; // 0x11 - field public static final int JELLY_BEAN_MR2 = 18; // 0x12 - field public static final int KITKAT = 19; // 0x13 - field public static final int KITKAT_WATCH = 20; // 0x14 - field public static final int LOLLIPOP = 21; // 0x15 - field public static final int LOLLIPOP_MR1 = 22; // 0x16 - field public static final int M = 23; // 0x17 - field public static final int N = 24; // 0x18 - field public static final int N_MR1 = 25; // 0x19 - field public static final int O = 26; // 0x1a - field public static final int O_MR1 = 27; // 0x1b - field public static final int P = 28; // 0x1c - field public static final int Q = 29; // 0x1d - field public static final int R = 30; // 0x1e - field public static final int S = 31; // 0x1f - field public static final int S_V2 = 32; // 0x20 - field public static final int TIRAMISU = 33; // 0x21 - field public static final int UPSIDE_DOWN_CAKE = 34; // 0x22 - field public static final int VANILLA_ICE_CREAM = 35; // 0x23 - } - - @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static class Build.VERSION_CODES_FULL { - field public static final int BAKLAVA = 1000000000; // 0x3b9aca00 - field public static final int BASE = 100000; // 0x186a0 - field public static final int BASE_1_1 = 200000; // 0x30d40 - field public static final int CUPCAKE = 300000; // 0x493e0 - field public static final int DONUT = 400000; // 0x61a80 - field public static final int ECLAIR = 500000; // 0x7a120 - field public static final int ECLAIR_0_1 = 600000; // 0x927c0 - field public static final int ECLAIR_MR1 = 700000; // 0xaae60 - field public static final int FROYO = 800000; // 0xc3500 - field public static final int GINGERBREAD = 900000; // 0xdbba0 - field public static final int GINGERBREAD_MR1 = 1000000; // 0xf4240 - field public static final int HONEYCOMB = 1100000; // 0x10c8e0 - field public static final int HONEYCOMB_MR1 = 1200000; // 0x124f80 - field public static final int HONEYCOMB_MR2 = 1300000; // 0x13d620 - field public static final int ICE_CREAM_SANDWICH = 1400000; // 0x155cc0 - field public static final int ICE_CREAM_SANDWICH_MR1 = 1500000; // 0x16e360 - field public static final int JELLY_BEAN = 1600000; // 0x186a00 - field public static final int JELLY_BEAN_MR1 = 1700000; // 0x19f0a0 - field public static final int JELLY_BEAN_MR2 = 1800000; // 0x1b7740 - field public static final int KITKAT = 1900000; // 0x1cfde0 - field public static final int KITKAT_WATCH = 2000000; // 0x1e8480 - field public static final int LOLLIPOP = 2100000; // 0x200b20 - field public static final int LOLLIPOP_MR1 = 2200000; // 0x2191c0 - field public static final int M = 2300000; // 0x231860 - field public static final int N = 2400000; // 0x249f00 - field public static final int N_MR1 = 2500000; // 0x2625a0 - field public static final int O = 2600000; // 0x27ac40 - field public static final int O_MR1 = 2700000; // 0x2932e0 - field public static final int P = 2800000; // 0x2ab980 - field public static final int Q = 2900000; // 0x2c4020 - field public static final int R = 3000000; // 0x2dc6c0 - field public static final int S = 3100000; // 0x2f4d60 - field public static final int S_V2 = 3200000; // 0x30d400 - field public static final int TIRAMISU = 3300000; // 0x325aa0 - field public static final int UPSIDE_DOWN_CAKE = 3400000; // 0x33e140 - field public static final int VANILLA_ICE_CREAM = 3500000; // 0x3567e0 - } - - public final class Bundle extends android.os.BaseBundle implements java.lang.Cloneable android.os.Parcelable { - ctor public Bundle(); - ctor public Bundle(ClassLoader); - ctor public Bundle(int); - ctor public Bundle(android.os.Bundle); - ctor public Bundle(android.os.PersistableBundle); - method public Object clone(); - method public android.os.Bundle deepCopy(); - method public int describeContents(); - method @Nullable public android.os.IBinder getBinder(@Nullable String); - method @Nullable public android.os.Bundle getBundle(@Nullable String); - method public byte getByte(String); - method public Byte getByte(String, byte); - method @Nullable public byte[] getByteArray(@Nullable String); - method public char getChar(String); - method public char getChar(String, char); - method @Nullable public char[] getCharArray(@Nullable String); - method @Nullable public CharSequence getCharSequence(@Nullable String); - method public CharSequence getCharSequence(@Nullable String, CharSequence); - method @Nullable public CharSequence[] getCharSequenceArray(@Nullable String); - method @Nullable public java.util.ArrayList getCharSequenceArrayList(@Nullable String); - method public ClassLoader getClassLoader(); - method public float getFloat(String); - method public float getFloat(String, float); - method @Nullable public float[] getFloatArray(@Nullable String); - method @Nullable public java.util.ArrayList getIntegerArrayList(@Nullable String); - method @Deprecated @Nullable public T getParcelable(@Nullable String); - method @Nullable public T getParcelable(@Nullable String, @NonNull Class); - method @Deprecated @Nullable public android.os.Parcelable[] getParcelableArray(@Nullable String); - method @Nullable public T[] getParcelableArray(@Nullable String, @NonNull Class); - method @Deprecated @Nullable public java.util.ArrayList getParcelableArrayList(@Nullable String); - method @Nullable public java.util.ArrayList getParcelableArrayList(@Nullable String, @NonNull Class); - method @Deprecated @Nullable public java.io.Serializable getSerializable(@Nullable String); - method @Nullable public T getSerializable(@Nullable String, @NonNull Class); - method public short getShort(String); - method public short getShort(String, short); - method @Nullable public short[] getShortArray(@Nullable String); - method @Nullable public android.util.Size getSize(@Nullable String); - method @Nullable public android.util.SizeF getSizeF(@Nullable String); - method @Deprecated @Nullable public android.util.SparseArray getSparseParcelableArray(@Nullable String); - method @Nullable public android.util.SparseArray getSparseParcelableArray(@Nullable String, @NonNull Class); - method @Nullable public java.util.ArrayList getStringArrayList(@Nullable String); - method public boolean hasFileDescriptors(); - method public void putAll(android.os.Bundle); - method public void putBinder(@Nullable String, @Nullable android.os.IBinder); - method public void putBundle(@Nullable String, @Nullable android.os.Bundle); - method public void putByte(@Nullable String, byte); - method public void putByteArray(@Nullable String, @Nullable byte[]); - method public void putChar(@Nullable String, char); - method public void putCharArray(@Nullable String, @Nullable char[]); - method public void putCharSequence(@Nullable String, @Nullable CharSequence); - method public void putCharSequenceArray(@Nullable String, @Nullable CharSequence[]); - method public void putCharSequenceArrayList(@Nullable String, @Nullable java.util.ArrayList); - method public void putFloat(@Nullable String, float); - method public void putFloatArray(@Nullable String, @Nullable float[]); - method public void putIntegerArrayList(@Nullable String, @Nullable java.util.ArrayList); - method public void putParcelable(@Nullable String, @Nullable android.os.Parcelable); - method public void putParcelableArray(@Nullable String, @Nullable android.os.Parcelable[]); - method public void putParcelableArrayList(@Nullable String, @Nullable java.util.ArrayList); - method public void putSerializable(@Nullable String, @Nullable java.io.Serializable); - method public void putShort(@Nullable String, short); - method public void putShortArray(@Nullable String, @Nullable short[]); - method public void putSize(@Nullable String, @Nullable android.util.Size); - method public void putSizeF(@Nullable String, @Nullable android.util.SizeF); - method public void putSparseParcelableArray(@Nullable String, @Nullable android.util.SparseArray); - method public void putStringArrayList(@Nullable String, @Nullable java.util.ArrayList); - method public void readFromParcel(android.os.Parcel); - method public void setClassLoader(ClassLoader); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final android.os.Bundle EMPTY; - } - - public final class CancellationSignal { - ctor public CancellationSignal(); - method public void cancel(); - method public boolean isCanceled(); - method public void setOnCancelListener(android.os.CancellationSignal.OnCancelListener); - method public void throwIfCanceled(); - } - - public static interface CancellationSignal.OnCancelListener { - method public void onCancel(); - } - - public abstract class CombinedVibration implements android.os.Parcelable { - method @NonNull public static android.os.CombinedVibration createParallel(@NonNull android.os.VibrationEffect); - method public int describeContents(); - method @NonNull public static android.os.CombinedVibration.ParallelCombination startParallel(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class CombinedVibration.ParallelCombination { - method @NonNull public android.os.CombinedVibration.ParallelCombination addVibrator(int, @NonNull android.os.VibrationEffect); - method @NonNull public android.os.CombinedVibration combine(); - } - - public class ConditionVariable { - ctor public ConditionVariable(); - ctor public ConditionVariable(boolean); - method public void block(); - method public boolean block(long); - method public void close(); - method public void open(); - } - - public abstract class CountDownTimer { - ctor public CountDownTimer(long, long); - method public final void cancel(); - method public abstract void onFinish(); - method public abstract void onTick(long); - method public final android.os.CountDownTimer start(); - } - - @FlaggedApi("android.os.cpu_gpu_headrooms") public final class CpuHeadroomParams { - ctor public CpuHeadroomParams(); - method public int getCalculationType(); - method @IntRange(from=0x32, to=0x2710) public long getCalculationWindowMillis(); - method public void setCalculationType(int); - method public void setCalculationWindowMillis(@IntRange(from=0x32, to=0x2710) int); - method public void setTids(@NonNull int...); - field public static final int CPU_HEADROOM_CALCULATION_TYPE_AVERAGE = 1; // 0x1 - field public static final int CPU_HEADROOM_CALCULATION_TYPE_MIN = 0; // 0x0 - } - - public final class CpuUsageInfo implements android.os.Parcelable { - method public int describeContents(); - method public long getActive(); - method public long getTotal(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class DeadObjectException extends android.os.RemoteException { - ctor public DeadObjectException(); - ctor public DeadObjectException(String); - } - - public class DeadSystemException extends android.os.DeadObjectException { - ctor public DeadSystemException(); - } - - public final class Debug { - method public static void attachJvmtiAgent(@NonNull String, @Nullable String, @Nullable ClassLoader) throws java.io.IOException; - method @Deprecated public static void changeDebugPort(int); - method public static void dumpHprofData(String) throws java.io.IOException; - method public static boolean dumpService(String, java.io.FileDescriptor, String[]); - method @Deprecated public static void enableEmulatorTraceOutput(); - method public static int getBinderDeathObjectCount(); - method public static int getBinderLocalObjectCount(); - method public static int getBinderProxyObjectCount(); - method public static int getBinderReceivedTransactions(); - method public static int getBinderSentTransactions(); - method @Deprecated public static int getGlobalAllocCount(); - method @Deprecated public static int getGlobalAllocSize(); - method @Deprecated public static int getGlobalClassInitCount(); - method @Deprecated public static int getGlobalClassInitTime(); - method @Deprecated public static int getGlobalExternalAllocCount(); - method @Deprecated public static int getGlobalExternalAllocSize(); - method @Deprecated public static int getGlobalExternalFreedCount(); - method @Deprecated public static int getGlobalExternalFreedSize(); - method @Deprecated public static int getGlobalFreedCount(); - method @Deprecated public static int getGlobalFreedSize(); - method @Deprecated public static int getGlobalGcInvocationCount(); - method public static int getLoadedClassCount(); - method public static void getMemoryInfo(android.os.Debug.MemoryInfo); - method public static long getNativeHeapAllocatedSize(); - method public static long getNativeHeapFreeSize(); - method public static long getNativeHeapSize(); - method public static long getPss(); - method @FlaggedApi("android.os.remove_app_profiler_pss_collection") public static long getRss(); - method public static String getRuntimeStat(String); - method public static java.util.Map getRuntimeStats(); - method @Deprecated public static int getThreadAllocCount(); - method @Deprecated public static int getThreadAllocSize(); - method @Deprecated public static int getThreadExternalAllocCount(); - method @Deprecated public static int getThreadExternalAllocSize(); - method @Deprecated public static int getThreadGcInvocationCount(); - method public static boolean isDebuggerConnected(); - method public static void printLoadedClasses(int); - method @Deprecated public static void resetAllCounts(); - method @Deprecated public static void resetGlobalAllocCount(); - method @Deprecated public static void resetGlobalAllocSize(); - method @Deprecated public static void resetGlobalClassInitCount(); - method @Deprecated public static void resetGlobalClassInitTime(); - method @Deprecated public static void resetGlobalExternalAllocCount(); - method @Deprecated public static void resetGlobalExternalAllocSize(); - method @Deprecated public static void resetGlobalExternalFreedCount(); - method @Deprecated public static void resetGlobalExternalFreedSize(); - method @Deprecated public static void resetGlobalFreedCount(); - method @Deprecated public static void resetGlobalFreedSize(); - method @Deprecated public static void resetGlobalGcInvocationCount(); - method @Deprecated public static void resetThreadAllocCount(); - method @Deprecated public static void resetThreadAllocSize(); - method @Deprecated public static void resetThreadExternalAllocCount(); - method @Deprecated public static void resetThreadExternalAllocSize(); - method @Deprecated public static void resetThreadGcInvocationCount(); - method @Deprecated public static int setAllocationLimit(int); - method @Deprecated public static int setGlobalAllocationLimit(int); - method @Deprecated public static void startAllocCounting(); - method public static void startMethodTracing(); - method public static void startMethodTracing(String); - method public static void startMethodTracing(String, int); - method public static void startMethodTracing(String, int, int); - method public static void startMethodTracingSampling(String, int, int); - method public static void startNativeTracing(); - method @Deprecated public static void stopAllocCounting(); - method public static void stopMethodTracing(); - method public static void stopNativeTracing(); - method public static long threadCpuTimeNanos(); - method public static void waitForDebugger(); - method public static boolean waitingForDebugger(); - field public static final int SHOW_CLASSLOADER = 2; // 0x2 - field public static final int SHOW_FULL_DETAIL = 1; // 0x1 - field public static final int SHOW_INITIALIZED = 4; // 0x4 - field @Deprecated public static final int TRACE_COUNT_ALLOCS = 1; // 0x1 - } - - @Deprecated public static class Debug.InstructionCount { - ctor @Deprecated public Debug.InstructionCount(); - method @Deprecated public boolean collect(); - method @Deprecated public int globalMethodInvocations(); - method @Deprecated public int globalTotal(); - method @Deprecated public boolean resetAndStart(); - } - - public static class Debug.MemoryInfo implements android.os.Parcelable { - ctor public Debug.MemoryInfo(); - method public int describeContents(); - method public String getMemoryStat(String); - method public java.util.Map getMemoryStats(); - method public int getTotalPrivateClean(); - method public int getTotalPrivateDirty(); - method public int getTotalPss(); - method public int getTotalSharedClean(); - method public int getTotalSharedDirty(); - method public int getTotalSwappablePss(); - method public void readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public int dalvikPrivateDirty; - field public int dalvikPss; - field public int dalvikSharedDirty; - field public int nativePrivateDirty; - field public int nativePss; - field public int nativeSharedDirty; - field public int otherPrivateDirty; - field public int otherPss; - field public int otherSharedDirty; - } - - public class DropBoxManager { - ctor protected DropBoxManager(); - method public void addData(@NonNull String, @Nullable byte[], int); - method public void addFile(@NonNull String, @NonNull java.io.File, int) throws java.io.IOException; - method public void addText(@NonNull String, @NonNull String); - method @Nullable @RequiresPermission(allOf={android.Manifest.permission.READ_DROPBOX_DATA, android.Manifest.permission.PACKAGE_USAGE_STATS}) public android.os.DropBoxManager.Entry getNextEntry(String, long); - method public boolean isTagEnabled(String); - field public static final String ACTION_DROPBOX_ENTRY_ADDED = "android.intent.action.DROPBOX_ENTRY_ADDED"; - field public static final String EXTRA_DROPPED_COUNT = "android.os.extra.DROPPED_COUNT"; - field public static final String EXTRA_TAG = "tag"; - field public static final String EXTRA_TIME = "time"; - field public static final int IS_EMPTY = 1; // 0x1 - field public static final int IS_GZIPPED = 4; // 0x4 - field public static final int IS_TEXT = 2; // 0x2 - } - - public static class DropBoxManager.Entry implements java.io.Closeable android.os.Parcelable { - ctor public DropBoxManager.Entry(@NonNull String, long); - ctor public DropBoxManager.Entry(@NonNull String, long, @NonNull String); - ctor public DropBoxManager.Entry(@NonNull String, long, @Nullable byte[], int); - ctor public DropBoxManager.Entry(@NonNull String, long, @Nullable android.os.ParcelFileDescriptor, int); - ctor public DropBoxManager.Entry(@NonNull String, long, @NonNull java.io.File, int) throws java.io.IOException; - method public void close(); - method public int describeContents(); - method public int getFlags(); - method @Nullable public java.io.InputStream getInputStream() throws java.io.IOException; - method @NonNull public String getTag(); - method @Nullable public String getText(int); - method public long getTimeMillis(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class Environment { - ctor public Environment(); - method public static java.io.File getDataDirectory(); - method public static java.io.File getDownloadCacheDirectory(); - method public static java.io.File getExternalStorageDirectory(); - method public static java.io.File getExternalStoragePublicDirectory(String); - method public static String getExternalStorageState(); - method public static String getExternalStorageState(java.io.File); - method @NonNull public static java.io.File getRootDirectory(); - method @NonNull public static java.io.File getStorageDirectory(); - method @Deprecated public static String getStorageState(java.io.File); - method public static boolean isExternalStorageEmulated(); - method public static boolean isExternalStorageEmulated(@NonNull java.io.File); - method public static boolean isExternalStorageLegacy(); - method public static boolean isExternalStorageLegacy(@NonNull java.io.File); - method public static boolean isExternalStorageManager(); - method public static boolean isExternalStorageManager(@NonNull java.io.File); - method public static boolean isExternalStorageRemovable(); - method public static boolean isExternalStorageRemovable(@NonNull java.io.File); - field public static String DIRECTORY_ALARMS; - field public static String DIRECTORY_AUDIOBOOKS; - field public static String DIRECTORY_DCIM; - field public static String DIRECTORY_DOCUMENTS; - field public static String DIRECTORY_DOWNLOADS; - field public static String DIRECTORY_MOVIES; - field public static String DIRECTORY_MUSIC; - field public static String DIRECTORY_NOTIFICATIONS; - field public static String DIRECTORY_PICTURES; - field public static String DIRECTORY_PODCASTS; - field @NonNull public static String DIRECTORY_RECORDINGS; - field public static String DIRECTORY_RINGTONES; - field public static String DIRECTORY_SCREENSHOTS; - field public static final String MEDIA_BAD_REMOVAL = "bad_removal"; - field public static final String MEDIA_CHECKING = "checking"; - field public static final String MEDIA_EJECTING = "ejecting"; - field public static final String MEDIA_MOUNTED = "mounted"; - field public static final String MEDIA_MOUNTED_READ_ONLY = "mounted_ro"; - field public static final String MEDIA_NOFS = "nofs"; - field public static final String MEDIA_REMOVED = "removed"; - field public static final String MEDIA_SHARED = "shared"; - field public static final String MEDIA_UNKNOWN = "unknown"; - field public static final String MEDIA_UNMOUNTABLE = "unmountable"; - field public static final String MEDIA_UNMOUNTED = "unmounted"; - } - - public abstract class FileObserver { - ctor @Deprecated public FileObserver(String); - ctor public FileObserver(@NonNull java.io.File); - ctor public FileObserver(@NonNull java.util.List); - ctor @Deprecated public FileObserver(String, int); - ctor public FileObserver(@NonNull java.io.File, int); - ctor public FileObserver(@NonNull java.util.List, int); - method protected void finalize(); - method public abstract void onEvent(int, @Nullable String); - method public void startWatching(); - method public void stopWatching(); - field public static final int ACCESS = 1; // 0x1 - field public static final int ALL_EVENTS = 4095; // 0xfff - field public static final int ATTRIB = 4; // 0x4 - field public static final int CLOSE_NOWRITE = 16; // 0x10 - field public static final int CLOSE_WRITE = 8; // 0x8 - field public static final int CREATE = 256; // 0x100 - field public static final int DELETE = 512; // 0x200 - field public static final int DELETE_SELF = 1024; // 0x400 - field public static final int MODIFY = 2; // 0x2 - field public static final int MOVED_FROM = 64; // 0x40 - field public static final int MOVED_TO = 128; // 0x80 - field public static final int MOVE_SELF = 2048; // 0x800 - field public static final int OPEN = 32; // 0x20 - } - - public class FileUriExposedException extends java.lang.RuntimeException { - ctor public FileUriExposedException(String); - } - - public final class FileUtils { - method @Deprecated public static void closeQuietly(@Nullable AutoCloseable); - method @Deprecated public static void closeQuietly(@Nullable java.io.FileDescriptor); - method public static long copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws java.io.IOException; - method public static long copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream, @Nullable android.os.CancellationSignal, @Nullable java.util.concurrent.Executor, @Nullable android.os.FileUtils.ProgressListener) throws java.io.IOException; - method public static long copy(@NonNull java.io.FileDescriptor, @NonNull java.io.FileDescriptor) throws java.io.IOException; - method public static long copy(@NonNull java.io.FileDescriptor, @NonNull java.io.FileDescriptor, @Nullable android.os.CancellationSignal, @Nullable java.util.concurrent.Executor, @Nullable android.os.FileUtils.ProgressListener) throws java.io.IOException; - } - - public static interface FileUtils.ProgressListener { - method public void onProgress(long); - } - - @FlaggedApi("android.os.cpu_gpu_headrooms") public final class GpuHeadroomParams { - ctor public GpuHeadroomParams(); - method public int getCalculationType(); - method @IntRange(from=0x32, to=0x2710) public int getCalculationWindowMillis(); - method public void setCalculationType(int); - method public void setCalculationWindowMillis(@IntRange(from=0x32, to=0x2710) int); - field public static final int GPU_HEADROOM_CALCULATION_TYPE_AVERAGE = 1; // 0x1 - field public static final int GPU_HEADROOM_CALCULATION_TYPE_MIN = 0; // 0x0 - } - - public class Handler { - ctor @Deprecated public Handler(); - ctor @Deprecated public Handler(@Nullable android.os.Handler.Callback); - ctor public Handler(@NonNull android.os.Looper); - ctor public Handler(@NonNull android.os.Looper, @Nullable android.os.Handler.Callback); - method @NonNull public static android.os.Handler createAsync(@NonNull android.os.Looper); - method @NonNull public static android.os.Handler createAsync(@NonNull android.os.Looper, @NonNull android.os.Handler.Callback); - method public void dispatchMessage(@NonNull android.os.Message); - method public final void dump(@NonNull android.util.Printer, @NonNull String); - method @NonNull public final android.os.Looper getLooper(); - method @NonNull public String getMessageName(@NonNull android.os.Message); - method public void handleMessage(@NonNull android.os.Message); - method public final boolean hasCallbacks(@NonNull Runnable); - method public final boolean hasMessages(int); - method public final boolean hasMessages(int, @Nullable Object); - method @NonNull public final android.os.Message obtainMessage(); - method @NonNull public final android.os.Message obtainMessage(int); - method @NonNull public final android.os.Message obtainMessage(int, @Nullable Object); - method @NonNull public final android.os.Message obtainMessage(int, int, int); - method @NonNull public final android.os.Message obtainMessage(int, int, int, @Nullable Object); - method public final boolean post(@NonNull Runnable); - method public final boolean postAtFrontOfQueue(@NonNull Runnable); - method public final boolean postAtTime(@NonNull Runnable, long); - method public final boolean postAtTime(@NonNull Runnable, @Nullable Object, long); - method public final boolean postDelayed(@NonNull Runnable, long); - method public final boolean postDelayed(@NonNull Runnable, @Nullable Object, long); - method public final void removeCallbacks(@NonNull Runnable); - method public final void removeCallbacks(@NonNull Runnable, @Nullable Object); - method public final void removeCallbacksAndMessages(@Nullable Object); - method public final void removeMessages(int); - method public final void removeMessages(int, @Nullable Object); - method public final boolean sendEmptyMessage(int); - method public final boolean sendEmptyMessageAtTime(int, long); - method public final boolean sendEmptyMessageDelayed(int, long); - method public final boolean sendMessage(@NonNull android.os.Message); - method public final boolean sendMessageAtFrontOfQueue(@NonNull android.os.Message); - method public boolean sendMessageAtTime(@NonNull android.os.Message, long); - method public final boolean sendMessageDelayed(@NonNull android.os.Message, long); - } - - public static interface Handler.Callback { - method public boolean handleMessage(@NonNull android.os.Message); - } - - public class HandlerThread extends java.lang.Thread { - ctor public HandlerThread(String); - ctor public HandlerThread(String, int); - method public android.os.Looper getLooper(); - method public int getThreadId(); - method protected void onLooperPrepared(); - method public boolean quit(); - method public boolean quitSafely(); - } - - public class HardwarePropertiesManager { - method @NonNull public android.os.CpuUsageInfo[] getCpuUsages(); - method @NonNull public float[] getDeviceTemperatures(int, int); - method @NonNull public float[] getFanSpeeds(); - field public static final int DEVICE_TEMPERATURE_BATTERY = 2; // 0x2 - field public static final int DEVICE_TEMPERATURE_CPU = 0; // 0x0 - field public static final int DEVICE_TEMPERATURE_GPU = 1; // 0x1 - field public static final int DEVICE_TEMPERATURE_SKIN = 3; // 0x3 - field public static final int TEMPERATURE_CURRENT = 0; // 0x0 - field public static final int TEMPERATURE_SHUTDOWN = 2; // 0x2 - field public static final int TEMPERATURE_THROTTLING = 1; // 0x1 - field public static final int TEMPERATURE_THROTTLING_BELOW_VR_MIN = 3; // 0x3 - field public static final float UNDEFINED_TEMPERATURE = -3.4028235E38f; - } - - public interface IBinder { - method @FlaggedApi("android.os.binder_frozen_state_change_callback") public default void addFrozenStateChangeCallback(@NonNull java.util.concurrent.Executor, @NonNull android.os.IBinder.FrozenStateChangeCallback) throws android.os.RemoteException; - method public void dump(@NonNull java.io.FileDescriptor, @Nullable String[]) throws android.os.RemoteException; - method public void dumpAsync(@NonNull java.io.FileDescriptor, @Nullable String[]) throws android.os.RemoteException; - method @Nullable public String getInterfaceDescriptor() throws android.os.RemoteException; - method public static int getSuggestedMaxIpcSizeBytes(); - method public boolean isBinderAlive(); - method public void linkToDeath(@NonNull android.os.IBinder.DeathRecipient, int) throws android.os.RemoteException; - method public boolean pingBinder(); - method @Nullable public android.os.IInterface queryLocalInterface(@NonNull String); - method @FlaggedApi("android.os.binder_frozen_state_change_callback") public default boolean removeFrozenStateChangeCallback(@NonNull android.os.IBinder.FrozenStateChangeCallback); - method public boolean transact(int, @NonNull android.os.Parcel, @Nullable android.os.Parcel, int) throws android.os.RemoteException; - method public boolean unlinkToDeath(@NonNull android.os.IBinder.DeathRecipient, int); - field public static final int DUMP_TRANSACTION = 1598311760; // 0x5f444d50 - field public static final int FIRST_CALL_TRANSACTION = 1; // 0x1 - field public static final int FLAG_ONEWAY = 1; // 0x1 - field public static final int INTERFACE_TRANSACTION = 1598968902; // 0x5f4e5446 - field public static final int LAST_CALL_TRANSACTION = 16777215; // 0xffffff - field public static final int LIKE_TRANSACTION = 1598835019; // 0x5f4c494b - field public static final int PING_TRANSACTION = 1599098439; // 0x5f504e47 - field public static final int TWEET_TRANSACTION = 1599362900; // 0x5f545754 - } - - public static interface IBinder.DeathRecipient { - method public void binderDied(); - method public default void binderDied(@NonNull android.os.IBinder); - } - - @FlaggedApi("android.os.binder_frozen_state_change_callback") public static interface IBinder.FrozenStateChangeCallback { - method public void onFrozenStateChanged(@NonNull android.os.IBinder, int); - field public static final int STATE_FROZEN = 0; // 0x0 - field public static final int STATE_UNFROZEN = 1; // 0x1 - } - - public interface IInterface { - method public android.os.IBinder asBinder(); - } - - public class LimitExceededException extends java.lang.IllegalStateException { - ctor public LimitExceededException(); - ctor public LimitExceededException(@NonNull String); - } - - public final class LocaleList implements android.os.Parcelable { - ctor public LocaleList(@NonNull java.util.Locale...); - method public int describeContents(); - method @NonNull public static android.os.LocaleList forLanguageTags(@Nullable String); - method public java.util.Locale get(int); - method @NonNull @Size(min=1) public static android.os.LocaleList getAdjustedDefault(); - method @NonNull @Size(min=1) public static android.os.LocaleList getDefault(); - method @NonNull public static android.os.LocaleList getEmptyLocaleList(); - method @Nullable public java.util.Locale getFirstMatch(String[]); - method @IntRange(from=0xffffffff) public int indexOf(java.util.Locale); - method public boolean isEmpty(); - method public static boolean isPseudoLocale(@Nullable android.icu.util.ULocale); - method public static boolean matchesLanguageAndScript(@NonNull java.util.Locale, @NonNull java.util.Locale); - method public static void setDefault(@NonNull @Size(min=1) android.os.LocaleList); - method @IntRange(from=0) public int size(); - method @NonNull public String toLanguageTags(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class Looper { - method public void dump(@NonNull android.util.Printer, @NonNull String); - method public static android.os.Looper getMainLooper(); - method @NonNull public android.os.MessageQueue getQueue(); - method @NonNull public Thread getThread(); - method public boolean isCurrentThread(); - method public static void loop(); - method @Nullable public static android.os.Looper myLooper(); - method @NonNull public static android.os.MessageQueue myQueue(); - method public static void prepare(); - method @Deprecated public static void prepareMainLooper(); - method public void quit(); - method public void quitSafely(); - method public void setMessageLogging(@Nullable android.util.Printer); - } - - public class MemoryFile { - ctor public MemoryFile(String, int) throws java.io.IOException; - method @Deprecated public boolean allowPurging(boolean) throws java.io.IOException; - method public void close(); - method public java.io.InputStream getInputStream(); - method public java.io.OutputStream getOutputStream(); - method @Deprecated public boolean isPurgingAllowed(); - method public int length(); - method public int readBytes(byte[], int, int, int) throws java.io.IOException; - method public void writeBytes(byte[], int, int, int) throws java.io.IOException; - } - - public final class Message implements android.os.Parcelable { - ctor public Message(); - method public void copyFrom(android.os.Message); - method public int describeContents(); - method public Runnable getCallback(); - method public android.os.Bundle getData(); - method public android.os.Handler getTarget(); - method public long getWhen(); - method public boolean isAsynchronous(); - method public static android.os.Message obtain(); - method public static android.os.Message obtain(android.os.Message); - method public static android.os.Message obtain(android.os.Handler); - method public static android.os.Message obtain(android.os.Handler, Runnable); - method public static android.os.Message obtain(android.os.Handler, int); - method public static android.os.Message obtain(android.os.Handler, int, Object); - method public static android.os.Message obtain(android.os.Handler, int, int, int); - method public static android.os.Message obtain(android.os.Handler, int, int, int, Object); - method @Nullable public android.os.Bundle peekData(); - method public void recycle(); - method public void sendToTarget(); - method public void setAsynchronous(boolean); - method public void setData(android.os.Bundle); - method public void setTarget(android.os.Handler); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public int arg1; - field public int arg2; - field public Object obj; - field public android.os.Messenger replyTo; - field public int sendingUid; - field public int what; - } - - public final class MessageQueue { - method public void addIdleHandler(@NonNull android.os.MessageQueue.IdleHandler); - method public void addOnFileDescriptorEventListener(@NonNull java.io.FileDescriptor, int, @NonNull android.os.MessageQueue.OnFileDescriptorEventListener); - method public boolean isIdle(); - method public void removeIdleHandler(@NonNull android.os.MessageQueue.IdleHandler); - method public void removeOnFileDescriptorEventListener(@NonNull java.io.FileDescriptor); - } - - public static interface MessageQueue.IdleHandler { - method public boolean queueIdle(); - } - - public static interface MessageQueue.OnFileDescriptorEventListener { - method public int onFileDescriptorEvents(@NonNull java.io.FileDescriptor, int); - field public static final int EVENT_ERROR = 4; // 0x4 - field public static final int EVENT_INPUT = 1; // 0x1 - field public static final int EVENT_OUTPUT = 2; // 0x2 - } - - public final class Messenger implements android.os.Parcelable { - ctor public Messenger(android.os.Handler); - ctor public Messenger(android.os.IBinder); - method public int describeContents(); - method public android.os.IBinder getBinder(); - method public static android.os.Messenger readMessengerOrNullFromParcel(android.os.Parcel); - method public void send(android.os.Message) throws android.os.RemoteException; - method public static void writeMessengerOrNullToParcel(android.os.Messenger, android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class NetworkOnMainThreadException extends java.lang.RuntimeException { - ctor public NetworkOnMainThreadException(); - } - - public class OperationCanceledException extends java.lang.RuntimeException { - ctor public OperationCanceledException(); - ctor public OperationCanceledException(String); - } - - public interface OutcomeReceiver { - method public default void onError(@NonNull E); - method public void onResult(R); - } - - public final class Parcel { - method public void appendFrom(android.os.Parcel, int, int); - method @Nullable public android.os.IBinder[] createBinderArray(); - method @Nullable public java.util.ArrayList createBinderArrayList(); - method @Nullable public boolean[] createBooleanArray(); - method @Nullable public byte[] createByteArray(); - method @Nullable public char[] createCharArray(); - method @Nullable public double[] createDoubleArray(); - method @Nullable public T createFixedArray(@NonNull Class, @NonNull int...); - method @Nullable public T createFixedArray(@NonNull Class, @NonNull java.util.function.Function, @NonNull int...); - method @Nullable public T createFixedArray(@NonNull Class, @NonNull android.os.Parcelable.Creator, @NonNull int...); - method @Nullable public float[] createFloatArray(); - method @Nullable public int[] createIntArray(); - method @Nullable public T[] createInterfaceArray(@NonNull java.util.function.IntFunction, @NonNull java.util.function.Function); - method @Nullable public java.util.ArrayList createInterfaceArrayList(@NonNull java.util.function.Function); - method @Nullable public long[] createLongArray(); - method @Nullable public String[] createStringArray(); - method @Nullable public java.util.ArrayList createStringArrayList(); - method @Nullable public T[] createTypedArray(@NonNull android.os.Parcelable.Creator); - method @Nullable public java.util.ArrayList createTypedArrayList(@NonNull android.os.Parcelable.Creator); - method @Nullable public android.util.ArrayMap createTypedArrayMap(@NonNull android.os.Parcelable.Creator); - method @Nullable public android.util.SparseArray createTypedSparseArray(@NonNull android.os.Parcelable.Creator); - method public int dataAvail(); - method public int dataCapacity(); - method public int dataPosition(); - method public int dataSize(); - method public void enforceInterface(@NonNull String); - method public void enforceNoDataAvail(); - method public boolean hasFileDescriptors(); - method public boolean hasFileDescriptors(int, int); - method public byte[] marshall(); - method @NonNull public static android.os.Parcel obtain(); - method @NonNull public static android.os.Parcel obtain(@NonNull android.os.IBinder); - method @Deprecated @Nullable public Object[] readArray(@Nullable ClassLoader); - method @Nullable public T[] readArray(@Nullable ClassLoader, @NonNull Class); - method @Deprecated @Nullable public java.util.ArrayList readArrayList(@Nullable ClassLoader); - method @Nullable public java.util.ArrayList readArrayList(@Nullable ClassLoader, @NonNull Class); - method public void readBinderArray(@NonNull android.os.IBinder[]); - method public void readBinderList(@NonNull java.util.List); - method @Nullable public byte[] readBlob(); - method public boolean readBoolean(); - method public void readBooleanArray(@NonNull boolean[]); - method @Nullable public android.os.Bundle readBundle(); - method @Nullable public android.os.Bundle readBundle(@Nullable ClassLoader); - method public byte readByte(); - method public void readByteArray(@NonNull byte[]); - method public void readCharArray(@NonNull char[]); - method public double readDouble(); - method public void readDoubleArray(@NonNull double[]); - method public void readException(); - method public void readException(int, String); - method public android.os.ParcelFileDescriptor readFileDescriptor(); - method public void readFixedArray(@NonNull T); - method public void readFixedArray(@NonNull T, @NonNull java.util.function.Function); - method public void readFixedArray(@NonNull T, @NonNull android.os.Parcelable.Creator); - method public float readFloat(); - method public void readFloatArray(@NonNull float[]); - method @Deprecated @Nullable public java.util.HashMap readHashMap(@Nullable ClassLoader); - method @Nullable public java.util.HashMap readHashMap(@Nullable ClassLoader, @NonNull Class, @NonNull Class); - method public int readInt(); - method public void readIntArray(@NonNull int[]); - method public void readInterfaceArray(@NonNull T[], @NonNull java.util.function.Function); - method public void readInterfaceList(@NonNull java.util.List, @NonNull java.util.function.Function); - method @Deprecated public void readList(@NonNull java.util.List, @Nullable ClassLoader); - method public void readList(@NonNull java.util.List, @Nullable ClassLoader, @NonNull Class); - method public long readLong(); - method public void readLongArray(@NonNull long[]); - method @Deprecated public void readMap(@NonNull java.util.Map, @Nullable ClassLoader); - method public void readMap(@NonNull java.util.Map, @Nullable ClassLoader, @NonNull Class, @NonNull Class); - method @Deprecated @Nullable public T readParcelable(@Nullable ClassLoader); - method @Nullable public T readParcelable(@Nullable ClassLoader, @NonNull Class); - method @Deprecated @Nullable public android.os.Parcelable[] readParcelableArray(@Nullable ClassLoader); - method @Nullable public T[] readParcelableArray(@Nullable ClassLoader, @NonNull Class); - method @Deprecated @Nullable public android.os.Parcelable.Creator readParcelableCreator(@Nullable ClassLoader); - method @Nullable public android.os.Parcelable.Creator readParcelableCreator(@Nullable ClassLoader, @NonNull Class); - method @Deprecated @NonNull public java.util.List readParcelableList(@NonNull java.util.List, @Nullable ClassLoader); - method @NonNull public java.util.List readParcelableList(@NonNull java.util.List, @Nullable ClassLoader, @NonNull Class); - method @Nullable public android.os.PersistableBundle readPersistableBundle(); - method @Nullable public android.os.PersistableBundle readPersistableBundle(@Nullable ClassLoader); - method @Deprecated @Nullable public java.io.Serializable readSerializable(); - method @Nullable public T readSerializable(@Nullable ClassLoader, @NonNull Class); - method @NonNull public android.util.Size readSize(); - method @NonNull public android.util.SizeF readSizeF(); - method @Deprecated @Nullable public android.util.SparseArray readSparseArray(@Nullable ClassLoader); - method @Nullable public android.util.SparseArray readSparseArray(@Nullable ClassLoader, @NonNull Class); - method @Nullable public android.util.SparseBooleanArray readSparseBooleanArray(); - method @Nullable public String readString(); - method public void readStringArray(@NonNull String[]); - method public void readStringList(@NonNull java.util.List); - method public android.os.IBinder readStrongBinder(); - method public void readTypedArray(@NonNull T[], @NonNull android.os.Parcelable.Creator); - method public void readTypedList(@NonNull java.util.List, @NonNull android.os.Parcelable.Creator); - method @Nullable public T readTypedObject(@NonNull android.os.Parcelable.Creator); - method @Nullable public Object readValue(@Nullable ClassLoader); - method public void recycle(); - method public void setDataCapacity(int); - method public void setDataPosition(int); - method public void setDataSize(int); - method public void setPropagateAllowBlocking(); - method public void unmarshall(@NonNull byte[], int, int); - method public void writeArray(@Nullable Object[]); - method public void writeBinderArray(@Nullable android.os.IBinder[]); - method public void writeBinderList(@Nullable java.util.List); - method public void writeBlob(@Nullable byte[]); - method public void writeBlob(@Nullable byte[], int, int); - method public void writeBoolean(boolean); - method public void writeBooleanArray(@Nullable boolean[]); - method public void writeBundle(@Nullable android.os.Bundle); - method public void writeByte(byte); - method public void writeByteArray(@Nullable byte[]); - method public void writeByteArray(@Nullable byte[], int, int); - method public void writeCharArray(@Nullable char[]); - method public void writeDouble(double); - method public void writeDoubleArray(@Nullable double[]); - method public void writeException(@NonNull Exception); - method public void writeFileDescriptor(@NonNull java.io.FileDescriptor); - method public void writeFixedArray(@Nullable T, int, @NonNull int...); - method public void writeFloat(float); - method public void writeFloatArray(@Nullable float[]); - method public void writeInt(int); - method public void writeIntArray(@Nullable int[]); - method public void writeInterfaceArray(@Nullable T[]); - method public void writeInterfaceList(@Nullable java.util.List); - method public void writeInterfaceToken(@NonNull String); - method public void writeList(@Nullable java.util.List); - method public void writeLong(long); - method public void writeLongArray(@Nullable long[]); - method public void writeMap(@Nullable java.util.Map); - method public void writeNoException(); - method public void writeParcelable(@Nullable android.os.Parcelable, int); - method public void writeParcelableArray(@Nullable T[], int); - method public void writeParcelableCreator(@NonNull android.os.Parcelable); - method public void writeParcelableList(@Nullable java.util.List, int); - method public void writePersistableBundle(@Nullable android.os.PersistableBundle); - method public void writeSerializable(@Nullable java.io.Serializable); - method public void writeSize(@NonNull android.util.Size); - method public void writeSizeF(@NonNull android.util.SizeF); - method public void writeSparseArray(@Nullable android.util.SparseArray); - method public void writeSparseBooleanArray(@Nullable android.util.SparseBooleanArray); - method public void writeString(@Nullable String); - method public void writeStringArray(@Nullable String[]); - method public void writeStringList(@Nullable java.util.List); - method public void writeStrongBinder(android.os.IBinder); - method public void writeStrongInterface(android.os.IInterface); - method public void writeTypedArray(@Nullable T[], int); - method public void writeTypedArrayMap(@Nullable android.util.ArrayMap, int); - method public void writeTypedList(@Nullable java.util.List); - method public void writeTypedList(@Nullable java.util.List, int); - method public void writeTypedObject(@Nullable T, int); - method public void writeTypedSparseArray(@Nullable android.util.SparseArray, int); - method public void writeValue(@Nullable Object); - field public static final android.os.Parcelable.Creator STRING_CREATOR; - } - - public class ParcelFileDescriptor implements java.io.Closeable android.os.Parcelable { - ctor public ParcelFileDescriptor(android.os.ParcelFileDescriptor); - method public static android.os.ParcelFileDescriptor adoptFd(int); - method public boolean canDetectErrors(); - method public void checkError() throws java.io.IOException; - method public void close() throws java.io.IOException; - method public void closeWithError(String) throws java.io.IOException; - method public static android.os.ParcelFileDescriptor[] createPipe() throws java.io.IOException; - method public static android.os.ParcelFileDescriptor[] createReliablePipe() throws java.io.IOException; - method public static android.os.ParcelFileDescriptor[] createReliableSocketPair() throws java.io.IOException; - method public static android.os.ParcelFileDescriptor[] createSocketPair() throws java.io.IOException; - method public int describeContents(); - method public int detachFd(); - method public static android.os.ParcelFileDescriptor dup(java.io.FileDescriptor) throws java.io.IOException; - method public android.os.ParcelFileDescriptor dup() throws java.io.IOException; - method public static android.os.ParcelFileDescriptor fromDatagramSocket(java.net.DatagramSocket); - method public static android.os.ParcelFileDescriptor fromFd(int) throws java.io.IOException; - method public static android.os.ParcelFileDescriptor fromSocket(java.net.Socket); - method public int getFd(); - method public java.io.FileDescriptor getFileDescriptor(); - method public long getStatSize(); - method public static android.os.ParcelFileDescriptor open(java.io.File, int) throws java.io.FileNotFoundException; - method public static android.os.ParcelFileDescriptor open(java.io.File, int, android.os.Handler, android.os.ParcelFileDescriptor.OnCloseListener) throws java.io.IOException; - method public static int parseMode(String); - method @NonNull public static android.os.ParcelFileDescriptor wrap(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.Handler, @NonNull android.os.ParcelFileDescriptor.OnCloseListener) throws java.io.IOException; - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int MODE_APPEND = 33554432; // 0x2000000 - field public static final int MODE_CREATE = 134217728; // 0x8000000 - field public static final int MODE_READ_ONLY = 268435456; // 0x10000000 - field public static final int MODE_READ_WRITE = 805306368; // 0x30000000 - field public static final int MODE_TRUNCATE = 67108864; // 0x4000000 - field @Deprecated public static final int MODE_WORLD_READABLE = 1; // 0x1 - field @Deprecated public static final int MODE_WORLD_WRITEABLE = 2; // 0x2 - field public static final int MODE_WRITE_ONLY = 536870912; // 0x20000000 - } - - public static class ParcelFileDescriptor.AutoCloseInputStream extends java.io.FileInputStream { - ctor public ParcelFileDescriptor.AutoCloseInputStream(android.os.ParcelFileDescriptor); - } - - public static class ParcelFileDescriptor.AutoCloseOutputStream extends java.io.FileOutputStream { - ctor public ParcelFileDescriptor.AutoCloseOutputStream(android.os.ParcelFileDescriptor); - } - - public static class ParcelFileDescriptor.FileDescriptorDetachedException extends java.io.IOException { - ctor public ParcelFileDescriptor.FileDescriptorDetachedException(); - } - - public static interface ParcelFileDescriptor.OnCloseListener { - method public void onClose(java.io.IOException); - } - - public class ParcelFormatException extends java.lang.RuntimeException { - ctor public ParcelFormatException(); - ctor public ParcelFormatException(String); - } - - public final class ParcelUuid implements android.os.Parcelable { - ctor public ParcelUuid(java.util.UUID); - method public int describeContents(); - method public static android.os.ParcelUuid fromString(String); - method public java.util.UUID getUuid(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface Parcelable { - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CONTENTS_FILE_DESCRIPTOR = 1; // 0x1 - field public static final int PARCELABLE_WRITE_RETURN_VALUE = 1; // 0x1 - } - - public static interface Parcelable.ClassLoaderCreator extends android.os.Parcelable.Creator { - method public T createFromParcel(android.os.Parcel, ClassLoader); - } - - public static interface Parcelable.Creator { - method public T createFromParcel(android.os.Parcel); - method public T[] newArray(int); - } - - public class PatternMatcher implements android.os.Parcelable { - ctor public PatternMatcher(String, int); - ctor public PatternMatcher(android.os.Parcel); - method public int describeContents(); - method public final String getPath(); - method public final int getType(); - method public boolean match(String); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int PATTERN_ADVANCED_GLOB = 3; // 0x3 - field public static final int PATTERN_LITERAL = 0; // 0x0 - field public static final int PATTERN_PREFIX = 1; // 0x1 - field public static final int PATTERN_SIMPLE_GLOB = 2; // 0x2 - field public static final int PATTERN_SUFFIX = 4; // 0x4 - } - - public final class PerformanceHintManager { - method @Nullable public android.os.PerformanceHintManager.Session createHintSession(@NonNull int[], long); - method public long getPreferredUpdateRateNanos(); - } - - public static class PerformanceHintManager.Session implements java.io.Closeable { - method public void close(); - method public void reportActualWorkDuration(long); - method @FlaggedApi("android.os.adpf_gpu_report_actual_work_duration") public void reportActualWorkDuration(@NonNull android.os.WorkDuration); - method @FlaggedApi("android.os.adpf_prefer_power_efficiency") public void setPreferPowerEfficiency(boolean); - method public void setThreads(@NonNull int[]); - method public void updateTargetWorkDuration(long); - } - - public final class PersistableBundle extends android.os.BaseBundle implements java.lang.Cloneable android.os.Parcelable { - ctor public PersistableBundle(); - ctor public PersistableBundle(int); - ctor public PersistableBundle(android.os.PersistableBundle); - method public Object clone(); - method public android.os.PersistableBundle deepCopy(); - method public int describeContents(); - method @Nullable public android.os.PersistableBundle getPersistableBundle(@Nullable String); - method public void putPersistableBundle(@Nullable String, @Nullable android.os.PersistableBundle); - method @NonNull public static android.os.PersistableBundle readFromStream(@NonNull java.io.InputStream) throws java.io.IOException; - method public void writeToParcel(android.os.Parcel, int); - method public void writeToStream(@NonNull java.io.OutputStream) throws java.io.IOException; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final android.os.PersistableBundle EMPTY; - } - - public final class PowerManager { - method @FlaggedApi("android.os.allow_thermal_thresholds_callback") public void addThermalHeadroomListener(@NonNull android.os.PowerManager.OnThermalHeadroomChangedListener); - method @FlaggedApi("android.os.allow_thermal_thresholds_callback") public void addThermalHeadroomListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.PowerManager.OnThermalHeadroomChangedListener); - method public void addThermalStatusListener(@NonNull android.os.PowerManager.OnThermalStatusChangedListener); - method public void addThermalStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.PowerManager.OnThermalStatusChangedListener); - method @Nullable public java.time.Duration getBatteryDischargePrediction(); - method public int getCurrentThermalStatus(); - method public int getLocationPowerSaveMode(); - method @FloatRange(from=0.0f) public float getThermalHeadroom(@IntRange(from=0, to=60) int); - method @FlaggedApi("android.os.allow_thermal_headroom_thresholds") @NonNull public java.util.Map getThermalHeadroomThresholds(); - method public boolean isAllowedInLowPowerStandby(int); - method public boolean isAllowedInLowPowerStandby(@NonNull String); - method public boolean isBatteryDischargePredictionPersonalized(); - method public boolean isDeviceIdleMode(); - method public boolean isDeviceLightIdleMode(); - method public boolean isExemptFromLowPowerStandby(); - method public boolean isIgnoringBatteryOptimizations(String); - method public boolean isInteractive(); - method public boolean isLowPowerStandbyEnabled(); - method public boolean isPowerSaveMode(); - method @Deprecated public boolean isRebootingUserspaceSupported(); - method @Deprecated public boolean isScreenOn(); - method public boolean isSustainedPerformanceModeSupported(); - method public boolean isWakeLockLevelSupported(int); - method public android.os.PowerManager.WakeLock newWakeLock(int, String); - method @RequiresPermission(android.Manifest.permission.REBOOT) public void reboot(@Nullable String); - method @FlaggedApi("android.os.allow_thermal_thresholds_callback") public void removeThermalHeadroomListener(@NonNull android.os.PowerManager.OnThermalHeadroomChangedListener); - method public void removeThermalStatusListener(@NonNull android.os.PowerManager.OnThermalStatusChangedListener); - field @Deprecated @RequiresPermission(value=android.Manifest.permission.TURN_SCREEN_ON, conditional=true) public static final int ACQUIRE_CAUSES_WAKEUP = 268435456; // 0x10000000 - field public static final String ACTION_DEVICE_IDLE_MODE_CHANGED = "android.os.action.DEVICE_IDLE_MODE_CHANGED"; - field public static final String ACTION_DEVICE_LIGHT_IDLE_MODE_CHANGED = "android.os.action.LIGHT_DEVICE_IDLE_MODE_CHANGED"; - field public static final String ACTION_LOW_POWER_STANDBY_ENABLED_CHANGED = "android.os.action.LOW_POWER_STANDBY_ENABLED_CHANGED"; - field public static final String ACTION_LOW_POWER_STANDBY_POLICY_CHANGED = "android.os.action.LOW_POWER_STANDBY_POLICY_CHANGED"; - field public static final String ACTION_POWER_SAVE_MODE_CHANGED = "android.os.action.POWER_SAVE_MODE_CHANGED"; - field public static final String FEATURE_WAKE_ON_LAN_IN_LOW_POWER_STANDBY = "com.android.lowpowerstandby.WAKE_ON_LAN"; - field @Deprecated public static final int FULL_WAKE_LOCK = 26; // 0x1a - field public static final int LOCATION_MODE_ALL_DISABLED_WHEN_SCREEN_OFF = 2; // 0x2 - field public static final int LOCATION_MODE_FOREGROUND_ONLY = 3; // 0x3 - field public static final int LOCATION_MODE_GPS_DISABLED_WHEN_SCREEN_OFF = 1; // 0x1 - field public static final int LOCATION_MODE_NO_CHANGE = 0; // 0x0 - field public static final int LOCATION_MODE_THROTTLE_REQUESTS_WHEN_SCREEN_OFF = 4; // 0x4 - field public static final int LOW_POWER_STANDBY_ALLOWED_REASON_ONGOING_CALL = 4; // 0x4 - field public static final int LOW_POWER_STANDBY_ALLOWED_REASON_TEMP_POWER_SAVE_ALLOWLIST = 2; // 0x2 - field public static final int LOW_POWER_STANDBY_ALLOWED_REASON_VOICE_INTERACTION = 1; // 0x1 - field public static final int ON_AFTER_RELEASE = 536870912; // 0x20000000 - field public static final int PARTIAL_WAKE_LOCK = 1; // 0x1 - field public static final int PROXIMITY_SCREEN_OFF_WAKE_LOCK = 32; // 0x20 - field public static final int RELEASE_FLAG_WAIT_FOR_NO_PROXIMITY = 1; // 0x1 - field @Deprecated public static final int SCREEN_BRIGHT_WAKE_LOCK = 10; // 0xa - field @Deprecated public static final int SCREEN_DIM_WAKE_LOCK = 6; // 0x6 - field public static final int THERMAL_STATUS_CRITICAL = 4; // 0x4 - field public static final int THERMAL_STATUS_EMERGENCY = 5; // 0x5 - field public static final int THERMAL_STATUS_LIGHT = 1; // 0x1 - field public static final int THERMAL_STATUS_MODERATE = 2; // 0x2 - field public static final int THERMAL_STATUS_NONE = 0; // 0x0 - field public static final int THERMAL_STATUS_SEVERE = 3; // 0x3 - field public static final int THERMAL_STATUS_SHUTDOWN = 6; // 0x6 - } - - @FlaggedApi("android.os.allow_thermal_thresholds_callback") public static interface PowerManager.OnThermalHeadroomChangedListener { - method public void onThermalHeadroomChanged(@FloatRange(from=0.0f) float, @FloatRange(from=0.0f) float, @IntRange(from=0) int, @NonNull java.util.Map); - } - - public static interface PowerManager.OnThermalStatusChangedListener { - method public void onThermalStatusChanged(int); - } - - public final class PowerManager.WakeLock { - method public void acquire(); - method public void acquire(long); - method public boolean isHeld(); - method public void release(); - method public void release(int); - method public void setReferenceCounted(boolean); - method public void setStateListener(@NonNull java.util.concurrent.Executor, @Nullable android.os.PowerManager.WakeLockStateListener); - method public void setWorkSource(android.os.WorkSource); - } - - public static interface PowerManager.WakeLockStateListener { - method public void onStateChanged(boolean); - } - - @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public final class PowerMonitor implements android.os.Parcelable { - method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public int describeContents(); - method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") @NonNull public String getName(); - method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public int getType(); - method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public void writeToParcel(@NonNull android.os.Parcel, int); - field @FlaggedApi("com.android.server.power.optimization.power_monitor_api") @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public static final int POWER_MONITOR_TYPE_CONSUMER = 0; // 0x0 - field @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public static final int POWER_MONITOR_TYPE_MEASUREMENT = 1; // 0x1 - } - - @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public final class PowerMonitorReadings { - method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public long getConsumedEnergy(@NonNull android.os.PowerMonitor); - method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public long getTimestampMillis(@NonNull android.os.PowerMonitor); - field @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public static final int ENERGY_UNAVAILABLE = -1; // 0xffffffff - } - - public class Process { - ctor public Process(); - method public static final int getAppUidForSdkSandboxUid(int); - method public static final long getElapsedCpuTime(); - method public static final int[] getExclusiveCores(); - method public static final int getGidForName(String); - method @FlaggedApi("com.android.sdksandbox.flags.sdk_sandbox_uid_to_app_uid_api") public static final int getSdkSandboxUidForAppUid(int); - method public static long getStartElapsedRealtime(); - method public static long getStartRequestedElapsedRealtime(); - method public static long getStartRequestedUptimeMillis(); - method public static long getStartUptimeMillis(); - method @IntRange(from=0xffffffec, to=android.os.Process.THREAD_PRIORITY_LOWEST) public static final int getThreadPriority(int) throws java.lang.IllegalArgumentException; - method public static final int getUidForName(String); - method public static final boolean is64Bit(); - method public static boolean isApplicationUid(int); - method public static final boolean isIsolated(); - method public static final boolean isIsolatedUid(int); - method public static final boolean isSdkSandbox(); - method public static final boolean isSdkSandboxUid(int); - method public static final void killProcess(int); - method public static final int myPid(); - method @NonNull public static String myProcessName(); - method public static final int myTid(); - method public static final int myUid(); - method public static android.os.UserHandle myUserHandle(); - method public static final void sendSignal(int, int); - method public static final void setThreadPriority(int, @IntRange(from=0xffffffec, to=android.os.Process.THREAD_PRIORITY_LOWEST) int) throws java.lang.IllegalArgumentException, java.lang.SecurityException; - method public static final void setThreadPriority(@IntRange(from=0xffffffec, to=android.os.Process.THREAD_PRIORITY_LOWEST) int) throws java.lang.IllegalArgumentException, java.lang.SecurityException; - method @Deprecated public static final boolean supportsProcesses(); - field public static final int BLUETOOTH_UID = 1002; // 0x3ea - field public static final int FIRST_APPLICATION_UID = 10000; // 0x2710 - field public static final int INVALID_PID = -1; // 0xffffffff - field public static final int INVALID_UID = -1; // 0xffffffff - field public static final int LAST_APPLICATION_UID = 19999; // 0x4e1f - field public static final int PHONE_UID = 1001; // 0x3e9 - field public static final int ROOT_UID = 0; // 0x0 - field public static final int SHELL_UID = 2000; // 0x7d0 - field public static final int SIGNAL_KILL = 9; // 0x9 - field public static final int SIGNAL_QUIT = 3; // 0x3 - field public static final int SIGNAL_USR1 = 10; // 0xa - field public static final int SYSTEM_UID = 1000; // 0x3e8 - field public static final int THREAD_PRIORITY_AUDIO = -16; // 0xfffffff0 - field public static final int THREAD_PRIORITY_BACKGROUND = 10; // 0xa - field public static final int THREAD_PRIORITY_DEFAULT = 0; // 0x0 - field public static final int THREAD_PRIORITY_DISPLAY = -4; // 0xfffffffc - field public static final int THREAD_PRIORITY_FOREGROUND = -2; // 0xfffffffe - field public static final int THREAD_PRIORITY_LESS_FAVORABLE = 1; // 0x1 - field public static final int THREAD_PRIORITY_LOWEST = 19; // 0x13 - field public static final int THREAD_PRIORITY_MORE_FAVORABLE = -1; // 0xffffffff - field public static final int THREAD_PRIORITY_URGENT_AUDIO = -19; // 0xffffffed - field public static final int THREAD_PRIORITY_URGENT_DISPLAY = -8; // 0xfffffff8 - field public static final int THREAD_PRIORITY_VIDEO = -10; // 0xfffffff6 - field public static final int WIFI_UID = 1010; // 0x3f2 - } - - public abstract class ProxyFileDescriptorCallback { - ctor public ProxyFileDescriptorCallback(); - method public void onFsync() throws android.system.ErrnoException; - method public long onGetSize() throws android.system.ErrnoException; - method public int onRead(long, int, byte[]) throws android.system.ErrnoException; - method public abstract void onRelease(); - method public int onWrite(long, int, byte[]) throws android.system.ErrnoException; - } - - public class RecoverySystem { - method @RequiresPermission("android.permission.RECOVERY") public static void installPackage(android.content.Context, java.io.File) throws java.io.IOException; - method public static void rebootWipeCache(android.content.Context) throws java.io.IOException; - method public static void rebootWipeUserData(android.content.Context) throws java.io.IOException; - method public static void verifyPackage(java.io.File, android.os.RecoverySystem.ProgressListener, java.io.File) throws java.security.GeneralSecurityException, java.io.IOException; - } - - public static interface RecoverySystem.ProgressListener { - method public void onProgress(int); - } - - public class RemoteCallbackList { - ctor public RemoteCallbackList(); - method public int beginBroadcast(); - method @FlaggedApi("android.os.binder_frozen_state_change_callback") public void broadcast(@NonNull java.util.function.Consumer); - method public void finishBroadcast(); - method public Object getBroadcastCookie(int); - method public E getBroadcastItem(int); - method @FlaggedApi("android.os.binder_frozen_state_change_callback") @Nullable public java.util.concurrent.Executor getExecutor(); - method @FlaggedApi("android.os.binder_frozen_state_change_callback") public int getFrozenCalleePolicy(); - method @FlaggedApi("android.os.binder_frozen_state_change_callback") public int getMaxQueueSize(); - method public Object getRegisteredCallbackCookie(int); - method public int getRegisteredCallbackCount(); - method public E getRegisteredCallbackItem(int); - method public void kill(); - method public void onCallbackDied(E); - method public void onCallbackDied(E, Object); - method public boolean register(E); - method public boolean register(E, Object); - method public boolean unregister(E); - field @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final int FROZEN_CALLEE_POLICY_DROP = 3; // 0x3 - field @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final int FROZEN_CALLEE_POLICY_ENQUEUE_ALL = 1; // 0x1 - field @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final int FROZEN_CALLEE_POLICY_ENQUEUE_MOST_RECENT = 2; // 0x2 - field @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final int FROZEN_CALLEE_POLICY_UNSET = 0; // 0x0 - } - - @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final class RemoteCallbackList.Builder { - ctor public RemoteCallbackList.Builder(int); - method @NonNull public android.os.RemoteCallbackList build(); - method @NonNull public android.os.RemoteCallbackList.Builder setExecutor(@NonNull java.util.concurrent.Executor); - method @NonNull public android.os.RemoteCallbackList.Builder setInterfaceDiedCallback(@NonNull android.os.RemoteCallbackList.Builder.InterfaceDiedCallback); - method @NonNull public android.os.RemoteCallbackList.Builder setMaxQueueSize(int); - } - - @FlaggedApi("android.os.binder_frozen_state_change_callback") public static interface RemoteCallbackList.Builder.InterfaceDiedCallback { - method public void onInterfaceDied(@NonNull android.os.RemoteCallbackList, E, @Nullable Object); - } - - public class RemoteException extends android.util.AndroidException { - ctor public RemoteException(); - ctor public RemoteException(String); - method @NonNull public RuntimeException rethrowAsRuntimeException(); - method @NonNull public RuntimeException rethrowFromSystemServer(); - } - - public class ResultReceiver implements android.os.Parcelable { - ctor public ResultReceiver(android.os.Handler); - method public int describeContents(); - method protected void onReceiveResult(int, android.os.Bundle); - method public void send(int, android.os.Bundle); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.os.security_state_service") public class SecurityStateManager { - method @FlaggedApi("android.os.security_state_service") @NonNull public android.os.Bundle getGlobalSecurityState(); - field public static final String KEY_KERNEL_VERSION = "kernel_version"; - field public static final String KEY_SYSTEM_SPL = "system_spl"; - field public static final String KEY_VENDOR_SPL = "vendor_spl"; - } - - public final class SharedMemory implements java.io.Closeable android.os.Parcelable { - method public void close(); - method @NonNull public static android.os.SharedMemory create(@Nullable String, int) throws android.system.ErrnoException; - method public int describeContents(); - method @NonNull public static android.os.SharedMemory fromFileDescriptor(@NonNull android.os.ParcelFileDescriptor); - method public int getSize(); - method @NonNull public java.nio.ByteBuffer map(int, int, int) throws android.system.ErrnoException; - method @NonNull public java.nio.ByteBuffer mapReadOnly() throws android.system.ErrnoException; - method @NonNull public java.nio.ByteBuffer mapReadWrite() throws android.system.ErrnoException; - method public boolean setProtect(int); - method public static void unmap(@NonNull java.nio.ByteBuffer); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class StatFs { - ctor public StatFs(String); - method @Deprecated public int getAvailableBlocks(); - method public long getAvailableBlocksLong(); - method public long getAvailableBytes(); - method @Deprecated public int getBlockCount(); - method public long getBlockCountLong(); - method @Deprecated public int getBlockSize(); - method public long getBlockSizeLong(); - method @Deprecated public int getFreeBlocks(); - method public long getFreeBlocksLong(); - method public long getFreeBytes(); - method public long getTotalBytes(); - method public void restat(String); - } - - public final class StrictMode { - method public static android.os.StrictMode.ThreadPolicy allowThreadDiskReads(); - method public static android.os.StrictMode.ThreadPolicy allowThreadDiskWrites(); - method public static void enableDefaults(); - method public static android.os.StrictMode.ThreadPolicy getThreadPolicy(); - method public static android.os.StrictMode.VmPolicy getVmPolicy(); - method public static void noteSlowCall(String); - method public static void setThreadPolicy(android.os.StrictMode.ThreadPolicy); - method public static void setVmPolicy(android.os.StrictMode.VmPolicy); - } - - public static interface StrictMode.OnThreadViolationListener { - method public void onThreadViolation(android.os.strictmode.Violation); - } - - public static interface StrictMode.OnVmViolationListener { - method public void onVmViolation(android.os.strictmode.Violation); - } - - public static final class StrictMode.ThreadPolicy { - field public static final android.os.StrictMode.ThreadPolicy LAX; - } - - public static final class StrictMode.ThreadPolicy.Builder { - ctor public StrictMode.ThreadPolicy.Builder(); - ctor public StrictMode.ThreadPolicy.Builder(android.os.StrictMode.ThreadPolicy); - method public android.os.StrictMode.ThreadPolicy build(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectAll(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectCustomSlowCalls(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectDiskReads(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectDiskWrites(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectExplicitGc(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectNetwork(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectResourceMismatches(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectUnbufferedIo(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyDeath(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyDeathOnNetwork(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyDialog(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyDropBox(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyFlashScreen(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.StrictMode.OnThreadViolationListener); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyLog(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitAll(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitCustomSlowCalls(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitDiskReads(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitDiskWrites(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitExplicitGc(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitNetwork(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitResourceMismatches(); - method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitUnbufferedIo(); - } - - public static final class StrictMode.VmPolicy { - field public static final android.os.StrictMode.VmPolicy LAX; - } - - public static final class StrictMode.VmPolicy.Builder { - ctor public StrictMode.VmPolicy.Builder(); - ctor public StrictMode.VmPolicy.Builder(android.os.StrictMode.VmPolicy); - method public android.os.StrictMode.VmPolicy build(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectActivityLeaks(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectAll(); - method @FlaggedApi("com.android.window.flags.bal_strict_mode_ro") @NonNull public android.os.StrictMode.VmPolicy.Builder detectBlockedBackgroundActivityLaunch(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectCleartextNetwork(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectContentUriWithoutPermission(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectCredentialProtectedWhileLocked(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectFileUriExposure(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectImplicitDirectBoot(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectIncorrectContextUse(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectLeakedClosableObjects(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectLeakedRegistrationObjects(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectLeakedSqlLiteObjects(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectNonSdkApiUsage(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectUnsafeIntentLaunch(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder detectUntaggedSockets(); - method @FlaggedApi("com.android.window.flags.bal_strict_mode_ro") @NonNull public android.os.StrictMode.VmPolicy.Builder ignoreBlockedBackgroundActivityLaunch(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyDeath(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyDeathOnCleartextNetwork(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyDeathOnFileUriExposure(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyDropBox(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.StrictMode.OnVmViolationListener); - method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyLog(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder permitNonSdkApiUsage(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder permitUnsafeIntentLaunch(); - method @NonNull public android.os.StrictMode.VmPolicy.Builder setClassInstanceLimit(Class, int); - } - - public final class SystemClock { - method @NonNull public static java.time.Clock currentGnssTimeClock(); - method @NonNull public static java.time.Clock currentNetworkTimeClock(); - method public static long currentThreadTimeMillis(); - method public static long elapsedRealtime(); - method public static long elapsedRealtimeNanos(); - method public static boolean setCurrentTimeMillis(long); - method public static void sleep(long); - method public static long uptimeMillis(); - method @FlaggedApi("android.os.adpf_gpu_report_actual_work_duration") public static long uptimeNanos(); - } - - public class TestLooperManager { - method public void execute(android.os.Message); - method public android.os.MessageQueue getMessageQueue(); - method public boolean hasMessages(android.os.Handler, Object, int); - method public boolean hasMessages(android.os.Handler, Object, Runnable); - method @FlaggedApi("android.os.message_queue_testability") public boolean isBlockedOnSyncBarrier(); - method public android.os.Message next(); - method @FlaggedApi("android.os.message_queue_testability") @Nullable public Long peekWhen(); - method @FlaggedApi("android.os.message_queue_testability") @Nullable public android.os.Message poll(); - method public void recycle(android.os.Message); - method public void release(); - } - - public abstract class TokenWatcher { - ctor public TokenWatcher(android.os.Handler, String); - method public void acquire(android.os.IBinder, String); - method public abstract void acquired(); - method public void cleanup(android.os.IBinder, boolean); - method public void dump(); - method public void dump(java.io.PrintWriter); - method public boolean isAcquired(); - method public void release(android.os.IBinder); - method public abstract void released(); - } - - public final class Trace { - method public static void beginAsyncSection(@NonNull String, int); - method public static void beginSection(@NonNull String); - method public static void endAsyncSection(@NonNull String, int); - method public static void endSection(); - method public static boolean isEnabled(); - method public static void setCounter(@NonNull String, long); - } - - public class TransactionTooLargeException extends android.os.RemoteException { - ctor public TransactionTooLargeException(); - ctor public TransactionTooLargeException(String); - } - - public final class UserHandle implements android.os.Parcelable { - ctor public UserHandle(android.os.Parcel); - method public int describeContents(); - method public static android.os.UserHandle getUserHandleForUid(int); - method public static android.os.UserHandle readFromParcel(android.os.Parcel); - method public void writeToParcel(android.os.Parcel, int); - method public static void writeToParcel(android.os.UserHandle, android.os.Parcel); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class UserManager { - method public static android.content.Intent createUserCreationIntent(@Nullable String, @Nullable String, @Nullable String, @Nullable android.os.PersistableBundle); - method @WorkerThread public android.os.Bundle getApplicationRestrictions(String); - method public long getSerialNumberForUser(android.os.UserHandle); - method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.CREATE_USERS"}) public int getUserCount(); - method public long getUserCreationTime(android.os.UserHandle); - method public android.os.UserHandle getUserForSerialNumber(long); - method @NonNull @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.CREATE_USERS", "android.permission.QUERY_USERS", android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public String getUserName(); - method public java.util.List getUserProfiles(); - method public android.os.Bundle getUserRestrictions(); - method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public android.os.Bundle getUserRestrictions(android.os.UserHandle); - method public boolean hasUserRestriction(String); - method public boolean isAdminUser(); - method @FlaggedApi("android.multiuser.support_communal_profile") public boolean isCommunalProfile(); - method public boolean isDemoUser(); - method @FlaggedApi("android.multiuser.support_communal_profile_nextgen") public boolean isForegroundUserAdmin(); - method public static boolean isHeadlessSystemUserMode(); - method public boolean isManagedProfile(); - method public boolean isProfile(); - method public boolean isQuietModeEnabled(android.os.UserHandle); - method public boolean isSystemUser(); - method public boolean isUserAGoat(); - method public boolean isUserForeground(); - method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public boolean isUserRunning(android.os.UserHandle); - method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public boolean isUserRunningOrStopping(android.os.UserHandle); - method public boolean isUserUnlocked(); - method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public boolean isUserUnlocked(android.os.UserHandle); - method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.MODIFY_QUIET_MODE"}, conditional=true) public boolean requestQuietModeEnabled(boolean, @NonNull android.os.UserHandle); - method public boolean requestQuietModeEnabled(boolean, @NonNull android.os.UserHandle, int); - method @Deprecated public boolean setRestrictionsChallenge(String); - method @Deprecated @RequiresPermission("android.permission.MANAGE_USERS") public void setUserRestriction(String, boolean); - method @Deprecated public void setUserRestrictions(android.os.Bundle); - method @Deprecated public void setUserRestrictions(android.os.Bundle, android.os.UserHandle); - method public static boolean supportsMultipleUsers(); - field public static final String ALLOW_PARENT_PROFILE_APP_LINKING = "allow_parent_profile_app_linking"; - field @Deprecated public static final String DISALLOW_ADD_MANAGED_PROFILE = "no_add_managed_profile"; - field @FlaggedApi("android.os.allow_private_profile") public static final String DISALLOW_ADD_PRIVATE_PROFILE = "no_add_private_profile"; - field public static final String DISALLOW_ADD_USER = "no_add_user"; - field public static final String DISALLOW_ADD_WIFI_CONFIG = "no_add_wifi_config"; - field public static final String DISALLOW_ADJUST_VOLUME = "no_adjust_volume"; - field public static final String DISALLOW_AIRPLANE_MODE = "no_airplane_mode"; - field public static final String DISALLOW_AMBIENT_DISPLAY = "no_ambient_display"; - field public static final String DISALLOW_APPS_CONTROL = "no_control_apps"; - field public static final String DISALLOW_ASSIST_CONTENT = "no_assist_content"; - field public static final String DISALLOW_AUTOFILL = "no_autofill"; - field public static final String DISALLOW_BLUETOOTH = "no_bluetooth"; - field public static final String DISALLOW_BLUETOOTH_SHARING = "no_bluetooth_sharing"; - field public static final String DISALLOW_CAMERA_TOGGLE = "disallow_camera_toggle"; - field public static final String DISALLOW_CELLULAR_2G = "no_cellular_2g"; - field @FlaggedApi("android.nfc.enable_nfc_user_restriction") public static final String DISALLOW_CHANGE_NEAR_FIELD_COMMUNICATION_RADIO = "no_change_near_field_communication_radio"; - field public static final String DISALLOW_CHANGE_WIFI_STATE = "no_change_wifi_state"; - field public static final String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth"; - field public static final String DISALLOW_CONFIG_BRIGHTNESS = "no_config_brightness"; - field public static final String DISALLOW_CONFIG_CELL_BROADCASTS = "no_config_cell_broadcasts"; - field public static final String DISALLOW_CONFIG_CREDENTIALS = "no_config_credentials"; - field public static final String DISALLOW_CONFIG_DATE_TIME = "no_config_date_time"; - field public static final String DISALLOW_CONFIG_DEFAULT_APPS = "disallow_config_default_apps"; - field public static final String DISALLOW_CONFIG_LOCALE = "no_config_locale"; - field public static final String DISALLOW_CONFIG_LOCATION = "no_config_location"; - field public static final String DISALLOW_CONFIG_MOBILE_NETWORKS = "no_config_mobile_networks"; - field public static final String DISALLOW_CONFIG_PRIVATE_DNS = "disallow_config_private_dns"; - field public static final String DISALLOW_CONFIG_SCREEN_TIMEOUT = "no_config_screen_timeout"; - field public static final String DISALLOW_CONFIG_TETHERING = "no_config_tethering"; - field public static final String DISALLOW_CONFIG_VPN = "no_config_vpn"; - field public static final String DISALLOW_CONFIG_WIFI = "no_config_wifi"; - field public static final String DISALLOW_CONTENT_CAPTURE = "no_content_capture"; - field public static final String DISALLOW_CONTENT_SUGGESTIONS = "no_content_suggestions"; - field public static final String DISALLOW_CREATE_WINDOWS = "no_create_windows"; - field public static final String DISALLOW_CROSS_PROFILE_COPY_PASTE = "no_cross_profile_copy_paste"; - field public static final String DISALLOW_DATA_ROAMING = "no_data_roaming"; - field public static final String DISALLOW_DEBUGGING_FEATURES = "no_debugging_features"; - field public static final String DISALLOW_FACTORY_RESET = "no_factory_reset"; - field public static final String DISALLOW_FUN = "no_fun"; - field public static final String DISALLOW_GRANT_ADMIN = "no_grant_admin"; - field public static final String DISALLOW_INSTALL_APPS = "no_install_apps"; - field public static final String DISALLOW_INSTALL_UNKNOWN_SOURCES = "no_install_unknown_sources"; - field public static final String DISALLOW_INSTALL_UNKNOWN_SOURCES_GLOBALLY = "no_install_unknown_sources_globally"; - field public static final String DISALLOW_MICROPHONE_TOGGLE = "disallow_microphone_toggle"; - field public static final String DISALLOW_MODIFY_ACCOUNTS = "no_modify_accounts"; - field public static final String DISALLOW_MOUNT_PHYSICAL_MEDIA = "no_physical_media"; - field @FlaggedApi("android.nfc.enable_nfc_user_restriction") public static final String DISALLOW_NEAR_FIELD_COMMUNICATION_RADIO = "no_near_field_communication_radio"; - field public static final String DISALLOW_NETWORK_RESET = "no_network_reset"; - field public static final String DISALLOW_OUTGOING_BEAM = "no_outgoing_beam"; - field public static final String DISALLOW_OUTGOING_CALLS = "no_outgoing_calls"; - field public static final String DISALLOW_PRINTING = "no_printing"; - field @Deprecated public static final String DISALLOW_REMOVE_MANAGED_PROFILE = "no_remove_managed_profile"; - field public static final String DISALLOW_REMOVE_USER = "no_remove_user"; - field public static final String DISALLOW_SAFE_BOOT = "no_safe_boot"; - field public static final String DISALLOW_SET_USER_ICON = "no_set_user_icon"; - field public static final String DISALLOW_SET_WALLPAPER = "no_set_wallpaper"; - field public static final String DISALLOW_SHARE_INTO_MANAGED_PROFILE = "no_sharing_into_profile"; - field public static final String DISALLOW_SHARE_LOCATION = "no_share_location"; - field public static final String DISALLOW_SHARING_ADMIN_CONFIGURED_WIFI = "no_sharing_admin_configured_wifi"; - field public static final String DISALLOW_SIM_GLOBALLY = "no_sim_globally"; - field public static final String DISALLOW_SMS = "no_sms"; - field public static final String DISALLOW_SYSTEM_ERROR_DIALOGS = "no_system_error_dialogs"; - field @FlaggedApi("com.android.net.thread.platform.flags.thread_user_restriction_enabled") public static final String DISALLOW_THREAD_NETWORK = "no_thread_network"; - field public static final String DISALLOW_ULTRA_WIDEBAND_RADIO = "no_ultra_wideband_radio"; - field public static final String DISALLOW_UNIFIED_PASSWORD = "no_unified_password"; - field public static final String DISALLOW_UNINSTALL_APPS = "no_uninstall_apps"; - field public static final String DISALLOW_UNMUTE_MICROPHONE = "no_unmute_microphone"; - field public static final String DISALLOW_USB_FILE_TRANSFER = "no_usb_file_transfer"; - field public static final String DISALLOW_USER_SWITCH = "no_user_switch"; - field public static final String DISALLOW_WIFI_DIRECT = "no_wifi_direct"; - field public static final String DISALLOW_WIFI_TETHERING = "no_wifi_tethering"; - field public static final String ENSURE_VERIFY_APPS = "ensure_verify_apps"; - field public static final String KEY_RESTRICTIONS_PENDING = "restrictions_pending"; - field public static final int QUIET_MODE_DISABLE_ONLY_IF_CREDENTIAL_NOT_REQUIRED = 1; // 0x1 - field public static final int USER_CREATION_FAILED_NOT_PERMITTED = 1; // 0x1 - field public static final int USER_CREATION_FAILED_NO_MORE_USERS = 2; // 0x2 - field public static final int USER_OPERATION_ERROR_CURRENT_USER = 4; // 0x4 - field public static final int USER_OPERATION_ERROR_LOW_STORAGE = 5; // 0x5 - field public static final int USER_OPERATION_ERROR_MANAGED_PROFILE = 2; // 0x2 - field public static final int USER_OPERATION_ERROR_MAX_RUNNING_USERS = 3; // 0x3 - field public static final int USER_OPERATION_ERROR_MAX_USERS = 6; // 0x6 - field public static final int USER_OPERATION_ERROR_UNKNOWN = 1; // 0x1 - field public static final int USER_OPERATION_SUCCESS = 0; // 0x0 - field @FlaggedApi("android.os.allow_private_profile") public static final String USER_TYPE_PROFILE_CLONE = "android.os.usertype.profile.CLONE"; - field @FlaggedApi("android.os.allow_private_profile") public static final String USER_TYPE_PROFILE_MANAGED = "android.os.usertype.profile.MANAGED"; - field @FlaggedApi("android.os.allow_private_profile") public static final String USER_TYPE_PROFILE_PRIVATE = "android.os.usertype.profile.PRIVATE"; - } - - public static class UserManager.UserOperationException extends java.lang.RuntimeException { - method public int getUserOperationResult(); - } - - public final class VibrationAttributes implements android.os.Parcelable { - method @NonNull public static android.os.VibrationAttributes createForUsage(int); - method public int describeContents(); - method public int getFlags(); - method public int getUsage(); - method public int getUsageClass(); - method public boolean isFlagSet(int); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 1; // 0x1 - field public static final int USAGE_ACCESSIBILITY = 66; // 0x42 - field public static final int USAGE_ALARM = 17; // 0x11 - field public static final int USAGE_CLASS_ALARM = 1; // 0x1 - field public static final int USAGE_CLASS_FEEDBACK = 2; // 0x2 - field public static final int USAGE_CLASS_MASK = 15; // 0xf - field public static final int USAGE_CLASS_MEDIA = 3; // 0x3 - field public static final int USAGE_CLASS_UNKNOWN = 0; // 0x0 - field public static final int USAGE_COMMUNICATION_REQUEST = 65; // 0x41 - field public static final int USAGE_HARDWARE_FEEDBACK = 50; // 0x32 - field @FlaggedApi("android.os.vibrator.vibration_attribute_ime_usage_api") public static final int USAGE_IME_FEEDBACK = 82; // 0x52 - field public static final int USAGE_MEDIA = 19; // 0x13 - field public static final int USAGE_NOTIFICATION = 49; // 0x31 - field public static final int USAGE_PHYSICAL_EMULATION = 34; // 0x22 - field public static final int USAGE_RINGTONE = 33; // 0x21 - field public static final int USAGE_TOUCH = 18; // 0x12 - field public static final int USAGE_UNKNOWN = 0; // 0x0 - } - - public static final class VibrationAttributes.Builder { - ctor public VibrationAttributes.Builder(); - ctor public VibrationAttributes.Builder(@Nullable android.os.VibrationAttributes); - ctor public VibrationAttributes.Builder(@NonNull android.media.AudioAttributes); - method @NonNull public android.os.VibrationAttributes build(); - method @NonNull public android.os.VibrationAttributes.Builder setFlags(int, int); - method @NonNull public android.os.VibrationAttributes.Builder setUsage(int); - } - - public abstract class VibrationEffect implements android.os.Parcelable { - method public static android.os.VibrationEffect createOneShot(long, int); - method @NonNull public static android.os.VibrationEffect createPredefined(int); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public static android.os.VibrationEffect createRepeatingEffect(@NonNull android.os.VibrationEffect); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public static android.os.VibrationEffect createRepeatingEffect(@NonNull android.os.VibrationEffect, @NonNull android.os.VibrationEffect); - method public static android.os.VibrationEffect createWaveform(long[], int); - method public static android.os.VibrationEffect createWaveform(long[], int[], int); - method public int describeContents(); - method @NonNull public static android.os.VibrationEffect.Composition startComposition(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DEFAULT_AMPLITUDE = -1; // 0xffffffff - field public static final int EFFECT_CLICK = 0; // 0x0 - field public static final int EFFECT_DOUBLE_CLICK = 1; // 0x1 - field public static final int EFFECT_HEAVY_CLICK = 5; // 0x5 - field public static final int EFFECT_TICK = 2; // 0x2 - } - - @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public static final class VibrationEffect.BasicEnvelopeBuilder { - ctor public VibrationEffect.BasicEnvelopeBuilder(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect.BasicEnvelopeBuilder addControlPoint(@FloatRange(from=0, to=1) float, @FloatRange(from=0, to=1) float, long); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect build(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect.BasicEnvelopeBuilder setInitialSharpness(@FloatRange(from=0, to=1) float); - } - - public static final class VibrationEffect.Composition { - method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int); - method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int, @FloatRange(from=0.0f, to=1.0f) float); - method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int, @FloatRange(from=0.0f, to=1.0f) float, @IntRange(from=0) int); - method @FlaggedApi("android.os.vibrator.primitive_composition_absolute_delay") @NonNull public android.os.VibrationEffect.Composition addPrimitive(int, @FloatRange(from=0.0f, to=1.0f) float, @IntRange(from=0) int, int); - method @NonNull public android.os.VibrationEffect compose(); - field @FlaggedApi("android.os.vibrator.primitive_composition_absolute_delay") public static final int DELAY_TYPE_PAUSE = 0; // 0x0 - field @FlaggedApi("android.os.vibrator.primitive_composition_absolute_delay") public static final int DELAY_TYPE_RELATIVE_START_OFFSET = 1; // 0x1 - field public static final int PRIMITIVE_CLICK = 1; // 0x1 - field public static final int PRIMITIVE_LOW_TICK = 8; // 0x8 - field public static final int PRIMITIVE_QUICK_FALL = 6; // 0x6 - field public static final int PRIMITIVE_QUICK_RISE = 4; // 0x4 - field public static final int PRIMITIVE_SLOW_RISE = 5; // 0x5 - field public static final int PRIMITIVE_SPIN = 3; // 0x3 - field public static final int PRIMITIVE_THUD = 2; // 0x2 - field public static final int PRIMITIVE_TICK = 7; // 0x7 - } - - @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public static final class VibrationEffect.WaveformEnvelopeBuilder { - ctor public VibrationEffect.WaveformEnvelopeBuilder(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect.WaveformEnvelopeBuilder addControlPoint(@FloatRange(from=0, to=1) float, @FloatRange(from=0) float, long); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect build(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect.WaveformEnvelopeBuilder setInitialFrequencyHz(@FloatRange(from=0) float); - } - - public abstract class Vibrator { - method public final int areAllEffectsSupported(@NonNull int...); - method public final boolean areAllPrimitivesSupported(@NonNull int...); - method @NonNull public int[] areEffectsSupported(@NonNull int...); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public boolean areEnvelopeEffectsSupported(); - method @NonNull public boolean[] arePrimitivesSupported(@NonNull int...); - method @RequiresPermission(android.Manifest.permission.VIBRATE) public abstract void cancel(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.vibrator.VibratorEnvelopeEffectInfo getEnvelopeEffectInfo(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @Nullable public android.os.vibrator.VibratorFrequencyProfile getFrequencyProfile(); - method public int getId(); - method @NonNull public int[] getPrimitiveDurations(@NonNull int...); - method public float getQFactor(); - method public float getResonantFrequency(); - method public abstract boolean hasAmplitudeControl(); - method public abstract boolean hasVibrator(); - method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(long); - method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(long, android.media.AudioAttributes); - method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(long[], int); - method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(long[], int, android.media.AudioAttributes); - method @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(android.os.VibrationEffect); - method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(android.os.VibrationEffect, android.media.AudioAttributes); - method @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(@NonNull android.os.VibrationEffect, @NonNull android.os.VibrationAttributes); - field public static final int VIBRATION_EFFECT_SUPPORT_NO = 2; // 0x2 - field public static final int VIBRATION_EFFECT_SUPPORT_UNKNOWN = 0; // 0x0 - field public static final int VIBRATION_EFFECT_SUPPORT_YES = 1; // 0x1 - } - - public abstract class VibratorManager { - method @RequiresPermission(android.Manifest.permission.VIBRATE) public abstract void cancel(); - method @NonNull public abstract android.os.Vibrator getDefaultVibrator(); - method @NonNull public abstract android.os.Vibrator getVibrator(int); - method @NonNull public abstract int[] getVibratorIds(); - method @RequiresPermission(android.Manifest.permission.VIBRATE) public final void vibrate(@NonNull android.os.CombinedVibration); - method @RequiresPermission(android.Manifest.permission.VIBRATE) public final void vibrate(@NonNull android.os.CombinedVibration, @Nullable android.os.VibrationAttributes); - } - - @FlaggedApi("android.os.adpf_gpu_report_actual_work_duration") public final class WorkDuration { - ctor public WorkDuration(); - method public long getActualCpuDurationNanos(); - method public long getActualGpuDurationNanos(); - method public long getActualTotalDurationNanos(); - method public long getWorkPeriodStartTimestampNanos(); - method public void setActualCpuDurationNanos(long); - method public void setActualGpuDurationNanos(long); - method public void setActualTotalDurationNanos(long); - method public void setWorkPeriodStartTimestampNanos(long); - } - - public class WorkSource implements android.os.Parcelable { - ctor public WorkSource(); - ctor public WorkSource(android.os.WorkSource); - method public boolean add(android.os.WorkSource); - method public void clear(); - method public int describeContents(); - method public boolean diff(android.os.WorkSource); - method public boolean remove(android.os.WorkSource); - method public void set(android.os.WorkSource); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.os.health { - - public class HealthStats { - method public String getDataType(); - method public long getMeasurement(int); - method public int getMeasurementKeyAt(int); - method public int getMeasurementKeyCount(); - method public java.util.Map getMeasurements(int); - method public int getMeasurementsKeyAt(int); - method public int getMeasurementsKeyCount(); - method public java.util.Map getStats(int); - method public int getStatsKeyAt(int); - method public int getStatsKeyCount(); - method public android.os.health.TimerStat getTimer(int); - method public int getTimerCount(int); - method public int getTimerKeyAt(int); - method public int getTimerKeyCount(); - method public long getTimerTime(int); - method public java.util.Map getTimers(int); - method public int getTimersKeyAt(int); - method public int getTimersKeyCount(); - method public boolean hasMeasurement(int); - method public boolean hasMeasurements(int); - method public boolean hasStats(int); - method public boolean hasTimer(int); - method public boolean hasTimers(int); - } - - public final class PackageHealthStats { - field public static final int MEASUREMENTS_WAKEUP_ALARMS_COUNT = 40002; // 0x9c42 - field public static final int STATS_SERVICES = 40001; // 0x9c41 - } - - public final class PidHealthStats { - field public static final int MEASUREMENT_WAKE_NESTING_COUNT = 20001; // 0x4e21 - field public static final int MEASUREMENT_WAKE_START_MS = 20003; // 0x4e23 - field public static final int MEASUREMENT_WAKE_SUM_MS = 20002; // 0x4e22 - } - - public final class ProcessHealthStats { - field public static final int MEASUREMENT_ANR_COUNT = 30005; // 0x7535 - field public static final int MEASUREMENT_CRASHES_COUNT = 30004; // 0x7534 - field public static final int MEASUREMENT_FOREGROUND_MS = 30006; // 0x7536 - field public static final int MEASUREMENT_STARTS_COUNT = 30003; // 0x7533 - field public static final int MEASUREMENT_SYSTEM_TIME_MS = 30002; // 0x7532 - field public static final int MEASUREMENT_USER_TIME_MS = 30001; // 0x7531 - } - - public final class ServiceHealthStats { - field public static final int MEASUREMENT_LAUNCH_COUNT = 50002; // 0xc352 - field public static final int MEASUREMENT_START_SERVICE_COUNT = 50001; // 0xc351 - } - - public class SystemHealthManager { - method @FlaggedApi("android.os.cpu_gpu_headrooms") @FloatRange(from=0.0f, to=100.0f) public float getCpuHeadroom(@Nullable android.os.CpuHeadroomParams); - method @FlaggedApi("android.os.cpu_gpu_headrooms") public long getCpuHeadroomMinIntervalMillis(); - method @FlaggedApi("android.os.cpu_gpu_headrooms") @FloatRange(from=0.0f, to=100.0f) public float getGpuHeadroom(@Nullable android.os.GpuHeadroomParams); - method @FlaggedApi("android.os.cpu_gpu_headrooms") public long getGpuHeadroomMinIntervalMillis(); - method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public void getPowerMonitorReadings(@NonNull java.util.List, @Nullable java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public void getSupportedPowerMonitors(@Nullable java.util.concurrent.Executor, @NonNull java.util.function.Consumer>); - method public android.os.health.HealthStats takeMyUidSnapshot(); - method public android.os.health.HealthStats takeUidSnapshot(int); - method public android.os.health.HealthStats[] takeUidSnapshots(int[]); - } - - public final class TimerStat implements android.os.Parcelable { - ctor public TimerStat(); - ctor public TimerStat(int, long); - ctor public TimerStat(android.os.Parcel); - method public int describeContents(); - method public int getCount(); - method public long getTime(); - method public void setCount(int); - method public void setTime(long); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class UidHealthStats { - field public static final int MEASUREMENT_BLUETOOTH_IDLE_MS = 10020; // 0x2724 - field public static final int MEASUREMENT_BLUETOOTH_POWER_MAMS = 10023; // 0x2727 - field public static final int MEASUREMENT_BLUETOOTH_RX_BYTES = 10052; // 0x2744 - field public static final int MEASUREMENT_BLUETOOTH_RX_MS = 10021; // 0x2725 - field public static final int MEASUREMENT_BLUETOOTH_RX_PACKETS = 10058; // 0x274a - field public static final int MEASUREMENT_BLUETOOTH_TX_BYTES = 10053; // 0x2745 - field public static final int MEASUREMENT_BLUETOOTH_TX_MS = 10022; // 0x2726 - field public static final int MEASUREMENT_BLUETOOTH_TX_PACKETS = 10059; // 0x274b - field public static final int MEASUREMENT_BUTTON_USER_ACTIVITY_COUNT = 10046; // 0x273e - field @Deprecated public static final int MEASUREMENT_CPU_POWER_MAMS = 10064; // 0x2750 - field public static final int MEASUREMENT_MOBILE_IDLE_MS = 10024; // 0x2728 - field public static final int MEASUREMENT_MOBILE_POWER_MAMS = 10027; // 0x272b - field public static final int MEASUREMENT_MOBILE_RX_BYTES = 10048; // 0x2740 - field public static final int MEASUREMENT_MOBILE_RX_MS = 10025; // 0x2729 - field public static final int MEASUREMENT_MOBILE_RX_PACKETS = 10054; // 0x2746 - field public static final int MEASUREMENT_MOBILE_TX_BYTES = 10049; // 0x2741 - field public static final int MEASUREMENT_MOBILE_TX_MS = 10026; // 0x272a - field public static final int MEASUREMENT_MOBILE_TX_PACKETS = 10055; // 0x2747 - field public static final int MEASUREMENT_OTHER_USER_ACTIVITY_COUNT = 10045; // 0x273d - field public static final int MEASUREMENT_REALTIME_BATTERY_MS = 10001; // 0x2711 - field public static final int MEASUREMENT_REALTIME_SCREEN_OFF_BATTERY_MS = 10003; // 0x2713 - field public static final int MEASUREMENT_SYSTEM_CPU_TIME_MS = 10063; // 0x274f - field public static final int MEASUREMENT_TOUCH_USER_ACTIVITY_COUNT = 10047; // 0x273f - field public static final int MEASUREMENT_UPTIME_BATTERY_MS = 10002; // 0x2712 - field public static final int MEASUREMENT_UPTIME_SCREEN_OFF_BATTERY_MS = 10004; // 0x2714 - field public static final int MEASUREMENT_USER_CPU_TIME_MS = 10062; // 0x274e - field public static final int MEASUREMENT_WIFI_FULL_LOCK_MS = 10029; // 0x272d - field public static final int MEASUREMENT_WIFI_IDLE_MS = 10016; // 0x2720 - field public static final int MEASUREMENT_WIFI_MULTICAST_MS = 10031; // 0x272f - field public static final int MEASUREMENT_WIFI_POWER_MAMS = 10019; // 0x2723 - field public static final int MEASUREMENT_WIFI_RUNNING_MS = 10028; // 0x272c - field public static final int MEASUREMENT_WIFI_RX_BYTES = 10050; // 0x2742 - field public static final int MEASUREMENT_WIFI_RX_MS = 10017; // 0x2721 - field public static final int MEASUREMENT_WIFI_RX_PACKETS = 10056; // 0x2748 - field public static final int MEASUREMENT_WIFI_TX_BYTES = 10051; // 0x2743 - field public static final int MEASUREMENT_WIFI_TX_MS = 10018; // 0x2722 - field public static final int MEASUREMENT_WIFI_TX_PACKETS = 10057; // 0x2749 - field public static final int STATS_PACKAGES = 10015; // 0x271f - field public static final int STATS_PIDS = 10013; // 0x271d - field public static final int STATS_PROCESSES = 10014; // 0x271e - field public static final int TIMERS_JOBS = 10010; // 0x271a - field public static final int TIMERS_SENSORS = 10012; // 0x271c - field public static final int TIMERS_SYNCS = 10009; // 0x2719 - field public static final int TIMERS_WAKELOCKS_DRAW = 10008; // 0x2718 - field public static final int TIMERS_WAKELOCKS_FULL = 10005; // 0x2715 - field public static final int TIMERS_WAKELOCKS_PARTIAL = 10006; // 0x2716 - field public static final int TIMERS_WAKELOCKS_WINDOW = 10007; // 0x2717 - field public static final int TIMER_AUDIO = 10032; // 0x2730 - field public static final int TIMER_BLUETOOTH_SCAN = 10037; // 0x2735 - field public static final int TIMER_CAMERA = 10035; // 0x2733 - field public static final int TIMER_FLASHLIGHT = 10034; // 0x2732 - field public static final int TIMER_FOREGROUND_ACTIVITY = 10036; // 0x2734 - field public static final int TIMER_GPS_SENSOR = 10011; // 0x271b - field public static final int TIMER_MOBILE_RADIO_ACTIVE = 10061; // 0x274d - field public static final int TIMER_PROCESS_STATE_BACKGROUND_MS = 10042; // 0x273a - field public static final int TIMER_PROCESS_STATE_CACHED_MS = 10043; // 0x273b - field public static final int TIMER_PROCESS_STATE_FOREGROUND_MS = 10041; // 0x2739 - field public static final int TIMER_PROCESS_STATE_FOREGROUND_SERVICE_MS = 10039; // 0x2737 - field public static final int TIMER_PROCESS_STATE_TOP_MS = 10038; // 0x2736 - field public static final int TIMER_PROCESS_STATE_TOP_SLEEPING_MS = 10040; // 0x2738 - field public static final int TIMER_VIBRATOR = 10044; // 0x273c - field public static final int TIMER_VIDEO = 10033; // 0x2731 - field public static final int TIMER_WIFI_SCAN = 10030; // 0x272e - } - -} - -package android.os.storage { - - public abstract class OnObbStateChangeListener { - ctor public OnObbStateChangeListener(); - method public void onObbStateChange(String, int); - field public static final int ERROR_ALREADY_MOUNTED = 24; // 0x18 - field public static final int ERROR_COULD_NOT_MOUNT = 21; // 0x15 - field public static final int ERROR_COULD_NOT_UNMOUNT = 22; // 0x16 - field public static final int ERROR_INTERNAL = 20; // 0x14 - field public static final int ERROR_NOT_MOUNTED = 23; // 0x17 - field public static final int ERROR_PERMISSION_DENIED = 25; // 0x19 - field public static final int MOUNTED = 1; // 0x1 - field public static final int UNMOUNTED = 2; // 0x2 - } - - public class StorageManager { - method @WorkerThread public void allocateBytes(@NonNull java.util.UUID, long) throws java.io.IOException; - method @WorkerThread public void allocateBytes(java.io.FileDescriptor, long) throws java.io.IOException; - method @WorkerThread public long getAllocatableBytes(@NonNull java.util.UUID) throws java.io.IOException; - method @WorkerThread public long getCacheQuotaBytes(@NonNull java.util.UUID) throws java.io.IOException; - method @WorkerThread public long getCacheSizeBytes(@NonNull java.util.UUID) throws java.io.IOException; - method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_EXTERNAL_STORAGE) public android.app.PendingIntent getManageSpaceActivityIntent(@NonNull String, int); - method public String getMountedObbPath(String); - method @NonNull public android.os.storage.StorageVolume getPrimaryStorageVolume(); - method @NonNull public java.util.List getRecentStorageVolumes(); - method @Nullable public android.os.storage.StorageVolume getStorageVolume(@NonNull java.io.File); - method @NonNull public android.os.storage.StorageVolume getStorageVolume(@NonNull android.net.Uri); - method @NonNull public java.util.List getStorageVolumes(); - method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_EXTERNAL_STORAGE) public java.util.List getStorageVolumesIncludingSharedProfiles(); - method @NonNull public java.util.UUID getUuidForPath(@NonNull java.io.File) throws java.io.IOException; - method public boolean isAllocationSupported(@NonNull java.io.FileDescriptor); - method public boolean isCacheBehaviorGroup(java.io.File) throws java.io.IOException; - method public boolean isCacheBehaviorTombstone(java.io.File) throws java.io.IOException; - method public boolean isCheckpointSupported(); - method public boolean isEncrypted(java.io.File); - method public boolean isObbMounted(String); - method public boolean mountObb(String, String, android.os.storage.OnObbStateChangeListener); - method @NonNull public android.os.ParcelFileDescriptor openProxyFileDescriptor(int, android.os.ProxyFileDescriptorCallback, android.os.Handler) throws java.io.IOException; - method public void registerStorageVolumeCallback(@NonNull java.util.concurrent.Executor, @NonNull android.os.storage.StorageManager.StorageVolumeCallback); - method public void setCacheBehaviorGroup(java.io.File, boolean) throws java.io.IOException; - method public void setCacheBehaviorTombstone(java.io.File, boolean) throws java.io.IOException; - method public boolean unmountObb(String, boolean, android.os.storage.OnObbStateChangeListener); - method public void unregisterStorageVolumeCallback(@NonNull android.os.storage.StorageManager.StorageVolumeCallback); - field @RequiresPermission(android.Manifest.permission.MANAGE_EXTERNAL_STORAGE) public static final String ACTION_CLEAR_APP_CACHE = "android.os.storage.action.CLEAR_APP_CACHE"; - field public static final String ACTION_MANAGE_STORAGE = "android.os.storage.action.MANAGE_STORAGE"; - field public static final String EXTRA_REQUESTED_BYTES = "android.os.storage.extra.REQUESTED_BYTES"; - field public static final String EXTRA_UUID = "android.os.storage.extra.UUID"; - field public static final java.util.UUID UUID_DEFAULT; - } - - public static class StorageManager.StorageVolumeCallback { - ctor public StorageManager.StorageVolumeCallback(); - method public void onStateChanged(@NonNull android.os.storage.StorageVolume); - } - - public final class StorageVolume implements android.os.Parcelable { - method @Deprecated @Nullable public android.content.Intent createAccessIntent(String); - method @NonNull public android.content.Intent createOpenDocumentTreeIntent(); - method public int describeContents(); - method public String getDescription(android.content.Context); - method @Nullable public java.io.File getDirectory(); - method @Nullable public String getMediaStoreVolumeName(); - method @NonNull public android.os.UserHandle getOwner(); - method public String getState(); - method @Nullable public java.util.UUID getStorageUuid(); - method @Nullable public String getUuid(); - method public boolean isEmulated(); - method public boolean isPrimary(); - method public boolean isRemovable(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String EXTRA_STORAGE_VOLUME = "android.os.storage.extra.STORAGE_VOLUME"; - } - -} - -package android.os.strictmode { - - public final class CleartextNetworkViolation extends android.os.strictmode.Violation { - } - - public final class ContentUriWithoutPermissionViolation extends android.os.strictmode.Violation { - } - - public final class CredentialProtectedWhileLockedViolation extends android.os.strictmode.Violation { - } - - public final class CustomViolation extends android.os.strictmode.Violation { - } - - public final class DiskReadViolation extends android.os.strictmode.Violation { - } - - public final class DiskWriteViolation extends android.os.strictmode.Violation { - } - - public final class ExplicitGcViolation extends android.os.strictmode.Violation { - } - - public final class FileUriExposedViolation extends android.os.strictmode.Violation { - } - - public final class ImplicitDirectBootViolation extends android.os.strictmode.Violation { - } - - public final class IncorrectContextUseViolation extends android.os.strictmode.Violation { - ctor public IncorrectContextUseViolation(@NonNull String, @NonNull Throwable); - } - - public class InstanceCountViolation extends android.os.strictmode.Violation { - method public long getNumberOfInstances(); - } - - public final class IntentReceiverLeakedViolation extends android.os.strictmode.Violation { - } - - public final class LeakedClosableViolation extends android.os.strictmode.Violation { - } - - public final class NetworkViolation extends android.os.strictmode.Violation { - } - - public final class NonSdkApiUsedViolation extends android.os.strictmode.Violation { - } - - public final class ResourceMismatchViolation extends android.os.strictmode.Violation { - } - - public final class ServiceConnectionLeakedViolation extends android.os.strictmode.Violation { - } - - public final class SqliteObjectLeakedViolation extends android.os.strictmode.Violation { - } - - public final class UnbufferedIoViolation extends android.os.strictmode.Violation { - } - - public final class UnsafeIntentLaunchViolation extends android.os.strictmode.Violation { - ctor public UnsafeIntentLaunchViolation(@NonNull android.content.Intent); - method @Nullable public android.content.Intent getIntent(); - } - - public final class UntaggedSocketViolation extends android.os.strictmode.Violation { - } - - public abstract class Violation extends java.lang.Throwable { - } - - public final class WebViewMethodCalledOnWrongThreadViolation extends android.os.strictmode.Violation { - } - -} - -package android.os.vibrator { - - @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public final class VibratorEnvelopeEffectInfo implements android.os.Parcelable { - method public int describeContents(); - method public long getMaxControlPointDurationMillis(); - method public long getMaxDurationMillis(); - method public int getMaxSize(); - method public long getMinControlPointDurationMillis(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public final class VibratorFrequencyProfile { - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.util.SparseArray getFrequenciesOutputAcceleration(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @Nullable public android.util.Range getFrequencyRange(float); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public float getMaxFrequencyHz(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public float getMaxOutputAccelerationGs(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public float getMinFrequencyHz(); - method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public float getOutputAccelerationGs(float); - } - -} - -package android.preference { - - @Deprecated public class CheckBoxPreference extends android.preference.TwoStatePreference { - ctor @Deprecated public CheckBoxPreference(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public CheckBoxPreference(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public CheckBoxPreference(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public CheckBoxPreference(android.content.Context); - } - - @Deprecated public abstract class DialogPreference extends android.preference.Preference implements android.content.DialogInterface.OnClickListener android.content.DialogInterface.OnDismissListener android.preference.PreferenceManager.OnActivityDestroyListener { - ctor @Deprecated public DialogPreference(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public DialogPreference(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public DialogPreference(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public DialogPreference(android.content.Context); - method @Deprecated public android.app.Dialog getDialog(); - method @Deprecated public android.graphics.drawable.Drawable getDialogIcon(); - method @Deprecated public int getDialogLayoutResource(); - method @Deprecated public CharSequence getDialogMessage(); - method @Deprecated public CharSequence getDialogTitle(); - method @Deprecated public CharSequence getNegativeButtonText(); - method @Deprecated public CharSequence getPositiveButtonText(); - method @Deprecated public void onActivityDestroy(); - method @Deprecated @CallSuper protected void onBindDialogView(android.view.View); - method @Deprecated public void onClick(android.content.DialogInterface, int); - method @Deprecated protected android.view.View onCreateDialogView(); - method @Deprecated protected void onDialogClosed(boolean); - method @Deprecated public void onDismiss(android.content.DialogInterface); - method @Deprecated protected void onPrepareDialogBuilder(android.app.AlertDialog.Builder); - method @Deprecated public void setDialogIcon(android.graphics.drawable.Drawable); - method @Deprecated public void setDialogIcon(@DrawableRes int); - method @Deprecated public void setDialogLayoutResource(int); - method @Deprecated public void setDialogMessage(CharSequence); - method @Deprecated public void setDialogMessage(int); - method @Deprecated public void setDialogTitle(CharSequence); - method @Deprecated public void setDialogTitle(int); - method @Deprecated public void setNegativeButtonText(CharSequence); - method @Deprecated public void setNegativeButtonText(@StringRes int); - method @Deprecated public void setPositiveButtonText(CharSequence); - method @Deprecated public void setPositiveButtonText(@StringRes int); - method @Deprecated protected void showDialog(android.os.Bundle); - } - - @Deprecated public class EditTextPreference extends android.preference.DialogPreference { - ctor @Deprecated public EditTextPreference(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public EditTextPreference(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public EditTextPreference(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public EditTextPreference(android.content.Context); - method @Deprecated public android.widget.EditText getEditText(); - method @Deprecated public String getText(); - method @Deprecated protected void onAddEditTextToDialogView(android.view.View, android.widget.EditText); - method @Deprecated public void setText(String); - } - - @Deprecated public class ListPreference extends android.preference.DialogPreference { - ctor @Deprecated public ListPreference(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public ListPreference(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public ListPreference(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public ListPreference(android.content.Context); - method @Deprecated public int findIndexOfValue(String); - method @Deprecated public CharSequence[] getEntries(); - method @Deprecated public CharSequence getEntry(); - method @Deprecated public CharSequence[] getEntryValues(); - method @Deprecated public String getValue(); - method @Deprecated public void setEntries(CharSequence[]); - method @Deprecated public void setEntries(@ArrayRes int); - method @Deprecated public void setEntryValues(CharSequence[]); - method @Deprecated public void setEntryValues(@ArrayRes int); - method @Deprecated public void setValue(String); - method @Deprecated public void setValueIndex(int); - } - - @Deprecated public class MultiSelectListPreference extends android.preference.DialogPreference { - ctor @Deprecated public MultiSelectListPreference(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public MultiSelectListPreference(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public MultiSelectListPreference(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public MultiSelectListPreference(android.content.Context); - method @Deprecated public int findIndexOfValue(String); - method @Deprecated public CharSequence[] getEntries(); - method @Deprecated public CharSequence[] getEntryValues(); - method @Deprecated public java.util.Set getValues(); - method @Deprecated public void setEntries(CharSequence[]); - method @Deprecated public void setEntries(@ArrayRes int); - method @Deprecated public void setEntryValues(CharSequence[]); - method @Deprecated public void setEntryValues(@ArrayRes int); - method @Deprecated public void setValues(java.util.Set); - } - - @Deprecated public class Preference implements java.lang.Comparable { - ctor @Deprecated public Preference(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public Preference(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public Preference(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public Preference(android.content.Context); - method @Deprecated protected boolean callChangeListener(Object); - method @Deprecated public int compareTo(android.preference.Preference); - method @Deprecated protected android.preference.Preference findPreferenceInHierarchy(String); - method @Deprecated public android.content.Context getContext(); - method @Deprecated public String getDependency(); - method @Deprecated public android.content.SharedPreferences.Editor getEditor(); - method @Deprecated public android.os.Bundle getExtras(); - method @Deprecated public String getFragment(); - method @Deprecated public android.graphics.drawable.Drawable getIcon(); - method @Deprecated public android.content.Intent getIntent(); - method @Deprecated public String getKey(); - method @Deprecated @LayoutRes public int getLayoutResource(); - method @Deprecated public android.preference.Preference.OnPreferenceChangeListener getOnPreferenceChangeListener(); - method @Deprecated public android.preference.Preference.OnPreferenceClickListener getOnPreferenceClickListener(); - method @Deprecated public int getOrder(); - method @Deprecated @Nullable public android.preference.PreferenceGroup getParent(); - method @Deprecated protected boolean getPersistedBoolean(boolean); - method @Deprecated protected float getPersistedFloat(float); - method @Deprecated protected int getPersistedInt(int); - method @Deprecated protected long getPersistedLong(long); - method @Deprecated protected String getPersistedString(String); - method @Deprecated public java.util.Set getPersistedStringSet(java.util.Set); - method @Deprecated @Nullable public android.preference.PreferenceDataStore getPreferenceDataStore(); - method @Deprecated public android.preference.PreferenceManager getPreferenceManager(); - method @Deprecated public android.content.SharedPreferences getSharedPreferences(); - method @Deprecated public boolean getShouldDisableView(); - method @Deprecated public CharSequence getSummary(); - method @Deprecated public CharSequence getTitle(); - method @Deprecated @StringRes public int getTitleRes(); - method @Deprecated public android.view.View getView(android.view.View, android.view.ViewGroup); - method @Deprecated @LayoutRes public int getWidgetLayoutResource(); - method @Deprecated public boolean hasKey(); - method @Deprecated public boolean isEnabled(); - method @Deprecated public boolean isIconSpaceReserved(); - method @Deprecated public boolean isPersistent(); - method @Deprecated public boolean isRecycleEnabled(); - method @Deprecated public boolean isSelectable(); - method @Deprecated public boolean isSingleLineTitle(); - method @Deprecated protected void notifyChanged(); - method @Deprecated public void notifyDependencyChange(boolean); - method @Deprecated protected void notifyHierarchyChanged(); - method @Deprecated protected void onAttachedToActivity(); - method @Deprecated protected void onAttachedToHierarchy(android.preference.PreferenceManager); - method @Deprecated @CallSuper protected void onBindView(android.view.View); - method @Deprecated protected void onClick(); - method @Deprecated @CallSuper protected android.view.View onCreateView(android.view.ViewGroup); - method @Deprecated public void onDependencyChanged(android.preference.Preference, boolean); - method @Deprecated protected Object onGetDefaultValue(android.content.res.TypedArray, int); - method @Deprecated public void onParentChanged(android.preference.Preference, boolean); - method @Deprecated @CallSuper protected void onPrepareForRemoval(); - method @Deprecated protected void onRestoreInstanceState(android.os.Parcelable); - method @Deprecated protected android.os.Parcelable onSaveInstanceState(); - method @Deprecated protected void onSetInitialValue(boolean, Object); - method @Deprecated public android.os.Bundle peekExtras(); - method @Deprecated protected boolean persistBoolean(boolean); - method @Deprecated protected boolean persistFloat(float); - method @Deprecated protected boolean persistInt(int); - method @Deprecated protected boolean persistLong(long); - method @Deprecated protected boolean persistString(String); - method @Deprecated public boolean persistStringSet(java.util.Set); - method @Deprecated public void restoreHierarchyState(android.os.Bundle); - method @Deprecated public void saveHierarchyState(android.os.Bundle); - method @Deprecated public void setDefaultValue(Object); - method @Deprecated public void setDependency(String); - method @Deprecated public void setEnabled(boolean); - method @Deprecated public void setFragment(String); - method @Deprecated public void setIcon(android.graphics.drawable.Drawable); - method @Deprecated public void setIcon(@DrawableRes int); - method @Deprecated public void setIconSpaceReserved(boolean); - method @Deprecated public void setIntent(android.content.Intent); - method @Deprecated public void setKey(String); - method @Deprecated public void setLayoutResource(@LayoutRes int); - method @Deprecated public void setOnPreferenceChangeListener(android.preference.Preference.OnPreferenceChangeListener); - method @Deprecated public void setOnPreferenceClickListener(android.preference.Preference.OnPreferenceClickListener); - method @Deprecated public void setOrder(int); - method @Deprecated public void setPersistent(boolean); - method @Deprecated public void setPreferenceDataStore(android.preference.PreferenceDataStore); - method @Deprecated @CallSuper public void setRecycleEnabled(boolean); - method @Deprecated public void setSelectable(boolean); - method @Deprecated public void setShouldDisableView(boolean); - method @Deprecated public void setSingleLineTitle(boolean); - method @Deprecated public void setSummary(CharSequence); - method @Deprecated public void setSummary(@StringRes int); - method @Deprecated public void setTitle(CharSequence); - method @Deprecated public void setTitle(@StringRes int); - method @Deprecated public void setWidgetLayoutResource(@LayoutRes int); - method @Deprecated public boolean shouldCommit(); - method @Deprecated public boolean shouldDisableDependents(); - method @Deprecated protected boolean shouldPersist(); - field @Deprecated public static final int DEFAULT_ORDER = 2147483647; // 0x7fffffff - } - - @Deprecated public static class Preference.BaseSavedState extends android.view.AbsSavedState { - ctor @Deprecated public Preference.BaseSavedState(android.os.Parcel); - ctor @Deprecated public Preference.BaseSavedState(android.os.Parcelable); - field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @Deprecated public static interface Preference.OnPreferenceChangeListener { - method @Deprecated public boolean onPreferenceChange(android.preference.Preference, Object); - } - - @Deprecated public static interface Preference.OnPreferenceClickListener { - method @Deprecated public boolean onPreferenceClick(android.preference.Preference); - } - - @Deprecated public abstract class PreferenceActivity extends android.app.ListActivity implements android.preference.PreferenceFragment.OnPreferenceStartFragmentCallback { - ctor @Deprecated public PreferenceActivity(); - method @Deprecated public void addPreferencesFromIntent(android.content.Intent); - method @Deprecated public void addPreferencesFromResource(int); - method @Deprecated public android.preference.Preference findPreference(CharSequence); - method @Deprecated public void finishPreferencePanel(android.app.Fragment, int, android.content.Intent); - method @Deprecated public android.preference.PreferenceManager getPreferenceManager(); - method @Deprecated public android.preference.PreferenceScreen getPreferenceScreen(); - method @Deprecated public boolean hasHeaders(); - method @Deprecated public void invalidateHeaders(); - method @Deprecated public boolean isMultiPane(); - method @Deprecated protected boolean isValidFragment(String); - method @Deprecated public void loadHeadersFromResource(@XmlRes int, java.util.List); - method @Deprecated public void onBackPressed(); - method @Deprecated public void onBuildHeaders(java.util.List); - method @Deprecated public android.content.Intent onBuildStartFragmentIntent(String, android.os.Bundle, @StringRes int, int); - method @Deprecated public android.preference.PreferenceActivity.Header onGetInitialHeader(); - method @Deprecated public android.preference.PreferenceActivity.Header onGetNewHeader(); - method @Deprecated public void onHeaderClick(android.preference.PreferenceActivity.Header, int); - method @Deprecated public boolean onIsHidingHeaders(); - method @Deprecated public boolean onIsMultiPane(); - method @Deprecated public boolean onPreferenceStartFragment(android.preference.PreferenceFragment, android.preference.Preference); - method @Deprecated public boolean onPreferenceTreeClick(android.preference.PreferenceScreen, android.preference.Preference); - method @Deprecated public void setListFooter(android.view.View); - method @Deprecated public void setParentTitle(CharSequence, CharSequence, android.view.View.OnClickListener); - method @Deprecated public void setPreferenceScreen(android.preference.PreferenceScreen); - method @Deprecated public void showBreadCrumbs(CharSequence, CharSequence); - method @Deprecated public void startPreferenceFragment(android.app.Fragment, boolean); - method @Deprecated public void startPreferencePanel(String, android.os.Bundle, @StringRes int, CharSequence, android.app.Fragment, int); - method @Deprecated public void startWithFragment(String, android.os.Bundle, android.app.Fragment, int); - method @Deprecated public void startWithFragment(String, android.os.Bundle, android.app.Fragment, int, @StringRes int, @StringRes int); - method @Deprecated public void switchToHeader(String, android.os.Bundle); - method @Deprecated public void switchToHeader(android.preference.PreferenceActivity.Header); - field @Deprecated public static final String EXTRA_NO_HEADERS = ":android:no_headers"; - field @Deprecated public static final String EXTRA_SHOW_FRAGMENT = ":android:show_fragment"; - field @Deprecated public static final String EXTRA_SHOW_FRAGMENT_ARGUMENTS = ":android:show_fragment_args"; - field @Deprecated public static final String EXTRA_SHOW_FRAGMENT_SHORT_TITLE = ":android:show_fragment_short_title"; - field @Deprecated public static final String EXTRA_SHOW_FRAGMENT_TITLE = ":android:show_fragment_title"; - field @Deprecated public static final long HEADER_ID_UNDEFINED = -1L; // 0xffffffffffffffffL - } - - @Deprecated public static final class PreferenceActivity.Header implements android.os.Parcelable { - ctor @Deprecated public PreferenceActivity.Header(); - method @Deprecated public int describeContents(); - method @Deprecated public CharSequence getBreadCrumbShortTitle(android.content.res.Resources); - method @Deprecated public CharSequence getBreadCrumbTitle(android.content.res.Resources); - method @Deprecated public CharSequence getSummary(android.content.res.Resources); - method @Deprecated public CharSequence getTitle(android.content.res.Resources); - method @Deprecated public void readFromParcel(android.os.Parcel); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @Deprecated public CharSequence breadCrumbShortTitle; - field @Deprecated @StringRes public int breadCrumbShortTitleRes; - field @Deprecated public CharSequence breadCrumbTitle; - field @Deprecated @StringRes public int breadCrumbTitleRes; - field @Deprecated public android.os.Bundle extras; - field @Deprecated public String fragment; - field @Deprecated public android.os.Bundle fragmentArguments; - field @Deprecated public int iconRes; - field @Deprecated public long id; - field @Deprecated public android.content.Intent intent; - field @Deprecated public CharSequence summary; - field @Deprecated @StringRes public int summaryRes; - field @Deprecated public CharSequence title; - field @Deprecated @StringRes public int titleRes; - } - - @Deprecated public class PreferenceCategory extends android.preference.PreferenceGroup { - ctor @Deprecated public PreferenceCategory(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public PreferenceCategory(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public PreferenceCategory(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public PreferenceCategory(android.content.Context); - } - - @Deprecated public interface PreferenceDataStore { - method @Deprecated public default boolean getBoolean(String, boolean); - method @Deprecated public default float getFloat(String, float); - method @Deprecated public default int getInt(String, int); - method @Deprecated public default long getLong(String, long); - method @Deprecated @Nullable public default String getString(String, @Nullable String); - method @Deprecated @Nullable public default java.util.Set getStringSet(String, @Nullable java.util.Set); - method @Deprecated public default void putBoolean(String, boolean); - method @Deprecated public default void putFloat(String, float); - method @Deprecated public default void putInt(String, int); - method @Deprecated public default void putLong(String, long); - method @Deprecated public default void putString(String, @Nullable String); - method @Deprecated public default void putStringSet(String, @Nullable java.util.Set); - } - - @Deprecated public abstract class PreferenceFragment extends android.app.Fragment { - ctor @Deprecated public PreferenceFragment(); - method @Deprecated public void addPreferencesFromIntent(android.content.Intent); - method @Deprecated public void addPreferencesFromResource(@XmlRes int); - method @Deprecated public android.preference.Preference findPreference(CharSequence); - method @Deprecated public android.preference.PreferenceManager getPreferenceManager(); - method @Deprecated public android.preference.PreferenceScreen getPreferenceScreen(); - method @Deprecated public boolean onPreferenceTreeClick(android.preference.PreferenceScreen, android.preference.Preference); - method @Deprecated public void setPreferenceScreen(android.preference.PreferenceScreen); - } - - @Deprecated public static interface PreferenceFragment.OnPreferenceStartFragmentCallback { - method @Deprecated public boolean onPreferenceStartFragment(android.preference.PreferenceFragment, android.preference.Preference); - } - - @Deprecated public abstract class PreferenceGroup extends android.preference.Preference { - ctor @Deprecated public PreferenceGroup(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public PreferenceGroup(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public PreferenceGroup(android.content.Context, android.util.AttributeSet); - method @Deprecated public void addItemFromInflater(android.preference.Preference); - method @Deprecated public boolean addPreference(android.preference.Preference); - method @Deprecated protected void dispatchRestoreInstanceState(android.os.Bundle); - method @Deprecated protected void dispatchSaveInstanceState(android.os.Bundle); - method @Deprecated public android.preference.Preference findPreference(CharSequence); - method @Deprecated public android.preference.Preference getPreference(int); - method @Deprecated public int getPreferenceCount(); - method @Deprecated protected boolean isOnSameScreenAsChildren(); - method @Deprecated public boolean isOrderingAsAdded(); - method @Deprecated protected boolean onPrepareAddPreference(android.preference.Preference); - method @Deprecated public void removeAll(); - method @Deprecated public boolean removePreference(android.preference.Preference); - method @Deprecated public void setOrderingAsAdded(boolean); - } - - @Deprecated public class PreferenceManager { - method @Deprecated public android.preference.PreferenceScreen createPreferenceScreen(android.content.Context); - method @Deprecated @Nullable public android.preference.Preference findPreference(CharSequence); - method @Deprecated public static android.content.SharedPreferences getDefaultSharedPreferences(android.content.Context); - method @Deprecated public static String getDefaultSharedPreferencesName(android.content.Context); - method @Deprecated @Nullable public android.preference.PreferenceDataStore getPreferenceDataStore(); - method @Deprecated public android.content.SharedPreferences getSharedPreferences(); - method @Deprecated public int getSharedPreferencesMode(); - method @Deprecated public String getSharedPreferencesName(); - method @Deprecated public boolean isStorageDefault(); - method @Deprecated public boolean isStorageDeviceProtected(); - method @Deprecated public static void setDefaultValues(android.content.Context, @XmlRes int, boolean); - method @Deprecated public static void setDefaultValues(android.content.Context, String, int, int, boolean); - method @Deprecated public void setPreferenceDataStore(android.preference.PreferenceDataStore); - method @Deprecated public void setSharedPreferencesMode(int); - method @Deprecated public void setSharedPreferencesName(String); - method @Deprecated public void setStorageDefault(); - method @Deprecated public void setStorageDeviceProtected(); - field @Deprecated public static final String KEY_HAS_SET_DEFAULT_VALUES = "_has_set_default_values"; - field @Deprecated public static final String METADATA_KEY_PREFERENCES = "android.preference"; - } - - @Deprecated public static interface PreferenceManager.OnActivityDestroyListener { - method @Deprecated public void onActivityDestroy(); - } - - @Deprecated public static interface PreferenceManager.OnActivityResultListener { - method @Deprecated public boolean onActivityResult(int, int, android.content.Intent); - } - - @Deprecated public static interface PreferenceManager.OnActivityStopListener { - method @Deprecated public void onActivityStop(); - } - - @Deprecated public final class PreferenceScreen extends android.preference.PreferenceGroup implements android.widget.AdapterView.OnItemClickListener android.content.DialogInterface.OnDismissListener { - method @Deprecated public void bind(android.widget.ListView); - method @Deprecated public android.app.Dialog getDialog(); - method @Deprecated public android.widget.ListAdapter getRootAdapter(); - method @Deprecated protected android.widget.ListAdapter onCreateRootAdapter(); - method @Deprecated public void onDismiss(android.content.DialogInterface); - method @Deprecated public void onItemClick(android.widget.AdapterView, android.view.View, int, long); - } - - @Deprecated public class RingtonePreference extends android.preference.Preference implements android.preference.PreferenceManager.OnActivityResultListener { - ctor @Deprecated public RingtonePreference(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public RingtonePreference(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public RingtonePreference(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public RingtonePreference(android.content.Context); - method @Deprecated public int getRingtoneType(); - method @Deprecated public boolean getShowDefault(); - method @Deprecated public boolean getShowSilent(); - method @Deprecated public boolean onActivityResult(int, int, android.content.Intent); - method @Deprecated protected void onPrepareRingtonePickerIntent(android.content.Intent); - method @Deprecated protected android.net.Uri onRestoreRingtone(); - method @Deprecated protected void onSaveRingtone(android.net.Uri); - method @Deprecated public void setRingtoneType(int); - method @Deprecated public void setShowDefault(boolean); - method @Deprecated public void setShowSilent(boolean); - } - - @Deprecated public class SwitchPreference extends android.preference.TwoStatePreference { - ctor @Deprecated public SwitchPreference(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public SwitchPreference(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public SwitchPreference(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public SwitchPreference(android.content.Context); - method @Deprecated public CharSequence getSwitchTextOff(); - method @Deprecated public CharSequence getSwitchTextOn(); - method @Deprecated public void setSwitchTextOff(CharSequence); - method @Deprecated public void setSwitchTextOff(@StringRes int); - method @Deprecated public void setSwitchTextOn(CharSequence); - method @Deprecated public void setSwitchTextOn(@StringRes int); - } - - @Deprecated public abstract class TwoStatePreference extends android.preference.Preference { - ctor @Deprecated public TwoStatePreference(android.content.Context, android.util.AttributeSet, int, int); - ctor @Deprecated public TwoStatePreference(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public TwoStatePreference(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public TwoStatePreference(android.content.Context); - method @Deprecated public boolean getDisableDependentsState(); - method @Deprecated public CharSequence getSummaryOff(); - method @Deprecated public CharSequence getSummaryOn(); - method @Deprecated public boolean isChecked(); - method @Deprecated public void setChecked(boolean); - method @Deprecated public void setDisableDependentsState(boolean); - method @Deprecated public void setSummaryOff(CharSequence); - method @Deprecated public void setSummaryOff(@StringRes int); - method @Deprecated public void setSummaryOn(CharSequence); - method @Deprecated public void setSummaryOn(@StringRes int); - } - -} - -package android.print { - - public final class PageRange implements android.os.Parcelable { - ctor public PageRange(@IntRange(from=0) int, @IntRange(from=0) int); - method public int describeContents(); - method @IntRange(from=0) public int getEnd(); - method @IntRange(from=0) public int getStart(); - method public void writeToParcel(android.os.Parcel, int); - field public static final android.print.PageRange ALL_PAGES; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class PrintAttributes implements android.os.Parcelable { - method public int describeContents(); - method @IntRange(from=0) public int getColorMode(); - method @IntRange(from=0) public int getDuplexMode(); - method @Nullable public android.print.PrintAttributes.MediaSize getMediaSize(); - method @Nullable public android.print.PrintAttributes.Margins getMinMargins(); - method @Nullable public android.print.PrintAttributes.Resolution getResolution(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int COLOR_MODE_COLOR = 2; // 0x2 - field public static final int COLOR_MODE_MONOCHROME = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DUPLEX_MODE_LONG_EDGE = 2; // 0x2 - field public static final int DUPLEX_MODE_NONE = 1; // 0x1 - field public static final int DUPLEX_MODE_SHORT_EDGE = 4; // 0x4 - } - - public static final class PrintAttributes.Builder { - ctor public PrintAttributes.Builder(); - method @NonNull public android.print.PrintAttributes build(); - method @NonNull public android.print.PrintAttributes.Builder setColorMode(int); - method @NonNull public android.print.PrintAttributes.Builder setDuplexMode(int); - method @NonNull public android.print.PrintAttributes.Builder setMediaSize(@NonNull android.print.PrintAttributes.MediaSize); - method @NonNull public android.print.PrintAttributes.Builder setMinMargins(@NonNull android.print.PrintAttributes.Margins); - method @NonNull public android.print.PrintAttributes.Builder setResolution(@NonNull android.print.PrintAttributes.Resolution); - } - - public static final class PrintAttributes.Margins { - ctor public PrintAttributes.Margins(int, int, int, int); - method public int getBottomMils(); - method public int getLeftMils(); - method public int getRightMils(); - method public int getTopMils(); - field public static final android.print.PrintAttributes.Margins NO_MARGINS; - } - - public static final class PrintAttributes.MediaSize { - ctor public PrintAttributes.MediaSize(@NonNull String, @NonNull String, @IntRange(from=1) int, @IntRange(from=1) int); - method @NonNull public android.print.PrintAttributes.MediaSize asLandscape(); - method @NonNull public android.print.PrintAttributes.MediaSize asPortrait(); - method @IntRange(from=1) public int getHeightMils(); - method @NonNull public String getId(); - method @NonNull public String getLabel(@NonNull android.content.pm.PackageManager); - method @IntRange(from=1) public int getWidthMils(); - method public boolean isPortrait(); - field @NonNull public static final android.print.PrintAttributes.MediaSize ANSI_C; - field @NonNull public static final android.print.PrintAttributes.MediaSize ANSI_D; - field @NonNull public static final android.print.PrintAttributes.MediaSize ANSI_E; - field @NonNull public static final android.print.PrintAttributes.MediaSize ANSI_F; - field public static final android.print.PrintAttributes.MediaSize ISO_A0; - field public static final android.print.PrintAttributes.MediaSize ISO_A1; - field public static final android.print.PrintAttributes.MediaSize ISO_A10; - field public static final android.print.PrintAttributes.MediaSize ISO_A2; - field public static final android.print.PrintAttributes.MediaSize ISO_A3; - field public static final android.print.PrintAttributes.MediaSize ISO_A4; - field public static final android.print.PrintAttributes.MediaSize ISO_A5; - field public static final android.print.PrintAttributes.MediaSize ISO_A6; - field public static final android.print.PrintAttributes.MediaSize ISO_A7; - field public static final android.print.PrintAttributes.MediaSize ISO_A8; - field public static final android.print.PrintAttributes.MediaSize ISO_A9; - field public static final android.print.PrintAttributes.MediaSize ISO_B0; - field public static final android.print.PrintAttributes.MediaSize ISO_B1; - field public static final android.print.PrintAttributes.MediaSize ISO_B10; - field public static final android.print.PrintAttributes.MediaSize ISO_B2; - field public static final android.print.PrintAttributes.MediaSize ISO_B3; - field public static final android.print.PrintAttributes.MediaSize ISO_B4; - field public static final android.print.PrintAttributes.MediaSize ISO_B5; - field public static final android.print.PrintAttributes.MediaSize ISO_B6; - field public static final android.print.PrintAttributes.MediaSize ISO_B7; - field public static final android.print.PrintAttributes.MediaSize ISO_B8; - field public static final android.print.PrintAttributes.MediaSize ISO_B9; - field public static final android.print.PrintAttributes.MediaSize ISO_C0; - field public static final android.print.PrintAttributes.MediaSize ISO_C1; - field public static final android.print.PrintAttributes.MediaSize ISO_C10; - field public static final android.print.PrintAttributes.MediaSize ISO_C2; - field public static final android.print.PrintAttributes.MediaSize ISO_C3; - field public static final android.print.PrintAttributes.MediaSize ISO_C4; - field public static final android.print.PrintAttributes.MediaSize ISO_C5; - field public static final android.print.PrintAttributes.MediaSize ISO_C6; - field public static final android.print.PrintAttributes.MediaSize ISO_C7; - field public static final android.print.PrintAttributes.MediaSize ISO_C8; - field public static final android.print.PrintAttributes.MediaSize ISO_C9; - field public static final android.print.PrintAttributes.MediaSize JIS_B0; - field public static final android.print.PrintAttributes.MediaSize JIS_B1; - field public static final android.print.PrintAttributes.MediaSize JIS_B10; - field public static final android.print.PrintAttributes.MediaSize JIS_B2; - field public static final android.print.PrintAttributes.MediaSize JIS_B3; - field public static final android.print.PrintAttributes.MediaSize JIS_B4; - field public static final android.print.PrintAttributes.MediaSize JIS_B5; - field public static final android.print.PrintAttributes.MediaSize JIS_B6; - field public static final android.print.PrintAttributes.MediaSize JIS_B7; - field public static final android.print.PrintAttributes.MediaSize JIS_B8; - field public static final android.print.PrintAttributes.MediaSize JIS_B9; - field public static final android.print.PrintAttributes.MediaSize JIS_EXEC; - field public static final android.print.PrintAttributes.MediaSize JPN_CHOU2; - field public static final android.print.PrintAttributes.MediaSize JPN_CHOU3; - field public static final android.print.PrintAttributes.MediaSize JPN_CHOU4; - field public static final android.print.PrintAttributes.MediaSize JPN_HAGAKI; - field public static final android.print.PrintAttributes.MediaSize JPN_KAHU; - field public static final android.print.PrintAttributes.MediaSize JPN_KAKU2; - field @NonNull public static final android.print.PrintAttributes.MediaSize JPN_OE_PHOTO_L; - field public static final android.print.PrintAttributes.MediaSize JPN_OUFUKU; - field public static final android.print.PrintAttributes.MediaSize JPN_YOU4; - field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_A; - field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_B; - field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_C; - field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_D; - field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_E; - field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_E1; - field public static final android.print.PrintAttributes.MediaSize NA_FOOLSCAP; - field public static final android.print.PrintAttributes.MediaSize NA_GOVT_LETTER; - field public static final android.print.PrintAttributes.MediaSize NA_INDEX_3X5; - field public static final android.print.PrintAttributes.MediaSize NA_INDEX_4X6; - field public static final android.print.PrintAttributes.MediaSize NA_INDEX_5X8; - field public static final android.print.PrintAttributes.MediaSize NA_JUNIOR_LEGAL; - field public static final android.print.PrintAttributes.MediaSize NA_LEDGER; - field public static final android.print.PrintAttributes.MediaSize NA_LEGAL; - field public static final android.print.PrintAttributes.MediaSize NA_LETTER; - field public static final android.print.PrintAttributes.MediaSize NA_MONARCH; - field public static final android.print.PrintAttributes.MediaSize NA_QUARTO; - field @NonNull public static final android.print.PrintAttributes.MediaSize NA_SUPER_B; - field public static final android.print.PrintAttributes.MediaSize NA_TABLOID; - field public static final android.print.PrintAttributes.MediaSize OM_DAI_PA_KAI; - field public static final android.print.PrintAttributes.MediaSize OM_JUURO_KU_KAI; - field public static final android.print.PrintAttributes.MediaSize OM_PA_KAI; - field public static final android.print.PrintAttributes.MediaSize PRC_1; - field public static final android.print.PrintAttributes.MediaSize PRC_10; - field public static final android.print.PrintAttributes.MediaSize PRC_16K; - field public static final android.print.PrintAttributes.MediaSize PRC_2; - field public static final android.print.PrintAttributes.MediaSize PRC_3; - field public static final android.print.PrintAttributes.MediaSize PRC_4; - field public static final android.print.PrintAttributes.MediaSize PRC_5; - field public static final android.print.PrintAttributes.MediaSize PRC_6; - field public static final android.print.PrintAttributes.MediaSize PRC_7; - field public static final android.print.PrintAttributes.MediaSize PRC_8; - field public static final android.print.PrintAttributes.MediaSize PRC_9; - field public static final android.print.PrintAttributes.MediaSize ROC_16K; - field public static final android.print.PrintAttributes.MediaSize ROC_8K; - field public static final android.print.PrintAttributes.MediaSize UNKNOWN_LANDSCAPE; - field public static final android.print.PrintAttributes.MediaSize UNKNOWN_PORTRAIT; - } - - public static final class PrintAttributes.Resolution { - ctor public PrintAttributes.Resolution(@NonNull String, @NonNull String, @IntRange(from=1) int, @IntRange(from=1) int); - method @IntRange(from=1) public int getHorizontalDpi(); - method @NonNull public String getId(); - method @NonNull public String getLabel(); - method @IntRange(from=1) public int getVerticalDpi(); - } - - public abstract class PrintDocumentAdapter { - ctor public PrintDocumentAdapter(); - method public void onFinish(); - method public abstract void onLayout(android.print.PrintAttributes, android.print.PrintAttributes, android.os.CancellationSignal, android.print.PrintDocumentAdapter.LayoutResultCallback, android.os.Bundle); - method public void onStart(); - method public abstract void onWrite(android.print.PageRange[], android.os.ParcelFileDescriptor, android.os.CancellationSignal, android.print.PrintDocumentAdapter.WriteResultCallback); - field public static final String EXTRA_PRINT_PREVIEW = "EXTRA_PRINT_PREVIEW"; - } - - public abstract static class PrintDocumentAdapter.LayoutResultCallback { - method public void onLayoutCancelled(); - method public void onLayoutFailed(CharSequence); - method public void onLayoutFinished(android.print.PrintDocumentInfo, boolean); - } - - public abstract static class PrintDocumentAdapter.WriteResultCallback { - method public void onWriteCancelled(); - method public void onWriteFailed(CharSequence); - method public void onWriteFinished(android.print.PageRange[]); - } - - public final class PrintDocumentInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getContentType(); - method @IntRange(from=0) public long getDataSize(); - method @NonNull public String getName(); - method @IntRange(from=0xffffffff) public int getPageCount(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CONTENT_TYPE_DOCUMENT = 0; // 0x0 - field public static final int CONTENT_TYPE_PHOTO = 1; // 0x1 - field public static final int CONTENT_TYPE_UNKNOWN = -1; // 0xffffffff - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int PAGE_COUNT_UNKNOWN = -1; // 0xffffffff - } - - public static final class PrintDocumentInfo.Builder { - ctor public PrintDocumentInfo.Builder(@NonNull String); - method @NonNull public android.print.PrintDocumentInfo build(); - method @NonNull public android.print.PrintDocumentInfo.Builder setContentType(int); - method @NonNull public android.print.PrintDocumentInfo.Builder setPageCount(@IntRange(from=0xffffffff) int); - } - - public final class PrintJob { - method public void cancel(); - method @Nullable public android.print.PrintJobId getId(); - method @NonNull public android.print.PrintJobInfo getInfo(); - method public boolean isBlocked(); - method public boolean isCancelled(); - method public boolean isCompleted(); - method public boolean isFailed(); - method public boolean isQueued(); - method public boolean isStarted(); - method public void restart(); - } - - public final class PrintJobId implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class PrintJobInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getAdvancedIntOption(String); - method public String getAdvancedStringOption(String); - method @NonNull public android.print.PrintAttributes getAttributes(); - method @IntRange(from=0) public int getCopies(); - method public long getCreationTime(); - method @Nullable public android.print.PrintJobId getId(); - method @NonNull public String getLabel(); - method @Nullable public android.print.PageRange[] getPages(); - method @Nullable public android.print.PrinterId getPrinterId(); - method public int getState(); - method public boolean hasAdvancedOption(String); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STATE_BLOCKED = 4; // 0x4 - field public static final int STATE_CANCELED = 7; // 0x7 - field public static final int STATE_COMPLETED = 5; // 0x5 - field public static final int STATE_CREATED = 1; // 0x1 - field public static final int STATE_FAILED = 6; // 0x6 - field public static final int STATE_QUEUED = 2; // 0x2 - field public static final int STATE_STARTED = 3; // 0x3 - } - - public static final class PrintJobInfo.Builder { - ctor public PrintJobInfo.Builder(@Nullable android.print.PrintJobInfo); - method @NonNull public android.print.PrintJobInfo build(); - method public void putAdvancedOption(@NonNull String, @Nullable String); - method public void putAdvancedOption(@NonNull String, int); - method public void setAttributes(@NonNull android.print.PrintAttributes); - method public void setCopies(@IntRange(from=1) int); - method public void setPages(@NonNull android.print.PageRange[]); - } - - public final class PrintManager { - method @NonNull public java.util.List getPrintJobs(); - method public boolean isPrintServiceEnabled(@NonNull android.content.ComponentName); - method @NonNull public android.print.PrintJob print(@NonNull String, @NonNull android.print.PrintDocumentAdapter, @Nullable android.print.PrintAttributes); - } - - public final class PrinterCapabilitiesInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getColorModes(); - method @NonNull public android.print.PrintAttributes getDefaults(); - method public int getDuplexModes(); - method @NonNull public java.util.List getMediaSizes(); - method @NonNull public android.print.PrintAttributes.Margins getMinMargins(); - method @NonNull public java.util.List getResolutions(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class PrinterCapabilitiesInfo.Builder { - ctor public PrinterCapabilitiesInfo.Builder(@NonNull android.print.PrinterId); - method @NonNull public android.print.PrinterCapabilitiesInfo.Builder addMediaSize(@NonNull android.print.PrintAttributes.MediaSize, boolean); - method @NonNull public android.print.PrinterCapabilitiesInfo.Builder addResolution(@NonNull android.print.PrintAttributes.Resolution, boolean); - method @NonNull public android.print.PrinterCapabilitiesInfo build(); - method @NonNull public android.print.PrinterCapabilitiesInfo.Builder setColorModes(int, int); - method @NonNull public android.print.PrinterCapabilitiesInfo.Builder setDuplexModes(int, int); - method @NonNull public android.print.PrinterCapabilitiesInfo.Builder setMinMargins(@NonNull android.print.PrintAttributes.Margins); - } - - public final class PrinterId implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getLocalId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class PrinterInfo implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.print.PrinterCapabilitiesInfo getCapabilities(); - method @Nullable public String getDescription(); - method @NonNull public android.print.PrinterId getId(); - method @NonNull public String getName(); - method public int getStatus(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STATUS_BUSY = 2; // 0x2 - field public static final int STATUS_IDLE = 1; // 0x1 - field public static final int STATUS_UNAVAILABLE = 3; // 0x3 - } - - public static final class PrinterInfo.Builder { - ctor public PrinterInfo.Builder(@NonNull android.print.PrinterId, @NonNull String, int); - ctor public PrinterInfo.Builder(@NonNull android.print.PrinterInfo); - method @NonNull public android.print.PrinterInfo build(); - method @NonNull public android.print.PrinterInfo.Builder setCapabilities(@NonNull android.print.PrinterCapabilitiesInfo); - method @NonNull public android.print.PrinterInfo.Builder setDescription(@NonNull String); - method @NonNull public android.print.PrinterInfo.Builder setHasCustomPrinterIcon(boolean); - method @NonNull public android.print.PrinterInfo.Builder setIconResourceId(@DrawableRes int); - method @NonNull public android.print.PrinterInfo.Builder setInfoIntent(@NonNull android.app.PendingIntent); - method @NonNull public android.print.PrinterInfo.Builder setName(@NonNull String); - method @NonNull public android.print.PrinterInfo.Builder setStatus(int); - } - -} - -package android.print.pdf { - - public class PrintedPdfDocument extends android.graphics.pdf.PdfDocument { - ctor public PrintedPdfDocument(@NonNull android.content.Context, @NonNull android.print.PrintAttributes); - method @NonNull public android.graphics.Rect getPageContentRect(); - method @IntRange(from=0) public int getPageHeight(); - method @IntRange(from=0) public int getPageWidth(); - method @NonNull public android.graphics.pdf.PdfDocument.Page startPage(@IntRange(from=0) int); - } - -} - -package android.printservice { - - public final class CustomPrinterIconCallback { - method public boolean onCustomPrinterIconLoaded(@Nullable android.graphics.drawable.Icon); - } - - public final class PrintDocument { - method @Nullable public android.os.ParcelFileDescriptor getData(); - method @NonNull public android.print.PrintDocumentInfo getInfo(); - } - - public final class PrintJob { - method @MainThread public boolean block(@Nullable String); - method @MainThread public boolean cancel(); - method @MainThread public boolean complete(); - method @MainThread public boolean fail(@Nullable String); - method @MainThread public int getAdvancedIntOption(String); - method @MainThread public String getAdvancedStringOption(String); - method @MainThread @NonNull public android.printservice.PrintDocument getDocument(); - method @MainThread public android.print.PrintJobId getId(); - method @MainThread @NonNull public android.print.PrintJobInfo getInfo(); - method @MainThread @Nullable public String getTag(); - method @MainThread public boolean hasAdvancedOption(String); - method @MainThread public boolean isBlocked(); - method @MainThread public boolean isCancelled(); - method @MainThread public boolean isCompleted(); - method @MainThread public boolean isFailed(); - method @MainThread public boolean isQueued(); - method @MainThread public boolean isStarted(); - method @MainThread public void setProgress(@FloatRange(from=0.0, to=1.0) float); - method @MainThread public void setStatus(@Nullable CharSequence); - method @MainThread public void setStatus(@StringRes int); - method @MainThread public boolean setTag(@NonNull String); - method @MainThread public boolean start(); - } - - public abstract class PrintService extends android.app.Service { - ctor public PrintService(); - method protected final void attachBaseContext(android.content.Context); - method @NonNull public final android.print.PrinterId generatePrinterId(String); - method public final java.util.List getActivePrintJobs(); - method public final android.os.IBinder onBind(android.content.Intent); - method protected void onConnected(); - method @Nullable protected abstract android.printservice.PrinterDiscoverySession onCreatePrinterDiscoverySession(); - method protected void onDisconnected(); - method protected abstract void onPrintJobQueued(android.printservice.PrintJob); - method protected abstract void onRequestCancelPrintJob(android.printservice.PrintJob); - field public static final String EXTRA_CAN_SELECT_PRINTER = "android.printservice.extra.CAN_SELECT_PRINTER"; - field public static final String EXTRA_PRINTER_INFO = "android.intent.extra.print.EXTRA_PRINTER_INFO"; - field public static final String EXTRA_PRINT_DOCUMENT_INFO = "android.printservice.extra.PRINT_DOCUMENT_INFO"; - field public static final String EXTRA_PRINT_JOB_INFO = "android.intent.extra.print.PRINT_JOB_INFO"; - field public static final String EXTRA_SELECT_PRINTER = "android.printservice.extra.SELECT_PRINTER"; - field public static final String SERVICE_INTERFACE = "android.printservice.PrintService"; - field public static final String SERVICE_META_DATA = "android.printservice"; - } - - public abstract class PrinterDiscoverySession { - ctor public PrinterDiscoverySession(); - method public final void addPrinters(@NonNull java.util.List); - method @NonNull public final java.util.List getPrinters(); - method @NonNull public final java.util.List getTrackedPrinters(); - method public final boolean isDestroyed(); - method public final boolean isPrinterDiscoveryStarted(); - method public abstract void onDestroy(); - method public void onRequestCustomPrinterIcon(@NonNull android.print.PrinterId, @NonNull android.os.CancellationSignal, @NonNull android.printservice.CustomPrinterIconCallback); - method public abstract void onStartPrinterDiscovery(@NonNull java.util.List); - method public abstract void onStartPrinterStateTracking(@NonNull android.print.PrinterId); - method public abstract void onStopPrinterDiscovery(); - method public abstract void onStopPrinterStateTracking(@NonNull android.print.PrinterId); - method public abstract void onValidatePrinters(@NonNull java.util.List); - method public final void removePrinters(@NonNull java.util.List); - } - -} - -package android.provider { - - public final class AlarmClock { - ctor public AlarmClock(); - field public static final String ACTION_DISMISS_ALARM = "android.intent.action.DISMISS_ALARM"; - field public static final String ACTION_DISMISS_TIMER = "android.intent.action.DISMISS_TIMER"; - field public static final String ACTION_SET_ALARM = "android.intent.action.SET_ALARM"; - field public static final String ACTION_SET_TIMER = "android.intent.action.SET_TIMER"; - field public static final String ACTION_SHOW_ALARMS = "android.intent.action.SHOW_ALARMS"; - field public static final String ACTION_SHOW_TIMERS = "android.intent.action.SHOW_TIMERS"; - field public static final String ACTION_SNOOZE_ALARM = "android.intent.action.SNOOZE_ALARM"; - field public static final String ALARM_SEARCH_MODE_ALL = "android.all"; - field public static final String ALARM_SEARCH_MODE_LABEL = "android.label"; - field public static final String ALARM_SEARCH_MODE_NEXT = "android.next"; - field public static final String ALARM_SEARCH_MODE_TIME = "android.time"; - field public static final String EXTRA_ALARM_SEARCH_MODE = "android.intent.extra.alarm.SEARCH_MODE"; - field public static final String EXTRA_ALARM_SNOOZE_DURATION = "android.intent.extra.alarm.SNOOZE_DURATION"; - field public static final String EXTRA_DAYS = "android.intent.extra.alarm.DAYS"; - field public static final String EXTRA_HOUR = "android.intent.extra.alarm.HOUR"; - field public static final String EXTRA_IS_PM = "android.intent.extra.alarm.IS_PM"; - field public static final String EXTRA_LENGTH = "android.intent.extra.alarm.LENGTH"; - field public static final String EXTRA_MESSAGE = "android.intent.extra.alarm.MESSAGE"; - field public static final String EXTRA_MINUTES = "android.intent.extra.alarm.MINUTES"; - field public static final String EXTRA_RINGTONE = "android.intent.extra.alarm.RINGTONE"; - field public static final String EXTRA_SKIP_UI = "android.intent.extra.alarm.SKIP_UI"; - field public static final String EXTRA_VIBRATE = "android.intent.extra.alarm.VIBRATE"; - field public static final String VALUE_RINGTONE_SILENT = "silent"; - } - - public interface BaseColumns { - field public static final String _COUNT = "_count"; - field public static final String _ID = "_id"; - } - - public class BlockedNumberContract { - method public static boolean canCurrentUserBlockNumbers(android.content.Context); - method @WorkerThread public static boolean isBlocked(android.content.Context, String); - method @WorkerThread public static int unblock(android.content.Context, String); - field public static final String AUTHORITY = "com.android.blockednumber"; - field public static final android.net.Uri AUTHORITY_URI; - } - - public static class BlockedNumberContract.BlockedNumbers { - field public static final String COLUMN_E164_NUMBER = "e164_number"; - field public static final String COLUMN_ID = "_id"; - field public static final String COLUMN_ORIGINAL_NUMBER = "original_number"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/blocked_number"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/blocked_number"; - field public static final android.net.Uri CONTENT_URI; - } - - public class Browser { - ctor public Browser(); - method public static final void sendString(android.content.Context, String); - field public static final String EXTRA_APPLICATION_ID = "com.android.browser.application_id"; - field public static final String EXTRA_CREATE_NEW_TAB = "create_new_tab"; - field public static final String EXTRA_HEADERS = "com.android.browser.headers"; - field public static final String INITIAL_ZOOM_LEVEL = "browser.initialZoomLevel"; - } - - public final class CalendarContract { - method public static boolean startViewCalendarEventInManagedProfile(@NonNull android.content.Context, long, long, long, boolean, int); - field public static final String ACCOUNT_TYPE_LOCAL = "LOCAL"; - field public static final String ACTION_EVENT_REMINDER = "android.intent.action.EVENT_REMINDER"; - field public static final String ACTION_HANDLE_CUSTOM_EVENT = "android.provider.calendar.action.HANDLE_CUSTOM_EVENT"; - field public static final String ACTION_VIEW_MANAGED_PROFILE_CALENDAR_EVENT = "android.provider.calendar.action.VIEW_MANAGED_PROFILE_CALENDAR_EVENT"; - field public static final String AUTHORITY = "com.android.calendar"; - field public static final String CALLER_IS_SYNCADAPTER = "caller_is_syncadapter"; - field public static final android.net.Uri CONTENT_URI; - field public static final String EXTRA_CUSTOM_APP_URI = "customAppUri"; - field public static final String EXTRA_EVENT_ALL_DAY = "allDay"; - field public static final String EXTRA_EVENT_BEGIN_TIME = "beginTime"; - field public static final String EXTRA_EVENT_END_TIME = "endTime"; - field public static final String EXTRA_EVENT_ID = "id"; - } - - public static final class CalendarContract.Attendees implements android.provider.BaseColumns android.provider.CalendarContract.AttendeesColumns android.provider.CalendarContract.EventsColumns { - method public static android.database.Cursor query(android.content.ContentResolver, long, String[]); - field public static final android.net.Uri CONTENT_URI; - } - - protected static interface CalendarContract.AttendeesColumns { - field public static final String ATTENDEE_EMAIL = "attendeeEmail"; - field public static final String ATTENDEE_IDENTITY = "attendeeIdentity"; - field public static final String ATTENDEE_ID_NAMESPACE = "attendeeIdNamespace"; - field public static final String ATTENDEE_NAME = "attendeeName"; - field public static final String ATTENDEE_RELATIONSHIP = "attendeeRelationship"; - field public static final String ATTENDEE_STATUS = "attendeeStatus"; - field public static final int ATTENDEE_STATUS_ACCEPTED = 1; // 0x1 - field public static final int ATTENDEE_STATUS_DECLINED = 2; // 0x2 - field public static final int ATTENDEE_STATUS_INVITED = 3; // 0x3 - field public static final int ATTENDEE_STATUS_NONE = 0; // 0x0 - field public static final int ATTENDEE_STATUS_TENTATIVE = 4; // 0x4 - field public static final String ATTENDEE_TYPE = "attendeeType"; - field public static final String EVENT_ID = "event_id"; - field public static final int RELATIONSHIP_ATTENDEE = 1; // 0x1 - field public static final int RELATIONSHIP_NONE = 0; // 0x0 - field public static final int RELATIONSHIP_ORGANIZER = 2; // 0x2 - field public static final int RELATIONSHIP_PERFORMER = 3; // 0x3 - field public static final int RELATIONSHIP_SPEAKER = 4; // 0x4 - field public static final int TYPE_NONE = 0; // 0x0 - field public static final int TYPE_OPTIONAL = 2; // 0x2 - field public static final int TYPE_REQUIRED = 1; // 0x1 - field public static final int TYPE_RESOURCE = 3; // 0x3 - } - - public static final class CalendarContract.CalendarAlerts implements android.provider.BaseColumns android.provider.CalendarContract.CalendarAlertsColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.EventsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final android.net.Uri CONTENT_URI_BY_INSTANCE; - } - - protected static interface CalendarContract.CalendarAlertsColumns { - field public static final String ALARM_TIME = "alarmTime"; - field public static final String BEGIN = "begin"; - field public static final String CREATION_TIME = "creationTime"; - field public static final String DEFAULT_SORT_ORDER = "begin ASC,title ASC"; - field public static final String END = "end"; - field public static final String EVENT_ID = "event_id"; - field public static final String MINUTES = "minutes"; - field public static final String NOTIFY_TIME = "notifyTime"; - field public static final String RECEIVED_TIME = "receivedTime"; - field public static final String STATE = "state"; - field public static final int STATE_DISMISSED = 2; // 0x2 - field public static final int STATE_FIRED = 1; // 0x1 - field public static final int STATE_SCHEDULED = 0; // 0x0 - } - - public static final class CalendarContract.CalendarCache implements android.provider.CalendarContract.CalendarCacheColumns { - field public static final String KEY_TIMEZONE_INSTANCES = "timezoneInstances"; - field public static final String KEY_TIMEZONE_INSTANCES_PREVIOUS = "timezoneInstancesPrevious"; - field public static final String KEY_TIMEZONE_TYPE = "timezoneType"; - field public static final String TIMEZONE_TYPE_AUTO = "auto"; - field public static final String TIMEZONE_TYPE_HOME = "home"; - field public static final android.net.Uri URI; - } - - protected static interface CalendarContract.CalendarCacheColumns { - field public static final String KEY = "key"; - field public static final String VALUE = "value"; - } - - protected static interface CalendarContract.CalendarColumns { - field public static final String ALLOWED_ATTENDEE_TYPES = "allowedAttendeeTypes"; - field public static final String ALLOWED_AVAILABILITY = "allowedAvailability"; - field public static final String ALLOWED_REMINDERS = "allowedReminders"; - field public static final String CALENDAR_ACCESS_LEVEL = "calendar_access_level"; - field public static final String CALENDAR_COLOR = "calendar_color"; - field public static final String CALENDAR_COLOR_KEY = "calendar_color_index"; - field public static final String CALENDAR_DISPLAY_NAME = "calendar_displayName"; - field public static final String CALENDAR_TIME_ZONE = "calendar_timezone"; - field public static final int CAL_ACCESS_CONTRIBUTOR = 500; // 0x1f4 - field public static final int CAL_ACCESS_EDITOR = 600; // 0x258 - field public static final int CAL_ACCESS_FREEBUSY = 100; // 0x64 - field public static final int CAL_ACCESS_NONE = 0; // 0x0 - field public static final int CAL_ACCESS_OVERRIDE = 400; // 0x190 - field public static final int CAL_ACCESS_OWNER = 700; // 0x2bc - field public static final int CAL_ACCESS_READ = 200; // 0xc8 - field public static final int CAL_ACCESS_RESPOND = 300; // 0x12c - field public static final int CAL_ACCESS_ROOT = 800; // 0x320 - field public static final String CAN_MODIFY_TIME_ZONE = "canModifyTimeZone"; - field public static final String CAN_ORGANIZER_RESPOND = "canOrganizerRespond"; - field public static final String IS_PRIMARY = "isPrimary"; - field public static final String MAX_REMINDERS = "maxReminders"; - field public static final String OWNER_ACCOUNT = "ownerAccount"; - field public static final String SYNC_EVENTS = "sync_events"; - field public static final String VISIBLE = "visible"; - } - - public static final class CalendarContract.CalendarEntity implements android.provider.BaseColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.SyncColumns { - method public static android.content.EntityIterator newEntityIterator(android.database.Cursor); - field public static final android.net.Uri CONTENT_URI; - } - - protected static interface CalendarContract.CalendarSyncColumns { - field public static final String CAL_SYNC1 = "cal_sync1"; - field public static final String CAL_SYNC10 = "cal_sync10"; - field public static final String CAL_SYNC2 = "cal_sync2"; - field public static final String CAL_SYNC3 = "cal_sync3"; - field public static final String CAL_SYNC4 = "cal_sync4"; - field public static final String CAL_SYNC5 = "cal_sync5"; - field public static final String CAL_SYNC6 = "cal_sync6"; - field public static final String CAL_SYNC7 = "cal_sync7"; - field public static final String CAL_SYNC8 = "cal_sync8"; - field public static final String CAL_SYNC9 = "cal_sync9"; - } - - public static final class CalendarContract.Calendars implements android.provider.BaseColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.SyncColumns { - field public static final String CALENDAR_LOCATION = "calendar_location"; - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "calendar_displayName"; - field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; - field public static final String NAME = "name"; - } - - public static final class CalendarContract.Colors implements android.provider.CalendarContract.ColorsColumns { - field public static final android.net.Uri CONTENT_URI; - } - - protected static interface CalendarContract.ColorsColumns extends android.provider.SyncStateContract.Columns { - field public static final String COLOR = "color"; - field public static final String COLOR_KEY = "color_index"; - field public static final String COLOR_TYPE = "color_type"; - field public static final int TYPE_CALENDAR = 0; // 0x0 - field public static final int TYPE_EVENT = 1; // 0x1 - } - - public static final class CalendarContract.EventDays implements android.provider.CalendarContract.EventDaysColumns { - method public static android.database.Cursor query(android.content.ContentResolver, int, int, String[]); - field public static final android.net.Uri CONTENT_URI; - } - - protected static interface CalendarContract.EventDaysColumns { - field public static final String ENDDAY = "endDay"; - field public static final String STARTDAY = "startDay"; - } - - public static final class CalendarContract.Events implements android.provider.BaseColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.EventsColumns android.provider.CalendarContract.SyncColumns { - field public static final android.net.Uri CONTENT_EXCEPTION_URI; - field public static final android.net.Uri CONTENT_URI; - field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; - } - - protected static interface CalendarContract.EventsColumns { - field public static final int ACCESS_CONFIDENTIAL = 1; // 0x1 - field public static final int ACCESS_DEFAULT = 0; // 0x0 - field public static final String ACCESS_LEVEL = "accessLevel"; - field public static final int ACCESS_PRIVATE = 2; // 0x2 - field public static final int ACCESS_PUBLIC = 3; // 0x3 - field public static final String ALL_DAY = "allDay"; - field public static final String AVAILABILITY = "availability"; - field public static final int AVAILABILITY_BUSY = 0; // 0x0 - field public static final int AVAILABILITY_FREE = 1; // 0x1 - field public static final int AVAILABILITY_TENTATIVE = 2; // 0x2 - field public static final String CALENDAR_ID = "calendar_id"; - field public static final String CAN_INVITE_OTHERS = "canInviteOthers"; - field public static final String CUSTOM_APP_PACKAGE = "customAppPackage"; - field public static final String CUSTOM_APP_URI = "customAppUri"; - field public static final String DESCRIPTION = "description"; - field public static final String DISPLAY_COLOR = "displayColor"; - field public static final String DTEND = "dtend"; - field public static final String DTSTART = "dtstart"; - field public static final String DURATION = "duration"; - field public static final String EVENT_COLOR = "eventColor"; - field public static final String EVENT_COLOR_KEY = "eventColor_index"; - field public static final String EVENT_END_TIMEZONE = "eventEndTimezone"; - field public static final String EVENT_LOCATION = "eventLocation"; - field public static final String EVENT_TIMEZONE = "eventTimezone"; - field public static final String EXDATE = "exdate"; - field public static final String EXRULE = "exrule"; - field public static final String GUESTS_CAN_INVITE_OTHERS = "guestsCanInviteOthers"; - field public static final String GUESTS_CAN_MODIFY = "guestsCanModify"; - field public static final String GUESTS_CAN_SEE_GUESTS = "guestsCanSeeGuests"; - field public static final String HAS_ALARM = "hasAlarm"; - field public static final String HAS_ATTENDEE_DATA = "hasAttendeeData"; - field public static final String HAS_EXTENDED_PROPERTIES = "hasExtendedProperties"; - field public static final String IS_ORGANIZER = "isOrganizer"; - field public static final String LAST_DATE = "lastDate"; - field public static final String LAST_SYNCED = "lastSynced"; - field public static final String ORGANIZER = "organizer"; - field public static final String ORIGINAL_ALL_DAY = "originalAllDay"; - field public static final String ORIGINAL_ID = "original_id"; - field public static final String ORIGINAL_INSTANCE_TIME = "originalInstanceTime"; - field public static final String ORIGINAL_SYNC_ID = "original_sync_id"; - field public static final String RDATE = "rdate"; - field public static final String RRULE = "rrule"; - field public static final String SELF_ATTENDEE_STATUS = "selfAttendeeStatus"; - field public static final String STATUS = "eventStatus"; - field public static final int STATUS_CANCELED = 2; // 0x2 - field public static final int STATUS_CONFIRMED = 1; // 0x1 - field public static final int STATUS_TENTATIVE = 0; // 0x0 - field public static final String SYNC_DATA1 = "sync_data1"; - field public static final String SYNC_DATA10 = "sync_data10"; - field public static final String SYNC_DATA2 = "sync_data2"; - field public static final String SYNC_DATA3 = "sync_data3"; - field public static final String SYNC_DATA4 = "sync_data4"; - field public static final String SYNC_DATA5 = "sync_data5"; - field public static final String SYNC_DATA6 = "sync_data6"; - field public static final String SYNC_DATA7 = "sync_data7"; - field public static final String SYNC_DATA8 = "sync_data8"; - field public static final String SYNC_DATA9 = "sync_data9"; - field public static final String TITLE = "title"; - field public static final String UID_2445 = "uid2445"; - } - - public static final class CalendarContract.EventsEntity implements android.provider.BaseColumns android.provider.CalendarContract.EventsColumns android.provider.CalendarContract.SyncColumns { - method public static android.content.EntityIterator newEntityIterator(android.database.Cursor, android.content.ContentResolver); - method public static android.content.EntityIterator newEntityIterator(android.database.Cursor, android.content.ContentProviderClient); - field public static final android.net.Uri CONTENT_URI; - } - - public static final class CalendarContract.ExtendedProperties implements android.provider.BaseColumns android.provider.CalendarContract.EventsColumns android.provider.CalendarContract.ExtendedPropertiesColumns { - field public static final android.net.Uri CONTENT_URI; - } - - protected static interface CalendarContract.ExtendedPropertiesColumns { - field public static final String EVENT_ID = "event_id"; - field public static final String NAME = "name"; - field public static final String VALUE = "value"; - } - - public static final class CalendarContract.Instances implements android.provider.BaseColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.EventsColumns { - method public static android.database.Cursor query(android.content.ContentResolver, String[], long, long); - method public static android.database.Cursor query(android.content.ContentResolver, String[], long, long, String); - field public static final String BEGIN = "begin"; - field public static final android.net.Uri CONTENT_BY_DAY_URI; - field public static final android.net.Uri CONTENT_SEARCH_BY_DAY_URI; - field public static final android.net.Uri CONTENT_SEARCH_URI; - field public static final android.net.Uri CONTENT_URI; - field public static final String END = "end"; - field public static final String END_DAY = "endDay"; - field public static final String END_MINUTE = "endMinute"; - field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_BY_DAY_URI; - field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_SEARCH_BY_DAY_URI; - field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_SEARCH_URI; - field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; - field public static final String EVENT_ID = "event_id"; - field public static final String START_DAY = "startDay"; - field public static final String START_MINUTE = "startMinute"; - } - - public static final class CalendarContract.Reminders implements android.provider.BaseColumns android.provider.CalendarContract.EventsColumns android.provider.CalendarContract.RemindersColumns { - method public static android.database.Cursor query(android.content.ContentResolver, long, String[]); - field public static final android.net.Uri CONTENT_URI; - } - - protected static interface CalendarContract.RemindersColumns { - field public static final String EVENT_ID = "event_id"; - field public static final String METHOD = "method"; - field public static final int METHOD_ALARM = 4; // 0x4 - field public static final int METHOD_ALERT = 1; // 0x1 - field public static final int METHOD_DEFAULT = 0; // 0x0 - field public static final int METHOD_EMAIL = 2; // 0x2 - field public static final int METHOD_SMS = 3; // 0x3 - field public static final String MINUTES = "minutes"; - field public static final int MINUTES_DEFAULT = -1; // 0xffffffff - } - - protected static interface CalendarContract.SyncColumns extends android.provider.CalendarContract.CalendarSyncColumns { - field public static final String ACCOUNT_NAME = "account_name"; - field public static final String ACCOUNT_TYPE = "account_type"; - field public static final String CAN_PARTIALLY_UPDATE = "canPartiallyUpdate"; - field public static final String DELETED = "deleted"; - field public static final String DIRTY = "dirty"; - field public static final String MUTATORS = "mutators"; - field public static final String _SYNC_ID = "_sync_id"; - } - - public static final class CalendarContract.SyncState implements android.provider.SyncStateContract.Columns { - field public static final android.net.Uri CONTENT_URI; - } - - public class CallLog { - ctor public CallLog(); - field public static final String AUTHORITY = "call_log"; - field public static final android.net.Uri CONTENT_URI; - } - - public static class CallLog.Calls implements android.provider.BaseColumns { - ctor public CallLog.Calls(); - method public static String getLastOutgoingCall(android.content.Context); - field public static final int ANSWERED_EXTERNALLY_TYPE = 7; // 0x7 - field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String ASSERTED_DISPLAY_NAME = "asserted_display_name"; - field public static final long AUTO_MISSED_EMERGENCY_CALL = 1L; // 0x1L - field public static final long AUTO_MISSED_MAXIMUM_DIALING = 4L; // 0x4L - field public static final long AUTO_MISSED_MAXIMUM_RINGING = 2L; // 0x2L - field public static final int BLOCKED_TYPE = 6; // 0x6 - field public static final String BLOCK_REASON = "block_reason"; - field public static final int BLOCK_REASON_BLOCKED_NUMBER = 3; // 0x3 - field public static final int BLOCK_REASON_CALL_SCREENING_SERVICE = 1; // 0x1 - field public static final int BLOCK_REASON_DIRECT_TO_VOICEMAIL = 2; // 0x2 - field public static final int BLOCK_REASON_NOT_BLOCKED = 0; // 0x0 - field public static final int BLOCK_REASON_NOT_IN_CONTACTS = 7; // 0x7 - field public static final int BLOCK_REASON_PAY_PHONE = 6; // 0x6 - field public static final int BLOCK_REASON_RESTRICTED_NUMBER = 5; // 0x5 - field public static final int BLOCK_REASON_UNKNOWN_NUMBER = 4; // 0x4 - field public static final String CACHED_FORMATTED_NUMBER = "formatted_number"; - field public static final String CACHED_LOOKUP_URI = "lookup_uri"; - field public static final String CACHED_MATCHED_NUMBER = "matched_number"; - field public static final String CACHED_NAME = "name"; - field public static final String CACHED_NORMALIZED_NUMBER = "normalized_number"; - field public static final String CACHED_NUMBER_LABEL = "numberlabel"; - field public static final String CACHED_NUMBER_TYPE = "numbertype"; - field public static final String CACHED_PHOTO_ID = "photo_id"; - field public static final String CACHED_PHOTO_URI = "photo_uri"; - field public static final String CALL_SCREENING_APP_NAME = "call_screening_app_name"; - field public static final String CALL_SCREENING_COMPONENT_NAME = "call_screening_component_name"; - field public static final String COMPOSER_PHOTO_URI = "composer_photo_uri"; - field public static final android.net.Uri CONTENT_FILTER_URI; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/calls"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/calls"; - field public static final android.net.Uri CONTENT_URI; - field public static final android.net.Uri CONTENT_URI_WITH_VOICEMAIL; - field public static final String COUNTRY_ISO = "countryiso"; - field public static final String DATA_USAGE = "data_usage"; - field public static final String DATE = "date"; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - field public static final String DURATION = "duration"; - field public static final String EXTRA_CALL_TYPE_FILTER = "android.provider.extra.CALL_TYPE_FILTER"; - field public static final String FEATURES = "features"; - field public static final int FEATURES_ASSISTED_DIALING_USED = 16; // 0x10 - field public static final int FEATURES_HD_CALL = 4; // 0x4 - field public static final int FEATURES_PULLED_EXTERNALLY = 2; // 0x2 - field public static final int FEATURES_RTT = 32; // 0x20 - field public static final int FEATURES_VIDEO = 1; // 0x1 - field public static final int FEATURES_VOLTE = 64; // 0x40 - field public static final int FEATURES_WIFI = 8; // 0x8 - field public static final String GEOCODED_LOCATION = "geocoded_location"; - field public static final int INCOMING_TYPE = 1; // 0x1 - field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String IS_BUSINESS_CALL = "is_business_call"; - field public static final String IS_READ = "is_read"; - field public static final String LAST_MODIFIED = "last_modified"; - field public static final String LIMIT_PARAM_KEY = "limit"; - field public static final String LOCATION = "location"; - field public static final String MISSED_REASON = "missed_reason"; - field public static final long MISSED_REASON_NOT_MISSED = 0L; // 0x0L - field public static final int MISSED_TYPE = 3; // 0x3 - field public static final String NEW = "new"; - field public static final String NUMBER = "number"; - field public static final String NUMBER_PRESENTATION = "presentation"; - field public static final String OFFSET_PARAM_KEY = "offset"; - field public static final int OUTGOING_TYPE = 2; // 0x2 - field public static final String PHONE_ACCOUNT_COMPONENT_NAME = "subscription_component_name"; - field public static final String PHONE_ACCOUNT_ID = "subscription_id"; - field public static final String POST_DIAL_DIGITS = "post_dial_digits"; - field public static final int PRESENTATION_ALLOWED = 1; // 0x1 - field public static final int PRESENTATION_PAYPHONE = 4; // 0x4 - field public static final int PRESENTATION_RESTRICTED = 2; // 0x2 - field public static final int PRESENTATION_UNAVAILABLE = 5; // 0x5 - field public static final int PRESENTATION_UNKNOWN = 3; // 0x3 - field public static final String PRIORITY = "priority"; - field public static final int PRIORITY_NORMAL = 0; // 0x0 - field public static final int PRIORITY_URGENT = 1; // 0x1 - field public static final int REJECTED_TYPE = 5; // 0x5 - field public static final String SUBJECT = "subject"; - field public static final String TRANSCRIPTION = "transcription"; - field public static final String TYPE = "type"; - field public static final long USER_MISSED_CALL_FILTERS_TIMEOUT = 4194304L; // 0x400000L - field public static final long USER_MISSED_CALL_SCREENING_SERVICE_SILENCED = 2097152L; // 0x200000L - field public static final long USER_MISSED_DND_MODE = 262144L; // 0x40000L - field public static final long USER_MISSED_LOW_RING_VOLUME = 524288L; // 0x80000L - field public static final long USER_MISSED_NO_ANSWER = 65536L; // 0x10000L - field public static final long USER_MISSED_NO_VIBRATE = 1048576L; // 0x100000L - field public static final long USER_MISSED_SHORT_RING = 131072L; // 0x20000L - field public static final String VIA_NUMBER = "via_number"; - field public static final int VOICEMAIL_TYPE = 4; // 0x4 - field public static final String VOICEMAIL_URI = "voicemail_uri"; - } - - public static class CallLog.Locations implements android.provider.BaseColumns { - field public static final String AUTHORITY = "call_composer_locations"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/call_composer_location"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/call_composer_location"; - field @NonNull public static final android.net.Uri CONTENT_URI; - field public static final String LATITUDE = "latitude"; - field public static final String LONGITUDE = "longitude"; - } - - @Deprecated public class Contacts { - field @Deprecated public static final String AUTHORITY = "contacts"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final int KIND_EMAIL = 1; // 0x1 - field @Deprecated public static final int KIND_IM = 3; // 0x3 - field @Deprecated public static final int KIND_ORGANIZATION = 4; // 0x4 - field @Deprecated public static final int KIND_PHONE = 5; // 0x5 - field @Deprecated public static final int KIND_POSTAL = 2; // 0x2 - } - - @Deprecated public static final class Contacts.ContactMethods implements android.provider.BaseColumns android.provider.Contacts.ContactMethodsColumns android.provider.Contacts.PeopleColumns { - method @Deprecated public void addPostalLocation(android.content.Context, long, double, double); - method @Deprecated public static Object decodeImProtocol(String); - method @Deprecated public static String encodeCustomImProtocol(String); - method @Deprecated public static String encodePredefinedImProtocol(int); - method @Deprecated public static CharSequence getDisplayLabel(android.content.Context, int, int, CharSequence); - field @Deprecated public static final String CONTENT_EMAIL_ITEM_TYPE = "vnd.android.cursor.item/email"; - field @Deprecated public static final String CONTENT_EMAIL_TYPE = "vnd.android.cursor.dir/email"; - field @Deprecated public static final android.net.Uri CONTENT_EMAIL_URI; - field @Deprecated public static final String CONTENT_IM_ITEM_TYPE = "vnd.android.cursor.item/jabber-im"; - field @Deprecated public static final String CONTENT_POSTAL_ITEM_TYPE = "vnd.android.cursor.item/postal-address"; - field @Deprecated public static final String CONTENT_POSTAL_TYPE = "vnd.android.cursor.dir/postal-address"; - field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact-methods"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; - field @Deprecated public static final String PERSON_ID = "person"; - field @Deprecated public static final String POSTAL_LOCATION_LATITUDE = "data"; - field @Deprecated public static final String POSTAL_LOCATION_LONGITUDE = "aux_data"; - field @Deprecated public static final int PROTOCOL_AIM = 0; // 0x0 - field @Deprecated public static final int PROTOCOL_GOOGLE_TALK = 5; // 0x5 - field @Deprecated public static final int PROTOCOL_ICQ = 6; // 0x6 - field @Deprecated public static final int PROTOCOL_JABBER = 7; // 0x7 - field @Deprecated public static final int PROTOCOL_MSN = 1; // 0x1 - field @Deprecated public static final int PROTOCOL_QQ = 4; // 0x4 - field @Deprecated public static final int PROTOCOL_SKYPE = 3; // 0x3 - field @Deprecated public static final int PROTOCOL_YAHOO = 2; // 0x2 - } - - @Deprecated public static interface Contacts.ContactMethodsColumns { - field @Deprecated public static final String AUX_DATA = "aux_data"; - field @Deprecated public static final String DATA = "data"; - field @Deprecated public static final String ISPRIMARY = "isprimary"; - field @Deprecated public static final String KIND = "kind"; - field @Deprecated public static final String LABEL = "label"; - field @Deprecated public static final String TYPE = "type"; - field @Deprecated public static final int TYPE_CUSTOM = 0; // 0x0 - field @Deprecated public static final int TYPE_HOME = 1; // 0x1 - field @Deprecated public static final int TYPE_OTHER = 3; // 0x3 - field @Deprecated public static final int TYPE_WORK = 2; // 0x2 - } - - @Deprecated public static final class Contacts.Extensions implements android.provider.BaseColumns android.provider.Contacts.ExtensionsColumns { - field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_extensions"; - field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_extensions"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "person, name ASC"; - field @Deprecated public static final String PERSON_ID = "person"; - } - - @Deprecated public static interface Contacts.ExtensionsColumns { - field @Deprecated public static final String NAME = "name"; - field @Deprecated public static final String VALUE = "value"; - } - - @Deprecated public static final class Contacts.GroupMembership implements android.provider.BaseColumns android.provider.Contacts.GroupsColumns { - field @Deprecated public static final String CONTENT_DIRECTORY = "groupmembership"; - field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contactsgroupmembership"; - field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contactsgroupmembership"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "group_id ASC"; - field @Deprecated public static final String GROUP_ID = "group_id"; - field @Deprecated public static final String GROUP_SYNC_ACCOUNT = "group_sync_account"; - field @Deprecated public static final String GROUP_SYNC_ACCOUNT_TYPE = "group_sync_account_type"; - field @Deprecated public static final String GROUP_SYNC_ID = "group_sync_id"; - field @Deprecated public static final String PERSON_ID = "person"; - field @Deprecated public static final android.net.Uri RAW_CONTENT_URI; - } - - @Deprecated public static final class Contacts.Groups implements android.provider.BaseColumns android.provider.Contacts.GroupsColumns { - field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contactsgroup"; - field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contactsgroup"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; - field @Deprecated public static final android.net.Uri DELETED_CONTENT_URI; - field @Deprecated public static final String GROUP_ANDROID_STARRED = "Starred in Android"; - field @Deprecated public static final String GROUP_MY_CONTACTS = "Contacts"; - } - - @Deprecated public static interface Contacts.GroupsColumns { - field @Deprecated public static final String NAME = "name"; - field @Deprecated public static final String NOTES = "notes"; - field @Deprecated public static final String SHOULD_SYNC = "should_sync"; - field @Deprecated public static final String SYSTEM_ID = "system_id"; - } - - @Deprecated public static final class Contacts.Intents { - ctor @Deprecated public Contacts.Intents(); - field @Deprecated public static final String ATTACH_IMAGE = "com.android.contacts.action.ATTACH_IMAGE"; - field @Deprecated public static final String EXTRA_CREATE_DESCRIPTION = "com.android.contacts.action.CREATE_DESCRIPTION"; - field @Deprecated public static final String EXTRA_FORCE_CREATE = "com.android.contacts.action.FORCE_CREATE"; - field @Deprecated public static final String SEARCH_SUGGESTION_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_CLICKED"; - field @Deprecated public static final String SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED"; - field @Deprecated public static final String SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED"; - field @Deprecated public static final String SHOW_OR_CREATE_CONTACT = "com.android.contacts.action.SHOW_OR_CREATE_CONTACT"; - } - - @Deprecated public static final class Contacts.Intents.Insert { - ctor @Deprecated public Contacts.Intents.Insert(); - field @Deprecated public static final String ACTION = "android.intent.action.INSERT"; - field @Deprecated public static final String COMPANY = "company"; - field @Deprecated public static final String EMAIL = "email"; - field @Deprecated public static final String EMAIL_ISPRIMARY = "email_isprimary"; - field @Deprecated public static final String EMAIL_TYPE = "email_type"; - field @Deprecated public static final String FULL_MODE = "full_mode"; - field @Deprecated public static final String IM_HANDLE = "im_handle"; - field @Deprecated public static final String IM_ISPRIMARY = "im_isprimary"; - field @Deprecated public static final String IM_PROTOCOL = "im_protocol"; - field @Deprecated public static final String JOB_TITLE = "job_title"; - field @Deprecated public static final String NAME = "name"; - field @Deprecated public static final String NOTES = "notes"; - field @Deprecated public static final String PHONE = "phone"; - field @Deprecated public static final String PHONETIC_NAME = "phonetic_name"; - field @Deprecated public static final String PHONE_ISPRIMARY = "phone_isprimary"; - field @Deprecated public static final String PHONE_TYPE = "phone_type"; - field @Deprecated public static final String POSTAL = "postal"; - field @Deprecated public static final String POSTAL_ISPRIMARY = "postal_isprimary"; - field @Deprecated public static final String POSTAL_TYPE = "postal_type"; - field @Deprecated public static final String SECONDARY_EMAIL = "secondary_email"; - field @Deprecated public static final String SECONDARY_EMAIL_TYPE = "secondary_email_type"; - field @Deprecated public static final String SECONDARY_PHONE = "secondary_phone"; - field @Deprecated public static final String SECONDARY_PHONE_TYPE = "secondary_phone_type"; - field @Deprecated public static final String TERTIARY_EMAIL = "tertiary_email"; - field @Deprecated public static final String TERTIARY_EMAIL_TYPE = "tertiary_email_type"; - field @Deprecated public static final String TERTIARY_PHONE = "tertiary_phone"; - field @Deprecated public static final String TERTIARY_PHONE_TYPE = "tertiary_phone_type"; - } - - @Deprecated public static final class Contacts.Intents.UI { - ctor @Deprecated public Contacts.Intents.UI(); - field @Deprecated public static final String FILTER_CONTACTS_ACTION = "com.android.contacts.action.FILTER_CONTACTS"; - field @Deprecated public static final String FILTER_TEXT_EXTRA_KEY = "com.android.contacts.extra.FILTER_TEXT"; - field @Deprecated public static final String GROUP_NAME_EXTRA_KEY = "com.android.contacts.extra.GROUP"; - field @Deprecated public static final String LIST_ALL_CONTACTS_ACTION = "com.android.contacts.action.LIST_ALL_CONTACTS"; - field @Deprecated public static final String LIST_CONTACTS_WITH_PHONES_ACTION = "com.android.contacts.action.LIST_CONTACTS_WITH_PHONES"; - field @Deprecated public static final String LIST_DEFAULT = "com.android.contacts.action.LIST_DEFAULT"; - field @Deprecated public static final String LIST_FREQUENT_ACTION = "com.android.contacts.action.LIST_FREQUENT"; - field @Deprecated public static final String LIST_GROUP_ACTION = "com.android.contacts.action.LIST_GROUP"; - field @Deprecated public static final String LIST_STARRED_ACTION = "com.android.contacts.action.LIST_STARRED"; - field @Deprecated public static final String LIST_STREQUENT_ACTION = "com.android.contacts.action.LIST_STREQUENT"; - field @Deprecated public static final String TITLE_EXTRA_KEY = "com.android.contacts.extra.TITLE_EXTRA"; - } - - @Deprecated public static interface Contacts.OrganizationColumns { - field @Deprecated public static final String COMPANY = "company"; - field @Deprecated public static final String ISPRIMARY = "isprimary"; - field @Deprecated public static final String LABEL = "label"; - field @Deprecated public static final String PERSON_ID = "person"; - field @Deprecated public static final String TITLE = "title"; - field @Deprecated public static final String TYPE = "type"; - field @Deprecated public static final int TYPE_CUSTOM = 0; // 0x0 - field @Deprecated public static final int TYPE_OTHER = 2; // 0x2 - field @Deprecated public static final int TYPE_WORK = 1; // 0x1 - } - - @Deprecated public static final class Contacts.Organizations implements android.provider.BaseColumns android.provider.Contacts.OrganizationColumns { - method @Deprecated public static CharSequence getDisplayLabel(android.content.Context, int, CharSequence); - field @Deprecated public static final String CONTENT_DIRECTORY = "organizations"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "company, title, isprimary ASC"; - } - - @Deprecated public static final class Contacts.People implements android.provider.BaseColumns android.provider.Contacts.PeopleColumns android.provider.Contacts.PhonesColumns android.provider.Contacts.PresenceColumns { - method @Deprecated public static android.net.Uri addToGroup(android.content.ContentResolver, long, String); - method @Deprecated public static android.net.Uri addToGroup(android.content.ContentResolver, long, long); - method @Deprecated public static android.net.Uri addToMyContactsGroup(android.content.ContentResolver, long); - method @Deprecated public static android.net.Uri createPersonInMyContactsGroup(android.content.ContentResolver, android.content.ContentValues); - method @Deprecated public static android.graphics.Bitmap loadContactPhoto(android.content.Context, android.net.Uri, int, android.graphics.BitmapFactory.Options); - method @Deprecated public static void markAsContacted(android.content.ContentResolver, long); - method @Deprecated public static java.io.InputStream openContactPhotoInputStream(android.content.ContentResolver, android.net.Uri); - method @Deprecated public static android.database.Cursor queryGroups(android.content.ContentResolver, long); - method @Deprecated public static void setPhotoData(android.content.ContentResolver, android.net.Uri, byte[]); - field @Deprecated public static final android.net.Uri CONTENT_FILTER_URI; - field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/person"; - field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/person"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; - field @Deprecated public static final android.net.Uri DELETED_CONTENT_URI; - field @Deprecated public static final String PRIMARY_EMAIL_ID = "primary_email"; - field @Deprecated public static final String PRIMARY_ORGANIZATION_ID = "primary_organization"; - field @Deprecated public static final String PRIMARY_PHONE_ID = "primary_phone"; - } - - @Deprecated public static final class Contacts.People.ContactMethods implements android.provider.BaseColumns android.provider.Contacts.ContactMethodsColumns android.provider.Contacts.PeopleColumns { - field @Deprecated public static final String CONTENT_DIRECTORY = "contact_methods"; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "data ASC"; - } - - @Deprecated public static class Contacts.People.Extensions implements android.provider.BaseColumns android.provider.Contacts.ExtensionsColumns { - field @Deprecated public static final String CONTENT_DIRECTORY = "extensions"; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; - field @Deprecated public static final String PERSON_ID = "person"; - } - - @Deprecated public static final class Contacts.People.Phones implements android.provider.BaseColumns android.provider.Contacts.PeopleColumns android.provider.Contacts.PhonesColumns { - field @Deprecated public static final String CONTENT_DIRECTORY = "phones"; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "number ASC"; - } - - @Deprecated public static interface Contacts.PeopleColumns { - field @Deprecated public static final String CUSTOM_RINGTONE = "custom_ringtone"; - field @Deprecated public static final String DISPLAY_NAME = "display_name"; - field @Deprecated public static final String LAST_TIME_CONTACTED = "last_time_contacted"; - field @Deprecated public static final String NAME = "name"; - field @Deprecated public static final String NOTES = "notes"; - field @Deprecated public static final String PHONETIC_NAME = "phonetic_name"; - field @Deprecated public static final String PHOTO_VERSION = "photo_version"; - field @Deprecated public static final String SEND_TO_VOICEMAIL = "send_to_voicemail"; - field @Deprecated public static final String STARRED = "starred"; - field @Deprecated public static final String TIMES_CONTACTED = "times_contacted"; - } - - @Deprecated public static final class Contacts.Phones implements android.provider.BaseColumns android.provider.Contacts.PeopleColumns android.provider.Contacts.PhonesColumns { - method @Deprecated public static CharSequence getDisplayLabel(android.content.Context, int, CharSequence, CharSequence[]); - method @Deprecated public static CharSequence getDisplayLabel(android.content.Context, int, CharSequence); - field @Deprecated public static final android.net.Uri CONTENT_FILTER_URL; - field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/phone"; - field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/phone"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; - field @Deprecated public static final String PERSON_ID = "person"; - } - - @Deprecated public static interface Contacts.PhonesColumns { - field @Deprecated public static final String ISPRIMARY = "isprimary"; - field @Deprecated public static final String LABEL = "label"; - field @Deprecated public static final String NUMBER = "number"; - field @Deprecated public static final String NUMBER_KEY = "number_key"; - field @Deprecated public static final String TYPE = "type"; - field @Deprecated public static final int TYPE_CUSTOM = 0; // 0x0 - field @Deprecated public static final int TYPE_FAX_HOME = 5; // 0x5 - field @Deprecated public static final int TYPE_FAX_WORK = 4; // 0x4 - field @Deprecated public static final int TYPE_HOME = 1; // 0x1 - field @Deprecated public static final int TYPE_MOBILE = 2; // 0x2 - field @Deprecated public static final int TYPE_OTHER = 7; // 0x7 - field @Deprecated public static final int TYPE_PAGER = 6; // 0x6 - field @Deprecated public static final int TYPE_WORK = 3; // 0x3 - } - - @Deprecated public static final class Contacts.Photos implements android.provider.BaseColumns android.provider.Contacts.PhotosColumns { - field @Deprecated public static final String CONTENT_DIRECTORY = "photo"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "person ASC"; - } - - @Deprecated public static interface Contacts.PhotosColumns { - field @Deprecated public static final String DATA = "data"; - field @Deprecated public static final String DOWNLOAD_REQUIRED = "download_required"; - field @Deprecated public static final String EXISTS_ON_SERVER = "exists_on_server"; - field @Deprecated public static final String LOCAL_VERSION = "local_version"; - field @Deprecated public static final String PERSON_ID = "person"; - field @Deprecated public static final String SYNC_ERROR = "sync_error"; - } - - @Deprecated public static interface Contacts.PresenceColumns { - field @Deprecated public static final int AVAILABLE = 5; // 0x5 - field @Deprecated public static final int AWAY = 2; // 0x2 - field @Deprecated public static final int DO_NOT_DISTURB = 4; // 0x4 - field @Deprecated public static final int IDLE = 3; // 0x3 - field @Deprecated public static final String IM_ACCOUNT = "im_account"; - field @Deprecated public static final String IM_HANDLE = "im_handle"; - field @Deprecated public static final String IM_PROTOCOL = "im_protocol"; - field @Deprecated public static final int INVISIBLE = 1; // 0x1 - field @Deprecated public static final int OFFLINE = 0; // 0x0 - field @Deprecated public static final String PRESENCE_CUSTOM_STATUS = "status"; - field @Deprecated public static final String PRESENCE_STATUS = "mode"; - field @Deprecated public static final String PRIORITY = "priority"; - } - - @Deprecated public static final class Contacts.Settings implements android.provider.BaseColumns android.provider.Contacts.SettingsColumns { - method @Deprecated public static String getSetting(android.content.ContentResolver, String, String); - method @Deprecated public static void setSetting(android.content.ContentResolver, String, String, String); - field @Deprecated public static final String CONTENT_DIRECTORY = "settings"; - field @Deprecated public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DEFAULT_SORT_ORDER = "key ASC"; - field @Deprecated public static final String SYNC_EVERYTHING = "syncEverything"; - } - - @Deprecated public static interface Contacts.SettingsColumns { - field @Deprecated public static final String KEY = "key"; - field @Deprecated public static final String VALUE = "value"; - field @Deprecated public static final String _SYNC_ACCOUNT = "_sync_account"; - field @Deprecated public static final String _SYNC_ACCOUNT_TYPE = "_sync_account_type"; - } - - public final class ContactsContract { - ctor public ContactsContract(); - method public static boolean isProfileId(long); - field public static final String AUTHORITY = "com.android.contacts"; - field public static final android.net.Uri AUTHORITY_URI; - field public static final String CALLER_IS_SYNCADAPTER = "caller_is_syncadapter"; - field public static final String DEFERRED_SNIPPETING = "deferred_snippeting"; - field public static final String DEFERRED_SNIPPETING_QUERY = "deferred_snippeting_query"; - field public static final String DIRECTORY_PARAM_KEY = "directory"; - field public static final String LIMIT_PARAM_KEY = "limit"; - field public static final String PRIMARY_ACCOUNT_NAME = "name_for_primary_account"; - field public static final String PRIMARY_ACCOUNT_TYPE = "type_for_primary_account"; - field public static final String REMOVE_DUPLICATE_ENTRIES = "remove_duplicate_entries"; - field public static final String STREQUENT_PHONE_ONLY = "strequent_phone_only"; - } - - public static final class ContactsContract.AggregationExceptions implements android.provider.BaseColumns { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/aggregation_exception"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/aggregation_exception"; - field public static final android.net.Uri CONTENT_URI; - field public static final String RAW_CONTACT_ID1 = "raw_contact_id1"; - field public static final String RAW_CONTACT_ID2 = "raw_contact_id2"; - field public static final String TYPE = "type"; - field public static final int TYPE_AUTOMATIC = 0; // 0x0 - field public static final int TYPE_KEEP_SEPARATE = 2; // 0x2 - field public static final int TYPE_KEEP_TOGETHER = 1; // 0x1 - } - - protected static interface ContactsContract.BaseSyncColumns { - field public static final String SYNC1 = "sync1"; - field public static final String SYNC2 = "sync2"; - field public static final String SYNC3 = "sync3"; - field public static final String SYNC4 = "sync4"; - } - - public static final class ContactsContract.CommonDataKinds { - } - - public static interface ContactsContract.CommonDataKinds.BaseTypes { - field public static final int TYPE_CUSTOM = 0; // 0x0 - } - - public static final class ContactsContract.CommonDataKinds.Callable implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - ctor public ContactsContract.CommonDataKinds.Callable(); - field public static final android.net.Uri CONTENT_FILTER_URI; - field public static final android.net.Uri CONTENT_URI; - field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - } - - protected static interface ContactsContract.CommonDataKinds.CommonColumns extends android.provider.ContactsContract.CommonDataKinds.BaseTypes { - field public static final String DATA = "data1"; - field public static final String LABEL = "data3"; - field public static final String TYPE = "data2"; - } - - public static final class ContactsContract.CommonDataKinds.Contactables implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - ctor public ContactsContract.CommonDataKinds.Contactables(); - field public static final android.net.Uri CONTENT_FILTER_URI; - field public static final android.net.Uri CONTENT_URI; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String VISIBLE_CONTACTS_ONLY = "visible_contacts_only"; - } - - public static final class ContactsContract.CommonDataKinds.Email implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); - method public static int getTypeLabelResource(int); - field public static final String ADDRESS = "data1"; - field public static final android.net.Uri CONTENT_FILTER_URI; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/email_v2"; - field public static final android.net.Uri CONTENT_LOOKUP_URI; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/email_v2"; - field public static final android.net.Uri CONTENT_URI; - field public static final String DISPLAY_NAME = "data4"; - field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; - field public static final android.net.Uri ENTERPRISE_CONTENT_LOOKUP_URI; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final int TYPE_HOME = 1; // 0x1 - field public static final int TYPE_MOBILE = 4; // 0x4 - field public static final int TYPE_OTHER = 3; // 0x3 - field public static final int TYPE_WORK = 2; // 0x2 - } - - public static final class ContactsContract.CommonDataKinds.Event implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); - method public static int getTypeResource(Integer); - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_event"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String START_DATE = "data1"; - field public static final int TYPE_ANNIVERSARY = 1; // 0x1 - field public static final int TYPE_BIRTHDAY = 3; // 0x3 - field public static final int TYPE_OTHER = 2; // 0x2 - } - - public static final class ContactsContract.CommonDataKinds.GroupMembership implements android.provider.ContactsContract.DataColumnsWithJoins { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/group_membership"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String GROUP_ROW_ID = "data1"; - field public static final String GROUP_SOURCE_ID = "group_sourceid"; - } - - public static final class ContactsContract.CommonDataKinds.Identity implements android.provider.ContactsContract.DataColumnsWithJoins { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/identity"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String IDENTITY = "data1"; - field public static final String NAMESPACE = "data2"; - } - - @Deprecated public static final class ContactsContract.CommonDataKinds.Im implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - method @Deprecated public static CharSequence getProtocolLabel(android.content.res.Resources, int, CharSequence); - method @Deprecated public static int getProtocolLabelResource(int); - method @Deprecated public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); - method @Deprecated public static int getTypeLabelResource(int); - field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/im"; - field @Deprecated public static final String CUSTOM_PROTOCOL = "data6"; - field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field @Deprecated public static final String PROTOCOL = "data5"; - field @Deprecated public static final int PROTOCOL_AIM = 0; // 0x0 - field @Deprecated public static final int PROTOCOL_CUSTOM = -1; // 0xffffffff - field @Deprecated public static final int PROTOCOL_GOOGLE_TALK = 5; // 0x5 - field @Deprecated public static final int PROTOCOL_ICQ = 6; // 0x6 - field @Deprecated public static final int PROTOCOL_JABBER = 7; // 0x7 - field @Deprecated public static final int PROTOCOL_MSN = 1; // 0x1 - field @Deprecated public static final int PROTOCOL_NETMEETING = 8; // 0x8 - field @Deprecated public static final int PROTOCOL_QQ = 4; // 0x4 - field @Deprecated public static final int PROTOCOL_SKYPE = 3; // 0x3 - field @Deprecated public static final int PROTOCOL_YAHOO = 2; // 0x2 - field @Deprecated public static final int TYPE_HOME = 1; // 0x1 - field @Deprecated public static final int TYPE_OTHER = 3; // 0x3 - field @Deprecated public static final int TYPE_WORK = 2; // 0x2 - } - - public static final class ContactsContract.CommonDataKinds.Nickname implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/nickname"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String NAME = "data1"; - field public static final int TYPE_DEFAULT = 1; // 0x1 - field public static final int TYPE_INITIALS = 5; // 0x5 - field public static final int TYPE_MAIDEN_NAME = 3; // 0x3 - field @Deprecated public static final int TYPE_MAINDEN_NAME = 3; // 0x3 - field public static final int TYPE_OTHER_NAME = 2; // 0x2 - field public static final int TYPE_SHORT_NAME = 4; // 0x4 - } - - public static final class ContactsContract.CommonDataKinds.Note implements android.provider.ContactsContract.DataColumnsWithJoins { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/note"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String NOTE = "data1"; - } - - public static final class ContactsContract.CommonDataKinds.Organization implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); - method public static int getTypeLabelResource(int); - field public static final String COMPANY = "data1"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/organization"; - field public static final String DEPARTMENT = "data5"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String JOB_DESCRIPTION = "data6"; - field public static final String OFFICE_LOCATION = "data9"; - field public static final String PHONETIC_NAME = "data8"; - field public static final String PHONETIC_NAME_STYLE = "data10"; - field public static final String SYMBOL = "data7"; - field public static final String TITLE = "data4"; - field public static final int TYPE_OTHER = 2; // 0x2 - field public static final int TYPE_WORK = 1; // 0x1 - } - - public static final class ContactsContract.CommonDataKinds.Phone implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); - method public static int getTypeLabelResource(int); - field public static final android.net.Uri CONTENT_FILTER_URI; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/phone_v2"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/phone_v2"; - field public static final android.net.Uri CONTENT_URI; - field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; - field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String NORMALIZED_NUMBER = "data4"; - field public static final String NUMBER = "data1"; - field public static final String SEARCH_DISPLAY_NAME_KEY = "search_display_name"; - field public static final String SEARCH_PHONE_NUMBER_KEY = "search_phone_number"; - field public static final int TYPE_ASSISTANT = 19; // 0x13 - field public static final int TYPE_CALLBACK = 8; // 0x8 - field public static final int TYPE_CAR = 9; // 0x9 - field public static final int TYPE_COMPANY_MAIN = 10; // 0xa - field public static final int TYPE_FAX_HOME = 5; // 0x5 - field public static final int TYPE_FAX_WORK = 4; // 0x4 - field public static final int TYPE_HOME = 1; // 0x1 - field public static final int TYPE_ISDN = 11; // 0xb - field public static final int TYPE_MAIN = 12; // 0xc - field public static final int TYPE_MMS = 20; // 0x14 - field public static final int TYPE_MOBILE = 2; // 0x2 - field public static final int TYPE_OTHER = 7; // 0x7 - field public static final int TYPE_OTHER_FAX = 13; // 0xd - field public static final int TYPE_PAGER = 6; // 0x6 - field public static final int TYPE_RADIO = 14; // 0xe - field public static final int TYPE_TELEX = 15; // 0xf - field public static final int TYPE_TTY_TDD = 16; // 0x10 - field public static final int TYPE_WORK = 3; // 0x3 - field public static final int TYPE_WORK_MOBILE = 17; // 0x11 - field public static final int TYPE_WORK_PAGER = 18; // 0x12 - } - - public static final class ContactsContract.CommonDataKinds.Photo implements android.provider.ContactsContract.DataColumnsWithJoins { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/photo"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String PHOTO = "data15"; - field public static final String PHOTO_FILE_ID = "data14"; - } - - public static final class ContactsContract.CommonDataKinds.Relation implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); - method public static int getTypeLabelResource(int); - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/relation"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String NAME = "data1"; - field public static final int TYPE_ASSISTANT = 1; // 0x1 - field public static final int TYPE_BROTHER = 2; // 0x2 - field public static final int TYPE_CHILD = 3; // 0x3 - field public static final int TYPE_DOMESTIC_PARTNER = 4; // 0x4 - field public static final int TYPE_FATHER = 5; // 0x5 - field public static final int TYPE_FRIEND = 6; // 0x6 - field public static final int TYPE_MANAGER = 7; // 0x7 - field public static final int TYPE_MOTHER = 8; // 0x8 - field public static final int TYPE_PARENT = 9; // 0x9 - field public static final int TYPE_PARTNER = 10; // 0xa - field public static final int TYPE_REFERRED_BY = 11; // 0xb - field public static final int TYPE_RELATIVE = 12; // 0xc - field public static final int TYPE_SISTER = 13; // 0xd - field public static final int TYPE_SPOUSE = 14; // 0xe - } - - @Deprecated public static final class ContactsContract.CommonDataKinds.SipAddress implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - method @Deprecated public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); - method @Deprecated public static int getTypeLabelResource(int); - field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/sip_address"; - field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field @Deprecated public static final String SIP_ADDRESS = "data1"; - field @Deprecated public static final int TYPE_HOME = 1; // 0x1 - field @Deprecated public static final int TYPE_OTHER = 3; // 0x3 - field @Deprecated public static final int TYPE_WORK = 2; // 0x2 - } - - public static final class ContactsContract.CommonDataKinds.StructuredName implements android.provider.ContactsContract.DataColumnsWithJoins { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/name"; - field public static final String DISPLAY_NAME = "data1"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String FAMILY_NAME = "data3"; - field public static final String FULL_NAME_STYLE = "data10"; - field public static final String GIVEN_NAME = "data2"; - field public static final String MIDDLE_NAME = "data5"; - field public static final String PHONETIC_FAMILY_NAME = "data9"; - field public static final String PHONETIC_GIVEN_NAME = "data7"; - field public static final String PHONETIC_MIDDLE_NAME = "data8"; - field public static final String PHONETIC_NAME_STYLE = "data11"; - field public static final String PREFIX = "data4"; - field public static final String SUFFIX = "data6"; - } - - public static final class ContactsContract.CommonDataKinds.StructuredPostal implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); - method public static int getTypeLabelResource(int); - field public static final String CITY = "data7"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/postal-address_v2"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/postal-address_v2"; - field public static final android.net.Uri CONTENT_URI; - field public static final String COUNTRY = "data10"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String FORMATTED_ADDRESS = "data1"; - field public static final String NEIGHBORHOOD = "data6"; - field public static final String POBOX = "data5"; - field public static final String POSTCODE = "data9"; - field public static final String REGION = "data8"; - field public static final String STREET = "data4"; - field public static final int TYPE_HOME = 1; // 0x1 - field public static final int TYPE_OTHER = 3; // 0x3 - field public static final int TYPE_WORK = 2; // 0x2 - } - - public static final class ContactsContract.CommonDataKinds.Website implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/website"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final int TYPE_BLOG = 2; // 0x2 - field public static final int TYPE_FTP = 6; // 0x6 - field public static final int TYPE_HOME = 4; // 0x4 - field public static final int TYPE_HOMEPAGE = 1; // 0x1 - field public static final int TYPE_OTHER = 7; // 0x7 - field public static final int TYPE_PROFILE = 3; // 0x3 - field public static final int TYPE_WORK = 5; // 0x5 - field public static final String URL = "data1"; - } - - protected static interface ContactsContract.ContactNameColumns { - field public static final String DISPLAY_NAME_ALTERNATIVE = "display_name_alt"; - field public static final String DISPLAY_NAME_PRIMARY = "display_name"; - field public static final String DISPLAY_NAME_SOURCE = "display_name_source"; - field public static final String PHONETIC_NAME = "phonetic_name"; - field public static final String PHONETIC_NAME_STYLE = "phonetic_name_style"; - field public static final String SORT_KEY_ALTERNATIVE = "sort_key_alt"; - field public static final String SORT_KEY_PRIMARY = "sort_key"; - } - - protected static interface ContactsContract.ContactOptionsColumns { - field public static final String CUSTOM_RINGTONE = "custom_ringtone"; - field @Deprecated public static final String LAST_TIME_CONTACTED = "last_time_contacted"; - field public static final String PINNED = "pinned"; - field public static final String SEND_TO_VOICEMAIL = "send_to_voicemail"; - field public static final String STARRED = "starred"; - field @Deprecated public static final String TIMES_CONTACTED = "times_contacted"; - } - - protected static interface ContactsContract.ContactStatusColumns { - field public static final String CONTACT_CHAT_CAPABILITY = "contact_chat_capability"; - field public static final String CONTACT_PRESENCE = "contact_presence"; - field public static final String CONTACT_STATUS = "contact_status"; - field public static final String CONTACT_STATUS_ICON = "contact_status_icon"; - field public static final String CONTACT_STATUS_LABEL = "contact_status_label"; - field public static final String CONTACT_STATUS_RES_PACKAGE = "contact_status_res_package"; - field public static final String CONTACT_STATUS_TIMESTAMP = "contact_status_ts"; - } - - public static class ContactsContract.Contacts implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns { - method public static android.net.Uri getLookupUri(android.content.ContentResolver, android.net.Uri); - method public static android.net.Uri getLookupUri(long, String); - method public static boolean isEnterpriseContactId(long); - method public static android.net.Uri lookupContact(android.content.ContentResolver, android.net.Uri); - method @Deprecated public static void markAsContacted(android.content.ContentResolver, long); - method public static java.io.InputStream openContactPhotoInputStream(android.content.ContentResolver, android.net.Uri, boolean); - method public static java.io.InputStream openContactPhotoInputStream(android.content.ContentResolver, android.net.Uri); - field public static final android.net.Uri CONTENT_FILTER_URI; - field @Deprecated public static final android.net.Uri CONTENT_FREQUENT_URI; - field public static final android.net.Uri CONTENT_GROUP_URI; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact"; - field public static final android.net.Uri CONTENT_LOOKUP_URI; - field public static final android.net.Uri CONTENT_MULTI_VCARD_URI; - field public static final android.net.Uri CONTENT_STREQUENT_FILTER_URI; - field public static final android.net.Uri CONTENT_STREQUENT_URI; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact"; - field public static final android.net.Uri CONTENT_URI; - field public static final String CONTENT_VCARD_TYPE = "text/x-vcard"; - field public static final android.net.Uri CONTENT_VCARD_URI; - field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; - field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String QUERY_PARAMETER_VCARD_NO_PHOTO = "no_photo"; - } - - public static final class ContactsContract.Contacts.AggregationSuggestions implements android.provider.BaseColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns { - field public static final String CONTENT_DIRECTORY = "suggestions"; - } - - public static final class ContactsContract.Contacts.AggregationSuggestions.Builder { - ctor public ContactsContract.Contacts.AggregationSuggestions.Builder(); - method public android.provider.ContactsContract.Contacts.AggregationSuggestions.Builder addNameParameter(String); - method public android.net.Uri build(); - method public android.provider.ContactsContract.Contacts.AggregationSuggestions.Builder setContactId(long); - method public android.provider.ContactsContract.Contacts.AggregationSuggestions.Builder setLimit(int); - } - - public static final class ContactsContract.Contacts.Data implements android.provider.BaseColumns android.provider.ContactsContract.DataColumns { - field public static final String CONTENT_DIRECTORY = "data"; - } - - public static final class ContactsContract.Contacts.Entity implements android.provider.BaseColumns android.provider.ContactsContract.BaseSyncColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns android.provider.ContactsContract.DataColumns android.provider.ContactsContract.DataUsageStatColumns android.provider.ContactsContract.RawContactsColumns android.provider.ContactsContract.StatusColumns android.provider.ContactsContract.SyncColumns { - field public static final String CONTENT_DIRECTORY = "entities"; - field public static final String DATA_ID = "data_id"; - field public static final String RAW_CONTACT_ID = "raw_contact_id"; - } - - public static final class ContactsContract.Contacts.Photo implements android.provider.BaseColumns android.provider.ContactsContract.DataColumnsWithJoins { - field public static final String CONTENT_DIRECTORY = "photo"; - field public static final String DISPLAY_PHOTO = "display_photo"; - field public static final String PHOTO = "data15"; - field public static final String PHOTO_FILE_ID = "data14"; - } - - protected static interface ContactsContract.ContactsColumns { - field public static final String CONTACT_LAST_UPDATED_TIMESTAMP = "contact_last_updated_timestamp"; - field public static final String DISPLAY_NAME = "display_name"; - field public static final String HAS_PHONE_NUMBER = "has_phone_number"; - field public static final String IN_DEFAULT_DIRECTORY = "in_default_directory"; - field public static final String IN_VISIBLE_GROUP = "in_visible_group"; - field public static final String IS_USER_PROFILE = "is_user_profile"; - field public static final String LOOKUP_KEY = "lookup"; - field public static final String NAME_RAW_CONTACT_ID = "name_raw_contact_id"; - field public static final String PHOTO_FILE_ID = "photo_file_id"; - field public static final String PHOTO_ID = "photo_id"; - field public static final String PHOTO_THUMBNAIL_URI = "photo_thumb_uri"; - field public static final String PHOTO_URI = "photo_uri"; - } - - public static final class ContactsContract.Data implements android.provider.ContactsContract.DataColumnsWithJoins { - method public static android.net.Uri getContactLookupUri(android.content.ContentResolver, android.net.Uri); - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/data"; - field public static final android.net.Uri CONTENT_URI; - field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; - field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; - field public static final String VISIBLE_CONTACTS_ONLY = "visible_contacts_only"; - } - - protected static interface ContactsContract.DataColumns { - field @Deprecated public static final String CARRIER_PRESENCE = "carrier_presence"; - field @Deprecated public static final int CARRIER_PRESENCE_VT_CAPABLE = 1; // 0x1 - field public static final String DATA1 = "data1"; - field public static final String DATA10 = "data10"; - field public static final String DATA11 = "data11"; - field public static final String DATA12 = "data12"; - field public static final String DATA13 = "data13"; - field public static final String DATA14 = "data14"; - field public static final String DATA15 = "data15"; - field public static final String DATA2 = "data2"; - field public static final String DATA3 = "data3"; - field public static final String DATA4 = "data4"; - field public static final String DATA5 = "data5"; - field public static final String DATA6 = "data6"; - field public static final String DATA7 = "data7"; - field public static final String DATA8 = "data8"; - field public static final String DATA9 = "data9"; - field public static final String DATA_VERSION = "data_version"; - field public static final String IS_PRIMARY = "is_primary"; - field public static final String IS_READ_ONLY = "is_read_only"; - field public static final String IS_SUPER_PRIMARY = "is_super_primary"; - field public static final String MIMETYPE = "mimetype"; - field public static final String PREFERRED_PHONE_ACCOUNT_COMPONENT_NAME = "preferred_phone_account_component_name"; - field public static final String PREFERRED_PHONE_ACCOUNT_ID = "preferred_phone_account_id"; - field public static final String RAW_CONTACT_ID = "raw_contact_id"; - field public static final String RES_PACKAGE = "res_package"; - field public static final String SYNC1 = "data_sync1"; - field public static final String SYNC2 = "data_sync2"; - field public static final String SYNC3 = "data_sync3"; - field public static final String SYNC4 = "data_sync4"; - } - - protected static interface ContactsContract.DataColumnsWithJoins extends android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns android.provider.ContactsContract.DataColumns android.provider.ContactsContract.DataUsageStatColumns android.provider.ContactsContract.RawContactsColumns android.provider.ContactsContract.StatusColumns { - } - - @Deprecated public static final class ContactsContract.DataUsageFeedback { - ctor @Deprecated public ContactsContract.DataUsageFeedback(); - field @Deprecated public static final android.net.Uri DELETE_USAGE_URI; - field @Deprecated public static final android.net.Uri FEEDBACK_URI; - field @Deprecated public static final String USAGE_TYPE = "type"; - field @Deprecated public static final String USAGE_TYPE_CALL = "call"; - field @Deprecated public static final String USAGE_TYPE_LONG_TEXT = "long_text"; - field @Deprecated public static final String USAGE_TYPE_SHORT_TEXT = "short_text"; - } - - protected static interface ContactsContract.DataUsageStatColumns { - field @Deprecated public static final String LAST_TIME_USED = "last_time_used"; - field @Deprecated public static final String TIMES_USED = "times_used"; - } - - public static final class ContactsContract.DeletedContacts implements android.provider.ContactsContract.DeletedContactsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final long DAYS_KEPT_MILLISECONDS = 2592000000L; // 0x9a7ec800L - } - - protected static interface ContactsContract.DeletedContactsColumns { - field public static final String CONTACT_DELETED_TIMESTAMP = "contact_deleted_timestamp"; - field public static final String CONTACT_ID = "contact_id"; - } - - public static final class ContactsContract.Directory implements android.provider.BaseColumns { - method public static boolean isEnterpriseDirectoryId(long); - method public static boolean isRemoteDirectoryId(long); - method public static void notifyDirectoryChange(android.content.ContentResolver); - field public static final String ACCOUNT_NAME = "accountName"; - field public static final String ACCOUNT_TYPE = "accountType"; - field public static final String CALLER_PACKAGE_PARAM_KEY = "callerPackage"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_directory"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_directories"; - field public static final android.net.Uri CONTENT_URI; - field public static final long DEFAULT = 0L; // 0x0L - field public static final String DIRECTORY_AUTHORITY = "authority"; - field public static final String DISPLAY_NAME = "displayName"; - field public static final android.net.Uri ENTERPRISE_CONTENT_URI; - field public static final long ENTERPRISE_DEFAULT = 1000000000L; // 0x3b9aca00L - field public static final long ENTERPRISE_LOCAL_INVISIBLE = 1000000001L; // 0x3b9aca01L - field public static final String EXPORT_SUPPORT = "exportSupport"; - field public static final int EXPORT_SUPPORT_ANY_ACCOUNT = 2; // 0x2 - field public static final int EXPORT_SUPPORT_NONE = 0; // 0x0 - field public static final int EXPORT_SUPPORT_SAME_ACCOUNT_ONLY = 1; // 0x1 - field public static final long LOCAL_INVISIBLE = 1L; // 0x1L - field public static final String PACKAGE_NAME = "packageName"; - field public static final String PHOTO_SUPPORT = "photoSupport"; - field public static final int PHOTO_SUPPORT_FULL = 3; // 0x3 - field public static final int PHOTO_SUPPORT_FULL_SIZE_ONLY = 2; // 0x2 - field public static final int PHOTO_SUPPORT_NONE = 0; // 0x0 - field public static final int PHOTO_SUPPORT_THUMBNAIL_ONLY = 1; // 0x1 - field public static final String SHORTCUT_SUPPORT = "shortcutSupport"; - field public static final int SHORTCUT_SUPPORT_DATA_ITEMS_ONLY = 1; // 0x1 - field public static final int SHORTCUT_SUPPORT_FULL = 2; // 0x2 - field public static final int SHORTCUT_SUPPORT_NONE = 0; // 0x0 - field public static final String TYPE_RESOURCE_ID = "typeResourceId"; - } - - public static interface ContactsContract.DisplayNameSources { - field public static final int EMAIL = 10; // 0xa - field public static final int NICKNAME = 35; // 0x23 - field public static final int ORGANIZATION = 30; // 0x1e - field public static final int PHONE = 20; // 0x14 - field public static final int STRUCTURED_NAME = 40; // 0x28 - field public static final int STRUCTURED_PHONETIC_NAME = 37; // 0x25 - field public static final int UNDEFINED = 0; // 0x0 - } - - public static final class ContactsContract.DisplayPhoto { - field public static final android.net.Uri CONTENT_MAX_DIMENSIONS_URI; - field public static final android.net.Uri CONTENT_URI; - field public static final String DISPLAY_MAX_DIM = "display_max_dim"; - field public static final String THUMBNAIL_MAX_DIM = "thumbnail_max_dim"; - } - - public static interface ContactsContract.FullNameStyle { - field public static final int CHINESE = 3; // 0x3 - field public static final int CJK = 2; // 0x2 - field public static final int JAPANESE = 4; // 0x4 - field public static final int KOREAN = 5; // 0x5 - field public static final int UNDEFINED = 0; // 0x0 - field public static final int WESTERN = 1; // 0x1 - } - - public static final class ContactsContract.Groups implements android.provider.BaseColumns android.provider.ContactsContract.GroupsColumns android.provider.ContactsContract.SyncColumns { - method public static android.content.EntityIterator newEntityIterator(android.database.Cursor); - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/group"; - field public static final android.net.Uri CONTENT_SUMMARY_URI; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/group"; - field public static final android.net.Uri CONTENT_URI; - } - - protected static interface ContactsContract.GroupsColumns { - field public static final String AUTO_ADD = "auto_add"; - field public static final String DATA_SET = "data_set"; - field public static final String DELETED = "deleted"; - field public static final String FAVORITES = "favorites"; - field public static final String GROUP_IS_READ_ONLY = "group_is_read_only"; - field public static final String GROUP_VISIBLE = "group_visible"; - field public static final String NOTES = "notes"; - field public static final String RES_PACKAGE = "res_package"; - field public static final String SHOULD_SYNC = "should_sync"; - field public static final String SUMMARY_COUNT = "summ_count"; - field public static final String SUMMARY_WITH_PHONES = "summ_phones"; - field public static final String SYSTEM_ID = "system_id"; - field public static final String TITLE = "title"; - field public static final String TITLE_RES = "title_res"; - } - - public static final class ContactsContract.Intents { - ctor public ContactsContract.Intents(); - field public static final String ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS = "android.provider.action.VOICE_SEND_MESSAGE_TO_CONTACTS"; - field public static final String ATTACH_IMAGE = "com.android.contacts.action.ATTACH_IMAGE"; - field public static final String CONTACTS_DATABASE_CREATED = "android.provider.Contacts.DATABASE_CREATED"; - field public static final String EXTRA_CREATE_DESCRIPTION = "com.android.contacts.action.CREATE_DESCRIPTION"; - field public static final String EXTRA_FORCE_CREATE = "com.android.contacts.action.FORCE_CREATE"; - field public static final String EXTRA_RECIPIENT_CONTACT_CHAT_ID = "android.provider.extra.RECIPIENT_CONTACT_CHAT_ID"; - field public static final String EXTRA_RECIPIENT_CONTACT_NAME = "android.provider.extra.RECIPIENT_CONTACT_NAME"; - field public static final String EXTRA_RECIPIENT_CONTACT_URI = "android.provider.extra.RECIPIENT_CONTACT_URI"; - field public static final String INVITE_CONTACT = "com.android.contacts.action.INVITE_CONTACT"; - field public static final String METADATA_ACCOUNT_TYPE = "android.provider.account_type"; - field public static final String METADATA_MIMETYPE = "android.provider.mimetype"; - field public static final String SEARCH_SUGGESTION_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_CLICKED"; - field public static final String SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED"; - field public static final String SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED"; - field public static final String SHOW_OR_CREATE_CONTACT = "com.android.contacts.action.SHOW_OR_CREATE_CONTACT"; - } - - public static final class ContactsContract.Intents.Insert { - ctor public ContactsContract.Intents.Insert(); - field public static final String ACTION = "android.intent.action.INSERT"; - field public static final String COMPANY = "company"; - field public static final String DATA = "data"; - field public static final String EMAIL = "email"; - field public static final String EMAIL_ISPRIMARY = "email_isprimary"; - field public static final String EMAIL_TYPE = "email_type"; - field public static final String EXTRA_ACCOUNT = "android.provider.extra.ACCOUNT"; - field public static final String EXTRA_DATA_SET = "android.provider.extra.DATA_SET"; - field public static final String FULL_MODE = "full_mode"; - field public static final String IM_HANDLE = "im_handle"; - field public static final String IM_ISPRIMARY = "im_isprimary"; - field public static final String IM_PROTOCOL = "im_protocol"; - field public static final String JOB_TITLE = "job_title"; - field public static final String NAME = "name"; - field public static final String NOTES = "notes"; - field public static final String PHONE = "phone"; - field public static final String PHONETIC_NAME = "phonetic_name"; - field public static final String PHONE_ISPRIMARY = "phone_isprimary"; - field public static final String PHONE_TYPE = "phone_type"; - field public static final String POSTAL = "postal"; - field public static final String POSTAL_ISPRIMARY = "postal_isprimary"; - field public static final String POSTAL_TYPE = "postal_type"; - field public static final String SECONDARY_EMAIL = "secondary_email"; - field public static final String SECONDARY_EMAIL_TYPE = "secondary_email_type"; - field public static final String SECONDARY_PHONE = "secondary_phone"; - field public static final String SECONDARY_PHONE_TYPE = "secondary_phone_type"; - field public static final String TERTIARY_EMAIL = "tertiary_email"; - field public static final String TERTIARY_EMAIL_TYPE = "tertiary_email_type"; - field public static final String TERTIARY_PHONE = "tertiary_phone"; - field public static final String TERTIARY_PHONE_TYPE = "tertiary_phone_type"; - } - - public static final class ContactsContract.PhoneLookup implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactsColumns android.provider.ContactsContract.PhoneLookupColumns { - field public static final android.net.Uri CONTENT_FILTER_URI; - field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; - field public static final String QUERY_PARAMETER_SIP_ADDRESS = "sip"; - } - - protected static interface ContactsContract.PhoneLookupColumns { - field public static final String CONTACT_ID = "contact_id"; - field public static final String DATA_ID = "data_id"; - field public static final String LABEL = "label"; - field public static final String NORMALIZED_NUMBER = "normalized_number"; - field public static final String NUMBER = "number"; - field public static final String TYPE = "type"; - } - - public static interface ContactsContract.PhoneticNameStyle { - field public static final int JAPANESE = 4; // 0x4 - field public static final int KOREAN = 5; // 0x5 - field public static final int PINYIN = 3; // 0x3 - field public static final int UNDEFINED = 0; // 0x0 - } - - public static final class ContactsContract.PinnedPositions { - ctor public ContactsContract.PinnedPositions(); - method public static void pin(android.content.ContentResolver, long, int); - method public static void undemote(android.content.ContentResolver, long); - field public static final int DEMOTED = -1; // 0xffffffff - field public static final int UNPINNED = 0; // 0x0 - } - - @Deprecated public static final class ContactsContract.Presence extends android.provider.ContactsContract.StatusUpdates { - ctor @Deprecated public ContactsContract.Presence(); - } - - protected static interface ContactsContract.PresenceColumns { - field public static final String CUSTOM_PROTOCOL = "custom_protocol"; - field public static final String DATA_ID = "presence_data_id"; - field public static final String IM_ACCOUNT = "im_account"; - field public static final String IM_HANDLE = "im_handle"; - field public static final String PROTOCOL = "protocol"; - } - - public static final class ContactsContract.Profile implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns { - field public static final android.net.Uri CONTENT_RAW_CONTACTS_URI; - field public static final android.net.Uri CONTENT_URI; - field public static final android.net.Uri CONTENT_VCARD_URI; - field public static final long MIN_ID = 9223372034707292160L; // 0x7fffffff80000000L - } - - public static final class ContactsContract.ProfileSyncState implements android.provider.SyncStateContract.Columns { - method public static byte[] get(android.content.ContentProviderClient, android.accounts.Account) throws android.os.RemoteException; - method public static android.util.Pair getWithUri(android.content.ContentProviderClient, android.accounts.Account) throws android.os.RemoteException; - method public static android.content.ContentProviderOperation newSetOperation(android.accounts.Account, byte[]); - method public static void set(android.content.ContentProviderClient, android.accounts.Account, byte[]) throws android.os.RemoteException; - field public static final String CONTENT_DIRECTORY = "syncstate"; - field public static final android.net.Uri CONTENT_URI; - } - - public static final class ContactsContract.ProviderStatus { - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/provider_status"; - field public static final android.net.Uri CONTENT_URI; - field public static final String DATABASE_CREATION_TIMESTAMP = "database_creation_timestamp"; - field public static final String STATUS = "status"; - field public static final int STATUS_BUSY = 1; // 0x1 - field public static final int STATUS_EMPTY = 2; // 0x2 - field public static final int STATUS_NORMAL = 0; // 0x0 - } - - public static final class ContactsContract.QuickContact { - ctor public ContactsContract.QuickContact(); - method public static void showQuickContact(android.content.Context, android.view.View, android.net.Uri, int, String[]); - method public static void showQuickContact(android.content.Context, android.graphics.Rect, android.net.Uri, int, String[]); - method public static void showQuickContact(android.content.Context, android.view.View, android.net.Uri, String[], String); - method public static void showQuickContact(android.content.Context, android.graphics.Rect, android.net.Uri, String[], String); - field public static final String ACTION_QUICK_CONTACT = "android.provider.action.QUICK_CONTACT"; - field public static final String EXTRA_EXCLUDE_MIMES = "android.provider.extra.EXCLUDE_MIMES"; - field public static final String EXTRA_MODE = "android.provider.extra.MODE"; - field public static final String EXTRA_PRIORITIZED_MIMETYPE = "android.provider.extra.PRIORITIZED_MIMETYPE"; - field public static final int MODE_LARGE = 3; // 0x3 - field public static final int MODE_MEDIUM = 2; // 0x2 - field public static final int MODE_SMALL = 1; // 0x1 - } - - public static final class ContactsContract.RawContacts implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.RawContactsColumns android.provider.ContactsContract.SyncColumns { - method public static android.net.Uri getContactLookupUri(android.content.ContentResolver, android.net.Uri); - method @Nullable public static String getLocalAccountName(@NonNull android.content.Context); - method @Nullable public static String getLocalAccountType(@NonNull android.content.Context); - method public static android.content.EntityIterator newEntityIterator(android.database.Cursor); - field public static final int AGGREGATION_MODE_DEFAULT = 0; // 0x0 - field public static final int AGGREGATION_MODE_DISABLED = 3; // 0x3 - field @Deprecated public static final int AGGREGATION_MODE_IMMEDIATE = 1; // 0x1 - field public static final int AGGREGATION_MODE_SUSPENDED = 2; // 0x2 - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/raw_contact"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/raw_contact"; - field public static final android.net.Uri CONTENT_URI; - } - - public static final class ContactsContract.RawContacts.Data implements android.provider.BaseColumns android.provider.ContactsContract.DataColumns { - field public static final String CONTENT_DIRECTORY = "data"; - } - - @FlaggedApi("android.provider.new_default_account_api_enabled") public static final class ContactsContract.RawContacts.DefaultAccount { - method @FlaggedApi("android.provider.new_default_account_api_enabled") @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState getDefaultAccountForNewContacts(@NonNull android.content.ContentResolver); - field public static final String ACTION_MOVE_CONTACTS_TO_DEFAULT_ACCOUNT = "android.provider.action.MOVE_CONTACTS_TO_DEFAULT_ACCOUNT"; - } - - @FlaggedApi("android.provider.new_default_account_api_enabled") public static final class ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState { - method @Nullable public android.accounts.Account getAccount(); - method public int getState(); - method @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState ofCloud(@NonNull android.accounts.Account); - method @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState ofLocal(); - method @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState ofNotSet(); - method @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState ofSim(@NonNull android.accounts.Account); - field public static final int DEFAULT_ACCOUNT_STATE_CLOUD = 3; // 0x3 - field public static final int DEFAULT_ACCOUNT_STATE_LOCAL = 2; // 0x2 - field public static final int DEFAULT_ACCOUNT_STATE_NOT_SET = 1; // 0x1 - field public static final int DEFAULT_ACCOUNT_STATE_SIM = 4; // 0x4 - } - - public static final class ContactsContract.RawContacts.DisplayPhoto { - field public static final String CONTENT_DIRECTORY = "display_photo"; - } - - public static final class ContactsContract.RawContacts.Entity implements android.provider.BaseColumns android.provider.ContactsContract.DataColumns { - field public static final String CONTENT_DIRECTORY = "entity"; - field public static final String DATA_ID = "data_id"; - } - - protected static interface ContactsContract.RawContactsColumns { - field public static final String ACCOUNT_TYPE_AND_DATA_SET = "account_type_and_data_set"; - field public static final String AGGREGATION_MODE = "aggregation_mode"; - field public static final String BACKUP_ID = "backup_id"; - field public static final String CONTACT_ID = "contact_id"; - field public static final String DATA_SET = "data_set"; - field public static final String DELETED = "deleted"; - field @Deprecated public static final String METADATA_DIRTY = "metadata_dirty"; - field public static final String RAW_CONTACT_IS_READ_ONLY = "raw_contact_is_read_only"; - field public static final String RAW_CONTACT_IS_USER_PROFILE = "raw_contact_is_user_profile"; - } - - public static final class ContactsContract.RawContactsEntity implements android.provider.BaseColumns android.provider.ContactsContract.DataColumns android.provider.ContactsContract.RawContactsColumns { - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/raw_contact_entity"; - field public static final android.net.Uri CONTENT_URI; - field public static final String DATA_ID = "data_id"; - field public static final android.net.Uri PROFILE_CONTENT_URI; - } - - public static class ContactsContract.SearchSnippets { - ctor public ContactsContract.SearchSnippets(); - field public static final String DEFERRED_SNIPPETING_KEY = "deferred_snippeting"; - field public static final String SNIPPET = "snippet"; - } - - public static final class ContactsContract.Settings implements android.provider.ContactsContract.SettingsColumns { - method @Deprecated @FlaggedApi("android.provider.new_default_account_api_enabled") @Nullable public static android.accounts.Account getDefaultAccount(@NonNull android.content.ContentResolver); - field public static final String ACTION_SET_DEFAULT_ACCOUNT = "android.provider.action.SET_DEFAULT_ACCOUNT"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/setting"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/setting"; - field public static final android.net.Uri CONTENT_URI; - } - - protected static interface ContactsContract.SettingsColumns { - field public static final String ACCOUNT_NAME = "account_name"; - field public static final String ACCOUNT_TYPE = "account_type"; - field public static final String ANY_UNSYNCED = "any_unsynced"; - field public static final String DATA_SET = "data_set"; - field public static final String SHOULD_SYNC = "should_sync"; - field public static final String UNGROUPED_COUNT = "summ_count"; - field public static final String UNGROUPED_VISIBLE = "ungrouped_visible"; - field public static final String UNGROUPED_WITH_PHONES = "summ_phones"; - } - - public static final class ContactsContract.SimAccount implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getAccountName(); - method @NonNull public String getAccountType(); - method public int getEfType(); - method public int getSimSlotIndex(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int ADN_EF_TYPE = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FDN_EF_TYPE = 2; // 0x2 - field public static final int SDN_EF_TYPE = 3; // 0x3 - field public static final int UNKNOWN_EF_TYPE = 0; // 0x0 - } - - public static final class ContactsContract.SimContacts { - method @NonNull public static java.util.List getSimAccounts(@NonNull android.content.ContentResolver); - field public static final String ACTION_SIM_ACCOUNTS_CHANGED = "android.provider.action.SIM_ACCOUNTS_CHANGED"; - } - - protected static interface ContactsContract.StatusColumns { - field public static final int AVAILABLE = 5; // 0x5 - field public static final int AWAY = 2; // 0x2 - field public static final int CAPABILITY_HAS_CAMERA = 4; // 0x4 - field public static final int CAPABILITY_HAS_VIDEO = 2; // 0x2 - field public static final int CAPABILITY_HAS_VOICE = 1; // 0x1 - field public static final String CHAT_CAPABILITY = "chat_capability"; - field public static final int DO_NOT_DISTURB = 4; // 0x4 - field public static final int IDLE = 3; // 0x3 - field public static final int INVISIBLE = 1; // 0x1 - field public static final int OFFLINE = 0; // 0x0 - field public static final String PRESENCE = "mode"; - field @Deprecated public static final String PRESENCE_CUSTOM_STATUS = "status"; - field @Deprecated public static final String PRESENCE_STATUS = "mode"; - field public static final String STATUS = "status"; - field public static final String STATUS_ICON = "status_icon"; - field public static final String STATUS_LABEL = "status_label"; - field public static final String STATUS_RES_PACKAGE = "status_res_package"; - field public static final String STATUS_TIMESTAMP = "status_ts"; - } - - public static class ContactsContract.StatusUpdates implements android.provider.ContactsContract.PresenceColumns android.provider.ContactsContract.StatusColumns { - method public static final int getPresenceIconResourceId(int); - method public static final int getPresencePrecedence(int); - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/status-update"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/status-update"; - field public static final android.net.Uri CONTENT_URI; - field public static final android.net.Uri PROFILE_CONTENT_URI; - } - - protected static interface ContactsContract.SyncColumns extends android.provider.ContactsContract.BaseSyncColumns { - field public static final String ACCOUNT_NAME = "account_name"; - field public static final String ACCOUNT_TYPE = "account_type"; - field public static final String DIRTY = "dirty"; - field public static final String SOURCE_ID = "sourceid"; - field public static final String VERSION = "version"; - } - - public static final class ContactsContract.SyncState implements android.provider.SyncStateContract.Columns { - method public static byte[] get(android.content.ContentProviderClient, android.accounts.Account) throws android.os.RemoteException; - method public static android.util.Pair getWithUri(android.content.ContentProviderClient, android.accounts.Account) throws android.os.RemoteException; - method public static android.content.ContentProviderOperation newSetOperation(android.accounts.Account, byte[]); - method public static void set(android.content.ContentProviderClient, android.accounts.Account, byte[]) throws android.os.RemoteException; - field public static final String CONTENT_DIRECTORY = "syncstate"; - field public static final android.net.Uri CONTENT_URI; - } - - public final class DocumentsContract { - method public static android.net.Uri buildChildDocumentsUri(String, String); - method public static android.net.Uri buildChildDocumentsUriUsingTree(android.net.Uri, String); - method public static android.net.Uri buildDocumentUri(String, String); - method public static android.net.Uri buildDocumentUriUsingTree(android.net.Uri, String); - method public static android.net.Uri buildRecentDocumentsUri(String, String); - method public static android.net.Uri buildRootUri(String, String); - method public static android.net.Uri buildRootsUri(String); - method public static android.net.Uri buildSearchDocumentsUri(String, String, String); - method public static android.net.Uri buildTreeDocumentUri(String, String); - method @Nullable public static android.net.Uri copyDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.net.Uri) throws java.io.FileNotFoundException; - method @Nullable public static android.net.Uri createDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull String, @NonNull String) throws java.io.FileNotFoundException; - method @Nullable public static android.content.IntentSender createWebLinkIntent(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @Nullable android.os.Bundle) throws java.io.FileNotFoundException; - method public static boolean deleteDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri) throws java.io.FileNotFoundException; - method public static void ejectRoot(@NonNull android.content.ContentResolver, @NonNull android.net.Uri); - method @Nullable public static android.provider.DocumentsContract.Path findDocumentPath(@NonNull android.content.ContentResolver, @NonNull android.net.Uri) throws java.io.FileNotFoundException; - method public static String getDocumentId(android.net.Uri); - method @Nullable public static android.os.Bundle getDocumentMetadata(@NonNull android.content.ContentResolver, @NonNull android.net.Uri) throws java.io.FileNotFoundException; - method @Nullable public static android.graphics.Bitmap getDocumentThumbnail(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.graphics.Point, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method public static String getRootId(android.net.Uri); - method public static String getSearchDocumentsQuery(android.net.Uri); - method public static String getTreeDocumentId(android.net.Uri); - method public static boolean isChildDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.net.Uri) throws java.io.FileNotFoundException; - method public static boolean isDocumentUri(android.content.Context, @Nullable android.net.Uri); - method public static boolean isRootUri(@NonNull android.content.Context, @Nullable android.net.Uri); - method public static boolean isRootsUri(@NonNull android.content.Context, @Nullable android.net.Uri); - method public static boolean isTreeUri(android.net.Uri); - method @Nullable public static android.net.Uri moveDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.net.Uri, @NonNull android.net.Uri) throws java.io.FileNotFoundException; - method public static boolean removeDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.net.Uri) throws java.io.FileNotFoundException; - method @Nullable public static android.net.Uri renameDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; - field public static final String ACTION_DOCUMENT_SETTINGS = "android.provider.action.DOCUMENT_SETTINGS"; - field public static final String EXTRA_ERROR = "error"; - field public static final String EXTRA_EXCLUDE_SELF = "android.provider.extra.EXCLUDE_SELF"; - field public static final String EXTRA_INFO = "info"; - field public static final String EXTRA_INITIAL_URI = "android.provider.extra.INITIAL_URI"; - field public static final String EXTRA_LOADING = "loading"; - field public static final String EXTRA_ORIENTATION = "android.provider.extra.ORIENTATION"; - field public static final String EXTRA_PROMPT = "android.provider.extra.PROMPT"; - field public static final String METADATA_EXIF = "android:documentExif"; - field public static final String METADATA_TREE_COUNT = "android:metadataTreeCount"; - field public static final String METADATA_TREE_SIZE = "android:metadataTreeSize"; - field public static final String METADATA_TYPES = "android:documentMetadataTypes"; - field public static final String PROVIDER_INTERFACE = "android.content.action.DOCUMENTS_PROVIDER"; - field public static final String QUERY_ARG_DISPLAY_NAME = "android:query-arg-display-name"; - field public static final String QUERY_ARG_EXCLUDE_MEDIA = "android:query-arg-exclude-media"; - field public static final String QUERY_ARG_FILE_SIZE_OVER = "android:query-arg-file-size-over"; - field public static final String QUERY_ARG_LAST_MODIFIED_AFTER = "android:query-arg-last-modified-after"; - field public static final String QUERY_ARG_MIME_TYPES = "android:query-arg-mime-types"; - } - - public static final class DocumentsContract.Document { - field public static final String COLUMN_DISPLAY_NAME = "_display_name"; - field public static final String COLUMN_DOCUMENT_ID = "document_id"; - field public static final String COLUMN_FLAGS = "flags"; - field public static final String COLUMN_ICON = "icon"; - field public static final String COLUMN_LAST_MODIFIED = "last_modified"; - field public static final String COLUMN_MIME_TYPE = "mime_type"; - field public static final String COLUMN_SIZE = "_size"; - field public static final String COLUMN_SUMMARY = "summary"; - field public static final int FLAG_DIR_BLOCKS_OPEN_DOCUMENT_TREE = 32768; // 0x8000 - field public static final int FLAG_DIR_PREFERS_GRID = 16; // 0x10 - field public static final int FLAG_DIR_PREFERS_LAST_MODIFIED = 32; // 0x20 - field public static final int FLAG_DIR_SUPPORTS_CREATE = 8; // 0x8 - field public static final int FLAG_PARTIAL = 8192; // 0x2000 - field public static final int FLAG_SUPPORTS_COPY = 128; // 0x80 - field public static final int FLAG_SUPPORTS_DELETE = 4; // 0x4 - field public static final int FLAG_SUPPORTS_METADATA = 16384; // 0x4000 - field public static final int FLAG_SUPPORTS_MOVE = 256; // 0x100 - field public static final int FLAG_SUPPORTS_REMOVE = 1024; // 0x400 - field public static final int FLAG_SUPPORTS_RENAME = 64; // 0x40 - field public static final int FLAG_SUPPORTS_SETTINGS = 2048; // 0x800 - field public static final int FLAG_SUPPORTS_THUMBNAIL = 1; // 0x1 - field public static final int FLAG_SUPPORTS_WRITE = 2; // 0x2 - field public static final int FLAG_VIRTUAL_DOCUMENT = 512; // 0x200 - field public static final int FLAG_WEB_LINKABLE = 4096; // 0x1000 - field public static final String MIME_TYPE_DIR = "vnd.android.document/directory"; - } - - public static final class DocumentsContract.Path implements android.os.Parcelable { - ctor public DocumentsContract.Path(@Nullable String, java.util.List); - method public int describeContents(); - method public java.util.List getPath(); - method @Nullable public String getRootId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class DocumentsContract.Root { - field public static final String COLUMN_AVAILABLE_BYTES = "available_bytes"; - field public static final String COLUMN_CAPACITY_BYTES = "capacity_bytes"; - field public static final String COLUMN_DOCUMENT_ID = "document_id"; - field public static final String COLUMN_FLAGS = "flags"; - field public static final String COLUMN_ICON = "icon"; - field public static final String COLUMN_MIME_TYPES = "mime_types"; - field public static final String COLUMN_QUERY_ARGS = "query_args"; - field public static final String COLUMN_ROOT_ID = "root_id"; - field public static final String COLUMN_SUMMARY = "summary"; - field public static final String COLUMN_TITLE = "title"; - field public static final int FLAG_EMPTY = 64; // 0x40 - field public static final int FLAG_LOCAL_ONLY = 2; // 0x2 - field public static final int FLAG_SUPPORTS_CREATE = 1; // 0x1 - field public static final int FLAG_SUPPORTS_EJECT = 32; // 0x20 - field public static final int FLAG_SUPPORTS_IS_CHILD = 16; // 0x10 - field public static final int FLAG_SUPPORTS_RECENTS = 4; // 0x4 - field public static final int FLAG_SUPPORTS_SEARCH = 8; // 0x8 - field public static final String MIME_TYPE_ITEM = "vnd.android.document/root"; - } - - public abstract class DocumentsProvider extends android.content.ContentProvider { - ctor public DocumentsProvider(); - method public String copyDocument(String, String) throws java.io.FileNotFoundException; - method public String createDocument(String, String, String) throws java.io.FileNotFoundException; - method public android.content.IntentSender createWebLinkIntent(String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException; - method public final int delete(android.net.Uri, String, String[]); - method public void deleteDocument(String) throws java.io.FileNotFoundException; - method public void ejectRoot(String); - method public android.provider.DocumentsContract.Path findDocumentPath(@Nullable String, String) throws java.io.FileNotFoundException; - method @Nullable public android.os.Bundle getDocumentMetadata(@NonNull String) throws java.io.FileNotFoundException; - method public String[] getDocumentStreamTypes(String, String); - method public String getDocumentType(String) throws java.io.FileNotFoundException; - method public final String getType(android.net.Uri); - method @Nullable public final String getTypeAnonymous(@NonNull android.net.Uri); - method public final android.net.Uri insert(android.net.Uri, android.content.ContentValues); - method public boolean isChildDocument(String, String); - method public String moveDocument(String, String, String) throws java.io.FileNotFoundException; - method public final android.content.res.AssetFileDescriptor openAssetFile(android.net.Uri, String) throws java.io.FileNotFoundException; - method public final android.content.res.AssetFileDescriptor openAssetFile(android.net.Uri, String, android.os.CancellationSignal) throws java.io.FileNotFoundException; - method public abstract android.os.ParcelFileDescriptor openDocument(String, String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method public android.content.res.AssetFileDescriptor openDocumentThumbnail(String, android.graphics.Point, android.os.CancellationSignal) throws java.io.FileNotFoundException; - method public final android.os.ParcelFileDescriptor openFile(android.net.Uri, String) throws java.io.FileNotFoundException; - method public final android.os.ParcelFileDescriptor openFile(android.net.Uri, String, android.os.CancellationSignal) throws java.io.FileNotFoundException; - method public final android.content.res.AssetFileDescriptor openTypedAssetFile(android.net.Uri, String, android.os.Bundle) throws java.io.FileNotFoundException; - method public final android.content.res.AssetFileDescriptor openTypedAssetFile(android.net.Uri, String, android.os.Bundle, android.os.CancellationSignal) throws java.io.FileNotFoundException; - method public android.content.res.AssetFileDescriptor openTypedDocument(String, String, android.os.Bundle, android.os.CancellationSignal) throws java.io.FileNotFoundException; - method public final android.database.Cursor query(android.net.Uri, String[], String, String[], String); - method public final android.database.Cursor query(android.net.Uri, String[], android.os.Bundle, android.os.CancellationSignal); - method public abstract android.database.Cursor queryChildDocuments(String, String[], String) throws java.io.FileNotFoundException; - method public android.database.Cursor queryChildDocuments(String, @Nullable String[], @Nullable android.os.Bundle) throws java.io.FileNotFoundException; - method public abstract android.database.Cursor queryDocument(String, String[]) throws java.io.FileNotFoundException; - method public android.database.Cursor queryRecentDocuments(String, String[]) throws java.io.FileNotFoundException; - method @Nullable public android.database.Cursor queryRecentDocuments(@NonNull String, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; - method public abstract android.database.Cursor queryRoots(String[]) throws java.io.FileNotFoundException; - method public android.database.Cursor querySearchDocuments(String, String, String[]) throws java.io.FileNotFoundException; - method @Nullable public android.database.Cursor querySearchDocuments(@NonNull String, @Nullable String[], @NonNull android.os.Bundle) throws java.io.FileNotFoundException; - method public void removeDocument(String, String) throws java.io.FileNotFoundException; - method public String renameDocument(String, String) throws java.io.FileNotFoundException; - method public final void revokeDocumentPermission(String); - method public final int update(android.net.Uri, android.content.ContentValues, String, String[]); - } - - @FlaggedApi("android.provider.user_keys") public final class E2eeContactKeysManager { - method @NonNull @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public java.util.List getAllE2eeContactKeys(@NonNull String); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public java.util.List getAllE2eeSelfKeys(); - method @Nullable @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public android.provider.E2eeContactKeysManager.E2eeContactKey getE2eeContactKey(@NonNull String, @NonNull String, @NonNull String); - method @Nullable @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public android.provider.E2eeContactKeysManager.E2eeSelfKey getE2eeSelfKey(@NonNull String, @NonNull String); - method public static int getMaxKeySizeBytes(); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public java.util.List getOwnerE2eeContactKeys(@NonNull String); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public java.util.List getOwnerE2eeSelfKeys(); - method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean removeE2eeContactKey(@NonNull String, @NonNull String, @NonNull String); - method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean removeE2eeSelfKey(@NonNull String, @NonNull String); - method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean updateE2eeContactKeyLocalVerificationState(@NonNull String, @NonNull String, @NonNull String, int); - method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean updateE2eeContactKeyRemoteVerificationState(@NonNull String, @NonNull String, @NonNull String, int); - method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean updateE2eeSelfKeyRemoteVerificationState(@NonNull String, @NonNull String, int); - method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public void updateOrInsertE2eeContactKey(@NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); - method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean updateOrInsertE2eeSelfKey(@NonNull String, @NonNull String, @NonNull byte[]); - field public static final int VERIFICATION_STATE_UNVERIFIED = 0; // 0x0 - field public static final int VERIFICATION_STATE_VERIFICATION_FAILED = 1; // 0x1 - field public static final int VERIFICATION_STATE_VERIFIED = 2; // 0x2 - } - - public static final class E2eeContactKeysManager.E2eeContactKey implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getAccountId(); - method @Nullable public String getDeviceId(); - method @Nullable public String getDisplayName(); - method @Nullable public String getEmailAddress(); - method @Nullable public byte[] getKeyValue(); - method public int getLocalVerificationState(); - method @NonNull public String getOwnerPackageName(); - method @Nullable public String getPhoneNumber(); - method public int getRemoteVerificationState(); - method public long getTimeUpdated(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class E2eeContactKeysManager.E2eeSelfKey implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getAccountId(); - method @Nullable public String getDeviceId(); - method @Nullable public byte[] getKeyValue(); - method @NonNull public String getOwnerPackageName(); - method public int getRemoteVerificationState(); - method public long getTimeUpdated(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @Deprecated public final class FontRequest { - ctor @Deprecated public FontRequest(@NonNull String, @NonNull String, @NonNull String); - ctor @Deprecated public FontRequest(@NonNull String, @NonNull String, @NonNull String, @NonNull java.util.List>); - method @Deprecated public java.util.List> getCertificates(); - method @Deprecated public String getProviderAuthority(); - method @Deprecated public String getProviderPackage(); - method @Deprecated public String getQuery(); - } - - @Deprecated public class FontsContract { - method @Deprecated public static android.graphics.Typeface buildTypeface(@NonNull android.content.Context, @Nullable android.os.CancellationSignal, @NonNull android.provider.FontsContract.FontInfo[]); - method @Deprecated @NonNull public static android.provider.FontsContract.FontFamilyResult fetchFonts(@NonNull android.content.Context, @Nullable android.os.CancellationSignal, @NonNull android.provider.FontRequest) throws android.content.pm.PackageManager.NameNotFoundException; - method @Deprecated public static void requestFonts(@NonNull android.content.Context, @NonNull android.provider.FontRequest, @NonNull android.os.Handler, @Nullable android.os.CancellationSignal, @NonNull android.provider.FontsContract.FontRequestCallback); - } - - @Deprecated public static final class FontsContract.Columns implements android.provider.BaseColumns { - field @Deprecated public static final String FILE_ID = "file_id"; - field @Deprecated public static final String ITALIC = "font_italic"; - field @Deprecated public static final String RESULT_CODE = "result_code"; - field @Deprecated public static final int RESULT_CODE_FONT_NOT_FOUND = 1; // 0x1 - field @Deprecated public static final int RESULT_CODE_FONT_UNAVAILABLE = 2; // 0x2 - field @Deprecated public static final int RESULT_CODE_MALFORMED_QUERY = 3; // 0x3 - field @Deprecated public static final int RESULT_CODE_OK = 0; // 0x0 - field @Deprecated public static final String TTC_INDEX = "font_ttc_index"; - field @Deprecated public static final String VARIATION_SETTINGS = "font_variation_settings"; - field @Deprecated public static final String WEIGHT = "font_weight"; - } - - @Deprecated public static class FontsContract.FontFamilyResult { - method @Deprecated @NonNull public android.provider.FontsContract.FontInfo[] getFonts(); - method @Deprecated public int getStatusCode(); - field @Deprecated public static final int STATUS_OK = 0; // 0x0 - field @Deprecated public static final int STATUS_REJECTED = 3; // 0x3 - field @Deprecated public static final int STATUS_UNEXPECTED_DATA_PROVIDED = 2; // 0x2 - field @Deprecated public static final int STATUS_WRONG_CERTIFICATES = 1; // 0x1 - } - - @Deprecated public static class FontsContract.FontInfo { - method @Deprecated @Nullable public android.graphics.fonts.FontVariationAxis[] getAxes(); - method @Deprecated public int getResultCode(); - method @Deprecated @IntRange(from=0) public int getTtcIndex(); - method @Deprecated @NonNull public android.net.Uri getUri(); - method @Deprecated @IntRange(from=1, to=1000) public int getWeight(); - method @Deprecated public boolean isItalic(); - } - - @Deprecated public static class FontsContract.FontRequestCallback { - ctor @Deprecated public FontsContract.FontRequestCallback(); - method @Deprecated public void onTypefaceRequestFailed(int); - method @Deprecated public void onTypefaceRetrieved(android.graphics.Typeface); - field @Deprecated public static final int FAIL_REASON_FONT_LOAD_ERROR = -3; // 0xfffffffd - field @Deprecated public static final int FAIL_REASON_FONT_NOT_FOUND = 1; // 0x1 - field @Deprecated public static final int FAIL_REASON_FONT_UNAVAILABLE = 2; // 0x2 - field @Deprecated public static final int FAIL_REASON_MALFORMED_QUERY = 3; // 0x3 - field @Deprecated public static final int FAIL_REASON_PROVIDER_NOT_FOUND = -1; // 0xffffffff - field @Deprecated public static final int FAIL_REASON_WRONG_CERTIFICATES = -2; // 0xfffffffe - } - - @Deprecated public final class LiveFolders implements android.provider.BaseColumns { - field @Deprecated public static final String ACTION_CREATE_LIVE_FOLDER = "android.intent.action.CREATE_LIVE_FOLDER"; - field @Deprecated public static final String DESCRIPTION = "description"; - field @Deprecated public static final int DISPLAY_MODE_GRID = 1; // 0x1 - field @Deprecated public static final int DISPLAY_MODE_LIST = 2; // 0x2 - field @Deprecated public static final String EXTRA_LIVE_FOLDER_BASE_INTENT = "android.intent.extra.livefolder.BASE_INTENT"; - field @Deprecated public static final String EXTRA_LIVE_FOLDER_DISPLAY_MODE = "android.intent.extra.livefolder.DISPLAY_MODE"; - field @Deprecated public static final String EXTRA_LIVE_FOLDER_ICON = "android.intent.extra.livefolder.ICON"; - field @Deprecated public static final String EXTRA_LIVE_FOLDER_NAME = "android.intent.extra.livefolder.NAME"; - field @Deprecated public static final String ICON_BITMAP = "icon_bitmap"; - field @Deprecated public static final String ICON_PACKAGE = "icon_package"; - field @Deprecated public static final String ICON_RESOURCE = "icon_resource"; - field @Deprecated public static final String INTENT = "intent"; - field @Deprecated public static final String NAME = "name"; - } - - public interface OpenableColumns { - field public static final String DISPLAY_NAME = "_display_name"; - field public static final String SIZE = "_size"; - } - - public class SearchRecentSuggestions { - ctor public SearchRecentSuggestions(android.content.Context, String, int); - method public void clearHistory(); - method public void saveRecentQuery(String, String); - method protected void truncateHistory(android.content.ContentResolver, int); - field public static final String[] QUERIES_PROJECTION_1LINE; - field public static final String[] QUERIES_PROJECTION_2LINE; - field public static final int QUERIES_PROJECTION_DATE_INDEX = 1; // 0x1 - field public static final int QUERIES_PROJECTION_DISPLAY1_INDEX = 3; // 0x3 - field public static final int QUERIES_PROJECTION_DISPLAY2_INDEX = 4; // 0x4 - field public static final int QUERIES_PROJECTION_QUERY_INDEX = 2; // 0x2 - } - - public final class Settings { - ctor public Settings(); - method public static boolean canDrawOverlays(android.content.Context); - field public static final String ACTION_ACCESSIBILITY_SETTINGS = "android.settings.ACCESSIBILITY_SETTINGS"; - field public static final String ACTION_ADD_ACCOUNT = "android.settings.ADD_ACCOUNT_SETTINGS"; - field public static final String ACTION_ADVANCED_MEMORY_PROTECTION_SETTINGS = "android.settings.ADVANCED_MEMORY_PROTECTION_SETTINGS"; - field public static final String ACTION_AIRPLANE_MODE_SETTINGS = "android.settings.AIRPLANE_MODE_SETTINGS"; - field public static final String ACTION_ALL_APPS_NOTIFICATION_SETTINGS = "android.settings.ALL_APPS_NOTIFICATION_SETTINGS"; - field public static final String ACTION_APN_SETTINGS = "android.settings.APN_SETTINGS"; - field public static final String ACTION_APPLICATION_DETAILS_SETTINGS = "android.settings.APPLICATION_DETAILS_SETTINGS"; - field public static final String ACTION_APPLICATION_DEVELOPMENT_SETTINGS = "android.settings.APPLICATION_DEVELOPMENT_SETTINGS"; - field public static final String ACTION_APPLICATION_SETTINGS = "android.settings.APPLICATION_SETTINGS"; - field public static final String ACTION_APP_LOCALE_SETTINGS = "android.settings.APP_LOCALE_SETTINGS"; - field public static final String ACTION_APP_NOTIFICATION_BUBBLE_SETTINGS = "android.settings.APP_NOTIFICATION_BUBBLE_SETTINGS"; - field @FlaggedApi("android.app.api_rich_ongoing") public static final String ACTION_APP_NOTIFICATION_PROMOTION_SETTINGS = "android.settings.APP_NOTIFICATION_PROMOTION_SETTINGS"; - field public static final String ACTION_APP_NOTIFICATION_SETTINGS = "android.settings.APP_NOTIFICATION_SETTINGS"; - field public static final String ACTION_APP_OPEN_BY_DEFAULT_SETTINGS = "android.settings.APP_OPEN_BY_DEFAULT_SETTINGS"; - field public static final String ACTION_APP_SEARCH_SETTINGS = "android.settings.APP_SEARCH_SETTINGS"; - field public static final String ACTION_APP_USAGE_SETTINGS = "android.settings.action.APP_USAGE_SETTINGS"; - field @FlaggedApi("android.app.modes_api") public static final String ACTION_AUTOMATIC_ZEN_RULE_SETTINGS = "android.settings.AUTOMATIC_ZEN_RULE_SETTINGS"; - field public static final String ACTION_AUTO_ROTATE_SETTINGS = "android.settings.AUTO_ROTATE_SETTINGS"; - field public static final String ACTION_BATTERY_SAVER_SETTINGS = "android.settings.BATTERY_SAVER_SETTINGS"; - field public static final String ACTION_BIOMETRIC_ENROLL = "android.settings.BIOMETRIC_ENROLL"; - field public static final String ACTION_BLUETOOTH_SETTINGS = "android.settings.BLUETOOTH_SETTINGS"; - field public static final String ACTION_CAPTIONING_SETTINGS = "android.settings.CAPTIONING_SETTINGS"; - field public static final String ACTION_CAST_SETTINGS = "android.settings.CAST_SETTINGS"; - field public static final String ACTION_CHANNEL_NOTIFICATION_SETTINGS = "android.settings.CHANNEL_NOTIFICATION_SETTINGS"; - field public static final String ACTION_CONDITION_PROVIDER_SETTINGS = "android.settings.ACTION_CONDITION_PROVIDER_SETTINGS"; - field @FlaggedApi("android.credentials.flags.new_settings_intents") public static final String ACTION_CREDENTIAL_PROVIDER = "android.settings.CREDENTIAL_PROVIDER"; - field public static final String ACTION_DATA_ROAMING_SETTINGS = "android.settings.DATA_ROAMING_SETTINGS"; - field public static final String ACTION_DATA_USAGE_SETTINGS = "android.settings.DATA_USAGE_SETTINGS"; - field public static final String ACTION_DATE_SETTINGS = "android.settings.DATE_SETTINGS"; - field public static final String ACTION_DEVICE_INFO_SETTINGS = "android.settings.DEVICE_INFO_SETTINGS"; - field public static final String ACTION_DISPLAY_SETTINGS = "android.settings.DISPLAY_SETTINGS"; - field public static final String ACTION_DREAM_SETTINGS = "android.settings.DREAM_SETTINGS"; - field @Deprecated public static final String ACTION_FINGERPRINT_ENROLL = "android.settings.FINGERPRINT_ENROLL"; - field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_FIRST_DAY_OF_WEEK_SETTINGS = "android.settings.FIRST_DAY_OF_WEEK_SETTINGS"; - field public static final String ACTION_HARD_KEYBOARD_SETTINGS = "android.settings.HARD_KEYBOARD_SETTINGS"; - field public static final String ACTION_HOME_SETTINGS = "android.settings.HOME_SETTINGS"; - field public static final String ACTION_IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS = "android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS"; - field public static final String ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS = "android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS"; - field public static final String ACTION_INPUT_METHOD_SETTINGS = "android.settings.INPUT_METHOD_SETTINGS"; - field public static final String ACTION_INPUT_METHOD_SUBTYPE_SETTINGS = "android.settings.INPUT_METHOD_SUBTYPE_SETTINGS"; - field public static final String ACTION_INTERNAL_STORAGE_SETTINGS = "android.settings.INTERNAL_STORAGE_SETTINGS"; - field public static final String ACTION_LOCALE_SETTINGS = "android.settings.LOCALE_SETTINGS"; - field public static final String ACTION_LOCATION_SOURCE_SETTINGS = "android.settings.LOCATION_SOURCE_SETTINGS"; - field public static final String ACTION_MANAGE_ALL_APPLICATIONS_SETTINGS = "android.settings.MANAGE_ALL_APPLICATIONS_SETTINGS"; - field public static final String ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION = "android.settings.MANAGE_ALL_FILES_ACCESS_PERMISSION"; - field public static final String ACTION_MANAGE_ALL_SIM_PROFILES_SETTINGS = "android.settings.MANAGE_ALL_SIM_PROFILES_SETTINGS"; - field public static final String ACTION_MANAGE_APPLICATIONS_SETTINGS = "android.settings.MANAGE_APPLICATIONS_SETTINGS"; - field public static final String ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION = "android.settings.MANAGE_APP_ALL_FILES_ACCESS_PERMISSION"; - field public static final String ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT = "android.settings.MANAGE_APP_USE_FULL_SCREEN_INTENT"; - field public static final String ACTION_MANAGE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_DEFAULT_APPS_SETTINGS"; - field public static final String ACTION_MANAGE_OVERLAY_PERMISSION = "android.settings.action.MANAGE_OVERLAY_PERMISSION"; - field public static final String ACTION_MANAGE_SUPERVISOR_RESTRICTED_SETTING = "android.settings.MANAGE_SUPERVISOR_RESTRICTED_SETTING"; - field public static final String ACTION_MANAGE_UNKNOWN_APP_SOURCES = "android.settings.MANAGE_UNKNOWN_APP_SOURCES"; - field public static final String ACTION_MANAGE_WRITE_SETTINGS = "android.settings.action.MANAGE_WRITE_SETTINGS"; - field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_MEASUREMENT_SYSTEM_SETTINGS = "android.settings.MEASUREMENT_SYSTEM_SETTINGS"; - field public static final String ACTION_MEMORY_CARD_SETTINGS = "android.settings.MEMORY_CARD_SETTINGS"; - field public static final String ACTION_NETWORK_OPERATOR_SETTINGS = "android.settings.NETWORK_OPERATOR_SETTINGS"; - field public static final String ACTION_NFCSHARING_SETTINGS = "android.settings.NFCSHARING_SETTINGS"; - field public static final String ACTION_NFC_PAYMENT_SETTINGS = "android.settings.NFC_PAYMENT_SETTINGS"; - field public static final String ACTION_NFC_SETTINGS = "android.settings.NFC_SETTINGS"; - field public static final String ACTION_NIGHT_DISPLAY_SETTINGS = "android.settings.NIGHT_DISPLAY_SETTINGS"; - field public static final String ACTION_NOTIFICATION_ASSISTANT_SETTINGS = "android.settings.NOTIFICATION_ASSISTANT_SETTINGS"; - field public static final String ACTION_NOTIFICATION_LISTENER_DETAIL_SETTINGS = "android.settings.NOTIFICATION_LISTENER_DETAIL_SETTINGS"; - field public static final String ACTION_NOTIFICATION_LISTENER_SETTINGS = "android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"; - field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_SETTINGS"; - field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_NUMBERING_SYSTEM_SETTINGS = "android.settings.NUMBERING_SYSTEM_SETTINGS"; - field public static final String ACTION_PRINT_SETTINGS = "android.settings.ACTION_PRINT_SETTINGS"; - field public static final String ACTION_PRIVACY_SETTINGS = "android.settings.PRIVACY_SETTINGS"; - field public static final String ACTION_PROCESS_WIFI_EASY_CONNECT_URI = "android.settings.PROCESS_WIFI_EASY_CONNECT_URI"; - field public static final String ACTION_QUICK_ACCESS_WALLET_SETTINGS = "android.settings.QUICK_ACCESS_WALLET_SETTINGS"; - field public static final String ACTION_QUICK_LAUNCH_SETTINGS = "android.settings.QUICK_LAUNCH_SETTINGS"; - field public static final String ACTION_REGIONAL_PREFERENCES_SETTINGS = "android.settings.REGIONAL_PREFERENCES_SETTINGS"; - field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_REGION_SETTINGS = "android.settings.REGION_SETTINGS"; - field public static final String ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS = "android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"; - field public static final String ACTION_REQUEST_MANAGE_MEDIA = "android.settings.REQUEST_MANAGE_MEDIA"; - field @FlaggedApi("com.android.media.flags.enable_privileged_routing_for_media_routing_control") public static final String ACTION_REQUEST_MEDIA_ROUTING_CONTROL = "android.settings.REQUEST_MEDIA_ROUTING_CONTROL"; - field public static final String ACTION_REQUEST_SCHEDULE_EXACT_ALARM = "android.settings.REQUEST_SCHEDULE_EXACT_ALARM"; - field public static final String ACTION_REQUEST_SET_AUTOFILL_SERVICE = "android.settings.REQUEST_SET_AUTOFILL_SERVICE"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String ACTION_SATELLITE_SETTING = "android.settings.SATELLITE_SETTING"; - field public static final String ACTION_SEARCH_SETTINGS = "android.search.action.SEARCH_SETTINGS"; - field public static final String ACTION_SECURITY_SETTINGS = "android.settings.SECURITY_SETTINGS"; - field public static final String ACTION_SETTINGS = "android.settings.SETTINGS"; - field public static final String ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY = "android.settings.SETTINGS_EMBED_DEEP_LINK_ACTIVITY"; - field public static final String ACTION_SHOW_REGULATORY_INFO = "android.settings.SHOW_REGULATORY_INFO"; - field public static final String ACTION_SHOW_WORK_POLICY_INFO = "android.settings.SHOW_WORK_POLICY_INFO"; - field public static final String ACTION_SOUND_SETTINGS = "android.settings.SOUND_SETTINGS"; - field @Deprecated public static final String ACTION_STORAGE_VOLUME_ACCESS_SETTINGS = "android.settings.STORAGE_VOLUME_ACCESS_SETTINGS"; - field public static final String ACTION_SYNC_SETTINGS = "android.settings.SYNC_SETTINGS"; - field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_TEMPERATURE_UNIT_SETTINGS = "android.settings.TEMPERATURE_UNIT_SETTINGS"; - field public static final String ACTION_USAGE_ACCESS_SETTINGS = "android.settings.USAGE_ACCESS_SETTINGS"; - field public static final String ACTION_USER_DICTIONARY_SETTINGS = "android.settings.USER_DICTIONARY_SETTINGS"; - field public static final String ACTION_VOICE_CONTROL_AIRPLANE_MODE = "android.settings.VOICE_CONTROL_AIRPLANE_MODE"; - field public static final String ACTION_VOICE_CONTROL_BATTERY_SAVER_MODE = "android.settings.VOICE_CONTROL_BATTERY_SAVER_MODE"; - field public static final String ACTION_VOICE_CONTROL_DO_NOT_DISTURB_MODE = "android.settings.VOICE_CONTROL_DO_NOT_DISTURB_MODE"; - field public static final String ACTION_VOICE_INPUT_SETTINGS = "android.settings.VOICE_INPUT_SETTINGS"; - field public static final String ACTION_VPN_SETTINGS = "android.settings.VPN_SETTINGS"; - field public static final String ACTION_VR_LISTENER_SETTINGS = "android.settings.VR_LISTENER_SETTINGS"; - field public static final String ACTION_WEBVIEW_SETTINGS = "android.settings.WEBVIEW_SETTINGS"; - field public static final String ACTION_WIFI_ADD_NETWORKS = "android.settings.WIFI_ADD_NETWORKS"; - field public static final String ACTION_WIFI_IP_SETTINGS = "android.settings.WIFI_IP_SETTINGS"; - field public static final String ACTION_WIFI_SETTINGS = "android.settings.WIFI_SETTINGS"; - field public static final String ACTION_WIRELESS_SETTINGS = "android.settings.WIRELESS_SETTINGS"; - field public static final String ACTION_ZEN_MODE_PRIORITY_SETTINGS = "android.settings.ZEN_MODE_PRIORITY_SETTINGS"; - field public static final int ADD_WIFI_RESULT_ADD_OR_UPDATE_FAILED = 1; // 0x1 - field public static final int ADD_WIFI_RESULT_ALREADY_EXISTS = 2; // 0x2 - field public static final int ADD_WIFI_RESULT_SUCCESS = 0; // 0x0 - field public static final String AUTHORITY = "settings"; - field public static final String EXTRA_ACCOUNT_TYPES = "account_types"; - field public static final String EXTRA_AIRPLANE_MODE_ENABLED = "airplane_mode_enabled"; - field public static final String EXTRA_APP_PACKAGE = "android.provider.extra.APP_PACKAGE"; - field public static final String EXTRA_AUTHORITIES = "authorities"; - field @FlaggedApi("android.app.modes_api") public static final String EXTRA_AUTOMATIC_ZEN_RULE_ID = "android.provider.extra.AUTOMATIC_ZEN_RULE_ID"; - field public static final String EXTRA_BATTERY_SAVER_MODE_ENABLED = "android.settings.extra.battery_saver_mode_enabled"; - field public static final String EXTRA_BIOMETRIC_AUTHENTICATORS_ALLOWED = "android.provider.extra.BIOMETRIC_AUTHENTICATORS_ALLOWED"; - field public static final String EXTRA_CHANNEL_FILTER_LIST = "android.provider.extra.CHANNEL_FILTER_LIST"; - field public static final String EXTRA_CHANNEL_ID = "android.provider.extra.CHANNEL_ID"; - field public static final String EXTRA_CONVERSATION_ID = "android.provider.extra.CONVERSATION_ID"; - field public static final String EXTRA_DO_NOT_DISTURB_MODE_ENABLED = "android.settings.extra.do_not_disturb_mode_enabled"; - field public static final String EXTRA_DO_NOT_DISTURB_MODE_MINUTES = "android.settings.extra.do_not_disturb_mode_minutes"; - field public static final String EXTRA_EASY_CONNECT_ATTEMPTED_SSID = "android.provider.extra.EASY_CONNECT_ATTEMPTED_SSID"; - field public static final String EXTRA_EASY_CONNECT_BAND_LIST = "android.provider.extra.EASY_CONNECT_BAND_LIST"; - field public static final String EXTRA_EASY_CONNECT_CHANNEL_LIST = "android.provider.extra.EASY_CONNECT_CHANNEL_LIST"; - field public static final String EXTRA_EASY_CONNECT_ERROR_CODE = "android.provider.extra.EASY_CONNECT_ERROR_CODE"; - field public static final String EXTRA_INPUT_METHOD_ID = "input_method_id"; - field public static final String EXTRA_NOTIFICATION_LISTENER_COMPONENT_NAME = "android.provider.extra.NOTIFICATION_LISTENER_COMPONENT_NAME"; - field public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY = "android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY"; - field public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI = "android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI"; - field public static final String EXTRA_SUB_ID = "android.provider.extra.SUB_ID"; - field public static final String EXTRA_SUPERVISOR_RESTRICTED_SETTING_KEY = "android.provider.extra.SUPERVISOR_RESTRICTED_SETTING_KEY"; - field public static final String EXTRA_WIFI_NETWORK_LIST = "android.provider.extra.WIFI_NETWORK_LIST"; - field public static final String EXTRA_WIFI_NETWORK_RESULT_LIST = "android.provider.extra.WIFI_NETWORK_RESULT_LIST"; - field public static final String INTENT_CATEGORY_USAGE_ACCESS_CONFIG = "android.intent.category.USAGE_ACCESS_CONFIG"; - field public static final String METADATA_USAGE_ACCESS_REASON = "android.settings.metadata.USAGE_ACCESS_REASON"; - field public static final int SUPERVISOR_VERIFICATION_SETTING_BIOMETRICS = 1; // 0x1 - field public static final int SUPERVISOR_VERIFICATION_SETTING_UNKNOWN = 0; // 0x0 - } - - public static final class Settings.Global extends android.provider.Settings.NameValueTable { - ctor public Settings.Global(); - method public static float getFloat(android.content.ContentResolver, String, float); - method public static float getFloat(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; - method public static int getInt(android.content.ContentResolver, String, int); - method public static int getInt(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; - method public static long getLong(android.content.ContentResolver, String, long); - method public static long getLong(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; - method public static String getString(android.content.ContentResolver, String); - method public static android.net.Uri getUriFor(String); - method public static boolean putFloat(android.content.ContentResolver, String, float); - method public static boolean putInt(android.content.ContentResolver, String, int); - method public static boolean putLong(android.content.ContentResolver, String, long); - method public static boolean putString(android.content.ContentResolver, String, String); - field public static final String ADB_ENABLED = "adb_enabled"; - field public static final String AIRPLANE_MODE_ON = "airplane_mode_on"; - field public static final String AIRPLANE_MODE_RADIOS = "airplane_mode_radios"; - field public static final String ALWAYS_FINISH_ACTIVITIES = "always_finish_activities"; - field public static final String ANIMATOR_DURATION_SCALE = "animator_duration_scale"; - field @Deprecated public static final String APPLY_RAMPING_RINGER = "apply_ramping_ringer"; - field public static final String AUTO_TIME = "auto_time"; - field public static final String AUTO_TIME_ZONE = "auto_time_zone"; - field public static final String BLUETOOTH_ON = "bluetooth_on"; - field public static final String BOOT_COUNT = "boot_count"; - field public static final String CONTACT_METADATA_SYNC_ENABLED = "contact_metadata_sync_enabled"; - field public static final android.net.Uri CONTENT_URI; - field public static final String DATA_ROAMING = "data_roaming"; - field public static final String DEBUG_APP = "debug_app"; - field public static final String DEVELOPMENT_SETTINGS_ENABLED = "development_settings_enabled"; - field public static final String DEVICE_NAME = "device_name"; - field public static final String DEVICE_PROVISIONED = "device_provisioned"; - field public static final String HTTP_PROXY = "http_proxy"; - field @Deprecated public static final String INSTALL_NON_MARKET_APPS = "install_non_market_apps"; - field public static final String MODE_RINGER = "mode_ringer"; - field public static final String NETWORK_PREFERENCE = "network_preference"; - field public static final String RADIO_BLUETOOTH = "bluetooth"; - field public static final String RADIO_CELL = "cell"; - field public static final String RADIO_NFC = "nfc"; - field public static final String RADIO_WIFI = "wifi"; - field public static final String SECURE_FRP_MODE = "secure_frp_mode"; - field @Deprecated public static final String SHOW_PROCESSES = "show_processes"; - field public static final String STAY_ON_WHILE_PLUGGED_IN = "stay_on_while_plugged_in"; - field public static final String TRANSITION_ANIMATION_SCALE = "transition_animation_scale"; - field public static final String USB_MASS_STORAGE_ENABLED = "usb_mass_storage_enabled"; - field public static final String USE_GOOGLE_MAIL = "use_google_mail"; - field public static final String WAIT_FOR_DEBUGGER = "wait_for_debugger"; - field public static final String WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN = "wifi_device_owner_configs_lockdown"; - field public static final String WIFI_MAX_DHCP_RETRY_COUNT = "wifi_max_dhcp_retry_count"; - field public static final String WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS = "wifi_mobile_data_transition_wakelock_timeout_ms"; - field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on"; - field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay"; - field @Deprecated public static final String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept"; - field public static final String WIFI_ON = "wifi_on"; - field @Deprecated public static final String WIFI_SLEEP_POLICY = "wifi_sleep_policy"; - field @Deprecated public static final int WIFI_SLEEP_POLICY_DEFAULT = 0; // 0x0 - field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER = 2; // 0x2 - field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER_WHILE_PLUGGED = 1; // 0x1 - field public static final String WIFI_WATCHDOG_ON = "wifi_watchdog_on"; - field public static final String WINDOW_ANIMATION_SCALE = "window_animation_scale"; - } - - public static class Settings.NameValueTable implements android.provider.BaseColumns { - ctor public Settings.NameValueTable(); - method public static android.net.Uri getUriFor(android.net.Uri, String); - method protected static boolean putString(android.content.ContentResolver, android.net.Uri, String, String); - field public static final String NAME = "name"; - field public static final String VALUE = "value"; - } - - public static final class Settings.Panel { - field public static final String ACTION_INTERNET_CONNECTIVITY = "android.settings.panel.action.INTERNET_CONNECTIVITY"; - field public static final String ACTION_NFC = "android.settings.panel.action.NFC"; - field public static final String ACTION_VOLUME = "android.settings.panel.action.VOLUME"; - field public static final String ACTION_WIFI = "android.settings.panel.action.WIFI"; - } - - public static final class Settings.Secure extends android.provider.Settings.NameValueTable { - ctor public Settings.Secure(); - method public static float getFloat(android.content.ContentResolver, String, float); - method public static float getFloat(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; - method public static int getInt(android.content.ContentResolver, String, int); - method public static int getInt(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; - method public static long getLong(android.content.ContentResolver, String, long); - method public static long getLong(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; - method public static String getString(android.content.ContentResolver, String); - method public static android.net.Uri getUriFor(String); - method @Deprecated public static boolean isLocationProviderEnabled(android.content.ContentResolver, String); - method public static boolean putFloat(android.content.ContentResolver, String, float); - method public static boolean putInt(android.content.ContentResolver, String, int); - method public static boolean putLong(android.content.ContentResolver, String, long); - method public static boolean putString(android.content.ContentResolver, String, String); - method @Deprecated public static void setLocationProviderEnabled(android.content.ContentResolver, String, boolean); - field public static final String ACCESSIBILITY_DISPLAY_INVERSION_ENABLED = "accessibility_display_inversion_enabled"; - field public static final String ACCESSIBILITY_ENABLED = "accessibility_enabled"; - field @Deprecated public static final String ACCESSIBILITY_SPEAK_PASSWORD = "speak_password"; - field @Deprecated public static final String ADB_ENABLED = "adb_enabled"; - field public static final String ALLOWED_GEOLOCATION_ORIGINS = "allowed_geolocation_origins"; - field @Deprecated public static final String ALLOW_MOCK_LOCATION = "mock_location"; - field public static final String ANDROID_ID = "android_id"; - field @Deprecated public static final String BACKGROUND_DATA = "background_data"; - field @Deprecated public static final String BLUETOOTH_ON = "bluetooth_on"; - field public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DATA_ROAMING = "data_roaming"; - field public static final String DEFAULT_INPUT_METHOD = "default_input_method"; - field @Deprecated public static final String DEVELOPMENT_SETTINGS_ENABLED = "development_settings_enabled"; - field @Deprecated public static final String DEVICE_PROVISIONED = "device_provisioned"; - field public static final String ENABLED_ACCESSIBILITY_SERVICES = "enabled_accessibility_services"; - field public static final String ENABLED_INPUT_METHODS = "enabled_input_methods"; - field @Deprecated public static final String HTTP_PROXY = "http_proxy"; - field public static final String INPUT_METHOD_SELECTOR_VISIBILITY = "input_method_selector_visibility"; - field @Deprecated public static final String INSTALL_NON_MARKET_APPS = "install_non_market_apps"; - field @Deprecated public static final String LOCATION_MODE = "location_mode"; - field @Deprecated public static final int LOCATION_MODE_BATTERY_SAVING = 2; // 0x2 - field @Deprecated public static final int LOCATION_MODE_HIGH_ACCURACY = 3; // 0x3 - field public static final int LOCATION_MODE_OFF = 0; // 0x0 - field @Deprecated public static final int LOCATION_MODE_SENSORS_ONLY = 1; // 0x1 - field @Deprecated public static final String LOCATION_PROVIDERS_ALLOWED = "location_providers_allowed"; - field @Deprecated public static final String LOCK_PATTERN_ENABLED = "lock_pattern_autolock"; - field @Deprecated public static final String LOCK_PATTERN_TACTILE_FEEDBACK_ENABLED = "lock_pattern_tactile_feedback_enabled"; - field @Deprecated public static final String LOCK_PATTERN_VISIBLE = "lock_pattern_visible_pattern"; - field @Deprecated public static final String LOGGING_ID = "logging_id"; - field @Deprecated public static final String NETWORK_PREFERENCE = "network_preference"; - field public static final String PARENTAL_CONTROL_ENABLED = "parental_control_enabled"; - field public static final String PARENTAL_CONTROL_LAST_UPDATE = "parental_control_last_update"; - field public static final String PARENTAL_CONTROL_REDIRECT_URL = "parental_control_redirect_url"; - field public static final String RTT_CALLING_MODE = "rtt_calling_mode"; - field @Deprecated public static final String SECURE_FRP_MODE = "secure_frp_mode"; - field public static final String SELECTED_INPUT_METHOD_SUBTYPE = "selected_input_method_subtype"; - field public static final String SETTINGS_CLASSNAME = "settings_classname"; - field public static final String SKIP_FIRST_USE_HINTS = "skip_first_use_hints"; - field public static final String TOUCH_EXPLORATION_ENABLED = "touch_exploration_enabled"; - field @Deprecated public static final String TTS_DEFAULT_COUNTRY = "tts_default_country"; - field @Deprecated public static final String TTS_DEFAULT_LANG = "tts_default_lang"; - field public static final String TTS_DEFAULT_PITCH = "tts_default_pitch"; - field public static final String TTS_DEFAULT_RATE = "tts_default_rate"; - field public static final String TTS_DEFAULT_SYNTH = "tts_default_synth"; - field @Deprecated public static final String TTS_DEFAULT_VARIANT = "tts_default_variant"; - field public static final String TTS_ENABLED_PLUGINS = "tts_enabled_plugins"; - field @Deprecated public static final String TTS_USE_DEFAULTS = "tts_use_defaults"; - field @Deprecated public static final String USB_MASS_STORAGE_ENABLED = "usb_mass_storage_enabled"; - field @Deprecated public static final String USE_GOOGLE_MAIL = "use_google_mail"; - field @Deprecated public static final String WIFI_MAX_DHCP_RETRY_COUNT = "wifi_max_dhcp_retry_count"; - field @Deprecated public static final String WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS = "wifi_mobile_data_transition_wakelock_timeout_ms"; - field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on"; - field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay"; - field @Deprecated public static final String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept"; - field @Deprecated public static final String WIFI_ON = "wifi_on"; - field @Deprecated public static final String WIFI_WATCHDOG_ACCEPTABLE_PACKET_LOSS_PERCENTAGE = "wifi_watchdog_acceptable_packet_loss_percentage"; - field @Deprecated public static final String WIFI_WATCHDOG_AP_COUNT = "wifi_watchdog_ap_count"; - field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_DELAY_MS = "wifi_watchdog_background_check_delay_ms"; - field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_ENABLED = "wifi_watchdog_background_check_enabled"; - field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_TIMEOUT_MS = "wifi_watchdog_background_check_timeout_ms"; - field @Deprecated public static final String WIFI_WATCHDOG_INITIAL_IGNORED_PING_COUNT = "wifi_watchdog_initial_ignored_ping_count"; - field @Deprecated public static final String WIFI_WATCHDOG_MAX_AP_CHECKS = "wifi_watchdog_max_ap_checks"; - field @Deprecated public static final String WIFI_WATCHDOG_ON = "wifi_watchdog_on"; - field @Deprecated public static final String WIFI_WATCHDOG_PING_COUNT = "wifi_watchdog_ping_count"; - field @Deprecated public static final String WIFI_WATCHDOG_PING_DELAY_MS = "wifi_watchdog_ping_delay_ms"; - field @Deprecated public static final String WIFI_WATCHDOG_PING_TIMEOUT_MS = "wifi_watchdog_ping_timeout_ms"; - field @Deprecated public static final String WIFI_WATCHDOG_WATCH_LIST = "wifi_watchdog_watch_list"; - } - - public static class Settings.SettingNotFoundException extends android.util.AndroidException { - ctor public Settings.SettingNotFoundException(String); - } - - public static final class Settings.System extends android.provider.Settings.NameValueTable { - ctor public Settings.System(); - method public static boolean canWrite(android.content.Context); - method public static void getConfiguration(android.content.ContentResolver, android.content.res.Configuration); - method public static float getFloat(android.content.ContentResolver, String, float); - method public static float getFloat(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; - method public static int getInt(android.content.ContentResolver, String, int); - method public static int getInt(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; - method public static long getLong(android.content.ContentResolver, String, long); - method public static long getLong(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; - method @Deprecated public static boolean getShowGTalkServiceStatus(android.content.ContentResolver); - method public static String getString(android.content.ContentResolver, String); - method public static android.net.Uri getUriFor(String); - method public static boolean putConfiguration(android.content.ContentResolver, android.content.res.Configuration); - method public static boolean putFloat(android.content.ContentResolver, String, float); - method public static boolean putInt(android.content.ContentResolver, String, int); - method public static boolean putLong(android.content.ContentResolver, String, long); - method public static boolean putString(android.content.ContentResolver, String, String); - method @Deprecated public static void setShowGTalkServiceStatus(android.content.ContentResolver, boolean); - field public static final String ACCELEROMETER_ROTATION = "accelerometer_rotation"; - field @Deprecated public static final String ADB_ENABLED = "adb_enabled"; - field @Deprecated public static final String AIRPLANE_MODE_ON = "airplane_mode_on"; - field @Deprecated public static final String AIRPLANE_MODE_RADIOS = "airplane_mode_radios"; - field public static final String ALARM_ALERT = "alarm_alert"; - field @Deprecated public static final String ALWAYS_FINISH_ACTIVITIES = "always_finish_activities"; - field @Deprecated public static final String ANDROID_ID = "android_id"; - field @Deprecated public static final String ANIMATOR_DURATION_SCALE = "animator_duration_scale"; - field @Deprecated public static final String AUTO_TIME = "auto_time"; - field @Deprecated public static final String AUTO_TIME_ZONE = "auto_time_zone"; - field public static final String BLUETOOTH_DISCOVERABILITY = "bluetooth_discoverability"; - field public static final String BLUETOOTH_DISCOVERABILITY_TIMEOUT = "bluetooth_discoverability_timeout"; - field @Deprecated public static final String BLUETOOTH_ON = "bluetooth_on"; - field public static final android.net.Uri CONTENT_URI; - field @Deprecated public static final String DATA_ROAMING = "data_roaming"; - field @Deprecated public static final String DATE_FORMAT = "date_format"; - field @Deprecated public static final String DEBUG_APP = "debug_app"; - field public static final android.net.Uri DEFAULT_ALARM_ALERT_URI; - field public static final android.net.Uri DEFAULT_NOTIFICATION_URI; - field public static final android.net.Uri DEFAULT_RINGTONE_URI; - field @Deprecated public static final String DEVICE_PROVISIONED = "device_provisioned"; - field @Deprecated public static final String DIM_SCREEN = "dim_screen"; - field public static final String DTMF_TONE_TYPE_WHEN_DIALING = "dtmf_tone_type"; - field public static final String DTMF_TONE_WHEN_DIALING = "dtmf_tone"; - field public static final String END_BUTTON_BEHAVIOR = "end_button_behavior"; - field public static final String FONT_SCALE = "font_scale"; - field @Deprecated public static final String HAPTIC_FEEDBACK_ENABLED = "haptic_feedback_enabled"; - field @Deprecated public static final String HTTP_PROXY = "http_proxy"; - field @Deprecated public static final String INSTALL_NON_MARKET_APPS = "install_non_market_apps"; - field @Deprecated public static final String LOCATION_PROVIDERS_ALLOWED = "location_providers_allowed"; - field @Deprecated public static final String LOCK_PATTERN_ENABLED = "lock_pattern_autolock"; - field @Deprecated public static final String LOCK_PATTERN_TACTILE_FEEDBACK_ENABLED = "lock_pattern_tactile_feedback_enabled"; - field @Deprecated public static final String LOCK_PATTERN_VISIBLE = "lock_pattern_visible_pattern"; - field @Deprecated public static final String LOGGING_ID = "logging_id"; - field @Deprecated public static final String MODE_RINGER = "mode_ringer"; - field public static final String MODE_RINGER_STREAMS_AFFECTED = "mode_ringer_streams_affected"; - field public static final String MUTE_STREAMS_AFFECTED = "mute_streams_affected"; - field @Deprecated public static final String NETWORK_PREFERENCE = "network_preference"; - field @Deprecated public static final String NEXT_ALARM_FORMATTED = "next_alarm_formatted"; - field public static final String NOTIFICATION_SOUND = "notification_sound"; - field @Deprecated public static final String PARENTAL_CONTROL_ENABLED = "parental_control_enabled"; - field @Deprecated public static final String PARENTAL_CONTROL_LAST_UPDATE = "parental_control_last_update"; - field @Deprecated public static final String PARENTAL_CONTROL_REDIRECT_URL = "parental_control_redirect_url"; - field @Deprecated public static final String RADIO_BLUETOOTH = "bluetooth"; - field @Deprecated public static final String RADIO_CELL = "cell"; - field @Deprecated public static final String RADIO_NFC = "nfc"; - field @Deprecated public static final String RADIO_WIFI = "wifi"; - field public static final String RINGTONE = "ringtone"; - field public static final String SCREEN_BRIGHTNESS = "screen_brightness"; - field public static final String SCREEN_BRIGHTNESS_MODE = "screen_brightness_mode"; - field public static final int SCREEN_BRIGHTNESS_MODE_AUTOMATIC = 1; // 0x1 - field public static final int SCREEN_BRIGHTNESS_MODE_MANUAL = 0; // 0x0 - field public static final String SCREEN_OFF_TIMEOUT = "screen_off_timeout"; - field @Deprecated public static final String SETTINGS_CLASSNAME = "settings_classname"; - field public static final String SETUP_WIZARD_HAS_RUN = "setup_wizard_has_run"; - field public static final String SHOW_GTALK_SERVICE_STATUS = "SHOW_GTALK_SERVICE_STATUS"; - field @Deprecated public static final String SHOW_PROCESSES = "show_processes"; - field @Deprecated public static final String SHOW_WEB_SUGGESTIONS = "show_web_suggestions"; - field public static final String SOUND_EFFECTS_ENABLED = "sound_effects_enabled"; - field @Deprecated public static final String STAY_ON_WHILE_PLUGGED_IN = "stay_on_while_plugged_in"; - field public static final String TEXT_AUTO_CAPS = "auto_caps"; - field public static final String TEXT_AUTO_PUNCTUATE = "auto_punctuate"; - field public static final String TEXT_AUTO_REPLACE = "auto_replace"; - field public static final String TEXT_SHOW_PASSWORD = "show_password"; - field public static final String TIME_12_24 = "time_12_24"; - field @Deprecated public static final String TRANSITION_ANIMATION_SCALE = "transition_animation_scale"; - field @Deprecated public static final String USB_MASS_STORAGE_ENABLED = "usb_mass_storage_enabled"; - field public static final String USER_ROTATION = "user_rotation"; - field @Deprecated public static final String USE_GOOGLE_MAIL = "use_google_mail"; - field public static final String VIBRATE_ON = "vibrate_on"; - field @Deprecated public static final String VIBRATE_WHEN_RINGING = "vibrate_when_ringing"; - field @Deprecated public static final String WAIT_FOR_DEBUGGER = "wait_for_debugger"; - field @Deprecated public static final String WALLPAPER_ACTIVITY = "wallpaper_activity"; - field @Deprecated public static final String WIFI_MAX_DHCP_RETRY_COUNT = "wifi_max_dhcp_retry_count"; - field @Deprecated public static final String WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS = "wifi_mobile_data_transition_wakelock_timeout_ms"; - field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on"; - field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay"; - field @Deprecated public static final String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept"; - field @Deprecated public static final String WIFI_ON = "wifi_on"; - field @Deprecated public static final String WIFI_SLEEP_POLICY = "wifi_sleep_policy"; - field @Deprecated public static final int WIFI_SLEEP_POLICY_DEFAULT = 0; // 0x0 - field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER = 2; // 0x2 - field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER_WHILE_PLUGGED = 1; // 0x1 - field @Deprecated public static final String WIFI_STATIC_DNS1 = "wifi_static_dns1"; - field @Deprecated public static final String WIFI_STATIC_DNS2 = "wifi_static_dns2"; - field @Deprecated public static final String WIFI_STATIC_GATEWAY = "wifi_static_gateway"; - field @Deprecated public static final String WIFI_STATIC_IP = "wifi_static_ip"; - field @Deprecated public static final String WIFI_STATIC_NETMASK = "wifi_static_netmask"; - field @Deprecated public static final String WIFI_USE_STATIC_IP = "wifi_use_static_ip"; - field @Deprecated public static final String WIFI_WATCHDOG_ACCEPTABLE_PACKET_LOSS_PERCENTAGE = "wifi_watchdog_acceptable_packet_loss_percentage"; - field @Deprecated public static final String WIFI_WATCHDOG_AP_COUNT = "wifi_watchdog_ap_count"; - field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_DELAY_MS = "wifi_watchdog_background_check_delay_ms"; - field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_ENABLED = "wifi_watchdog_background_check_enabled"; - field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_TIMEOUT_MS = "wifi_watchdog_background_check_timeout_ms"; - field @Deprecated public static final String WIFI_WATCHDOG_INITIAL_IGNORED_PING_COUNT = "wifi_watchdog_initial_ignored_ping_count"; - field @Deprecated public static final String WIFI_WATCHDOG_MAX_AP_CHECKS = "wifi_watchdog_max_ap_checks"; - field @Deprecated public static final String WIFI_WATCHDOG_ON = "wifi_watchdog_on"; - field @Deprecated public static final String WIFI_WATCHDOG_PING_COUNT = "wifi_watchdog_ping_count"; - field @Deprecated public static final String WIFI_WATCHDOG_PING_DELAY_MS = "wifi_watchdog_ping_delay_ms"; - field @Deprecated public static final String WIFI_WATCHDOG_PING_TIMEOUT_MS = "wifi_watchdog_ping_timeout_ms"; - field @Deprecated public static final String WINDOW_ANIMATION_SCALE = "window_animation_scale"; - } - - public class SettingsSlicesContract { - field public static final String AUTHORITY = "android.settings.slices"; - field public static final android.net.Uri BASE_URI; - field public static final String KEY_AIRPLANE_MODE = "airplane_mode"; - field public static final String KEY_BATTERY_SAVER = "battery_saver"; - field public static final String KEY_BLUETOOTH = "bluetooth"; - field public static final String KEY_LOCATION = "location"; - field public static final String KEY_WIFI = "wifi"; - field public static final String PATH_SETTING_ACTION = "action"; - field public static final String PATH_SETTING_INTENT = "intent"; - } - - public final class SimPhonebookContract { - field public static final String AUTHORITY = "com.android.simphonebook"; - field @NonNull public static final android.net.Uri AUTHORITY_URI; - } - - public static final class SimPhonebookContract.ElementaryFiles { - method @NonNull public static android.net.Uri getItemUri(int, int); - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/sim-elementary-file"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/sim-elementary-file"; - field @NonNull public static final android.net.Uri CONTENT_URI; - field public static final int EF_ADN = 1; // 0x1 - field public static final int EF_FDN = 2; // 0x2 - field public static final int EF_SDN = 3; // 0x3 - field public static final String EF_TYPE = "ef_type"; - field public static final int EF_UNKNOWN = 0; // 0x0 - field public static final String MAX_RECORDS = "max_records"; - field public static final String NAME_MAX_LENGTH = "name_max_length"; - field public static final String PHONE_NUMBER_MAX_LENGTH = "phone_number_max_length"; - field public static final String RECORD_COUNT = "record_count"; - field public static final String SLOT_INDEX = "slot_index"; - field public static final String SUBSCRIPTION_ID = "subscription_id"; - } - - public static final class SimPhonebookContract.SimRecords { - method @NonNull public static android.net.Uri getContentUri(int, int); - method @IntRange(from=0) @WorkerThread public static int getEncodedNameLength(@NonNull android.content.ContentResolver, @NonNull String); - method @NonNull public static android.net.Uri getItemUri(int, int, @IntRange(from=1) int); - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/sim-contact_v2"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/sim-contact_v2"; - field public static final String ELEMENTARY_FILE_TYPE = "elementary_file_type"; - field public static final int ERROR_NAME_UNSUPPORTED = -1; // 0xffffffff - field public static final String NAME = "name"; - field public static final String PHONE_NUMBER = "phone_number"; - field public static final String RECORD_NUMBER = "record_number"; - field public static final String SUBSCRIPTION_ID = "subscription_id"; - } - - public class SyncStateContract { - ctor public SyncStateContract(); - } - - public static interface SyncStateContract.Columns extends android.provider.BaseColumns { - field public static final String ACCOUNT_NAME = "account_name"; - field public static final String ACCOUNT_TYPE = "account_type"; - field public static final String DATA = "data"; - } - - public static class SyncStateContract.Constants implements android.provider.SyncStateContract.Columns { - ctor public SyncStateContract.Constants(); - field public static final String CONTENT_DIRECTORY = "syncstate"; - } - - public static final class SyncStateContract.Helpers { - ctor public SyncStateContract.Helpers(); - method public static byte[] get(android.content.ContentProviderClient, android.net.Uri, android.accounts.Account) throws android.os.RemoteException; - method public static android.util.Pair getWithUri(android.content.ContentProviderClient, android.net.Uri, android.accounts.Account) throws android.os.RemoteException; - method public static android.net.Uri insert(android.content.ContentProviderClient, android.net.Uri, android.accounts.Account, byte[]) throws android.os.RemoteException; - method public static android.content.ContentProviderOperation newSetOperation(android.net.Uri, android.accounts.Account, byte[]); - method public static android.content.ContentProviderOperation newUpdateOperation(android.net.Uri, byte[]); - method public static void set(android.content.ContentProviderClient, android.net.Uri, android.accounts.Account, byte[]) throws android.os.RemoteException; - method public static void update(android.content.ContentProviderClient, android.net.Uri, byte[]) throws android.os.RemoteException; - } - - public final class Telephony { - } - - public static interface Telephony.BaseMmsColumns extends android.provider.BaseColumns { - field public static final String CONTENT_CLASS = "ct_cls"; - field public static final String CONTENT_LOCATION = "ct_l"; - field public static final String CONTENT_TYPE = "ct_t"; - field public static final String CREATOR = "creator"; - field public static final String DATE = "date"; - field public static final String DATE_SENT = "date_sent"; - field public static final String DELIVERY_REPORT = "d_rpt"; - field public static final String DELIVERY_TIME = "d_tm"; - field public static final String EXPIRY = "exp"; - field public static final String LOCKED = "locked"; - field public static final String MESSAGE_BOX = "msg_box"; - field public static final int MESSAGE_BOX_ALL = 0; // 0x0 - field public static final int MESSAGE_BOX_DRAFTS = 3; // 0x3 - field public static final int MESSAGE_BOX_FAILED = 5; // 0x5 - field public static final int MESSAGE_BOX_INBOX = 1; // 0x1 - field public static final int MESSAGE_BOX_OUTBOX = 4; // 0x4 - field public static final int MESSAGE_BOX_SENT = 2; // 0x2 - field public static final String MESSAGE_CLASS = "m_cls"; - field public static final String MESSAGE_ID = "m_id"; - field public static final String MESSAGE_SIZE = "m_size"; - field public static final String MESSAGE_TYPE = "m_type"; - field public static final String MMS_VERSION = "v"; - field public static final String PRIORITY = "pri"; - field public static final String READ = "read"; - field public static final String READ_REPORT = "rr"; - field public static final String READ_STATUS = "read_status"; - field public static final String REPORT_ALLOWED = "rpt_a"; - field public static final String RESPONSE_STATUS = "resp_st"; - field public static final String RESPONSE_TEXT = "resp_txt"; - field public static final String RETRIEVE_STATUS = "retr_st"; - field public static final String RETRIEVE_TEXT = "retr_txt"; - field public static final String RETRIEVE_TEXT_CHARSET = "retr_txt_cs"; - field public static final String SEEN = "seen"; - field public static final String STATUS = "st"; - field public static final String SUBJECT = "sub"; - field public static final String SUBJECT_CHARSET = "sub_cs"; - field public static final String SUBSCRIPTION_ID = "sub_id"; - field public static final String TEXT_ONLY = "text_only"; - field public static final String THREAD_ID = "thread_id"; - field public static final String TRANSACTION_ID = "tr_id"; - } - - public static interface Telephony.CanonicalAddressesColumns extends android.provider.BaseColumns { - field public static final String ADDRESS = "address"; - } - - public static final class Telephony.CarrierId implements android.provider.BaseColumns { - method @NonNull public static android.net.Uri getSpecificCarrierIdUriForSubscriptionId(int); - method public static android.net.Uri getUriForSubscriptionId(int); - field public static final String CARRIER_ID = "carrier_id"; - field public static final String CARRIER_NAME = "carrier_name"; - field public static final android.net.Uri CONTENT_URI; - field public static final String SPECIFIC_CARRIER_ID = "specific_carrier_id"; - field public static final String SPECIFIC_CARRIER_ID_NAME = "specific_carrier_id_name"; - } - - public static final class Telephony.Carriers implements android.provider.BaseColumns { - field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String ALWAYS_ON = "always_on"; - field public static final String APN = "apn"; - field public static final String AUTH_TYPE = "authtype"; - field @Deprecated public static final String BEARER = "bearer"; - field public static final String CARRIER_ENABLED = "carrier_enabled"; - field public static final String CARRIER_ID = "carrier_id"; - field @NonNull public static final android.net.Uri CONTENT_URI; - field public static final String CURRENT = "current"; - field public static final String DEFAULT_SORT_ORDER = "name ASC"; - field @Deprecated public static final String MCC = "mcc"; - field public static final String MMSC = "mmsc"; - field public static final String MMSPORT = "mmsport"; - field public static final String MMSPROXY = "mmsproxy"; - field @Deprecated public static final String MNC = "mnc"; - field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String MTU_V4 = "mtu_v4"; - field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String MTU_V6 = "mtu_v6"; - field @Deprecated public static final String MVNO_MATCH_DATA = "mvno_match_data"; - field @Deprecated public static final String MVNO_TYPE = "mvno_type"; - field public static final String NAME = "name"; - field public static final String NETWORK_TYPE_BITMASK = "network_type_bitmask"; - field @Deprecated public static final String NUMERIC = "numeric"; - field public static final String PASSWORD = "password"; - field public static final String PORT = "port"; - field public static final String PROTOCOL = "protocol"; - field public static final String PROXY = "proxy"; - field public static final String ROAMING_PROTOCOL = "roaming_protocol"; - field public static final String SERVER = "server"; - field @NonNull public static final android.net.Uri SIM_APN_URI; - field public static final String SUBSCRIPTION_ID = "sub_id"; - field public static final String TYPE = "type"; - field public static final String USER = "user"; - field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String USER_EDITABLE = "user_editable"; - field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String USER_VISIBLE = "user_visible"; - } - - public static final class Telephony.Mms implements android.provider.Telephony.BaseMmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - field public static final android.net.Uri REPORT_REQUEST_URI; - field public static final android.net.Uri REPORT_STATUS_URI; - } - - public static final class Telephony.Mms.Addr implements android.provider.BaseColumns { - method @NonNull public static android.net.Uri getAddrUriForMessage(@NonNull String); - field public static final String ADDRESS = "address"; - field public static final String CHARSET = "charset"; - field public static final String CONTACT_ID = "contact_id"; - field public static final String MSG_ID = "msg_id"; - field public static final String TYPE = "type"; - } - - public static final class Telephony.Mms.Draft implements android.provider.Telephony.BaseMmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - } - - public static final class Telephony.Mms.Inbox implements android.provider.Telephony.BaseMmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - } - - public static final class Telephony.Mms.Intents { - field public static final String CONTENT_CHANGED_ACTION = "android.intent.action.CONTENT_CHANGED"; - field public static final String DELETED_CONTENTS = "deleted_contents"; - } - - public static final class Telephony.Mms.Outbox implements android.provider.Telephony.BaseMmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - } - - public static final class Telephony.Mms.Part implements android.provider.BaseColumns { - method @NonNull public static android.net.Uri getPartUriForMessage(@NonNull String); - field public static final String CHARSET = "chset"; - field public static final String CONTENT_DISPOSITION = "cd"; - field public static final String CONTENT_ID = "cid"; - field public static final String CONTENT_LOCATION = "cl"; - field public static final String CONTENT_TYPE = "ct"; - field @NonNull public static final android.net.Uri CONTENT_URI; - field public static final String CT_START = "ctt_s"; - field public static final String CT_TYPE = "ctt_t"; - field public static final String FILENAME = "fn"; - field public static final String MSG_ID = "mid"; - field public static final String NAME = "name"; - field public static final String SEQ = "seq"; - field public static final String TEXT = "text"; - field public static final String _DATA = "_data"; - } - - public static final class Telephony.Mms.Rate { - field public static final android.net.Uri CONTENT_URI; - field public static final String SENT_TIME = "sent_time"; - } - - public static final class Telephony.Mms.Sent implements android.provider.Telephony.BaseMmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - } - - public static final class Telephony.MmsSms implements android.provider.BaseColumns { - field public static final android.net.Uri CONTENT_CONVERSATIONS_URI; - field public static final android.net.Uri CONTENT_DRAFT_URI; - field public static final android.net.Uri CONTENT_FILTER_BYPHONE_URI; - field public static final android.net.Uri CONTENT_LOCKED_URI; - field public static final android.net.Uri CONTENT_UNDELIVERED_URI; - field public static final android.net.Uri CONTENT_URI; - field public static final int ERR_TYPE_GENERIC = 1; // 0x1 - field public static final int ERR_TYPE_GENERIC_PERMANENT = 10; // 0xa - field public static final int ERR_TYPE_MMS_PROTO_PERMANENT = 12; // 0xc - field public static final int ERR_TYPE_MMS_PROTO_TRANSIENT = 3; // 0x3 - field public static final int ERR_TYPE_SMS_PROTO_PERMANENT = 11; // 0xb - field public static final int ERR_TYPE_SMS_PROTO_TRANSIENT = 2; // 0x2 - field public static final int ERR_TYPE_TRANSPORT_FAILURE = 4; // 0x4 - field public static final int MMS_PROTO = 1; // 0x1 - field public static final int NO_ERROR = 0; // 0x0 - field public static final android.net.Uri SEARCH_URI; - field public static final int SMS_PROTO = 0; // 0x0 - field public static final String TYPE_DISCRIMINATOR_COLUMN = "transport_type"; - } - - public static final class Telephony.MmsSms.PendingMessages implements android.provider.BaseColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DUE_TIME = "due_time"; - field public static final String ERROR_CODE = "err_code"; - field public static final String ERROR_TYPE = "err_type"; - field public static final String LAST_TRY = "last_try"; - field public static final String MSG_ID = "msg_id"; - field public static final String MSG_TYPE = "msg_type"; - field public static final String PROTO_TYPE = "proto_type"; - field public static final String RETRY_INDEX = "retry_index"; - field public static final String SUBSCRIPTION_ID = "pending_sub_id"; - } - - public static final class Telephony.ServiceStateTable { - method public static android.net.Uri getUriForSubscriptionId(int); - method public static android.net.Uri getUriForSubscriptionIdAndField(int, String); - field public static final String AUTHORITY = "service-state"; - field public static final android.net.Uri CONTENT_URI; - field public static final String DATA_NETWORK_TYPE = "data_network_type"; - field public static final String DATA_REG_STATE = "data_reg_state"; - field public static final String DUPLEX_MODE = "duplex_mode"; - field public static final String IS_MANUAL_NETWORK_SELECTION = "is_manual_network_selection"; - field public static final String VOICE_OPERATOR_NUMERIC = "voice_operator_numeric"; - field public static final String VOICE_REG_STATE = "voice_reg_state"; - } - - public static final class Telephony.Sms implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { - method public static String getDefaultSmsPackage(android.content.Context); - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - } - - public static final class Telephony.Sms.Conversations implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - field public static final String MESSAGE_COUNT = "msg_count"; - field public static final String SNIPPET = "snippet"; - } - - public static final class Telephony.Sms.Draft implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - } - - public static final class Telephony.Sms.Inbox implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - } - - public static final class Telephony.Sms.Intents { - method public static android.telephony.SmsMessage[] getMessagesFromIntent(android.content.Intent); - field public static final String ACTION_CHANGE_DEFAULT = "android.provider.Telephony.ACTION_CHANGE_DEFAULT"; - field public static final String ACTION_DEFAULT_SMS_PACKAGE_CHANGED = "android.provider.action.DEFAULT_SMS_PACKAGE_CHANGED"; - field public static final String ACTION_EXTERNAL_PROVIDER_CHANGE = "android.provider.action.EXTERNAL_PROVIDER_CHANGE"; - field public static final String DATA_SMS_RECEIVED_ACTION = "android.intent.action.DATA_SMS_RECEIVED"; - field public static final String EXTRA_IS_DEFAULT_SMS_APP = "android.provider.extra.IS_DEFAULT_SMS_APP"; - field public static final String EXTRA_PACKAGE_NAME = "package"; - field public static final int RESULT_SMS_DATABASE_ERROR = 10; // 0xa - field public static final int RESULT_SMS_DISPATCH_FAILURE = 6; // 0x6 - field public static final int RESULT_SMS_DUPLICATED = 5; // 0x5 - field public static final int RESULT_SMS_GENERIC_ERROR = 2; // 0x2 - field public static final int RESULT_SMS_HANDLED = 1; // 0x1 - field public static final int RESULT_SMS_INVALID_URI = 11; // 0xb - field public static final int RESULT_SMS_NULL_MESSAGE = 8; // 0x8 - field public static final int RESULT_SMS_NULL_PDU = 7; // 0x7 - field public static final int RESULT_SMS_OUT_OF_MEMORY = 3; // 0x3 - field public static final int RESULT_SMS_RECEIVED_WHILE_ENCRYPTED = 9; // 0x9 - field public static final int RESULT_SMS_UNSUPPORTED = 4; // 0x4 - field @Deprecated public static final String SECRET_CODE_ACTION = "android.provider.Telephony.SECRET_CODE"; - field public static final String SIM_FULL_ACTION = "android.provider.Telephony.SIM_FULL"; - field public static final String SMS_CB_RECEIVED_ACTION = "android.provider.Telephony.SMS_CB_RECEIVED"; - field public static final String SMS_DELIVER_ACTION = "android.provider.Telephony.SMS_DELIVER"; - field public static final String SMS_RECEIVED_ACTION = "android.provider.Telephony.SMS_RECEIVED"; - field public static final String SMS_REJECTED_ACTION = "android.provider.Telephony.SMS_REJECTED"; - field public static final String SMS_SERVICE_CATEGORY_PROGRAM_DATA_RECEIVED_ACTION = "android.provider.Telephony.SMS_SERVICE_CATEGORY_PROGRAM_DATA_RECEIVED"; - field public static final String WAP_PUSH_DELIVER_ACTION = "android.provider.Telephony.WAP_PUSH_DELIVER"; - field public static final String WAP_PUSH_RECEIVED_ACTION = "android.provider.Telephony.WAP_PUSH_RECEIVED"; - } - - public static final class Telephony.Sms.Outbox implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - } - - public static final class Telephony.Sms.Sent implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "date DESC"; - } - - public static interface Telephony.TextBasedSmsColumns { - field public static final String ADDRESS = "address"; - field public static final String BODY = "body"; - field public static final String CREATOR = "creator"; - field public static final String DATE = "date"; - field public static final String DATE_SENT = "date_sent"; - field public static final String ERROR_CODE = "error_code"; - field public static final String LOCKED = "locked"; - field public static final int MESSAGE_TYPE_ALL = 0; // 0x0 - field public static final int MESSAGE_TYPE_DRAFT = 3; // 0x3 - field public static final int MESSAGE_TYPE_FAILED = 5; // 0x5 - field public static final int MESSAGE_TYPE_INBOX = 1; // 0x1 - field public static final int MESSAGE_TYPE_OUTBOX = 4; // 0x4 - field public static final int MESSAGE_TYPE_QUEUED = 6; // 0x6 - field public static final int MESSAGE_TYPE_SENT = 2; // 0x2 - field public static final String PERSON = "person"; - field public static final String PROTOCOL = "protocol"; - field public static final String READ = "read"; - field public static final String REPLY_PATH_PRESENT = "reply_path_present"; - field public static final String SEEN = "seen"; - field public static final String SERVICE_CENTER = "service_center"; - field public static final String STATUS = "status"; - field public static final int STATUS_COMPLETE = 0; // 0x0 - field public static final int STATUS_FAILED = 64; // 0x40 - field public static final int STATUS_NONE = -1; // 0xffffffff - field public static final int STATUS_PENDING = 32; // 0x20 - field public static final String SUBJECT = "subject"; - field public static final String SUBSCRIPTION_ID = "sub_id"; - field public static final String THREAD_ID = "thread_id"; - field public static final String TYPE = "type"; - } - - public static final class Telephony.Threads implements android.provider.Telephony.ThreadsColumns { - method public static long getOrCreateThreadId(android.content.Context, String); - method public static long getOrCreateThreadId(android.content.Context, java.util.Set); - field public static final int BROADCAST_THREAD = 1; // 0x1 - field public static final int COMMON_THREAD = 0; // 0x0 - field public static final android.net.Uri CONTENT_URI; - field public static final android.net.Uri OBSOLETE_THREADS_URI; - } - - public static interface Telephony.ThreadsColumns extends android.provider.BaseColumns { - field public static final String ARCHIVED = "archived"; - field public static final String DATE = "date"; - field public static final String ERROR = "error"; - field public static final String HAS_ATTACHMENT = "has_attachment"; - field public static final String MESSAGE_COUNT = "message_count"; - field public static final String READ = "read"; - field public static final String RECIPIENT_IDS = "recipient_ids"; - field public static final String SNIPPET = "snippet"; - field public static final String SNIPPET_CHARSET = "snippet_cs"; - field public static final String TYPE = "type"; - } - - public class UserDictionary { - ctor public UserDictionary(); - field public static final String AUTHORITY = "user_dictionary"; - field public static final android.net.Uri CONTENT_URI; - } - - public static class UserDictionary.Words implements android.provider.BaseColumns { - ctor public UserDictionary.Words(); - method @Deprecated public static void addWord(android.content.Context, String, int, int); - method public static void addWord(android.content.Context, String, int, String, java.util.Locale); - field public static final String APP_ID = "appid"; - field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/vnd.google.userword"; - field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/vnd.google.userword"; - field public static final android.net.Uri CONTENT_URI; - field public static final String DEFAULT_SORT_ORDER = "frequency DESC"; - field public static final String FREQUENCY = "frequency"; - field public static final String LOCALE = "locale"; - field @Deprecated public static final int LOCALE_TYPE_ALL = 0; // 0x0 - field @Deprecated public static final int LOCALE_TYPE_CURRENT = 1; // 0x1 - field public static final String SHORTCUT = "shortcut"; - field public static final String WORD = "word"; - field public static final String _ID = "_id"; - } - - public class VoicemailContract { - field public static final String ACTION_FETCH_VOICEMAIL = "android.intent.action.FETCH_VOICEMAIL"; - field public static final String ACTION_NEW_VOICEMAIL = "android.intent.action.NEW_VOICEMAIL"; - field public static final String ACTION_SYNC_VOICEMAIL = "android.provider.action.SYNC_VOICEMAIL"; - field public static final String AUTHORITY = "com.android.voicemail"; - field public static final String EXTRA_PHONE_ACCOUNT_HANDLE = "android.provider.extra.PHONE_ACCOUNT_HANDLE"; - field public static final String EXTRA_SELF_CHANGE = "com.android.voicemail.extra.SELF_CHANGE"; - field public static final String PARAM_KEY_SOURCE_PACKAGE = "source_package"; - } - - public static final class VoicemailContract.Status implements android.provider.BaseColumns { - method public static android.net.Uri buildSourceUri(String); - field public static final String CONFIGURATION_STATE = "configuration_state"; - field public static final int CONFIGURATION_STATE_CAN_BE_CONFIGURED = 2; // 0x2 - field public static final int CONFIGURATION_STATE_CONFIGURING = 3; // 0x3 - field public static final int CONFIGURATION_STATE_DISABLED = 5; // 0x5 - field public static final int CONFIGURATION_STATE_FAILED = 4; // 0x4 - field public static final int CONFIGURATION_STATE_NOT_CONFIGURED = 1; // 0x1 - field public static final int CONFIGURATION_STATE_OK = 0; // 0x0 - field public static final android.net.Uri CONTENT_URI; - field public static final String DATA_CHANNEL_STATE = "data_channel_state"; - field public static final int DATA_CHANNEL_STATE_BAD_CONFIGURATION = 3; // 0x3 - field public static final int DATA_CHANNEL_STATE_COMMUNICATION_ERROR = 4; // 0x4 - field public static final int DATA_CHANNEL_STATE_NO_CONNECTION = 1; // 0x1 - field public static final int DATA_CHANNEL_STATE_NO_CONNECTION_CELLULAR_REQUIRED = 2; // 0x2 - field public static final int DATA_CHANNEL_STATE_OK = 0; // 0x0 - field public static final int DATA_CHANNEL_STATE_SERVER_CONNECTION_ERROR = 6; // 0x6 - field public static final int DATA_CHANNEL_STATE_SERVER_ERROR = 5; // 0x5 - field public static final String DIR_TYPE = "vnd.android.cursor.dir/voicemail.source.status"; - field public static final String ITEM_TYPE = "vnd.android.cursor.item/voicemail.source.status"; - field public static final String NOTIFICATION_CHANNEL_STATE = "notification_channel_state"; - field public static final int NOTIFICATION_CHANNEL_STATE_MESSAGE_WAITING = 2; // 0x2 - field public static final int NOTIFICATION_CHANNEL_STATE_NO_CONNECTION = 1; // 0x1 - field public static final int NOTIFICATION_CHANNEL_STATE_OK = 0; // 0x0 - field public static final String PHONE_ACCOUNT_COMPONENT_NAME = "phone_account_component_name"; - field public static final String PHONE_ACCOUNT_ID = "phone_account_id"; - field public static final String QUOTA_OCCUPIED = "quota_occupied"; - field public static final String QUOTA_TOTAL = "quota_total"; - field public static final int QUOTA_UNAVAILABLE = -1; // 0xffffffff - field public static final String SETTINGS_URI = "settings_uri"; - field public static final String SOURCE_PACKAGE = "source_package"; - field public static final String SOURCE_TYPE = "source_type"; - field public static final String VOICEMAIL_ACCESS_URI = "voicemail_access_uri"; - } - - public static final class VoicemailContract.Voicemails implements android.provider.BaseColumns android.provider.OpenableColumns { - method public static android.net.Uri buildSourceUri(String); - field public static final String ARCHIVED = "archived"; - field public static final String BACKED_UP = "backed_up"; - field public static final android.net.Uri CONTENT_URI; - field public static final String DATE = "date"; - field public static final String DELETED = "deleted"; - field public static final String DIRTY = "dirty"; - field public static final int DIRTY_RETAIN = -1; // 0xffffffff - field public static final String DIR_TYPE = "vnd.android.cursor.dir/voicemails"; - field public static final String DURATION = "duration"; - field public static final String HAS_CONTENT = "has_content"; - field public static final String IS_OMTP_VOICEMAIL = "is_omtp_voicemail"; - field public static final String IS_READ = "is_read"; - field public static final String ITEM_TYPE = "vnd.android.cursor.item/voicemail"; - field public static final String LAST_MODIFIED = "last_modified"; - field public static final String MIME_TYPE = "mime_type"; - field public static final String NEW = "new"; - field public static final String NUMBER = "number"; - field public static final String PHONE_ACCOUNT_COMPONENT_NAME = "subscription_component_name"; - field public static final String PHONE_ACCOUNT_ID = "subscription_id"; - field public static final String RESTORED = "restored"; - field public static final String SOURCE_DATA = "source_data"; - field public static final String SOURCE_PACKAGE = "source_package"; - field public static final String TRANSCRIPTION = "transcription"; - } - -} - -package android.renderscript { - - @Deprecated public class Allocation extends android.renderscript.BaseObj { - method @Deprecated public void copy1DRangeFrom(int, int, Object); - method @Deprecated public void copy1DRangeFrom(int, int, int[]); - method @Deprecated public void copy1DRangeFrom(int, int, short[]); - method @Deprecated public void copy1DRangeFrom(int, int, byte[]); - method @Deprecated public void copy1DRangeFrom(int, int, float[]); - method @Deprecated public void copy1DRangeFrom(int, int, android.renderscript.Allocation, int); - method @Deprecated public void copy1DRangeFromUnchecked(int, int, Object); - method @Deprecated public void copy1DRangeFromUnchecked(int, int, int[]); - method @Deprecated public void copy1DRangeFromUnchecked(int, int, short[]); - method @Deprecated public void copy1DRangeFromUnchecked(int, int, byte[]); - method @Deprecated public void copy1DRangeFromUnchecked(int, int, float[]); - method @Deprecated public void copy1DRangeTo(int, int, Object); - method @Deprecated public void copy1DRangeTo(int, int, int[]); - method @Deprecated public void copy1DRangeTo(int, int, short[]); - method @Deprecated public void copy1DRangeTo(int, int, byte[]); - method @Deprecated public void copy1DRangeTo(int, int, float[]); - method @Deprecated public void copy1DRangeToUnchecked(int, int, Object); - method @Deprecated public void copy1DRangeToUnchecked(int, int, int[]); - method @Deprecated public void copy1DRangeToUnchecked(int, int, short[]); - method @Deprecated public void copy1DRangeToUnchecked(int, int, byte[]); - method @Deprecated public void copy1DRangeToUnchecked(int, int, float[]); - method @Deprecated public void copy2DRangeFrom(int, int, int, int, Object); - method @Deprecated public void copy2DRangeFrom(int, int, int, int, byte[]); - method @Deprecated public void copy2DRangeFrom(int, int, int, int, short[]); - method @Deprecated public void copy2DRangeFrom(int, int, int, int, int[]); - method @Deprecated public void copy2DRangeFrom(int, int, int, int, float[]); - method @Deprecated public void copy2DRangeFrom(int, int, int, int, android.renderscript.Allocation, int, int); - method @Deprecated public void copy2DRangeFrom(int, int, android.graphics.Bitmap); - method @Deprecated public void copy2DRangeTo(int, int, int, int, Object); - method @Deprecated public void copy2DRangeTo(int, int, int, int, byte[]); - method @Deprecated public void copy2DRangeTo(int, int, int, int, short[]); - method @Deprecated public void copy2DRangeTo(int, int, int, int, int[]); - method @Deprecated public void copy2DRangeTo(int, int, int, int, float[]); - method @Deprecated public void copy3DRangeFrom(int, int, int, int, int, int, Object); - method @Deprecated public void copy3DRangeFrom(int, int, int, int, int, int, android.renderscript.Allocation, int, int, int); - method @Deprecated public void copy3DRangeTo(int, int, int, int, int, int, Object); - method @Deprecated public void copyFrom(android.renderscript.BaseObj[]); - method @Deprecated public void copyFrom(Object); - method @Deprecated public void copyFrom(int[]); - method @Deprecated public void copyFrom(short[]); - method @Deprecated public void copyFrom(byte[]); - method @Deprecated public void copyFrom(float[]); - method @Deprecated public void copyFrom(android.graphics.Bitmap); - method @Deprecated public void copyFrom(android.renderscript.Allocation); - method @Deprecated public void copyFromUnchecked(Object); - method @Deprecated public void copyFromUnchecked(int[]); - method @Deprecated public void copyFromUnchecked(short[]); - method @Deprecated public void copyFromUnchecked(byte[]); - method @Deprecated public void copyFromUnchecked(float[]); - method @Deprecated public void copyTo(android.graphics.Bitmap); - method @Deprecated public void copyTo(Object); - method @Deprecated public void copyTo(byte[]); - method @Deprecated public void copyTo(short[]); - method @Deprecated public void copyTo(int[]); - method @Deprecated public void copyTo(float[]); - method @Deprecated public static android.renderscript.Allocation[] createAllocations(android.renderscript.RenderScript, android.renderscript.Type, int, int); - method @Deprecated public static android.renderscript.Allocation createCubemapFromBitmap(android.renderscript.RenderScript, android.graphics.Bitmap, android.renderscript.Allocation.MipmapControl, int); - method @Deprecated public static android.renderscript.Allocation createCubemapFromBitmap(android.renderscript.RenderScript, android.graphics.Bitmap); - method @Deprecated public static android.renderscript.Allocation createCubemapFromCubeFaces(android.renderscript.RenderScript, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.renderscript.Allocation.MipmapControl, int); - method @Deprecated public static android.renderscript.Allocation createCubemapFromCubeFaces(android.renderscript.RenderScript, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap); - method @Deprecated public static android.renderscript.Allocation createFromBitmap(android.renderscript.RenderScript, android.graphics.Bitmap, android.renderscript.Allocation.MipmapControl, int); - method @Deprecated public static android.renderscript.Allocation createFromBitmap(android.renderscript.RenderScript, android.graphics.Bitmap); - method @Deprecated public static android.renderscript.Allocation createFromBitmapResource(android.renderscript.RenderScript, android.content.res.Resources, int, android.renderscript.Allocation.MipmapControl, int); - method @Deprecated public static android.renderscript.Allocation createFromBitmapResource(android.renderscript.RenderScript, android.content.res.Resources, int); - method @Deprecated public static android.renderscript.Allocation createFromString(android.renderscript.RenderScript, String, int); - method @Deprecated public static android.renderscript.Allocation createSized(android.renderscript.RenderScript, android.renderscript.Element, int, int); - method @Deprecated public static android.renderscript.Allocation createSized(android.renderscript.RenderScript, android.renderscript.Element, int); - method @Deprecated public static android.renderscript.Allocation createTyped(android.renderscript.RenderScript, android.renderscript.Type, android.renderscript.Allocation.MipmapControl, int); - method @Deprecated public static android.renderscript.Allocation createTyped(android.renderscript.RenderScript, android.renderscript.Type, int); - method @Deprecated public static android.renderscript.Allocation createTyped(android.renderscript.RenderScript, android.renderscript.Type); - method @Deprecated public void generateMipmaps(); - method @Deprecated public java.nio.ByteBuffer getByteBuffer(); - method @Deprecated public int getBytesSize(); - method @Deprecated public android.renderscript.Element getElement(); - method @Deprecated public long getStride(); - method @Deprecated public android.view.Surface getSurface(); - method @Deprecated public long getTimeStamp(); - method @Deprecated public android.renderscript.Type getType(); - method @Deprecated public int getUsage(); - method @Deprecated public void ioReceive(); - method @Deprecated public void ioSend(); - method @Deprecated public void resize(int); - method @Deprecated public void setAutoPadding(boolean); - method @Deprecated public void setFromFieldPacker(int, android.renderscript.FieldPacker); - method @Deprecated public void setFromFieldPacker(int, int, android.renderscript.FieldPacker); - method @Deprecated public void setFromFieldPacker(int, int, int, int, android.renderscript.FieldPacker); - method @Deprecated public void setOnBufferAvailableListener(android.renderscript.Allocation.OnBufferAvailableListener); - method @Deprecated public void setSurface(android.view.Surface); - method @Deprecated public void syncAll(int); - field @Deprecated public static final int USAGE_GRAPHICS_CONSTANTS = 8; // 0x8 - field @Deprecated public static final int USAGE_GRAPHICS_RENDER_TARGET = 16; // 0x10 - field @Deprecated public static final int USAGE_GRAPHICS_TEXTURE = 2; // 0x2 - field @Deprecated public static final int USAGE_GRAPHICS_VERTEX = 4; // 0x4 - field @Deprecated public static final int USAGE_IO_INPUT = 32; // 0x20 - field @Deprecated public static final int USAGE_IO_OUTPUT = 64; // 0x40 - field @Deprecated public static final int USAGE_SCRIPT = 1; // 0x1 - field @Deprecated public static final int USAGE_SHARED = 128; // 0x80 - } - - @Deprecated public enum Allocation.MipmapControl { - enum_constant @Deprecated public static final android.renderscript.Allocation.MipmapControl MIPMAP_FULL; - enum_constant @Deprecated public static final android.renderscript.Allocation.MipmapControl MIPMAP_NONE; - enum_constant @Deprecated public static final android.renderscript.Allocation.MipmapControl MIPMAP_ON_SYNC_TO_TEXTURE; - } - - @Deprecated public static interface Allocation.OnBufferAvailableListener { - method @Deprecated public void onBufferAvailable(android.renderscript.Allocation); - } - - @Deprecated public class AllocationAdapter extends android.renderscript.Allocation { - method @Deprecated public static android.renderscript.AllocationAdapter create1D(android.renderscript.RenderScript, android.renderscript.Allocation); - method @Deprecated public static android.renderscript.AllocationAdapter create2D(android.renderscript.RenderScript, android.renderscript.Allocation); - method @Deprecated public static android.renderscript.AllocationAdapter createTyped(android.renderscript.RenderScript, android.renderscript.Allocation, android.renderscript.Type); - method @Deprecated public void resize(int); - method @Deprecated public void setFace(android.renderscript.Type.CubemapFace); - method @Deprecated public void setLOD(int); - method @Deprecated public void setX(int); - method @Deprecated public void setY(int); - method @Deprecated public void setZ(int); - } - - @Deprecated public class BaseObj { - method @Deprecated public void destroy(); - method @Deprecated public String getName(); - method @Deprecated public void setName(String); - } - - @Deprecated public class Byte2 { - ctor @Deprecated public Byte2(); - ctor @Deprecated public Byte2(byte, byte); - field @Deprecated public byte x; - field @Deprecated public byte y; - } - - @Deprecated public class Byte3 { - ctor @Deprecated public Byte3(); - ctor @Deprecated public Byte3(byte, byte, byte); - field @Deprecated public byte x; - field @Deprecated public byte y; - field @Deprecated public byte z; - } - - @Deprecated public class Byte4 { - ctor @Deprecated public Byte4(); - ctor @Deprecated public Byte4(byte, byte, byte, byte); - field @Deprecated public byte w; - field @Deprecated public byte x; - field @Deprecated public byte y; - field @Deprecated public byte z; - } - - @Deprecated public class Double2 { - ctor @Deprecated public Double2(); - ctor @Deprecated public Double2(double, double); - field @Deprecated public double x; - field @Deprecated public double y; - } - - @Deprecated public class Double3 { - ctor @Deprecated public Double3(); - ctor @Deprecated public Double3(double, double, double); - field @Deprecated public double x; - field @Deprecated public double y; - field @Deprecated public double z; - } - - @Deprecated public class Double4 { - ctor @Deprecated public Double4(); - ctor @Deprecated public Double4(double, double, double, double); - field @Deprecated public double w; - field @Deprecated public double x; - field @Deprecated public double y; - field @Deprecated public double z; - } - - @Deprecated public class Element extends android.renderscript.BaseObj { - method @Deprecated public static android.renderscript.Element ALLOCATION(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element A_8(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element BOOLEAN(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element ELEMENT(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F16(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F16_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F16_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F16_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F32(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F32_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F32_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F32_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F64(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F64_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F64_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element F64_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element FONT(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I16(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I16_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I16_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I16_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I32(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I32_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I32_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I32_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I64(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I64_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I64_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I64_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I8(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I8_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I8_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element I8_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element MATRIX4X4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element MATRIX_2X2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element MATRIX_3X3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element MATRIX_4X4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element MESH(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element PROGRAM_FRAGMENT(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element PROGRAM_RASTER(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element PROGRAM_STORE(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element PROGRAM_VERTEX(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element RGBA_4444(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element RGBA_5551(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element RGBA_8888(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element RGB_565(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element RGB_888(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element SAMPLER(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element SCRIPT(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element TYPE(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U16(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U16_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U16_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U16_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U32(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U32_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U32_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U32_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U64(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U64_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U64_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U64_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U8(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U8_2(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U8_3(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element U8_4(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element YUV(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Element createPixel(android.renderscript.RenderScript, android.renderscript.Element.DataType, android.renderscript.Element.DataKind); - method @Deprecated public static android.renderscript.Element createVector(android.renderscript.RenderScript, android.renderscript.Element.DataType, int); - method @Deprecated public int getBytesSize(); - method @Deprecated public android.renderscript.Element.DataKind getDataKind(); - method @Deprecated public android.renderscript.Element.DataType getDataType(); - method @Deprecated public android.renderscript.Element getSubElement(int); - method @Deprecated public int getSubElementArraySize(int); - method @Deprecated public int getSubElementCount(); - method @Deprecated public String getSubElementName(int); - method @Deprecated public int getSubElementOffsetBytes(int); - method @Deprecated public int getVectorSize(); - method @Deprecated public boolean isCompatible(android.renderscript.Element); - method @Deprecated public boolean isComplex(); - } - - @Deprecated public static class Element.Builder { - ctor @Deprecated public Element.Builder(android.renderscript.RenderScript); - method @Deprecated public android.renderscript.Element.Builder add(android.renderscript.Element, String, int); - method @Deprecated public android.renderscript.Element.Builder add(android.renderscript.Element, String); - method @Deprecated public android.renderscript.Element create(); - } - - @Deprecated public enum Element.DataKind { - enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_A; - enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_DEPTH; - enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_L; - enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_LA; - enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_RGB; - enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_RGBA; - enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_YUV; - enum_constant @Deprecated public static final android.renderscript.Element.DataKind USER; - } - - @Deprecated public enum Element.DataType { - enum_constant @Deprecated public static final android.renderscript.Element.DataType BOOLEAN; - enum_constant @Deprecated public static final android.renderscript.Element.DataType FLOAT_16; - enum_constant @Deprecated public static final android.renderscript.Element.DataType FLOAT_32; - enum_constant @Deprecated public static final android.renderscript.Element.DataType FLOAT_64; - enum_constant @Deprecated public static final android.renderscript.Element.DataType MATRIX_2X2; - enum_constant @Deprecated public static final android.renderscript.Element.DataType MATRIX_3X3; - enum_constant @Deprecated public static final android.renderscript.Element.DataType MATRIX_4X4; - enum_constant @Deprecated public static final android.renderscript.Element.DataType NONE; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_ALLOCATION; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_ELEMENT; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_FONT; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_MESH; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_PROGRAM_FRAGMENT; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_PROGRAM_RASTER; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_PROGRAM_STORE; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_PROGRAM_VERTEX; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_SAMPLER; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_SCRIPT; - enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_TYPE; - enum_constant @Deprecated public static final android.renderscript.Element.DataType SIGNED_16; - enum_constant @Deprecated public static final android.renderscript.Element.DataType SIGNED_32; - enum_constant @Deprecated public static final android.renderscript.Element.DataType SIGNED_64; - enum_constant @Deprecated public static final android.renderscript.Element.DataType SIGNED_8; - enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_16; - enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_32; - enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_4_4_4_4; - enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_5_5_5_1; - enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_5_6_5; - enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_64; - enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_8; - } - - @Deprecated public class FieldPacker { - ctor @Deprecated public FieldPacker(int); - ctor @Deprecated public FieldPacker(byte[]); - method @Deprecated public void addBoolean(boolean); - method @Deprecated public void addF32(float); - method @Deprecated public void addF32(android.renderscript.Float2); - method @Deprecated public void addF32(android.renderscript.Float3); - method @Deprecated public void addF32(android.renderscript.Float4); - method @Deprecated public void addF64(double); - method @Deprecated public void addF64(android.renderscript.Double2); - method @Deprecated public void addF64(android.renderscript.Double3); - method @Deprecated public void addF64(android.renderscript.Double4); - method @Deprecated public void addI16(short); - method @Deprecated public void addI16(android.renderscript.Short2); - method @Deprecated public void addI16(android.renderscript.Short3); - method @Deprecated public void addI16(android.renderscript.Short4); - method @Deprecated public void addI32(int); - method @Deprecated public void addI32(android.renderscript.Int2); - method @Deprecated public void addI32(android.renderscript.Int3); - method @Deprecated public void addI32(android.renderscript.Int4); - method @Deprecated public void addI64(long); - method @Deprecated public void addI64(android.renderscript.Long2); - method @Deprecated public void addI64(android.renderscript.Long3); - method @Deprecated public void addI64(android.renderscript.Long4); - method @Deprecated public void addI8(byte); - method @Deprecated public void addI8(android.renderscript.Byte2); - method @Deprecated public void addI8(android.renderscript.Byte3); - method @Deprecated public void addI8(android.renderscript.Byte4); - method @Deprecated public void addMatrix(android.renderscript.Matrix4f); - method @Deprecated public void addMatrix(android.renderscript.Matrix3f); - method @Deprecated public void addMatrix(android.renderscript.Matrix2f); - method @Deprecated public void addObj(android.renderscript.BaseObj); - method @Deprecated public void addU16(int); - method @Deprecated public void addU16(android.renderscript.Int2); - method @Deprecated public void addU16(android.renderscript.Int3); - method @Deprecated public void addU16(android.renderscript.Int4); - method @Deprecated public void addU32(long); - method @Deprecated public void addU32(android.renderscript.Long2); - method @Deprecated public void addU32(android.renderscript.Long3); - method @Deprecated public void addU32(android.renderscript.Long4); - method @Deprecated public void addU64(long); - method @Deprecated public void addU64(android.renderscript.Long2); - method @Deprecated public void addU64(android.renderscript.Long3); - method @Deprecated public void addU64(android.renderscript.Long4); - method @Deprecated public void addU8(short); - method @Deprecated public void addU8(android.renderscript.Short2); - method @Deprecated public void addU8(android.renderscript.Short3); - method @Deprecated public void addU8(android.renderscript.Short4); - method @Deprecated public void align(int); - method @Deprecated public final byte[] getData(); - method @Deprecated public void reset(); - method @Deprecated public void reset(int); - method @Deprecated public void skip(int); - method @Deprecated public boolean subBoolean(); - method @Deprecated public android.renderscript.Byte2 subByte2(); - method @Deprecated public android.renderscript.Byte3 subByte3(); - method @Deprecated public android.renderscript.Byte4 subByte4(); - method @Deprecated public android.renderscript.Double2 subDouble2(); - method @Deprecated public android.renderscript.Double3 subDouble3(); - method @Deprecated public android.renderscript.Double4 subDouble4(); - method @Deprecated public float subF32(); - method @Deprecated public double subF64(); - method @Deprecated public android.renderscript.Float2 subFloat2(); - method @Deprecated public android.renderscript.Float3 subFloat3(); - method @Deprecated public android.renderscript.Float4 subFloat4(); - method @Deprecated public short subI16(); - method @Deprecated public int subI32(); - method @Deprecated public long subI64(); - method @Deprecated public byte subI8(); - method @Deprecated public android.renderscript.Int2 subInt2(); - method @Deprecated public android.renderscript.Int3 subInt3(); - method @Deprecated public android.renderscript.Int4 subInt4(); - method @Deprecated public android.renderscript.Long2 subLong2(); - method @Deprecated public android.renderscript.Long3 subLong3(); - method @Deprecated public android.renderscript.Long4 subLong4(); - method @Deprecated public android.renderscript.Matrix2f subMatrix2f(); - method @Deprecated public android.renderscript.Matrix3f subMatrix3f(); - method @Deprecated public android.renderscript.Matrix4f subMatrix4f(); - method @Deprecated public android.renderscript.Short2 subShort2(); - method @Deprecated public android.renderscript.Short3 subShort3(); - method @Deprecated public android.renderscript.Short4 subShort4(); - method @Deprecated public void subalign(int); - } - - @Deprecated public class Float2 { - ctor @Deprecated public Float2(); - ctor @Deprecated public Float2(float, float); - field @Deprecated public float x; - field @Deprecated public float y; - } - - @Deprecated public class Float3 { - ctor @Deprecated public Float3(); - ctor @Deprecated public Float3(float, float, float); - field @Deprecated public float x; - field @Deprecated public float y; - field @Deprecated public float z; - } - - @Deprecated public class Float4 { - ctor @Deprecated public Float4(); - ctor @Deprecated public Float4(float, float, float, float); - field @Deprecated public float w; - field @Deprecated public float x; - field @Deprecated public float y; - field @Deprecated public float z; - } - - @Deprecated public class Int2 { - ctor @Deprecated public Int2(); - ctor @Deprecated public Int2(int, int); - field @Deprecated public int x; - field @Deprecated public int y; - } - - @Deprecated public class Int3 { - ctor @Deprecated public Int3(); - ctor @Deprecated public Int3(int, int, int); - field @Deprecated public int x; - field @Deprecated public int y; - field @Deprecated public int z; - } - - @Deprecated public class Int4 { - ctor @Deprecated public Int4(); - ctor @Deprecated public Int4(int, int, int, int); - field @Deprecated public int w; - field @Deprecated public int x; - field @Deprecated public int y; - field @Deprecated public int z; - } - - @Deprecated public class Long2 { - ctor @Deprecated public Long2(); - ctor @Deprecated public Long2(long, long); - field @Deprecated public long x; - field @Deprecated public long y; - } - - @Deprecated public class Long3 { - ctor @Deprecated public Long3(); - ctor @Deprecated public Long3(long, long, long); - field @Deprecated public long x; - field @Deprecated public long y; - field @Deprecated public long z; - } - - @Deprecated public class Long4 { - ctor @Deprecated public Long4(); - ctor @Deprecated public Long4(long, long, long, long); - field @Deprecated public long w; - field @Deprecated public long x; - field @Deprecated public long y; - field @Deprecated public long z; - } - - @Deprecated public class Matrix2f { - ctor @Deprecated public Matrix2f(); - ctor @Deprecated public Matrix2f(float[]); - method @Deprecated public float get(int, int); - method @Deprecated public float[] getArray(); - method @Deprecated public void load(android.renderscript.Matrix2f); - method @Deprecated public void loadIdentity(); - method @Deprecated public void loadMultiply(android.renderscript.Matrix2f, android.renderscript.Matrix2f); - method @Deprecated public void loadRotate(float); - method @Deprecated public void loadScale(float, float); - method @Deprecated public void multiply(android.renderscript.Matrix2f); - method @Deprecated public void rotate(float); - method @Deprecated public void scale(float, float); - method @Deprecated public void set(int, int, float); - method @Deprecated public void transpose(); - } - - @Deprecated public class Matrix3f { - ctor @Deprecated public Matrix3f(); - ctor @Deprecated public Matrix3f(float[]); - method @Deprecated public float get(int, int); - method @Deprecated public float[] getArray(); - method @Deprecated public void load(android.renderscript.Matrix3f); - method @Deprecated public void loadIdentity(); - method @Deprecated public void loadMultiply(android.renderscript.Matrix3f, android.renderscript.Matrix3f); - method @Deprecated public void loadRotate(float, float, float, float); - method @Deprecated public void loadRotate(float); - method @Deprecated public void loadScale(float, float); - method @Deprecated public void loadScale(float, float, float); - method @Deprecated public void loadTranslate(float, float); - method @Deprecated public void multiply(android.renderscript.Matrix3f); - method @Deprecated public void rotate(float, float, float, float); - method @Deprecated public void rotate(float); - method @Deprecated public void scale(float, float); - method @Deprecated public void scale(float, float, float); - method @Deprecated public void set(int, int, float); - method @Deprecated public void translate(float, float); - method @Deprecated public void transpose(); - } - - @Deprecated public class Matrix4f { - ctor @Deprecated public Matrix4f(); - ctor @Deprecated public Matrix4f(float[]); - method @Deprecated public float get(int, int); - method @Deprecated public float[] getArray(); - method @Deprecated public boolean inverse(); - method @Deprecated public boolean inverseTranspose(); - method @Deprecated public void load(android.renderscript.Matrix4f); - method @Deprecated public void loadFrustum(float, float, float, float, float, float); - method @Deprecated public void loadIdentity(); - method @Deprecated public void loadMultiply(android.renderscript.Matrix4f, android.renderscript.Matrix4f); - method @Deprecated public void loadOrtho(float, float, float, float, float, float); - method @Deprecated public void loadOrthoWindow(int, int); - method @Deprecated public void loadPerspective(float, float, float, float); - method @Deprecated public void loadProjectionNormalized(int, int); - method @Deprecated public void loadRotate(float, float, float, float); - method @Deprecated public void loadScale(float, float, float); - method @Deprecated public void loadTranslate(float, float, float); - method @Deprecated public void multiply(android.renderscript.Matrix4f); - method @Deprecated public void rotate(float, float, float, float); - method @Deprecated public void scale(float, float, float); - method @Deprecated public void set(int, int, float); - method @Deprecated public void translate(float, float, float); - method @Deprecated public void transpose(); - } - - @Deprecated public class RSDriverException extends android.renderscript.RSRuntimeException { - ctor @Deprecated public RSDriverException(String); - } - - @Deprecated public class RSIllegalArgumentException extends android.renderscript.RSRuntimeException { - ctor @Deprecated public RSIllegalArgumentException(String); - } - - @Deprecated public class RSInvalidStateException extends android.renderscript.RSRuntimeException { - ctor @Deprecated public RSInvalidStateException(String); - } - - @Deprecated public class RSRuntimeException extends java.lang.RuntimeException { - ctor @Deprecated public RSRuntimeException(String); - } - - @Deprecated public class RenderScript { - method @Deprecated public void contextDump(); - method @Deprecated public static android.renderscript.RenderScript create(android.content.Context); - method @Deprecated public static android.renderscript.RenderScript create(android.content.Context, android.renderscript.RenderScript.ContextType); - method @Deprecated public static android.renderscript.RenderScript create(android.content.Context, android.renderscript.RenderScript.ContextType, int); - method @Deprecated public static android.renderscript.RenderScript createMultiContext(android.content.Context, android.renderscript.RenderScript.ContextType, int, int); - method @Deprecated public void destroy(); - method @Deprecated public void finish(); - method @Deprecated public final android.content.Context getApplicationContext(); - method @Deprecated public android.renderscript.RenderScript.RSErrorHandler getErrorHandler(); - method @Deprecated public android.renderscript.RenderScript.RSMessageHandler getMessageHandler(); - method @Deprecated public static long getMinorVersion(); - method @Deprecated public static void releaseAllContexts(); - method @Deprecated public void sendMessage(int, int[]); - method @Deprecated public void setErrorHandler(android.renderscript.RenderScript.RSErrorHandler); - method @Deprecated public void setMessageHandler(android.renderscript.RenderScript.RSMessageHandler); - method @Deprecated public void setPriority(android.renderscript.RenderScript.Priority); - field @Deprecated public static final int CREATE_FLAG_LOW_LATENCY = 2; // 0x2 - field @Deprecated public static final int CREATE_FLAG_LOW_POWER = 4; // 0x4 - field @Deprecated public static final int CREATE_FLAG_NONE = 0; // 0x0 - } - - @Deprecated public enum RenderScript.ContextType { - enum_constant @Deprecated public static final android.renderscript.RenderScript.ContextType DEBUG; - enum_constant @Deprecated public static final android.renderscript.RenderScript.ContextType NORMAL; - enum_constant @Deprecated public static final android.renderscript.RenderScript.ContextType PROFILE; - } - - @Deprecated public enum RenderScript.Priority { - enum_constant @Deprecated public static final android.renderscript.RenderScript.Priority LOW; - enum_constant @Deprecated public static final android.renderscript.RenderScript.Priority NORMAL; - } - - @Deprecated public static class RenderScript.RSErrorHandler implements java.lang.Runnable { - ctor @Deprecated public RenderScript.RSErrorHandler(); - method @Deprecated public void run(); - field @Deprecated protected String mErrorMessage; - field @Deprecated protected int mErrorNum; - } - - @Deprecated public static class RenderScript.RSMessageHandler implements java.lang.Runnable { - ctor @Deprecated public RenderScript.RSMessageHandler(); - method @Deprecated public void run(); - field @Deprecated protected int[] mData; - field @Deprecated protected int mID; - field @Deprecated protected int mLength; - } - - @Deprecated public class Sampler extends android.renderscript.BaseObj { - method @Deprecated public static android.renderscript.Sampler CLAMP_LINEAR(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Sampler CLAMP_LINEAR_MIP_LINEAR(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Sampler CLAMP_NEAREST(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Sampler MIRRORED_REPEAT_LINEAR(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Sampler MIRRORED_REPEAT_LINEAR_MIP_LINEAR(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Sampler MIRRORED_REPEAT_NEAREST(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Sampler WRAP_LINEAR(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Sampler WRAP_LINEAR_MIP_LINEAR(android.renderscript.RenderScript); - method @Deprecated public static android.renderscript.Sampler WRAP_NEAREST(android.renderscript.RenderScript); - method @Deprecated public float getAnisotropy(); - method @Deprecated public android.renderscript.Sampler.Value getMagnification(); - method @Deprecated public android.renderscript.Sampler.Value getMinification(); - method @Deprecated public android.renderscript.Sampler.Value getWrapS(); - method @Deprecated public android.renderscript.Sampler.Value getWrapT(); - } - - @Deprecated public static class Sampler.Builder { - ctor @Deprecated public Sampler.Builder(android.renderscript.RenderScript); - method @Deprecated public android.renderscript.Sampler create(); - method @Deprecated public void setAnisotropy(float); - method @Deprecated public void setMagnification(android.renderscript.Sampler.Value); - method @Deprecated public void setMinification(android.renderscript.Sampler.Value); - method @Deprecated public void setWrapS(android.renderscript.Sampler.Value); - method @Deprecated public void setWrapT(android.renderscript.Sampler.Value); - } - - @Deprecated public enum Sampler.Value { - enum_constant @Deprecated public static final android.renderscript.Sampler.Value CLAMP; - enum_constant @Deprecated public static final android.renderscript.Sampler.Value LINEAR; - enum_constant @Deprecated public static final android.renderscript.Sampler.Value LINEAR_MIP_LINEAR; - enum_constant @Deprecated public static final android.renderscript.Sampler.Value LINEAR_MIP_NEAREST; - enum_constant @Deprecated public static final android.renderscript.Sampler.Value MIRRORED_REPEAT; - enum_constant @Deprecated public static final android.renderscript.Sampler.Value NEAREST; - enum_constant @Deprecated public static final android.renderscript.Sampler.Value WRAP; - } - - @Deprecated public class Script extends android.renderscript.BaseObj { - method @Deprecated public void bindAllocation(android.renderscript.Allocation, int); - method @Deprecated protected android.renderscript.Script.FieldID createFieldID(int, android.renderscript.Element); - method @Deprecated protected android.renderscript.Script.InvokeID createInvokeID(int); - method @Deprecated protected android.renderscript.Script.KernelID createKernelID(int, int, android.renderscript.Element, android.renderscript.Element); - method @Deprecated protected void forEach(int, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.FieldPacker); - method @Deprecated protected void forEach(int, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.FieldPacker, android.renderscript.Script.LaunchOptions); - method @Deprecated protected void forEach(int, android.renderscript.Allocation[], android.renderscript.Allocation, android.renderscript.FieldPacker); - method @Deprecated protected void forEach(int, android.renderscript.Allocation[], android.renderscript.Allocation, android.renderscript.FieldPacker, android.renderscript.Script.LaunchOptions); - method @Deprecated public boolean getVarB(int); - method @Deprecated public double getVarD(int); - method @Deprecated public float getVarF(int); - method @Deprecated public int getVarI(int); - method @Deprecated public long getVarJ(int); - method @Deprecated public void getVarV(int, android.renderscript.FieldPacker); - method @Deprecated protected void invoke(int); - method @Deprecated protected void invoke(int, android.renderscript.FieldPacker); - method @Deprecated protected void reduce(int, android.renderscript.Allocation[], android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void setTimeZone(String); - method @Deprecated public void setVar(int, float); - method @Deprecated public void setVar(int, double); - method @Deprecated public void setVar(int, int); - method @Deprecated public void setVar(int, long); - method @Deprecated public void setVar(int, boolean); - method @Deprecated public void setVar(int, android.renderscript.BaseObj); - method @Deprecated public void setVar(int, android.renderscript.FieldPacker); - method @Deprecated public void setVar(int, android.renderscript.FieldPacker, android.renderscript.Element, int[]); - } - - @Deprecated public static class Script.Builder { - } - - @Deprecated public static class Script.FieldBase { - ctor @Deprecated protected Script.FieldBase(); - method @Deprecated public android.renderscript.Allocation getAllocation(); - method @Deprecated public android.renderscript.Element getElement(); - method @Deprecated public android.renderscript.Type getType(); - method @Deprecated protected void init(android.renderscript.RenderScript, int); - method @Deprecated protected void init(android.renderscript.RenderScript, int, int); - method @Deprecated public void updateAllocation(); - field @Deprecated protected android.renderscript.Allocation mAllocation; - field @Deprecated protected android.renderscript.Element mElement; - } - - @Deprecated public static final class Script.FieldID extends android.renderscript.BaseObj { - } - - @Deprecated public static final class Script.InvokeID extends android.renderscript.BaseObj { - } - - @Deprecated public static final class Script.KernelID extends android.renderscript.BaseObj { - } - - @Deprecated public static final class Script.LaunchOptions { - ctor @Deprecated public Script.LaunchOptions(); - method @Deprecated public int getXEnd(); - method @Deprecated public int getXStart(); - method @Deprecated public int getYEnd(); - method @Deprecated public int getYStart(); - method @Deprecated public int getZEnd(); - method @Deprecated public int getZStart(); - method @Deprecated public android.renderscript.Script.LaunchOptions setX(int, int); - method @Deprecated public android.renderscript.Script.LaunchOptions setY(int, int); - method @Deprecated public android.renderscript.Script.LaunchOptions setZ(int, int); - } - - @Deprecated public class ScriptC extends android.renderscript.Script { - ctor @Deprecated protected ScriptC(int, android.renderscript.RenderScript); - ctor @Deprecated protected ScriptC(long, android.renderscript.RenderScript); - ctor @Deprecated protected ScriptC(android.renderscript.RenderScript, android.content.res.Resources, int); - ctor @Deprecated protected ScriptC(android.renderscript.RenderScript, String, byte[], byte[]); - } - - @Deprecated public final class ScriptGroup extends android.renderscript.BaseObj { - method @Deprecated public Object[] execute(java.lang.Object...); - method @Deprecated public void execute(); - method @Deprecated public void setInput(android.renderscript.Script.KernelID, android.renderscript.Allocation); - method @Deprecated public void setOutput(android.renderscript.Script.KernelID, android.renderscript.Allocation); - } - - @Deprecated public static final class ScriptGroup.Binding { - ctor @Deprecated public ScriptGroup.Binding(android.renderscript.Script.FieldID, Object); - } - - @Deprecated public static final class ScriptGroup.Builder { - ctor @Deprecated public ScriptGroup.Builder(android.renderscript.RenderScript); - method @Deprecated public android.renderscript.ScriptGroup.Builder addConnection(android.renderscript.Type, android.renderscript.Script.KernelID, android.renderscript.Script.FieldID); - method @Deprecated public android.renderscript.ScriptGroup.Builder addConnection(android.renderscript.Type, android.renderscript.Script.KernelID, android.renderscript.Script.KernelID); - method @Deprecated public android.renderscript.ScriptGroup.Builder addKernel(android.renderscript.Script.KernelID); - method @Deprecated public android.renderscript.ScriptGroup create(); - } - - @Deprecated public static final class ScriptGroup.Builder2 { - ctor @Deprecated public ScriptGroup.Builder2(android.renderscript.RenderScript); - method @Deprecated public android.renderscript.ScriptGroup.Input addInput(); - method @Deprecated public android.renderscript.ScriptGroup.Closure addInvoke(android.renderscript.Script.InvokeID, java.lang.Object...); - method @Deprecated public android.renderscript.ScriptGroup.Closure addKernel(android.renderscript.Script.KernelID, android.renderscript.Type, java.lang.Object...); - method @Deprecated public android.renderscript.ScriptGroup create(String, android.renderscript.ScriptGroup.Future...); - } - - @Deprecated public static final class ScriptGroup.Closure extends android.renderscript.BaseObj { - method @Deprecated public android.renderscript.ScriptGroup.Future getGlobal(android.renderscript.Script.FieldID); - method @Deprecated public android.renderscript.ScriptGroup.Future getReturn(); - } - - @Deprecated public static final class ScriptGroup.Future { - } - - @Deprecated public static final class ScriptGroup.Input { - } - - @Deprecated public abstract class ScriptIntrinsic extends android.renderscript.Script { - } - - @Deprecated public final class ScriptIntrinsic3DLUT extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsic3DLUT create(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public android.renderscript.Script.KernelID getKernelID(); - method @Deprecated public void setLUT(android.renderscript.Allocation); - } - - @Deprecated public final class ScriptIntrinsicBLAS extends android.renderscript.ScriptIntrinsic { - method @Deprecated public void BNNM(android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation, int, int); - method @Deprecated public void CGBMV(int, int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); - method @Deprecated public void CGEMM(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); - method @Deprecated public void CGEMV(int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); - method @Deprecated public void CGERC(android.renderscript.Float2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void CGERU(android.renderscript.Float2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void CHBMV(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); - method @Deprecated public void CHEMM(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); - method @Deprecated public void CHEMV(int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); - method @Deprecated public void CHER(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void CHER2(int, android.renderscript.Float2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void CHER2K(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, float, android.renderscript.Allocation); - method @Deprecated public void CHERK(int, int, float, android.renderscript.Allocation, float, android.renderscript.Allocation); - method @Deprecated public void CHPMV(int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); - method @Deprecated public void CHPR(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void CHPR2(int, android.renderscript.Float2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void CSYMM(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); - method @Deprecated public void CSYR2K(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); - method @Deprecated public void CSYRK(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); - method @Deprecated public void CTBMV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void CTBSV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void CTPMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void CTPSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void CTRMM(int, int, int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void CTRMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void CTRSM(int, int, int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void CTRSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void DGBMV(int, int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); - method @Deprecated public void DGEMM(int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, double, android.renderscript.Allocation); - method @Deprecated public void DGEMV(int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); - method @Deprecated public void DGER(double, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void DSBMV(int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); - method @Deprecated public void DSPMV(int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); - method @Deprecated public void DSPR(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void DSPR2(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void DSYMM(int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, double, android.renderscript.Allocation); - method @Deprecated public void DSYMV(int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); - method @Deprecated public void DSYR(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void DSYR2(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void DSYR2K(int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, double, android.renderscript.Allocation); - method @Deprecated public void DSYRK(int, int, double, android.renderscript.Allocation, double, android.renderscript.Allocation); - method @Deprecated public void DTBMV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void DTBSV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void DTPMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void DTPSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void DTRMM(int, int, int, int, double, android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void DTRMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void DTRSM(int, int, int, int, double, android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void DTRSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void SGBMV(int, int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); - method @Deprecated public void SGEMM(int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, float, android.renderscript.Allocation); - method @Deprecated public void SGEMV(int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); - method @Deprecated public void SGER(float, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void SSBMV(int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); - method @Deprecated public void SSPMV(int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); - method @Deprecated public void SSPR(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void SSPR2(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void SSYMM(int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, float, android.renderscript.Allocation); - method @Deprecated public void SSYMV(int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); - method @Deprecated public void SSYR(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void SSYR2(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void SSYR2K(int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, float, android.renderscript.Allocation); - method @Deprecated public void SSYRK(int, int, float, android.renderscript.Allocation, float, android.renderscript.Allocation); - method @Deprecated public void STBMV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void STBSV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void STPMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void STPSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void STRMM(int, int, int, int, float, android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void STRMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void STRSM(int, int, int, int, float, android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void STRSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void ZGBMV(int, int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); - method @Deprecated public void ZGEMM(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); - method @Deprecated public void ZGEMV(int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); - method @Deprecated public void ZGERC(android.renderscript.Double2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void ZGERU(android.renderscript.Double2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void ZHBMV(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); - method @Deprecated public void ZHEMM(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); - method @Deprecated public void ZHEMV(int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); - method @Deprecated public void ZHER(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void ZHER2(int, android.renderscript.Double2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void ZHER2K(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, double, android.renderscript.Allocation); - method @Deprecated public void ZHERK(int, int, double, android.renderscript.Allocation, double, android.renderscript.Allocation); - method @Deprecated public void ZHPMV(int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); - method @Deprecated public void ZHPR(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void ZHPR2(int, android.renderscript.Double2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); - method @Deprecated public void ZSYMM(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); - method @Deprecated public void ZSYR2K(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); - method @Deprecated public void ZSYRK(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); - method @Deprecated public void ZTBMV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void ZTBSV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void ZTPMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void ZTPSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void ZTRMM(int, int, int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void ZTRMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public void ZTRSM(int, int, int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void ZTRSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); - method @Deprecated public static android.renderscript.ScriptIntrinsicBLAS create(android.renderscript.RenderScript); - field @Deprecated public static final int CONJ_TRANSPOSE = 113; // 0x71 - field @Deprecated public static final int LEFT = 141; // 0x8d - field @Deprecated public static final int LOWER = 122; // 0x7a - field @Deprecated public static final int NON_UNIT = 131; // 0x83 - field @Deprecated public static final int NO_TRANSPOSE = 111; // 0x6f - field @Deprecated public static final int RIGHT = 142; // 0x8e - field @Deprecated public static final int TRANSPOSE = 112; // 0x70 - field @Deprecated public static final int UNIT = 132; // 0x84 - field @Deprecated public static final int UPPER = 121; // 0x79 - } - - @Deprecated public class ScriptIntrinsicBlend extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsicBlend create(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public void forEachAdd(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachAdd(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachClear(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachClear(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachDst(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachDst(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachDstAtop(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachDstAtop(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachDstIn(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachDstIn(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachDstOut(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachDstOut(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachDstOver(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachDstOver(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachMultiply(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachMultiply(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachSrc(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachSrc(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachSrcAtop(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachSrcAtop(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachSrcIn(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachSrcIn(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachSrcOut(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachSrcOut(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachSrcOver(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachSrcOver(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachSubtract(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachSubtract(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEachXor(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEachXor(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDAdd(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDClear(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDDst(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDDstAtop(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDDstIn(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDDstOut(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDDstOver(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDMultiply(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrc(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrcAtop(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrcIn(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrcOut(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrcOver(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDSubtract(); - method @Deprecated public android.renderscript.Script.KernelID getKernelIDXor(); - } - - @Deprecated public final class ScriptIntrinsicBlur extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsicBlur create(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public void forEach(android.renderscript.Allocation); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); - method @Deprecated public android.renderscript.Script.KernelID getKernelID(); - method @Deprecated public void setInput(android.renderscript.Allocation); - method @Deprecated public void setRadius(float); - } - - @Deprecated public final class ScriptIntrinsicColorMatrix extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsicColorMatrix create(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public static android.renderscript.ScriptIntrinsicColorMatrix create(android.renderscript.RenderScript); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public android.renderscript.Script.KernelID getKernelID(); - method @Deprecated public void setAdd(android.renderscript.Float4); - method @Deprecated public void setAdd(float, float, float, float); - method @Deprecated public void setColorMatrix(android.renderscript.Matrix4f); - method @Deprecated public void setColorMatrix(android.renderscript.Matrix3f); - method @Deprecated public void setGreyscale(); - method @Deprecated public void setRGBtoYUV(); - method @Deprecated public void setYUVtoRGB(); - } - - @Deprecated public final class ScriptIntrinsicConvolve3x3 extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsicConvolve3x3 create(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public void forEach(android.renderscript.Allocation); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); - method @Deprecated public android.renderscript.Script.KernelID getKernelID(); - method @Deprecated public void setCoefficients(float[]); - method @Deprecated public void setInput(android.renderscript.Allocation); - } - - @Deprecated public final class ScriptIntrinsicConvolve5x5 extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsicConvolve5x5 create(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public void forEach(android.renderscript.Allocation); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); - method @Deprecated public android.renderscript.Script.KernelID getKernelID(); - method @Deprecated public void setCoefficients(float[]); - method @Deprecated public void setInput(android.renderscript.Allocation); - } - - @Deprecated public final class ScriptIntrinsicHistogram extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsicHistogram create(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public void forEach(android.renderscript.Allocation); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public void forEach_Dot(android.renderscript.Allocation); - method @Deprecated public void forEach_Dot(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); - method @Deprecated public android.renderscript.Script.KernelID getKernelID_Separate(); - method @Deprecated public void setDotCoefficients(float, float, float, float); - method @Deprecated public void setOutput(android.renderscript.Allocation); - } - - @Deprecated public final class ScriptIntrinsicLUT extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsicLUT create(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation); - method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public android.renderscript.Script.KernelID getKernelID(); - method @Deprecated public void setAlpha(int, int); - method @Deprecated public void setBlue(int, int); - method @Deprecated public void setGreen(int, int); - method @Deprecated public void setRed(int, int); - } - - @Deprecated public final class ScriptIntrinsicResize extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsicResize create(android.renderscript.RenderScript); - method @Deprecated public void forEach_bicubic(android.renderscript.Allocation); - method @Deprecated public void forEach_bicubic(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); - method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); - method @Deprecated public android.renderscript.Script.KernelID getKernelID_bicubic(); - method @Deprecated public void setInput(android.renderscript.Allocation); - } - - @Deprecated public final class ScriptIntrinsicYuvToRGB extends android.renderscript.ScriptIntrinsic { - method @Deprecated public static android.renderscript.ScriptIntrinsicYuvToRGB create(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public void forEach(android.renderscript.Allocation); - method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); - method @Deprecated public android.renderscript.Script.KernelID getKernelID(); - method @Deprecated public void setInput(android.renderscript.Allocation); - } - - @Deprecated public class Short2 { - ctor @Deprecated public Short2(); - ctor @Deprecated public Short2(short, short); - field @Deprecated public short x; - field @Deprecated public short y; - } - - @Deprecated public class Short3 { - ctor @Deprecated public Short3(); - ctor @Deprecated public Short3(short, short, short); - field @Deprecated public short x; - field @Deprecated public short y; - field @Deprecated public short z; - } - - @Deprecated public class Short4 { - ctor @Deprecated public Short4(); - ctor @Deprecated public Short4(short, short, short, short); - field @Deprecated public short w; - field @Deprecated public short x; - field @Deprecated public short y; - field @Deprecated public short z; - } - - @Deprecated public class Type extends android.renderscript.BaseObj { - method @Deprecated public static android.renderscript.Type createX(android.renderscript.RenderScript, android.renderscript.Element, int); - method @Deprecated public static android.renderscript.Type createXY(android.renderscript.RenderScript, android.renderscript.Element, int, int); - method @Deprecated public static android.renderscript.Type createXYZ(android.renderscript.RenderScript, android.renderscript.Element, int, int, int); - method @Deprecated public int getCount(); - method @Deprecated public android.renderscript.Element getElement(); - method @Deprecated public int getX(); - method @Deprecated public int getY(); - method @Deprecated public int getYuv(); - method @Deprecated public int getZ(); - method @Deprecated public boolean hasFaces(); - method @Deprecated public boolean hasMipmaps(); - } - - @Deprecated public static class Type.Builder { - ctor @Deprecated public Type.Builder(android.renderscript.RenderScript, android.renderscript.Element); - method @Deprecated public android.renderscript.Type create(); - method @Deprecated public android.renderscript.Type.Builder setFaces(boolean); - method @Deprecated public android.renderscript.Type.Builder setMipmaps(boolean); - method @Deprecated public android.renderscript.Type.Builder setX(int); - method @Deprecated public android.renderscript.Type.Builder setY(int); - method @Deprecated public android.renderscript.Type.Builder setYuvFormat(int); - method @Deprecated public android.renderscript.Type.Builder setZ(int); - } - - @Deprecated public enum Type.CubemapFace { - enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace NEGATIVE_X; - enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace NEGATIVE_Y; - enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace NEGATIVE_Z; - enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITIVE_X; - enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITIVE_Y; - enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITIVE_Z; - enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITVE_X; - enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITVE_Y; - enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITVE_Z; - } - -} - -package android.sax { - - public class Element { - method public android.sax.Element getChild(String); - method public android.sax.Element getChild(String, String); - method public android.sax.Element requireChild(String); - method public android.sax.Element requireChild(String, String); - method public void setElementListener(android.sax.ElementListener); - method public void setEndElementListener(android.sax.EndElementListener); - method public void setEndTextElementListener(android.sax.EndTextElementListener); - method public void setStartElementListener(android.sax.StartElementListener); - method public void setTextElementListener(android.sax.TextElementListener); - } - - public interface ElementListener extends android.sax.StartElementListener android.sax.EndElementListener { - } - - public interface EndElementListener { - method public void end(); - } - - public interface EndTextElementListener { - method public void end(String); - } - - public class RootElement extends android.sax.Element { - ctor public RootElement(String, String); - ctor public RootElement(String); - method public org.xml.sax.ContentHandler getContentHandler(); - } - - public interface StartElementListener { - method public void start(org.xml.sax.Attributes); - } - - public interface TextElementListener extends android.sax.StartElementListener android.sax.EndTextElementListener { - } - -} - -package android.se.omapi { - - public final class Channel implements java.nio.channels.Channel { - method public void close(); - method @Nullable public byte[] getSelectResponse(); - method @NonNull public android.se.omapi.Session getSession(); - method public boolean isBasicChannel(); - method public boolean isOpen(); - method public boolean selectNext() throws java.io.IOException; - method @NonNull public byte[] transmit(@NonNull byte[]) throws java.io.IOException; - } - - public final class Reader { - method public void closeSessions(); - method @NonNull public String getName(); - method @NonNull public android.se.omapi.SEService getSEService(); - method public boolean isSecureElementPresent(); - method @NonNull public android.se.omapi.Session openSession() throws java.io.IOException; - } - - public final class SEService { - ctor public SEService(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.se.omapi.SEService.OnConnectedListener); - method @NonNull public android.se.omapi.Reader[] getReaders(); - method @NonNull public android.se.omapi.Reader getUiccReader(int); - method @NonNull public String getVersion(); - method public boolean isConnected(); - method public void shutdown(); - field public static final String ACTION_SECURE_ELEMENT_STATE_CHANGED = "android.se.omapi.action.SECURE_ELEMENT_STATE_CHANGED"; - field public static final String EXTRA_READER_NAME = "android.se.omapi.extra.READER_NAME"; - field public static final String EXTRA_READER_STATE = "android.se.omapi.extra.READER_STATE"; - } - - public static interface SEService.OnConnectedListener { - method public void onConnected(); - } - - public final class Session { - method public void close(); - method public void closeChannels(); - method @Nullable public byte[] getATR(); - method @NonNull public android.se.omapi.Reader getReader(); - method public boolean isClosed(); - method @Nullable public android.se.omapi.Channel openBasicChannel(@Nullable byte[], @Nullable byte) throws java.io.IOException; - method @Nullable public android.se.omapi.Channel openBasicChannel(@Nullable byte[]) throws java.io.IOException; - method @Nullable public android.se.omapi.Channel openLogicalChannel(@Nullable byte[], @Nullable byte) throws java.io.IOException; - method @Nullable public android.se.omapi.Channel openLogicalChannel(@Nullable byte[]) throws java.io.IOException; - } - -} - -package android.security { - - public final class AppUriAuthenticationPolicy implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.Map> getAppAndUriMappings(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class AppUriAuthenticationPolicy.Builder { - ctor public AppUriAuthenticationPolicy.Builder(); - method @NonNull public android.security.AppUriAuthenticationPolicy.Builder addAppAndUriMapping(@NonNull String, @NonNull android.net.Uri, @NonNull String); - method @NonNull public android.security.AppUriAuthenticationPolicy build(); - } - - public final class AttestedKeyPair { - ctor public AttestedKeyPair(@Nullable java.security.KeyPair, @NonNull java.util.List); - method @NonNull public java.util.List getAttestationRecord(); - method @Nullable public java.security.KeyPair getKeyPair(); - } - - public class ConfirmationAlreadyPresentingException extends java.lang.Exception { - ctor public ConfirmationAlreadyPresentingException(); - ctor public ConfirmationAlreadyPresentingException(String); - } - - public abstract class ConfirmationCallback { - ctor public ConfirmationCallback(); - method public void onCanceled(); - method public void onConfirmed(@NonNull byte[]); - method public void onDismissed(); - method public void onError(Throwable); - } - - public class ConfirmationNotAvailableException extends java.lang.Exception { - ctor public ConfirmationNotAvailableException(); - ctor public ConfirmationNotAvailableException(String); - } - - public class ConfirmationPrompt { - method public void cancelPrompt(); - method public static boolean isSupported(android.content.Context); - method public void presentPrompt(@NonNull java.util.concurrent.Executor, @NonNull android.security.ConfirmationCallback) throws android.security.ConfirmationAlreadyPresentingException, android.security.ConfirmationNotAvailableException; - } - - public static final class ConfirmationPrompt.Builder { - ctor public ConfirmationPrompt.Builder(android.content.Context); - method public android.security.ConfirmationPrompt build(); - method public android.security.ConfirmationPrompt.Builder setExtraData(byte[]); - method public android.security.ConfirmationPrompt.Builder setPromptText(CharSequence); - } - - public final class FileIntegrityManager { - method public boolean isApkVeritySupported(); - method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.INSTALL_PACKAGES, android.Manifest.permission.REQUEST_INSTALL_PACKAGES}) public boolean isAppSourceCertificateTrusted(@NonNull java.security.cert.X509Certificate) throws java.security.cert.CertificateEncodingException; - } - - public final class KeyChain { - ctor public KeyChain(); - method public static void choosePrivateKeyAlias(@NonNull android.app.Activity, @NonNull android.security.KeyChainAliasCallback, @Nullable String[], @Nullable java.security.Principal[], @Nullable String, int, @Nullable String); - method public static void choosePrivateKeyAlias(@NonNull android.app.Activity, @NonNull android.security.KeyChainAliasCallback, @Nullable String[], @Nullable java.security.Principal[], @Nullable android.net.Uri, @Nullable String); - method @NonNull public static android.content.Intent createInstallIntent(); - method @NonNull public static android.content.Intent createManageCredentialsIntent(@NonNull android.security.AppUriAuthenticationPolicy); - method @Nullable @WorkerThread public static java.security.cert.X509Certificate[] getCertificateChain(@NonNull android.content.Context, @NonNull String) throws java.lang.InterruptedException, android.security.KeyChainException; - method @NonNull @WorkerThread public static android.security.AppUriAuthenticationPolicy getCredentialManagementAppPolicy(@NonNull android.content.Context) throws java.lang.SecurityException; - method @Nullable @WorkerThread public static java.security.PrivateKey getPrivateKey(@NonNull android.content.Context, @NonNull String) throws java.lang.InterruptedException, android.security.KeyChainException; - method @Deprecated public static boolean isBoundKeyAlgorithm(@NonNull String); - method @WorkerThread public static boolean isCredentialManagementApp(@NonNull android.content.Context); - method public static boolean isKeyAlgorithmSupported(@NonNull String); - method @RequiresPermission(value="android.permission.MANAGE_CREDENTIAL_MANAGEMENT_APP", conditional=true) @WorkerThread public static boolean removeCredentialManagementApp(@NonNull android.content.Context); - field public static final String ACTION_KEYCHAIN_CHANGED = "android.security.action.KEYCHAIN_CHANGED"; - field public static final String ACTION_KEY_ACCESS_CHANGED = "android.security.action.KEY_ACCESS_CHANGED"; - field @Deprecated public static final String ACTION_STORAGE_CHANGED = "android.security.STORAGE_CHANGED"; - field public static final String ACTION_TRUST_STORE_CHANGED = "android.security.action.TRUST_STORE_CHANGED"; - field public static final String EXTRA_CERTIFICATE = "CERT"; - field public static final String EXTRA_KEY_ACCESSIBLE = "android.security.extra.KEY_ACCESSIBLE"; - field public static final String EXTRA_KEY_ALIAS = "android.security.extra.KEY_ALIAS"; - field public static final String EXTRA_NAME = "name"; - field public static final String EXTRA_PKCS12 = "PKCS12"; - field public static final String KEY_ALIAS_SELECTION_DENIED = "android:alias-selection-denied"; - } - - public interface KeyChainAliasCallback { - method public void alias(@Nullable String); - } - - public class KeyChainException extends java.lang.Exception { - ctor public KeyChainException(); - ctor public KeyChainException(String); - ctor public KeyChainException(String, Throwable); - ctor public KeyChainException(Throwable); - } - - @Deprecated public final class KeyPairGeneratorSpec implements java.security.spec.AlgorithmParameterSpec { - method @Deprecated @NonNull public java.security.spec.AlgorithmParameterSpec getAlgorithmParameterSpec(); - method @Deprecated public android.content.Context getContext(); - method @Deprecated @NonNull public java.util.Date getEndDate(); - method @Deprecated public int getKeySize(); - method @Deprecated @Nullable public String getKeyType(); - method @Deprecated public String getKeystoreAlias(); - method @Deprecated @NonNull public java.math.BigInteger getSerialNumber(); - method @Deprecated @NonNull public java.util.Date getStartDate(); - method @Deprecated @NonNull public javax.security.auth.x500.X500Principal getSubjectDN(); - method @Deprecated public boolean isEncryptionRequired(); - } - - @Deprecated public static final class KeyPairGeneratorSpec.Builder { - ctor @Deprecated public KeyPairGeneratorSpec.Builder(@NonNull android.content.Context); - method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec build(); - method @Deprecated public android.security.KeyPairGeneratorSpec.Builder setAlgorithmParameterSpec(@NonNull java.security.spec.AlgorithmParameterSpec); - method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setAlias(@NonNull String); - method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setEncryptionRequired(); - method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setEndDate(@NonNull java.util.Date); - method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setKeySize(int); - method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setKeyType(@NonNull String) throws java.security.NoSuchAlgorithmException; - method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setSerialNumber(@NonNull java.math.BigInteger); - method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setStartDate(@NonNull java.util.Date); - method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setSubject(@NonNull javax.security.auth.x500.X500Principal); - } - - public class KeyStoreException extends java.lang.Exception { - method public int getNumericErrorCode(); - method public int getRetryPolicy(); - method public boolean isSystemError(); - method public boolean isTransientFailure(); - method public boolean requiresUserAuthentication(); - field public static final int ERROR_ATTESTATION_CHALLENGE_TOO_LARGE = 9; // 0x9 - field public static final int ERROR_ATTESTATION_KEYS_UNAVAILABLE = 16; // 0x10 - field public static final int ERROR_ID_ATTESTATION_FAILURE = 8; // 0x8 - field public static final int ERROR_INCORRECT_USAGE = 13; // 0xd - field public static final int ERROR_INTERNAL_SYSTEM_ERROR = 4; // 0x4 - field public static final int ERROR_KEYMINT_FAILURE = 10; // 0xa - field public static final int ERROR_KEYSTORE_FAILURE = 11; // 0xb - field public static final int ERROR_KEYSTORE_UNINITIALIZED = 3; // 0x3 - field public static final int ERROR_KEY_CORRUPTED = 7; // 0x7 - field public static final int ERROR_KEY_DOES_NOT_EXIST = 6; // 0x6 - field public static final int ERROR_KEY_NOT_TEMPORALLY_VALID = 14; // 0xe - field public static final int ERROR_KEY_OPERATION_EXPIRED = 15; // 0xf - field public static final int ERROR_OTHER = 1; // 0x1 - field public static final int ERROR_PERMISSION_DENIED = 5; // 0x5 - field public static final int ERROR_UNIMPLEMENTED = 12; // 0xc - field public static final int ERROR_USER_AUTHENTICATION_REQUIRED = 2; // 0x2 - field public static final int RETRY_AFTER_NEXT_REBOOT = 4; // 0x4 - field public static final int RETRY_NEVER = 1; // 0x1 - field public static final int RETRY_WHEN_CONNECTIVITY_AVAILABLE = 3; // 0x3 - field public static final int RETRY_WITH_EXPONENTIAL_BACKOFF = 2; // 0x2 - } - - @Deprecated public final class KeyStoreParameter implements java.security.KeyStore.ProtectionParameter { - method @Deprecated public boolean isEncryptionRequired(); - } - - @Deprecated public static final class KeyStoreParameter.Builder { - ctor @Deprecated public KeyStoreParameter.Builder(@NonNull android.content.Context); - method @Deprecated @NonNull public android.security.KeyStoreParameter build(); - method @Deprecated @NonNull public android.security.KeyStoreParameter.Builder setEncryptionRequired(boolean); - } - - public class NetworkSecurityPolicy { - method public static android.security.NetworkSecurityPolicy getInstance(); - method @FlaggedApi("android.security.certificate_transparency_configuration") public boolean isCertificateTransparencyVerificationRequired(@NonNull String); - method public boolean isCleartextTrafficPermitted(); - method public boolean isCleartextTrafficPermitted(String); - } - -} - -package android.security.advancedprotection { - - @FlaggedApi("android.security.aapm_api") public final class AdvancedProtectionManager { - method @RequiresPermission(android.Manifest.permission.QUERY_ADVANCED_PROTECTION_MODE) public boolean isAdvancedProtectionEnabled(); - method @RequiresPermission(android.Manifest.permission.QUERY_ADVANCED_PROTECTION_MODE) public void registerAdvancedProtectionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.security.advancedprotection.AdvancedProtectionManager.Callback); - method @RequiresPermission(android.Manifest.permission.QUERY_ADVANCED_PROTECTION_MODE) public void unregisterAdvancedProtectionCallback(@NonNull android.security.advancedprotection.AdvancedProtectionManager.Callback); - } - - @FlaggedApi("android.security.aapm_api") public static interface AdvancedProtectionManager.Callback { - method public void onAdvancedProtectionChanged(boolean); - } - -} - -package android.security.identity { - - public class AccessControlProfile { - } - - public static final class AccessControlProfile.Builder { - ctor public AccessControlProfile.Builder(@NonNull android.security.identity.AccessControlProfileId); - method @NonNull public android.security.identity.AccessControlProfile build(); - method @NonNull public android.security.identity.AccessControlProfile.Builder setReaderCertificate(@NonNull java.security.cert.X509Certificate); - method @NonNull public android.security.identity.AccessControlProfile.Builder setUserAuthenticationRequired(boolean); - method @NonNull public android.security.identity.AccessControlProfile.Builder setUserAuthenticationTimeout(long); - } - - public class AccessControlProfileId { - ctor public AccessControlProfileId(int); - method public int getId(); - } - - public class AlreadyPersonalizedException extends android.security.identity.IdentityCredentialException { - ctor public AlreadyPersonalizedException(@NonNull String); - ctor public AlreadyPersonalizedException(@NonNull String, @NonNull Throwable); - } - - public final class AuthenticationKeyMetadata { - method @NonNull public java.time.Instant getExpirationDate(); - method @IntRange(from=0) public int getUsageCount(); - } - - public class CipherSuiteNotSupportedException extends android.security.identity.IdentityCredentialException { - ctor public CipherSuiteNotSupportedException(@NonNull String); - ctor public CipherSuiteNotSupportedException(@NonNull String, @NonNull Throwable); - } - - public class CredentialDataRequest { - method @NonNull public java.util.Map> getDeviceSignedEntriesToRequest(); - method @NonNull public java.util.Map> getIssuerSignedEntriesToRequest(); - method @Nullable public byte[] getReaderSignature(); - method @Nullable public byte[] getRequestMessage(); - method public boolean isAllowUsingExhaustedKeys(); - method public boolean isAllowUsingExpiredKeys(); - method public boolean isIncrementUseCount(); - } - - public static final class CredentialDataRequest.Builder { - ctor public CredentialDataRequest.Builder(); - method @NonNull public android.security.identity.CredentialDataRequest build(); - method @NonNull public android.security.identity.CredentialDataRequest.Builder setAllowUsingExhaustedKeys(boolean); - method @NonNull public android.security.identity.CredentialDataRequest.Builder setAllowUsingExpiredKeys(boolean); - method @NonNull public android.security.identity.CredentialDataRequest.Builder setDeviceSignedEntriesToRequest(@NonNull java.util.Map>); - method @NonNull public android.security.identity.CredentialDataRequest.Builder setIncrementUseCount(boolean); - method @NonNull public android.security.identity.CredentialDataRequest.Builder setIssuerSignedEntriesToRequest(@NonNull java.util.Map>); - method @NonNull public android.security.identity.CredentialDataRequest.Builder setReaderSignature(@NonNull byte[]); - method @NonNull public android.security.identity.CredentialDataRequest.Builder setRequestMessage(@NonNull byte[]); - } - - public abstract class CredentialDataResult { - method @Nullable public abstract byte[] getDeviceMac(); - method @NonNull public abstract byte[] getDeviceNameSpaces(); - method @Nullable public byte[] getDeviceSignature(); - method @NonNull public abstract android.security.identity.CredentialDataResult.Entries getDeviceSignedEntries(); - method @NonNull public abstract android.security.identity.CredentialDataResult.Entries getIssuerSignedEntries(); - method @NonNull public abstract byte[] getStaticAuthenticationData(); - } - - public static interface CredentialDataResult.Entries { - method @Nullable public byte[] getEntry(@NonNull String, @NonNull String); - method @NonNull public java.util.Collection getEntryNames(@NonNull String); - method @NonNull public java.util.Collection getNamespaces(); - method @NonNull public java.util.Collection getRetrievedEntryNames(@NonNull String); - method public int getStatus(@NonNull String, @NonNull String); - field public static final int STATUS_NOT_IN_REQUEST_MESSAGE = 3; // 0x3 - field public static final int STATUS_NOT_REQUESTED = 2; // 0x2 - field public static final int STATUS_NO_ACCESS_CONTROL_PROFILES = 6; // 0x6 - field public static final int STATUS_NO_SUCH_ENTRY = 1; // 0x1 - field public static final int STATUS_OK = 0; // 0x0 - field public static final int STATUS_READER_AUTHENTICATION_FAILED = 5; // 0x5 - field public static final int STATUS_USER_AUTHENTICATION_FAILED = 4; // 0x4 - } - - public class DocTypeNotSupportedException extends android.security.identity.IdentityCredentialException { - ctor public DocTypeNotSupportedException(@NonNull String); - ctor public DocTypeNotSupportedException(@NonNull String, @NonNull Throwable); - } - - public class EphemeralPublicKeyNotFoundException extends android.security.identity.IdentityCredentialException { - ctor public EphemeralPublicKeyNotFoundException(@NonNull String); - ctor public EphemeralPublicKeyNotFoundException(@NonNull String, @NonNull Throwable); - } - - public abstract class IdentityCredential { - method @Deprecated @NonNull public abstract java.security.KeyPair createEphemeralKeyPair(); - method @Deprecated @NonNull public abstract byte[] decryptMessageFromReader(@NonNull byte[]) throws android.security.identity.MessageDecryptionException; - method @NonNull public byte[] delete(@NonNull byte[]); - method @Deprecated @NonNull public abstract byte[] encryptMessageToReader(@NonNull byte[]); - method @NonNull public abstract java.util.Collection getAuthKeysNeedingCertification(); - method @Deprecated @NonNull public abstract int[] getAuthenticationDataUsageCount(); - method @NonNull public java.util.List getAuthenticationKeyMetadata(); - method @NonNull public abstract java.util.Collection getCredentialKeyCertificateChain(); - method @Deprecated @NonNull public abstract android.security.identity.ResultData getEntries(@Nullable byte[], @NonNull java.util.Map>, @Nullable byte[], @Nullable byte[]) throws android.security.identity.EphemeralPublicKeyNotFoundException, android.security.identity.InvalidReaderSignatureException, android.security.identity.InvalidRequestMessageException, android.security.identity.NoAuthenticationKeyAvailableException, android.security.identity.SessionTranscriptMismatchException; - method @NonNull public byte[] proveOwnership(@NonNull byte[]); - method @Deprecated public abstract void setAllowUsingExhaustedKeys(boolean); - method @Deprecated public void setAllowUsingExpiredKeys(boolean); - method @Deprecated public abstract void setAvailableAuthenticationKeys(int, int); - method public void setAvailableAuthenticationKeys(@IntRange(from=0) int, @IntRange(from=1) int, @IntRange(from=0) long); - method @Deprecated public abstract void setReaderEphemeralPublicKey(@NonNull java.security.PublicKey) throws java.security.InvalidKeyException; - method @Deprecated public abstract void storeStaticAuthenticationData(@NonNull java.security.cert.X509Certificate, @NonNull byte[]) throws android.security.identity.UnknownAuthenticationKeyException; - method public void storeStaticAuthenticationData(@NonNull java.security.cert.X509Certificate, @NonNull java.time.Instant, @NonNull byte[]) throws android.security.identity.UnknownAuthenticationKeyException; - method @NonNull public byte[] update(@NonNull android.security.identity.PersonalizationData); - } - - public class IdentityCredentialException extends java.lang.Exception { - ctor public IdentityCredentialException(@NonNull String); - ctor public IdentityCredentialException(@NonNull String, @NonNull Throwable); - } - - public abstract class IdentityCredentialStore { - method @NonNull public abstract android.security.identity.WritableIdentityCredential createCredential(@NonNull String, @NonNull String) throws android.security.identity.AlreadyPersonalizedException, android.security.identity.DocTypeNotSupportedException; - method @NonNull public android.security.identity.PresentationSession createPresentationSession(int) throws android.security.identity.CipherSuiteNotSupportedException; - method @Deprecated @Nullable public abstract byte[] deleteCredentialByName(@NonNull String); - method @Nullable public abstract android.security.identity.IdentityCredential getCredentialByName(@NonNull String, int) throws android.security.identity.CipherSuiteNotSupportedException; - method @Nullable public static android.security.identity.IdentityCredentialStore getDirectAccessInstance(@NonNull android.content.Context); - method @Nullable public static android.security.identity.IdentityCredentialStore getInstance(@NonNull android.content.Context); - method @NonNull public abstract String[] getSupportedDocTypes(); - field public static final int CIPHERSUITE_ECDHE_HKDF_ECDSA_WITH_AES_256_GCM_SHA256 = 1; // 0x1 - } - - public class InvalidReaderSignatureException extends android.security.identity.IdentityCredentialException { - ctor public InvalidReaderSignatureException(@NonNull String); - ctor public InvalidReaderSignatureException(@NonNull String, @NonNull Throwable); - } - - public class InvalidRequestMessageException extends android.security.identity.IdentityCredentialException { - ctor public InvalidRequestMessageException(@NonNull String); - ctor public InvalidRequestMessageException(@NonNull String, @NonNull Throwable); - } - - public class MessageDecryptionException extends android.security.identity.IdentityCredentialException { - ctor public MessageDecryptionException(@NonNull String); - ctor public MessageDecryptionException(@NonNull String, @NonNull Throwable); - } - - public class NoAuthenticationKeyAvailableException extends android.security.identity.IdentityCredentialException { - ctor public NoAuthenticationKeyAvailableException(@NonNull String); - ctor public NoAuthenticationKeyAvailableException(@NonNull String, @NonNull Throwable); - } - - public class PersonalizationData { - } - - public static final class PersonalizationData.Builder { - ctor public PersonalizationData.Builder(); - method @NonNull public android.security.identity.PersonalizationData.Builder addAccessControlProfile(@NonNull android.security.identity.AccessControlProfile); - method @NonNull public android.security.identity.PersonalizationData build(); - method @NonNull public android.security.identity.PersonalizationData.Builder putEntry(@NonNull String, @NonNull String, @NonNull java.util.Collection, @NonNull byte[]); - } - - public abstract class PresentationSession { - method @Nullable public abstract android.security.identity.CredentialDataResult getCredentialData(@NonNull String, @NonNull android.security.identity.CredentialDataRequest) throws android.security.identity.EphemeralPublicKeyNotFoundException, android.security.identity.InvalidReaderSignatureException, android.security.identity.InvalidRequestMessageException, android.security.identity.NoAuthenticationKeyAvailableException; - method @NonNull public abstract java.security.KeyPair getEphemeralKeyPair(); - method public abstract void setReaderEphemeralPublicKey(@NonNull java.security.PublicKey) throws java.security.InvalidKeyException; - method public abstract void setSessionTranscript(@NonNull byte[]); - } - - @Deprecated public abstract class ResultData { - method @Deprecated @NonNull public abstract byte[] getAuthenticatedData(); - method @Deprecated @Nullable public abstract byte[] getEntry(@NonNull String, @NonNull String); - method @Deprecated @Nullable public abstract java.util.Collection getEntryNames(@NonNull String); - method @Deprecated @Nullable public abstract byte[] getMessageAuthenticationCode(); - method @Deprecated @NonNull public abstract java.util.Collection getNamespaces(); - method @Deprecated @Nullable public abstract java.util.Collection getRetrievedEntryNames(@NonNull String); - method @Deprecated @NonNull public abstract byte[] getStaticAuthenticationData(); - method @Deprecated public abstract int getStatus(@NonNull String, @NonNull String); - field @Deprecated public static final int STATUS_NOT_IN_REQUEST_MESSAGE = 3; // 0x3 - field @Deprecated public static final int STATUS_NOT_REQUESTED = 2; // 0x2 - field @Deprecated public static final int STATUS_NO_ACCESS_CONTROL_PROFILES = 6; // 0x6 - field @Deprecated public static final int STATUS_NO_SUCH_ENTRY = 1; // 0x1 - field @Deprecated public static final int STATUS_OK = 0; // 0x0 - field @Deprecated public static final int STATUS_READER_AUTHENTICATION_FAILED = 5; // 0x5 - field @Deprecated public static final int STATUS_USER_AUTHENTICATION_FAILED = 4; // 0x4 - } - - public class SessionTranscriptMismatchException extends android.security.identity.IdentityCredentialException { - ctor public SessionTranscriptMismatchException(@NonNull String); - ctor public SessionTranscriptMismatchException(@NonNull String, @NonNull Throwable); - } - - public class UnknownAuthenticationKeyException extends android.security.identity.IdentityCredentialException { - ctor public UnknownAuthenticationKeyException(@NonNull String); - ctor public UnknownAuthenticationKeyException(@NonNull String, @NonNull Throwable); - } - - public abstract class WritableIdentityCredential { - method @NonNull public abstract java.util.Collection getCredentialKeyCertificateChain(@NonNull byte[]); - method @NonNull public abstract byte[] personalize(@NonNull android.security.identity.PersonalizationData); - } - -} - -package android.security.keystore { - - public class BackendBusyException extends java.security.ProviderException { - ctor public BackendBusyException(long); - ctor public BackendBusyException(long, @NonNull String); - ctor public BackendBusyException(long, @NonNull String, @NonNull Throwable); - method public long getBackOffHintMillis(); - } - - public class KeyExpiredException extends java.security.InvalidKeyException { - ctor public KeyExpiredException(); - ctor public KeyExpiredException(String); - ctor public KeyExpiredException(String, Throwable); - } - - public final class KeyGenParameterSpec implements java.security.spec.AlgorithmParameterSpec { - method @Nullable public java.security.spec.AlgorithmParameterSpec getAlgorithmParameterSpec(); - method @Nullable public String getAttestKeyAlias(); - method public byte[] getAttestationChallenge(); - method @NonNull public String[] getBlockModes(); - method @NonNull public java.util.Date getCertificateNotAfter(); - method @NonNull public java.util.Date getCertificateNotBefore(); - method @NonNull public java.math.BigInteger getCertificateSerialNumber(); - method @NonNull public javax.security.auth.x500.X500Principal getCertificateSubject(); - method @NonNull public String[] getDigests(); - method @NonNull public String[] getEncryptionPaddings(); - method public int getKeySize(); - method @Nullable public java.util.Date getKeyValidityForConsumptionEnd(); - method @Nullable public java.util.Date getKeyValidityForOriginationEnd(); - method @Nullable public java.util.Date getKeyValidityStart(); - method @NonNull public String getKeystoreAlias(); - method public int getMaxUsageCount(); - method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public java.util.Set getMgf1Digests(); - method public int getPurposes(); - method @NonNull public String[] getSignaturePaddings(); - method public int getUserAuthenticationType(); - method public int getUserAuthenticationValidityDurationSeconds(); - method public boolean isDevicePropertiesAttestationIncluded(); - method @NonNull public boolean isDigestsSpecified(); - method public boolean isInvalidatedByBiometricEnrollment(); - method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public boolean isMgf1DigestsSpecified(); - method public boolean isRandomizedEncryptionRequired(); - method public boolean isStrongBoxBacked(); - method public boolean isUnlockedDeviceRequired(); - method public boolean isUserAuthenticationRequired(); - method public boolean isUserAuthenticationValidWhileOnBody(); - method public boolean isUserConfirmationRequired(); - method public boolean isUserPresenceRequired(); - } - - public static final class KeyGenParameterSpec.Builder { - ctor public KeyGenParameterSpec.Builder(@NonNull String, int); - method @NonNull public android.security.keystore.KeyGenParameterSpec build(); - method public android.security.keystore.KeyGenParameterSpec.Builder setAlgorithmParameterSpec(@NonNull java.security.spec.AlgorithmParameterSpec); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setAttestKeyAlias(@Nullable String); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setAttestationChallenge(byte[]); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setBlockModes(java.lang.String...); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setCertificateNotAfter(@NonNull java.util.Date); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setCertificateNotBefore(@NonNull java.util.Date); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setCertificateSerialNumber(@NonNull java.math.BigInteger); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setCertificateSubject(@NonNull javax.security.auth.x500.X500Principal); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setDevicePropertiesAttestationIncluded(boolean); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setDigests(java.lang.String...); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setEncryptionPaddings(java.lang.String...); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setInvalidatedByBiometricEnrollment(boolean); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setIsStrongBoxBacked(boolean); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeySize(int); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeyValidityEnd(java.util.Date); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeyValidityForConsumptionEnd(java.util.Date); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeyValidityForOriginationEnd(java.util.Date); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeyValidityStart(java.util.Date); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setMaxUsageCount(int); - method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setMgf1Digests(@NonNull java.lang.String...); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setRandomizedEncryptionRequired(boolean); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setSignaturePaddings(java.lang.String...); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUnlockedDeviceRequired(boolean); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationParameters(@IntRange(from=0) int, int); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationRequired(boolean); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationValidWhileOnBody(boolean); - method @Deprecated @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationValidityDurationSeconds(@IntRange(from=0xffffffff) int); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserConfirmationRequired(boolean); - method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserPresenceRequired(boolean); - } - - public class KeyInfo implements java.security.spec.KeySpec { - method @NonNull public String[] getBlockModes(); - method @NonNull public String[] getDigests(); - method @NonNull public String[] getEncryptionPaddings(); - method public int getKeySize(); - method @Nullable public java.util.Date getKeyValidityForConsumptionEnd(); - method @Nullable public java.util.Date getKeyValidityForOriginationEnd(); - method @Nullable public java.util.Date getKeyValidityStart(); - method public String getKeystoreAlias(); - method public int getOrigin(); - method public int getPurposes(); - method public int getRemainingUsageCount(); - method public int getSecurityLevel(); - method @NonNull public String[] getSignaturePaddings(); - method public int getUserAuthenticationType(); - method public int getUserAuthenticationValidityDurationSeconds(); - method @Deprecated public boolean isInsideSecureHardware(); - method public boolean isInvalidatedByBiometricEnrollment(); - method public boolean isTrustedUserPresenceRequired(); - method @FlaggedApi("android.security.keyinfo_unlocked_device_required") public boolean isUnlockedDeviceRequired(); - method public boolean isUserAuthenticationRequired(); - method public boolean isUserAuthenticationRequirementEnforcedBySecureHardware(); - method public boolean isUserAuthenticationValidWhileOnBody(); - method public boolean isUserConfirmationRequired(); - } - - public class KeyNotYetValidException extends java.security.InvalidKeyException { - ctor public KeyNotYetValidException(); - ctor public KeyNotYetValidException(String); - ctor public KeyNotYetValidException(String, Throwable); - } - - public class KeyPermanentlyInvalidatedException extends java.security.InvalidKeyException { - ctor public KeyPermanentlyInvalidatedException(); - ctor public KeyPermanentlyInvalidatedException(String); - ctor public KeyPermanentlyInvalidatedException(String, Throwable); - } - - public abstract class KeyProperties { - field public static final int AUTH_BIOMETRIC_STRONG = 2; // 0x2 - field public static final int AUTH_DEVICE_CREDENTIAL = 1; // 0x1 - field public static final String BLOCK_MODE_CBC = "CBC"; - field public static final String BLOCK_MODE_CTR = "CTR"; - field public static final String BLOCK_MODE_ECB = "ECB"; - field public static final String BLOCK_MODE_GCM = "GCM"; - field public static final String DIGEST_MD5 = "MD5"; - field public static final String DIGEST_NONE = "NONE"; - field public static final String DIGEST_SHA1 = "SHA-1"; - field public static final String DIGEST_SHA224 = "SHA-224"; - field public static final String DIGEST_SHA256 = "SHA-256"; - field public static final String DIGEST_SHA384 = "SHA-384"; - field public static final String DIGEST_SHA512 = "SHA-512"; - field public static final String ENCRYPTION_PADDING_NONE = "NoPadding"; - field public static final String ENCRYPTION_PADDING_PKCS7 = "PKCS7Padding"; - field public static final String ENCRYPTION_PADDING_RSA_OAEP = "OAEPPadding"; - field public static final String ENCRYPTION_PADDING_RSA_PKCS1 = "PKCS1Padding"; - field @Deprecated public static final String KEY_ALGORITHM_3DES = "DESede"; - field public static final String KEY_ALGORITHM_AES = "AES"; - field public static final String KEY_ALGORITHM_EC = "EC"; - field public static final String KEY_ALGORITHM_HMAC_SHA1 = "HmacSHA1"; - field public static final String KEY_ALGORITHM_HMAC_SHA224 = "HmacSHA224"; - field public static final String KEY_ALGORITHM_HMAC_SHA256 = "HmacSHA256"; - field public static final String KEY_ALGORITHM_HMAC_SHA384 = "HmacSHA384"; - field public static final String KEY_ALGORITHM_HMAC_SHA512 = "HmacSHA512"; - field public static final String KEY_ALGORITHM_RSA = "RSA"; - field public static final int ORIGIN_GENERATED = 1; // 0x1 - field public static final int ORIGIN_IMPORTED = 2; // 0x2 - field public static final int ORIGIN_SECURELY_IMPORTED = 8; // 0x8 - field public static final int ORIGIN_UNKNOWN = 4; // 0x4 - field public static final int PURPOSE_AGREE_KEY = 64; // 0x40 - field public static final int PURPOSE_ATTEST_KEY = 128; // 0x80 - field public static final int PURPOSE_DECRYPT = 2; // 0x2 - field public static final int PURPOSE_ENCRYPT = 1; // 0x1 - field public static final int PURPOSE_SIGN = 4; // 0x4 - field public static final int PURPOSE_VERIFY = 8; // 0x8 - field public static final int PURPOSE_WRAP_KEY = 32; // 0x20 - field public static final int SECURITY_LEVEL_SOFTWARE = 0; // 0x0 - field public static final int SECURITY_LEVEL_STRONGBOX = 2; // 0x2 - field public static final int SECURITY_LEVEL_TRUSTED_ENVIRONMENT = 1; // 0x1 - field public static final int SECURITY_LEVEL_UNKNOWN = -2; // 0xfffffffe - field public static final int SECURITY_LEVEL_UNKNOWN_SECURE = -1; // 0xffffffff - field public static final String SIGNATURE_PADDING_RSA_PKCS1 = "PKCS1"; - field public static final String SIGNATURE_PADDING_RSA_PSS = "PSS"; - field public static final int UNRESTRICTED_USAGE_COUNT = -1; // 0xffffffff - } - - public final class KeyProtection implements java.security.KeyStore.ProtectionParameter { - method @NonNull public String[] getBlockModes(); - method @NonNull public String[] getDigests(); - method @NonNull public String[] getEncryptionPaddings(); - method @Nullable public java.util.Date getKeyValidityForConsumptionEnd(); - method @Nullable public java.util.Date getKeyValidityForOriginationEnd(); - method @Nullable public java.util.Date getKeyValidityStart(); - method public int getMaxUsageCount(); - method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public java.util.Set getMgf1Digests(); - method public int getPurposes(); - method @NonNull public String[] getSignaturePaddings(); - method public int getUserAuthenticationType(); - method public int getUserAuthenticationValidityDurationSeconds(); - method public boolean isDigestsSpecified(); - method public boolean isInvalidatedByBiometricEnrollment(); - method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public boolean isMgf1DigestsSpecified(); - method public boolean isRandomizedEncryptionRequired(); - method public boolean isUnlockedDeviceRequired(); - method public boolean isUserAuthenticationRequired(); - method public boolean isUserAuthenticationValidWhileOnBody(); - method public boolean isUserConfirmationRequired(); - method public boolean isUserPresenceRequired(); - } - - public static final class KeyProtection.Builder { - ctor public KeyProtection.Builder(int); - method @NonNull public android.security.keystore.KeyProtection build(); - method @NonNull public android.security.keystore.KeyProtection.Builder setBlockModes(java.lang.String...); - method @NonNull public android.security.keystore.KeyProtection.Builder setDigests(java.lang.String...); - method @NonNull public android.security.keystore.KeyProtection.Builder setEncryptionPaddings(java.lang.String...); - method @NonNull public android.security.keystore.KeyProtection.Builder setInvalidatedByBiometricEnrollment(boolean); - method @NonNull public android.security.keystore.KeyProtection.Builder setIsStrongBoxBacked(boolean); - method @NonNull public android.security.keystore.KeyProtection.Builder setKeyValidityEnd(java.util.Date); - method @NonNull public android.security.keystore.KeyProtection.Builder setKeyValidityForConsumptionEnd(java.util.Date); - method @NonNull public android.security.keystore.KeyProtection.Builder setKeyValidityForOriginationEnd(java.util.Date); - method @NonNull public android.security.keystore.KeyProtection.Builder setKeyValidityStart(java.util.Date); - method @NonNull public android.security.keystore.KeyProtection.Builder setMaxUsageCount(int); - method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public android.security.keystore.KeyProtection.Builder setMgf1Digests(@Nullable java.lang.String...); - method @NonNull public android.security.keystore.KeyProtection.Builder setRandomizedEncryptionRequired(boolean); - method @NonNull public android.security.keystore.KeyProtection.Builder setSignaturePaddings(java.lang.String...); - method @NonNull public android.security.keystore.KeyProtection.Builder setUnlockedDeviceRequired(boolean); - method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationParameters(@IntRange(from=0) int, int); - method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationRequired(boolean); - method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationValidWhileOnBody(boolean); - method @Deprecated @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationValidityDurationSeconds(@IntRange(from=0xffffffff) int); - method @NonNull public android.security.keystore.KeyProtection.Builder setUserConfirmationRequired(boolean); - method @NonNull public android.security.keystore.KeyProtection.Builder setUserPresenceRequired(boolean); - } - - @FlaggedApi("android.security.keystore_grant_api") public final class KeyStoreManager { - method @NonNull public java.util.List getGrantedCertificateChainFromId(long) throws android.security.keystore.KeyPermanentlyInvalidatedException, java.security.UnrecoverableKeyException; - method @NonNull public java.security.Key getGrantedKeyFromId(long) throws android.security.keystore.KeyPermanentlyInvalidatedException, java.security.UnrecoverableKeyException; - method @NonNull public java.security.KeyPair getGrantedKeyPairFromId(long) throws android.security.keystore.KeyPermanentlyInvalidatedException, java.security.UnrecoverableKeyException; - method @FlaggedApi("android.security.keystore2.attest_modules") @NonNull public byte[] getSupplementaryAttestationInfo(int) throws android.security.KeyStoreException; - method public long grantKeyAccess(@NonNull String, int) throws android.security.KeyStoreException, java.security.UnrecoverableKeyException; - method public void revokeKeyAccess(@NonNull String, int) throws android.security.KeyStoreException, java.security.UnrecoverableKeyException; - field public static final int MODULE_HASH = -1879047468; // 0x900002d4 - } - - public class SecureKeyImportUnavailableException extends java.security.ProviderException { - ctor public SecureKeyImportUnavailableException(); - ctor public SecureKeyImportUnavailableException(String); - ctor public SecureKeyImportUnavailableException(String, Throwable); - ctor public SecureKeyImportUnavailableException(Throwable); - } - - public class StrongBoxUnavailableException extends java.security.ProviderException { - ctor public StrongBoxUnavailableException(); - ctor public StrongBoxUnavailableException(String); - ctor public StrongBoxUnavailableException(String, Throwable); - ctor public StrongBoxUnavailableException(Throwable); - } - - public class UserNotAuthenticatedException extends java.security.InvalidKeyException { - ctor public UserNotAuthenticatedException(); - ctor public UserNotAuthenticatedException(String); - ctor public UserNotAuthenticatedException(String, Throwable); - } - - public class UserPresenceUnavailableException extends java.security.InvalidKeyException { - ctor public UserPresenceUnavailableException(); - ctor public UserPresenceUnavailableException(String); - ctor public UserPresenceUnavailableException(String, Throwable); - } - - public class WrappedKeyEntry implements java.security.KeyStore.Entry { - ctor public WrappedKeyEntry(byte[], String, String, java.security.spec.AlgorithmParameterSpec); - method public java.security.spec.AlgorithmParameterSpec getAlgorithmParameterSpec(); - method public String getTransformation(); - method public byte[] getWrappedKeyBytes(); - method public String getWrappingKeyAlias(); - } - -} - -package android.service.assist.classification { - - public final class FieldClassification implements android.os.Parcelable { - ctor public FieldClassification(@NonNull android.view.autofill.AutofillId, @NonNull java.util.Set); - method public int describeContents(); - method @NonNull public android.view.autofill.AutofillId getAutofillId(); - method @NonNull public java.util.Set getHints(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.service.autofill { - - public abstract class AutofillService extends android.app.Service { - ctor public AutofillService(); - method @Deprecated @FlaggedApi("android.service.autofill.autofill_session_destroyed") @Nullable public final android.service.autofill.FillEventHistory getFillEventHistory(); - method public final android.os.IBinder onBind(android.content.Intent); - method public void onConnected(); - method public void onDisconnected(); - method public abstract void onFillRequest(@NonNull android.service.autofill.FillRequest, @NonNull android.os.CancellationSignal, @NonNull android.service.autofill.FillCallback); - method public abstract void onSaveRequest(@NonNull android.service.autofill.SaveRequest, @NonNull android.service.autofill.SaveCallback); - method public void onSavedDatasetsInfoRequest(@NonNull android.service.autofill.SavedDatasetsInfoCallback); - method @FlaggedApi("android.service.autofill.autofill_session_destroyed") public void onSessionDestroyed(@Nullable android.service.autofill.FillEventHistory); - field public static final String EXTRA_FILL_RESPONSE = "android.service.autofill.extra.FILL_RESPONSE"; - field public static final String SERVICE_INTERFACE = "android.service.autofill.AutofillService"; - field public static final String SERVICE_META_DATA = "android.autofill"; - } - - public final class BatchUpdates implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class BatchUpdates.Builder { - ctor public BatchUpdates.Builder(); - method public android.service.autofill.BatchUpdates build(); - method public android.service.autofill.BatchUpdates.Builder transformChild(int, @NonNull android.service.autofill.Transformation); - method public android.service.autofill.BatchUpdates.Builder updateTemplate(@NonNull android.widget.RemoteViews); - } - - public final class CharSequenceTransformation implements android.os.Parcelable android.service.autofill.Transformation { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class CharSequenceTransformation.Builder { - ctor public CharSequenceTransformation.Builder(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern, @NonNull String); - method public android.service.autofill.CharSequenceTransformation.Builder addField(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern, @NonNull String); - method public android.service.autofill.CharSequenceTransformation build(); - } - - public final class CustomDescription implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class CustomDescription.Builder { - ctor public CustomDescription.Builder(@NonNull android.widget.RemoteViews); - method @NonNull public android.service.autofill.CustomDescription.Builder addChild(int, @NonNull android.service.autofill.Transformation); - method @NonNull public android.service.autofill.CustomDescription.Builder addOnClickAction(int, @NonNull android.service.autofill.OnClickAction); - method @NonNull public android.service.autofill.CustomDescription.Builder batchUpdate(@NonNull android.service.autofill.Validator, @NonNull android.service.autofill.BatchUpdates); - method @NonNull public android.service.autofill.CustomDescription build(); - } - - public final class Dataset implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class Dataset.Builder { - ctor @Deprecated public Dataset.Builder(@NonNull android.widget.RemoteViews); - ctor public Dataset.Builder(@NonNull android.service.autofill.Presentations); - ctor public Dataset.Builder(); - method @NonNull public android.service.autofill.Dataset build(); - method @NonNull public android.service.autofill.Dataset.Builder setAuthentication(@Nullable android.content.IntentSender); - method @NonNull public android.service.autofill.Dataset.Builder setField(@NonNull android.view.autofill.AutofillId, @Nullable android.service.autofill.Field); - method @NonNull public android.service.autofill.Dataset.Builder setField(@NonNull String, @NonNull android.service.autofill.Field); - method @NonNull public android.service.autofill.Dataset.Builder setFieldForAllHints(@NonNull android.service.autofill.Field); - method @NonNull public android.service.autofill.Dataset.Builder setId(@Nullable String); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setInlinePresentation(@NonNull android.service.autofill.InlinePresentation); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setInlinePresentation(@NonNull android.service.autofill.InlinePresentation, @NonNull android.service.autofill.InlinePresentation); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @NonNull android.widget.RemoteViews); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.widget.RemoteViews); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation, @NonNull android.service.autofill.InlinePresentation); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation); - method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation, @NonNull android.service.autofill.InlinePresentation); - } - - public final class DateTransformation implements android.os.Parcelable android.service.autofill.Transformation { - ctor public DateTransformation(@NonNull android.view.autofill.AutofillId, @NonNull android.icu.text.DateFormat); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class DateValueSanitizer implements android.os.Parcelable android.service.autofill.Sanitizer { - ctor public DateValueSanitizer(@NonNull android.icu.text.DateFormat); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class Field { - method @Nullable public java.util.regex.Pattern getFilter(); - method @Nullable public android.service.autofill.Presentations getPresentations(); - method @Nullable public android.view.autofill.AutofillValue getValue(); - } - - public static final class Field.Builder { - ctor public Field.Builder(); - method @NonNull public android.service.autofill.Field build(); - method @NonNull public android.service.autofill.Field.Builder setFilter(@Nullable java.util.regex.Pattern); - method @NonNull public android.service.autofill.Field.Builder setPresentations(@NonNull android.service.autofill.Presentations); - method @NonNull public android.service.autofill.Field.Builder setValue(@NonNull android.view.autofill.AutofillValue); - } - - public final class FieldClassification { - method @NonNull public java.util.List getMatches(); - } - - public static final class FieldClassification.Match { - method @NonNull public String getCategoryId(); - method public float getScore(); - } - - public final class FillCallback { - method public void onFailure(@Nullable CharSequence); - method public void onSuccess(@Nullable android.service.autofill.FillResponse); - } - - public final class FillContext implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.view.autofill.AutofillId getFocusedId(); - method public int getRequestId(); - method @NonNull public android.app.assist.AssistStructure getStructure(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class FillEventHistory implements android.os.Parcelable { - method public int describeContents(); - method @Deprecated @Nullable public android.os.Bundle getClientState(); - method @Nullable public java.util.List getEvents(); - method @FlaggedApi("android.service.autofill.autofill_w_metrics") public int getSessionId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class FillEventHistory.Event { - method @NonNull public java.util.Map getChangedFields(); - method @Nullable public android.os.Bundle getClientState(); - method @Nullable public String getDatasetId(); - method @NonNull public java.util.Map getFieldsClassification(); - method @FlaggedApi("android.service.autofill.autofill_w_metrics") @Nullable public android.view.autofill.AutofillId getFocusedId(); - method @NonNull public java.util.Set getIgnoredDatasetIds(); - method @NonNull public java.util.Map> getManuallyEnteredField(); - method public int getNoSaveUiReason(); - method @NonNull public java.util.Set getSelectedDatasetIds(); - method @FlaggedApi("android.service.autofill.autofill_w_metrics") @NonNull public java.util.Set getShownDatasetIds(); - method public int getType(); - method public int getUiType(); - field public static final int NO_SAVE_UI_REASON_DATASET_MATCH = 6; // 0x6 - field public static final int NO_SAVE_UI_REASON_FIELD_VALIDATION_FAILED = 5; // 0x5 - field public static final int NO_SAVE_UI_REASON_HAS_EMPTY_REQUIRED = 3; // 0x3 - field public static final int NO_SAVE_UI_REASON_NONE = 0; // 0x0 - field public static final int NO_SAVE_UI_REASON_NO_SAVE_INFO = 1; // 0x1 - field public static final int NO_SAVE_UI_REASON_NO_VALUE_CHANGED = 4; // 0x4 - field @FlaggedApi("android.service.autofill.autofill_w_metrics") public static final int NO_SAVE_UI_REASON_USING_CREDMAN = 7; // 0x7 - field public static final int NO_SAVE_UI_REASON_WITH_DELAY_SAVE_FLAG = 2; // 0x2 - field public static final int TYPE_AUTHENTICATION_SELECTED = 2; // 0x2 - field public static final int TYPE_CONTEXT_COMMITTED = 4; // 0x4 - field public static final int TYPE_DATASETS_SHOWN = 5; // 0x5 - field public static final int TYPE_DATASET_AUTHENTICATION_SELECTED = 1; // 0x1 - field public static final int TYPE_DATASET_SELECTED = 0; // 0x0 - field public static final int TYPE_SAVE_SHOWN = 3; // 0x3 - field public static final int TYPE_VIEW_REQUESTED_AUTOFILL = 6; // 0x6 - field @FlaggedApi("android.service.autofill.autofill_w_metrics") public static final int UI_TYPE_CREDENTIAL_MANAGER = 4; // 0x4 - field public static final int UI_TYPE_DIALOG = 3; // 0x3 - field public static final int UI_TYPE_INLINE = 2; // 0x2 - field public static final int UI_TYPE_MENU = 1; // 0x1 - field public static final int UI_TYPE_UNKNOWN = 0; // 0x0 - } - - public final class FillRequest implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.os.Bundle getClientState(); - method @Nullable public android.content.IntentSender getDelayedFillIntentSender(); - method @NonNull public java.util.List getFillContexts(); - method public int getFlags(); - method @NonNull public java.util.List getHints(); - method public int getId(); - method @Nullable public android.view.inputmethod.InlineSuggestionsRequest getInlineSuggestionsRequest(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_COMPATIBILITY_MODE_REQUEST = 2; // 0x2 - field public static final int FLAG_MANUAL_REQUEST = 1; // 0x1 - field @Deprecated @FlaggedApi("android.service.autofill.fill_dialog_improvements") public static final int FLAG_SUPPORTS_FILL_DIALOG = 64; // 0x40 - } - - public final class FillResponse implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_DELAY_FILL = 4; // 0x4 - field public static final int FLAG_DISABLE_ACTIVITY_ONLY = 2; // 0x2 - field public static final int FLAG_TRACK_CONTEXT_COMMITED = 1; // 0x1 - } - - public static final class FillResponse.Builder { - ctor public FillResponse.Builder(); - method @NonNull public android.service.autofill.FillResponse.Builder addDataset(@Nullable android.service.autofill.Dataset); - method @NonNull public android.service.autofill.FillResponse build(); - method @NonNull public android.service.autofill.FillResponse.Builder disableAutofill(long); - method @Deprecated @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.widget.RemoteViews); - method @Deprecated @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.widget.RemoteViews, @Nullable android.service.autofill.InlinePresentation); - method @Deprecated @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.widget.RemoteViews, @Nullable android.service.autofill.InlinePresentation, @Nullable android.service.autofill.InlinePresentation); - method @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.service.autofill.Presentations); - method @NonNull public android.service.autofill.FillResponse.Builder setClientState(@Nullable android.os.Bundle); - method @NonNull public android.service.autofill.FillResponse.Builder setDetectedFieldClassifications(@NonNull java.util.Set); - method @NonNull public android.service.autofill.FillResponse.Builder setDialogHeader(@NonNull android.widget.RemoteViews); - method @NonNull public android.service.autofill.FillResponse.Builder setFieldClassificationIds(@NonNull android.view.autofill.AutofillId...); - method @NonNull public android.service.autofill.FillResponse.Builder setFillDialogTriggerIds(@NonNull android.view.autofill.AutofillId...); - method @NonNull public android.service.autofill.FillResponse.Builder setFlags(int); - method @NonNull public android.service.autofill.FillResponse.Builder setFooter(@NonNull android.widget.RemoteViews); - method @NonNull public android.service.autofill.FillResponse.Builder setHeader(@NonNull android.widget.RemoteViews); - method @NonNull public android.service.autofill.FillResponse.Builder setIconResourceId(@DrawableRes int); - method @NonNull public android.service.autofill.FillResponse.Builder setIgnoredIds(android.view.autofill.AutofillId...); - method @NonNull public android.service.autofill.FillResponse.Builder setPresentationCancelIds(@Nullable int[]); - method @NonNull public android.service.autofill.FillResponse.Builder setSaveInfo(@NonNull android.service.autofill.SaveInfo); - method @NonNull public android.service.autofill.FillResponse.Builder setServiceDisplayNameResourceId(@StringRes int); - method @NonNull public android.service.autofill.FillResponse.Builder setShowFillDialogIcon(boolean); - method @NonNull public android.service.autofill.FillResponse.Builder setShowSaveDialogIcon(boolean); - method @NonNull public android.service.autofill.FillResponse.Builder setUserData(@NonNull android.service.autofill.UserData); - } - - public final class ImageTransformation implements android.os.Parcelable android.service.autofill.Transformation { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class ImageTransformation.Builder { - ctor @Deprecated public ImageTransformation.Builder(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern, @DrawableRes int); - ctor public ImageTransformation.Builder(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern, @DrawableRes int, @NonNull CharSequence); - method @Deprecated public android.service.autofill.ImageTransformation.Builder addOption(@NonNull java.util.regex.Pattern, @DrawableRes int); - method public android.service.autofill.ImageTransformation.Builder addOption(@NonNull java.util.regex.Pattern, @DrawableRes int, @NonNull CharSequence); - method public android.service.autofill.ImageTransformation build(); - } - - public final class InlinePresentation implements android.os.Parcelable { - ctor public InlinePresentation(@NonNull android.app.slice.Slice, @NonNull android.widget.inline.InlinePresentationSpec, boolean); - method @NonNull public static android.service.autofill.InlinePresentation createTooltipPresentation(@NonNull android.app.slice.Slice, @NonNull android.widget.inline.InlinePresentationSpec); - method public int describeContents(); - method @NonNull public android.widget.inline.InlinePresentationSpec getInlinePresentationSpec(); - method @NonNull public android.app.slice.Slice getSlice(); - method public boolean isPinned(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class LuhnChecksumValidator implements android.os.Parcelable android.service.autofill.Validator { - ctor public LuhnChecksumValidator(@NonNull android.view.autofill.AutofillId...); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface OnClickAction { - } - - public final class Presentations { - method @Nullable public android.widget.RemoteViews getDialogPresentation(); - method @Nullable public android.service.autofill.InlinePresentation getInlinePresentation(); - method @Nullable public android.service.autofill.InlinePresentation getInlineTooltipPresentation(); - method @Nullable public android.widget.RemoteViews getMenuPresentation(); - } - - public static final class Presentations.Builder { - ctor public Presentations.Builder(); - method @NonNull public android.service.autofill.Presentations build(); - method @NonNull public android.service.autofill.Presentations.Builder setDialogPresentation(@NonNull android.widget.RemoteViews); - method @NonNull public android.service.autofill.Presentations.Builder setInlinePresentation(@NonNull android.service.autofill.InlinePresentation); - method @NonNull public android.service.autofill.Presentations.Builder setInlineTooltipPresentation(@NonNull android.service.autofill.InlinePresentation); - method @NonNull public android.service.autofill.Presentations.Builder setMenuPresentation(@NonNull android.widget.RemoteViews); - } - - public final class RegexValidator implements android.os.Parcelable android.service.autofill.Validator { - ctor public RegexValidator(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface Sanitizer { - } - - public final class SaveCallback { - method public void onFailure(CharSequence); - method public void onSuccess(); - method public void onSuccess(@NonNull android.content.IntentSender); - } - - public final class SaveInfo implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_DELAY_SAVE = 4; // 0x4 - field public static final int FLAG_DONT_SAVE_ON_FINISH = 2; // 0x2 - field public static final int FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE = 1; // 0x1 - field public static final int NEGATIVE_BUTTON_STYLE_CANCEL = 0; // 0x0 - field public static final int NEGATIVE_BUTTON_STYLE_NEVER = 2; // 0x2 - field public static final int NEGATIVE_BUTTON_STYLE_REJECT = 1; // 0x1 - field public static final int POSITIVE_BUTTON_STYLE_CONTINUE = 1; // 0x1 - field public static final int POSITIVE_BUTTON_STYLE_SAVE = 0; // 0x0 - field public static final int SAVE_DATA_TYPE_ADDRESS = 2; // 0x2 - field public static final int SAVE_DATA_TYPE_CREDIT_CARD = 4; // 0x4 - field public static final int SAVE_DATA_TYPE_DEBIT_CARD = 32; // 0x20 - field public static final int SAVE_DATA_TYPE_EMAIL_ADDRESS = 16; // 0x10 - field public static final int SAVE_DATA_TYPE_GENERIC = 0; // 0x0 - field public static final int SAVE_DATA_TYPE_GENERIC_CARD = 128; // 0x80 - field public static final int SAVE_DATA_TYPE_PASSWORD = 1; // 0x1 - field public static final int SAVE_DATA_TYPE_PAYMENT_CARD = 64; // 0x40 - field public static final int SAVE_DATA_TYPE_USERNAME = 8; // 0x8 - } - - public static final class SaveInfo.Builder { - ctor public SaveInfo.Builder(int, @NonNull android.view.autofill.AutofillId[]); - ctor public SaveInfo.Builder(int); - method @NonNull public android.service.autofill.SaveInfo.Builder addSanitizer(@NonNull android.service.autofill.Sanitizer, @NonNull android.view.autofill.AutofillId...); - method public android.service.autofill.SaveInfo build(); - method @NonNull public android.service.autofill.SaveInfo.Builder setCustomDescription(@NonNull android.service.autofill.CustomDescription); - method @NonNull public android.service.autofill.SaveInfo.Builder setDescription(@Nullable CharSequence); - method @NonNull public android.service.autofill.SaveInfo.Builder setFlags(int); - method @NonNull public android.service.autofill.SaveInfo.Builder setNegativeAction(int, @Nullable android.content.IntentSender); - method @NonNull public android.service.autofill.SaveInfo.Builder setOptionalIds(@NonNull android.view.autofill.AutofillId[]); - method @NonNull public android.service.autofill.SaveInfo.Builder setPositiveAction(int); - method @NonNull public android.service.autofill.SaveInfo.Builder setTriggerId(@NonNull android.view.autofill.AutofillId); - method @NonNull public android.service.autofill.SaveInfo.Builder setValidator(@NonNull android.service.autofill.Validator); - } - - public final class SaveRequest implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.os.Bundle getClientState(); - method @Nullable public java.util.List getDatasetIds(); - method @NonNull public java.util.List getFillContexts(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class SavedDatasetsInfo { - ctor public SavedDatasetsInfo(@NonNull String, @IntRange(from=0) int); - method @IntRange(from=0) public int getCount(); - method @NonNull public String getType(); - field public static final String TYPE_OTHER = "other"; - field public static final String TYPE_PASSWORDS = "passwords"; - } - - public interface SavedDatasetsInfoCallback { - method public void onError(int); - method public void onSuccess(@NonNull java.util.Set); - field public static final int ERROR_NEEDS_USER_ACTION = 2; // 0x2 - field public static final int ERROR_OTHER = 0; // 0x0 - field public static final int ERROR_UNSUPPORTED = 1; // 0x1 - } - - public final class TextValueSanitizer implements android.os.Parcelable android.service.autofill.Sanitizer { - ctor public TextValueSanitizer(@NonNull java.util.regex.Pattern, @NonNull String); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface Transformation { - } - - public final class UserData implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getFieldClassificationAlgorithm(); - method @Nullable public String getFieldClassificationAlgorithmForCategory(@NonNull String); - method public String getId(); - method public static int getMaxCategoryCount(); - method public static int getMaxFieldClassificationIdsSize(); - method public static int getMaxUserDataSize(); - method public static int getMaxValueLength(); - method public static int getMinValueLength(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class UserData.Builder { - ctor public UserData.Builder(@NonNull String, @NonNull String, @NonNull String); - method @NonNull public android.service.autofill.UserData.Builder add(@NonNull String, @NonNull String); - method @NonNull public android.service.autofill.UserData build(); - method @NonNull public android.service.autofill.UserData.Builder setFieldClassificationAlgorithm(@Nullable String, @Nullable android.os.Bundle); - method @NonNull public android.service.autofill.UserData.Builder setFieldClassificationAlgorithmForCategory(@NonNull String, @Nullable String, @Nullable android.os.Bundle); - } - - public interface Validator { - } - - public final class Validators { - method @NonNull public static android.service.autofill.Validator and(@NonNull android.service.autofill.Validator...); - method @NonNull public static android.service.autofill.Validator not(@NonNull android.service.autofill.Validator); - method @NonNull public static android.service.autofill.Validator or(@NonNull android.service.autofill.Validator...); - } - - public final class VisibilitySetterAction implements android.service.autofill.OnClickAction android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class VisibilitySetterAction.Builder { - ctor public VisibilitySetterAction.Builder(@IdRes int, int); - method @NonNull public android.service.autofill.VisibilitySetterAction build(); - method @NonNull public android.service.autofill.VisibilitySetterAction.Builder setVisibility(@IdRes int, int); - } - -} - -package android.service.carrier { - - public class CarrierIdentifier implements android.os.Parcelable { - ctor public CarrierIdentifier(String, String, @Nullable String, @Nullable String, @Nullable String, @Nullable String); - ctor public CarrierIdentifier(@NonNull String, @NonNull String, @Nullable String, @Nullable String, @Nullable String, @Nullable String, int, int); - ctor public CarrierIdentifier(byte[], @Nullable String, @Nullable String); - method public int describeContents(); - method public int getCarrierId(); - method @Nullable public String getGid1(); - method @Nullable public String getGid2(); - method @Nullable public String getImsi(); - method public String getMcc(); - method public String getMnc(); - method public int getSpecificCarrierId(); - method @Nullable public String getSpn(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class CarrierMessagingClientService extends android.app.Service { - ctor public CarrierMessagingClientService(); - method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent); - } - - public abstract class CarrierMessagingService extends android.app.Service { - ctor public CarrierMessagingService(); - method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); - method public void onDownloadMms(@NonNull android.net.Uri, int, @NonNull android.net.Uri, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - method @Deprecated public void onFilterSms(@NonNull android.service.carrier.MessagePdu, @NonNull String, int, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - method public void onReceiveTextSms(@NonNull android.service.carrier.MessagePdu, @NonNull String, int, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - method @Deprecated public void onSendDataSms(@NonNull byte[], int, @NonNull String, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - method public void onSendDataSms(@NonNull byte[], int, @NonNull String, int, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - method public void onSendMms(@NonNull android.net.Uri, int, @Nullable android.net.Uri, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - method @Deprecated public void onSendMultipartTextSms(@NonNull java.util.List, int, @NonNull String, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - method public void onSendMultipartTextSms(@NonNull java.util.List, int, @NonNull String, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - method @Deprecated public void onSendTextSms(@NonNull String, int, @NonNull String, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - method public void onSendTextSms(@NonNull String, int, @NonNull String, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); - field public static final int DOWNLOAD_STATUS_ERROR = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_CONFIGURATION_ERROR = 606; // 0x25e - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_DATA_DISABLED = 610; // 0x262 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_HTTP_FAILURE = 603; // 0x25b - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_INACTIVE_SUBSCRIPTION = 609; // 0x261 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_INVALID_APN = 601; // 0x259 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_INVALID_SUBSCRIPTION_ID = 608; // 0x260 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_IO_ERROR = 604; // 0x25c - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_MMS_DISABLED_BY_CARRIER = 611; // 0x263 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_NO_DATA_NETWORK = 607; // 0x25f - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_RETRY = 605; // 0x25d - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_UNABLE_CONNECT_MMS = 602; // 0x25a - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_UNSPECIFIED = 600; // 0x258 - field public static final int DOWNLOAD_STATUS_OK = 0; // 0x0 - field public static final int DOWNLOAD_STATUS_RETRY_ON_CARRIER_NETWORK = 1; // 0x1 - field public static final int RECEIVE_OPTIONS_DEFAULT = 0; // 0x0 - field public static final int RECEIVE_OPTIONS_DROP = 1; // 0x1 - field public static final int RECEIVE_OPTIONS_SKIP_NOTIFY_WHEN_CREDENTIAL_PROTECTED_STORAGE_UNAVAILABLE = 2; // 0x2 - field public static final int SEND_FLAG_REQUEST_DELIVERY_STATUS = 1; // 0x1 - field public static final int SEND_STATUS_ERROR = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_CONFIGURATION_ERROR = 406; // 0x196 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_DATA_DISABLED = 410; // 0x19a - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_HTTP_FAILURE = 403; // 0x193 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_INACTIVE_SUBSCRIPTION = 409; // 0x199 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_INVALID_APN = 401; // 0x191 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_INVALID_SUBSCRIPTION_ID = 408; // 0x198 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_IO_ERROR = 404; // 0x194 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_MMS_DISABLED_BY_CARRIER = 411; // 0x19b - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_NO_DATA_NETWORK = 407; // 0x197 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_RETRY = 405; // 0x195 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_UNABLE_CONNECT_MMS = 402; // 0x192 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_UNSPECIFIED = 400; // 0x190 - field public static final int SEND_STATUS_OK = 0; // 0x0 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_CANCELLED = 215; // 0xd7 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ENCODING_ERROR = 212; // 0xd4 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_FDN_CHECK_FAILURE = 204; // 0xcc - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_GENERIC_FAILURE = 200; // 0xc8 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_LIMIT_EXCEEDED = 203; // 0xcb - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_NO_SERVICE = 202; // 0xca - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_NULL_PDU = 201; // 0xc9 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_SHORT_CODE_NEVER_ALLOWED = 206; // 0xce - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_SHORT_CODE_NOT_ALLOWED = 205; // 0xcd - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_INVALID_ARGUMENTS = 208; // 0xd0 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_INVALID_SMSC_ADDRESS = 213; // 0xd5 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_INVALID_SMS_FORMAT = 210; // 0xd2 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_INVALID_STATE = 209; // 0xd1 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_NETWORK_ERROR = 211; // 0xd3 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_NETWORK_REJECT = 207; // 0xcf - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_OPERATION_NOT_ALLOWED = 214; // 0xd6 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_REQUEST_NOT_SUPPORTED = 216; // 0xd8 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_SMS_BLOCKED_DURING_EMERGENCY = 217; // 0xd9 - field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_SMS_SEND_RETRY_FAILED = 218; // 0xda - field public static final int SEND_STATUS_RETRY_ON_CARRIER_NETWORK = 1; // 0x1 - field public static final String SERVICE_INTERFACE = "android.service.carrier.CarrierMessagingService"; - } - - public static interface CarrierMessagingService.ResultCallback { - method public void onReceiveResult(@NonNull T) throws android.os.RemoteException; - } - - public static final class CarrierMessagingService.SendMmsResult { - ctor public CarrierMessagingService.SendMmsResult(int, @Nullable byte[]); - method @Nullable public byte[] getSendConfPdu(); - method public int getSendStatus(); - } - - public static final class CarrierMessagingService.SendMultipartSmsResult { - ctor public CarrierMessagingService.SendMultipartSmsResult(int, @Nullable int[]); - method @Nullable public int[] getMessageRefs(); - method public int getSendStatus(); - } - - public static final class CarrierMessagingService.SendSmsResult { - ctor public CarrierMessagingService.SendSmsResult(int, int); - method public int getMessageRef(); - method public int getSendStatus(); - } - - public abstract class CarrierService extends android.app.Service { - ctor public CarrierService(); - method @Deprecated public final void notifyCarrierNetworkChange(boolean); - method public final void notifyCarrierNetworkChange(int, boolean); - method @CallSuper public android.os.IBinder onBind(android.content.Intent); - method @Deprecated public abstract android.os.PersistableBundle onLoadConfig(android.service.carrier.CarrierIdentifier); - method @Nullable public android.os.PersistableBundle onLoadConfig(int, @Nullable android.service.carrier.CarrierIdentifier); - field public static final String CARRIER_SERVICE_INTERFACE = "android.service.carrier.CarrierService"; - } - - public final class MessagePdu implements android.os.Parcelable { - ctor public MessagePdu(@NonNull java.util.List); - method public int describeContents(); - method @NonNull public java.util.List getPdus(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.service.chooser { - - public interface AdditionalContentContract { - } - - public static interface AdditionalContentContract.Columns { - field public static final String URI = "uri"; - } - - public static interface AdditionalContentContract.CursorExtraKeys { - field public static final String POSITION = "position"; - } - - public static interface AdditionalContentContract.MethodNames { - field public static final String ON_SELECTION_CHANGED = "onSelectionChanged"; - } - - public final class ChooserAction implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.app.PendingIntent getAction(); - method @NonNull public android.graphics.drawable.Icon getIcon(); - method @NonNull public CharSequence getLabel(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class ChooserAction.Builder { - ctor public ChooserAction.Builder(@NonNull android.graphics.drawable.Icon, @NonNull CharSequence, @NonNull android.app.PendingIntent); - method @NonNull public android.service.chooser.ChooserAction build(); - } - - public final class ChooserResult implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.content.ComponentName getSelectedComponent(); - method public int getType(); - method public boolean isShortcut(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CHOOSER_RESULT_COPY = 1; // 0x1 - field public static final int CHOOSER_RESULT_EDIT = 2; // 0x2 - field public static final int CHOOSER_RESULT_SELECTED_COMPONENT = 0; // 0x0 - field public static final int CHOOSER_RESULT_UNKNOWN = -1; // 0xffffffff - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @Deprecated public final class ChooserTarget implements android.os.Parcelable { - ctor @Deprecated public ChooserTarget(CharSequence, android.graphics.drawable.Icon, float, android.content.ComponentName, @Nullable android.os.Bundle); - method @Deprecated public int describeContents(); - method @Deprecated public android.content.ComponentName getComponentName(); - method @Deprecated public android.graphics.drawable.Icon getIcon(); - method @Deprecated public android.os.Bundle getIntentExtras(); - method @Deprecated public float getScore(); - method @Deprecated public CharSequence getTitle(); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @Deprecated public abstract class ChooserTargetService extends android.app.Service { - ctor @Deprecated public ChooserTargetService(); - method @Deprecated public android.os.IBinder onBind(android.content.Intent); - method @Deprecated public abstract java.util.List onGetChooserTargets(android.content.ComponentName, android.content.IntentFilter); - field @Deprecated public static final String BIND_PERMISSION = "android.permission.BIND_CHOOSER_TARGET_SERVICE"; - field @Deprecated public static final String META_DATA_NAME = "android.service.chooser.chooser_target_service"; - field @Deprecated public static final String SERVICE_INTERFACE = "android.service.chooser.ChooserTargetService"; - } - -} - -package android.service.controls { - - public final class Control implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.app.PendingIntent getAppIntent(); - method @NonNull public String getControlId(); - method @NonNull public android.service.controls.templates.ControlTemplate getControlTemplate(); - method @Nullable public android.content.res.ColorStateList getCustomColor(); - method @Nullable public android.graphics.drawable.Icon getCustomIcon(); - method public int getDeviceType(); - method public int getStatus(); - method @NonNull public CharSequence getStatusText(); - method @Nullable public CharSequence getStructure(); - method @NonNull public CharSequence getSubtitle(); - method @NonNull public CharSequence getTitle(); - method @Nullable public CharSequence getZone(); - method public boolean isAuthRequired(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STATUS_DISABLED = 4; // 0x4 - field public static final int STATUS_ERROR = 3; // 0x3 - field public static final int STATUS_NOT_FOUND = 2; // 0x2 - field public static final int STATUS_OK = 1; // 0x1 - field public static final int STATUS_UNKNOWN = 0; // 0x0 - } - - public static final class Control.StatefulBuilder { - ctor public Control.StatefulBuilder(@NonNull String, @NonNull android.app.PendingIntent); - ctor public Control.StatefulBuilder(@NonNull android.service.controls.Control); - method @NonNull public android.service.controls.Control build(); - method @NonNull public android.service.controls.Control.StatefulBuilder setAppIntent(@NonNull android.app.PendingIntent); - method @NonNull public android.service.controls.Control.StatefulBuilder setAuthRequired(boolean); - method @NonNull public android.service.controls.Control.StatefulBuilder setControlId(@NonNull String); - method @NonNull public android.service.controls.Control.StatefulBuilder setControlTemplate(@NonNull android.service.controls.templates.ControlTemplate); - method @NonNull public android.service.controls.Control.StatefulBuilder setCustomColor(@Nullable android.content.res.ColorStateList); - method @NonNull public android.service.controls.Control.StatefulBuilder setCustomIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.service.controls.Control.StatefulBuilder setDeviceType(int); - method @NonNull public android.service.controls.Control.StatefulBuilder setStatus(int); - method @NonNull public android.service.controls.Control.StatefulBuilder setStatusText(@NonNull CharSequence); - method @NonNull public android.service.controls.Control.StatefulBuilder setStructure(@Nullable CharSequence); - method @NonNull public android.service.controls.Control.StatefulBuilder setSubtitle(@NonNull CharSequence); - method @NonNull public android.service.controls.Control.StatefulBuilder setTitle(@NonNull CharSequence); - method @NonNull public android.service.controls.Control.StatefulBuilder setZone(@Nullable CharSequence); - } - - public static final class Control.StatelessBuilder { - ctor public Control.StatelessBuilder(@NonNull String, @NonNull android.app.PendingIntent); - ctor public Control.StatelessBuilder(@NonNull android.service.controls.Control); - method @NonNull public android.service.controls.Control build(); - method @NonNull public android.service.controls.Control.StatelessBuilder setAppIntent(@NonNull android.app.PendingIntent); - method @NonNull public android.service.controls.Control.StatelessBuilder setControlId(@NonNull String); - method @NonNull public android.service.controls.Control.StatelessBuilder setCustomColor(@Nullable android.content.res.ColorStateList); - method @NonNull public android.service.controls.Control.StatelessBuilder setCustomIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.service.controls.Control.StatelessBuilder setDeviceType(int); - method @NonNull public android.service.controls.Control.StatelessBuilder setStructure(@Nullable CharSequence); - method @NonNull public android.service.controls.Control.StatelessBuilder setSubtitle(@NonNull CharSequence); - method @NonNull public android.service.controls.Control.StatelessBuilder setTitle(@NonNull CharSequence); - method @NonNull public android.service.controls.Control.StatelessBuilder setZone(@Nullable CharSequence); - } - - public abstract class ControlsProviderService extends android.app.Service { - ctor public ControlsProviderService(); - method @NonNull public abstract java.util.concurrent.Flow.Publisher createPublisherFor(@NonNull java.util.List); - method @NonNull public abstract java.util.concurrent.Flow.Publisher createPublisherForAllAvailable(); - method @Nullable public java.util.concurrent.Flow.Publisher createPublisherForSuggested(); - method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent); - method public final boolean onUnbind(@NonNull android.content.Intent); - method public abstract void performControlAction(@NonNull String, @NonNull android.service.controls.actions.ControlAction, @NonNull java.util.function.Consumer); - method public static void requestAddControl(@NonNull android.content.Context, @NonNull android.content.ComponentName, @NonNull android.service.controls.Control); - field @FlaggedApi("android.service.controls.flags.home_panel_dream") public static final int CONTROLS_SURFACE_ACTIVITY_PANEL = 0; // 0x0 - field @FlaggedApi("android.service.controls.flags.home_panel_dream") public static final int CONTROLS_SURFACE_DREAM = 1; // 0x1 - field @FlaggedApi("android.service.controls.flags.home_panel_dream") public static final String EXTRA_CONTROLS_SURFACE = "android.service.controls.extra.CONTROLS_SURFACE"; - field public static final String EXTRA_LOCKSCREEN_ALLOW_TRIVIAL_CONTROLS = "android.service.controls.extra.LOCKSCREEN_ALLOW_TRIVIAL_CONTROLS"; - field public static final String META_DATA_PANEL_ACTIVITY = "android.service.controls.META_DATA_PANEL_ACTIVITY"; - field public static final String SERVICE_CONTROLS = "android.service.controls.ControlsProviderService"; - field @NonNull public static final String TAG = "ControlsProviderService"; - } - - public class DeviceTypes { - method public static boolean validDeviceType(int); - field public static final int TYPE_AC_HEATER = 1; // 0x1 - field public static final int TYPE_AC_UNIT = 2; // 0x2 - field public static final int TYPE_AIR_FRESHENER = 3; // 0x3 - field public static final int TYPE_AIR_PURIFIER = 4; // 0x4 - field public static final int TYPE_AWNING = 33; // 0x21 - field public static final int TYPE_BLINDS = 34; // 0x22 - field public static final int TYPE_CAMERA = 50; // 0x32 - field public static final int TYPE_CLOSET = 35; // 0x23 - field public static final int TYPE_COFFEE_MAKER = 5; // 0x5 - field public static final int TYPE_CURTAIN = 36; // 0x24 - field public static final int TYPE_DEHUMIDIFIER = 6; // 0x6 - field public static final int TYPE_DISHWASHER = 24; // 0x18 - field public static final int TYPE_DISPLAY = 7; // 0x7 - field public static final int TYPE_DOOR = 37; // 0x25 - field public static final int TYPE_DOORBELL = 51; // 0x33 - field public static final int TYPE_DRAWER = 38; // 0x26 - field public static final int TYPE_DRYER = 25; // 0x19 - field public static final int TYPE_FAN = 8; // 0x8 - field public static final int TYPE_GARAGE = 39; // 0x27 - field public static final int TYPE_GATE = 40; // 0x28 - field public static final int TYPE_GENERIC_ARM_DISARM = -5; // 0xfffffffb - field public static final int TYPE_GENERIC_LOCK_UNLOCK = -4; // 0xfffffffc - field public static final int TYPE_GENERIC_ON_OFF = -1; // 0xffffffff - field public static final int TYPE_GENERIC_OPEN_CLOSE = -3; // 0xfffffffd - field public static final int TYPE_GENERIC_START_STOP = -2; // 0xfffffffe - field public static final int TYPE_GENERIC_TEMP_SETTING = -6; // 0xfffffffa - field public static final int TYPE_GENERIC_VIEWSTREAM = -7; // 0xfffffff9 - field public static final int TYPE_HEATER = 47; // 0x2f - field public static final int TYPE_HOOD = 10; // 0xa - field public static final int TYPE_HUMIDIFIER = 11; // 0xb - field public static final int TYPE_KETTLE = 12; // 0xc - field public static final int TYPE_LIGHT = 13; // 0xd - field public static final int TYPE_LOCK = 45; // 0x2d - field public static final int TYPE_MICROWAVE = 14; // 0xe - field public static final int TYPE_MOP = 26; // 0x1a - field public static final int TYPE_MOWER = 27; // 0x1b - field public static final int TYPE_MULTICOOKER = 28; // 0x1c - field public static final int TYPE_OUTLET = 15; // 0xf - field public static final int TYPE_PERGOLA = 41; // 0x29 - field public static final int TYPE_RADIATOR = 16; // 0x10 - field public static final int TYPE_REFRIGERATOR = 48; // 0x30 - field public static final int TYPE_REMOTE_CONTROL = 17; // 0x11 - field public static final int TYPE_ROUTINE = 52; // 0x34 - field public static final int TYPE_SECURITY_SYSTEM = 46; // 0x2e - field public static final int TYPE_SET_TOP = 18; // 0x12 - field public static final int TYPE_SHOWER = 29; // 0x1d - field public static final int TYPE_SHUTTER = 42; // 0x2a - field public static final int TYPE_SPRINKLER = 30; // 0x1e - field public static final int TYPE_STANDMIXER = 19; // 0x13 - field public static final int TYPE_STYLER = 20; // 0x14 - field public static final int TYPE_SWITCH = 21; // 0x15 - field public static final int TYPE_THERMOSTAT = 49; // 0x31 - field public static final int TYPE_TV = 22; // 0x16 - field public static final int TYPE_UNKNOWN = 0; // 0x0 - field public static final int TYPE_VACUUM = 32; // 0x20 - field public static final int TYPE_VALVE = 44; // 0x2c - field public static final int TYPE_WASHER = 31; // 0x1f - field public static final int TYPE_WATER_HEATER = 23; // 0x17 - field public static final int TYPE_WINDOW = 43; // 0x2b - } - -} - -package android.service.controls.actions { - - public final class BooleanAction extends android.service.controls.actions.ControlAction { - ctor public BooleanAction(@NonNull String, boolean); - ctor public BooleanAction(@NonNull String, boolean, @Nullable String); - method public int getActionType(); - method public boolean getNewState(); - } - - public final class CommandAction extends android.service.controls.actions.ControlAction { - ctor public CommandAction(@NonNull String, @Nullable String); - ctor public CommandAction(@NonNull String); - method public int getActionType(); - } - - public abstract class ControlAction { - method public abstract int getActionType(); - method @Nullable public String getChallengeValue(); - method @NonNull public static android.service.controls.actions.ControlAction getErrorAction(); - method @NonNull public String getTemplateId(); - method public static final boolean isValidResponse(int); - field public static final int RESPONSE_CHALLENGE_ACK = 3; // 0x3 - field public static final int RESPONSE_CHALLENGE_PASSPHRASE = 5; // 0x5 - field public static final int RESPONSE_CHALLENGE_PIN = 4; // 0x4 - field public static final int RESPONSE_FAIL = 2; // 0x2 - field public static final int RESPONSE_OK = 1; // 0x1 - field public static final int RESPONSE_UNKNOWN = 0; // 0x0 - field public static final int TYPE_BOOLEAN = 1; // 0x1 - field public static final int TYPE_COMMAND = 5; // 0x5 - field public static final int TYPE_ERROR = -1; // 0xffffffff - field public static final int TYPE_FLOAT = 2; // 0x2 - field public static final int TYPE_MODE = 4; // 0x4 - } - - public final class FloatAction extends android.service.controls.actions.ControlAction { - ctor public FloatAction(@NonNull String, float); - ctor public FloatAction(@NonNull String, float, @Nullable String); - method public int getActionType(); - method public float getNewValue(); - } - - public final class ModeAction extends android.service.controls.actions.ControlAction { - ctor public ModeAction(@NonNull String, int, @Nullable String); - ctor public ModeAction(@NonNull String, int); - method public int getActionType(); - method public int getNewMode(); - } - -} - -package android.service.controls.templates { - - public final class ControlButton implements android.os.Parcelable { - ctor public ControlButton(boolean, @NonNull CharSequence); - method public int describeContents(); - method @NonNull public CharSequence getActionDescription(); - method public boolean isChecked(); - method @NonNull public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class ControlTemplate { - method @NonNull public static android.service.controls.templates.ControlTemplate getErrorTemplate(); - method @NonNull public static android.service.controls.templates.ControlTemplate getNoTemplateObject(); - method @NonNull public String getTemplateId(); - method public abstract int getTemplateType(); - field public static final int TYPE_ERROR = -1; // 0xffffffff - field public static final int TYPE_NO_TEMPLATE = 0; // 0x0 - field public static final int TYPE_RANGE = 2; // 0x2 - field public static final int TYPE_STATELESS = 8; // 0x8 - field public static final int TYPE_TEMPERATURE = 7; // 0x7 - field public static final int TYPE_THUMBNAIL = 3; // 0x3 - field public static final int TYPE_TOGGLE = 1; // 0x1 - field public static final int TYPE_TOGGLE_RANGE = 6; // 0x6 - } - - public final class RangeTemplate extends android.service.controls.templates.ControlTemplate { - ctor public RangeTemplate(@NonNull String, float, float, float, float, @Nullable CharSequence); - method public float getCurrentValue(); - method @NonNull public CharSequence getFormatString(); - method public float getMaxValue(); - method public float getMinValue(); - method public float getStepValue(); - method public int getTemplateType(); - } - - public final class StatelessTemplate extends android.service.controls.templates.ControlTemplate { - ctor public StatelessTemplate(@NonNull String); - method public int getTemplateType(); - } - - public final class TemperatureControlTemplate extends android.service.controls.templates.ControlTemplate { - ctor public TemperatureControlTemplate(@NonNull String, @NonNull android.service.controls.templates.ControlTemplate, int, int, int); - method public int getCurrentActiveMode(); - method public int getCurrentMode(); - method public int getModes(); - method @NonNull public android.service.controls.templates.ControlTemplate getTemplate(); - method public int getTemplateType(); - field public static final int FLAG_MODE_COOL = 8; // 0x8 - field public static final int FLAG_MODE_ECO = 32; // 0x20 - field public static final int FLAG_MODE_HEAT = 4; // 0x4 - field public static final int FLAG_MODE_HEAT_COOL = 16; // 0x10 - field public static final int FLAG_MODE_OFF = 2; // 0x2 - field public static final int MODE_COOL = 3; // 0x3 - field public static final int MODE_ECO = 5; // 0x5 - field public static final int MODE_HEAT = 2; // 0x2 - field public static final int MODE_HEAT_COOL = 4; // 0x4 - field public static final int MODE_OFF = 1; // 0x1 - field public static final int MODE_UNKNOWN = 0; // 0x0 - } - - public final class ThumbnailTemplate extends android.service.controls.templates.ControlTemplate { - ctor public ThumbnailTemplate(@NonNull String, boolean, @NonNull android.graphics.drawable.Icon, @NonNull CharSequence); - method @NonNull public CharSequence getContentDescription(); - method public int getTemplateType(); - method @NonNull public android.graphics.drawable.Icon getThumbnail(); - method public boolean isActive(); - } - - public final class ToggleRangeTemplate extends android.service.controls.templates.ControlTemplate { - ctor public ToggleRangeTemplate(@NonNull String, @NonNull android.service.controls.templates.ControlButton, @NonNull android.service.controls.templates.RangeTemplate); - ctor public ToggleRangeTemplate(@NonNull String, boolean, @NonNull CharSequence, @NonNull android.service.controls.templates.RangeTemplate); - method @NonNull public CharSequence getActionDescription(); - method @NonNull public android.service.controls.templates.RangeTemplate getRange(); - method public int getTemplateType(); - method public boolean isChecked(); - } - - public final class ToggleTemplate extends android.service.controls.templates.ControlTemplate { - ctor public ToggleTemplate(@NonNull String, @NonNull android.service.controls.templates.ControlButton); - method @NonNull public CharSequence getContentDescription(); - method public int getTemplateType(); - method public boolean isChecked(); - } - -} - -package android.service.credentials { - - public final class Action implements android.os.Parcelable { - ctor public Action(@NonNull android.app.slice.Slice); - method public int describeContents(); - method @NonNull public android.app.slice.Slice getSlice(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class BeginCreateCredentialRequest implements android.os.Parcelable { - ctor public BeginCreateCredentialRequest(@NonNull String, @NonNull android.os.Bundle, @Nullable android.service.credentials.CallingAppInfo); - ctor public BeginCreateCredentialRequest(@NonNull String, @NonNull android.os.Bundle); - method public int describeContents(); - method @Nullable public android.service.credentials.CallingAppInfo getCallingAppInfo(); - method @NonNull public android.os.Bundle getData(); - method @NonNull public String getType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class BeginCreateCredentialResponse implements android.os.Parcelable { - ctor public BeginCreateCredentialResponse(); - method public int describeContents(); - method @NonNull public java.util.List getCreateEntries(); - method @Nullable public android.service.credentials.RemoteEntry getRemoteCreateEntry(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class BeginCreateCredentialResponse.Builder { - ctor public BeginCreateCredentialResponse.Builder(); - method @NonNull public android.service.credentials.BeginCreateCredentialResponse.Builder addCreateEntry(@NonNull android.service.credentials.CreateEntry); - method @NonNull public android.service.credentials.BeginCreateCredentialResponse build(); - method @NonNull public android.service.credentials.BeginCreateCredentialResponse.Builder setCreateEntries(@NonNull java.util.List); - method @NonNull @RequiresPermission(android.Manifest.permission.PROVIDE_REMOTE_CREDENTIALS) public android.service.credentials.BeginCreateCredentialResponse.Builder setRemoteCreateEntry(@Nullable android.service.credentials.RemoteEntry); - } - - public final class BeginGetCredentialOption implements android.os.Parcelable { - ctor public BeginGetCredentialOption(@NonNull String, @NonNull String, @NonNull android.os.Bundle); - method public int describeContents(); - method @NonNull public android.os.Bundle getCandidateQueryData(); - method @NonNull public String getId(); - method @NonNull public String getType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class BeginGetCredentialRequest implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getBeginGetCredentialOptions(); - method @Nullable public android.service.credentials.CallingAppInfo getCallingAppInfo(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class BeginGetCredentialRequest.Builder { - ctor public BeginGetCredentialRequest.Builder(); - method @NonNull public android.service.credentials.BeginGetCredentialRequest.Builder addBeginGetCredentialOption(@NonNull android.service.credentials.BeginGetCredentialOption); - method @NonNull public android.service.credentials.BeginGetCredentialRequest build(); - method @NonNull public android.service.credentials.BeginGetCredentialRequest.Builder setBeginGetCredentialOptions(@NonNull java.util.List); - method @NonNull public android.service.credentials.BeginGetCredentialRequest.Builder setCallingAppInfo(@Nullable android.service.credentials.CallingAppInfo); - } - - public final class BeginGetCredentialResponse implements android.os.Parcelable { - ctor public BeginGetCredentialResponse(); - method public int describeContents(); - method @NonNull public java.util.List getActions(); - method @NonNull public java.util.List getAuthenticationActions(); - method @NonNull public java.util.List getCredentialEntries(); - method @Nullable public android.service.credentials.RemoteEntry getRemoteCredentialEntry(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class BeginGetCredentialResponse.Builder { - ctor public BeginGetCredentialResponse.Builder(); - method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder addAction(@NonNull android.service.credentials.Action); - method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder addAuthenticationAction(@NonNull android.service.credentials.Action); - method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder addCredentialEntry(@NonNull android.service.credentials.CredentialEntry); - method @NonNull public android.service.credentials.BeginGetCredentialResponse build(); - method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder setActions(@NonNull java.util.List); - method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder setAuthenticationActions(@NonNull java.util.List); - method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder setCredentialEntries(@NonNull java.util.List); - method @NonNull @RequiresPermission(android.Manifest.permission.PROVIDE_REMOTE_CREDENTIALS) public android.service.credentials.BeginGetCredentialResponse.Builder setRemoteCredentialEntry(@Nullable android.service.credentials.RemoteEntry); - } - - public final class CallingAppInfo implements android.os.Parcelable { - ctor public CallingAppInfo(@NonNull String, @NonNull android.content.pm.SigningInfo); - ctor public CallingAppInfo(@NonNull String, @NonNull android.content.pm.SigningInfo, @Nullable String); - method public int describeContents(); - method @Nullable public String getOrigin(); - method @NonNull public String getPackageName(); - method @NonNull public android.content.pm.SigningInfo getSigningInfo(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class ClearCredentialStateRequest implements android.os.Parcelable { - ctor public ClearCredentialStateRequest(@NonNull android.service.credentials.CallingAppInfo, @NonNull android.os.Bundle); - method public int describeContents(); - method @NonNull public android.service.credentials.CallingAppInfo getCallingAppInfo(); - method @NonNull public android.os.Bundle getData(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CreateCredentialRequest implements android.os.Parcelable { - ctor public CreateCredentialRequest(@NonNull android.service.credentials.CallingAppInfo, @NonNull String, @NonNull android.os.Bundle); - method public int describeContents(); - method @NonNull public android.service.credentials.CallingAppInfo getCallingAppInfo(); - method @NonNull public android.os.Bundle getData(); - method @NonNull public String getType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CreateEntry implements android.os.Parcelable { - ctor public CreateEntry(@NonNull android.app.slice.Slice); - method public int describeContents(); - method @NonNull public android.app.slice.Slice getSlice(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CredentialEntry implements android.os.Parcelable { - ctor public CredentialEntry(@NonNull String, @NonNull String, @NonNull android.app.slice.Slice); - ctor public CredentialEntry(@NonNull android.service.credentials.BeginGetCredentialOption, @NonNull android.app.slice.Slice); - ctor public CredentialEntry(@NonNull String, @NonNull android.app.slice.Slice); - method public int describeContents(); - method @NonNull public String getBeginGetCredentialOptionId(); - method @NonNull public android.app.slice.Slice getSlice(); - method @NonNull public String getType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class CredentialProviderService extends android.app.Service { - ctor public CredentialProviderService(); - method public abstract void onBeginCreateCredential(@NonNull android.service.credentials.BeginCreateCredentialRequest, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); - method public abstract void onBeginGetCredential(@NonNull android.service.credentials.BeginGetCredentialRequest, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); - method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent); - method public abstract void onClearCredentialState(@NonNull android.service.credentials.ClearCredentialStateRequest, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); - field public static final String EXTRA_BEGIN_GET_CREDENTIAL_REQUEST = "android.service.credentials.extra.BEGIN_GET_CREDENTIAL_REQUEST"; - field public static final String EXTRA_BEGIN_GET_CREDENTIAL_RESPONSE = "android.service.credentials.extra.BEGIN_GET_CREDENTIAL_RESPONSE"; - field public static final String EXTRA_CREATE_CREDENTIAL_EXCEPTION = "android.service.credentials.extra.CREATE_CREDENTIAL_EXCEPTION"; - field public static final String EXTRA_CREATE_CREDENTIAL_REQUEST = "android.service.credentials.extra.CREATE_CREDENTIAL_REQUEST"; - field public static final String EXTRA_CREATE_CREDENTIAL_RESPONSE = "android.service.credentials.extra.CREATE_CREDENTIAL_RESPONSE"; - field public static final String EXTRA_GET_CREDENTIAL_EXCEPTION = "android.service.credentials.extra.GET_CREDENTIAL_EXCEPTION"; - field public static final String EXTRA_GET_CREDENTIAL_REQUEST = "android.service.credentials.extra.GET_CREDENTIAL_REQUEST"; - field public static final String EXTRA_GET_CREDENTIAL_RESPONSE = "android.service.credentials.extra.GET_CREDENTIAL_RESPONSE"; - field public static final String SERVICE_INTERFACE = "android.service.credentials.CredentialProviderService"; - field public static final String SERVICE_META_DATA = "android.credentials.provider"; - } - - public final class GetCredentialRequest implements android.os.Parcelable { - ctor public GetCredentialRequest(@NonNull android.service.credentials.CallingAppInfo, @NonNull java.util.List); - method public int describeContents(); - method @NonNull public android.service.credentials.CallingAppInfo getCallingAppInfo(); - method @NonNull public java.util.List getCredentialOptions(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class RemoteEntry implements android.os.Parcelable { - ctor public RemoteEntry(@NonNull android.app.slice.Slice); - method public int describeContents(); - method @NonNull public android.app.slice.Slice getSlice(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.service.dreams { - - public class DreamService extends android.app.Service implements android.view.Window.Callback { - ctor public DreamService(); - method public void addContentView(android.view.View, android.view.ViewGroup.LayoutParams); - method public boolean dispatchGenericMotionEvent(android.view.MotionEvent); - method public boolean dispatchKeyEvent(android.view.KeyEvent); - method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent); - method public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); - method public boolean dispatchTouchEvent(android.view.MotionEvent); - method public boolean dispatchTrackballEvent(android.view.MotionEvent); - method public T findViewById(@IdRes int); - method public final void finish(); - method public android.view.Window getWindow(); - method public android.view.WindowManager getWindowManager(); - method public boolean isFullscreen(); - method public boolean isInteractive(); - method public boolean isScreenBright(); - method public void onActionModeFinished(android.view.ActionMode); - method public void onActionModeStarted(android.view.ActionMode); - method public void onAttachedToWindow(); - method public final android.os.IBinder onBind(android.content.Intent); - method public void onContentChanged(); - method public boolean onCreatePanelMenu(int, android.view.Menu); - method public android.view.View onCreatePanelView(int); - method public void onDetachedFromWindow(); - method public void onDreamingStarted(); - method public void onDreamingStopped(); - method public boolean onMenuItemSelected(int, android.view.MenuItem); - method public boolean onMenuOpened(int, android.view.Menu); - method public void onPanelClosed(int, android.view.Menu); - method public boolean onPreparePanel(int, android.view.View, android.view.Menu); - method public boolean onSearchRequested(android.view.SearchEvent); - method public boolean onSearchRequested(); - method public void onWakeUp(); - method public void onWindowAttributesChanged(android.view.WindowManager.LayoutParams); - method public void onWindowFocusChanged(boolean); - method public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback); - method public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int); - method @NonNull public final T requireViewById(@IdRes int); - method public void setContentView(@LayoutRes int); - method public void setContentView(android.view.View); - method public void setContentView(android.view.View, android.view.ViewGroup.LayoutParams); - method public void setFullscreen(boolean); - method public void setInteractive(boolean); - method public void setScreenBright(boolean); - method public final void wakeUp(); - field public static final String DREAM_META_DATA = "android.service.dream"; - field public static final String SERVICE_INTERFACE = "android.service.dreams.DreamService"; - } - -} - -package android.service.media { - - public abstract class CameraPrewarmService extends android.app.Service { - ctor public CameraPrewarmService(); - method public android.os.IBinder onBind(android.content.Intent); - method public abstract void onCooldown(boolean); - method public abstract void onPrewarm(); - } - - public abstract class MediaBrowserService extends android.app.Service { - ctor public MediaBrowserService(); - method public void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]); - method public final android.os.Bundle getBrowserRootHints(); - method public final android.media.session.MediaSessionManager.RemoteUserInfo getCurrentBrowserInfo(); - method @Nullable public android.media.session.MediaSession.Token getSessionToken(); - method public void notifyChildrenChanged(@NonNull String); - method public void notifyChildrenChanged(@NonNull String, @NonNull android.os.Bundle); - method public android.os.IBinder onBind(android.content.Intent); - method @Nullable public abstract android.service.media.MediaBrowserService.BrowserRoot onGetRoot(@NonNull String, int, @Nullable android.os.Bundle); - method public abstract void onLoadChildren(@NonNull String, @NonNull android.service.media.MediaBrowserService.Result>); - method public void onLoadChildren(@NonNull String, @NonNull android.service.media.MediaBrowserService.Result>, @NonNull android.os.Bundle); - method public void onLoadItem(String, android.service.media.MediaBrowserService.Result); - method public void setSessionToken(android.media.session.MediaSession.Token); - field public static final String SERVICE_INTERFACE = "android.media.browse.MediaBrowserService"; - } - - public static final class MediaBrowserService.BrowserRoot { - ctor public MediaBrowserService.BrowserRoot(@NonNull String, @Nullable android.os.Bundle); - method public android.os.Bundle getExtras(); - method public String getRootId(); - field public static final String EXTRA_OFFLINE = "android.service.media.extra.OFFLINE"; - field public static final String EXTRA_RECENT = "android.service.media.extra.RECENT"; - field public static final String EXTRA_SUGGESTED = "android.service.media.extra.SUGGESTED"; - } - - public class MediaBrowserService.Result { - method public void detach(); - method public void sendResult(T); - } - -} - -package android.service.notification { - - public final class Condition implements android.os.Parcelable { - ctor public Condition(android.net.Uri, String, int); - ctor @FlaggedApi("android.app.modes_api") public Condition(@Nullable android.net.Uri, @Nullable String, int, int); - ctor public Condition(android.net.Uri, String, String, String, int, int, int); - ctor @FlaggedApi("android.app.modes_api") public Condition(@Nullable android.net.Uri, @Nullable String, @Nullable String, @Nullable String, int, int, int, int); - ctor public Condition(android.os.Parcel); - method public android.service.notification.Condition copy(); - method public int describeContents(); - method public static boolean isValidId(android.net.Uri, String); - method public static android.net.Uri.Builder newId(android.content.Context); - method public static String relevanceToString(int); - method public static String stateToString(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_RELEVANT_ALWAYS = 2; // 0x2 - field public static final int FLAG_RELEVANT_NOW = 1; // 0x1 - field public static final String SCHEME = "condition"; - field @FlaggedApi("android.app.modes_api") public static final int SOURCE_CONTEXT = 3; // 0x3 - field @FlaggedApi("android.app.modes_api") public static final int SOURCE_SCHEDULE = 2; // 0x2 - field @FlaggedApi("android.app.modes_api") public static final int SOURCE_UNKNOWN = 0; // 0x0 - field @FlaggedApi("android.app.modes_api") public static final int SOURCE_USER_ACTION = 1; // 0x1 - field public static final int STATE_ERROR = 3; // 0x3 - field public static final int STATE_FALSE = 0; // 0x0 - field public static final int STATE_TRUE = 1; // 0x1 - field public static final int STATE_UNKNOWN = 2; // 0x2 - field public final int flags; - field public final int icon; - field public final android.net.Uri id; - field public final String line1; - field public final String line2; - field @FlaggedApi("android.app.modes_api") public final int source; - field public final int state; - field public final String summary; - } - - @Deprecated public abstract class ConditionProviderService extends android.app.Service { - ctor @Deprecated public ConditionProviderService(); - method @Deprecated public final void notifyCondition(android.service.notification.Condition); - method @Deprecated public final void notifyConditions(android.service.notification.Condition...); - method @Deprecated public android.os.IBinder onBind(android.content.Intent); - method @Deprecated public abstract void onConnected(); - method @Deprecated public void onRequestConditions(int); - method @Deprecated public abstract void onSubscribe(android.net.Uri); - method @Deprecated public abstract void onUnsubscribe(android.net.Uri); - method @Deprecated public static final void requestRebind(android.content.ComponentName); - method @Deprecated public final void requestUnbind(); - field @Deprecated public static final String EXTRA_RULE_ID = "android.service.notification.extra.RULE_ID"; - field @Deprecated public static final String META_DATA_CONFIGURATION_ACTIVITY = "android.service.zen.automatic.configurationActivity"; - field @Deprecated public static final String META_DATA_RULE_INSTANCE_LIMIT = "android.service.zen.automatic.ruleInstanceLimit"; - field @Deprecated public static final String META_DATA_RULE_TYPE = "android.service.zen.automatic.ruleType"; - field @Deprecated public static final String SERVICE_INTERFACE = "android.service.notification.ConditionProviderService"; - } - - public abstract class NotificationListenerService extends android.app.Service { - ctor public NotificationListenerService(); - method public final void cancelAllNotifications(); - method @Deprecated public final void cancelNotification(String, String, int); - method public final void cancelNotification(String); - method public final void cancelNotifications(String[]); - method public final void clearRequestedListenerHints(); - method @FlaggedApi("android.service.notification.notification_conversation_channel_management") @Nullable public final android.app.NotificationChannel createConversationNotificationChannelForPackage(@NonNull String, @NonNull android.os.UserHandle, @NonNull String, @NonNull String); - method public android.service.notification.StatusBarNotification[] getActiveNotifications(); - method public android.service.notification.StatusBarNotification[] getActiveNotifications(String[]); - method public final int getCurrentInterruptionFilter(); - method public final int getCurrentListenerHints(); - method public android.service.notification.NotificationListenerService.RankingMap getCurrentRanking(); - method public final java.util.List getNotificationChannelGroups(@NonNull String, @NonNull android.os.UserHandle); - method public final java.util.List getNotificationChannels(@NonNull String, @NonNull android.os.UserHandle); - method public final android.service.notification.StatusBarNotification[] getSnoozedNotifications(); - method public final void migrateNotificationFilter(int, @Nullable java.util.List); - method public android.os.IBinder onBind(android.content.Intent); - method @UiThread public void onInterruptionFilterChanged(int); - method @UiThread public void onListenerConnected(); - method @UiThread public void onListenerDisconnected(); - method @UiThread public void onListenerHintsChanged(int); - method @UiThread public void onNotificationChannelGroupModified(String, android.os.UserHandle, android.app.NotificationChannelGroup, int); - method @UiThread public void onNotificationChannelModified(String, android.os.UserHandle, android.app.NotificationChannel, int); - method @UiThread public void onNotificationPosted(android.service.notification.StatusBarNotification); - method @UiThread public void onNotificationPosted(android.service.notification.StatusBarNotification, android.service.notification.NotificationListenerService.RankingMap); - method @UiThread public void onNotificationRankingUpdate(android.service.notification.NotificationListenerService.RankingMap); - method @UiThread public void onNotificationRemoved(android.service.notification.StatusBarNotification); - method @UiThread public void onNotificationRemoved(android.service.notification.StatusBarNotification, android.service.notification.NotificationListenerService.RankingMap); - method @UiThread public void onNotificationRemoved(android.service.notification.StatusBarNotification, android.service.notification.NotificationListenerService.RankingMap, int); - method @UiThread public void onSilentStatusBarIconsVisibilityChanged(boolean); - method public final void requestInterruptionFilter(int); - method public final void requestListenerHints(int); - method public static void requestRebind(android.content.ComponentName); - method public static void requestUnbind(@NonNull android.content.ComponentName); - method public final void requestUnbind(); - method public final void setNotificationsShown(String[]); - method public final void snoozeNotification(String, long); - method public final void updateNotificationChannel(@NonNull String, @NonNull android.os.UserHandle, @NonNull android.app.NotificationChannel); - field public static final String ACTION_SETTINGS_HOME = "android.service.notification.action.SETTINGS_HOME"; - field public static final int FLAG_FILTER_TYPE_ALERTING = 2; // 0x2 - field public static final int FLAG_FILTER_TYPE_CONVERSATIONS = 1; // 0x1 - field public static final int FLAG_FILTER_TYPE_ONGOING = 8; // 0x8 - field public static final int FLAG_FILTER_TYPE_SILENT = 4; // 0x4 - field public static final int HINT_HOST_DISABLE_CALL_EFFECTS = 4; // 0x4 - field public static final int HINT_HOST_DISABLE_EFFECTS = 1; // 0x1 - field public static final int HINT_HOST_DISABLE_NOTIFICATION_EFFECTS = 2; // 0x2 - field public static final int INTERRUPTION_FILTER_ALARMS = 4; // 0x4 - field public static final int INTERRUPTION_FILTER_ALL = 1; // 0x1 - field public static final int INTERRUPTION_FILTER_NONE = 3; // 0x3 - field public static final int INTERRUPTION_FILTER_PRIORITY = 2; // 0x2 - field public static final int INTERRUPTION_FILTER_UNKNOWN = 0; // 0x0 - field public static final String META_DATA_DEFAULT_AUTOBIND = "android.service.notification.default_autobind_listenerservice"; - field public static final String META_DATA_DEFAULT_FILTER_TYPES = "android.service.notification.default_filter_types"; - field public static final String META_DATA_DISABLED_FILTER_TYPES = "android.service.notification.disabled_filter_types"; - field public static final int NOTIFICATION_CHANNEL_OR_GROUP_ADDED = 1; // 0x1 - field public static final int NOTIFICATION_CHANNEL_OR_GROUP_DELETED = 3; // 0x3 - field public static final int NOTIFICATION_CHANNEL_OR_GROUP_UPDATED = 2; // 0x2 - field public static final int REASON_APP_CANCEL = 8; // 0x8 - field public static final int REASON_APP_CANCEL_ALL = 9; // 0x9 - field public static final int REASON_ASSISTANT_CANCEL = 22; // 0x16 - field public static final int REASON_CANCEL = 2; // 0x2 - field public static final int REASON_CANCEL_ALL = 3; // 0x3 - field public static final int REASON_CHANNEL_BANNED = 17; // 0x11 - field public static final int REASON_CHANNEL_REMOVED = 20; // 0x14 - field public static final int REASON_CLEAR_DATA = 21; // 0x15 - field public static final int REASON_CLICK = 1; // 0x1 - field public static final int REASON_ERROR = 4; // 0x4 - field public static final int REASON_GROUP_OPTIMIZATION = 13; // 0xd - field public static final int REASON_GROUP_SUMMARY_CANCELED = 12; // 0xc - field public static final int REASON_LISTENER_CANCEL = 10; // 0xa - field public static final int REASON_LISTENER_CANCEL_ALL = 11; // 0xb - field public static final int REASON_LOCKDOWN = 23; // 0x17 - field public static final int REASON_PACKAGE_BANNED = 7; // 0x7 - field public static final int REASON_PACKAGE_CHANGED = 5; // 0x5 - field public static final int REASON_PACKAGE_SUSPENDED = 14; // 0xe - field public static final int REASON_PROFILE_TURNED_OFF = 15; // 0xf - field public static final int REASON_SNOOZED = 18; // 0x12 - field public static final int REASON_TIMEOUT = 19; // 0x13 - field public static final int REASON_UNAUTOBUNDLED = 16; // 0x10 - field public static final int REASON_USER_STOPPED = 6; // 0x6 - field public static final String SERVICE_INTERFACE = "android.service.notification.NotificationListenerService"; - field @Deprecated public static final int SUPPRESSED_EFFECT_SCREEN_OFF = 1; // 0x1 - field @Deprecated public static final int SUPPRESSED_EFFECT_SCREEN_ON = 2; // 0x2 - } - - public static class NotificationListenerService.Ranking { - ctor public NotificationListenerService.Ranking(); - method public boolean canBubble(); - method public boolean canShowBadge(); - method public android.app.NotificationChannel getChannel(); - method @Nullable public android.content.pm.ShortcutInfo getConversationShortcutInfo(); - method public int getImportance(); - method public CharSequence getImportanceExplanation(); - method public String getKey(); - method public long getLastAudiblyAlertedMillis(); - method public int getLockscreenVisibilityOverride(); - method public String getOverrideGroupKey(); - method public int getRank(); - method @NonNull public java.util.List getSmartActions(); - method @NonNull public java.util.List getSmartReplies(); - method public int getSuppressedVisualEffects(); - method public int getUserSentiment(); - method public boolean isAmbient(); - method public boolean isConversation(); - method public boolean isSuspended(); - method public boolean matchesInterruptionFilter(); - field public static final int USER_SENTIMENT_NEGATIVE = -1; // 0xffffffff - field public static final int USER_SENTIMENT_NEUTRAL = 0; // 0x0 - field public static final int USER_SENTIMENT_POSITIVE = 1; // 0x1 - field public static final int VISIBILITY_NO_OVERRIDE = -1000; // 0xfffffc18 - } - - public static class NotificationListenerService.RankingMap implements android.os.Parcelable { - method public int describeContents(); - method public String[] getOrderedKeys(); - method public boolean getRanking(String, android.service.notification.NotificationListenerService.Ranking); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class StatusBarNotification implements android.os.Parcelable { - ctor @Deprecated public StatusBarNotification(String, String, int, String, int, int, int, android.app.Notification, android.os.UserHandle, long); - ctor public StatusBarNotification(android.os.Parcel); - method public android.service.notification.StatusBarNotification clone(); - method public int describeContents(); - method public String getGroupKey(); - method public int getId(); - method public String getKey(); - method public android.app.Notification getNotification(); - method @NonNull public String getOpPkg(); - method public String getOverrideGroupKey(); - method public String getPackageName(); - method public long getPostTime(); - method public String getTag(); - method public int getUid(); - method public android.os.UserHandle getUser(); - method @Deprecated public int getUserId(); - method public boolean isAppGroup(); - method public boolean isClearable(); - method public boolean isGroup(); - method public boolean isOngoing(); - method public void setOverrideGroupKey(String); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.app.modes_api") public final class ZenDeviceEffects implements android.os.Parcelable { - method public int describeContents(); - method public boolean shouldDimWallpaper(); - method public boolean shouldDisplayGrayscale(); - method public boolean shouldSuppressAmbientDisplay(); - method public boolean shouldUseNightMode(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.app.modes_api") public static final class ZenDeviceEffects.Builder { - ctor public ZenDeviceEffects.Builder(); - ctor public ZenDeviceEffects.Builder(@NonNull android.service.notification.ZenDeviceEffects); - method @NonNull public android.service.notification.ZenDeviceEffects build(); - method @NonNull public android.service.notification.ZenDeviceEffects.Builder setShouldDimWallpaper(boolean); - method @NonNull public android.service.notification.ZenDeviceEffects.Builder setShouldDisplayGrayscale(boolean); - method @NonNull public android.service.notification.ZenDeviceEffects.Builder setShouldSuppressAmbientDisplay(boolean); - method @NonNull public android.service.notification.ZenDeviceEffects.Builder setShouldUseNightMode(boolean); - } - - public final class ZenPolicy implements android.os.Parcelable { - method public int describeContents(); - method public int getPriorityCallSenders(); - method public int getPriorityCategoryAlarms(); - method public int getPriorityCategoryCalls(); - method public int getPriorityCategoryConversations(); - method public int getPriorityCategoryEvents(); - method public int getPriorityCategoryMedia(); - method public int getPriorityCategoryMessages(); - method public int getPriorityCategoryReminders(); - method public int getPriorityCategoryRepeatCallers(); - method public int getPriorityCategorySystem(); - method @FlaggedApi("android.app.modes_api") public int getPriorityChannelsAllowed(); - method public int getPriorityConversationSenders(); - method public int getPriorityMessageSenders(); - method public int getVisualEffectAmbient(); - method public int getVisualEffectBadge(); - method public int getVisualEffectFullScreenIntent(); - method public int getVisualEffectLights(); - method public int getVisualEffectNotificationList(); - method public int getVisualEffectPeek(); - method public int getVisualEffectStatusBar(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CONVERSATION_SENDERS_ANYONE = 1; // 0x1 - field public static final int CONVERSATION_SENDERS_IMPORTANT = 2; // 0x2 - field public static final int CONVERSATION_SENDERS_NONE = 3; // 0x3 - field public static final int CONVERSATION_SENDERS_UNSET = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int PEOPLE_TYPE_ANYONE = 1; // 0x1 - field public static final int PEOPLE_TYPE_CONTACTS = 2; // 0x2 - field public static final int PEOPLE_TYPE_NONE = 4; // 0x4 - field public static final int PEOPLE_TYPE_STARRED = 3; // 0x3 - field public static final int PEOPLE_TYPE_UNSET = 0; // 0x0 - field public static final int STATE_ALLOW = 1; // 0x1 - field public static final int STATE_DISALLOW = 2; // 0x2 - field public static final int STATE_UNSET = 0; // 0x0 - } - - public static final class ZenPolicy.Builder { - ctor public ZenPolicy.Builder(); - method @NonNull public android.service.notification.ZenPolicy.Builder allowAlarms(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder allowAllSounds(); - method @NonNull public android.service.notification.ZenPolicy.Builder allowCalls(int); - method @NonNull public android.service.notification.ZenPolicy.Builder allowConversations(int); - method @NonNull public android.service.notification.ZenPolicy.Builder allowEvents(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder allowMedia(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder allowMessages(int); - method @FlaggedApi("android.app.modes_api") @NonNull public android.service.notification.ZenPolicy.Builder allowPriorityChannels(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder allowReminders(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder allowRepeatCallers(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder allowSystem(boolean); - method @NonNull public android.service.notification.ZenPolicy build(); - method @NonNull public android.service.notification.ZenPolicy.Builder disallowAllSounds(); - method @NonNull public android.service.notification.ZenPolicy.Builder hideAllVisualEffects(); - method @NonNull public android.service.notification.ZenPolicy.Builder showAllVisualEffects(); - method @NonNull public android.service.notification.ZenPolicy.Builder showBadges(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder showFullScreenIntent(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder showInAmbientDisplay(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder showInNotificationList(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder showLights(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder showPeeking(boolean); - method @NonNull public android.service.notification.ZenPolicy.Builder showStatusBarIcons(boolean); - } - -} - -package android.service.persistentdata { - - @FlaggedApi("android.security.frp_enforcement") public class PersistentDataBlockManager { - method @FlaggedApi("android.security.frp_enforcement") public boolean isFactoryResetProtectionActive(); - } - -} - -package android.service.quickaccesswallet { - - public interface GetWalletCardsCallback { - method public void onFailure(@NonNull android.service.quickaccesswallet.GetWalletCardsError); - method public void onSuccess(@NonNull android.service.quickaccesswallet.GetWalletCardsResponse); - } - - public final class GetWalletCardsError implements android.os.Parcelable { - ctor public GetWalletCardsError(@Nullable android.graphics.drawable.Icon, @Nullable CharSequence); - method public int describeContents(); - method @Nullable public android.graphics.drawable.Icon getIcon(); - method @Nullable public CharSequence getMessage(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class GetWalletCardsRequest implements android.os.Parcelable { - ctor public GetWalletCardsRequest(int, int, int, int); - method public int describeContents(); - method public int getCardHeightPx(); - method public int getCardWidthPx(); - method public int getIconSizePx(); - method public int getMaxCards(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class GetWalletCardsResponse implements android.os.Parcelable { - ctor public GetWalletCardsResponse(@NonNull java.util.List, int); - method public int describeContents(); - method public int getSelectedIndex(); - method @NonNull public java.util.List getWalletCards(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class QuickAccessWalletService extends android.app.Service { - ctor public QuickAccessWalletService(); - method @FlaggedApi("android.service.quickaccesswallet.launch_wallet_option_on_power_double_tap") @Nullable public android.app.PendingIntent getGestureTargetActivityPendingIntent(); - method @Nullable public android.app.PendingIntent getTargetActivityPendingIntent(); - method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); - method public abstract void onWalletCardSelected(@NonNull android.service.quickaccesswallet.SelectWalletCardRequest); - method public abstract void onWalletCardsRequested(@NonNull android.service.quickaccesswallet.GetWalletCardsRequest, @NonNull android.service.quickaccesswallet.GetWalletCardsCallback); - method public abstract void onWalletDismissed(); - method public final void sendWalletServiceEvent(@NonNull android.service.quickaccesswallet.WalletServiceEvent); - field public static final String ACTION_VIEW_WALLET = "android.service.quickaccesswallet.action.VIEW_WALLET"; - field public static final String ACTION_VIEW_WALLET_SETTINGS = "android.service.quickaccesswallet.action.VIEW_WALLET_SETTINGS"; - field public static final String SERVICE_INTERFACE = "android.service.quickaccesswallet.QuickAccessWalletService"; - field public static final String SERVICE_META_DATA = "android.quickaccesswallet"; - } - - public final class SelectWalletCardRequest implements android.os.Parcelable { - ctor public SelectWalletCardRequest(@NonNull String); - method public int describeContents(); - method @NonNull public String getCardId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class WalletCard implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.graphics.drawable.Icon getCardIcon(); - method @NonNull public String getCardId(); - method @NonNull public android.graphics.drawable.Icon getCardImage(); - method @Nullable public CharSequence getCardLabel(); - method @NonNull public java.util.List getCardLocations(); - method @NonNull public int getCardType(); - method @NonNull public CharSequence getContentDescription(); - method @Nullable public android.graphics.drawable.Icon getNonPaymentCardSecondaryImage(); - method @NonNull public android.app.PendingIntent getPendingIntent(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CARD_TYPE_NON_PAYMENT = 2; // 0x2 - field public static final int CARD_TYPE_PAYMENT = 1; // 0x1 - field public static final int CARD_TYPE_UNKNOWN = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class WalletCard.Builder { - ctor public WalletCard.Builder(@NonNull String, @NonNull int, @NonNull android.graphics.drawable.Icon, @NonNull CharSequence, @NonNull android.app.PendingIntent); - ctor public WalletCard.Builder(@NonNull String, @NonNull android.graphics.drawable.Icon, @NonNull CharSequence, @NonNull android.app.PendingIntent); - method @NonNull public android.service.quickaccesswallet.WalletCard build(); - method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setCardIcon(@Nullable android.graphics.drawable.Icon); - method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setCardLabel(@Nullable CharSequence); - method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setCardLocations(@NonNull java.util.List); - method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setNonPaymentCardSecondaryImage(@Nullable android.graphics.drawable.Icon); - } - - public final class WalletServiceEvent implements android.os.Parcelable { - ctor public WalletServiceEvent(int); - method public int describeContents(); - method public int getEventType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_NFC_PAYMENT_STARTED = 1; // 0x1 - } - -} - -package android.service.quicksettings { - - public final class Tile implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.app.PendingIntent getActivityLaunchForClick(); - method public CharSequence getContentDescription(); - method public android.graphics.drawable.Icon getIcon(); - method public CharSequence getLabel(); - method public int getState(); - method @Nullable public CharSequence getStateDescription(); - method @Nullable public CharSequence getSubtitle(); - method public void setActivityLaunchForClick(@Nullable android.app.PendingIntent); - method public void setContentDescription(CharSequence); - method public void setIcon(android.graphics.drawable.Icon); - method public void setLabel(CharSequence); - method public void setState(int); - method public void setStateDescription(@Nullable CharSequence); - method public void setSubtitle(@Nullable CharSequence); - method public void updateTile(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STATE_ACTIVE = 2; // 0x2 - field public static final int STATE_INACTIVE = 1; // 0x1 - field public static final int STATE_UNAVAILABLE = 0; // 0x0 - } - - public class TileService extends android.app.Service { - ctor public TileService(); - method public final android.service.quicksettings.Tile getQsTile(); - method public final boolean isLocked(); - method public final boolean isSecure(); - method public android.os.IBinder onBind(android.content.Intent); - method public void onClick(); - method public void onStartListening(); - method public void onStopListening(); - method public void onTileAdded(); - method public void onTileRemoved(); - method public static final void requestListeningState(android.content.Context, android.content.ComponentName); - method public final void showDialog(android.app.Dialog); - method @Deprecated public final void startActivityAndCollapse(android.content.Intent); - method public final void startActivityAndCollapse(@NonNull android.app.PendingIntent); - method public final void unlockAndRun(Runnable); - field public static final String ACTION_QS_TILE = "android.service.quicksettings.action.QS_TILE"; - field public static final String ACTION_QS_TILE_PREFERENCES = "android.service.quicksettings.action.QS_TILE_PREFERENCES"; - field public static final String META_DATA_ACTIVE_TILE = "android.service.quicksettings.ACTIVE_TILE"; - field public static final String META_DATA_TOGGLEABLE_TILE = "android.service.quicksettings.TOGGLEABLE_TILE"; - } - -} - -package android.service.restrictions { - - public abstract class RestrictionsReceiver extends android.content.BroadcastReceiver { - ctor public RestrictionsReceiver(); - method public void onReceive(android.content.Context, android.content.Intent); - method public abstract void onRequestPermission(android.content.Context, String, String, String, android.os.PersistableBundle); - } - -} - -package android.service.settings.preferences { - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class GetValueRequest implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getPreferenceKey(); - method @NonNull public String getScreenKey(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class GetValueRequest.Builder { - ctor public GetValueRequest.Builder(@NonNull String, @NonNull String); - method @NonNull public android.service.settings.preferences.GetValueRequest build(); - } - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class GetValueResult implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.service.settings.preferences.SettingsPreferenceMetadata getMetadata(); - method public int getResultCode(); - method @Nullable public android.service.settings.preferences.SettingsPreferenceValue getValue(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int RESULT_DISALLOW = 4; // 0x4 - field public static final int RESULT_INTERNAL_ERROR = 6; // 0x6 - field public static final int RESULT_INVALID_REQUEST = 5; // 0x5 - field public static final int RESULT_OK = 0; // 0x0 - field public static final int RESULT_REQUIRE_APP_PERMISSION = 3; // 0x3 - field public static final int RESULT_UNAVAILABLE = 2; // 0x2 - field public static final int RESULT_UNSUPPORTED = 1; // 0x1 - } - - public static final class GetValueResult.Builder { - ctor public GetValueResult.Builder(int); - method @NonNull public android.service.settings.preferences.GetValueResult build(); - method @NonNull public android.service.settings.preferences.GetValueResult.Builder setMetadata(@Nullable android.service.settings.preferences.SettingsPreferenceMetadata); - method @NonNull public android.service.settings.preferences.GetValueResult.Builder setValue(@Nullable android.service.settings.preferences.SettingsPreferenceValue); - } - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class MetadataRequest implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class MetadataRequest.Builder { - ctor public MetadataRequest.Builder(); - method @NonNull public android.service.settings.preferences.MetadataRequest build(); - } - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class MetadataResult implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getMetadataList(); - method public int getResultCode(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int RESULT_INTERNAL_ERROR = 2; // 0x2 - field public static final int RESULT_OK = 0; // 0x0 - field public static final int RESULT_UNSUPPORTED = 1; // 0x1 - } - - public static final class MetadataResult.Builder { - ctor public MetadataResult.Builder(int); - method @NonNull public android.service.settings.preferences.MetadataResult build(); - method @NonNull public android.service.settings.preferences.MetadataResult.Builder setMetadataList(@NonNull java.util.List); - } - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class SetValueRequest implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getPreferenceKey(); - method @NonNull public android.service.settings.preferences.SettingsPreferenceValue getPreferenceValue(); - method @NonNull public String getScreenKey(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class SetValueRequest.Builder { - ctor public SetValueRequest.Builder(@NonNull String, @NonNull String, @NonNull android.service.settings.preferences.SettingsPreferenceValue); - method @NonNull public android.service.settings.preferences.SetValueRequest build(); - } - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class SetValueResult implements android.os.Parcelable { - method public int describeContents(); - method public int getResultCode(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int RESULT_DISABLED = 2; // 0x2 - field public static final int RESULT_DISALLOW = 7; // 0x7 - field public static final int RESULT_INTERNAL_ERROR = 9; // 0x9 - field public static final int RESULT_INVALID_REQUEST = 8; // 0x8 - field public static final int RESULT_OK = 0; // 0x0 - field public static final int RESULT_REQUIRE_APP_PERMISSION = 5; // 0x5 - field public static final int RESULT_REQUIRE_USER_CONSENT = 6; // 0x6 - field public static final int RESULT_RESTRICTED = 3; // 0x3 - field public static final int RESULT_UNAVAILABLE = 4; // 0x4 - field public static final int RESULT_UNSUPPORTED = 1; // 0x1 - } - - public static final class SetValueResult.Builder { - ctor public SetValueResult.Builder(int); - method @NonNull public android.service.settings.preferences.SetValueResult build(); - } - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class SettingsPreferenceMetadata implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getBreadcrumbs(); - method @NonNull public android.os.Bundle getExtras(); - method @NonNull public String getKey(); - method @Nullable public android.content.Intent getLaunchIntent(); - method @NonNull public java.util.List getReadPermissions(); - method @NonNull public String getScreenKey(); - method @Nullable public String getSummary(); - method @Nullable public String getTitle(); - method @NonNull public java.util.List getWritePermissions(); - method public int getWriteSensitivity(); - method public boolean isAvailable(); - method public boolean isEnabled(); - method public boolean isRestricted(); - method public boolean isWritable(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int EXPECT_POST_CONFIRMATION = 1; // 0x1 - field public static final int EXPECT_PRE_CONFIRMATION = 2; // 0x2 - field public static final int NO_DIRECT_ACCESS = 3; // 0x3 - field public static final int NO_SENSITIVITY = 0; // 0x0 - } - - public static final class SettingsPreferenceMetadata.Builder { - ctor public SettingsPreferenceMetadata.Builder(@NonNull String, @NonNull String); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata build(); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setAvailable(boolean); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setBreadcrumbs(@NonNull java.util.List); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setEnabled(boolean); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setExtras(@NonNull android.os.Bundle); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setLaunchIntent(@Nullable android.content.Intent); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setReadPermissions(@NonNull java.util.List); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setRestricted(boolean); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setSummary(@Nullable String); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setTitle(@Nullable String); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setWritable(boolean); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setWritePermissions(@NonNull java.util.List); - method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setWriteSensitivity(int); - } - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public abstract class SettingsPreferenceService extends android.app.Service { - ctor public SettingsPreferenceService(); - method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent); - method public abstract void onGetAllPreferenceMetadata(@NonNull android.service.settings.preferences.MetadataRequest, @NonNull android.os.OutcomeReceiver); - method public abstract void onGetPreferenceValue(@NonNull android.service.settings.preferences.GetValueRequest, @NonNull android.os.OutcomeReceiver); - method public abstract void onSetPreferenceValue(@NonNull android.service.settings.preferences.SetValueRequest, @NonNull android.os.OutcomeReceiver); - field public static final String ACTION_PREFERENCE_SERVICE = "android.service.settings.preferences.action.PREFERENCE_SERVICE"; - } - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public class SettingsPreferenceServiceClient implements java.lang.AutoCloseable { - ctor public SettingsPreferenceServiceClient(@NonNull android.content.Context, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void close(); - method public void getAllPreferenceMetadata(@NonNull android.service.settings.preferences.MetadataRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void getPreferenceValue(@NonNull android.service.settings.preferences.GetValueRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void setPreferenceValue(@NonNull android.service.settings.preferences.SetValueRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - } - - @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class SettingsPreferenceValue implements android.os.Parcelable { - method public int describeContents(); - method public boolean getBooleanValue(); - method public double getDoubleValue(); - method public int getIntValue(); - method public long getLongValue(); - method @Nullable public String getStringValue(); - method public int getType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_BOOLEAN = 0; // 0x0 - field public static final int TYPE_DOUBLE = 2; // 0x2 - field public static final int TYPE_INT = 4; // 0x4 - field public static final int TYPE_LONG = 1; // 0x1 - field public static final int TYPE_STRING = 3; // 0x3 - } - - public static final class SettingsPreferenceValue.Builder { - ctor public SettingsPreferenceValue.Builder(int); - method @NonNull public android.service.settings.preferences.SettingsPreferenceValue build(); - method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setBooleanValue(boolean); - method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setDoubleValue(double); - method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setIntValue(int); - method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setLongValue(long); - method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setStringValue(@Nullable String); - } - -} - -package android.service.textservice { - - public abstract class SpellCheckerService extends android.app.Service { - ctor public SpellCheckerService(); - method public abstract android.service.textservice.SpellCheckerService.Session createSession(); - method public final android.os.IBinder onBind(android.content.Intent); - field public static final String SERVICE_INTERFACE = "android.service.textservice.SpellCheckerService"; - } - - public abstract static class SpellCheckerService.Session { - ctor public SpellCheckerService.Session(); - method public android.os.Bundle getBundle(); - method public String getLocale(); - method public int getSupportedAttributes(); - method public void onCancel(); - method public void onClose(); - method public abstract void onCreate(); - method public android.view.textservice.SentenceSuggestionsInfo[] onGetSentenceSuggestionsMultiple(android.view.textservice.TextInfo[], int); - method public abstract android.view.textservice.SuggestionsInfo onGetSuggestions(android.view.textservice.TextInfo, int); - method public android.view.textservice.SuggestionsInfo[] onGetSuggestionsMultiple(android.view.textservice.TextInfo[], int, boolean); - } - -} - -package android.service.voice { - - public final class VisibleActivityInfo implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.service.voice.VoiceInteractionSession.ActivityId getActivityId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class VoiceInteractionService extends android.app.Service { - ctor public VoiceInteractionService(); - method public int getDisabledShowContext(); - method public static boolean isActiveService(android.content.Context, android.content.ComponentName); - method public android.os.IBinder onBind(android.content.Intent); - method @NonNull public java.util.Set onGetSupportedVoiceActions(@NonNull java.util.Set); - method public void onLaunchVoiceAssistFromKeyguard(); - method public void onPrepareToShowSession(@NonNull android.os.Bundle, int); - method public void onReady(); - method public void onShowSessionFailed(@NonNull android.os.Bundle); - method public void onShutdown(); - method public void setDisabledShowContext(int); - method public final void setUiHints(@NonNull android.os.Bundle); - method public void showSession(android.os.Bundle, int); - field public static final String SERVICE_INTERFACE = "android.service.voice.VoiceInteractionService"; - field public static final String SERVICE_META_DATA = "android.voice_interaction"; - } - - public class VoiceInteractionSession implements android.content.ComponentCallbacks2 android.view.KeyEvent.Callback { - ctor public VoiceInteractionSession(android.content.Context); - ctor public VoiceInteractionSession(android.content.Context, android.os.Handler); - method public void closeSystemDialogs(); - method public void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); - method public void finish(); - method public android.content.Context getContext(); - method public int getDisabledShowContext(); - method public android.view.LayoutInflater getLayoutInflater(); - method public int getUserDisabledShowContext(); - method public android.app.Dialog getWindow(); - method public void hide(); - method public void onAssistStructureFailure(Throwable); - method public void onBackPressed(); - method public void onCancelRequest(android.service.voice.VoiceInteractionSession.Request); - method public void onCloseSystemDialogs(); - method public void onComputeInsets(android.service.voice.VoiceInteractionSession.Insets); - method public void onConfigurationChanged(android.content.res.Configuration); - method public void onCreate(); - method public android.view.View onCreateContentView(); - method public void onDestroy(); - method public void onDirectActionsInvalidated(@NonNull android.service.voice.VoiceInteractionSession.ActivityId); - method public boolean[] onGetSupportedCommands(String[]); - method @Deprecated public void onHandleAssist(@Nullable android.os.Bundle, @Nullable android.app.assist.AssistStructure, @Nullable android.app.assist.AssistContent); - method public void onHandleAssist(@NonNull android.service.voice.VoiceInteractionSession.AssistState); - method @Deprecated public void onHandleAssistSecondary(@Nullable android.os.Bundle, @Nullable android.app.assist.AssistStructure, @Nullable android.app.assist.AssistContent, int, int); - method public void onHandleScreenshot(@Nullable android.graphics.Bitmap); - method public void onHide(); - method public boolean onKeyDown(int, android.view.KeyEvent); - method public boolean onKeyLongPress(int, android.view.KeyEvent); - method public boolean onKeyMultiple(int, int, android.view.KeyEvent); - method public boolean onKeyUp(int, android.view.KeyEvent); - method public void onLockscreenShown(); - method public void onLowMemory(); - method public void onPrepareShow(android.os.Bundle, int); - method public void onRequestAbortVoice(android.service.voice.VoiceInteractionSession.AbortVoiceRequest); - method public void onRequestCommand(android.service.voice.VoiceInteractionSession.CommandRequest); - method public void onRequestCompleteVoice(android.service.voice.VoiceInteractionSession.CompleteVoiceRequest); - method public void onRequestConfirmation(android.service.voice.VoiceInteractionSession.ConfirmationRequest); - method public void onRequestPickOption(android.service.voice.VoiceInteractionSession.PickOptionRequest); - method public void onShow(@Nullable android.os.Bundle, int); - method public void onTaskFinished(android.content.Intent, int); - method public void onTaskStarted(android.content.Intent, int); - method public void onTrimMemory(int); - method public final void performDirectAction(@NonNull android.app.DirectAction, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public final void registerVisibleActivityCallback(@NonNull java.util.concurrent.Executor, @NonNull android.service.voice.VoiceInteractionSession.VisibleActivityCallback); - method public final void requestDirectActions(@NonNull android.service.voice.VoiceInteractionSession.ActivityId, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer>); - method public void setContentView(android.view.View); - method public void setDisabledShowContext(int); - method public void setKeepAwake(boolean); - method public void setTheme(int); - method public void setUiEnabled(boolean); - method public void show(android.os.Bundle, int); - method public void startAssistantActivity(android.content.Intent); - method public void startAssistantActivity(@NonNull android.content.Intent, @NonNull android.os.Bundle); - method public void startVoiceActivity(android.content.Intent); - method public final void unregisterVisibleActivityCallback(@NonNull android.service.voice.VoiceInteractionSession.VisibleActivityCallback); - field @FlaggedApi("android.service.voice.flags.allow_foreground_activities_in_on_show") public static final String KEY_FOREGROUND_ACTIVITIES = "android.service.voice.FOREGROUND_ACTIVITIES"; - field public static final String KEY_SHOW_SESSION_ID = "android.service.voice.SHOW_SESSION_ID"; - field public static final int SHOW_SOURCE_ACTIVITY = 16; // 0x10 - field public static final int SHOW_SOURCE_APPLICATION = 8; // 0x8 - field public static final int SHOW_SOURCE_ASSIST_GESTURE = 4; // 0x4 - field public static final int SHOW_SOURCE_AUTOMOTIVE_SYSTEM_UI = 128; // 0x80 - field public static final int SHOW_SOURCE_NOTIFICATION = 64; // 0x40 - field public static final int SHOW_SOURCE_PUSH_TO_TALK = 32; // 0x20 - field public static final int SHOW_WITH_ASSIST = 1; // 0x1 - field public static final int SHOW_WITH_SCREENSHOT = 2; // 0x2 - } - - public static final class VoiceInteractionSession.AbortVoiceRequest extends android.service.voice.VoiceInteractionSession.Request { - method @Deprecated @Nullable public CharSequence getMessage(); - method @Nullable public android.app.VoiceInteractor.Prompt getVoicePrompt(); - method public void sendAbortResult(android.os.Bundle); - } - - public static class VoiceInteractionSession.ActivityId { - } - - public static final class VoiceInteractionSession.AssistState { - method @NonNull public android.service.voice.VoiceInteractionSession.ActivityId getActivityId(); - method @Nullable public android.app.assist.AssistContent getAssistContent(); - method @Nullable public android.os.Bundle getAssistData(); - method @Nullable public android.app.assist.AssistStructure getAssistStructure(); - method @IntRange(from=0) public int getCount(); - method @IntRange(from=0xffffffff) public int getIndex(); - method public boolean isFocused(); - } - - public static final class VoiceInteractionSession.CommandRequest extends android.service.voice.VoiceInteractionSession.Request { - method public String getCommand(); - method public void sendIntermediateResult(android.os.Bundle); - method public void sendResult(android.os.Bundle); - } - - public static final class VoiceInteractionSession.CompleteVoiceRequest extends android.service.voice.VoiceInteractionSession.Request { - method @Deprecated @Nullable public CharSequence getMessage(); - method @Nullable public android.app.VoiceInteractor.Prompt getVoicePrompt(); - method public void sendCompleteResult(android.os.Bundle); - } - - public static final class VoiceInteractionSession.ConfirmationRequest extends android.service.voice.VoiceInteractionSession.Request { - method @Deprecated @Nullable public CharSequence getPrompt(); - method @Nullable public android.app.VoiceInteractor.Prompt getVoicePrompt(); - method public void sendConfirmationResult(boolean, android.os.Bundle); - } - - public static final class VoiceInteractionSession.Insets { - ctor public VoiceInteractionSession.Insets(); - field public static final int TOUCHABLE_INSETS_CONTENT = 1; // 0x1 - field public static final int TOUCHABLE_INSETS_FRAME = 0; // 0x0 - field public static final int TOUCHABLE_INSETS_REGION = 3; // 0x3 - field public final android.graphics.Rect contentInsets; - field public int touchableInsets; - field public final android.graphics.Region touchableRegion; - } - - public static final class VoiceInteractionSession.PickOptionRequest extends android.service.voice.VoiceInteractionSession.Request { - method public android.app.VoiceInteractor.PickOptionRequest.Option[] getOptions(); - method @Deprecated @Nullable public CharSequence getPrompt(); - method @Nullable public android.app.VoiceInteractor.Prompt getVoicePrompt(); - method public void sendIntermediatePickOptionResult(android.app.VoiceInteractor.PickOptionRequest.Option[], android.os.Bundle); - method public void sendPickOptionResult(android.app.VoiceInteractor.PickOptionRequest.Option[], android.os.Bundle); - } - - public static class VoiceInteractionSession.Request { - method public void cancel(); - method public String getCallingPackage(); - method public int getCallingUid(); - method public android.os.Bundle getExtras(); - method public boolean isActive(); - } - - public static interface VoiceInteractionSession.VisibleActivityCallback { - method public default void onInvisible(@NonNull android.service.voice.VoiceInteractionSession.ActivityId); - method public default void onVisible(@NonNull android.service.voice.VisibleActivityInfo); - } - - public abstract class VoiceInteractionSessionService extends android.app.Service { - ctor public VoiceInteractionSessionService(); - method public android.os.IBinder onBind(android.content.Intent); - method public abstract android.service.voice.VoiceInteractionSession onNewSession(android.os.Bundle); - } - -} - -package android.service.vr { - - public abstract class VrListenerService extends android.app.Service { - ctor public VrListenerService(); - method public static final boolean isVrModePackageEnabled(@NonNull android.content.Context, @NonNull android.content.ComponentName); - method public android.os.IBinder onBind(android.content.Intent); - method public void onCurrentVrActivityChanged(android.content.ComponentName); - field public static final String SERVICE_INTERFACE = "android.service.vr.VrListenerService"; - } - -} - -package android.service.wallpaper { - - public abstract class WallpaperService extends android.app.Service { - ctor public WallpaperService(); - method public final android.os.IBinder onBind(android.content.Intent); - method @MainThread public abstract android.service.wallpaper.WallpaperService.Engine onCreateEngine(); - method @FlaggedApi("android.app.live_wallpaper_content_handling") @MainThread @Nullable public android.service.wallpaper.WallpaperService.Engine onCreateEngine(@NonNull android.app.wallpaper.WallpaperDescription); - field public static final String SERVICE_INTERFACE = "android.service.wallpaper.WallpaperService"; - field public static final String SERVICE_META_DATA = "android.service.wallpaper"; - } - - public class WallpaperService.Engine { - ctor public WallpaperService.Engine(); - method protected void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); - method public int getDesiredMinimumHeight(); - method public int getDesiredMinimumWidth(); - method @Nullable public android.content.Context getDisplayContext(); - method public android.view.SurfaceHolder getSurfaceHolder(); - method public int getWallpaperFlags(); - method public boolean isPreview(); - method public boolean isVisible(); - method public void notifyColorsChanged(); - method @FlaggedApi("android.app.live_wallpaper_content_handling") @Nullable public android.app.wallpaper.WallpaperDescription onApplyWallpaper(int); - method @MainThread public void onApplyWindowInsets(android.view.WindowInsets); - method @MainThread public android.os.Bundle onCommand(String, int, int, int, android.os.Bundle, boolean); - method @MainThread @Nullable public android.app.WallpaperColors onComputeColors(); - method @MainThread public void onCreate(android.view.SurfaceHolder); - method @MainThread public void onDesiredSizeChanged(int, int); - method @MainThread public void onDestroy(); - method @MainThread public void onOffsetsChanged(float, float, float, float, int, int); - method @MainThread public void onSurfaceChanged(android.view.SurfaceHolder, int, int, int); - method @MainThread public void onSurfaceCreated(android.view.SurfaceHolder); - method @MainThread public void onSurfaceDestroyed(android.view.SurfaceHolder); - method @MainThread public void onSurfaceRedrawNeeded(android.view.SurfaceHolder); - method @MainThread public void onTouchEvent(android.view.MotionEvent); - method @MainThread public void onVisibilityChanged(boolean); - method @MainThread public void onWallpaperFlagsChanged(int); - method @MainThread public void onZoomChanged(@FloatRange(from=0.0f, to=1.0f) float); - method public void setOffsetNotificationsEnabled(boolean); - method public void setTouchEventsEnabled(boolean); - } - -} - -package android.speech { - - public final class AlternativeSpan implements android.os.Parcelable { - ctor public AlternativeSpan(int, int, @NonNull java.util.List); - method public int describeContents(); - method @NonNull public java.util.List getAlternatives(); - method public int getEndPosition(); - method public int getStartPosition(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class AlternativeSpans implements android.os.Parcelable { - ctor public AlternativeSpans(@NonNull java.util.List); - method public int describeContents(); - method @NonNull public java.util.List getSpans(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface ModelDownloadListener { - method public void onError(int); - method public void onProgress(int); - method public void onScheduled(); - method public void onSuccess(); - } - - public interface RecognitionListener { - method public void onBeginningOfSpeech(); - method public void onBufferReceived(byte[]); - method public default void onEndOfSegmentedSession(); - method public void onEndOfSpeech(); - method public void onError(int); - method public void onEvent(int, android.os.Bundle); - method public default void onLanguageDetection(@NonNull android.os.Bundle); - method public void onPartialResults(android.os.Bundle); - method public void onReadyForSpeech(android.os.Bundle); - method public void onResults(android.os.Bundle); - method public void onRmsChanged(float); - method public default void onSegmentResults(@NonNull android.os.Bundle); - } - - public final class RecognitionPart implements android.os.Parcelable { - method public int describeContents(); - method public int getConfidenceLevel(); - method @Nullable public String getFormattedText(); - method @NonNull public String getRawText(); - method public long getTimestampMillis(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CONFIDENCE_LEVEL_HIGH = 5; // 0x5 - field public static final int CONFIDENCE_LEVEL_LOW = 1; // 0x1 - field public static final int CONFIDENCE_LEVEL_MEDIUM = 3; // 0x3 - field public static final int CONFIDENCE_LEVEL_MEDIUM_HIGH = 4; // 0x4 - field public static final int CONFIDENCE_LEVEL_MEDIUM_LOW = 2; // 0x2 - field public static final int CONFIDENCE_LEVEL_UNKNOWN = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class RecognitionPart.Builder { - ctor public RecognitionPart.Builder(@NonNull String); - method @NonNull public android.speech.RecognitionPart build(); - method @NonNull public android.speech.RecognitionPart.Builder setConfidenceLevel(int); - method @NonNull public android.speech.RecognitionPart.Builder setFormattedText(@NonNull String); - method @NonNull public android.speech.RecognitionPart.Builder setRawText(@NonNull String); - method @NonNull public android.speech.RecognitionPart.Builder setTimestampMillis(long); - } - - public abstract class RecognitionService extends android.app.Service { - ctor public RecognitionService(); - method public int getMaxConcurrentSessionsCount(); - method public final android.os.IBinder onBind(android.content.Intent); - method protected abstract void onCancel(android.speech.RecognitionService.Callback); - method public void onCheckRecognitionSupport(@NonNull android.content.Intent, @NonNull android.speech.RecognitionService.SupportCallback); - method public void onCheckRecognitionSupport(@NonNull android.content.Intent, @NonNull android.content.AttributionSource, @NonNull android.speech.RecognitionService.SupportCallback); - method protected abstract void onStartListening(android.content.Intent, android.speech.RecognitionService.Callback); - method protected abstract void onStopListening(android.speech.RecognitionService.Callback); - method public void onTriggerModelDownload(@NonNull android.content.Intent); - method public void onTriggerModelDownload(@NonNull android.content.Intent, @NonNull android.content.AttributionSource); - method public void onTriggerModelDownload(@NonNull android.content.Intent, @NonNull android.content.AttributionSource, @NonNull android.speech.ModelDownloadListener); - field public static final String SERVICE_INTERFACE = "android.speech.RecognitionService"; - field public static final String SERVICE_META_DATA = "android.speech"; - } - - public class RecognitionService.Callback { - method public void beginningOfSpeech() throws android.os.RemoteException; - method public void bufferReceived(byte[]) throws android.os.RemoteException; - method public void endOfSegmentedSession() throws android.os.RemoteException; - method public void endOfSpeech() throws android.os.RemoteException; - method public void error(int) throws android.os.RemoteException; - method @NonNull public android.content.AttributionSource getCallingAttributionSource(); - method public int getCallingUid(); - method public void languageDetection(@NonNull android.os.Bundle); - method public void partialResults(android.os.Bundle) throws android.os.RemoteException; - method public void readyForSpeech(android.os.Bundle) throws android.os.RemoteException; - method public void results(android.os.Bundle) throws android.os.RemoteException; - method public void rmsChanged(float) throws android.os.RemoteException; - method public void segmentResults(@NonNull android.os.Bundle) throws android.os.RemoteException; - } - - public static class RecognitionService.SupportCallback { - method public void onError(int); - method public void onSupportResult(@NonNull android.speech.RecognitionSupport); - } - - public final class RecognitionSupport implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getInstalledOnDeviceLanguages(); - method @NonNull public java.util.List getOnlineLanguages(); - method @NonNull public java.util.List getPendingOnDeviceLanguages(); - method @NonNull public java.util.List getSupportedOnDeviceLanguages(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class RecognitionSupport.Builder { - ctor public RecognitionSupport.Builder(); - method @NonNull public android.speech.RecognitionSupport.Builder addInstalledOnDeviceLanguage(@NonNull String); - method @NonNull public android.speech.RecognitionSupport.Builder addOnlineLanguage(@NonNull String); - method @NonNull public android.speech.RecognitionSupport.Builder addPendingOnDeviceLanguage(@NonNull String); - method @NonNull public android.speech.RecognitionSupport.Builder addSupportedOnDeviceLanguage(@NonNull String); - method @NonNull public android.speech.RecognitionSupport build(); - method @NonNull public android.speech.RecognitionSupport.Builder setInstalledOnDeviceLanguages(@NonNull java.util.List); - method @NonNull public android.speech.RecognitionSupport.Builder setOnlineLanguages(@NonNull java.util.List); - method @NonNull public android.speech.RecognitionSupport.Builder setPendingOnDeviceLanguages(@NonNull java.util.List); - method @NonNull public android.speech.RecognitionSupport.Builder setSupportedOnDeviceLanguages(@NonNull java.util.List); - } - - public interface RecognitionSupportCallback { - method public void onError(int); - method public void onSupportResult(@NonNull android.speech.RecognitionSupport); - } - - public class RecognizerIntent { - method public static final android.content.Intent getVoiceDetailsIntent(android.content.Context); - field public static final String ACTION_GET_LANGUAGE_DETAILS = "android.speech.action.GET_LANGUAGE_DETAILS"; - field public static final String ACTION_RECOGNIZE_SPEECH = "android.speech.action.RECOGNIZE_SPEECH"; - field public static final String ACTION_VOICE_SEARCH_HANDS_FREE = "android.speech.action.VOICE_SEARCH_HANDS_FREE"; - field public static final String ACTION_WEB_SEARCH = "android.speech.action.WEB_SEARCH"; - field public static final String DETAILS_META_DATA = "android.speech.DETAILS"; - field @Deprecated public static final String EXTRA_AUDIO_INJECT_SOURCE = "android.speech.extra.AUDIO_INJECT_SOURCE"; - field public static final String EXTRA_AUDIO_SOURCE = "android.speech.extra.AUDIO_SOURCE"; - field public static final String EXTRA_AUDIO_SOURCE_CHANNEL_COUNT = "android.speech.extra.AUDIO_SOURCE_CHANNEL_COUNT"; - field public static final String EXTRA_AUDIO_SOURCE_ENCODING = "android.speech.extra.AUDIO_SOURCE_ENCODING"; - field public static final String EXTRA_AUDIO_SOURCE_SAMPLING_RATE = "android.speech.extra.AUDIO_SOURCE_SAMPLING_RATE"; - field public static final String EXTRA_BIASING_STRINGS = "android.speech.extra.BIASING_STRINGS"; - field public static final String EXTRA_CALLING_PACKAGE = "calling_package"; - field public static final String EXTRA_CONFIDENCE_SCORES = "android.speech.extra.CONFIDENCE_SCORES"; - field public static final String EXTRA_ENABLE_BIASING_DEVICE_CONTEXT = "android.speech.extra.ENABLE_BIASING_DEVICE_CONTEXT"; - field public static final String EXTRA_ENABLE_FORMATTING = "android.speech.extra.ENABLE_FORMATTING"; - field public static final String EXTRA_ENABLE_LANGUAGE_DETECTION = "android.speech.extra.ENABLE_LANGUAGE_DETECTION"; - field public static final String EXTRA_ENABLE_LANGUAGE_SWITCH = "android.speech.extra.ENABLE_LANGUAGE_SWITCH"; - field public static final String EXTRA_HIDE_PARTIAL_TRAILING_PUNCTUATION = "android.speech.extra.HIDE_PARTIAL_TRAILING_PUNCTUATION"; - field public static final String EXTRA_LANGUAGE = "android.speech.extra.LANGUAGE"; - field public static final String EXTRA_LANGUAGE_DETECTION_ALLOWED_LANGUAGES = "android.speech.extra.LANGUAGE_DETECTION_ALLOWED_LANGUAGES"; - field public static final String EXTRA_LANGUAGE_MODEL = "android.speech.extra.LANGUAGE_MODEL"; - field public static final String EXTRA_LANGUAGE_PREFERENCE = "android.speech.extra.LANGUAGE_PREFERENCE"; - field public static final String EXTRA_LANGUAGE_SWITCH_ALLOWED_LANGUAGES = "android.speech.extra.LANGUAGE_SWITCH_ALLOWED_LANGUAGES"; - field @FlaggedApi("android.speech.flags.multilang_extra_launch") public static final String EXTRA_LANGUAGE_SWITCH_INITIAL_ACTIVE_DURATION_TIME_MILLIS = "android.speech.extra.LANGUAGE_SWITCH_INITIAL_ACTIVE_DURATION_TIME_MILLIS"; - field @FlaggedApi("android.speech.flags.multilang_extra_launch") public static final String EXTRA_LANGUAGE_SWITCH_MAX_SWITCHES = "android.speech.extra.LANGUAGE_SWITCH_MAX_SWITCHES"; - field public static final String EXTRA_MASK_OFFENSIVE_WORDS = "android.speech.extra.MASK_OFFENSIVE_WORDS"; - field public static final String EXTRA_MAX_RESULTS = "android.speech.extra.MAX_RESULTS"; - field public static final String EXTRA_ONLY_RETURN_LANGUAGE_PREFERENCE = "android.speech.extra.ONLY_RETURN_LANGUAGE_PREFERENCE"; - field public static final String EXTRA_ORIGIN = "android.speech.extra.ORIGIN"; - field public static final String EXTRA_PARTIAL_RESULTS = "android.speech.extra.PARTIAL_RESULTS"; - field public static final String EXTRA_PREFER_OFFLINE = "android.speech.extra.PREFER_OFFLINE"; - field public static final String EXTRA_PROMPT = "android.speech.extra.PROMPT"; - field public static final String EXTRA_REQUEST_WORD_CONFIDENCE = "android.speech.extra.REQUEST_WORD_CONFIDENCE"; - field public static final String EXTRA_REQUEST_WORD_TIMING = "android.speech.extra.REQUEST_WORD_TIMING"; - field public static final String EXTRA_RESULTS = "android.speech.extra.RESULTS"; - field public static final String EXTRA_RESULTS_PENDINGINTENT = "android.speech.extra.RESULTS_PENDINGINTENT"; - field public static final String EXTRA_RESULTS_PENDINGINTENT_BUNDLE = "android.speech.extra.RESULTS_PENDINGINTENT_BUNDLE"; - field public static final String EXTRA_SECURE = "android.speech.extras.EXTRA_SECURE"; - field public static final String EXTRA_SEGMENTED_SESSION = "android.speech.extra.SEGMENTED_SESSION"; - field public static final String EXTRA_SPEECH_INPUT_COMPLETE_SILENCE_LENGTH_MILLIS = "android.speech.extras.SPEECH_INPUT_COMPLETE_SILENCE_LENGTH_MILLIS"; - field public static final String EXTRA_SPEECH_INPUT_MINIMUM_LENGTH_MILLIS = "android.speech.extras.SPEECH_INPUT_MINIMUM_LENGTH_MILLIS"; - field public static final String EXTRA_SPEECH_INPUT_POSSIBLY_COMPLETE_SILENCE_LENGTH_MILLIS = "android.speech.extras.SPEECH_INPUT_POSSIBLY_COMPLETE_SILENCE_LENGTH_MILLIS"; - field public static final String EXTRA_SUPPORTED_LANGUAGES = "android.speech.extra.SUPPORTED_LANGUAGES"; - field public static final String EXTRA_WEB_SEARCH_ONLY = "android.speech.extra.WEB_SEARCH_ONLY"; - field public static final String FORMATTING_OPTIMIZE_LATENCY = "latency"; - field public static final String FORMATTING_OPTIMIZE_QUALITY = "quality"; - field public static final String LANGUAGE_MODEL_FREE_FORM = "free_form"; - field public static final String LANGUAGE_MODEL_WEB_SEARCH = "web_search"; - field public static final String LANGUAGE_SWITCH_BALANCED = "balanced"; - field public static final String LANGUAGE_SWITCH_HIGH_PRECISION = "high_precision"; - field public static final String LANGUAGE_SWITCH_QUICK_RESPONSE = "quick_response"; - field public static final int RESULT_AUDIO_ERROR = 5; // 0x5 - field public static final int RESULT_CLIENT_ERROR = 2; // 0x2 - field public static final int RESULT_NETWORK_ERROR = 4; // 0x4 - field public static final int RESULT_NO_MATCH = 1; // 0x1 - field public static final int RESULT_SERVER_ERROR = 3; // 0x3 - } - - public class RecognizerResultsIntent { - field public static final String ACTION_VOICE_SEARCH_RESULTS = "android.speech.action.VOICE_SEARCH_RESULTS"; - field public static final String EXTRA_VOICE_SEARCH_RESULT_HTML = "android.speech.extras.VOICE_SEARCH_RESULT_HTML"; - field public static final String EXTRA_VOICE_SEARCH_RESULT_HTML_BASE_URLS = "android.speech.extras.VOICE_SEARCH_RESULT_HTML_BASE_URLS"; - field public static final String EXTRA_VOICE_SEARCH_RESULT_HTTP_HEADERS = "android.speech.extras.EXTRA_VOICE_SEARCH_RESULT_HTTP_HEADERS"; - field public static final String EXTRA_VOICE_SEARCH_RESULT_STRINGS = "android.speech.extras.VOICE_SEARCH_RESULT_STRINGS"; - field public static final String EXTRA_VOICE_SEARCH_RESULT_URLS = "android.speech.extras.VOICE_SEARCH_RESULT_URLS"; - field public static final String URI_SCHEME_INLINE = "inline"; - } - - public class SpeechRecognizer { - method @MainThread public void cancel(); - method public void checkRecognitionSupport(@NonNull android.content.Intent, @NonNull java.util.concurrent.Executor, @NonNull android.speech.RecognitionSupportCallback); - method @MainThread @NonNull public static android.speech.SpeechRecognizer createOnDeviceSpeechRecognizer(@NonNull android.content.Context); - method @MainThread public static android.speech.SpeechRecognizer createSpeechRecognizer(android.content.Context); - method @MainThread public static android.speech.SpeechRecognizer createSpeechRecognizer(android.content.Context, android.content.ComponentName); - method public void destroy(); - method public static boolean isOnDeviceRecognitionAvailable(@NonNull android.content.Context); - method public static boolean isRecognitionAvailable(@NonNull android.content.Context); - method @MainThread public void setRecognitionListener(android.speech.RecognitionListener); - method @MainThread public void startListening(android.content.Intent); - method @MainThread public void stopListening(); - method public void triggerModelDownload(@NonNull android.content.Intent); - method public void triggerModelDownload(@NonNull android.content.Intent, @NonNull java.util.concurrent.Executor, @NonNull android.speech.ModelDownloadListener); - field public static final String CONFIDENCE_SCORES = "confidence_scores"; - field public static final String DETECTED_LANGUAGE = "detected_language"; - field public static final int ERROR_AUDIO = 3; // 0x3 - field public static final int ERROR_CANNOT_CHECK_SUPPORT = 14; // 0xe - field public static final int ERROR_CANNOT_LISTEN_TO_DOWNLOAD_EVENTS = 15; // 0xf - field public static final int ERROR_CLIENT = 5; // 0x5 - field public static final int ERROR_INSUFFICIENT_PERMISSIONS = 9; // 0x9 - field public static final int ERROR_LANGUAGE_NOT_SUPPORTED = 12; // 0xc - field public static final int ERROR_LANGUAGE_UNAVAILABLE = 13; // 0xd - field public static final int ERROR_NETWORK = 2; // 0x2 - field public static final int ERROR_NETWORK_TIMEOUT = 1; // 0x1 - field public static final int ERROR_NO_MATCH = 7; // 0x7 - field public static final int ERROR_RECOGNIZER_BUSY = 8; // 0x8 - field public static final int ERROR_SERVER = 4; // 0x4 - field public static final int ERROR_SERVER_DISCONNECTED = 11; // 0xb - field public static final int ERROR_SPEECH_TIMEOUT = 6; // 0x6 - field public static final int ERROR_TOO_MANY_REQUESTS = 10; // 0xa - field public static final String LANGUAGE_DETECTION_CONFIDENCE_LEVEL = "language_detection_confidence_level"; - field public static final int LANGUAGE_DETECTION_CONFIDENCE_LEVEL_CONFIDENT = 2; // 0x2 - field public static final int LANGUAGE_DETECTION_CONFIDENCE_LEVEL_HIGHLY_CONFIDENT = 3; // 0x3 - field public static final int LANGUAGE_DETECTION_CONFIDENCE_LEVEL_NOT_CONFIDENT = 1; // 0x1 - field public static final int LANGUAGE_DETECTION_CONFIDENCE_LEVEL_UNKNOWN = 0; // 0x0 - field public static final String LANGUAGE_SWITCH_RESULT = "language_switch_result"; - field public static final int LANGUAGE_SWITCH_RESULT_FAILED = 2; // 0x2 - field public static final int LANGUAGE_SWITCH_RESULT_NOT_ATTEMPTED = 0; // 0x0 - field public static final int LANGUAGE_SWITCH_RESULT_SKIPPED_NO_MODEL = 3; // 0x3 - field public static final int LANGUAGE_SWITCH_RESULT_SUCCEEDED = 1; // 0x1 - field public static final String RECOGNITION_PARTS = "recognition_parts"; - field public static final String RESULTS_ALTERNATIVES = "results_alternatives"; - field public static final String RESULTS_RECOGNITION = "results_recognition"; - field public static final String TOP_LOCALE_ALTERNATIVES = "top_locale_alternatives"; - } - -} - -package android.speech.tts { - - public interface SynthesisCallback { - method public int audioAvailable(byte[], int, int); - method public int done(); - method public void error(); - method public void error(int); - method public int getMaxBufferSize(); - method public boolean hasFinished(); - method public boolean hasStarted(); - method public default void rangeStart(int, int, int); - method public int start(int, int, @IntRange(from=1, to=2) int); - } - - public final class SynthesisRequest { - ctor public SynthesisRequest(String, android.os.Bundle); - ctor public SynthesisRequest(CharSequence, android.os.Bundle); - method public int getCallerUid(); - method public CharSequence getCharSequenceText(); - method public String getCountry(); - method public String getLanguage(); - method public android.os.Bundle getParams(); - method public int getPitch(); - method public int getSpeechRate(); - method @Deprecated public String getText(); - method public String getVariant(); - method public String getVoiceName(); - } - - public class TextToSpeech { - ctor public TextToSpeech(android.content.Context, android.speech.tts.TextToSpeech.OnInitListener); - ctor public TextToSpeech(android.content.Context, android.speech.tts.TextToSpeech.OnInitListener, String); - method public int addEarcon(String, String, @RawRes int); - method @Deprecated public int addEarcon(String, String); - method public int addEarcon(String, java.io.File); - method public int addEarcon(@NonNull String, @NonNull android.net.Uri); - method public int addSpeech(String, String, @RawRes int); - method public int addSpeech(CharSequence, String, @RawRes int); - method public int addSpeech(String, String); - method public int addSpeech(CharSequence, java.io.File); - method public int addSpeech(@NonNull CharSequence, @NonNull android.net.Uri); - method @Deprecated public boolean areDefaultsEnforced(); - method public java.util.Set getAvailableLanguages(); - method public String getDefaultEngine(); - method @Deprecated public java.util.Locale getDefaultLanguage(); - method public android.speech.tts.Voice getDefaultVoice(); - method public java.util.List getEngines(); - method @Deprecated public java.util.Set getFeatures(java.util.Locale); - method @Deprecated public java.util.Locale getLanguage(); - method public static int getMaxSpeechInputLength(); - method public android.speech.tts.Voice getVoice(); - method public java.util.Set getVoices(); - method public int isLanguageAvailable(java.util.Locale); - method public boolean isSpeaking(); - method public int playEarcon(String, int, android.os.Bundle, String); - method @Deprecated public int playEarcon(String, int, java.util.HashMap); - method @Deprecated public int playSilence(long, int, java.util.HashMap); - method public int playSilentUtterance(long, int, String); - method public int setAudioAttributes(android.media.AudioAttributes); - method @Deprecated public int setEngineByPackageName(String); - method public int setLanguage(java.util.Locale); - method @Deprecated public int setOnUtteranceCompletedListener(android.speech.tts.TextToSpeech.OnUtteranceCompletedListener); - method public int setOnUtteranceProgressListener(android.speech.tts.UtteranceProgressListener); - method public int setPitch(float); - method public int setSpeechRate(float); - method public int setVoice(android.speech.tts.Voice); - method public void shutdown(); - method public int speak(CharSequence, int, android.os.Bundle, String); - method @Deprecated public int speak(String, int, java.util.HashMap); - method public int stop(); - method public int synthesizeToFile(@NonNull CharSequence, @NonNull android.os.Bundle, @NonNull android.os.ParcelFileDescriptor, @NonNull String); - method public int synthesizeToFile(CharSequence, android.os.Bundle, java.io.File, String); - method @Deprecated public int synthesizeToFile(String, java.util.HashMap, String); - field public static final String ACTION_TTS_QUEUE_PROCESSING_COMPLETED = "android.speech.tts.TTS_QUEUE_PROCESSING_COMPLETED"; - field public static final int ERROR = -1; // 0xffffffff - field public static final int ERROR_INVALID_REQUEST = -8; // 0xfffffff8 - field public static final int ERROR_NETWORK = -6; // 0xfffffffa - field public static final int ERROR_NETWORK_TIMEOUT = -7; // 0xfffffff9 - field public static final int ERROR_NOT_INSTALLED_YET = -9; // 0xfffffff7 - field public static final int ERROR_OUTPUT = -5; // 0xfffffffb - field public static final int ERROR_SERVICE = -4; // 0xfffffffc - field public static final int ERROR_SYNTHESIS = -3; // 0xfffffffd - field public static final int LANG_AVAILABLE = 0; // 0x0 - field public static final int LANG_COUNTRY_AVAILABLE = 1; // 0x1 - field public static final int LANG_COUNTRY_VAR_AVAILABLE = 2; // 0x2 - field public static final int LANG_MISSING_DATA = -1; // 0xffffffff - field public static final int LANG_NOT_SUPPORTED = -2; // 0xfffffffe - field public static final int QUEUE_ADD = 1; // 0x1 - field public static final int QUEUE_FLUSH = 0; // 0x0 - field public static final int STOPPED = -2; // 0xfffffffe - field public static final int SUCCESS = 0; // 0x0 - } - - public class TextToSpeech.Engine { - ctor public TextToSpeech.Engine(); - field public static final String ACTION_CHECK_TTS_DATA = "android.speech.tts.engine.CHECK_TTS_DATA"; - field public static final String ACTION_GET_SAMPLE_TEXT = "android.speech.tts.engine.GET_SAMPLE_TEXT"; - field public static final String ACTION_INSTALL_TTS_DATA = "android.speech.tts.engine.INSTALL_TTS_DATA"; - field public static final String ACTION_TTS_DATA_INSTALLED = "android.speech.tts.engine.TTS_DATA_INSTALLED"; - field @Deprecated public static final int CHECK_VOICE_DATA_BAD_DATA = -1; // 0xffffffff - field public static final int CHECK_VOICE_DATA_FAIL = 0; // 0x0 - field @Deprecated public static final int CHECK_VOICE_DATA_MISSING_DATA = -2; // 0xfffffffe - field @Deprecated public static final int CHECK_VOICE_DATA_MISSING_VOLUME = -3; // 0xfffffffd - field public static final int CHECK_VOICE_DATA_PASS = 1; // 0x1 - field public static final int DEFAULT_STREAM = 3; // 0x3 - field public static final String EXTRA_AVAILABLE_VOICES = "availableVoices"; - field @Deprecated public static final String EXTRA_CHECK_VOICE_DATA_FOR = "checkVoiceDataFor"; - field public static final String EXTRA_SAMPLE_TEXT = "sampleText"; - field @Deprecated public static final String EXTRA_TTS_DATA_INSTALLED = "dataInstalled"; - field public static final String EXTRA_UNAVAILABLE_VOICES = "unavailableVoices"; - field @Deprecated public static final String EXTRA_VOICE_DATA_FILES = "dataFiles"; - field @Deprecated public static final String EXTRA_VOICE_DATA_FILES_INFO = "dataFilesInfo"; - field @Deprecated public static final String EXTRA_VOICE_DATA_ROOT_DIRECTORY = "dataRoot"; - field public static final String INTENT_ACTION_TTS_SERVICE = "android.intent.action.TTS_SERVICE"; - field @Deprecated public static final String KEY_FEATURE_EMBEDDED_SYNTHESIS = "embeddedTts"; - field public static final String KEY_FEATURE_NETWORK_RETRIES_COUNT = "networkRetriesCount"; - field @Deprecated public static final String KEY_FEATURE_NETWORK_SYNTHESIS = "networkTts"; - field public static final String KEY_FEATURE_NETWORK_TIMEOUT_MS = "networkTimeoutMs"; - field public static final String KEY_FEATURE_NOT_INSTALLED = "notInstalled"; - field public static final String KEY_PARAM_PAN = "pan"; - field public static final String KEY_PARAM_SESSION_ID = "sessionId"; - field public static final String KEY_PARAM_STREAM = "streamType"; - field public static final String KEY_PARAM_UTTERANCE_ID = "utteranceId"; - field public static final String KEY_PARAM_VOLUME = "volume"; - field public static final String SERVICE_META_DATA = "android.speech.tts"; - } - - public static class TextToSpeech.EngineInfo { - ctor public TextToSpeech.EngineInfo(); - field public int icon; - field public String label; - field public String name; - } - - public static interface TextToSpeech.OnInitListener { - method public void onInit(int); - } - - @Deprecated public static interface TextToSpeech.OnUtteranceCompletedListener { - method @Deprecated public void onUtteranceCompleted(String); - } - - public abstract class TextToSpeechService extends android.app.Service { - ctor public TextToSpeechService(); - method public android.os.IBinder onBind(android.content.Intent); - method public String onGetDefaultVoiceNameFor(String, String, String); - method protected java.util.Set onGetFeaturesForLanguage(String, String, String); - method protected abstract String[] onGetLanguage(); - method public java.util.List onGetVoices(); - method protected abstract int onIsLanguageAvailable(String, String, String); - method public int onIsValidVoiceName(String); - method protected abstract int onLoadLanguage(String, String, String); - method public int onLoadVoice(String); - method protected abstract void onStop(); - method protected abstract void onSynthesizeText(android.speech.tts.SynthesisRequest, android.speech.tts.SynthesisCallback); - } - - public abstract class UtteranceProgressListener { - ctor public UtteranceProgressListener(); - method public void onAudioAvailable(String, byte[]); - method public void onBeginSynthesis(String, int, int, int); - method public abstract void onDone(String); - method @Deprecated public abstract void onError(String); - method public void onError(String, int); - method public void onRangeStart(String, int, int, int); - method public abstract void onStart(String); - method public void onStop(String, boolean); - } - - public class Voice implements android.os.Parcelable { - ctor public Voice(String, java.util.Locale, int, int, boolean, java.util.Set); - method public int describeContents(); - method public java.util.Set getFeatures(); - method public int getLatency(); - method public java.util.Locale getLocale(); - method public String getName(); - method public int getQuality(); - method public boolean isNetworkConnectionRequired(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int LATENCY_HIGH = 400; // 0x190 - field public static final int LATENCY_LOW = 200; // 0xc8 - field public static final int LATENCY_NORMAL = 300; // 0x12c - field public static final int LATENCY_VERY_HIGH = 500; // 0x1f4 - field public static final int LATENCY_VERY_LOW = 100; // 0x64 - field public static final int QUALITY_HIGH = 400; // 0x190 - field public static final int QUALITY_LOW = 200; // 0xc8 - field public static final int QUALITY_NORMAL = 300; // 0x12c - field public static final int QUALITY_VERY_HIGH = 500; // 0x1f4 - field public static final int QUALITY_VERY_LOW = 100; // 0x64 - } - -} - -package android.telecom { - - public final class Call { - method public void addConferenceParticipants(@NonNull java.util.List); - method public void answer(int); - method public void conference(android.telecom.Call); - method public void deflect(android.net.Uri); - method public void disconnect(); - method public java.util.List getCannedTextResponses(); - method public java.util.List getChildren(); - method public java.util.List getConferenceableCalls(); - method public android.telecom.Call.Details getDetails(); - method @Nullable public android.telecom.Call getGenericConferenceActiveChildCall(); - method public android.telecom.Call getParent(); - method public String getRemainingPostDialSequence(); - method @Nullable public android.telecom.Call.RttCall getRttCall(); - method @Deprecated public int getState(); - method public android.telecom.InCallService.VideoCall getVideoCall(); - method public void handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle); - method public void hold(); - method public boolean isRttActive(); - method public void mergeConference(); - method public void phoneAccountSelected(android.telecom.PhoneAccountHandle, boolean); - method public void playDtmfTone(char); - method public void postDialContinue(boolean); - method public void pullExternalCall(); - method public void putExtras(android.os.Bundle); - method public void registerCallback(android.telecom.Call.Callback); - method public void registerCallback(android.telecom.Call.Callback, android.os.Handler); - method public void reject(boolean, String); - method public void reject(int); - method public void removeExtras(java.util.List); - method public void removeExtras(java.lang.String...); - method public void respondToRttRequest(int, boolean); - method public void sendCallEvent(String, android.os.Bundle); - method public void sendRttRequest(); - method public void splitFromConference(); - method public void stopDtmfTone(); - method public void stopRtt(); - method public void swapConference(); - method public void unhold(); - method public void unregisterCallback(android.telecom.Call.Callback); - field @Deprecated public static final String AVAILABLE_PHONE_ACCOUNTS = "selectPhoneAccountAccounts"; - field public static final String EVENT_CLEAR_DIAGNOSTIC_MESSAGE = "android.telecom.event.CLEAR_DIAGNOSTIC_MESSAGE"; - field public static final String EVENT_DISPLAY_DIAGNOSTIC_MESSAGE = "android.telecom.event.DISPLAY_DIAGNOSTIC_MESSAGE"; - field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String EXTRA_ASSERTED_DISPLAY_NAME = "android.telecom.extra.ASSERTED_DISPLAY_NAME"; - field public static final String EXTRA_DIAGNOSTIC_MESSAGE = "android.telecom.extra.DIAGNOSTIC_MESSAGE"; - field public static final String EXTRA_DIAGNOSTIC_MESSAGE_ID = "android.telecom.extra.DIAGNOSTIC_MESSAGE_ID"; - field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String EXTRA_IS_BUSINESS_CALL = "android.telecom.extra.IS_BUSINESS_CALL"; - field public static final String EXTRA_IS_SUPPRESSED_BY_DO_NOT_DISTURB = "android.telecom.extra.IS_SUPPRESSED_BY_DO_NOT_DISTURB"; - field public static final String EXTRA_LAST_EMERGENCY_CALLBACK_TIME_MILLIS = "android.telecom.extra.LAST_EMERGENCY_CALLBACK_TIME_MILLIS"; - field public static final String EXTRA_SILENT_RINGING_REQUESTED = "android.telecom.extra.SILENT_RINGING_REQUESTED"; - field public static final String EXTRA_SUGGESTED_PHONE_ACCOUNTS = "android.telecom.extra.SUGGESTED_PHONE_ACCOUNTS"; - field public static final int REJECT_REASON_DECLINED = 1; // 0x1 - field public static final int REJECT_REASON_UNWANTED = 2; // 0x2 - field public static final int STATE_ACTIVE = 4; // 0x4 - field public static final int STATE_AUDIO_PROCESSING = 12; // 0xc - field public static final int STATE_CONNECTING = 9; // 0x9 - field public static final int STATE_DIALING = 1; // 0x1 - field public static final int STATE_DISCONNECTED = 7; // 0x7 - field public static final int STATE_DISCONNECTING = 10; // 0xa - field public static final int STATE_HOLDING = 3; // 0x3 - field public static final int STATE_NEW = 0; // 0x0 - field public static final int STATE_PULLING_CALL = 11; // 0xb - field public static final int STATE_RINGING = 2; // 0x2 - field public static final int STATE_SELECT_PHONE_ACCOUNT = 8; // 0x8 - field public static final int STATE_SIMULATED_RINGING = 13; // 0xd - } - - public abstract static class Call.Callback { - ctor public Call.Callback(); - method public void onCallDestroyed(android.telecom.Call); - method public void onCannedTextResponsesLoaded(android.telecom.Call, java.util.List); - method public void onChildrenChanged(android.telecom.Call, java.util.List); - method public void onConferenceableCallsChanged(android.telecom.Call, java.util.List); - method public void onConnectionEvent(android.telecom.Call, String, android.os.Bundle); - method public void onDetailsChanged(android.telecom.Call, android.telecom.Call.Details); - method public void onHandoverComplete(android.telecom.Call); - method public void onHandoverFailed(android.telecom.Call, int); - method public void onParentChanged(android.telecom.Call, android.telecom.Call); - method public void onPostDialWait(android.telecom.Call, String); - method public void onRttInitiationFailure(android.telecom.Call, int); - method public void onRttModeChanged(android.telecom.Call, int); - method public void onRttRequest(android.telecom.Call, int); - method public void onRttStatusChanged(android.telecom.Call, boolean, android.telecom.Call.RttCall); - method public void onStateChanged(android.telecom.Call, int); - method public void onVideoCallChanged(android.telecom.Call, android.telecom.InCallService.VideoCall); - field public static final int HANDOVER_FAILURE_DEST_APP_REJECTED = 1; // 0x1 - field public static final int HANDOVER_FAILURE_NOT_SUPPORTED = 2; // 0x2 - field public static final int HANDOVER_FAILURE_ONGOING_EMERGENCY_CALL = 4; // 0x4 - field public static final int HANDOVER_FAILURE_UNKNOWN = 5; // 0x5 - field public static final int HANDOVER_FAILURE_USER_REJECTED = 3; // 0x3 - } - - public static class Call.Details { - method public static boolean can(int, int); - method public boolean can(int); - method public static String capabilitiesToString(int); - method public android.telecom.PhoneAccountHandle getAccountHandle(); - method public int getCallCapabilities(); - method public int getCallDirection(); - method public int getCallProperties(); - method public String getCallerDisplayName(); - method public int getCallerDisplayNamePresentation(); - method public int getCallerNumberVerificationStatus(); - method public final long getConnectTimeMillis(); - method @Nullable public String getContactDisplayName(); - method @Nullable public android.net.Uri getContactPhotoUri(); - method public long getCreationTimeMillis(); - method public android.telecom.DisconnectCause getDisconnectCause(); - method public android.os.Bundle getExtras(); - method public android.telecom.GatewayInfo getGatewayInfo(); - method public android.net.Uri getHandle(); - method public int getHandlePresentation(); - method @FlaggedApi("com.android.server.telecom.flags.call_details_id_changes") @NonNull public String getId(); - method public android.os.Bundle getIntentExtras(); - method public final int getState(); - method public android.telecom.StatusHints getStatusHints(); - method public int getVideoState(); - method public static boolean hasProperty(int, int); - method public boolean hasProperty(int); - method public static String propertiesToString(int); - field public static final int CAPABILITY_ADD_PARTICIPANT = 33554432; // 0x2000000 - field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 4194304; // 0x400000 - field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000 - field public static final int CAPABILITY_CAN_PULL_CALL = 8388608; // 0x800000 - field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000 - field public static final int CAPABILITY_HOLD = 1; // 0x1 - field public static final int CAPABILITY_MANAGE_CONFERENCE = 128; // 0x80 - field public static final int CAPABILITY_MERGE_CONFERENCE = 4; // 0x4 - field public static final int CAPABILITY_MUTE = 64; // 0x40 - field public static final int CAPABILITY_REMOTE_PARTY_SUPPORTS_RTT = 268435456; // 0x10000000 - field public static final int CAPABILITY_RESPOND_VIA_TEXT = 32; // 0x20 - field public static final int CAPABILITY_SEPARATE_FROM_CONFERENCE = 4096; // 0x1000 - field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL = 768; // 0x300 - field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_RX = 256; // 0x100 - field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_TX = 512; // 0x200 - field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL = 3072; // 0xc00 - field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_RX = 1024; // 0x400 - field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_TX = 2048; // 0x800 - field public static final int CAPABILITY_SUPPORT_DEFLECT = 16777216; // 0x1000000 - field public static final int CAPABILITY_SUPPORT_HOLD = 2; // 0x2 - field public static final int CAPABILITY_SWAP_CONFERENCE = 8; // 0x8 - field public static final int DIRECTION_INCOMING = 0; // 0x0 - field public static final int DIRECTION_OUTGOING = 1; // 0x1 - field public static final int DIRECTION_UNKNOWN = -1; // 0xffffffff - field public static final int PROPERTY_ASSISTED_DIALING = 512; // 0x200 - field public static final int PROPERTY_CONFERENCE = 1; // 0x1 - field public static final int PROPERTY_CROSS_SIM = 16384; // 0x4000 - field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 4; // 0x4 - field public static final int PROPERTY_ENTERPRISE_CALL = 32; // 0x20 - field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2 - field public static final int PROPERTY_HAS_CDMA_VOICE_PRIVACY = 128; // 0x80 - field public static final int PROPERTY_HIGH_DEF_AUDIO = 16; // 0x10 - field public static final int PROPERTY_IS_ADHOC_CONFERENCE = 8192; // 0x2000 - field public static final int PROPERTY_IS_EXTERNAL_CALL = 64; // 0x40 - field @FlaggedApi("com.android.server.telecom.flags.voip_app_actions_support") public static final int PROPERTY_IS_TRANSACTIONAL = 32768; // 0x8000 - field public static final int PROPERTY_NETWORK_IDENTIFIED_EMERGENCY_CALL = 2048; // 0x800 - field public static final int PROPERTY_RTT = 1024; // 0x400 - field public static final int PROPERTY_SELF_MANAGED = 256; // 0x100 - field public static final int PROPERTY_VOIP_AUDIO_MODE = 4096; // 0x1000 - field public static final int PROPERTY_WIFI = 8; // 0x8 - } - - public static final class Call.RttCall { - method public int getRttAudioMode(); - method public String read(); - method public String readImmediately() throws java.io.IOException; - method public void setRttMode(int); - method public void write(String) throws java.io.IOException; - field public static final int RTT_MODE_FULL = 1; // 0x1 - field public static final int RTT_MODE_HCO = 2; // 0x2 - field public static final int RTT_MODE_VCO = 3; // 0x3 - } - - public final class CallAttributes implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.net.Uri getAddress(); - method public int getCallCapabilities(); - method public int getCallType(); - method public int getDirection(); - method @NonNull public CharSequence getDisplayName(); - method @NonNull public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); - method public void writeToParcel(@Nullable android.os.Parcel, int); - field public static final int AUDIO_CALL = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DIRECTION_INCOMING = 1; // 0x1 - field public static final int DIRECTION_OUTGOING = 2; // 0x2 - field public static final int SUPPORTS_SET_INACTIVE = 2; // 0x2 - field public static final int SUPPORTS_STREAM = 4; // 0x4 - field public static final int SUPPORTS_TRANSFER = 8; // 0x8 - field @FlaggedApi("com.android.server.telecom.flags.transactional_video_state") public static final int SUPPORTS_VIDEO_CALLING = 16; // 0x10 - field public static final int VIDEO_CALL = 2; // 0x2 - } - - public static final class CallAttributes.Builder { - ctor public CallAttributes.Builder(@NonNull android.telecom.PhoneAccountHandle, int, @NonNull CharSequence, @NonNull android.net.Uri); - method @NonNull public android.telecom.CallAttributes build(); - method @NonNull public android.telecom.CallAttributes.Builder setCallCapabilities(int); - method @NonNull public android.telecom.CallAttributes.Builder setCallType(int); - } - - public final class CallAudioState implements android.os.Parcelable { - ctor public CallAudioState(boolean, int, int); - method public static String audioRouteToString(int); - method public int describeContents(); - method public android.bluetooth.BluetoothDevice getActiveBluetoothDevice(); - method public int getRoute(); - method public java.util.Collection getSupportedBluetoothDevices(); - method public int getSupportedRouteMask(); - method public boolean isMuted(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ROUTE_BLUETOOTH = 2; // 0x2 - field public static final int ROUTE_EARPIECE = 1; // 0x1 - field public static final int ROUTE_SPEAKER = 8; // 0x8 - field public static final int ROUTE_STREAMING = 16; // 0x10 - field public static final int ROUTE_WIRED_HEADSET = 4; // 0x4 - field public static final int ROUTE_WIRED_OR_EARPIECE = 5; // 0x5 - } - - public final class CallControl { - method public void answer(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void disconnect(@NonNull android.telecom.DisconnectCause, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method @NonNull public android.os.ParcelUuid getCallId(); - method public void requestCallEndpointChange(@NonNull android.telecom.CallEndpoint, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method @FlaggedApi("com.android.server.telecom.flags.set_mute_state") public void requestMuteState(boolean, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method @FlaggedApi("com.android.server.telecom.flags.transactional_video_state") public void requestVideoState(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void sendEvent(@NonNull String, @NonNull android.os.Bundle); - method public void setActive(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void setInactive(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void startCallStreaming(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - } - - public interface CallControlCallback { - method public void onAnswer(int, @NonNull java.util.function.Consumer); - method public void onCallStreamingStarted(@NonNull java.util.function.Consumer); - method public void onDisconnect(@NonNull android.telecom.DisconnectCause, @NonNull java.util.function.Consumer); - method public void onSetActive(@NonNull java.util.function.Consumer); - method public void onSetInactive(@NonNull java.util.function.Consumer); - } - - public final class CallEndpoint implements android.os.Parcelable { - ctor public CallEndpoint(@NonNull CharSequence, int, @NonNull android.os.ParcelUuid); - method public int describeContents(); - method @NonNull public CharSequence getEndpointName(); - method public int getEndpointType(); - method @NonNull public android.os.ParcelUuid getIdentifier(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_BLUETOOTH = 2; // 0x2 - field public static final int TYPE_EARPIECE = 1; // 0x1 - field public static final int TYPE_SPEAKER = 4; // 0x4 - field public static final int TYPE_STREAMING = 5; // 0x5 - field public static final int TYPE_UNKNOWN = -1; // 0xffffffff - field public static final int TYPE_WIRED_HEADSET = 3; // 0x3 - } - - public final class CallEndpointException extends java.lang.RuntimeException implements android.os.Parcelable { - ctor public CallEndpointException(@Nullable String, int); - method public int describeContents(); - method public int getCode(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ERROR_ANOTHER_REQUEST = 3; // 0x3 - field public static final int ERROR_ENDPOINT_DOES_NOT_EXIST = 1; // 0x1 - field public static final int ERROR_REQUEST_TIME_OUT = 2; // 0x2 - field public static final int ERROR_UNSPECIFIED = 4; // 0x4 - } - - public interface CallEventCallback { - method public void onAvailableCallEndpointsChanged(@NonNull java.util.List); - method public void onCallEndpointChanged(@NonNull android.telecom.CallEndpoint); - method public void onCallStreamingFailed(int); - method public void onEvent(@NonNull String, @NonNull android.os.Bundle); - method public void onMuteStateChanged(boolean); - method @FlaggedApi("com.android.server.telecom.flags.transactional_video_state") public default void onVideoStateChanged(int); - } - - public final class CallException extends java.lang.RuntimeException implements android.os.Parcelable { - ctor public CallException(@Nullable String, int); - method public int describeContents(); - method public int getCode(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CODE_CALL_CANNOT_BE_SET_TO_ACTIVE = 4; // 0x4 - field public static final int CODE_CALL_IS_NOT_BEING_TRACKED = 3; // 0x3 - field public static final int CODE_CALL_NOT_PERMITTED_AT_PRESENT_TIME = 5; // 0x5 - field public static final int CODE_CANNOT_HOLD_CURRENT_ACTIVE_CALL = 2; // 0x2 - field public static final int CODE_ERROR_UNKNOWN = 1; // 0x1 - field public static final int CODE_OPERATION_TIMED_OUT = 6; // 0x6 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class CallRedirectionService extends android.app.Service { - ctor public CallRedirectionService(); - method public final void cancelCall(); - method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); - method public abstract void onPlaceCall(@NonNull android.net.Uri, @NonNull android.telecom.PhoneAccountHandle, boolean); - method public void onRedirectionTimeout(); - method public final boolean onUnbind(@NonNull android.content.Intent); - method public final void placeCallUnmodified(); - method public final void redirectCall(@NonNull android.net.Uri, @NonNull android.telecom.PhoneAccountHandle, boolean); - field public static final String SERVICE_INTERFACE = "android.telecom.CallRedirectionService"; - } - - public abstract class CallScreeningService extends android.app.Service { - ctor public CallScreeningService(); - method public android.os.IBinder onBind(android.content.Intent); - method public abstract void onScreenCall(@NonNull android.telecom.Call.Details); - method public final void respondToCall(@NonNull android.telecom.Call.Details, @NonNull android.telecom.CallScreeningService.CallResponse); - field public static final String SERVICE_INTERFACE = "android.telecom.CallScreeningService"; - } - - public static class CallScreeningService.CallResponse { - method public int getCallComposerAttachmentsToShow(); - method public boolean getDisallowCall(); - method public boolean getRejectCall(); - method public boolean getSilenceCall(); - method public boolean getSkipCallLog(); - method public boolean getSkipNotification(); - field public static final int CALL_COMPOSER_ATTACHMENT_LOCATION = 2; // 0x2 - field public static final int CALL_COMPOSER_ATTACHMENT_PICTURE = 1; // 0x1 - field public static final int CALL_COMPOSER_ATTACHMENT_PRIORITY = 8; // 0x8 - field public static final int CALL_COMPOSER_ATTACHMENT_SUBJECT = 4; // 0x4 - } - - public static class CallScreeningService.CallResponse.Builder { - ctor public CallScreeningService.CallResponse.Builder(); - method public android.telecom.CallScreeningService.CallResponse build(); - method @NonNull public android.telecom.CallScreeningService.CallResponse.Builder setCallComposerAttachmentsToShow(int); - method public android.telecom.CallScreeningService.CallResponse.Builder setDisallowCall(boolean); - method public android.telecom.CallScreeningService.CallResponse.Builder setRejectCall(boolean); - method @NonNull public android.telecom.CallScreeningService.CallResponse.Builder setSilenceCall(boolean); - method public android.telecom.CallScreeningService.CallResponse.Builder setSkipCallLog(boolean); - method public android.telecom.CallScreeningService.CallResponse.Builder setSkipNotification(boolean); - } - - public abstract class Conference extends android.telecom.Conferenceable { - ctor public Conference(android.telecom.PhoneAccountHandle); - method public final boolean addConnection(android.telecom.Connection); - method @NonNull public static android.telecom.Conference createFailedConference(@NonNull android.telecom.DisconnectCause, @NonNull android.telecom.PhoneAccountHandle); - method public final void destroy(); - method @Deprecated public final android.telecom.CallAudioState getCallAudioState(); - method public final java.util.List getConferenceableConnections(); - method public final int getConnectionCapabilities(); - method public final int getConnectionProperties(); - method public final long getConnectionStartElapsedRealtimeMillis(); - method @IntRange(from=0) public final long getConnectionTime(); - method public final java.util.List getConnections(); - method @NonNull public final android.telecom.CallEndpoint getCurrentCallEndpoint(); - method public final android.telecom.DisconnectCause getDisconnectCause(); - method public final android.os.Bundle getExtras(); - method public final android.telecom.PhoneAccountHandle getPhoneAccountHandle(); - method public final int getState(); - method public final android.telecom.StatusHints getStatusHints(); - method public android.telecom.Connection.VideoProvider getVideoProvider(); - method public int getVideoState(); - method public final boolean isRingbackRequested(); - method public void onAddConferenceParticipants(@NonNull java.util.List); - method public void onAnswer(int); - method public void onAvailableCallEndpointsChanged(@NonNull java.util.List); - method @Deprecated public void onCallAudioStateChanged(android.telecom.CallAudioState); - method public void onCallEndpointChanged(@NonNull android.telecom.CallEndpoint); - method public void onConnectionAdded(android.telecom.Connection); - method public void onDisconnect(); - method public void onExtrasChanged(android.os.Bundle); - method public void onHold(); - method public void onMerge(android.telecom.Connection); - method public void onMerge(); - method public void onMuteStateChanged(boolean); - method public void onPlayDtmfTone(char); - method public void onReject(); - method public void onSeparate(android.telecom.Connection); - method public void onStopDtmfTone(); - method public void onSwap(); - method public void onUnhold(); - method public final void putExtras(@NonNull android.os.Bundle); - method public final void removeConnection(android.telecom.Connection); - method public final void removeExtras(java.util.List); - method public final void removeExtras(java.lang.String...); - method public void sendConferenceEvent(@NonNull String, @Nullable android.os.Bundle); - method public final void setActive(); - method public final void setConferenceableConnections(java.util.List); - method public final void setConnectionCapabilities(int); - method public final void setConnectionProperties(int); - method @Deprecated public final void setConnectionStartElapsedRealTime(long); - method public final void setConnectionStartElapsedRealtimeMillis(long); - method public final void setConnectionTime(@IntRange(from=0) long); - method public final void setDialing(); - method public final void setDisconnected(android.telecom.DisconnectCause); - method public final void setExtras(@Nullable android.os.Bundle); - method public final void setOnHold(); - method public final void setRingbackRequested(boolean); - method public final void setRinging(); - method public final void setStatusHints(android.telecom.StatusHints); - method public final void setVideoProvider(android.telecom.Connection, android.telecom.Connection.VideoProvider); - method public final void setVideoState(android.telecom.Connection, int); - field public static final long CONNECT_TIME_NOT_SPECIFIED = 0L; // 0x0L - } - - public abstract class Conferenceable { - } - - public abstract class Connection extends android.telecom.Conferenceable { - ctor public Connection(); - method public static String capabilitiesToString(int); - method public static android.telecom.Connection createCanceledConnection(); - method public static android.telecom.Connection createFailedConnection(android.telecom.DisconnectCause); - method public final void destroy(); - method public final android.net.Uri getAddress(); - method public final int getAddressPresentation(); - method public final boolean getAudioModeIsVoip(); - method @Deprecated public final android.telecom.CallAudioState getCallAudioState(); - method public final String getCallerDisplayName(); - method public final int getCallerDisplayNamePresentation(); - method public final int getCallerNumberVerificationStatus(); - method public final android.telecom.Conference getConference(); - method public final java.util.List getConferenceables(); - method public final int getConnectionCapabilities(); - method public final int getConnectionProperties(); - method @NonNull public final android.telecom.CallEndpoint getCurrentCallEndpoint(); - method public final android.telecom.DisconnectCause getDisconnectCause(); - method public final android.os.Bundle getExtras(); - method public final int getState(); - method public final android.telecom.StatusHints getStatusHints(); - method public final android.telecom.Connection.VideoProvider getVideoProvider(); - method public final int getVideoState(); - method public void handleRttUpgradeResponse(@Nullable android.telecom.Connection.RttTextStream); - method public final boolean isRingbackRequested(); - method public final void notifyConferenceMergeFailed(); - method public void onAbort(); - method public void onAddConferenceParticipants(@NonNull java.util.List); - method public void onAnswer(int); - method public void onAnswer(); - method public void onAvailableCallEndpointsChanged(@NonNull java.util.List); - method @Deprecated public void onCallAudioStateChanged(android.telecom.CallAudioState); - method public void onCallEndpointChanged(@NonNull android.telecom.CallEndpoint); - method public void onCallEvent(String, android.os.Bundle); - method public void onDeflect(android.net.Uri); - method public void onDisconnect(); - method public void onExtrasChanged(android.os.Bundle); - method public void onHandoverComplete(); - method public void onHold(); - method public void onMuteStateChanged(boolean); - method public void onPlayDtmfTone(char); - method public void onPostDialContinue(boolean); - method public void onPullExternalCall(); - method public void onReject(); - method public void onReject(int); - method public void onReject(String); - method public void onSeparate(); - method public void onShowIncomingCallUi(); - method public void onSilence(); - method public void onStartRtt(@NonNull android.telecom.Connection.RttTextStream); - method public void onStateChanged(int); - method public void onStopDtmfTone(); - method public void onStopRtt(); - method public void onTrackedByNonUiService(boolean); - method public void onUnhold(); - method public void onUsingAlternativeUi(boolean); - method public static String propertiesToString(int); - method public final void putExtras(@NonNull android.os.Bundle); - method public final void queryLocationForEmergency(@IntRange(from=100, to=5000) long, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public final void removeExtras(java.util.List); - method public final void removeExtras(java.lang.String...); - method @Deprecated public void requestBluetoothAudio(@NonNull android.bluetooth.BluetoothDevice); - method public final void requestCallEndpointChange(@NonNull android.telecom.CallEndpoint, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void sendConnectionEvent(String, android.os.Bundle); - method public final void sendRemoteRttRequest(); - method public final void sendRttInitiationFailure(int); - method public final void sendRttInitiationSuccess(); - method public final void sendRttSessionRemotelyTerminated(); - method public final void setActive(); - method public final void setAddress(android.net.Uri, int); - method public final void setAudioModeIsVoip(boolean); - method @Deprecated public final void setAudioRoute(int); - method public final void setCallerDisplayName(String, int); - method public final void setCallerNumberVerificationStatus(int); - method public final void setConferenceableConnections(java.util.List); - method public final void setConferenceables(java.util.List); - method public final void setConnectionCapabilities(int); - method public final void setConnectionProperties(int); - method public final void setDialing(); - method public final void setDisconnected(android.telecom.DisconnectCause); - method public final void setExtras(@Nullable android.os.Bundle); - method public final void setInitialized(); - method public final void setInitializing(); - method public final void setNextPostDialChar(char); - method public final void setOnHold(); - method public final void setPostDialWait(String); - method public final void setPulling(); - method public final void setRingbackRequested(boolean); - method public final void setRinging(); - method public final void setStatusHints(android.telecom.StatusHints); - method public final void setVideoProvider(android.telecom.Connection.VideoProvider); - method public final void setVideoState(int); - method public static String stateToString(int); - field public static final int AUDIO_CODEC_AMR = 1; // 0x1 - field public static final int AUDIO_CODEC_AMR_WB = 2; // 0x2 - field public static final int AUDIO_CODEC_EVRC = 4; // 0x4 - field public static final int AUDIO_CODEC_EVRC_B = 5; // 0x5 - field public static final int AUDIO_CODEC_EVRC_NW = 7; // 0x7 - field public static final int AUDIO_CODEC_EVRC_WB = 6; // 0x6 - field public static final int AUDIO_CODEC_EVS_FB = 20; // 0x14 - field public static final int AUDIO_CODEC_EVS_NB = 17; // 0x11 - field public static final int AUDIO_CODEC_EVS_SWB = 19; // 0x13 - field public static final int AUDIO_CODEC_EVS_WB = 18; // 0x12 - field public static final int AUDIO_CODEC_G711A = 13; // 0xd - field public static final int AUDIO_CODEC_G711AB = 15; // 0xf - field public static final int AUDIO_CODEC_G711U = 11; // 0xb - field public static final int AUDIO_CODEC_G722 = 14; // 0xe - field public static final int AUDIO_CODEC_G723 = 12; // 0xc - field public static final int AUDIO_CODEC_G729 = 16; // 0x10 - field public static final int AUDIO_CODEC_GSM_EFR = 8; // 0x8 - field public static final int AUDIO_CODEC_GSM_FR = 9; // 0x9 - field public static final int AUDIO_CODEC_GSM_HR = 10; // 0xa - field public static final int AUDIO_CODEC_NONE = 0; // 0x0 - field public static final int AUDIO_CODEC_QCELP13K = 3; // 0x3 - field public static final int CAPABILITY_ADD_PARTICIPANT = 67108864; // 0x4000000 - field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 8388608; // 0x800000 - field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000 - field public static final int CAPABILITY_CAN_PULL_CALL = 16777216; // 0x1000000 - field public static final int CAPABILITY_CAN_SEND_RESPONSE_VIA_CONNECTION = 4194304; // 0x400000 - field @Deprecated public static final int CAPABILITY_CAN_UPGRADE_TO_VIDEO = 524288; // 0x80000 - field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000 - field public static final int CAPABILITY_HOLD = 1; // 0x1 - field public static final int CAPABILITY_MANAGE_CONFERENCE = 128; // 0x80 - field public static final int CAPABILITY_MERGE_CONFERENCE = 4; // 0x4 - field public static final int CAPABILITY_MUTE = 64; // 0x40 - field public static final int CAPABILITY_REMOTE_PARTY_SUPPORTS_RTT = 536870912; // 0x20000000 - field public static final int CAPABILITY_RESPOND_VIA_TEXT = 32; // 0x20 - field public static final int CAPABILITY_SEPARATE_FROM_CONFERENCE = 4096; // 0x1000 - field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL = 768; // 0x300 - field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_RX = 256; // 0x100 - field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_TX = 512; // 0x200 - field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL = 3072; // 0xc00 - field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_RX = 1024; // 0x400 - field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_TX = 2048; // 0x800 - field public static final int CAPABILITY_SUPPORT_DEFLECT = 33554432; // 0x2000000 - field public static final int CAPABILITY_SUPPORT_HOLD = 2; // 0x2 - field public static final int CAPABILITY_SWAP_CONFERENCE = 8; // 0x8 - field public static final String EVENT_CALL_HOLD_FAILED = "android.telecom.event.CALL_HOLD_FAILED"; - field public static final String EVENT_CALL_MERGE_FAILED = "android.telecom.event.CALL_MERGE_FAILED"; - field public static final String EVENT_CALL_PULL_FAILED = "android.telecom.event.CALL_PULL_FAILED"; - field public static final String EVENT_CALL_REMOTELY_HELD = "android.telecom.event.CALL_REMOTELY_HELD"; - field public static final String EVENT_CALL_REMOTELY_UNHELD = "android.telecom.event.CALL_REMOTELY_UNHELD"; - field public static final String EVENT_CALL_SWITCH_FAILED = "android.telecom.event.CALL_SWITCH_FAILED"; - field public static final String EVENT_MERGE_COMPLETE = "android.telecom.event.MERGE_COMPLETE"; - field public static final String EVENT_MERGE_START = "android.telecom.event.MERGE_START"; - field public static final String EVENT_ON_HOLD_TONE_END = "android.telecom.event.ON_HOLD_TONE_END"; - field public static final String EVENT_ON_HOLD_TONE_START = "android.telecom.event.ON_HOLD_TONE_START"; - field public static final String EVENT_RTT_AUDIO_INDICATION_CHANGED = "android.telecom.event.RTT_AUDIO_INDICATION_CHANGED"; - field public static final String EXTRA_ANSWERING_DROPS_FG_CALL = "android.telecom.extra.ANSWERING_DROPS_FG_CALL"; - field public static final String EXTRA_ANSWERING_DROPS_FG_CALL_APP_NAME = "android.telecom.extra.ANSWERING_DROPS_FG_CALL_APP_NAME"; - field public static final String EXTRA_AUDIO_CODEC = "android.telecom.extra.AUDIO_CODEC"; - field public static final String EXTRA_AUDIO_CODEC_BANDWIDTH_KHZ = "android.telecom.extra.AUDIO_CODEC_BANDWIDTH_KHZ"; - field public static final String EXTRA_AUDIO_CODEC_BITRATE_KBPS = "android.telecom.extra.AUDIO_CODEC_BITRATE_KBPS"; - field public static final String EXTRA_CALL_SUBJECT = "android.telecom.extra.CALL_SUBJECT"; - field public static final String EXTRA_CHILD_ADDRESS = "android.telecom.extra.CHILD_ADDRESS"; - field public static final String EXTRA_IS_RTT_AUDIO_PRESENT = "android.telecom.extra.IS_RTT_AUDIO_PRESENT"; - field public static final String EXTRA_LAST_FORWARDED_NUMBER = "android.telecom.extra.LAST_FORWARDED_NUMBER"; - field public static final String EXTRA_LAST_KNOWN_CELL_IDENTITY = "android.telecom.extra.LAST_KNOWN_CELL_IDENTITY"; - field public static final String EXTRA_SIP_INVITE = "android.telecom.extra.SIP_INVITE"; - field public static final int PROPERTY_ASSISTED_DIALING = 512; // 0x200 - field public static final int PROPERTY_CROSS_SIM = 8192; // 0x2000 - field public static final int PROPERTY_HAS_CDMA_VOICE_PRIVACY = 32; // 0x20 - field public static final int PROPERTY_HIGH_DEF_AUDIO = 4; // 0x4 - field public static final int PROPERTY_IS_ADHOC_CONFERENCE = 4096; // 0x1000 - field public static final int PROPERTY_IS_EXTERNAL_CALL = 16; // 0x10 - field public static final int PROPERTY_IS_RTT = 256; // 0x100 - field public static final int PROPERTY_NETWORK_IDENTIFIED_EMERGENCY_CALL = 1024; // 0x400 - field public static final int PROPERTY_SELF_MANAGED = 128; // 0x80 - field public static final int PROPERTY_WIFI = 8; // 0x8 - field public static final int STATE_ACTIVE = 4; // 0x4 - field public static final int STATE_DIALING = 3; // 0x3 - field public static final int STATE_DISCONNECTED = 6; // 0x6 - field public static final int STATE_HOLDING = 5; // 0x5 - field public static final int STATE_INITIALIZING = 0; // 0x0 - field public static final int STATE_NEW = 1; // 0x1 - field public static final int STATE_PULLING_CALL = 7; // 0x7 - field public static final int STATE_RINGING = 2; // 0x2 - field public static final int VERIFICATION_STATUS_FAILED = 2; // 0x2 - field public static final int VERIFICATION_STATUS_NOT_VERIFIED = 0; // 0x0 - field public static final int VERIFICATION_STATUS_PASSED = 1; // 0x1 - } - - public static final class Connection.RttModifyStatus { - field public static final int SESSION_MODIFY_REQUEST_FAIL = 2; // 0x2 - field public static final int SESSION_MODIFY_REQUEST_INVALID = 3; // 0x3 - field public static final int SESSION_MODIFY_REQUEST_REJECTED_BY_REMOTE = 5; // 0x5 - field public static final int SESSION_MODIFY_REQUEST_SUCCESS = 1; // 0x1 - field public static final int SESSION_MODIFY_REQUEST_TIMED_OUT = 4; // 0x4 - } - - public static final class Connection.RttTextStream { - method public String read() throws java.io.IOException; - method public String readImmediately() throws java.io.IOException; - method public void write(String) throws java.io.IOException; - } - - public abstract static class Connection.VideoProvider { - ctor public Connection.VideoProvider(); - method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities); - method public void changePeerDimensions(int, int); - method public void changeVideoQuality(int); - method public void handleCallSessionEvent(int); - method public abstract void onRequestCameraCapabilities(); - method public abstract void onRequestConnectionDataUsage(); - method public abstract void onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile); - method public abstract void onSendSessionModifyResponse(android.telecom.VideoProfile); - method public abstract void onSetCamera(String); - method public abstract void onSetDeviceOrientation(int); - method public abstract void onSetDisplaySurface(android.view.Surface); - method public abstract void onSetPauseImage(android.net.Uri); - method public abstract void onSetPreviewSurface(android.view.Surface); - method public abstract void onSetZoom(float); - method public void receiveSessionModifyRequest(android.telecom.VideoProfile); - method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile); - method public void setCallDataUsage(long); - field public static final int SESSION_EVENT_CAMERA_FAILURE = 5; // 0x5 - field public static final int SESSION_EVENT_CAMERA_PERMISSION_ERROR = 7; // 0x7 - field public static final int SESSION_EVENT_CAMERA_READY = 6; // 0x6 - field public static final int SESSION_EVENT_RX_PAUSE = 1; // 0x1 - field public static final int SESSION_EVENT_RX_RESUME = 2; // 0x2 - field public static final int SESSION_EVENT_TX_START = 3; // 0x3 - field public static final int SESSION_EVENT_TX_STOP = 4; // 0x4 - field public static final int SESSION_MODIFY_REQUEST_FAIL = 2; // 0x2 - field public static final int SESSION_MODIFY_REQUEST_INVALID = 3; // 0x3 - field public static final int SESSION_MODIFY_REQUEST_REJECTED_BY_REMOTE = 5; // 0x5 - field public static final int SESSION_MODIFY_REQUEST_SUCCESS = 1; // 0x1 - field public static final int SESSION_MODIFY_REQUEST_TIMED_OUT = 4; // 0x4 - } - - public final class ConnectionRequest implements android.os.Parcelable { - ctor public ConnectionRequest(android.telecom.PhoneAccountHandle, android.net.Uri, android.os.Bundle); - ctor public ConnectionRequest(android.telecom.PhoneAccountHandle, android.net.Uri, android.os.Bundle, int); - method public int describeContents(); - method public android.telecom.PhoneAccountHandle getAccountHandle(); - method public android.net.Uri getAddress(); - method public android.os.Bundle getExtras(); - method @Nullable public java.util.List getParticipants(); - method public android.telecom.Connection.RttTextStream getRttTextStream(); - method public int getVideoState(); - method public boolean isAdhocConferenceCall(); - method public boolean isRequestingRtt(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class ConnectionService extends android.app.Service { - ctor public ConnectionService(); - method public final void addConference(android.telecom.Conference); - method public final void addExistingConnection(android.telecom.PhoneAccountHandle, android.telecom.Connection); - method public final void conferenceRemoteConnections(android.telecom.RemoteConnection, android.telecom.RemoteConnection); - method public final void connectionServiceFocusReleased(); - method @Nullable public final android.telecom.RemoteConference createRemoteIncomingConference(@Nullable android.telecom.PhoneAccountHandle, @Nullable android.telecom.ConnectionRequest); - method @Nullable public final android.telecom.RemoteConnection createRemoteIncomingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); - method @Nullable public final android.telecom.RemoteConference createRemoteOutgoingConference(@Nullable android.telecom.PhoneAccountHandle, @Nullable android.telecom.ConnectionRequest); - method @Nullable public final android.telecom.RemoteConnection createRemoteOutgoingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); - method public final java.util.Collection getAllConferences(); - method public final java.util.Collection getAllConnections(); - method public final android.os.IBinder onBind(android.content.Intent); - method public void onConference(android.telecom.Connection, android.telecom.Connection); - method public void onConnectionServiceFocusGained(); - method public void onConnectionServiceFocusLost(); - method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public void onCreateConferenceComplete(@NonNull android.telecom.Conference); - method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public void onCreateConnectionComplete(@NonNull android.telecom.Connection); - method @Nullable public android.telecom.Conference onCreateIncomingConference(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); - method public void onCreateIncomingConferenceFailed(@Nullable android.telecom.PhoneAccountHandle, @Nullable android.telecom.ConnectionRequest); - method public android.telecom.Connection onCreateIncomingConnection(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); - method public void onCreateIncomingConnectionFailed(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); - method public android.telecom.Connection onCreateIncomingHandoverConnection(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); - method @Nullable public android.telecom.Conference onCreateOutgoingConference(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); - method public void onCreateOutgoingConferenceFailed(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); - method public android.telecom.Connection onCreateOutgoingConnection(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); - method public void onCreateOutgoingConnectionFailed(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); - method public android.telecom.Connection onCreateOutgoingHandoverConnection(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); - method public void onHandoverFailed(android.telecom.ConnectionRequest, int); - method public void onRemoteConferenceAdded(android.telecom.RemoteConference); - method public void onRemoteExistingConnectionAdded(android.telecom.RemoteConnection); - field public static final String SERVICE_INTERFACE = "android.telecom.ConnectionService"; - } - - public final class DisconnectCause implements android.os.Parcelable { - ctor public DisconnectCause(int); - ctor public DisconnectCause(int, String); - ctor public DisconnectCause(int, CharSequence, CharSequence, String); - ctor public DisconnectCause(int, CharSequence, CharSequence, String, int); - method public int describeContents(); - method public int getCode(); - method public CharSequence getDescription(); - method public CharSequence getLabel(); - method public String getReason(); - method public int getTone(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int ANSWERED_ELSEWHERE = 11; // 0xb - field public static final int BUSY = 7; // 0x7 - field public static final int CALL_PULLED = 12; // 0xc - field public static final int CANCELED = 4; // 0x4 - field public static final int CONNECTION_MANAGER_NOT_SUPPORTED = 10; // 0xa - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ERROR = 1; // 0x1 - field public static final int LOCAL = 2; // 0x2 - field public static final int MISSED = 5; // 0x5 - field public static final int OTHER = 9; // 0x9 - field public static final String REASON_EMERGENCY_CALL_PLACED = "REASON_EMERGENCY_CALL_PLACED"; - field public static final String REASON_EMULATING_SINGLE_CALL = "EMULATING_SINGLE_CALL"; - field public static final String REASON_IMS_ACCESS_BLOCKED = "REASON_IMS_ACCESS_BLOCKED"; - field public static final String REASON_WIFI_ON_BUT_WFC_OFF = "REASON_WIFI_ON_BUT_WFC_OFF"; - field public static final int REJECTED = 6; // 0x6 - field public static final int REMOTE = 3; // 0x3 - field public static final int RESTRICTED = 8; // 0x8 - field public static final int UNKNOWN = 0; // 0x0 - } - - public class GatewayInfo implements android.os.Parcelable { - ctor public GatewayInfo(String, android.net.Uri, android.net.Uri); - method public int describeContents(); - method public android.net.Uri getGatewayAddress(); - method public String getGatewayProviderPackageName(); - method public android.net.Uri getOriginalAddress(); - method public boolean isEmpty(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class InCallService extends android.app.Service { - ctor public InCallService(); - method public final boolean canAddCall(); - method @Deprecated public final android.telecom.CallAudioState getCallAudioState(); - method public final java.util.List getCalls(); - method @NonNull public final android.telecom.CallEndpoint getCurrentCallEndpoint(); - method public void onAvailableCallEndpointsChanged(@NonNull java.util.List); - method public android.os.IBinder onBind(android.content.Intent); - method public void onBringToForeground(boolean); - method public void onCallAdded(android.telecom.Call); - method @Deprecated public void onCallAudioStateChanged(android.telecom.CallAudioState); - method public void onCallEndpointChanged(@NonNull android.telecom.CallEndpoint); - method public void onCallRemoved(android.telecom.Call); - method public void onCanAddCallChanged(boolean); - method public void onConnectionEvent(android.telecom.Call, String, android.os.Bundle); - method public void onMuteStateChanged(boolean); - method public void onSilenceRinger(); - method @Deprecated public final void requestBluetoothAudio(@NonNull android.bluetooth.BluetoothDevice); - method public final void requestCallEndpointChange(@NonNull android.telecom.CallEndpoint, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method @Deprecated public final void setAudioRoute(int); - method public final void setMuted(boolean); - field public static final String SERVICE_INTERFACE = "android.telecom.InCallService"; - } - - public abstract static class InCallService.VideoCall { - ctor public InCallService.VideoCall(); - method public abstract void registerCallback(android.telecom.InCallService.VideoCall.Callback); - method public abstract void registerCallback(android.telecom.InCallService.VideoCall.Callback, android.os.Handler); - method public abstract void requestCallDataUsage(); - method public abstract void requestCameraCapabilities(); - method public abstract void sendSessionModifyRequest(android.telecom.VideoProfile); - method public abstract void sendSessionModifyResponse(android.telecom.VideoProfile); - method public abstract void setCamera(String); - method public abstract void setDeviceOrientation(int); - method public abstract void setDisplaySurface(android.view.Surface); - method public abstract void setPauseImage(android.net.Uri); - method public abstract void setPreviewSurface(android.view.Surface); - method public abstract void setZoom(float); - method public abstract void unregisterCallback(android.telecom.InCallService.VideoCall.Callback); - } - - public abstract static class InCallService.VideoCall.Callback { - ctor public InCallService.VideoCall.Callback(); - method public abstract void onCallDataUsageChanged(long); - method public abstract void onCallSessionEvent(int); - method public abstract void onCameraCapabilitiesChanged(android.telecom.VideoProfile.CameraCapabilities); - method public abstract void onPeerDimensionsChanged(int, int); - method public abstract void onSessionModifyRequestReceived(android.telecom.VideoProfile); - method public abstract void onSessionModifyResponseReceived(int, android.telecom.VideoProfile, android.telecom.VideoProfile); - method public abstract void onVideoQualityChanged(int); - } - - public final class PhoneAccount implements android.os.Parcelable { - method public static android.telecom.PhoneAccount.Builder builder(android.telecom.PhoneAccountHandle, CharSequence); - method public int describeContents(); - method public android.telecom.PhoneAccountHandle getAccountHandle(); - method public android.net.Uri getAddress(); - method public int getCapabilities(); - method public android.os.Bundle getExtras(); - method public int getHighlightColor(); - method public android.graphics.drawable.Icon getIcon(); - method public CharSequence getLabel(); - method public CharSequence getShortDescription(); - method @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") @NonNull public java.util.Set getSimultaneousCallingRestriction(); - method public android.net.Uri getSubscriptionAddress(); - method public java.util.List getSupportedUriSchemes(); - method public boolean hasCapabilities(int); - method @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") public boolean hasSimultaneousCallingRestriction(); - method public boolean isEnabled(); - method public boolean supportsUriScheme(String); - method public android.telecom.PhoneAccount.Builder toBuilder(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CAPABILITY_ADHOC_CONFERENCE_CALLING = 16384; // 0x4000 - field public static final int CAPABILITY_CALL_COMPOSER = 32768; // 0x8000 - field public static final int CAPABILITY_CALL_PROVIDER = 2; // 0x2 - field public static final int CAPABILITY_CALL_SUBJECT = 64; // 0x40 - field public static final int CAPABILITY_CONNECTION_MANAGER = 1; // 0x1 - field public static final int CAPABILITY_PLACE_EMERGENCY_CALLS = 16; // 0x10 - field public static final int CAPABILITY_RTT = 4096; // 0x1000 - field public static final int CAPABILITY_SELF_MANAGED = 2048; // 0x800 - field public static final int CAPABILITY_SIM_SUBSCRIPTION = 4; // 0x4 - field public static final int CAPABILITY_SUPPORTS_CALL_STREAMING = 524288; // 0x80000 - field public static final int CAPABILITY_SUPPORTS_TRANSACTIONAL_OPERATIONS = 262144; // 0x40000 - field public static final int CAPABILITY_SUPPORTS_VIDEO_CALLING = 1024; // 0x400 - field public static final int CAPABILITY_SUPPORTS_VOICE_CALLING_INDICATIONS = 65536; // 0x10000 - field public static final int CAPABILITY_VIDEO_CALLING = 8; // 0x8 - field public static final int CAPABILITY_VIDEO_CALLING_RELIES_ON_PRESENCE = 256; // 0x100 - field public static final int CAPABILITY_VOICE_CALLING_AVAILABLE = 131072; // 0x20000 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String EXTRA_ADD_SELF_MANAGED_CALLS_TO_INCALLSERVICE = "android.telecom.extra.ADD_SELF_MANAGED_CALLS_TO_INCALLSERVICE"; - field public static final String EXTRA_ALWAYS_USE_VOIP_AUDIO_MODE = "android.telecom.extra.ALWAYS_USE_VOIP_AUDIO_MODE"; - field public static final String EXTRA_CALL_SUBJECT_CHARACTER_ENCODING = "android.telecom.extra.CALL_SUBJECT_CHARACTER_ENCODING"; - field public static final String EXTRA_CALL_SUBJECT_MAX_LENGTH = "android.telecom.extra.CALL_SUBJECT_MAX_LENGTH"; - field public static final String EXTRA_LOG_SELF_MANAGED_CALLS = "android.telecom.extra.LOG_SELF_MANAGED_CALLS"; - field public static final String EXTRA_SUPPORTS_HANDOVER_FROM = "android.telecom.extra.SUPPORTS_HANDOVER_FROM"; - field public static final String EXTRA_SUPPORTS_HANDOVER_TO = "android.telecom.extra.SUPPORTS_HANDOVER_TO"; - field public static final int NO_HIGHLIGHT_COLOR = 0; // 0x0 - field public static final int NO_RESOURCE_ID = -1; // 0xffffffff - field public static final String SCHEME_SIP = "sip"; - field public static final String SCHEME_TEL = "tel"; - field public static final String SCHEME_VOICEMAIL = "voicemail"; - } - - public static class PhoneAccount.Builder { - ctor public PhoneAccount.Builder(android.telecom.PhoneAccountHandle, CharSequence); - ctor public PhoneAccount.Builder(android.telecom.PhoneAccount); - method public android.telecom.PhoneAccount.Builder addSupportedUriScheme(String); - method public android.telecom.PhoneAccount build(); - method @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") @NonNull public android.telecom.PhoneAccount.Builder clearSimultaneousCallingRestriction(); - method public android.telecom.PhoneAccount.Builder setAddress(android.net.Uri); - method public android.telecom.PhoneAccount.Builder setCapabilities(int); - method public android.telecom.PhoneAccount.Builder setExtras(android.os.Bundle); - method public android.telecom.PhoneAccount.Builder setHighlightColor(int); - method public android.telecom.PhoneAccount.Builder setIcon(android.graphics.drawable.Icon); - method public android.telecom.PhoneAccount.Builder setShortDescription(CharSequence); - method @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") @NonNull public android.telecom.PhoneAccount.Builder setSimultaneousCallingRestriction(@NonNull java.util.Set); - method public android.telecom.PhoneAccount.Builder setSubscriptionAddress(android.net.Uri); - method public android.telecom.PhoneAccount.Builder setSupportedUriSchemes(java.util.List); - } - - public final class PhoneAccountHandle implements android.os.Parcelable { - ctor public PhoneAccountHandle(@NonNull android.content.ComponentName, @NonNull String); - ctor public PhoneAccountHandle(@NonNull android.content.ComponentName, @NonNull String, @NonNull android.os.UserHandle); - method public int describeContents(); - method public android.content.ComponentName getComponentName(); - method public String getId(); - method public android.os.UserHandle getUserHandle(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class PhoneAccountSuggestion implements android.os.Parcelable { - ctor public PhoneAccountSuggestion(@NonNull android.telecom.PhoneAccountHandle, int, boolean); - method public int describeContents(); - method @NonNull public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); - method public int getReason(); - method public boolean shouldAutoSelect(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int REASON_FREQUENT = 2; // 0x2 - field public static final int REASON_INTRA_CARRIER = 1; // 0x1 - field public static final int REASON_NONE = 0; // 0x0 - field public static final int REASON_OTHER = 4; // 0x4 - field public static final int REASON_USER_SET = 3; // 0x3 - } - - public final class QueryLocationException extends java.lang.RuntimeException implements android.os.Parcelable { - ctor public QueryLocationException(@Nullable String); - ctor public QueryLocationException(@Nullable String, int); - ctor public QueryLocationException(@Nullable String, int, @Nullable Throwable); - method public int describeContents(); - method public int getCode(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ERROR_NOT_ALLOWED_FOR_NON_EMERGENCY_CONNECTIONS = 4; // 0x4 - field public static final int ERROR_NOT_PERMITTED = 3; // 0x3 - field public static final int ERROR_PREVIOUS_REQUEST_EXISTS = 2; // 0x2 - field public static final int ERROR_REQUEST_TIME_OUT = 1; // 0x1 - field public static final int ERROR_SERVICE_UNAVAILABLE = 5; // 0x5 - field public static final int ERROR_UNSPECIFIED = 6; // 0x6 - } - - public final class RemoteConference { - method public void disconnect(); - method public java.util.List getConferenceableConnections(); - method public int getConnectionCapabilities(); - method public int getConnectionProperties(); - method public java.util.List getConnections(); - method public android.telecom.DisconnectCause getDisconnectCause(); - method public android.os.Bundle getExtras(); - method public int getState(); - method public void hold(); - method public void merge(); - method public void playDtmfTone(char); - method public void registerCallback(android.telecom.RemoteConference.Callback); - method public void registerCallback(android.telecom.RemoteConference.Callback, android.os.Handler); - method public void separate(android.telecom.RemoteConnection); - method public void setCallAudioState(android.telecom.CallAudioState); - method public void stopDtmfTone(); - method public void swap(); - method public void unhold(); - method public void unregisterCallback(android.telecom.RemoteConference.Callback); - } - - public abstract static class RemoteConference.Callback { - ctor public RemoteConference.Callback(); - method public void onConferenceableConnectionsChanged(android.telecom.RemoteConference, java.util.List); - method public void onConnectionAdded(android.telecom.RemoteConference, android.telecom.RemoteConnection); - method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConference, int); - method public void onConnectionPropertiesChanged(android.telecom.RemoteConference, int); - method public void onConnectionRemoved(android.telecom.RemoteConference, android.telecom.RemoteConnection); - method public void onDestroyed(android.telecom.RemoteConference); - method public void onDisconnected(android.telecom.RemoteConference, android.telecom.DisconnectCause); - method public void onExtrasChanged(android.telecom.RemoteConference, @Nullable android.os.Bundle); - method public void onStateChanged(android.telecom.RemoteConference, int, int); - } - - public final class RemoteConnection { - method public void abort(); - method public void addConferenceParticipants(@NonNull java.util.List); - method public void answer(); - method public void disconnect(); - method public android.net.Uri getAddress(); - method public int getAddressPresentation(); - method public CharSequence getCallerDisplayName(); - method public int getCallerDisplayNamePresentation(); - method public android.telecom.RemoteConference getConference(); - method public java.util.List getConferenceableConnections(); - method public int getConnectionCapabilities(); - method public int getConnectionProperties(); - method public android.telecom.DisconnectCause getDisconnectCause(); - method public android.os.Bundle getExtras(); - method public int getState(); - method public android.telecom.StatusHints getStatusHints(); - method public android.telecom.RemoteConnection.VideoProvider getVideoProvider(); - method public int getVideoState(); - method public void hold(); - method public boolean isRingbackRequested(); - method public boolean isVoipAudioMode(); - method public void playDtmfTone(char); - method public void postDialContinue(boolean); - method public void pullExternalCall(); - method public void registerCallback(android.telecom.RemoteConnection.Callback); - method public void registerCallback(android.telecom.RemoteConnection.Callback, android.os.Handler); - method public void reject(); - method public void setCallAudioState(android.telecom.CallAudioState); - method public void stopDtmfTone(); - method public void unhold(); - method public void unregisterCallback(android.telecom.RemoteConnection.Callback); - } - - public abstract static class RemoteConnection.Callback { - ctor public RemoteConnection.Callback(); - method public void onAddressChanged(android.telecom.RemoteConnection, android.net.Uri, int); - method public void onCallerDisplayNameChanged(android.telecom.RemoteConnection, String, int); - method public void onConferenceChanged(android.telecom.RemoteConnection, android.telecom.RemoteConference); - method public void onConferenceableConnectionsChanged(android.telecom.RemoteConnection, java.util.List); - method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConnection, int); - method public void onConnectionEvent(android.telecom.RemoteConnection, String, android.os.Bundle); - method public void onConnectionPropertiesChanged(android.telecom.RemoteConnection, int); - method public void onDestroyed(android.telecom.RemoteConnection); - method public void onDisconnected(android.telecom.RemoteConnection, android.telecom.DisconnectCause); - method public void onExtrasChanged(android.telecom.RemoteConnection, @Nullable android.os.Bundle); - method public void onPostDialChar(android.telecom.RemoteConnection, char); - method public void onPostDialWait(android.telecom.RemoteConnection, String); - method public void onRingbackRequested(android.telecom.RemoteConnection, boolean); - method public void onStateChanged(android.telecom.RemoteConnection, int); - method public void onStatusHintsChanged(android.telecom.RemoteConnection, android.telecom.StatusHints); - method public void onVideoProviderChanged(android.telecom.RemoteConnection, android.telecom.RemoteConnection.VideoProvider); - method public void onVideoStateChanged(android.telecom.RemoteConnection, int); - method public void onVoipAudioChanged(android.telecom.RemoteConnection, boolean); - } - - public static class RemoteConnection.VideoProvider { - method public void registerCallback(android.telecom.RemoteConnection.VideoProvider.Callback); - method public void requestCallDataUsage(); - method public void requestCameraCapabilities(); - method public void sendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile); - method public void sendSessionModifyResponse(android.telecom.VideoProfile); - method public void setCamera(String); - method public void setDeviceOrientation(int); - method public void setDisplaySurface(android.view.Surface); - method public void setPauseImage(android.net.Uri); - method public void setPreviewSurface(android.view.Surface); - method public void setZoom(float); - method public void unregisterCallback(android.telecom.RemoteConnection.VideoProvider.Callback); - } - - public abstract static class RemoteConnection.VideoProvider.Callback { - ctor public RemoteConnection.VideoProvider.Callback(); - method public void onCallDataUsageChanged(android.telecom.RemoteConnection.VideoProvider, long); - method public void onCallSessionEvent(android.telecom.RemoteConnection.VideoProvider, int); - method public void onCameraCapabilitiesChanged(android.telecom.RemoteConnection.VideoProvider, android.telecom.VideoProfile.CameraCapabilities); - method public void onPeerDimensionsChanged(android.telecom.RemoteConnection.VideoProvider, int, int); - method public void onSessionModifyRequestReceived(android.telecom.RemoteConnection.VideoProvider, android.telecom.VideoProfile); - method public void onSessionModifyResponseReceived(android.telecom.RemoteConnection.VideoProvider, int, android.telecom.VideoProfile, android.telecom.VideoProfile); - method public void onVideoQualityChanged(android.telecom.RemoteConnection.VideoProvider, int); - } - - public final class StatusHints implements android.os.Parcelable { - ctor public StatusHints(CharSequence, android.graphics.drawable.Icon, android.os.Bundle); - method public int describeContents(); - method public android.os.Bundle getExtras(); - method public android.graphics.drawable.Icon getIcon(); - method public CharSequence getLabel(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class TelecomManager { - method public void acceptHandover(android.net.Uri, int, android.telecom.PhoneAccountHandle); - method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ANSWER_PHONE_CALLS, android.Manifest.permission.MODIFY_PHONE_STATE}) public void acceptRingingCall(); - method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ANSWER_PHONE_CALLS, android.Manifest.permission.MODIFY_PHONE_STATE}) public void acceptRingingCall(int); - method @RequiresPermission(android.Manifest.permission.MANAGE_OWN_CALLS) public void addCall(@NonNull android.telecom.CallAttributes, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver, @NonNull android.telecom.CallControlCallback, @NonNull android.telecom.CallEventCallback); - method public void addNewIncomingCall(android.telecom.PhoneAccountHandle, android.os.Bundle); - method public void addNewIncomingConference(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.os.Bundle); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void cancelMissedCallsNotification(); - method public android.content.Intent createManageBlockedNumbersIntent(); - method @Deprecated @RequiresPermission(android.Manifest.permission.ANSWER_PHONE_CALLS) public boolean endCall(); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.net.Uri getAdnUriForPhoneAccount(android.telecom.PhoneAccountHandle); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getCallCapablePhoneAccounts(); - method @FlaggedApi("com.android.internal.telephony.flags.work_profile_api_split") @NonNull @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.INTERACT_ACROSS_PROFILES}) public java.util.List getCallCapablePhoneAccountsAcrossProfiles(); - method public String getDefaultDialerPackage(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telecom.PhoneAccountHandle getDefaultOutgoingPhoneAccount(String); - method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_SMS, android.Manifest.permission.READ_PHONE_NUMBERS}, conditional=true) public String getLine1Number(android.telecom.PhoneAccountHandle); - method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_OWN_CALLS) public java.util.List getOwnSelfManagedPhoneAccounts(); - method public android.telecom.PhoneAccount getPhoneAccount(android.telecom.PhoneAccountHandle); - method @FlaggedApi("com.android.server.telecom.flags.get_registered_phone_accounts") @NonNull public java.util.List getRegisteredPhoneAccounts(); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getSelfManagedPhoneAccounts(); - method public android.telecom.PhoneAccountHandle getSimCallManager(); - method @Nullable public android.telecom.PhoneAccountHandle getSimCallManagerForSubscription(int); - method @Nullable public String getSystemDialerPackage(); - method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telecom.PhoneAccountHandle getUserSelectedOutgoingPhoneAccount(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailNumber(android.telecom.PhoneAccountHandle); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handleMmi(String); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handleMmi(String, android.telecom.PhoneAccountHandle); - method public boolean hasManageOngoingCallsPermission(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isInCall(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isInManagedCall(); - method public boolean isIncomingCallPermitted(android.telecom.PhoneAccountHandle); - method public boolean isOutgoingCallPermitted(android.telecom.PhoneAccountHandle); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PHONE_STATE}) public boolean isTtySupported(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isVoiceMailNumber(android.telecom.PhoneAccountHandle, String); - method @RequiresPermission(anyOf={android.Manifest.permission.CALL_PHONE, android.Manifest.permission.MANAGE_OWN_CALLS}) public void placeCall(android.net.Uri, android.os.Bundle); - method public void registerPhoneAccount(android.telecom.PhoneAccount); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void showInCallScreen(boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void silenceRinger(); - method @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void startConference(@NonNull java.util.List, @NonNull android.os.Bundle); - method public void unregisterPhoneAccount(android.telecom.PhoneAccountHandle); - field public static final String ACTION_CHANGE_DEFAULT_DIALER = "android.telecom.action.CHANGE_DEFAULT_DIALER"; - field public static final String ACTION_CHANGE_PHONE_ACCOUNTS = "android.telecom.action.CHANGE_PHONE_ACCOUNTS"; - field public static final String ACTION_CONFIGURE_PHONE_ACCOUNT = "android.telecom.action.CONFIGURE_PHONE_ACCOUNT"; - field public static final String ACTION_DEFAULT_CALL_SCREENING_APP_CHANGED = "android.telecom.action.DEFAULT_CALL_SCREENING_APP_CHANGED"; - field public static final String ACTION_DEFAULT_DIALER_CHANGED = "android.telecom.action.DEFAULT_DIALER_CHANGED"; - field @Deprecated public static final String ACTION_INCOMING_CALL = "android.telecom.action.INCOMING_CALL"; - field public static final String ACTION_PHONE_ACCOUNT_REGISTERED = "android.telecom.action.PHONE_ACCOUNT_REGISTERED"; - field public static final String ACTION_PHONE_ACCOUNT_UNREGISTERED = "android.telecom.action.PHONE_ACCOUNT_UNREGISTERED"; - field public static final String ACTION_POST_CALL = "android.telecom.action.POST_CALL"; - field public static final String ACTION_SHOW_CALL_ACCESSIBILITY_SETTINGS = "android.telecom.action.SHOW_CALL_ACCESSIBILITY_SETTINGS"; - field public static final String ACTION_SHOW_CALL_SETTINGS = "android.telecom.action.SHOW_CALL_SETTINGS"; - field public static final String ACTION_SHOW_MISSED_CALLS_NOTIFICATION = "android.telecom.action.SHOW_MISSED_CALLS_NOTIFICATION"; - field public static final String ACTION_SHOW_RESPOND_VIA_SMS_SETTINGS = "android.telecom.action.SHOW_RESPOND_VIA_SMS_SETTINGS"; - field public static final char DTMF_CHARACTER_PAUSE = 44; // 0x002c ',' - field public static final char DTMF_CHARACTER_WAIT = 59; // 0x003b ';' - field public static final int DURATION_LONG = 3; // 0x3 - field public static final int DURATION_MEDIUM = 2; // 0x2 - field public static final int DURATION_SHORT = 1; // 0x1 - field public static final int DURATION_VERY_SHORT = 0; // 0x0 - field public static final String EXTRA_CALL_BACK_NUMBER = "android.telecom.extra.CALL_BACK_NUMBER"; - field public static final String EXTRA_CALL_DISCONNECT_CAUSE = "android.telecom.extra.CALL_DISCONNECT_CAUSE"; - field public static final String EXTRA_CALL_DISCONNECT_MESSAGE = "android.telecom.extra.CALL_DISCONNECT_MESSAGE"; - field public static final String EXTRA_CALL_DURATION = "android.telecom.extra.CALL_DURATION"; - field @FlaggedApi("com.android.server.telecom.flags.add_call_uri_for_missed_calls") public static final String EXTRA_CALL_LOG_URI = "android.telecom.extra.CALL_LOG_URI"; - field public static final String EXTRA_CALL_NETWORK_TYPE = "android.telecom.extra.CALL_NETWORK_TYPE"; - field public static final String EXTRA_CALL_SUBJECT = "android.telecom.extra.CALL_SUBJECT"; - field public static final String EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME = "android.telecom.extra.CHANGE_DEFAULT_DIALER_PACKAGE_NAME"; - field public static final String EXTRA_DEFAULT_CALL_SCREENING_APP_COMPONENT_NAME = "android.telecom.extra.DEFAULT_CALL_SCREENING_APP_COMPONENT_NAME"; - field public static final String EXTRA_DISCONNECT_CAUSE = "android.telecom.extra.DISCONNECT_CAUSE"; - field public static final String EXTRA_HANDLE = "android.telecom.extra.HANDLE"; - field public static final String EXTRA_HAS_PICTURE = "android.telecom.extra.HAS_PICTURE"; - field public static final String EXTRA_INCOMING_CALL_ADDRESS = "android.telecom.extra.INCOMING_CALL_ADDRESS"; - field public static final String EXTRA_INCOMING_CALL_EXTRAS = "android.telecom.extra.INCOMING_CALL_EXTRAS"; - field public static final String EXTRA_INCOMING_VIDEO_STATE = "android.telecom.extra.INCOMING_VIDEO_STATE"; - field public static final String EXTRA_IS_DEFAULT_CALL_SCREENING_APP = "android.telecom.extra.IS_DEFAULT_CALL_SCREENING_APP"; - field public static final String EXTRA_LOCATION = "android.telecom.extra.LOCATION"; - field public static final String EXTRA_NOTIFICATION_COUNT = "android.telecom.extra.NOTIFICATION_COUNT"; - field public static final String EXTRA_NOTIFICATION_PHONE_NUMBER = "android.telecom.extra.NOTIFICATION_PHONE_NUMBER"; - field public static final String EXTRA_OUTGOING_CALL_EXTRAS = "android.telecom.extra.OUTGOING_CALL_EXTRAS"; - field public static final String EXTRA_OUTGOING_PICTURE = "android.telecom.extra.OUTGOING_PICTURE"; - field public static final String EXTRA_PHONE_ACCOUNT_HANDLE = "android.telecom.extra.PHONE_ACCOUNT_HANDLE"; - field public static final String EXTRA_PICTURE_URI = "android.telecom.extra.PICTURE_URI"; - field public static final String EXTRA_PRIORITY = "android.telecom.extra.PRIORITY"; - field public static final String EXTRA_START_CALL_WITH_RTT = "android.telecom.extra.START_CALL_WITH_RTT"; - field public static final String EXTRA_START_CALL_WITH_SPEAKERPHONE = "android.telecom.extra.START_CALL_WITH_SPEAKERPHONE"; - field public static final String EXTRA_START_CALL_WITH_VIDEO_STATE = "android.telecom.extra.START_CALL_WITH_VIDEO_STATE"; - field public static final String EXTRA_USE_ASSISTED_DIALING = "android.telecom.extra.USE_ASSISTED_DIALING"; - field public static final String GATEWAY_ORIGINAL_ADDRESS = "android.telecom.extra.GATEWAY_ORIGINAL_ADDRESS"; - field public static final String GATEWAY_PROVIDER_PACKAGE = "android.telecom.extra.GATEWAY_PROVIDER_PACKAGE"; - field public static final String METADATA_INCLUDE_EXTERNAL_CALLS = "android.telecom.INCLUDE_EXTERNAL_CALLS"; - field public static final String METADATA_INCLUDE_SELF_MANAGED_CALLS = "android.telecom.INCLUDE_SELF_MANAGED_CALLS"; - field public static final String METADATA_IN_CALL_SERVICE_CAR_MODE_UI = "android.telecom.IN_CALL_SERVICE_CAR_MODE_UI"; - field public static final String METADATA_IN_CALL_SERVICE_RINGING = "android.telecom.IN_CALL_SERVICE_RINGING"; - field public static final String METADATA_IN_CALL_SERVICE_UI = "android.telecom.IN_CALL_SERVICE_UI"; - field public static final int PRESENTATION_ALLOWED = 1; // 0x1 - field public static final int PRESENTATION_PAYPHONE = 4; // 0x4 - field public static final int PRESENTATION_RESTRICTED = 2; // 0x2 - field public static final int PRESENTATION_UNAVAILABLE = 5; // 0x5 - field public static final int PRESENTATION_UNKNOWN = 3; // 0x3 - field public static final int PRIORITY_NORMAL = 0; // 0x0 - field public static final int PRIORITY_URGENT = 1; // 0x1 - } - - public class VideoProfile implements android.os.Parcelable { - ctor public VideoProfile(int); - ctor public VideoProfile(int, int); - method public int describeContents(); - method public int getQuality(); - method public int getVideoState(); - method public static boolean isAudioOnly(int); - method public static boolean isBidirectional(int); - method public static boolean isPaused(int); - method public static boolean isReceptionEnabled(int); - method public static boolean isTransmissionEnabled(int); - method public static boolean isVideo(int); - method public static String videoStateToString(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int QUALITY_DEFAULT = 4; // 0x4 - field public static final int QUALITY_HIGH = 1; // 0x1 - field public static final int QUALITY_LOW = 3; // 0x3 - field public static final int QUALITY_MEDIUM = 2; // 0x2 - field public static final int STATE_AUDIO_ONLY = 0; // 0x0 - field public static final int STATE_BIDIRECTIONAL = 3; // 0x3 - field public static final int STATE_PAUSED = 4; // 0x4 - field public static final int STATE_RX_ENABLED = 2; // 0x2 - field public static final int STATE_TX_ENABLED = 1; // 0x1 - } - - public static final class VideoProfile.CameraCapabilities implements android.os.Parcelable { - ctor public VideoProfile.CameraCapabilities(@IntRange(from=0) int, @IntRange(from=0) int); - ctor public VideoProfile.CameraCapabilities(@IntRange(from=0) int, @IntRange(from=0) int, boolean, @FloatRange(from=1.0f) float); - method public int describeContents(); - method public int getHeight(); - method public float getMaxZoom(); - method public int getWidth(); - method public boolean isZoomSupported(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.telephony { - - public final class AccessNetworkConstants { - field public static final int TRANSPORT_TYPE_WLAN = 2; // 0x2 - field public static final int TRANSPORT_TYPE_WWAN = 1; // 0x1 - } - - public static final class AccessNetworkConstants.AccessNetworkType { - field public static final int CDMA2000 = 4; // 0x4 - field public static final int EUTRAN = 3; // 0x3 - field public static final int GERAN = 1; // 0x1 - field public static final int IWLAN = 5; // 0x5 - field public static final int NGRAN = 6; // 0x6 - field public static final int UNKNOWN = 0; // 0x0 - field public static final int UTRAN = 2; // 0x2 - } - - public static final class AccessNetworkConstants.EutranBand { - field public static final int BAND_1 = 1; // 0x1 - field public static final int BAND_10 = 10; // 0xa - field public static final int BAND_11 = 11; // 0xb - field public static final int BAND_12 = 12; // 0xc - field public static final int BAND_13 = 13; // 0xd - field public static final int BAND_14 = 14; // 0xe - field public static final int BAND_17 = 17; // 0x11 - field public static final int BAND_18 = 18; // 0x12 - field public static final int BAND_19 = 19; // 0x13 - field public static final int BAND_2 = 2; // 0x2 - field public static final int BAND_20 = 20; // 0x14 - field public static final int BAND_21 = 21; // 0x15 - field public static final int BAND_22 = 22; // 0x16 - field public static final int BAND_23 = 23; // 0x17 - field public static final int BAND_24 = 24; // 0x18 - field public static final int BAND_25 = 25; // 0x19 - field public static final int BAND_26 = 26; // 0x1a - field public static final int BAND_27 = 27; // 0x1b - field public static final int BAND_28 = 28; // 0x1c - field public static final int BAND_3 = 3; // 0x3 - field public static final int BAND_30 = 30; // 0x1e - field public static final int BAND_31 = 31; // 0x1f - field public static final int BAND_33 = 33; // 0x21 - field public static final int BAND_34 = 34; // 0x22 - field public static final int BAND_35 = 35; // 0x23 - field public static final int BAND_36 = 36; // 0x24 - field public static final int BAND_37 = 37; // 0x25 - field public static final int BAND_38 = 38; // 0x26 - field public static final int BAND_39 = 39; // 0x27 - field public static final int BAND_4 = 4; // 0x4 - field public static final int BAND_40 = 40; // 0x28 - field public static final int BAND_41 = 41; // 0x29 - field public static final int BAND_42 = 42; // 0x2a - field public static final int BAND_43 = 43; // 0x2b - field public static final int BAND_44 = 44; // 0x2c - field public static final int BAND_45 = 45; // 0x2d - field public static final int BAND_46 = 46; // 0x2e - field public static final int BAND_47 = 47; // 0x2f - field public static final int BAND_48 = 48; // 0x30 - field public static final int BAND_49 = 49; // 0x31 - field public static final int BAND_5 = 5; // 0x5 - field public static final int BAND_50 = 50; // 0x32 - field public static final int BAND_51 = 51; // 0x33 - field public static final int BAND_52 = 52; // 0x34 - field public static final int BAND_53 = 53; // 0x35 - field public static final int BAND_6 = 6; // 0x6 - field public static final int BAND_65 = 65; // 0x41 - field public static final int BAND_66 = 66; // 0x42 - field public static final int BAND_68 = 68; // 0x44 - field public static final int BAND_7 = 7; // 0x7 - field public static final int BAND_70 = 70; // 0x46 - field public static final int BAND_71 = 71; // 0x47 - field public static final int BAND_72 = 72; // 0x48 - field public static final int BAND_73 = 73; // 0x49 - field public static final int BAND_74 = 74; // 0x4a - field public static final int BAND_8 = 8; // 0x8 - field public static final int BAND_85 = 85; // 0x55 - field public static final int BAND_87 = 87; // 0x57 - field public static final int BAND_88 = 88; // 0x58 - field public static final int BAND_9 = 9; // 0x9 - } - - public static final class AccessNetworkConstants.GeranBand { - field public static final int BAND_450 = 3; // 0x3 - field public static final int BAND_480 = 4; // 0x4 - field public static final int BAND_710 = 5; // 0x5 - field public static final int BAND_750 = 6; // 0x6 - field public static final int BAND_850 = 8; // 0x8 - field public static final int BAND_DCS1800 = 12; // 0xc - field public static final int BAND_E900 = 10; // 0xa - field public static final int BAND_ER900 = 14; // 0xe - field public static final int BAND_P900 = 9; // 0x9 - field public static final int BAND_PCS1900 = 13; // 0xd - field public static final int BAND_R900 = 11; // 0xb - field public static final int BAND_T380 = 1; // 0x1 - field public static final int BAND_T410 = 2; // 0x2 - field public static final int BAND_T810 = 7; // 0x7 - } - - public static final class AccessNetworkConstants.NgranBands { - field public static final int BAND_1 = 1; // 0x1 - field public static final int BAND_12 = 12; // 0xc - field public static final int BAND_14 = 14; // 0xe - field public static final int BAND_18 = 18; // 0x12 - field public static final int BAND_2 = 2; // 0x2 - field public static final int BAND_20 = 20; // 0x14 - field public static final int BAND_25 = 25; // 0x19 - field public static final int BAND_257 = 257; // 0x101 - field public static final int BAND_258 = 258; // 0x102 - field public static final int BAND_26 = 26; // 0x1a - field public static final int BAND_260 = 260; // 0x104 - field public static final int BAND_261 = 261; // 0x105 - field public static final int BAND_28 = 28; // 0x1c - field public static final int BAND_29 = 29; // 0x1d - field public static final int BAND_3 = 3; // 0x3 - field public static final int BAND_30 = 30; // 0x1e - field public static final int BAND_34 = 34; // 0x22 - field public static final int BAND_38 = 38; // 0x26 - field public static final int BAND_39 = 39; // 0x27 - field public static final int BAND_40 = 40; // 0x28 - field public static final int BAND_41 = 41; // 0x29 - field public static final int BAND_46 = 46; // 0x2e - field public static final int BAND_48 = 48; // 0x30 - field public static final int BAND_5 = 5; // 0x5 - field public static final int BAND_50 = 50; // 0x32 - field public static final int BAND_51 = 51; // 0x33 - field public static final int BAND_53 = 53; // 0x35 - field public static final int BAND_65 = 65; // 0x41 - field public static final int BAND_66 = 66; // 0x42 - field public static final int BAND_7 = 7; // 0x7 - field public static final int BAND_70 = 70; // 0x46 - field public static final int BAND_71 = 71; // 0x47 - field public static final int BAND_74 = 74; // 0x4a - field public static final int BAND_75 = 75; // 0x4b - field public static final int BAND_76 = 76; // 0x4c - field public static final int BAND_77 = 77; // 0x4d - field public static final int BAND_78 = 78; // 0x4e - field public static final int BAND_79 = 79; // 0x4f - field public static final int BAND_8 = 8; // 0x8 - field public static final int BAND_80 = 80; // 0x50 - field public static final int BAND_81 = 81; // 0x51 - field public static final int BAND_82 = 82; // 0x52 - field public static final int BAND_83 = 83; // 0x53 - field public static final int BAND_84 = 84; // 0x54 - field public static final int BAND_86 = 86; // 0x56 - field public static final int BAND_89 = 89; // 0x59 - field public static final int BAND_90 = 90; // 0x5a - field public static final int BAND_91 = 91; // 0x5b - field public static final int BAND_92 = 92; // 0x5c - field public static final int BAND_93 = 93; // 0x5d - field public static final int BAND_94 = 94; // 0x5e - field public static final int BAND_95 = 95; // 0x5f - field public static final int BAND_96 = 96; // 0x60 - } - - public static final class AccessNetworkConstants.UtranBand { - field public static final int BAND_1 = 1; // 0x1 - field public static final int BAND_10 = 10; // 0xa - field public static final int BAND_11 = 11; // 0xb - field public static final int BAND_12 = 12; // 0xc - field public static final int BAND_13 = 13; // 0xd - field public static final int BAND_14 = 14; // 0xe - field public static final int BAND_19 = 19; // 0x13 - field public static final int BAND_2 = 2; // 0x2 - field public static final int BAND_20 = 20; // 0x14 - field public static final int BAND_21 = 21; // 0x15 - field public static final int BAND_22 = 22; // 0x16 - field public static final int BAND_25 = 25; // 0x19 - field public static final int BAND_26 = 26; // 0x1a - field public static final int BAND_3 = 3; // 0x3 - field public static final int BAND_4 = 4; // 0x4 - field public static final int BAND_5 = 5; // 0x5 - field public static final int BAND_6 = 6; // 0x6 - field public static final int BAND_7 = 7; // 0x7 - field public static final int BAND_8 = 8; // 0x8 - field public static final int BAND_9 = 9; // 0x9 - field public static final int BAND_A = 101; // 0x65 - field public static final int BAND_B = 102; // 0x66 - field public static final int BAND_C = 103; // 0x67 - field public static final int BAND_D = 104; // 0x68 - field public static final int BAND_E = 105; // 0x69 - field public static final int BAND_F = 106; // 0x6a - } - - public final class AvailableNetworkInfo implements android.os.Parcelable { - ctor public AvailableNetworkInfo(int, int, @NonNull java.util.List, @NonNull java.util.List); - method public int describeContents(); - method @NonNull public java.util.List getBands(); - method @NonNull public java.util.List getMccMncs(); - method public int getPriority(); - method @NonNull public java.util.List getRadioAccessSpecifiers(); - method public int getSubId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int PRIORITY_HIGH = 1; // 0x1 - field public static final int PRIORITY_LOW = 3; // 0x3 - field public static final int PRIORITY_MED = 2; // 0x2 - } - - public static final class AvailableNetworkInfo.Builder { - ctor public AvailableNetworkInfo.Builder(int); - method @NonNull public android.telephony.AvailableNetworkInfo build(); - method @NonNull public android.telephony.AvailableNetworkInfo.Builder setMccMncs(@NonNull java.util.List); - method @NonNull public android.telephony.AvailableNetworkInfo.Builder setPriority(int); - method @NonNull public android.telephony.AvailableNetworkInfo.Builder setRadioAccessSpecifiers(@NonNull java.util.List); - } - - public final class BarringInfo implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.telephony.BarringInfo.BarringServiceInfo getBarringServiceInfo(int); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int BARRING_SERVICE_TYPE_CS_FALLBACK = 5; // 0x5 - field public static final int BARRING_SERVICE_TYPE_CS_SERVICE = 0; // 0x0 - field public static final int BARRING_SERVICE_TYPE_CS_VOICE = 2; // 0x2 - field public static final int BARRING_SERVICE_TYPE_EMERGENCY = 8; // 0x8 - field public static final int BARRING_SERVICE_TYPE_MMTEL_VIDEO = 7; // 0x7 - field public static final int BARRING_SERVICE_TYPE_MMTEL_VOICE = 6; // 0x6 - field public static final int BARRING_SERVICE_TYPE_MO_DATA = 4; // 0x4 - field public static final int BARRING_SERVICE_TYPE_MO_SIGNALLING = 3; // 0x3 - field public static final int BARRING_SERVICE_TYPE_PS_SERVICE = 1; // 0x1 - field public static final int BARRING_SERVICE_TYPE_SMS = 9; // 0x9 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class BarringInfo.BarringServiceInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getBarringType(); - method public int getConditionalBarringFactor(); - method public int getConditionalBarringTimeSeconds(); - method public boolean isBarred(); - method public boolean isConditionallyBarred(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int BARRING_TYPE_CONDITIONAL = 1; // 0x1 - field public static final int BARRING_TYPE_NONE = 0; // 0x0 - field public static final int BARRING_TYPE_UNCONDITIONAL = 2; // 0x2 - field public static final int BARRING_TYPE_UNKNOWN = -1; // 0xffffffff - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class CarrierConfigManager { - method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.os.PersistableBundle getConfig(); - method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public android.os.PersistableBundle getConfig(@NonNull java.lang.String...); - method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.os.PersistableBundle getConfigByComponentForSubId(@NonNull String, int); - method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.os.PersistableBundle getConfigForSubId(int); - method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public android.os.PersistableBundle getConfigForSubId(int, @NonNull java.lang.String...); - method public static boolean isConfigForIdentifiedCarrier(android.os.PersistableBundle); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyConfigChangedForSubId(int); - method public void registerCarrierConfigChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.CarrierConfigManager.CarrierConfigChangeListener); - method public void unregisterCarrierConfigChangeListener(@NonNull android.telephony.CarrierConfigManager.CarrierConfigChangeListener); - field public static final String ACTION_CARRIER_CONFIG_CHANGED = "android.telephony.action.CARRIER_CONFIG_CHANGED"; - field public static final int CARRIER_NR_AVAILABILITY_NSA = 1; // 0x1 - field public static final int CARRIER_NR_AVAILABILITY_SA = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC = 0; // 0x0 - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int CARRIER_ROAMING_NTN_CONNECT_MANUAL = 1; // 0x1 - field public static final int CROSS_SIM_SPN_FORMAT_CARRIER_NAME_ONLY = 0; // 0x0 - field public static final int CROSS_SIM_SPN_FORMAT_CARRIER_NAME_WITH_BRANDING = 1; // 0x1 - field public static final int DATA_CYCLE_THRESHOLD_DISABLED = -2; // 0xfffffffe - field public static final int DATA_CYCLE_USE_PLATFORM_DEFAULT = -1; // 0xffffffff - field public static final String ENABLE_EAP_METHOD_PREFIX_BOOL = "enable_eap_method_prefix_bool"; - field public static final String EXTRA_REBROADCAST_ON_UNLOCK = "android.telephony.extra.REBROADCAST_ON_UNLOCK"; - field public static final String EXTRA_SLOT_INDEX = "android.telephony.extra.SLOT_INDEX"; - field public static final String EXTRA_SUBSCRIPTION_INDEX = "android.telephony.extra.SUBSCRIPTION_INDEX"; - field public static final String IMSI_KEY_AVAILABILITY_INT = "imsi_key_availability_int"; - field public static final String KEY_5G_NR_SSRSRP_THRESHOLDS_INT_ARRAY = "5g_nr_ssrsrp_thresholds_int_array"; - field public static final String KEY_5G_NR_SSRSRQ_THRESHOLDS_INT_ARRAY = "5g_nr_ssrsrq_thresholds_int_array"; - field public static final String KEY_5G_NR_SSSINR_THRESHOLDS_INT_ARRAY = "5g_nr_sssinr_thresholds_int_array"; - field public static final String KEY_ADDITIONAL_CALL_SETTING_BOOL = "additional_call_setting_bool"; - field public static final String KEY_ADDITIONAL_SETTINGS_CALLER_ID_VISIBILITY_BOOL = "additional_settings_caller_id_visibility_bool"; - field public static final String KEY_ADDITIONAL_SETTINGS_CALL_WAITING_VISIBILITY_BOOL = "additional_settings_call_waiting_visibility_bool"; - field public static final String KEY_ALLOW_ADDING_APNS_BOOL = "allow_adding_apns_bool"; - field public static final String KEY_ALLOW_ADD_CALL_DURING_VIDEO_CALL_BOOL = "allow_add_call_during_video_call"; - field public static final String KEY_ALLOW_EMERGENCY_NUMBERS_IN_CALL_LOG_BOOL = "allow_emergency_numbers_in_call_log_bool"; - field public static final String KEY_ALLOW_EMERGENCY_VIDEO_CALLS_BOOL = "allow_emergency_video_calls_bool"; - field public static final String KEY_ALLOW_HOLD_CALL_DURING_EMERGENCY_BOOL = "allow_hold_call_during_emergency_bool"; - field public static final String KEY_ALLOW_HOLD_VIDEO_CALL_BOOL = "allow_hold_video_call_bool"; - field public static final String KEY_ALLOW_LOCAL_DTMF_TONES_BOOL = "allow_local_dtmf_tones_bool"; - field public static final String KEY_ALLOW_MERGE_WIFI_CALLS_WHEN_VOWIFI_OFF_BOOL = "allow_merge_wifi_calls_when_vowifi_off_bool"; - field public static final String KEY_ALLOW_NON_EMERGENCY_CALLS_IN_ECM_BOOL = "allow_non_emergency_calls_in_ecm_bool"; - field public static final String KEY_ALLOW_VIDEO_CALLING_FALLBACK_BOOL = "allow_video_calling_fallback_bool"; - field public static final String KEY_ALWAYS_SHOW_DATA_RAT_ICON_BOOL = "always_show_data_rat_icon_bool"; - field @Deprecated public static final String KEY_ALWAYS_SHOW_EMERGENCY_ALERT_ONOFF_BOOL = "always_show_emergency_alert_onoff_bool"; - field public static final String KEY_ALWAYS_SHOW_PRIMARY_SIGNAL_BAR_IN_OPPORTUNISTIC_NETWORK_BOOLEAN = "always_show_primary_signal_bar_in_opportunistic_network_boolean"; - field public static final String KEY_APN_EXPAND_BOOL = "apn_expand_bool"; - field public static final String KEY_APN_SETTINGS_DEFAULT_APN_TYPES_STRING_ARRAY = "apn_settings_default_apn_types_string_array"; - field public static final String KEY_AUTO_RETRY_ENABLED_BOOL = "auto_retry_enabled_bool"; - field public static final String KEY_CALL_BARRING_DEFAULT_SERVICE_CLASS_INT = "call_barring_default_service_class_int"; - field public static final String KEY_CALL_BARRING_SUPPORTS_DEACTIVATE_ALL_BOOL = "call_barring_supports_deactivate_all_bool"; - field public static final String KEY_CALL_BARRING_SUPPORTS_PASSWORD_CHANGE_BOOL = "call_barring_supports_password_change_bool"; - field public static final String KEY_CALL_BARRING_VISIBILITY_BOOL = "call_barring_visibility_bool"; - field public static final String KEY_CALL_COMPOSER_PICTURE_SERVER_URL_STRING = "call_composer_picture_server_url_string"; - field public static final String KEY_CALL_FORWARDING_BLOCKS_WHILE_ROAMING_STRING_ARRAY = "call_forwarding_blocks_while_roaming_string_array"; - field public static final String KEY_CALL_REDIRECTION_SERVICE_COMPONENT_NAME_STRING = "call_redirection_service_component_name_string"; - field public static final String KEY_CAPABILITIES_EXEMPT_FROM_SINGLE_DC_CHECK_INT_ARRAY = "capabilities_exempt_from_single_dc_check_int_array"; - field public static final String KEY_CARRIER_ALLOW_DEFLECT_IMS_CALL_BOOL = "carrier_allow_deflect_ims_call_bool"; - field public static final String KEY_CARRIER_ALLOW_TURNOFF_IMS_BOOL = "carrier_allow_turnoff_ims_bool"; - field public static final String KEY_CARRIER_APP_REQUIRED_DURING_SIM_SETUP_BOOL = "carrier_app_required_during_setup_bool"; - field public static final String KEY_CARRIER_CALL_SCREENING_APP_STRING = "call_screening_app"; - field public static final String KEY_CARRIER_CERTIFICATE_STRING_ARRAY = "carrier_certificate_string_array"; - field public static final String KEY_CARRIER_CONFIG_APPLIED_BOOL = "carrier_config_applied_bool"; - field public static final String KEY_CARRIER_CONFIG_VERSION_STRING = "carrier_config_version_string"; - field public static final String KEY_CARRIER_CROSS_SIM_IMS_AVAILABLE_BOOL = "carrier_cross_sim_ims_available_bool"; - field @Deprecated public static final String KEY_CARRIER_DATA_CALL_PERMANENT_FAILURE_STRINGS = "carrier_data_call_permanent_failure_strings"; - field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_DCFAILURE_STRING_ARRAY = "carrier_default_actions_on_dcfailure_string_array"; - field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_DEFAULT_NETWORK_AVAILABLE = "carrier_default_actions_on_default_network_available_string_array"; - field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_REDIRECTION_STRING_ARRAY = "carrier_default_actions_on_redirection_string_array"; - field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_RESET = "carrier_default_actions_on_reset_string_array"; - field public static final String KEY_CARRIER_DEFAULT_REDIRECTION_URL_STRING_ARRAY = "carrier_default_redirection_url_string_array"; - field public static final String KEY_CARRIER_DEFAULT_WFC_IMS_ENABLED_BOOL = "carrier_default_wfc_ims_enabled_bool"; - field public static final String KEY_CARRIER_DEFAULT_WFC_IMS_MODE_INT = "carrier_default_wfc_ims_mode_int"; - field public static final String KEY_CARRIER_DEFAULT_WFC_IMS_ROAMING_MODE_INT = "carrier_default_wfc_ims_roaming_mode_int"; - field @Deprecated public static final String KEY_CARRIER_FORCE_DISABLE_ETWS_CMAS_TEST_BOOL = "carrier_force_disable_etws_cmas_test_bool"; - field public static final String KEY_CARRIER_IMS_GBA_REQUIRED_BOOL = "carrier_ims_gba_required_bool"; - field public static final String KEY_CARRIER_INSTANT_LETTERING_AVAILABLE_BOOL = "carrier_instant_lettering_available_bool"; - field public static final String KEY_CARRIER_INSTANT_LETTERING_ENCODING_STRING = "carrier_instant_lettering_encoding_string"; - field public static final String KEY_CARRIER_INSTANT_LETTERING_ESCAPED_CHARS_STRING = "carrier_instant_lettering_escaped_chars_string"; - field public static final String KEY_CARRIER_INSTANT_LETTERING_INVALID_CHARS_STRING = "carrier_instant_lettering_invalid_chars_string"; - field public static final String KEY_CARRIER_INSTANT_LETTERING_LENGTH_LIMIT_INT = "carrier_instant_lettering_length_limit_int"; - field public static final String KEY_CARRIER_METERED_APN_TYPES_STRINGS = "carrier_metered_apn_types_strings"; - field public static final String KEY_CARRIER_METERED_ROAMING_APN_TYPES_STRINGS = "carrier_metered_roaming_apn_types_strings"; - field public static final String KEY_CARRIER_NAME_OVERRIDE_BOOL = "carrier_name_override_bool"; - field public static final String KEY_CARRIER_NAME_STRING = "carrier_name_string"; - field public static final String KEY_CARRIER_NR_AVAILABILITIES_INT_ARRAY = "carrier_nr_availabilities_int_array"; - field public static final String KEY_CARRIER_PROVISIONS_WIFI_MERGED_NETWORKS_BOOL = "carrier_provisions_wifi_merged_networks_bool"; - field public static final String KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL = "carrier_rcs_provisioning_required_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT = "carrier_roaming_ntn_connect_type_int"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_CARRIER_ROAMING_NTN_EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_INT = "carrier_roaming_ntn_emergency_call_to_satellite_handover_type_int"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_CARRIER_ROAMING_SATELLITE_DEFAULT_SERVICES_INT_ARRAY = "carrier_roaming_satellite_default_services_int_array"; - field public static final String KEY_CARRIER_SERVICE_NAME_STRING_ARRAY = "carrier_service_name_array"; - field public static final String KEY_CARRIER_SERVICE_NUMBER_STRING_ARRAY = "carrier_service_number_array"; - field public static final String KEY_CARRIER_SETTINGS_ACTIVITY_COMPONENT_NAME_STRING = "carrier_settings_activity_component_name_string"; - field public static final String KEY_CARRIER_SETTINGS_ENABLE_BOOL = "carrier_settings_enable_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_CARRIER_SUPPORTED_SATELLITE_NOTIFICATION_HYSTERESIS_SEC_INT = "carrier_supported_satellite_notification_hysteresis_sec_int"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_CARRIER_SUPPORTED_SATELLITE_SERVICES_PER_PROVIDER_BUNDLE = "carrier_supported_satellite_services_per_provider_bundle"; - field public static final String KEY_CARRIER_SUPPORTS_OPP_DATA_AUTO_PROVISIONING_BOOL = "carrier_supports_opp_data_auto_provisioning_bool"; - field public static final String KEY_CARRIER_SUPPORTS_SS_OVER_UT_BOOL = "carrier_supports_ss_over_ut_bool"; - field public static final String KEY_CARRIER_SUPPORTS_TETHERING_BOOL = "carrier_supports_tethering_bool"; - field public static final String KEY_CARRIER_USE_IMS_FIRST_FOR_EMERGENCY_BOOL = "carrier_use_ims_first_for_emergency_bool"; - field public static final String KEY_CARRIER_USSD_METHOD_INT = "carrier_ussd_method_int"; - field @Deprecated public static final String KEY_CARRIER_UT_PROVISIONING_REQUIRED_BOOL = "carrier_ut_provisioning_required_bool"; - field public static final String KEY_CARRIER_VOLTE_AVAILABLE_BOOL = "carrier_volte_available_bool"; - field public static final String KEY_CARRIER_VOLTE_OVERRIDE_WFC_PROVISIONING_BOOL = "carrier_volte_override_wfc_provisioning_bool"; - field @Deprecated public static final String KEY_CARRIER_VOLTE_PROVISIONED_BOOL = "carrier_volte_provisioned_bool"; - field @Deprecated public static final String KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL = "carrier_volte_provisioning_required_bool"; - field public static final String KEY_CARRIER_VOLTE_TTY_SUPPORTED_BOOL = "carrier_volte_tty_supported_bool"; - field public static final String KEY_CARRIER_VT_AVAILABLE_BOOL = "carrier_vt_available_bool"; - field @Deprecated public static final String KEY_CARRIER_VVM_PACKAGE_NAME_STRING = "carrier_vvm_package_name_string"; - field public static final String KEY_CARRIER_VVM_PACKAGE_NAME_STRING_ARRAY = "carrier_vvm_package_name_string_array"; - field public static final String KEY_CARRIER_WFC_IMS_AVAILABLE_BOOL = "carrier_wfc_ims_available_bool"; - field public static final String KEY_CARRIER_WFC_SUPPORTS_WIFI_ONLY_BOOL = "carrier_wfc_supports_wifi_only_bool"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_3WAYCALL_FLASH_DELAY_INT = "cdma_3waycall_flash_delay_int"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_DTMF_TONE_DELAY_INT = "cdma_dtmf_tone_delay_int"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_NONROAMING_NETWORKS_STRING_ARRAY = "cdma_nonroaming_networks_string_array"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_ROAMING_MODE_INT = "cdma_roaming_mode_int"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_ROAMING_NETWORKS_STRING_ARRAY = "cdma_roaming_networks_string_array"; - field public static final String KEY_CELLULAR_SERVICE_CAPABILITIES_INT_ARRAY = "cellular_service_capabilities_int_array"; - field public static final String KEY_CELLULAR_USAGE_SETTING_INT = "cellular_usage_setting_int"; - field public static final String KEY_CHECK_PRICING_WITH_CARRIER_FOR_DATA_ROAMING_BOOL = "check_pricing_with_carrier_data_roaming_bool"; - field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_BOOL = "ci_action_on_sys_update_bool"; - field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_STRING = "ci_action_on_sys_update_extra_string"; - field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_VAL_STRING = "ci_action_on_sys_update_extra_val_string"; - field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_INTENT_STRING = "ci_action_on_sys_update_intent_string"; - field public static final String KEY_CONFIG_IMS_MMTEL_PACKAGE_OVERRIDE_STRING = "config_ims_mmtel_package_override_string"; - field @Deprecated public static final String KEY_CONFIG_IMS_PACKAGE_OVERRIDE_STRING = "config_ims_package_override_string"; - field public static final String KEY_CONFIG_IMS_RCS_PACKAGE_OVERRIDE_STRING = "config_ims_rcs_package_override_string"; - field public static final String KEY_CONFIG_PLANS_PACKAGE_OVERRIDE_STRING = "config_plans_package_override_string"; - field public static final String KEY_CONFIG_TELEPHONY_USE_OWN_NUMBER_FOR_VOICEMAIL_BOOL = "config_telephony_use_own_number_for_voicemail_bool"; - field public static final String KEY_CONFIG_WIFI_DISABLE_IN_ECBM = "config_wifi_disable_in_ecbm"; - field public static final String KEY_CROSS_SIM_SPN_FORMAT_INT = "cross_sim_spn_format_int"; - field public static final String KEY_CSP_ENABLED_BOOL = "csp_enabled_bool"; - field public static final String KEY_DATA_LIMIT_NOTIFICATION_BOOL = "data_limit_notification_bool"; - field public static final String KEY_DATA_LIMIT_THRESHOLD_BYTES_LONG = "data_limit_threshold_bytes_long"; - field public static final String KEY_DATA_RAPID_NOTIFICATION_BOOL = "data_rapid_notification_bool"; - field public static final String KEY_DATA_SWITCH_VALIDATION_MIN_INTERVAL_MILLIS_LONG = "data_switch_validation_min_gap_long"; - field public static final String KEY_DATA_SWITCH_VALIDATION_TIMEOUT_LONG = "data_switch_validation_timeout_long"; - field public static final String KEY_DATA_WARNING_NOTIFICATION_BOOL = "data_warning_notification_bool"; - field public static final String KEY_DATA_WARNING_THRESHOLD_BYTES_LONG = "data_warning_threshold_bytes_long"; - field public static final String KEY_DEFAULT_SIM_CALL_MANAGER_STRING = "default_sim_call_manager_string"; - field public static final String KEY_DEFAULT_VM_NUMBER_ROAMING_AND_IMS_UNREGISTERED_STRING = "default_vm_number_roaming_and_ims_unregistered_string"; - field public static final String KEY_DEFAULT_VM_NUMBER_STRING = "default_vm_number_string"; - field public static final String KEY_DIAL_STRING_REPLACE_STRING_ARRAY = "dial_string_replace_string_array"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_DISABLE_CDMA_ACTIVATION_CODE_BOOL = "disable_cdma_activation_code_bool"; - field public static final String KEY_DISABLE_CHARGE_INDICATION_BOOL = "disable_charge_indication_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_DISABLE_DUN_APN_WHILE_ROAMING_WITH_PRESET_APN_BOOL = "disable_dun_apn_while_roaming_with_preset_apn_bool"; - field public static final String KEY_DISABLE_SUPPLEMENTARY_SERVICES_IN_AIRPLANE_MODE_BOOL = "disable_supplementary_services_in_airplane_mode_bool"; - field public static final String KEY_DISCONNECT_CAUSE_PLAY_BUSYTONE_INT_ARRAY = "disconnect_cause_play_busytone_int_array"; - field public static final String KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL = "display_call_strength_indicator_bool"; - field public static final String KEY_DISPLAY_HD_AUDIO_PROPERTY_BOOL = "display_hd_audio_property_bool"; - field public static final String KEY_DROP_VIDEO_CALL_WHEN_ANSWERING_AUDIO_CALL_BOOL = "drop_video_call_when_answering_audio_call_bool"; - field public static final String KEY_DTMF_TYPE_ENABLED_BOOL = "dtmf_type_enabled_bool"; - field public static final String KEY_DURATION_BLOCKING_DISABLED_AFTER_EMERGENCY_INT = "duration_blocking_disabled_after_emergency_int"; - field public static final String KEY_EDITABLE_ENHANCED_4G_LTE_BOOL = "editable_enhanced_4g_lte_bool"; - field public static final String KEY_EDITABLE_VOICEMAIL_NUMBER_BOOL = "editable_voicemail_number_bool"; - field public static final String KEY_EDITABLE_VOICEMAIL_NUMBER_SETTING_BOOL = "editable_voicemail_number_setting_bool"; - field public static final String KEY_EDITABLE_WFC_MODE_BOOL = "editable_wfc_mode_bool"; - field public static final String KEY_EDITABLE_WFC_ROAMING_MODE_BOOL = "editable_wfc_roaming_mode_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_EMERGENCY_CALL_TO_SATELLITE_T911_HANDOVER_TIMEOUT_MILLIS_INT = "emergency_call_to_satellite_t911_handover_timeout_millis_int"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_EMERGENCY_MESSAGING_SUPPORTED_BOOL = "emergency_messaging_supported_bool"; - field public static final String KEY_EMERGENCY_NOTIFICATION_DELAY_INT = "emergency_notification_delay_int"; - field public static final String KEY_EMERGENCY_NUMBER_PREFIX_STRING_ARRAY = "emergency_number_prefix_string_array"; - field public static final String KEY_ENABLE_CROSS_SIM_CALLING_ON_OPPORTUNISTIC_DATA_BOOL = "enable_cross_sim_calling_on_opportunistic_data_bool"; - field public static final String KEY_ENABLE_DIALER_KEY_VIBRATION_BOOL = "enable_dialer_key_vibration_bool"; - field public static final String KEY_ENHANCED_4G_LTE_ON_BY_DEFAULT_BOOL = "enhanced_4g_lte_on_by_default_bool"; - field public static final String KEY_ENHANCED_4G_LTE_TITLE_VARIANT_INT = "enhanced_4g_lte_title_variant_int"; - field public static final String KEY_ESIM_DOWNLOAD_RETRY_BACKOFF_TIMER_SEC_INT = "esim_download_retry_backoff_timer_sec_int"; - field public static final String KEY_ESIM_MAX_DOWNLOAD_RETRY_ATTEMPTS_INT = "esim_max_download_retry_attempts_int"; - field public static final String KEY_FORCE_HOME_NETWORK_BOOL = "force_home_network_bool"; - field public static final String KEY_GSM_DTMF_TONE_DELAY_INT = "gsm_dtmf_tone_delay_int"; - field public static final String KEY_GSM_NONROAMING_NETWORKS_STRING_ARRAY = "gsm_nonroaming_networks_string_array"; - field public static final String KEY_GSM_ROAMING_NETWORKS_STRING_ARRAY = "gsm_roaming_networks_string_array"; - field public static final String KEY_HAS_IN_CALL_NOISE_SUPPRESSION_BOOL = "has_in_call_noise_suppression_bool"; - field public static final String KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL = "hide_carrier_network_settings_bool"; - field public static final String KEY_HIDE_ENHANCED_4G_LTE_BOOL = "hide_enhanced_4g_lte_bool"; - field public static final String KEY_HIDE_IMS_APN_BOOL = "hide_ims_apn_bool"; - field public static final String KEY_HIDE_LTE_PLUS_DATA_ICON_BOOL = "hide_lte_plus_data_icon_bool"; - field public static final String KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL = "hide_preferred_network_type_bool"; - field public static final String KEY_HIDE_PRESET_APN_DETAILS_BOOL = "hide_preset_apn_details_bool"; - field public static final String KEY_HIDE_SIM_LOCK_SETTINGS_BOOL = "hide_sim_lock_settings_bool"; - field public static final String KEY_HIDE_TTY_HCO_VCO_WITH_RTT_BOOL = "hide_tty_hco_vco_with_rtt"; - field public static final String KEY_IGNORE_DATA_ENABLED_CHANGED_FOR_VIDEO_CALLS = "ignore_data_enabled_changed_for_video_calls"; - field public static final String KEY_IGNORE_RTT_MODE_SETTING_BOOL = "ignore_rtt_mode_setting_bool"; - field public static final String KEY_IGNORE_SIM_NETWORK_LOCKED_EVENTS_BOOL = "ignore_sim_network_locked_events_bool"; - field public static final String KEY_IMS_CONFERENCE_SIZE_LIMIT_INT = "ims_conference_size_limit_int"; - field public static final String KEY_IMS_DTMF_TONE_DELAY_INT = "ims_dtmf_tone_delay_int"; - field public static final String KEY_INCLUDE_LTE_FOR_NR_ADVANCED_THRESHOLD_BANDWIDTH_BOOL = "include_lte_for_nr_advanced_threshold_bandwidth_bool"; - field public static final String KEY_IS_IMS_CONFERENCE_SIZE_ENFORCED_BOOL = "is_ims_conference_size_enforced_bool"; - field public static final String KEY_IS_OPPORTUNISTIC_SUBSCRIPTION_BOOL = "is_opportunistic_subscription_bool"; - field public static final String KEY_LTE_ENABLED_BOOL = "lte_enabled_bool"; - field public static final String KEY_LTE_RSRQ_THRESHOLDS_INT_ARRAY = "lte_rsrq_thresholds_int_array"; - field public static final String KEY_LTE_RSSNR_THRESHOLDS_INT_ARRAY = "lte_rssnr_thresholds_int_array"; - field public static final String KEY_MDN_IS_ADDITIONAL_VOICEMAIL_NUMBER_BOOL = "mdn_is_additional_voicemail_number_bool"; - field public static final String KEY_MMS_ALIAS_ENABLED_BOOL = "aliasEnabled"; - field public static final String KEY_MMS_ALIAS_MAX_CHARS_INT = "aliasMaxChars"; - field public static final String KEY_MMS_ALIAS_MIN_CHARS_INT = "aliasMinChars"; - field public static final String KEY_MMS_ALLOW_ATTACH_AUDIO_BOOL = "allowAttachAudio"; - field public static final String KEY_MMS_APPEND_TRANSACTION_ID_BOOL = "enabledTransID"; - field public static final String KEY_MMS_CLOSE_CONNECTION_BOOL = "mmsCloseConnection"; - field public static final String KEY_MMS_EMAIL_GATEWAY_NUMBER_STRING = "emailGatewayNumber"; - field public static final String KEY_MMS_GROUP_MMS_ENABLED_BOOL = "enableGroupMms"; - field public static final String KEY_MMS_HTTP_PARAMS_STRING = "httpParams"; - field public static final String KEY_MMS_HTTP_SOCKET_TIMEOUT_INT = "httpSocketTimeout"; - field public static final String KEY_MMS_MAX_IMAGE_HEIGHT_INT = "maxImageHeight"; - field public static final String KEY_MMS_MAX_IMAGE_WIDTH_INT = "maxImageWidth"; - field public static final String KEY_MMS_MAX_MESSAGE_SIZE_INT = "maxMessageSize"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_MMS_MAX_NTN_PAYLOAD_SIZE_BYTES_INT = "mms_max_ntn_payload_size_bytes_int"; - field public static final String KEY_MMS_MESSAGE_TEXT_MAX_SIZE_INT = "maxMessageTextSize"; - field public static final String KEY_MMS_MMS_DELIVERY_REPORT_ENABLED_BOOL = "enableMMSDeliveryReports"; - field public static final String KEY_MMS_MMS_ENABLED_BOOL = "enabledMMS"; - field public static final String KEY_MMS_MMS_READ_REPORT_ENABLED_BOOL = "enableMMSReadReports"; - field public static final String KEY_MMS_MULTIPART_SMS_ENABLED_BOOL = "enableMultipartSMS"; - field public static final String KEY_MMS_NAI_SUFFIX_STRING = "naiSuffix"; - field public static final String KEY_MMS_NETWORK_RELEASE_TIMEOUT_MILLIS_INT = "mms_network_release_timeout_millis_int"; - field public static final String KEY_MMS_NOTIFY_WAP_MMSC_ENABLED_BOOL = "enabledNotifyWapMMSC"; - field public static final String KEY_MMS_RECIPIENT_LIMIT_INT = "recipientLimit"; - field public static final String KEY_MMS_SEND_MULTIPART_SMS_AS_SEPARATE_MESSAGES_BOOL = "sendMultipartSmsAsSeparateMessages"; - field public static final String KEY_MMS_SHOW_CELL_BROADCAST_APP_LINKS_BOOL = "config_cellBroadcastAppLinks"; - field public static final String KEY_MMS_SMS_DELIVERY_REPORT_ENABLED_BOOL = "enableSMSDeliveryReports"; - field public static final String KEY_MMS_SMS_TO_MMS_TEXT_LENGTH_THRESHOLD_INT = "smsToMmsTextLengthThreshold"; - field public static final String KEY_MMS_SMS_TO_MMS_TEXT_THRESHOLD_INT = "smsToMmsTextThreshold"; - field public static final String KEY_MMS_SUBJECT_MAX_LENGTH_INT = "maxSubjectLength"; - field public static final String KEY_MMS_SUPPORT_HTTP_CHARSET_HEADER_BOOL = "supportHttpCharsetHeader"; - field public static final String KEY_MMS_SUPPORT_MMS_CONTENT_DISPOSITION_BOOL = "supportMmsContentDisposition"; - field public static final String KEY_MMS_UA_PROF_TAG_NAME_STRING = "uaProfTagName"; - field public static final String KEY_MMS_UA_PROF_URL_STRING = "uaProfUrl"; - field public static final String KEY_MMS_USER_AGENT_STRING = "userAgent"; - field public static final String KEY_MONTHLY_DATA_CYCLE_DAY_INT = "monthly_data_cycle_day_int"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_NTN_LTE_RSRP_THRESHOLDS_INT_ARRAY = "ntn_lte_rsrp_thresholds_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_NTN_LTE_RSRQ_THRESHOLDS_INT_ARRAY = "ntn_lte_rsrq_thresholds_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_NTN_LTE_RSSNR_THRESHOLDS_INT_ARRAY = "ntn_lte_rssnr_thresholds_int_array"; - field public static final String KEY_ONLY_AUTO_SELECT_IN_HOME_NETWORK_BOOL = "only_auto_select_in_home_network"; - field public static final String KEY_ONLY_SINGLE_DC_ALLOWED_INT_ARRAY = "only_single_dc_allowed_int_array"; - field public static final String KEY_OPERATOR_SELECTION_EXPAND_BOOL = "operator_selection_expand_bool"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_BACKOFF_TIME_LONG = "opportunistic_network_backoff_time_long"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_DATA_SWITCH_EXIT_HYSTERESIS_TIME_LONG = "opportunistic_network_data_switch_exit_hysteresis_time_long"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_DATA_SWITCH_HYSTERESIS_TIME_LONG = "opportunistic_network_data_switch_hysteresis_time_long"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_OR_EXIT_HYSTERESIS_TIME_LONG = "opportunistic_network_entry_or_exit_hysteresis_time_long"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_THRESHOLD_BANDWIDTH_INT = "opportunistic_network_entry_threshold_bandwidth_int"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_THRESHOLD_RSRP_INT = "opportunistic_network_entry_threshold_rsrp_int"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_THRESHOLD_RSSNR_INT = "opportunistic_network_entry_threshold_rssnr_int"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_EXIT_THRESHOLD_RSRP_INT = "opportunistic_network_exit_threshold_rsrp_int"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_EXIT_THRESHOLD_RSSNR_INT = "opportunistic_network_exit_threshold_rssnr_int"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_MAX_BACKOFF_TIME_LONG = "opportunistic_network_max_backoff_time_long"; - field public static final String KEY_OPPORTUNISTIC_NETWORK_PING_PONG_TIME_LONG = "opportunistic_network_ping_pong_time_long"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_OVERRIDE_WFC_ROAMING_MODE_WHILE_USING_NTN_BOOL = "override_wfc_roaming_mode_while_using_ntn_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_PARAMETERS_USED_FOR_NTN_LTE_SIGNAL_BAR_INT = "parameters_used_for_ntn_lte_signal_bar_int"; - field public static final String KEY_PING_TEST_BEFORE_DATA_SWITCH_BOOL = "ping_test_before_data_switch_bool"; - field public static final String KEY_PREFER_2G_BOOL = "prefer_2g_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.hide_prefer_3g_item") public static final String KEY_PREFER_3G_VISIBILITY_BOOL = "prefer_3g_visibility_bool"; - field public static final String KEY_PREMIUM_CAPABILITY_MAXIMUM_DAILY_NOTIFICATION_COUNT_INT = "premium_capability_maximum_daily_notification_count_int"; - field public static final String KEY_PREMIUM_CAPABILITY_MAXIMUM_MONTHLY_NOTIFICATION_COUNT_INT = "premium_capability_maximum_monthly_notification_count_int"; - field public static final String KEY_PREMIUM_CAPABILITY_NETWORK_SETUP_TIME_MILLIS_LONG = "premium_capability_network_setup_time_millis_long"; - field public static final String KEY_PREMIUM_CAPABILITY_NOTIFICATION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONG = "premium_capability_notification_backoff_hysteresis_time_millis_long"; - field public static final String KEY_PREMIUM_CAPABILITY_NOTIFICATION_DISPLAY_TIMEOUT_MILLIS_LONG = "premium_capability_notification_display_timeout_millis_long"; - field public static final String KEY_PREMIUM_CAPABILITY_PURCHASE_CONDITION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONG = "premium_capability_purchase_condition_backoff_hysteresis_time_millis_long"; - field public static final String KEY_PREMIUM_CAPABILITY_PURCHASE_URL_STRING = "premium_capability_purchase_url_string"; - field public static final String KEY_PREMIUM_CAPABILITY_SUPPORTED_ON_LTE_BOOL = "premium_capability_supported_on_lte_bool"; - field public static final String KEY_PREVENT_CLIR_ACTIVATION_AND_DEACTIVATION_CODE_BOOL = "prevent_clir_activation_and_deactivation_code_bool"; - field public static final String KEY_RADIO_RESTART_FAILURE_CAUSES_INT_ARRAY = "radio_restart_failure_causes_int_array"; - field public static final String KEY_RATCHET_NR_ADVANCED_BANDWIDTH_IF_RRC_IDLE_BOOL = "ratchet_nr_advanced_bandwidth_if_rrc_idle_bool"; - field public static final String KEY_RCS_CONFIG_SERVER_URL_STRING = "rcs_config_server_url_string"; - field public static final String KEY_READ_ONLY_APN_FIELDS_STRING_ARRAY = "read_only_apn_fields_string_array"; - field public static final String KEY_READ_ONLY_APN_TYPES_STRING_ARRAY = "read_only_apn_types_string_array"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_REGIONAL_SATELLITE_EARFCN_BUNDLE = "regional_satellite_earfcn_bundle"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_REMOVE_SATELLITE_PLMN_IN_MANUAL_NETWORK_SCAN_BOOL = "remove_satellite_plmn_in_manual_network_scan_bool"; - field public static final String KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL = "require_entitlement_checks_bool"; - field @Deprecated public static final String KEY_RESTART_RADIO_ON_PDP_FAIL_REGULAR_DEACTIVATION_BOOL = "restart_radio_on_pdp_fail_regular_deactivation_bool"; - field public static final String KEY_RTT_AUTO_UPGRADE_BOOL = "rtt_auto_upgrade_bool"; - field public static final String KEY_RTT_DOWNGRADE_SUPPORTED_BOOL = "rtt_downgrade_supported_bool"; - field public static final String KEY_RTT_SUPPORTED_BOOL = "rtt_supported_bool"; - field public static final String KEY_RTT_SUPPORTED_FOR_VT_BOOL = "rtt_supported_for_vt_bool"; - field public static final String KEY_RTT_SUPPORTED_WHILE_ROAMING_BOOL = "rtt_supported_while_roaming_bool"; - field public static final String KEY_RTT_UPGRADE_SUPPORTED_BOOL = "rtt_upgrade_supported_bool"; - field public static final String KEY_RTT_UPGRADE_SUPPORTED_FOR_DOWNGRADED_VT_CALL_BOOL = "rtt_upgrade_supported_for_downgraded_vt_call"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_SATELLITE_ATTACH_SUPPORTED_BOOL = "satellite_attach_supported_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_SATELLITE_CONNECTION_HYSTERESIS_SEC_INT = "satellite_connection_hysteresis_sec_int"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_DATA_SUPPORT_MODE_INT = "satellite_data_support_mode_int"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_DISPLAY_NAME_STRING = "satellite_display_name_string"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_ENTITLEMENT_APP_NAME_STRING = "satellite_entitlement_app_name_string"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_SATELLITE_ENTITLEMENT_STATUS_REFRESH_DAYS_INT = "satellite_entitlement_status_refresh_days_int"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_SATELLITE_ENTITLEMENT_SUPPORTED_BOOL = "satellite_entitlement_supported_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ESOS_SUPPORTED_BOOL = "satellite_esos_supported_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING = "satellite_information_redirect_url_string"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_NIDD_APN_NAME_STRING = "satellite_nidd_apn_name_string"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ROAMING_ESOS_INACTIVITY_TIMEOUT_SEC_INT = "satellite_roaming_esos_inactivity_timeout_sec_int"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ROAMING_P2P_SMS_INACTIVITY_TIMEOUT_SEC_INT = "satellite_roaming_p2p_sms_inactivity_timeout_sec_int"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ROAMING_P2P_SMS_SUPPORTED_BOOL = "satellite_roaming_p2p_sms_supported_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ROAMING_SCREEN_OFF_INACTIVITY_TIMEOUT_SEC_INT = "satellite_roaming_screen_off_inactivity_timeout_sec_int"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_ROAMING_TURN_OFF_SESSION_FOR_EMERGENCY_CALL_BOOL = "satellite_roaming_turn_off_session_for_emergency_call_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_SOS_MAX_DATAGRAM_SIZE_BYTES_INT = "satellite_sos_max_datagram_size_bytes_int"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_SUPPORTED_MSG_APPS_STRING_ARRAY = "satellite_supported_msg_apps_string_array"; - field public static final String KEY_SHOW_4G_FOR_3G_DATA_ICON_BOOL = "show_4g_for_3g_data_icon_bool"; - field public static final String KEY_SHOW_4G_FOR_LTE_DATA_ICON_BOOL = "show_4g_for_lte_data_icon_bool"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_SHOW_APN_SETTING_CDMA_BOOL = "show_apn_setting_cdma_bool"; - field public static final String KEY_SHOW_BLOCKING_PAY_PHONE_OPTION_BOOL = "show_blocking_pay_phone_option_bool"; - field public static final String KEY_SHOW_CALL_BLOCKING_DISABLED_NOTIFICATION_ALWAYS_BOOL = "show_call_blocking_disabled_notification_always_bool"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_SHOW_CDMA_CHOICES_BOOL = "show_cdma_choices_bool"; - field public static final String KEY_SHOW_FORWARDED_NUMBER_BOOL = "show_forwarded_number_bool"; - field public static final String KEY_SHOW_ICCID_IN_SIM_STATUS_BOOL = "show_iccid_in_sim_status_bool"; - field public static final String KEY_SHOW_IMS_REGISTRATION_STATUS_BOOL = "show_ims_registration_status_bool"; - field public static final String KEY_SHOW_ONSCREEN_DIAL_BUTTON_BOOL = "show_onscreen_dial_button_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.hide_roaming_icon") public static final String KEY_SHOW_ROAMING_INDICATOR_BOOL = "show_roaming_indicator_bool"; - field public static final String KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL = "show_signal_strength_in_sim_status_bool"; - field public static final String KEY_SHOW_VIDEO_CALL_CHARGES_ALERT_DIALOG_BOOL = "show_video_call_charges_alert_dialog_bool"; - field public static final String KEY_SHOW_WFC_LOCATION_PRIVACY_POLICY_BOOL = "show_wfc_location_privacy_policy_bool"; - field @Deprecated public static final String KEY_SIMPLIFIED_NETWORK_SETTINGS_BOOL = "simplified_network_settings_bool"; - field public static final String KEY_SIM_COUNTRY_ISO_OVERRIDE_STRING = "sim_country_iso_override_string"; - field public static final String KEY_SIM_NETWORK_UNLOCK_ALLOW_DISMISS_BOOL = "sim_network_unlock_allow_dismiss_bool"; - field public static final String KEY_SMDP_SERVER_ADDRESS_STRING = "smdp_server_address_string"; - field public static final String KEY_SMS_REQUIRES_DESTINATION_NUMBER_CONVERSION_BOOL = "sms_requires_destination_number_conversion_bool"; - field public static final String KEY_SUBSCRIPTION_GROUP_UUID_STRING = "subscription_group_uuid_string"; - field public static final String KEY_SUPPORTED_PREMIUM_CAPABILITIES_INT_ARRAY = "supported_premium_capabilities_int_array"; - field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String KEY_SUPPORTS_BUSINESS_CALL_COMPOSER_BOOL = "supports_business_call_composer_bool"; - field public static final String KEY_SUPPORTS_CALL_COMPOSER_BOOL = "supports_call_composer_bool"; - field public static final String KEY_SUPPORTS_DEVICE_TO_DEVICE_COMMUNICATION_USING_DTMF_BOOL = "supports_device_to_device_communication_using_dtmf_bool"; - field public static final String KEY_SUPPORTS_DEVICE_TO_DEVICE_COMMUNICATION_USING_RTP_BOOL = "supports_device_to_device_communication_using_rtp_bool"; - field public static final String KEY_SUPPORTS_SDP_NEGOTIATION_OF_D2D_RTP_HEADER_EXTENSIONS_BOOL = "supports_sdp_negotiation_of_d2d_rtp_header_extensions_bool"; - field public static final String KEY_SUPPORT_3GPP_CALL_FORWARDING_WHILE_ROAMING_BOOL = "support_3gpp_call_forwarding_while_roaming_bool"; - field public static final String KEY_SUPPORT_ADD_CONFERENCE_PARTICIPANTS_BOOL = "support_add_conference_participants_bool"; - field public static final String KEY_SUPPORT_ADHOC_CONFERENCE_CALLS_BOOL = "support_adhoc_conference_calls_bool"; - field public static final String KEY_SUPPORT_CLIR_NETWORK_DEFAULT_BOOL = "support_clir_network_default_bool"; - field public static final String KEY_SUPPORT_CONFERENCE_CALL_BOOL = "support_conference_call_bool"; - field public static final String KEY_SUPPORT_EMERGENCY_SMS_OVER_IMS_BOOL = "support_emergency_sms_over_ims_bool"; - field public static final String KEY_SUPPORT_ENHANCED_CALL_BLOCKING_BOOL = "support_enhanced_call_blocking_bool"; - field public static final String KEY_SUPPORT_IMS_CONFERENCE_EVENT_PACKAGE_BOOL = "support_ims_conference_event_package_bool"; - field public static final String KEY_SUPPORT_PAUSE_IMS_VIDEO_CALLS_BOOL = "support_pause_ims_video_calls_bool"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_SUPPORT_SWAP_AFTER_MERGE_BOOL = "support_swap_after_merge_bool"; - field public static final String KEY_SUPPORT_TDSCDMA_BOOL = "support_tdscdma_bool"; - field public static final String KEY_SUPPORT_TDSCDMA_ROAMING_NETWORKS_STRING_ARRAY = "support_tdscdma_roaming_networks_string_array"; - field public static final String KEY_SWITCH_DATA_TO_PRIMARY_IF_PRIMARY_IS_OOS_BOOL = "switch_data_to_primary_if_primary_is_oos_bool"; - field public static final String KEY_TREAT_DOWNGRADED_VIDEO_CALLS_AS_VIDEO_CALLS_BOOL = "treat_downgraded_video_calls_as_video_calls_bool"; - field public static final String KEY_TTY_SUPPORTED_BOOL = "tty_supported_bool"; - field public static final String KEY_UNLOGGABLE_NUMBERS_STRING_ARRAY = "unloggable_numbers_string_array"; - field public static final String KEY_USE_ACS_FOR_RCS_BOOL = "use_acs_for_rcs_bool"; - field public static final String KEY_USE_HFA_FOR_PROVISIONING_BOOL = "use_hfa_for_provisioning_bool"; - field public static final String KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL = "use_ip_for_calling_indicator_bool"; - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_USE_OTASP_FOR_PROVISIONING_BOOL = "use_otasp_for_provisioning_bool"; - field @Deprecated public static final String KEY_USE_RCS_PRESENCE_BOOL = "use_rcs_presence_bool"; - field public static final String KEY_USE_RCS_SIP_OPTIONS_BOOL = "use_rcs_sip_options_bool"; - field public static final String KEY_USE_WFC_HOME_NETWORK_MODE_IN_ROAMING_NETWORK_BOOL = "use_wfc_home_network_mode_in_roaming_network_bool"; - field public static final String KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL = "voicemail_notification_persistent_bool"; - field public static final String KEY_VOICE_PRIVACY_DISABLE_UI_BOOL = "voice_privacy_disable_ui_bool"; - field public static final String KEY_VOLTE_REPLACEMENT_RAT_INT = "volte_replacement_rat_int"; - field public static final String KEY_VONR_ENABLED_BOOL = "vonr_enabled_bool"; - field public static final String KEY_VONR_ON_BY_DEFAULT_BOOL = "vonr_on_by_default_bool"; - field public static final String KEY_VONR_SETTING_VISIBILITY_BOOL = "vonr_setting_visibility_bool"; - field public static final String KEY_VT_UPGRADE_SUPPORTED_FOR_DOWNGRADED_RTT_CALL_BOOL = "vt_upgrade_supported_for_downgraded_rtt_call"; - field public static final String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOL = "vvm_cellular_data_required_bool"; - field public static final String KEY_VVM_CLIENT_PREFIX_STRING = "vvm_client_prefix_string"; - field public static final String KEY_VVM_DESTINATION_NUMBER_STRING = "vvm_destination_number_string"; - field public static final String KEY_VVM_DISABLED_CAPABILITIES_STRING_ARRAY = "vvm_disabled_capabilities_string_array"; - field public static final String KEY_VVM_LEGACY_MODE_ENABLED_BOOL = "vvm_legacy_mode_enabled_bool"; - field public static final String KEY_VVM_PORT_NUMBER_INT = "vvm_port_number_int"; - field public static final String KEY_VVM_PREFETCH_BOOL = "vvm_prefetch_bool"; - field public static final String KEY_VVM_SSL_ENABLED_BOOL = "vvm_ssl_enabled_bool"; - field public static final String KEY_VVM_TYPE_STRING = "vvm_type_string"; - field public static final String KEY_WFC_EMERGENCY_ADDRESS_CARRIER_APP_STRING = "wfc_emergency_address_carrier_app_string"; - field public static final String KEY_WORLD_MODE_ENABLED_BOOL = "world_mode_enabled_bool"; - field public static final String KEY_WORLD_PHONE_BOOL = "world_phone_bool"; - field public static final String REMOVE_GROUP_UUID_STRING = "00000000-0000-0000-0000-000000000000"; - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_DATA_SUPPORT_ALL = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_DATA_SUPPORT_BANDWIDTH_CONSTRAINED = 1; // 0x1 - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_DATA_SUPPORT_ONLY_RESTRICTED = 0; // 0x0 - field public static final int SERVICE_CLASS_NONE = 0; // 0x0 - field public static final int SERVICE_CLASS_VOICE = 1; // 0x1 - field public static final int USSD_OVER_CS_ONLY = 2; // 0x2 - field public static final int USSD_OVER_CS_PREFERRED = 0; // 0x0 - field public static final int USSD_OVER_IMS_ONLY = 3; // 0x3 - field public static final int USSD_OVER_IMS_PREFERRED = 1; // 0x1 - } - - public static final class CarrierConfigManager.Apn { - field @Deprecated public static final String KEY_PREFIX = "apn."; - field public static final String KEY_SETTINGS_DEFAULT_PROTOCOL_STRING = "apn.settings_default_protocol_string"; - field public static final String KEY_SETTINGS_DEFAULT_ROAMING_PROTOCOL_STRING = "apn.settings_default_roaming_protocol_string"; - field public static final String PROTOCOL_IPV4 = "IP"; - field public static final String PROTOCOL_IPV4V6 = "IPV4V6"; - field public static final String PROTOCOL_IPV6 = "IPV6"; - } - - public static final class CarrierConfigManager.Bsf { - field public static final String KEY_BSF_SERVER_FQDN_STRING = "bsf.bsf_server_fqdn_string"; - field public static final String KEY_BSF_SERVER_PORT_INT = "bsf.bsf_server_port_int"; - field public static final String KEY_BSF_TRANSPORT_TYPE_INT = "bsf.bsf_transport_type_int"; - field public static final String KEY_PREFIX = "bsf."; - } - - public static interface CarrierConfigManager.CarrierConfigChangeListener { - method public void onCarrierConfigChanged(int, int, int, int); - } - - public static final class CarrierConfigManager.Gps { - field @FlaggedApi("android.location.flags.enable_ni_supl_message_injection_by_carrier_config_bugfix") public static final String KEY_ENABLE_NI_SUPL_MESSAGE_INJECTION_BOOL = "gps.enable_ni_supl_message_injection_bool"; - field public static final String KEY_PERSIST_LPP_MODE_BOOL = "gps.persist_lpp_mode_bool"; - field public static final String KEY_PREFIX = "gps."; - } - - public static final class CarrierConfigManager.Ims { - field public static final int E911_RTCP_INACTIVITY_ON_CONNECTED = 3; // 0x3 - field public static final int E911_RTP_INACTIVITY_ON_CONNECTED = 4; // 0x4 - field public static final int GEOLOCATION_PIDF_FOR_EMERGENCY_ON_CELLULAR = 4; // 0x4 - field public static final int GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI = 2; // 0x2 - field public static final int GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_CELLULAR = 3; // 0x3 - field public static final int GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_WIFI = 1; // 0x1 - field public static final int IPSEC_AUTHENTICATION_ALGORITHM_HMAC_MD5 = 0; // 0x0 - field public static final int IPSEC_AUTHENTICATION_ALGORITHM_HMAC_SHA1 = 1; // 0x1 - field public static final int IPSEC_ENCRYPTION_ALGORITHM_AES_CBC = 2; // 0x2 - field public static final int IPSEC_ENCRYPTION_ALGORITHM_DES_EDE3_CBC = 1; // 0x1 - field public static final int IPSEC_ENCRYPTION_ALGORITHM_NULL = 0; // 0x0 - field public static final String KEY_CAPABILITY_TYPE_CALL_COMPOSER_INT_ARRAY = "ims.capability_type_call_composer_int_array"; - field public static final String KEY_CAPABILITY_TYPE_OPTIONS_UCE_INT_ARRAY = "ims.capability_type_options_uce_int_array"; - field public static final String KEY_CAPABILITY_TYPE_PRESENCE_UCE_INT_ARRAY = "ims.capability_type_presence_uce_int_array"; - field public static final String KEY_CAPABILITY_TYPE_SMS_INT_ARRAY = "ims.capability_type_sms_int_array"; - field public static final String KEY_CAPABILITY_TYPE_UT_INT_ARRAY = "ims.capability_type_ut_int_array"; - field public static final String KEY_CAPABILITY_TYPE_VIDEO_INT_ARRAY = "ims.capability_type_video_int_array"; - field public static final String KEY_CAPABILITY_TYPE_VOICE_INT_ARRAY = "ims.capability_type_voice_int_array"; - field public static final String KEY_ENABLE_PRESENCE_CAPABILITY_EXCHANGE_BOOL = "ims.enable_presence_capability_exchange_bool"; - field public static final String KEY_ENABLE_PRESENCE_GROUP_SUBSCRIBE_BOOL = "ims.enable_presence_group_subscribe_bool"; - field public static final String KEY_ENABLE_PRESENCE_PUBLISH_BOOL = "ims.enable_presence_publish_bool"; - field public static final String KEY_GEOLOCATION_PIDF_IN_SIP_INVITE_SUPPORT_INT_ARRAY = "ims.geolocation_pidf_in_sip_invite_support_int_array"; - field public static final String KEY_GEOLOCATION_PIDF_IN_SIP_REGISTER_SUPPORT_INT_ARRAY = "ims.geolocation_pidf_in_sip_register_support_int_array"; - field public static final String KEY_GRUU_ENABLED_BOOL = "ims.gruu_enabled_bool"; - field public static final String KEY_IMS_PDN_ENABLED_IN_NO_VOPS_SUPPORT_INT_ARRAY = "ims.ims_pdn_enabled_in_no_vops_support_int_array"; - field public static final String KEY_IMS_SINGLE_REGISTRATION_REQUIRED_BOOL = "ims.ims_single_registration_required_bool"; - field public static final String KEY_IMS_USER_AGENT_STRING = "ims.ims_user_agent_string"; - field public static final String KEY_IPSEC_AUTHENTICATION_ALGORITHMS_INT_ARRAY = "ims.ipsec_authentication_algorithms_int_array"; - field public static final String KEY_IPSEC_ENCRYPTION_ALGORITHMS_INT_ARRAY = "ims.ipsec_encryption_algorithms_int_array"; - field public static final String KEY_IPV4_SIP_MTU_SIZE_CELLULAR_INT = "ims.ipv4_sip_mtu_size_cellular_int"; - field public static final String KEY_IPV6_SIP_MTU_SIZE_CELLULAR_INT = "ims.ipv6_sip_mtu_size_cellular_int"; - field public static final String KEY_KEEP_PDN_UP_IN_NO_VOPS_BOOL = "ims.keep_pdn_up_in_no_vops_bool"; - field public static final String KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE = "ims.mmtel_requires_provisioning_bundle"; - field public static final String KEY_NON_RCS_CAPABILITIES_CACHE_EXPIRATION_SEC_INT = "ims.non_rcs_capabilities_cache_expiration_sec_int"; - field public static final String KEY_PHONE_CONTEXT_DOMAIN_NAME_STRING = "ims.phone_context_domain_name_string"; - field public static final String KEY_PREFIX = "ims."; - field public static final String KEY_RCS_BULK_CAPABILITY_EXCHANGE_BOOL = "ims.rcs_bulk_capability_exchange_bool"; - field public static final String KEY_RCS_FEATURE_TAG_ALLOWED_STRING_ARRAY = "ims.rcs_feature_tag_allowed_string_array"; - field public static final String KEY_RCS_REQUIRES_PROVISIONING_BUNDLE = "ims.rcs_requires_provisioning_bundle"; - field public static final String KEY_REGISTRATION_EVENT_PACKAGE_SUPPORTED_BOOL = "ims.registration_event_package_supported_bool"; - field public static final String KEY_REGISTRATION_EXPIRY_TIMER_SEC_INT = "ims.registration_expiry_timer_sec_int"; - field public static final String KEY_REGISTRATION_RETRY_BASE_TIMER_MILLIS_INT = "ims.registration_retry_base_timer_millis_int"; - field public static final String KEY_REGISTRATION_RETRY_MAX_TIMER_MILLIS_INT = "ims.registration_retry_max_timer_millis_int"; - field public static final String KEY_REGISTRATION_SUBSCRIBE_EXPIRY_TIMER_SEC_INT = "ims.registration_subscribe_expiry_timer_sec_int"; - field public static final String KEY_REQUEST_URI_TYPE_INT = "ims.request_uri_type_int"; - field public static final String KEY_SIP_OVER_IPSEC_ENABLED_BOOL = "ims.sip_over_ipsec_enabled_bool"; - field public static final String KEY_SIP_PREFERRED_TRANSPORT_INT = "ims.sip_preferred_transport_int"; - field public static final String KEY_SIP_SERVER_PORT_NUMBER_INT = "ims.sip_server_port_number_int"; - field public static final String KEY_SIP_TIMER_B_MILLIS_INT = "ims.sip_timer_b_millis_int"; - field public static final String KEY_SIP_TIMER_C_MILLIS_INT = "ims.sip_timer_c_millis_int"; - field public static final String KEY_SIP_TIMER_D_MILLIS_INT = "ims.sip_timer_d_millis_int"; - field public static final String KEY_SIP_TIMER_F_MILLIS_INT = "ims.sip_timer_f_millis_int"; - field public static final String KEY_SIP_TIMER_H_MILLIS_INT = "ims.sip_timer_h_millis_int"; - field public static final String KEY_SIP_TIMER_J_MILLIS_INT = "ims.sip_timer_j_millis_int"; - field public static final String KEY_SIP_TIMER_T1_MILLIS_INT = "ims.sip_timer_t1_millis_int"; - field public static final String KEY_SIP_TIMER_T2_MILLIS_INT = "ims.sip_timer_t2_millis_int"; - field public static final String KEY_SIP_TIMER_T4_MILLIS_INT = "ims.sip_timer_t4_millis_int"; - field public static final String KEY_SUPPORTED_RATS_INT_ARRAY = "ims.supported_rats_int_array"; - field public static final String KEY_USE_SIP_URI_FOR_PRESENCE_SUBSCRIBE_BOOL = "ims.use_sip_uri_for_presence_subscribe_bool"; - field public static final String KEY_WIFI_OFF_DEFERRING_TIME_MILLIS_INT = "ims.wifi_off_deferring_time_millis_int"; - field public static final int NETWORK_TYPE_HOME = 0; // 0x0 - field public static final int NETWORK_TYPE_ROAMING = 1; // 0x1 - field public static final int PREFERRED_TRANSPORT_DYNAMIC_UDP_TCP = 2; // 0x2 - field public static final int PREFERRED_TRANSPORT_TCP = 1; // 0x1 - field public static final int PREFERRED_TRANSPORT_TLS = 3; // 0x3 - field public static final int PREFERRED_TRANSPORT_UDP = 0; // 0x0 - field public static final int REQUEST_URI_FORMAT_SIP = 1; // 0x1 - field public static final int REQUEST_URI_FORMAT_TEL = 0; // 0x0 - field public static final int RTCP_INACTIVITY_ON_CONNECTED = 1; // 0x1 - field public static final int RTCP_INACTIVITY_ON_HOLD = 0; // 0x0 - field public static final int RTP_INACTIVITY_ON_CONNECTED = 2; // 0x2 - } - - public static final class CarrierConfigManager.ImsEmergency { - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int DOMAIN_CS = 1; // 0x1 - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int DOMAIN_PS_3GPP = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int DOMAIN_PS_NON_3GPP = 3; // 0x3 - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_CROSS_STACK_REDIAL_TIMER_SEC_INT = "imsemergency.cross_stack_redial_timer_sec_int"; - field public static final String KEY_EMERGENCY_CALLBACK_MODE_SUPPORTED_BOOL = "imsemergency.emergency_callback_mode_supported_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_CALL_SETUP_TIMER_ON_CURRENT_NETWORK_SEC_INT = "imsemergency.emergency_call_setup_timer_on_current_network_sec_int"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_CDMA_PREFERRED_NUMBERS_STRING_ARRAY = "imsemergency.emergency_cdma_preferred_numbers_string_array"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_DOMAIN_PREFERENCE_INT_ARRAY = "imsemergency.emergency_domain_preference_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_DOMAIN_PREFERENCE_ROAMING_INT_ARRAY = "imsemergency.emergency_domain_preference_roaming_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_LTE_PREFERRED_AFTER_NR_FAILED_BOOL = "imsemergency.emergency_lte_preferred_after_nr_failed_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_NETWORK_SCAN_TYPE_INT = "imsemergency.emergency_network_scan_type_int"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_OVER_CS_ROAMING_SUPPORTED_ACCESS_NETWORK_TYPES_INT_ARRAY = "imsemergency.emergency_over_cs_roaming_supported_access_network_types_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_OVER_CS_SUPPORTED_ACCESS_NETWORK_TYPES_INT_ARRAY = "imsemergency.emergency_over_cs_supported_access_network_types_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_OVER_IMS_ROAMING_SUPPORTED_3GPP_NETWORK_TYPES_INT_ARRAY = "imsemergency.emergency_over_ims_roaming_supported_3gpp_network_types_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_OVER_IMS_SUPPORTED_3GPP_NETWORK_TYPES_INT_ARRAY = "imsemergency.emergency_over_ims_supported_3gpp_network_types_int_array"; - field public static final String KEY_EMERGENCY_OVER_IMS_SUPPORTED_RATS_INT_ARRAY = "imsemergency.emergency_over_ims_supported_rats_int_array"; - field public static final String KEY_EMERGENCY_QOS_PRECONDITION_SUPPORTED_BOOL = "imsemergency.emergency_qos_precondition_supported_bool"; - field public static final String KEY_EMERGENCY_REGISTRATION_TIMER_MILLIS_INT = "imsemergency.emergency_registration_timer_millis_int"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_REQUIRES_IMS_REGISTRATION_BOOL = "imsemergency.emergency_requires_ims_registration_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_REQUIRES_VOLTE_ENABLED_BOOL = "imsemergency.emergency_requires_volte_enabled_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_SCAN_TIMER_SEC_INT = "imsemergency.emergency_scan_timer_sec_int"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_VOWIFI_REQUIRES_CONDITION_INT = "imsemergency.emergency_vowifi_requires_condition_int"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_MAXIMUM_CELLULAR_SEARCH_TIMER_SEC_INT = "imsemergency.maximum_cellular_search_timer_sec_int"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_MAXIMUM_NUMBER_OF_EMERGENCY_TRIES_OVER_VOWIFI_INT = "imsemergency.maximum_number_of_emergency_tries_over_vowifi_int"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_PREFER_IMS_EMERGENCY_WHEN_VOICE_CALLS_ON_CS_BOOL = "imsemergency.prefer_ims_emergency_when_voice_calls_on_cs_bool"; - field public static final String KEY_PREFIX = "imsemergency."; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_QUICK_CROSS_STACK_REDIAL_TIMER_SEC_INT = "imsemergency.quick_cross_stack_redial_timer_sec_int"; - field public static final String KEY_REFRESH_GEOLOCATION_TIMEOUT_MILLIS_INT = "imsemergency.refresh_geolocation_timeout_millis_int"; - field public static final String KEY_RETRY_EMERGENCY_ON_IMS_PDN_BOOL = "imsemergency.retry_emergency_on_ims_pdn_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_SCAN_LIMITED_SERVICE_AFTER_VOLTE_FAILURE_BOOL = "imsemergency.scan_limited_service_after_volte_failure_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_START_QUICK_CROSS_STACK_REDIAL_TIMER_WHEN_REGISTERED_BOOL = "imsemergency.start_quick_cross_stack_redial_timer_when_registered_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int REDIAL_TIMER_DISABLED = 0; // 0x0 - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int SCAN_TYPE_FULL_SERVICE = 1; // 0x1 - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int SCAN_TYPE_FULL_SERVICE_FOLLOWED_BY_LIMITED_SERVICE = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int SCAN_TYPE_NO_PREFERENCE = 0; // 0x0 - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int VOWIFI_REQUIRES_NONE = 0; // 0x0 - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int VOWIFI_REQUIRES_SETTING_ENABLED = 1; // 0x1 - field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int VOWIFI_REQUIRES_VALID_EID = 2; // 0x2 - } - - public static final class CarrierConfigManager.ImsRtt { - field public static final String KEY_PREFIX = "imsrtt."; - field public static final String KEY_RED_PAYLOAD_TYPE_INT = "imsrtt.red_payload_type_int"; - field public static final String KEY_T140_PAYLOAD_TYPE_INT = "imsrtt.t140_payload_type_int"; - field public static final String KEY_TEXT_AS_BANDWIDTH_KBPS_INT = "imsrtt.text_as_bandwidth_kbps_int"; - field public static final String KEY_TEXT_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE = "imsrtt.text_codec_capability_payload_types_bundle"; - field public static final String KEY_TEXT_ON_DEFAULT_BEARER_SUPPORTED_BOOL = "imsrtt.text_on_default_bearer_supported_bool"; - field public static final String KEY_TEXT_QOS_PRECONDITION_SUPPORTED_BOOL = "imsrtt.text_qos_precondition_supported_bool"; - field public static final String KEY_TEXT_RR_BANDWIDTH_BPS_INT = "imsrtt.text_rr_bandwidth_bps_int"; - field public static final String KEY_TEXT_RS_BANDWIDTH_BPS_INT = "imsrtt.text_rs_bandwidth_bps_int"; - } - - public static final class CarrierConfigManager.ImsServiceEntitlement { - field public static final String KEY_ENTITLEMENT_SERVER_URL_STRING = "imsserviceentitlement.entitlement_server_url_string"; - field public static final String KEY_FCM_SENDER_ID_STRING = "imsserviceentitlement.fcm_sender_id_string"; - field public static final String KEY_IMS_PROVISIONING_BOOL = "imsserviceentitlement.ims_provisioning_bool"; - field public static final String KEY_PREFIX = "imsserviceentitlement."; - field public static final String KEY_SHOW_VOWIFI_WEBVIEW_BOOL = "imsserviceentitlement.show_vowifi_webview_bool"; - } - - public static final class CarrierConfigManager.ImsSms { - field public static final String KEY_PREFIX = "imssms."; - field public static final String KEY_SMS_CSFB_RETRY_ON_FAILURE_BOOL = "imssms.sms_csfb_retry_on_failure_bool"; - field public static final String KEY_SMS_MAX_RETRY_COUNT_INT = "imssms.sms_max_retry_count_int"; - field public static final String KEY_SMS_MAX_RETRY_OVER_IMS_COUNT_INT = "imssms.sms_max_retry_over_ims_count_int"; - field public static final String KEY_SMS_OVER_IMS_FORMAT_INT = "imssms.sms_over_ims_format_int"; - field public static final String KEY_SMS_OVER_IMS_SEND_RETRY_DELAY_MILLIS_INT = "imssms.sms_over_ims_send_retry_delay_millis_int"; - field public static final String KEY_SMS_OVER_IMS_SUPPORTED_BOOL = "imssms.sms_over_ims_supported_bool"; - field public static final String KEY_SMS_OVER_IMS_SUPPORTED_RATS_INT_ARRAY = "imssms.sms_over_ims_supported_rats_int_array"; - field public static final String KEY_SMS_RP_CAUSE_VALUES_TO_FALLBACK_INT_ARRAY = "imssms.sms_rp_cause_values_to_fallback_int_array"; - field public static final String KEY_SMS_RP_CAUSE_VALUES_TO_RETRY_OVER_IMS_INT_ARRAY = "imssms.sms_rp_cause_values_to_retry_over_ims_int_array"; - field public static final String KEY_SMS_TR1_TIMER_MILLIS_INT = "imssms.sms_tr1_timer_millis_int"; - field public static final String KEY_SMS_TR2_TIMER_MILLIS_INT = "imssms.sms_tr2_timer_millis_int"; - field public static final int SMS_FORMAT_3GPP = 0; // 0x0 - field public static final int SMS_FORMAT_3GPP2 = 1; // 0x1 - } - - public static final class CarrierConfigManager.ImsSs { - field public static final int CALL_WAITING_SYNC_FIRST_CHANGE = 3; // 0x3 - field public static final int CALL_WAITING_SYNC_FIRST_POWER_UP = 2; // 0x2 - field public static final int CALL_WAITING_SYNC_IMS_ONLY = 4; // 0x4 - field public static final int CALL_WAITING_SYNC_NONE = 0; // 0x0 - field public static final int CALL_WAITING_SYNC_USER_CHANGE = 1; // 0x1 - field public static final String KEY_NETWORK_INITIATED_USSD_OVER_IMS_SUPPORTED_BOOL = "imsss.network_initiated_ussd_over_ims_supported_bool"; - field public static final String KEY_PREFIX = "imsss."; - field public static final String KEY_TERMINAL_BASED_CALL_WAITING_DEFAULT_ENABLED_BOOL = "imsss.terminal_based_call_waiting_default_enabled_bool"; - field public static final String KEY_TERMINAL_BASED_CALL_WAITING_SYNC_TYPE_INT = "imsss.terminal_based_call_waiting_sync_type_int"; - field public static final String KEY_USE_CSFB_ON_XCAP_OVER_UT_FAILURE_BOOL = "imsss.use_csfb_on_xcap_over_ut_failure_bool"; - field public static final String KEY_UT_AS_SERVER_FQDN_STRING = "imsss.ut_as_server_fqdn_string"; - field public static final String KEY_UT_AS_SERVER_PORT_INT = "imsss.ut_as_server_port_int"; - field public static final String KEY_UT_IPTYPE_HOME_INT = "imsss.ut_iptype_home_int"; - field public static final String KEY_UT_IPTYPE_ROAMING_INT = "imsss.ut_iptype_roaming_int"; - field public static final String KEY_UT_REQUIRES_IMS_REGISTRATION_BOOL = "imsss.ut_requires_ims_registration_bool"; - field public static final String KEY_UT_SERVER_BASED_SERVICES_INT_ARRAY = "imsss.ut_server_based_services_int_array"; - field public static final String KEY_UT_SUPPORTED_WHEN_PS_DATA_OFF_BOOL = "imsss.ut_supported_when_ps_data_off_bool"; - field public static final String KEY_UT_SUPPORTED_WHEN_ROAMING_BOOL = "imsss.ut_supported_when_roaming_bool"; - field public static final String KEY_UT_TERMINAL_BASED_SERVICES_INT_ARRAY = "imsss.ut_terminal_based_services_int_array"; - field public static final String KEY_UT_TRANSPORT_TYPE_INT = "imsss.ut_transport_type_int"; - field public static final String KEY_XCAP_OVER_UT_SUPPORTED_RATS_INT_ARRAY = "imsss.xcap_over_ut_supported_rats_int_array"; - field public static final int SUPPLEMENTARY_SERVICE_CB_ACR = 20; // 0x14 - field public static final int SUPPLEMENTARY_SERVICE_CB_ALL = 12; // 0xc - field public static final int SUPPLEMENTARY_SERVICE_CB_BAIC = 18; // 0x12 - field public static final int SUPPLEMENTARY_SERVICE_CB_BAOC = 14; // 0xe - field public static final int SUPPLEMENTARY_SERVICE_CB_BIC_ROAM = 19; // 0x13 - field public static final int SUPPLEMENTARY_SERVICE_CB_BIL = 21; // 0x15 - field public static final int SUPPLEMENTARY_SERVICE_CB_BOIC = 15; // 0xf - field public static final int SUPPLEMENTARY_SERVICE_CB_BOIC_EXHC = 16; // 0x10 - field public static final int SUPPLEMENTARY_SERVICE_CB_IBS = 17; // 0x11 - field public static final int SUPPLEMENTARY_SERVICE_CB_OBS = 13; // 0xd - field public static final int SUPPLEMENTARY_SERVICE_CF_ALL = 1; // 0x1 - field public static final int SUPPLEMENTARY_SERVICE_CF_ALL_CONDITONAL_FORWARDING = 3; // 0x3 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFB = 4; // 0x4 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFNL = 7; // 0x7 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFNRC = 6; // 0x6 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFNRY = 5; // 0x5 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFU = 2; // 0x2 - field public static final int SUPPLEMENTARY_SERVICE_CW = 0; // 0x0 - field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIP = 8; // 0x8 - field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIR = 10; // 0xa - field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIP = 9; // 0x9 - field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIR = 11; // 0xb - } - - public static final class CarrierConfigManager.ImsVoice { - field public static final int ALERTING_SRVCC_SUPPORT = 1; // 0x1 - field public static final int BANDWIDTH_EFFICIENT = 0; // 0x0 - field public static final int BASIC_SRVCC_SUPPORT = 0; // 0x0 - field public static final int CONFERENCE_SUBSCRIBE_TYPE_IN_DIALOG = 0; // 0x0 - field public static final int CONFERENCE_SUBSCRIBE_TYPE_OUT_OF_DIALOG = 1; // 0x1 - field public static final int EVS_ENCODED_BW_TYPE_FB = 3; // 0x3 - field public static final int EVS_ENCODED_BW_TYPE_NB = 0; // 0x0 - field public static final int EVS_ENCODED_BW_TYPE_NB_WB = 4; // 0x4 - field public static final int EVS_ENCODED_BW_TYPE_NB_WB_SWB = 5; // 0x5 - field public static final int EVS_ENCODED_BW_TYPE_NB_WB_SWB_FB = 6; // 0x6 - field public static final int EVS_ENCODED_BW_TYPE_SWB = 2; // 0x2 - field public static final int EVS_ENCODED_BW_TYPE_WB = 1; // 0x1 - field public static final int EVS_ENCODED_BW_TYPE_WB_SWB = 7; // 0x7 - field public static final int EVS_ENCODED_BW_TYPE_WB_SWB_FB = 8; // 0x8 - field public static final int EVS_OPERATIONAL_MODE_AMRWB_IO = 1; // 0x1 - field public static final int EVS_OPERATIONAL_MODE_PRIMARY = 0; // 0x0 - field public static final int EVS_PRIMARY_MODE_BITRATE_128_0_KBPS = 11; // 0xb - field public static final int EVS_PRIMARY_MODE_BITRATE_13_2_KBPS = 4; // 0x4 - field public static final int EVS_PRIMARY_MODE_BITRATE_16_4_KBPS = 5; // 0x5 - field public static final int EVS_PRIMARY_MODE_BITRATE_24_4_KBPS = 6; // 0x6 - field public static final int EVS_PRIMARY_MODE_BITRATE_32_0_KBPS = 7; // 0x7 - field public static final int EVS_PRIMARY_MODE_BITRATE_48_0_KBPS = 8; // 0x8 - field public static final int EVS_PRIMARY_MODE_BITRATE_5_9_KBPS = 0; // 0x0 - field public static final int EVS_PRIMARY_MODE_BITRATE_64_0_KBPS = 9; // 0x9 - field public static final int EVS_PRIMARY_MODE_BITRATE_7_2_KBPS = 1; // 0x1 - field public static final int EVS_PRIMARY_MODE_BITRATE_8_0_KBPS = 2; // 0x2 - field public static final int EVS_PRIMARY_MODE_BITRATE_96_0_KBPS = 10; // 0xa - field public static final int EVS_PRIMARY_MODE_BITRATE_9_6_KBPS = 3; // 0x3 - field public static final String KEY_AMRNB_PAYLOAD_DESCRIPTION_BUNDLE = "imsvoice.amrnb_payload_description_bundle"; - field public static final String KEY_AMRNB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.amrnb_payload_type_int_array"; - field public static final String KEY_AMRWB_PAYLOAD_DESCRIPTION_BUNDLE = "imsvoice.amrwb_payload_description_bundle"; - field public static final String KEY_AMRWB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.amrwb_payload_type_int_array"; - field public static final String KEY_AMR_CODEC_ATTRIBUTE_MODESET_INT_ARRAY = "imsvoice.amr_codec_attribute_modeset_int_array"; - field public static final String KEY_AMR_CODEC_ATTRIBUTE_PAYLOAD_FORMAT_INT = "imsvoice.amr_codec_attribute_payload_format_int"; - field public static final String KEY_AUDIO_AS_BANDWIDTH_KBPS_INT = "imsvoice.audio_as_bandwidth_kbps_int"; - field public static final String KEY_AUDIO_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE = "imsvoice.audio_codec_capability_payload_types_bundle"; - field public static final String KEY_AUDIO_INACTIVITY_CALL_END_REASONS_INT_ARRAY = "imsvoice.audio_inactivity_call_end_reasons_int_array"; - field public static final String KEY_AUDIO_RR_BANDWIDTH_BPS_INT = "imsvoice.audio_rr_bandwidth_bps_int"; - field public static final String KEY_AUDIO_RS_BANDWIDTH_BPS_INT = "imsvoice.audio_rs_bandwidth_bps_int"; - field public static final String KEY_AUDIO_RTCP_INACTIVITY_TIMER_MILLIS_INT = "imsvoice.audio_rtcp_inactivity_timer_millis_int"; - field public static final String KEY_AUDIO_RTP_INACTIVITY_TIMER_MILLIS_INT = "imsvoice.audio_rtp_inactivity_timer_millis_int"; - field public static final String KEY_CARRIER_VOLTE_ROAMING_AVAILABLE_BOOL = "imsvoice.carrier_volte_roaming_available_bool"; - field public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_CAPABILITY_INT = "imsvoice.codec_attribute_mode_change_capability_int"; - field public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_NEIGHBOR_INT = "imsvoice.codec_attribute_mode_change_neighbor_int"; - field public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_PERIOD_INT = "imsvoice.codec_attribute_mode_change_period_int"; - field public static final String KEY_CONFERENCE_FACTORY_URI_STRING = "imsvoice.conference_factory_uri_string"; - field public static final String KEY_CONFERENCE_SUBSCRIBE_TYPE_INT = "imsvoice.conference_subscribe_type_int"; - field public static final String KEY_DEDICATED_BEARER_WAIT_TIMER_MILLIS_INT = "imsvoice.dedicated_bearer_wait_timer_millis_int"; - field public static final String KEY_DTMFNB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.dtmfnb_payload_type_int_array"; - field public static final String KEY_DTMFWB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.dtmfwb_payload_type_int_array"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_BANDWIDTH_INT = "imsvoice.evs_codec_attribute_bandwidth_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_BITRATE_INT_ARRAY = "imsvoice.evs_codec_attribute_bitrate_int_array"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_CHANNELS_INT = "imsvoice.evs_codec_attribute_channels_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_CH_AW_RECV_INT = "imsvoice.evs_codec_attribute_ch_aw_recv_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_CMR_INT = "imsvoice.codec_attribute_cmr_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_DTX_BOOL = "imsvoice.evs_codec_attribute_dtx_bool"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_DTX_RECV_BOOL = "imsvoice.evs_codec_attribute_dtx_recv_bool"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_HF_ONLY_INT = "imsvoice.evs_codec_attribute_hf_only_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_MODE_SWITCH_INT = "imsvoice.evs_codec_attribute_mode_switch_int"; - field public static final String KEY_EVS_PAYLOAD_DESCRIPTION_BUNDLE = "imsvoice.evs_payload_description_bundle"; - field public static final String KEY_EVS_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.evs_payload_type_int_array"; - field public static final String KEY_INCLUDE_CALLER_ID_SERVICE_CODES_IN_SIP_INVITE_BOOL = "imsvoice.include_caller_id_service_codes_in_sip_invite_bool"; - field public static final String KEY_MINIMUM_SESSION_EXPIRES_TIMER_SEC_INT = "imsvoice.minimum_session_expires_timer_sec_int"; - field public static final String KEY_MO_CALL_REQUEST_TIMEOUT_MILLIS_INT = "imsvoice.mo_call_request_timeout_millis_int"; - field public static final String KEY_MULTIENDPOINT_SUPPORTED_BOOL = "imsvoice.multiendpoint_supported_bool"; - field public static final String KEY_OIP_SOURCE_FROM_HEADER_BOOL = "imsvoice.oip_source_from_header_bool"; - field public static final String KEY_PRACK_SUPPORTED_FOR_18X_BOOL = "imsvoice.prack_supported_for_18x_bool"; - field public static final String KEY_PREFIX = "imsvoice."; - field public static final String KEY_RINGBACK_TIMER_MILLIS_INT = "imsvoice.ringback_timer_millis_int"; - field public static final String KEY_RINGING_TIMER_MILLIS_INT = "imsvoice.ringing_timer_millis_int"; - field public static final String KEY_SESSION_EXPIRES_TIMER_SEC_INT = "imsvoice.session_expires_timer_sec_int"; - field public static final String KEY_SESSION_PRIVACY_TYPE_INT = "imsvoice.session_privacy_type_int"; - field public static final String KEY_SESSION_REFRESHER_TYPE_INT = "imsvoice.session_refresher_type_int"; - field public static final String KEY_SESSION_REFRESH_METHOD_INT = "imsvoice.session_refresh_method_int"; - field public static final String KEY_SESSION_TIMER_SUPPORTED_BOOL = "imsvoice.session_timer_supported_bool"; - field public static final String KEY_SRVCC_TYPE_INT_ARRAY = "imsvoice.srvcc_type_int_array"; - field public static final String KEY_VOICE_ON_DEFAULT_BEARER_SUPPORTED_BOOL = "imsvoice.voice_on_default_bearer_supported_bool"; - field public static final String KEY_VOICE_QOS_PRECONDITION_SUPPORTED_BOOL = "imsvoice.voice_qos_precondition_supported_bool"; - field public static final int MIDCALL_SRVCC_SUPPORT = 3; // 0x3 - field public static final int OCTET_ALIGNED = 1; // 0x1 - field public static final int PREALERTING_SRVCC_SUPPORT = 2; // 0x2 - field public static final int SESSION_PRIVACY_TYPE_HEADER = 0; // 0x0 - field public static final int SESSION_PRIVACY_TYPE_ID = 2; // 0x2 - field public static final int SESSION_PRIVACY_TYPE_NONE = 1; // 0x1 - field public static final int SESSION_REFRESHER_TYPE_UAC = 1; // 0x1 - field public static final int SESSION_REFRESHER_TYPE_UAS = 2; // 0x2 - field public static final int SESSION_REFRESHER_TYPE_UNKNOWN = 0; // 0x0 - field public static final int SESSION_REFRESH_METHOD_INVITE = 0; // 0x0 - field public static final int SESSION_REFRESH_METHOD_UPDATE_PREFERRED = 1; // 0x1 - } - - public static final class CarrierConfigManager.ImsVt { - field public static final String KEY_H264_PAYLOAD_DESCRIPTION_BUNDLE = "imsvt.h264_payload_description_bundle"; - field public static final String KEY_H264_PAYLOAD_TYPE_INT_ARRAY = "imsvt.h264_payload_type_int_array"; - field public static final String KEY_H264_VIDEO_CODEC_ATTRIBUTE_PROFILE_LEVEL_ID_STRING = "imsvt.h264_video_codec_attribute_profile_level_id_string"; - field public static final String KEY_PREFIX = "imsvt."; - field public static final String KEY_VIDEO_AS_BANDWIDTH_KBPS_INT = "imsvt.video_as_bandwidth_kbps_int"; - field public static final String KEY_VIDEO_CODEC_ATTRIBUTE_FRAME_RATE_INT = "imsvt.video_codec_attribute_frame_rate_int"; - field public static final String KEY_VIDEO_CODEC_ATTRIBUTE_PACKETIZATION_MODE_INT = "imsvt.video_codec_attribute_packetization_mode_int"; - field public static final String KEY_VIDEO_CODEC_ATTRIBUTE_RESOLUTION_INT_ARRAY = "imsvt.video_codec_attribute_resolution_int_array"; - field public static final String KEY_VIDEO_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE = "imsvt.video_codec_capability_payload_types_bundle"; - field public static final String KEY_VIDEO_ON_DEFAULT_BEARER_SUPPORTED_BOOL = "imsvt.video_on_default_bearer_supported_bool"; - field public static final String KEY_VIDEO_QOS_PRECONDITION_SUPPORTED_BOOL = "imsvt.video_qos_precondition_supported_bool"; - field public static final String KEY_VIDEO_RR_BANDWIDTH_BPS_INT = "imsvt.video_rr_bandwidth_bps_int"; - field public static final String KEY_VIDEO_RS_BANDWIDTH_BPS_INT = "imsvt.video_rs_bandwidth_bps_int"; - field public static final String KEY_VIDEO_RTCP_INACTIVITY_TIMER_MILLIS_INT = "imsvt.video_rtcp_inactivity_timer_millis_int"; - field public static final String KEY_VIDEO_RTP_DSCP_INT = "imsvt.video_rtp_dscp_int"; - field public static final String KEY_VIDEO_RTP_INACTIVITY_TIMER_MILLIS_INT = "imsvt.video_rtp_inactivity_timer_millis_int"; - } - - public static final class CarrierConfigManager.ImsWfc { - field public static final String KEY_EMERGENCY_CALL_OVER_EMERGENCY_PDN_BOOL = "imswfc.emergency_call_over_emergency_pdn_bool"; - field public static final String KEY_PIDF_SHORT_CODE_STRING_ARRAY = "imswfc.pidf_short_code_string_array"; - field public static final String KEY_PREFIX = "imswfc."; - } - - public static final class CarrierConfigManager.Iwlan { - field public static final int AUTHENTICATION_METHOD_CERT = 1; // 0x1 - field public static final int AUTHENTICATION_METHOD_EAP_ONLY = 0; // 0x0 - field public static final int EPDG_ADDRESS_CELLULAR_LOC = 3; // 0x3 - field public static final int EPDG_ADDRESS_IPV4_ONLY = 2; // 0x2 - field public static final int EPDG_ADDRESS_IPV4_PREFERRED = 0; // 0x0 - field public static final int EPDG_ADDRESS_IPV6_PREFERRED = 1; // 0x1 - field public static final int EPDG_ADDRESS_PCO = 2; // 0x2 - field public static final int EPDG_ADDRESS_PLMN = 1; // 0x1 - field public static final int EPDG_ADDRESS_STATIC = 0; // 0x0 - field public static final int EPDG_ADDRESS_VISITED_COUNTRY = 4; // 0x4 - field public static final int ID_TYPE_FQDN = 2; // 0x2 - field public static final int ID_TYPE_KEY_ID = 11; // 0xb - field public static final int ID_TYPE_RFC822_ADDR = 3; // 0x3 - field public static final String KEY_ADD_KE_TO_CHILD_SESSION_REKEY_BOOL = "iwlan.add_ke_to_child_session_rekey_bool"; - field public static final String KEY_CHILD_SA_REKEY_HARD_TIMER_SEC_INT = "iwlan.child_sa_rekey_hard_timer_sec_int"; - field public static final String KEY_CHILD_SA_REKEY_SOFT_TIMER_SEC_INT = "iwlan.child_sa_rekey_soft_timer_sec_int"; - field public static final String KEY_CHILD_SESSION_AES_CBC_KEY_SIZE_INT_ARRAY = "iwlan.child_session_aes_cbc_key_size_int_array"; - field public static final String KEY_CHILD_SESSION_AES_CTR_KEY_SIZE_INT_ARRAY = "iwlan.child_session_aes_ctr_key_size_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.enable_aead_algorithms") public static final String KEY_CHILD_SESSION_AES_GCM_KEY_SIZE_INT_ARRAY = "iwlan.child_session_aes_gcm_key_size_int_array"; - field public static final String KEY_DIFFIE_HELLMAN_GROUPS_INT_ARRAY = "iwlan.diffie_hellman_groups_int_array"; - field public static final String KEY_DPD_TIMER_SEC_INT = "iwlan.dpd_timer_sec_int"; - field public static final String KEY_EPDG_ADDRESS_IP_TYPE_PREFERENCE_INT = "iwlan.epdg_address_ip_type_preference_int"; - field public static final String KEY_EPDG_ADDRESS_PRIORITY_INT_ARRAY = "iwlan.epdg_address_priority_int_array"; - field public static final String KEY_EPDG_AUTHENTICATION_METHOD_INT = "iwlan.epdg_authentication_method_int"; - field public static final String KEY_EPDG_PCO_ID_IPV4_INT = "iwlan.epdg_pco_id_ipv4_int"; - field public static final String KEY_EPDG_PCO_ID_IPV6_INT = "iwlan.epdg_pco_id_ipv6_int"; - field public static final String KEY_EPDG_STATIC_ADDRESS_ROAMING_STRING = "iwlan.epdg_static_address_roaming_string"; - field public static final String KEY_EPDG_STATIC_ADDRESS_STRING = "iwlan.epdg_static_address_string"; - field public static final String KEY_IKE_LOCAL_ID_TYPE_INT = "iwlan.ike_local_id_type_int"; - field public static final String KEY_IKE_REKEY_HARD_TIMER_SEC_INT = "iwlan.ike_rekey_hard_timer_in_sec"; - field public static final String KEY_IKE_REKEY_SOFT_TIMER_SEC_INT = "iwlan.ike_rekey_soft_timer_sec_int"; - field public static final String KEY_IKE_REMOTE_ID_TYPE_INT = "iwlan.ike_remote_id_type_int"; - field public static final String KEY_IKE_SESSION_AES_CBC_KEY_SIZE_INT_ARRAY = "iwlan.ike_session_encryption_aes_cbc_key_size_int_array"; - field public static final String KEY_IKE_SESSION_AES_CTR_KEY_SIZE_INT_ARRAY = "iwlan.ike_session_encryption_aes_ctr_key_size_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.enable_aead_algorithms") public static final String KEY_IKE_SESSION_AES_GCM_KEY_SIZE_INT_ARRAY = "iwlan.ike_session_encryption_aes_gcm_key_size_int_array"; - field public static final String KEY_MAX_RETRIES_INT = "iwlan.max_retries_int"; - field public static final String KEY_MCC_MNCS_STRING_ARRAY = "iwlan.mcc_mncs_string_array"; - field public static final String KEY_NATT_KEEP_ALIVE_TIMER_SEC_INT = "iwlan.natt_keep_alive_timer_sec_int"; - field public static final String KEY_PREFIX = "iwlan."; - field public static final String KEY_RETRANSMIT_TIMER_MSEC_INT_ARRAY = "iwlan.retransmit_timer_sec_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.enable_aead_algorithms") public static final String KEY_SUPPORTED_CHILD_SESSION_AEAD_ALGORITHMS_INT_ARRAY = "iwlan.supported_child_session_aead_algorithms_int_array"; - field public static final String KEY_SUPPORTED_CHILD_SESSION_ENCRYPTION_ALGORITHMS_INT_ARRAY = "iwlan.supported_child_session_encryption_algorithms_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.enable_aead_algorithms") public static final String KEY_SUPPORTED_IKE_SESSION_AEAD_ALGORITHMS_INT_ARRAY = "iwlan.supported_ike_session_aead_algorithms_int_array"; - field public static final String KEY_SUPPORTED_IKE_SESSION_ENCRYPTION_ALGORITHMS_INT_ARRAY = "iwlan.supported_ike_session_encryption_algorithms_int_array"; - field public static final String KEY_SUPPORTED_INTEGRITY_ALGORITHMS_INT_ARRAY = "iwlan.supported_integrity_algorithms_int_array"; - field public static final String KEY_SUPPORTED_PRF_ALGORITHMS_INT_ARRAY = "iwlan.supported_prf_algorithms_int_array"; - field @FlaggedApi("com.android.internal.telephony.flags.enable_multiple_sa_proposals") public static final String KEY_SUPPORTS_CHILD_SESSION_MULTIPLE_SA_PROPOSALS_BOOL = "iwlan.supports_child_session_multiple_sa_proposals_bool"; - field public static final String KEY_SUPPORTS_EAP_AKA_FAST_REAUTH_BOOL = "iwlan.supports_eap_aka_fast_reauth_bool"; - field @FlaggedApi("com.android.internal.telephony.flags.enable_multiple_sa_proposals") public static final String KEY_SUPPORTS_IKE_SESSION_MULTIPLE_SA_PROPOSALS_BOOL = "iwlan.supports_ike_session_multiple_sa_proposals_bool"; - } - - public abstract class CellIdentity implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public CharSequence getOperatorAlphaLong(); - method @Nullable public CharSequence getOperatorAlphaShort(); - method @CallSuper public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public final class CellIdentityCdma extends android.telephony.CellIdentity { - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getBasestationId(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getLatitude(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getLongitude(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getNetworkId(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getSystemId(); - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellIdentityGsm extends android.telephony.CellIdentity { - method @NonNull public java.util.Set getAdditionalPlmns(); - method public int getArfcn(); - method public int getBsic(); - method public int getCid(); - method public int getLac(); - method @Deprecated public int getMcc(); - method @Nullable public String getMccString(); - method @Deprecated public int getMnc(); - method @Nullable public String getMncString(); - method @Nullable public String getMobileNetworkOperator(); - method @Deprecated public int getPsc(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellIdentityLte extends android.telephony.CellIdentity { - method @NonNull public java.util.Set getAdditionalPlmns(); - method @NonNull public int[] getBands(); - method public int getBandwidth(); - method public int getCi(); - method @Nullable public android.telephony.ClosedSubscriberGroupInfo getClosedSubscriberGroupInfo(); - method public int getEarfcn(); - method @Deprecated public int getMcc(); - method @Nullable public String getMccString(); - method @Deprecated public int getMnc(); - method @Nullable public String getMncString(); - method @Nullable public String getMobileNetworkOperator(); - method public int getPci(); - method public int getTac(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellIdentityNr extends android.telephony.CellIdentity { - method @NonNull public java.util.Set getAdditionalPlmns(); - method @NonNull public int[] getBands(); - method @Nullable public String getMccString(); - method @Nullable public String getMncString(); - method public long getNci(); - method @IntRange(from=0, to=3279165) public int getNrarfcn(); - method @IntRange(from=0, to=1007) public int getPci(); - method @IntRange(from=0, to=16777215) public int getTac(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellIdentityTdscdma extends android.telephony.CellIdentity { - method @NonNull public java.util.Set getAdditionalPlmns(); - method public int getCid(); - method @Nullable public android.telephony.ClosedSubscriberGroupInfo getClosedSubscriberGroupInfo(); - method public int getCpid(); - method public int getLac(); - method @Nullable public String getMccString(); - method @Nullable public String getMncString(); - method @Nullable public String getMobileNetworkOperator(); - method public int getUarfcn(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellIdentityWcdma extends android.telephony.CellIdentity { - method @NonNull public java.util.Set getAdditionalPlmns(); - method public int getCid(); - method @Nullable public android.telephony.ClosedSubscriberGroupInfo getClosedSubscriberGroupInfo(); - method public int getLac(); - method @Deprecated public int getMcc(); - method @Nullable public String getMccString(); - method @Deprecated public int getMnc(); - method @Nullable public String getMncString(); - method @Nullable public String getMobileNetworkOperator(); - method public int getPsc(); - method public int getUarfcn(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class CellInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getCellConnectionStatus(); - method @NonNull public abstract android.telephony.CellIdentity getCellIdentity(); - method @NonNull public abstract android.telephony.CellSignalStrength getCellSignalStrength(); - method @Deprecated public long getTimeStamp(); - method public long getTimestampMillis(); - method public boolean isRegistered(); - field public static final int CONNECTION_NONE = 0; // 0x0 - field public static final int CONNECTION_PRIMARY_SERVING = 1; // 0x1 - field public static final int CONNECTION_SECONDARY_SERVING = 2; // 0x2 - field public static final int CONNECTION_UNKNOWN = 2147483647; // 0x7fffffff - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int UNAVAILABLE = 2147483647; // 0x7fffffff - field public static final long UNAVAILABLE_LONG = 9223372036854775807L; // 0x7fffffffffffffffL - } - - @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public final class CellInfoCdma extends android.telephony.CellInfo implements android.os.Parcelable { - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public android.telephony.CellIdentityCdma getCellIdentity(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public android.telephony.CellSignalStrengthCdma getCellSignalStrength(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public void writeToParcel(android.os.Parcel, int); - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellInfoGsm extends android.telephony.CellInfo implements android.os.Parcelable { - method @NonNull public android.telephony.CellIdentityGsm getCellIdentity(); - method @NonNull public android.telephony.CellSignalStrengthGsm getCellSignalStrength(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellInfoLte extends android.telephony.CellInfo implements android.os.Parcelable { - method @NonNull public android.telephony.CellIdentityLte getCellIdentity(); - method @NonNull public android.telephony.CellSignalStrengthLte getCellSignalStrength(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellInfoNr extends android.telephony.CellInfo { - method @NonNull public android.telephony.CellIdentity getCellIdentity(); - method @NonNull public android.telephony.CellSignalStrength getCellSignalStrength(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellInfoTdscdma extends android.telephony.CellInfo implements android.os.Parcelable { - method @NonNull public android.telephony.CellIdentityTdscdma getCellIdentity(); - method @NonNull public android.telephony.CellSignalStrengthTdscdma getCellSignalStrength(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellInfoWcdma extends android.telephony.CellInfo implements android.os.Parcelable { - method public android.telephony.CellIdentityWcdma getCellIdentity(); - method public android.telephony.CellSignalStrengthWcdma getCellSignalStrength(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @Deprecated public abstract class CellLocation { - ctor @Deprecated public CellLocation(); - method @Deprecated public static android.telephony.CellLocation getEmpty(); - method @Deprecated public static void requestLocationUpdate(); - } - - public abstract class CellSignalStrength { - method public abstract boolean equals(Object); - method public abstract int getAsuLevel(); - method public abstract int getDbm(); - method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public abstract int getLevel(); - method public abstract int hashCode(); - field public static final int SIGNAL_STRENGTH_GOOD = 3; // 0x3 - field public static final int SIGNAL_STRENGTH_GREAT = 4; // 0x4 - field public static final int SIGNAL_STRENGTH_MODERATE = 2; // 0x2 - field public static final int SIGNAL_STRENGTH_NONE_OR_UNKNOWN = 0; // 0x0 - field public static final int SIGNAL_STRENGTH_POOR = 1; // 0x1 - } - - public final class CellSignalStrengthCdma extends android.telephony.CellSignalStrength implements android.os.Parcelable { - method public int describeContents(); - method public boolean equals(Object); - method public int getAsuLevel(); - method public int getCdmaDbm(); - method public int getCdmaEcio(); - method public int getCdmaLevel(); - method public int getDbm(); - method public int getEvdoDbm(); - method public int getEvdoEcio(); - method public int getEvdoLevel(); - method public int getEvdoSnr(); - method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); - method public int hashCode(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellSignalStrengthGsm extends android.telephony.CellSignalStrength implements android.os.Parcelable { - method public int describeContents(); - method public boolean equals(Object); - method public int getAsuLevel(); - method public int getBitErrorRate(); - method public int getDbm(); - method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); - method public int getRssi(); - method public int getTimingAdvance(); - method public int hashCode(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellSignalStrengthLte extends android.telephony.CellSignalStrength implements android.os.Parcelable { - method public int describeContents(); - method public boolean equals(Object); - method public int getAsuLevel(); - method @IntRange(from=0, to=15) public int getCqi(); - method @IntRange(from=1, to=6) public int getCqiTableIndex(); - method public int getDbm(); - method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); - method public int getRsrp(); - method public int getRsrq(); - method public int getRssi(); - method public int getRssnr(); - method public int getTimingAdvance(); - method public int hashCode(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellSignalStrengthNr extends android.telephony.CellSignalStrength implements android.os.Parcelable { - method public int describeContents(); - method public boolean equals(Object); - method public int getAsuLevel(); - method @IntRange(from=0, to=15) @NonNull public java.util.List getCsiCqiReport(); - method @IntRange(from=1, to=3) public int getCsiCqiTableIndex(); - method public int getCsiRsrp(); - method public int getCsiRsrq(); - method public int getCsiSinr(); - method public int getDbm(); - method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); - method public int getSsRsrp(); - method public int getSsRsrq(); - method public int getSsSinr(); - method @IntRange(from=0, to=1282) public int getTimingAdvanceMicros(); - method public int hashCode(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellSignalStrengthTdscdma extends android.telephony.CellSignalStrength implements android.os.Parcelable { - method public int describeContents(); - method public boolean equals(Object); - method public int getAsuLevel(); - method public int getDbm(); - method @IntRange(from=0, to=4) public int getLevel(); - method public int getRscp(); - method public int hashCode(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CellSignalStrengthWcdma extends android.telephony.CellSignalStrength implements android.os.Parcelable { - method public int describeContents(); - method public boolean equals(Object); - method public int getAsuLevel(); - method public int getDbm(); - method public int getEcNo(); - method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); - method public int hashCode(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class ClosedSubscriberGroupInfo implements android.os.Parcelable { - method public int describeContents(); - method @IntRange(from=0, to=134217727) public int getCsgIdentity(); - method public boolean getCsgIndicator(); - method @NonNull public String getHomeNodebName(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class DataFailCause { - field public static final int ACCESS_ATTEMPT_ALREADY_IN_PROGRESS = 2219; // 0x8ab - field public static final int ACCESS_BLOCK = 2087; // 0x827 - field public static final int ACCESS_BLOCK_ALL = 2088; // 0x828 - field public static final int ACCESS_CLASS_DSAC_REJECTION = 2108; // 0x83c - field public static final int ACCESS_CONTROL_LIST_CHECK_FAILURE = 2128; // 0x850 - field public static final int ACTIVATION_REJECTED_BCM_VIOLATION = 48; // 0x30 - field public static final int ACTIVATION_REJECT_GGSN = 30; // 0x1e - field public static final int ACTIVATION_REJECT_UNSPECIFIED = 31; // 0x1f - field public static final int ACTIVE_PDP_CONTEXT_MAX_NUMBER_REACHED = 65; // 0x41 - field public static final int ALL_MATCHING_RULES_FAILED = 2254; // 0x8ce - field public static final int APN_DISABLED = 2045; // 0x7fd - field public static final int APN_DISALLOWED_ON_ROAMING = 2059; // 0x80b - field public static final int APN_MISMATCH = 2054; // 0x806 - field public static final int APN_PARAMETERS_CHANGED = 2060; // 0x80c - field public static final int APN_PENDING_HANDOVER = 2041; // 0x7f9 - field public static final int APN_TYPE_CONFLICT = 112; // 0x70 - field public static final int AUTH_FAILURE_ON_EMERGENCY_CALL = 122; // 0x7a - field public static final int BEARER_HANDLING_NOT_SUPPORTED = 60; // 0x3c - field public static final int CALL_DISALLOWED_IN_ROAMING = 2068; // 0x814 - field public static final int CALL_PREEMPT_BY_EMERGENCY_APN = 127; // 0x7f - field public static final int CANNOT_ENCODE_OTA_MESSAGE = 2159; // 0x86f - field public static final int CDMA_ALERT_STOP = 2077; // 0x81d - field public static final int CDMA_INCOMING_CALL = 2076; // 0x81c - field public static final int CDMA_INTERCEPT = 2073; // 0x819 - field public static final int CDMA_LOCK = 2072; // 0x818 - field public static final int CDMA_RELEASE_DUE_TO_SO_REJECTION = 2075; // 0x81b - field public static final int CDMA_REORDER = 2074; // 0x81a - field public static final int CDMA_RETRY_ORDER = 2086; // 0x826 - field public static final int CHANNEL_ACQUISITION_FAILURE = 2078; // 0x81e - field public static final int CLOSE_IN_PROGRESS = 2030; // 0x7ee - field public static final int COLLISION_WITH_NETWORK_INITIATED_REQUEST = 56; // 0x38 - field public static final int COMPANION_IFACE_IN_USE = 118; // 0x76 - field public static final int CONCURRENT_SERVICES_INCOMPATIBLE = 2083; // 0x823 - field public static final int CONCURRENT_SERVICES_NOT_ALLOWED = 2091; // 0x82b - field public static final int CONCURRENT_SERVICE_NOT_SUPPORTED_BY_BASE_STATION = 2080; // 0x820 - field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64 - field public static final int CONGESTION = 2106; // 0x83a - field public static final int CONNECTION_RELEASED = 2113; // 0x841 - field public static final int CS_DOMAIN_NOT_AVAILABLE = 2181; // 0x885 - field public static final int CS_FALLBACK_CALL_ESTABLISHMENT_NOT_ALLOWED = 2188; // 0x88c - field public static final int DATA_PLAN_EXPIRED = 2198; // 0x896 - field public static final int DATA_ROAMING_SETTINGS_DISABLED = 2064; // 0x810 - field public static final int DATA_SETTINGS_DISABLED = 2063; // 0x80f - field public static final int DBM_OR_SMS_IN_PROGRESS = 2211; // 0x8a3 - field public static final int DDS_SWITCHED = 2065; // 0x811 - field public static final int DDS_SWITCH_IN_PROGRESS = 2067; // 0x813 - field public static final int DRB_RELEASED_BY_RRC = 2112; // 0x840 - field public static final int DS_EXPLICIT_DEACTIVATION = 2125; // 0x84d - field public static final int DUAL_SWITCH = 2227; // 0x8b3 - field public static final int DUN_CALL_DISALLOWED = 2056; // 0x808 - field public static final int DUPLICATE_BEARER_ID = 2118; // 0x846 - field public static final int EHRPD_TO_HRPD_FALLBACK = 2049; // 0x801 - field public static final int EMBMS_NOT_ENABLED = 2193; // 0x891 - field public static final int EMBMS_REGULAR_DEACTIVATION = 2195; // 0x893 - field public static final int EMERGENCY_IFACE_ONLY = 116; // 0x74 - field public static final int EMERGENCY_MODE = 2221; // 0x8ad - field public static final int EMM_ACCESS_BARRED = 115; // 0x73 - field public static final int EMM_ACCESS_BARRED_INFINITE_RETRY = 121; // 0x79 - field public static final int EMM_ATTACH_FAILED = 2115; // 0x843 - field public static final int EMM_ATTACH_STARTED = 2116; // 0x844 - field public static final int EMM_DETACHED = 2114; // 0x842 - field public static final int EMM_T3417_EXPIRED = 2130; // 0x852 - field public static final int EMM_T3417_EXT_EXPIRED = 2131; // 0x853 - field public static final int EPS_SERVICES_AND_NON_EPS_SERVICES_NOT_ALLOWED = 2178; // 0x882 - field public static final int EPS_SERVICES_NOT_ALLOWED_IN_PLMN = 2179; // 0x883 - field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff - field public static final int ESM_BAD_OTA_MESSAGE = 2122; // 0x84a - field public static final int ESM_BEARER_DEACTIVATED_TO_SYNC_WITH_NETWORK = 2120; // 0x848 - field public static final int ESM_COLLISION_SCENARIOS = 2119; // 0x847 - field public static final int ESM_CONTEXT_TRANSFERRED_DUE_TO_IRAT = 2124; // 0x84c - field public static final int ESM_DOWNLOAD_SERVER_REJECTED_THE_CALL = 2123; // 0x84b - field public static final int ESM_FAILURE = 2182; // 0x886 - field public static final int ESM_INFO_NOT_RECEIVED = 53; // 0x35 - field public static final int ESM_LOCAL_CAUSE_NONE = 2126; // 0x84e - field public static final int ESM_NW_ACTIVATED_DED_BEARER_WITH_ID_OF_DEF_BEARER = 2121; // 0x849 - field public static final int ESM_PROCEDURE_TIME_OUT = 2155; // 0x86b - field public static final int ESM_UNKNOWN_EPS_BEARER_CONTEXT = 2111; // 0x83f - field public static final int EVDO_CONNECTION_DENY_BY_BILLING_OR_AUTHENTICATION_FAILURE = 2201; // 0x899 - field public static final int EVDO_CONNECTION_DENY_BY_GENERAL_OR_NETWORK_BUSY = 2200; // 0x898 - field public static final int EVDO_HDR_CHANGED = 2202; // 0x89a - field public static final int EVDO_HDR_CONNECTION_SETUP_TIMEOUT = 2206; // 0x89e - field public static final int EVDO_HDR_EXITED = 2203; // 0x89b - field public static final int EVDO_HDR_NO_SESSION = 2204; // 0x89c - field public static final int EVDO_USING_GPS_FIX_INSTEAD_OF_HDR_CALL = 2205; // 0x89d - field public static final int FADE = 2217; // 0x8a9 - field public static final int FAILED_TO_ACQUIRE_COLOCATED_HDR = 2207; // 0x89f - field public static final int FEATURE_NOT_SUPP = 40; // 0x28 - field public static final int FILTER_SEMANTIC_ERROR = 44; // 0x2c - field public static final int FILTER_SYTAX_ERROR = 45; // 0x2d - field public static final int FORBIDDEN_APN_NAME = 2066; // 0x812 - field public static final int GPRS_REGISTRATION_FAIL = -2; // 0xfffffffe - field public static final int GPRS_SERVICES_AND_NON_GPRS_SERVICES_NOT_ALLOWED = 2097; // 0x831 - field public static final int GPRS_SERVICES_NOT_ALLOWED = 2098; // 0x832 - field public static final int GPRS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN = 2103; // 0x837 - field public static final int HANDOFF_PREFERENCE_CHANGED = 2251; // 0x8cb - field public static final int HDR_ACCESS_FAILURE = 2213; // 0x8a5 - field public static final int HDR_FADE = 2212; // 0x8a4 - field public static final int HDR_NO_LOCK_GRANTED = 2210; // 0x8a2 - field public static final int IFACE_AND_POL_FAMILY_MISMATCH = 120; // 0x78 - field public static final int IFACE_MISMATCH = 117; // 0x75 - field public static final int ILLEGAL_ME = 2096; // 0x830 - field public static final int ILLEGAL_MS = 2095; // 0x82f - field public static final int IMEI_NOT_ACCEPTED = 2177; // 0x881 - field public static final int IMPLICITLY_DETACHED = 2100; // 0x834 - field public static final int IMSI_UNKNOWN_IN_HOME_SUBSCRIBER_SERVER = 2176; // 0x880 - field public static final int INCOMING_CALL_REJECTED = 2092; // 0x82c - field public static final int INSUFFICIENT_RESOURCES = 26; // 0x1a - field public static final int INTERFACE_IN_USE = 2058; // 0x80a - field public static final int INTERNAL_CALL_PREEMPT_BY_HIGH_PRIO_APN = 114; // 0x72 - field public static final int INTERNAL_EPC_NONEPC_TRANSITION = 2057; // 0x809 - field public static final int INVALID_CONNECTION_ID = 2156; // 0x86c - field public static final int INVALID_DNS_ADDR = 123; // 0x7b - field public static final int INVALID_EMM_STATE = 2190; // 0x88e - field public static final int INVALID_MANDATORY_INFO = 96; // 0x60 - field public static final int INVALID_MODE = 2223; // 0x8af - field public static final int INVALID_PCSCF_ADDR = 113; // 0x71 - field public static final int INVALID_PCSCF_OR_DNS_ADDRESS = 124; // 0x7c - field public static final int INVALID_PRIMARY_NSAPI = 2158; // 0x86e - field public static final int INVALID_SIM_STATE = 2224; // 0x8b0 - field public static final int INVALID_TRANSACTION_ID = 81; // 0x51 - field public static final int IPV6_ADDRESS_TRANSFER_FAILED = 2047; // 0x7ff - field public static final int IPV6_PREFIX_UNAVAILABLE = 2250; // 0x8ca - field public static final int IP_ADDRESS_MISMATCH = 119; // 0x77 - field public static final int IP_VERSION_MISMATCH = 2055; // 0x807 - field public static final int IRAT_HANDOVER_FAILED = 2194; // 0x892 - field public static final int IS707B_MAX_ACCESS_PROBES = 2089; // 0x829 - field public static final int IWLAN_AUTHORIZATION_REJECTED = 9003; // 0x232b - field public static final int IWLAN_CONGESTION = 15500; // 0x3c8c - field public static final int IWLAN_DNS_RESOLUTION_NAME_FAILURE = 16388; // 0x4004 - field public static final int IWLAN_DNS_RESOLUTION_TIMEOUT = 16389; // 0x4005 - field public static final int IWLAN_IKEV2_AUTH_FAILURE = 16385; // 0x4001 - field public static final int IWLAN_IKEV2_CERT_INVALID = 16387; // 0x4003 - field public static final int IWLAN_IKEV2_CONFIG_FAILURE = 16384; // 0x4000 - field public static final int IWLAN_IKEV2_MSG_TIMEOUT = 16386; // 0x4002 - field public static final int IWLAN_ILLEGAL_ME = 9006; // 0x232e - field public static final int IWLAN_IMEI_NOT_ACCEPTED = 11005; // 0x2afd - field public static final int IWLAN_MAX_CONNECTION_REACHED = 8193; // 0x2001 - field public static final int IWLAN_NETWORK_FAILURE = 10500; // 0x2904 - field public static final int IWLAN_NON_3GPP_ACCESS_TO_EPC_NOT_ALLOWED = 9000; // 0x2328 - field public static final int IWLAN_NO_APN_SUBSCRIPTION = 9002; // 0x232a - field public static final int IWLAN_PDN_CONNECTION_REJECTION = 8192; // 0x2000 - field public static final int IWLAN_PLMN_NOT_ALLOWED = 11011; // 0x2b03 - field public static final int IWLAN_RAT_TYPE_NOT_ALLOWED = 11001; // 0x2af9 - field public static final int IWLAN_SEMANTIC_ERRORS_IN_PACKET_FILTERS = 8244; // 0x2034 - field public static final int IWLAN_SEMANTIC_ERROR_IN_THE_TFT_OPERATION = 8241; // 0x2031 - field public static final int IWLAN_SYNTACTICAL_ERRORS_IN_PACKET_FILTERS = 8245; // 0x2035 - field public static final int IWLAN_SYNTACTICAL_ERROR_IN_THE_TFT_OPERATION = 8242; // 0x2032 - field public static final int IWLAN_TUNNEL_NOT_FOUND = 16390; // 0x4006 - field public static final int IWLAN_UNAUTHENTICATED_EMERGENCY_NOT_SUPPORTED = 11055; // 0x2b2f - field public static final int IWLAN_USER_UNKNOWN = 9001; // 0x2329 - field public static final int LIMITED_TO_IPV4 = 2234; // 0x8ba - field public static final int LIMITED_TO_IPV6 = 2235; // 0x8bb - field public static final int LLC_SNDCP = 25; // 0x19 - field public static final int LOCAL_END = 2215; // 0x8a7 - field public static final int LOCATION_AREA_NOT_ALLOWED = 2102; // 0x836 - field public static final int LOST_CONNECTION = 65540; // 0x10004 - field public static final int LOWER_LAYER_REGISTRATION_FAILURE = 2197; // 0x895 - field public static final int LOW_POWER_MODE_OR_POWERING_DOWN = 2044; // 0x7fc - field public static final int LTE_NAS_SERVICE_REQUEST_FAILED = 2117; // 0x845 - field public static final int LTE_THROTTLING_NOT_REQUIRED = 2127; // 0x84f - field public static final int MAC_FAILURE = 2183; // 0x887 - field public static final int MATCH_ALL_RULE_NOT_ALLOWED = 2253; // 0x8cd - field public static final int MAXIMIUM_NSAPIS_EXCEEDED = 2157; // 0x86d - field public static final int MAXINUM_SIZE_OF_L2_MESSAGE_EXCEEDED = 2166; // 0x876 - field public static final int MAX_ACCESS_PROBE = 2079; // 0x81f - field public static final int MAX_IPV4_CONNECTIONS = 2052; // 0x804 - field public static final int MAX_IPV6_CONNECTIONS = 2053; // 0x805 - field public static final int MAX_PPP_INACTIVITY_TIMER_EXPIRED = 2046; // 0x7fe - field public static final int MESSAGE_INCORRECT_SEMANTIC = 95; // 0x5f - field public static final int MESSAGE_TYPE_UNSUPPORTED = 97; // 0x61 - field public static final int MIP_CONFIG_FAILURE = 2050; // 0x802 - field public static final int MIP_FA_ADMIN_PROHIBITED = 2001; // 0x7d1 - field public static final int MIP_FA_DELIVERY_STYLE_NOT_SUPPORTED = 2012; // 0x7dc - field public static final int MIP_FA_ENCAPSULATION_UNAVAILABLE = 2008; // 0x7d8 - field public static final int MIP_FA_HOME_AGENT_AUTHENTICATION_FAILURE = 2004; // 0x7d4 - field public static final int MIP_FA_INSUFFICIENT_RESOURCES = 2002; // 0x7d2 - field public static final int MIP_FA_MALFORMED_REPLY = 2007; // 0x7d7 - field public static final int MIP_FA_MALFORMED_REQUEST = 2006; // 0x7d6 - field public static final int MIP_FA_MISSING_CHALLENGE = 2017; // 0x7e1 - field public static final int MIP_FA_MISSING_HOME_ADDRESS = 2015; // 0x7df - field public static final int MIP_FA_MISSING_HOME_AGENT = 2014; // 0x7de - field public static final int MIP_FA_MISSING_NAI = 2013; // 0x7dd - field public static final int MIP_FA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2003; // 0x7d3 - field public static final int MIP_FA_REASON_UNSPECIFIED = 2000; // 0x7d0 - field public static final int MIP_FA_REQUESTED_LIFETIME_TOO_LONG = 2005; // 0x7d5 - field public static final int MIP_FA_REVERSE_TUNNEL_IS_MANDATORY = 2011; // 0x7db - field public static final int MIP_FA_REVERSE_TUNNEL_UNAVAILABLE = 2010; // 0x7da - field public static final int MIP_FA_STALE_CHALLENGE = 2018; // 0x7e2 - field public static final int MIP_FA_UNKNOWN_CHALLENGE = 2016; // 0x7e0 - field public static final int MIP_FA_VJ_HEADER_COMPRESSION_UNAVAILABLE = 2009; // 0x7d9 - field public static final int MIP_HA_ADMIN_PROHIBITED = 2020; // 0x7e4 - field public static final int MIP_HA_ENCAPSULATION_UNAVAILABLE = 2029; // 0x7ed - field public static final int MIP_HA_FOREIGN_AGENT_AUTHENTICATION_FAILURE = 2023; // 0x7e7 - field public static final int MIP_HA_INSUFFICIENT_RESOURCES = 2021; // 0x7e5 - field public static final int MIP_HA_MALFORMED_REQUEST = 2025; // 0x7e9 - field public static final int MIP_HA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2022; // 0x7e6 - field public static final int MIP_HA_REASON_UNSPECIFIED = 2019; // 0x7e3 - field public static final int MIP_HA_REGISTRATION_ID_MISMATCH = 2024; // 0x7e8 - field public static final int MIP_HA_REVERSE_TUNNEL_IS_MANDATORY = 2028; // 0x7ec - field public static final int MIP_HA_REVERSE_TUNNEL_UNAVAILABLE = 2027; // 0x7eb - field public static final int MIP_HA_UNKNOWN_HOME_AGENT_ADDRESS = 2026; // 0x7ea - field public static final int MISSING_UNKNOWN_APN = 27; // 0x1b - field public static final int MODEM_APP_PREEMPTED = 2032; // 0x7f0 - field public static final int MODEM_RESTART = 2037; // 0x7f5 - field public static final int MSC_TEMPORARILY_NOT_REACHABLE = 2180; // 0x884 - field public static final int MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE = 101; // 0x65 - field public static final int MSG_TYPE_NONCOMPATIBLE_STATE = 98; // 0x62 - field public static final int MS_IDENTITY_CANNOT_BE_DERIVED_BY_THE_NETWORK = 2099; // 0x833 - field public static final int MULTIPLE_PDP_CALL_NOT_ALLOWED = 2192; // 0x890 - field public static final int MULTI_CONN_TO_SAME_PDN_NOT_ALLOWED = 55; // 0x37 - field public static final int NAS_LAYER_FAILURE = 2191; // 0x88f - field public static final int NAS_REQUEST_REJECTED_BY_NETWORK = 2167; // 0x877 - field public static final int NAS_SIGNALLING = 14; // 0xe - field public static final int NETWORK_FAILURE = 38; // 0x26 - field public static final int NETWORK_INITIATED_DETACH_NO_AUTO_REATTACH = 2154; // 0x86a - field public static final int NETWORK_INITIATED_DETACH_WITH_AUTO_REATTACH = 2153; // 0x869 - field public static final int NETWORK_INITIATED_TERMINATION = 2031; // 0x7ef - field public static final int NONE = 0; // 0x0 - field public static final int NON_IP_NOT_SUPPORTED = 2069; // 0x815 - field public static final int NORMAL_RELEASE = 2218; // 0x8aa - field public static final int NO_CDMA_SERVICE = 2084; // 0x824 - field public static final int NO_COLLOCATED_HDR = 2225; // 0x8b1 - field public static final int NO_EPS_BEARER_CONTEXT_ACTIVATED = 2189; // 0x88d - field public static final int NO_GPRS_CONTEXT = 2094; // 0x82e - field public static final int NO_HYBRID_HDR_SERVICE = 2209; // 0x8a1 - field public static final int NO_PDP_CONTEXT_ACTIVATED = 2107; // 0x83b - field public static final int NO_RESPONSE_FROM_BASE_STATION = 2081; // 0x821 - field public static final int NO_SERVICE = 2216; // 0x8a8 - field public static final int NO_SERVICE_ON_GATEWAY = 2093; // 0x82d - field public static final int NSAPI_IN_USE = 35; // 0x23 - field public static final int NULL_APN_DISALLOWED = 2061; // 0x80d - field public static final int OEM_DCFAILCAUSE_1 = 4097; // 0x1001 - field public static final int OEM_DCFAILCAUSE_10 = 4106; // 0x100a - field public static final int OEM_DCFAILCAUSE_11 = 4107; // 0x100b - field public static final int OEM_DCFAILCAUSE_12 = 4108; // 0x100c - field public static final int OEM_DCFAILCAUSE_13 = 4109; // 0x100d - field public static final int OEM_DCFAILCAUSE_14 = 4110; // 0x100e - field public static final int OEM_DCFAILCAUSE_15 = 4111; // 0x100f - field public static final int OEM_DCFAILCAUSE_2 = 4098; // 0x1002 - field public static final int OEM_DCFAILCAUSE_3 = 4099; // 0x1003 - field public static final int OEM_DCFAILCAUSE_4 = 4100; // 0x1004 - field public static final int OEM_DCFAILCAUSE_5 = 4101; // 0x1005 - field public static final int OEM_DCFAILCAUSE_6 = 4102; // 0x1006 - field public static final int OEM_DCFAILCAUSE_7 = 4103; // 0x1007 - field public static final int OEM_DCFAILCAUSE_8 = 4104; // 0x1008 - field public static final int OEM_DCFAILCAUSE_9 = 4105; // 0x1009 - field public static final int ONLY_IPV4V6_ALLOWED = 57; // 0x39 - field public static final int ONLY_IPV4_ALLOWED = 50; // 0x32 - field public static final int ONLY_IPV6_ALLOWED = 51; // 0x33 - field public static final int ONLY_NON_IP_ALLOWED = 58; // 0x3a - field public static final int ONLY_SINGLE_BEARER_ALLOWED = 52; // 0x34 - field public static final int OPERATOR_BARRED = 8; // 0x8 - field public static final int OTASP_COMMIT_IN_PROGRESS = 2208; // 0x8a0 - field public static final int PDN_CONN_DOES_NOT_EXIST = 54; // 0x36 - field public static final int PDN_INACTIVITY_TIMER_EXPIRED = 2051; // 0x803 - field public static final int PDN_IPV4_CALL_DISALLOWED = 2033; // 0x7f1 - field public static final int PDN_IPV4_CALL_THROTTLED = 2034; // 0x7f2 - field public static final int PDN_IPV6_CALL_DISALLOWED = 2035; // 0x7f3 - field public static final int PDN_IPV6_CALL_THROTTLED = 2036; // 0x7f4 - field public static final int PDN_NON_IP_CALL_DISALLOWED = 2071; // 0x817 - field public static final int PDN_NON_IP_CALL_THROTTLED = 2070; // 0x816 - field public static final int PDP_ACTIVATE_MAX_RETRY_FAILED = 2109; // 0x83d - field public static final int PDP_DUPLICATE = 2104; // 0x838 - field public static final int PDP_ESTABLISH_TIMEOUT_EXPIRED = 2161; // 0x871 - field public static final int PDP_INACTIVE_TIMEOUT_EXPIRED = 2163; // 0x873 - field public static final int PDP_LOWERLAYER_ERROR = 2164; // 0x874 - field public static final int PDP_MODIFY_COLLISION = 2165; // 0x875 - field public static final int PDP_MODIFY_TIMEOUT_EXPIRED = 2162; // 0x872 - field public static final int PDP_PPP_NOT_SUPPORTED = 2038; // 0x7f6 - field public static final int PDP_WITHOUT_ACTIVE_TFT = 46; // 0x2e - field public static final int PHONE_IN_USE = 2222; // 0x8ae - field public static final int PHYSICAL_LINK_CLOSE_IN_PROGRESS = 2040; // 0x7f8 - field public static final int PLMN_NOT_ALLOWED = 2101; // 0x835 - field public static final int PPP_AUTH_FAILURE = 2229; // 0x8b5 - field public static final int PPP_CHAP_FAILURE = 2232; // 0x8b8 - field public static final int PPP_CLOSE_IN_PROGRESS = 2233; // 0x8b9 - field public static final int PPP_OPTION_MISMATCH = 2230; // 0x8b6 - field public static final int PPP_PAP_FAILURE = 2231; // 0x8b7 - field public static final int PPP_TIMEOUT = 2228; // 0x8b4 - field public static final int PREF_RADIO_TECH_CHANGED = -4; // 0xfffffffc - field public static final int PROFILE_BEARER_INCOMPATIBLE = 2042; // 0x7fa - field public static final int PROTOCOL_ERRORS = 111; // 0x6f - field public static final int QOS_NOT_ACCEPTED = 37; // 0x25 - field public static final int RADIO_ACCESS_BEARER_FAILURE = 2110; // 0x83e - field public static final int RADIO_ACCESS_BEARER_SETUP_FAILURE = 2160; // 0x870 - field public static final int RADIO_NOT_AVAILABLE = 65537; // 0x10001 - field public static final int RADIO_POWER_OFF = -5; // 0xfffffffb - field public static final int REDIRECTION_OR_HANDOFF_IN_PROGRESS = 2220; // 0x8ac - field public static final int REGISTRATION_FAIL = -1; // 0xffffffff - field public static final int REGULAR_DEACTIVATION = 36; // 0x24 - field public static final int REJECTED_BY_BASE_STATION = 2082; // 0x822 - field public static final int RRC_CONNECTION_ABORTED_AFTER_HANDOVER = 2173; // 0x87d - field public static final int RRC_CONNECTION_ABORTED_AFTER_IRAT_CELL_CHANGE = 2174; // 0x87e - field public static final int RRC_CONNECTION_ABORTED_DUE_TO_IRAT_CHANGE = 2171; // 0x87b - field public static final int RRC_CONNECTION_ABORTED_DURING_IRAT_CELL_CHANGE = 2175; // 0x87f - field public static final int RRC_CONNECTION_ABORT_REQUEST = 2151; // 0x867 - field public static final int RRC_CONNECTION_ACCESS_BARRED = 2139; // 0x85b - field public static final int RRC_CONNECTION_ACCESS_STRATUM_FAILURE = 2137; // 0x859 - field public static final int RRC_CONNECTION_ANOTHER_PROCEDURE_IN_PROGRESS = 2138; // 0x85a - field public static final int RRC_CONNECTION_CELL_NOT_CAMPED = 2144; // 0x860 - field public static final int RRC_CONNECTION_CELL_RESELECTION = 2140; // 0x85c - field public static final int RRC_CONNECTION_CONFIG_FAILURE = 2141; // 0x85d - field public static final int RRC_CONNECTION_INVALID_REQUEST = 2168; // 0x878 - field public static final int RRC_CONNECTION_LINK_FAILURE = 2143; // 0x85f - field public static final int RRC_CONNECTION_NORMAL_RELEASE = 2147; // 0x863 - field public static final int RRC_CONNECTION_OUT_OF_SERVICE_DURING_CELL_REGISTER = 2150; // 0x866 - field public static final int RRC_CONNECTION_RADIO_LINK_FAILURE = 2148; // 0x864 - field public static final int RRC_CONNECTION_REESTABLISHMENT_FAILURE = 2149; // 0x865 - field public static final int RRC_CONNECTION_REJECT_BY_NETWORK = 2146; // 0x862 - field public static final int RRC_CONNECTION_RELEASED_SECURITY_NOT_ACTIVE = 2172; // 0x87c - field public static final int RRC_CONNECTION_RF_UNAVAILABLE = 2170; // 0x87a - field public static final int RRC_CONNECTION_SYSTEM_INFORMATION_BLOCK_READ_ERROR = 2152; // 0x868 - field public static final int RRC_CONNECTION_SYSTEM_INTERVAL_FAILURE = 2145; // 0x861 - field public static final int RRC_CONNECTION_TIMER_EXPIRED = 2142; // 0x85e - field public static final int RRC_CONNECTION_TRACKING_AREA_ID_CHANGED = 2169; // 0x879 - field public static final int RRC_UPLINK_CONNECTION_RELEASE = 2134; // 0x856 - field public static final int RRC_UPLINK_DATA_TRANSMISSION_FAILURE = 2132; // 0x854 - field public static final int RRC_UPLINK_DELIVERY_FAILED_DUE_TO_HANDOVER = 2133; // 0x855 - field public static final int RRC_UPLINK_ERROR_REQUEST_FROM_NAS = 2136; // 0x858 - field public static final int RRC_UPLINK_RADIO_LINK_FAILURE = 2135; // 0x857 - field public static final int RUIM_NOT_PRESENT = 2085; // 0x825 - field public static final int SECURITY_MODE_REJECTED = 2186; // 0x88a - field public static final int SERVICE_NOT_ALLOWED_ON_PLMN = 2129; // 0x851 - field public static final int SERVICE_OPTION_NOT_SUBSCRIBED = 33; // 0x21 - field public static final int SERVICE_OPTION_NOT_SUPPORTED = 32; // 0x20 - field public static final int SERVICE_OPTION_OUT_OF_ORDER = 34; // 0x22 - field public static final int SIGNAL_LOST = -3; // 0xfffffffd - field public static final int SIM_CARD_CHANGED = 2043; // 0x7fb - field public static final int SLICE_REJECTED = 2252; // 0x8cc - field public static final int SYNCHRONIZATION_FAILURE = 2184; // 0x888 - field public static final int TEST_LOOPBACK_REGULAR_DEACTIVATION = 2196; // 0x894 - field public static final int TETHERED_CALL_ACTIVE = -6; // 0xfffffffa - field public static final int TFT_SEMANTIC_ERROR = 41; // 0x29 - field public static final int TFT_SYTAX_ERROR = 42; // 0x2a - field public static final int THERMAL_EMERGENCY = 2090; // 0x82a - field public static final int THERMAL_MITIGATION = 2062; // 0x80e - field public static final int TRAT_SWAP_FAILED = 2048; // 0x800 - field public static final int UE_INITIATED_DETACH_OR_DISCONNECT = 128; // 0x80 - field public static final int UE_IS_ENTERING_POWERSAVE_MODE = 2226; // 0x8b2 - field public static final int UE_RAT_CHANGE = 2105; // 0x839 - field public static final int UE_SECURITY_CAPABILITIES_MISMATCH = 2185; // 0x889 - field public static final int UMTS_HANDOVER_TO_IWLAN = 2199; // 0x897 - field public static final int UMTS_REACTIVATION_REQ = 39; // 0x27 - field public static final int UNACCEPTABLE_NETWORK_PARAMETER = 65538; // 0x10002 - field public static final int UNACCEPTABLE_NON_EPS_AUTHENTICATION = 2187; // 0x88b - field public static final int UNKNOWN = 65536; // 0x10000 - field public static final int UNKNOWN_INFO_ELEMENT = 99; // 0x63 - field public static final int UNKNOWN_PDP_ADDRESS_TYPE = 28; // 0x1c - field public static final int UNKNOWN_PDP_CONTEXT = 43; // 0x2b - field public static final int UNPREFERRED_RAT = 2039; // 0x7f7 - field public static final int UNSUPPORTED_1X_PREV = 2214; // 0x8a6 - field public static final int UNSUPPORTED_APN_IN_CURRENT_PLMN = 66; // 0x42 - field public static final int UNSUPPORTED_QCI_VALUE = 59; // 0x3b - field public static final int USER_AUTHENTICATION = 29; // 0x1d - field public static final int VSNCP_ADMINISTRATIVELY_PROHIBITED = 2245; // 0x8c5 - field public static final int VSNCP_APN_UNAUTHORIZED = 2238; // 0x8be - field public static final int VSNCP_GEN_ERROR = 2237; // 0x8bd - field public static final int VSNCP_INSUFFICIENT_PARAMETERS = 2243; // 0x8c3 - field public static final int VSNCP_NO_PDN_GATEWAY_ADDRESS = 2240; // 0x8c0 - field public static final int VSNCP_PDN_EXISTS_FOR_THIS_APN = 2248; // 0x8c8 - field public static final int VSNCP_PDN_GATEWAY_REJECT = 2242; // 0x8c2 - field public static final int VSNCP_PDN_GATEWAY_UNREACHABLE = 2241; // 0x8c1 - field public static final int VSNCP_PDN_ID_IN_USE = 2246; // 0x8c6 - field public static final int VSNCP_PDN_LIMIT_EXCEEDED = 2239; // 0x8bf - field public static final int VSNCP_RECONNECT_NOT_ALLOWED = 2249; // 0x8c9 - field public static final int VSNCP_RESOURCE_UNAVAILABLE = 2244; // 0x8c4 - field public static final int VSNCP_SUBSCRIBER_LIMITATION = 2247; // 0x8c7 - field public static final int VSNCP_TIMEOUT = 2236; // 0x8bc - } - - public final class DisconnectCause { - field public static final int ALREADY_DIALING = 72; // 0x48 - field public static final int ANSWERED_ELSEWHERE = 52; // 0x34 - field public static final int BUSY = 4; // 0x4 - field public static final int CALLING_DISABLED = 74; // 0x4a - field public static final int CALL_BARRED = 20; // 0x14 - field public static final int CALL_PULLED = 51; // 0x33 - field public static final int CANT_CALL_WHILE_RINGING = 73; // 0x49 - field public static final int CDMA_ACCESS_BLOCKED = 35; // 0x23 - field public static final int CDMA_ACCESS_FAILURE = 32; // 0x20 - field public static final int CDMA_ALREADY_ACTIVATED = 49; // 0x31 - field public static final int CDMA_DROP = 27; // 0x1b - field public static final int CDMA_INTERCEPT = 28; // 0x1c - field public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 26; // 0x1a - field public static final int CDMA_NOT_EMERGENCY = 34; // 0x22 - field public static final int CDMA_PREEMPTED = 33; // 0x21 - field public static final int CDMA_REORDER = 29; // 0x1d - field public static final int CDMA_RETRY_ORDER = 31; // 0x1f - field public static final int CDMA_SO_REJECT = 30; // 0x1e - field public static final int CONGESTION = 5; // 0x5 - field public static final int CS_RESTRICTED = 22; // 0x16 - field public static final int CS_RESTRICTED_EMERGENCY = 24; // 0x18 - field public static final int CS_RESTRICTED_NORMAL = 23; // 0x17 - field public static final int DATA_DISABLED = 54; // 0x36 - field public static final int DATA_LIMIT_REACHED = 55; // 0x37 - field public static final int DIALED_CALL_FORWARDING_WHILE_ROAMING = 57; // 0x39 - field public static final int DIALED_MMI = 39; // 0x27 - field public static final int DIAL_LOW_BATTERY = 62; // 0x3e - field public static final int DIAL_MODIFIED_TO_DIAL = 48; // 0x30 - field public static final int DIAL_MODIFIED_TO_DIAL_VIDEO = 66; // 0x42 - field public static final int DIAL_MODIFIED_TO_SS = 47; // 0x2f - field public static final int DIAL_MODIFIED_TO_USSD = 46; // 0x2e - field public static final int DIAL_VIDEO_MODIFIED_TO_DIAL = 69; // 0x45 - field public static final int DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 70; // 0x46 - field public static final int DIAL_VIDEO_MODIFIED_TO_SS = 67; // 0x43 - field public static final int DIAL_VIDEO_MODIFIED_TO_USSD = 68; // 0x44 - field public static final int EMERGENCY_CALL_OVER_WFC_NOT_AVAILABLE = 78; // 0x4e - field public static final int EMERGENCY_PERM_FAILURE = 64; // 0x40 - field public static final int EMERGENCY_TEMP_FAILURE = 63; // 0x3f - field public static final int ERROR_UNSPECIFIED = 36; // 0x24 - field public static final int FDN_BLOCKED = 21; // 0x15 - field public static final int ICC_ERROR = 19; // 0x13 - field public static final int IMEI_NOT_ACCEPTED = 58; // 0x3a - field public static final int IMS_ACCESS_BLOCKED = 60; // 0x3c - field public static final int IMS_MERGED_SUCCESSFULLY = 45; // 0x2d - field public static final int IMS_SIP_ALTERNATE_EMERGENCY_CALL = 71; // 0x47 - field public static final int INCOMING_AUTO_REJECTED = 81; // 0x51 - field public static final int INCOMING_MISSED = 1; // 0x1 - field public static final int INCOMING_REJECTED = 16; // 0x10 - field public static final int INVALID_CREDENTIALS = 10; // 0xa - field public static final int INVALID_NUMBER = 7; // 0x7 - field public static final int LIMIT_EXCEEDED = 15; // 0xf - field public static final int LOCAL = 3; // 0x3 - field public static final int LOST_SIGNAL = 14; // 0xe - field public static final int LOW_BATTERY = 61; // 0x3d - field public static final int MAXIMUM_NUMBER_OF_CALLS_REACHED = 53; // 0x35 - field public static final int MEDIA_TIMEOUT = 77; // 0x4d - field public static final int MMI = 6; // 0x6 - field public static final int NORMAL = 2; // 0x2 - field public static final int NORMAL_UNSPECIFIED = 65; // 0x41 - field public static final int NOT_DISCONNECTED = 0; // 0x0 - field public static final int NOT_VALID = -1; // 0xffffffff - field public static final int NO_PHONE_NUMBER_SUPPLIED = 38; // 0x26 - field public static final int NUMBER_UNREACHABLE = 8; // 0x8 - field public static final int OTASP_PROVISIONING_IN_PROCESS = 76; // 0x4c - field public static final int OUTGOING_CANCELED = 44; // 0x2c - field public static final int OUTGOING_EMERGENCY_CALL_PLACED = 80; // 0x50 - field public static final int OUTGOING_FAILURE = 43; // 0x2b - field public static final int OUT_OF_NETWORK = 11; // 0xb - field public static final int OUT_OF_SERVICE = 18; // 0x12 - field public static final int POWER_OFF = 17; // 0x11 - field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_ENABLED = 82; // 0x52 - field public static final int SERVER_ERROR = 12; // 0xc - field public static final int SERVER_UNREACHABLE = 9; // 0x9 - field public static final int TIMED_OUT = 13; // 0xd - field public static final int TOO_MANY_ONGOING_CALLS = 75; // 0x4b - field public static final int UNOBTAINABLE_NUMBER = 25; // 0x19 - field public static final int VIDEO_CALL_NOT_ALLOWED_WHILE_TTY_ENABLED = 50; // 0x32 - field public static final int VOICEMAIL_NUMBER_MISSING = 40; // 0x28 - field public static final int WFC_SERVICE_NOT_AVAILABLE_IN_THIS_LOCATION = 79; // 0x4f - field public static final int WIFI_LOST = 59; // 0x3b - } - - public class IccOpenLogicalChannelResponse implements android.os.Parcelable { - method public int describeContents(); - method public int getChannel(); - method public byte[] getSelectResponse(); - method public int getStatus(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int INVALID_CHANNEL = -1; // 0xffffffff - field public static final int STATUS_MISSING_RESOURCE = 2; // 0x2 - field public static final int STATUS_NO_ERROR = 1; // 0x1 - field public static final int STATUS_NO_SUCH_ELEMENT = 3; // 0x3 - field public static final int STATUS_UNKNOWN_ERROR = 4; // 0x4 - } - - public class MbmsDownloadSession implements java.lang.AutoCloseable { - method public void addProgressListener(@NonNull android.telephony.mbms.DownloadRequest, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.DownloadProgressListener); - method public void addServiceAnnouncement(@NonNull byte[]); - method public void addStatusListener(@NonNull android.telephony.mbms.DownloadRequest, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.DownloadStatusListener); - method public void cancelDownload(@NonNull android.telephony.mbms.DownloadRequest); - method public void close(); - method public static android.telephony.MbmsDownloadSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.MbmsDownloadSessionCallback); - method @Nullable public static android.telephony.MbmsDownloadSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, int, @NonNull android.telephony.mbms.MbmsDownloadSessionCallback); - method public void download(@NonNull android.telephony.mbms.DownloadRequest); - method public static int getMaximumServiceAnnouncementSize(); - method @Nullable public java.io.File getTempFileRootDirectory(); - method @NonNull public java.util.List listPendingDownloads(); - method public void removeProgressListener(@NonNull android.telephony.mbms.DownloadRequest, @NonNull android.telephony.mbms.DownloadProgressListener); - method public void removeStatusListener(@NonNull android.telephony.mbms.DownloadRequest, @NonNull android.telephony.mbms.DownloadStatusListener); - method public void requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo); - method public void requestUpdateFileServices(@NonNull java.util.List); - method public void resetDownloadKnowledge(android.telephony.mbms.DownloadRequest); - method public void setTempFileRootDirectory(@NonNull java.io.File); - field public static final String DEFAULT_TOP_LEVEL_TEMP_DIRECTORY = "androidMbmsTempFileRoot"; - field public static final String EXTRA_MBMS_COMPLETED_FILE_URI = "android.telephony.extra.MBMS_COMPLETED_FILE_URI"; - field public static final String EXTRA_MBMS_DOWNLOAD_REQUEST = "android.telephony.extra.MBMS_DOWNLOAD_REQUEST"; - field public static final String EXTRA_MBMS_DOWNLOAD_RESULT = "android.telephony.extra.MBMS_DOWNLOAD_RESULT"; - field public static final String EXTRA_MBMS_FILE_INFO = "android.telephony.extra.MBMS_FILE_INFO"; - field public static final int RESULT_CANCELLED = 2; // 0x2 - field public static final int RESULT_DOWNLOAD_FAILURE = 6; // 0x6 - field public static final int RESULT_EXPIRED = 3; // 0x3 - field public static final int RESULT_FILE_ROOT_UNREACHABLE = 8; // 0x8 - field public static final int RESULT_IO_ERROR = 4; // 0x4 - field public static final int RESULT_OUT_OF_STORAGE = 7; // 0x7 - field public static final int RESULT_SERVICE_ID_NOT_DEFINED = 5; // 0x5 - field public static final int RESULT_SUCCESSFUL = 1; // 0x1 - field public static final int STATUS_ACTIVELY_DOWNLOADING = 1; // 0x1 - field public static final int STATUS_PENDING_DOWNLOAD = 2; // 0x2 - field public static final int STATUS_PENDING_DOWNLOAD_WINDOW = 4; // 0x4 - field public static final int STATUS_PENDING_REPAIR = 3; // 0x3 - field public static final int STATUS_UNKNOWN = 0; // 0x0 - } - - public class MbmsGroupCallSession implements java.lang.AutoCloseable { - method public void close(); - method @Nullable public static android.telephony.MbmsGroupCallSession create(@NonNull android.content.Context, int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.MbmsGroupCallSessionCallback); - method @Nullable public static android.telephony.MbmsGroupCallSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.MbmsGroupCallSessionCallback); - method @Nullable public android.telephony.mbms.GroupCall startGroupCall(long, @NonNull java.util.List, @NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.GroupCallCallback); - } - - public class MbmsStreamingSession implements java.lang.AutoCloseable { - method public void close(); - method @Nullable public static android.telephony.MbmsStreamingSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, int, @NonNull android.telephony.mbms.MbmsStreamingSessionCallback); - method public static android.telephony.MbmsStreamingSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.MbmsStreamingSessionCallback); - method public void requestUpdateStreamingServices(java.util.List); - method @Nullable public android.telephony.mbms.StreamingService startStreaming(android.telephony.mbms.StreamingServiceInfo, @NonNull java.util.concurrent.Executor, android.telephony.mbms.StreamingServiceCallback); - } - - @Deprecated public class NeighboringCellInfo implements android.os.Parcelable { - ctor @Deprecated public NeighboringCellInfo(); - ctor @Deprecated public NeighboringCellInfo(int, int); - ctor @Deprecated public NeighboringCellInfo(int, String, int); - ctor @Deprecated public NeighboringCellInfo(android.os.Parcel); - method @Deprecated public int describeContents(); - method @Deprecated public int getCid(); - method @Deprecated public int getLac(); - method @Deprecated public int getNetworkType(); - method @Deprecated public int getPsc(); - method @Deprecated public int getRssi(); - method @Deprecated public void setCid(int); - method @Deprecated public void setRssi(int); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @Deprecated public static final int UNKNOWN_CID = -1; // 0xffffffff - field @Deprecated public static final int UNKNOWN_RSSI = 99; // 0x63 - } - - public final class NetworkRegistrationInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getAccessNetworkTechnology(); - method @NonNull public java.util.List getAvailableServices(); - method @Nullable public android.telephony.CellIdentity getCellIdentity(); - method public int getDomain(); - method @Nullable public String getRegisteredPlmn(); - method @FlaggedApi("com.android.internal.telephony.flags.network_registration_info_reject_cause") public int getRejectCause(); - method public int getTransportType(); - method public boolean isNetworkRegistered(); - method public boolean isNetworkRoaming(); - method public boolean isNetworkSearching(); - method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public boolean isNonTerrestrialNetwork(); - method @Deprecated public boolean isRegistered(); - method @Deprecated public boolean isRoaming(); - method @Deprecated public boolean isSearching(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DOMAIN_CS = 1; // 0x1 - field public static final int DOMAIN_CS_PS = 3; // 0x3 - field public static final int DOMAIN_PS = 2; // 0x2 - field public static final int DOMAIN_UNKNOWN = 0; // 0x0 - field public static final int NR_STATE_CONNECTED = 3; // 0x3 - field public static final int NR_STATE_NONE = 0; // 0x0 - field public static final int NR_STATE_NOT_RESTRICTED = 2; // 0x2 - field public static final int NR_STATE_RESTRICTED = 1; // 0x1 - field public static final int SERVICE_TYPE_DATA = 2; // 0x2 - field public static final int SERVICE_TYPE_EMERGENCY = 5; // 0x5 - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final int SERVICE_TYPE_MMS = 6; // 0x6 - field public static final int SERVICE_TYPE_SMS = 3; // 0x3 - field public static final int SERVICE_TYPE_UNKNOWN = 0; // 0x0 - field public static final int SERVICE_TYPE_VIDEO = 4; // 0x4 - field public static final int SERVICE_TYPE_VOICE = 1; // 0x1 - } - - public class NetworkScan { - method public void stopScan(); - field public static final int ERROR_INTERRUPTED = 10002; // 0x2712 - field public static final int ERROR_INVALID_SCAN = 2; // 0x2 - field public static final int ERROR_INVALID_SCANID = 10001; // 0x2711 - field public static final int ERROR_MODEM_ERROR = 1; // 0x1 - field public static final int ERROR_MODEM_UNAVAILABLE = 3; // 0x3 - field public static final int ERROR_RADIO_INTERFACE_ERROR = 10000; // 0x2710 - field public static final int ERROR_UNSUPPORTED = 4; // 0x4 - field public static final int SUCCESS = 0; // 0x0 - } - - public final class NetworkScanRequest implements android.os.Parcelable { - ctor public NetworkScanRequest(int, android.telephony.RadioAccessSpecifier[], int, int, boolean, int, java.util.ArrayList); - method public int describeContents(); - method public boolean getIncrementalResults(); - method public int getIncrementalResultsPeriodicity(); - method public int getMaxSearchTime(); - method public java.util.ArrayList getPlmns(); - method public int getScanType(); - method public int getSearchPeriodicity(); - method public android.telephony.RadioAccessSpecifier[] getSpecifiers(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SCAN_TYPE_ONE_SHOT = 0; // 0x0 - field public static final int SCAN_TYPE_PERIODIC = 1; // 0x1 - } - - @Deprecated public class PhoneNumberFormattingTextWatcher implements android.text.TextWatcher { - ctor @Deprecated public PhoneNumberFormattingTextWatcher(); - ctor @Deprecated @WorkerThread public PhoneNumberFormattingTextWatcher(String); - method @Deprecated public void afterTextChanged(android.text.Editable); - method @Deprecated public void beforeTextChanged(CharSequence, int, int, int); - method @Deprecated public void onTextChanged(CharSequence, int, int, int); - } - - public class PhoneNumberUtils { - ctor public PhoneNumberUtils(); - method public static void addTtsSpan(android.text.Spannable, int, int); - method public static boolean areSamePhoneNumber(@NonNull String, @NonNull String, @NonNull String); - method @Deprecated public static String calledPartyBCDFragmentToString(byte[], int, int); - method public static String calledPartyBCDFragmentToString(byte[], int, int, int); - method @Deprecated public static String calledPartyBCDToString(byte[], int, int); - method public static String calledPartyBCDToString(byte[], int, int, int); - method @Deprecated public static boolean compare(String, String); - method @Deprecated public static boolean compare(android.content.Context, String, String); - method public static String convertKeypadLettersToDigits(String); - method public static android.text.style.TtsSpan createTtsSpan(String); - method public static CharSequence createTtsSpannable(CharSequence); - method public static String extractNetworkPortion(String); - method public static String extractPostDialPortion(String); - method @Deprecated public static void formatJapaneseNumber(android.text.Editable); - method @Deprecated public static void formatNanpNumber(android.text.Editable); - method @Deprecated public static String formatNumber(String); - method @Deprecated public static void formatNumber(android.text.Editable, int); - method public static String formatNumber(String, String); - method public static String formatNumber(String, String, String); - method public static String formatNumberToE164(String, String); - method public static String formatNumberToRFC3966(String, String); - method @Deprecated public static int getFormatTypeForLocale(java.util.Locale); - method public static String getNumberFromIntent(android.content.Intent, android.content.Context); - method public static String getStrippedReversed(String); - method public static final boolean is12Key(char); - method public static final boolean isDialable(char); - method @Deprecated public static boolean isEmergencyNumber(String); - method public static boolean isGlobalPhoneNumber(String); - method public static boolean isISODigit(char); - method @Deprecated public static boolean isLocalEmergencyNumber(android.content.Context, String); - method public static final boolean isNonSeparator(char); - method public static final boolean isReallyDialable(char); - method public static final boolean isStartsPostDial(char); - method public static boolean isVoiceMailNumber(String); - method public static boolean isWellFormedSmsAddress(String); - method @FlaggedApi("com.android.internal.telephony.flags.enable_wps_check_api_flag") public static boolean isWpsCallNumber(@NonNull String); - method public static byte[] networkPortionToCalledPartyBCD(String); - method public static byte[] networkPortionToCalledPartyBCDWithLength(String); - method public static String normalizeNumber(String); - method @Deprecated public static byte[] numberToCalledPartyBCD(String); - method public static byte[] numberToCalledPartyBCD(String, int); - method public static String replaceUnicodeDigits(String); - method public static String stringFromStringAndTOA(String, int); - method public static String stripSeparators(String); - method public static String toCallerIDMinMatch(String); - method public static int toaFromString(String); - field public static final int BCD_EXTENDED_TYPE_CALLED_PARTY = 2; // 0x2 - field public static final int BCD_EXTENDED_TYPE_EF_ADN = 1; // 0x1 - field public static final int FORMAT_JAPAN = 2; // 0x2 - field public static final int FORMAT_NANP = 1; // 0x1 - field public static final int FORMAT_UNKNOWN = 0; // 0x0 - field public static final char PAUSE = 44; // 0x002c ',' - field public static final int TOA_International = 145; // 0x91 - field public static final int TOA_Unknown = 129; // 0x81 - field public static final char WAIT = 59; // 0x003b ';' - field public static final char WILD = 78; // 0x004e 'N' - } - - @Deprecated public class PhoneStateListener { - ctor @Deprecated public PhoneStateListener(); - ctor @Deprecated public PhoneStateListener(@NonNull java.util.concurrent.Executor); - method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onActiveDataSubscriptionIdChanged(int); - method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onBarringInfoChanged(@NonNull android.telephony.BarringInfo); - method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onCallDisconnectCauseChanged(int, int); - method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onCallForwardingIndicatorChanged(boolean); - method @Deprecated @RequiresPermission(value=android.Manifest.permission.READ_PHONE_STATE, conditional=true) public void onCallStateChanged(int, String); - method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onCellInfoChanged(java.util.List); - method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void onCellLocationChanged(android.telephony.CellLocation); - method @Deprecated public void onDataActivity(int); - method @Deprecated public void onDataConnectionStateChanged(int); - method @Deprecated public void onDataConnectionStateChanged(int, int); - method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onDisplayInfoChanged(@NonNull android.telephony.TelephonyDisplayInfo); - method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onEmergencyNumberListChanged(@NonNull java.util.Map>); - method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onImsCallDisconnectCauseChanged(@NonNull android.telephony.ims.ImsReasonInfo); - method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onMessageWaitingIndicatorChanged(boolean); - method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseDataConnectionStateChanged(@NonNull android.telephony.PreciseDataConnectionState); - method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onRegistrationFailed(@NonNull android.telephony.CellIdentity, @NonNull String, int, int, int); - method @Deprecated public void onServiceStateChanged(android.telephony.ServiceState); - method @Deprecated public void onSignalStrengthChanged(int); - method @Deprecated public void onSignalStrengthsChanged(android.telephony.SignalStrength); - method @Deprecated public void onUserMobileDataStateChanged(boolean); - field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE = 4194304; // 0x400000 - field @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public static final int LISTEN_BARRING_INFO = -2147483648; // 0x80000000 - field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_CALL_DISCONNECT_CAUSES = 33554432; // 0x2000000 - field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int LISTEN_CALL_FORWARDING_INDICATOR = 8; // 0x8 - field @Deprecated public static final int LISTEN_CALL_STATE = 32; // 0x20 - field @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public static final int LISTEN_CELL_INFO = 1024; // 0x400 - field @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public static final int LISTEN_CELL_LOCATION = 16; // 0x10 - field @Deprecated public static final int LISTEN_DATA_ACTIVITY = 128; // 0x80 - field @Deprecated public static final int LISTEN_DATA_CONNECTION_STATE = 64; // 0x40 - field @Deprecated public static final int LISTEN_DISPLAY_INFO_CHANGED = 1048576; // 0x100000 - field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int LISTEN_EMERGENCY_NUMBER_LIST = 16777216; // 0x1000000 - field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_IMS_CALL_DISCONNECT_CAUSES = 134217728; // 0x8000000 - field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int LISTEN_MESSAGE_WAITING_INDICATOR = 4; // 0x4 - field @Deprecated public static final int LISTEN_NONE = 0; // 0x0 - field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_PRECISE_DATA_CONNECTION_STATE = 4096; // 0x1000 - field @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public static final int LISTEN_REGISTRATION_FAILURE = 1073741824; // 0x40000000 - field @Deprecated public static final int LISTEN_SERVICE_STATE = 1; // 0x1 - field @Deprecated public static final int LISTEN_SIGNAL_STRENGTH = 2; // 0x2 - field @Deprecated public static final int LISTEN_SIGNAL_STRENGTHS = 256; // 0x100 - field @Deprecated public static final int LISTEN_USER_MOBILE_DATA_STATE = 524288; // 0x80000 - } - - public final class PhysicalChannelConfig implements android.os.Parcelable { - method public int describeContents(); - method @IntRange(from=1, to=261) public int getBand(); - method @IntRange(from=1) public int getCellBandwidthDownlinkKhz(); - method @IntRange(from=1) public int getCellBandwidthUplinkKhz(); - method public int getConnectionStatus(); - method @IntRange(from=0) public int getDownlinkChannelNumber(); - method @IntRange(from=0) public int getDownlinkFrequencyKhz(); - method public int getNetworkType(); - method @IntRange(from=0, to=1007) public int getPhysicalCellId(); - method @IntRange(from=0) public int getUplinkChannelNumber(); - method @IntRange(from=0) public int getUplinkFrequencyKhz(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int BAND_UNKNOWN = 0; // 0x0 - field public static final int CELL_BANDWIDTH_UNKNOWN = 0; // 0x0 - field public static final int CHANNEL_NUMBER_UNKNOWN = 2147483647; // 0x7fffffff - field @Deprecated public static final int CONNECTION_PRIMARY_SERVING = 1; // 0x1 - field @Deprecated public static final int CONNECTION_SECONDARY_SERVING = 2; // 0x2 - field @Deprecated public static final int CONNECTION_UNKNOWN = -1; // 0xffffffff - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FREQUENCY_UNKNOWN = -1; // 0xffffffff - field public static final int PHYSICAL_CELL_ID_MAXIMUM_VALUE = 1007; // 0x3ef - field public static final int PHYSICAL_CELL_ID_UNKNOWN = -1; // 0xffffffff - } - - public final class PreciseDataConnectionState implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.telephony.data.ApnSetting getApnSetting(); - method public int getId(); - method public int getLastCauseCode(); - method @Nullable public android.net.LinkProperties getLinkProperties(); - method public int getNetworkType(); - method @FlaggedApi("com.android.internal.telephony.flags.network_validation") public int getNetworkValidationStatus(); - method public int getState(); - method public int getTransportType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_FAILURE = 4; // 0x4 - field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_IN_PROGRESS = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_NOT_REQUESTED = 1; // 0x1 - field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_SUCCESS = 3; // 0x3 - field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_UNSUPPORTED = 0; // 0x0 - } - - public final class RadioAccessSpecifier implements android.os.Parcelable { - ctor public RadioAccessSpecifier(int, int[], int[]); - method public int describeContents(); - method public int[] getBands(); - method public int[] getChannels(); - method public int getRadioAccessNetwork(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class ServiceState implements android.os.Parcelable { - ctor public ServiceState(); - ctor public ServiceState(android.telephony.ServiceState); - ctor @Deprecated public ServiceState(android.os.Parcel); - method protected void copyFrom(android.telephony.ServiceState); - method public int describeContents(); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public int getCdmaNetworkId(); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public int getCdmaSystemId(); - method public int[] getCellBandwidths(); - method public int getChannelNumber(); - method public int getDuplexMode(); - method public boolean getIsManualSelection(); - method @NonNull public java.util.List getNetworkRegistrationInfoList(); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorAlphaLong(); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorAlphaShort(); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorNumeric(); - method public boolean getRoaming(); - method public int getState(); - method public boolean isSearching(); - method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public boolean isUsingNonTerrestrialNetwork(); - method public void setIsManualSelection(boolean); - method public void setOperatorName(String, String, String); - method public void setRoaming(boolean); - method public void setState(int); - method public void setStateOff(); - method public void setStateOutOfService(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DUPLEX_MODE_FDD = 1; // 0x1 - field public static final int DUPLEX_MODE_TDD = 2; // 0x2 - field public static final int DUPLEX_MODE_UNKNOWN = 0; // 0x0 - field public static final int STATE_EMERGENCY_ONLY = 2; // 0x2 - field public static final int STATE_IN_SERVICE = 0; // 0x0 - field public static final int STATE_OUT_OF_SERVICE = 1; // 0x1 - field public static final int STATE_POWER_OFF = 3; // 0x3 - field public static final int UNKNOWN_ID = -1; // 0xffffffff - } - - public class SignalStrength implements android.os.Parcelable { - ctor public SignalStrength(@NonNull android.telephony.SignalStrength); - method public int describeContents(); - method @Deprecated public int getCdmaDbm(); - method @Deprecated public int getCdmaEcio(); - method @NonNull public java.util.List getCellSignalStrengths(); - method @NonNull public java.util.List getCellSignalStrengths(@NonNull Class); - method @Deprecated public int getEvdoDbm(); - method @Deprecated public int getEvdoEcio(); - method @Deprecated public int getEvdoSnr(); - method @Deprecated public int getGsmBitErrorRate(); - method @Deprecated public int getGsmSignalStrength(); - method public int getLevel(); - method public long getTimestampMillis(); - method @Deprecated public boolean isGsm(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int INVALID = 2147483647; // 0x7fffffff - } - - public final class SignalStrengthUpdateRequest implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.Collection getSignalThresholdInfos(); - method public boolean isReportingRequestedWhileIdle(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class SignalStrengthUpdateRequest.Builder { - ctor public SignalStrengthUpdateRequest.Builder(); - method @NonNull public android.telephony.SignalStrengthUpdateRequest build(); - method @NonNull public android.telephony.SignalStrengthUpdateRequest.Builder setReportingRequestedWhileIdle(boolean); - method @NonNull public android.telephony.SignalStrengthUpdateRequest.Builder setSignalThresholdInfos(@NonNull java.util.Collection); - } - - public final class SignalThresholdInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getHysteresisDb(); - method public static int getMaximumNumberOfThresholdsAllowed(); - method public static int getMinimumNumberOfThresholdsAllowed(); - method public int getRadioAccessNetworkType(); - method public int getSignalMeasurementType(); - method @NonNull public int[] getThresholds(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SIGNAL_MEASUREMENT_TYPE_ECNO = 9; // 0x9 - field public static final int SIGNAL_MEASUREMENT_TYPE_RSCP = 2; // 0x2 - field public static final int SIGNAL_MEASUREMENT_TYPE_RSRP = 3; // 0x3 - field public static final int SIGNAL_MEASUREMENT_TYPE_RSRQ = 4; // 0x4 - field public static final int SIGNAL_MEASUREMENT_TYPE_RSSI = 1; // 0x1 - field public static final int SIGNAL_MEASUREMENT_TYPE_RSSNR = 5; // 0x5 - field public static final int SIGNAL_MEASUREMENT_TYPE_SSRSRP = 6; // 0x6 - field public static final int SIGNAL_MEASUREMENT_TYPE_SSRSRQ = 7; // 0x7 - field public static final int SIGNAL_MEASUREMENT_TYPE_SSSINR = 8; // 0x8 - field public static final int SIGNAL_MEASUREMENT_TYPE_UNKNOWN = 0; // 0x0 - } - - public static final class SignalThresholdInfo.Builder { - ctor public SignalThresholdInfo.Builder(); - method @NonNull public android.telephony.SignalThresholdInfo build(); - method @NonNull public android.telephony.SignalThresholdInfo.Builder setHysteresisDb(@IntRange(from=0) int); - method @NonNull public android.telephony.SignalThresholdInfo.Builder setRadioAccessNetworkType(int); - method @NonNull public android.telephony.SignalThresholdInfo.Builder setSignalMeasurementType(int); - method @NonNull public android.telephony.SignalThresholdInfo.Builder setThresholds(@NonNull int[]); - } - - public final class SmsManager { - method public String createAppSpecificSmsToken(android.app.PendingIntent); - method @Nullable public String createAppSpecificSmsTokenWithPackageInfo(@Nullable String, @NonNull android.app.PendingIntent); - method @NonNull public android.telephony.SmsManager createForSubscriptionId(int); - method public java.util.ArrayList divideMessage(String); - method public void downloadMultimediaMessage(android.content.Context, String, android.net.Uri, android.os.Bundle, android.app.PendingIntent); - method public void downloadMultimediaMessage(@NonNull android.content.Context, @NonNull String, @NonNull android.net.Uri, @Nullable android.os.Bundle, @Nullable android.app.PendingIntent, long); - method @NonNull public android.os.Bundle getCarrierConfigValues(); - method @Deprecated public static android.telephony.SmsManager getDefault(); - method public static int getDefaultSmsSubscriptionId(); - method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public int getSmsCapacityOnIcc(); - method @Deprecated public static android.telephony.SmsManager getSmsManagerForSubscriptionId(int); - method @RequiresPermission(android.Manifest.permission.SMS_FINANCIAL_TRANSACTIONS) public void getSmsMessagesForFinancialApp(android.os.Bundle, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.SmsManager.FinancialSmsCallback); - method @Nullable @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getSmscAddress(); - method public int getSubscriptionId(); - method public void injectSmsPdu(byte[], String, android.app.PendingIntent); - method public void sendDataMessage(String, String, short, byte[], android.app.PendingIntent, android.app.PendingIntent); - method public void sendMultimediaMessage(android.content.Context, android.net.Uri, String, android.os.Bundle, android.app.PendingIntent); - method public void sendMultimediaMessage(@NonNull android.content.Context, @NonNull android.net.Uri, @Nullable String, @Nullable android.os.Bundle, @Nullable android.app.PendingIntent, long); - method public void sendMultipartTextMessage(String, String, java.util.ArrayList, java.util.ArrayList, java.util.ArrayList); - method public void sendMultipartTextMessage(@NonNull String, @Nullable String, @NonNull java.util.List, @Nullable java.util.List, @Nullable java.util.List, long); - method public void sendMultipartTextMessage(@NonNull String, @Nullable String, @NonNull java.util.List, @Nullable java.util.List, @Nullable java.util.List, @NonNull String, @Nullable String); - method public void sendTextMessage(String, String, String, android.app.PendingIntent, android.app.PendingIntent); - method public void sendTextMessage(@NonNull String, @Nullable String, @NonNull String, @Nullable android.app.PendingIntent, @Nullable android.app.PendingIntent, long); - method @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.SEND_SMS}) public void sendTextMessageWithoutPersisting(String, String, String, android.app.PendingIntent, android.app.PendingIntent); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSmscAddress(@NonNull String); - field public static final String EXTRA_MMS_DATA = "android.telephony.extra.MMS_DATA"; - field public static final String EXTRA_MMS_HTTP_STATUS = "android.telephony.extra.MMS_HTTP_STATUS"; - field public static final String MMS_CONFIG_ALIAS_ENABLED = "aliasEnabled"; - field public static final String MMS_CONFIG_ALIAS_MAX_CHARS = "aliasMaxChars"; - field public static final String MMS_CONFIG_ALIAS_MIN_CHARS = "aliasMinChars"; - field public static final String MMS_CONFIG_ALLOW_ATTACH_AUDIO = "allowAttachAudio"; - field public static final String MMS_CONFIG_APPEND_TRANSACTION_ID = "enabledTransID"; - field public static final String MMS_CONFIG_EMAIL_GATEWAY_NUMBER = "emailGatewayNumber"; - field public static final String MMS_CONFIG_GROUP_MMS_ENABLED = "enableGroupMms"; - field public static final String MMS_CONFIG_HTTP_PARAMS = "httpParams"; - field public static final String MMS_CONFIG_HTTP_SOCKET_TIMEOUT = "httpSocketTimeout"; - field public static final String MMS_CONFIG_MAX_IMAGE_HEIGHT = "maxImageHeight"; - field public static final String MMS_CONFIG_MAX_IMAGE_WIDTH = "maxImageWidth"; - field public static final String MMS_CONFIG_MAX_MESSAGE_SIZE = "maxMessageSize"; - field public static final String MMS_CONFIG_MESSAGE_TEXT_MAX_SIZE = "maxMessageTextSize"; - field public static final String MMS_CONFIG_MMS_DELIVERY_REPORT_ENABLED = "enableMMSDeliveryReports"; - field public static final String MMS_CONFIG_MMS_ENABLED = "enabledMMS"; - field public static final String MMS_CONFIG_MMS_READ_REPORT_ENABLED = "enableMMSReadReports"; - field public static final String MMS_CONFIG_MULTIPART_SMS_ENABLED = "enableMultipartSMS"; - field public static final String MMS_CONFIG_NAI_SUFFIX = "naiSuffix"; - field public static final String MMS_CONFIG_NOTIFY_WAP_MMSC_ENABLED = "enabledNotifyWapMMSC"; - field public static final String MMS_CONFIG_RECIPIENT_LIMIT = "recipientLimit"; - field public static final String MMS_CONFIG_SEND_MULTIPART_SMS_AS_SEPARATE_MESSAGES = "sendMultipartSmsAsSeparateMessages"; - field public static final String MMS_CONFIG_SHOW_CELL_BROADCAST_APP_LINKS = "config_cellBroadcastAppLinks"; - field public static final String MMS_CONFIG_SMS_DELIVERY_REPORT_ENABLED = "enableSMSDeliveryReports"; - field public static final String MMS_CONFIG_SMS_TO_MMS_TEXT_LENGTH_THRESHOLD = "smsToMmsTextLengthThreshold"; - field public static final String MMS_CONFIG_SMS_TO_MMS_TEXT_THRESHOLD = "smsToMmsTextThreshold"; - field public static final String MMS_CONFIG_SUBJECT_MAX_LENGTH = "maxSubjectLength"; - field public static final String MMS_CONFIG_SUPPORT_HTTP_CHARSET_HEADER = "supportHttpCharsetHeader"; - field public static final String MMS_CONFIG_SUPPORT_MMS_CONTENT_DISPOSITION = "supportMmsContentDisposition"; - field public static final String MMS_CONFIG_UA_PROF_TAG_NAME = "uaProfTagName"; - field public static final String MMS_CONFIG_UA_PROF_URL = "uaProfUrl"; - field public static final String MMS_CONFIG_USER_AGENT = "userAgent"; - field public static final int MMS_ERROR_CONFIGURATION_ERROR = 7; // 0x7 - field public static final int MMS_ERROR_DATA_DISABLED = 11; // 0xb - field public static final int MMS_ERROR_HTTP_FAILURE = 4; // 0x4 - field public static final int MMS_ERROR_INACTIVE_SUBSCRIPTION = 10; // 0xa - field public static final int MMS_ERROR_INVALID_APN = 2; // 0x2 - field public static final int MMS_ERROR_INVALID_SUBSCRIPTION_ID = 9; // 0x9 - field public static final int MMS_ERROR_IO_ERROR = 5; // 0x5 - field @FlaggedApi("com.android.internal.telephony.flags.mms_disabled_error") public static final int MMS_ERROR_MMS_DISABLED_BY_CARRIER = 12; // 0xc - field public static final int MMS_ERROR_NO_DATA_NETWORK = 8; // 0x8 - field public static final int MMS_ERROR_RETRY = 6; // 0x6 - field public static final int MMS_ERROR_UNABLE_CONNECT_MMS = 3; // 0x3 - field public static final int MMS_ERROR_UNSPECIFIED = 1; // 0x1 - field public static final int RESULT_BLUETOOTH_DISCONNECTED = 27; // 0x1b - field public static final int RESULT_CANCELLED = 23; // 0x17 - field public static final int RESULT_ENCODING_ERROR = 18; // 0x12 - field public static final int RESULT_ERROR_FDN_CHECK_FAILURE = 6; // 0x6 - field public static final int RESULT_ERROR_GENERIC_FAILURE = 1; // 0x1 - field public static final int RESULT_ERROR_LIMIT_EXCEEDED = 5; // 0x5 - field public static final int RESULT_ERROR_NONE = 0; // 0x0 - field public static final int RESULT_ERROR_NO_SERVICE = 4; // 0x4 - field public static final int RESULT_ERROR_NULL_PDU = 3; // 0x3 - field public static final int RESULT_ERROR_RADIO_OFF = 2; // 0x2 - field public static final int RESULT_ERROR_SHORT_CODE_NEVER_ALLOWED = 8; // 0x8 - field public static final int RESULT_ERROR_SHORT_CODE_NOT_ALLOWED = 7; // 0x7 - field public static final int RESULT_INTERNAL_ERROR = 21; // 0x15 - field public static final int RESULT_INVALID_ARGUMENTS = 11; // 0xb - field public static final int RESULT_INVALID_BLUETOOTH_ADDRESS = 26; // 0x1a - field public static final int RESULT_INVALID_SMSC_ADDRESS = 19; // 0x13 - field public static final int RESULT_INVALID_SMS_FORMAT = 14; // 0xe - field public static final int RESULT_INVALID_STATE = 12; // 0xc - field public static final int RESULT_MODEM_ERROR = 16; // 0x10 - field public static final int RESULT_NETWORK_ERROR = 17; // 0x11 - field public static final int RESULT_NETWORK_REJECT = 10; // 0xa - field public static final int RESULT_NO_BLUETOOTH_SERVICE = 25; // 0x19 - field public static final int RESULT_NO_DEFAULT_SMS_APP = 32; // 0x20 - field public static final int RESULT_NO_MEMORY = 13; // 0xd - field public static final int RESULT_NO_RESOURCES = 22; // 0x16 - field public static final int RESULT_OPERATION_NOT_ALLOWED = 20; // 0x14 - field public static final int RESULT_RADIO_NOT_AVAILABLE = 9; // 0x9 - field public static final int RESULT_RECEIVE_DISPATCH_FAILURE = 500; // 0x1f4 - field public static final int RESULT_RECEIVE_INJECTED_NULL_PDU = 501; // 0x1f5 - field public static final int RESULT_RECEIVE_NULL_MESSAGE_FROM_RIL = 503; // 0x1f7 - field public static final int RESULT_RECEIVE_RUNTIME_EXCEPTION = 502; // 0x1f6 - field public static final int RESULT_RECEIVE_SQL_EXCEPTION = 505; // 0x1f9 - field public static final int RESULT_RECEIVE_URI_EXCEPTION = 506; // 0x1fa - field public static final int RESULT_RECEIVE_WHILE_ENCRYPTED = 504; // 0x1f8 - field public static final int RESULT_REMOTE_EXCEPTION = 31; // 0x1f - field public static final int RESULT_REQUEST_NOT_SUPPORTED = 24; // 0x18 - field public static final int RESULT_RIL_ABORTED = 137; // 0x89 - field public static final int RESULT_RIL_ACCESS_BARRED = 122; // 0x7a - field public static final int RESULT_RIL_BLOCKED_DUE_TO_CALL = 123; // 0x7b - field public static final int RESULT_RIL_CANCELLED = 119; // 0x77 - field public static final int RESULT_RIL_DEVICE_IN_USE = 136; // 0x88 - field public static final int RESULT_RIL_ENCODING_ERR = 109; // 0x6d - field public static final int RESULT_RIL_GENERIC_ERROR = 124; // 0x7c - field public static final int RESULT_RIL_INTERNAL_ERR = 113; // 0x71 - field public static final int RESULT_RIL_INVALID_ARGUMENTS = 104; // 0x68 - field public static final int RESULT_RIL_INVALID_MODEM_STATE = 115; // 0x73 - field public static final int RESULT_RIL_INVALID_RESPONSE = 125; // 0x7d - field public static final int RESULT_RIL_INVALID_SIM_STATE = 130; // 0x82 - field public static final int RESULT_RIL_INVALID_SMSC_ADDRESS = 110; // 0x6e - field public static final int RESULT_RIL_INVALID_SMS_FORMAT = 107; // 0x6b - field public static final int RESULT_RIL_INVALID_STATE = 103; // 0x67 - field public static final int RESULT_RIL_MODEM_ERR = 111; // 0x6f - field public static final int RESULT_RIL_NETWORK_ERR = 112; // 0x70 - field public static final int RESULT_RIL_NETWORK_NOT_READY = 116; // 0x74 - field public static final int RESULT_RIL_NETWORK_REJECT = 102; // 0x66 - field public static final int RESULT_RIL_NO_MEMORY = 105; // 0x69 - field public static final int RESULT_RIL_NO_NETWORK_FOUND = 135; // 0x87 - field public static final int RESULT_RIL_NO_RESOURCES = 118; // 0x76 - field public static final int RESULT_RIL_NO_SMS_TO_ACK = 131; // 0x83 - field public static final int RESULT_RIL_NO_SUBSCRIPTION = 134; // 0x86 - field public static final int RESULT_RIL_OPERATION_NOT_ALLOWED = 117; // 0x75 - field public static final int RESULT_RIL_RADIO_NOT_AVAILABLE = 100; // 0x64 - field public static final int RESULT_RIL_REQUEST_NOT_SUPPORTED = 114; // 0x72 - field public static final int RESULT_RIL_REQUEST_RATE_LIMITED = 106; // 0x6a - field public static final int RESULT_RIL_SIMULTANEOUS_SMS_AND_CALL_NOT_ALLOWED = 121; // 0x79 - field public static final int RESULT_RIL_SIM_ABSENT = 120; // 0x78 - field public static final int RESULT_RIL_SIM_BUSY = 132; // 0x84 - field public static final int RESULT_RIL_SIM_ERROR = 129; // 0x81 - field public static final int RESULT_RIL_SIM_FULL = 133; // 0x85 - field public static final int RESULT_RIL_SIM_PIN2 = 126; // 0x7e - field public static final int RESULT_RIL_SIM_PUK2 = 127; // 0x7f - field public static final int RESULT_RIL_SMS_SEND_FAIL_RETRY = 101; // 0x65 - field public static final int RESULT_RIL_SUBSCRIPTION_NOT_AVAILABLE = 128; // 0x80 - field public static final int RESULT_RIL_SYSTEM_ERR = 108; // 0x6c - field public static final int RESULT_SMS_BLOCKED_DURING_EMERGENCY = 29; // 0x1d - field public static final int RESULT_SMS_SEND_RETRY_FAILED = 30; // 0x1e - field public static final int RESULT_SYSTEM_ERROR = 15; // 0xf - field public static final int RESULT_UNEXPECTED_EVENT_STOP_SENDING = 28; // 0x1c - field public static final int RESULT_USER_NOT_ALLOWED = 33; // 0x21 - field public static final int SMS_RP_CAUSE_CALL_BARRING = 10; // 0xa - field public static final int SMS_RP_CAUSE_CONGESTION = 42; // 0x2a - field public static final int SMS_RP_CAUSE_DESTINATION_OUT_OF_ORDER = 27; // 0x1b - field public static final int SMS_RP_CAUSE_FACILITY_NOT_IMPLEMENTED = 69; // 0x45 - field public static final int SMS_RP_CAUSE_FACILITY_NOT_SUBSCRIBED = 50; // 0x32 - field public static final int SMS_RP_CAUSE_FACILITY_REJECTED = 29; // 0x1d - field public static final int SMS_RP_CAUSE_INFORMATION_ELEMENT_NON_EXISTENT = 99; // 0x63 - field public static final int SMS_RP_CAUSE_INTERWORKING_UNSPECIFIED = 127; // 0x7f - field public static final int SMS_RP_CAUSE_INVALID_MANDATORY_INFORMATION = 96; // 0x60 - field public static final int SMS_RP_CAUSE_INVALID_MESSAGE_REFERENCE_VALUE = 81; // 0x51 - field public static final int SMS_RP_CAUSE_MESSAGE_INCOMPATIBLE_WITH_PROTOCOL_STATE = 98; // 0x62 - field public static final int SMS_RP_CAUSE_MESSAGE_TYPE_NON_EXISTENT = 97; // 0x61 - field public static final int SMS_RP_CAUSE_NETWORK_OUT_OF_ORDER = 38; // 0x26 - field public static final int SMS_RP_CAUSE_OPERATOR_DETERMINED_BARRING = 8; // 0x8 - field public static final int SMS_RP_CAUSE_PROTOCOL_ERROR = 111; // 0x6f - field public static final int SMS_RP_CAUSE_RESERVED = 11; // 0xb - field public static final int SMS_RP_CAUSE_RESOURCES_UNAVAILABLE = 47; // 0x2f - field public static final int SMS_RP_CAUSE_SEMANTICALLY_INCORRECT_MESSAGE = 95; // 0x5f - field public static final int SMS_RP_CAUSE_SHORT_MESSAGE_TRANSFER_REJECTED = 21; // 0x15 - field public static final int SMS_RP_CAUSE_TEMPORARY_FAILURE = 41; // 0x29 - field public static final int SMS_RP_CAUSE_UNALLOCATED_NUMBER = 1; // 0x1 - field public static final int SMS_RP_CAUSE_UNIDENTIFIED_SUBSCRIBER = 28; // 0x1c - field public static final int SMS_RP_CAUSE_UNKNOWN_SUBSCRIBER = 30; // 0x1e - field public static final int STATUS_ON_ICC_FREE = 0; // 0x0 - field public static final int STATUS_ON_ICC_READ = 1; // 0x1 - field public static final int STATUS_ON_ICC_SENT = 5; // 0x5 - field public static final int STATUS_ON_ICC_UNREAD = 3; // 0x3 - field public static final int STATUS_ON_ICC_UNSENT = 7; // 0x7 - } - - public abstract static class SmsManager.FinancialSmsCallback { - ctor public SmsManager.FinancialSmsCallback(); - method public abstract void onFinancialSmsMessages(android.database.CursorWindow); - } - - public class SmsMessage { - method public static int[] calculateLength(CharSequence, boolean); - method public static int[] calculateLength(String, boolean); - method @Deprecated public static android.telephony.SmsMessage createFromPdu(byte[]); - method public static android.telephony.SmsMessage createFromPdu(byte[], String); - method public String getDisplayMessageBody(); - method public String getDisplayOriginatingAddress(); - method public String getEmailBody(); - method public String getEmailFrom(); - method public int getIndexOnIcc(); - method @Deprecated public int getIndexOnSim(); - method public String getMessageBody(); - method public android.telephony.SmsMessage.MessageClass getMessageClass(); - method @Nullable public String getOriginatingAddress(); - method public byte[] getPdu(); - method public int getProtocolIdentifier(); - method public String getPseudoSubject(); - method @FlaggedApi("com.android.internal.telephony.flags.support_sms_over_ims_apis") @Nullable public String getRecipientAddress(); - method public String getServiceCenterAddress(); - method public int getStatus(); - method public int getStatusOnIcc(); - method @Deprecated public int getStatusOnSim(); - method public static android.telephony.SmsMessage.SubmitPdu getSubmitPdu(String, String, String, boolean); - method public static android.telephony.SmsMessage.SubmitPdu getSubmitPdu(String, String, short, byte[], boolean); - method public static int getTPLayerLengthForPDU(String); - method public long getTimestampMillis(); - method public byte[] getUserData(); - method public boolean isCphsMwiMessage(); - method public boolean isEmail(); - method public boolean isMWIClearMessage(); - method public boolean isMWISetMessage(); - method public boolean isMwiDontStore(); - method public boolean isReplace(); - method public boolean isReplyPathPresent(); - method public boolean isStatusReportMessage(); - field public static final int ENCODING_16BIT = 3; // 0x3 - field public static final int ENCODING_7BIT = 1; // 0x1 - field public static final int ENCODING_8BIT = 2; // 0x2 - field public static final int ENCODING_KSC5601 = 4; // 0x4 - field public static final int ENCODING_UNKNOWN = 0; // 0x0 - field public static final String FORMAT_3GPP = "3gpp"; - field public static final String FORMAT_3GPP2 = "3gpp2"; - field public static final int MAX_USER_DATA_BYTES = 140; // 0x8c - field public static final int MAX_USER_DATA_BYTES_WITH_HEADER = 134; // 0x86 - field public static final int MAX_USER_DATA_SEPTETS = 160; // 0xa0 - field public static final int MAX_USER_DATA_SEPTETS_WITH_HEADER = 153; // 0x99 - } - - public enum SmsMessage.MessageClass { - enum_constant public static final android.telephony.SmsMessage.MessageClass CLASS_0; - enum_constant public static final android.telephony.SmsMessage.MessageClass CLASS_1; - enum_constant public static final android.telephony.SmsMessage.MessageClass CLASS_2; - enum_constant public static final android.telephony.SmsMessage.MessageClass CLASS_3; - enum_constant public static final android.telephony.SmsMessage.MessageClass UNKNOWN; - } - - public static class SmsMessage.SubmitPdu { - field public byte[] encodedMessage; - field public byte[] encodedScAddress; - } - - public class SubscriptionInfo implements android.os.Parcelable { - method public android.graphics.Bitmap createIconBitmap(android.content.Context); - method public int describeContents(); - method public int getCardId(); - method public int getCarrierId(); - method public CharSequence getCarrierName(); - method public String getCountryIso(); - method public int getDataRoaming(); - method public CharSequence getDisplayName(); - method @Nullable public android.os.ParcelUuid getGroupUuid(); - method public String getIccId(); - method public int getIconTint(); - method @Deprecated public int getMcc(); - method @Nullable public String getMccString(); - method @Deprecated public int getMnc(); - method @Nullable public String getMncString(); - method @Deprecated public String getNumber(); - method public int getPortIndex(); - method @NonNull public java.util.Set getServiceCapabilities(); - method public int getSimSlotIndex(); - method public int getSubscriptionId(); - method public int getSubscriptionType(); - method public int getUsageSetting(); - method public boolean isEmbedded(); - method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isOnlyNonTerrestrialNetwork(); - method public boolean isOpportunistic(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class SubscriptionManager { - method public void addOnOpportunisticSubscriptionsChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener); - method @Deprecated public void addOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener); - method public void addOnSubscriptionsChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.SubscriptionManager.OnSubscriptionsChangedListener); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void addSubscriptionsIntoGroup(@NonNull java.util.List, @NonNull android.os.ParcelUuid); - method public boolean canManageSubscription(android.telephony.SubscriptionInfo); - method @FlaggedApi("com.android.internal.telephony.flags.enforce_subscription_user_filter") @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_PROFILES) public android.telephony.SubscriptionManager createForAllUserProfiles(); - method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.os.ParcelUuid createSubscriptionGroup(@NonNull java.util.List); - method @Deprecated public static android.telephony.SubscriptionManager from(android.content.Context); - method @Nullable public java.util.List getAccessibleSubscriptionInfoList(); - method public static int getActiveDataSubscriptionId(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfo(int); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getActiveSubscriptionInfoCount(); - method public int getActiveSubscriptionInfoCountMax(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfoForSimSlotIndex(int); - method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getActiveSubscriptionInfoList(); - method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public java.util.List getAllSubscriptionInfoList(); - method @NonNull public java.util.List getCompleteActiveSubscriptionInfoList(); - method public static int getDefaultDataSubscriptionId(); - method public static int getDefaultSmsSubscriptionId(); - method public static int getDefaultSubscriptionId(); - method public static int getDefaultVoiceSubscriptionId(); - method @NonNull public java.util.List getDeviceToDeviceStatusSharingContacts(int); - method public int getDeviceToDeviceStatusSharingPreference(int); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getOpportunisticSubscriptions(); - method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_NUMBERS, "android.permission.READ_PRIVILEGED_PHONE_STATE", "carrier privileges"}) public String getPhoneNumber(int, int); - method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_NUMBERS, "android.permission.READ_PRIVILEGED_PHONE_STATE", "carrier privileges"}) public String getPhoneNumber(int); - method public static int getSlotIndex(int); - method public static int getSubscriptionId(int); - method @Deprecated @Nullable public int[] getSubscriptionIds(int); - method @NonNull public java.util.List getSubscriptionPlans(int); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getSubscriptionsInGroup(@NonNull android.os.ParcelUuid); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isActiveSubscriptionId(int); - method public boolean isNetworkRoaming(int); - method @FlaggedApi("com.android.internal.telephony.flags.subscription_user_association_query") @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isSubscriptionAssociatedWithUser(int); - method public static boolean isUsableSubscriptionId(int); - method public static boolean isValidSubscriptionId(int); - method public void removeOnOpportunisticSubscriptionsChangedListener(@NonNull android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener); - method public void removeOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void removeSubscriptionsFromGroup(@NonNull java.util.List, @NonNull android.os.ParcelUuid); - method @RequiresPermission("carrier privileges") public void setCarrierPhoneNumber(int, @NonNull String); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDeviceToDeviceStatusSharingContacts(int, @NonNull java.util.List); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDeviceToDeviceStatusSharingPreference(int, int); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setOpportunistic(boolean, int); - method public void setSubscriptionOverrideCongested(int, boolean, long); - method public void setSubscriptionOverrideCongested(int, boolean, @NonNull int[], long); - method public void setSubscriptionOverrideUnmetered(int, boolean, long); - method public void setSubscriptionOverrideUnmetered(int, boolean, @NonNull int[], long); - method @Deprecated public void setSubscriptionPlans(int, @NonNull java.util.List); - method public void setSubscriptionPlans(int, @NonNull java.util.List, long); - method @Deprecated @RequiresPermission("android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS") public void switchToSubscription(int, @NonNull android.app.PendingIntent); - field public static final String ACTION_DEFAULT_SMS_SUBSCRIPTION_CHANGED = "android.telephony.action.DEFAULT_SMS_SUBSCRIPTION_CHANGED"; - field public static final String ACTION_DEFAULT_SUBSCRIPTION_CHANGED = "android.telephony.action.DEFAULT_SUBSCRIPTION_CHANGED"; - field public static final String ACTION_MANAGE_SUBSCRIPTION_PLANS = "android.telephony.action.MANAGE_SUBSCRIPTION_PLANS"; - field public static final String ACTION_REFRESH_SUBSCRIPTION_PLANS = "android.telephony.action.REFRESH_SUBSCRIPTION_PLANS"; - field public static final int D2D_SHARING_ALL = 3; // 0x3 - field public static final int D2D_SHARING_ALL_CONTACTS = 1; // 0x1 - field public static final int D2D_SHARING_DISABLED = 0; // 0x0 - field public static final int D2D_SHARING_SELECTED_CONTACTS = 2; // 0x2 - field public static final String D2D_STATUS_SHARING = "d2d_sharing_status"; - field public static final String D2D_STATUS_SHARING_SELECTED_CONTACTS = "d2d_sharing_contacts"; - field public static final int DATA_ROAMING_DISABLE = 0; // 0x0 - field public static final int DATA_ROAMING_ENABLE = 1; // 0x1 - field public static final int DEFAULT_SUBSCRIPTION_ID = 2147483647; // 0x7fffffff - field public static final String EXTRA_SLOT_INDEX = "android.telephony.extra.SLOT_INDEX"; - field public static final String EXTRA_SUBSCRIPTION_INDEX = "android.telephony.extra.SUBSCRIPTION_INDEX"; - field public static final int INVALID_SIM_SLOT_INDEX = -1; // 0xffffffff - field public static final int INVALID_SUBSCRIPTION_ID = -1; // 0xffffffff - field public static final int PHONE_NUMBER_SOURCE_CARRIER = 2; // 0x2 - field public static final int PHONE_NUMBER_SOURCE_IMS = 3; // 0x3 - field public static final int PHONE_NUMBER_SOURCE_UICC = 1; // 0x1 - field public static final int SERVICE_CAPABILITY_DATA = 3; // 0x3 - field public static final int SERVICE_CAPABILITY_SMS = 2; // 0x2 - field public static final int SERVICE_CAPABILITY_VOICE = 1; // 0x1 - field public static final int SUBSCRIPTION_TYPE_LOCAL_SIM = 0; // 0x0 - field public static final int SUBSCRIPTION_TYPE_REMOTE_SIM = 1; // 0x1 - field public static final int USAGE_SETTING_DATA_CENTRIC = 2; // 0x2 - field public static final int USAGE_SETTING_DEFAULT = 0; // 0x0 - field public static final int USAGE_SETTING_UNKNOWN = -1; // 0xffffffff - field public static final int USAGE_SETTING_VOICE_CENTRIC = 1; // 0x1 - } - - public static class SubscriptionManager.OnOpportunisticSubscriptionsChangedListener { - ctor public SubscriptionManager.OnOpportunisticSubscriptionsChangedListener(); - method public void onOpportunisticSubscriptionsChanged(); - } - - public static class SubscriptionManager.OnSubscriptionsChangedListener { - ctor public SubscriptionManager.OnSubscriptionsChangedListener(); - method public void onSubscriptionsChanged(); - } - - public final class SubscriptionPlan implements android.os.Parcelable { - method public java.util.Iterator> cycleIterator(); - method public int describeContents(); - method public int getDataLimitBehavior(); - method public long getDataLimitBytes(); - method public long getDataUsageBytes(); - method public long getDataUsageTime(); - method @NonNull public int[] getNetworkTypes(); - method @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") @Nullable public java.time.ZonedDateTime getPlanEndDate(); - method @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public int getSubscriptionStatus(); - method @Nullable public CharSequence getSummary(); - method @Nullable public CharSequence getTitle(); - method public void writeToParcel(android.os.Parcel, int); - field public static final long BYTES_UNKNOWN = -1L; // 0xffffffffffffffffL - field public static final long BYTES_UNLIMITED = 9223372036854775807L; // 0x7fffffffffffffffL - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int LIMIT_BEHAVIOR_BILLED = 1; // 0x1 - field public static final int LIMIT_BEHAVIOR_DISABLED = 0; // 0x0 - field public static final int LIMIT_BEHAVIOR_THROTTLED = 2; // 0x2 - field public static final int LIMIT_BEHAVIOR_UNKNOWN = -1; // 0xffffffff - field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_ACTIVE = 1; // 0x1 - field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_INACTIVE = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_SUSPENDED = 4; // 0x4 - field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_TRIAL = 3; // 0x3 - field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_UNKNOWN = 0; // 0x0 - field public static final long TIME_UNKNOWN = -1L; // 0xffffffffffffffffL - } - - public static class SubscriptionPlan.Builder { - method public android.telephony.SubscriptionPlan build(); - method public static android.telephony.SubscriptionPlan.Builder createNonrecurring(java.time.ZonedDateTime, java.time.ZonedDateTime); - method public static android.telephony.SubscriptionPlan.Builder createRecurring(java.time.ZonedDateTime, java.time.Period); - method @NonNull public android.telephony.SubscriptionPlan.Builder resetNetworkTypes(); - method public android.telephony.SubscriptionPlan.Builder setDataLimit(long, int); - method public android.telephony.SubscriptionPlan.Builder setDataUsage(long, long); - method @NonNull public android.telephony.SubscriptionPlan.Builder setNetworkTypes(@NonNull int[]); - method @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") @NonNull public android.telephony.SubscriptionPlan.Builder setSubscriptionStatus(int); - method public android.telephony.SubscriptionPlan.Builder setSummary(@Nullable CharSequence); - method public android.telephony.SubscriptionPlan.Builder setTitle(@Nullable CharSequence); - } - - public class TelephonyCallback { - ctor public TelephonyCallback(); - } - - public static interface TelephonyCallback.ActiveDataSubscriptionIdListener { - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onActiveDataSubscriptionIdChanged(int); - } - - public static interface TelephonyCallback.BarringInfoListener { - method @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onBarringInfoChanged(@NonNull android.telephony.BarringInfo); - } - - public static interface TelephonyCallback.CallDisconnectCauseListener { - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onCallDisconnectCauseChanged(int, int); - } - - public static interface TelephonyCallback.CallForwardingIndicatorListener { - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onCallForwardingIndicatorChanged(boolean); - } - - public static interface TelephonyCallback.CallStateListener { - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onCallStateChanged(int); - } - - public static interface TelephonyCallback.CarrierNetworkListener { - method public void onCarrierNetworkChange(boolean); - } - - public static interface TelephonyCallback.CellInfoListener { - method @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onCellInfoChanged(@NonNull java.util.List); - } - - public static interface TelephonyCallback.CellLocationListener { - method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void onCellLocationChanged(@NonNull android.telephony.CellLocation); - } - - public static interface TelephonyCallback.DataActivationStateListener { - method public void onDataActivationStateChanged(int); - } - - public static interface TelephonyCallback.DataActivityListener { - method public void onDataActivity(int); - } - - public static interface TelephonyCallback.DataConnectionStateListener { - method public void onDataConnectionStateChanged(int, int); - } - - public static interface TelephonyCallback.DisplayInfoListener { - method public void onDisplayInfoChanged(@NonNull android.telephony.TelephonyDisplayInfo); - } - - public static interface TelephonyCallback.EmergencyNumberListListener { - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onEmergencyNumberListChanged(@NonNull java.util.Map>); - } - - public static interface TelephonyCallback.ImsCallDisconnectCauseListener { - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onImsCallDisconnectCauseChanged(@NonNull android.telephony.ims.ImsReasonInfo); - } - - public static interface TelephonyCallback.MessageWaitingIndicatorListener { - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onMessageWaitingIndicatorChanged(boolean); - } - - public static interface TelephonyCallback.PhysicalChannelConfigListener { - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPhysicalChannelConfigChanged(@NonNull java.util.List); - } - - public static interface TelephonyCallback.PreciseDataConnectionStateListener { - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseDataConnectionStateChanged(@NonNull android.telephony.PreciseDataConnectionState); - } - - public static interface TelephonyCallback.RegistrationFailedListener { - method @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onRegistrationFailed(@NonNull android.telephony.CellIdentity, @NonNull String, int, int, int); - } - - public static interface TelephonyCallback.ServiceStateListener { - method public void onServiceStateChanged(@NonNull android.telephony.ServiceState); - } - - public static interface TelephonyCallback.SignalStrengthsListener { - method public void onSignalStrengthsChanged(@NonNull android.telephony.SignalStrength); - } - - public static interface TelephonyCallback.UserMobileDataStateListener { - method public void onUserMobileDataStateChanged(boolean); - } - - public final class TelephonyDisplayInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getNetworkType(); - method public int getOverrideNetworkType(); - method public boolean isRoaming(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int OVERRIDE_NETWORK_TYPE_LTE_ADVANCED_PRO = 2; // 0x2 - field public static final int OVERRIDE_NETWORK_TYPE_LTE_CA = 1; // 0x1 - field public static final int OVERRIDE_NETWORK_TYPE_NONE = 0; // 0x0 - field public static final int OVERRIDE_NETWORK_TYPE_NR_ADVANCED = 5; // 0x5 - field public static final int OVERRIDE_NETWORK_TYPE_NR_NSA = 3; // 0x3 - field @Deprecated public static final int OVERRIDE_NETWORK_TYPE_NR_NSA_MMWAVE = 4; // 0x4 - } - - public class TelephonyManager { - method public boolean canChangeDtmfToneLength(); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void clearSignalStrengthUpdateRequest(@NonNull android.telephony.SignalStrengthUpdateRequest); - method @Nullable public android.telephony.TelephonyManager createForPhoneAccountHandle(android.telecom.PhoneAccountHandle); - method public android.telephony.TelephonyManager createForSubscriptionId(int); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean doesSwitchMultiSimConfigTriggerReboot(); - method public int getActiveModemCount(); - method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public java.util.List getAllCellInfo(); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public long getAllowedNetworkTypesForReason(int); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public int getCallComposerStatus(); - method @Deprecated @RequiresPermission(value=android.Manifest.permission.READ_PHONE_STATE, conditional=true) public int getCallState(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getCallStateForSubscription(); - method public int getCardIdForDefaultEuicc(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) @WorkerThread public android.os.PersistableBundle getCarrierConfig(); - method public int getCarrierIdFromSimMccMnc(); - method @RequiresPermission(anyOf={android.Manifest.permission.READ_BASIC_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public void getCarrierRestrictionStatus(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public android.telephony.CellLocation getCellLocation(); - method public int getDataActivity(); - method @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public int getDataNetworkType(); - method public int getDataState(); - method @Deprecated @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getDeviceId(); - method @Deprecated @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getDeviceId(int); - method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public String getDeviceSoftwareVersion(); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.Map> getEmergencyNumberList(); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.Map> getEmergencyNumberList(int); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getEquivalentHomePlmns(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String[] getForbiddenPlmns(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getGroupIdLevel1(); - method public String getIccAuthentication(int, int, String); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getImei(); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getImei(int); - method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_SMS, android.Manifest.permission.READ_PHONE_NUMBERS}) public String getLine1Number(); - method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public String getManualNetworkSelectionPlmn(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @Nullable public String getManufacturerCode(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @Nullable public String getManufacturerCode(int); - method public static long getMaximumCallComposerPictureSize(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getMeid(); - method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getMeid(int); - method public String getMmsUAProfUrl(); - method public String getMmsUserAgent(); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getNai(); - method public String getNetworkCountryIso(); - method @NonNull public String getNetworkCountryIso(int); - method public String getNetworkOperator(); - method public String getNetworkOperatorName(); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public int getNetworkSelectionMode(); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getNetworkSlicingConfiguration(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public String getNetworkSpecifier(); - method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getNetworkType(); - method @Nullable @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); - method @Deprecated public int getPhoneCount(); - method public int getPhoneType(); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PHONE_STATE}) public int getPreferredOpportunisticDataSubscription(); - method @NonNull public String getPrimaryImei(); - method @Nullable @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public android.telephony.ServiceState getServiceState(); - method @Nullable @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public android.telephony.ServiceState getServiceState(int); - method @Nullable public android.telephony.SignalStrength getSignalStrength(); - method public int getSimCarrierId(); - method @Nullable public CharSequence getSimCarrierIdName(); - method public String getSimCountryIso(); - method public String getSimOperator(); - method public String getSimOperatorName(); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getSimSerialNumber(); - method public int getSimSpecificCarrierId(); - method @Nullable public CharSequence getSimSpecificCarrierIdName(); - method public int getSimState(); - method public int getSimState(int); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getSubscriberId(); - method public int getSubscriptionId(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getSubscriptionId(@NonNull android.telecom.PhoneAccountHandle); - method public int getSupportedModemCount(); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public long getSupportedRadioAccessFamily(); - method @Nullable public String getTypeAllocationCode(); - method @Nullable public String getTypeAllocationCode(int); - method @NonNull @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public java.util.List getUiccCardsInfo(); - method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVisualVoicemailPackageName(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailAlphaTag(); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailNumber(); - method @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public int getVoiceNetworkType(); - method @Nullable public android.net.Uri getVoicemailRingtoneUri(android.telecom.PhoneAccountHandle); - method public boolean hasCarrierPrivileges(); - method public boolean hasIccCard(); - method public boolean iccCloseLogicalChannel(int); - method public byte[] iccExchangeSimIO(int, int, int, int, int, String); - method @Deprecated public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannel(String); - method public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannel(String, int); - method public String iccTransmitApduBasicChannel(int, int, int, int, int, String); - method public String iccTransmitApduLogicalChannel(int, int, int, int, int, int, String); - method public boolean isConcurrentVoiceAndDataSupported(); - method public boolean isDataCapable(); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_BASIC_PHONE_STATE}) public boolean isDataConnectionAllowed(); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public boolean isDataEnabled(); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public boolean isDataEnabledForReason(int); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public boolean isDataRoamingEnabled(); - method public boolean isDeviceSmsCapable(); - method public boolean isDeviceVoiceCapable(); - method public boolean isEmergencyNumber(@NonNull String); - method public boolean isHearingAidCompatibilitySupported(); - method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public boolean isManualNetworkSelectionAllowed(); - method @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public boolean isModemEnabledForSlot(int); - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int isMultiSimSupported(); - method public boolean isNetworkRoaming(); - method @RequiresPermission(android.Manifest.permission.READ_BASIC_PHONE_STATE) public boolean isPremiumCapabilityAvailableForPurchase(int); - method public boolean isRadioInterfaceCapabilitySupported(@NonNull String); - method public boolean isRttSupported(); - method @Deprecated public boolean isSmsCapable(); - method @Deprecated public boolean isTtyModeSupported(); - method @Deprecated public boolean isVoiceCapable(); - method public boolean isVoicemailVibrationEnabled(android.telecom.PhoneAccountHandle); - method public boolean isWorldPhone(); - method @Deprecated public void listen(android.telephony.PhoneStateListener, int); - method @RequiresPermission(allOf={android.Manifest.permission.READ_BASIC_PHONE_STATE, android.Manifest.permission.INTERNET}) public void purchasePremiumCapability(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void rebootModem(); - method public void registerTelephonyCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyCallback); - method public void registerTelephonyCallback(int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyCallback); - method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void requestCellInfoUpdate(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CellInfoCallback); - method @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public android.telephony.NetworkScan requestNetworkScan(android.telephony.NetworkScanRequest, java.util.concurrent.Executor, android.telephony.TelephonyScanManager.NetworkScanCallback); - method @Nullable @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE}) public android.telephony.NetworkScan requestNetworkScan(int, @NonNull android.telephony.NetworkScanRequest, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyScanManager.NetworkScanCallback); - method public void sendDialerSpecialCode(String); - method public String sendEnvelopeWithStatus(String); - method @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void sendUssdRequest(String, android.telephony.TelephonyManager.UssdResponseCallback, android.os.Handler); - method public void sendVisualVoicemailSms(String, int, String, android.app.PendingIntent); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setAllowedNetworkTypesForReason(int, long); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCallComposerStatus(int); - method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabledForReason(int, boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setForbiddenPlmns(@NonNull java.util.List); - method @Deprecated public boolean setLine1NumberForDisplay(String, String); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setNetworkSelectionModeAutomatic(); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setNetworkSelectionModeManual(String, boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setNetworkSelectionModeManual(@NonNull String, boolean, int); - method public boolean setOperatorBrandOverride(String); - method public boolean setPreferredNetworkTypeToGlobal(); - method public void setPreferredOpportunisticDataSubscription(int, boolean, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSignalStrengthUpdateRequest(@NonNull android.telephony.SignalStrengthUpdateRequest); - method public void setVisualVoicemailSmsFilterSettings(android.telephony.VisualVoicemailSmsFilterSettings); - method public boolean setVoiceMailNumber(String, String); - method @Deprecated public void setVoicemailRingtoneUri(android.telecom.PhoneAccountHandle, android.net.Uri); - method @Deprecated public void setVoicemailVibrationEnabled(android.telecom.PhoneAccountHandle, boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void switchMultiSimConfig(int); - method public void unregisterTelephonyCallback(@NonNull android.telephony.TelephonyCallback); - method public void updateAvailableNetworks(@NonNull java.util.List, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer); - method public void uploadCallComposerPicture(@NonNull java.nio.file.Path, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - method public void uploadCallComposerPicture(@NonNull java.io.InputStream, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); - field public static final String ACTION_CARRIER_MESSAGING_CLIENT_SERVICE = "android.telephony.action.CARRIER_MESSAGING_CLIENT_SERVICE"; - field public static final String ACTION_CARRIER_SIGNAL_DEFAULT_NETWORK_AVAILABLE = "android.telephony.action.CARRIER_SIGNAL_DEFAULT_NETWORK_AVAILABLE"; - field public static final String ACTION_CARRIER_SIGNAL_PCO_VALUE = "android.telephony.action.CARRIER_SIGNAL_PCO_VALUE"; - field public static final String ACTION_CARRIER_SIGNAL_REDIRECTED = "android.telephony.action.CARRIER_SIGNAL_REDIRECTED"; - field public static final String ACTION_CARRIER_SIGNAL_REQUEST_NETWORK_FAILED = "android.telephony.action.CARRIER_SIGNAL_REQUEST_NETWORK_FAILED"; - field public static final String ACTION_CARRIER_SIGNAL_RESET = "android.telephony.action.CARRIER_SIGNAL_RESET"; - field public static final String ACTION_CONFIGURE_VOICEMAIL = "android.telephony.action.CONFIGURE_VOICEMAIL"; - field public static final String ACTION_MULTI_SIM_CONFIG_CHANGED = "android.telephony.action.MULTI_SIM_CONFIG_CHANGED"; - field public static final String ACTION_NETWORK_COUNTRY_CHANGED = "android.telephony.action.NETWORK_COUNTRY_CHANGED"; - field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final String ACTION_PHONE_STATE_CHANGED = "android.intent.action.PHONE_STATE"; - field public static final String ACTION_RESET_MOBILE_NETWORK_SETTINGS = "android.telephony.action.RESET_MOBILE_NETWORK_SETTINGS"; - field public static final String ACTION_RESPOND_VIA_MESSAGE = "android.intent.action.RESPOND_VIA_MESSAGE"; - field public static final String ACTION_SECRET_CODE = "android.telephony.action.SECRET_CODE"; - field public static final String ACTION_SHOW_VOICEMAIL_NOTIFICATION = "android.telephony.action.SHOW_VOICEMAIL_NOTIFICATION"; - field public static final String ACTION_SUBSCRIPTION_CARRIER_IDENTITY_CHANGED = "android.telephony.action.SUBSCRIPTION_CARRIER_IDENTITY_CHANGED"; - field public static final String ACTION_SUBSCRIPTION_SPECIFIC_CARRIER_IDENTITY_CHANGED = "android.telephony.action.SUBSCRIPTION_SPECIFIC_CARRIER_IDENTITY_CHANGED"; - field public static final int ALLOWED_NETWORK_TYPES_REASON_CARRIER = 2; // 0x2 - field public static final int ALLOWED_NETWORK_TYPES_REASON_USER = 0; // 0x0 - field public static final int APPTYPE_CSIM = 4; // 0x4 - field public static final int APPTYPE_ISIM = 5; // 0x5 - field public static final int APPTYPE_RUIM = 3; // 0x3 - field public static final int APPTYPE_SIM = 1; // 0x1 - field public static final int APPTYPE_UNKNOWN = 0; // 0x0 - field public static final int APPTYPE_USIM = 2; // 0x2 - field public static final int AUTHTYPE_EAP_AKA = 129; // 0x81 - field public static final int AUTHTYPE_EAP_SIM = 128; // 0x80 - field public static final int AUTHTYPE_GBA_BOOTSTRAP = 132; // 0x84 - field public static final int AUTHTYPE_GBA_NAF_KEY_EXTERNAL = 133; // 0x85 - field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final int CALL_COMPOSER_STATUS_BUSINESS_ONLY = 2; // 0x2 - field public static final int CALL_COMPOSER_STATUS_OFF = 0; // 0x0 - field public static final int CALL_COMPOSER_STATUS_ON = 1; // 0x1 - field public static final int CALL_STATE_IDLE = 0; // 0x0 - field public static final int CALL_STATE_OFFHOOK = 2; // 0x2 - field public static final int CALL_STATE_RINGING = 1; // 0x1 - field public static final String CAPABILITY_SLICING_CONFIG_SUPPORTED = "CAPABILITY_SLICING_CONFIG_SUPPORTED"; - field public static final int CARRIER_RESTRICTION_STATUS_NOT_RESTRICTED = 1; // 0x1 - field public static final int CARRIER_RESTRICTION_STATUS_RESTRICTED = 2; // 0x2 - field public static final int CARRIER_RESTRICTION_STATUS_RESTRICTED_TO_CALLER = 3; // 0x3 - field public static final int CARRIER_RESTRICTION_STATUS_UNKNOWN = 0; // 0x0 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ROAMING_MODE_AFFILIATED = 1; // 0x1 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ROAMING_MODE_ANY = 2; // 0x2 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ROAMING_MODE_HOME = 0; // 0x0 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ROAMING_MODE_RADIO_DEFAULT = -1; // 0xffffffff - field public static final int DATA_ACTIVITY_DORMANT = 4; // 0x4 - field public static final int DATA_ACTIVITY_IN = 1; // 0x1 - field public static final int DATA_ACTIVITY_INOUT = 3; // 0x3 - field public static final int DATA_ACTIVITY_NONE = 0; // 0x0 - field public static final int DATA_ACTIVITY_OUT = 2; // 0x2 - field public static final int DATA_CONNECTED = 2; // 0x2 - field public static final int DATA_CONNECTING = 1; // 0x1 - field public static final int DATA_DISCONNECTED = 0; // 0x0 - field public static final int DATA_DISCONNECTING = 4; // 0x4 - field public static final int DATA_ENABLED_REASON_CARRIER = 2; // 0x2 - field public static final int DATA_ENABLED_REASON_OVERRIDE = 4; // 0x4 - field public static final int DATA_ENABLED_REASON_POLICY = 1; // 0x1 - field public static final int DATA_ENABLED_REASON_THERMAL = 3; // 0x3 - field public static final int DATA_ENABLED_REASON_UNKNOWN = -1; // 0xffffffff - field public static final int DATA_ENABLED_REASON_USER = 0; // 0x0 - field public static final int DATA_HANDOVER_IN_PROGRESS = 5; // 0x5 - field public static final int DATA_SUSPENDED = 3; // 0x3 - field public static final int DATA_UNKNOWN = -1; // 0xffffffff - field public static final int DEFAULT_PORT_INDEX = 0; // 0x0 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int ERI_FLASH = 2; // 0x2 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int ERI_OFF = 1; // 0x1 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int ERI_ON = 0; // 0x0 - field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EVENT_DISPLAY_EMERGENCY_MESSAGE = "android.telephony.event.DISPLAY_EMERGENCY_MESSAGE"; - field public static final String EXTRA_ACTIVE_SIM_SUPPORTED_COUNT = "android.telephony.extra.ACTIVE_SIM_SUPPORTED_COUNT"; - field public static final String EXTRA_APN_PROTOCOL = "android.telephony.extra.APN_PROTOCOL"; - field public static final String EXTRA_APN_TYPE = "android.telephony.extra.APN_TYPE"; - field public static final String EXTRA_CALL_VOICEMAIL_INTENT = "android.telephony.extra.CALL_VOICEMAIL_INTENT"; - field public static final String EXTRA_CARRIER_ID = "android.telephony.extra.CARRIER_ID"; - field public static final String EXTRA_CARRIER_NAME = "android.telephony.extra.CARRIER_NAME"; - field public static final String EXTRA_DATA_FAIL_CAUSE = "android.telephony.extra.DATA_FAIL_CAUSE"; - field public static final String EXTRA_DEFAULT_NETWORK_AVAILABLE = "android.telephony.extra.DEFAULT_NETWORK_AVAILABLE"; - field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE = "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE"; - field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT = "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT"; - field public static final String EXTRA_HIDE_PUBLIC_SETTINGS = "android.telephony.extra.HIDE_PUBLIC_SETTINGS"; - field @Deprecated public static final String EXTRA_INCOMING_NUMBER = "incoming_number"; - field public static final String EXTRA_IS_REFRESH = "android.telephony.extra.IS_REFRESH"; - field public static final String EXTRA_LAST_KNOWN_NETWORK_COUNTRY = "android.telephony.extra.LAST_KNOWN_NETWORK_COUNTRY"; - field public static final String EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT = "android.telephony.extra.LAUNCH_VOICEMAIL_SETTINGS_INTENT"; - field public static final String EXTRA_NETWORK_COUNTRY = "android.telephony.extra.NETWORK_COUNTRY"; - field public static final String EXTRA_NOTIFICATION_COUNT = "android.telephony.extra.NOTIFICATION_COUNT"; - field public static final String EXTRA_PCO_ID = "android.telephony.extra.PCO_ID"; - field public static final String EXTRA_PCO_VALUE = "android.telephony.extra.PCO_VALUE"; - field public static final String EXTRA_PHONE_ACCOUNT_HANDLE = "android.telephony.extra.PHONE_ACCOUNT_HANDLE"; - field public static final String EXTRA_REDIRECTION_URL = "android.telephony.extra.REDIRECTION_URL"; - field public static final String EXTRA_SPECIFIC_CARRIER_ID = "android.telephony.extra.SPECIFIC_CARRIER_ID"; - field public static final String EXTRA_SPECIFIC_CARRIER_NAME = "android.telephony.extra.SPECIFIC_CARRIER_NAME"; - field public static final String EXTRA_STATE = "state"; - field public static final String EXTRA_STATE_IDLE; - field public static final String EXTRA_STATE_OFFHOOK; - field public static final String EXTRA_STATE_RINGING; - field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.extra.SUBSCRIPTION_ID"; - field public static final String EXTRA_VOICEMAIL_NUMBER = "android.telephony.extra.VOICEMAIL_NUMBER"; - field public static final int INCLUDE_LOCATION_DATA_COARSE = 1; // 0x1 - field public static final int INCLUDE_LOCATION_DATA_FINE = 2; // 0x2 - field public static final int INCLUDE_LOCATION_DATA_NONE = 0; // 0x0 - field public static final String METADATA_HIDE_VOICEMAIL_SETTINGS_MENU = "android.telephony.HIDE_VOICEMAIL_SETTINGS_MENU"; - field public static final int MULTISIM_ALLOWED = 0; // 0x0 - field public static final int MULTISIM_NOT_SUPPORTED_BY_CARRIER = 2; // 0x2 - field public static final int MULTISIM_NOT_SUPPORTED_BY_HARDWARE = 1; // 0x1 - field public static final int NETWORK_SELECTION_MODE_AUTO = 1; // 0x1 - field public static final int NETWORK_SELECTION_MODE_MANUAL = 2; // 0x2 - field public static final int NETWORK_SELECTION_MODE_UNKNOWN = 0; // 0x0 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_1xRTT = 7; // 0x7 - field public static final long NETWORK_TYPE_BITMASK_1xRTT = 64L; // 0x40L - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final long NETWORK_TYPE_BITMASK_CDMA = 8L; // 0x8L - field public static final long NETWORK_TYPE_BITMASK_EDGE = 2L; // 0x2L - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final long NETWORK_TYPE_BITMASK_EHRPD = 8192L; // 0x2000L - field public static final long NETWORK_TYPE_BITMASK_EVDO_0 = 16L; // 0x10L - field public static final long NETWORK_TYPE_BITMASK_EVDO_A = 32L; // 0x20L - field public static final long NETWORK_TYPE_BITMASK_EVDO_B = 2048L; // 0x800L - field public static final long NETWORK_TYPE_BITMASK_GPRS = 1L; // 0x1L - field public static final long NETWORK_TYPE_BITMASK_GSM = 32768L; // 0x8000L - field public static final long NETWORK_TYPE_BITMASK_HSDPA = 128L; // 0x80L - field public static final long NETWORK_TYPE_BITMASK_HSPA = 512L; // 0x200L - field public static final long NETWORK_TYPE_BITMASK_HSPAP = 16384L; // 0x4000L - field public static final long NETWORK_TYPE_BITMASK_HSUPA = 256L; // 0x100L - field public static final long NETWORK_TYPE_BITMASK_IWLAN = 131072L; // 0x20000L - field public static final long NETWORK_TYPE_BITMASK_LTE = 4096L; // 0x1000L - field @Deprecated public static final long NETWORK_TYPE_BITMASK_LTE_CA = 262144L; // 0x40000L - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final long NETWORK_TYPE_BITMASK_NB_IOT_NTN = 1048576L; // 0x100000L - field public static final long NETWORK_TYPE_BITMASK_NR = 524288L; // 0x80000L - field public static final long NETWORK_TYPE_BITMASK_TD_SCDMA = 65536L; // 0x10000L - field public static final long NETWORK_TYPE_BITMASK_UMTS = 4L; // 0x4L - field public static final long NETWORK_TYPE_BITMASK_UNKNOWN = 0L; // 0x0L - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_CDMA = 4; // 0x4 - field public static final int NETWORK_TYPE_EDGE = 2; // 0x2 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_EHRPD = 14; // 0xe - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_EVDO_0 = 5; // 0x5 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_EVDO_A = 6; // 0x6 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_EVDO_B = 12; // 0xc - field public static final int NETWORK_TYPE_GPRS = 1; // 0x1 - field public static final int NETWORK_TYPE_GSM = 16; // 0x10 - field public static final int NETWORK_TYPE_HSDPA = 8; // 0x8 - field public static final int NETWORK_TYPE_HSPA = 10; // 0xa - field public static final int NETWORK_TYPE_HSPAP = 15; // 0xf - field public static final int NETWORK_TYPE_HSUPA = 9; // 0x9 - field @Deprecated public static final int NETWORK_TYPE_IDEN = 11; // 0xb - field public static final int NETWORK_TYPE_IWLAN = 18; // 0x12 - field public static final int NETWORK_TYPE_LTE = 13; // 0xd - field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int NETWORK_TYPE_NB_IOT_NTN = 21; // 0x15 - field public static final int NETWORK_TYPE_NR = 20; // 0x14 - field public static final int NETWORK_TYPE_TD_SCDMA = 17; // 0x11 - field public static final int NETWORK_TYPE_UMTS = 3; // 0x3 - field public static final int NETWORK_TYPE_UNKNOWN = 0; // 0x0 - field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int PHONE_TYPE_CDMA = 2; // 0x2 - field public static final int PHONE_TYPE_GSM = 1; // 0x1 - field public static final int PHONE_TYPE_NONE = 0; // 0x0 - field public static final int PHONE_TYPE_SIP = 3; // 0x3 - field public static final int PREMIUM_CAPABILITY_PRIORITIZE_LATENCY = 34; // 0x22 - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_IN_PROGRESS = 4; // 0x4 - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_PURCHASED = 3; // 0x3 - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_DISABLED = 7; // 0x7 - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_ERROR = 8; // 0x8 - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_ENTITLEMENT_CHECK_FAILED = 13; // 0xd - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_FEATURE_NOT_SUPPORTED = 10; // 0xa - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_NETWORK_NOT_AVAILABLE = 12; // 0xc - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_NOT_DEFAULT_DATA_SUBSCRIPTION = 14; // 0xe - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_NOT_FOREGROUND = 5; // 0x5 - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_PENDING_NETWORK_SETUP = 15; // 0xf - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_REQUEST_FAILED = 11; // 0xb - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_SUCCESS = 1; // 0x1 - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED = 2; // 0x2 - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_TIMEOUT = 9; // 0x9 - field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_USER_CANCELED = 6; // 0x6 - field @FlaggedApi("com.android.internal.telephony.flags.slicing_additional_error_codes") public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_USER_DISABLED = 16; // 0x10 - field public static final int SET_OPPORTUNISTIC_SUB_INACTIVE_SUBSCRIPTION = 2; // 0x2 - field public static final int SET_OPPORTUNISTIC_SUB_NO_OPPORTUNISTIC_SUB_AVAILABLE = 3; // 0x3 - field public static final int SET_OPPORTUNISTIC_SUB_REMOTE_SERVICE_EXCEPTION = 4; // 0x4 - field public static final int SET_OPPORTUNISTIC_SUB_SUCCESS = 0; // 0x0 - field public static final int SET_OPPORTUNISTIC_SUB_VALIDATION_FAILED = 1; // 0x1 - field public static final int SIM_STATE_ABSENT = 1; // 0x1 - field public static final int SIM_STATE_CARD_IO_ERROR = 8; // 0x8 - field public static final int SIM_STATE_CARD_RESTRICTED = 9; // 0x9 - field public static final int SIM_STATE_NETWORK_LOCKED = 4; // 0x4 - field public static final int SIM_STATE_NOT_READY = 6; // 0x6 - field public static final int SIM_STATE_PERM_DISABLED = 7; // 0x7 - field public static final int SIM_STATE_PIN_REQUIRED = 2; // 0x2 - field public static final int SIM_STATE_PUK_REQUIRED = 3; // 0x3 - field public static final int SIM_STATE_READY = 5; // 0x5 - field public static final int SIM_STATE_UNKNOWN = 0; // 0x0 - field public static final int UNINITIALIZED_CARD_ID = -2; // 0xfffffffe - field public static final int UNKNOWN_CARRIER_ID = -1; // 0xffffffff - field public static final int UNSUPPORTED_CARD_ID = -1; // 0xffffffff - field public static final int UPDATE_AVAILABLE_NETWORKS_ABORTED = 2; // 0x2 - field public static final int UPDATE_AVAILABLE_NETWORKS_DISABLE_MODEM_FAIL = 5; // 0x5 - field public static final int UPDATE_AVAILABLE_NETWORKS_ENABLE_MODEM_FAIL = 6; // 0x6 - field public static final int UPDATE_AVAILABLE_NETWORKS_INVALID_ARGUMENTS = 3; // 0x3 - field public static final int UPDATE_AVAILABLE_NETWORKS_MULTIPLE_NETWORKS_NOT_SUPPORTED = 7; // 0x7 - field public static final int UPDATE_AVAILABLE_NETWORKS_NO_CARRIER_PRIVILEGE = 4; // 0x4 - field public static final int UPDATE_AVAILABLE_NETWORKS_NO_OPPORTUNISTIC_SUB_AVAILABLE = 8; // 0x8 - field public static final int UPDATE_AVAILABLE_NETWORKS_REMOTE_SERVICE_EXCEPTION = 9; // 0x9 - field public static final int UPDATE_AVAILABLE_NETWORKS_SERVICE_IS_DISABLED = 10; // 0xa - field public static final int UPDATE_AVAILABLE_NETWORKS_SUCCESS = 0; // 0x0 - field public static final int UPDATE_AVAILABLE_NETWORKS_UNKNOWN_FAILURE = 1; // 0x1 - field public static final int USSD_ERROR_SERVICE_UNAVAIL = -2; // 0xfffffffe - field public static final int USSD_RETURN_FAILURE = -1; // 0xffffffff - field public static final String VVM_TYPE_CVVM = "vvm_type_cvvm"; - field public static final String VVM_TYPE_OMTP = "vvm_type_omtp"; - } - - public static class TelephonyManager.CallComposerException extends java.lang.Exception { - ctor public TelephonyManager.CallComposerException(int, @Nullable java.io.IOException); - method public int getErrorCode(); - method @Nullable public java.io.IOException getIOException(); - field public static final int ERROR_AUTHENTICATION_FAILED = 3; // 0x3 - field public static final int ERROR_FILE_TOO_LARGE = 2; // 0x2 - field public static final int ERROR_INPUT_CLOSED = 4; // 0x4 - field public static final int ERROR_IO_EXCEPTION = 5; // 0x5 - field public static final int ERROR_NETWORK_UNAVAILABLE = 6; // 0x6 - field public static final int ERROR_REMOTE_END_CLOSED = 1; // 0x1 - field public static final int ERROR_UNKNOWN = 0; // 0x0 - } - - public abstract static class TelephonyManager.CellInfoCallback { - ctor public TelephonyManager.CellInfoCallback(); - method public abstract void onCellInfo(@NonNull java.util.List); - method public void onError(int, @Nullable Throwable); - field public static final int ERROR_MODEM_ERROR = 2; // 0x2 - field public static final int ERROR_TIMEOUT = 1; // 0x1 - } - - public class TelephonyManager.ModemErrorException extends android.telephony.TelephonyManager.NetworkSlicingException { - } - - public static class TelephonyManager.NetworkSlicingException extends java.lang.Exception { - } - - public class TelephonyManager.TimeoutException extends android.telephony.TelephonyManager.NetworkSlicingException { - } - - public abstract static class TelephonyManager.UssdResponseCallback { - ctor public TelephonyManager.UssdResponseCallback(); - method public void onReceiveUssdResponse(android.telephony.TelephonyManager, String, CharSequence); - method public void onReceiveUssdResponseFailed(android.telephony.TelephonyManager, String, int); - } - - public final class TelephonyScanManager { - ctor public TelephonyScanManager(); - } - - public abstract static class TelephonyScanManager.NetworkScanCallback { - ctor public TelephonyScanManager.NetworkScanCallback(); - method public void onComplete(); - method public void onError(int); - method public void onResults(java.util.List); - } - - public final class UiccCardInfo implements android.os.Parcelable { - method public int describeContents(); - method public int getCardId(); - method @Nullable public String getEid(); - method @Deprecated @Nullable public String getIccId(); - method public int getPhysicalSlotIndex(); - method @NonNull public java.util.Collection getPorts(); - method @Deprecated public int getSlotIndex(); - method public boolean isEuicc(); - method public boolean isMultipleEnabledProfilesSupported(); - method public boolean isRemovable(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class UiccPortInfo implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getIccId(); - method @IntRange(from=0) public int getLogicalSlotIndex(); - method @IntRange(from=0) public int getPortIndex(); - method public boolean isActive(); - method public void writeToParcel(@Nullable android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String ICCID_REDACTED = "FFFFFFFFFFFFFFFFFFFF"; - } - - public abstract class VisualVoicemailService extends android.app.Service { - ctor public VisualVoicemailService(); - method public android.os.IBinder onBind(android.content.Intent); - method @MainThread public abstract void onCellServiceConnected(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle); - method @MainThread public abstract void onSimRemoved(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle); - method @MainThread public abstract void onSmsReceived(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telephony.VisualVoicemailSms); - method @MainThread public abstract void onStopped(android.telephony.VisualVoicemailService.VisualVoicemailTask); - field public static final String SERVICE_INTERFACE = "android.telephony.VisualVoicemailService"; - } - - public static class VisualVoicemailService.VisualVoicemailTask { - method public final void finish(); - } - - public final class VisualVoicemailSms implements android.os.Parcelable { - method public int describeContents(); - method public android.os.Bundle getFields(); - method public String getMessageBody(); - method public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); - method public String getPrefix(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class VisualVoicemailSmsFilterSettings implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DESTINATION_PORT_ANY = -1; // 0xffffffff - field public static final int DESTINATION_PORT_DATA_SMS = -2; // 0xfffffffe - field public final String clientPrefix; - field public final int destinationPort; - field public final java.util.List originatingNumbers; - } - - public static class VisualVoicemailSmsFilterSettings.Builder { - ctor public VisualVoicemailSmsFilterSettings.Builder(); - method public android.telephony.VisualVoicemailSmsFilterSettings build(); - method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setClientPrefix(String); - method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setDestinationPort(int); - method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setOriginatingNumbers(java.util.List); - } - -} - -package android.telephony.cdma { - - @Deprecated public class CdmaCellLocation extends android.telephony.CellLocation { - ctor @Deprecated public CdmaCellLocation(); - ctor @Deprecated public CdmaCellLocation(android.os.Bundle); - method @Deprecated public static double convertQuartSecToDecDegrees(int); - method @Deprecated public void fillInNotifierBundle(android.os.Bundle); - method @Deprecated public int getBaseStationId(); - method @Deprecated public int getBaseStationLatitude(); - method @Deprecated public int getBaseStationLongitude(); - method @Deprecated public int getNetworkId(); - method @Deprecated public int getSystemId(); - method @Deprecated public void setCellLocationData(int, int, int); - method @Deprecated public void setCellLocationData(int, int, int, int, int); - method @Deprecated public void setStateInvalid(); - } - -} - -package android.telephony.data { - - public class ApnSetting implements android.os.Parcelable { - method public int describeContents(); - method public String getApnName(); - method public int getApnTypeBitmask(); - method public int getAuthType(); - method public int getCarrierId(); - method public String getEntryName(); - method public int getId(); - method @Deprecated public java.net.InetAddress getMmsProxyAddress(); - method public String getMmsProxyAddressAsString(); - method public int getMmsProxyPort(); - method public android.net.Uri getMmsc(); - method public int getMtuV4(); - method public int getMtuV6(); - method public int getMvnoType(); - method public int getNetworkTypeBitmask(); - method public String getOperatorNumeric(); - method public String getPassword(); - method public int getProfileId(); - method public int getProtocol(); - method @Deprecated public java.net.InetAddress getProxyAddress(); - method public String getProxyAddressAsString(); - method public int getProxyPort(); - method public int getRoamingProtocol(); - method public String getUser(); - method @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public boolean isAlwaysOn(); - method public boolean isEnabled(); - method public boolean isPersistent(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int AUTH_TYPE_CHAP = 2; // 0x2 - field public static final int AUTH_TYPE_NONE = 0; // 0x0 - field public static final int AUTH_TYPE_PAP = 1; // 0x1 - field public static final int AUTH_TYPE_PAP_OR_CHAP = 3; // 0x3 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int MVNO_TYPE_GID = 2; // 0x2 - field public static final int MVNO_TYPE_ICCID = 3; // 0x3 - field public static final int MVNO_TYPE_IMSI = 1; // 0x1 - field public static final int MVNO_TYPE_SPN = 0; // 0x0 - field public static final int PROTOCOL_IP = 0; // 0x0 - field public static final int PROTOCOL_IPV4V6 = 2; // 0x2 - field public static final int PROTOCOL_IPV6 = 1; // 0x1 - field public static final int PROTOCOL_NON_IP = 4; // 0x4 - field public static final int PROTOCOL_PPP = 3; // 0x3 - field public static final int PROTOCOL_UNSTRUCTURED = 5; // 0x5 - field public static final int TYPE_BIP = 8192; // 0x2000 - field public static final int TYPE_CBS = 128; // 0x80 - field public static final int TYPE_DEFAULT = 17; // 0x11 - field public static final int TYPE_DUN = 8; // 0x8 - field public static final int TYPE_EMERGENCY = 512; // 0x200 - field public static final int TYPE_ENTERPRISE = 16384; // 0x4000 - field public static final int TYPE_FOTA = 32; // 0x20 - field public static final int TYPE_HIPRI = 16; // 0x10 - field public static final int TYPE_IA = 256; // 0x100 - field public static final int TYPE_IMS = 64; // 0x40 - field public static final int TYPE_MCX = 1024; // 0x400 - field public static final int TYPE_MMS = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.oem_paid_private") public static final int TYPE_OEM_PAID = 65536; // 0x10000 - field @FlaggedApi("com.android.internal.telephony.flags.oem_paid_private") public static final int TYPE_OEM_PRIVATE = 131072; // 0x20000 - field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final int TYPE_RCS = 32768; // 0x8000 - field public static final int TYPE_SUPL = 4; // 0x4 - field public static final int TYPE_VSIM = 4096; // 0x1000 - field public static final int TYPE_XCAP = 2048; // 0x800 - } - - public static class ApnSetting.Builder { - ctor public ApnSetting.Builder(); - method public android.telephony.data.ApnSetting build(); - method @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") @NonNull public android.telephony.data.ApnSetting.Builder setAlwaysOn(boolean); - method @NonNull public android.telephony.data.ApnSetting.Builder setApnName(@Nullable String); - method @NonNull public android.telephony.data.ApnSetting.Builder setApnTypeBitmask(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setAuthType(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setCarrierEnabled(boolean); - method @NonNull public android.telephony.data.ApnSetting.Builder setCarrierId(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setEntryName(@Nullable String); - method @Deprecated public android.telephony.data.ApnSetting.Builder setMmsProxyAddress(java.net.InetAddress); - method @NonNull public android.telephony.data.ApnSetting.Builder setMmsProxyAddress(@Nullable String); - method @NonNull public android.telephony.data.ApnSetting.Builder setMmsProxyPort(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setMmsc(@Nullable android.net.Uri); - method @NonNull public android.telephony.data.ApnSetting.Builder setMtuV4(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setMtuV6(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setMvnoType(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setNetworkTypeBitmask(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setOperatorNumeric(@Nullable String); - method @NonNull public android.telephony.data.ApnSetting.Builder setPassword(@Nullable String); - method @NonNull public android.telephony.data.ApnSetting.Builder setPersistent(boolean); - method @NonNull public android.telephony.data.ApnSetting.Builder setProfileId(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setProtocol(int); - method @Deprecated public android.telephony.data.ApnSetting.Builder setProxyAddress(java.net.InetAddress); - method @NonNull public android.telephony.data.ApnSetting.Builder setProxyAddress(@Nullable String); - method @NonNull public android.telephony.data.ApnSetting.Builder setProxyPort(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setRoamingProtocol(int); - method @NonNull public android.telephony.data.ApnSetting.Builder setUser(@Nullable String); - } - - public final class NetworkSliceInfo implements android.os.Parcelable { - method public int describeContents(); - method @IntRange(from=0xffffffff, to=0xfffffe) public int getMappedHplmnSliceDifferentiator(); - method public int getMappedHplmnSliceServiceType(); - method @IntRange(from=0xffffffff, to=0xfffffe) public int getSliceDifferentiator(); - method public int getSliceServiceType(); - method public int getStatus(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SLICE_DIFFERENTIATOR_NO_SLICE = -1; // 0xffffffff - field public static final int SLICE_SERVICE_TYPE_EMBB = 1; // 0x1 - field public static final int SLICE_SERVICE_TYPE_MIOT = 3; // 0x3 - field public static final int SLICE_SERVICE_TYPE_NONE = 0; // 0x0 - field public static final int SLICE_SERVICE_TYPE_URLLC = 2; // 0x2 - field public static final int SLICE_STATUS_ALLOWED = 2; // 0x2 - field public static final int SLICE_STATUS_CONFIGURED = 1; // 0x1 - field public static final int SLICE_STATUS_DEFAULT_CONFIGURED = 5; // 0x5 - field public static final int SLICE_STATUS_REJECTED_NOT_AVAILABLE_IN_PLMN = 3; // 0x3 - field public static final int SLICE_STATUS_REJECTED_NOT_AVAILABLE_IN_REGISTERED_AREA = 4; // 0x4 - field public static final int SLICE_STATUS_UNKNOWN = 0; // 0x0 - } - - public static final class NetworkSliceInfo.Builder { - ctor public NetworkSliceInfo.Builder(); - method @NonNull public android.telephony.data.NetworkSliceInfo build(); - method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setMappedHplmnSliceDifferentiator(@IntRange(from=0xffffffff, to=0xfffffe) int); - method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setMappedHplmnSliceServiceType(int); - method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setSliceDifferentiator(@IntRange(from=0xffffffff, to=0xfffffe) int); - method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setSliceServiceType(int); - method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setStatus(int); - } - - public final class NetworkSlicingConfig implements android.os.Parcelable { - ctor public NetworkSlicingConfig(); - method public int describeContents(); - method @NonNull public java.util.List getSliceInfo(); - method @NonNull public java.util.List getUrspRules(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class RouteSelectionDescriptor implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getDataNetworkName(); - method @IntRange(from=0x0, to=0xff) public int getPrecedence(); - method public int getSessionType(); - method @NonNull public java.util.List getSliceInfo(); - method public int getSscMode(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int ROUTE_SSC_MODE_1 = 1; // 0x1 - field public static final int ROUTE_SSC_MODE_2 = 2; // 0x2 - field public static final int ROUTE_SSC_MODE_3 = 3; // 0x3 - field public static final int SESSION_TYPE_IPV4 = 0; // 0x0 - field public static final int SESSION_TYPE_IPV4V6 = 2; // 0x2 - field public static final int SESSION_TYPE_IPV6 = 1; // 0x1 - } - - public final class TrafficDescriptor implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getDataNetworkName(); - method @Nullable public byte[] getOsAppId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TrafficDescriptor.Builder { - ctor public TrafficDescriptor.Builder(); - method @NonNull public android.telephony.data.TrafficDescriptor build(); - method @NonNull public android.telephony.data.TrafficDescriptor.Builder setDataNetworkName(@NonNull String); - method @NonNull public android.telephony.data.TrafficDescriptor.Builder setOsAppId(@NonNull byte[]); - } - - public final class UrspRule implements android.os.Parcelable { - method public int describeContents(); - method @IntRange(from=0x0, to=0xff) public int getPrecedence(); - method @NonNull public java.util.List getRouteSelectionDescriptor(); - method @NonNull public java.util.List getTrafficDescriptors(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.telephony.emergency { - - public final class EmergencyNumber implements java.lang.Comparable android.os.Parcelable { - method public int compareTo(@NonNull android.telephony.emergency.EmergencyNumber); - method public int describeContents(); - method @NonNull public String getCountryIso(); - method public int getEmergencyCallRouting(); - method @NonNull public java.util.List getEmergencyNumberSources(); - method @NonNull public java.util.List getEmergencyServiceCategories(); - method @NonNull public java.util.List getEmergencyUrns(); - method @NonNull public String getMnc(); - method @NonNull public String getNumber(); - method public boolean isFromSources(int); - method public boolean isInEmergencyServiceCategories(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int EMERGENCY_CALL_ROUTING_EMERGENCY = 1; // 0x1 - field public static final int EMERGENCY_CALL_ROUTING_NORMAL = 2; // 0x2 - field public static final int EMERGENCY_CALL_ROUTING_UNKNOWN = 0; // 0x0 - field public static final int EMERGENCY_NUMBER_SOURCE_DATABASE = 16; // 0x10 - field public static final int EMERGENCY_NUMBER_SOURCE_DEFAULT = 8; // 0x8 - field public static final int EMERGENCY_NUMBER_SOURCE_MODEM_CONFIG = 4; // 0x4 - field public static final int EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING = 1; // 0x1 - field public static final int EMERGENCY_NUMBER_SOURCE_SIM = 2; // 0x2 - field public static final int EMERGENCY_SERVICE_CATEGORY_AIEC = 64; // 0x40 - field public static final int EMERGENCY_SERVICE_CATEGORY_AMBULANCE = 2; // 0x2 - field public static final int EMERGENCY_SERVICE_CATEGORY_FIRE_BRIGADE = 4; // 0x4 - field public static final int EMERGENCY_SERVICE_CATEGORY_MARINE_GUARD = 8; // 0x8 - field public static final int EMERGENCY_SERVICE_CATEGORY_MIEC = 32; // 0x20 - field public static final int EMERGENCY_SERVICE_CATEGORY_MOUNTAIN_RESCUE = 16; // 0x10 - field public static final int EMERGENCY_SERVICE_CATEGORY_POLICE = 1; // 0x1 - field public static final int EMERGENCY_SERVICE_CATEGORY_UNSPECIFIED = 0; // 0x0 - } - -} - -package android.telephony.euicc { - - public final class DownloadableSubscription implements android.os.Parcelable { - method public int describeContents(); - method public static android.telephony.euicc.DownloadableSubscription forActivationCode(String); - method @Nullable public String getConfirmationCode(); - method @Nullable public String getEncodedActivationCode(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class DownloadableSubscription.Builder { - ctor public DownloadableSubscription.Builder(@NonNull android.telephony.euicc.DownloadableSubscription); - ctor public DownloadableSubscription.Builder(@NonNull String); - method @NonNull public android.telephony.euicc.DownloadableSubscription build(); - method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setConfirmationCode(@NonNull String); - method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setEncodedActivationCode(@NonNull String); - } - - public final class EuiccInfo implements android.os.Parcelable { - ctor public EuiccInfo(@Nullable String); - method public int describeContents(); - method @Nullable public String getOsVersion(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class EuiccManager { - method @NonNull public android.telephony.euicc.EuiccManager createForCardId(int); - method @RequiresPermission(anyOf={"android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS", android.Manifest.permission.MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS}) public void deleteSubscription(int, android.app.PendingIntent); - method @RequiresPermission(anyOf={"android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS", android.Manifest.permission.MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS}) public void downloadSubscription(android.telephony.euicc.DownloadableSubscription, boolean, android.app.PendingIntent); - method @FlaggedApi("com.android.internal.telephony.flags.esim_available_memory") @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", "carrier privileges"}) public long getAvailableMemoryInBytes(); - method @Nullable public String getEid(); - method @Nullable public android.telephony.euicc.EuiccInfo getEuiccInfo(); - method public boolean isEnabled(); - method public boolean isSimPortAvailable(int); - method public void startResolutionActivity(android.app.Activity, int, android.content.Intent, android.app.PendingIntent) throws android.content.IntentSender.SendIntentException; - method @RequiresPermission("android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS") public void switchToSubscription(int, android.app.PendingIntent); - method @RequiresPermission("android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS") public void switchToSubscription(int, int, @NonNull android.app.PendingIntent); - method @RequiresPermission("android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS") public void updateSubscriptionNickname(int, @Nullable String, @NonNull android.app.PendingIntent); - field public static final String ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS = "android.telephony.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS"; - field public static final String ACTION_NOTIFY_CARRIER_SETUP_INCOMPLETE = "android.telephony.euicc.action.NOTIFY_CARRIER_SETUP_INCOMPLETE"; - field public static final String ACTION_START_EUICC_ACTIVATION = "android.telephony.euicc.action.START_EUICC_ACTIVATION"; - field public static final int EMBEDDED_SUBSCRIPTION_RESULT_ERROR = 2; // 0x2 - field public static final int EMBEDDED_SUBSCRIPTION_RESULT_OK = 0; // 0x0 - field public static final int EMBEDDED_SUBSCRIPTION_RESULT_RESOLVABLE_ERROR = 1; // 0x1 - field public static final int ERROR_ADDRESS_MISSING = 10011; // 0x271b - field public static final int ERROR_CARRIER_LOCKED = 10000; // 0x2710 - field public static final int ERROR_CERTIFICATE_ERROR = 10012; // 0x271c - field public static final int ERROR_CONNECTION_ERROR = 10014; // 0x271e - field public static final int ERROR_DISALLOWED_BY_PPR = 10010; // 0x271a - field public static final int ERROR_EUICC_INSUFFICIENT_MEMORY = 10004; // 0x2714 - field public static final int ERROR_EUICC_MISSING = 10006; // 0x2716 - field public static final int ERROR_INCOMPATIBLE_CARRIER = 10003; // 0x2713 - field public static final int ERROR_INSTALL_PROFILE = 10009; // 0x2719 - field public static final int ERROR_INVALID_ACTIVATION_CODE = 10001; // 0x2711 - field public static final int ERROR_INVALID_CONFIRMATION_CODE = 10002; // 0x2712 - field public static final int ERROR_INVALID_PORT = 10017; // 0x2721 - field public static final int ERROR_INVALID_RESPONSE = 10015; // 0x271f - field public static final int ERROR_NO_PROFILES_AVAILABLE = 10013; // 0x271d - field public static final int ERROR_OPERATION_BUSY = 10016; // 0x2720 - field public static final int ERROR_SIM_MISSING = 10008; // 0x2718 - field public static final int ERROR_TIME_OUT = 10005; // 0x2715 - field public static final int ERROR_UNSUPPORTED_VERSION = 10007; // 0x2717 - field @FlaggedApi("com.android.internal.telephony.flags.esim_available_memory") public static final long EUICC_MEMORY_FIELD_UNAVAILABLE = -1L; // 0xffffffffffffffffL - field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DETAILED_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DETAILED_CODE"; - field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTION = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTION"; - field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_ERROR_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_ERROR_CODE"; - field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_OPERATION_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_OPERATION_CODE"; - field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_REASON_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_SMDX_REASON_CODE"; - field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_SUBJECT_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_SMDX_SUBJECT_CODE"; - field public static final String EXTRA_USE_QR_SCANNER = "android.telephony.euicc.extra.USE_QR_SCANNER"; - field public static final String META_DATA_CARRIER_ICON = "android.telephony.euicc.carriericon"; - field public static final int OPERATION_APDU = 8; // 0x8 - field public static final int OPERATION_DOWNLOAD = 5; // 0x5 - field public static final int OPERATION_EUICC_CARD = 3; // 0x3 - field public static final int OPERATION_EUICC_GSMA = 7; // 0x7 - field public static final int OPERATION_HTTP = 11; // 0xb - field public static final int OPERATION_METADATA = 6; // 0x6 - field public static final int OPERATION_SIM_SLOT = 2; // 0x2 - field public static final int OPERATION_SMDX = 9; // 0x9 - field public static final int OPERATION_SMDX_SUBJECT_REASON_CODE = 10; // 0xa - field public static final int OPERATION_SWITCH = 4; // 0x4 - field public static final int OPERATION_SYSTEM = 1; // 0x1 - } - -} - -package android.telephony.gsm { - - @Deprecated public class GsmCellLocation extends android.telephony.CellLocation { - ctor @Deprecated public GsmCellLocation(); - ctor @Deprecated public GsmCellLocation(android.os.Bundle); - method @Deprecated public void fillInNotifierBundle(android.os.Bundle); - method @Deprecated public int getCid(); - method @Deprecated public int getLac(); - method @Deprecated public int getPsc(); - method @Deprecated public void setLacAndCid(int, int); - method @Deprecated public void setStateInvalid(); - } - - @Deprecated public final class SmsManager { - method @Deprecated public java.util.ArrayList divideMessage(String); - method @Deprecated public static android.telephony.gsm.SmsManager getDefault(); - method @Deprecated public void sendDataMessage(String, String, short, byte[], android.app.PendingIntent, android.app.PendingIntent); - method @Deprecated public void sendMultipartTextMessage(String, String, java.util.ArrayList, java.util.ArrayList, java.util.ArrayList); - method @Deprecated public void sendTextMessage(String, String, String, android.app.PendingIntent, android.app.PendingIntent); - field @Deprecated public static final int RESULT_ERROR_GENERIC_FAILURE = 1; // 0x1 - field @Deprecated public static final int RESULT_ERROR_NO_SERVICE = 4; // 0x4 - field @Deprecated public static final int RESULT_ERROR_NULL_PDU = 3; // 0x3 - field @Deprecated public static final int RESULT_ERROR_RADIO_OFF = 2; // 0x2 - field @Deprecated public static final int STATUS_ON_SIM_FREE = 0; // 0x0 - field @Deprecated public static final int STATUS_ON_SIM_READ = 1; // 0x1 - field @Deprecated public static final int STATUS_ON_SIM_SENT = 5; // 0x5 - field @Deprecated public static final int STATUS_ON_SIM_UNREAD = 3; // 0x3 - field @Deprecated public static final int STATUS_ON_SIM_UNSENT = 7; // 0x7 - } - - @Deprecated public class SmsMessage { - ctor @Deprecated public SmsMessage(); - method @Deprecated public static int[] calculateLength(CharSequence, boolean); - method @Deprecated public static int[] calculateLength(String, boolean); - method @Deprecated public static android.telephony.gsm.SmsMessage createFromPdu(byte[]); - method @Deprecated public String getDisplayMessageBody(); - method @Deprecated public String getDisplayOriginatingAddress(); - method @Deprecated public String getEmailBody(); - method @Deprecated public String getEmailFrom(); - method @Deprecated public int getIndexOnSim(); - method @Deprecated public String getMessageBody(); - method @Deprecated public android.telephony.gsm.SmsMessage.MessageClass getMessageClass(); - method @Deprecated public String getOriginatingAddress(); - method @Deprecated public byte[] getPdu(); - method @Deprecated public int getProtocolIdentifier(); - method @Deprecated public String getPseudoSubject(); - method @Deprecated public String getServiceCenterAddress(); - method @Deprecated public int getStatus(); - method @Deprecated public int getStatusOnSim(); - method @Deprecated public static android.telephony.gsm.SmsMessage.SubmitPdu getSubmitPdu(String, String, String, boolean); - method @Deprecated public static android.telephony.gsm.SmsMessage.SubmitPdu getSubmitPdu(String, String, short, byte[], boolean); - method @Deprecated public static int getTPLayerLengthForPDU(String); - method @Deprecated public long getTimestampMillis(); - method @Deprecated public byte[] getUserData(); - method @Deprecated public boolean isCphsMwiMessage(); - method @Deprecated public boolean isEmail(); - method @Deprecated public boolean isMWIClearMessage(); - method @Deprecated public boolean isMWISetMessage(); - method @Deprecated public boolean isMwiDontStore(); - method @Deprecated public boolean isReplace(); - method @Deprecated public boolean isReplyPathPresent(); - method @Deprecated public boolean isStatusReportMessage(); - field @Deprecated public static final int ENCODING_16BIT = 3; // 0x3 - field @Deprecated public static final int ENCODING_7BIT = 1; // 0x1 - field @Deprecated public static final int ENCODING_8BIT = 2; // 0x2 - field @Deprecated public static final int ENCODING_UNKNOWN = 0; // 0x0 - field @Deprecated public static final int MAX_USER_DATA_BYTES = 140; // 0x8c - field @Deprecated public static final int MAX_USER_DATA_SEPTETS = 160; // 0xa0 - field @Deprecated public static final int MAX_USER_DATA_SEPTETS_WITH_HEADER = 153; // 0x99 - } - - @Deprecated public enum SmsMessage.MessageClass { - enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass CLASS_0; - enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass CLASS_1; - enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass CLASS_2; - enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass CLASS_3; - enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass UNKNOWN; - } - - @Deprecated public static class SmsMessage.SubmitPdu { - ctor @Deprecated public SmsMessage.SubmitPdu(); - field @Deprecated public byte[] encodedMessage; - field @Deprecated public byte[] encodedScAddress; - } - -} - -package android.telephony.ims { - - public final class ImsException extends java.lang.Exception { - method public int getCode(); - field public static final int CODE_ERROR_INVALID_SUBSCRIPTION = 3; // 0x3 - field public static final int CODE_ERROR_SERVICE_UNAVAILABLE = 1; // 0x1 - field public static final int CODE_ERROR_UNSPECIFIED = 0; // 0x0 - field public static final int CODE_ERROR_UNSUPPORTED_OPERATION = 2; // 0x2 - } - - public class ImsManager { - method @NonNull public android.telephony.ims.ImsMmTelManager getImsMmTelManager(int); - method @NonNull public android.telephony.ims.ImsRcsManager getImsRcsManager(int); - method @NonNull public android.telephony.ims.ProvisioningManager getProvisioningManager(int); - field public static final String ACTION_WFC_IMS_REGISTRATION_ERROR = "android.telephony.ims.action.WFC_IMS_REGISTRATION_ERROR"; - field public static final String EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE = "android.telephony.ims.extra.WFC_REGISTRATION_FAILURE_MESSAGE"; - field public static final String EXTRA_WFC_REGISTRATION_FAILURE_TITLE = "android.telephony.ims.extra.WFC_REGISTRATION_FAILURE_TITLE"; - } - - public class ImsMmTelManager implements android.telephony.ims.RegistrationManager { - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void getRegistrationTransportType(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public int getVoWiFiModeSetting(); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isAdvancedCallingSettingEnabled(); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isCrossSimCallingEnabled() throws android.telephony.ims.ImsException; - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isTtyOverVolteEnabled(); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isVoWiFiRoamingSettingEnabled(); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isVoWiFiSettingEnabled(); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isVtSettingEnabled(); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RegistrationManager.RegistrationCallback) throws android.telephony.ims.ImsException; - method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public void registerImsStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsStateCallback) throws android.telephony.ims.ImsException; - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void registerMmTelCapabilityCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback) throws android.telephony.ims.ImsException; - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback); - method public void unregisterImsStateCallback(@NonNull android.telephony.ims.ImsStateCallback); - method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void unregisterMmTelCapabilityCallback(@NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback); - field public static final int WIFI_MODE_CELLULAR_PREFERRED = 1; // 0x1 - field public static final int WIFI_MODE_WIFI_ONLY = 0; // 0x0 - field public static final int WIFI_MODE_WIFI_PREFERRED = 2; // 0x2 - } - - public static class ImsMmTelManager.CapabilityCallback { - ctor public ImsMmTelManager.CapabilityCallback(); - method public void onCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities); - } - - public class ImsRcsManager { - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void getRegistrationTransportType(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @NonNull public android.telephony.ims.RcsUceAdapter getUceAdapter(); - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RegistrationManager.RegistrationCallback) throws android.telephony.ims.ImsException; - method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", "android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE"}) public void registerImsStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsStateCallback) throws android.telephony.ims.ImsException; - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback); - method public void unregisterImsStateCallback(@NonNull android.telephony.ims.ImsStateCallback); - field public static final String ACTION_SHOW_CAPABILITY_DISCOVERY_OPT_IN = "android.telephony.ims.action.SHOW_CAPABILITY_DISCOVERY_OPT_IN"; - field public static final int CAPABILITY_TYPE_NONE = 0; // 0x0 - field public static final int CAPABILITY_TYPE_OPTIONS_UCE = 1; // 0x1 - field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2 - } - - public final class ImsReasonInfo implements android.os.Parcelable { - ctor public ImsReasonInfo(int, int, @Nullable String); - method public int describeContents(); - method public int getCode(); - method public int getExtraCode(); - method @Nullable public String getExtraMessage(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int CODE_ACCESS_CLASS_BLOCKED = 1512; // 0x5e8 - field public static final int CODE_ANSWERED_ELSEWHERE = 1014; // 0x3f6 - field public static final int CODE_BLACKLISTED_CALL_ID = 506; // 0x1fa - field public static final int CODE_CALL_BARRED = 240; // 0xf0 - field public static final int CODE_CALL_DROP_IWLAN_TO_LTE_UNAVAILABLE = 1100; // 0x44c - field public static final int CODE_CALL_END_CAUSE_CALL_PULL = 1016; // 0x3f8 - field public static final int CODE_CALL_PULL_OUT_OF_SYNC = 1015; // 0x3f7 - field public static final int CODE_DATA_DISABLED = 1406; // 0x57e - field public static final int CODE_DATA_LIMIT_REACHED = 1405; // 0x57d - field public static final int CODE_DIAL_MODIFIED_TO_DIAL = 246; // 0xf6 - field public static final int CODE_DIAL_MODIFIED_TO_DIAL_VIDEO = 247; // 0xf7 - field public static final int CODE_DIAL_MODIFIED_TO_SS = 245; // 0xf5 - field public static final int CODE_DIAL_MODIFIED_TO_USSD = 244; // 0xf4 - field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL = 248; // 0xf8 - field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 249; // 0xf9 - field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_SS = 250; // 0xfa - field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_USSD = 251; // 0xfb - field public static final int CODE_ECBM_NOT_SUPPORTED = 901; // 0x385 - field public static final int CODE_EMERGENCY_PERM_FAILURE = 364; // 0x16c - field public static final int CODE_EMERGENCY_TEMP_FAILURE = 363; // 0x16b - field public static final int CODE_EPDG_TUNNEL_ESTABLISH_FAILURE = 1400; // 0x578 - field public static final int CODE_EPDG_TUNNEL_LOST_CONNECTION = 1402; // 0x57a - field public static final int CODE_EPDG_TUNNEL_REKEY_FAILURE = 1401; // 0x579 - field public static final int CODE_FDN_BLOCKED = 241; // 0xf1 - field public static final int CODE_IKEV2_AUTH_FAILURE = 1408; // 0x580 - field public static final int CODE_IMEI_NOT_ACCEPTED = 243; // 0xf3 - field public static final int CODE_IWLAN_DPD_FAILURE = 1300; // 0x514 - field public static final int CODE_LOCAL_CALL_BUSY = 142; // 0x8e - field public static final int CODE_LOCAL_CALL_CS_RETRY_REQUIRED = 146; // 0x92 - field public static final int CODE_LOCAL_CALL_DECLINE = 143; // 0x8f - field public static final int CODE_LOCAL_CALL_EXCEEDED = 141; // 0x8d - field public static final int CODE_LOCAL_CALL_RESOURCE_RESERVATION_FAILED = 145; // 0x91 - field public static final int CODE_LOCAL_CALL_TERMINATED = 148; // 0x94 - field public static final int CODE_LOCAL_CALL_VCC_ON_PROGRESSING = 144; // 0x90 - field public static final int CODE_LOCAL_CALL_VOLTE_RETRY_REQUIRED = 147; // 0x93 - field public static final int CODE_LOCAL_ENDED_BY_CONFERENCE_MERGE = 108; // 0x6c - field public static final int CODE_LOCAL_HO_NOT_FEASIBLE = 149; // 0x95 - field public static final int CODE_LOCAL_ILLEGAL_ARGUMENT = 101; // 0x65 - field public static final int CODE_LOCAL_ILLEGAL_STATE = 102; // 0x66 - field public static final int CODE_LOCAL_IMS_SERVICE_DOWN = 106; // 0x6a - field public static final int CODE_LOCAL_INTERNAL_ERROR = 103; // 0x67 - field public static final int CODE_LOCAL_LOW_BATTERY = 112; // 0x70 - field public static final int CODE_LOCAL_NETWORK_IP_CHANGED = 124; // 0x7c - field public static final int CODE_LOCAL_NETWORK_NO_LTE_COVERAGE = 122; // 0x7a - field public static final int CODE_LOCAL_NETWORK_NO_SERVICE = 121; // 0x79 - field public static final int CODE_LOCAL_NETWORK_ROAMING = 123; // 0x7b - field public static final int CODE_LOCAL_NOT_REGISTERED = 132; // 0x84 - field public static final int CODE_LOCAL_NO_PENDING_CALL = 107; // 0x6b - field public static final int CODE_LOCAL_POWER_OFF = 111; // 0x6f - field public static final int CODE_LOCAL_SERVICE_UNAVAILABLE = 131; // 0x83 - field public static final int CODE_LOW_BATTERY = 505; // 0x1f9 - field public static final int CODE_MAXIMUM_NUMBER_OF_CALLS_REACHED = 1403; // 0x57b - field public static final int CODE_MEDIA_INIT_FAILED = 401; // 0x191 - field public static final int CODE_MEDIA_NOT_ACCEPTABLE = 403; // 0x193 - field public static final int CODE_MEDIA_NO_DATA = 402; // 0x192 - field public static final int CODE_MEDIA_UNSPECIFIED = 404; // 0x194 - field public static final int CODE_MULTIENDPOINT_NOT_SUPPORTED = 902; // 0x386 - field public static final int CODE_NETWORK_CONGESTION = 1624; // 0x658 - field public static final int CODE_NETWORK_DETACH = 1513; // 0x5e9 - field public static final int CODE_NETWORK_REJECT = 1504; // 0x5e0 - field public static final int CODE_NETWORK_RESP_TIMEOUT = 1503; // 0x5df - field public static final int CODE_NO_CSFB_IN_CS_ROAM = 1516; // 0x5ec - field public static final int CODE_NO_VALID_SIM = 1501; // 0x5dd - field public static final int CODE_OEM_CAUSE_1 = 61441; // 0xf001 - field public static final int CODE_OEM_CAUSE_10 = 61450; // 0xf00a - field public static final int CODE_OEM_CAUSE_11 = 61451; // 0xf00b - field public static final int CODE_OEM_CAUSE_12 = 61452; // 0xf00c - field public static final int CODE_OEM_CAUSE_13 = 61453; // 0xf00d - field public static final int CODE_OEM_CAUSE_14 = 61454; // 0xf00e - field public static final int CODE_OEM_CAUSE_15 = 61455; // 0xf00f - field public static final int CODE_OEM_CAUSE_2 = 61442; // 0xf002 - field public static final int CODE_OEM_CAUSE_3 = 61443; // 0xf003 - field public static final int CODE_OEM_CAUSE_4 = 61444; // 0xf004 - field public static final int CODE_OEM_CAUSE_5 = 61445; // 0xf005 - field public static final int CODE_OEM_CAUSE_6 = 61446; // 0xf006 - field public static final int CODE_OEM_CAUSE_7 = 61447; // 0xf007 - field public static final int CODE_OEM_CAUSE_8 = 61448; // 0xf008 - field public static final int CODE_OEM_CAUSE_9 = 61449; // 0xf009 - field public static final int CODE_RADIO_ACCESS_FAILURE = 1505; // 0x5e1 - field public static final int CODE_RADIO_INTERNAL_ERROR = 1502; // 0x5de - field public static final int CODE_RADIO_LINK_FAILURE = 1506; // 0x5e2 - field public static final int CODE_RADIO_LINK_LOST = 1507; // 0x5e3 - field public static final int CODE_RADIO_OFF = 1500; // 0x5dc - field public static final int CODE_RADIO_RELEASE_ABNORMAL = 1511; // 0x5e7 - field public static final int CODE_RADIO_RELEASE_NORMAL = 1510; // 0x5e6 - field public static final int CODE_RADIO_SETUP_FAILURE = 1509; // 0x5e5 - field public static final int CODE_RADIO_UPLINK_FAILURE = 1508; // 0x5e4 - field public static final int CODE_REGISTRATION_ERROR = 1000; // 0x3e8 - field public static final int CODE_REJECTED_ELSEWHERE = 1017; // 0x3f9 - field public static final int CODE_REJECT_1X_COLLISION = 1603; // 0x643 - field public static final int CODE_REJECT_CALL_ON_OTHER_SUB = 1602; // 0x642 - field public static final int CODE_REJECT_CALL_TYPE_NOT_ALLOWED = 1605; // 0x645 - field public static final int CODE_REJECT_CONFERENCE_TTY_NOT_ALLOWED = 1617; // 0x651 - field public static final int CODE_REJECT_INTERNAL_ERROR = 1612; // 0x64c - field public static final int CODE_REJECT_MAX_CALL_LIMIT_REACHED = 1608; // 0x648 - field public static final int CODE_REJECT_ONGOING_CALL_SETUP = 1607; // 0x647 - field public static final int CODE_REJECT_ONGOING_CALL_TRANSFER = 1611; // 0x64b - field public static final int CODE_REJECT_ONGOING_CALL_UPGRADE = 1616; // 0x650 - field public static final int CODE_REJECT_ONGOING_CALL_WAITING_DISABLED = 1601; // 0x641 - field public static final int CODE_REJECT_ONGOING_CONFERENCE_CALL = 1618; // 0x652 - field public static final int CODE_REJECT_ONGOING_CS_CALL = 1621; // 0x655 - field public static final int CODE_REJECT_ONGOING_E911_CALL = 1606; // 0x646 - field public static final int CODE_REJECT_ONGOING_ENCRYPTED_CALL = 1620; // 0x654 - field public static final int CODE_REJECT_ONGOING_HANDOVER = 1614; // 0x64e - field public static final int CODE_REJECT_QOS_FAILURE = 1613; // 0x64d - field public static final int CODE_REJECT_SERVICE_NOT_REGISTERED = 1604; // 0x644 - field public static final int CODE_REJECT_UNKNOWN = 1600; // 0x640 - field public static final int CODE_REJECT_UNSUPPORTED_SDP_HEADERS = 1610; // 0x64a - field public static final int CODE_REJECT_UNSUPPORTED_SIP_HEADERS = 1609; // 0x649 - field public static final int CODE_REJECT_VT_AVPF_NOT_ALLOWED = 1619; // 0x653 - field public static final int CODE_REJECT_VT_TTY_NOT_ALLOWED = 1615; // 0x64f - field public static final int CODE_REMOTE_CALL_DECLINE = 1404; // 0x57c - field public static final int CODE_SESSION_MODIFICATION_FAILED = 1517; // 0x5ed - field public static final int CODE_SIP_ALTERNATE_EMERGENCY_CALL = 1514; // 0x5ea - field public static final int CODE_SIP_AMBIGUOUS = 376; // 0x178 - field public static final int CODE_SIP_BAD_ADDRESS = 337; // 0x151 - field public static final int CODE_SIP_BAD_REQUEST = 331; // 0x14b - field public static final int CODE_SIP_BUSY = 338; // 0x152 - field public static final int CODE_SIP_CALL_OR_TRANS_DOES_NOT_EXIST = 372; // 0x174 - field public static final int CODE_SIP_CLIENT_ERROR = 342; // 0x156 - field public static final int CODE_SIP_EXTENSION_REQUIRED = 370; // 0x172 - field public static final int CODE_SIP_FORBIDDEN = 332; // 0x14c - field public static final int CODE_SIP_GLOBAL_ERROR = 362; // 0x16a - field public static final int CODE_SIP_INTERVAL_TOO_BRIEF = 371; // 0x173 - field public static final int CODE_SIP_LOOP_DETECTED = 373; // 0x175 - field public static final int CODE_SIP_METHOD_NOT_ALLOWED = 366; // 0x16e - field public static final int CODE_SIP_NOT_ACCEPTABLE = 340; // 0x154 - field public static final int CODE_SIP_NOT_FOUND = 333; // 0x14d - field public static final int CODE_SIP_NOT_REACHABLE = 341; // 0x155 - field public static final int CODE_SIP_NOT_SUPPORTED = 334; // 0x14e - field public static final int CODE_SIP_PROXY_AUTHENTICATION_REQUIRED = 367; // 0x16f - field public static final int CODE_SIP_REDIRECTED = 321; // 0x141 - field public static final int CODE_SIP_REQUEST_CANCELLED = 339; // 0x153 - field public static final int CODE_SIP_REQUEST_ENTITY_TOO_LARGE = 368; // 0x170 - field public static final int CODE_SIP_REQUEST_PENDING = 377; // 0x179 - field public static final int CODE_SIP_REQUEST_TIMEOUT = 335; // 0x14f - field public static final int CODE_SIP_REQUEST_URI_TOO_LARGE = 369; // 0x171 - field public static final int CODE_SIP_SERVER_ERROR = 354; // 0x162 - field public static final int CODE_SIP_SERVER_INTERNAL_ERROR = 351; // 0x15f - field public static final int CODE_SIP_SERVER_TIMEOUT = 353; // 0x161 - field public static final int CODE_SIP_SERVICE_UNAVAILABLE = 352; // 0x160 - field public static final int CODE_SIP_TEMPRARILY_UNAVAILABLE = 336; // 0x150 - field public static final int CODE_SIP_TOO_MANY_HOPS = 374; // 0x176 - field public static final int CODE_SIP_TRANSACTION_DOES_NOT_EXIST = 343; // 0x157 - field public static final int CODE_SIP_UNDECIPHERABLE = 378; // 0x17a - field public static final int CODE_SIP_USER_MARKED_UNWANTED = 365; // 0x16d - field public static final int CODE_SIP_USER_REJECTED = 361; // 0x169 - field public static final int CODE_SUPP_SVC_CANCELLED = 1202; // 0x4b2 - field public static final int CODE_SUPP_SVC_FAILED = 1201; // 0x4b1 - field public static final int CODE_SUPP_SVC_REINVITE_COLLISION = 1203; // 0x4b3 - field public static final int CODE_TIMEOUT_1XX_WAITING = 201; // 0xc9 - field public static final int CODE_TIMEOUT_NO_ANSWER = 202; // 0xca - field public static final int CODE_TIMEOUT_NO_ANSWER_CALL_UPDATE = 203; // 0xcb - field public static final int CODE_UNSPECIFIED = 0; // 0x0 - field public static final int CODE_USER_CANCELLED_SESSION_MODIFICATION = 512; // 0x200 - field public static final int CODE_USER_DECLINE = 504; // 0x1f8 - field public static final int CODE_USER_IGNORE = 503; // 0x1f7 - field public static final int CODE_USER_NOANSWER = 502; // 0x1f6 - field public static final int CODE_USER_REJECTED_SESSION_MODIFICATION = 511; // 0x1ff - field public static final int CODE_USER_TERMINATED = 501; // 0x1f5 - field public static final int CODE_USER_TERMINATED_BY_REMOTE = 510; // 0x1fe - field public static final int CODE_UT_CB_PASSWORD_MISMATCH = 821; // 0x335 - field public static final int CODE_UT_NETWORK_ERROR = 804; // 0x324 - field public static final int CODE_UT_NOT_SUPPORTED = 801; // 0x321 - field public static final int CODE_UT_OPERATION_NOT_ALLOWED = 803; // 0x323 - field public static final int CODE_UT_SERVICE_UNAVAILABLE = 802; // 0x322 - field public static final int CODE_UT_SS_MODIFIED_TO_DIAL = 822; // 0x336 - field public static final int CODE_UT_SS_MODIFIED_TO_DIAL_VIDEO = 825; // 0x339 - field public static final int CODE_UT_SS_MODIFIED_TO_SS = 824; // 0x338 - field public static final int CODE_UT_SS_MODIFIED_TO_USSD = 823; // 0x337 - field public static final int CODE_WIFI_LOST = 1407; // 0x57f - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int EXTRA_CODE_CALL_RETRY_BY_SETTINGS = 3; // 0x3 - field public static final int EXTRA_CODE_CALL_RETRY_EMERGENCY = 4; // 0x4 - field public static final int EXTRA_CODE_CALL_RETRY_NORMAL = 1; // 0x1 - field public static final int EXTRA_CODE_CALL_RETRY_SILENT_REDIAL = 2; // 0x2 - } - - public final class ImsRegistrationAttributes implements android.os.Parcelable { - method public int describeContents(); - method public int getAttributeFlags(); - method @NonNull public java.util.Set getFeatureTags(); - method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public boolean getFlagRegistrationTypeEmergency(); - method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public boolean getFlagVirtualRegistrationForEmergencyCall(); - method @Nullable public android.telephony.ims.SipDetails getSipDetails(); - method public int getTransportType(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int ATTR_EPDG_OVER_CELL_INTERNET = 1; // 0x1 - field @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public static final int ATTR_REGISTRATION_TYPE_EMERGENCY = 2; // 0x2 - field @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public static final int ATTR_VIRTUAL_FOR_ANONYMOUS_EMERGENCY_CALL = 4; // 0x4 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class ImsStateCallback { - ctor public ImsStateCallback(); - method public abstract void onAvailable(); - method public abstract void onError(); - method public abstract void onUnavailable(int); - field public static final int REASON_IMS_SERVICE_DISCONNECTED = 3; // 0x3 - field public static final int REASON_IMS_SERVICE_NOT_READY = 6; // 0x6 - field public static final int REASON_NO_IMS_SERVICE_CONFIGURED = 4; // 0x4 - field public static final int REASON_SUBSCRIPTION_INACTIVE = 5; // 0x5 - field public static final int REASON_UNKNOWN_PERMANENT_ERROR = 2; // 0x2 - field public static final int REASON_UNKNOWN_TEMPORARY_ERROR = 1; // 0x1 - } - - public class ProvisioningManager { - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) @WorkerThread public boolean getProvisioningStatusForCapability(int, int); - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) @WorkerThread public boolean getRcsProvisioningStatusForCapability(int, int); - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public boolean isProvisioningRequiredForCapability(int, int); - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public boolean isRcsProvisioningRequiredForCapability(int, int); - method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void registerFeatureProvisioningChangedCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ProvisioningManager.FeatureProvisioningCallback) throws android.telephony.ims.ImsException; - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setProvisioningStatusForCapability(int, int, boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setRcsProvisioningStatusForCapability(int, int, boolean); - method public void unregisterFeatureProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.FeatureProvisioningCallback); - } - - public abstract static class ProvisioningManager.FeatureProvisioningCallback { - ctor public ProvisioningManager.FeatureProvisioningCallback(); - method public abstract void onFeatureProvisioningChanged(int, int, boolean); - method public abstract void onRcsFeatureProvisioningChanged(int, int, boolean); - } - - public class RcsUceAdapter { - method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isUceSettingEnabled() throws android.telephony.ims.ImsException; - } - - public interface RegistrationManager { - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationTransportType(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RegistrationManager.RegistrationCallback) throws android.telephony.ims.ImsException; - method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback); - field public static final int REGISTRATION_STATE_NOT_REGISTERED = 0; // 0x0 - field public static final int REGISTRATION_STATE_REGISTERED = 2; // 0x2 - field public static final int REGISTRATION_STATE_REGISTERING = 1; // 0x1 - } - - public static class RegistrationManager.RegistrationCallback { - ctor public RegistrationManager.RegistrationCallback(); - method @Deprecated public void onRegistered(int); - method public void onRegistered(@NonNull android.telephony.ims.ImsRegistrationAttributes); - method @Deprecated public void onRegistering(int); - method public void onRegistering(@NonNull android.telephony.ims.ImsRegistrationAttributes); - method public void onTechnologyChangeFailed(int, @NonNull android.telephony.ims.ImsReasonInfo); - method public void onUnregistered(@NonNull android.telephony.ims.ImsReasonInfo); - } - - public final class SipDetails implements android.os.Parcelable { - method public int describeContents(); - method public int getCSeq(); - method @Nullable public String getCallId(); - method public int getMethod(); - method public int getReasonHeaderCause(); - method @NonNull public String getReasonHeaderText(); - method public int getResponseCode(); - method @NonNull public String getResponsePhrase(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int METHOD_PUBLISH = 2; // 0x2 - field public static final int METHOD_REGISTER = 1; // 0x1 - field public static final int METHOD_SUBSCRIBE = 3; // 0x3 - field public static final int METHOD_UNKNOWN = 0; // 0x0 - } - -} - -package android.telephony.ims.feature { - - public class MmTelFeature { - } - - public static class MmTelFeature.MmTelCapabilities { - method public final boolean isCapable(int); - field public static final int CAPABILITY_TYPE_CALL_COMPOSER = 16; // 0x10 - field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final int CAPABILITY_TYPE_CALL_COMPOSER_BUSINESS_ONLY = 32; // 0x20 - field public static final int CAPABILITY_TYPE_SMS = 8; // 0x8 - field public static final int CAPABILITY_TYPE_UT = 4; // 0x4 - field public static final int CAPABILITY_TYPE_VIDEO = 2; // 0x2 - field public static final int CAPABILITY_TYPE_VOICE = 1; // 0x1 - } - -} - -package android.telephony.ims.stub { - - public class ImsRegistrationImplBase { - field public static final int REGISTRATION_TECH_3G = 4; // 0x4 - field public static final int REGISTRATION_TECH_CROSS_SIM = 2; // 0x2 - field public static final int REGISTRATION_TECH_IWLAN = 1; // 0x1 - field public static final int REGISTRATION_TECH_LTE = 0; // 0x0 - field public static final int REGISTRATION_TECH_NONE = -1; // 0xffffffff - field public static final int REGISTRATION_TECH_NR = 3; // 0x3 - } - -} - -package android.telephony.mbms { - - public class DownloadProgressListener { - ctor public DownloadProgressListener(); - method public void onProgressUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int, int, int, int); - } - - public final class DownloadRequest implements android.os.Parcelable { - method public int describeContents(); - method public android.net.Uri getDestinationUri(); - method public String getFileServiceId(); - method public static int getMaxAppIntentSize(); - method public static int getMaxDestinationUriSize(); - method public android.net.Uri getSourceUri(); - method public int getSubscriptionId(); - method public byte[] toByteArray(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class DownloadRequest.Builder { - ctor public DownloadRequest.Builder(@NonNull android.net.Uri, @NonNull android.net.Uri); - method public android.telephony.mbms.DownloadRequest build(); - method public static android.telephony.mbms.DownloadRequest.Builder fromDownloadRequest(android.telephony.mbms.DownloadRequest); - method public static android.telephony.mbms.DownloadRequest.Builder fromSerializedRequest(byte[]); - method public android.telephony.mbms.DownloadRequest.Builder setAppIntent(android.content.Intent); - method public android.telephony.mbms.DownloadRequest.Builder setServiceInfo(android.telephony.mbms.FileServiceInfo); - method public android.telephony.mbms.DownloadRequest.Builder setSubscriptionId(int); - } - - public class DownloadStatusListener { - ctor public DownloadStatusListener(); - method public void onStatusUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int); - } - - public final class FileInfo implements android.os.Parcelable { - method public int describeContents(); - method public String getMimeType(); - method public android.net.Uri getUri(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class FileServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable { - method public int describeContents(); - method public java.util.List getFiles(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class GroupCall implements java.lang.AutoCloseable { - method public void close(); - method public long getTmgi(); - method public void updateGroupCall(@NonNull java.util.List, @NonNull java.util.List); - field public static final int REASON_BY_USER_REQUEST = 1; // 0x1 - field public static final int REASON_FREQUENCY_CONFLICT = 3; // 0x3 - field public static final int REASON_LEFT_MBMS_BROADCAST_AREA = 6; // 0x6 - field public static final int REASON_NONE = 0; // 0x0 - field public static final int REASON_NOT_CONNECTED_TO_HOMECARRIER_LTE = 5; // 0x5 - field public static final int REASON_OUT_OF_MEMORY = 4; // 0x4 - field public static final int STATE_STALLED = 3; // 0x3 - field public static final int STATE_STARTED = 2; // 0x2 - field public static final int STATE_STOPPED = 1; // 0x1 - } - - public interface GroupCallCallback { - method public default void onBroadcastSignalStrengthUpdated(@IntRange(from=0xffffffff, to=4) int); - method public default void onError(int, @Nullable String); - method public default void onGroupCallStateChanged(int, int); - field public static final int SIGNAL_STRENGTH_UNAVAILABLE = -1; // 0xffffffff - } - - public class MbmsDownloadReceiver extends android.content.BroadcastReceiver { - ctor public MbmsDownloadReceiver(); - method public void onReceive(android.content.Context, android.content.Intent); - } - - public class MbmsDownloadSessionCallback { - ctor public MbmsDownloadSessionCallback(); - method public void onError(int, String); - method public void onFileServicesUpdated(java.util.List); - method public void onMiddlewareReady(); - } - - public class MbmsErrors { - field public static final int ERROR_MIDDLEWARE_LOST = 3; // 0x3 - field public static final int ERROR_MIDDLEWARE_NOT_BOUND = 2; // 0x2 - field public static final int ERROR_NO_UNIQUE_MIDDLEWARE = 1; // 0x1 - field public static final int SUCCESS = 0; // 0x0 - field public static final int UNKNOWN = -1; // 0xffffffff - } - - public static class MbmsErrors.DownloadErrors { - field public static final int ERROR_CANNOT_CHANGE_TEMP_FILE_ROOT = 401; // 0x191 - field public static final int ERROR_MALFORMED_SERVICE_ANNOUNCEMENT = 404; // 0x194 - field public static final int ERROR_UNKNOWN_DOWNLOAD_REQUEST = 402; // 0x192 - field public static final int ERROR_UNKNOWN_FILE_INFO = 403; // 0x193 - } - - public static class MbmsErrors.GeneralErrors { - field public static final int ERROR_CARRIER_CHANGE_NOT_ALLOWED = 207; // 0xcf - field public static final int ERROR_IN_E911 = 204; // 0xcc - field public static final int ERROR_MIDDLEWARE_NOT_YET_READY = 201; // 0xc9 - field public static final int ERROR_MIDDLEWARE_TEMPORARILY_UNAVAILABLE = 203; // 0xcb - field public static final int ERROR_NOT_CONNECTED_TO_HOME_CARRIER_LTE = 205; // 0xcd - field public static final int ERROR_OUT_OF_MEMORY = 202; // 0xca - field public static final int ERROR_UNABLE_TO_READ_SIM = 206; // 0xce - } - - public static class MbmsErrors.GroupCallErrors { - field public static final int ERROR_DUPLICATE_START_GROUP_CALL = 502; // 0x1f6 - field public static final int ERROR_UNABLE_TO_START_SERVICE = 501; // 0x1f5 - } - - public static class MbmsErrors.InitializationErrors { - field public static final int ERROR_APP_PERMISSIONS_NOT_GRANTED = 102; // 0x66 - field public static final int ERROR_DUPLICATE_INITIALIZE = 101; // 0x65 - field public static final int ERROR_UNABLE_TO_INITIALIZE = 103; // 0x67 - } - - public static class MbmsErrors.StreamingErrors { - field public static final int ERROR_CONCURRENT_SERVICE_LIMIT_REACHED = 301; // 0x12d - field public static final int ERROR_DUPLICATE_START_STREAM = 303; // 0x12f - field public static final int ERROR_UNABLE_TO_START_SERVICE = 302; // 0x12e - } - - public interface MbmsGroupCallSessionCallback { - method public default void onAvailableSaisUpdated(@NonNull java.util.List, @NonNull java.util.List>); - method public default void onError(int, @Nullable String); - method public default void onMiddlewareReady(); - method public default void onServiceInterfaceAvailable(@NonNull String, int); - } - - public class MbmsStreamingSessionCallback { - ctor public MbmsStreamingSessionCallback(); - method public void onError(int, @Nullable String); - method public void onMiddlewareReady(); - method public void onStreamingServicesUpdated(java.util.List); - } - - public class ServiceInfo { - method public java.util.List getLocales(); - method @NonNull public CharSequence getNameForLocale(@NonNull java.util.Locale); - method @NonNull public java.util.Set getNamedContentLocales(); - method public String getServiceClassName(); - method public String getServiceId(); - method public java.util.Date getSessionEndTime(); - method public java.util.Date getSessionStartTime(); - } - - public class StreamingService implements java.lang.AutoCloseable { - method public void close(); - method public android.telephony.mbms.StreamingServiceInfo getInfo(); - method @Nullable public android.net.Uri getPlaybackUri(); - field public static final int BROADCAST_METHOD = 1; // 0x1 - field public static final int REASON_BY_USER_REQUEST = 1; // 0x1 - field public static final int REASON_END_OF_SESSION = 2; // 0x2 - field public static final int REASON_FREQUENCY_CONFLICT = 3; // 0x3 - field public static final int REASON_LEFT_MBMS_BROADCAST_AREA = 6; // 0x6 - field public static final int REASON_NONE = 0; // 0x0 - field public static final int REASON_NOT_CONNECTED_TO_HOMECARRIER_LTE = 5; // 0x5 - field public static final int REASON_OUT_OF_MEMORY = 4; // 0x4 - field public static final int STATE_STALLED = 3; // 0x3 - field public static final int STATE_STARTED = 2; // 0x2 - field public static final int STATE_STOPPED = 1; // 0x1 - field public static final int UNICAST_METHOD = 2; // 0x2 - } - - public class StreamingServiceCallback { - ctor public StreamingServiceCallback(); - method public void onBroadcastSignalStrengthUpdated(int); - method public void onError(int, @Nullable String); - method public void onMediaDescriptionUpdated(); - method public void onStreamMethodUpdated(int); - method public void onStreamStateUpdated(int, int); - field public static final int SIGNAL_STRENGTH_UNAVAILABLE = -1; // 0xffffffff - } - - public final class StreamingServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.telephony.satellite { - - @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") public final class SatelliteManager { - method @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") @RequiresPermission(anyOf={android.Manifest.permission.READ_BASIC_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public void registerStateChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteStateChangeListener); - method @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") @RequiresPermission(anyOf={android.Manifest.permission.READ_BASIC_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public void unregisterStateChangeListener(@NonNull android.telephony.satellite.SatelliteStateChangeListener); - } - - @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") public interface SatelliteStateChangeListener { - method public void onEnabledStateChanged(boolean); - } - -} - -package android.text { - - @Deprecated public class AlteredCharSequence implements java.lang.CharSequence android.text.GetChars { - method @Deprecated public char charAt(int); - method @Deprecated public void getChars(int, int, char[], int); - method @Deprecated public int length(); - method @Deprecated public static android.text.AlteredCharSequence make(CharSequence, char[], int, int); - method @Deprecated public CharSequence subSequence(int, int); - method @Deprecated public String toString(); - } - - @Deprecated public class AndroidCharacter { - ctor @Deprecated public AndroidCharacter(); - method @Deprecated public static void getDirectionalities(char[], byte[], int); - method @Deprecated public static int getEastAsianWidth(char); - method @Deprecated public static void getEastAsianWidths(char[], int, int, byte[]); - method @Deprecated public static char getMirror(char); - method @Deprecated public static boolean mirror(char[], int, int); - field @Deprecated public static final int EAST_ASIAN_WIDTH_AMBIGUOUS = 1; // 0x1 - field @Deprecated public static final int EAST_ASIAN_WIDTH_FULL_WIDTH = 3; // 0x3 - field @Deprecated public static final int EAST_ASIAN_WIDTH_HALF_WIDTH = 2; // 0x2 - field @Deprecated public static final int EAST_ASIAN_WIDTH_NARROW = 4; // 0x4 - field @Deprecated public static final int EAST_ASIAN_WIDTH_NEUTRAL = 0; // 0x0 - field @Deprecated public static final int EAST_ASIAN_WIDTH_WIDE = 5; // 0x5 - } - - public class Annotation implements android.text.ParcelableSpan { - ctor public Annotation(String, String); - ctor public Annotation(android.os.Parcel); - method public int describeContents(); - method public String getKey(); - method public int getSpanTypeId(); - method public String getValue(); - method public void writeToParcel(android.os.Parcel, int); - } - - public class AutoText { - method public static String get(CharSequence, int, int, android.view.View); - method public static int getSize(android.view.View); - } - - public final class BidiFormatter { - method public static android.text.BidiFormatter getInstance(); - method public static android.text.BidiFormatter getInstance(boolean); - method public static android.text.BidiFormatter getInstance(java.util.Locale); - method public boolean getStereoReset(); - method public boolean isRtl(String); - method public boolean isRtl(CharSequence); - method public boolean isRtlContext(); - method @Nullable public String unicodeWrap(@Nullable String, android.text.TextDirectionHeuristic, boolean); - method @Nullable public CharSequence unicodeWrap(@Nullable CharSequence, android.text.TextDirectionHeuristic, boolean); - method public String unicodeWrap(String, android.text.TextDirectionHeuristic); - method public CharSequence unicodeWrap(CharSequence, android.text.TextDirectionHeuristic); - method public String unicodeWrap(String, boolean); - method public CharSequence unicodeWrap(CharSequence, boolean); - method public String unicodeWrap(String); - method public CharSequence unicodeWrap(CharSequence); - } - - public static final class BidiFormatter.Builder { - ctor public BidiFormatter.Builder(); - ctor public BidiFormatter.Builder(boolean); - ctor public BidiFormatter.Builder(java.util.Locale); - method public android.text.BidiFormatter build(); - method public android.text.BidiFormatter.Builder setTextDirectionHeuristic(android.text.TextDirectionHeuristic); - method public android.text.BidiFormatter.Builder stereoReset(boolean); - } - - public class BoringLayout extends android.text.Layout implements android.text.TextUtils.EllipsizeCallback { - ctor public BoringLayout(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean); - ctor public BoringLayout(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean, android.text.TextUtils.TruncateAt, int); - ctor public BoringLayout(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, float, float, @NonNull android.text.BoringLayout.Metrics, boolean, @Nullable android.text.TextUtils.TruncateAt, @IntRange(from=0) int, boolean); - method public void ellipsized(int, int); - method public int getBottomPadding(); - method public int getEllipsisCount(int); - method public int getEllipsisStart(int); - method public boolean getLineContainsTab(int); - method public int getLineCount(); - method public int getLineDescent(int); - method public final android.text.Layout.Directions getLineDirections(int); - method public int getLineStart(int); - method public int getLineTop(int); - method public int getParagraphDirection(int); - method public int getTopPadding(); - method public static android.text.BoringLayout.Metrics isBoring(CharSequence, android.text.TextPaint); - method public static android.text.BoringLayout.Metrics isBoring(CharSequence, android.text.TextPaint, android.text.BoringLayout.Metrics); - method @Nullable public static android.text.BoringLayout.Metrics isBoring(@NonNull CharSequence, @NonNull android.text.TextPaint, @NonNull android.text.TextDirectionHeuristic, boolean, @Nullable android.text.BoringLayout.Metrics); - method public static android.text.BoringLayout make(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean); - method public static android.text.BoringLayout make(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean, android.text.TextUtils.TruncateAt, int); - method @NonNull public static android.text.BoringLayout make(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @NonNull android.text.BoringLayout.Metrics, boolean, @Nullable android.text.TextUtils.TruncateAt, @IntRange(from=0) int, boolean); - method public android.text.BoringLayout replaceOrMake(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean); - method @NonNull public android.text.BoringLayout replaceOrMake(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @NonNull android.text.BoringLayout.Metrics, boolean, @Nullable android.text.TextUtils.TruncateAt, @IntRange(from=0) int, boolean); - method public android.text.BoringLayout replaceOrMake(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean, android.text.TextUtils.TruncateAt, int); - } - - public static class BoringLayout.Metrics extends android.graphics.Paint.FontMetricsInt { - ctor public BoringLayout.Metrics(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.graphics.RectF getDrawingBoundingBox(); - field public int width; - } - - @Deprecated public abstract class ClipboardManager { - ctor @Deprecated public ClipboardManager(); - method @Deprecated public abstract CharSequence getText(); - method @Deprecated public abstract boolean hasText(); - method @Deprecated public abstract void setText(CharSequence); - } - - public class DynamicLayout extends android.text.Layout { - ctor @Deprecated public DynamicLayout(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @FloatRange(from=0.0) float, float, boolean); - ctor @Deprecated public DynamicLayout(@NonNull CharSequence, @NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @FloatRange(from=0.0) float, float, boolean); - ctor @Deprecated public DynamicLayout(@NonNull CharSequence, @NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @FloatRange(from=0.0) float, float, boolean, @Nullable android.text.TextUtils.TruncateAt, @IntRange(from=0) int); - method public int getBottomPadding(); - method public int getEllipsisCount(int); - method public int getEllipsisStart(int); - method public boolean getLineContainsTab(int); - method public int getLineCount(); - method public int getLineDescent(int); - method public final android.text.Layout.Directions getLineDirections(int); - method public int getLineStart(int); - method public int getLineTop(int); - method public int getParagraphDirection(int); - method public int getTopPadding(); - } - - public static final class DynamicLayout.Builder { - method @NonNull public android.text.DynamicLayout build(); - method @NonNull public static android.text.DynamicLayout.Builder obtain(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int); - method @NonNull public android.text.DynamicLayout.Builder setAlignment(@NonNull android.text.Layout.Alignment); - method @NonNull public android.text.DynamicLayout.Builder setBreakStrategy(int); - method @NonNull public android.text.DynamicLayout.Builder setDisplayText(@NonNull CharSequence); - method public android.text.DynamicLayout.Builder setEllipsize(@Nullable android.text.TextUtils.TruncateAt); - method @NonNull public android.text.DynamicLayout.Builder setEllipsizedWidth(@IntRange(from=0) int); - method @NonNull public android.text.DynamicLayout.Builder setHyphenationFrequency(int); - method @NonNull public android.text.DynamicLayout.Builder setIncludePad(boolean); - method @NonNull public android.text.DynamicLayout.Builder setJustificationMode(int); - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.text.DynamicLayout.Builder setLineBreakConfig(@NonNull android.graphics.text.LineBreakConfig); - method @NonNull public android.text.DynamicLayout.Builder setLineSpacing(float, @FloatRange(from=0.0) float); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @NonNull public android.text.DynamicLayout.Builder setMinimumFontMetrics(@Nullable android.graphics.Paint.FontMetrics); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.DynamicLayout.Builder setShiftDrawingOffsetForStartOverhang(boolean); - method @NonNull public android.text.DynamicLayout.Builder setTextDirection(@NonNull android.text.TextDirectionHeuristic); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.DynamicLayout.Builder setUseBoundsForWidth(boolean); - method @NonNull public android.text.DynamicLayout.Builder setUseLineSpacingFromFallbacks(boolean); - } - - public interface Editable extends java.lang.CharSequence java.lang.Appendable android.text.GetChars android.text.Spannable { - method public android.text.Editable append(CharSequence); - method public android.text.Editable append(CharSequence, int, int); - method public android.text.Editable append(char); - method public void clear(); - method public void clearSpans(); - method public android.text.Editable delete(int, int); - method public android.text.InputFilter[] getFilters(); - method public android.text.Editable insert(int, CharSequence, int, int); - method public android.text.Editable insert(int, CharSequence); - method public android.text.Editable replace(int, int, CharSequence, int, int); - method public android.text.Editable replace(int, int, CharSequence); - method public void setFilters(android.text.InputFilter[]); - } - - public static class Editable.Factory { - ctor public Editable.Factory(); - method public static android.text.Editable.Factory getInstance(); - method public android.text.Editable newEditable(CharSequence); - } - - public final class EmojiConsistency { - method @NonNull public static java.util.Set getEmojiConsistencySet(); - } - - public interface GetChars extends java.lang.CharSequence { - method public void getChars(int, int, char[], int); - } - - public class GraphemeClusterSegmentFinder extends android.text.SegmentFinder { - ctor public GraphemeClusterSegmentFinder(@NonNull CharSequence, @NonNull android.text.TextPaint); - method public int nextEndBoundary(@IntRange(from=0) int); - method public int nextStartBoundary(@IntRange(from=0) int); - method public int previousEndBoundary(@IntRange(from=0) int); - method public int previousStartBoundary(@IntRange(from=0) int); - } - - public class Highlights { - method @NonNull public android.graphics.Paint getPaint(int); - method @NonNull public int[] getRanges(int); - method public int getSize(); - } - - public static final class Highlights.Builder { - ctor public Highlights.Builder(); - method @NonNull public android.text.Highlights.Builder addRange(@NonNull android.graphics.Paint, int, int); - method @NonNull public android.text.Highlights.Builder addRanges(@NonNull android.graphics.Paint, @NonNull int...); - method @NonNull public android.text.Highlights build(); - } - - public class Html { - method public static String escapeHtml(CharSequence); - method @Deprecated public static android.text.Spanned fromHtml(String); - method public static android.text.Spanned fromHtml(String, int); - method @Deprecated public static android.text.Spanned fromHtml(String, android.text.Html.ImageGetter, android.text.Html.TagHandler); - method public static android.text.Spanned fromHtml(String, int, android.text.Html.ImageGetter, android.text.Html.TagHandler); - method @Deprecated public static String toHtml(android.text.Spanned); - method public static String toHtml(android.text.Spanned, int); - field public static final int FROM_HTML_MODE_COMPACT = 63; // 0x3f - field public static final int FROM_HTML_MODE_LEGACY = 0; // 0x0 - field public static final int FROM_HTML_OPTION_USE_CSS_COLORS = 256; // 0x100 - field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_BLOCKQUOTE = 32; // 0x20 - field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_DIV = 16; // 0x10 - field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_HEADING = 2; // 0x2 - field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_LIST = 8; // 0x8 - field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_LIST_ITEM = 4; // 0x4 - field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_PARAGRAPH = 1; // 0x1 - field public static final int TO_HTML_PARAGRAPH_LINES_CONSECUTIVE = 0; // 0x0 - field public static final int TO_HTML_PARAGRAPH_LINES_INDIVIDUAL = 1; // 0x1 - } - - public static interface Html.ImageGetter { - method public android.graphics.drawable.Drawable getDrawable(String); - } - - public static interface Html.TagHandler { - method public void handleTag(boolean, String, android.text.Editable, org.xml.sax.XMLReader); - } - - public interface InputFilter { - method public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); - } - - public static class InputFilter.AllCaps implements android.text.InputFilter { - ctor public InputFilter.AllCaps(); - ctor public InputFilter.AllCaps(@NonNull java.util.Locale); - method public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); - } - - public static class InputFilter.LengthFilter implements android.text.InputFilter { - ctor public InputFilter.LengthFilter(int); - method public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); - method public int getMax(); - } - - public interface InputType { - field public static final int TYPE_CLASS_DATETIME = 4; // 0x4 - field public static final int TYPE_CLASS_NUMBER = 2; // 0x2 - field public static final int TYPE_CLASS_PHONE = 3; // 0x3 - field public static final int TYPE_CLASS_TEXT = 1; // 0x1 - field public static final int TYPE_DATETIME_VARIATION_DATE = 16; // 0x10 - field public static final int TYPE_DATETIME_VARIATION_NORMAL = 0; // 0x0 - field public static final int TYPE_DATETIME_VARIATION_TIME = 32; // 0x20 - field public static final int TYPE_MASK_CLASS = 15; // 0xf - field public static final int TYPE_MASK_FLAGS = 16773120; // 0xfff000 - field public static final int TYPE_MASK_VARIATION = 4080; // 0xff0 - field public static final int TYPE_NULL = 0; // 0x0 - field public static final int TYPE_NUMBER_FLAG_DECIMAL = 8192; // 0x2000 - field public static final int TYPE_NUMBER_FLAG_SIGNED = 4096; // 0x1000 - field public static final int TYPE_NUMBER_VARIATION_NORMAL = 0; // 0x0 - field public static final int TYPE_NUMBER_VARIATION_PASSWORD = 16; // 0x10 - field public static final int TYPE_TEXT_FLAG_AUTO_COMPLETE = 65536; // 0x10000 - field public static final int TYPE_TEXT_FLAG_AUTO_CORRECT = 32768; // 0x8000 - field public static final int TYPE_TEXT_FLAG_CAP_CHARACTERS = 4096; // 0x1000 - field public static final int TYPE_TEXT_FLAG_CAP_SENTENCES = 16384; // 0x4000 - field public static final int TYPE_TEXT_FLAG_CAP_WORDS = 8192; // 0x2000 - field public static final int TYPE_TEXT_FLAG_ENABLE_TEXT_CONVERSION_SUGGESTIONS = 1048576; // 0x100000 - field public static final int TYPE_TEXT_FLAG_IME_MULTI_LINE = 262144; // 0x40000 - field public static final int TYPE_TEXT_FLAG_MULTI_LINE = 131072; // 0x20000 - field public static final int TYPE_TEXT_FLAG_NO_SUGGESTIONS = 524288; // 0x80000 - field public static final int TYPE_TEXT_VARIATION_EMAIL_ADDRESS = 32; // 0x20 - field public static final int TYPE_TEXT_VARIATION_EMAIL_SUBJECT = 48; // 0x30 - field public static final int TYPE_TEXT_VARIATION_FILTER = 176; // 0xb0 - field public static final int TYPE_TEXT_VARIATION_LONG_MESSAGE = 80; // 0x50 - field public static final int TYPE_TEXT_VARIATION_NORMAL = 0; // 0x0 - field public static final int TYPE_TEXT_VARIATION_PASSWORD = 128; // 0x80 - field public static final int TYPE_TEXT_VARIATION_PERSON_NAME = 96; // 0x60 - field public static final int TYPE_TEXT_VARIATION_PHONETIC = 192; // 0xc0 - field public static final int TYPE_TEXT_VARIATION_POSTAL_ADDRESS = 112; // 0x70 - field public static final int TYPE_TEXT_VARIATION_SHORT_MESSAGE = 64; // 0x40 - field public static final int TYPE_TEXT_VARIATION_URI = 16; // 0x10 - field public static final int TYPE_TEXT_VARIATION_VISIBLE_PASSWORD = 144; // 0x90 - field public static final int TYPE_TEXT_VARIATION_WEB_EDIT_TEXT = 160; // 0xa0 - field public static final int TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS = 208; // 0xd0 - field public static final int TYPE_TEXT_VARIATION_WEB_PASSWORD = 224; // 0xe0 - } - - public abstract class Layout { - ctor protected Layout(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.graphics.RectF computeDrawingBoundingBox(); - method public void draw(android.graphics.Canvas); - method public void draw(android.graphics.Canvas, android.graphics.Path, android.graphics.Paint, int); - method public void draw(@NonNull android.graphics.Canvas, @Nullable java.util.List, @Nullable java.util.List, @Nullable android.graphics.Path, @Nullable android.graphics.Paint, int); - method public void drawBackground(@NonNull android.graphics.Canvas); - method public void drawText(@NonNull android.graphics.Canvas); - method public void fillCharacterBounds(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull float[], @IntRange(from=0) int); - method @NonNull public final android.text.Layout.Alignment getAlignment(); - method public abstract int getBottomPadding(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final int getBreakStrategy(); - method public void getCursorPath(int, android.graphics.Path, CharSequence); - method public static float getDesiredWidth(CharSequence, android.text.TextPaint); - method public static float getDesiredWidth(CharSequence, int, int, android.text.TextPaint); - method public abstract int getEllipsisCount(int); - method public abstract int getEllipsisStart(int); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @Nullable public final android.text.TextUtils.TruncateAt getEllipsize(); - method @IntRange(from=0) public int getEllipsizedWidth(); - method public int getHeight(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final int getHyphenationFrequency(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final int getJustificationMode(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @Nullable public final int[] getLeftIndents(); - method public final int getLineAscent(int); - method public final int getLineBaseline(int); - method public final int getLineBottom(int); - method public int getLineBottom(int, boolean); - method public int getLineBounds(int, android.graphics.Rect); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.graphics.text.LineBreakConfig getLineBreakConfig(); - method public abstract boolean getLineContainsTab(int); - method public abstract int getLineCount(); - method public abstract int getLineDescent(int); - method public abstract android.text.Layout.Directions getLineDirections(int); - method public final int getLineEnd(int); - method public int getLineForOffset(int); - method public int getLineForVertical(int); - method public float getLineLeft(int); - method @FlaggedApi("com.android.text.flags.letter_spacing_justification") @IntRange(from=0) public int getLineLetterSpacingUnitCount(@IntRange(from=0) int, boolean); - method public float getLineMax(int); - method public float getLineRight(int); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final float getLineSpacingAmount(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final float getLineSpacingMultiplier(); - method public abstract int getLineStart(int); - method public abstract int getLineTop(int); - method public int getLineVisibleEnd(int); - method public float getLineWidth(int); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @IntRange(from=1) public final int getMaxLines(); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @Nullable public android.graphics.Paint.FontMetrics getMinimumFontMetrics(); - method public int getOffsetForHorizontal(int, float); - method public int getOffsetToLeftOf(int); - method public int getOffsetToRightOf(int); - method @NonNull public final android.text.TextPaint getPaint(); - method public final android.text.Layout.Alignment getParagraphAlignment(int); - method public abstract int getParagraphDirection(int); - method public final int getParagraphLeft(int); - method public final int getParagraphRight(int); - method public float getPrimaryHorizontal(int); - method @Nullable public int[] getRangeForRect(@NonNull android.graphics.RectF, @NonNull android.text.SegmentFinder, @NonNull android.text.Layout.TextInclusionStrategy); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @Nullable public final int[] getRightIndents(); - method public float getSecondaryHorizontal(int); - method public void getSelectionPath(int, int, android.graphics.Path); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public boolean getShiftDrawingOffsetForStartOverhang(); - method public final float getSpacingAdd(); - method public final float getSpacingMultiplier(); - method @NonNull public final CharSequence getText(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public final android.text.TextDirectionHeuristic getTextDirectionHeuristic(); - method public abstract int getTopPadding(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public boolean getUseBoundsForWidth(); - method @IntRange(from=0) public final int getWidth(); - method public final void increaseWidthTo(int); - method public boolean isFallbackLineSpacingEnabled(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final boolean isFontPaddingIncluded(); - method public boolean isRtlCharAt(int); - method protected final boolean isSpanned(); - field public static final int BREAK_STRATEGY_BALANCED = 2; // 0x2 - field public static final int BREAK_STRATEGY_HIGH_QUALITY = 1; // 0x1 - field public static final int BREAK_STRATEGY_SIMPLE = 0; // 0x0 - field public static final float DEFAULT_LINESPACING_ADDITION = 0.0f; - field public static final float DEFAULT_LINESPACING_MULTIPLIER = 1.0f; - field public static final int DIR_LEFT_TO_RIGHT = 1; // 0x1 - field public static final int DIR_RIGHT_TO_LEFT = -1; // 0xffffffff - field public static final int HYPHENATION_FREQUENCY_FULL = 2; // 0x2 - field public static final int HYPHENATION_FREQUENCY_FULL_FAST = 4; // 0x4 - field public static final int HYPHENATION_FREQUENCY_NONE = 0; // 0x0 - field public static final int HYPHENATION_FREQUENCY_NORMAL = 1; // 0x1 - field public static final int HYPHENATION_FREQUENCY_NORMAL_FAST = 3; // 0x3 - field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_ANY_OVERLAP; - field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_CONTAINS_ALL; - field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_CONTAINS_CENTER; - field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int JUSTIFICATION_MODE_INTER_CHARACTER = 2; // 0x2 - field public static final int JUSTIFICATION_MODE_INTER_WORD = 1; // 0x1 - field public static final int JUSTIFICATION_MODE_NONE = 0; // 0x0 - } - - public enum Layout.Alignment { - enum_constant public static final android.text.Layout.Alignment ALIGN_CENTER; - enum_constant public static final android.text.Layout.Alignment ALIGN_NORMAL; - enum_constant public static final android.text.Layout.Alignment ALIGN_OPPOSITE; - } - - @FlaggedApi("com.android.text.flags.use_bounds_for_width") public static final class Layout.Builder { - ctor public Layout.Builder(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.text.TextPaint, @IntRange(from=0) int); - method @NonNull public android.text.Layout build(); - method @NonNull public android.text.Layout.Builder setAlignment(@NonNull android.text.Layout.Alignment); - method @NonNull public android.text.Layout.Builder setBreakStrategy(int); - method @NonNull public android.text.Layout.Builder setEllipsize(@Nullable android.text.TextUtils.TruncateAt); - method @NonNull public android.text.Layout.Builder setEllipsizedWidth(@IntRange(from=0) int); - method @NonNull public android.text.Layout.Builder setFallbackLineSpacingEnabled(boolean); - method @NonNull public android.text.Layout.Builder setFontPaddingIncluded(boolean); - method @NonNull public android.text.Layout.Builder setHyphenationFrequency(int); - method @NonNull public android.text.Layout.Builder setJustificationMode(int); - method @NonNull public android.text.Layout.Builder setLeftIndents(@Nullable int[]); - method @NonNull public android.text.Layout.Builder setLineBreakConfig(@NonNull android.graphics.text.LineBreakConfig); - method @NonNull public android.text.Layout.Builder setLineSpacingAmount(float); - method @NonNull public android.text.Layout.Builder setLineSpacingMultiplier(@FloatRange(from=0) float); - method @NonNull public android.text.Layout.Builder setMaxLines(@IntRange(from=1) int); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @NonNull public android.text.Layout.Builder setMinimumFontMetrics(@Nullable android.graphics.Paint.FontMetrics); - method @NonNull public android.text.Layout.Builder setRightIndents(@Nullable int[]); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.Layout.Builder setShiftDrawingOffsetForStartOverhang(boolean); - method @NonNull public android.text.Layout.Builder setTextDirectionHeuristic(@NonNull android.text.TextDirectionHeuristic); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.Layout.Builder setUseBoundsForWidth(boolean); - } - - public static class Layout.Directions { - } - - @java.lang.FunctionalInterface public static interface Layout.TextInclusionStrategy { - method public boolean isSegmentInside(@NonNull android.graphics.RectF, @NonNull android.graphics.RectF); - } - - @Deprecated public abstract class LoginFilter implements android.text.InputFilter { - method @Deprecated public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); - method @Deprecated public abstract boolean isAllowed(char); - method @Deprecated public void onInvalidCharacter(char); - method @Deprecated public void onStart(); - method @Deprecated public void onStop(); - } - - @Deprecated public static class LoginFilter.PasswordFilterGMail extends android.text.LoginFilter { - ctor @Deprecated public LoginFilter.PasswordFilterGMail(); - ctor @Deprecated public LoginFilter.PasswordFilterGMail(boolean); - method @Deprecated public boolean isAllowed(char); - } - - @Deprecated public static class LoginFilter.UsernameFilterGMail extends android.text.LoginFilter { - ctor @Deprecated public LoginFilter.UsernameFilterGMail(); - ctor @Deprecated public LoginFilter.UsernameFilterGMail(boolean); - method @Deprecated public boolean isAllowed(char); - } - - @Deprecated public static class LoginFilter.UsernameFilterGeneric extends android.text.LoginFilter { - ctor @Deprecated public LoginFilter.UsernameFilterGeneric(); - ctor @Deprecated public LoginFilter.UsernameFilterGeneric(boolean); - method @Deprecated public boolean isAllowed(char); - } - - public interface NoCopySpan { - } - - public static class NoCopySpan.Concrete implements android.text.NoCopySpan { - ctor public NoCopySpan.Concrete(); - } - - public interface ParcelableSpan extends android.os.Parcelable { - method public int getSpanTypeId(); - } - - public class PrecomputedText implements android.text.Spannable { - method public char charAt(int); - method public static android.text.PrecomputedText create(@NonNull CharSequence, @NonNull android.text.PrecomputedText.Params); - method public void getBounds(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.Rect); - method public void getFontMetricsInt(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.Paint.FontMetricsInt); - method @IntRange(from=0) public int getParagraphCount(); - method @IntRange(from=0) public int getParagraphEnd(@IntRange(from=0) int); - method @IntRange(from=0) public int getParagraphStart(@IntRange(from=0) int); - method @NonNull public android.text.PrecomputedText.Params getParams(); - method public int getSpanEnd(Object); - method public int getSpanFlags(Object); - method public int getSpanStart(Object); - method public T[] getSpans(int, int, Class); - method @FloatRange(from=0) public float getWidth(@IntRange(from=0) int, @IntRange(from=0) int); - method public int length(); - method public int nextSpanTransition(int, int, Class); - method public void removeSpan(Object); - method public void setSpan(Object, int, int, int); - method public CharSequence subSequence(int, int); - method public String toString(); - } - - public static final class PrecomputedText.Params { - method public int getBreakStrategy(); - method public int getHyphenationFrequency(); - method @NonNull public android.graphics.text.LineBreakConfig getLineBreakConfig(); - method @NonNull public android.text.TextDirectionHeuristic getTextDirection(); - method @NonNull public android.text.TextPaint getTextPaint(); - } - - public static class PrecomputedText.Params.Builder { - ctor public PrecomputedText.Params.Builder(@NonNull android.text.TextPaint); - ctor public PrecomputedText.Params.Builder(@NonNull android.text.PrecomputedText.Params); - method @NonNull public android.text.PrecomputedText.Params build(); - method public android.text.PrecomputedText.Params.Builder setBreakStrategy(int); - method public android.text.PrecomputedText.Params.Builder setHyphenationFrequency(int); - method @NonNull public android.text.PrecomputedText.Params.Builder setLineBreakConfig(@NonNull android.graphics.text.LineBreakConfig); - method public android.text.PrecomputedText.Params.Builder setTextDirection(@NonNull android.text.TextDirectionHeuristic); - } - - public abstract class SegmentFinder { - ctor public SegmentFinder(); - method public abstract int nextEndBoundary(@IntRange(from=0) int); - method public abstract int nextStartBoundary(@IntRange(from=0) int); - method public abstract int previousEndBoundary(@IntRange(from=0) int); - method public abstract int previousStartBoundary(@IntRange(from=0) int); - field public static final int DONE = -1; // 0xffffffff - } - - public static class SegmentFinder.PrescribedSegmentFinder extends android.text.SegmentFinder { - ctor public SegmentFinder.PrescribedSegmentFinder(@NonNull int[]); - method public int nextEndBoundary(@IntRange(from=0) int); - method public int nextStartBoundary(@IntRange(from=0) int); - method public int previousEndBoundary(@IntRange(from=0) int); - method public int previousStartBoundary(@IntRange(from=0) int); - } - - public class Selection { - method public static boolean extendDown(android.text.Spannable, android.text.Layout); - method public static boolean extendLeft(android.text.Spannable, android.text.Layout); - method public static boolean extendRight(android.text.Spannable, android.text.Layout); - method public static final void extendSelection(android.text.Spannable, int); - method public static boolean extendToLeftEdge(android.text.Spannable, android.text.Layout); - method public static boolean extendToParagraphEnd(@NonNull android.text.Spannable); - method public static boolean extendToParagraphStart(@NonNull android.text.Spannable); - method public static boolean extendToRightEdge(android.text.Spannable, android.text.Layout); - method public static boolean extendUp(android.text.Spannable, android.text.Layout); - method public static final int getSelectionEnd(CharSequence); - method public static final int getSelectionStart(CharSequence); - method public static boolean moveDown(android.text.Spannable, android.text.Layout); - method public static boolean moveLeft(android.text.Spannable, android.text.Layout); - method public static boolean moveRight(android.text.Spannable, android.text.Layout); - method public static boolean moveToLeftEdge(android.text.Spannable, android.text.Layout); - method public static boolean moveToParagraphEnd(@NonNull android.text.Spannable, @NonNull android.text.Layout); - method public static boolean moveToParagraphStart(@NonNull android.text.Spannable, @NonNull android.text.Layout); - method public static boolean moveToRightEdge(android.text.Spannable, android.text.Layout); - method public static boolean moveUp(android.text.Spannable, android.text.Layout); - method public static final void removeSelection(android.text.Spannable); - method public static final void selectAll(android.text.Spannable); - method public static void setSelection(android.text.Spannable, int, int); - method public static final void setSelection(android.text.Spannable, int); - field public static final Object SELECTION_END; - field public static final Object SELECTION_START; - } - - public interface SpanWatcher extends android.text.NoCopySpan { - method public void onSpanAdded(android.text.Spannable, Object, int, int); - method public void onSpanChanged(android.text.Spannable, Object, int, int, int, int); - method public void onSpanRemoved(android.text.Spannable, Object, int, int); - } - - public interface Spannable extends android.text.Spanned { - method public void removeSpan(Object); - method public void setSpan(Object, int, int, int); - } - - public static class Spannable.Factory { - ctor public Spannable.Factory(); - method public static android.text.Spannable.Factory getInstance(); - method public android.text.Spannable newSpannable(CharSequence); - } - - public class SpannableString implements java.lang.CharSequence android.text.GetChars android.text.Spannable { - ctor public SpannableString(CharSequence); - method public final char charAt(int); - method public final void getChars(int, int, char[], int); - method public int getSpanEnd(Object); - method public int getSpanFlags(Object); - method public int getSpanStart(Object); - method public T[] getSpans(int, int, Class); - method public final int length(); - method public int nextSpanTransition(int, int, Class); - method public void removeSpan(Object); - method public void setSpan(Object, int, int, int); - method public final CharSequence subSequence(int, int); - method public final String toString(); - method public static android.text.SpannableString valueOf(CharSequence); - } - - public class SpannableStringBuilder implements java.lang.Appendable java.lang.CharSequence android.text.Editable android.text.GetChars android.text.Spannable { - ctor public SpannableStringBuilder(); - ctor public SpannableStringBuilder(CharSequence); - ctor public SpannableStringBuilder(CharSequence, int, int); - method public android.text.SpannableStringBuilder append(CharSequence); - method public android.text.SpannableStringBuilder append(CharSequence, Object, int); - method public android.text.SpannableStringBuilder append(CharSequence, int, int); - method public android.text.SpannableStringBuilder append(char); - method public char charAt(int); - method public void clear(); - method public void clearSpans(); - method public android.text.SpannableStringBuilder delete(int, int); - method public void getChars(int, int, char[], int); - method public android.text.InputFilter[] getFilters(); - method public int getSpanEnd(Object); - method public int getSpanFlags(Object); - method public int getSpanStart(Object); - method public T[] getSpans(int, int, @Nullable Class); - method @Deprecated public int getTextRunCursor(int, int, int, int, int, android.graphics.Paint); - method public int getTextWatcherDepth(); - method public android.text.SpannableStringBuilder insert(int, CharSequence, int, int); - method public android.text.SpannableStringBuilder insert(int, CharSequence); - method public int length(); - method public int nextSpanTransition(int, int, Class); - method public void removeSpan(Object); - method public android.text.SpannableStringBuilder replace(int, int, CharSequence); - method public android.text.SpannableStringBuilder replace(int, int, CharSequence, int, int); - method public void setFilters(android.text.InputFilter[]); - method public void setSpan(Object, int, int, int); - method public CharSequence subSequence(int, int); - method public String toString(); - method public static android.text.SpannableStringBuilder valueOf(CharSequence); - } - - public interface Spanned extends java.lang.CharSequence { - method public int getSpanEnd(Object); - method public int getSpanFlags(Object); - method public int getSpanStart(Object); - method public T[] getSpans(int, int, Class); - method public int nextSpanTransition(int, int, Class); - field public static final int SPAN_COMPOSING = 256; // 0x100 - field public static final int SPAN_EXCLUSIVE_EXCLUSIVE = 33; // 0x21 - field public static final int SPAN_EXCLUSIVE_INCLUSIVE = 34; // 0x22 - field public static final int SPAN_INCLUSIVE_EXCLUSIVE = 17; // 0x11 - field public static final int SPAN_INCLUSIVE_INCLUSIVE = 18; // 0x12 - field public static final int SPAN_INTERMEDIATE = 512; // 0x200 - field public static final int SPAN_MARK_MARK = 17; // 0x11 - field public static final int SPAN_MARK_POINT = 18; // 0x12 - field public static final int SPAN_PARAGRAPH = 51; // 0x33 - field public static final int SPAN_POINT_MARK = 33; // 0x21 - field public static final int SPAN_POINT_MARK_MASK = 51; // 0x33 - field public static final int SPAN_POINT_POINT = 34; // 0x22 - field public static final int SPAN_PRIORITY = 16711680; // 0xff0000 - field public static final int SPAN_PRIORITY_SHIFT = 16; // 0x10 - field public static final int SPAN_USER = -16777216; // 0xff000000 - field public static final int SPAN_USER_SHIFT = 24; // 0x18 - } - - public final class SpannedString implements java.lang.CharSequence android.text.GetChars android.text.Spanned { - ctor public SpannedString(CharSequence); - method public final char charAt(int); - method public final void getChars(int, int, char[], int); - method public int getSpanEnd(Object); - method public int getSpanFlags(Object); - method public int getSpanStart(Object); - method public T[] getSpans(int, int, Class); - method public final int length(); - method public int nextSpanTransition(int, int, Class); - method public CharSequence subSequence(int, int); - method public static android.text.SpannedString valueOf(CharSequence); - } - - public class StaticLayout extends android.text.Layout { - ctor @Deprecated public StaticLayout(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, boolean); - ctor @Deprecated public StaticLayout(CharSequence, int, int, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, boolean); - ctor @Deprecated public StaticLayout(CharSequence, int, int, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, boolean, android.text.TextUtils.TruncateAt, int); - method public int getBottomPadding(); - method public int getEllipsisCount(int); - method public int getEllipsisStart(int); - method public boolean getLineContainsTab(int); - method public int getLineCount(); - method public int getLineDescent(int); - method public final android.text.Layout.Directions getLineDirections(int); - method public int getLineStart(int); - method public int getLineTop(int); - method public int getParagraphDirection(int); - method public int getTopPadding(); - } - - public static final class StaticLayout.Builder { - method @NonNull public android.text.StaticLayout build(); - method @NonNull public static android.text.StaticLayout.Builder obtain(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.text.TextPaint, @IntRange(from=0) int); - method @NonNull public android.text.StaticLayout.Builder setAlignment(@NonNull android.text.Layout.Alignment); - method @NonNull public android.text.StaticLayout.Builder setBreakStrategy(int); - method @NonNull public android.text.StaticLayout.Builder setEllipsize(@Nullable android.text.TextUtils.TruncateAt); - method @NonNull public android.text.StaticLayout.Builder setEllipsizedWidth(@IntRange(from=0) int); - method @NonNull public android.text.StaticLayout.Builder setHyphenationFrequency(int); - method @NonNull public android.text.StaticLayout.Builder setIncludePad(boolean); - method @NonNull public android.text.StaticLayout.Builder setIndents(@Nullable int[], @Nullable int[]); - method @NonNull public android.text.StaticLayout.Builder setJustificationMode(int); - method @NonNull public android.text.StaticLayout.Builder setLineBreakConfig(@NonNull android.graphics.text.LineBreakConfig); - method @NonNull public android.text.StaticLayout.Builder setLineSpacing(float, @FloatRange(from=0.0) float); - method @NonNull public android.text.StaticLayout.Builder setMaxLines(@IntRange(from=0) int); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @NonNull public android.text.StaticLayout.Builder setMinimumFontMetrics(@Nullable android.graphics.Paint.FontMetrics); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.StaticLayout.Builder setShiftDrawingOffsetForStartOverhang(boolean); - method public android.text.StaticLayout.Builder setText(CharSequence); - method @NonNull public android.text.StaticLayout.Builder setTextDirection(@NonNull android.text.TextDirectionHeuristic); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.StaticLayout.Builder setUseBoundsForWidth(boolean); - method @NonNull public android.text.StaticLayout.Builder setUseLineSpacingFromFallbacks(boolean); - } - - public interface TextDirectionHeuristic { - method public boolean isRtl(char[], int, int); - method public boolean isRtl(CharSequence, int, int); - } - - public class TextDirectionHeuristics { - ctor public TextDirectionHeuristics(); - field public static final android.text.TextDirectionHeuristic ANYRTL_LTR; - field public static final android.text.TextDirectionHeuristic FIRSTSTRONG_LTR; - field public static final android.text.TextDirectionHeuristic FIRSTSTRONG_RTL; - field public static final android.text.TextDirectionHeuristic LOCALE; - field public static final android.text.TextDirectionHeuristic LTR; - field public static final android.text.TextDirectionHeuristic RTL; - } - - public class TextPaint extends android.graphics.Paint { - ctor public TextPaint(); - ctor public TextPaint(int); - ctor public TextPaint(android.graphics.Paint); - method public void set(android.text.TextPaint); - field public int baselineShift; - field @ColorInt public int bgColor; - field public float density; - field public int[] drawableState; - field @ColorInt public int linkColor; - field @ColorInt public int underlineColor; - field @Px public float underlineThickness; - } - - public class TextShaper { - method public static void shapeText(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.text.TextDirectionHeuristic, @NonNull android.text.TextPaint, @NonNull android.text.TextShaper.GlyphsConsumer); - } - - public static interface TextShaper.GlyphsConsumer { - method public void accept(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.text.PositionedGlyphs, @NonNull android.text.TextPaint); - } - - public class TextUtils { - method @Deprecated public static CharSequence commaEllipsize(CharSequence, android.text.TextPaint, float, String, String); - method public static CharSequence concat(java.lang.CharSequence...); - method public static void copySpansFrom(android.text.Spanned, int, int, Class, android.text.Spannable, int); - method public static void dumpSpans(CharSequence, android.util.Printer, String); - method public static CharSequence ellipsize(CharSequence, android.text.TextPaint, float, android.text.TextUtils.TruncateAt); - method public static CharSequence ellipsize(CharSequence, android.text.TextPaint, float, android.text.TextUtils.TruncateAt, boolean, @Nullable android.text.TextUtils.EllipsizeCallback); - method public static boolean equals(CharSequence, CharSequence); - method public static CharSequence expandTemplate(CharSequence, java.lang.CharSequence...); - method public static int getCapsMode(CharSequence, int, int); - method public static void getChars(CharSequence, int, int, char[], int); - method public static int getLayoutDirectionFromLocale(java.util.Locale); - method public static int getOffsetAfter(CharSequence, int); - method public static int getOffsetBefore(CharSequence, int); - method @Deprecated public static CharSequence getReverse(CharSequence, int, int); - method public static int getTrimmedLength(CharSequence); - method public static String htmlEncode(String); - method public static int indexOf(CharSequence, char); - method public static int indexOf(CharSequence, char, int); - method public static int indexOf(CharSequence, char, int, int); - method public static int indexOf(CharSequence, CharSequence); - method public static int indexOf(CharSequence, CharSequence, int); - method public static int indexOf(CharSequence, CharSequence, int, int); - method public static boolean isDigitsOnly(CharSequence); - method public static boolean isEmpty(@Nullable CharSequence); - method public static boolean isGraphic(CharSequence); - method @Deprecated public static boolean isGraphic(char); - method public static String join(@NonNull CharSequence, @NonNull Object[]); - method public static String join(@NonNull CharSequence, @NonNull Iterable); - method public static int lastIndexOf(CharSequence, char); - method public static int lastIndexOf(CharSequence, char, int); - method public static int lastIndexOf(CharSequence, char, int, int); - method public static CharSequence listEllipsize(@Nullable android.content.Context, @Nullable java.util.List, @NonNull String, @NonNull android.text.TextPaint, @FloatRange(from=0.0, fromInclusive=false) float, @PluralsRes int); - method @NonNull public static CharSequence makeSafeForPresentation(@NonNull String, @IntRange(from=0) int, @FloatRange(from=0) float, int); - method public static boolean regionMatches(CharSequence, int, CharSequence, int, int); - method public static CharSequence replace(CharSequence, String[], CharSequence[]); - method public static String[] split(String, String); - method public static String[] split(String, java.util.regex.Pattern); - method public static CharSequence stringOrSpannedString(CharSequence); - method public static String substring(CharSequence, int, int); - method public static void writeToParcel(@Nullable CharSequence, @NonNull android.os.Parcel, int); - field public static final int CAP_MODE_CHARACTERS = 4096; // 0x1000 - field public static final int CAP_MODE_SENTENCES = 16384; // 0x4000 - field public static final int CAP_MODE_WORDS = 8192; // 0x2000 - field public static final android.os.Parcelable.Creator CHAR_SEQUENCE_CREATOR; - field public static final int SAFE_STRING_FLAG_FIRST_LINE = 4; // 0x4 - field public static final int SAFE_STRING_FLAG_SINGLE_LINE = 2; // 0x2 - field public static final int SAFE_STRING_FLAG_TRIM = 1; // 0x1 - } - - public static interface TextUtils.EllipsizeCallback { - method public void ellipsized(int, int); - } - - public static class TextUtils.SimpleStringSplitter implements java.util.Iterator android.text.TextUtils.StringSplitter { - ctor public TextUtils.SimpleStringSplitter(char); - method public boolean hasNext(); - method public java.util.Iterator iterator(); - method public String next(); - method public void remove(); - method public void setString(String); - } - - public static interface TextUtils.StringSplitter extends java.lang.Iterable { - method public void setString(String); - } - - public enum TextUtils.TruncateAt { - enum_constant public static final android.text.TextUtils.TruncateAt END; - enum_constant public static final android.text.TextUtils.TruncateAt MARQUEE; - enum_constant public static final android.text.TextUtils.TruncateAt MIDDLE; - enum_constant public static final android.text.TextUtils.TruncateAt START; - } - - public interface TextWatcher extends android.text.NoCopySpan { - method public void afterTextChanged(android.text.Editable); - method public void beforeTextChanged(CharSequence, int, int, int); - method public void onTextChanged(CharSequence, int, int, int); - } - - public class WordSegmentFinder extends android.text.SegmentFinder { - ctor public WordSegmentFinder(@NonNull CharSequence, @NonNull android.icu.util.ULocale); - method public int nextEndBoundary(@IntRange(from=0) int); - method public int nextStartBoundary(@IntRange(from=0) int); - method public int previousEndBoundary(@IntRange(from=0) int); - method public int previousStartBoundary(@IntRange(from=0) int); - } - -} - -package android.text.format { - - public class DateFormat { - ctor public DateFormat(); - method public static CharSequence format(CharSequence, long); - method public static CharSequence format(CharSequence, java.util.Date); - method public static CharSequence format(CharSequence, java.util.Calendar); - method public static String getBestDateTimePattern(java.util.Locale, String); - method public static java.text.DateFormat getDateFormat(android.content.Context); - method public static char[] getDateFormatOrder(android.content.Context); - method public static java.text.DateFormat getLongDateFormat(android.content.Context); - method public static java.text.DateFormat getMediumDateFormat(android.content.Context); - method public static java.text.DateFormat getTimeFormat(android.content.Context); - method public static boolean is24HourFormat(android.content.Context); - } - - public class DateUtils { - ctor public DateUtils(); - method public static String formatDateRange(android.content.Context, long, long, int); - method public static java.util.Formatter formatDateRange(android.content.Context, java.util.Formatter, long, long, int); - method public static java.util.Formatter formatDateRange(android.content.Context, java.util.Formatter, long, long, int, String); - method public static String formatDateTime(android.content.Context, long, int); - method public static String formatElapsedTime(long); - method public static String formatElapsedTime(StringBuilder, long); - method public static final CharSequence formatSameDayTime(long, long, int, int); - method @Deprecated public static String getAMPMString(int); - method @Deprecated public static String getDayOfWeekString(int, int); - method @Deprecated public static String getMonthString(int, int); - method public static CharSequence getRelativeDateTimeString(android.content.Context, long, long, long, int); - method public static CharSequence getRelativeTimeSpanString(long); - method public static CharSequence getRelativeTimeSpanString(long, long, long); - method public static CharSequence getRelativeTimeSpanString(long, long, long, int); - method public static CharSequence getRelativeTimeSpanString(android.content.Context, long, boolean); - method public static CharSequence getRelativeTimeSpanString(android.content.Context, long); - method public static boolean isToday(long); - field @Deprecated public static final String ABBREV_MONTH_FORMAT = "%b"; - field public static final String ABBREV_WEEKDAY_FORMAT = "%a"; - field public static final long DAY_IN_MILLIS = 86400000L; // 0x5265c00L - field @Deprecated public static final int FORMAT_12HOUR = 64; // 0x40 - field @Deprecated public static final int FORMAT_24HOUR = 128; // 0x80 - field public static final int FORMAT_ABBREV_ALL = 524288; // 0x80000 - field public static final int FORMAT_ABBREV_MONTH = 65536; // 0x10000 - field public static final int FORMAT_ABBREV_RELATIVE = 262144; // 0x40000 - field public static final int FORMAT_ABBREV_TIME = 16384; // 0x4000 - field public static final int FORMAT_ABBREV_WEEKDAY = 32768; // 0x8000 - field @Deprecated public static final int FORMAT_CAP_AMPM = 256; // 0x100 - field @Deprecated public static final int FORMAT_CAP_MIDNIGHT = 4096; // 0x1000 - field @Deprecated public static final int FORMAT_CAP_NOON = 1024; // 0x400 - field @Deprecated public static final int FORMAT_CAP_NOON_MIDNIGHT = 5120; // 0x1400 - field public static final int FORMAT_NO_MIDNIGHT = 2048; // 0x800 - field public static final int FORMAT_NO_MONTH_DAY = 32; // 0x20 - field public static final int FORMAT_NO_NOON = 512; // 0x200 - field @Deprecated public static final int FORMAT_NO_NOON_MIDNIGHT = 2560; // 0xa00 - field public static final int FORMAT_NO_YEAR = 8; // 0x8 - field public static final int FORMAT_NUMERIC_DATE = 131072; // 0x20000 - field public static final int FORMAT_SHOW_DATE = 16; // 0x10 - field public static final int FORMAT_SHOW_TIME = 1; // 0x1 - field public static final int FORMAT_SHOW_WEEKDAY = 2; // 0x2 - field public static final int FORMAT_SHOW_YEAR = 4; // 0x4 - field @Deprecated public static final int FORMAT_UTC = 8192; // 0x2000 - field public static final long HOUR_IN_MILLIS = 3600000L; // 0x36ee80L - field @Deprecated public static final String HOUR_MINUTE_24 = "%H:%M"; - field @Deprecated public static final int LENGTH_LONG = 10; // 0xa - field @Deprecated public static final int LENGTH_MEDIUM = 20; // 0x14 - field @Deprecated public static final int LENGTH_SHORT = 30; // 0x1e - field @Deprecated public static final int LENGTH_SHORTER = 40; // 0x28 - field @Deprecated public static final int LENGTH_SHORTEST = 50; // 0x32 - field public static final long MINUTE_IN_MILLIS = 60000L; // 0xea60L - field public static final String MONTH_DAY_FORMAT = "%-d"; - field public static final String MONTH_FORMAT = "%B"; - field public static final String NUMERIC_MONTH_FORMAT = "%m"; - field public static final long SECOND_IN_MILLIS = 1000L; // 0x3e8L - field public static final String WEEKDAY_FORMAT = "%A"; - field public static final long WEEK_IN_MILLIS = 604800000L; // 0x240c8400L - field public static final String YEAR_FORMAT = "%Y"; - field public static final String YEAR_FORMAT_TWO_DIGITS = "%g"; - field @Deprecated public static final long YEAR_IN_MILLIS = 31449600000L; // 0x7528ad000L - field @Deprecated public static final int[] sameMonthTable; - field @Deprecated public static final int[] sameYearTable; - } - - public final class Formatter { - ctor public Formatter(); - method public static String formatFileSize(@Nullable android.content.Context, long); - method @Deprecated public static String formatIpAddress(int); - method public static String formatShortFileSize(@Nullable android.content.Context, long); - } - - @Deprecated public class Time { - ctor @Deprecated public Time(String); - ctor @Deprecated public Time(); - ctor @Deprecated public Time(android.text.format.Time); - method @Deprecated public boolean after(android.text.format.Time); - method @Deprecated public boolean before(android.text.format.Time); - method @Deprecated public void clear(String); - method @Deprecated public static int compare(android.text.format.Time, android.text.format.Time); - method @Deprecated public String format(String); - method @Deprecated public String format2445(); - method @Deprecated public String format3339(boolean); - method @Deprecated public int getActualMaximum(int); - method @Deprecated public static String getCurrentTimezone(); - method @Deprecated public static int getJulianDay(long, long); - method @Deprecated public static int getJulianMondayFromWeeksSinceEpoch(int); - method @Deprecated public int getWeekNumber(); - method @Deprecated public static int getWeeksSinceEpochFromJulianDay(int, int); - method @Deprecated public static boolean isEpoch(android.text.format.Time); - method @Deprecated public long normalize(boolean); - method @Deprecated public boolean parse(String); - method @Deprecated public boolean parse3339(String); - method @Deprecated public void set(long); - method @Deprecated public void set(android.text.format.Time); - method @Deprecated public void set(int, int, int, int, int, int); - method @Deprecated public void set(int, int, int); - method @Deprecated public long setJulianDay(int); - method @Deprecated public void setToNow(); - method @Deprecated public void switchTimezone(String); - method @Deprecated public long toMillis(boolean); - field @Deprecated public static final int EPOCH_JULIAN_DAY = 2440588; // 0x253d8c - field @Deprecated public static final int FRIDAY = 5; // 0x5 - field @Deprecated public static final int HOUR = 3; // 0x3 - field @Deprecated public static final int MINUTE = 2; // 0x2 - field @Deprecated public static final int MONDAY = 1; // 0x1 - field @Deprecated public static final int MONDAY_BEFORE_JULIAN_EPOCH = 2440585; // 0x253d89 - field @Deprecated public static final int MONTH = 5; // 0x5 - field @Deprecated public static final int MONTH_DAY = 4; // 0x4 - field @Deprecated public static final int SATURDAY = 6; // 0x6 - field @Deprecated public static final int SECOND = 1; // 0x1 - field @Deprecated public static final int SUNDAY = 0; // 0x0 - field @Deprecated public static final int THURSDAY = 4; // 0x4 - field @Deprecated public static final String TIMEZONE_UTC = "UTC"; - field @Deprecated public static final int TUESDAY = 2; // 0x2 - field @Deprecated public static final int WEDNESDAY = 3; // 0x3 - field @Deprecated public static final int WEEK_DAY = 7; // 0x7 - field @Deprecated public static final int WEEK_NUM = 9; // 0x9 - field @Deprecated public static final int YEAR = 6; // 0x6 - field @Deprecated public static final int YEAR_DAY = 8; // 0x8 - field @Deprecated public boolean allDay; - field @Deprecated public long gmtoff; - field @Deprecated public int hour; - field @Deprecated public int isDst; - field @Deprecated public int minute; - field @Deprecated public int month; - field @Deprecated public int monthDay; - field @Deprecated public int second; - field @Deprecated public String timezone; - field @Deprecated public int weekDay; - field @Deprecated public int year; - field @Deprecated public int yearDay; - } - -} - -package android.text.method { - - public class ArrowKeyMovementMethod extends android.text.method.BaseMovementMethod implements android.text.method.MovementMethod { - ctor public ArrowKeyMovementMethod(); - method public static android.text.method.MovementMethod getInstance(); - } - - public abstract class BaseKeyListener extends android.text.method.MetaKeyKeyListener implements android.text.method.KeyListener { - ctor public BaseKeyListener(); - method public boolean backspace(android.view.View, android.text.Editable, int, android.view.KeyEvent); - method public boolean forwardDelete(android.view.View, android.text.Editable, int, android.view.KeyEvent); - method public boolean onKeyOther(android.view.View, android.text.Editable, android.view.KeyEvent); - } - - public class BaseMovementMethod implements android.text.method.MovementMethod { - ctor public BaseMovementMethod(); - method protected boolean bottom(android.widget.TextView, android.text.Spannable); - method public boolean canSelectArbitrarily(); - method protected boolean down(android.widget.TextView, android.text.Spannable); - method protected boolean end(android.widget.TextView, android.text.Spannable); - method protected int getMovementMetaState(android.text.Spannable, android.view.KeyEvent); - method protected boolean handleMovementKey(android.widget.TextView, android.text.Spannable, int, int, android.view.KeyEvent); - method protected boolean home(android.widget.TextView, android.text.Spannable); - method public void initialize(android.widget.TextView, android.text.Spannable); - method protected boolean left(android.widget.TextView, android.text.Spannable); - method protected boolean lineEnd(android.widget.TextView, android.text.Spannable); - method protected boolean lineStart(android.widget.TextView, android.text.Spannable); - method public boolean nextParagraph(@NonNull android.widget.TextView, @NonNull android.text.Spannable); - method public boolean onGenericMotionEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); - method public boolean onKeyDown(android.widget.TextView, android.text.Spannable, int, android.view.KeyEvent); - method public boolean onKeyOther(android.widget.TextView, android.text.Spannable, android.view.KeyEvent); - method public boolean onKeyUp(android.widget.TextView, android.text.Spannable, int, android.view.KeyEvent); - method public void onTakeFocus(android.widget.TextView, android.text.Spannable, int); - method public boolean onTouchEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); - method public boolean onTrackballEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); - method protected boolean pageDown(android.widget.TextView, android.text.Spannable); - method protected boolean pageUp(android.widget.TextView, android.text.Spannable); - method public boolean previousParagraph(@NonNull android.widget.TextView, @NonNull android.text.Spannable); - method protected boolean right(android.widget.TextView, android.text.Spannable); - method protected boolean top(android.widget.TextView, android.text.Spannable); - method protected boolean up(android.widget.TextView, android.text.Spannable); - } - - public class CharacterPickerDialog extends android.app.Dialog implements android.widget.AdapterView.OnItemClickListener android.view.View.OnClickListener { - ctor public CharacterPickerDialog(android.content.Context, android.view.View, android.text.Editable, String, boolean); - method public void onClick(android.view.View); - method public void onItemClick(android.widget.AdapterView, android.view.View, int, long); - } - - public class DateKeyListener extends android.text.method.NumberKeyListener { - ctor @Deprecated public DateKeyListener(); - ctor public DateKeyListener(@Nullable java.util.Locale); - method @NonNull protected char[] getAcceptedChars(); - method public int getInputType(); - method @Deprecated @NonNull public static android.text.method.DateKeyListener getInstance(); - method @NonNull public static android.text.method.DateKeyListener getInstance(@Nullable java.util.Locale); - field @Deprecated public static final char[] CHARACTERS; - } - - public class DateTimeKeyListener extends android.text.method.NumberKeyListener { - ctor @Deprecated public DateTimeKeyListener(); - ctor public DateTimeKeyListener(@Nullable java.util.Locale); - method @NonNull protected char[] getAcceptedChars(); - method public int getInputType(); - method @Deprecated @NonNull public static android.text.method.DateTimeKeyListener getInstance(); - method @NonNull public static android.text.method.DateTimeKeyListener getInstance(@Nullable java.util.Locale); - field @Deprecated public static final char[] CHARACTERS; - } - - public class DialerKeyListener extends android.text.method.NumberKeyListener { - ctor public DialerKeyListener(); - method protected char[] getAcceptedChars(); - method public int getInputType(); - method public static android.text.method.DialerKeyListener getInstance(); - field public static final char[] CHARACTERS; - } - - public class DigitsKeyListener extends android.text.method.NumberKeyListener { - ctor @Deprecated public DigitsKeyListener(); - ctor @Deprecated public DigitsKeyListener(boolean, boolean); - ctor public DigitsKeyListener(@Nullable java.util.Locale); - ctor public DigitsKeyListener(@Nullable java.util.Locale, boolean, boolean); - method protected char[] getAcceptedChars(); - method public int getInputType(); - method @Deprecated @NonNull public static android.text.method.DigitsKeyListener getInstance(); - method @Deprecated @NonNull public static android.text.method.DigitsKeyListener getInstance(boolean, boolean); - method @NonNull public static android.text.method.DigitsKeyListener getInstance(@Nullable java.util.Locale); - method @NonNull public static android.text.method.DigitsKeyListener getInstance(@Nullable java.util.Locale, boolean, boolean); - method @NonNull public static android.text.method.DigitsKeyListener getInstance(@NonNull String); - } - - public class HideReturnsTransformationMethod extends android.text.method.ReplacementTransformationMethod { - ctor public HideReturnsTransformationMethod(); - method public static android.text.method.HideReturnsTransformationMethod getInstance(); - method protected char[] getOriginal(); - method protected char[] getReplacement(); - } - - public interface KeyListener { - method public void clearMetaKeyState(android.view.View, android.text.Editable, int); - method public int getInputType(); - method public boolean onKeyDown(android.view.View, android.text.Editable, int, android.view.KeyEvent); - method public boolean onKeyOther(android.view.View, android.text.Editable, android.view.KeyEvent); - method public boolean onKeyUp(android.view.View, android.text.Editable, int, android.view.KeyEvent); - } - - public class LinkMovementMethod extends android.text.method.ScrollingMovementMethod { - ctor public LinkMovementMethod(); - method public static android.text.method.MovementMethod getInstance(); - } - - public abstract class MetaKeyKeyListener { - ctor public MetaKeyKeyListener(); - method public static void adjustMetaAfterKeypress(android.text.Spannable); - method public static long adjustMetaAfterKeypress(long); - method public void clearMetaKeyState(android.view.View, android.text.Editable, int); - method public static void clearMetaKeyState(android.text.Editable, int); - method public long clearMetaKeyState(long, int); - method public static final int getMetaState(CharSequence); - method public static final int getMetaState(CharSequence, android.view.KeyEvent); - method public static final int getMetaState(CharSequence, int); - method public static final int getMetaState(CharSequence, int, android.view.KeyEvent); - method public static final int getMetaState(long); - method public static final int getMetaState(long, int); - method public static long handleKeyDown(long, int, android.view.KeyEvent); - method public static long handleKeyUp(long, int, android.view.KeyEvent); - method public static boolean isMetaTracker(CharSequence, Object); - method public static boolean isSelectingMetaTracker(CharSequence, Object); - method public boolean onKeyDown(android.view.View, android.text.Editable, int, android.view.KeyEvent); - method public boolean onKeyUp(android.view.View, android.text.Editable, int, android.view.KeyEvent); - method protected static void resetLockedMeta(android.text.Spannable); - method public static long resetLockedMeta(long); - method public static void resetMetaState(android.text.Spannable); - field public static final int META_ALT_LOCKED = 512; // 0x200 - field public static final int META_ALT_ON = 2; // 0x2 - field public static final int META_CAP_LOCKED = 256; // 0x100 - field public static final int META_SHIFT_ON = 1; // 0x1 - field public static final int META_SYM_LOCKED = 1024; // 0x400 - field public static final int META_SYM_ON = 4; // 0x4 - } - - public interface MovementMethod { - method public boolean canSelectArbitrarily(); - method public void initialize(android.widget.TextView, android.text.Spannable); - method public boolean onGenericMotionEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); - method public boolean onKeyDown(android.widget.TextView, android.text.Spannable, int, android.view.KeyEvent); - method public boolean onKeyOther(android.widget.TextView, android.text.Spannable, android.view.KeyEvent); - method public boolean onKeyUp(android.widget.TextView, android.text.Spannable, int, android.view.KeyEvent); - method public void onTakeFocus(android.widget.TextView, android.text.Spannable, int); - method public boolean onTouchEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); - method public boolean onTrackballEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); - } - - public class MultiTapKeyListener extends android.text.method.BaseKeyListener implements android.text.SpanWatcher { - ctor public MultiTapKeyListener(android.text.method.TextKeyListener.Capitalize, boolean); - method public int getInputType(); - method public static android.text.method.MultiTapKeyListener getInstance(boolean, android.text.method.TextKeyListener.Capitalize); - method public void onSpanAdded(android.text.Spannable, Object, int, int); - method public void onSpanChanged(android.text.Spannable, Object, int, int, int, int); - method public void onSpanRemoved(android.text.Spannable, Object, int, int); - } - - public abstract class NumberKeyListener extends android.text.method.BaseKeyListener implements android.text.InputFilter { - ctor public NumberKeyListener(); - method public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); - method @NonNull protected abstract char[] getAcceptedChars(); - method protected int lookup(android.view.KeyEvent, android.text.Spannable); - method protected static boolean ok(char[], char); - } - - public class PasswordTransformationMethod implements android.text.TextWatcher android.text.method.TransformationMethod { - ctor public PasswordTransformationMethod(); - method public void afterTextChanged(android.text.Editable); - method public void beforeTextChanged(CharSequence, int, int, int); - method public static android.text.method.PasswordTransformationMethod getInstance(); - method public CharSequence getTransformation(CharSequence, android.view.View); - method public void onFocusChanged(android.view.View, CharSequence, boolean, int, android.graphics.Rect); - method public void onTextChanged(CharSequence, int, int, int); - } - - public class QwertyKeyListener extends android.text.method.BaseKeyListener { - ctor public QwertyKeyListener(android.text.method.TextKeyListener.Capitalize, boolean); - method public int getInputType(); - method public static android.text.method.QwertyKeyListener getInstance(boolean, android.text.method.TextKeyListener.Capitalize); - method public static android.text.method.QwertyKeyListener getInstanceForFullKeyboard(); - method public static void markAsReplaced(android.text.Spannable, int, int, String); - } - - public abstract class ReplacementTransformationMethod implements android.text.method.TransformationMethod { - ctor public ReplacementTransformationMethod(); - method protected abstract char[] getOriginal(); - method protected abstract char[] getReplacement(); - method public CharSequence getTransformation(CharSequence, android.view.View); - method public void onFocusChanged(android.view.View, CharSequence, boolean, int, android.graphics.Rect); - } - - public class ScrollingMovementMethod extends android.text.method.BaseMovementMethod implements android.text.method.MovementMethod { - ctor public ScrollingMovementMethod(); - method public static android.text.method.MovementMethod getInstance(); - } - - public class SingleLineTransformationMethod extends android.text.method.ReplacementTransformationMethod { - ctor public SingleLineTransformationMethod(); - method public static android.text.method.SingleLineTransformationMethod getInstance(); - method protected char[] getOriginal(); - method protected char[] getReplacement(); - } - - public class TextKeyListener extends android.text.method.BaseKeyListener implements android.text.SpanWatcher { - ctor public TextKeyListener(android.text.method.TextKeyListener.Capitalize, boolean); - method public static void clear(android.text.Editable); - method public int getInputType(); - method public static android.text.method.TextKeyListener getInstance(boolean, android.text.method.TextKeyListener.Capitalize); - method public static android.text.method.TextKeyListener getInstance(); - method public void onSpanAdded(android.text.Spannable, Object, int, int); - method public void onSpanChanged(android.text.Spannable, Object, int, int, int, int); - method public void onSpanRemoved(android.text.Spannable, Object, int, int); - method public void release(); - method public static boolean shouldCap(android.text.method.TextKeyListener.Capitalize, CharSequence, int); - } - - public enum TextKeyListener.Capitalize { - enum_constant public static final android.text.method.TextKeyListener.Capitalize CHARACTERS; - enum_constant public static final android.text.method.TextKeyListener.Capitalize NONE; - enum_constant public static final android.text.method.TextKeyListener.Capitalize SENTENCES; - enum_constant public static final android.text.method.TextKeyListener.Capitalize WORDS; - } - - public class TimeKeyListener extends android.text.method.NumberKeyListener { - ctor @Deprecated public TimeKeyListener(); - ctor public TimeKeyListener(@Nullable java.util.Locale); - method @NonNull protected char[] getAcceptedChars(); - method public int getInputType(); - method @Deprecated @NonNull public static android.text.method.TimeKeyListener getInstance(); - method @NonNull public static android.text.method.TimeKeyListener getInstance(@Nullable java.util.Locale); - field @Deprecated public static final char[] CHARACTERS; - } - - public class Touch { - method public static int getInitialScrollX(android.widget.TextView, android.text.Spannable); - method public static int getInitialScrollY(android.widget.TextView, android.text.Spannable); - method public static boolean onTouchEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); - method public static void scrollTo(android.widget.TextView, android.text.Layout, int, int); - } - - public interface TransformationMethod { - method public CharSequence getTransformation(CharSequence, android.view.View); - method public void onFocusChanged(android.view.View, CharSequence, boolean, int, android.graphics.Rect); - } - -} - -package android.text.style { - - public class AbsoluteSizeSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { - ctor public AbsoluteSizeSpan(int); - ctor public AbsoluteSizeSpan(int, boolean); - ctor public AbsoluteSizeSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public boolean getDip(); - method public int getSize(); - method public int getSpanTypeId(); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void updateMeasureState(@NonNull android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public interface AlignmentSpan extends android.text.style.ParagraphStyle { - method public android.text.Layout.Alignment getAlignment(); - } - - public static class AlignmentSpan.Standard implements android.text.style.AlignmentSpan android.text.ParcelableSpan { - ctor public AlignmentSpan.Standard(@NonNull android.text.Layout.Alignment); - ctor public AlignmentSpan.Standard(@NonNull android.os.Parcel); - method public int describeContents(); - method public android.text.Layout.Alignment getAlignment(); - method public int getSpanTypeId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public class BackgroundColorSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan android.text.style.UpdateAppearance { - ctor public BackgroundColorSpan(@ColorInt int); - ctor public BackgroundColorSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method @ColorInt public int getBackgroundColor(); - method public int getSpanTypeId(); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public class BulletSpan implements android.text.style.LeadingMarginSpan android.text.ParcelableSpan { - ctor public BulletSpan(); - ctor public BulletSpan(int); - ctor public BulletSpan(int, @ColorInt int); - ctor public BulletSpan(int, @ColorInt int, @IntRange(from=0) int); - ctor public BulletSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public void drawLeadingMargin(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, int, int, int, int, int, @NonNull CharSequence, int, int, boolean, @Nullable android.text.Layout); - method public int getBulletRadius(); - method public int getColor(); - method public int getGapWidth(); - method public int getLeadingMargin(boolean); - method public int getSpanTypeId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final int STANDARD_GAP_WIDTH = 2; // 0x2 - } - - public abstract class CharacterStyle { - ctor public CharacterStyle(); - method public android.text.style.CharacterStyle getUnderlying(); - method public abstract void updateDrawState(android.text.TextPaint); - method public static android.text.style.CharacterStyle wrap(android.text.style.CharacterStyle); - } - - public abstract class ClickableSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance { - ctor public ClickableSpan(); - method public abstract void onClick(@NonNull android.view.View); - method public void updateDrawState(@NonNull android.text.TextPaint); - } - - public class DrawableMarginSpan implements android.text.style.LeadingMarginSpan android.text.style.LineHeightSpan { - ctor public DrawableMarginSpan(@NonNull android.graphics.drawable.Drawable); - ctor public DrawableMarginSpan(@NonNull android.graphics.drawable.Drawable, int); - method public void chooseHeight(@NonNull CharSequence, int, int, int, int, @NonNull android.graphics.Paint.FontMetricsInt); - method public void drawLeadingMargin(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, int, int, int, int, int, @NonNull CharSequence, int, int, boolean, @NonNull android.text.Layout); - method @NonNull public android.graphics.drawable.Drawable getDrawable(); - method public int getLeadingMargin(boolean); - method @Px public int getPadding(); - } - - public abstract class DynamicDrawableSpan extends android.text.style.ReplacementSpan { - ctor public DynamicDrawableSpan(); - ctor protected DynamicDrawableSpan(int); - method public void draw(@NonNull android.graphics.Canvas, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, float, int, int, int, @NonNull android.graphics.Paint); - method public abstract android.graphics.drawable.Drawable getDrawable(); - method public int getSize(@NonNull android.graphics.Paint, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.graphics.Paint.FontMetricsInt); - method public int getVerticalAlignment(); - field public static final int ALIGN_BASELINE = 1; // 0x1 - field public static final int ALIGN_BOTTOM = 0; // 0x0 - field public static final int ALIGN_CENTER = 2; // 0x2 - field protected final int mVerticalAlignment; - } - - public class EasyEditSpan implements android.text.ParcelableSpan { - ctor public EasyEditSpan(); - ctor public EasyEditSpan(android.app.PendingIntent); - ctor public EasyEditSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public int getSpanTypeId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final String EXTRA_TEXT_CHANGED_TYPE = "android.text.style.EXTRA_TEXT_CHANGED_TYPE"; - field public static final int TEXT_DELETED = 1; // 0x1 - field public static final int TEXT_MODIFIED = 2; // 0x2 - } - - public class ForegroundColorSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan android.text.style.UpdateAppearance { - ctor public ForegroundColorSpan(@ColorInt int); - ctor public ForegroundColorSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method @ColorInt public int getForegroundColor(); - method public int getSpanTypeId(); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public class IconMarginSpan implements android.text.style.LeadingMarginSpan android.text.style.LineHeightSpan { - ctor public IconMarginSpan(@NonNull android.graphics.Bitmap); - ctor public IconMarginSpan(@NonNull android.graphics.Bitmap, @IntRange(from=0) int); - method public void chooseHeight(CharSequence, int, int, int, int, android.graphics.Paint.FontMetricsInt); - method public void drawLeadingMargin(android.graphics.Canvas, android.graphics.Paint, int, int, int, int, int, CharSequence, int, int, boolean, android.text.Layout); - method @NonNull public android.graphics.Bitmap getBitmap(); - method public int getLeadingMargin(boolean); - method @Px public int getPadding(); - } - - public class ImageSpan extends android.text.style.DynamicDrawableSpan { - ctor @Deprecated public ImageSpan(@NonNull android.graphics.Bitmap); - ctor @Deprecated public ImageSpan(@NonNull android.graphics.Bitmap, int); - ctor public ImageSpan(@NonNull android.content.Context, @NonNull android.graphics.Bitmap); - ctor public ImageSpan(@NonNull android.content.Context, @NonNull android.graphics.Bitmap, int); - ctor public ImageSpan(@NonNull android.graphics.drawable.Drawable); - ctor public ImageSpan(@NonNull android.graphics.drawable.Drawable, int); - ctor public ImageSpan(@NonNull android.graphics.drawable.Drawable, @NonNull String); - ctor public ImageSpan(@NonNull android.graphics.drawable.Drawable, @NonNull String, int); - ctor public ImageSpan(@NonNull android.content.Context, @NonNull android.net.Uri); - ctor public ImageSpan(@NonNull android.content.Context, @NonNull android.net.Uri, int); - ctor public ImageSpan(@NonNull android.content.Context, @DrawableRes int); - ctor public ImageSpan(@NonNull android.content.Context, @DrawableRes int, int); - method public android.graphics.drawable.Drawable getDrawable(); - method @Nullable public String getSource(); - } - - public interface LeadingMarginSpan extends android.text.style.ParagraphStyle { - method public void drawLeadingMargin(android.graphics.Canvas, android.graphics.Paint, int, int, int, int, int, CharSequence, int, int, boolean, android.text.Layout); - method public int getLeadingMargin(boolean); - } - - public static interface LeadingMarginSpan.LeadingMarginSpan2 extends android.text.style.LeadingMarginSpan android.text.style.WrapTogetherSpan { - method public int getLeadingMarginLineCount(); - } - - public static class LeadingMarginSpan.Standard implements android.text.style.LeadingMarginSpan android.text.ParcelableSpan { - ctor public LeadingMarginSpan.Standard(int, int); - ctor public LeadingMarginSpan.Standard(int); - ctor public LeadingMarginSpan.Standard(android.os.Parcel); - method public int describeContents(); - method public void drawLeadingMargin(android.graphics.Canvas, android.graphics.Paint, int, int, int, int, int, CharSequence, int, int, boolean, android.text.Layout); - method public int getLeadingMargin(boolean); - method public int getSpanTypeId(); - method public void writeToParcel(android.os.Parcel, int); - } - - public interface LineBackgroundSpan extends android.text.style.ParagraphStyle { - method public void drawBackground(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, @Px int, @Px int, @Px int, @Px int, @Px int, @NonNull CharSequence, int, int, int); - } - - public static class LineBackgroundSpan.Standard implements android.text.style.LineBackgroundSpan android.text.ParcelableSpan { - ctor public LineBackgroundSpan.Standard(@ColorInt int); - ctor public LineBackgroundSpan.Standard(@NonNull android.os.Parcel); - method public int describeContents(); - method public void drawBackground(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, @Px int, @Px int, @Px int, @Px int, @Px int, @NonNull CharSequence, int, int, int); - method @ColorInt public final int getColor(); - method public int getSpanTypeId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public final class LineBreakConfigSpan implements android.text.ParcelableSpan { - ctor @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public LineBreakConfigSpan(@NonNull android.graphics.text.LineBreakConfig); - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public static android.text.style.LineBreakConfigSpan createNoBreakSpan(); - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public static android.text.style.LineBreakConfigSpan createNoHyphenationSpan(); - method public int describeContents(); - method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.graphics.text.LineBreakConfig getLineBreakConfig(); - method public int getSpanTypeId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface LineHeightSpan extends android.text.style.ParagraphStyle android.text.style.WrapTogetherSpan { - method public void chooseHeight(CharSequence, int, int, int, int, android.graphics.Paint.FontMetricsInt); - } - - public static class LineHeightSpan.Standard implements android.text.style.LineHeightSpan android.text.ParcelableSpan { - ctor public LineHeightSpan.Standard(@IntRange(from=1) @Px int); - ctor public LineHeightSpan.Standard(@NonNull android.os.Parcel); - method public void chooseHeight(@NonNull CharSequence, int, int, int, int, @NonNull android.graphics.Paint.FontMetricsInt); - method public int describeContents(); - method @Px public int getHeight(); - method public int getSpanTypeId(); - method public void writeToParcel(android.os.Parcel, int); - } - - public static interface LineHeightSpan.WithDensity extends android.text.style.LineHeightSpan { - method public void chooseHeight(CharSequence, int, int, int, int, android.graphics.Paint.FontMetricsInt, android.text.TextPaint); - } - - public class LocaleSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { - ctor public LocaleSpan(@Nullable java.util.Locale); - ctor public LocaleSpan(@NonNull android.os.LocaleList); - ctor public LocaleSpan(android.os.Parcel); - method public int describeContents(); - method @Nullable public java.util.Locale getLocale(); - method @NonNull public android.os.LocaleList getLocales(); - method public int getSpanTypeId(); - method public void updateDrawState(android.text.TextPaint); - method public void updateMeasureState(android.text.TextPaint); - method public void writeToParcel(android.os.Parcel, int); - } - - public class MaskFilterSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance { - ctor public MaskFilterSpan(android.graphics.MaskFilter); - method public android.graphics.MaskFilter getMaskFilter(); - method public void updateDrawState(android.text.TextPaint); - } - - public abstract class MetricAffectingSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateLayout { - ctor public MetricAffectingSpan(); - method public android.text.style.MetricAffectingSpan getUnderlying(); - method public abstract void updateMeasureState(@NonNull android.text.TextPaint); - } - - @FlaggedApi("android.view.inputmethod.writing_tools") public final class NoWritingToolsSpan implements android.text.ParcelableSpan { - ctor public NoWritingToolsSpan(); - method public int describeContents(); - method public int getSpanTypeId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface ParagraphStyle { - } - - public class QuoteSpan implements android.text.style.LeadingMarginSpan android.text.ParcelableSpan { - ctor public QuoteSpan(); - ctor public QuoteSpan(@ColorInt int); - ctor public QuoteSpan(@ColorInt int, @IntRange(from=0) int, @IntRange(from=0) int); - ctor public QuoteSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public void drawLeadingMargin(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, int, int, int, int, int, @NonNull CharSequence, int, int, boolean, @NonNull android.text.Layout); - method @ColorInt public int getColor(); - method public int getGapWidth(); - method public int getLeadingMargin(boolean); - method public int getSpanTypeId(); - method public int getStripeWidth(); - method public void writeToParcel(android.os.Parcel, int); - field @ColorInt public static final int STANDARD_COLOR = -16776961; // 0xff0000ff - field public static final int STANDARD_GAP_WIDTH_PX = 2; // 0x2 - field public static final int STANDARD_STRIPE_WIDTH_PX = 2; // 0x2 - } - - public class RelativeSizeSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { - ctor public RelativeSizeSpan(@FloatRange(from=0) float); - ctor public RelativeSizeSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public float getSizeChange(); - method public int getSpanTypeId(); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void updateMeasureState(@NonNull android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public abstract class ReplacementSpan extends android.text.style.MetricAffectingSpan { - ctor public ReplacementSpan(); - method public abstract void draw(@NonNull android.graphics.Canvas, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, float, int, int, int, @NonNull android.graphics.Paint); - method @Nullable public CharSequence getContentDescription(); - method public abstract int getSize(@NonNull android.graphics.Paint, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.graphics.Paint.FontMetricsInt); - method public void setContentDescription(@Nullable CharSequence); - method public void updateDrawState(android.text.TextPaint); - method public void updateMeasureState(android.text.TextPaint); - } - - public class ScaleXSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { - ctor public ScaleXSpan(@FloatRange(from=0) float); - ctor public ScaleXSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public float getScaleX(); - method public int getSpanTypeId(); - method public void updateDrawState(android.text.TextPaint); - method public void updateMeasureState(android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public class StrikethroughSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan android.text.style.UpdateAppearance { - ctor public StrikethroughSpan(); - ctor public StrikethroughSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public int getSpanTypeId(); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public class StyleSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { - ctor public StyleSpan(int); - ctor public StyleSpan(int, int); - ctor public StyleSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public int getFontWeightAdjustment(); - method public int getSpanTypeId(); - method public int getStyle(); - method public void updateDrawState(android.text.TextPaint); - method public void updateMeasureState(android.text.TextPaint); - method public void writeToParcel(android.os.Parcel, int); - } - - public class SubscriptSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { - ctor public SubscriptSpan(); - ctor public SubscriptSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public int getSpanTypeId(); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void updateMeasureState(@NonNull android.text.TextPaint); - method public void writeToParcel(android.os.Parcel, int); - } - - public final class SuggestionRangeSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan { - ctor public SuggestionRangeSpan(); - method public int describeContents(); - method public int getBackgroundColor(); - method public int getSpanTypeId(); - method public void setBackgroundColor(int); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class SuggestionSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan { - ctor public SuggestionSpan(android.content.Context, String[], int); - ctor public SuggestionSpan(java.util.Locale, String[], int); - ctor public SuggestionSpan(android.content.Context, java.util.Locale, String[], int, Class); - ctor public SuggestionSpan(android.os.Parcel); - method public int describeContents(); - method public int getFlags(); - method @Deprecated @NonNull public String getLocale(); - method @Nullable public java.util.Locale getLocaleObject(); - method public int getSpanTypeId(); - method public String[] getSuggestions(); - method @ColorInt public int getUnderlineColor(); - method public void setFlags(int); - method public void updateDrawState(android.text.TextPaint); - method public void writeToParcel(android.os.Parcel, int); - field @Deprecated public static final String ACTION_SUGGESTION_PICKED = "android.text.style.SUGGESTION_PICKED"; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_AUTO_CORRECTION = 4; // 0x4 - field public static final int FLAG_EASY_CORRECT = 1; // 0x1 - field public static final int FLAG_GRAMMAR_ERROR = 8; // 0x8 - field public static final int FLAG_MISSPELLED = 2; // 0x2 - field public static final int SUGGESTIONS_MAX_SIZE = 5; // 0x5 - field @Deprecated public static final String SUGGESTION_SPAN_PICKED_AFTER = "after"; - field @Deprecated public static final String SUGGESTION_SPAN_PICKED_BEFORE = "before"; - field @Deprecated public static final String SUGGESTION_SPAN_PICKED_HASHCODE = "hashcode"; - } - - public class SuperscriptSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { - ctor public SuperscriptSpan(); - ctor public SuperscriptSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public int getSpanTypeId(); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void updateMeasureState(@NonNull android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public interface TabStopSpan extends android.text.style.ParagraphStyle { - method public int getTabStop(); - } - - public static class TabStopSpan.Standard implements android.text.style.TabStopSpan { - ctor public TabStopSpan.Standard(@IntRange(from=0) int); - method public int getTabStop(); - } - - public class TextAppearanceSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { - ctor public TextAppearanceSpan(android.content.Context, int); - ctor public TextAppearanceSpan(android.content.Context, int, int); - ctor public TextAppearanceSpan(String, int, int, android.content.res.ColorStateList, android.content.res.ColorStateList); - ctor public TextAppearanceSpan(android.os.Parcel); - method public int describeContents(); - method public String getFamily(); - method @Nullable public String getFontFeatureSettings(); - method @Nullable public String getFontVariationSettings(); - method public float getLetterSpacing(); - method public android.content.res.ColorStateList getLinkTextColor(); - method public int getShadowColor(); - method public float getShadowDx(); - method public float getShadowDy(); - method public float getShadowRadius(); - method public int getSpanTypeId(); - method public android.content.res.ColorStateList getTextColor(); - method public int getTextFontWeight(); - method @Nullable public android.os.LocaleList getTextLocales(); - method public int getTextSize(); - method public int getTextStyle(); - method @Nullable public android.graphics.Typeface getTypeface(); - method public boolean isElegantTextHeight(); - method public void updateDrawState(android.text.TextPaint); - method public void updateMeasureState(android.text.TextPaint); - method public void writeToParcel(android.os.Parcel, int); - } - - public class TtsSpan implements android.text.ParcelableSpan { - ctor public TtsSpan(String, android.os.PersistableBundle); - ctor public TtsSpan(android.os.Parcel); - method public int describeContents(); - method public android.os.PersistableBundle getArgs(); - method public int getSpanTypeId(); - method public String getType(); - method public void writeToParcel(android.os.Parcel, int); - field public static final String ANIMACY_ANIMATE = "android.animate"; - field public static final String ANIMACY_INANIMATE = "android.inanimate"; - field public static final String ARG_ANIMACY = "android.arg.animacy"; - field public static final String ARG_CASE = "android.arg.case"; - field public static final String ARG_COUNTRY_CODE = "android.arg.country_code"; - field public static final String ARG_CURRENCY = "android.arg.money"; - field public static final String ARG_DAY = "android.arg.day"; - field public static final String ARG_DENOMINATOR = "android.arg.denominator"; - field public static final String ARG_DIGITS = "android.arg.digits"; - field public static final String ARG_DOMAIN = "android.arg.domain"; - field public static final String ARG_EXTENSION = "android.arg.extension"; - field public static final String ARG_FRACTIONAL_PART = "android.arg.fractional_part"; - field public static final String ARG_FRAGMENT_ID = "android.arg.fragment_id"; - field public static final String ARG_GENDER = "android.arg.gender"; - field public static final String ARG_HOURS = "android.arg.hours"; - field public static final String ARG_INTEGER_PART = "android.arg.integer_part"; - field public static final String ARG_MINUTES = "android.arg.minutes"; - field public static final String ARG_MONTH = "android.arg.month"; - field public static final String ARG_MULTIPLICITY = "android.arg.multiplicity"; - field public static final String ARG_NUMBER = "android.arg.number"; - field public static final String ARG_NUMBER_PARTS = "android.arg.number_parts"; - field public static final String ARG_NUMERATOR = "android.arg.numerator"; - field public static final String ARG_PASSWORD = "android.arg.password"; - field public static final String ARG_PATH = "android.arg.path"; - field public static final String ARG_PORT = "android.arg.port"; - field public static final String ARG_PROTOCOL = "android.arg.protocol"; - field public static final String ARG_QUANTITY = "android.arg.quantity"; - field public static final String ARG_QUERY_STRING = "android.arg.query_string"; - field @FlaggedApi("com.android.text.flags.tts_span_duration") public static final String ARG_SECONDS = "android.arg.seconds"; - field public static final String ARG_TEXT = "android.arg.text"; - field public static final String ARG_UNIT = "android.arg.unit"; - field public static final String ARG_USERNAME = "android.arg.username"; - field public static final String ARG_VERBATIM = "android.arg.verbatim"; - field public static final String ARG_WEEKDAY = "android.arg.weekday"; - field public static final String ARG_YEAR = "android.arg.year"; - field public static final String CASE_ABLATIVE = "android.ablative"; - field public static final String CASE_ACCUSATIVE = "android.accusative"; - field public static final String CASE_DATIVE = "android.dative"; - field public static final String CASE_GENITIVE = "android.genitive"; - field public static final String CASE_INSTRUMENTAL = "android.instrumental"; - field public static final String CASE_LOCATIVE = "android.locative"; - field public static final String CASE_NOMINATIVE = "android.nominative"; - field public static final String CASE_VOCATIVE = "android.vocative"; - field public static final String GENDER_FEMALE = "android.female"; - field public static final String GENDER_MALE = "android.male"; - field public static final String GENDER_NEUTRAL = "android.neutral"; - field public static final int MONTH_APRIL = 3; // 0x3 - field public static final int MONTH_AUGUST = 7; // 0x7 - field public static final int MONTH_DECEMBER = 11; // 0xb - field public static final int MONTH_FEBRUARY = 1; // 0x1 - field public static final int MONTH_JANUARY = 0; // 0x0 - field public static final int MONTH_JULY = 6; // 0x6 - field public static final int MONTH_JUNE = 5; // 0x5 - field public static final int MONTH_MARCH = 2; // 0x2 - field public static final int MONTH_MAY = 4; // 0x4 - field public static final int MONTH_NOVEMBER = 10; // 0xa - field public static final int MONTH_OCTOBER = 9; // 0x9 - field public static final int MONTH_SEPTEMBER = 8; // 0x8 - field public static final String MULTIPLICITY_DUAL = "android.dual"; - field public static final String MULTIPLICITY_PLURAL = "android.plural"; - field public static final String MULTIPLICITY_SINGLE = "android.single"; - field public static final String TYPE_CARDINAL = "android.type.cardinal"; - field public static final String TYPE_DATE = "android.type.date"; - field public static final String TYPE_DECIMAL = "android.type.decimal"; - field public static final String TYPE_DIGITS = "android.type.digits"; - field @FlaggedApi("com.android.text.flags.tts_span_duration") public static final String TYPE_DURATION = "android.type.duration"; - field public static final String TYPE_ELECTRONIC = "android.type.electronic"; - field public static final String TYPE_FRACTION = "android.type.fraction"; - field public static final String TYPE_MEASURE = "android.type.measure"; - field public static final String TYPE_MONEY = "android.type.money"; - field public static final String TYPE_ORDINAL = "android.type.ordinal"; - field public static final String TYPE_TELEPHONE = "android.type.telephone"; - field public static final String TYPE_TEXT = "android.type.text"; - field public static final String TYPE_TIME = "android.type.time"; - field public static final String TYPE_VERBATIM = "android.type.verbatim"; - field public static final int WEEKDAY_FRIDAY = 6; // 0x6 - field public static final int WEEKDAY_MONDAY = 2; // 0x2 - field public static final int WEEKDAY_SATURDAY = 7; // 0x7 - field public static final int WEEKDAY_SUNDAY = 1; // 0x1 - field public static final int WEEKDAY_THURSDAY = 5; // 0x5 - field public static final int WEEKDAY_TUESDAY = 3; // 0x3 - field public static final int WEEKDAY_WEDNESDAY = 4; // 0x4 - } - - public static class TtsSpan.Builder> { - ctor public TtsSpan.Builder(String); - method public android.text.style.TtsSpan build(); - method public C setIntArgument(String, int); - method public C setLongArgument(String, long); - method public C setStringArgument(String, String); - } - - public static class TtsSpan.CardinalBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.CardinalBuilder(); - ctor public TtsSpan.CardinalBuilder(long); - ctor public TtsSpan.CardinalBuilder(String); - method public android.text.style.TtsSpan.CardinalBuilder setNumber(long); - method public android.text.style.TtsSpan.CardinalBuilder setNumber(String); - } - - public static class TtsSpan.DateBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.DateBuilder(); - ctor public TtsSpan.DateBuilder(Integer, Integer, Integer, Integer); - method public android.text.style.TtsSpan.DateBuilder setDay(int); - method public android.text.style.TtsSpan.DateBuilder setMonth(int); - method public android.text.style.TtsSpan.DateBuilder setWeekday(int); - method public android.text.style.TtsSpan.DateBuilder setYear(int); - } - - public static class TtsSpan.DecimalBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.DecimalBuilder(); - ctor public TtsSpan.DecimalBuilder(double, int, int); - ctor public TtsSpan.DecimalBuilder(String, String); - method public android.text.style.TtsSpan.DecimalBuilder setArgumentsFromDouble(double, int, int); - method public android.text.style.TtsSpan.DecimalBuilder setFractionalPart(String); - method public android.text.style.TtsSpan.DecimalBuilder setIntegerPart(long); - method public android.text.style.TtsSpan.DecimalBuilder setIntegerPart(String); - } - - public static class TtsSpan.DigitsBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.DigitsBuilder(); - ctor public TtsSpan.DigitsBuilder(String); - method public android.text.style.TtsSpan.DigitsBuilder setDigits(String); - } - - @FlaggedApi("com.android.text.flags.tts_span_duration") public static class TtsSpan.DurationBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor @FlaggedApi("com.android.text.flags.tts_span_duration") public TtsSpan.DurationBuilder(); - method @FlaggedApi("com.android.text.flags.tts_span_duration") @NonNull public android.text.style.TtsSpan.DurationBuilder setHours(int); - method @FlaggedApi("com.android.text.flags.tts_span_duration") @NonNull public android.text.style.TtsSpan.DurationBuilder setMinutes(int); - method @FlaggedApi("com.android.text.flags.tts_span_duration") @NonNull public android.text.style.TtsSpan.DurationBuilder setSeconds(int); - } - - public static class TtsSpan.ElectronicBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.ElectronicBuilder(); - method public android.text.style.TtsSpan.ElectronicBuilder setDomain(String); - method public android.text.style.TtsSpan.ElectronicBuilder setEmailArguments(String, String); - method public android.text.style.TtsSpan.ElectronicBuilder setFragmentId(String); - method public android.text.style.TtsSpan.ElectronicBuilder setPassword(String); - method public android.text.style.TtsSpan.ElectronicBuilder setPath(String); - method public android.text.style.TtsSpan.ElectronicBuilder setPort(int); - method public android.text.style.TtsSpan.ElectronicBuilder setProtocol(String); - method public android.text.style.TtsSpan.ElectronicBuilder setQueryString(String); - method public android.text.style.TtsSpan.ElectronicBuilder setUsername(String); - } - - public static class TtsSpan.FractionBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.FractionBuilder(); - ctor public TtsSpan.FractionBuilder(long, long, long); - method public android.text.style.TtsSpan.FractionBuilder setDenominator(long); - method public android.text.style.TtsSpan.FractionBuilder setDenominator(String); - method public android.text.style.TtsSpan.FractionBuilder setIntegerPart(long); - method public android.text.style.TtsSpan.FractionBuilder setIntegerPart(String); - method public android.text.style.TtsSpan.FractionBuilder setNumerator(long); - method public android.text.style.TtsSpan.FractionBuilder setNumerator(String); - } - - public static class TtsSpan.MeasureBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.MeasureBuilder(); - method public android.text.style.TtsSpan.MeasureBuilder setDenominator(long); - method public android.text.style.TtsSpan.MeasureBuilder setDenominator(String); - method public android.text.style.TtsSpan.MeasureBuilder setFractionalPart(String); - method public android.text.style.TtsSpan.MeasureBuilder setIntegerPart(long); - method public android.text.style.TtsSpan.MeasureBuilder setIntegerPart(String); - method public android.text.style.TtsSpan.MeasureBuilder setNumber(long); - method public android.text.style.TtsSpan.MeasureBuilder setNumber(String); - method public android.text.style.TtsSpan.MeasureBuilder setNumerator(long); - method public android.text.style.TtsSpan.MeasureBuilder setNumerator(String); - method public android.text.style.TtsSpan.MeasureBuilder setUnit(String); - } - - public static class TtsSpan.MoneyBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.MoneyBuilder(); - method public android.text.style.TtsSpan.MoneyBuilder setCurrency(String); - method public android.text.style.TtsSpan.MoneyBuilder setFractionalPart(String); - method public android.text.style.TtsSpan.MoneyBuilder setIntegerPart(long); - method public android.text.style.TtsSpan.MoneyBuilder setIntegerPart(String); - method public android.text.style.TtsSpan.MoneyBuilder setQuantity(String); - } - - public static class TtsSpan.OrdinalBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.OrdinalBuilder(); - ctor public TtsSpan.OrdinalBuilder(long); - ctor public TtsSpan.OrdinalBuilder(String); - method public android.text.style.TtsSpan.OrdinalBuilder setNumber(long); - method public android.text.style.TtsSpan.OrdinalBuilder setNumber(String); - } - - public static class TtsSpan.SemioticClassBuilder> extends android.text.style.TtsSpan.Builder { - ctor public TtsSpan.SemioticClassBuilder(String); - method public C setAnimacy(String); - method public C setCase(String); - method public C setGender(String); - method public C setMultiplicity(String); - } - - public static class TtsSpan.TelephoneBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.TelephoneBuilder(); - ctor public TtsSpan.TelephoneBuilder(String); - method public android.text.style.TtsSpan.TelephoneBuilder setCountryCode(String); - method public android.text.style.TtsSpan.TelephoneBuilder setExtension(String); - method public android.text.style.TtsSpan.TelephoneBuilder setNumberParts(String); - } - - public static class TtsSpan.TextBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.TextBuilder(); - ctor public TtsSpan.TextBuilder(String); - method public android.text.style.TtsSpan.TextBuilder setText(String); - } - - public static class TtsSpan.TimeBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.TimeBuilder(); - ctor public TtsSpan.TimeBuilder(int, int); - method public android.text.style.TtsSpan.TimeBuilder setHours(@IntRange(from=0, to=24) int); - method public android.text.style.TtsSpan.TimeBuilder setMinutes(@IntRange(from=0, to=59) int); - method @FlaggedApi("com.android.text.flags.tts_span_duration") @NonNull public android.text.style.TtsSpan.TimeBuilder setSeconds(@IntRange(from=0, to=59) int); - } - - public static class TtsSpan.VerbatimBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { - ctor public TtsSpan.VerbatimBuilder(); - ctor public TtsSpan.VerbatimBuilder(String); - method public android.text.style.TtsSpan.VerbatimBuilder setVerbatim(String); - } - - public class TypefaceSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { - ctor public TypefaceSpan(@Nullable String); - ctor public TypefaceSpan(@NonNull android.graphics.Typeface); - ctor public TypefaceSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method @Nullable public String getFamily(); - method public int getSpanTypeId(); - method @Nullable public android.graphics.Typeface getTypeface(); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void updateMeasureState(@NonNull android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public class URLSpan extends android.text.style.ClickableSpan implements android.text.ParcelableSpan { - ctor public URLSpan(String); - ctor public URLSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public int getSpanTypeId(); - method public String getURL(); - method public void onClick(android.view.View); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public class UnderlineSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan android.text.style.UpdateAppearance { - ctor public UnderlineSpan(); - ctor public UnderlineSpan(@NonNull android.os.Parcel); - method public int describeContents(); - method public int getSpanTypeId(); - method public void updateDrawState(@NonNull android.text.TextPaint); - method public void writeToParcel(@NonNull android.os.Parcel, int); - } - - public interface UpdateAppearance { - } - - public interface UpdateLayout extends android.text.style.UpdateAppearance { - } - - public interface WrapTogetherSpan extends android.text.style.ParagraphStyle { - } - -} - -package android.text.util { - - public class Linkify { - ctor public Linkify(); - method public static final boolean addLinks(@NonNull android.text.Spannable, int); - method public static final boolean addLinks(@NonNull android.text.Spannable, int, @Nullable java.util.function.Function); - method public static final boolean addLinks(@NonNull android.widget.TextView, int); - method public static final void addLinks(@NonNull android.widget.TextView, @NonNull java.util.regex.Pattern, @Nullable String); - method public static final void addLinks(@NonNull android.widget.TextView, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter); - method public static final void addLinks(@NonNull android.widget.TextView, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable String[], @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter); - method public static final boolean addLinks(@NonNull android.text.Spannable, @NonNull java.util.regex.Pattern, @Nullable String); - method public static final boolean addLinks(@NonNull android.text.Spannable, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter); - method public static final boolean addLinks(@NonNull android.text.Spannable, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable String[], @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter); - method public static final boolean addLinks(@NonNull android.text.Spannable, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable String[], @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter, @Nullable java.util.function.Function); - field @Deprecated public static final int ALL = 15; // 0xf - field public static final int EMAIL_ADDRESSES = 2; // 0x2 - field @Deprecated public static final int MAP_ADDRESSES = 8; // 0x8 - field public static final int PHONE_NUMBERS = 4; // 0x4 - field public static final int WEB_URLS = 1; // 0x1 - field public static final android.text.util.Linkify.MatchFilter sPhoneNumberMatchFilter; - field public static final android.text.util.Linkify.TransformFilter sPhoneNumberTransformFilter; - field public static final android.text.util.Linkify.MatchFilter sUrlMatchFilter; - } - - public static interface Linkify.MatchFilter { - method public boolean acceptMatch(CharSequence, int, int); - } - - public static interface Linkify.TransformFilter { - method public String transformUrl(java.util.regex.Matcher, String); - } - - public class Rfc822Token { - ctor public Rfc822Token(@Nullable String, @Nullable String, @Nullable String); - method @Nullable public String getAddress(); - method @Nullable public String getComment(); - method @Nullable public String getName(); - method public static String quoteComment(String); - method public static String quoteName(String); - method public static String quoteNameIfNecessary(String); - method public void setAddress(@Nullable String); - method public void setComment(@Nullable String); - method public void setName(@Nullable String); - } - - public class Rfc822Tokenizer implements android.widget.MultiAutoCompleteTextView.Tokenizer { - ctor public Rfc822Tokenizer(); - method public int findTokenEnd(CharSequence, int); - method public int findTokenStart(CharSequence, int); - method public CharSequence terminateToken(CharSequence); - method public static void tokenize(CharSequence, java.util.Collection); - method public static android.text.util.Rfc822Token[] tokenize(CharSequence); - } - -} - -package android.transition { - - public class ArcMotion extends android.transition.PathMotion { - ctor public ArcMotion(); - ctor public ArcMotion(android.content.Context, android.util.AttributeSet); - method public float getMaximumAngle(); - method public float getMinimumHorizontalAngle(); - method public float getMinimumVerticalAngle(); - method public android.graphics.Path getPath(float, float, float, float); - method public void setMaximumAngle(float); - method public void setMinimumHorizontalAngle(float); - method public void setMinimumVerticalAngle(float); - } - - public class AutoTransition extends android.transition.TransitionSet { - ctor public AutoTransition(); - ctor public AutoTransition(android.content.Context, android.util.AttributeSet); - } - - public class ChangeBounds extends android.transition.Transition { - ctor public ChangeBounds(); - ctor public ChangeBounds(android.content.Context, android.util.AttributeSet); - method public void captureEndValues(android.transition.TransitionValues); - method public void captureStartValues(android.transition.TransitionValues); - method public boolean getResizeClip(); - method @Deprecated public void setReparent(boolean); - method public void setResizeClip(boolean); - } - - public class ChangeClipBounds extends android.transition.Transition { - ctor public ChangeClipBounds(); - ctor public ChangeClipBounds(android.content.Context, android.util.AttributeSet); - method public void captureEndValues(android.transition.TransitionValues); - method public void captureStartValues(android.transition.TransitionValues); - } - - public class ChangeImageTransform extends android.transition.Transition { - ctor public ChangeImageTransform(); - ctor public ChangeImageTransform(android.content.Context, android.util.AttributeSet); - method public void captureEndValues(android.transition.TransitionValues); - method public void captureStartValues(android.transition.TransitionValues); - } - - public class ChangeScroll extends android.transition.Transition { - ctor public ChangeScroll(); - ctor public ChangeScroll(android.content.Context, android.util.AttributeSet); - method public void captureEndValues(android.transition.TransitionValues); - method public void captureStartValues(android.transition.TransitionValues); - } - - public class ChangeTransform extends android.transition.Transition { - ctor public ChangeTransform(); - ctor public ChangeTransform(android.content.Context, android.util.AttributeSet); - method public void captureEndValues(android.transition.TransitionValues); - method public void captureStartValues(android.transition.TransitionValues); - method public boolean getReparent(); - method public boolean getReparentWithOverlay(); - method public void setReparent(boolean); - method public void setReparentWithOverlay(boolean); - } - - public class CircularPropagation extends android.transition.VisibilityPropagation { - ctor public CircularPropagation(); - method public long getStartDelay(android.view.ViewGroup, android.transition.Transition, android.transition.TransitionValues, android.transition.TransitionValues); - method public void setPropagationSpeed(float); - } - - public class Explode extends android.transition.Visibility { - ctor public Explode(); - ctor public Explode(android.content.Context, android.util.AttributeSet); - } - - public class Fade extends android.transition.Visibility { - ctor public Fade(); - ctor public Fade(int); - ctor public Fade(android.content.Context, android.util.AttributeSet); - field public static final int IN = 1; // 0x1 - field public static final int OUT = 2; // 0x2 - } - - public abstract class PathMotion { - ctor public PathMotion(); - ctor public PathMotion(android.content.Context, android.util.AttributeSet); - method public abstract android.graphics.Path getPath(float, float, float, float); - } - - public class PatternPathMotion extends android.transition.PathMotion { - ctor public PatternPathMotion(); - ctor public PatternPathMotion(android.content.Context, android.util.AttributeSet); - ctor public PatternPathMotion(android.graphics.Path); - method public android.graphics.Path getPath(float, float, float, float); - method public android.graphics.Path getPatternPath(); - method public void setPatternPath(android.graphics.Path); - } - - public final class Scene { - ctor public Scene(android.view.ViewGroup); - ctor public Scene(android.view.ViewGroup, android.view.View); - ctor @Deprecated public Scene(android.view.ViewGroup, android.view.ViewGroup); - method public void enter(); - method public void exit(); - method @Nullable public static android.transition.Scene getCurrentScene(@NonNull android.view.ViewGroup); - method public static android.transition.Scene getSceneForLayout(android.view.ViewGroup, int, android.content.Context); - method public android.view.ViewGroup getSceneRoot(); - method public void setEnterAction(Runnable); - method public void setExitAction(Runnable); - } - - public class SidePropagation extends android.transition.VisibilityPropagation { - ctor public SidePropagation(); - method public long getStartDelay(android.view.ViewGroup, android.transition.Transition, android.transition.TransitionValues, android.transition.TransitionValues); - method public void setPropagationSpeed(float); - method public void setSide(int); - } - - public class Slide extends android.transition.Visibility { - ctor public Slide(); - ctor public Slide(int); - ctor public Slide(android.content.Context, android.util.AttributeSet); - method public int getSlideEdge(); - method public void setSlideEdge(int); - } - - public abstract class Transition implements java.lang.Cloneable { - ctor public Transition(); - ctor public Transition(android.content.Context, android.util.AttributeSet); - method public android.transition.Transition addListener(android.transition.Transition.TransitionListener); - method public android.transition.Transition addTarget(int); - method public android.transition.Transition addTarget(String); - method public android.transition.Transition addTarget(Class); - method public android.transition.Transition addTarget(android.view.View); - method public boolean canRemoveViews(); - method public abstract void captureEndValues(android.transition.TransitionValues); - method public abstract void captureStartValues(android.transition.TransitionValues); - method public android.transition.Transition clone(); - method @Nullable public android.animation.Animator createAnimator(@NonNull android.view.ViewGroup, @Nullable android.transition.TransitionValues, @Nullable android.transition.TransitionValues); - method public android.transition.Transition excludeChildren(int, boolean); - method public android.transition.Transition excludeChildren(android.view.View, boolean); - method public android.transition.Transition excludeChildren(Class, boolean); - method public android.transition.Transition excludeTarget(int, boolean); - method public android.transition.Transition excludeTarget(String, boolean); - method public android.transition.Transition excludeTarget(android.view.View, boolean); - method public android.transition.Transition excludeTarget(Class, boolean); - method public long getDuration(); - method public android.graphics.Rect getEpicenter(); - method public android.transition.Transition.EpicenterCallback getEpicenterCallback(); - method public android.animation.TimeInterpolator getInterpolator(); - method public String getName(); - method public android.transition.PathMotion getPathMotion(); - method public android.transition.TransitionPropagation getPropagation(); - method public long getStartDelay(); - method public java.util.List getTargetIds(); - method public java.util.List getTargetNames(); - method public java.util.List getTargetTypes(); - method public java.util.List getTargets(); - method public String[] getTransitionProperties(); - method public android.transition.TransitionValues getTransitionValues(android.view.View, boolean); - method public boolean isTransitionRequired(@Nullable android.transition.TransitionValues, @Nullable android.transition.TransitionValues); - method public android.transition.Transition removeListener(android.transition.Transition.TransitionListener); - method public android.transition.Transition removeTarget(int); - method public android.transition.Transition removeTarget(String); - method public android.transition.Transition removeTarget(android.view.View); - method public android.transition.Transition removeTarget(Class); - method public android.transition.Transition setDuration(long); - method public void setEpicenterCallback(android.transition.Transition.EpicenterCallback); - method public android.transition.Transition setInterpolator(android.animation.TimeInterpolator); - method public void setMatchOrder(int...); - method public void setPathMotion(android.transition.PathMotion); - method public void setPropagation(android.transition.TransitionPropagation); - method public android.transition.Transition setStartDelay(long); - field public static final int MATCH_ID = 3; // 0x3 - field public static final int MATCH_INSTANCE = 1; // 0x1 - field public static final int MATCH_ITEM_ID = 4; // 0x4 - field public static final int MATCH_NAME = 2; // 0x2 - } - - public abstract static class Transition.EpicenterCallback { - ctor public Transition.EpicenterCallback(); - method public abstract android.graphics.Rect onGetEpicenter(android.transition.Transition); - } - - public static interface Transition.TransitionListener { - method public void onTransitionCancel(android.transition.Transition); - method public void onTransitionEnd(android.transition.Transition); - method public void onTransitionPause(android.transition.Transition); - method public void onTransitionResume(android.transition.Transition); - method public void onTransitionStart(android.transition.Transition); - } - - public class TransitionInflater { - method public static android.transition.TransitionInflater from(android.content.Context); - method public android.transition.Transition inflateTransition(@TransitionRes int); - method public android.transition.TransitionManager inflateTransitionManager(@TransitionRes int, android.view.ViewGroup); - } - - public abstract class TransitionListenerAdapter implements android.transition.Transition.TransitionListener { - ctor public TransitionListenerAdapter(); - method public void onTransitionCancel(android.transition.Transition); - method public void onTransitionEnd(android.transition.Transition); - method public void onTransitionPause(android.transition.Transition); - method public void onTransitionResume(android.transition.Transition); - method public void onTransitionStart(android.transition.Transition); - } - - public class TransitionManager { - ctor public TransitionManager(); - method public static void beginDelayedTransition(android.view.ViewGroup); - method public static void beginDelayedTransition(android.view.ViewGroup, android.transition.Transition); - method public static void endTransitions(android.view.ViewGroup); - method public static void go(android.transition.Scene); - method public static void go(android.transition.Scene, android.transition.Transition); - method public void setTransition(android.transition.Scene, android.transition.Transition); - method public void setTransition(android.transition.Scene, android.transition.Scene, android.transition.Transition); - method public void transitionTo(android.transition.Scene); - } - - public abstract class TransitionPropagation { - ctor public TransitionPropagation(); - method public abstract void captureValues(android.transition.TransitionValues); - method public abstract String[] getPropagationProperties(); - method public abstract long getStartDelay(android.view.ViewGroup, android.transition.Transition, android.transition.TransitionValues, android.transition.TransitionValues); - } - - public class TransitionSet extends android.transition.Transition { - ctor public TransitionSet(); - ctor public TransitionSet(android.content.Context, android.util.AttributeSet); - method public android.transition.TransitionSet addListener(android.transition.Transition.TransitionListener); - method public android.transition.TransitionSet addTarget(android.view.View); - method public android.transition.TransitionSet addTarget(int); - method public android.transition.TransitionSet addTarget(String); - method public android.transition.TransitionSet addTarget(Class); - method public android.transition.TransitionSet addTransition(android.transition.Transition); - method public void captureEndValues(android.transition.TransitionValues); - method public void captureStartValues(android.transition.TransitionValues); - method public android.transition.TransitionSet clone(); - method public int getOrdering(); - method public android.transition.Transition getTransitionAt(int); - method public int getTransitionCount(); - method public android.transition.TransitionSet removeListener(android.transition.Transition.TransitionListener); - method public android.transition.TransitionSet removeTarget(int); - method public android.transition.TransitionSet removeTarget(android.view.View); - method public android.transition.TransitionSet removeTarget(Class); - method public android.transition.TransitionSet removeTarget(String); - method public android.transition.TransitionSet removeTransition(android.transition.Transition); - method public android.transition.TransitionSet setDuration(long); - method public android.transition.TransitionSet setInterpolator(android.animation.TimeInterpolator); - method public android.transition.TransitionSet setOrdering(int); - method public android.transition.TransitionSet setStartDelay(long); - field public static final int ORDERING_SEQUENTIAL = 1; // 0x1 - field public static final int ORDERING_TOGETHER = 0; // 0x0 - } - - public class TransitionValues { - ctor @Deprecated public TransitionValues(); - ctor public TransitionValues(@NonNull android.view.View); - field @NonNull public final java.util.Map values; - field @NonNull public android.view.View view; - } - - public abstract class Visibility extends android.transition.Transition { - ctor public Visibility(); - ctor public Visibility(android.content.Context, android.util.AttributeSet); - method public void captureEndValues(android.transition.TransitionValues); - method public void captureStartValues(android.transition.TransitionValues); - method public int getMode(); - method public boolean isVisible(android.transition.TransitionValues); - method public android.animation.Animator onAppear(android.view.ViewGroup, android.transition.TransitionValues, int, android.transition.TransitionValues, int); - method public android.animation.Animator onAppear(android.view.ViewGroup, android.view.View, android.transition.TransitionValues, android.transition.TransitionValues); - method public android.animation.Animator onDisappear(android.view.ViewGroup, android.transition.TransitionValues, int, android.transition.TransitionValues, int); - method public android.animation.Animator onDisappear(android.view.ViewGroup, android.view.View, android.transition.TransitionValues, android.transition.TransitionValues); - method public void setMode(int); - field public static final int MODE_IN = 1; // 0x1 - field public static final int MODE_OUT = 2; // 0x2 - } - - public abstract class VisibilityPropagation extends android.transition.TransitionPropagation { - ctor public VisibilityPropagation(); - method public void captureValues(android.transition.TransitionValues); - method public String[] getPropagationProperties(); - method public int getViewVisibility(android.transition.TransitionValues); - method public int getViewX(android.transition.TransitionValues); - method public int getViewY(android.transition.TransitionValues); - } - -} - -package android.util { - - public class AndroidException extends java.lang.Exception { - ctor public AndroidException(); - ctor public AndroidException(String); - ctor public AndroidException(String, Throwable); - ctor public AndroidException(Exception); - } - - public class AndroidRuntimeException extends java.lang.RuntimeException { - ctor public AndroidRuntimeException(); - ctor public AndroidRuntimeException(String); - ctor public AndroidRuntimeException(String, Throwable); - ctor public AndroidRuntimeException(Exception); - } - - public final class ArrayMap implements java.util.Map { - ctor public ArrayMap(); - ctor public ArrayMap(int); - ctor public ArrayMap(android.util.ArrayMap); - method public void clear(); - method public boolean containsAll(java.util.Collection); - method public boolean containsKey(Object); - method public boolean containsValue(Object); - method public void ensureCapacity(int); - method public java.util.Set> entrySet(); - method public boolean equals(@Nullable Object); - method public void forEach(java.util.function.BiConsumer); - method public V get(Object); - method public int hashCode(); - method public int indexOfKey(Object); - method public int indexOfValue(Object); - method public boolean isEmpty(); - method public K keyAt(int); - method public java.util.Set keySet(); - method public V put(K, V); - method public void putAll(android.util.ArrayMap); - method public void putAll(java.util.Map); - method public V remove(Object); - method public boolean removeAll(java.util.Collection); - method public V removeAt(int); - method public void replaceAll(java.util.function.BiFunction); - method public boolean retainAll(java.util.Collection); - method public V setValueAt(int, V); - method public int size(); - method public V valueAt(int); - method public java.util.Collection values(); - } - - public final class ArraySet implements java.util.Collection java.util.Set { - ctor public ArraySet(); - ctor public ArraySet(int); - ctor public ArraySet(android.util.ArraySet); - ctor public ArraySet(java.util.Collection); - ctor public ArraySet(@Nullable E[]); - method public boolean add(E); - method public void addAll(android.util.ArraySet); - method public boolean addAll(java.util.Collection); - method public void clear(); - method public boolean contains(Object); - method public boolean containsAll(java.util.Collection); - method public void ensureCapacity(int); - method public boolean equals(@Nullable Object); - method public void forEach(java.util.function.Consumer); - method public int hashCode(); - method public int indexOf(Object); - method public boolean isEmpty(); - method public java.util.Iterator iterator(); - method public boolean remove(Object); - method public boolean removeAll(android.util.ArraySet); - method public boolean removeAll(java.util.Collection); - method public E removeAt(int); - method public boolean removeIf(java.util.function.Predicate); - method public boolean retainAll(java.util.Collection); - method public int size(); - method public Object[] toArray(); - method public T[] toArray(T[]); - method public E valueAt(int); - } - - public class AtomicFile { - ctor public AtomicFile(java.io.File); - method public void delete(); - method public void failWrite(java.io.FileOutputStream); - method public void finishWrite(java.io.FileOutputStream); - method public java.io.File getBaseFile(); - method public long getLastModifiedTime(); - method public java.io.FileInputStream openRead() throws java.io.FileNotFoundException; - method public byte[] readFully() throws java.io.IOException; - method public java.io.FileOutputStream startWrite() throws java.io.IOException; - } - - public interface AttributeSet { - method public boolean getAttributeBooleanValue(String, String, boolean); - method public boolean getAttributeBooleanValue(int, boolean); - method public int getAttributeCount(); - method public float getAttributeFloatValue(String, String, float); - method public float getAttributeFloatValue(int, float); - method public int getAttributeIntValue(String, String, int); - method public int getAttributeIntValue(int, int); - method public int getAttributeListValue(String, String, String[], int); - method public int getAttributeListValue(int, String[], int); - method public String getAttributeName(int); - method public int getAttributeNameResource(int); - method public default String getAttributeNamespace(int); - method public int getAttributeResourceValue(String, String, int); - method public int getAttributeResourceValue(int, int); - method public int getAttributeUnsignedIntValue(String, String, int); - method public int getAttributeUnsignedIntValue(int, int); - method public String getAttributeValue(int); - method public String getAttributeValue(String, String); - method public String getClassAttribute(); - method public String getIdAttribute(); - method public int getIdAttributeResourceValue(int); - method public String getPositionDescription(); - method public int getStyleAttribute(); - } - - public class Base64 { - method public static byte[] decode(String, int); - method public static byte[] decode(byte[], int); - method public static byte[] decode(byte[], int, int, int); - method public static byte[] encode(byte[], int); - method public static byte[] encode(byte[], int, int, int); - method public static String encodeToString(byte[], int); - method public static String encodeToString(byte[], int, int, int); - field public static final int CRLF = 4; // 0x4 - field public static final int DEFAULT = 0; // 0x0 - field public static final int NO_CLOSE = 16; // 0x10 - field public static final int NO_PADDING = 1; // 0x1 - field public static final int NO_WRAP = 2; // 0x2 - field public static final int URL_SAFE = 8; // 0x8 - } - - public class Base64DataException extends java.io.IOException { - ctor public Base64DataException(String); - } - - public class Base64InputStream extends java.io.FilterInputStream { - ctor public Base64InputStream(java.io.InputStream, int); - method public int available(); - method public void reset(); - } - - public class Base64OutputStream extends java.io.FilterOutputStream { - ctor public Base64OutputStream(java.io.OutputStream, int); - } - - public final class CloseGuard { - ctor public CloseGuard(); - method public void close(); - method public void open(@NonNull String); - method public void warnIfOpen(); - } - - @Deprecated public final class Config { - field @Deprecated public static final boolean DEBUG = false; - field @Deprecated public static final boolean LOGD = true; - field @Deprecated public static final boolean LOGV = false; - field @Deprecated public static final boolean PROFILE = false; - field @Deprecated public static final boolean RELEASE = true; - } - - public class DebugUtils { - method public static boolean isObjectSelected(Object); - } - - public class DisplayMetrics { - ctor public DisplayMetrics(); - method public boolean equals(android.util.DisplayMetrics); - method public void setTo(android.util.DisplayMetrics); - method public void setToDefaults(); - field public static final int DENSITY_140 = 140; // 0x8c - field public static final int DENSITY_180 = 180; // 0xb4 - field public static final int DENSITY_200 = 200; // 0xc8 - field public static final int DENSITY_220 = 220; // 0xdc - field public static final int DENSITY_260 = 260; // 0x104 - field public static final int DENSITY_280 = 280; // 0x118 - field public static final int DENSITY_300 = 300; // 0x12c - field public static final int DENSITY_340 = 340; // 0x154 - field public static final int DENSITY_360 = 360; // 0x168 - field @FlaggedApi("com.android.window.flags.density_390_api") public static final int DENSITY_390 = 390; // 0x186 - field public static final int DENSITY_400 = 400; // 0x190 - field public static final int DENSITY_420 = 420; // 0x1a4 - field public static final int DENSITY_440 = 440; // 0x1b8 - field public static final int DENSITY_450 = 450; // 0x1c2 - field public static final int DENSITY_520 = 520; // 0x208 - field public static final int DENSITY_560 = 560; // 0x230 - field public static final int DENSITY_600 = 600; // 0x258 - field public static final int DENSITY_DEFAULT = 160; // 0xa0 - field public static final int DENSITY_DEVICE_STABLE; - field public static final int DENSITY_HIGH = 240; // 0xf0 - field public static final int DENSITY_LOW = 120; // 0x78 - field public static final int DENSITY_MEDIUM = 160; // 0xa0 - field public static final int DENSITY_TV = 213; // 0xd5 - field public static final int DENSITY_XHIGH = 320; // 0x140 - field public static final int DENSITY_XXHIGH = 480; // 0x1e0 - field public static final int DENSITY_XXXHIGH = 640; // 0x280 - field public float density; - field public int densityDpi; - field public int heightPixels; - field @Deprecated public float scaledDensity; - field public int widthPixels; - field public float xdpi; - field public float ydpi; - } - - public interface Dumpable { - method public void dump(@NonNull java.io.PrintWriter, @Nullable String[]); - method @NonNull public default String getDumpableName(); - } - - public interface DumpableContainer { - method public boolean addDumpable(@NonNull android.util.Dumpable); - method public boolean removeDumpable(@NonNull android.util.Dumpable); - } - - public class EventLog { - method public static int getTagCode(String); - method public static String getTagName(int); - method public static void readEvents(int[], java.util.Collection) throws java.io.IOException; - method public static int writeEvent(int, int); - method public static int writeEvent(int, long); - method public static int writeEvent(int, float); - method public static int writeEvent(int, String); - method public static int writeEvent(int, java.lang.Object...); - } - - public static final class EventLog.Event { - method public Object getData(); - method public int getProcessId(); - method public int getTag(); - method public int getThreadId(); - method public long getTimeNanos(); - } - - @Deprecated public class EventLogTags { - ctor @Deprecated public EventLogTags() throws java.io.IOException; - ctor @Deprecated public EventLogTags(java.io.BufferedReader) throws java.io.IOException; - method @Deprecated public android.util.EventLogTags.Description get(String); - method @Deprecated public android.util.EventLogTags.Description get(int); - } - - @Deprecated public static class EventLogTags.Description { - field @Deprecated public final String mName; - field @Deprecated public final int mTag; - } - - @Deprecated public class FloatMath { - } - - public abstract class FloatProperty extends android.util.Property { - ctor public FloatProperty(String); - method public final void set(T, Float); - method public abstract void setValue(T, float); - } - - public final class Half extends java.lang.Number implements java.lang.Comparable { - ctor public Half(@HalfFloat short); - ctor public Half(float); - ctor public Half(double); - ctor public Half(@NonNull String) throws java.lang.NumberFormatException; - method @HalfFloat public static short abs(@HalfFloat short); - method @HalfFloat public static short ceil(@HalfFloat short); - method public static int compare(@HalfFloat short, @HalfFloat short); - method public int compareTo(@NonNull android.util.Half); - method @HalfFloat public static short copySign(@HalfFloat short, @HalfFloat short); - method public double doubleValue(); - method public static boolean equals(@HalfFloat short, @HalfFloat short); - method public float floatValue(); - method @HalfFloat public static short floor(@HalfFloat short); - method public static int getExponent(@HalfFloat short); - method public static int getSign(@HalfFloat short); - method public static int getSignificand(@HalfFloat short); - method public static boolean greater(@HalfFloat short, @HalfFloat short); - method public static boolean greaterEquals(@HalfFloat short, @HalfFloat short); - method public static int halfToIntBits(@HalfFloat short); - method public static int halfToRawIntBits(@HalfFloat short); - method @HalfFloat public static short halfToShortBits(@HalfFloat short); - method @HalfFloat public short halfValue(); - method public static int hashCode(@HalfFloat short); - method @HalfFloat public static short intBitsToHalf(int); - method public int intValue(); - method public static boolean isInfinite(@HalfFloat short); - method public boolean isNaN(); - method public static boolean isNaN(@HalfFloat short); - method public static boolean isNormalized(@HalfFloat short); - method public static boolean less(@HalfFloat short, @HalfFloat short); - method public static boolean lessEquals(@HalfFloat short, @HalfFloat short); - method public long longValue(); - method @HalfFloat public static short max(@HalfFloat short, @HalfFloat short); - method @HalfFloat public static short min(@HalfFloat short, @HalfFloat short); - method @HalfFloat public static short parseHalf(@NonNull String) throws java.lang.NumberFormatException; - method @HalfFloat public static short round(@HalfFloat short); - method public static float toFloat(@HalfFloat short); - method @HalfFloat public static short toHalf(float); - method @NonNull public static String toHexString(@HalfFloat short); - method @NonNull public static String toString(@HalfFloat short); - method @HalfFloat public static short trunc(@HalfFloat short); - method @NonNull public static android.util.Half valueOf(@HalfFloat short); - method @NonNull public static android.util.Half valueOf(float); - method @NonNull public static android.util.Half valueOf(@NonNull String); - field @HalfFloat public static final short EPSILON = 5120; // 0x1400 - field @HalfFloat public static final short LOWEST_VALUE = -1025; // 0xfffffbff - field public static final int MAX_EXPONENT = 15; // 0xf - field @HalfFloat public static final short MAX_VALUE = 31743; // 0x7bff - field public static final int MIN_EXPONENT = -14; // 0xfffffff2 - field @HalfFloat public static final short MIN_NORMAL = 1024; // 0x400 - field @HalfFloat public static final short MIN_VALUE = 1; // 0x1 - field @HalfFloat public static final short NEGATIVE_INFINITY = -1024; // 0xfffffc00 - field @HalfFloat public static final short NEGATIVE_ZERO = -32768; // 0xffff8000 - field @HalfFloat public static final short NaN = 32256; // 0x7e00 - field @HalfFloat public static final short POSITIVE_INFINITY = 31744; // 0x7c00 - field @HalfFloat public static final short POSITIVE_ZERO = 0; // 0x0 - field public static final int SIZE = 16; // 0x10 - } - - public abstract class IntProperty extends android.util.Property { - ctor public IntProperty(String); - method public final void set(T, Integer); - method public abstract void setValue(T, int); - } - - public final class JsonReader implements java.io.Closeable { - ctor public JsonReader(java.io.Reader); - method public void beginArray() throws java.io.IOException; - method public void beginObject() throws java.io.IOException; - method public void close() throws java.io.IOException; - method public void endArray() throws java.io.IOException; - method public void endObject() throws java.io.IOException; - method public boolean hasNext() throws java.io.IOException; - method public boolean isLenient(); - method public boolean nextBoolean() throws java.io.IOException; - method public double nextDouble() throws java.io.IOException; - method public int nextInt() throws java.io.IOException; - method public long nextLong() throws java.io.IOException; - method public String nextName() throws java.io.IOException; - method public void nextNull() throws java.io.IOException; - method public String nextString() throws java.io.IOException; - method public android.util.JsonToken peek() throws java.io.IOException; - method public void setLenient(boolean); - method public void skipValue() throws java.io.IOException; - } - - public enum JsonToken { - enum_constant public static final android.util.JsonToken BEGIN_ARRAY; - enum_constant public static final android.util.JsonToken BEGIN_OBJECT; - enum_constant public static final android.util.JsonToken BOOLEAN; - enum_constant public static final android.util.JsonToken END_ARRAY; - enum_constant public static final android.util.JsonToken END_DOCUMENT; - enum_constant public static final android.util.JsonToken END_OBJECT; - enum_constant public static final android.util.JsonToken NAME; - enum_constant public static final android.util.JsonToken NULL; - enum_constant public static final android.util.JsonToken NUMBER; - enum_constant public static final android.util.JsonToken STRING; - } - - public final class JsonWriter implements java.io.Closeable { - ctor public JsonWriter(java.io.Writer); - method public android.util.JsonWriter beginArray() throws java.io.IOException; - method public android.util.JsonWriter beginObject() throws java.io.IOException; - method public void close() throws java.io.IOException; - method public android.util.JsonWriter endArray() throws java.io.IOException; - method public android.util.JsonWriter endObject() throws java.io.IOException; - method public void flush() throws java.io.IOException; - method public boolean isLenient(); - method public android.util.JsonWriter name(String) throws java.io.IOException; - method public android.util.JsonWriter nullValue() throws java.io.IOException; - method public void setIndent(String); - method public void setLenient(boolean); - method public android.util.JsonWriter value(String) throws java.io.IOException; - method public android.util.JsonWriter value(boolean) throws java.io.IOException; - method public android.util.JsonWriter value(double) throws java.io.IOException; - method public android.util.JsonWriter value(long) throws java.io.IOException; - method public android.util.JsonWriter value(Number) throws java.io.IOException; - } - - public final class LayoutDirection { - field public static final int INHERIT = 2; // 0x2 - field public static final int LOCALE = 3; // 0x3 - field public static final int LTR = 0; // 0x0 - field public static final int RTL = 1; // 0x1 - } - - public final class Log { - method public static int d(@Nullable String, @NonNull String); - method public static int d(@Nullable String, @Nullable String, @Nullable Throwable); - method public static int e(@Nullable String, @NonNull String); - method public static int e(@Nullable String, @Nullable String, @Nullable Throwable); - method @NonNull public static String getStackTraceString(@Nullable Throwable); - method public static int i(@Nullable String, @NonNull String); - method public static int i(@Nullable String, @Nullable String, @Nullable Throwable); - method public static boolean isLoggable(@Nullable @Size(max=23, apis="..23") String, int); - method public static int println(int, @Nullable String, @NonNull String); - method public static int v(@Nullable String, @NonNull String); - method public static int v(@Nullable String, @Nullable String, @Nullable Throwable); - method public static int w(@Nullable String, @NonNull String); - method public static int w(@Nullable String, @Nullable String, @Nullable Throwable); - method public static int w(@Nullable String, @Nullable Throwable); - method public static int wtf(@Nullable String, @Nullable String); - method public static int wtf(@Nullable String, @NonNull Throwable); - method public static int wtf(@Nullable String, @Nullable String, @Nullable Throwable); - field public static final int ASSERT = 7; // 0x7 - field public static final int DEBUG = 3; // 0x3 - field public static final int ERROR = 6; // 0x6 - field public static final int INFO = 4; // 0x4 - field public static final int VERBOSE = 2; // 0x2 - field public static final int WARN = 5; // 0x5 - } - - public class LogPrinter implements android.util.Printer { - ctor public LogPrinter(int, String); - method public void println(String); - } - - public class LongSparseArray implements java.lang.Cloneable { - ctor public LongSparseArray(); - ctor public LongSparseArray(int); - method public void append(long, E); - method public void clear(); - method public android.util.LongSparseArray clone(); - method public void delete(long); - method public E get(long); - method public E get(long, E); - method public int indexOfKey(long); - method public int indexOfValue(E); - method public long keyAt(int); - method public void put(long, E); - method public void remove(long); - method public void removeAt(int); - method public void setValueAt(int, E); - method public int size(); - method public E valueAt(int); - } - - public class LruCache { - ctor public LruCache(int); - method protected V create(K); - method public final int createCount(); - method protected void entryRemoved(boolean, K, V, V); - method public final void evictAll(); - method public final int evictionCount(); - method public final V get(K); - method public final int hitCount(); - method public final int maxSize(); - method public final int missCount(); - method public final V put(K, V); - method public final int putCount(); - method public final V remove(K); - method public void resize(int); - method public final int size(); - method protected int sizeOf(K, V); - method public final java.util.Map snapshot(); - method public final String toString(); - method public void trimToSize(int); - } - - public final class MalformedJsonException extends java.io.IOException { - ctor public MalformedJsonException(String); - } - - public class MonthDisplayHelper { - ctor public MonthDisplayHelper(int, int, int); - ctor public MonthDisplayHelper(int, int); - method public int getColumnOf(int); - method public int getDayAt(int, int); - method public int[] getDigitsForRow(int); - method public int getFirstDayOfMonth(); - method public int getMonth(); - method public int getNumberOfDaysInMonth(); - method public int getOffset(); - method public int getRowOf(int); - method public int getWeekStartDay(); - method public int getYear(); - method public boolean isWithinCurrentMonth(int, int); - method public void nextMonth(); - method public void previousMonth(); - } - - @Deprecated public final class MutableBoolean { - ctor @Deprecated public MutableBoolean(boolean); - field @Deprecated public boolean value; - } - - @Deprecated public final class MutableByte { - ctor @Deprecated public MutableByte(byte); - field @Deprecated public byte value; - } - - @Deprecated public final class MutableChar { - ctor @Deprecated public MutableChar(char); - field @Deprecated public char value; - } - - @Deprecated public final class MutableDouble { - ctor @Deprecated public MutableDouble(double); - field @Deprecated public double value; - } - - @Deprecated public final class MutableFloat { - ctor @Deprecated public MutableFloat(float); - field @Deprecated public float value; - } - - @Deprecated public final class MutableInt { - ctor @Deprecated public MutableInt(int); - field @Deprecated public int value; - } - - @Deprecated public final class MutableLong { - ctor @Deprecated public MutableLong(long); - field @Deprecated public long value; - } - - @Deprecated public final class MutableShort { - ctor @Deprecated public MutableShort(short); - field @Deprecated public short value; - } - - public class NoSuchPropertyException extends java.lang.RuntimeException { - ctor public NoSuchPropertyException(String); - } - - public class Pair { - ctor public Pair(F, S); - method public static android.util.Pair create(A, B); - field public final F first; - field public final S second; - } - - public class Patterns { - method public static final String concatGroups(java.util.regex.Matcher); - method public static final String digitsAndPlusOnly(java.util.regex.Matcher); - field public static final java.util.regex.Pattern DOMAIN_NAME; - field public static final java.util.regex.Pattern EMAIL_ADDRESS; - field @Deprecated public static final String GOOD_IRI_CHAR = "a-zA-Z0-9\u00a0-\ud7ff\uf900-\ufdcf\ufdf0-\uffef"; - field @Deprecated public static final java.util.regex.Pattern IP_ADDRESS; - field public static final java.util.regex.Pattern PHONE; - field @Deprecated public static final java.util.regex.Pattern TOP_LEVEL_DOMAIN; - field @Deprecated public static final String TOP_LEVEL_DOMAIN_STR = "((aero|arpa|asia|a[cdefgilmnoqrstuwxz])|(biz|b[abdefghijmnorstvwyz])|(cat|com|coop|c[acdfghiklmnoruvxyz])|d[ejkmoz]|(edu|e[cegrstu])|f[ijkmor]|(gov|g[abdefghilmnpqrstuwy])|h[kmnrtu]|(info|int|i[delmnoqrst])|(jobs|j[emop])|k[eghimnprwyz]|l[abcikrstuvy]|(mil|mobi|museum|m[acdeghklmnopqrstuvwxyz])|(name|net|n[acefgilopruz])|(org|om)|(pro|p[aefghklmnrstwy])|qa|r[eosuw]|s[abcdeghijklmnortuvyz]|(tel|travel|t[cdfghjklmnoprtvwz])|u[agksyz]|v[aceginu]|w[fs]|(\u03b4\u03bf\u03ba\u03b9\u03bc\u03ae|\u0438\u0441\u043f\u044b\u0442\u0430\u043d\u0438\u0435|\u0440\u0444|\u0441\u0440\u0431|\u05d8\u05e2\u05e1\u05d8|\u0622\u0632\u0645\u0627\u06cc\u0634\u06cc|\u0625\u062e\u062a\u0628\u0627\u0631|\u0627\u0644\u0627\u0631\u062f\u0646|\u0627\u0644\u062c\u0632\u0627\u0626\u0631|\u0627\u0644\u0633\u0639\u0648\u062f\u064a\u0629|\u0627\u0644\u0645\u063a\u0631\u0628|\u0627\u0645\u0627\u0631\u0627\u062a|\u0628\u06be\u0627\u0631\u062a|\u062a\u0648\u0646\u0633|\u0633\u0648\u0631\u064a\u0629|\u0641\u0644\u0633\u0637\u064a\u0646|\u0642\u0637\u0631|\u0645\u0635\u0631|\u092a\u0930\u0940\u0915\u094d\u0937\u093e|\u092d\u093e\u0930\u0924|\u09ad\u09be\u09b0\u09a4|\u0a2d\u0a3e\u0a30\u0a24|\u0aad\u0abe\u0ab0\u0aa4|\u0b87\u0ba8\u0bcd\u0ba4\u0bbf\u0baf\u0bbe|\u0b87\u0bb2\u0b99\u0bcd\u0b95\u0bc8|\u0b9a\u0bbf\u0b99\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0bc2\u0bb0\u0bcd|\u0baa\u0bb0\u0bbf\u0b9f\u0bcd\u0b9a\u0bc8|\u0c2d\u0c3e\u0c30\u0c24\u0c4d|\u0dbd\u0d82\u0d9a\u0dcf|\u0e44\u0e17\u0e22|\u30c6\u30b9\u30c8|\u4e2d\u56fd|\u4e2d\u570b|\u53f0\u6e7e|\u53f0\u7063|\u65b0\u52a0\u5761|\u6d4b\u8bd5|\u6e2c\u8a66|\u9999\u6e2f|\ud14c\uc2a4\ud2b8|\ud55c\uad6d|xn\\-\\-0zwm56d|xn\\-\\-11b5bs3a9aj6g|xn\\-\\-3e0b707e|xn\\-\\-45brj9c|xn\\-\\-80akhbyknj4f|xn\\-\\-90a3ac|xn\\-\\-9t4b11yi5a|xn\\-\\-clchc0ea0b2g2a9gcd|xn\\-\\-deba0ad|xn\\-\\-fiqs8s|xn\\-\\-fiqz9s|xn\\-\\-fpcrj9c3d|xn\\-\\-fzc2c9e2c|xn\\-\\-g6w251d|xn\\-\\-gecrj9c|xn\\-\\-h2brj9c|xn\\-\\-hgbk6aj7f53bba|xn\\-\\-hlcj6aya9esc7a|xn\\-\\-j6w193g|xn\\-\\-jxalpdlp|xn\\-\\-kgbechtv|xn\\-\\-kprw13d|xn\\-\\-kpry57d|xn\\-\\-lgbbat1ad8j|xn\\-\\-mgbaam7a8h|xn\\-\\-mgbayh7gpa|xn\\-\\-mgbbh1a71e|xn\\-\\-mgbc0a9azcg|xn\\-\\-mgberp4a5d4ar|xn\\-\\-o3cw4h|xn\\-\\-ogbpf8fl|xn\\-\\-p1ai|xn\\-\\-pgbs0dh|xn\\-\\-s9brj9c|xn\\-\\-wgbh1c|xn\\-\\-wgbl6a|xn\\-\\-xkc2al3hye2a|xn\\-\\-xkc2dl3a5ee0h|xn\\-\\-yfro4i67o|xn\\-\\-ygbi2ammx|xn\\-\\-zckzah|xxx)|y[et]|z[amw])"; - field @Deprecated public static final String TOP_LEVEL_DOMAIN_STR_FOR_WEB_URL = "(?:(?:aero|arpa|asia|a[cdefgilmnoqrstuwxz])|(?:biz|b[abdefghijmnorstvwyz])|(?:cat|com|coop|c[acdfghiklmnoruvxyz])|d[ejkmoz]|(?:edu|e[cegrstu])|f[ijkmor]|(?:gov|g[abdefghilmnpqrstuwy])|h[kmnrtu]|(?:info|int|i[delmnoqrst])|(?:jobs|j[emop])|k[eghimnprwyz]|l[abcikrstuvy]|(?:mil|mobi|museum|m[acdeghklmnopqrstuvwxyz])|(?:name|net|n[acefgilopruz])|(?:org|om)|(?:pro|p[aefghklmnrstwy])|qa|r[eosuw]|s[abcdeghijklmnortuvyz]|(?:tel|travel|t[cdfghjklmnoprtvwz])|u[agksyz]|v[aceginu]|w[fs]|(?:\u03b4\u03bf\u03ba\u03b9\u03bc\u03ae|\u0438\u0441\u043f\u044b\u0442\u0430\u043d\u0438\u0435|\u0440\u0444|\u0441\u0440\u0431|\u05d8\u05e2\u05e1\u05d8|\u0622\u0632\u0645\u0627\u06cc\u0634\u06cc|\u0625\u062e\u062a\u0628\u0627\u0631|\u0627\u0644\u0627\u0631\u062f\u0646|\u0627\u0644\u062c\u0632\u0627\u0626\u0631|\u0627\u0644\u0633\u0639\u0648\u062f\u064a\u0629|\u0627\u0644\u0645\u063a\u0631\u0628|\u0627\u0645\u0627\u0631\u0627\u062a|\u0628\u06be\u0627\u0631\u062a|\u062a\u0648\u0646\u0633|\u0633\u0648\u0631\u064a\u0629|\u0641\u0644\u0633\u0637\u064a\u0646|\u0642\u0637\u0631|\u0645\u0635\u0631|\u092a\u0930\u0940\u0915\u094d\u0937\u093e|\u092d\u093e\u0930\u0924|\u09ad\u09be\u09b0\u09a4|\u0a2d\u0a3e\u0a30\u0a24|\u0aad\u0abe\u0ab0\u0aa4|\u0b87\u0ba8\u0bcd\u0ba4\u0bbf\u0baf\u0bbe|\u0b87\u0bb2\u0b99\u0bcd\u0b95\u0bc8|\u0b9a\u0bbf\u0b99\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0bc2\u0bb0\u0bcd|\u0baa\u0bb0\u0bbf\u0b9f\u0bcd\u0b9a\u0bc8|\u0c2d\u0c3e\u0c30\u0c24\u0c4d|\u0dbd\u0d82\u0d9a\u0dcf|\u0e44\u0e17\u0e22|\u30c6\u30b9\u30c8|\u4e2d\u56fd|\u4e2d\u570b|\u53f0\u6e7e|\u53f0\u7063|\u65b0\u52a0\u5761|\u6d4b\u8bd5|\u6e2c\u8a66|\u9999\u6e2f|\ud14c\uc2a4\ud2b8|\ud55c\uad6d|xn\\-\\-0zwm56d|xn\\-\\-11b5bs3a9aj6g|xn\\-\\-3e0b707e|xn\\-\\-45brj9c|xn\\-\\-80akhbyknj4f|xn\\-\\-90a3ac|xn\\-\\-9t4b11yi5a|xn\\-\\-clchc0ea0b2g2a9gcd|xn\\-\\-deba0ad|xn\\-\\-fiqs8s|xn\\-\\-fiqz9s|xn\\-\\-fpcrj9c3d|xn\\-\\-fzc2c9e2c|xn\\-\\-g6w251d|xn\\-\\-gecrj9c|xn\\-\\-h2brj9c|xn\\-\\-hgbk6aj7f53bba|xn\\-\\-hlcj6aya9esc7a|xn\\-\\-j6w193g|xn\\-\\-jxalpdlp|xn\\-\\-kgbechtv|xn\\-\\-kprw13d|xn\\-\\-kpry57d|xn\\-\\-lgbbat1ad8j|xn\\-\\-mgbaam7a8h|xn\\-\\-mgbayh7gpa|xn\\-\\-mgbbh1a71e|xn\\-\\-mgbc0a9azcg|xn\\-\\-mgberp4a5d4ar|xn\\-\\-o3cw4h|xn\\-\\-ogbpf8fl|xn\\-\\-p1ai|xn\\-\\-pgbs0dh|xn\\-\\-s9brj9c|xn\\-\\-wgbh1c|xn\\-\\-wgbl6a|xn\\-\\-xkc2al3hye2a|xn\\-\\-xkc2dl3a5ee0h|xn\\-\\-yfro4i67o|xn\\-\\-ygbi2ammx|xn\\-\\-zckzah|xxx)|y[et]|z[amw]))"; - field public static final java.util.regex.Pattern WEB_URL; - } - - public class PrintStreamPrinter implements android.util.Printer { - ctor public PrintStreamPrinter(java.io.PrintStream); - method public void println(String); - } - - public class PrintWriterPrinter implements android.util.Printer { - ctor public PrintWriterPrinter(java.io.PrintWriter); - method public void println(String); - } - - public interface Printer { - method public void println(String); - } - - public abstract class Property { - ctor public Property(Class, String); - method public abstract V get(T); - method public String getName(); - method public Class getType(); - method public boolean isReadOnly(); - method public static android.util.Property of(Class, Class, String); - method public void set(T, V); - } - - public final class Range> { - ctor public Range(T, T); - method public T clamp(T); - method public boolean contains(T); - method public boolean contains(android.util.Range); - method public static > android.util.Range create(T, T); - method public android.util.Range extend(android.util.Range); - method public android.util.Range extend(T, T); - method public android.util.Range extend(T); - method public T getLower(); - method public T getUpper(); - method public android.util.Range intersect(android.util.Range); - method public android.util.Range intersect(T, T); - } - - public final class Rational extends java.lang.Number implements java.lang.Comparable { - ctor public Rational(int, int); - method public int compareTo(android.util.Rational); - method public double doubleValue(); - method public float floatValue(); - method public int getDenominator(); - method public int getNumerator(); - method public int intValue(); - method public boolean isFinite(); - method public boolean isInfinite(); - method public boolean isNaN(); - method public boolean isZero(); - method public long longValue(); - method public static android.util.Rational parseRational(String) throws java.lang.NumberFormatException; - field public static final android.util.Rational NEGATIVE_INFINITY; - field public static final android.util.Rational NaN; - field public static final android.util.Rational POSITIVE_INFINITY; - field public static final android.util.Rational ZERO; - } - - public final class Size { - ctor public Size(int, int); - method public int getHeight(); - method public int getWidth(); - method public static android.util.Size parseSize(String) throws java.lang.NumberFormatException; - } - - public final class SizeF implements android.os.Parcelable { - ctor public SizeF(float, float); - method public int describeContents(); - method public float getHeight(); - method public float getWidth(); - method public static android.util.SizeF parseSizeF(String) throws java.lang.NumberFormatException; - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class SparseArray implements java.lang.Cloneable { - ctor public SparseArray(); - ctor public SparseArray(int); - method public void append(int, E); - method public void clear(); - method public android.util.SparseArray clone(); - method public boolean contains(int); - method public boolean contentEquals(@Nullable android.util.SparseArray); - method public int contentHashCode(); - method public void delete(int); - method public E get(int); - method public E get(int, E); - method public int indexOfKey(int); - method public int indexOfValue(E); - method public int keyAt(int); - method public void put(int, E); - method public void remove(int); - method public void removeAt(int); - method public void removeAtRange(int, int); - method public void set(int, E); - method public void setValueAt(int, E); - method public int size(); - method public E valueAt(int); - } - - public class SparseBooleanArray implements java.lang.Cloneable { - ctor public SparseBooleanArray(); - ctor public SparseBooleanArray(int); - method public void append(int, boolean); - method public void clear(); - method public android.util.SparseBooleanArray clone(); - method public void delete(int); - method public boolean get(int); - method public boolean get(int, boolean); - method public int indexOfKey(int); - method public int indexOfValue(boolean); - method public int keyAt(int); - method public void put(int, boolean); - method public void removeAt(int); - method public void setValueAt(int, boolean); - method public int size(); - method public boolean valueAt(int); - } - - public class SparseIntArray implements java.lang.Cloneable { - ctor public SparseIntArray(); - ctor public SparseIntArray(int); - method public void append(int, int); - method public void clear(); - method public android.util.SparseIntArray clone(); - method public void delete(int); - method public int get(int); - method public int get(int, int); - method public int indexOfKey(int); - method public int indexOfValue(int); - method public int keyAt(int); - method public void put(int, int); - method public void removeAt(int); - method public void setValueAt(int, int); - method public int size(); - method public int valueAt(int); - } - - public class SparseLongArray implements java.lang.Cloneable { - ctor public SparseLongArray(); - ctor public SparseLongArray(int); - method public void append(int, long); - method public void clear(); - method public android.util.SparseLongArray clone(); - method public void delete(int); - method public long get(int); - method public long get(int, long); - method public int indexOfKey(int); - method public int indexOfValue(long); - method public int keyAt(int); - method public void put(int, long); - method public void removeAt(int); - method public int size(); - method public long valueAt(int); - } - - public class StateSet { - method public static String dump(int[]); - method public static boolean isWildCard(int[]); - method public static boolean stateSetMatches(int[], int[]); - method public static boolean stateSetMatches(int[], int); - method public static int[] trimStateSet(int[], int); - field public static final int[] NOTHING; - field public static final int[] WILD_CARD; - } - - public class StringBuilderPrinter implements android.util.Printer { - ctor public StringBuilderPrinter(StringBuilder); - method public void println(String); - } - - public class TimeFormatException extends java.lang.RuntimeException { - } - - public class TimeUtils { - method public static java.util.TimeZone getTimeZone(int, boolean, long, String); - method public static String getTimeZoneDatabaseVersion(); - method @Nullable public static java.util.List getTimeZoneIdsForCountryCode(@NonNull String); - method public static boolean isTimeBetween(@NonNull java.time.LocalTime, @NonNull java.time.LocalTime, @NonNull java.time.LocalTime); - } - - @Deprecated public class TimingLogger { - ctor @Deprecated public TimingLogger(String, String); - method @Deprecated public void addSplit(String); - method @Deprecated public void dumpToLog(); - method @Deprecated public void reset(String, String); - method @Deprecated public void reset(); - } - - public class TypedValue { - ctor public TypedValue(); - method public static float applyDimension(int, float, android.util.DisplayMetrics); - method public final CharSequence coerceToString(); - method public static final String coerceToString(int, int); - method public static float complexToDimension(int, android.util.DisplayMetrics); - method public static int complexToDimensionPixelOffset(int, android.util.DisplayMetrics); - method public static int complexToDimensionPixelSize(int, android.util.DisplayMetrics); - method public static float complexToFloat(int); - method public static float complexToFraction(int, float, float); - method public static float convertDimensionToPixels(int, float, @NonNull android.util.DisplayMetrics); - method public static float convertPixelsToDimension(int, float, @NonNull android.util.DisplayMetrics); - method public static float deriveDimension(int, float, @NonNull android.util.DisplayMetrics); - method public int getComplexUnit(); - method public float getDimension(android.util.DisplayMetrics); - method public final float getFloat(); - method public float getFraction(float, float); - method public boolean isColorType(); - method public void setTo(android.util.TypedValue); - field public static final int COMPLEX_MANTISSA_MASK = 16777215; // 0xffffff - field public static final int COMPLEX_MANTISSA_SHIFT = 8; // 0x8 - field public static final int COMPLEX_RADIX_0p23 = 3; // 0x3 - field public static final int COMPLEX_RADIX_16p7 = 1; // 0x1 - field public static final int COMPLEX_RADIX_23p0 = 0; // 0x0 - field public static final int COMPLEX_RADIX_8p15 = 2; // 0x2 - field public static final int COMPLEX_RADIX_MASK = 3; // 0x3 - field public static final int COMPLEX_RADIX_SHIFT = 4; // 0x4 - field public static final int COMPLEX_UNIT_DIP = 1; // 0x1 - field public static final int COMPLEX_UNIT_FRACTION = 0; // 0x0 - field public static final int COMPLEX_UNIT_FRACTION_PARENT = 1; // 0x1 - field public static final int COMPLEX_UNIT_IN = 4; // 0x4 - field public static final int COMPLEX_UNIT_MASK = 15; // 0xf - field public static final int COMPLEX_UNIT_MM = 5; // 0x5 - field public static final int COMPLEX_UNIT_PT = 3; // 0x3 - field public static final int COMPLEX_UNIT_PX = 0; // 0x0 - field public static final int COMPLEX_UNIT_SHIFT = 0; // 0x0 - field public static final int COMPLEX_UNIT_SP = 2; // 0x2 - field public static final int DATA_NULL_EMPTY = 1; // 0x1 - field public static final int DATA_NULL_UNDEFINED = 0; // 0x0 - field public static final int DENSITY_DEFAULT = 0; // 0x0 - field public static final int DENSITY_NONE = 65535; // 0xffff - field public static final int TYPE_ATTRIBUTE = 2; // 0x2 - field public static final int TYPE_DIMENSION = 5; // 0x5 - field public static final int TYPE_FIRST_COLOR_INT = 28; // 0x1c - field public static final int TYPE_FIRST_INT = 16; // 0x10 - field public static final int TYPE_FLOAT = 4; // 0x4 - field public static final int TYPE_FRACTION = 6; // 0x6 - field public static final int TYPE_INT_BOOLEAN = 18; // 0x12 - field public static final int TYPE_INT_COLOR_ARGB4 = 30; // 0x1e - field public static final int TYPE_INT_COLOR_ARGB8 = 28; // 0x1c - field public static final int TYPE_INT_COLOR_RGB4 = 31; // 0x1f - field public static final int TYPE_INT_COLOR_RGB8 = 29; // 0x1d - field public static final int TYPE_INT_DEC = 16; // 0x10 - field public static final int TYPE_INT_HEX = 17; // 0x11 - field public static final int TYPE_LAST_COLOR_INT = 31; // 0x1f - field public static final int TYPE_LAST_INT = 31; // 0x1f - field public static final int TYPE_NULL = 0; // 0x0 - field public static final int TYPE_REFERENCE = 1; // 0x1 - field public static final int TYPE_STRING = 3; // 0x3 - field public int assetCookie; - field public int changingConfigurations; - field public int data; - field public int density; - field @AnyRes public int resourceId; - field public int sourceResourceId; - field public CharSequence string; - field public int type; - } - - public class Xml { - method public static android.util.AttributeSet asAttributeSet(org.xmlpull.v1.XmlPullParser); - method public static android.util.Xml.Encoding findEncodingByName(String) throws java.io.UnsupportedEncodingException; - method public static org.xmlpull.v1.XmlPullParser newPullParser(); - method public static org.xmlpull.v1.XmlSerializer newSerializer(); - method public static void parse(String, org.xml.sax.ContentHandler) throws org.xml.sax.SAXException; - method public static void parse(java.io.Reader, org.xml.sax.ContentHandler) throws java.io.IOException, org.xml.sax.SAXException; - method public static void parse(java.io.InputStream, android.util.Xml.Encoding, org.xml.sax.ContentHandler) throws java.io.IOException, org.xml.sax.SAXException; - field public static String FEATURE_RELAXED; - } - - public enum Xml.Encoding { - enum_constant public static final android.util.Xml.Encoding ISO_8859_1; - enum_constant public static final android.util.Xml.Encoding US_ASCII; - enum_constant public static final android.util.Xml.Encoding UTF_16; - enum_constant public static final android.util.Xml.Encoding UTF_8; - } - -} - -package android.util.proto { - - public final class ProtoOutputStream { - ctor public ProtoOutputStream(); - ctor public ProtoOutputStream(int); - ctor public ProtoOutputStream(@NonNull java.io.OutputStream); - method public static int checkFieldId(long, long); - method public void dump(@NonNull String); - method public void end(long); - method public void flush(); - method @NonNull public byte[] getBytes(); - method @Nullable public static String getFieldCountString(long); - method @NonNull public static String getFieldIdString(long); - method @Nullable public static String getFieldTypeString(long); - method public int getRawSize(); - method @Nullable public static String getWireTypeString(int); - method public static long makeFieldId(int, long); - method public static long makeToken(int, boolean, int, int, int); - method public long start(long); - method @NonNull public static String token2String(long); - method public void write(long, double); - method public void write(long, float); - method public void write(long, int); - method public void write(long, long); - method public void write(long, boolean); - method public void write(long, @Nullable String); - method public void write(long, @Nullable byte[]); - method public void writeTag(int, int); - field public static final long FIELD_COUNT_MASK = 16492674416640L; // 0xf0000000000L - field public static final long FIELD_COUNT_PACKED = 5497558138880L; // 0x50000000000L - field public static final long FIELD_COUNT_REPEATED = 2199023255552L; // 0x20000000000L - field public static final int FIELD_COUNT_SHIFT = 40; // 0x28 - field public static final long FIELD_COUNT_SINGLE = 1099511627776L; // 0x10000000000L - field public static final long FIELD_COUNT_UNKNOWN = 0L; // 0x0L - field public static final int FIELD_ID_SHIFT = 3; // 0x3 - field public static final long FIELD_TYPE_BOOL = 34359738368L; // 0x800000000L - field public static final long FIELD_TYPE_BYTES = 51539607552L; // 0xc00000000L - field public static final long FIELD_TYPE_DOUBLE = 4294967296L; // 0x100000000L - field public static final long FIELD_TYPE_ENUM = 60129542144L; // 0xe00000000L - field public static final long FIELD_TYPE_FIXED32 = 30064771072L; // 0x700000000L - field public static final long FIELD_TYPE_FIXED64 = 25769803776L; // 0x600000000L - field public static final long FIELD_TYPE_FLOAT = 8589934592L; // 0x200000000L - field public static final long FIELD_TYPE_INT32 = 21474836480L; // 0x500000000L - field public static final long FIELD_TYPE_INT64 = 12884901888L; // 0x300000000L - field public static final long FIELD_TYPE_MASK = 1095216660480L; // 0xff00000000L - field public static final long FIELD_TYPE_MESSAGE = 47244640256L; // 0xb00000000L - field public static final long FIELD_TYPE_SFIXED32 = 64424509440L; // 0xf00000000L - field public static final long FIELD_TYPE_SFIXED64 = 68719476736L; // 0x1000000000L - field public static final int FIELD_TYPE_SHIFT = 32; // 0x20 - field public static final long FIELD_TYPE_SINT32 = 73014444032L; // 0x1100000000L - field public static final long FIELD_TYPE_SINT64 = 77309411328L; // 0x1200000000L - field public static final long FIELD_TYPE_STRING = 38654705664L; // 0x900000000L - field public static final long FIELD_TYPE_UINT32 = 55834574848L; // 0xd00000000L - field public static final long FIELD_TYPE_UINT64 = 17179869184L; // 0x400000000L - field public static final int WIRE_TYPE_END_GROUP = 4; // 0x4 - field public static final int WIRE_TYPE_FIXED32 = 5; // 0x5 - field public static final int WIRE_TYPE_FIXED64 = 1; // 0x1 - field public static final int WIRE_TYPE_LENGTH_DELIMITED = 2; // 0x2 - field public static final int WIRE_TYPE_MASK = 7; // 0x7 - field public static final int WIRE_TYPE_START_GROUP = 3; // 0x3 - field public static final int WIRE_TYPE_VARINT = 0; // 0x0 - } - -} - -package android.view { - - public abstract class AbsSavedState implements android.os.Parcelable { - ctor protected AbsSavedState(android.os.Parcelable); - ctor protected AbsSavedState(android.os.Parcel); - ctor protected AbsSavedState(android.os.Parcel, ClassLoader); - method public int describeContents(); - method public final android.os.Parcelable getSuperState(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final android.view.AbsSavedState EMPTY_STATE; - } - - public abstract class ActionMode { - ctor public ActionMode(); - method public abstract void finish(); - method public abstract android.view.View getCustomView(); - method public abstract android.view.Menu getMenu(); - method public abstract android.view.MenuInflater getMenuInflater(); - method public abstract CharSequence getSubtitle(); - method public Object getTag(); - method public abstract CharSequence getTitle(); - method public boolean getTitleOptionalHint(); - method public int getType(); - method public void hide(long); - method public abstract void invalidate(); - method public void invalidateContentRect(); - method public boolean isTitleOptional(); - method public void onWindowFocusChanged(boolean); - method public abstract void setCustomView(android.view.View); - method public abstract void setSubtitle(CharSequence); - method public abstract void setSubtitle(@StringRes int); - method public void setTag(Object); - method public abstract void setTitle(CharSequence); - method public abstract void setTitle(@StringRes int); - method public void setTitleOptionalHint(boolean); - method public void setType(int); - field public static final int DEFAULT_HIDE_DURATION = -1; // 0xffffffff - field public static final int TYPE_FLOATING = 1; // 0x1 - field public static final int TYPE_PRIMARY = 0; // 0x0 - } - - public static interface ActionMode.Callback { - method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem); - method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu); - method public void onDestroyActionMode(android.view.ActionMode); - method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu); - } - - public abstract static class ActionMode.Callback2 implements android.view.ActionMode.Callback { - ctor public ActionMode.Callback2(); - method public void onGetContentRect(android.view.ActionMode, android.view.View, android.graphics.Rect); - } - - public abstract class ActionProvider { - ctor public ActionProvider(@NonNull android.content.Context); - method public boolean hasSubMenu(); - method public boolean isVisible(); - method @Deprecated @NonNull public abstract android.view.View onCreateActionView(); - method @NonNull public android.view.View onCreateActionView(@NonNull android.view.MenuItem); - method public boolean onPerformDefaultAction(); - method public void onPrepareSubMenu(@NonNull android.view.SubMenu); - method public boolean overridesItemVisibility(); - method public void refreshVisibility(); - method public void setVisibilityListener(@Nullable android.view.ActionProvider.VisibilityListener); - } - - public static interface ActionProvider.VisibilityListener { - method public void onActionProviderVisibilityChanged(boolean); - } - - @UiThread public interface AttachedSurfaceControl { - method public default void addOnBufferTransformHintChangedListener(@NonNull android.view.AttachedSurfaceControl.OnBufferTransformHintChangedListener); - method public boolean applyTransactionOnDraw(@NonNull android.view.SurfaceControl.Transaction); - method @Nullable public android.view.SurfaceControl.Transaction buildReparentTransaction(@NonNull android.view.SurfaceControl); - method public default int getBufferTransformHint(); - method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") @NonNull public default android.window.InputTransferToken getInputTransferToken(); - method @FlaggedApi("com.android.window.flags.jank_api") @NonNull public default android.view.SurfaceControl.OnJankDataListenerRegistration registerOnJankDataListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.SurfaceControl.OnJankDataListener); - method public default void removeOnBufferTransformHintChangedListener(@NonNull android.view.AttachedSurfaceControl.OnBufferTransformHintChangedListener); - method public default void setChildBoundingInsets(@NonNull android.graphics.Rect); - method public default void setTouchableRegion(@Nullable android.graphics.Region); - } - - @UiThread public static interface AttachedSurfaceControl.OnBufferTransformHintChangedListener { - method public void onBufferTransformHintChanged(int); - } - - public final class Choreographer { - method public static android.view.Choreographer getInstance(); - method public void postFrameCallback(android.view.Choreographer.FrameCallback); - method public void postFrameCallbackDelayed(android.view.Choreographer.FrameCallback, long); - method public void postVsyncCallback(@NonNull android.view.Choreographer.VsyncCallback); - method public void removeFrameCallback(android.view.Choreographer.FrameCallback); - method public void removeVsyncCallback(@Nullable android.view.Choreographer.VsyncCallback); - } - - public static interface Choreographer.FrameCallback { - method public void doFrame(long); - } - - public static class Choreographer.FrameData { - method public long getFrameTimeNanos(); - method @NonNull public android.view.Choreographer.FrameTimeline[] getFrameTimelines(); - method @NonNull public android.view.Choreographer.FrameTimeline getPreferredFrameTimeline(); - } - - public static class Choreographer.FrameTimeline { - method public long getDeadlineNanos(); - method public long getExpectedPresentationTimeNanos(); - method public long getVsyncId(); - } - - public static interface Choreographer.VsyncCallback { - method public void onVsync(@NonNull android.view.Choreographer.FrameData); - } - - public interface CollapsibleActionView { - method public void onActionViewCollapsed(); - method public void onActionViewExpanded(); - } - - public final class ContentInfo implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.content.ClipData getClip(); - method @Nullable public android.os.Bundle getExtras(); - method public int getFlags(); - method @Nullable public android.net.Uri getLinkUri(); - method public int getSource(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_CONVERT_TO_PLAIN_TEXT = 1; // 0x1 - field public static final int SOURCE_APP = 0; // 0x0 - field public static final int SOURCE_AUTOFILL = 4; // 0x4 - field public static final int SOURCE_CLIPBOARD = 1; // 0x1 - field public static final int SOURCE_DRAG_AND_DROP = 3; // 0x3 - field public static final int SOURCE_INPUT_METHOD = 2; // 0x2 - field public static final int SOURCE_PROCESS_TEXT = 5; // 0x5 - } - - public static final class ContentInfo.Builder { - ctor public ContentInfo.Builder(@NonNull android.view.ContentInfo); - ctor public ContentInfo.Builder(@NonNull android.content.ClipData, int); - method @NonNull public android.view.ContentInfo build(); - method @NonNull public android.view.ContentInfo.Builder setClip(@NonNull android.content.ClipData); - method @NonNull public android.view.ContentInfo.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.view.ContentInfo.Builder setFlags(int); - method @NonNull public android.view.ContentInfo.Builder setLinkUri(@Nullable android.net.Uri); - method @NonNull public android.view.ContentInfo.Builder setSource(int); - } - - public interface ContextMenu extends android.view.Menu { - method public void clearHeader(); - method public android.view.ContextMenu setHeaderIcon(@DrawableRes int); - method public android.view.ContextMenu setHeaderIcon(android.graphics.drawable.Drawable); - method public android.view.ContextMenu setHeaderTitle(@StringRes int); - method public android.view.ContextMenu setHeaderTitle(CharSequence); - method public android.view.ContextMenu setHeaderView(android.view.View); - } - - public static interface ContextMenu.ContextMenuInfo { - } - - public class ContextThemeWrapper extends android.content.ContextWrapper { - ctor public ContextThemeWrapper(); - ctor public ContextThemeWrapper(android.content.Context, @StyleRes int); - ctor public ContextThemeWrapper(android.content.Context, android.content.res.Resources.Theme); - method public void applyOverrideConfiguration(android.content.res.Configuration); - method protected void onApplyThemeResource(android.content.res.Resources.Theme, int, boolean); - method public void setTheme(@Nullable android.content.res.Resources.Theme); - } - - public final class Display { - method public long getAppVsyncOffsetNanos(); - method public void getCurrentSizeRange(android.graphics.Point, android.graphics.Point); - method @Nullable public android.view.DisplayCutout getCutout(); - method @Nullable public android.hardware.display.DeviceProductInfo getDeviceProductInfo(); - method public int getDisplayId(); - method public int getFlags(); - method public android.view.Display.HdrCapabilities getHdrCapabilities(); - method public float getHdrSdrRatio(); - method @Deprecated public int getHeight(); - method @FlaggedApi("com.android.server.display.feature.flags.highest_hdr_sdr_ratio_api") public float getHighestHdrSdrRatio(); - method @Deprecated public void getMetrics(android.util.DisplayMetrics); - method public android.view.Display.Mode getMode(); - method public String getName(); - method @Deprecated public int getOrientation(); - method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") @NonNull public android.hardware.OverlayProperties getOverlaySupport(); - method @Deprecated public int getPixelFormat(); - method @Nullable public android.graphics.ColorSpace getPreferredWideGamutColorSpace(); - method public long getPresentationDeadlineNanos(); - method @Deprecated public void getRealMetrics(android.util.DisplayMetrics); - method @Deprecated public void getRealSize(android.graphics.Point); - method @Deprecated public void getRectSize(android.graphics.Rect); - method public float getRefreshRate(); - method public int getRotation(); - method @Nullable public android.view.RoundedCorner getRoundedCorner(int); - method @NonNull public android.view.DisplayShape getShape(); - method @Deprecated public void getSize(android.graphics.Point); - method public int getState(); - method @FlaggedApi("com.android.server.display.feature.flags.enable_get_suggested_frame_rate") public float getSuggestedFrameRate(int); - method public android.view.Display.Mode[] getSupportedModes(); - method @FlaggedApi("com.android.server.display.feature.flags.enable_get_supported_refresh_rates") @NonNull public float[] getSupportedRefreshRates(); - method @Deprecated public int getWidth(); - method @FlaggedApi("com.android.server.display.feature.flags.enable_has_arr_support") public boolean hasArrSupport(); - method public boolean isHdr(); - method public boolean isHdrSdrRatioAvailable(); - method public boolean isMinimalPostProcessingSupported(); - method public boolean isValid(); - method public boolean isWideColorGamut(); - method public void registerHdrSdrRatioChangedListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public void unregisterHdrSdrRatioChangedListener(@NonNull java.util.function.Consumer); - field public static final int DEFAULT_DISPLAY = 0; // 0x0 - field public static final int FLAG_PRESENTATION = 8; // 0x8 - field public static final int FLAG_PRIVATE = 4; // 0x4 - field public static final int FLAG_ROUND = 16; // 0x10 - field public static final int FLAG_SECURE = 2; // 0x2 - field public static final int FLAG_SUPPORTS_PROTECTED_BUFFERS = 1; // 0x1 - field @FlaggedApi("com.android.server.display.feature.flags.enable_get_suggested_frame_rate") public static final int FRAME_RATE_CATEGORY_HIGH = 1; // 0x1 - field @FlaggedApi("com.android.server.display.feature.flags.enable_get_suggested_frame_rate") public static final int FRAME_RATE_CATEGORY_NORMAL = 0; // 0x0 - field public static final int INVALID_DISPLAY = -1; // 0xffffffff - field public static final int STATE_DOZE = 3; // 0x3 - field public static final int STATE_DOZE_SUSPEND = 4; // 0x4 - field public static final int STATE_OFF = 1; // 0x1 - field public static final int STATE_ON = 2; // 0x2 - field public static final int STATE_ON_SUSPEND = 6; // 0x6 - field public static final int STATE_UNKNOWN = 0; // 0x0 - field public static final int STATE_VR = 5; // 0x5 - } - - public static final class Display.HdrCapabilities implements android.os.Parcelable { - method public int describeContents(); - method public float getDesiredMaxAverageLuminance(); - method public float getDesiredMaxLuminance(); - method public float getDesiredMinLuminance(); - method @Deprecated public int[] getSupportedHdrTypes(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int HDR_TYPE_DOLBY_VISION = 1; // 0x1 - field public static final int HDR_TYPE_HDR10 = 2; // 0x2 - field public static final int HDR_TYPE_HDR10_PLUS = 4; // 0x4 - field public static final int HDR_TYPE_HLG = 3; // 0x3 - field public static final int HDR_TYPE_INVALID = -1; // 0xffffffff - field public static final float INVALID_LUMINANCE = -1.0f; - } - - public static final class Display.Mode implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public float[] getAlternativeRefreshRates(); - method public int getModeId(); - method public int getPhysicalHeight(); - method public int getPhysicalWidth(); - method public float getRefreshRate(); - method @NonNull public int[] getSupportedHdrTypes(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class DisplayCutout { - ctor public DisplayCutout(@NonNull android.graphics.Insets, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect); - ctor public DisplayCutout(@NonNull android.graphics.Insets, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @NonNull android.graphics.Insets); - ctor @Deprecated public DisplayCutout(@Nullable android.graphics.Rect, @Nullable java.util.List); - method @NonNull public android.graphics.Rect getBoundingRectBottom(); - method @NonNull public android.graphics.Rect getBoundingRectLeft(); - method @NonNull public android.graphics.Rect getBoundingRectRight(); - method @NonNull public android.graphics.Rect getBoundingRectTop(); - method @NonNull public java.util.List getBoundingRects(); - method @Nullable public android.graphics.Path getCutoutPath(); - method public int getSafeInsetBottom(); - method public int getSafeInsetLeft(); - method public int getSafeInsetRight(); - method public int getSafeInsetTop(); - method @NonNull public android.graphics.Insets getWaterfallInsets(); - } - - public static final class DisplayCutout.Builder { - ctor public DisplayCutout.Builder(); - method @NonNull public android.view.DisplayCutout build(); - method @NonNull public android.view.DisplayCutout.Builder setBoundingRectBottom(@NonNull android.graphics.Rect); - method @NonNull public android.view.DisplayCutout.Builder setBoundingRectLeft(@NonNull android.graphics.Rect); - method @NonNull public android.view.DisplayCutout.Builder setBoundingRectRight(@NonNull android.graphics.Rect); - method @NonNull public android.view.DisplayCutout.Builder setBoundingRectTop(@NonNull android.graphics.Rect); - method @NonNull public android.view.DisplayCutout.Builder setCutoutPath(@NonNull android.graphics.Path); - method @NonNull public android.view.DisplayCutout.Builder setSafeInsets(@NonNull android.graphics.Insets); - method @NonNull public android.view.DisplayCutout.Builder setWaterfallInsets(@NonNull android.graphics.Insets); - } - - public final class DisplayShape implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.graphics.Path getPath(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class DragAndDropPermissions implements android.os.Parcelable { - method public int describeContents(); - method public void release(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class DragEvent implements android.os.Parcelable { - method public int describeContents(); - method public int getAction(); - method public android.content.ClipData getClipData(); - method public android.content.ClipDescription getClipDescription(); - method public Object getLocalState(); - method public boolean getResult(); - method public float getX(); - method public float getY(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int ACTION_DRAG_ENDED = 4; // 0x4 - field public static final int ACTION_DRAG_ENTERED = 5; // 0x5 - field public static final int ACTION_DRAG_EXITED = 6; // 0x6 - field public static final int ACTION_DRAG_LOCATION = 2; // 0x2 - field public static final int ACTION_DRAG_STARTED = 1; // 0x1 - field public static final int ACTION_DROP = 3; // 0x3 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class FocusFinder { - method public android.view.View findNearestTouchable(android.view.ViewGroup, int, int, int, int[]); - method public final android.view.View findNextFocus(android.view.ViewGroup, android.view.View, int); - method public android.view.View findNextFocusFromRect(android.view.ViewGroup, android.graphics.Rect, int); - method public android.view.View findNextKeyboardNavigationCluster(@NonNull android.view.View, @Nullable android.view.View, int); - method public static android.view.FocusFinder getInstance(); - } - - public final class FrameMetrics { - ctor public FrameMetrics(android.view.FrameMetrics); - method public long getMetric(int); - field public static final int ANIMATION_DURATION = 2; // 0x2 - field public static final int COMMAND_ISSUE_DURATION = 6; // 0x6 - field public static final int DEADLINE = 13; // 0xd - field public static final int DRAW_DURATION = 4; // 0x4 - field public static final int FIRST_DRAW_FRAME = 9; // 0x9 - field @FlaggedApi("com.android.window.flags.jank_api") public static final int FRAME_TIMELINE_VSYNC_ID = 14; // 0xe - field public static final int GPU_DURATION = 12; // 0xc - field public static final int INPUT_HANDLING_DURATION = 1; // 0x1 - field public static final int INTENDED_VSYNC_TIMESTAMP = 10; // 0xa - field public static final int LAYOUT_MEASURE_DURATION = 3; // 0x3 - field public static final int SWAP_BUFFERS_DURATION = 7; // 0x7 - field public static final int SYNC_DURATION = 5; // 0x5 - field public static final int TOTAL_DURATION = 8; // 0x8 - field public static final int UNKNOWN_DELAY_DURATION = 0; // 0x0 - field public static final int VSYNC_TIMESTAMP = 11; // 0xb - } - - public abstract class FrameStats { - ctor public FrameStats(); - method public final long getEndTimeNano(); - method public final int getFrameCount(); - method public final long getFramePresentedTimeNano(int); - method public final long getRefreshPeriodNano(); - method public final long getStartTimeNano(); - field public static final long UNDEFINED_TIME_NANO = -1L; // 0xffffffffffffffffL - } - - public class GestureDetector { - ctor @Deprecated public GestureDetector(@NonNull android.view.GestureDetector.OnGestureListener, @Nullable android.os.Handler); - ctor @Deprecated public GestureDetector(@NonNull android.view.GestureDetector.OnGestureListener); - ctor public GestureDetector(@Nullable @UiContext android.content.Context, @NonNull android.view.GestureDetector.OnGestureListener); - ctor public GestureDetector(@Nullable @UiContext android.content.Context, @NonNull android.view.GestureDetector.OnGestureListener, @Nullable android.os.Handler); - ctor public GestureDetector(@Nullable @UiContext android.content.Context, @NonNull android.view.GestureDetector.OnGestureListener, @Nullable android.os.Handler, boolean); - method public boolean isLongpressEnabled(); - method public boolean onGenericMotionEvent(@NonNull android.view.MotionEvent); - method public boolean onTouchEvent(@NonNull android.view.MotionEvent); - method public void setContextClickListener(@Nullable android.view.GestureDetector.OnContextClickListener); - method public void setIsLongpressEnabled(boolean); - method public void setOnDoubleTapListener(@Nullable android.view.GestureDetector.OnDoubleTapListener); - } - - public static interface GestureDetector.OnContextClickListener { - method public boolean onContextClick(@NonNull android.view.MotionEvent); - } - - public static interface GestureDetector.OnDoubleTapListener { - method public boolean onDoubleTap(@NonNull android.view.MotionEvent); - method public boolean onDoubleTapEvent(@NonNull android.view.MotionEvent); - method public boolean onSingleTapConfirmed(@NonNull android.view.MotionEvent); - } - - public static interface GestureDetector.OnGestureListener { - method public boolean onDown(@NonNull android.view.MotionEvent); - method public boolean onFling(@Nullable android.view.MotionEvent, @NonNull android.view.MotionEvent, float, float); - method public void onLongPress(@NonNull android.view.MotionEvent); - method public boolean onScroll(@Nullable android.view.MotionEvent, @NonNull android.view.MotionEvent, float, float); - method public void onShowPress(@NonNull android.view.MotionEvent); - method public boolean onSingleTapUp(@NonNull android.view.MotionEvent); - } - - public static class GestureDetector.SimpleOnGestureListener implements android.view.GestureDetector.OnContextClickListener android.view.GestureDetector.OnDoubleTapListener android.view.GestureDetector.OnGestureListener { - ctor public GestureDetector.SimpleOnGestureListener(); - method public boolean onContextClick(@NonNull android.view.MotionEvent); - method public boolean onDoubleTap(@NonNull android.view.MotionEvent); - method public boolean onDoubleTapEvent(@NonNull android.view.MotionEvent); - method public boolean onDown(@NonNull android.view.MotionEvent); - method public boolean onFling(@Nullable android.view.MotionEvent, @NonNull android.view.MotionEvent, float, float); - method public void onLongPress(@NonNull android.view.MotionEvent); - method public boolean onScroll(@Nullable android.view.MotionEvent, @NonNull android.view.MotionEvent, float, float); - method public void onShowPress(@NonNull android.view.MotionEvent); - method public boolean onSingleTapConfirmed(@NonNull android.view.MotionEvent); - method public boolean onSingleTapUp(@NonNull android.view.MotionEvent); - } - - public class Gravity { - ctor public Gravity(); - method public static void apply(int, int, int, android.graphics.Rect, android.graphics.Rect); - method public static void apply(int, int, int, @NonNull android.graphics.Rect, @NonNull android.graphics.Rect, int); - method public static void apply(int, int, int, @NonNull android.graphics.Rect, int, int, @NonNull android.graphics.Rect); - method public static void apply(int, int, int, @NonNull android.graphics.Rect, int, int, @NonNull android.graphics.Rect, int); - method public static void applyDisplay(int, @NonNull android.graphics.Rect, @NonNull android.graphics.Rect); - method public static void applyDisplay(int, @NonNull android.graphics.Rect, @NonNull android.graphics.Rect, int); - method public static int getAbsoluteGravity(int, int); - method public static boolean isHorizontal(int); - method public static boolean isVertical(int); - field public static final int AXIS_CLIP = 8; // 0x8 - field public static final int AXIS_PULL_AFTER = 4; // 0x4 - field public static final int AXIS_PULL_BEFORE = 2; // 0x2 - field public static final int AXIS_SPECIFIED = 1; // 0x1 - field public static final int AXIS_X_SHIFT = 0; // 0x0 - field public static final int AXIS_Y_SHIFT = 4; // 0x4 - field public static final int BOTTOM = 80; // 0x50 - field public static final int CENTER = 17; // 0x11 - field public static final int CENTER_HORIZONTAL = 1; // 0x1 - field public static final int CENTER_VERTICAL = 16; // 0x10 - field public static final int CLIP_HORIZONTAL = 8; // 0x8 - field public static final int CLIP_VERTICAL = 128; // 0x80 - field public static final int DISPLAY_CLIP_HORIZONTAL = 16777216; // 0x1000000 - field public static final int DISPLAY_CLIP_VERTICAL = 268435456; // 0x10000000 - field public static final int END = 8388613; // 0x800005 - field public static final int FILL = 119; // 0x77 - field public static final int FILL_HORIZONTAL = 7; // 0x7 - field public static final int FILL_VERTICAL = 112; // 0x70 - field public static final int HORIZONTAL_GRAVITY_MASK = 7; // 0x7 - field public static final int LEFT = 3; // 0x3 - field public static final int NO_GRAVITY = 0; // 0x0 - field public static final int RELATIVE_HORIZONTAL_GRAVITY_MASK = 8388615; // 0x800007 - field public static final int RELATIVE_LAYOUT_DIRECTION = 8388608; // 0x800000 - field public static final int RIGHT = 5; // 0x5 - field public static final int START = 8388611; // 0x800003 - field public static final int TOP = 48; // 0x30 - field public static final int VERTICAL_GRAVITY_MASK = 112; // 0x70 - } - - public class HapticFeedbackConstants { - field public static final int CLOCK_TICK = 4; // 0x4 - field public static final int CONFIRM = 16; // 0x10 - field public static final int CONTEXT_CLICK = 6; // 0x6 - field public static final int DRAG_START = 25; // 0x19 - field @Deprecated public static final int FLAG_IGNORE_GLOBAL_SETTING = 2; // 0x2 - field public static final int FLAG_IGNORE_VIEW_SETTING = 1; // 0x1 - field public static final int GESTURE_END = 13; // 0xd - field public static final int GESTURE_START = 12; // 0xc - field public static final int GESTURE_THRESHOLD_ACTIVATE = 23; // 0x17 - field public static final int GESTURE_THRESHOLD_DEACTIVATE = 24; // 0x18 - field public static final int KEYBOARD_PRESS = 3; // 0x3 - field public static final int KEYBOARD_RELEASE = 7; // 0x7 - field public static final int KEYBOARD_TAP = 3; // 0x3 - field public static final int LONG_PRESS = 0; // 0x0 - field public static final int NO_HAPTICS = -1; // 0xffffffff - field public static final int REJECT = 17; // 0x11 - field public static final int SEGMENT_FREQUENT_TICK = 27; // 0x1b - field public static final int SEGMENT_TICK = 26; // 0x1a - field public static final int TEXT_HANDLE_MOVE = 9; // 0x9 - field public static final int TOGGLE_OFF = 22; // 0x16 - field public static final int TOGGLE_ON = 21; // 0x15 - field public static final int VIRTUAL_KEY = 1; // 0x1 - field public static final int VIRTUAL_KEY_RELEASE = 8; // 0x8 - } - - public class InflateException extends java.lang.RuntimeException { - ctor public InflateException(); - ctor public InflateException(String, Throwable); - ctor public InflateException(String); - ctor public InflateException(Throwable); - } - - public final class InputDevice implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.hardware.BatteryState getBatteryState(); - method public int getControllerNumber(); - method public String getDescriptor(); - method @Nullable public static android.view.InputDevice getDevice(int); - method public static int[] getDeviceIds(); - method public int getId(); - method public android.view.KeyCharacterMap getKeyCharacterMap(); - method public int getKeyCodeForKeyLocation(int); - method public int getKeyboardType(); - method @NonNull public android.hardware.lights.LightsManager getLightsManager(); - method public android.view.InputDevice.MotionRange getMotionRange(int); - method public android.view.InputDevice.MotionRange getMotionRange(int, int); - method public java.util.List getMotionRanges(); - method public String getName(); - method public int getProductId(); - method @NonNull public android.hardware.SensorManager getSensorManager(); - method public int getSources(); - method public int getVendorId(); - method @Deprecated public android.os.Vibrator getVibrator(); - method @NonNull public android.os.VibratorManager getVibratorManager(); - method public boolean[] hasKeys(int...); - method public boolean hasMicrophone(); - method public boolean isEnabled(); - method public boolean isExternal(); - method public boolean isVirtual(); - method public boolean supportsSource(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int KEYBOARD_TYPE_ALPHABETIC = 2; // 0x2 - field public static final int KEYBOARD_TYPE_NONE = 0; // 0x0 - field public static final int KEYBOARD_TYPE_NON_ALPHABETIC = 1; // 0x1 - field @Deprecated public static final int MOTION_RANGE_ORIENTATION = 8; // 0x8 - field @Deprecated public static final int MOTION_RANGE_PRESSURE = 2; // 0x2 - field @Deprecated public static final int MOTION_RANGE_SIZE = 3; // 0x3 - field @Deprecated public static final int MOTION_RANGE_TOOL_MAJOR = 6; // 0x6 - field @Deprecated public static final int MOTION_RANGE_TOOL_MINOR = 7; // 0x7 - field @Deprecated public static final int MOTION_RANGE_TOUCH_MAJOR = 4; // 0x4 - field @Deprecated public static final int MOTION_RANGE_TOUCH_MINOR = 5; // 0x5 - field @Deprecated public static final int MOTION_RANGE_X = 0; // 0x0 - field @Deprecated public static final int MOTION_RANGE_Y = 1; // 0x1 - field public static final int SOURCE_ANY = -256; // 0xffffff00 - field public static final int SOURCE_BLUETOOTH_STYLUS = 49154; // 0xc002 - field public static final int SOURCE_CLASS_BUTTON = 1; // 0x1 - field public static final int SOURCE_CLASS_JOYSTICK = 16; // 0x10 - field public static final int SOURCE_CLASS_MASK = 255; // 0xff - field public static final int SOURCE_CLASS_NONE = 0; // 0x0 - field public static final int SOURCE_CLASS_POINTER = 2; // 0x2 - field public static final int SOURCE_CLASS_POSITION = 8; // 0x8 - field public static final int SOURCE_CLASS_TRACKBALL = 4; // 0x4 - field public static final int SOURCE_DPAD = 513; // 0x201 - field public static final int SOURCE_GAMEPAD = 1025; // 0x401 - field public static final int SOURCE_HDMI = 33554433; // 0x2000001 - field public static final int SOURCE_JOYSTICK = 16777232; // 0x1000010 - field public static final int SOURCE_KEYBOARD = 257; // 0x101 - field public static final int SOURCE_MOUSE = 8194; // 0x2002 - field public static final int SOURCE_MOUSE_RELATIVE = 131076; // 0x20004 - field public static final int SOURCE_ROTARY_ENCODER = 4194304; // 0x400000 - field public static final int SOURCE_SENSOR = 67108864; // 0x4000000 - field public static final int SOURCE_STYLUS = 16386; // 0x4002 - field public static final int SOURCE_TOUCHPAD = 1048584; // 0x100008 - field public static final int SOURCE_TOUCHSCREEN = 4098; // 0x1002 - field public static final int SOURCE_TOUCH_NAVIGATION = 2097152; // 0x200000 - field public static final int SOURCE_TRACKBALL = 65540; // 0x10004 - field public static final int SOURCE_UNKNOWN = 0; // 0x0 - } - - public static final class InputDevice.MotionRange { - method public int getAxis(); - method public float getFlat(); - method public float getFuzz(); - method public float getMax(); - method public float getMin(); - method public float getRange(); - method public float getResolution(); - method public int getSource(); - method public boolean isFromSource(int); - } - - @FlaggedApi("com.android.input.flags.input_device_view_behavior_api") public static final class InputDevice.ViewBehavior { - method @FlaggedApi("com.android.input.flags.input_device_view_behavior_api") public boolean shouldSmoothScroll(int, int); - } - - public abstract class InputEvent implements android.os.Parcelable { - method public int describeContents(); - method public final android.view.InputDevice getDevice(); - method public abstract int getDeviceId(); - method public abstract long getEventTime(); - method public abstract int getSource(); - method public boolean isFromSource(int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class InputQueue { - } - - public static interface InputQueue.Callback { - method public void onInputQueueCreated(android.view.InputQueue); - method public void onInputQueueDestroyed(android.view.InputQueue); - } - - public class KeyCharacterMap implements android.os.Parcelable { - method public int describeContents(); - method public static boolean deviceHasKey(int); - method public static boolean[] deviceHasKeys(int[]); - method public int get(int, int); - method public static int getDeadChar(int, int); - method public char getDisplayLabel(int); - method public android.view.KeyEvent[] getEvents(char[]); - method @Deprecated public boolean getKeyData(int, android.view.KeyCharacterMap.KeyData); - method public int getKeyboardType(); - method public char getMatch(int, char[]); - method public char getMatch(int, char[], int); - method public int getModifierBehavior(); - method public char getNumber(int); - method public boolean isPrintingKey(int); - method public static android.view.KeyCharacterMap load(int); - method public void writeToParcel(android.os.Parcel, int); - field public static final int ALPHA = 3; // 0x3 - field @Deprecated public static final int BUILT_IN_KEYBOARD = 0; // 0x0 - field public static final int COMBINING_ACCENT = -2147483648; // 0x80000000 - field public static final int COMBINING_ACCENT_MASK = 2147483647; // 0x7fffffff - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FULL = 4; // 0x4 - field public static final char HEX_INPUT = 61184; // 0xef00 '\uef00' - field public static final int MODIFIER_BEHAVIOR_CHORDED = 0; // 0x0 - field public static final int MODIFIER_BEHAVIOR_CHORDED_OR_TOGGLED = 1; // 0x1 - field public static final int NUMERIC = 1; // 0x1 - field public static final char PICKER_DIALOG_INPUT = 61185; // 0xef01 '\uef01' - field public static final int PREDICTIVE = 2; // 0x2 - field public static final int SPECIAL_FUNCTION = 5; // 0x5 - field public static final int VIRTUAL_KEYBOARD = -1; // 0xffffffff - } - - @Deprecated public static class KeyCharacterMap.KeyData { - ctor @Deprecated public KeyCharacterMap.KeyData(); - field @Deprecated public static final int META_LENGTH = 4; // 0x4 - field @Deprecated public char displayLabel; - field @Deprecated public char[] meta; - field @Deprecated public char number; - } - - public static class KeyCharacterMap.UnavailableException extends android.util.AndroidRuntimeException { - ctor public KeyCharacterMap.UnavailableException(String); - } - - public class KeyEvent extends android.view.InputEvent implements android.os.Parcelable { - ctor public KeyEvent(int, int); - ctor public KeyEvent(long, long, int, int, int); - ctor public KeyEvent(long, long, int, int, int, int); - ctor public KeyEvent(long, long, int, int, int, int, int, int); - ctor public KeyEvent(long, long, int, int, int, int, int, int, int); - ctor public KeyEvent(long, long, int, int, int, int, int, int, int, int); - ctor public KeyEvent(long, String, int, int); - ctor public KeyEvent(android.view.KeyEvent); - ctor @Deprecated public KeyEvent(android.view.KeyEvent, long, int); - method public static android.view.KeyEvent changeAction(android.view.KeyEvent, int); - method public static android.view.KeyEvent changeFlags(android.view.KeyEvent, int); - method public static android.view.KeyEvent changeTimeRepeat(android.view.KeyEvent, long, int); - method public static android.view.KeyEvent changeTimeRepeat(android.view.KeyEvent, long, int, int); - method @Deprecated public final boolean dispatch(android.view.KeyEvent.Callback); - method public final boolean dispatch(android.view.KeyEvent.Callback, android.view.KeyEvent.DispatcherState, Object); - method public final int getAction(); - method @Deprecated public final String getCharacters(); - method public static int getDeadChar(int, int); - method public final int getDeviceId(); - method public char getDisplayLabel(); - method public final long getDownTime(); - method public final long getEventTime(); - method public final int getFlags(); - method public final android.view.KeyCharacterMap getKeyCharacterMap(); - method public final int getKeyCode(); - method @Deprecated public boolean getKeyData(android.view.KeyCharacterMap.KeyData); - method public char getMatch(char[]); - method public char getMatch(char[], int); - method public static int getMaxKeyCode(); - method public final int getMetaState(); - method public static int getModifierMetaStateMask(); - method public final int getModifiers(); - method public char getNumber(); - method public final int getRepeatCount(); - method public final int getScanCode(); - method public final int getSource(); - method public int getUnicodeChar(); - method public int getUnicodeChar(int); - method public final boolean hasModifiers(int); - method public final boolean hasNoModifiers(); - method public final boolean isAltPressed(); - method public final boolean isCanceled(); - method public final boolean isCapsLockOn(); - method public final boolean isCtrlPressed(); - method public final boolean isFunctionPressed(); - method public static final boolean isGamepadButton(int); - method public final boolean isLongPress(); - method public static final boolean isMediaSessionKey(int); - method public final boolean isMetaPressed(); - method public static boolean isModifierKey(int); - method public final boolean isNumLockOn(); - method public boolean isPrintingKey(); - method public final boolean isScrollLockOn(); - method public final boolean isShiftPressed(); - method public final boolean isSymPressed(); - method public final boolean isSystem(); - method public final boolean isTracking(); - method public static int keyCodeFromString(@NonNull String); - method public static String keyCodeToString(int); - method public static boolean metaStateHasModifiers(int, int); - method public static boolean metaStateHasNoModifiers(int); - method public static int normalizeMetaState(int); - method public final void setSource(int); - method public final void startTracking(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int ACTION_DOWN = 0; // 0x0 - field @Deprecated public static final int ACTION_MULTIPLE = 2; // 0x2 - field public static final int ACTION_UP = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_CANCELED = 32; // 0x20 - field public static final int FLAG_CANCELED_LONG_PRESS = 256; // 0x100 - field public static final int FLAG_EDITOR_ACTION = 16; // 0x10 - field public static final int FLAG_FALLBACK = 1024; // 0x400 - field public static final int FLAG_FROM_SYSTEM = 8; // 0x8 - field public static final int FLAG_KEEP_TOUCH_MODE = 4; // 0x4 - field public static final int FLAG_LONG_PRESS = 128; // 0x80 - field public static final int FLAG_SOFT_KEYBOARD = 2; // 0x2 - field public static final int FLAG_TRACKING = 512; // 0x200 - field public static final int FLAG_VIRTUAL_HARD_KEY = 64; // 0x40 - field @Deprecated public static final int FLAG_WOKE_HERE = 1; // 0x1 - field public static final int KEYCODE_0 = 7; // 0x7 - field public static final int KEYCODE_1 = 8; // 0x8 - field public static final int KEYCODE_11 = 227; // 0xe3 - field public static final int KEYCODE_12 = 228; // 0xe4 - field public static final int KEYCODE_2 = 9; // 0x9 - field public static final int KEYCODE_3 = 10; // 0xa - field public static final int KEYCODE_3D_MODE = 206; // 0xce - field public static final int KEYCODE_4 = 11; // 0xb - field public static final int KEYCODE_5 = 12; // 0xc - field public static final int KEYCODE_6 = 13; // 0xd - field public static final int KEYCODE_7 = 14; // 0xe - field public static final int KEYCODE_8 = 15; // 0xf - field public static final int KEYCODE_9 = 16; // 0x10 - field public static final int KEYCODE_A = 29; // 0x1d - field public static final int KEYCODE_ALL_APPS = 284; // 0x11c - field public static final int KEYCODE_ALT_LEFT = 57; // 0x39 - field public static final int KEYCODE_ALT_RIGHT = 58; // 0x3a - field public static final int KEYCODE_APOSTROPHE = 75; // 0x4b - field public static final int KEYCODE_APP_SWITCH = 187; // 0xbb - field public static final int KEYCODE_ASSIST = 219; // 0xdb - field public static final int KEYCODE_AT = 77; // 0x4d - field public static final int KEYCODE_AVR_INPUT = 182; // 0xb6 - field public static final int KEYCODE_AVR_POWER = 181; // 0xb5 - field public static final int KEYCODE_B = 30; // 0x1e - field public static final int KEYCODE_BACK = 4; // 0x4 - field public static final int KEYCODE_BACKSLASH = 73; // 0x49 - field public static final int KEYCODE_BOOKMARK = 174; // 0xae - field public static final int KEYCODE_BREAK = 121; // 0x79 - field public static final int KEYCODE_BRIGHTNESS_DOWN = 220; // 0xdc - field public static final int KEYCODE_BRIGHTNESS_UP = 221; // 0xdd - field public static final int KEYCODE_BUTTON_1 = 188; // 0xbc - field public static final int KEYCODE_BUTTON_10 = 197; // 0xc5 - field public static final int KEYCODE_BUTTON_11 = 198; // 0xc6 - field public static final int KEYCODE_BUTTON_12 = 199; // 0xc7 - field public static final int KEYCODE_BUTTON_13 = 200; // 0xc8 - field public static final int KEYCODE_BUTTON_14 = 201; // 0xc9 - field public static final int KEYCODE_BUTTON_15 = 202; // 0xca - field public static final int KEYCODE_BUTTON_16 = 203; // 0xcb - field public static final int KEYCODE_BUTTON_2 = 189; // 0xbd - field public static final int KEYCODE_BUTTON_3 = 190; // 0xbe - field public static final int KEYCODE_BUTTON_4 = 191; // 0xbf - field public static final int KEYCODE_BUTTON_5 = 192; // 0xc0 - field public static final int KEYCODE_BUTTON_6 = 193; // 0xc1 - field public static final int KEYCODE_BUTTON_7 = 194; // 0xc2 - field public static final int KEYCODE_BUTTON_8 = 195; // 0xc3 - field public static final int KEYCODE_BUTTON_9 = 196; // 0xc4 - field public static final int KEYCODE_BUTTON_A = 96; // 0x60 - field public static final int KEYCODE_BUTTON_B = 97; // 0x61 - field public static final int KEYCODE_BUTTON_C = 98; // 0x62 - field public static final int KEYCODE_BUTTON_L1 = 102; // 0x66 - field public static final int KEYCODE_BUTTON_L2 = 104; // 0x68 - field public static final int KEYCODE_BUTTON_MODE = 110; // 0x6e - field public static final int KEYCODE_BUTTON_R1 = 103; // 0x67 - field public static final int KEYCODE_BUTTON_R2 = 105; // 0x69 - field public static final int KEYCODE_BUTTON_SELECT = 109; // 0x6d - field public static final int KEYCODE_BUTTON_START = 108; // 0x6c - field public static final int KEYCODE_BUTTON_THUMBL = 106; // 0x6a - field public static final int KEYCODE_BUTTON_THUMBR = 107; // 0x6b - field public static final int KEYCODE_BUTTON_X = 99; // 0x63 - field public static final int KEYCODE_BUTTON_Y = 100; // 0x64 - field public static final int KEYCODE_BUTTON_Z = 101; // 0x65 - field public static final int KEYCODE_C = 31; // 0x1f - field public static final int KEYCODE_CALCULATOR = 210; // 0xd2 - field public static final int KEYCODE_CALENDAR = 208; // 0xd0 - field public static final int KEYCODE_CALL = 5; // 0x5 - field public static final int KEYCODE_CAMERA = 27; // 0x1b - field public static final int KEYCODE_CAPS_LOCK = 115; // 0x73 - field public static final int KEYCODE_CAPTIONS = 175; // 0xaf - field public static final int KEYCODE_CHANNEL_DOWN = 167; // 0xa7 - field public static final int KEYCODE_CHANNEL_UP = 166; // 0xa6 - field public static final int KEYCODE_CLEAR = 28; // 0x1c - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_CLOSE = 321; // 0x141 - field public static final int KEYCODE_COMMA = 55; // 0x37 - field public static final int KEYCODE_CONTACTS = 207; // 0xcf - field public static final int KEYCODE_COPY = 278; // 0x116 - field public static final int KEYCODE_CTRL_LEFT = 113; // 0x71 - field public static final int KEYCODE_CTRL_RIGHT = 114; // 0x72 - field public static final int KEYCODE_CUT = 277; // 0x115 - field public static final int KEYCODE_D = 32; // 0x20 - field public static final int KEYCODE_DEL = 67; // 0x43 - field public static final int KEYCODE_DEMO_APP_1 = 301; // 0x12d - field public static final int KEYCODE_DEMO_APP_2 = 302; // 0x12e - field public static final int KEYCODE_DEMO_APP_3 = 303; // 0x12f - field public static final int KEYCODE_DEMO_APP_4 = 304; // 0x130 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_DICTATE = 319; // 0x13f - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_DO_NOT_DISTURB = 322; // 0x142 - field public static final int KEYCODE_DPAD_CENTER = 23; // 0x17 - field public static final int KEYCODE_DPAD_DOWN = 20; // 0x14 - field public static final int KEYCODE_DPAD_DOWN_LEFT = 269; // 0x10d - field public static final int KEYCODE_DPAD_DOWN_RIGHT = 271; // 0x10f - field public static final int KEYCODE_DPAD_LEFT = 21; // 0x15 - field public static final int KEYCODE_DPAD_RIGHT = 22; // 0x16 - field public static final int KEYCODE_DPAD_UP = 19; // 0x13 - field public static final int KEYCODE_DPAD_UP_LEFT = 268; // 0x10c - field public static final int KEYCODE_DPAD_UP_RIGHT = 270; // 0x10e - field public static final int KEYCODE_DVR = 173; // 0xad - field public static final int KEYCODE_E = 33; // 0x21 - field public static final int KEYCODE_EISU = 212; // 0xd4 - field public static final int KEYCODE_EMOJI_PICKER = 317; // 0x13d - field public static final int KEYCODE_ENDCALL = 6; // 0x6 - field public static final int KEYCODE_ENTER = 66; // 0x42 - field public static final int KEYCODE_ENVELOPE = 65; // 0x41 - field public static final int KEYCODE_EQUALS = 70; // 0x46 - field public static final int KEYCODE_ESCAPE = 111; // 0x6f - field public static final int KEYCODE_EXPLORER = 64; // 0x40 - field public static final int KEYCODE_F = 34; // 0x22 - field public static final int KEYCODE_F1 = 131; // 0x83 - field public static final int KEYCODE_F10 = 140; // 0x8c - field public static final int KEYCODE_F11 = 141; // 0x8d - field public static final int KEYCODE_F12 = 142; // 0x8e - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F13 = 326; // 0x146 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F14 = 327; // 0x147 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F15 = 328; // 0x148 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F16 = 329; // 0x149 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F17 = 330; // 0x14a - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F18 = 331; // 0x14b - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F19 = 332; // 0x14c - field public static final int KEYCODE_F2 = 132; // 0x84 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F20 = 333; // 0x14d - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F21 = 334; // 0x14e - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F22 = 335; // 0x14f - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F23 = 336; // 0x150 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F24 = 337; // 0x151 - field public static final int KEYCODE_F3 = 133; // 0x85 - field public static final int KEYCODE_F4 = 134; // 0x86 - field public static final int KEYCODE_F5 = 135; // 0x87 - field public static final int KEYCODE_F6 = 136; // 0x88 - field public static final int KEYCODE_F7 = 137; // 0x89 - field public static final int KEYCODE_F8 = 138; // 0x8a - field public static final int KEYCODE_F9 = 139; // 0x8b - field public static final int KEYCODE_FEATURED_APP_1 = 297; // 0x129 - field public static final int KEYCODE_FEATURED_APP_2 = 298; // 0x12a - field public static final int KEYCODE_FEATURED_APP_3 = 299; // 0x12b - field public static final int KEYCODE_FEATURED_APP_4 = 300; // 0x12c - field public static final int KEYCODE_FOCUS = 80; // 0x50 - field public static final int KEYCODE_FORWARD = 125; // 0x7d - field public static final int KEYCODE_FORWARD_DEL = 112; // 0x70 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_FULLSCREEN = 325; // 0x145 - field public static final int KEYCODE_FUNCTION = 119; // 0x77 - field public static final int KEYCODE_G = 35; // 0x23 - field public static final int KEYCODE_GRAVE = 68; // 0x44 - field public static final int KEYCODE_GUIDE = 172; // 0xac - field public static final int KEYCODE_H = 36; // 0x24 - field public static final int KEYCODE_HEADSETHOOK = 79; // 0x4f - field public static final int KEYCODE_HELP = 259; // 0x103 - field public static final int KEYCODE_HENKAN = 214; // 0xd6 - field public static final int KEYCODE_HOME = 3; // 0x3 - field public static final int KEYCODE_I = 37; // 0x25 - field public static final int KEYCODE_INFO = 165; // 0xa5 - field public static final int KEYCODE_INSERT = 124; // 0x7c - field public static final int KEYCODE_J = 38; // 0x26 - field public static final int KEYCODE_K = 39; // 0x27 - field public static final int KEYCODE_KANA = 218; // 0xda - field public static final int KEYCODE_KATAKANA_HIRAGANA = 215; // 0xd7 - field public static final int KEYCODE_KEYBOARD_BACKLIGHT_DOWN = 305; // 0x131 - field public static final int KEYCODE_KEYBOARD_BACKLIGHT_TOGGLE = 307; // 0x133 - field public static final int KEYCODE_KEYBOARD_BACKLIGHT_UP = 306; // 0x132 - field public static final int KEYCODE_L = 40; // 0x28 - field public static final int KEYCODE_LANGUAGE_SWITCH = 204; // 0xcc - field public static final int KEYCODE_LAST_CHANNEL = 229; // 0xe5 - field public static final int KEYCODE_LEFT_BRACKET = 71; // 0x47 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_LOCK = 324; // 0x144 - field public static final int KEYCODE_M = 41; // 0x29 - field public static final int KEYCODE_MACRO_1 = 313; // 0x139 - field public static final int KEYCODE_MACRO_2 = 314; // 0x13a - field public static final int KEYCODE_MACRO_3 = 315; // 0x13b - field public static final int KEYCODE_MACRO_4 = 316; // 0x13c - field public static final int KEYCODE_MANNER_MODE = 205; // 0xcd - field public static final int KEYCODE_MEDIA_AUDIO_TRACK = 222; // 0xde - field public static final int KEYCODE_MEDIA_CLOSE = 128; // 0x80 - field public static final int KEYCODE_MEDIA_EJECT = 129; // 0x81 - field public static final int KEYCODE_MEDIA_FAST_FORWARD = 90; // 0x5a - field public static final int KEYCODE_MEDIA_NEXT = 87; // 0x57 - field public static final int KEYCODE_MEDIA_PAUSE = 127; // 0x7f - field public static final int KEYCODE_MEDIA_PLAY = 126; // 0x7e - field public static final int KEYCODE_MEDIA_PLAY_PAUSE = 85; // 0x55 - field public static final int KEYCODE_MEDIA_PREVIOUS = 88; // 0x58 - field public static final int KEYCODE_MEDIA_RECORD = 130; // 0x82 - field public static final int KEYCODE_MEDIA_REWIND = 89; // 0x59 - field public static final int KEYCODE_MEDIA_SKIP_BACKWARD = 273; // 0x111 - field public static final int KEYCODE_MEDIA_SKIP_FORWARD = 272; // 0x110 - field public static final int KEYCODE_MEDIA_STEP_BACKWARD = 275; // 0x113 - field public static final int KEYCODE_MEDIA_STEP_FORWARD = 274; // 0x112 - field public static final int KEYCODE_MEDIA_STOP = 86; // 0x56 - field public static final int KEYCODE_MEDIA_TOP_MENU = 226; // 0xe2 - field public static final int KEYCODE_MENU = 82; // 0x52 - field public static final int KEYCODE_META_LEFT = 117; // 0x75 - field public static final int KEYCODE_META_RIGHT = 118; // 0x76 - field public static final int KEYCODE_MINUS = 69; // 0x45 - field public static final int KEYCODE_MOVE_END = 123; // 0x7b - field public static final int KEYCODE_MOVE_HOME = 122; // 0x7a - field public static final int KEYCODE_MUHENKAN = 213; // 0xd5 - field public static final int KEYCODE_MUSIC = 209; // 0xd1 - field public static final int KEYCODE_MUTE = 91; // 0x5b - field public static final int KEYCODE_N = 42; // 0x2a - field public static final int KEYCODE_NAVIGATE_IN = 262; // 0x106 - field public static final int KEYCODE_NAVIGATE_NEXT = 261; // 0x105 - field public static final int KEYCODE_NAVIGATE_OUT = 263; // 0x107 - field public static final int KEYCODE_NAVIGATE_PREVIOUS = 260; // 0x104 - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_NEW = 320; // 0x140 - field public static final int KEYCODE_NOTIFICATION = 83; // 0x53 - field public static final int KEYCODE_NUM = 78; // 0x4e - field public static final int KEYCODE_NUMPAD_0 = 144; // 0x90 - field public static final int KEYCODE_NUMPAD_1 = 145; // 0x91 - field public static final int KEYCODE_NUMPAD_2 = 146; // 0x92 - field public static final int KEYCODE_NUMPAD_3 = 147; // 0x93 - field public static final int KEYCODE_NUMPAD_4 = 148; // 0x94 - field public static final int KEYCODE_NUMPAD_5 = 149; // 0x95 - field public static final int KEYCODE_NUMPAD_6 = 150; // 0x96 - field public static final int KEYCODE_NUMPAD_7 = 151; // 0x97 - field public static final int KEYCODE_NUMPAD_8 = 152; // 0x98 - field public static final int KEYCODE_NUMPAD_9 = 153; // 0x99 - field public static final int KEYCODE_NUMPAD_ADD = 157; // 0x9d - field public static final int KEYCODE_NUMPAD_COMMA = 159; // 0x9f - field public static final int KEYCODE_NUMPAD_DIVIDE = 154; // 0x9a - field public static final int KEYCODE_NUMPAD_DOT = 158; // 0x9e - field public static final int KEYCODE_NUMPAD_ENTER = 160; // 0xa0 - field public static final int KEYCODE_NUMPAD_EQUALS = 161; // 0xa1 - field public static final int KEYCODE_NUMPAD_LEFT_PAREN = 162; // 0xa2 - field public static final int KEYCODE_NUMPAD_MULTIPLY = 155; // 0x9b - field public static final int KEYCODE_NUMPAD_RIGHT_PAREN = 163; // 0xa3 - field public static final int KEYCODE_NUMPAD_SUBTRACT = 156; // 0x9c - field public static final int KEYCODE_NUM_LOCK = 143; // 0x8f - field public static final int KEYCODE_O = 43; // 0x2b - field public static final int KEYCODE_P = 44; // 0x2c - field public static final int KEYCODE_PAGE_DOWN = 93; // 0x5d - field public static final int KEYCODE_PAGE_UP = 92; // 0x5c - field public static final int KEYCODE_PAIRING = 225; // 0xe1 - field public static final int KEYCODE_PASTE = 279; // 0x117 - field public static final int KEYCODE_PERIOD = 56; // 0x38 - field public static final int KEYCODE_PICTSYMBOLS = 94; // 0x5e - field public static final int KEYCODE_PLUS = 81; // 0x51 - field public static final int KEYCODE_POUND = 18; // 0x12 - field public static final int KEYCODE_POWER = 26; // 0x1a - field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_PRINT = 323; // 0x143 - field public static final int KEYCODE_PROFILE_SWITCH = 288; // 0x120 - field public static final int KEYCODE_PROG_BLUE = 186; // 0xba - field public static final int KEYCODE_PROG_GREEN = 184; // 0xb8 - field public static final int KEYCODE_PROG_RED = 183; // 0xb7 - field public static final int KEYCODE_PROG_YELLOW = 185; // 0xb9 - field public static final int KEYCODE_Q = 45; // 0x2d - field public static final int KEYCODE_R = 46; // 0x2e - field public static final int KEYCODE_RECENT_APPS = 312; // 0x138 - field public static final int KEYCODE_REFRESH = 285; // 0x11d - field public static final int KEYCODE_RIGHT_BRACKET = 72; // 0x48 - field public static final int KEYCODE_RO = 217; // 0xd9 - field public static final int KEYCODE_S = 47; // 0x2f - field public static final int KEYCODE_SCREENSHOT = 318; // 0x13e - field public static final int KEYCODE_SCROLL_LOCK = 116; // 0x74 - field public static final int KEYCODE_SEARCH = 84; // 0x54 - field public static final int KEYCODE_SEMICOLON = 74; // 0x4a - field public static final int KEYCODE_SETTINGS = 176; // 0xb0 - field public static final int KEYCODE_SHIFT_LEFT = 59; // 0x3b - field public static final int KEYCODE_SHIFT_RIGHT = 60; // 0x3c - field public static final int KEYCODE_SLASH = 76; // 0x4c - field public static final int KEYCODE_SLEEP = 223; // 0xdf - field public static final int KEYCODE_SOFT_LEFT = 1; // 0x1 - field public static final int KEYCODE_SOFT_RIGHT = 2; // 0x2 - field public static final int KEYCODE_SOFT_SLEEP = 276; // 0x114 - field public static final int KEYCODE_SPACE = 62; // 0x3e - field public static final int KEYCODE_STAR = 17; // 0x11 - field public static final int KEYCODE_STB_INPUT = 180; // 0xb4 - field public static final int KEYCODE_STB_POWER = 179; // 0xb3 - field public static final int KEYCODE_STEM_1 = 265; // 0x109 - field public static final int KEYCODE_STEM_2 = 266; // 0x10a - field public static final int KEYCODE_STEM_3 = 267; // 0x10b - field public static final int KEYCODE_STEM_PRIMARY = 264; // 0x108 - field public static final int KEYCODE_STYLUS_BUTTON_PRIMARY = 308; // 0x134 - field public static final int KEYCODE_STYLUS_BUTTON_SECONDARY = 309; // 0x135 - field public static final int KEYCODE_STYLUS_BUTTON_TAIL = 311; // 0x137 - field public static final int KEYCODE_STYLUS_BUTTON_TERTIARY = 310; // 0x136 - field public static final int KEYCODE_SWITCH_CHARSET = 95; // 0x5f - field public static final int KEYCODE_SYM = 63; // 0x3f - field public static final int KEYCODE_SYSRQ = 120; // 0x78 - field public static final int KEYCODE_SYSTEM_NAVIGATION_DOWN = 281; // 0x119 - field public static final int KEYCODE_SYSTEM_NAVIGATION_LEFT = 282; // 0x11a - field public static final int KEYCODE_SYSTEM_NAVIGATION_RIGHT = 283; // 0x11b - field public static final int KEYCODE_SYSTEM_NAVIGATION_UP = 280; // 0x118 - field public static final int KEYCODE_T = 48; // 0x30 - field public static final int KEYCODE_TAB = 61; // 0x3d - field public static final int KEYCODE_THUMBS_DOWN = 287; // 0x11f - field public static final int KEYCODE_THUMBS_UP = 286; // 0x11e - field public static final int KEYCODE_TV = 170; // 0xaa - field public static final int KEYCODE_TV_ANTENNA_CABLE = 242; // 0xf2 - field public static final int KEYCODE_TV_AUDIO_DESCRIPTION = 252; // 0xfc - field public static final int KEYCODE_TV_AUDIO_DESCRIPTION_MIX_DOWN = 254; // 0xfe - field public static final int KEYCODE_TV_AUDIO_DESCRIPTION_MIX_UP = 253; // 0xfd - field public static final int KEYCODE_TV_CONTENTS_MENU = 256; // 0x100 - field public static final int KEYCODE_TV_DATA_SERVICE = 230; // 0xe6 - field public static final int KEYCODE_TV_INPUT = 178; // 0xb2 - field public static final int KEYCODE_TV_INPUT_COMPONENT_1 = 249; // 0xf9 - field public static final int KEYCODE_TV_INPUT_COMPONENT_2 = 250; // 0xfa - field public static final int KEYCODE_TV_INPUT_COMPOSITE_1 = 247; // 0xf7 - field public static final int KEYCODE_TV_INPUT_COMPOSITE_2 = 248; // 0xf8 - field public static final int KEYCODE_TV_INPUT_HDMI_1 = 243; // 0xf3 - field public static final int KEYCODE_TV_INPUT_HDMI_2 = 244; // 0xf4 - field public static final int KEYCODE_TV_INPUT_HDMI_3 = 245; // 0xf5 - field public static final int KEYCODE_TV_INPUT_HDMI_4 = 246; // 0xf6 - field public static final int KEYCODE_TV_INPUT_VGA_1 = 251; // 0xfb - field public static final int KEYCODE_TV_MEDIA_CONTEXT_MENU = 257; // 0x101 - field public static final int KEYCODE_TV_NETWORK = 241; // 0xf1 - field public static final int KEYCODE_TV_NUMBER_ENTRY = 234; // 0xea - field public static final int KEYCODE_TV_POWER = 177; // 0xb1 - field public static final int KEYCODE_TV_RADIO_SERVICE = 232; // 0xe8 - field public static final int KEYCODE_TV_SATELLITE = 237; // 0xed - field public static final int KEYCODE_TV_SATELLITE_BS = 238; // 0xee - field public static final int KEYCODE_TV_SATELLITE_CS = 239; // 0xef - field public static final int KEYCODE_TV_SATELLITE_SERVICE = 240; // 0xf0 - field public static final int KEYCODE_TV_TELETEXT = 233; // 0xe9 - field public static final int KEYCODE_TV_TERRESTRIAL_ANALOG = 235; // 0xeb - field public static final int KEYCODE_TV_TERRESTRIAL_DIGITAL = 236; // 0xec - field public static final int KEYCODE_TV_TIMER_PROGRAMMING = 258; // 0x102 - field public static final int KEYCODE_TV_ZOOM_MODE = 255; // 0xff - field public static final int KEYCODE_U = 49; // 0x31 - field public static final int KEYCODE_UNKNOWN = 0; // 0x0 - field public static final int KEYCODE_V = 50; // 0x32 - field public static final int KEYCODE_VIDEO_APP_1 = 289; // 0x121 - field public static final int KEYCODE_VIDEO_APP_2 = 290; // 0x122 - field public static final int KEYCODE_VIDEO_APP_3 = 291; // 0x123 - field public static final int KEYCODE_VIDEO_APP_4 = 292; // 0x124 - field public static final int KEYCODE_VIDEO_APP_5 = 293; // 0x125 - field public static final int KEYCODE_VIDEO_APP_6 = 294; // 0x126 - field public static final int KEYCODE_VIDEO_APP_7 = 295; // 0x127 - field public static final int KEYCODE_VIDEO_APP_8 = 296; // 0x128 - field public static final int KEYCODE_VOICE_ASSIST = 231; // 0xe7 - field public static final int KEYCODE_VOLUME_DOWN = 25; // 0x19 - field public static final int KEYCODE_VOLUME_MUTE = 164; // 0xa4 - field public static final int KEYCODE_VOLUME_UP = 24; // 0x18 - field public static final int KEYCODE_W = 51; // 0x33 - field public static final int KEYCODE_WAKEUP = 224; // 0xe0 - field public static final int KEYCODE_WINDOW = 171; // 0xab - field public static final int KEYCODE_X = 52; // 0x34 - field public static final int KEYCODE_Y = 53; // 0x35 - field public static final int KEYCODE_YEN = 216; // 0xd8 - field public static final int KEYCODE_Z = 54; // 0x36 - field public static final int KEYCODE_ZENKAKU_HANKAKU = 211; // 0xd3 - field public static final int KEYCODE_ZOOM_IN = 168; // 0xa8 - field public static final int KEYCODE_ZOOM_OUT = 169; // 0xa9 - field @Deprecated public static final int MAX_KEYCODE = 84; // 0x54 - field public static final int META_ALT_LEFT_ON = 16; // 0x10 - field public static final int META_ALT_MASK = 50; // 0x32 - field public static final int META_ALT_ON = 2; // 0x2 - field public static final int META_ALT_RIGHT_ON = 32; // 0x20 - field public static final int META_CAPS_LOCK_ON = 1048576; // 0x100000 - field public static final int META_CTRL_LEFT_ON = 8192; // 0x2000 - field public static final int META_CTRL_MASK = 28672; // 0x7000 - field public static final int META_CTRL_ON = 4096; // 0x1000 - field public static final int META_CTRL_RIGHT_ON = 16384; // 0x4000 - field public static final int META_FUNCTION_ON = 8; // 0x8 - field public static final int META_META_LEFT_ON = 131072; // 0x20000 - field public static final int META_META_MASK = 458752; // 0x70000 - field public static final int META_META_ON = 65536; // 0x10000 - field public static final int META_META_RIGHT_ON = 262144; // 0x40000 - field public static final int META_NUM_LOCK_ON = 2097152; // 0x200000 - field public static final int META_SCROLL_LOCK_ON = 4194304; // 0x400000 - field public static final int META_SHIFT_LEFT_ON = 64; // 0x40 - field public static final int META_SHIFT_MASK = 193; // 0xc1 - field public static final int META_SHIFT_ON = 1; // 0x1 - field public static final int META_SHIFT_RIGHT_ON = 128; // 0x80 - field public static final int META_SYM_ON = 4; // 0x4 - } - - public static interface KeyEvent.Callback { - method public boolean onKeyDown(int, android.view.KeyEvent); - method public boolean onKeyLongPress(int, android.view.KeyEvent); - method public boolean onKeyMultiple(int, int, android.view.KeyEvent); - method public boolean onKeyUp(int, android.view.KeyEvent); - } - - public static class KeyEvent.DispatcherState { - ctor public KeyEvent.DispatcherState(); - method public void handleUpEvent(android.view.KeyEvent); - method public boolean isTracking(android.view.KeyEvent); - method public void performedLongPress(android.view.KeyEvent); - method public void reset(); - method public void reset(Object); - method public void startTracking(android.view.KeyEvent, Object); - } - - public final class KeyboardShortcutGroup implements android.os.Parcelable { - ctor public KeyboardShortcutGroup(@Nullable CharSequence, @NonNull java.util.List); - ctor public KeyboardShortcutGroup(@Nullable CharSequence); - method public void addItem(android.view.KeyboardShortcutInfo); - method public int describeContents(); - method public java.util.List getItems(); - method public CharSequence getLabel(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class KeyboardShortcutInfo implements android.os.Parcelable { - ctor public KeyboardShortcutInfo(CharSequence, int, int); - ctor public KeyboardShortcutInfo(CharSequence, char, int); - method public int describeContents(); - method public char getBaseCharacter(); - method public int getKeycode(); - method @Nullable public CharSequence getLabel(); - method public int getModifiers(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class LayoutInflater { - ctor protected LayoutInflater(android.content.Context); - ctor protected LayoutInflater(android.view.LayoutInflater, android.content.Context); - method public abstract android.view.LayoutInflater cloneInContext(android.content.Context); - method public final android.view.View createView(String, String, android.util.AttributeSet) throws java.lang.ClassNotFoundException, android.view.InflateException; - method @Nullable public final android.view.View createView(@NonNull android.content.Context, @NonNull String, @Nullable String, @Nullable android.util.AttributeSet) throws java.lang.ClassNotFoundException, android.view.InflateException; - method public static android.view.LayoutInflater from(@UiContext android.content.Context); - method public android.content.Context getContext(); - method public final android.view.LayoutInflater.Factory getFactory(); - method public final android.view.LayoutInflater.Factory2 getFactory2(); - method public android.view.LayoutInflater.Filter getFilter(); - method public android.view.View inflate(@LayoutRes int, @Nullable android.view.ViewGroup); - method public android.view.View inflate(org.xmlpull.v1.XmlPullParser, @Nullable android.view.ViewGroup); - method public android.view.View inflate(@LayoutRes int, @Nullable android.view.ViewGroup, boolean); - method public android.view.View inflate(org.xmlpull.v1.XmlPullParser, @Nullable android.view.ViewGroup, boolean); - method protected android.view.View onCreateView(String, android.util.AttributeSet) throws java.lang.ClassNotFoundException; - method protected android.view.View onCreateView(android.view.View, String, android.util.AttributeSet) throws java.lang.ClassNotFoundException; - method @Nullable public android.view.View onCreateView(@NonNull android.content.Context, @Nullable android.view.View, @NonNull String, @Nullable android.util.AttributeSet) throws java.lang.ClassNotFoundException; - method public void setFactory(android.view.LayoutInflater.Factory); - method public void setFactory2(android.view.LayoutInflater.Factory2); - method public void setFilter(android.view.LayoutInflater.Filter); - } - - public static interface LayoutInflater.Factory { - method @Nullable public android.view.View onCreateView(@NonNull String, @NonNull android.content.Context, @NonNull android.util.AttributeSet); - } - - public static interface LayoutInflater.Factory2 extends android.view.LayoutInflater.Factory { - method @Nullable public android.view.View onCreateView(@Nullable android.view.View, @NonNull String, @NonNull android.content.Context, @NonNull android.util.AttributeSet); - } - - public static interface LayoutInflater.Filter { - method public boolean onLoadClass(Class); - } - - public interface Menu { - method public android.view.MenuItem add(CharSequence); - method public android.view.MenuItem add(@StringRes int); - method public android.view.MenuItem add(int, int, int, CharSequence); - method public android.view.MenuItem add(int, int, int, @StringRes int); - method public int addIntentOptions(int, int, int, android.content.ComponentName, android.content.Intent[], android.content.Intent, int, android.view.MenuItem[]); - method public android.view.SubMenu addSubMenu(CharSequence); - method public android.view.SubMenu addSubMenu(@StringRes int); - method public android.view.SubMenu addSubMenu(int, int, int, CharSequence); - method public android.view.SubMenu addSubMenu(int, int, int, @StringRes int); - method public void clear(); - method public void close(); - method public android.view.MenuItem findItem(int); - method public android.view.MenuItem getItem(int); - method public boolean hasVisibleItems(); - method public boolean isShortcutKey(int, android.view.KeyEvent); - method public boolean performIdentifierAction(int, int); - method public boolean performShortcut(int, android.view.KeyEvent, int); - method public void removeGroup(int); - method public void removeItem(int); - method public void setGroupCheckable(int, boolean, boolean); - method public default void setGroupDividerEnabled(boolean); - method public void setGroupEnabled(int, boolean); - method public void setGroupVisible(int, boolean); - method public void setQwertyMode(boolean); - method public int size(); - field public static final int CATEGORY_ALTERNATIVE = 262144; // 0x40000 - field public static final int CATEGORY_CONTAINER = 65536; // 0x10000 - field public static final int CATEGORY_SECONDARY = 196608; // 0x30000 - field public static final int CATEGORY_SYSTEM = 131072; // 0x20000 - field public static final int FIRST = 1; // 0x1 - field public static final int FLAG_ALWAYS_PERFORM_CLOSE = 2; // 0x2 - field public static final int FLAG_APPEND_TO_GROUP = 1; // 0x1 - field public static final int FLAG_PERFORM_NO_CLOSE = 1; // 0x1 - field public static final int NONE = 0; // 0x0 - field public static final int SUPPORTED_MODIFIERS_MASK = 69647; // 0x1100f - } - - public class MenuInflater { - ctor public MenuInflater(android.content.Context); - method public void inflate(@MenuRes int, android.view.Menu); - } - - public interface MenuItem { - method public boolean collapseActionView(); - method public boolean expandActionView(); - method @Nullable public android.view.ActionProvider getActionProvider(); - method @Nullable public android.view.View getActionView(); - method public default int getAlphabeticModifiers(); - method public char getAlphabeticShortcut(); - method @Nullable public default CharSequence getContentDescription(); - method public int getGroupId(); - method @Nullable public android.graphics.drawable.Drawable getIcon(); - method @Nullable public default android.graphics.BlendMode getIconTintBlendMode(); - method @Nullable public default android.content.res.ColorStateList getIconTintList(); - method @Nullable public default android.graphics.PorterDuff.Mode getIconTintMode(); - method @Nullable public android.content.Intent getIntent(); - method public int getItemId(); - method @Nullable public android.view.ContextMenu.ContextMenuInfo getMenuInfo(); - method public default int getNumericModifiers(); - method public char getNumericShortcut(); - method public int getOrder(); - method @Nullable public android.view.SubMenu getSubMenu(); - method @Nullable public CharSequence getTitle(); - method @Nullable public CharSequence getTitleCondensed(); - method @Nullable public default CharSequence getTooltipText(); - method public boolean hasSubMenu(); - method public boolean isActionViewExpanded(); - method public boolean isCheckable(); - method public boolean isChecked(); - method public boolean isEnabled(); - method public boolean isVisible(); - method @NonNull public android.view.MenuItem setActionProvider(@Nullable android.view.ActionProvider); - method @NonNull public android.view.MenuItem setActionView(@Nullable android.view.View); - method @NonNull public android.view.MenuItem setActionView(@LayoutRes int); - method @NonNull public android.view.MenuItem setAlphabeticShortcut(char); - method @NonNull public default android.view.MenuItem setAlphabeticShortcut(char, int); - method @NonNull public android.view.MenuItem setCheckable(boolean); - method @NonNull public android.view.MenuItem setChecked(boolean); - method @NonNull public default android.view.MenuItem setContentDescription(@Nullable CharSequence); - method @NonNull public android.view.MenuItem setEnabled(boolean); - method @NonNull public android.view.MenuItem setIcon(@Nullable android.graphics.drawable.Drawable); - method @NonNull public android.view.MenuItem setIcon(@DrawableRes int); - method @NonNull public default android.view.MenuItem setIconTintBlendMode(@Nullable android.graphics.BlendMode); - method @NonNull public default android.view.MenuItem setIconTintList(@Nullable android.content.res.ColorStateList); - method @NonNull public default android.view.MenuItem setIconTintMode(@Nullable android.graphics.PorterDuff.Mode); - method @NonNull public android.view.MenuItem setIntent(@Nullable android.content.Intent); - method @NonNull public android.view.MenuItem setNumericShortcut(char); - method @NonNull public default android.view.MenuItem setNumericShortcut(char, int); - method @NonNull public android.view.MenuItem setOnActionExpandListener(@Nullable android.view.MenuItem.OnActionExpandListener); - method @NonNull public android.view.MenuItem setOnMenuItemClickListener(@Nullable android.view.MenuItem.OnMenuItemClickListener); - method @NonNull public android.view.MenuItem setShortcut(char, char); - method @NonNull public default android.view.MenuItem setShortcut(char, char, int, int); - method public void setShowAsAction(int); - method @NonNull public android.view.MenuItem setShowAsActionFlags(int); - method @NonNull public android.view.MenuItem setTitle(@Nullable CharSequence); - method @NonNull public android.view.MenuItem setTitle(@StringRes int); - method @NonNull public android.view.MenuItem setTitleCondensed(@Nullable CharSequence); - method @NonNull public default android.view.MenuItem setTooltipText(@Nullable CharSequence); - method @NonNull public android.view.MenuItem setVisible(boolean); - field public static final int SHOW_AS_ACTION_ALWAYS = 2; // 0x2 - field public static final int SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW = 8; // 0x8 - field public static final int SHOW_AS_ACTION_IF_ROOM = 1; // 0x1 - field public static final int SHOW_AS_ACTION_NEVER = 0; // 0x0 - field public static final int SHOW_AS_ACTION_WITH_TEXT = 4; // 0x4 - } - - public static interface MenuItem.OnActionExpandListener { - method public boolean onMenuItemActionCollapse(@NonNull android.view.MenuItem); - method public boolean onMenuItemActionExpand(@NonNull android.view.MenuItem); - } - - public static interface MenuItem.OnMenuItemClickListener { - method public boolean onMenuItemClick(@NonNull android.view.MenuItem); - } - - public final class MotionEvent extends android.view.InputEvent implements android.os.Parcelable { - method public static String actionToString(int); - method public void addBatch(long, float, float, float, float, int); - method public void addBatch(long, android.view.MotionEvent.PointerCoords[], int); - method public static int axisFromString(String); - method public static String axisToString(int); - method public int findPointerIndex(int); - method public int getAction(); - method public int getActionButton(); - method public int getActionIndex(); - method public int getActionMasked(); - method public float getAxisValue(int); - method public float getAxisValue(int, int); - method public int getButtonState(); - method public int getClassification(); - method public int getDeviceId(); - method public long getDownTime(); - method public int getEdgeFlags(); - method public long getEventTime(); - method public long getEventTimeNanos(); - method public int getFlags(); - method public float getHistoricalAxisValue(int, int); - method public float getHistoricalAxisValue(int, int, int); - method public long getHistoricalEventTime(int); - method public long getHistoricalEventTimeNanos(int); - method public float getHistoricalOrientation(int); - method public float getHistoricalOrientation(int, int); - method public void getHistoricalPointerCoords(int, int, android.view.MotionEvent.PointerCoords); - method public float getHistoricalPressure(int); - method public float getHistoricalPressure(int, int); - method public float getHistoricalSize(int); - method public float getHistoricalSize(int, int); - method public float getHistoricalToolMajor(int); - method public float getHistoricalToolMajor(int, int); - method public float getHistoricalToolMinor(int); - method public float getHistoricalToolMinor(int, int); - method public float getHistoricalTouchMajor(int); - method public float getHistoricalTouchMajor(int, int); - method public float getHistoricalTouchMinor(int); - method public float getHistoricalTouchMinor(int, int); - method public float getHistoricalX(int); - method public float getHistoricalX(int, int); - method public float getHistoricalY(int); - method public float getHistoricalY(int, int); - method public int getHistorySize(); - method public int getMetaState(); - method public float getOrientation(); - method public float getOrientation(int); - method public void getPointerCoords(int, android.view.MotionEvent.PointerCoords); - method public int getPointerCount(); - method public int getPointerId(int); - method public void getPointerProperties(int, android.view.MotionEvent.PointerProperties); - method public float getPressure(); - method public float getPressure(int); - method public float getRawX(); - method public float getRawX(int); - method public float getRawY(); - method public float getRawY(int); - method public float getSize(); - method public float getSize(int); - method public int getSource(); - method public float getToolMajor(); - method public float getToolMajor(int); - method public float getToolMinor(); - method public float getToolMinor(int); - method public int getToolType(int); - method public float getTouchMajor(); - method public float getTouchMajor(int); - method public float getTouchMinor(); - method public float getTouchMinor(int); - method public float getX(); - method public float getX(int); - method public float getXPrecision(); - method public float getY(); - method public float getY(int); - method public float getYPrecision(); - method public boolean isButtonPressed(int); - method @Nullable public static android.view.MotionEvent obtain(long, long, int, int, @NonNull android.view.MotionEvent.PointerProperties[], @NonNull android.view.MotionEvent.PointerCoords[], int, int, float, float, int, int, int, int, int, int); - method public static android.view.MotionEvent obtain(long, long, int, int, android.view.MotionEvent.PointerProperties[], android.view.MotionEvent.PointerCoords[], int, int, float, float, int, int, int, int); - method @Deprecated public static android.view.MotionEvent obtain(long, long, int, int, int[], android.view.MotionEvent.PointerCoords[], int, float, float, int, int, int, int); - method public static android.view.MotionEvent obtain(long, long, int, float, float, float, float, int, float, float, int, int); - method @Deprecated public static android.view.MotionEvent obtain(long, long, int, int, float, float, float, float, int, float, float, int, int); - method public static android.view.MotionEvent obtain(long, long, int, float, float, int); - method public static android.view.MotionEvent obtain(android.view.MotionEvent); - method public static android.view.MotionEvent obtainNoHistory(android.view.MotionEvent); - method public void offsetLocation(float, float); - method public void recycle(); - method public void setAction(int); - method public void setEdgeFlags(int); - method public void setLocation(float, float); - method public void setSource(int); - method public void transform(android.graphics.Matrix); - method public void writeToParcel(android.os.Parcel, int); - field public static final int ACTION_BUTTON_PRESS = 11; // 0xb - field public static final int ACTION_BUTTON_RELEASE = 12; // 0xc - field public static final int ACTION_CANCEL = 3; // 0x3 - field public static final int ACTION_DOWN = 0; // 0x0 - field public static final int ACTION_HOVER_ENTER = 9; // 0x9 - field public static final int ACTION_HOVER_EXIT = 10; // 0xa - field public static final int ACTION_HOVER_MOVE = 7; // 0x7 - field public static final int ACTION_MASK = 255; // 0xff - field public static final int ACTION_MOVE = 2; // 0x2 - field public static final int ACTION_OUTSIDE = 4; // 0x4 - field @Deprecated public static final int ACTION_POINTER_1_DOWN = 5; // 0x5 - field @Deprecated public static final int ACTION_POINTER_1_UP = 6; // 0x6 - field @Deprecated public static final int ACTION_POINTER_2_DOWN = 261; // 0x105 - field @Deprecated public static final int ACTION_POINTER_2_UP = 262; // 0x106 - field @Deprecated public static final int ACTION_POINTER_3_DOWN = 517; // 0x205 - field @Deprecated public static final int ACTION_POINTER_3_UP = 518; // 0x206 - field public static final int ACTION_POINTER_DOWN = 5; // 0x5 - field @Deprecated public static final int ACTION_POINTER_ID_MASK = 65280; // 0xff00 - field @Deprecated public static final int ACTION_POINTER_ID_SHIFT = 8; // 0x8 - field public static final int ACTION_POINTER_INDEX_MASK = 65280; // 0xff00 - field public static final int ACTION_POINTER_INDEX_SHIFT = 8; // 0x8 - field public static final int ACTION_POINTER_UP = 6; // 0x6 - field public static final int ACTION_SCROLL = 8; // 0x8 - field public static final int ACTION_UP = 1; // 0x1 - field public static final int AXIS_BRAKE = 23; // 0x17 - field public static final int AXIS_DISTANCE = 24; // 0x18 - field public static final int AXIS_GAS = 22; // 0x16 - field public static final int AXIS_GENERIC_1 = 32; // 0x20 - field public static final int AXIS_GENERIC_10 = 41; // 0x29 - field public static final int AXIS_GENERIC_11 = 42; // 0x2a - field public static final int AXIS_GENERIC_12 = 43; // 0x2b - field public static final int AXIS_GENERIC_13 = 44; // 0x2c - field public static final int AXIS_GENERIC_14 = 45; // 0x2d - field public static final int AXIS_GENERIC_15 = 46; // 0x2e - field public static final int AXIS_GENERIC_16 = 47; // 0x2f - field public static final int AXIS_GENERIC_2 = 33; // 0x21 - field public static final int AXIS_GENERIC_3 = 34; // 0x22 - field public static final int AXIS_GENERIC_4 = 35; // 0x23 - field public static final int AXIS_GENERIC_5 = 36; // 0x24 - field public static final int AXIS_GENERIC_6 = 37; // 0x25 - field public static final int AXIS_GENERIC_7 = 38; // 0x26 - field public static final int AXIS_GENERIC_8 = 39; // 0x27 - field public static final int AXIS_GENERIC_9 = 40; // 0x28 - field public static final int AXIS_GESTURE_PINCH_SCALE_FACTOR = 52; // 0x34 - field public static final int AXIS_GESTURE_SCROLL_X_DISTANCE = 50; // 0x32 - field public static final int AXIS_GESTURE_SCROLL_Y_DISTANCE = 51; // 0x33 - field public static final int AXIS_GESTURE_X_OFFSET = 48; // 0x30 - field public static final int AXIS_GESTURE_Y_OFFSET = 49; // 0x31 - field public static final int AXIS_HAT_X = 15; // 0xf - field public static final int AXIS_HAT_Y = 16; // 0x10 - field public static final int AXIS_HSCROLL = 10; // 0xa - field public static final int AXIS_LTRIGGER = 17; // 0x11 - field public static final int AXIS_ORIENTATION = 8; // 0x8 - field public static final int AXIS_PRESSURE = 2; // 0x2 - field public static final int AXIS_RELATIVE_X = 27; // 0x1b - field public static final int AXIS_RELATIVE_Y = 28; // 0x1c - field public static final int AXIS_RTRIGGER = 18; // 0x12 - field public static final int AXIS_RUDDER = 20; // 0x14 - field public static final int AXIS_RX = 12; // 0xc - field public static final int AXIS_RY = 13; // 0xd - field public static final int AXIS_RZ = 14; // 0xe - field public static final int AXIS_SCROLL = 26; // 0x1a - field public static final int AXIS_SIZE = 3; // 0x3 - field public static final int AXIS_THROTTLE = 19; // 0x13 - field public static final int AXIS_TILT = 25; // 0x19 - field public static final int AXIS_TOOL_MAJOR = 6; // 0x6 - field public static final int AXIS_TOOL_MINOR = 7; // 0x7 - field public static final int AXIS_TOUCH_MAJOR = 4; // 0x4 - field public static final int AXIS_TOUCH_MINOR = 5; // 0x5 - field public static final int AXIS_VSCROLL = 9; // 0x9 - field public static final int AXIS_WHEEL = 21; // 0x15 - field public static final int AXIS_X = 0; // 0x0 - field public static final int AXIS_Y = 1; // 0x1 - field public static final int AXIS_Z = 11; // 0xb - field public static final int BUTTON_BACK = 8; // 0x8 - field public static final int BUTTON_FORWARD = 16; // 0x10 - field public static final int BUTTON_PRIMARY = 1; // 0x1 - field public static final int BUTTON_SECONDARY = 2; // 0x2 - field public static final int BUTTON_STYLUS_PRIMARY = 32; // 0x20 - field public static final int BUTTON_STYLUS_SECONDARY = 64; // 0x40 - field public static final int BUTTON_TERTIARY = 4; // 0x4 - field public static final int CLASSIFICATION_AMBIGUOUS_GESTURE = 1; // 0x1 - field public static final int CLASSIFICATION_DEEP_PRESS = 2; // 0x2 - field public static final int CLASSIFICATION_NONE = 0; // 0x0 - field public static final int CLASSIFICATION_PINCH = 5; // 0x5 - field public static final int CLASSIFICATION_TWO_FINGER_SWIPE = 3; // 0x3 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int EDGE_BOTTOM = 2; // 0x2 - field public static final int EDGE_LEFT = 4; // 0x4 - field public static final int EDGE_RIGHT = 8; // 0x8 - field public static final int EDGE_TOP = 1; // 0x1 - field public static final int FLAG_CANCELED = 32; // 0x20 - field public static final int FLAG_WINDOW_IS_OBSCURED = 1; // 0x1 - field public static final int FLAG_WINDOW_IS_PARTIALLY_OBSCURED = 2; // 0x2 - field public static final int INVALID_POINTER_ID = -1; // 0xffffffff - field public static final int TOOL_TYPE_ERASER = 4; // 0x4 - field public static final int TOOL_TYPE_FINGER = 1; // 0x1 - field public static final int TOOL_TYPE_MOUSE = 3; // 0x3 - field public static final int TOOL_TYPE_STYLUS = 2; // 0x2 - field public static final int TOOL_TYPE_UNKNOWN = 0; // 0x0 - } - - public static final class MotionEvent.PointerCoords { - ctor public MotionEvent.PointerCoords(); - ctor public MotionEvent.PointerCoords(android.view.MotionEvent.PointerCoords); - method public void clear(); - method public void copyFrom(android.view.MotionEvent.PointerCoords); - method public float getAxisValue(int); - method public boolean isResampled(); - method public void setAxisValue(int, float); - field public float orientation; - field public float pressure; - field public float size; - field public float toolMajor; - field public float toolMinor; - field public float touchMajor; - field public float touchMinor; - field public float x; - field public float y; - } - - public static final class MotionEvent.PointerProperties { - ctor public MotionEvent.PointerProperties(); - ctor public MotionEvent.PointerProperties(android.view.MotionEvent.PointerProperties); - method public void clear(); - method public void copyFrom(android.view.MotionEvent.PointerProperties); - field public int id; - field public int toolType; - } - - public final class MotionPredictor { - ctor public MotionPredictor(@NonNull android.content.Context); - method public boolean isPredictionAvailable(int, int); - method @Nullable public android.view.MotionEvent predict(long); - method public void record(@NonNull android.view.MotionEvent); - } - - public interface OnReceiveContentListener { - method @Nullable public android.view.ContentInfo onReceiveContent(@NonNull android.view.View, @NonNull android.view.ContentInfo); - } - - public abstract class OrientationEventListener { - ctor public OrientationEventListener(android.content.Context); - ctor public OrientationEventListener(android.content.Context, int); - method public boolean canDetectOrientation(); - method public void disable(); - method public void enable(); - method public abstract void onOrientationChanged(int); - field public static final int ORIENTATION_UNKNOWN = -1; // 0xffffffff - } - - @Deprecated public abstract class OrientationListener implements android.hardware.SensorListener { - ctor @Deprecated public OrientationListener(android.content.Context); - ctor @Deprecated public OrientationListener(android.content.Context, int); - method @Deprecated public void disable(); - method @Deprecated public void enable(); - method @Deprecated public void onAccuracyChanged(int, int); - method @Deprecated public abstract void onOrientationChanged(int); - method @Deprecated public void onSensorChanged(int, float[]); - field @Deprecated public static final int ORIENTATION_UNKNOWN = -1; // 0xffffffff - } - - public final class PixelCopy { - method public static void request(@NonNull android.view.SurfaceView, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); - method public static void request(@NonNull android.view.SurfaceView, @Nullable android.graphics.Rect, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); - method public static void request(@NonNull android.view.Surface, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); - method public static void request(@NonNull android.view.Surface, @Nullable android.graphics.Rect, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); - method public static void request(@NonNull android.view.Window, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); - method public static void request(@NonNull android.view.Window, @Nullable android.graphics.Rect, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); - method public static void request(@NonNull android.view.PixelCopy.Request, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - field public static final int ERROR_DESTINATION_INVALID = 5; // 0x5 - field public static final int ERROR_SOURCE_INVALID = 4; // 0x4 - field public static final int ERROR_SOURCE_NO_DATA = 3; // 0x3 - field public static final int ERROR_TIMEOUT = 2; // 0x2 - field public static final int ERROR_UNKNOWN = 1; // 0x1 - field public static final int SUCCESS = 0; // 0x0 - } - - public static interface PixelCopy.OnPixelCopyFinishedListener { - method public void onPixelCopyFinished(int); - } - - public static final class PixelCopy.Request { - method @Nullable public android.graphics.Bitmap getDestinationBitmap(); - method @Nullable public android.graphics.Rect getSourceRect(); - } - - public static final class PixelCopy.Request.Builder { - method @NonNull public android.view.PixelCopy.Request build(); - method @NonNull public static android.view.PixelCopy.Request.Builder ofSurface(@NonNull android.view.Surface); - method @NonNull public static android.view.PixelCopy.Request.Builder ofSurface(@NonNull android.view.SurfaceView); - method @NonNull public static android.view.PixelCopy.Request.Builder ofWindow(@NonNull android.view.Window); - method @NonNull public static android.view.PixelCopy.Request.Builder ofWindow(@NonNull android.view.View); - method @NonNull public android.view.PixelCopy.Request.Builder setDestinationBitmap(@Nullable android.graphics.Bitmap); - method @NonNull public android.view.PixelCopy.Request.Builder setSourceRect(@Nullable android.graphics.Rect); - } - - public static final class PixelCopy.Result { - method @NonNull public android.graphics.Bitmap getBitmap(); - method public int getStatus(); - } - - public final class PointerIcon implements android.os.Parcelable { - method @NonNull public static android.view.PointerIcon create(@NonNull android.graphics.Bitmap, float, float); - method public int describeContents(); - method @NonNull public static android.view.PointerIcon getSystemIcon(@NonNull android.content.Context, int); - method @NonNull public static android.view.PointerIcon load(@NonNull android.content.res.Resources, @XmlRes int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_ALIAS = 1010; // 0x3f2 - field public static final int TYPE_ALL_SCROLL = 1013; // 0x3f5 - field public static final int TYPE_ARROW = 1000; // 0x3e8 - field public static final int TYPE_CELL = 1006; // 0x3ee - field public static final int TYPE_CONTEXT_MENU = 1001; // 0x3e9 - field public static final int TYPE_COPY = 1011; // 0x3f3 - field public static final int TYPE_CROSSHAIR = 1007; // 0x3ef - field @Deprecated public static final int TYPE_DEFAULT = 1000; // 0x3e8 - field public static final int TYPE_GRAB = 1020; // 0x3fc - field public static final int TYPE_GRABBING = 1021; // 0x3fd - field public static final int TYPE_HAND = 1002; // 0x3ea - field public static final int TYPE_HANDWRITING = 1022; // 0x3fe - field public static final int TYPE_HELP = 1003; // 0x3eb - field public static final int TYPE_HORIZONTAL_DOUBLE_ARROW = 1014; // 0x3f6 - field public static final int TYPE_NO_DROP = 1012; // 0x3f4 - field public static final int TYPE_NULL = 0; // 0x0 - field public static final int TYPE_TEXT = 1008; // 0x3f0 - field public static final int TYPE_TOP_LEFT_DIAGONAL_DOUBLE_ARROW = 1017; // 0x3f9 - field public static final int TYPE_TOP_RIGHT_DIAGONAL_DOUBLE_ARROW = 1016; // 0x3f8 - field public static final int TYPE_VERTICAL_DOUBLE_ARROW = 1015; // 0x3f7 - field public static final int TYPE_VERTICAL_TEXT = 1009; // 0x3f1 - field public static final int TYPE_WAIT = 1004; // 0x3ec - field public static final int TYPE_ZOOM_IN = 1018; // 0x3fa - field public static final int TYPE_ZOOM_OUT = 1019; // 0x3fb - } - - public final class RoundedCorner implements android.os.Parcelable { - ctor public RoundedCorner(int, int, int, int); - method public int describeContents(); - method @NonNull public android.graphics.Point getCenter(); - method public int getPosition(); - method public int getRadius(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int POSITION_BOTTOM_LEFT = 3; // 0x3 - field public static final int POSITION_BOTTOM_RIGHT = 2; // 0x2 - field public static final int POSITION_TOP_LEFT = 0; // 0x0 - field public static final int POSITION_TOP_RIGHT = 1; // 0x1 - } - - public class ScaleGestureDetector { - ctor public ScaleGestureDetector(@NonNull android.content.Context, @NonNull android.view.ScaleGestureDetector.OnScaleGestureListener); - ctor public ScaleGestureDetector(@NonNull android.content.Context, @NonNull android.view.ScaleGestureDetector.OnScaleGestureListener, @Nullable android.os.Handler); - method public float getCurrentSpan(); - method public float getCurrentSpanX(); - method public float getCurrentSpanY(); - method public long getEventTime(); - method public float getFocusX(); - method public float getFocusY(); - method public float getPreviousSpan(); - method public float getPreviousSpanX(); - method public float getPreviousSpanY(); - method public float getScaleFactor(); - method public long getTimeDelta(); - method public boolean isInProgress(); - method public boolean isQuickScaleEnabled(); - method public boolean isStylusScaleEnabled(); - method public boolean onTouchEvent(@NonNull android.view.MotionEvent); - method public void setQuickScaleEnabled(boolean); - method public void setStylusScaleEnabled(boolean); - } - - public static interface ScaleGestureDetector.OnScaleGestureListener { - method public boolean onScale(@NonNull android.view.ScaleGestureDetector); - method public boolean onScaleBegin(@NonNull android.view.ScaleGestureDetector); - method public void onScaleEnd(@NonNull android.view.ScaleGestureDetector); - } - - public static class ScaleGestureDetector.SimpleOnScaleGestureListener implements android.view.ScaleGestureDetector.OnScaleGestureListener { - ctor public ScaleGestureDetector.SimpleOnScaleGestureListener(); - method public boolean onScale(@NonNull android.view.ScaleGestureDetector); - method public boolean onScaleBegin(@NonNull android.view.ScaleGestureDetector); - method public void onScaleEnd(@NonNull android.view.ScaleGestureDetector); - } - - @UiThread public interface ScrollCaptureCallback { - method public void onScrollCaptureEnd(@NonNull Runnable); - method public void onScrollCaptureImageRequest(@NonNull android.view.ScrollCaptureSession, @NonNull android.os.CancellationSignal, @NonNull android.graphics.Rect, @NonNull java.util.function.Consumer); - method public void onScrollCaptureSearch(@NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer); - method public void onScrollCaptureStart(@NonNull android.view.ScrollCaptureSession, @NonNull android.os.CancellationSignal, @NonNull Runnable); - } - - public class ScrollCaptureSession { - ctor public ScrollCaptureSession(@NonNull android.view.Surface, @NonNull android.graphics.Rect, @NonNull android.graphics.Point); - method @NonNull public android.graphics.Point getPositionInWindow(); - method @NonNull public android.graphics.Rect getScrollBounds(); - method @NonNull public android.view.Surface getSurface(); - } - - public final class ScrollCaptureTarget { - ctor public ScrollCaptureTarget(@NonNull android.view.View, @NonNull android.graphics.Rect, @NonNull android.graphics.Point, @NonNull android.view.ScrollCaptureCallback); - method @NonNull public android.view.ScrollCaptureCallback getCallback(); - method @NonNull public android.view.View getContainingView(); - method public int getHint(); - method @NonNull public android.graphics.Rect getLocalVisibleRect(); - method @NonNull public android.graphics.Point getPositionInWindow(); - method @Nullable public android.graphics.Rect getScrollBounds(); - method public void setScrollBounds(@Nullable android.graphics.Rect); - method @UiThread public void updatePositionInWindow(); - } - - @FlaggedApi("android.view.flags.scroll_feedback_api") public interface ScrollFeedbackProvider { - method @FlaggedApi("android.view.flags.scroll_feedback_api") @NonNull public static android.view.ScrollFeedbackProvider createProvider(@NonNull android.view.View); - method @FlaggedApi("android.view.flags.scroll_feedback_api") public void onScrollLimit(int, int, int, boolean); - method @FlaggedApi("android.view.flags.scroll_feedback_api") public void onScrollProgress(int, int, int, int); - method @FlaggedApi("android.view.flags.scroll_feedback_api") public void onSnapToItem(int, int, int); - } - - public class SearchEvent { - ctor public SearchEvent(android.view.InputDevice); - method public android.view.InputDevice getInputDevice(); - } - - public class SoundEffectConstants { - method public static int getConstantForFocusDirection(int, boolean); - method public static int getContantForFocusDirection(int); - field public static final int CLICK = 0; // 0x0 - field public static final int NAVIGATION_DOWN = 4; // 0x4 - field public static final int NAVIGATION_LEFT = 1; // 0x1 - field public static final int NAVIGATION_REPEAT_DOWN = 8; // 0x8 - field public static final int NAVIGATION_REPEAT_LEFT = 5; // 0x5 - field public static final int NAVIGATION_REPEAT_RIGHT = 7; // 0x7 - field public static final int NAVIGATION_REPEAT_UP = 6; // 0x6 - field public static final int NAVIGATION_RIGHT = 3; // 0x3 - field public static final int NAVIGATION_UP = 2; // 0x2 - } - - public interface SubMenu extends android.view.Menu { - method public void clearHeader(); - method public android.view.MenuItem getItem(); - method public android.view.SubMenu setHeaderIcon(@DrawableRes int); - method public android.view.SubMenu setHeaderIcon(android.graphics.drawable.Drawable); - method public android.view.SubMenu setHeaderTitle(@StringRes int); - method public android.view.SubMenu setHeaderTitle(CharSequence); - method public android.view.SubMenu setHeaderView(android.view.View); - method public android.view.SubMenu setIcon(@DrawableRes int); - method public android.view.SubMenu setIcon(android.graphics.drawable.Drawable); - } - - public class Surface implements android.os.Parcelable { - ctor public Surface(@NonNull android.view.SurfaceControl); - ctor public Surface(android.graphics.SurfaceTexture); - method public void clearFrameRate(); - method public int describeContents(); - method public boolean isValid(); - method public android.graphics.Canvas lockCanvas(android.graphics.Rect) throws java.lang.IllegalArgumentException, android.view.Surface.OutOfResourcesException; - method public android.graphics.Canvas lockHardwareCanvas(); - method public void readFromParcel(android.os.Parcel); - method public void release(); - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public void setFrameRate(@NonNull android.view.Surface.FrameRateParams); - method public void setFrameRate(@FloatRange(from=0.0) float, int, int); - method public void setFrameRate(@FloatRange(from=0.0) float, int); - method @Deprecated public void unlockCanvas(android.graphics.Canvas); - method public void unlockCanvasAndPost(android.graphics.Canvas); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CHANGE_FRAME_RATE_ALWAYS = 1; // 0x1 - field public static final int CHANGE_FRAME_RATE_ONLY_IF_SEAMLESS = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FRAME_RATE_COMPATIBILITY_DEFAULT = 0; // 0x0 - field public static final int FRAME_RATE_COMPATIBILITY_FIXED_SOURCE = 1; // 0x1 - field @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_gte_enum") public static final int FRAME_RATE_COMPATIBILITY_GTE = 2; // 0x2 - field public static final int ROTATION_0 = 0; // 0x0 - field public static final int ROTATION_180 = 2; // 0x2 - field public static final int ROTATION_270 = 3; // 0x3 - field public static final int ROTATION_90 = 1; // 0x1 - } - - @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public static class Surface.FrameRateParams { - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public int getChangeFrameRateStrategy(); - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public float getDesiredMaxRate(); - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public float getDesiredMinRate(); - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public float getFixedSourceRate(); - field @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public static final android.view.Surface.FrameRateParams IGNORE; - } - - @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public static final class Surface.FrameRateParams.Builder { - ctor public Surface.FrameRateParams.Builder(); - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") @NonNull public android.view.Surface.FrameRateParams build(); - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") @NonNull public android.view.Surface.FrameRateParams.Builder setChangeFrameRateStrategy(int); - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") @NonNull public android.view.Surface.FrameRateParams.Builder setDesiredRateRange(@FloatRange(from=0.0) float, @FloatRange(from=0.0) float); - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") @NonNull public android.view.Surface.FrameRateParams.Builder setFixedSourceRate(@FloatRange(from=0.0) float); - } - - public static class Surface.OutOfResourcesException extends java.lang.RuntimeException { - ctor public Surface.OutOfResourcesException(); - ctor public Surface.OutOfResourcesException(String); - } - - public final class SurfaceControl implements android.os.Parcelable { - method public int describeContents(); - method public boolean isValid(); - method public void readFromParcel(android.os.Parcel); - method public void release(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int BUFFER_TRANSFORM_IDENTITY = 0; // 0x0 - field public static final int BUFFER_TRANSFORM_MIRROR_HORIZONTAL = 1; // 0x1 - field public static final int BUFFER_TRANSFORM_MIRROR_VERTICAL = 2; // 0x2 - field public static final int BUFFER_TRANSFORM_ROTATE_180 = 3; // 0x3 - field public static final int BUFFER_TRANSFORM_ROTATE_270 = 7; // 0x7 - field public static final int BUFFER_TRANSFORM_ROTATE_90 = 4; // 0x4 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class SurfaceControl.Builder { - ctor public SurfaceControl.Builder(); - method @NonNull public android.view.SurfaceControl build(); - method @NonNull public android.view.SurfaceControl.Builder setBufferSize(@IntRange(from=0) int, @IntRange(from=0) int); - method @NonNull public android.view.SurfaceControl.Builder setFormat(int); - method @NonNull public android.view.SurfaceControl.Builder setHidden(boolean); - method @NonNull public android.view.SurfaceControl.Builder setName(@NonNull String); - method @NonNull public android.view.SurfaceControl.Builder setOpaque(boolean); - method @NonNull public android.view.SurfaceControl.Builder setParent(@Nullable android.view.SurfaceControl); - } - - @FlaggedApi("com.android.window.flags.jank_api") public static class SurfaceControl.JankData { - method public long getActualAppFrameTimeNanos(); - method public int getJankType(); - method public long getScheduledAppFrameTimeNanos(); - method public long getVsyncId(); - field public static final int JANK_APPLICATION = 2; // 0x2 - field public static final int JANK_COMPOSER = 1; // 0x1 - field public static final int JANK_NONE = 0; // 0x0 - field public static final int JANK_OTHER = 4; // 0x4 - } - - @FlaggedApi("com.android.window.flags.jank_api") public static interface SurfaceControl.OnJankDataListener { - method public void onJankDataAvailable(@NonNull java.util.List); - } - - @FlaggedApi("com.android.window.flags.jank_api") public static class SurfaceControl.OnJankDataListenerRegistration { - method public void flush(); - method public void removeAfter(long); - } - - public static class SurfaceControl.Transaction implements java.io.Closeable android.os.Parcelable { - ctor public SurfaceControl.Transaction(); - method @NonNull public android.view.SurfaceControl.Transaction addTransactionCommittedListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.SurfaceControl.TransactionCommittedListener); - method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") @NonNull public android.view.SurfaceControl.Transaction addTransactionCompletedListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public void apply(); - method @NonNull public android.view.SurfaceControl.Transaction clearFrameRate(@NonNull android.view.SurfaceControl); - method @Deprecated @NonNull public android.view.SurfaceControl.Transaction clearTrustedPresentationCallback(@NonNull android.view.SurfaceControl); - method public void close(); - method public int describeContents(); - method @NonNull public android.view.SurfaceControl.Transaction merge(@NonNull android.view.SurfaceControl.Transaction); - method @NonNull public android.view.SurfaceControl.Transaction reparent(@NonNull android.view.SurfaceControl, @Nullable android.view.SurfaceControl); - method @NonNull public android.view.SurfaceControl.Transaction setAlpha(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0, to=1.0) float); - method @NonNull public android.view.SurfaceControl.Transaction setBuffer(@NonNull android.view.SurfaceControl, @Nullable android.hardware.HardwareBuffer); - method @NonNull public android.view.SurfaceControl.Transaction setBuffer(@NonNull android.view.SurfaceControl, @Nullable android.hardware.HardwareBuffer, @Nullable android.hardware.SyncFence); - method @NonNull public android.view.SurfaceControl.Transaction setBuffer(@NonNull android.view.SurfaceControl, @Nullable android.hardware.HardwareBuffer, @Nullable android.hardware.SyncFence, @Nullable java.util.function.Consumer); - method @NonNull public android.view.SurfaceControl.Transaction setBufferSize(@NonNull android.view.SurfaceControl, @IntRange(from=0) int, @IntRange(from=0) int); - method @NonNull public android.view.SurfaceControl.Transaction setBufferTransform(@NonNull android.view.SurfaceControl, int); - method @FlaggedApi("android.media.tv.flags.apply_picture_profiles") @NonNull public android.view.SurfaceControl.Transaction setContentPriority(@NonNull android.view.SurfaceControl, int); - method @NonNull public android.view.SurfaceControl.Transaction setCrop(@NonNull android.view.SurfaceControl, @Nullable android.graphics.Rect); - method @NonNull public android.view.SurfaceControl.Transaction setDamageRegion(@NonNull android.view.SurfaceControl, @Nullable android.graphics.Region); - method @NonNull public android.view.SurfaceControl.Transaction setDataSpace(@NonNull android.view.SurfaceControl, int); - method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") @NonNull public android.view.SurfaceControl.Transaction setDesiredHdrHeadroom(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0f) float); - method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") @NonNull public android.view.SurfaceControl.Transaction setDesiredPresentTimeNanos(long); - method @NonNull public android.view.SurfaceControl.Transaction setExtendedRangeBrightness(@NonNull android.view.SurfaceControl, float, float); - method @NonNull public android.view.SurfaceControl.Transaction setFrameRate(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0) float, int); - method @NonNull public android.view.SurfaceControl.Transaction setFrameRate(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0) float, int, int); - method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_surfacecontrol_setframerate_api") @NonNull public android.view.SurfaceControl.Transaction setFrameRate(@NonNull android.view.SurfaceControl, @NonNull android.view.Surface.FrameRateParams); - method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") @NonNull public android.view.SurfaceControl.Transaction setFrameTimeline(long); - method @Deprecated @NonNull public android.view.SurfaceControl.Transaction setGeometry(@NonNull android.view.SurfaceControl, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, int); - method @NonNull public android.view.SurfaceControl.Transaction setLayer(@NonNull android.view.SurfaceControl, @IntRange(from=java.lang.Integer.MIN_VALUE, to=java.lang.Integer.MAX_VALUE) int); - method @FlaggedApi("android.hardware.flags.luts_api") @NonNull public android.view.SurfaceControl.Transaction setLuts(@NonNull android.view.SurfaceControl, @Nullable android.hardware.DisplayLuts); - method @NonNull public android.view.SurfaceControl.Transaction setOpaque(@NonNull android.view.SurfaceControl, boolean); - method @NonNull public android.view.SurfaceControl.Transaction setPosition(@NonNull android.view.SurfaceControl, float, float); - method @NonNull public android.view.SurfaceControl.Transaction setScale(@NonNull android.view.SurfaceControl, float, float); - method @Deprecated @NonNull public android.view.SurfaceControl.Transaction setTrustedPresentationCallback(@NonNull android.view.SurfaceControl, @NonNull android.view.SurfaceControl.TrustedPresentationThresholds, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @NonNull public android.view.SurfaceControl.Transaction setVisibility(@NonNull android.view.SurfaceControl, boolean); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static interface SurfaceControl.TransactionCommittedListener { - method public void onTransactionCommitted(); - } - - @FlaggedApi("com.android.window.flags.sdk_desired_present_time") public static final class SurfaceControl.TransactionStats { - method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") public long getLatchTimeNanos(); - method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") @NonNull public android.hardware.SyncFence getPresentFence(); - } - - @Deprecated public static final class SurfaceControl.TrustedPresentationThresholds { - ctor @Deprecated public SurfaceControl.TrustedPresentationThresholds(@FloatRange(from=0.0f, fromInclusive=false, to=1.0f) float, @FloatRange(from=0.0f, fromInclusive=false, to=1.0f) float, @IntRange(from=1) int); - } - - @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public interface SurfaceControlInputReceiver { - method public boolean onInputEvent(@NonNull android.view.InputEvent); - } - - public class SurfaceControlViewHost { - ctor public SurfaceControlViewHost(@NonNull android.content.Context, @NonNull android.view.Display, @Nullable android.os.IBinder); - ctor @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public SurfaceControlViewHost(@NonNull android.content.Context, @NonNull android.view.Display, @Nullable android.window.InputTransferToken); - method @Nullable public android.view.SurfaceControlViewHost.SurfacePackage getSurfacePackage(); - method @Nullable public android.view.View getView(); - method public void relayout(int, int); - method public void release(); - method public void setView(@NonNull android.view.View, int, int); - method @Deprecated public boolean transferTouchGestureToHost(); - } - - public static final class SurfaceControlViewHost.SurfacePackage implements android.os.Parcelable { - ctor public SurfaceControlViewHost.SurfacePackage(@NonNull android.view.SurfaceControlViewHost.SurfacePackage); - method public int describeContents(); - method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") @Nullable public android.window.InputTransferToken getInputTransferToken(); - method @NonNull public android.view.SurfaceControl getSurfaceControl(); - method public void notifyConfigurationChanged(@NonNull android.content.res.Configuration); - method public void notifyDetachedFromWindow(); - method public void release(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface SurfaceHolder { - method public void addCallback(android.view.SurfaceHolder.Callback); - method public android.view.Surface getSurface(); - method public android.graphics.Rect getSurfaceFrame(); - method public boolean isCreating(); - method public android.graphics.Canvas lockCanvas(); - method public android.graphics.Canvas lockCanvas(android.graphics.Rect); - method public default android.graphics.Canvas lockHardwareCanvas(); - method public void removeCallback(android.view.SurfaceHolder.Callback); - method public void setFixedSize(int, int); - method public void setFormat(int); - method public void setKeepScreenOn(boolean); - method public void setSizeFromLayout(); - method @Deprecated public void setType(int); - method public void unlockCanvasAndPost(android.graphics.Canvas); - field @Deprecated public static final int SURFACE_TYPE_GPU = 2; // 0x2 - field @Deprecated public static final int SURFACE_TYPE_HARDWARE = 1; // 0x1 - field @Deprecated public static final int SURFACE_TYPE_NORMAL = 0; // 0x0 - field @Deprecated public static final int SURFACE_TYPE_PUSH_BUFFERS = 3; // 0x3 - } - - public static class SurfaceHolder.BadSurfaceTypeException extends java.lang.RuntimeException { - ctor public SurfaceHolder.BadSurfaceTypeException(); - ctor public SurfaceHolder.BadSurfaceTypeException(String); - } - - public static interface SurfaceHolder.Callback { - method public void surfaceChanged(@NonNull android.view.SurfaceHolder, int, @IntRange(from=0) int, @IntRange(from=0) int); - method public void surfaceCreated(@NonNull android.view.SurfaceHolder); - method public void surfaceDestroyed(@NonNull android.view.SurfaceHolder); - } - - public static interface SurfaceHolder.Callback2 extends android.view.SurfaceHolder.Callback { - method public void surfaceRedrawNeeded(@NonNull android.view.SurfaceHolder); - method public default void surfaceRedrawNeededAsync(@NonNull android.view.SurfaceHolder, @NonNull Runnable); - } - - public class SurfaceView extends android.view.View { - ctor public SurfaceView(android.content.Context); - ctor public SurfaceView(android.content.Context, android.util.AttributeSet); - ctor public SurfaceView(android.content.Context, android.util.AttributeSet, int); - ctor public SurfaceView(android.content.Context, android.util.AttributeSet, int, int); - method public void applyTransactionToFrame(@NonNull android.view.SurfaceControl.Transaction); - method @FlaggedApi("android.view.flags.surface_view_get_surface_package") public void clearChildSurfacePackage(); - method @FlaggedApi("android.view.flags.surface_view_get_surface_package") @Nullable public android.view.SurfaceControlViewHost.SurfacePackage getChildSurfacePackage(); - method @FlaggedApi("android.view.flags.surface_view_set_composition_order") public int getCompositionOrder(); - method public android.view.SurfaceHolder getHolder(); - method @Deprecated @Nullable public android.os.IBinder getHostToken(); - method public android.view.SurfaceControl getSurfaceControl(); - method public void setChildSurfacePackage(@NonNull android.view.SurfaceControlViewHost.SurfacePackage); - method @FlaggedApi("android.view.flags.surface_view_set_composition_order") public void setCompositionOrder(int); - method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public void setDesiredHdrHeadroom(@FloatRange(from=0.0f, to=10000.0) float); - method public void setSecure(boolean); - method public void setSurfaceLifecycle(int); - method public void setZOrderMediaOverlay(boolean); - method public void setZOrderOnTop(boolean); - field public static final int SURFACE_LIFECYCLE_DEFAULT = 0; // 0x0 - field public static final int SURFACE_LIFECYCLE_FOLLOWS_ATTACHMENT = 2; // 0x2 - field public static final int SURFACE_LIFECYCLE_FOLLOWS_VISIBILITY = 1; // 0x1 - } - - public class TextureView extends android.view.View { - ctor public TextureView(@NonNull android.content.Context); - ctor public TextureView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); - ctor public TextureView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); - ctor public TextureView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, int); - method public final void draw(android.graphics.Canvas); - method @Nullable public android.graphics.Bitmap getBitmap(); - method @Nullable public android.graphics.Bitmap getBitmap(int, int); - method @NonNull public android.graphics.Bitmap getBitmap(@NonNull android.graphics.Bitmap); - method @Nullable public android.graphics.SurfaceTexture getSurfaceTexture(); - method @Nullable public android.view.TextureView.SurfaceTextureListener getSurfaceTextureListener(); - method @NonNull public android.graphics.Matrix getTransform(@Nullable android.graphics.Matrix); - method public boolean isAvailable(); - method @Nullable public android.graphics.Canvas lockCanvas(); - method @Nullable public android.graphics.Canvas lockCanvas(@Nullable android.graphics.Rect); - method protected final void onDraw(android.graphics.Canvas); - method public void setBackgroundDrawable(android.graphics.drawable.Drawable); - method public void setOpaque(boolean); - method public void setSurfaceTexture(@NonNull android.graphics.SurfaceTexture); - method public void setSurfaceTextureListener(@Nullable android.view.TextureView.SurfaceTextureListener); - method public void setTransform(@Nullable android.graphics.Matrix); - method public void unlockCanvasAndPost(@NonNull android.graphics.Canvas); - } - - public static interface TextureView.SurfaceTextureListener { - method public void onSurfaceTextureAvailable(@NonNull android.graphics.SurfaceTexture, int, int); - method public boolean onSurfaceTextureDestroyed(@NonNull android.graphics.SurfaceTexture); - method public void onSurfaceTextureSizeChanged(@NonNull android.graphics.SurfaceTexture, int, int); - method public void onSurfaceTextureUpdated(@NonNull android.graphics.SurfaceTexture); - } - - public class TouchDelegate { - ctor public TouchDelegate(android.graphics.Rect, android.view.View); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.TouchDelegateInfo getTouchDelegateInfo(); - method public boolean onTouchEvent(@NonNull android.view.MotionEvent); - method public boolean onTouchExplorationHoverEvent(@NonNull android.view.MotionEvent); - field public static final int ABOVE = 1; // 0x1 - field public static final int BELOW = 2; // 0x2 - field public static final int TO_LEFT = 4; // 0x4 - field public static final int TO_RIGHT = 8; // 0x8 - } - - public final class VelocityTracker { - method public void addMovement(android.view.MotionEvent); - method public void clear(); - method public void computeCurrentVelocity(int); - method public void computeCurrentVelocity(int, float); - method public float getAxisVelocity(int, int); - method public float getAxisVelocity(int); - method public float getXVelocity(); - method public float getXVelocity(int); - method public float getYVelocity(); - method public float getYVelocity(int); - method public boolean isAxisSupported(int); - method public static android.view.VelocityTracker obtain(); - method public void recycle(); - } - - public abstract class VerifiedInputEvent implements android.os.Parcelable { - method public int describeContents(); - method public int getDeviceId(); - method public int getDisplayId(); - method public long getEventTimeNanos(); - method public int getSource(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class VerifiedKeyEvent extends android.view.VerifiedInputEvent implements android.os.Parcelable { - method public int getAction(); - method public long getDownTimeNanos(); - method @Nullable public Boolean getFlag(int); - method public int getKeyCode(); - method public int getMetaState(); - method public int getRepeatCount(); - method public int getScanCode(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class VerifiedMotionEvent extends android.view.VerifiedInputEvent implements android.os.Parcelable { - method public int getActionMasked(); - method public int getButtonState(); - method public long getDownTimeNanos(); - method @Nullable public Boolean getFlag(int); - method public int getMetaState(); - method public float getRawX(); - method public float getRawY(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @UiThread public class View implements android.view.accessibility.AccessibilityEventSource android.graphics.drawable.Drawable.Callback android.view.KeyEvent.Callback { - ctor public View(android.content.Context); - ctor public View(android.content.Context, @Nullable android.util.AttributeSet); - ctor public View(android.content.Context, @Nullable android.util.AttributeSet, int); - ctor public View(android.content.Context, @Nullable android.util.AttributeSet, int, int); - method public void addChildrenForAccessibility(java.util.ArrayList); - method public void addExtraDataToAccessibilityNodeInfo(@NonNull android.view.accessibility.AccessibilityNodeInfo, @NonNull String, @Nullable android.os.Bundle); - method public void addFocusables(java.util.ArrayList, int); - method public void addFocusables(java.util.ArrayList, int, int); - method public void addKeyboardNavigationClusters(@NonNull java.util.Collection, int); - method public void addOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener); - method public void addOnLayoutChangeListener(android.view.View.OnLayoutChangeListener); - method public void addOnUnhandledKeyEventListener(android.view.View.OnUnhandledKeyEventListener); - method public void addTouchables(java.util.ArrayList); - method public android.view.ViewPropertyAnimator animate(); - method @Deprecated @FlaggedApi("android.view.accessibility.deprecate_accessibility_announcement_apis") public void announceForAccessibility(CharSequence); - method public void autofill(android.view.autofill.AutofillValue); - method public void autofill(@NonNull android.util.SparseArray); - method protected boolean awakenScrollBars(); - method protected boolean awakenScrollBars(int); - method protected boolean awakenScrollBars(int, boolean); - method public void bringToFront(); - method @Deprecated public void buildDrawingCache(); - method @Deprecated public void buildDrawingCache(boolean); - method public void buildLayer(); - method public boolean callOnClick(); - method public boolean canResolveLayoutDirection(); - method public boolean canResolveTextAlignment(); - method public boolean canResolveTextDirection(); - method public boolean canScrollHorizontally(int); - method public boolean canScrollVertically(int); - method public final void cancelDragAndDrop(); - method public void cancelLongPress(); - method public final void cancelPendingInputEvents(); - method public boolean checkInputConnectionProxy(android.view.View); - method public void clearAnimation(); - method public void clearFocus(); - method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") public void clearPendingCredentialRequest(); - method public void clearViewTranslationCallback(); - method public static int combineMeasuredStates(int, int); - method protected int computeHorizontalScrollExtent(); - method protected int computeHorizontalScrollOffset(); - method protected int computeHorizontalScrollRange(); - method public void computeScroll(); - method public android.view.WindowInsets computeSystemWindowInsets(android.view.WindowInsets, android.graphics.Rect); - method protected int computeVerticalScrollExtent(); - method protected int computeVerticalScrollOffset(); - method protected int computeVerticalScrollRange(); - method public android.view.accessibility.AccessibilityNodeInfo createAccessibilityNodeInfo(); - method public void createContextMenu(android.view.ContextMenu); - method @Deprecated public void destroyDrawingCache(); - method public android.view.WindowInsets dispatchApplyWindowInsets(android.view.WindowInsets); - method public boolean dispatchCapturedPointerEvent(android.view.MotionEvent); - method public void dispatchConfigurationChanged(android.content.res.Configuration); - method public void dispatchCreateViewTranslationRequest(@NonNull java.util.Map, @NonNull int[], @NonNull android.view.translation.TranslationCapability, @NonNull java.util.List); - method public void dispatchDisplayHint(int); - method public boolean dispatchDragEvent(android.view.DragEvent); - method protected void dispatchDraw(@NonNull android.graphics.Canvas); - method public void dispatchDrawableHotspotChanged(float, float); - method @CallSuper public void dispatchFinishTemporaryDetach(); - method protected boolean dispatchGenericFocusedEvent(android.view.MotionEvent); - method public boolean dispatchGenericMotionEvent(android.view.MotionEvent); - method protected boolean dispatchGenericPointerEvent(android.view.MotionEvent); - method protected boolean dispatchHoverEvent(android.view.MotionEvent); - method public boolean dispatchKeyEvent(android.view.KeyEvent); - method public boolean dispatchKeyEventPreIme(android.view.KeyEvent); - method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent); - method public boolean dispatchNestedFling(float, float, boolean); - method public boolean dispatchNestedPreFling(float, float); - method public boolean dispatchNestedPrePerformAccessibilityAction(int, @Nullable android.os.Bundle); - method public boolean dispatchNestedPreScroll(int, int, @Nullable @Size(2) int[], @Nullable @Size(2) int[]); - method public boolean dispatchNestedScroll(int, int, int, int, @Nullable @Size(2) int[]); - method public void dispatchPointerCaptureChanged(boolean); - method public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); - method public void dispatchProvideAutofillStructure(@NonNull android.view.ViewStructure, int); - method public void dispatchProvideStructure(android.view.ViewStructure); - method protected void dispatchRestoreInstanceState(android.util.SparseArray); - method protected void dispatchSaveInstanceState(android.util.SparseArray); - method public void dispatchScrollCaptureSearch(@NonNull android.graphics.Rect, @NonNull android.graphics.Point, @NonNull java.util.function.Consumer); - method protected void dispatchSetActivated(boolean); - method protected void dispatchSetPressed(boolean); - method protected void dispatchSetSelected(boolean); - method @CallSuper public void dispatchStartTemporaryDetach(); - method @Deprecated public void dispatchSystemUiVisibilityChanged(int); - method public boolean dispatchTouchEvent(android.view.MotionEvent); - method public boolean dispatchTrackballEvent(android.view.MotionEvent); - method public boolean dispatchUnhandledMove(android.view.View, int); - method protected void dispatchVisibilityChanged(@NonNull android.view.View, int); - method public void dispatchWindowFocusChanged(boolean); - method public void dispatchWindowInsetsAnimationEnd(@NonNull android.view.WindowInsetsAnimation); - method public void dispatchWindowInsetsAnimationPrepare(@NonNull android.view.WindowInsetsAnimation); - method @NonNull public android.view.WindowInsets dispatchWindowInsetsAnimationProgress(@NonNull android.view.WindowInsets, @NonNull java.util.List); - method @NonNull public android.view.WindowInsetsAnimation.Bounds dispatchWindowInsetsAnimationStart(@NonNull android.view.WindowInsetsAnimation, @NonNull android.view.WindowInsetsAnimation.Bounds); - method @Deprecated public void dispatchWindowSystemUiVisiblityChanged(int); - method public void dispatchWindowVisibilityChanged(int); - method @CallSuper public void draw(@NonNull android.graphics.Canvas); - method @CallSuper public void drawableHotspotChanged(float, float); - method @CallSuper protected void drawableStateChanged(); - method public android.view.View findFocus(); - method @Nullable public final android.window.OnBackInvokedDispatcher findOnBackInvokedDispatcher(); - method public final T findViewById(@IdRes int); - method public final T findViewWithTag(Object); - method public void findViewsWithText(java.util.ArrayList, CharSequence, int); - method @Deprecated protected boolean fitSystemWindows(android.graphics.Rect); - method public android.view.View focusSearch(int); - method public void forceHasOverlappingRendering(boolean); - method public void forceLayout(); - method public boolean gatherTransparentRegion(@Nullable android.graphics.Region); - method public void generateDisplayHash(@NonNull String, @Nullable android.graphics.Rect, @NonNull java.util.concurrent.Executor, @NonNull android.view.displayhash.DisplayHashResultCallback); - method public static int generateViewId(); - method public CharSequence getAccessibilityClassName(); - method public android.view.View.AccessibilityDelegate getAccessibilityDelegate(); - method public int getAccessibilityLiveRegion(); - method public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider(); - method @Nullable public CharSequence getAccessibilityPaneTitle(); - method @IdRes public int getAccessibilityTraversalAfter(); - method @IdRes public int getAccessibilityTraversalBefore(); - method @Nullable public String getAllowedHandwritingDelegatePackageName(); - method @Nullable public String getAllowedHandwritingDelegatorPackageName(); - method public float getAlpha(); - method public android.view.animation.Animation getAnimation(); - method @Nullable public android.graphics.Matrix getAnimationMatrix(); - method public android.os.IBinder getApplicationWindowToken(); - method @NonNull public int[] getAttributeResolutionStack(@AttrRes int); - method @NonNull public java.util.Map getAttributeSourceResourceMap(); - method @Nullable public String[] getAutofillHints(); - method public final android.view.autofill.AutofillId getAutofillId(); - method public int getAutofillType(); - method @Nullable public android.view.autofill.AutofillValue getAutofillValue(); - method public android.graphics.drawable.Drawable getBackground(); - method @Nullable public android.graphics.BlendMode getBackgroundTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getBackgroundTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getBackgroundTintMode(); - method public int getBaseline(); - method public final int getBottom(); - method protected float getBottomFadingEdgeStrength(); - method protected int getBottomPaddingOffset(); - method public float getCameraDistance(); - method public android.graphics.Rect getClipBounds(); - method public boolean getClipBounds(android.graphics.Rect); - method public final boolean getClipToOutline(); - method @Nullable public final android.view.contentcapture.ContentCaptureSession getContentCaptureSession(); - method public CharSequence getContentDescription(); - method @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public final int getContentSensitivity(); - method @UiContext public final android.content.Context getContext(); - method protected android.view.ContextMenu.ContextMenuInfo getContextMenuInfo(); - method public final boolean getDefaultFocusHighlightEnabled(); - method public static int getDefaultSize(int, int); - method public android.view.Display getDisplay(); - method public final int[] getDrawableState(); - method @Deprecated public android.graphics.Bitmap getDrawingCache(); - method @Deprecated public android.graphics.Bitmap getDrawingCache(boolean); - method @Deprecated @ColorInt public int getDrawingCacheBackgroundColor(); - method @Deprecated public int getDrawingCacheQuality(); - method public void getDrawingRect(android.graphics.Rect); - method public long getDrawingTime(); - method public float getElevation(); - method @StyleRes public int getExplicitStyle(); - method public boolean getFilterTouchesWhenObscured(); - method public boolean getFitsSystemWindows(); - method public int getFocusable(); - method public java.util.ArrayList getFocusables(int); - method public void getFocusedRect(android.graphics.Rect); - method public android.graphics.drawable.Drawable getForeground(); - method public int getForegroundGravity(); - method @Nullable public android.graphics.BlendMode getForegroundTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getForegroundTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getForegroundTintMode(); - method @FlaggedApi("android.view.flags.view_velocity_api") public float getFrameContentVelocity(); - method public boolean getGlobalVisibleRect(android.graphics.Rect, android.graphics.Point); - method public final boolean getGlobalVisibleRect(android.graphics.Rect); - method public android.os.Handler getHandler(); - method public float getHandwritingBoundsOffsetBottom(); - method public float getHandwritingBoundsOffsetLeft(); - method public float getHandwritingBoundsOffsetRight(); - method public float getHandwritingBoundsOffsetTop(); - method @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public int getHandwritingDelegateFlags(); - method @Nullable public Runnable getHandwritingDelegatorCallback(); - method public final boolean getHasOverlappingRendering(); - method public final int getHeight(); - method public void getHitRect(android.graphics.Rect); - method public int getHorizontalFadingEdgeLength(); - method protected int getHorizontalScrollbarHeight(); - method @Nullable public android.graphics.drawable.Drawable getHorizontalScrollbarThumbDrawable(); - method @Nullable public android.graphics.drawable.Drawable getHorizontalScrollbarTrackDrawable(); - method @IdRes public int getId(); - method public int getImportantForAccessibility(); - method public int getImportantForAutofill(); - method public int getImportantForContentCapture(); - method public boolean getKeepScreenOn(); - method public android.view.KeyEvent.DispatcherState getKeyDispatcherState(); - method @IdRes public int getLabelFor(); - method public int getLayerType(); - method public int getLayoutDirection(); - method public android.view.ViewGroup.LayoutParams getLayoutParams(); - method public final int getLeft(); - method protected float getLeftFadingEdgeStrength(); - method protected int getLeftPaddingOffset(); - method public final boolean getLocalVisibleRect(android.graphics.Rect); - method public void getLocationInSurface(@NonNull @Size(2) int[]); - method public void getLocationInWindow(@Size(2) int[]); - method public void getLocationOnScreen(@Size(2) int[]); - method public android.graphics.Matrix getMatrix(); - method public final int getMeasuredHeight(); - method public final int getMeasuredHeightAndState(); - method public final int getMeasuredState(); - method public final int getMeasuredWidth(); - method public final int getMeasuredWidthAndState(); - method public int getMinimumHeight(); - method public int getMinimumWidth(); - method @IdRes public int getNextClusterForwardId(); - method @IdRes public int getNextFocusDownId(); - method @IdRes public int getNextFocusForwardId(); - method @IdRes public int getNextFocusLeftId(); - method @IdRes public int getNextFocusRightId(); - method @IdRes public int getNextFocusUpId(); - method public android.view.View.OnFocusChangeListener getOnFocusChangeListener(); - method @ColorInt public int getOutlineAmbientShadowColor(); - method public android.view.ViewOutlineProvider getOutlineProvider(); - method @ColorInt public int getOutlineSpotShadowColor(); - method public int getOverScrollMode(); - method public android.view.ViewOverlay getOverlay(); - method public int getPaddingBottom(); - method public int getPaddingEnd(); - method public int getPaddingLeft(); - method public int getPaddingRight(); - method public int getPaddingStart(); - method public int getPaddingTop(); - method public final android.view.ViewParent getParent(); - method public android.view.ViewParent getParentForAccessibility(); - method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") @Nullable public final android.os.OutcomeReceiver getPendingCredentialCallback(); - method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") @Nullable public final android.credentials.GetCredentialRequest getPendingCredentialRequest(); - method public float getPivotX(); - method public float getPivotY(); - method public android.view.PointerIcon getPointerIcon(); - method @NonNull public final java.util.List getPreferKeepClearRects(); - method @Nullable public String[] getReceiveContentMimeTypes(); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public float getRequestedFrameRate(); - method public android.content.res.Resources getResources(); - method public final boolean getRevealOnFocusHint(); - method public final int getRight(); - method protected float getRightFadingEdgeStrength(); - method protected int getRightPaddingOffset(); - method @Nullable public android.view.AttachedSurfaceControl getRootSurfaceControl(); - method public android.view.View getRootView(); - method public android.view.WindowInsets getRootWindowInsets(); - method public float getRotation(); - method public float getRotationX(); - method public float getRotationY(); - method public float getScaleX(); - method public float getScaleY(); - method public int getScrollBarDefaultDelayBeforeFade(); - method public int getScrollBarFadeDuration(); - method public int getScrollBarSize(); - method public int getScrollBarStyle(); - method public int getScrollCaptureHint(); - method public int getScrollIndicators(); - method public final int getScrollX(); - method public final int getScrollY(); - method @ColorInt public int getSolidColor(); - method @LayoutRes public int getSourceLayoutResId(); - method @Nullable public final CharSequence getStateDescription(); - method public android.animation.StateListAnimator getStateListAnimator(); - method protected int getSuggestedMinimumHeight(); - method protected int getSuggestedMinimumWidth(); - method @FlaggedApi("android.view.accessibility.supplemental_description") @Nullable public CharSequence getSupplementalDescription(); - method @NonNull public java.util.List getSystemGestureExclusionRects(); - method @Deprecated public int getSystemUiVisibility(); - method public Object getTag(); - method public Object getTag(int); - method public int getTextAlignment(); - method public int getTextDirection(); - method @Nullable public CharSequence getTooltipText(); - method public final int getTop(); - method protected float getTopFadingEdgeStrength(); - method protected int getTopPaddingOffset(); - method public android.view.TouchDelegate getTouchDelegate(); - method public java.util.ArrayList getTouchables(); - method public float getTransitionAlpha(); - method public String getTransitionName(); - method public float getTranslationX(); - method public float getTranslationY(); - method public float getTranslationZ(); - method public long getUniqueDrawingId(); - method public int getVerticalFadingEdgeLength(); - method public int getVerticalScrollbarPosition(); - method @Nullable public android.graphics.drawable.Drawable getVerticalScrollbarThumbDrawable(); - method @Nullable public android.graphics.drawable.Drawable getVerticalScrollbarTrackDrawable(); - method public int getVerticalScrollbarWidth(); - method @Nullable public android.view.translation.ViewTranslationResponse getViewTranslationResponse(); - method public android.view.ViewTreeObserver getViewTreeObserver(); - method public int getVisibility(); - method public final int getWidth(); - method protected int getWindowAttachCount(); - method public android.view.WindowId getWindowId(); - method @Nullable public android.view.WindowInsetsController getWindowInsetsController(); - method @Deprecated public int getWindowSystemUiVisibility(); - method public android.os.IBinder getWindowToken(); - method public int getWindowVisibility(); - method public void getWindowVisibleDisplayFrame(android.graphics.Rect); - method public float getX(); - method public float getY(); - method public float getZ(); - method public boolean hasExplicitFocusable(); - method public boolean hasFocus(); - method public boolean hasFocusable(); - method public boolean hasNestedScrollingParent(); - method public boolean hasOnClickListeners(); - method public boolean hasOnLongClickListeners(); - method public boolean hasOverlappingRendering(); - method public boolean hasPointerCapture(); - method public boolean hasTransientState(); - method public boolean hasWindowFocus(); - method public static android.view.View inflate(android.content.Context, @LayoutRes int, android.view.ViewGroup); - method @Deprecated public void invalidate(android.graphics.Rect); - method @Deprecated public void invalidate(int, int, int, int); - method public void invalidate(); - method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); - method public void invalidateOutline(); - method public boolean isAccessibilityDataSensitive(); - method public boolean isAccessibilityFocused(); - method public boolean isAccessibilityHeading(); - method public boolean isActivated(); - method public boolean isAttachedToWindow(); - method public boolean isAutoHandwritingEnabled(); - method public boolean isClickable(); - method @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public final boolean isContentSensitive(); - method public boolean isContextClickable(); - method public boolean isCredential(); - method public boolean isDirty(); - method @Deprecated public boolean isDrawingCacheEnabled(); - method public boolean isDuplicateParentStateEnabled(); - method public boolean isEnabled(); - method public final boolean isFocusable(); - method public final boolean isFocusableInTouchMode(); - method public boolean isFocused(); - method public final boolean isFocusedByDefault(); - method public boolean isForceDarkAllowed(); - method public boolean isHandwritingDelegate(); - method public boolean isHapticFeedbackEnabled(); - method public boolean isHardwareAccelerated(); - method public boolean isHorizontalFadingEdgeEnabled(); - method public boolean isHorizontalScrollBarEnabled(); - method public boolean isHovered(); - method public boolean isImportantForAccessibility(); - method public final boolean isImportantForAutofill(); - method public final boolean isImportantForContentCapture(); - method public boolean isInEditMode(); - method public boolean isInLayout(); - method public boolean isInTouchMode(); - method public final boolean isKeyboardNavigationCluster(); - method public boolean isLaidOut(); - method public boolean isLayoutDirectionResolved(); - method public boolean isLayoutRequested(); - method public boolean isLongClickable(); - method public boolean isNestedScrollingEnabled(); - method public boolean isOpaque(); - method protected boolean isPaddingOffsetRequired(); - method public boolean isPaddingRelative(); - method public boolean isPivotSet(); - method public final boolean isPreferKeepClear(); - method public boolean isPressed(); - method public boolean isSaveEnabled(); - method public boolean isSaveFromParentEnabled(); - method public boolean isScreenReaderFocusable(); - method public boolean isScrollContainer(); - method public boolean isScrollbarFadingEnabled(); - method public boolean isSelected(); - method public final boolean isShowingLayoutBounds(); - method public boolean isShown(); - method public boolean isSoundEffectsEnabled(); - method public final boolean isTemporarilyDetached(); - method public boolean isTextAlignmentResolved(); - method public boolean isTextDirectionResolved(); - method public boolean isVerticalFadingEdgeEnabled(); - method public boolean isVerticalScrollBarEnabled(); - method public boolean isVisibleToUserForAutofill(int); - method @CallSuper public void jumpDrawablesToCurrentState(); - method public android.view.View keyboardNavigationClusterSearch(android.view.View, int); - method public void layout(int, int, int, int); - method public final void measure(int, int); - method protected static int[] mergeDrawableStates(int[], int[]); - method public void offsetLeftAndRight(int); - method public void offsetTopAndBottom(int); - method @CallSuper protected void onAnimationEnd(); - method @CallSuper protected void onAnimationStart(); - method public android.view.WindowInsets onApplyWindowInsets(android.view.WindowInsets); - method @CallSuper protected void onAttachedToWindow(); - method public void onCancelPendingInputEvents(); - method public boolean onCapturedPointerEvent(android.view.MotionEvent); - method public boolean onCheckIsTextEditor(); - method protected void onConfigurationChanged(android.content.res.Configuration); - method protected void onCreateContextMenu(android.view.ContextMenu); - method protected int[] onCreateDrawableState(int); - method public android.view.inputmethod.InputConnection onCreateInputConnection(android.view.inputmethod.EditorInfo); - method public void onCreateViewTranslationRequest(@NonNull int[], @NonNull java.util.function.Consumer); - method public void onCreateVirtualViewTranslationRequests(@NonNull long[], @NonNull int[], @NonNull java.util.function.Consumer); - method @CallSuper protected void onDetachedFromWindow(); - method protected void onDisplayHint(int); - method public boolean onDragEvent(android.view.DragEvent); - method protected void onDraw(@NonNull android.graphics.Canvas); - method public void onDrawForeground(@NonNull android.graphics.Canvas); - method protected final void onDrawScrollBars(@NonNull android.graphics.Canvas); - method public boolean onFilterTouchEventForSecurity(android.view.MotionEvent); - method @CallSuper protected void onFinishInflate(); - method public void onFinishTemporaryDetach(); - method @CallSuper protected void onFocusChanged(boolean, int, @Nullable android.graphics.Rect); - method public boolean onGenericMotionEvent(android.view.MotionEvent); - method public void onHoverChanged(boolean); - method public boolean onHoverEvent(android.view.MotionEvent); - method @CallSuper public void onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent); - method @CallSuper public void onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo); - method public boolean onKeyDown(int, android.view.KeyEvent); - method public boolean onKeyLongPress(int, android.view.KeyEvent); - method public boolean onKeyMultiple(int, int, android.view.KeyEvent); - method public boolean onKeyPreIme(int, android.view.KeyEvent); - method public boolean onKeyShortcut(int, android.view.KeyEvent); - method public boolean onKeyUp(int, android.view.KeyEvent); - method protected void onLayout(boolean, int, int, int, int); - method protected void onMeasure(int, int); - method protected void onOverScrolled(int, int, boolean, boolean); - method @CallSuper public void onPointerCaptureChange(boolean); - method @CallSuper public void onPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); - method public void onProvideAutofillStructure(android.view.ViewStructure, int); - method public void onProvideAutofillVirtualStructure(android.view.ViewStructure, int); - method public void onProvideContentCaptureStructure(@NonNull android.view.ViewStructure, int); - method public void onProvideStructure(android.view.ViewStructure); - method public void onProvideVirtualStructure(android.view.ViewStructure); - method @Nullable public android.view.ContentInfo onReceiveContent(@NonNull android.view.ContentInfo); - method public android.view.PointerIcon onResolvePointerIcon(android.view.MotionEvent, int); - method @CallSuper protected void onRestoreInstanceState(android.os.Parcelable); - method public void onRtlPropertiesChanged(int); - method @CallSuper @Nullable protected android.os.Parcelable onSaveInstanceState(); - method public void onScreenStateChanged(int); - method public void onScrollCaptureSearch(@NonNull android.graphics.Rect, @NonNull android.graphics.Point, @NonNull java.util.function.Consumer); - method protected void onScrollChanged(int, int, int, int); - method protected boolean onSetAlpha(int); - method protected void onSizeChanged(int, int, int, int); - method public void onStartTemporaryDetach(); - method public boolean onTouchEvent(android.view.MotionEvent); - method public boolean onTrackballEvent(android.view.MotionEvent); - method public void onViewTranslationResponse(@NonNull android.view.translation.ViewTranslationResponse); - method public void onVirtualViewTranslationResponses(@NonNull android.util.LongSparseArray); - method @CallSuper public void onVisibilityAggregated(boolean); - method protected void onVisibilityChanged(@NonNull android.view.View, int); - method public void onWindowFocusChanged(boolean); - method @Deprecated public void onWindowSystemUiVisibilityChanged(int); - method protected void onWindowVisibilityChanged(int); - method protected boolean overScrollBy(int, int, int, int, int, int, int, int, boolean); - method public boolean performAccessibilityAction(int, @Nullable android.os.Bundle); - method public boolean performClick(); - method public boolean performContextClick(float, float); - method public boolean performContextClick(); - method public boolean performHapticFeedback(int); - method public boolean performHapticFeedback(int, int); - method public boolean performLongClick(); - method public boolean performLongClick(float, float); - method @Nullable public android.view.ContentInfo performReceiveContent(@NonNull android.view.ContentInfo); - method public void playSoundEffect(int); - method public boolean post(Runnable); - method public boolean postDelayed(Runnable, long); - method public void postInvalidate(); - method public void postInvalidate(int, int, int, int); - method public void postInvalidateDelayed(long); - method public void postInvalidateDelayed(long, int, int, int, int); - method public void postInvalidateOnAnimation(); - method public void postInvalidateOnAnimation(int, int, int, int); - method public void postOnAnimation(Runnable); - method public void postOnAnimationDelayed(Runnable, long); - method public void refreshDrawableState(); - method public void releasePointerCapture(); - method public boolean removeCallbacks(Runnable); - method public void removeOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener); - method public void removeOnLayoutChangeListener(android.view.View.OnLayoutChangeListener); - method public void removeOnUnhandledKeyEventListener(android.view.View.OnUnhandledKeyEventListener); - method @FlaggedApi("android.app.jank.detailed_app_jank_metrics_api") public void reportAppJankStats(@NonNull android.app.jank.AppJankStats); - method public void requestApplyInsets(); - method @Deprecated public void requestFitSystemWindows(); - method public final boolean requestFocus(); - method public final boolean requestFocus(int); - method public boolean requestFocus(int, android.graphics.Rect); - method public final boolean requestFocusFromTouch(); - method @CallSuper public void requestLayout(); - method public void requestPointerCapture(); - method public boolean requestRectangleOnScreen(android.graphics.Rect); - method public boolean requestRectangleOnScreen(android.graphics.Rect, boolean); - method public final void requestUnbufferedDispatch(android.view.MotionEvent); - method public final void requestUnbufferedDispatch(int); - method @NonNull public final T requireViewById(@IdRes int); - method public void resetPivot(); - method public static int resolveSize(int, int); - method public static int resolveSizeAndState(int, int, int); - method public boolean restoreDefaultFocus(); - method public void restoreHierarchyState(android.util.SparseArray); - method public final void saveAttributeDataForStyleable(@NonNull android.content.Context, @NonNull int[], @Nullable android.util.AttributeSet, @NonNull android.content.res.TypedArray, int, int); - method public void saveHierarchyState(android.util.SparseArray); - method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); - method public void scrollBy(int, int); - method public void scrollTo(int, int); - method public void sendAccessibilityEvent(int); - method public void sendAccessibilityEventUnchecked(android.view.accessibility.AccessibilityEvent); - method public void setAccessibilityDataSensitive(int); - method public void setAccessibilityDelegate(@Nullable android.view.View.AccessibilityDelegate); - method public void setAccessibilityHeading(boolean); - method public void setAccessibilityLiveRegion(int); - method public void setAccessibilityPaneTitle(@Nullable CharSequence); - method public void setAccessibilityTraversalAfter(@IdRes int); - method public void setAccessibilityTraversalBefore(@IdRes int); - method public void setActivated(boolean); - method public void setAllowClickWhenDisabled(boolean); - method public void setAllowedHandwritingDelegatePackage(@Nullable String); - method public void setAllowedHandwritingDelegatorPackage(@Nullable String); - method public void setAlpha(@FloatRange(from=0.0, to=1.0) float); - method public void setAnimation(android.view.animation.Animation); - method public void setAnimationMatrix(@Nullable android.graphics.Matrix); - method public void setAutoHandwritingEnabled(boolean); - method public void setAutofillHints(@Nullable java.lang.String...); - method public void setAutofillId(@Nullable android.view.autofill.AutofillId); - method public void setBackground(android.graphics.drawable.Drawable); - method public void setBackgroundColor(@ColorInt int); - method @Deprecated public void setBackgroundDrawable(android.graphics.drawable.Drawable); - method public void setBackgroundResource(@DrawableRes int); - method public void setBackgroundTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setBackgroundTintList(@Nullable android.content.res.ColorStateList); - method public void setBackgroundTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public final void setBottom(int); - method public void setCameraDistance(float); - method public void setClickable(boolean); - method public void setClipBounds(android.graphics.Rect); - method public void setClipToOutline(boolean); - method public void setContentCaptureSession(@Nullable android.view.contentcapture.ContentCaptureSession); - method public void setContentDescription(CharSequence); - method @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public final void setContentSensitivity(int); - method public void setContextClickable(boolean); - method public void setDefaultFocusHighlightEnabled(boolean); - method @Deprecated public void setDrawingCacheBackgroundColor(@ColorInt int); - method @Deprecated public void setDrawingCacheEnabled(boolean); - method @Deprecated public void setDrawingCacheQuality(int); - method public void setDuplicateParentStateEnabled(boolean); - method public void setElevation(float); - method public void setEnabled(boolean); - method public void setFadingEdgeLength(int); - method public void setFilterTouchesWhenObscured(boolean); - method public void setFitsSystemWindows(boolean); - method public void setFocusable(boolean); - method public void setFocusable(int); - method public void setFocusableInTouchMode(boolean); - method public void setFocusedByDefault(boolean); - method public void setForceDarkAllowed(boolean); - method public void setForeground(android.graphics.drawable.Drawable); - method public void setForegroundGravity(int); - method public void setForegroundTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setForegroundTintList(@Nullable android.content.res.ColorStateList); - method public void setForegroundTintMode(@Nullable android.graphics.PorterDuff.Mode); - method @FlaggedApi("android.view.flags.view_velocity_api") public void setFrameContentVelocity(float); - method public void setHandwritingBoundsOffsets(float, float, float, float); - method @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public void setHandwritingDelegateFlags(int); - method public void setHandwritingDelegatorCallback(@Nullable Runnable); - method public void setHapticFeedbackEnabled(boolean); - method public void setHasTransientState(boolean); - method public void setHorizontalFadingEdgeEnabled(boolean); - method public void setHorizontalScrollBarEnabled(boolean); - method public void setHorizontalScrollbarThumbDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setHorizontalScrollbarTrackDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setHovered(boolean); - method public void setId(@IdRes int); - method public void setImportantForAccessibility(int); - method public void setImportantForAutofill(int); - method public void setImportantForContentCapture(int); - method public void setIsCredential(boolean); - method public void setIsHandwritingDelegate(boolean); - method public void setKeepScreenOn(boolean); - method public void setKeyboardNavigationCluster(boolean); - method public void setLabelFor(@IdRes int); - method public void setLayerPaint(@Nullable android.graphics.Paint); - method public void setLayerType(int, @Nullable android.graphics.Paint); - method public void setLayoutDirection(int); - method public void setLayoutParams(android.view.ViewGroup.LayoutParams); - method public final void setLeft(int); - method public final void setLeftTopRightBottom(int, int, int, int); - method public void setLongClickable(boolean); - method protected final void setMeasuredDimension(int, int); - method public void setMinimumHeight(int); - method public void setMinimumWidth(int); - method public void setNestedScrollingEnabled(boolean); - method public void setNextClusterForwardId(@IdRes int); - method public void setNextFocusDownId(@IdRes int); - method public void setNextFocusForwardId(@IdRes int); - method public void setNextFocusLeftId(@IdRes int); - method public void setNextFocusRightId(@IdRes int); - method public void setNextFocusUpId(@IdRes int); - method public void setOnApplyWindowInsetsListener(android.view.View.OnApplyWindowInsetsListener); - method public void setOnCapturedPointerListener(android.view.View.OnCapturedPointerListener); - method public void setOnClickListener(@Nullable android.view.View.OnClickListener); - method public void setOnContextClickListener(@Nullable android.view.View.OnContextClickListener); - method public void setOnCreateContextMenuListener(android.view.View.OnCreateContextMenuListener); - method public void setOnDragListener(android.view.View.OnDragListener); - method public void setOnFocusChangeListener(android.view.View.OnFocusChangeListener); - method public void setOnGenericMotionListener(android.view.View.OnGenericMotionListener); - method public void setOnHoverListener(android.view.View.OnHoverListener); - method public void setOnKeyListener(android.view.View.OnKeyListener); - method public void setOnLongClickListener(@Nullable android.view.View.OnLongClickListener); - method public void setOnReceiveContentListener(@Nullable String[], @Nullable android.view.OnReceiveContentListener); - method public void setOnScrollChangeListener(android.view.View.OnScrollChangeListener); - method @Deprecated public void setOnSystemUiVisibilityChangeListener(android.view.View.OnSystemUiVisibilityChangeListener); - method public void setOnTouchListener(android.view.View.OnTouchListener); - method public void setOutlineAmbientShadowColor(@ColorInt int); - method public void setOutlineProvider(android.view.ViewOutlineProvider); - method public void setOutlineSpotShadowColor(@ColorInt int); - method public void setOverScrollMode(int); - method public void setPadding(int, int, int, int); - method public void setPaddingRelative(int, int, int, int); - method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") public void setPendingCredentialRequest(@NonNull android.credentials.GetCredentialRequest, @NonNull android.os.OutcomeReceiver); - method public void setPivotX(float); - method public void setPivotY(float); - method public void setPointerIcon(android.view.PointerIcon); - method public final void setPreferKeepClear(boolean); - method public final void setPreferKeepClearRects(@NonNull java.util.List); - method public void setPressed(boolean); - method public void setRenderEffect(@Nullable android.graphics.RenderEffect); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setRequestedFrameRate(float); - method public final void setRevealOnFocusHint(boolean); - method public final void setRight(int); - method public void setRotation(float); - method public void setRotationX(float); - method public void setRotationY(float); - method public void setSaveEnabled(boolean); - method public void setSaveFromParentEnabled(boolean); - method public void setScaleX(float); - method public void setScaleY(float); - method public void setScreenReaderFocusable(boolean); - method public void setScrollBarDefaultDelayBeforeFade(int); - method public void setScrollBarFadeDuration(int); - method public void setScrollBarSize(int); - method public void setScrollBarStyle(int); - method public final void setScrollCaptureCallback(@Nullable android.view.ScrollCaptureCallback); - method public void setScrollCaptureHint(int); - method public void setScrollContainer(boolean); - method public void setScrollIndicators(int); - method public void setScrollIndicators(int, int); - method public void setScrollX(int); - method public void setScrollY(int); - method public void setScrollbarFadingEnabled(boolean); - method public void setSelected(boolean); - method public void setSoundEffectsEnabled(boolean); - method public void setStateDescription(@Nullable CharSequence); - method public void setStateListAnimator(android.animation.StateListAnimator); - method @FlaggedApi("android.view.accessibility.supplemental_description") public void setSupplementalDescription(@Nullable CharSequence); - method public void setSystemGestureExclusionRects(@NonNull java.util.List); - method @Deprecated public void setSystemUiVisibility(int); - method public void setTag(Object); - method public void setTag(int, Object); - method public void setTextAlignment(int); - method public void setTextDirection(int); - method public void setTooltipText(@Nullable CharSequence); - method public final void setTop(int); - method public void setTouchDelegate(android.view.TouchDelegate); - method public void setTransitionAlpha(float); - method public final void setTransitionName(String); - method public void setTransitionVisibility(int); - method public void setTranslationX(float); - method public void setTranslationY(float); - method public void setTranslationZ(float); - method public void setVerticalFadingEdgeEnabled(boolean); - method public void setVerticalScrollBarEnabled(boolean); - method public void setVerticalScrollbarPosition(int); - method public void setVerticalScrollbarThumbDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setVerticalScrollbarTrackDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setViewTranslationCallback(@NonNull android.view.translation.ViewTranslationCallback); - method public void setVisibility(int); - method @Deprecated public void setWillNotCacheDrawing(boolean); - method public void setWillNotDraw(boolean); - method public void setWindowInsetsAnimationCallback(@Nullable android.view.WindowInsetsAnimation.Callback); - method public void setX(float); - method public void setY(float); - method public void setZ(float); - method public boolean showContextMenu(); - method public boolean showContextMenu(float, float); - method public android.view.ActionMode startActionMode(android.view.ActionMode.Callback); - method public android.view.ActionMode startActionMode(android.view.ActionMode.Callback, int); - method public void startAnimation(android.view.animation.Animation); - method @Deprecated public final boolean startDrag(android.content.ClipData, android.view.View.DragShadowBuilder, Object, int); - method public final boolean startDragAndDrop(android.content.ClipData, android.view.View.DragShadowBuilder, Object, int); - method public boolean startNestedScroll(int); - method public void stopNestedScroll(); - method public void transformMatrixToGlobal(@NonNull android.graphics.Matrix); - method public void transformMatrixToLocal(@NonNull android.graphics.Matrix); - method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); - method public void unscheduleDrawable(android.graphics.drawable.Drawable); - method public final void updateDragShadow(android.view.View.DragShadowBuilder); - method @CallSuper protected boolean verifyDrawable(@NonNull android.graphics.drawable.Drawable); - method @Deprecated public boolean willNotCacheDrawing(); - method public boolean willNotDraw(); - field public static final int ACCESSIBILITY_DATA_SENSITIVE_AUTO = 0; // 0x0 - field public static final int ACCESSIBILITY_DATA_SENSITIVE_NO = 2; // 0x2 - field public static final int ACCESSIBILITY_DATA_SENSITIVE_YES = 1; // 0x1 - field public static final int ACCESSIBILITY_LIVE_REGION_ASSERTIVE = 2; // 0x2 - field public static final int ACCESSIBILITY_LIVE_REGION_NONE = 0; // 0x0 - field public static final int ACCESSIBILITY_LIVE_REGION_POLITE = 1; // 0x1 - field public static final android.util.Property ALPHA; - field public static final int AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS = 1; // 0x1 - field public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE = "creditCardExpirationDate"; - field public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY = "creditCardExpirationDay"; - field public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH = "creditCardExpirationMonth"; - field public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR = "creditCardExpirationYear"; - field public static final String AUTOFILL_HINT_CREDIT_CARD_NUMBER = "creditCardNumber"; - field public static final String AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE = "creditCardSecurityCode"; - field public static final String AUTOFILL_HINT_EMAIL_ADDRESS = "emailAddress"; - field public static final String AUTOFILL_HINT_NAME = "name"; - field public static final String AUTOFILL_HINT_PASSWORD = "password"; - field public static final String AUTOFILL_HINT_PHONE = "phone"; - field public static final String AUTOFILL_HINT_POSTAL_ADDRESS = "postalAddress"; - field public static final String AUTOFILL_HINT_POSTAL_CODE = "postalCode"; - field public static final String AUTOFILL_HINT_USERNAME = "username"; - field public static final int AUTOFILL_TYPE_DATE = 4; // 0x4 - field public static final int AUTOFILL_TYPE_LIST = 3; // 0x3 - field public static final int AUTOFILL_TYPE_NONE = 0; // 0x0 - field public static final int AUTOFILL_TYPE_TEXT = 1; // 0x1 - field public static final int AUTOFILL_TYPE_TOGGLE = 2; // 0x2 - field @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public static final int CONTENT_SENSITIVITY_AUTO = 0; // 0x0 - field @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public static final int CONTENT_SENSITIVITY_NOT_SENSITIVE = 2; // 0x2 - field @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public static final int CONTENT_SENSITIVITY_SENSITIVE = 1; // 0x1 - field public static final int DRAG_FLAG_ACCESSIBILITY_ACTION = 1024; // 0x400 - field public static final int DRAG_FLAG_GLOBAL = 256; // 0x100 - field public static final int DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION = 64; // 0x40 - field public static final int DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION = 128; // 0x80 - field @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") public static final int DRAG_FLAG_GLOBAL_SAME_APPLICATION = 4096; // 0x1000 - field public static final int DRAG_FLAG_GLOBAL_URI_READ = 1; // 0x1 - field public static final int DRAG_FLAG_GLOBAL_URI_WRITE = 2; // 0x2 - field @FlaggedApi("com.android.window.flags.supports_drag_assistant_to_multiwindow") public static final int DRAG_FLAG_HIDE_CALLING_TASK_ON_DRAG_START = 16384; // 0x4000 - field public static final int DRAG_FLAG_OPAQUE = 512; // 0x200 - field @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") public static final int DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG = 8192; // 0x2000 - field @Deprecated public static final int DRAWING_CACHE_QUALITY_AUTO = 0; // 0x0 - field @Deprecated public static final int DRAWING_CACHE_QUALITY_HIGH = 1048576; // 0x100000 - field @Deprecated public static final int DRAWING_CACHE_QUALITY_LOW = 524288; // 0x80000 - field protected static final int[] EMPTY_STATE_SET; - field protected static final int[] ENABLED_FOCUSED_SELECTED_STATE_SET; - field protected static final int[] ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] ENABLED_FOCUSED_STATE_SET; - field protected static final int[] ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] ENABLED_SELECTED_STATE_SET; - field protected static final int[] ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] ENABLED_STATE_SET; - field protected static final int[] ENABLED_WINDOW_FOCUSED_STATE_SET; - field public static final int FIND_VIEWS_WITH_CONTENT_DESCRIPTION = 2; // 0x2 - field public static final int FIND_VIEWS_WITH_TEXT = 1; // 0x1 - field public static final int FOCUSABLE = 1; // 0x1 - field public static final int FOCUSABLES_ALL = 0; // 0x0 - field public static final int FOCUSABLES_TOUCH_MODE = 1; // 0x1 - field public static final int FOCUSABLE_AUTO = 16; // 0x10 - field protected static final int[] FOCUSED_SELECTED_STATE_SET; - field protected static final int[] FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] FOCUSED_STATE_SET; - field protected static final int[] FOCUSED_WINDOW_FOCUSED_STATE_SET; - field public static final int FOCUS_BACKWARD = 1; // 0x1 - field public static final int FOCUS_DOWN = 130; // 0x82 - field public static final int FOCUS_FORWARD = 2; // 0x2 - field public static final int FOCUS_LEFT = 17; // 0x11 - field public static final int FOCUS_RIGHT = 66; // 0x42 - field public static final int FOCUS_UP = 33; // 0x21 - field public static final int GONE = 8; // 0x8 - field public static final int HAPTIC_FEEDBACK_ENABLED = 268435456; // 0x10000000 - field public static final int IMPORTANT_FOR_ACCESSIBILITY_AUTO = 0; // 0x0 - field public static final int IMPORTANT_FOR_ACCESSIBILITY_NO = 2; // 0x2 - field public static final int IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS = 4; // 0x4 - field public static final int IMPORTANT_FOR_ACCESSIBILITY_YES = 1; // 0x1 - field public static final int IMPORTANT_FOR_AUTOFILL_AUTO = 0; // 0x0 - field public static final int IMPORTANT_FOR_AUTOFILL_NO = 2; // 0x2 - field public static final int IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS = 8; // 0x8 - field public static final int IMPORTANT_FOR_AUTOFILL_YES = 1; // 0x1 - field public static final int IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS = 4; // 0x4 - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_AUTO = 0; // 0x0 - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO = 2; // 0x2 - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS = 8; // 0x8 - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES = 1; // 0x1 - field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS = 4; // 0x4 - field public static final int INVISIBLE = 4; // 0x4 - field public static final int KEEP_SCREEN_ON = 67108864; // 0x4000000 - field public static final int LAYER_TYPE_HARDWARE = 2; // 0x2 - field public static final int LAYER_TYPE_NONE = 0; // 0x0 - field public static final int LAYER_TYPE_SOFTWARE = 1; // 0x1 - field public static final int LAYOUT_DIRECTION_INHERIT = 2; // 0x2 - field public static final int LAYOUT_DIRECTION_LOCALE = 3; // 0x3 - field public static final int LAYOUT_DIRECTION_LTR = 0; // 0x0 - field public static final int LAYOUT_DIRECTION_RTL = 1; // 0x1 - field public static final int MEASURED_HEIGHT_STATE_SHIFT = 16; // 0x10 - field public static final int MEASURED_SIZE_MASK = 16777215; // 0xffffff - field public static final int MEASURED_STATE_MASK = -16777216; // 0xff000000 - field public static final int MEASURED_STATE_TOO_SMALL = 16777216; // 0x1000000 - field public static final int NOT_FOCUSABLE = 0; // 0x0 - field public static final int NO_ID = -1; // 0xffffffff - field public static final int OVER_SCROLL_ALWAYS = 0; // 0x0 - field public static final int OVER_SCROLL_IF_CONTENT_SCROLLS = 1; // 0x1 - field public static final int OVER_SCROLL_NEVER = 2; // 0x2 - field protected static final int[] PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET; - field protected static final int[] PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] PRESSED_ENABLED_FOCUSED_STATE_SET; - field protected static final int[] PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] PRESSED_ENABLED_SELECTED_STATE_SET; - field protected static final int[] PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] PRESSED_ENABLED_STATE_SET; - field protected static final int[] PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] PRESSED_FOCUSED_SELECTED_STATE_SET; - field protected static final int[] PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] PRESSED_FOCUSED_STATE_SET; - field protected static final int[] PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] PRESSED_SELECTED_STATE_SET; - field protected static final int[] PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET; - field protected static final int[] PRESSED_STATE_SET; - field protected static final int[] PRESSED_WINDOW_FOCUSED_STATE_SET; - field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_DEFAULT = (0.0f/0.0f); - field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_HIGH = -4.0f; - field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_LOW = -2.0f; - field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_NORMAL = -3.0f; - field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_NO_PREFERENCE = -1.0f; - field public static final android.util.Property ROTATION; - field public static final android.util.Property ROTATION_X; - field public static final android.util.Property ROTATION_Y; - field public static final android.util.Property SCALE_X; - field public static final android.util.Property SCALE_Y; - field public static final int SCREEN_STATE_OFF = 0; // 0x0 - field public static final int SCREEN_STATE_ON = 1; // 0x1 - field public static final int SCROLLBARS_INSIDE_INSET = 16777216; // 0x1000000 - field public static final int SCROLLBARS_INSIDE_OVERLAY = 0; // 0x0 - field public static final int SCROLLBARS_OUTSIDE_INSET = 50331648; // 0x3000000 - field public static final int SCROLLBARS_OUTSIDE_OVERLAY = 33554432; // 0x2000000 - field public static final int SCROLLBAR_POSITION_DEFAULT = 0; // 0x0 - field public static final int SCROLLBAR_POSITION_LEFT = 1; // 0x1 - field public static final int SCROLLBAR_POSITION_RIGHT = 2; // 0x2 - field public static final int SCROLL_AXIS_HORIZONTAL = 1; // 0x1 - field public static final int SCROLL_AXIS_NONE = 0; // 0x0 - field public static final int SCROLL_AXIS_VERTICAL = 2; // 0x2 - field public static final int SCROLL_CAPTURE_HINT_AUTO = 0; // 0x0 - field public static final int SCROLL_CAPTURE_HINT_EXCLUDE = 1; // 0x1 - field public static final int SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS = 4; // 0x4 - field public static final int SCROLL_CAPTURE_HINT_INCLUDE = 2; // 0x2 - field public static final int SCROLL_INDICATOR_BOTTOM = 2; // 0x2 - field public static final int SCROLL_INDICATOR_END = 32; // 0x20 - field public static final int SCROLL_INDICATOR_LEFT = 4; // 0x4 - field public static final int SCROLL_INDICATOR_RIGHT = 8; // 0x8 - field public static final int SCROLL_INDICATOR_START = 16; // 0x10 - field public static final int SCROLL_INDICATOR_TOP = 1; // 0x1 - field protected static final int[] SELECTED_STATE_SET; - field protected static final int[] SELECTED_WINDOW_FOCUSED_STATE_SET; - field public static final int SOUND_EFFECTS_ENABLED = 134217728; // 0x8000000 - field @Deprecated public static final int STATUS_BAR_HIDDEN = 1; // 0x1 - field @Deprecated public static final int STATUS_BAR_VISIBLE = 0; // 0x0 - field @Deprecated public static final int SYSTEM_UI_FLAG_FULLSCREEN = 4; // 0x4 - field @Deprecated public static final int SYSTEM_UI_FLAG_HIDE_NAVIGATION = 2; // 0x2 - field @Deprecated public static final int SYSTEM_UI_FLAG_IMMERSIVE = 2048; // 0x800 - field @Deprecated public static final int SYSTEM_UI_FLAG_IMMERSIVE_STICKY = 4096; // 0x1000 - field @Deprecated public static final int SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN = 1024; // 0x400 - field @Deprecated public static final int SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION = 512; // 0x200 - field @Deprecated public static final int SYSTEM_UI_FLAG_LAYOUT_STABLE = 256; // 0x100 - field @Deprecated public static final int SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR = 16; // 0x10 - field @Deprecated public static final int SYSTEM_UI_FLAG_LIGHT_STATUS_BAR = 8192; // 0x2000 - field @Deprecated public static final int SYSTEM_UI_FLAG_LOW_PROFILE = 1; // 0x1 - field @Deprecated public static final int SYSTEM_UI_FLAG_VISIBLE = 0; // 0x0 - field @Deprecated public static final int SYSTEM_UI_LAYOUT_FLAGS = 1536; // 0x600 - field public static final int TEXT_ALIGNMENT_CENTER = 4; // 0x4 - field public static final int TEXT_ALIGNMENT_GRAVITY = 1; // 0x1 - field public static final int TEXT_ALIGNMENT_INHERIT = 0; // 0x0 - field public static final int TEXT_ALIGNMENT_TEXT_END = 3; // 0x3 - field public static final int TEXT_ALIGNMENT_TEXT_START = 2; // 0x2 - field public static final int TEXT_ALIGNMENT_VIEW_END = 6; // 0x6 - field public static final int TEXT_ALIGNMENT_VIEW_START = 5; // 0x5 - field public static final int TEXT_DIRECTION_ANY_RTL = 2; // 0x2 - field public static final int TEXT_DIRECTION_FIRST_STRONG = 1; // 0x1 - field public static final int TEXT_DIRECTION_FIRST_STRONG_LTR = 6; // 0x6 - field public static final int TEXT_DIRECTION_FIRST_STRONG_RTL = 7; // 0x7 - field public static final int TEXT_DIRECTION_INHERIT = 0; // 0x0 - field public static final int TEXT_DIRECTION_LOCALE = 5; // 0x5 - field public static final int TEXT_DIRECTION_LTR = 3; // 0x3 - field public static final int TEXT_DIRECTION_RTL = 4; // 0x4 - field public static final android.util.Property TRANSLATION_X; - field public static final android.util.Property TRANSLATION_Y; - field public static final android.util.Property TRANSLATION_Z; - field protected static final String VIEW_LOG_TAG = "View"; - field public static final int VISIBLE = 0; // 0x0 - field protected static final int[] WINDOW_FOCUSED_STATE_SET; - field public static final android.util.Property X; - field public static final android.util.Property Y; - field public static final android.util.Property Z; - } - - public static class View.AccessibilityDelegate { - ctor public View.AccessibilityDelegate(); - method public void addExtraDataToAccessibilityNodeInfo(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityNodeInfo, @NonNull String, @Nullable android.os.Bundle); - method public boolean dispatchPopulateAccessibilityEvent(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); - method @Nullable public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider(@NonNull android.view.View); - method public void onInitializeAccessibilityEvent(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); - method public void onInitializeAccessibilityNodeInfo(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityNodeInfo); - method public void onPopulateAccessibilityEvent(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); - method public boolean onRequestSendAccessibilityEvent(@NonNull android.view.ViewGroup, @NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); - method public boolean performAccessibilityAction(@NonNull android.view.View, int, @Nullable android.os.Bundle); - method public void sendAccessibilityEvent(@NonNull android.view.View, int); - method public void sendAccessibilityEventUnchecked(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); - } - - public static class View.BaseSavedState extends android.view.AbsSavedState { - ctor public View.BaseSavedState(android.os.Parcel); - ctor public View.BaseSavedState(android.os.Parcel, ClassLoader); - ctor public View.BaseSavedState(android.os.Parcelable); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class View.DragShadowBuilder { - ctor public View.DragShadowBuilder(android.view.View); - ctor public View.DragShadowBuilder(); - method public final android.view.View getView(); - method public void onDrawShadow(@NonNull android.graphics.Canvas); - method public void onProvideShadowMetrics(android.graphics.Point, android.graphics.Point); - } - - public static class View.MeasureSpec { - ctor public View.MeasureSpec(); - method public static int getMode(int); - method public static int getSize(int); - method public static int makeMeasureSpec(@IntRange(from=0, to=0x40000000 - 1) int, int); - method public static String toString(int); - field public static final int AT_MOST = -2147483648; // 0x80000000 - field public static final int EXACTLY = 1073741824; // 0x40000000 - field public static final int UNSPECIFIED = 0; // 0x0 - } - - public static interface View.OnApplyWindowInsetsListener { - method @NonNull public android.view.WindowInsets onApplyWindowInsets(@NonNull android.view.View, @NonNull android.view.WindowInsets); - } - - public static interface View.OnAttachStateChangeListener { - method public void onViewAttachedToWindow(@NonNull android.view.View); - method public void onViewDetachedFromWindow(@NonNull android.view.View); - } - - public static interface View.OnCapturedPointerListener { - method public boolean onCapturedPointer(android.view.View, android.view.MotionEvent); - } - - public static interface View.OnClickListener { - method public void onClick(android.view.View); - } - - public static interface View.OnContextClickListener { - method public boolean onContextClick(android.view.View); - } - - public static interface View.OnCreateContextMenuListener { - method public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo); - } - - public static interface View.OnDragListener { - method public boolean onDrag(android.view.View, android.view.DragEvent); - } - - public static interface View.OnFocusChangeListener { - method public void onFocusChange(android.view.View, boolean); - } - - public static interface View.OnGenericMotionListener { - method public boolean onGenericMotion(android.view.View, android.view.MotionEvent); - } - - public static interface View.OnHoverListener { - method public boolean onHover(android.view.View, android.view.MotionEvent); - } - - public static interface View.OnKeyListener { - method public boolean onKey(android.view.View, int, android.view.KeyEvent); - } - - public static interface View.OnLayoutChangeListener { - method public void onLayoutChange(android.view.View, int, int, int, int, int, int, int, int); - } - - public static interface View.OnLongClickListener { - method public boolean onLongClick(android.view.View); - method public default boolean onLongClickUseDefaultHapticFeedback(@NonNull android.view.View); - } - - public static interface View.OnScrollChangeListener { - method public void onScrollChange(android.view.View, int, int, int, int); - } - - @Deprecated public static interface View.OnSystemUiVisibilityChangeListener { - method @Deprecated public void onSystemUiVisibilityChange(int); - } - - public static interface View.OnTouchListener { - method public boolean onTouch(android.view.View, android.view.MotionEvent); - } - - public static interface View.OnUnhandledKeyEventListener { - method public boolean onUnhandledKeyEvent(android.view.View, android.view.KeyEvent); - } - - public final class ViewAnimationUtils { - method public static android.animation.Animator createCircularReveal(android.view.View, int, int, float, float); - } - - public class ViewConfiguration { - ctor @Deprecated public ViewConfiguration(); - method public static android.view.ViewConfiguration get(@NonNull @UiContext android.content.Context); - method @Deprecated @FloatRange(from=1.0) public static float getAmbiguousGestureMultiplier(); - method public static long getDefaultActionModeHideDuration(); - method public static int getDoubleTapTimeout(); - method @Deprecated public static int getEdgeSlop(); - method @Deprecated public static int getFadingEdgeLength(); - method @Deprecated public static long getGlobalActionKeyTimeout(); - method public static int getJumpTapTimeout(); - method public static int getKeyRepeatDelay(); - method public static int getKeyRepeatTimeout(); - method public static int getLongPressTimeout(); - method @Deprecated public static int getMaximumDrawingCacheSize(); - method @Deprecated public static int getMaximumFlingVelocity(); - method @Deprecated public static int getMinimumFlingVelocity(); - method public static int getMultiPressTimeout(); - method public static int getPressedStateDuration(); - method @FloatRange(from=1.0) public float getScaledAmbiguousGestureMultiplier(); - method public int getScaledDoubleTapSlop(); - method public int getScaledEdgeSlop(); - method public int getScaledFadingEdgeLength(); - method public int getScaledHandwritingGestureLineMargin(); - method public int getScaledHandwritingSlop(); - method public float getScaledHorizontalScrollFactor(); - method public int getScaledHoverSlop(); - method public int getScaledMaximumDrawingCacheSize(); - method public int getScaledMaximumFlingVelocity(); - method public int getScaledMaximumFlingVelocity(int, int, int); - method public int getScaledMinimumFlingVelocity(); - method public int getScaledMinimumFlingVelocity(int, int, int); - method public int getScaledMinimumScalingSpan(); - method public int getScaledOverflingDistance(); - method public int getScaledOverscrollDistance(); - method public int getScaledPagingTouchSlop(); - method public int getScaledScrollBarSize(); - method public int getScaledTouchSlop(); - method public float getScaledVerticalScrollFactor(); - method public int getScaledWindowTouchSlop(); - method public static int getScrollBarFadeDuration(); - method @Deprecated public static int getScrollBarSize(); - method public static int getScrollDefaultDelay(); - method public static float getScrollFriction(); - method public static int getTapTimeout(); - method @Deprecated public static int getTouchSlop(); - method @Deprecated public static int getWindowTouchSlop(); - method public static long getZoomControlsTimeout(); - method public boolean hasPermanentMenuKey(); - method public boolean shouldShowMenuShortcutsWhenKeyboardPresent(); - } - - public class ViewDebug { - ctor public ViewDebug(); - method public static void dumpCapturedView(String, Object); - method @Deprecated public static void startHierarchyTracing(String, android.view.View); - method @Deprecated public static void startRecyclerTracing(String, android.view.View); - method @Deprecated public static void stopHierarchyTracing(); - method @Deprecated public static void stopRecyclerTracing(); - method @Deprecated public static void trace(android.view.View, android.view.ViewDebug.RecyclerTraceType, int...); - method @Deprecated public static void trace(android.view.View, android.view.ViewDebug.HierarchyTraceType); - field @Deprecated public static final boolean TRACE_HIERARCHY = false; - field @Deprecated public static final boolean TRACE_RECYCLER = false; - } - - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public static @interface ViewDebug.CapturedViewProperty { - method public abstract boolean retrieveReturn() default false; - } - - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public static @interface ViewDebug.ExportedProperty { - method public abstract String category() default ""; - method public abstract boolean deepExport() default false; - method public abstract android.view.ViewDebug.FlagToString[] flagMapping() default {}; - method public abstract boolean formatToHexString() default false; - method public abstract boolean hasAdjacentMapping() default false; - method public abstract android.view.ViewDebug.IntToString[] indexMapping() default {}; - method public abstract android.view.ViewDebug.IntToString[] mapping() default {}; - method public abstract String prefix() default ""; - method public abstract boolean resolveId() default false; - } - - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface ViewDebug.FlagToString { - method public abstract int equals(); - method public abstract int mask(); - method public abstract String name(); - method public abstract boolean outputIf() default true; - } - - @Deprecated public enum ViewDebug.HierarchyTraceType { - enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType BUILD_CACHE; - enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType DRAW; - enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType INVALIDATE; - enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType INVALIDATE_CHILD; - enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType INVALIDATE_CHILD_IN_PARENT; - enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType ON_LAYOUT; - enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType ON_MEASURE; - enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType REQUEST_LAYOUT; - } - - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface ViewDebug.IntToString { - method public abstract int from(); - method public abstract String to(); - } - - @Deprecated public enum ViewDebug.RecyclerTraceType { - enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType BIND_VIEW; - enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType MOVE_FROM_ACTIVE_TO_SCRAP_HEAP; - enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType MOVE_TO_SCRAP_HEAP; - enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType NEW_VIEW; - enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType RECYCLE_FROM_ACTIVE_HEAP; - enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType RECYCLE_FROM_SCRAP_HEAP; - } - - @UiThread public abstract class ViewGroup extends android.view.View implements android.view.ViewManager android.view.ViewParent { - ctor public ViewGroup(android.content.Context); - ctor public ViewGroup(android.content.Context, android.util.AttributeSet); - ctor public ViewGroup(android.content.Context, android.util.AttributeSet, int); - ctor public ViewGroup(android.content.Context, android.util.AttributeSet, int, int); - method public boolean addStatesFromChildren(); - method public void addView(android.view.View); - method public void addView(android.view.View, int); - method public void addView(android.view.View, int, int); - method public void addView(android.view.View, android.view.ViewGroup.LayoutParams); - method public void addView(android.view.View, int, android.view.ViewGroup.LayoutParams); - method protected boolean addViewInLayout(android.view.View, int, android.view.ViewGroup.LayoutParams); - method protected boolean addViewInLayout(android.view.View, int, android.view.ViewGroup.LayoutParams, boolean); - method protected void attachLayoutAnimationParameters(android.view.View, android.view.ViewGroup.LayoutParams, int, int); - method protected void attachViewToParent(android.view.View, int, android.view.ViewGroup.LayoutParams); - method public void bringChildToFront(android.view.View); - method protected boolean canAnimate(); - method protected boolean checkLayoutParams(android.view.ViewGroup.LayoutParams); - method public void childDrawableStateChanged(android.view.View); - method public void childHasTransientStateChanged(android.view.View, boolean); - method protected void cleanupLayoutState(android.view.View); - method public void clearChildFocus(android.view.View); - method public void clearDisappearingChildren(); - method protected void debug(int); - method protected void detachAllViewsFromParent(); - method protected void detachViewFromParent(android.view.View); - method protected void detachViewFromParent(int); - method protected void detachViewsFromParent(int, int); - method protected void dispatchFreezeSelfOnly(android.util.SparseArray); - method public void dispatchSetActivated(boolean); - method public void dispatchSetSelected(boolean); - method protected void dispatchThawSelfOnly(android.util.SparseArray); - method protected boolean drawChild(@NonNull android.graphics.Canvas, android.view.View, long); - method public void endViewTransition(android.view.View); - method @Nullable public android.window.OnBackInvokedDispatcher findOnBackInvokedDispatcherForChild(@NonNull android.view.View, @NonNull android.view.View); - method public android.view.View focusSearch(android.view.View, int); - method public void focusableViewAvailable(android.view.View); - method protected android.view.ViewGroup.LayoutParams generateDefaultLayoutParams(); - method public android.view.ViewGroup.LayoutParams generateLayoutParams(android.util.AttributeSet); - method protected android.view.ViewGroup.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); - method public android.view.View getChildAt(int); - method public int getChildCount(); - method protected int getChildDrawingOrder(int, int); - method public final int getChildDrawingOrder(int); - method public static int getChildMeasureSpec(int, int, int); - method protected boolean getChildStaticTransformation(android.view.View, android.view.animation.Transformation); - method public boolean getChildVisibleRect(android.view.View, android.graphics.Rect, android.graphics.Point); - method public boolean getClipChildren(); - method public boolean getClipToPadding(); - method public int getDescendantFocusability(); - method public android.view.View getFocusedChild(); - method public android.view.animation.LayoutAnimationController getLayoutAnimation(); - method public android.view.animation.Animation.AnimationListener getLayoutAnimationListener(); - method public int getLayoutMode(); - method public android.animation.LayoutTransition getLayoutTransition(); - method public int getNestedScrollAxes(); - method public android.view.ViewGroupOverlay getOverlay(); - method @Deprecated public int getPersistentDrawingCache(); - method public boolean getTouchscreenBlocksFocus(); - method public int indexOfChild(android.view.View); - method @Deprecated public final void invalidateChild(android.view.View, android.graphics.Rect); - method @Deprecated public android.view.ViewParent invalidateChildInParent(int[], android.graphics.Rect); - method @Deprecated public boolean isAlwaysDrawnWithCacheEnabled(); - method @Deprecated public boolean isAnimationCacheEnabled(); - method protected boolean isChildrenDrawingOrderEnabled(); - method @Deprecated protected boolean isChildrenDrawnWithCacheEnabled(); - method public boolean isLayoutSuppressed(); - method public boolean isMotionEventSplittingEnabled(); - method public boolean isTransitionGroup(); - method public final void layout(int, int, int, int); - method protected void measureChild(android.view.View, int, int); - method protected void measureChildWithMargins(android.view.View, int, int, int, int); - method protected void measureChildren(int, int); - method public void notifySubtreeAccessibilityStateChanged(android.view.View, android.view.View, int); - method public final void offsetDescendantRectToMyCoords(android.view.View, android.graphics.Rect); - method public final void offsetRectIntoDescendantCoords(android.view.View, android.graphics.Rect); - method @CallSuper public void onDescendantInvalidated(@NonNull android.view.View, @NonNull android.view.View); - method public boolean onInterceptHoverEvent(android.view.MotionEvent); - method public boolean onInterceptTouchEvent(android.view.MotionEvent); - method protected abstract void onLayout(boolean, int, int, int, int); - method public boolean onNestedFling(android.view.View, float, float, boolean); - method public boolean onNestedPreFling(android.view.View, float, float); - method public boolean onNestedPrePerformAccessibilityAction(android.view.View, int, android.os.Bundle); - method public void onNestedPreScroll(android.view.View, int, int, int[]); - method public void onNestedScroll(android.view.View, int, int, int, int); - method public void onNestedScrollAccepted(android.view.View, android.view.View, int); - method protected boolean onRequestFocusInDescendants(int, android.graphics.Rect); - method public boolean onRequestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent); - method public boolean onStartNestedScroll(android.view.View, android.view.View, int); - method public void onStopNestedScroll(android.view.View); - method public void onViewAdded(android.view.View); - method public void onViewRemoved(android.view.View); - method @FlaggedApi("android.view.flags.toolkit_viewgroup_set_requested_frame_rate_api") public void propagateRequestedFrameRate(float, boolean); - method public void recomputeViewAttributes(android.view.View); - method public void removeAllViews(); - method public void removeAllViewsInLayout(); - method protected void removeDetachedView(android.view.View, boolean); - method public void removeView(android.view.View); - method public void removeViewAt(int); - method public void removeViewInLayout(android.view.View); - method public void removeViews(int, int); - method public void removeViewsInLayout(int, int); - method public void requestChildFocus(android.view.View, android.view.View); - method public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean); - method public void requestDisallowInterceptTouchEvent(boolean); - method public boolean requestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent); - method public void requestTransparentRegion(android.view.View); - method public void scheduleLayoutAnimation(); - method public void setAddStatesFromChildren(boolean); - method @Deprecated public void setAlwaysDrawnWithCacheEnabled(boolean); - method @Deprecated public void setAnimationCacheEnabled(boolean); - method @Deprecated protected void setChildrenDrawingCacheEnabled(boolean); - method protected void setChildrenDrawingOrderEnabled(boolean); - method @Deprecated protected void setChildrenDrawnWithCacheEnabled(boolean); - method public void setClipChildren(boolean); - method public void setClipToPadding(boolean); - method public void setDescendantFocusability(int); - method public void setLayoutAnimation(android.view.animation.LayoutAnimationController); - method public void setLayoutAnimationListener(android.view.animation.Animation.AnimationListener); - method public void setLayoutMode(int); - method public void setLayoutTransition(android.animation.LayoutTransition); - method public void setMotionEventSplittingEnabled(boolean); - method public void setOnHierarchyChangeListener(android.view.ViewGroup.OnHierarchyChangeListener); - method @Deprecated public void setPersistentDrawingCache(int); - method protected void setStaticTransformationsEnabled(boolean); - method public void setTouchscreenBlocksFocus(boolean); - method public void setTransitionGroup(boolean); - method public boolean shouldDelayChildPressedState(); - method public boolean showContextMenuForChild(android.view.View); - method public boolean showContextMenuForChild(android.view.View, float, float); - method public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode.Callback); - method public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode.Callback, int); - method public void startLayoutAnimation(); - method public void startViewTransition(android.view.View); - method public void suppressLayout(boolean); - method public void updateViewLayout(android.view.View, android.view.ViewGroup.LayoutParams); - field protected static final int CLIP_TO_PADDING_MASK = 34; // 0x22 - field public static final int FOCUS_AFTER_DESCENDANTS = 262144; // 0x40000 - field public static final int FOCUS_BEFORE_DESCENDANTS = 131072; // 0x20000 - field public static final int FOCUS_BLOCK_DESCENDANTS = 393216; // 0x60000 - field public static final int LAYOUT_MODE_CLIP_BOUNDS = 0; // 0x0 - field public static final int LAYOUT_MODE_OPTICAL_BOUNDS = 1; // 0x1 - field @Deprecated public static final int PERSISTENT_ALL_CACHES = 3; // 0x3 - field @Deprecated public static final int PERSISTENT_ANIMATION_CACHE = 1; // 0x1 - field @Deprecated public static final int PERSISTENT_NO_CACHE = 0; // 0x0 - field @Deprecated public static final int PERSISTENT_SCROLLING_CACHE = 2; // 0x2 - } - - public static class ViewGroup.LayoutParams { - ctor public ViewGroup.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor public ViewGroup.LayoutParams(int, int); - ctor public ViewGroup.LayoutParams(android.view.ViewGroup.LayoutParams); - method public void resolveLayoutDirection(int); - method protected void setBaseAttributes(android.content.res.TypedArray, int, int); - field @Deprecated public static final int FILL_PARENT = -1; // 0xffffffff - field public static final int MATCH_PARENT = -1; // 0xffffffff - field public static final int WRAP_CONTENT = -2; // 0xfffffffe - field public int height; - field public android.view.animation.LayoutAnimationController.AnimationParameters layoutAnimationParameters; - field public int width; - } - - public static class ViewGroup.MarginLayoutParams extends android.view.ViewGroup.LayoutParams { - ctor public ViewGroup.MarginLayoutParams(android.content.Context, android.util.AttributeSet); - ctor public ViewGroup.MarginLayoutParams(int, int); - ctor public ViewGroup.MarginLayoutParams(android.view.ViewGroup.MarginLayoutParams); - ctor public ViewGroup.MarginLayoutParams(android.view.ViewGroup.LayoutParams); - method public int getLayoutDirection(); - method public int getMarginEnd(); - method public int getMarginStart(); - method public boolean isMarginRelative(); - method public void setLayoutDirection(int); - method public void setMarginEnd(int); - method public void setMarginStart(int); - method public void setMargins(int, int, int, int); - field public int bottomMargin; - field public int leftMargin; - field public int rightMargin; - field public int topMargin; - } - - public static interface ViewGroup.OnHierarchyChangeListener { - method public void onChildViewAdded(android.view.View, android.view.View); - method public void onChildViewRemoved(android.view.View, android.view.View); - } - - public class ViewGroupOverlay extends android.view.ViewOverlay { - method public void add(@NonNull android.view.View); - method public void remove(@NonNull android.view.View); - } - - public interface ViewManager { - method public void addView(android.view.View, android.view.ViewGroup.LayoutParams); - method public void removeView(android.view.View); - method public void updateViewLayout(android.view.View, android.view.ViewGroup.LayoutParams); - } - - public abstract class ViewOutlineProvider { - ctor public ViewOutlineProvider(); - method public abstract void getOutline(android.view.View, android.graphics.Outline); - field public static final android.view.ViewOutlineProvider BACKGROUND; - field public static final android.view.ViewOutlineProvider BOUNDS; - field public static final android.view.ViewOutlineProvider PADDED_BOUNDS; - } - - public class ViewOverlay { - method public void add(@NonNull android.graphics.drawable.Drawable); - method public void clear(); - method public void remove(@NonNull android.graphics.drawable.Drawable); - } - - public interface ViewParent { - method public void bringChildToFront(android.view.View); - method public boolean canResolveLayoutDirection(); - method public boolean canResolveTextAlignment(); - method public boolean canResolveTextDirection(); - method public void childDrawableStateChanged(@NonNull android.view.View); - method public void childHasTransientStateChanged(@NonNull android.view.View, boolean); - method public void clearChildFocus(android.view.View); - method public void createContextMenu(android.view.ContextMenu); - method @Nullable public default android.window.OnBackInvokedDispatcher findOnBackInvokedDispatcherForChild(@NonNull android.view.View, @NonNull android.view.View); - method public android.view.View focusSearch(android.view.View, int); - method public void focusableViewAvailable(android.view.View); - method public boolean getChildVisibleRect(android.view.View, android.graphics.Rect, android.graphics.Point); - method public int getLayoutDirection(); - method public android.view.ViewParent getParent(); - method public android.view.ViewParent getParentForAccessibility(); - method public int getTextAlignment(); - method public int getTextDirection(); - method @Deprecated public void invalidateChild(android.view.View, android.graphics.Rect); - method @Deprecated public android.view.ViewParent invalidateChildInParent(int[], android.graphics.Rect); - method public boolean isLayoutDirectionResolved(); - method public boolean isLayoutRequested(); - method public boolean isTextAlignmentResolved(); - method public boolean isTextDirectionResolved(); - method public android.view.View keyboardNavigationClusterSearch(android.view.View, int); - method public void notifySubtreeAccessibilityStateChanged(@NonNull android.view.View, @NonNull android.view.View, int); - method public default void onDescendantInvalidated(@NonNull android.view.View, @NonNull android.view.View); - method public boolean onNestedFling(@NonNull android.view.View, float, float, boolean); - method public boolean onNestedPreFling(@NonNull android.view.View, float, float); - method public boolean onNestedPrePerformAccessibilityAction(@NonNull android.view.View, int, @Nullable android.os.Bundle); - method public void onNestedPreScroll(@NonNull android.view.View, int, int, @NonNull int[]); - method public void onNestedScroll(@NonNull android.view.View, int, int, int, int); - method public void onNestedScrollAccepted(@NonNull android.view.View, @NonNull android.view.View, int); - method public boolean onStartNestedScroll(@NonNull android.view.View, @NonNull android.view.View, int); - method public void onStopNestedScroll(@NonNull android.view.View); - method public void recomputeViewAttributes(android.view.View); - method public void requestChildFocus(android.view.View, android.view.View); - method public boolean requestChildRectangleOnScreen(@NonNull android.view.View, android.graphics.Rect, boolean); - method public void requestDisallowInterceptTouchEvent(boolean); - method public void requestFitSystemWindows(); - method public void requestLayout(); - method public boolean requestSendAccessibilityEvent(@NonNull android.view.View, android.view.accessibility.AccessibilityEvent); - method public void requestTransparentRegion(android.view.View); - method public boolean showContextMenuForChild(android.view.View); - method public boolean showContextMenuForChild(android.view.View, float, float); - method public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode.Callback); - method public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode.Callback, int); - } - - public class ViewPropertyAnimator { - method @NonNull public android.view.ViewPropertyAnimator alpha(@FloatRange(from=0.0f, to=1.0f) float); - method @NonNull public android.view.ViewPropertyAnimator alphaBy(float); - method public void cancel(); - method public long getDuration(); - method @Nullable public android.animation.TimeInterpolator getInterpolator(); - method public long getStartDelay(); - method @NonNull public android.view.ViewPropertyAnimator rotation(float); - method @NonNull public android.view.ViewPropertyAnimator rotationBy(float); - method @NonNull public android.view.ViewPropertyAnimator rotationX(float); - method @NonNull public android.view.ViewPropertyAnimator rotationXBy(float); - method @NonNull public android.view.ViewPropertyAnimator rotationY(float); - method @NonNull public android.view.ViewPropertyAnimator rotationYBy(float); - method @NonNull public android.view.ViewPropertyAnimator scaleX(float); - method @NonNull public android.view.ViewPropertyAnimator scaleXBy(float); - method @NonNull public android.view.ViewPropertyAnimator scaleY(float); - method @NonNull public android.view.ViewPropertyAnimator scaleYBy(float); - method @NonNull public android.view.ViewPropertyAnimator setDuration(long); - method @NonNull public android.view.ViewPropertyAnimator setInterpolator(android.animation.TimeInterpolator); - method @NonNull public android.view.ViewPropertyAnimator setListener(@Nullable android.animation.Animator.AnimatorListener); - method @NonNull public android.view.ViewPropertyAnimator setStartDelay(long); - method @NonNull public android.view.ViewPropertyAnimator setUpdateListener(@Nullable android.animation.ValueAnimator.AnimatorUpdateListener); - method public void start(); - method @NonNull public android.view.ViewPropertyAnimator translationX(float); - method @NonNull public android.view.ViewPropertyAnimator translationXBy(float); - method @NonNull public android.view.ViewPropertyAnimator translationY(float); - method @NonNull public android.view.ViewPropertyAnimator translationYBy(float); - method @NonNull public android.view.ViewPropertyAnimator translationZ(float); - method @NonNull public android.view.ViewPropertyAnimator translationZBy(float); - method @NonNull public android.view.ViewPropertyAnimator withEndAction(Runnable); - method @NonNull public android.view.ViewPropertyAnimator withLayer(); - method @NonNull public android.view.ViewPropertyAnimator withStartAction(Runnable); - method @NonNull public android.view.ViewPropertyAnimator x(float); - method @NonNull public android.view.ViewPropertyAnimator xBy(float); - method @NonNull public android.view.ViewPropertyAnimator y(float); - method @NonNull public android.view.ViewPropertyAnimator yBy(float); - method @NonNull public android.view.ViewPropertyAnimator z(float); - method @NonNull public android.view.ViewPropertyAnimator zBy(float); - } - - public abstract class ViewStructure { - ctor public ViewStructure(); - method public abstract int addChildCount(int); - method public abstract void asyncCommit(); - method public abstract android.view.ViewStructure asyncNewChild(int); - method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") public void clearCredentialManagerRequest(); - method @Nullable public abstract android.view.autofill.AutofillId getAutofillId(); - method public abstract int getChildCount(); - method public abstract android.os.Bundle getExtras(); - method public abstract CharSequence getHint(); - method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") @Nullable public android.os.OutcomeReceiver getPendingCredentialCallback(); - method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") @Nullable public android.credentials.GetCredentialRequest getPendingCredentialRequest(); - method public abstract CharSequence getText(); - method public abstract int getTextSelectionEnd(); - method public abstract int getTextSelectionStart(); - method public abstract boolean hasExtras(); - method public abstract android.view.ViewStructure newChild(int); - method public abstract android.view.ViewStructure.HtmlInfo.Builder newHtmlInfoBuilder(@NonNull String); - method public abstract void setAccessibilityFocused(boolean); - method public abstract void setActivated(boolean); - method public abstract void setAlpha(float); - method public abstract void setAutofillHints(@Nullable String[]); - method public abstract void setAutofillId(@NonNull android.view.autofill.AutofillId); - method public abstract void setAutofillId(@NonNull android.view.autofill.AutofillId, int); - method public abstract void setAutofillOptions(CharSequence[]); - method public abstract void setAutofillType(int); - method public abstract void setAutofillValue(android.view.autofill.AutofillValue); - method public abstract void setCheckable(boolean); - method public abstract void setChecked(boolean); - method public abstract void setChildCount(int); - method public abstract void setClassName(String); - method public abstract void setClickable(boolean); - method public abstract void setContentDescription(CharSequence); - method public abstract void setContextClickable(boolean); - method public abstract void setDataIsSensitive(boolean); - method public abstract void setDimens(int, int, int, int, int, int); - method public abstract void setElevation(float); - method public abstract void setEnabled(boolean); - method public abstract void setFocusable(boolean); - method public abstract void setFocused(boolean); - method public abstract void setHint(CharSequence); - method public void setHintIdEntry(@NonNull String); - method public abstract void setHtmlInfo(@NonNull android.view.ViewStructure.HtmlInfo); - method public abstract void setId(int, String, String, String); - method public void setImportantForAutofill(int); - method public abstract void setInputType(int); - method public abstract void setLocaleList(android.os.LocaleList); - method public abstract void setLongClickable(boolean); - method public void setMaxTextEms(int); - method public void setMaxTextLength(int); - method public void setMinTextEms(int); - method public abstract void setOpaque(boolean); - method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") public void setPendingCredentialRequest(@NonNull android.credentials.GetCredentialRequest, @NonNull android.os.OutcomeReceiver); - method public void setReceiveContentMimeTypes(@Nullable String[]); - method public abstract void setSelected(boolean); - method public abstract void setText(CharSequence); - method public abstract void setText(CharSequence, int, int); - method public void setTextIdEntry(@NonNull String); - method public abstract void setTextLines(int[], int[]); - method public abstract void setTextStyle(float, int, int, int); - method public abstract void setTransformation(android.graphics.Matrix); - method public abstract void setVisibility(int); - method public abstract void setWebDomain(@Nullable String); - field @FlaggedApi("android.service.autofill.autofill_w_metrics") public static final String EXTRA_VIRTUAL_STRUCTURE_TYPE = "android.view.extra.VIRTUAL_STRUCTURE_TYPE"; - field @FlaggedApi("android.service.autofill.autofill_w_metrics") public static final String EXTRA_VIRTUAL_STRUCTURE_VERSION_NUMBER = "android.view.extra.VIRTUAL_STRUCTURE_VERSION_NUMBER"; - } - - public abstract static class ViewStructure.HtmlInfo { - ctor public ViewStructure.HtmlInfo(); - method @Nullable public abstract java.util.List> getAttributes(); - method @NonNull public abstract String getTag(); - } - - public abstract static class ViewStructure.HtmlInfo.Builder { - ctor public ViewStructure.HtmlInfo.Builder(); - method public abstract android.view.ViewStructure.HtmlInfo.Builder addAttribute(@NonNull String, @NonNull String); - method public abstract android.view.ViewStructure.HtmlInfo build(); - } - - @android.widget.RemoteViews.RemoteView public final class ViewStub extends android.view.View { - ctor public ViewStub(android.content.Context); - ctor public ViewStub(android.content.Context, @LayoutRes int); - ctor public ViewStub(android.content.Context, android.util.AttributeSet); - ctor public ViewStub(android.content.Context, android.util.AttributeSet, int); - ctor public ViewStub(android.content.Context, android.util.AttributeSet, int, int); - method @IdRes public int getInflatedId(); - method public android.view.LayoutInflater getLayoutInflater(); - method @LayoutRes public int getLayoutResource(); - method public android.view.View inflate(); - method public void setInflatedId(@IdRes int); - method public void setLayoutInflater(android.view.LayoutInflater); - method public void setLayoutResource(@LayoutRes int); - method public void setOnInflateListener(android.view.ViewStub.OnInflateListener); - } - - public static interface ViewStub.OnInflateListener { - method public void onInflate(android.view.ViewStub, android.view.View); - } - - public final class ViewTreeObserver { - method public void addOnDrawListener(android.view.ViewTreeObserver.OnDrawListener); - method public void addOnGlobalFocusChangeListener(android.view.ViewTreeObserver.OnGlobalFocusChangeListener); - method public void addOnGlobalLayoutListener(android.view.ViewTreeObserver.OnGlobalLayoutListener); - method public void addOnPreDrawListener(android.view.ViewTreeObserver.OnPreDrawListener); - method public void addOnScrollChangedListener(android.view.ViewTreeObserver.OnScrollChangedListener); - method public void addOnSystemGestureExclusionRectsChangedListener(@NonNull java.util.function.Consumer>); - method public void addOnTouchModeChangeListener(android.view.ViewTreeObserver.OnTouchModeChangeListener); - method public void addOnWindowAttachListener(android.view.ViewTreeObserver.OnWindowAttachListener); - method public void addOnWindowFocusChangeListener(android.view.ViewTreeObserver.OnWindowFocusChangeListener); - method public void addOnWindowVisibilityChangeListener(@NonNull android.view.ViewTreeObserver.OnWindowVisibilityChangeListener); - method public void dispatchOnDraw(); - method public void dispatchOnGlobalLayout(); - method public boolean dispatchOnPreDraw(); - method public boolean isAlive(); - method public void registerFrameCommitCallback(@NonNull Runnable); - method @Deprecated public void removeGlobalOnLayoutListener(android.view.ViewTreeObserver.OnGlobalLayoutListener); - method public void removeOnDrawListener(android.view.ViewTreeObserver.OnDrawListener); - method public void removeOnGlobalFocusChangeListener(android.view.ViewTreeObserver.OnGlobalFocusChangeListener); - method public void removeOnGlobalLayoutListener(android.view.ViewTreeObserver.OnGlobalLayoutListener); - method public void removeOnPreDrawListener(android.view.ViewTreeObserver.OnPreDrawListener); - method public void removeOnScrollChangedListener(android.view.ViewTreeObserver.OnScrollChangedListener); - method public void removeOnSystemGestureExclusionRectsChangedListener(@NonNull java.util.function.Consumer>); - method public void removeOnTouchModeChangeListener(android.view.ViewTreeObserver.OnTouchModeChangeListener); - method public void removeOnWindowAttachListener(android.view.ViewTreeObserver.OnWindowAttachListener); - method public void removeOnWindowFocusChangeListener(android.view.ViewTreeObserver.OnWindowFocusChangeListener); - method public void removeOnWindowVisibilityChangeListener(@NonNull android.view.ViewTreeObserver.OnWindowVisibilityChangeListener); - method public boolean unregisterFrameCommitCallback(@NonNull Runnable); - } - - public static interface ViewTreeObserver.OnDrawListener { - method public void onDraw(); - } - - public static interface ViewTreeObserver.OnGlobalFocusChangeListener { - method public void onGlobalFocusChanged(android.view.View, android.view.View); - } - - public static interface ViewTreeObserver.OnGlobalLayoutListener { - method public void onGlobalLayout(); - } - - public static interface ViewTreeObserver.OnPreDrawListener { - method public boolean onPreDraw(); - } - - public static interface ViewTreeObserver.OnScrollChangedListener { - method public void onScrollChanged(); - } - - public static interface ViewTreeObserver.OnTouchModeChangeListener { - method public void onTouchModeChanged(boolean); - } - - public static interface ViewTreeObserver.OnWindowAttachListener { - method public void onWindowAttached(); - method public void onWindowDetached(); - } - - public static interface ViewTreeObserver.OnWindowFocusChangeListener { - method public void onWindowFocusChanged(boolean); - } - - public static interface ViewTreeObserver.OnWindowVisibilityChangeListener { - method public void onWindowVisibilityChanged(int); - } - - public abstract class Window { - ctor public Window(@UiContext android.content.Context); - method public abstract void addContentView(android.view.View, android.view.ViewGroup.LayoutParams); - method public void addFlags(int); - method public final void addOnFrameMetricsAvailableListener(@NonNull android.view.Window.OnFrameMetricsAvailableListener, android.os.Handler); - method public void clearFlags(int); - method public abstract void closeAllPanels(); - method public abstract void closePanel(int); - method public T findViewById(@IdRes int); - method public boolean getAllowEnterTransitionOverlap(); - method public boolean getAllowReturnTransitionOverlap(); - method public final android.view.WindowManager.LayoutParams getAttributes(); - method public final android.view.Window.Callback getCallback(); - method public int getColorMode(); - method public final android.view.Window getContainer(); - method public android.transition.Scene getContentScene(); - method @UiContext public final android.content.Context getContext(); - method @Nullable public abstract android.view.View getCurrentFocus(); - method @NonNull public abstract android.view.View getDecorView(); - method public static int getDefaultFeatures(android.content.Context); - method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public float getDesiredHdrHeadroom(); - method public android.transition.Transition getEnterTransition(); - method public android.transition.Transition getExitTransition(); - method protected final int getFeatures(); - method protected final int getForcedWindowFlags(); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public boolean getFrameRateBoostOnTouchEnabled(); - method @Nullable public android.view.WindowInsetsController getInsetsController(); - method @NonNull public abstract android.view.LayoutInflater getLayoutInflater(); - method protected final int getLocalFeatures(); - method public android.media.session.MediaController getMediaController(); - method @Deprecated @ColorInt public abstract int getNavigationBarColor(); - method @Deprecated @ColorInt public int getNavigationBarDividerColor(); - method @NonNull public android.window.OnBackInvokedDispatcher getOnBackInvokedDispatcher(); - method public android.transition.Transition getReenterTransition(); - method public android.transition.Transition getReturnTransition(); - method @Nullable public android.view.AttachedSurfaceControl getRootSurfaceControl(); - method public android.transition.Transition getSharedElementEnterTransition(); - method public android.transition.Transition getSharedElementExitTransition(); - method public android.transition.Transition getSharedElementReenterTransition(); - method public android.transition.Transition getSharedElementReturnTransition(); - method public boolean getSharedElementsUseOverlay(); - method @Deprecated @ColorInt public abstract int getStatusBarColor(); - method @NonNull public java.util.List getSystemGestureExclusionRects(); - method public long getTransitionBackgroundFadeDuration(); - method public android.transition.TransitionManager getTransitionManager(); - method public abstract int getVolumeControlStream(); - method public android.view.WindowManager getWindowManager(); - method public final android.content.res.TypedArray getWindowStyle(); - method public final boolean hasChildren(); - method public boolean hasFeature(int); - method protected final boolean hasSoftInputMode(); - method public void injectInputEvent(android.view.InputEvent); - method public abstract void invalidatePanelMenu(int); - method public final boolean isActive(); - method public abstract boolean isFloating(); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public boolean isFrameRatePowerSavingsBalanced(); - method public boolean isNavigationBarContrastEnforced(); - method public abstract boolean isShortcutKey(int, android.view.KeyEvent); - method @Deprecated public boolean isStatusBarContrastEnforced(); - method public boolean isWideColorGamut(); - method public final void makeActive(); - method protected abstract void onActive(); - method public abstract void onConfigurationChanged(android.content.res.Configuration); - method public abstract void openPanel(int, android.view.KeyEvent); - method public abstract android.view.View peekDecorView(); - method public abstract boolean performContextMenuIdentifierAction(int, int); - method public abstract boolean performPanelIdentifierAction(int, int, int); - method public abstract boolean performPanelShortcut(int, int, android.view.KeyEvent, int); - method public void registerScrollCaptureCallback(@NonNull android.view.ScrollCaptureCallback); - method public final void removeOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener); - method public boolean requestFeature(int); - method @NonNull public final T requireViewById(@IdRes int); - method public abstract void restoreHierarchyState(android.os.Bundle); - method public abstract android.os.Bundle saveHierarchyState(); - method public void setAllowEnterTransitionOverlap(boolean); - method public void setAllowReturnTransitionOverlap(boolean); - method public void setAttributes(android.view.WindowManager.LayoutParams); - method public void setBackgroundBlurRadius(int); - method public abstract void setBackgroundDrawable(android.graphics.drawable.Drawable); - method public void setBackgroundDrawableResource(@DrawableRes int); - method public void setCallback(android.view.Window.Callback); - method public abstract void setChildDrawable(int, android.graphics.drawable.Drawable); - method public abstract void setChildInt(int, int); - method public void setClipToOutline(boolean); - method public void setColorMode(int); - method public void setContainer(android.view.Window); - method public abstract void setContentView(@LayoutRes int); - method public abstract void setContentView(android.view.View); - method public abstract void setContentView(android.view.View, android.view.ViewGroup.LayoutParams); - method public abstract void setDecorCaptionShade(int); - method @Deprecated public void setDecorFitsSystemWindows(boolean); - method protected void setDefaultWindowFormat(int); - method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public void setDesiredHdrHeadroom(@FloatRange(from=0.0f, to=10000.0) float); - method public void setDimAmount(float); - method public void setElevation(float); - method public void setEnterTransition(android.transition.Transition); - method public void setExitTransition(android.transition.Transition); - method public abstract void setFeatureDrawable(int, android.graphics.drawable.Drawable); - method public abstract void setFeatureDrawableAlpha(int, int); - method public abstract void setFeatureDrawableResource(int, @DrawableRes int); - method public abstract void setFeatureDrawableUri(int, android.net.Uri); - method public abstract void setFeatureInt(int, int); - method public void setFlags(int, int); - method public void setFormat(int); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setFrameRateBoostOnTouchEnabled(boolean); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setFrameRatePowerSavingsBalanced(boolean); - method public void setGravity(int); - method @RequiresPermission(android.Manifest.permission.HIDE_OVERLAY_WINDOWS) public final void setHideOverlayWindows(boolean); - method public void setIcon(@DrawableRes int); - method public void setLayout(int, int); - method public void setLocalFocus(boolean, boolean); - method public void setLogo(@DrawableRes int); - method public void setMediaController(android.media.session.MediaController); - method @Deprecated public abstract void setNavigationBarColor(@ColorInt int); - method public void setNavigationBarContrastEnforced(boolean); - method @Deprecated public void setNavigationBarDividerColor(@ColorInt int); - method public void setPreferMinimalPostProcessing(boolean); - method public void setReenterTransition(android.transition.Transition); - method public abstract void setResizingCaptionDrawable(android.graphics.drawable.Drawable); - method public final void setRestrictedCaptionAreaListener(android.view.Window.OnRestrictedCaptionAreaChangedListener); - method public void setReturnTransition(android.transition.Transition); - method public void setSharedElementEnterTransition(android.transition.Transition); - method public void setSharedElementExitTransition(android.transition.Transition); - method public void setSharedElementReenterTransition(android.transition.Transition); - method public void setSharedElementReturnTransition(android.transition.Transition); - method public void setSharedElementsUseOverlay(boolean); - method public void setSoftInputMode(int); - method @Deprecated public abstract void setStatusBarColor(@ColorInt int); - method @Deprecated public void setStatusBarContrastEnforced(boolean); - method public void setSustainedPerformanceMode(boolean); - method public void setSystemGestureExclusionRects(@NonNull java.util.List); - method public abstract void setTitle(CharSequence); - method @Deprecated public abstract void setTitleColor(@ColorInt int); - method public void setTransitionBackgroundFadeDuration(long); - method public void setTransitionManager(android.transition.TransitionManager); - method public void setType(int); - method public void setUiOptions(int); - method public void setUiOptions(int, int); - method public abstract void setVolumeControlStream(int); - method public void setWindowAnimations(@StyleRes int); - method public void setWindowManager(android.view.WindowManager, android.os.IBinder, String); - method public void setWindowManager(android.view.WindowManager, android.os.IBinder, String, boolean); - method public abstract boolean superDispatchGenericMotionEvent(android.view.MotionEvent); - method public abstract boolean superDispatchKeyEvent(android.view.KeyEvent); - method public abstract boolean superDispatchKeyShortcutEvent(android.view.KeyEvent); - method public abstract boolean superDispatchTouchEvent(android.view.MotionEvent); - method public abstract boolean superDispatchTrackballEvent(android.view.MotionEvent); - method public abstract void takeInputQueue(android.view.InputQueue.Callback); - method public abstract void takeKeyEvents(boolean); - method public abstract void takeSurface(android.view.SurfaceHolder.Callback2); - method public abstract void togglePanel(int, android.view.KeyEvent); - method public void unregisterScrollCaptureCallback(@NonNull android.view.ScrollCaptureCallback); - field public static final int DECOR_CAPTION_SHADE_AUTO = 0; // 0x0 - field public static final int DECOR_CAPTION_SHADE_DARK = 2; // 0x2 - field public static final int DECOR_CAPTION_SHADE_LIGHT = 1; // 0x1 - field @Deprecated protected static final int DEFAULT_FEATURES = 65; // 0x41 - field public static final int FEATURE_ACTION_BAR = 8; // 0x8 - field public static final int FEATURE_ACTION_BAR_OVERLAY = 9; // 0x9 - field public static final int FEATURE_ACTION_MODE_OVERLAY = 10; // 0xa - field public static final int FEATURE_ACTIVITY_TRANSITIONS = 13; // 0xd - field public static final int FEATURE_CONTENT_TRANSITIONS = 12; // 0xc - field public static final int FEATURE_CONTEXT_MENU = 6; // 0x6 - field public static final int FEATURE_CUSTOM_TITLE = 7; // 0x7 - field @Deprecated public static final int FEATURE_INDETERMINATE_PROGRESS = 5; // 0x5 - field public static final int FEATURE_LEFT_ICON = 3; // 0x3 - field public static final int FEATURE_NO_TITLE = 1; // 0x1 - field public static final int FEATURE_OPTIONS_PANEL = 0; // 0x0 - field @Deprecated public static final int FEATURE_PROGRESS = 2; // 0x2 - field public static final int FEATURE_RIGHT_ICON = 4; // 0x4 - field @Deprecated public static final int FEATURE_SWIPE_TO_DISMISS = 11; // 0xb - field public static final int ID_ANDROID_CONTENT = 16908290; // 0x1020002 - field public static final String NAVIGATION_BAR_BACKGROUND_TRANSITION_NAME = "android:navigation:background"; - field @Deprecated public static final int PROGRESS_END = 10000; // 0x2710 - field @Deprecated public static final int PROGRESS_INDETERMINATE_OFF = -4; // 0xfffffffc - field @Deprecated public static final int PROGRESS_INDETERMINATE_ON = -3; // 0xfffffffd - field @Deprecated public static final int PROGRESS_SECONDARY_END = 30000; // 0x7530 - field @Deprecated public static final int PROGRESS_SECONDARY_START = 20000; // 0x4e20 - field @Deprecated public static final int PROGRESS_START = 0; // 0x0 - field @Deprecated public static final int PROGRESS_VISIBILITY_OFF = -2; // 0xfffffffe - field @Deprecated public static final int PROGRESS_VISIBILITY_ON = -1; // 0xffffffff - field public static final String STATUS_BAR_BACKGROUND_TRANSITION_NAME = "android:status:background"; - } - - public static interface Window.Callback { - method public boolean dispatchGenericMotionEvent(android.view.MotionEvent); - method public boolean dispatchKeyEvent(android.view.KeyEvent); - method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent); - method public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); - method public boolean dispatchTouchEvent(android.view.MotionEvent); - method public boolean dispatchTrackballEvent(android.view.MotionEvent); - method public void onActionModeFinished(android.view.ActionMode); - method public void onActionModeStarted(android.view.ActionMode); - method public void onAttachedToWindow(); - method public void onContentChanged(); - method public boolean onCreatePanelMenu(int, @NonNull android.view.Menu); - method @Nullable public android.view.View onCreatePanelView(int); - method public void onDetachedFromWindow(); - method public boolean onMenuItemSelected(int, @NonNull android.view.MenuItem); - method public boolean onMenuOpened(int, @NonNull android.view.Menu); - method public void onPanelClosed(int, @NonNull android.view.Menu); - method public default void onPointerCaptureChanged(boolean); - method public boolean onPreparePanel(int, @Nullable android.view.View, @NonNull android.view.Menu); - method public default void onProvideKeyboardShortcuts(java.util.List, @Nullable android.view.Menu, int); - method public boolean onSearchRequested(); - method public boolean onSearchRequested(android.view.SearchEvent); - method public void onWindowAttributesChanged(android.view.WindowManager.LayoutParams); - method public void onWindowFocusChanged(boolean); - method @Nullable public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback); - method @Nullable public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int); - } - - public static interface Window.OnFrameMetricsAvailableListener { - method public void onFrameMetricsAvailable(android.view.Window, android.view.FrameMetrics, int); - } - - public static interface Window.OnRestrictedCaptionAreaChangedListener { - method public void onRestrictedCaptionAreaChanged(android.graphics.Rect); - } - - @Deprecated public final class WindowAnimationFrameStats extends android.view.FrameStats implements android.os.Parcelable { - method @Deprecated public int describeContents(); - method @Deprecated public void writeToParcel(android.os.Parcel, int); - field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class WindowContentFrameStats extends android.view.FrameStats implements android.os.Parcelable { - method public int describeContents(); - method public long getFramePostedTimeNano(int); - method public long getFrameReadyTimeNano(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class WindowId implements android.os.Parcelable { - method public int describeContents(); - method public boolean isFocused(); - method public void registerFocusObserver(android.view.WindowId.FocusObserver); - method public void unregisterFocusObserver(android.view.WindowId.FocusObserver); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract static class WindowId.FocusObserver { - ctor public WindowId.FocusObserver(); - method public abstract void onFocusGained(android.view.WindowId); - method public abstract void onFocusLost(android.view.WindowId); - } - - public final class WindowInsets { - ctor public WindowInsets(android.view.WindowInsets); - method @Deprecated @NonNull public android.view.WindowInsets consumeDisplayCutout(); - method @Deprecated @NonNull public android.view.WindowInsets consumeStableInsets(); - method @Deprecated @NonNull public android.view.WindowInsets consumeSystemWindowInsets(); - method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public java.util.List getBoundingRects(int); - method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public java.util.List getBoundingRectsIgnoringVisibility(int); - method @Nullable public android.view.DisplayCutout getDisplayCutout(); - method @Nullable public android.view.DisplayShape getDisplayShape(); - method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public android.util.Size getFrame(); - method @NonNull public android.graphics.Insets getInsets(int); - method @NonNull public android.graphics.Insets getInsetsIgnoringVisibility(int); - method @Deprecated @NonNull public android.graphics.Insets getMandatorySystemGestureInsets(); - method @Nullable public android.graphics.Rect getPrivacyIndicatorBounds(); - method @Nullable public android.view.RoundedCorner getRoundedCorner(int); - method @Deprecated public int getStableInsetBottom(); - method @Deprecated public int getStableInsetLeft(); - method @Deprecated public int getStableInsetRight(); - method @Deprecated public int getStableInsetTop(); - method @Deprecated @NonNull public android.graphics.Insets getStableInsets(); - method @Deprecated @NonNull public android.graphics.Insets getSystemGestureInsets(); - method @Deprecated public int getSystemWindowInsetBottom(); - method @Deprecated public int getSystemWindowInsetLeft(); - method @Deprecated public int getSystemWindowInsetRight(); - method @Deprecated public int getSystemWindowInsetTop(); - method @Deprecated @NonNull public android.graphics.Insets getSystemWindowInsets(); - method @Deprecated @NonNull public android.graphics.Insets getTappableElementInsets(); - method public boolean hasInsets(); - method @Deprecated public boolean hasStableInsets(); - method @Deprecated public boolean hasSystemWindowInsets(); - method @NonNull public android.view.WindowInsets inset(@NonNull android.graphics.Insets); - method @NonNull public android.view.WindowInsets inset(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int); - method public boolean isConsumed(); - method public boolean isRound(); - method public boolean isVisible(int); - method @Deprecated @NonNull public android.view.WindowInsets replaceSystemWindowInsets(int, int, int, int); - method @Deprecated @NonNull public android.view.WindowInsets replaceSystemWindowInsets(android.graphics.Rect); - field @NonNull public static final android.view.WindowInsets CONSUMED; - } - - public static final class WindowInsets.Builder { - ctor public WindowInsets.Builder(); - ctor public WindowInsets.Builder(@NonNull android.view.WindowInsets); - method @NonNull public android.view.WindowInsets build(); - method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public android.view.WindowInsets.Builder setBoundingRects(int, @NonNull java.util.List); - method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public android.view.WindowInsets.Builder setBoundingRectsIgnoringVisibility(int, @NonNull java.util.List); - method @NonNull public android.view.WindowInsets.Builder setDisplayCutout(@Nullable android.view.DisplayCutout); - method @NonNull public android.view.WindowInsets.Builder setDisplayShape(@NonNull android.view.DisplayShape); - method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public android.view.WindowInsets.Builder setFrame(int, int); - method @NonNull public android.view.WindowInsets.Builder setInsets(int, @NonNull android.graphics.Insets); - method @NonNull public android.view.WindowInsets.Builder setInsetsIgnoringVisibility(int, @NonNull android.graphics.Insets) throws java.lang.IllegalArgumentException; - method @Deprecated @NonNull public android.view.WindowInsets.Builder setMandatorySystemGestureInsets(@NonNull android.graphics.Insets); - method @NonNull public android.view.WindowInsets.Builder setPrivacyIndicatorBounds(@Nullable android.graphics.Rect); - method @NonNull public android.view.WindowInsets.Builder setRoundedCorner(int, @Nullable android.view.RoundedCorner); - method @Deprecated @NonNull public android.view.WindowInsets.Builder setStableInsets(@NonNull android.graphics.Insets); - method @Deprecated @NonNull public android.view.WindowInsets.Builder setSystemGestureInsets(@NonNull android.graphics.Insets); - method @Deprecated @NonNull public android.view.WindowInsets.Builder setSystemWindowInsets(@NonNull android.graphics.Insets); - method @Deprecated @NonNull public android.view.WindowInsets.Builder setTappableElementInsets(@NonNull android.graphics.Insets); - method @NonNull public android.view.WindowInsets.Builder setVisible(int, boolean); - } - - public static final class WindowInsets.Side { - method public static int all(); - field public static final int BOTTOM = 8; // 0x8 - field public static final int LEFT = 1; // 0x1 - field public static final int RIGHT = 4; // 0x4 - field public static final int TOP = 2; // 0x2 - } - - public static final class WindowInsets.Type { - method public static int captionBar(); - method public static int displayCutout(); - method public static int ime(); - method public static int mandatorySystemGestures(); - method public static int navigationBars(); - method public static int statusBars(); - method public static int systemBars(); - method public static int systemGestures(); - method public static int systemOverlays(); - method public static int tappableElement(); - } - - public final class WindowInsetsAnimation { - ctor public WindowInsetsAnimation(int, @Nullable android.view.animation.Interpolator, long); - method @FloatRange(from=0.0f, to=1.0f) public float getAlpha(); - method public long getDurationMillis(); - method @FloatRange(from=0.0f, to=1.0f) public float getFraction(); - method public float getInterpolatedFraction(); - method @Nullable public android.view.animation.Interpolator getInterpolator(); - method public int getTypeMask(); - method public void setAlpha(@FloatRange(from=0.0f, to=1.0f) float); - method public void setFraction(@FloatRange(from=0.0f, to=1.0f) float); - } - - public static final class WindowInsetsAnimation.Bounds { - ctor public WindowInsetsAnimation.Bounds(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); - method @NonNull public android.graphics.Insets getLowerBound(); - method @NonNull public android.graphics.Insets getUpperBound(); - method @NonNull public android.view.WindowInsetsAnimation.Bounds inset(@NonNull android.graphics.Insets); - } - - public abstract static class WindowInsetsAnimation.Callback { - ctor public WindowInsetsAnimation.Callback(int); - method public final int getDispatchMode(); - method public void onEnd(@NonNull android.view.WindowInsetsAnimation); - method public void onPrepare(@NonNull android.view.WindowInsetsAnimation); - method @NonNull public abstract android.view.WindowInsets onProgress(@NonNull android.view.WindowInsets, @NonNull java.util.List); - method @NonNull public android.view.WindowInsetsAnimation.Bounds onStart(@NonNull android.view.WindowInsetsAnimation, @NonNull android.view.WindowInsetsAnimation.Bounds); - field public static final int DISPATCH_MODE_CONTINUE_ON_SUBTREE = 1; // 0x1 - field public static final int DISPATCH_MODE_STOP = 0; // 0x0 - } - - public interface WindowInsetsAnimationControlListener { - method public void onCancelled(@Nullable android.view.WindowInsetsAnimationController); - method public void onFinished(@NonNull android.view.WindowInsetsAnimationController); - method public void onReady(@NonNull android.view.WindowInsetsAnimationController, int); - } - - public interface WindowInsetsAnimationController { - method public void finish(boolean); - method public float getCurrentAlpha(); - method @FloatRange(from=0.0f, to=1.0f) public float getCurrentFraction(); - method @NonNull public android.graphics.Insets getCurrentInsets(); - method @NonNull public android.graphics.Insets getHiddenStateInsets(); - method @NonNull public android.graphics.Insets getShownStateInsets(); - method public int getTypes(); - method public boolean isCancelled(); - method public boolean isFinished(); - method public default boolean isReady(); - method public void setInsetsAndAlpha(@Nullable android.graphics.Insets, @FloatRange(from=0.0f, to=1.0f) float, @FloatRange(from=0.0f, to=1.0f) float); - } - - public interface WindowInsetsController { - method public void addOnControllableInsetsChangedListener(@NonNull android.view.WindowInsetsController.OnControllableInsetsChangedListener); - method public void controlWindowInsetsAnimation(int, long, @Nullable android.view.animation.Interpolator, @Nullable android.os.CancellationSignal, @NonNull android.view.WindowInsetsAnimationControlListener); - method public int getSystemBarsAppearance(); - method public int getSystemBarsBehavior(); - method public void hide(int); - method public void removeOnControllableInsetsChangedListener(@NonNull android.view.WindowInsetsController.OnControllableInsetsChangedListener); - method public void setSystemBarsAppearance(int, int); - method public void setSystemBarsBehavior(int); - method public void show(int); - field @FlaggedApi("android.view.flags.customizable_window_headers") public static final int APPEARANCE_LIGHT_CAPTION_BARS = 256; // 0x100 - field public static final int APPEARANCE_LIGHT_NAVIGATION_BARS = 16; // 0x10 - field public static final int APPEARANCE_LIGHT_STATUS_BARS = 8; // 0x8 - field @FlaggedApi("android.view.flags.customizable_window_headers") public static final int APPEARANCE_TRANSPARENT_CAPTION_BAR_BACKGROUND = 128; // 0x80 - field public static final int BEHAVIOR_DEFAULT = 1; // 0x1 - field @Deprecated public static final int BEHAVIOR_SHOW_BARS_BY_SWIPE = 1; // 0x1 - field @Deprecated public static final int BEHAVIOR_SHOW_BARS_BY_TOUCH = 0; // 0x0 - field public static final int BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE = 2; // 0x2 - } - - public static interface WindowInsetsController.OnControllableInsetsChangedListener { - method public void onControllableInsetsChanged(@NonNull android.view.WindowInsetsController, int); - } - - public interface WindowManager extends android.view.ViewManager { - method public default void addCrossWindowBlurEnabledListener(@NonNull java.util.function.Consumer); - method public default void addCrossWindowBlurEnabledListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public default void addProposedRotationListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer); - method @FlaggedApi("com.android.window.flags.screen_recording_callbacks") @RequiresPermission(android.Manifest.permission.DETECT_SCREEN_RECORDING) public default int addScreenRecordingCallback(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @NonNull public default android.view.WindowMetrics getCurrentWindowMetrics(); - method @Deprecated public android.view.Display getDefaultDisplay(); - method @NonNull public default android.view.WindowMetrics getMaximumWindowMetrics(); - method public default boolean isCrossWindowBlurEnabled(); - method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") @NonNull public default android.window.InputTransferToken registerBatchedSurfaceControlInputReceiver(@NonNull android.window.InputTransferToken, @NonNull android.view.SurfaceControl, @NonNull android.view.Choreographer, @NonNull android.view.SurfaceControlInputReceiver); - method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public default void registerTrustedPresentationListener(@NonNull android.os.IBinder, @NonNull android.window.TrustedPresentationThresholds, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") @NonNull public default android.window.InputTransferToken registerUnbatchedSurfaceControlInputReceiver(@NonNull android.window.InputTransferToken, @NonNull android.view.SurfaceControl, @NonNull android.os.Looper, @NonNull android.view.SurfaceControlInputReceiver); - method public default void removeCrossWindowBlurEnabledListener(@NonNull java.util.function.Consumer); - method public default void removeProposedRotationListener(@NonNull java.util.function.IntConsumer); - method @FlaggedApi("com.android.window.flags.screen_recording_callbacks") @RequiresPermission(android.Manifest.permission.DETECT_SCREEN_RECORDING) public default void removeScreenRecordingCallback(@NonNull java.util.function.Consumer); - method public void removeViewImmediate(android.view.View); - method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public default boolean transferTouchGesture(@NonNull android.window.InputTransferToken, @NonNull android.window.InputTransferToken); - method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public default void unregisterSurfaceControlInputReceiver(@NonNull android.view.SurfaceControl); - method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public default void unregisterTrustedPresentationListener(@NonNull java.util.function.Consumer); - field @FlaggedApi("com.android.window.flags.cover_display_opt_in") public static final int COMPAT_SMALL_COVER_SCREEN_OPT_IN = 1; // 0x1 - field public static final String PROPERTY_ACTIVITY_EMBEDDING_ALLOW_SYSTEM_OVERRIDE = "android.window.PROPERTY_ACTIVITY_EMBEDDING_ALLOW_SYSTEM_OVERRIDE"; - field public static final String PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED = "android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED"; - field public static final String PROPERTY_CAMERA_COMPAT_ALLOW_FORCE_ROTATION = "android.window.PROPERTY_CAMERA_COMPAT_ALLOW_FORCE_ROTATION"; - field public static final String PROPERTY_CAMERA_COMPAT_ALLOW_REFRESH = "android.window.PROPERTY_CAMERA_COMPAT_ALLOW_REFRESH"; - field public static final String PROPERTY_CAMERA_COMPAT_ENABLE_REFRESH_VIA_PAUSE = "android.window.PROPERTY_CAMERA_COMPAT_ENABLE_REFRESH_VIA_PAUSE"; - field public static final String PROPERTY_COMPAT_ALLOW_DISPLAY_ORIENTATION_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_DISPLAY_ORIENTATION_OVERRIDE"; - field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_IGNORING_ORIENTATION_REQUEST_WHEN_LOOP_DETECTED = "android.window.PROPERTY_COMPAT_ALLOW_IGNORING_ORIENTATION_REQUEST_WHEN_LOOP_DETECTED"; - field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_MIN_ASPECT_RATIO_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_MIN_ASPECT_RATIO_OVERRIDE"; - field public static final String PROPERTY_COMPAT_ALLOW_ORIENTATION_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_ORIENTATION_OVERRIDE"; - field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_RESIZEABLE_ACTIVITY_OVERRIDES = "android.window.PROPERTY_COMPAT_ALLOW_RESIZEABLE_ACTIVITY_OVERRIDES"; - field public static final String PROPERTY_COMPAT_ALLOW_SANDBOXING_VIEW_BOUNDS_APIS = "android.window.PROPERTY_COMPAT_ALLOW_SANDBOXING_VIEW_BOUNDS_APIS"; - field @FlaggedApi("com.android.window.flags.cover_display_opt_in") public static final String PROPERTY_COMPAT_ALLOW_SMALL_COVER_SCREEN = "android.window.PROPERTY_COMPAT_ALLOW_SMALL_COVER_SCREEN"; - field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_FULLSCREEN_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_FULLSCREEN_OVERRIDE"; - field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_OVERRIDE"; - field public static final String PROPERTY_COMPAT_ENABLE_FAKE_FOCUS = "android.window.PROPERTY_COMPAT_ENABLE_FAKE_FOCUS"; - field public static final String PROPERTY_COMPAT_IGNORE_REQUESTED_ORIENTATION = "android.window.PROPERTY_COMPAT_IGNORE_REQUESTED_ORIENTATION"; - field @FlaggedApi("com.android.window.flags.supports_multi_instance_system_ui") public static final String PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI = "android.window.PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI"; - field @FlaggedApi("com.android.window.flags.screen_recording_callbacks") public static final int SCREEN_RECORDING_STATE_NOT_VISIBLE = 0; // 0x0 - field @FlaggedApi("com.android.window.flags.screen_recording_callbacks") public static final int SCREEN_RECORDING_STATE_VISIBLE = 1; // 0x1 - } - - public static class WindowManager.BadTokenException extends java.lang.RuntimeException { - ctor public WindowManager.BadTokenException(); - ctor public WindowManager.BadTokenException(String); - } - - public static class WindowManager.InvalidDisplayException extends java.lang.RuntimeException { - ctor public WindowManager.InvalidDisplayException(); - ctor public WindowManager.InvalidDisplayException(String); - } - - public static class WindowManager.LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable { - ctor public WindowManager.LayoutParams(); - ctor public WindowManager.LayoutParams(int); - ctor public WindowManager.LayoutParams(int, int); - ctor public WindowManager.LayoutParams(int, int, int); - ctor public WindowManager.LayoutParams(int, int, int, int, int); - ctor public WindowManager.LayoutParams(int, int, int, int, int, int, int); - ctor public WindowManager.LayoutParams(android.os.Parcel); - method public boolean areWallpaperTouchEventsEnabled(); - method public boolean canPlayMoveAnimation(); - method public final int copyFrom(android.view.WindowManager.LayoutParams); - method public String debug(String); - method public int describeContents(); - method public int getBlurBehindRadius(); - method public int getColorMode(); - method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public float getDesiredHdrHeadroom(); - method public int getFitInsetsSides(); - method public int getFitInsetsTypes(); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public boolean getFrameRateBoostOnTouchEnabled(); - method public final CharSequence getTitle(); - method public boolean isFitInsetsIgnoringVisibility(); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public boolean isFrameRatePowerSavingsBalanced(); - method public boolean isHdrConversionEnabled(); - method public static boolean mayUseInputMethod(int); - method public void setBlurBehindRadius(@IntRange(from=0) int); - method public void setCanPlayMoveAnimation(boolean); - method public void setColorMode(int); - method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public void setDesiredHdrHeadroom(@FloatRange(from=0.0f, to=10000.0f) float); - method public void setFitInsetsIgnoringVisibility(boolean); - method public void setFitInsetsSides(int); - method public void setFitInsetsTypes(int); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setFrameRateBoostOnTouchEnabled(boolean); - method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setFrameRatePowerSavingsBalanced(boolean); - method public void setHdrConversionEnabled(boolean); - method public final void setTitle(CharSequence); - method public void setWallpaperTouchEventsEnabled(boolean); - method public void writeToParcel(android.os.Parcel, int); - field public static final int ALPHA_CHANGED = 128; // 0x80 - field public static final int ANIMATION_CHANGED = 16; // 0x10 - field public static final float BRIGHTNESS_OVERRIDE_FULL = 1.0f; - field public static final float BRIGHTNESS_OVERRIDE_NONE = -1.0f; - field public static final float BRIGHTNESS_OVERRIDE_OFF = 0.0f; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DIM_AMOUNT_CHANGED = 32; // 0x20 - field public static final int DISPLAY_FLAG_DISABLE_HDR_CONVERSION = 1; // 0x1 - field public static final int FIRST_APPLICATION_WINDOW = 1; // 0x1 - field public static final int FIRST_SUB_WINDOW = 1000; // 0x3e8 - field public static final int FIRST_SYSTEM_WINDOW = 2000; // 0x7d0 - field public static final int FLAGS_CHANGED = 4; // 0x4 - field public static final int FLAG_ALLOW_LOCK_WHILE_SCREEN_ON = 1; // 0x1 - field public static final int FLAG_ALT_FOCUSABLE_IM = 131072; // 0x20000 - field public static final int FLAG_BLUR_BEHIND = 4; // 0x4 - field public static final int FLAG_DIM_BEHIND = 2; // 0x2 - field @Deprecated public static final int FLAG_DISMISS_KEYGUARD = 4194304; // 0x400000 - field @Deprecated public static final int FLAG_DITHER = 4096; // 0x1000 - field public static final int FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS = -2147483648; // 0x80000000 - field @Deprecated public static final int FLAG_FORCE_NOT_FULLSCREEN = 2048; // 0x800 - field @Deprecated public static final int FLAG_FULLSCREEN = 1024; // 0x400 - field public static final int FLAG_HARDWARE_ACCELERATED = 16777216; // 0x1000000 - field public static final int FLAG_IGNORE_CHEEK_PRESSES = 32768; // 0x8000 - field public static final int FLAG_KEEP_SCREEN_ON = 128; // 0x80 - field @Deprecated public static final int FLAG_LAYOUT_ATTACHED_IN_DECOR = 1073741824; // 0x40000000 - field @Deprecated public static final int FLAG_LAYOUT_INSET_DECOR = 65536; // 0x10000 - field @Deprecated public static final int FLAG_LAYOUT_IN_OVERSCAN = 33554432; // 0x2000000 - field public static final int FLAG_LAYOUT_IN_SCREEN = 256; // 0x100 - field public static final int FLAG_LAYOUT_NO_LIMITS = 512; // 0x200 - field public static final int FLAG_LOCAL_FOCUS_MODE = 268435456; // 0x10000000 - field public static final int FLAG_NOT_FOCUSABLE = 8; // 0x8 - field public static final int FLAG_NOT_TOUCHABLE = 16; // 0x10 - field public static final int FLAG_NOT_TOUCH_MODAL = 32; // 0x20 - field public static final int FLAG_SCALED = 16384; // 0x4000 - field public static final int FLAG_SECURE = 8192; // 0x2000 - field public static final int FLAG_SHOW_WALLPAPER = 1048576; // 0x100000 - field @Deprecated public static final int FLAG_SHOW_WHEN_LOCKED = 524288; // 0x80000 - field public static final int FLAG_SPLIT_TOUCH = 8388608; // 0x800000 - field @Deprecated public static final int FLAG_TOUCHABLE_WHEN_WAKING = 64; // 0x40 - field @Deprecated public static final int FLAG_TRANSLUCENT_NAVIGATION = 134217728; // 0x8000000 - field @Deprecated public static final int FLAG_TRANSLUCENT_STATUS = 67108864; // 0x4000000 - field @Deprecated public static final int FLAG_TURN_SCREEN_ON = 2097152; // 0x200000 - field public static final int FLAG_WATCH_OUTSIDE_TOUCH = 262144; // 0x40000 - field public static final int FORMAT_CHANGED = 8; // 0x8 - field public static final int LAST_APPLICATION_WINDOW = 99; // 0x63 - field public static final int LAST_SUB_WINDOW = 1999; // 0x7cf - field public static final int LAST_SYSTEM_WINDOW = 2999; // 0xbb7 - field public static final int LAYOUT_CHANGED = 1; // 0x1 - field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS = 3; // 0x3 - field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT = 0; // 0x0 - field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER = 2; // 0x2 - field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES = 1; // 0x1 - field public static final int MEMORY_TYPE_CHANGED = 256; // 0x100 - field @Deprecated public static final int MEMORY_TYPE_GPU = 2; // 0x2 - field @Deprecated public static final int MEMORY_TYPE_HARDWARE = 1; // 0x1 - field @Deprecated public static final int MEMORY_TYPE_NORMAL = 0; // 0x0 - field @Deprecated public static final int MEMORY_TYPE_PUSH_BUFFERS = 3; // 0x3 - field public static final int ROTATION_ANIMATION_CHANGED = 4096; // 0x1000 - field public static final int ROTATION_ANIMATION_CROSSFADE = 1; // 0x1 - field public static final int ROTATION_ANIMATION_JUMPCUT = 2; // 0x2 - field public static final int ROTATION_ANIMATION_ROTATE = 0; // 0x0 - field public static final int ROTATION_ANIMATION_SEAMLESS = 3; // 0x3 - field public static final int SCREEN_BRIGHTNESS_CHANGED = 2048; // 0x800 - field public static final int SCREEN_ORIENTATION_CHANGED = 1024; // 0x400 - field public static final int SOFT_INPUT_ADJUST_NOTHING = 48; // 0x30 - field public static final int SOFT_INPUT_ADJUST_PAN = 32; // 0x20 - field @Deprecated public static final int SOFT_INPUT_ADJUST_RESIZE = 16; // 0x10 - field public static final int SOFT_INPUT_ADJUST_UNSPECIFIED = 0; // 0x0 - field public static final int SOFT_INPUT_IS_FORWARD_NAVIGATION = 256; // 0x100 - field public static final int SOFT_INPUT_MASK_ADJUST = 240; // 0xf0 - field public static final int SOFT_INPUT_MASK_STATE = 15; // 0xf - field public static final int SOFT_INPUT_MODE_CHANGED = 512; // 0x200 - field public static final int SOFT_INPUT_STATE_ALWAYS_HIDDEN = 3; // 0x3 - field public static final int SOFT_INPUT_STATE_ALWAYS_VISIBLE = 5; // 0x5 - field public static final int SOFT_INPUT_STATE_HIDDEN = 2; // 0x2 - field public static final int SOFT_INPUT_STATE_UNCHANGED = 1; // 0x1 - field public static final int SOFT_INPUT_STATE_UNSPECIFIED = 0; // 0x0 - field public static final int SOFT_INPUT_STATE_VISIBLE = 4; // 0x4 - field public static final int TITLE_CHANGED = 64; // 0x40 - field public static final int TYPE_ACCESSIBILITY_OVERLAY = 2032; // 0x7f0 - field public static final int TYPE_APPLICATION = 2; // 0x2 - field public static final int TYPE_APPLICATION_ATTACHED_DIALOG = 1003; // 0x3eb - field public static final int TYPE_APPLICATION_MEDIA = 1001; // 0x3e9 - field public static final int TYPE_APPLICATION_OVERLAY = 2038; // 0x7f6 - field public static final int TYPE_APPLICATION_PANEL = 1000; // 0x3e8 - field public static final int TYPE_APPLICATION_STARTING = 3; // 0x3 - field public static final int TYPE_APPLICATION_SUB_PANEL = 1002; // 0x3ea - field public static final int TYPE_BASE_APPLICATION = 1; // 0x1 - field public static final int TYPE_CHANGED = 2; // 0x2 - field public static final int TYPE_DRAWN_APPLICATION = 4; // 0x4 - field public static final int TYPE_INPUT_METHOD = 2011; // 0x7db - field public static final int TYPE_INPUT_METHOD_DIALOG = 2012; // 0x7dc - field public static final int TYPE_KEYGUARD_DIALOG = 2009; // 0x7d9 - field @Deprecated public static final int TYPE_PHONE = 2002; // 0x7d2 - field @Deprecated public static final int TYPE_PRIORITY_PHONE = 2007; // 0x7d7 - field public static final int TYPE_PRIVATE_PRESENTATION = 2030; // 0x7ee - field public static final int TYPE_SEARCH_BAR = 2001; // 0x7d1 - field public static final int TYPE_STATUS_BAR = 2000; // 0x7d0 - field @Deprecated public static final int TYPE_SYSTEM_ALERT = 2003; // 0x7d3 - field public static final int TYPE_SYSTEM_DIALOG = 2008; // 0x7d8 - field @Deprecated public static final int TYPE_SYSTEM_ERROR = 2010; // 0x7da - field @Deprecated public static final int TYPE_SYSTEM_OVERLAY = 2006; // 0x7d6 - field @Deprecated public static final int TYPE_TOAST = 2005; // 0x7d5 - field public static final int TYPE_WALLPAPER = 2013; // 0x7dd - field public float alpha; - field public float buttonBrightness; - field public float dimAmount; - field public int flags; - field public int format; - field public int gravity; - field public float horizontalMargin; - field public float horizontalWeight; - field public int layoutInDisplayCutoutMode; - field @Deprecated public int memoryType; - field public String packageName; - field public boolean preferMinimalPostProcessing; - field public int preferredDisplayModeId; - field public float preferredRefreshRate; - field public int rotationAnimation; - field public float screenBrightness; - field public int screenOrientation; - field public int softInputMode; - field @Deprecated public int systemUiVisibility; - field public android.os.IBinder token; - field public int type; - field public float verticalMargin; - field public float verticalWeight; - field public int windowAnimations; - field public int x; - field public int y; - } - - public final class WindowMetrics { - ctor @Deprecated public WindowMetrics(@NonNull android.graphics.Rect, @NonNull android.view.WindowInsets); - ctor public WindowMetrics(@NonNull android.graphics.Rect, @NonNull android.view.WindowInsets, float); - method @NonNull public android.graphics.Rect getBounds(); - method public float getDensity(); - method @NonNull public android.view.WindowInsets getWindowInsets(); - } - -} - -package android.view.accessibility { - - public final class AccessibilityEvent extends android.view.accessibility.AccessibilityRecord implements android.os.Parcelable { - ctor public AccessibilityEvent(); - ctor public AccessibilityEvent(int); - ctor public AccessibilityEvent(@NonNull android.view.accessibility.AccessibilityEvent); - method public void appendRecord(android.view.accessibility.AccessibilityRecord); - method public int describeContents(); - method public static String eventTypeToString(int); - method public int getAction(); - method public int getContentChangeTypes(); - method public long getEventTime(); - method public int getEventType(); - method public int getMovementGranularity(); - method public CharSequence getPackageName(); - method public android.view.accessibility.AccessibilityRecord getRecord(int); - method public int getRecordCount(); - method public int getSpeechStateChangeTypes(); - method public int getWindowChanges(); - method public void initFromParcel(android.os.Parcel); - method public boolean isAccessibilityDataSensitive(); - method @Deprecated public static android.view.accessibility.AccessibilityEvent obtain(int); - method @Deprecated public static android.view.accessibility.AccessibilityEvent obtain(android.view.accessibility.AccessibilityEvent); - method @Deprecated public static android.view.accessibility.AccessibilityEvent obtain(); - method public void setAccessibilityDataSensitive(boolean); - method public void setAction(int); - method public void setContentChangeTypes(int); - method public void setEventTime(long); - method public void setEventType(int); - method public void setMovementGranularity(int); - method public void setPackageName(CharSequence); - method public void setSpeechStateChangeTypes(int); - method public void writeToParcel(android.os.Parcel, int); - field @FlaggedApi("android.view.accessibility.tri_state_checked") public static final int CONTENT_CHANGE_TYPE_CHECKED = 8192; // 0x2000 - field public static final int CONTENT_CHANGE_TYPE_CONTENT_DESCRIPTION = 4; // 0x4 - field public static final int CONTENT_CHANGE_TYPE_CONTENT_INVALID = 1024; // 0x400 - field public static final int CONTENT_CHANGE_TYPE_DRAG_CANCELLED = 512; // 0x200 - field public static final int CONTENT_CHANGE_TYPE_DRAG_DROPPED = 256; // 0x100 - field public static final int CONTENT_CHANGE_TYPE_DRAG_STARTED = 128; // 0x80 - field public static final int CONTENT_CHANGE_TYPE_ENABLED = 4096; // 0x1000 - field public static final int CONTENT_CHANGE_TYPE_ERROR = 2048; // 0x800 - field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int CONTENT_CHANGE_TYPE_EXPANDED = 16384; // 0x4000 - field public static final int CONTENT_CHANGE_TYPE_PANE_APPEARED = 16; // 0x10 - field public static final int CONTENT_CHANGE_TYPE_PANE_DISAPPEARED = 32; // 0x20 - field public static final int CONTENT_CHANGE_TYPE_PANE_TITLE = 8; // 0x8 - field public static final int CONTENT_CHANGE_TYPE_STATE_DESCRIPTION = 64; // 0x40 - field public static final int CONTENT_CHANGE_TYPE_SUBTREE = 1; // 0x1 - field @FlaggedApi("android.view.accessibility.supplemental_description") public static final int CONTENT_CHANGE_TYPE_SUPPLEMENTAL_DESCRIPTION = 32768; // 0x8000 - field public static final int CONTENT_CHANGE_TYPE_TEXT = 2; // 0x2 - field public static final int CONTENT_CHANGE_TYPE_UNDEFINED = 0; // 0x0 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int INVALID_POSITION = -1; // 0xffffffff - field @Deprecated public static final int MAX_TEXT_LENGTH = 500; // 0x1f4 - field public static final int SPEECH_STATE_LISTENING_END = 8; // 0x8 - field public static final int SPEECH_STATE_LISTENING_START = 4; // 0x4 - field public static final int SPEECH_STATE_SPEAKING_END = 2; // 0x2 - field public static final int SPEECH_STATE_SPEAKING_START = 1; // 0x1 - field public static final int TYPES_ALL_MASK = -1; // 0xffffffff - field @Deprecated @FlaggedApi("android.view.accessibility.deprecate_accessibility_announcement_apis") public static final int TYPE_ANNOUNCEMENT = 16384; // 0x4000 - field public static final int TYPE_ASSIST_READING_CONTEXT = 16777216; // 0x1000000 - field public static final int TYPE_GESTURE_DETECTION_END = 524288; // 0x80000 - field public static final int TYPE_GESTURE_DETECTION_START = 262144; // 0x40000 - field public static final int TYPE_NOTIFICATION_STATE_CHANGED = 64; // 0x40 - field public static final int TYPE_SPEECH_STATE_CHANGE = 33554432; // 0x2000000 - field public static final int TYPE_TOUCH_EXPLORATION_GESTURE_END = 1024; // 0x400 - field public static final int TYPE_TOUCH_EXPLORATION_GESTURE_START = 512; // 0x200 - field public static final int TYPE_TOUCH_INTERACTION_END = 2097152; // 0x200000 - field public static final int TYPE_TOUCH_INTERACTION_START = 1048576; // 0x100000 - field public static final int TYPE_VIEW_ACCESSIBILITY_FOCUSED = 32768; // 0x8000 - field public static final int TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED = 65536; // 0x10000 - field public static final int TYPE_VIEW_CLICKED = 1; // 0x1 - field public static final int TYPE_VIEW_CONTEXT_CLICKED = 8388608; // 0x800000 - field public static final int TYPE_VIEW_FOCUSED = 8; // 0x8 - field public static final int TYPE_VIEW_HOVER_ENTER = 128; // 0x80 - field public static final int TYPE_VIEW_HOVER_EXIT = 256; // 0x100 - field public static final int TYPE_VIEW_LONG_CLICKED = 2; // 0x2 - field public static final int TYPE_VIEW_SCROLLED = 4096; // 0x1000 - field public static final int TYPE_VIEW_SELECTED = 4; // 0x4 - field public static final int TYPE_VIEW_TARGETED_BY_SCROLL = 67108864; // 0x4000000 - field public static final int TYPE_VIEW_TEXT_CHANGED = 16; // 0x10 - field public static final int TYPE_VIEW_TEXT_SELECTION_CHANGED = 8192; // 0x2000 - field public static final int TYPE_VIEW_TEXT_TRAVERSED_AT_MOVEMENT_GRANULARITY = 131072; // 0x20000 - field public static final int TYPE_WINDOWS_CHANGED = 4194304; // 0x400000 - field public static final int TYPE_WINDOW_CONTENT_CHANGED = 2048; // 0x800 - field public static final int TYPE_WINDOW_STATE_CHANGED = 32; // 0x20 - field public static final int WINDOWS_CHANGE_ACCESSIBILITY_FOCUSED = 128; // 0x80 - field public static final int WINDOWS_CHANGE_ACTIVE = 32; // 0x20 - field public static final int WINDOWS_CHANGE_ADDED = 1; // 0x1 - field public static final int WINDOWS_CHANGE_BOUNDS = 8; // 0x8 - field public static final int WINDOWS_CHANGE_CHILDREN = 512; // 0x200 - field public static final int WINDOWS_CHANGE_FOCUSED = 64; // 0x40 - field public static final int WINDOWS_CHANGE_LAYER = 16; // 0x10 - field public static final int WINDOWS_CHANGE_PARENT = 256; // 0x100 - field public static final int WINDOWS_CHANGE_PIP = 1024; // 0x400 - field public static final int WINDOWS_CHANGE_REMOVED = 2; // 0x2 - field public static final int WINDOWS_CHANGE_TITLE = 4; // 0x4 - } - - public interface AccessibilityEventSource { - method public void sendAccessibilityEvent(int); - method public void sendAccessibilityEventUnchecked(android.view.accessibility.AccessibilityEvent); - } - - public final class AccessibilityManager { - method public void addAccessibilityRequestPreparer(android.view.accessibility.AccessibilityRequestPreparer); - method public void addAccessibilityServicesStateChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener); - method public void addAccessibilityServicesStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener); - method public boolean addAccessibilityStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener); - method public void addAccessibilityStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener, @Nullable android.os.Handler); - method public void addAudioDescriptionRequestedChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.accessibility.AccessibilityManager.AudioDescriptionRequestedChangeListener); - method @FlaggedApi("com.android.graphics.hwui.flags.high_contrast_text_small_text_rect") public void addHighContrastTextStateChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.accessibility.AccessibilityManager.HighContrastTextStateChangeListener); - method public boolean addTouchExplorationStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener); - method public void addTouchExplorationStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener, @Nullable android.os.Handler); - method @ColorInt public int getAccessibilityFocusColor(); - method public int getAccessibilityFocusStrokeWidth(); - method @Deprecated public java.util.List getAccessibilityServiceList(); - method public java.util.List getEnabledAccessibilityServiceList(int); - method public java.util.List getInstalledAccessibilityServiceList(); - method public int getRecommendedTimeoutMillis(int, int); - method public void interrupt(); - method public static boolean isAccessibilityButtonSupported(); - method public boolean isAudioDescriptionRequested(); - method public boolean isEnabled(); - method @FlaggedApi("com.android.graphics.hwui.flags.high_contrast_text_small_text_rect") public boolean isHighContrastTextEnabled(); - method public boolean isRequestFromAccessibilityTool(); - method public boolean isTouchExplorationEnabled(); - method public void removeAccessibilityRequestPreparer(android.view.accessibility.AccessibilityRequestPreparer); - method public boolean removeAccessibilityServicesStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener); - method public boolean removeAccessibilityStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener); - method public boolean removeAudioDescriptionRequestedChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AudioDescriptionRequestedChangeListener); - method @FlaggedApi("com.android.graphics.hwui.flags.high_contrast_text_small_text_rect") public void removeHighContrastTextStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.HighContrastTextStateChangeListener); - method public boolean removeTouchExplorationStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener); - method public void sendAccessibilityEvent(android.view.accessibility.AccessibilityEvent); - field public static final int FLAG_CONTENT_CONTROLS = 4; // 0x4 - field public static final int FLAG_CONTENT_ICONS = 1; // 0x1 - field public static final int FLAG_CONTENT_TEXT = 2; // 0x2 - } - - public static interface AccessibilityManager.AccessibilityServicesStateChangeListener { - method public void onAccessibilityServicesStateChanged(@NonNull android.view.accessibility.AccessibilityManager); - } - - public static interface AccessibilityManager.AccessibilityStateChangeListener { - method public void onAccessibilityStateChanged(boolean); - } - - public static interface AccessibilityManager.AudioDescriptionRequestedChangeListener { - method public void onAudioDescriptionRequestedChanged(boolean); - } - - @FlaggedApi("com.android.graphics.hwui.flags.high_contrast_text_small_text_rect") public static interface AccessibilityManager.HighContrastTextStateChangeListener { - method public void onHighContrastTextStateChanged(boolean); - } - - public static interface AccessibilityManager.TouchExplorationStateChangeListener { - method public void onTouchExplorationStateChanged(boolean); - } - - public class AccessibilityNodeInfo implements android.os.Parcelable { - ctor public AccessibilityNodeInfo(); - ctor public AccessibilityNodeInfo(@NonNull android.view.View); - ctor public AccessibilityNodeInfo(@NonNull android.view.View, int); - ctor public AccessibilityNodeInfo(@NonNull android.view.accessibility.AccessibilityNodeInfo); - method public void addAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction); - method @Deprecated public void addAction(int); - method public void addChild(android.view.View); - method public void addChild(android.view.View, int); - method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public void addLabeledBy(@NonNull android.view.View); - method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public void addLabeledBy(@NonNull android.view.View, int); - method public boolean canOpenPopup(); - method public int describeContents(); - method public java.util.List findAccessibilityNodeInfosByText(String); - method public java.util.List findAccessibilityNodeInfosByViewId(@NonNull String); - method public android.view.accessibility.AccessibilityNodeInfo findFocus(int); - method public android.view.accessibility.AccessibilityNodeInfo focusSearch(int); - method public java.util.List getActionList(); - method @Deprecated public int getActions(); - method public java.util.List getAvailableExtraData(); - method @Deprecated public void getBoundsInParent(android.graphics.Rect); - method public void getBoundsInScreen(android.graphics.Rect); - method public void getBoundsInWindow(@NonNull android.graphics.Rect); - method @FlaggedApi("android.view.accessibility.tri_state_checked") public int getChecked(); - method public android.view.accessibility.AccessibilityNodeInfo getChild(int); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo getChild(int, int); - method public int getChildCount(); - method public CharSequence getClassName(); - method public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo getCollectionInfo(); - method public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo getCollectionItemInfo(); - method @Nullable public CharSequence getContainerTitle(); - method public CharSequence getContentDescription(); - method public int getDrawingOrder(); - method public CharSequence getError(); - method @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public int getExpandedState(); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo.ExtraRenderingInfo getExtraRenderingInfo(); - method public android.os.Bundle getExtras(); - method public CharSequence getHintText(); - method public int getInputType(); - method @Deprecated @FlaggedApi("android.view.accessibility.deprecate_ani_label_for_apis") public android.view.accessibility.AccessibilityNodeInfo getLabelFor(); - method @Deprecated @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public android.view.accessibility.AccessibilityNodeInfo getLabeledBy(); - method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") @NonNull public java.util.List getLabeledByList(); - method public int getLiveRegion(); - method public int getMaxTextLength(); - method @NonNull public java.time.Duration getMinDurationBetweenContentChanges(); - method public int getMovementGranularities(); - method public CharSequence getPackageName(); - method @Nullable public CharSequence getPaneTitle(); - method public android.view.accessibility.AccessibilityNodeInfo getParent(); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo getParent(int); - method public android.view.accessibility.AccessibilityNodeInfo.RangeInfo getRangeInfo(); - method @Nullable public CharSequence getStateDescription(); - method @FlaggedApi("android.view.accessibility.supplemental_description") @Nullable public CharSequence getSupplementalDescription(); - method public CharSequence getText(); - method public int getTextSelectionEnd(); - method public int getTextSelectionStart(); - method @Nullable public CharSequence getTooltipText(); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo.TouchDelegateInfo getTouchDelegateInfo(); - method public android.view.accessibility.AccessibilityNodeInfo getTraversalAfter(); - method public android.view.accessibility.AccessibilityNodeInfo getTraversalBefore(); - method @Nullable public String getUniqueId(); - method public String getViewIdResourceName(); - method public android.view.accessibility.AccessibilityWindowInfo getWindow(); - method public int getWindowId(); - method public boolean hasRequestInitialAccessibilityFocus(); - method public boolean isAccessibilityDataSensitive(); - method public boolean isAccessibilityFocused(); - method public boolean isCheckable(); - method @Deprecated @FlaggedApi("android.view.accessibility.tri_state_checked") public boolean isChecked(); - method public boolean isClickable(); - method public boolean isContentInvalid(); - method public boolean isContextClickable(); - method public boolean isDismissable(); - method public boolean isEditable(); - method public boolean isEnabled(); - method @FlaggedApi("android.view.accessibility.a11y_is_required_api") public boolean isFieldRequired(); - method public boolean isFocusable(); - method public boolean isFocused(); - method @FlaggedApi("android.view.accessibility.granular_scrolling") public boolean isGranularScrollingSupported(); - method public boolean isHeading(); - method public boolean isImportantForAccessibility(); - method public boolean isLongClickable(); - method public boolean isMultiLine(); - method public boolean isPassword(); - method public boolean isScreenReaderFocusable(); - method public boolean isScrollable(); - method public boolean isSelected(); - method public boolean isShowingHintText(); - method public boolean isTextEntryKey(); - method public boolean isTextSelectable(); - method public boolean isVisibleToUser(); - method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View); - method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View, int); - method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(); - method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.accessibility.AccessibilityNodeInfo); - method public boolean performAction(int); - method public boolean performAction(int, android.os.Bundle); - method @Deprecated public void recycle(); - method public boolean refresh(); - method public boolean refreshWithExtraData(String, android.os.Bundle); - method @Deprecated public void removeAction(int); - method public boolean removeAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction); - method public boolean removeChild(android.view.View); - method public boolean removeChild(android.view.View, int); - method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public boolean removeLabeledBy(@NonNull android.view.View); - method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public boolean removeLabeledBy(@NonNull android.view.View, int); - method public void setAccessibilityDataSensitive(boolean); - method public void setAccessibilityFocused(boolean); - method public void setAvailableExtraData(java.util.List); - method @Deprecated public void setBoundsInParent(android.graphics.Rect); - method public void setBoundsInScreen(android.graphics.Rect); - method public void setBoundsInWindow(@NonNull android.graphics.Rect); - method public void setCanOpenPopup(boolean); - method public void setCheckable(boolean); - method @Deprecated @FlaggedApi("android.view.accessibility.tri_state_checked") public void setChecked(boolean); - method @FlaggedApi("android.view.accessibility.tri_state_checked") public void setChecked(int); - method public void setClassName(CharSequence); - method public void setClickable(boolean); - method public void setCollectionInfo(android.view.accessibility.AccessibilityNodeInfo.CollectionInfo); - method public void setCollectionItemInfo(android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo); - method public void setContainerTitle(@Nullable CharSequence); - method public void setContentDescription(CharSequence); - method public void setContentInvalid(boolean); - method public void setContextClickable(boolean); - method public void setDismissable(boolean); - method public void setDrawingOrder(int); - method public void setEditable(boolean); - method public void setEnabled(boolean); - method public void setError(CharSequence); - method @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public void setExpandedState(int); - method @FlaggedApi("android.view.accessibility.a11y_is_required_api") public void setFieldRequired(boolean); - method public void setFocusable(boolean); - method public void setFocused(boolean); - method @FlaggedApi("android.view.accessibility.granular_scrolling") public void setGranularScrollingSupported(boolean); - method public void setHeading(boolean); - method public void setHintText(CharSequence); - method public void setImportantForAccessibility(boolean); - method public void setInputType(int); - method @Deprecated @FlaggedApi("android.view.accessibility.deprecate_ani_label_for_apis") public void setLabelFor(android.view.View); - method @Deprecated @FlaggedApi("android.view.accessibility.deprecate_ani_label_for_apis") public void setLabelFor(android.view.View, int); - method @Deprecated @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public void setLabeledBy(android.view.View); - method @Deprecated @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public void setLabeledBy(android.view.View, int); - method public void setLiveRegion(int); - method public void setLongClickable(boolean); - method public void setMaxTextLength(int); - method public void setMinDurationBetweenContentChanges(@NonNull java.time.Duration); - method public void setMovementGranularities(int); - method public void setMultiLine(boolean); - method public void setPackageName(CharSequence); - method public void setPaneTitle(@Nullable CharSequence); - method public void setParent(android.view.View); - method public void setParent(android.view.View, int); - method public void setPassword(boolean); - method public void setQueryFromAppProcessEnabled(@NonNull android.view.View, boolean); - method public void setRangeInfo(android.view.accessibility.AccessibilityNodeInfo.RangeInfo); - method public void setRequestInitialAccessibilityFocus(boolean); - method public void setScreenReaderFocusable(boolean); - method public void setScrollable(boolean); - method public void setSelected(boolean); - method public void setShowingHintText(boolean); - method public void setSource(android.view.View); - method public void setSource(android.view.View, int); - method public void setStateDescription(@Nullable CharSequence); - method @FlaggedApi("android.view.accessibility.supplemental_description") public void setSupplementalDescription(@Nullable CharSequence); - method public void setText(CharSequence); - method public void setTextEntryKey(boolean); - method public void setTextSelectable(boolean); - method public void setTextSelection(int, int); - method public void setTooltipText(@Nullable CharSequence); - method public void setTouchDelegateInfo(@NonNull android.view.accessibility.AccessibilityNodeInfo.TouchDelegateInfo); - method public void setTraversalAfter(android.view.View); - method public void setTraversalAfter(android.view.View, int); - method public void setTraversalBefore(android.view.View); - method public void setTraversalBefore(android.view.View, int); - method public void setUniqueId(@Nullable String); - method public void setViewIdResourceName(String); - method public void setVisibleToUser(boolean); - method public void writeToParcel(android.os.Parcel, int); - field public static final int ACTION_ACCESSIBILITY_FOCUS = 64; // 0x40 - field public static final String ACTION_ARGUMENT_COLUMN_INT = "android.view.accessibility.action.ARGUMENT_COLUMN_INT"; - field public static final String ACTION_ARGUMENT_DIRECTION_INT = "android.view.accessibility.action.ARGUMENT_DIRECTION_INT"; - field public static final String ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN = "ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN"; - field public static final String ACTION_ARGUMENT_HTML_ELEMENT_STRING = "ACTION_ARGUMENT_HTML_ELEMENT_STRING"; - field public static final String ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT = "ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT"; - field public static final String ACTION_ARGUMENT_MOVE_WINDOW_X = "ACTION_ARGUMENT_MOVE_WINDOW_X"; - field public static final String ACTION_ARGUMENT_MOVE_WINDOW_Y = "ACTION_ARGUMENT_MOVE_WINDOW_Y"; - field public static final String ACTION_ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT = "android.view.accessibility.action.ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT"; - field public static final String ACTION_ARGUMENT_PROGRESS_VALUE = "android.view.accessibility.action.ARGUMENT_PROGRESS_VALUE"; - field public static final String ACTION_ARGUMENT_ROW_INT = "android.view.accessibility.action.ARGUMENT_ROW_INT"; - field @FlaggedApi("android.view.accessibility.granular_scrolling") public static final String ACTION_ARGUMENT_SCROLL_AMOUNT_FLOAT = "android.view.accessibility.action.ARGUMENT_SCROLL_AMOUNT_FLOAT"; - field public static final String ACTION_ARGUMENT_SELECTION_END_INT = "ACTION_ARGUMENT_SELECTION_END_INT"; - field public static final String ACTION_ARGUMENT_SELECTION_START_INT = "ACTION_ARGUMENT_SELECTION_START_INT"; - field public static final String ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE = "ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE"; - field public static final int ACTION_CLEAR_ACCESSIBILITY_FOCUS = 128; // 0x80 - field public static final int ACTION_CLEAR_FOCUS = 2; // 0x2 - field public static final int ACTION_CLEAR_SELECTION = 8; // 0x8 - field public static final int ACTION_CLICK = 16; // 0x10 - field public static final int ACTION_COLLAPSE = 524288; // 0x80000 - field public static final int ACTION_COPY = 16384; // 0x4000 - field public static final int ACTION_CUT = 65536; // 0x10000 - field public static final int ACTION_DISMISS = 1048576; // 0x100000 - field public static final int ACTION_EXPAND = 262144; // 0x40000 - field public static final int ACTION_FOCUS = 1; // 0x1 - field public static final int ACTION_LONG_CLICK = 32; // 0x20 - field public static final int ACTION_NEXT_AT_MOVEMENT_GRANULARITY = 256; // 0x100 - field public static final int ACTION_NEXT_HTML_ELEMENT = 1024; // 0x400 - field public static final int ACTION_PASTE = 32768; // 0x8000 - field public static final int ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY = 512; // 0x200 - field public static final int ACTION_PREVIOUS_HTML_ELEMENT = 2048; // 0x800 - field public static final int ACTION_SCROLL_BACKWARD = 8192; // 0x2000 - field public static final int ACTION_SCROLL_FORWARD = 4096; // 0x1000 - field public static final int ACTION_SELECT = 4; // 0x4 - field public static final int ACTION_SET_SELECTION = 131072; // 0x20000 - field public static final int ACTION_SET_TEXT = 2097152; // 0x200000 - field @FlaggedApi("android.view.accessibility.tri_state_checked") public static final int CHECKED_STATE_FALSE = 0; // 0x0 - field @FlaggedApi("android.view.accessibility.tri_state_checked") public static final int CHECKED_STATE_PARTIAL = 2; // 0x2 - field @FlaggedApi("android.view.accessibility.tri_state_checked") public static final int CHECKED_STATE_TRUE = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int EXPANDED_STATE_COLLAPSED = 1; // 0x1 - field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int EXPANDED_STATE_FULL = 3; // 0x3 - field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int EXPANDED_STATE_PARTIAL = 2; // 0x2 - field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int EXPANDED_STATE_UNDEFINED = 0; // 0x0 - field public static final String EXTRA_DATA_RENDERING_INFO_KEY = "android.view.accessibility.extra.DATA_RENDERING_INFO_KEY"; - field public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH"; - field public static final int EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_MAX_LENGTH = 20000; // 0x4e20 - field public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX"; - field @FlaggedApi("android.view.accessibility.a11y_character_in_window_api") public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_IN_WINDOW_KEY = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_IN_WINDOW_KEY"; - field public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_KEY"; - field public static final int FLAG_PREFETCH_ANCESTORS = 1; // 0x1 - field public static final int FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST = 16; // 0x10 - field public static final int FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST = 8; // 0x8 - field public static final int FLAG_PREFETCH_DESCENDANTS_HYBRID = 4; // 0x4 - field public static final int FLAG_PREFETCH_SIBLINGS = 2; // 0x2 - field public static final int FLAG_PREFETCH_UNINTERRUPTIBLE = 32; // 0x20 - field public static final int FOCUS_ACCESSIBILITY = 2; // 0x2 - field public static final int FOCUS_INPUT = 1; // 0x1 - field public static final int MAX_NUMBER_OF_PREFETCHED_NODES = 50; // 0x32 - field public static final int MOVEMENT_GRANULARITY_CHARACTER = 1; // 0x1 - field public static final int MOVEMENT_GRANULARITY_LINE = 4; // 0x4 - field public static final int MOVEMENT_GRANULARITY_PAGE = 16; // 0x10 - field public static final int MOVEMENT_GRANULARITY_PARAGRAPH = 8; // 0x8 - field public static final int MOVEMENT_GRANULARITY_WORD = 2; // 0x2 - } - - public static final class AccessibilityNodeInfo.AccessibilityAction implements android.os.Parcelable { - ctor public AccessibilityNodeInfo.AccessibilityAction(int, @Nullable CharSequence); - method public int describeContents(); - method public int getId(); - method public CharSequence getLabel(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_ACCESSIBILITY_FOCUS; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_ACCESSIBILITY_FOCUS; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_FOCUS; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_SELECTION; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLICK; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_COLLAPSE; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CONTEXT_CLICK; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_COPY; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CUT; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_DISMISS; - field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_DRAG_CANCEL; - field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_DRAG_DROP; - field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_DRAG_START; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_EXPAND; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_FOCUS; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_HIDE_TOOLTIP; - field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_IME_ENTER; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_LONG_CLICK; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_MOVE_WINDOW; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_NEXT_AT_MOVEMENT_GRANULARITY; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_NEXT_HTML_ELEMENT; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_DOWN; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_LEFT; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_RIGHT; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_UP; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PASTE; - field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PRESS_AND_HOLD; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PREVIOUS_HTML_ELEMENT; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_BACKWARD; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_DOWN; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_FORWARD; - field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_IN_DIRECTION; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_LEFT; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_RIGHT; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_TO_POSITION; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_UP; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SELECT; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SET_PROGRESS; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SET_SELECTION; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SET_TEXT; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_ON_SCREEN; - field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_TEXT_SUGGESTIONS; - field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_TOOLTIP; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class AccessibilityNodeInfo.CollectionInfo { - ctor public AccessibilityNodeInfo.CollectionInfo(int, int, boolean); - ctor public AccessibilityNodeInfo.CollectionInfo(int, int, boolean, int); - method public int getColumnCount(); - method @FlaggedApi("android.view.accessibility.collection_info_item_counts") public int getImportantForAccessibilityItemCount(); - method @FlaggedApi("android.view.accessibility.collection_info_item_counts") public int getItemCount(); - method public int getRowCount(); - method public int getSelectionMode(); - method public boolean isHierarchical(); - method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.CollectionInfo obtain(int, int, boolean); - method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.CollectionInfo obtain(int, int, boolean, int); - field public static final int SELECTION_MODE_MULTIPLE = 2; // 0x2 - field public static final int SELECTION_MODE_NONE = 0; // 0x0 - field public static final int SELECTION_MODE_SINGLE = 1; // 0x1 - field @FlaggedApi("android.view.accessibility.collection_info_item_counts") public static final int UNDEFINED = -1; // 0xffffffff - } - - @FlaggedApi("android.view.accessibility.collection_info_item_counts") public static final class AccessibilityNodeInfo.CollectionInfo.Builder { - ctor @FlaggedApi("android.view.accessibility.collection_info_item_counts") public AccessibilityNodeInfo.CollectionInfo.Builder(); - method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo build(); - method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setColumnCount(int); - method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setHierarchical(boolean); - method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setImportantForAccessibilityItemCount(int); - method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setItemCount(int); - method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setRowCount(int); - method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setSelectionMode(int); - } - - public static final class AccessibilityNodeInfo.CollectionItemInfo { - ctor public AccessibilityNodeInfo.CollectionItemInfo(int, int, int, int, boolean); - ctor public AccessibilityNodeInfo.CollectionItemInfo(int, int, int, int, boolean, boolean); - method public int getColumnIndex(); - method public int getColumnSpan(); - method @Nullable public String getColumnTitle(); - method public int getRowIndex(); - method public int getRowSpan(); - method @Nullable public String getRowTitle(); - method @Deprecated public boolean isHeading(); - method public boolean isSelected(); - method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo obtain(int, int, int, int, boolean); - method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo obtain(int, int, int, int, boolean, boolean); - } - - public static final class AccessibilityNodeInfo.CollectionItemInfo.Builder { - ctor public AccessibilityNodeInfo.CollectionItemInfo.Builder(); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo build(); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setColumnIndex(int); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setColumnSpan(int); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setColumnTitle(@Nullable String); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setHeading(boolean); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setRowIndex(int); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setRowSpan(int); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setRowTitle(@Nullable String); - method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setSelected(boolean); - } - - public static final class AccessibilityNodeInfo.ExtraRenderingInfo { - method @Nullable public android.util.Size getLayoutSize(); - method public float getTextSizeInPx(); - method public int getTextSizeUnit(); - } - - public static final class AccessibilityNodeInfo.RangeInfo { - ctor public AccessibilityNodeInfo.RangeInfo(int, float, float, float); - method public float getCurrent(); - method public float getMax(); - method public float getMin(); - method public int getType(); - method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.RangeInfo obtain(int, float, float, float); - field @FlaggedApi("android.view.accessibility.indeterminate_range_info") @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.RangeInfo INDETERMINATE; - field public static final int RANGE_TYPE_FLOAT = 1; // 0x1 - field @FlaggedApi("android.view.accessibility.indeterminate_range_info") public static final int RANGE_TYPE_INDETERMINATE = 3; // 0x3 - field public static final int RANGE_TYPE_INT = 0; // 0x0 - field public static final int RANGE_TYPE_PERCENT = 2; // 0x2 - } - - public static final class AccessibilityNodeInfo.TouchDelegateInfo implements android.os.Parcelable { - ctor public AccessibilityNodeInfo.TouchDelegateInfo(@NonNull java.util.Map); - method public int describeContents(); - method @NonNull public android.graphics.Region getRegionAt(int); - method public int getRegionCount(); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo getTargetForRegion(@NonNull android.graphics.Region); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public abstract class AccessibilityNodeProvider { - ctor public AccessibilityNodeProvider(); - method public void addExtraDataToAccessibilityNodeInfo(int, android.view.accessibility.AccessibilityNodeInfo, String, android.os.Bundle); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo createAccessibilityNodeInfo(int); - method @Nullable public java.util.List findAccessibilityNodeInfosByText(String, int); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo findFocus(int); - method public boolean performAction(int, int, @Nullable android.os.Bundle); - field public static final int HOST_VIEW_ID = -1; // 0xffffffff - } - - public class AccessibilityRecord { - ctor public AccessibilityRecord(); - ctor public AccessibilityRecord(@NonNull android.view.accessibility.AccessibilityRecord); - method public int getAddedCount(); - method @Nullable public CharSequence getBeforeText(); - method @Nullable public CharSequence getClassName(); - method @Nullable public CharSequence getContentDescription(); - method public int getCurrentItemIndex(); - method public int getDisplayId(); - method public int getFromIndex(); - method public int getItemCount(); - method public int getMaxScrollX(); - method public int getMaxScrollY(); - method @Nullable public android.os.Parcelable getParcelableData(); - method public int getRemovedCount(); - method public int getScrollDeltaX(); - method public int getScrollDeltaY(); - method public int getScrollX(); - method public int getScrollY(); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo getSource(); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo getSource(int); - method @NonNull public java.util.List getText(); - method public int getToIndex(); - method public int getWindowId(); - method public boolean isChecked(); - method public boolean isEnabled(); - method public boolean isFullScreen(); - method public boolean isPassword(); - method public boolean isScrollable(); - method @Deprecated @NonNull public static android.view.accessibility.AccessibilityRecord obtain(@NonNull android.view.accessibility.AccessibilityRecord); - method @Deprecated @NonNull public static android.view.accessibility.AccessibilityRecord obtain(); - method @Deprecated public void recycle(); - method public void setAddedCount(int); - method public void setBeforeText(@Nullable CharSequence); - method public void setChecked(boolean); - method public void setClassName(@Nullable CharSequence); - method public void setContentDescription(@Nullable CharSequence); - method public void setCurrentItemIndex(int); - method public void setEnabled(boolean); - method public void setFromIndex(int); - method public void setFullScreen(boolean); - method public void setItemCount(int); - method public void setMaxScrollX(int); - method public void setMaxScrollY(int); - method public void setParcelableData(@Nullable android.os.Parcelable); - method public void setPassword(boolean); - method public void setRemovedCount(int); - method public void setScrollDeltaX(int); - method public void setScrollDeltaY(int); - method public void setScrollX(int); - method public void setScrollY(int); - method public void setScrollable(boolean); - method public void setSource(@Nullable android.view.View); - method public void setSource(@Nullable android.view.View, int); - method public void setToIndex(int); - } - - public abstract class AccessibilityRequestPreparer { - ctor public AccessibilityRequestPreparer(android.view.View, int); - method @Nullable public android.view.View getView(); - method public abstract void onPrepareExtraData(int, String, android.os.Bundle, android.os.Message); - field public static final int REQUEST_TYPE_EXTRA_DATA = 1; // 0x1 - } - - public final class AccessibilityWindowInfo implements android.os.Parcelable { - ctor public AccessibilityWindowInfo(); - ctor public AccessibilityWindowInfo(@NonNull android.view.accessibility.AccessibilityWindowInfo); - method public int describeContents(); - method public android.view.accessibility.AccessibilityNodeInfo getAnchor(); - method public void getBoundsInScreen(android.graphics.Rect); - method public android.view.accessibility.AccessibilityWindowInfo getChild(int); - method public int getChildCount(); - method public int getDisplayId(); - method public int getId(); - method public int getLayer(); - method @NonNull public android.os.LocaleList getLocales(); - method public android.view.accessibility.AccessibilityWindowInfo getParent(); - method public void getRegionInScreen(@NonNull android.graphics.Region); - method public android.view.accessibility.AccessibilityNodeInfo getRoot(); - method @Nullable public android.view.accessibility.AccessibilityNodeInfo getRoot(int); - method @Nullable public CharSequence getTitle(); - method public long getTransitionTimeMillis(); - method public int getType(); - method public boolean isAccessibilityFocused(); - method public boolean isActive(); - method public boolean isFocused(); - method public boolean isInPictureInPictureMode(); - method public static android.view.accessibility.AccessibilityWindowInfo obtain(); - method public static android.view.accessibility.AccessibilityWindowInfo obtain(android.view.accessibility.AccessibilityWindowInfo); - method public void recycle(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_ACCESSIBILITY_OVERLAY = 4; // 0x4 - field public static final int TYPE_APPLICATION = 1; // 0x1 - field public static final int TYPE_INPUT_METHOD = 2; // 0x2 - field public static final int TYPE_MAGNIFICATION_OVERLAY = 6; // 0x6 - field public static final int TYPE_SPLIT_SCREEN_DIVIDER = 5; // 0x5 - field public static final int TYPE_SYSTEM = 3; // 0x3 - field @FlaggedApi("android.view.accessibility.enable_type_window_control") public static final int TYPE_WINDOW_CONTROL = 7; // 0x7 - } - - public class CaptioningManager { - method public void addCaptioningChangeListener(@NonNull android.view.accessibility.CaptioningManager.CaptioningChangeListener); - method public final float getFontScale(); - method @Nullable public final java.util.Locale getLocale(); - method @NonNull public android.view.accessibility.CaptioningManager.CaptionStyle getUserStyle(); - method public boolean isCallCaptioningEnabled(); - method public final boolean isEnabled(); - method public final boolean isSystemAudioCaptioningEnabled(); - method public final boolean isSystemAudioCaptioningUiEnabled(); - method public void removeCaptioningChangeListener(@NonNull android.view.accessibility.CaptioningManager.CaptioningChangeListener); - } - - public static final class CaptioningManager.CaptionStyle { - method @Nullable public android.graphics.Typeface getTypeface(); - method public boolean hasBackgroundColor(); - method public boolean hasEdgeColor(); - method public boolean hasEdgeType(); - method public boolean hasForegroundColor(); - method public boolean hasWindowColor(); - field public static final int EDGE_TYPE_DEPRESSED = 4; // 0x4 - field public static final int EDGE_TYPE_DROP_SHADOW = 2; // 0x2 - field public static final int EDGE_TYPE_NONE = 0; // 0x0 - field public static final int EDGE_TYPE_OUTLINE = 1; // 0x1 - field public static final int EDGE_TYPE_RAISED = 3; // 0x3 - field public static final int EDGE_TYPE_UNSPECIFIED = -1; // 0xffffffff - field public final int backgroundColor; - field public final int edgeColor; - field public final int edgeType; - field public final int foregroundColor; - field public final int windowColor; - } - - public abstract static class CaptioningManager.CaptioningChangeListener { - ctor public CaptioningManager.CaptioningChangeListener(); - method public void onEnabledChanged(boolean); - method public void onFontScaleChanged(float); - method public void onLocaleChanged(@Nullable java.util.Locale); - method public void onSystemAudioCaptioningChanged(boolean); - method public void onSystemAudioCaptioningUiChanged(boolean); - method public void onUserStyleChanged(@NonNull android.view.accessibility.CaptioningManager.CaptionStyle); - } - -} - -package android.view.animation { - - public class AccelerateDecelerateInterpolator extends android.view.animation.BaseInterpolator { - ctor public AccelerateDecelerateInterpolator(); - ctor public AccelerateDecelerateInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public class AccelerateInterpolator extends android.view.animation.BaseInterpolator { - ctor public AccelerateInterpolator(); - ctor public AccelerateInterpolator(float); - ctor public AccelerateInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public class AlphaAnimation extends android.view.animation.Animation { - ctor public AlphaAnimation(android.content.Context, android.util.AttributeSet); - ctor public AlphaAnimation(float, float); - } - - public abstract class Animation implements java.lang.Cloneable { - ctor public Animation(); - ctor public Animation(android.content.Context, android.util.AttributeSet); - method protected void applyTransformation(float, android.view.animation.Transformation); - method public void cancel(); - method protected android.view.animation.Animation clone() throws java.lang.CloneNotSupportedException; - method public long computeDurationHint(); - method protected void ensureInterpolator(); - method @ColorInt public int getBackdropColor(); - method @Deprecated @ColorInt public int getBackgroundColor(); - method @Deprecated public boolean getDetachWallpaper(); - method public long getDuration(); - method public boolean getFillAfter(); - method public boolean getFillBefore(); - method public android.view.animation.Interpolator getInterpolator(); - method public int getRepeatCount(); - method public int getRepeatMode(); - method protected float getScaleFactor(); - method public boolean getShowBackdrop(); - method public long getStartOffset(); - method public long getStartTime(); - method public boolean getTransformation(long, android.view.animation.Transformation); - method public boolean getTransformation(long, android.view.animation.Transformation, float); - method public int getZAdjustment(); - method public boolean hasEnded(); - method public boolean hasStarted(); - method public void initialize(int, int, int, int); - method public boolean isFillEnabled(); - method public boolean isInitialized(); - method public void reset(); - method protected float resolveSize(int, float, int, int); - method public void restrictDuration(long); - method public void scaleCurrentDuration(float); - method public void setAnimationListener(android.view.animation.Animation.AnimationListener); - method public void setBackdropColor(@ColorInt int); - method @Deprecated public void setBackgroundColor(@ColorInt int); - method @Deprecated public void setDetachWallpaper(boolean); - method public void setDuration(long); - method public void setFillAfter(boolean); - method public void setFillBefore(boolean); - method public void setFillEnabled(boolean); - method public void setInterpolator(android.content.Context, @AnimRes @InterpolatorRes int); - method public void setInterpolator(android.view.animation.Interpolator); - method public void setRepeatCount(int); - method public void setRepeatMode(int); - method public void setShowBackdrop(boolean); - method public void setStartOffset(long); - method public void setStartTime(long); - method public void setZAdjustment(int); - method public void start(); - method public void startNow(); - method public boolean willChangeBounds(); - method public boolean willChangeTransformationMatrix(); - field public static final int ABSOLUTE = 0; // 0x0 - field public static final int INFINITE = -1; // 0xffffffff - field public static final int RELATIVE_TO_PARENT = 2; // 0x2 - field public static final int RELATIVE_TO_SELF = 1; // 0x1 - field public static final int RESTART = 1; // 0x1 - field public static final int REVERSE = 2; // 0x2 - field public static final int START_ON_FIRST_FRAME = -1; // 0xffffffff - field public static final int ZORDER_BOTTOM = -1; // 0xffffffff - field public static final int ZORDER_NORMAL = 0; // 0x0 - field public static final int ZORDER_TOP = 1; // 0x1 - } - - public static interface Animation.AnimationListener { - method public void onAnimationEnd(android.view.animation.Animation); - method public void onAnimationRepeat(android.view.animation.Animation); - method public void onAnimationStart(android.view.animation.Animation); - } - - protected static class Animation.Description { - ctor protected Animation.Description(); - field public int type; - field public float value; - } - - public class AnimationSet extends android.view.animation.Animation { - ctor public AnimationSet(android.content.Context, android.util.AttributeSet); - ctor public AnimationSet(boolean); - method public void addAnimation(android.view.animation.Animation); - method protected android.view.animation.AnimationSet clone() throws java.lang.CloneNotSupportedException; - method public java.util.List getAnimations(); - } - - public class AnimationUtils { - ctor public AnimationUtils(); - method public static long currentAnimationTimeMillis(); - method @FlaggedApi("android.view.flags.expected_presentation_time_read_only") public static long getExpectedPresentationTimeMillis(); - method @FlaggedApi("android.view.flags.expected_presentation_time_read_only") public static long getExpectedPresentationTimeNanos(); - method public static android.view.animation.Animation loadAnimation(android.content.Context, @AnimRes int) throws android.content.res.Resources.NotFoundException; - method public static android.view.animation.Interpolator loadInterpolator(android.content.Context, @AnimRes @InterpolatorRes int) throws android.content.res.Resources.NotFoundException; - method public static android.view.animation.LayoutAnimationController loadLayoutAnimation(android.content.Context, @AnimRes int) throws android.content.res.Resources.NotFoundException; - method public static android.view.animation.Animation makeInAnimation(android.content.Context, boolean); - method public static android.view.animation.Animation makeInChildBottomAnimation(android.content.Context); - method public static android.view.animation.Animation makeOutAnimation(android.content.Context, boolean); - } - - public class AnticipateInterpolator extends android.view.animation.BaseInterpolator { - ctor public AnticipateInterpolator(); - ctor public AnticipateInterpolator(float); - ctor public AnticipateInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public class AnticipateOvershootInterpolator extends android.view.animation.BaseInterpolator { - ctor public AnticipateOvershootInterpolator(); - ctor public AnticipateOvershootInterpolator(float); - ctor public AnticipateOvershootInterpolator(float, float); - ctor public AnticipateOvershootInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public abstract class BaseInterpolator implements android.view.animation.Interpolator { - ctor public BaseInterpolator(); - } - - public class BounceInterpolator extends android.view.animation.BaseInterpolator { - ctor public BounceInterpolator(); - ctor public BounceInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public class CycleInterpolator extends android.view.animation.BaseInterpolator { - ctor public CycleInterpolator(float); - ctor public CycleInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public class DecelerateInterpolator extends android.view.animation.BaseInterpolator { - ctor public DecelerateInterpolator(); - ctor public DecelerateInterpolator(float); - ctor public DecelerateInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public class GridLayoutAnimationController extends android.view.animation.LayoutAnimationController { - ctor public GridLayoutAnimationController(android.content.Context, android.util.AttributeSet); - ctor public GridLayoutAnimationController(android.view.animation.Animation); - ctor public GridLayoutAnimationController(android.view.animation.Animation, float, float); - method public float getColumnDelay(); - method public int getDirection(); - method public int getDirectionPriority(); - method public float getRowDelay(); - method public void setColumnDelay(float); - method public void setDirection(int); - method public void setDirectionPriority(int); - method public void setRowDelay(float); - field public static final int DIRECTION_BOTTOM_TO_TOP = 2; // 0x2 - field public static final int DIRECTION_HORIZONTAL_MASK = 1; // 0x1 - field public static final int DIRECTION_LEFT_TO_RIGHT = 0; // 0x0 - field public static final int DIRECTION_RIGHT_TO_LEFT = 1; // 0x1 - field public static final int DIRECTION_TOP_TO_BOTTOM = 0; // 0x0 - field public static final int DIRECTION_VERTICAL_MASK = 2; // 0x2 - field public static final int PRIORITY_COLUMN = 1; // 0x1 - field public static final int PRIORITY_NONE = 0; // 0x0 - field public static final int PRIORITY_ROW = 2; // 0x2 - } - - public static class GridLayoutAnimationController.AnimationParameters extends android.view.animation.LayoutAnimationController.AnimationParameters { - ctor public GridLayoutAnimationController.AnimationParameters(); - field public int column; - field public int columnsCount; - field public int row; - field public int rowsCount; - } - - public interface Interpolator extends android.animation.TimeInterpolator { - } - - public class LayoutAnimationController { - ctor public LayoutAnimationController(android.content.Context, android.util.AttributeSet); - ctor public LayoutAnimationController(android.view.animation.Animation); - ctor public LayoutAnimationController(android.view.animation.Animation, float); - method public android.view.animation.Animation getAnimation(); - method public final android.view.animation.Animation getAnimationForView(android.view.View); - method public float getDelay(); - method protected long getDelayForView(android.view.View); - method public android.view.animation.Interpolator getInterpolator(); - method public int getOrder(); - method protected int getTransformedIndex(android.view.animation.LayoutAnimationController.AnimationParameters); - method public boolean isDone(); - method public void setAnimation(android.content.Context, @AnimRes int); - method public void setAnimation(android.view.animation.Animation); - method public void setDelay(float); - method public void setInterpolator(android.content.Context, @InterpolatorRes int); - method public void setInterpolator(android.view.animation.Interpolator); - method public void setOrder(int); - method public void start(); - method public boolean willOverlap(); - field public static final int ORDER_NORMAL = 0; // 0x0 - field public static final int ORDER_RANDOM = 2; // 0x2 - field public static final int ORDER_REVERSE = 1; // 0x1 - field protected android.view.animation.Animation mAnimation; - field protected android.view.animation.Interpolator mInterpolator; - field protected java.util.Random mRandomizer; - } - - public static class LayoutAnimationController.AnimationParameters { - ctor public LayoutAnimationController.AnimationParameters(); - field public int count; - field public int index; - } - - public class LinearInterpolator extends android.view.animation.BaseInterpolator { - ctor public LinearInterpolator(); - ctor public LinearInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public class OvershootInterpolator extends android.view.animation.BaseInterpolator { - ctor public OvershootInterpolator(); - ctor public OvershootInterpolator(float); - ctor public OvershootInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public class PathInterpolator extends android.view.animation.BaseInterpolator { - ctor public PathInterpolator(@NonNull android.graphics.Path); - ctor public PathInterpolator(float, float); - ctor public PathInterpolator(float, float, float, float); - ctor public PathInterpolator(android.content.Context, android.util.AttributeSet); - method public float getInterpolation(float); - } - - public class RotateAnimation extends android.view.animation.Animation { - ctor public RotateAnimation(android.content.Context, android.util.AttributeSet); - ctor public RotateAnimation(float, float); - ctor public RotateAnimation(float, float, float, float); - ctor public RotateAnimation(float, float, int, float, int, float); - } - - public class ScaleAnimation extends android.view.animation.Animation { - ctor public ScaleAnimation(android.content.Context, android.util.AttributeSet); - ctor public ScaleAnimation(float, float, float, float); - ctor public ScaleAnimation(float, float, float, float, float, float); - ctor public ScaleAnimation(float, float, float, float, int, float, int, float); - } - - public class Transformation { - ctor public Transformation(); - method public void clear(); - method public void compose(android.view.animation.Transformation); - method public float getAlpha(); - method public android.graphics.Matrix getMatrix(); - method public int getTransformationType(); - method public void set(android.view.animation.Transformation); - method public void setAlpha(@FloatRange(from=0.0, to=1.0) float); - method public void setTransformationType(int); - method public String toShortString(); - field public static final int TYPE_ALPHA = 1; // 0x1 - field public static final int TYPE_BOTH = 3; // 0x3 - field public static final int TYPE_IDENTITY = 0; // 0x0 - field public static final int TYPE_MATRIX = 2; // 0x2 - field protected float mAlpha; - field protected android.graphics.Matrix mMatrix; - field protected int mTransformationType; - } - - public class TranslateAnimation extends android.view.animation.Animation { - ctor public TranslateAnimation(android.content.Context, android.util.AttributeSet); - ctor public TranslateAnimation(float, float, float, float); - ctor public TranslateAnimation(int, float, int, float, int, float, int, float); - } - -} - -package android.view.autofill { - - public final class AutofillId implements android.os.Parcelable { - method @NonNull public static android.view.autofill.AutofillId create(@NonNull android.view.View, int); - method public int describeContents(); - method @FlaggedApi("android.service.autofill.autofill_w_metrics") public int getAutofillVirtualId(); - method @FlaggedApi("android.service.autofill.autofill_w_metrics") public int getSessionId(); - method @FlaggedApi("android.service.autofill.autofill_w_metrics") public int getViewId(); - method @FlaggedApi("android.service.autofill.autofill_w_metrics") public boolean isInAutofillSession(); - method @FlaggedApi("android.service.autofill.autofill_w_metrics") public boolean isVirtual(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class AutofillManager { - method public void cancel(); - method public void commit(); - method public void disableAutofillServices(); - method @Nullable public android.content.ComponentName getAutofillServiceComponentName(); - method @NonNull public java.util.List getAvailableFieldClassificationAlgorithms(); - method @Nullable public String getDefaultFieldClassificationAlgorithm(); - method @Nullable public android.view.autofill.AutofillId getNextAutofillId(); - method @Nullable public android.service.autofill.UserData getUserData(); - method @Nullable public String getUserDataId(); - method public boolean hasEnabledAutofillServices(); - method public boolean isAutofillSupported(); - method public boolean isEnabled(); - method public boolean isFieldClassificationEnabled(); - method public void notifyValueChanged(android.view.View); - method public void notifyValueChanged(android.view.View, int, android.view.autofill.AutofillValue); - method public void notifyViewClicked(@NonNull android.view.View); - method public void notifyViewClicked(@NonNull android.view.View, int); - method public void notifyViewEntered(@NonNull android.view.View); - method public void notifyViewEntered(@NonNull android.view.View, int, @NonNull android.graphics.Rect); - method public void notifyViewExited(@NonNull android.view.View); - method public void notifyViewExited(@NonNull android.view.View, int); - method public void notifyViewVisibilityChanged(@NonNull android.view.View, boolean); - method public void notifyViewVisibilityChanged(@NonNull android.view.View, int, boolean); - method @Deprecated @FlaggedApi("android.service.autofill.fill_dialog_improvements") public void notifyVirtualViewsReady(@NonNull android.view.View, @NonNull android.util.SparseArray); - method public void registerCallback(@Nullable android.view.autofill.AutofillManager.AutofillCallback); - method public void requestAutofill(@NonNull android.view.View); - method public void requestAutofill(@NonNull android.view.View, int, @NonNull android.graphics.Rect); - method public void setUserData(@Nullable android.service.autofill.UserData); - method @Deprecated @FlaggedApi("android.service.autofill.fill_dialog_improvements") public boolean showAutofillDialog(@NonNull android.view.View); - method @Deprecated @FlaggedApi("android.service.autofill.fill_dialog_improvements") public boolean showAutofillDialog(@NonNull android.view.View, int); - method public void unregisterCallback(@Nullable android.view.autofill.AutofillManager.AutofillCallback); - field public static final String EXTRA_ASSIST_STRUCTURE = "android.view.autofill.extra.ASSIST_STRUCTURE"; - field public static final String EXTRA_AUTHENTICATION_RESULT = "android.view.autofill.extra.AUTHENTICATION_RESULT"; - field public static final String EXTRA_AUTHENTICATION_RESULT_EPHEMERAL_DATASET = "android.view.autofill.extra.AUTHENTICATION_RESULT_EPHEMERAL_DATASET"; - field public static final String EXTRA_CLIENT_STATE = "android.view.autofill.extra.CLIENT_STATE"; - field public static final String EXTRA_INLINE_SUGGESTIONS_REQUEST = "android.view.autofill.extra.INLINE_SUGGESTIONS_REQUEST"; - } - - public abstract static class AutofillManager.AutofillCallback { - ctor public AutofillManager.AutofillCallback(); - method public void onAutofillEvent(@NonNull android.view.View, int); - method public void onAutofillEvent(@NonNull android.view.View, int, int); - field public static final int EVENT_INPUT_HIDDEN = 2; // 0x2 - field public static final int EVENT_INPUT_SHOWN = 1; // 0x1 - field public static final int EVENT_INPUT_UNAVAILABLE = 3; // 0x3 - } - - public final class AutofillValue implements android.os.Parcelable { - method public int describeContents(); - method public static android.view.autofill.AutofillValue forDate(long); - method public static android.view.autofill.AutofillValue forList(int); - method public static android.view.autofill.AutofillValue forText(@Nullable CharSequence); - method public static android.view.autofill.AutofillValue forToggle(boolean); - method public long getDateValue(); - method public int getListValue(); - method @NonNull public CharSequence getTextValue(); - method public boolean getToggleValue(); - method public boolean isDate(); - method public boolean isList(); - method public boolean isText(); - method public boolean isToggle(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class VirtualViewFillInfo { - method @Nullable public String[] getAutofillHints(); - } - - public static final class VirtualViewFillInfo.Builder { - ctor public VirtualViewFillInfo.Builder(); - method @NonNull public android.view.autofill.VirtualViewFillInfo build(); - method @NonNull public android.view.autofill.VirtualViewFillInfo.Builder setAutofillHints(@NonNull java.lang.String...); - } - -} - -package android.view.contentcapture { - - public final class ContentCaptureCondition implements android.os.Parcelable { - ctor public ContentCaptureCondition(@NonNull android.content.LocusId, int); - method public int describeContents(); - method public int getFlags(); - method @NonNull public android.content.LocusId getLocusId(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_IS_REGEX = 2; // 0x2 - } - - public final class ContentCaptureContext implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public static android.view.contentcapture.ContentCaptureContext forLocusId(@NonNull String); - method @Nullable public android.os.Bundle getExtras(); - method @Nullable public android.content.LocusId getLocusId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class ContentCaptureContext.Builder { - ctor public ContentCaptureContext.Builder(@NonNull android.content.LocusId); - method @NonNull public android.view.contentcapture.ContentCaptureContext build(); - method @NonNull public android.view.contentcapture.ContentCaptureContext.Builder setExtras(@NonNull android.os.Bundle); - } - - public final class ContentCaptureManager { - method @Nullable public java.util.Set getContentCaptureConditions(); - method @Nullable public android.content.ComponentName getServiceComponentName(); - method public boolean isContentCaptureEnabled(); - method public void removeData(@NonNull android.view.contentcapture.DataRemovalRequest); - method public void setContentCaptureEnabled(boolean); - method public void shareData(@NonNull android.view.contentcapture.DataShareRequest, @NonNull java.util.concurrent.Executor, @NonNull android.view.contentcapture.DataShareWriteAdapter); - field public static final int DATA_SHARE_ERROR_CONCURRENT_REQUEST = 2; // 0x2 - field public static final int DATA_SHARE_ERROR_TIMEOUT_INTERRUPTED = 3; // 0x3 - field public static final int DATA_SHARE_ERROR_UNKNOWN = 1; // 0x1 - } - - public abstract class ContentCaptureSession implements java.lang.AutoCloseable { - method public void close(); - method @NonNull public final android.view.contentcapture.ContentCaptureSession createContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureContext); - method public final void destroy(); - method @Nullable public final android.view.contentcapture.ContentCaptureContext getContentCaptureContext(); - method @NonNull public final android.view.contentcapture.ContentCaptureSessionId getContentCaptureSessionId(); - method @NonNull public android.view.autofill.AutofillId newAutofillId(@NonNull android.view.autofill.AutofillId, long); - method @NonNull public final android.view.ViewStructure newViewStructure(@NonNull android.view.View); - method @NonNull public final android.view.ViewStructure newVirtualViewStructure(@NonNull android.view.autofill.AutofillId, long); - method public final void notifySessionPaused(); - method public final void notifySessionResumed(); - method public final void notifyViewAppeared(@NonNull android.view.ViewStructure); - method public final void notifyViewDisappeared(@NonNull android.view.autofill.AutofillId); - method public final void notifyViewInsetsChanged(@NonNull android.graphics.Insets); - method public final void notifyViewTextChanged(@NonNull android.view.autofill.AutofillId, @Nullable CharSequence); - method public final void notifyViewsAppeared(@NonNull java.util.List); - method public final void notifyViewsDisappeared(@NonNull android.view.autofill.AutofillId, @NonNull long[]); - method public final void setContentCaptureContext(@Nullable android.view.contentcapture.ContentCaptureContext); - } - - public final class ContentCaptureSessionId implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class DataRemovalRequest implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getLocusIdRequests(); - method @NonNull public String getPackageName(); - method public boolean isForEverything(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_IS_PREFIX = 1; // 0x1 - } - - public static final class DataRemovalRequest.Builder { - ctor public DataRemovalRequest.Builder(); - method @NonNull public android.view.contentcapture.DataRemovalRequest.Builder addLocusId(@NonNull android.content.LocusId, int); - method @NonNull public android.view.contentcapture.DataRemovalRequest build(); - method @NonNull public android.view.contentcapture.DataRemovalRequest.Builder forEverything(); - } - - public final class DataRemovalRequest.LocusIdRequest { - method @NonNull public int getFlags(); - method @NonNull public android.content.LocusId getLocusId(); - } - - public final class DataShareRequest implements android.os.Parcelable { - ctor public DataShareRequest(@Nullable android.content.LocusId, @NonNull String); - method public int describeContents(); - method @Nullable public android.content.LocusId getLocusId(); - method @NonNull public String getMimeType(); - method @NonNull public String getPackageName(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface DataShareWriteAdapter { - method public default void onError(int); - method public void onRejected(); - method public void onWrite(@NonNull android.os.ParcelFileDescriptor); - } - -} - -package android.view.displayhash { - - public final class DisplayHash implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class DisplayHashManager { - method @NonNull public java.util.Set getSupportedHashAlgorithms(); - method @Nullable public android.view.displayhash.VerifiedDisplayHash verifyDisplayHash(@NonNull android.view.displayhash.DisplayHash); - } - - public interface DisplayHashResultCallback { - method public void onDisplayHashError(int); - method public void onDisplayHashResult(@NonNull android.view.displayhash.DisplayHash); - field public static final int DISPLAY_HASH_ERROR_INVALID_BOUNDS = -2; // 0xfffffffe - field public static final int DISPLAY_HASH_ERROR_INVALID_HASH_ALGORITHM = -5; // 0xfffffffb - field public static final int DISPLAY_HASH_ERROR_MISSING_WINDOW = -3; // 0xfffffffd - field public static final int DISPLAY_HASH_ERROR_NOT_VISIBLE_ON_SCREEN = -4; // 0xfffffffc - field public static final int DISPLAY_HASH_ERROR_TOO_MANY_REQUESTS = -6; // 0xfffffffa - field public static final int DISPLAY_HASH_ERROR_UNKNOWN = -1; // 0xffffffff - } - - public final class VerifiedDisplayHash implements android.os.Parcelable { - ctor public VerifiedDisplayHash(long, @NonNull android.graphics.Rect, @NonNull String, @NonNull byte[]); - method public int describeContents(); - method @NonNull public android.graphics.Rect getBoundsInWindow(); - method @NonNull public String getHashAlgorithm(); - method @NonNull public byte[] getImageHash(); - method public long getTimeMillis(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package android.view.inputmethod { - - public class BaseInputConnection implements android.view.inputmethod.InputConnection { - ctor public BaseInputConnection(@NonNull android.view.View, boolean); - method public boolean beginBatchEdit(); - method public boolean clearMetaKeyStates(int); - method @CallSuper public void closeConnection(); - method public boolean commitCompletion(android.view.inputmethod.CompletionInfo); - method public boolean commitContent(android.view.inputmethod.InputContentInfo, int, android.os.Bundle); - method public boolean commitCorrection(android.view.inputmethod.CorrectionInfo); - method public boolean commitText(CharSequence, int); - method public boolean deleteSurroundingText(int, int); - method public boolean deleteSurroundingTextInCodePoints(int, int); - method public boolean endBatchEdit(); - method public boolean finishComposingText(); - method public static int getComposingSpanEnd(@NonNull android.text.Spannable); - method public static int getComposingSpanStart(@NonNull android.text.Spannable); - method public int getCursorCapsMode(int); - method @Nullable public android.text.Editable getEditable(); - method @Nullable public android.view.inputmethod.ExtractedText getExtractedText(android.view.inputmethod.ExtractedTextRequest, int); - method @Nullable public android.os.Handler getHandler(); - method @Nullable public CharSequence getSelectedText(int); - method @Nullable public android.view.inputmethod.SurroundingText getSurroundingText(@IntRange(from=0) int, @IntRange(from=0) int, int); - method @Nullable public CharSequence getTextAfterCursor(@IntRange(from=0) int, int); - method @Nullable public CharSequence getTextBeforeCursor(@IntRange(from=0) int, int); - method public boolean performContextMenuAction(int); - method public boolean performEditorAction(int); - method public boolean performPrivateCommand(String, android.os.Bundle); - method public static final void removeComposingSpans(@NonNull android.text.Spannable); - method public boolean replaceText(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); - method public boolean reportFullscreenMode(boolean); - method public boolean requestCursorUpdates(int); - method public boolean sendKeyEvent(android.view.KeyEvent); - method public boolean setComposingRegion(int, int); - method public static void setComposingSpans(@NonNull android.text.Spannable); - method public boolean setComposingText(CharSequence, int); - method public boolean setSelection(int, int); - method @Nullable public android.view.inputmethod.TextSnapshot takeSnapshot(); - } - - public final class CompletionInfo implements android.os.Parcelable { - ctor public CompletionInfo(long, int, CharSequence); - ctor public CompletionInfo(long, int, CharSequence, CharSequence); - method public int describeContents(); - method public long getId(); - method public CharSequence getLabel(); - method public int getPosition(); - method public CharSequence getText(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public interface ConnectionlessHandwritingCallback { - method public void onError(int); - method public void onResult(@NonNull CharSequence); - field public static final int CONNECTIONLESS_HANDWRITING_ERROR_NO_TEXT_RECOGNIZED = 0; // 0x0 - field public static final int CONNECTIONLESS_HANDWRITING_ERROR_OTHER = 2; // 0x2 - field public static final int CONNECTIONLESS_HANDWRITING_ERROR_UNSUPPORTED = 1; // 0x1 - } - - public final class CorrectionInfo implements android.os.Parcelable { - ctor public CorrectionInfo(int, CharSequence, CharSequence); - method public int describeContents(); - method public CharSequence getNewText(); - method public int getOffset(); - method public CharSequence getOldText(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class CursorAnchorInfo implements android.os.Parcelable { - ctor public CursorAnchorInfo(android.os.Parcel); - method public int describeContents(); - method public android.graphics.RectF getCharacterBounds(int); - method public int getCharacterBoundsFlags(int); - method public CharSequence getComposingText(); - method public int getComposingTextStart(); - method @Nullable public android.view.inputmethod.EditorBoundsInfo getEditorBoundsInfo(); - method public float getInsertionMarkerBaseline(); - method public float getInsertionMarkerBottom(); - method public int getInsertionMarkerFlags(); - method public float getInsertionMarkerHorizontal(); - method public float getInsertionMarkerTop(); - method public android.graphics.Matrix getMatrix(); - method public int getSelectionEnd(); - method public int getSelectionStart(); - method @Nullable public android.view.inputmethod.TextAppearanceInfo getTextAppearanceInfo(); - method @NonNull public java.util.List getVisibleLineBounds(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_HAS_INVISIBLE_REGION = 2; // 0x2 - field public static final int FLAG_HAS_VISIBLE_REGION = 1; // 0x1 - field public static final int FLAG_IS_RTL = 4; // 0x4 - } - - public static final class CursorAnchorInfo.Builder { - ctor public CursorAnchorInfo.Builder(); - method public android.view.inputmethod.CursorAnchorInfo.Builder addCharacterBounds(int, float, float, float, float, int); - method @NonNull public android.view.inputmethod.CursorAnchorInfo.Builder addVisibleLineBounds(float, float, float, float); - method public android.view.inputmethod.CursorAnchorInfo build(); - method @NonNull public android.view.inputmethod.CursorAnchorInfo.Builder clearVisibleLineBounds(); - method public void reset(); - method public android.view.inputmethod.CursorAnchorInfo.Builder setComposingText(int, CharSequence); - method @NonNull public android.view.inputmethod.CursorAnchorInfo.Builder setEditorBoundsInfo(@Nullable android.view.inputmethod.EditorBoundsInfo); - method public android.view.inputmethod.CursorAnchorInfo.Builder setInsertionMarkerLocation(float, float, float, float, int); - method public android.view.inputmethod.CursorAnchorInfo.Builder setMatrix(android.graphics.Matrix); - method public android.view.inputmethod.CursorAnchorInfo.Builder setSelectionRange(int, int); - method @NonNull public android.view.inputmethod.CursorAnchorInfo.Builder setTextAppearanceInfo(@Nullable android.view.inputmethod.TextAppearanceInfo); - } - - public final class DeleteGesture extends android.view.inputmethod.PreviewableHandwritingGesture implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.graphics.RectF getDeletionArea(); - method public int getGranularity(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class DeleteGesture.Builder { - ctor public DeleteGesture.Builder(); - method @NonNull public android.view.inputmethod.DeleteGesture build(); - method @NonNull public android.view.inputmethod.DeleteGesture.Builder setDeletionArea(@NonNull android.graphics.RectF); - method @NonNull public android.view.inputmethod.DeleteGesture.Builder setFallbackText(@Nullable String); - method @NonNull public android.view.inputmethod.DeleteGesture.Builder setGranularity(int); - } - - public final class DeleteRangeGesture extends android.view.inputmethod.PreviewableHandwritingGesture implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.graphics.RectF getDeletionEndArea(); - method @NonNull public android.graphics.RectF getDeletionStartArea(); - method public int getGranularity(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class DeleteRangeGesture.Builder { - ctor public DeleteRangeGesture.Builder(); - method @NonNull public android.view.inputmethod.DeleteRangeGesture build(); - method @NonNull public android.view.inputmethod.DeleteRangeGesture.Builder setDeletionEndArea(@NonNull android.graphics.RectF); - method @NonNull public android.view.inputmethod.DeleteRangeGesture.Builder setDeletionStartArea(@NonNull android.graphics.RectF); - method @NonNull public android.view.inputmethod.DeleteRangeGesture.Builder setFallbackText(@Nullable String); - method @NonNull public android.view.inputmethod.DeleteRangeGesture.Builder setGranularity(int); - } - - public final class EditorBoundsInfo implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.graphics.RectF getEditorBounds(); - method @Nullable public android.graphics.RectF getHandwritingBounds(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class EditorBoundsInfo.Builder { - ctor public EditorBoundsInfo.Builder(); - method @NonNull public android.view.inputmethod.EditorBoundsInfo build(); - method @NonNull public android.view.inputmethod.EditorBoundsInfo.Builder setEditorBounds(@Nullable android.graphics.RectF); - method @NonNull public android.view.inputmethod.EditorBoundsInfo.Builder setHandwritingBounds(@Nullable android.graphics.RectF); - } - - public class EditorInfo implements android.text.InputType android.os.Parcelable { - ctor public EditorInfo(); - method public int describeContents(); - method public void dump(android.util.Printer, String); - method @FlaggedApi("android.view.inputmethod.public_autofill_id_in_editorinfo") @Nullable public android.view.autofill.AutofillId getAutofillId(); - method @Nullable public CharSequence getInitialSelectedText(int); - method @Nullable public android.view.inputmethod.SurroundingText getInitialSurroundingText(@IntRange(from=0) int, @IntRange(from=0) int, int); - method @Nullable public CharSequence getInitialTextAfterCursor(@IntRange(from=0) int, int); - method @Nullable public CharSequence getInitialTextBeforeCursor(@IntRange(from=0) int, int); - method public int getInitialToolType(); - method @NonNull public java.util.Set> getSupportedHandwritingGesturePreviews(); - method @NonNull public java.util.List> getSupportedHandwritingGestures(); - method @FlaggedApi("android.view.inputmethod.editorinfo_handwriting_enabled") public boolean isStylusHandwritingEnabled(); - method @FlaggedApi("android.view.inputmethod.writing_tools") public boolean isWritingToolsEnabled(); - method public final void makeCompatible(int); - method @FlaggedApi("android.view.inputmethod.public_autofill_id_in_editorinfo") public void setAutofillId(@Nullable android.view.autofill.AutofillId); - method public void setInitialSurroundingSubText(@NonNull CharSequence, int); - method public void setInitialSurroundingText(@NonNull CharSequence); - method public void setInitialToolType(int); - method @FlaggedApi("android.view.inputmethod.editorinfo_handwriting_enabled") public void setStylusHandwritingEnabled(boolean); - method public void setSupportedHandwritingGesturePreviews(@NonNull java.util.Set>); - method public void setSupportedHandwritingGestures(@NonNull java.util.List>); - method @FlaggedApi("android.view.inputmethod.writing_tools") public void setWritingToolsEnabled(boolean); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int IME_ACTION_DONE = 6; // 0x6 - field public static final int IME_ACTION_GO = 2; // 0x2 - field public static final int IME_ACTION_NEXT = 5; // 0x5 - field public static final int IME_ACTION_NONE = 1; // 0x1 - field public static final int IME_ACTION_PREVIOUS = 7; // 0x7 - field public static final int IME_ACTION_SEARCH = 3; // 0x3 - field public static final int IME_ACTION_SEND = 4; // 0x4 - field public static final int IME_ACTION_UNSPECIFIED = 0; // 0x0 - field public static final int IME_FLAG_FORCE_ASCII = -2147483648; // 0x80000000 - field public static final int IME_FLAG_NAVIGATE_NEXT = 134217728; // 0x8000000 - field public static final int IME_FLAG_NAVIGATE_PREVIOUS = 67108864; // 0x4000000 - field public static final int IME_FLAG_NO_ACCESSORY_ACTION = 536870912; // 0x20000000 - field public static final int IME_FLAG_NO_ENTER_ACTION = 1073741824; // 0x40000000 - field public static final int IME_FLAG_NO_EXTRACT_UI = 268435456; // 0x10000000 - field public static final int IME_FLAG_NO_FULLSCREEN = 33554432; // 0x2000000 - field public static final int IME_FLAG_NO_PERSONALIZED_LEARNING = 16777216; // 0x1000000 - field public static final int IME_MASK_ACTION = 255; // 0xff - field public static final int IME_NULL = 0; // 0x0 - field public int actionId; - field public CharSequence actionLabel; - field @Nullable public String[] contentMimeTypes; - field public android.os.Bundle extras; - field public int fieldId; - field public String fieldName; - field @Nullable public android.os.LocaleList hintLocales; - field public CharSequence hintText; - field public int imeOptions; - field public int initialCapsMode; - field public int initialSelEnd; - field public int initialSelStart; - field public int inputType; - field public CharSequence label; - field public String packageName; - field public String privateImeOptions; - } - - public class ExtractedText implements android.os.Parcelable { - ctor public ExtractedText(); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_SELECTING = 2; // 0x2 - field public static final int FLAG_SINGLE_LINE = 1; // 0x1 - field public int flags; - field public CharSequence hint; - field public int partialEndOffset; - field public int partialStartOffset; - field public int selectionEnd; - field public int selectionStart; - field public int startOffset; - field public CharSequence text; - } - - public class ExtractedTextRequest implements android.os.Parcelable { - ctor public ExtractedTextRequest(); - method public int describeContents(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public int flags; - field public int hintMaxChars; - field public int hintMaxLines; - field public int token; - } - - public abstract class HandwritingGesture { - method @Nullable public final String getFallbackText(); - field public static final int GRANULARITY_CHARACTER = 2; // 0x2 - field public static final int GRANULARITY_WORD = 1; // 0x1 - } - - public final class InlineSuggestion implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.view.inputmethod.InlineSuggestionInfo getInfo(); - method public void inflate(@NonNull android.content.Context, @NonNull android.util.Size, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class InlineSuggestionInfo implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String[] getAutofillHints(); - method @NonNull public android.widget.inline.InlinePresentationSpec getInlinePresentationSpec(); - method @NonNull public String getSource(); - method @NonNull public String getType(); - method public boolean isPinned(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String SOURCE_AUTOFILL = "android:autofill"; - field public static final String SOURCE_PLATFORM = "android:platform"; - field public static final String TYPE_ACTION = "android:autofill:action"; - field public static final String TYPE_SUGGESTION = "android:autofill:suggestion"; - } - - public final class InlineSuggestionsRequest implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.os.Bundle getExtras(); - method @NonNull public String getHostPackageName(); - method @NonNull public java.util.List getInlinePresentationSpecs(); - method @Nullable public android.widget.inline.InlinePresentationSpec getInlineTooltipPresentationSpec(); - method public int getMaxSuggestionCount(); - method @NonNull public android.os.LocaleList getSupportedLocales(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int SUGGESTION_COUNT_UNLIMITED = 2147483647; // 0x7fffffff - } - - public static final class InlineSuggestionsRequest.Builder { - ctor public InlineSuggestionsRequest.Builder(@NonNull java.util.List); - method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder addInlinePresentationSpecs(@NonNull android.widget.inline.InlinePresentationSpec); - method @NonNull public android.view.inputmethod.InlineSuggestionsRequest build(); - method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setExtras(@NonNull android.os.Bundle); - method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setInlinePresentationSpecs(@NonNull java.util.List); - method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setInlineTooltipPresentationSpec(@NonNull android.widget.inline.InlinePresentationSpec); - method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setMaxSuggestionCount(int); - method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setSupportedLocales(@NonNull android.os.LocaleList); - } - - public final class InlineSuggestionsResponse implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public java.util.List getInlineSuggestions(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class InputBinding implements android.os.Parcelable { - ctor public InputBinding(android.view.inputmethod.InputConnection, android.os.IBinder, int, int); - ctor public InputBinding(android.view.inputmethod.InputConnection, android.view.inputmethod.InputBinding); - method public int describeContents(); - method public android.view.inputmethod.InputConnection getConnection(); - method public android.os.IBinder getConnectionToken(); - method public int getPid(); - method public int getUid(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface InputConnection { - method public boolean beginBatchEdit(); - method public boolean clearMetaKeyStates(int); - method public void closeConnection(); - method public boolean commitCompletion(android.view.inputmethod.CompletionInfo); - method public boolean commitContent(@NonNull android.view.inputmethod.InputContentInfo, int, @Nullable android.os.Bundle); - method public boolean commitCorrection(android.view.inputmethod.CorrectionInfo); - method public boolean commitText(CharSequence, int); - method public default boolean commitText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); - method public boolean deleteSurroundingText(int, int); - method public boolean deleteSurroundingTextInCodePoints(int, int); - method public boolean endBatchEdit(); - method public boolean finishComposingText(); - method public int getCursorCapsMode(int); - method public android.view.inputmethod.ExtractedText getExtractedText(android.view.inputmethod.ExtractedTextRequest, int); - method @Nullable public android.os.Handler getHandler(); - method public CharSequence getSelectedText(int); - method @Nullable public default android.view.inputmethod.SurroundingText getSurroundingText(@IntRange(from=0) int, @IntRange(from=0) int, int); - method @Nullable public CharSequence getTextAfterCursor(@IntRange(from=0) int, int); - method @Nullable public CharSequence getTextBeforeCursor(@IntRange(from=0) int, int); - method public boolean performContextMenuAction(int); - method public boolean performEditorAction(int); - method public default void performHandwritingGesture(@NonNull android.view.inputmethod.HandwritingGesture, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.IntConsumer); - method public boolean performPrivateCommand(String, android.os.Bundle); - method public default boolean performSpellCheck(); - method public default boolean previewHandwritingGesture(@NonNull android.view.inputmethod.PreviewableHandwritingGesture, @Nullable android.os.CancellationSignal); - method public default boolean replaceText(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); - method public boolean reportFullscreenMode(boolean); - method public boolean requestCursorUpdates(int); - method public default boolean requestCursorUpdates(int, int); - method public default void requestTextBoundsInfo(@NonNull android.graphics.RectF, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public boolean sendKeyEvent(android.view.KeyEvent); - method public boolean setComposingRegion(int, int); - method public default boolean setComposingRegion(int, int, @Nullable android.view.inputmethod.TextAttribute); - method public boolean setComposingText(CharSequence, int); - method public default boolean setComposingText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); - method public default boolean setImeConsumesInput(boolean); - method public boolean setSelection(int, int); - method @Nullable public default android.view.inputmethod.TextSnapshot takeSnapshot(); - field public static final int CURSOR_UPDATE_FILTER_CHARACTER_BOUNDS = 8; // 0x8 - field public static final int CURSOR_UPDATE_FILTER_EDITOR_BOUNDS = 4; // 0x4 - field public static final int CURSOR_UPDATE_FILTER_INSERTION_MARKER = 16; // 0x10 - field public static final int CURSOR_UPDATE_FILTER_TEXT_APPEARANCE = 64; // 0x40 - field public static final int CURSOR_UPDATE_FILTER_VISIBLE_LINE_BOUNDS = 32; // 0x20 - field public static final int CURSOR_UPDATE_IMMEDIATE = 1; // 0x1 - field public static final int CURSOR_UPDATE_MONITOR = 2; // 0x2 - field public static final int GET_EXTRACTED_TEXT_MONITOR = 1; // 0x1 - field public static final int GET_TEXT_WITH_STYLES = 1; // 0x1 - field public static final int HANDWRITING_GESTURE_RESULT_CANCELLED = 4; // 0x4 - field public static final int HANDWRITING_GESTURE_RESULT_FAILED = 3; // 0x3 - field public static final int HANDWRITING_GESTURE_RESULT_FALLBACK = 5; // 0x5 - field public static final int HANDWRITING_GESTURE_RESULT_SUCCESS = 1; // 0x1 - field public static final int HANDWRITING_GESTURE_RESULT_UNKNOWN = 0; // 0x0 - field public static final int HANDWRITING_GESTURE_RESULT_UNSUPPORTED = 2; // 0x2 - field public static final int INPUT_CONTENT_GRANT_READ_URI_PERMISSION = 1; // 0x1 - } - - public class InputConnectionWrapper implements android.view.inputmethod.InputConnection { - ctor public InputConnectionWrapper(android.view.inputmethod.InputConnection, boolean); - method public boolean beginBatchEdit(); - method public boolean clearMetaKeyStates(int); - method public void closeConnection(); - method public boolean commitCompletion(android.view.inputmethod.CompletionInfo); - method public boolean commitContent(android.view.inputmethod.InputContentInfo, int, android.os.Bundle); - method public boolean commitCorrection(android.view.inputmethod.CorrectionInfo); - method public boolean commitText(CharSequence, int); - method public boolean commitText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); - method public boolean deleteSurroundingText(int, int); - method public boolean deleteSurroundingTextInCodePoints(int, int); - method public boolean endBatchEdit(); - method public boolean finishComposingText(); - method public int getCursorCapsMode(int); - method public android.view.inputmethod.ExtractedText getExtractedText(android.view.inputmethod.ExtractedTextRequest, int); - method public android.os.Handler getHandler(); - method public CharSequence getSelectedText(int); - method @Nullable public android.view.inputmethod.SurroundingText getSurroundingText(int, int, int); - method @Nullable public CharSequence getTextAfterCursor(@IntRange(from=0) int, int); - method @Nullable public CharSequence getTextBeforeCursor(@IntRange(from=0) int, int); - method public boolean performContextMenuAction(int); - method public boolean performEditorAction(int); - method public void performHandwritingGesture(@NonNull android.view.inputmethod.HandwritingGesture, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.IntConsumer); - method public boolean performPrivateCommand(String, android.os.Bundle); - method public boolean performSpellCheck(); - method public boolean previewHandwritingGesture(@NonNull android.view.inputmethod.PreviewableHandwritingGesture, @Nullable android.os.CancellationSignal); - method public boolean replaceText(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); - method public boolean reportFullscreenMode(boolean); - method public boolean requestCursorUpdates(int); - method public boolean requestCursorUpdates(int, int); - method public void requestTextBoundsInfo(@NonNull android.graphics.RectF, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public boolean sendKeyEvent(android.view.KeyEvent); - method public boolean setComposingRegion(int, int); - method public boolean setComposingRegion(int, int, @Nullable android.view.inputmethod.TextAttribute); - method public boolean setComposingText(CharSequence, int); - method public boolean setComposingText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); - method public boolean setImeConsumesInput(boolean); - method public boolean setSelection(int, int); - method public void setTarget(android.view.inputmethod.InputConnection); - method @Nullable public android.view.inputmethod.TextSnapshot takeSnapshot(); - } - - public final class InputContentInfo implements android.os.Parcelable { - ctor public InputContentInfo(@NonNull android.net.Uri, @NonNull android.content.ClipDescription); - ctor public InputContentInfo(@NonNull android.net.Uri, @NonNull android.content.ClipDescription, @Nullable android.net.Uri); - method public int describeContents(); - method @NonNull public android.net.Uri getContentUri(); - method @NonNull public android.content.ClipDescription getDescription(); - method @Nullable public android.net.Uri getLinkUri(); - method public void releasePermission(); - method public void requestPermission(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface InputMethod { - method @MainThread public void attachToken(android.os.IBinder); - method @MainThread public void bindInput(android.view.inputmethod.InputBinding); - method @MainThread public void changeInputMethodSubtype(android.view.inputmethod.InputMethodSubtype); - method @MainThread public void createSession(android.view.inputmethod.InputMethod.SessionCallback); - method @MainThread public void hideSoftInput(int, android.os.ResultReceiver); - method @MainThread public void restartInput(android.view.inputmethod.InputConnection, android.view.inputmethod.EditorInfo); - method @MainThread public void revokeSession(android.view.inputmethod.InputMethodSession); - method @MainThread public void setSessionEnabled(android.view.inputmethod.InputMethodSession, boolean); - method @MainThread public void showSoftInput(int, android.os.ResultReceiver); - method @MainThread public void startInput(android.view.inputmethod.InputConnection, android.view.inputmethod.EditorInfo); - method @MainThread public void unbindInput(); - field public static final String SERVICE_INTERFACE = "android.view.InputMethod"; - field public static final String SERVICE_META_DATA = "android.view.im"; - field public static final int SHOW_EXPLICIT = 1; // 0x1 - field @Deprecated public static final int SHOW_FORCED = 2; // 0x2 - } - - public static interface InputMethod.SessionCallback { - method public void sessionCreated(android.view.inputmethod.InputMethodSession); - } - - public final class InputMethodInfo implements android.os.Parcelable { - ctor public InputMethodInfo(android.content.Context, android.content.pm.ResolveInfo) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - ctor public InputMethodInfo(String, String, CharSequence, String); - method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @Nullable public android.content.Intent createImeLanguageSettingsActivityIntent(); - method @Nullable public android.content.Intent createStylusHandwritingSettingsActivityIntent(); - method public int describeContents(); - method public void dump(android.util.Printer, String); - method public android.content.ComponentName getComponent(); - method public int getConfigChanges(); - method public String getId(); - method public int getIsDefaultResourceId(); - method public String getPackageName(); - method public android.content.pm.ServiceInfo getServiceInfo(); - method public String getServiceName(); - method public String getSettingsActivity(); - method public android.view.inputmethod.InputMethodSubtype getSubtypeAt(int); - method public int getSubtypeCount(); - method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); - method public CharSequence loadLabel(android.content.pm.PackageManager); - method public boolean shouldShowInInputMethodPicker(); - method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public boolean supportsConnectionlessStylusHandwriting(); - method public boolean supportsStylusHandwriting(); - method public boolean suppressesSpellChecker(); - method public void writeToParcel(android.os.Parcel, int); - field @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") public static final String ACTION_IME_LANGUAGE_SETTINGS = "android.view.inputmethod.action.IME_LANGUAGE_SETTINGS"; - field public static final String ACTION_STYLUS_HANDWRITING_SETTINGS = "android.view.inputmethod.action.STYLUS_HANDWRITING_SETTINGS"; - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class InputMethodManager { - method public boolean acceptStylusHandwritingDelegation(@NonNull android.view.View); - method public boolean acceptStylusHandwritingDelegation(@NonNull android.view.View, @NonNull String); - method @FlaggedApi("android.view.inputmethod.use_zero_jank_proxy") public void acceptStylusHandwritingDelegation(@NonNull android.view.View, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public void acceptStylusHandwritingDelegation(@NonNull android.view.View, @NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public void dispatchKeyEventFromInputMethod(@Nullable android.view.View, @NonNull android.view.KeyEvent); - method public void displayCompletions(android.view.View, android.view.inputmethod.CompletionInfo[]); - method @Nullable public android.view.inputmethod.InputMethodInfo getCurrentInputMethodInfo(); - method @Nullable public android.view.inputmethod.InputMethodSubtype getCurrentInputMethodSubtype(); - method @NonNull public java.util.List getEnabledInputMethodList(); - method @NonNull public java.util.List getEnabledInputMethodSubtypeList(@Nullable android.view.inputmethod.InputMethodInfo, boolean); - method @NonNull public java.util.List getInputMethodList(); - method @Nullable public android.view.inputmethod.InputMethodSubtype getLastInputMethodSubtype(); - method public java.util.Map> getShortcutInputMethodsAndSubtypes(); - method @Deprecated public void hideSoftInputFromInputMethod(android.os.IBinder, int); - method public boolean hideSoftInputFromWindow(android.os.IBinder, int); - method @Deprecated public boolean hideSoftInputFromWindow(android.os.IBinder, int, android.os.ResultReceiver); - method @Deprecated public void hideStatusIcon(android.os.IBinder); - method public void invalidateInput(@NonNull android.view.View); - method public boolean isAcceptingText(); - method public boolean isActive(android.view.View); - method public boolean isActive(); - method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public boolean isConnectionlessStylusHandwritingAvailable(); - method public boolean isFullscreenMode(); - method public boolean isInputMethodSuppressingSpellChecker(); - method public boolean isStylusHandwritingAvailable(); - method @Deprecated public boolean isWatchingCursor(android.view.View); - method public void prepareStylusHandwritingDelegation(@NonNull android.view.View); - method public void prepareStylusHandwritingDelegation(@NonNull android.view.View, @NonNull String); - method public void restartInput(android.view.View); - method public void sendAppPrivateCommand(android.view.View, String, android.os.Bundle); - method @Deprecated public void setAdditionalInputMethodSubtypes(@NonNull String, @NonNull android.view.inputmethod.InputMethodSubtype[]); - method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean setCurrentInputMethodSubtype(android.view.inputmethod.InputMethodSubtype); - method public void setExplicitlyEnabledInputMethodSubtypes(@NonNull String, @NonNull int[]); - method @Deprecated public void setInputMethod(android.os.IBinder, String); - method @Deprecated public void setInputMethodAndSubtype(@NonNull android.os.IBinder, String, android.view.inputmethod.InputMethodSubtype); - method @Deprecated public boolean shouldOfferSwitchingToNextInputMethod(android.os.IBinder); - method public void showInputMethodAndSubtypeEnabler(@Nullable String); - method public void showInputMethodPicker(); - method public boolean showSoftInput(android.view.View, int); - method @Deprecated public boolean showSoftInput(android.view.View, int, android.os.ResultReceiver); - method @Deprecated public void showSoftInputFromInputMethod(android.os.IBinder, int); - method @Deprecated public void showStatusIcon(android.os.IBinder, String, @DrawableRes int); - method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public void startConnectionlessStylusHandwriting(@NonNull android.view.View, @Nullable android.view.inputmethod.CursorAnchorInfo, @NonNull java.util.concurrent.Executor, @NonNull android.view.inputmethod.ConnectionlessHandwritingCallback); - method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public void startConnectionlessStylusHandwritingForDelegation(@NonNull android.view.View, @Nullable android.view.inputmethod.CursorAnchorInfo, @NonNull java.util.concurrent.Executor, @NonNull android.view.inputmethod.ConnectionlessHandwritingCallback); - method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public void startConnectionlessStylusHandwritingForDelegation(@NonNull android.view.View, @Nullable android.view.inputmethod.CursorAnchorInfo, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.view.inputmethod.ConnectionlessHandwritingCallback); - method public void startStylusHandwriting(@NonNull android.view.View); - method @Deprecated public boolean switchToLastInputMethod(android.os.IBinder); - method @Deprecated public boolean switchToNextInputMethod(android.os.IBinder, boolean); - method @Deprecated public void toggleSoftInput(int, int); - method @Deprecated public void toggleSoftInputFromWindow(android.os.IBinder, int, int); - method @Deprecated public void updateCursor(android.view.View, int, int, int, int); - method public void updateCursorAnchorInfo(android.view.View, android.view.inputmethod.CursorAnchorInfo); - method public void updateExtractedText(android.view.View, int, android.view.inputmethod.ExtractedText); - method public void updateSelection(android.view.View, int, int, int, int); - method @Deprecated public void viewClicked(android.view.View); - field @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public static final int HANDWRITING_DELEGATE_FLAG_HOME_DELEGATOR_ALLOWED = 1; // 0x1 - field public static final int HIDE_IMPLICIT_ONLY = 1; // 0x1 - field public static final int HIDE_NOT_ALWAYS = 2; // 0x2 - field public static final int RESULT_HIDDEN = 3; // 0x3 - field public static final int RESULT_SHOWN = 2; // 0x2 - field public static final int RESULT_UNCHANGED_HIDDEN = 1; // 0x1 - field public static final int RESULT_UNCHANGED_SHOWN = 0; // 0x0 - field @Deprecated public static final int SHOW_FORCED = 2; // 0x2 - field public static final int SHOW_IMPLICIT = 1; // 0x1 - } - - public interface InputMethodSession { - method public void appPrivateCommand(String, android.os.Bundle); - method public void dispatchGenericMotionEvent(int, android.view.MotionEvent, android.view.inputmethod.InputMethodSession.EventCallback); - method public void dispatchKeyEvent(int, android.view.KeyEvent, android.view.inputmethod.InputMethodSession.EventCallback); - method public void dispatchTrackballEvent(int, android.view.MotionEvent, android.view.inputmethod.InputMethodSession.EventCallback); - method public void displayCompletions(android.view.inputmethod.CompletionInfo[]); - method public void finishInput(); - method @Deprecated public void toggleSoftInput(int, int); - method public void updateCursor(android.graphics.Rect); - method public void updateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo); - method public void updateExtractedText(int, android.view.inputmethod.ExtractedText); - method public void updateSelection(int, int, int, int, int, int); - method public void viewClicked(boolean); - } - - public static interface InputMethodSession.EventCallback { - method public void finishedEvent(int, boolean); - } - - public final class InputMethodSubtype implements android.os.Parcelable { - ctor @Deprecated public InputMethodSubtype(int, int, String, String, String, boolean, boolean); - ctor @Deprecated public InputMethodSubtype(int, int, String, String, String, boolean, boolean, int); - method public boolean containsExtraValueKey(String); - method public int describeContents(); - method @NonNull public CharSequence getDisplayName(android.content.Context, String, android.content.pm.ApplicationInfo); - method public String getExtraValue(); - method public String getExtraValueOf(String); - method public int getIconResId(); - method @NonNull public String getLanguageTag(); - method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @NonNull public CharSequence getLayoutDisplayName(@NonNull android.content.Context, @NonNull android.content.pm.ApplicationInfo); - method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @NonNull public CharSequence getLayoutLabelNonLocalized(); - method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @StringRes public int getLayoutLabelResource(); - method @Deprecated @NonNull public String getLocale(); - method public String getMode(); - method @NonNull public CharSequence getNameOverride(); - method public int getNameResId(); - method @Nullable public android.icu.util.ULocale getPhysicalKeyboardHintLanguageTag(); - method @NonNull public String getPhysicalKeyboardHintLayoutType(); - method public boolean isAsciiCapable(); - method public boolean isAuxiliary(); - method public boolean overridesImplicitlyEnabledSubtype(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class InputMethodSubtype.InputMethodSubtypeBuilder { - ctor public InputMethodSubtype.InputMethodSubtypeBuilder(); - method public android.view.inputmethod.InputMethodSubtype build(); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setIsAsciiCapable(boolean); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setIsAuxiliary(boolean); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setLanguageTag(String); - method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @NonNull public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setLayoutLabelNonLocalized(@NonNull CharSequence); - method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @NonNull public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setLayoutLabelResource(@StringRes int); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setOverridesImplicitlyEnabledSubtype(boolean); - method @NonNull public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setPhysicalKeyboardHint(@Nullable android.icu.util.ULocale, @NonNull String); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeExtraValue(String); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeIconResId(int); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeId(int); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeLocale(String); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeMode(String); - method @NonNull public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeNameOverride(@NonNull CharSequence); - method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeNameResId(int); - } - - public final class InsertGesture extends android.view.inputmethod.HandwritingGesture implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.graphics.PointF getInsertionPoint(); - method @NonNull public String getTextToInsert(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class InsertGesture.Builder { - ctor public InsertGesture.Builder(); - method @NonNull public android.view.inputmethod.InsertGesture build(); - method @NonNull public android.view.inputmethod.InsertGesture.Builder setFallbackText(@Nullable String); - method @NonNull public android.view.inputmethod.InsertGesture.Builder setInsertionPoint(@NonNull android.graphics.PointF); - method @NonNull public android.view.inputmethod.InsertGesture.Builder setTextToInsert(@NonNull String); - } - - public final class InsertModeGesture extends android.view.inputmethod.HandwritingGesture implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.os.CancellationSignal getCancellationSignal(); - method @NonNull public android.graphics.PointF getInsertionPoint(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class InsertModeGesture.Builder { - ctor public InsertModeGesture.Builder(); - method @NonNull public android.view.inputmethod.InsertModeGesture build(); - method @NonNull public android.view.inputmethod.InsertModeGesture.Builder setCancellationSignal(@NonNull android.os.CancellationSignal); - method @NonNull public android.view.inputmethod.InsertModeGesture.Builder setFallbackText(@Nullable String); - method @NonNull public android.view.inputmethod.InsertModeGesture.Builder setInsertionPoint(@NonNull android.graphics.PointF); - } - - public final class JoinOrSplitGesture extends android.view.inputmethod.HandwritingGesture implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.graphics.PointF getJoinOrSplitPoint(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class JoinOrSplitGesture.Builder { - ctor public JoinOrSplitGesture.Builder(); - method @NonNull public android.view.inputmethod.JoinOrSplitGesture build(); - method @NonNull public android.view.inputmethod.JoinOrSplitGesture.Builder setFallbackText(@Nullable String); - method @NonNull public android.view.inputmethod.JoinOrSplitGesture.Builder setJoinOrSplitPoint(@NonNull android.graphics.PointF); - } - - public abstract class PreviewableHandwritingGesture extends android.view.inputmethod.HandwritingGesture { - } - - public final class RemoveSpaceGesture extends android.view.inputmethod.HandwritingGesture implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.graphics.PointF getEndPoint(); - method @NonNull public android.graphics.PointF getStartPoint(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class RemoveSpaceGesture.Builder { - ctor public RemoveSpaceGesture.Builder(); - method @NonNull public android.view.inputmethod.RemoveSpaceGesture build(); - method @NonNull public android.view.inputmethod.RemoveSpaceGesture.Builder setFallbackText(@Nullable String); - method @NonNull public android.view.inputmethod.RemoveSpaceGesture.Builder setPoints(@NonNull android.graphics.PointF, @NonNull android.graphics.PointF); - } - - public final class SelectGesture extends android.view.inputmethod.PreviewableHandwritingGesture implements android.os.Parcelable { - method public int describeContents(); - method public int getGranularity(); - method @NonNull public android.graphics.RectF getSelectionArea(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class SelectGesture.Builder { - ctor public SelectGesture.Builder(); - method @NonNull public android.view.inputmethod.SelectGesture build(); - method @NonNull public android.view.inputmethod.SelectGesture.Builder setFallbackText(@Nullable String); - method @NonNull public android.view.inputmethod.SelectGesture.Builder setGranularity(int); - method @NonNull public android.view.inputmethod.SelectGesture.Builder setSelectionArea(@NonNull android.graphics.RectF); - } - - public final class SelectRangeGesture extends android.view.inputmethod.PreviewableHandwritingGesture implements android.os.Parcelable { - method public int describeContents(); - method public int getGranularity(); - method @NonNull public android.graphics.RectF getSelectionEndArea(); - method @NonNull public android.graphics.RectF getSelectionStartArea(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class SelectRangeGesture.Builder { - ctor public SelectRangeGesture.Builder(); - method @NonNull public android.view.inputmethod.SelectRangeGesture build(); - method @NonNull public android.view.inputmethod.SelectRangeGesture.Builder setFallbackText(@Nullable String); - method @NonNull public android.view.inputmethod.SelectRangeGesture.Builder setGranularity(int); - method @NonNull public android.view.inputmethod.SelectRangeGesture.Builder setSelectionEndArea(@NonNull android.graphics.RectF); - method @NonNull public android.view.inputmethod.SelectRangeGesture.Builder setSelectionStartArea(@NonNull android.graphics.RectF); - } - - public final class SurroundingText implements android.os.Parcelable { - ctor public SurroundingText(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0xffffffff) int); - method public int describeContents(); - method @IntRange(from=0xffffffff) public int getOffset(); - method @IntRange(from=0) public int getSelectionEnd(); - method @IntRange(from=0) public int getSelectionStart(); - method @NonNull public CharSequence getText(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class TextAppearanceInfo implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getFontFeatureSettings(); - method @Nullable public String getFontVariationSettings(); - method @ColorInt public int getHighlightTextColor(); - method @ColorInt public int getHintTextColor(); - method public float getLetterSpacing(); - method public int getLineBreakStyle(); - method public int getLineBreakWordStyle(); - method @ColorInt public int getLinkTextColor(); - method @ColorInt public int getShadowColor(); - method @Px public float getShadowDx(); - method @Px public float getShadowDy(); - method @Px public float getShadowRadius(); - method @Nullable public String getSystemFontFamilyName(); - method @ColorInt public int getTextColor(); - method @IntRange(from=android.graphics.fonts.FontStyle.FONT_WEIGHT_UNSPECIFIED, to=android.graphics.fonts.FontStyle.FONT_WEIGHT_MAX) public int getTextFontWeight(); - method @NonNull public android.os.LocaleList getTextLocales(); - method public float getTextScaleX(); - method @Px public float getTextSize(); - method public int getTextStyle(); - method public boolean isAllCaps(); - method public boolean isElegantTextHeight(); - method public boolean isFallbackLineSpacing(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextAppearanceInfo.Builder { - ctor public TextAppearanceInfo.Builder(); - method @NonNull public android.view.inputmethod.TextAppearanceInfo build(); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setAllCaps(boolean); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setElegantTextHeight(boolean); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setFallbackLineSpacing(boolean); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setFontFeatureSettings(@Nullable String); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setFontVariationSettings(@Nullable String); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setHighlightTextColor(@ColorInt int); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setHintTextColor(@ColorInt int); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setLetterSpacing(float); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setLineBreakStyle(int); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setLineBreakWordStyle(int); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setLinkTextColor(@ColorInt int); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setShadowColor(@ColorInt int); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setShadowDx(@Px float); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setShadowDy(@Px float); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setShadowRadius(@Px float); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setSystemFontFamilyName(@Nullable String); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextColor(@ColorInt int); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextFontWeight(@IntRange(from=android.graphics.fonts.FontStyle.FONT_WEIGHT_UNSPECIFIED, to=android.graphics.fonts.FontStyle.FONT_WEIGHT_MAX) int); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextLocales(@NonNull android.os.LocaleList); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextScaleX(float); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextSize(@Px float); - method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextStyle(int); - } - - public final class TextAttribute implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.os.PersistableBundle getExtras(); - method @NonNull public java.util.List getTextConversionSuggestions(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextAttribute.Builder { - ctor public TextAttribute.Builder(); - method @NonNull public android.view.inputmethod.TextAttribute build(); - method @NonNull public android.view.inputmethod.TextAttribute.Builder setExtras(@NonNull android.os.PersistableBundle); - method @NonNull public android.view.inputmethod.TextAttribute.Builder setTextConversionSuggestions(@NonNull java.util.List); - } - - public final class TextBoundsInfo implements android.os.Parcelable { - method public int describeContents(); - method @IntRange(from=0, to=125) public int getCharacterBidiLevel(int); - method @NonNull public void getCharacterBounds(int, @NonNull android.graphics.RectF); - method public int getCharacterFlags(int); - method public int getEndIndex(); - method @NonNull public android.text.SegmentFinder getGraphemeSegmentFinder(); - method @NonNull public android.text.SegmentFinder getLineSegmentFinder(); - method @NonNull public void getMatrix(@NonNull android.graphics.Matrix); - method public int getOffsetForPosition(float, float); - method @Nullable public int[] getRangeForRect(@NonNull android.graphics.RectF, @NonNull android.text.SegmentFinder, @NonNull android.text.Layout.TextInclusionStrategy); - method public int getStartIndex(); - method @NonNull public android.text.SegmentFinder getWordSegmentFinder(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_CHARACTER_LINEFEED = 2; // 0x2 - field public static final int FLAG_CHARACTER_PUNCTUATION = 4; // 0x4 - field public static final int FLAG_CHARACTER_WHITESPACE = 1; // 0x1 - field public static final int FLAG_LINE_IS_RTL = 8; // 0x8 - } - - public static final class TextBoundsInfo.Builder { - ctor public TextBoundsInfo.Builder(int, int); - method @NonNull public android.view.inputmethod.TextBoundsInfo build(); - method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder clear(); - method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setCharacterBidiLevel(@NonNull int[]); - method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setCharacterBounds(@NonNull float[]); - method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setCharacterFlags(@NonNull int[]); - method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setGraphemeSegmentFinder(@NonNull android.text.SegmentFinder); - method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setLineSegmentFinder(@NonNull android.text.SegmentFinder); - method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setMatrix(@NonNull android.graphics.Matrix); - method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setStartAndEnd(@IntRange(from=0) int, @IntRange(from=0) int); - method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setWordSegmentFinder(@NonNull android.text.SegmentFinder); - } - - public final class TextBoundsInfoResult { - ctor public TextBoundsInfoResult(int); - ctor public TextBoundsInfoResult(int, @Nullable android.view.inputmethod.TextBoundsInfo); - method public int getResultCode(); - method @Nullable public android.view.inputmethod.TextBoundsInfo getTextBoundsInfo(); - field public static final int CODE_CANCELLED = 3; // 0x3 - field public static final int CODE_FAILED = 2; // 0x2 - field public static final int CODE_SUCCESS = 1; // 0x1 - field public static final int CODE_UNSUPPORTED = 0; // 0x0 - } - - public final class TextSnapshot { - ctor public TextSnapshot(@NonNull android.view.inputmethod.SurroundingText, @IntRange(from=0xffffffff) int, @IntRange(from=0xffffffff) int, int); - method @IntRange(from=0xffffffff) public int getCompositionEnd(); - method @IntRange(from=0xffffffff) public int getCompositionStart(); - method public int getCursorCapsMode(); - method @IntRange(from=0xffffffff) public int getSelectionEnd(); - method @IntRange(from=0xffffffff) public int getSelectionStart(); - method @NonNull public android.view.inputmethod.SurroundingText getSurroundingText(); - } - -} - -package android.view.inspector { - - public interface InspectionCompanion { - method public void mapProperties(@NonNull android.view.inspector.PropertyMapper); - method public void readProperties(@NonNull T, @NonNull android.view.inspector.PropertyReader); - } - - public static class InspectionCompanion.UninitializedPropertyMapException extends java.lang.RuntimeException { - ctor public InspectionCompanion.UninitializedPropertyMapException(); - } - - public interface InspectionCompanionProvider { - method @Nullable public android.view.inspector.InspectionCompanion provide(@NonNull Class); - } - - public final class IntFlagMapping { - ctor public IntFlagMapping(); - method public void add(int, int, @NonNull String); - method @NonNull public java.util.Set get(int); - } - - public interface PropertyMapper { - method public int mapBoolean(@NonNull String, @AttrRes int); - method public int mapByte(@NonNull String, @AttrRes int); - method public int mapChar(@NonNull String, @AttrRes int); - method public int mapColor(@NonNull String, @AttrRes int); - method public int mapDouble(@NonNull String, @AttrRes int); - method public int mapFloat(@NonNull String, @AttrRes int); - method public int mapGravity(@NonNull String, @AttrRes int); - method public int mapInt(@NonNull String, @AttrRes int); - method public int mapIntEnum(@NonNull String, @AttrRes int, @NonNull java.util.function.IntFunction); - method public int mapIntFlag(@NonNull String, @AttrRes int, @NonNull java.util.function.IntFunction>); - method public int mapLong(@NonNull String, @AttrRes int); - method public int mapObject(@NonNull String, @AttrRes int); - method public int mapResourceId(@NonNull String, @AttrRes int); - method public int mapShort(@NonNull String, @AttrRes int); - } - - public static class PropertyMapper.PropertyConflictException extends java.lang.RuntimeException { - ctor public PropertyMapper.PropertyConflictException(@NonNull String, @NonNull String, @NonNull String); - } - - public interface PropertyReader { - method public void readBoolean(int, boolean); - method public void readByte(int, byte); - method public void readChar(int, char); - method public void readColor(int, @ColorInt int); - method public void readColor(int, @ColorLong long); - method public void readColor(int, @Nullable android.graphics.Color); - method public void readDouble(int, double); - method public void readFloat(int, float); - method public void readGravity(int, int); - method public void readInt(int, int); - method public void readIntEnum(int, int); - method public void readIntFlag(int, int); - method public void readLong(int, long); - method public void readObject(int, @Nullable Object); - method public void readResourceId(int, @AnyRes int); - method public void readShort(int, short); - } - - public static class PropertyReader.PropertyTypeMismatchException extends java.lang.RuntimeException { - ctor public PropertyReader.PropertyTypeMismatchException(int, @NonNull String, @NonNull String, @Nullable String); - ctor public PropertyReader.PropertyTypeMismatchException(int, @NonNull String, @NonNull String); - } - - public class StaticInspectionCompanionProvider implements android.view.inspector.InspectionCompanionProvider { - ctor public StaticInspectionCompanionProvider(); - method @Nullable public android.view.inspector.InspectionCompanion provide(@NonNull Class); - } - - public final class WindowInspector { - method @NonNull public static java.util.List getGlobalWindowViews(); - } - -} - -package android.view.textclassifier { - - public final class ConversationAction implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public android.app.RemoteAction getAction(); - method @FloatRange(from=0, to=1) public float getConfidenceScore(); - method @NonNull public android.os.Bundle getExtras(); - method @Nullable public CharSequence getTextReply(); - method @NonNull public String getType(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String TYPE_CALL_PHONE = "call_phone"; - field public static final String TYPE_CREATE_REMINDER = "create_reminder"; - field public static final String TYPE_OPEN_URL = "open_url"; - field public static final String TYPE_SEND_EMAIL = "send_email"; - field public static final String TYPE_SEND_SMS = "send_sms"; - field public static final String TYPE_SHARE_LOCATION = "share_location"; - field public static final String TYPE_TEXT_REPLY = "text_reply"; - field public static final String TYPE_TRACK_FLIGHT = "track_flight"; - field public static final String TYPE_VIEW_CALENDAR = "view_calendar"; - field public static final String TYPE_VIEW_MAP = "view_map"; - } - - public static final class ConversationAction.Builder { - ctor public ConversationAction.Builder(@NonNull String); - method @NonNull public android.view.textclassifier.ConversationAction build(); - method @NonNull public android.view.textclassifier.ConversationAction.Builder setAction(@Nullable android.app.RemoteAction); - method @NonNull public android.view.textclassifier.ConversationAction.Builder setConfidenceScore(@FloatRange(from=0, to=1) float); - method @NonNull public android.view.textclassifier.ConversationAction.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.view.textclassifier.ConversationAction.Builder setTextReply(@Nullable CharSequence); - } - - public final class ConversationActions implements android.os.Parcelable { - ctor public ConversationActions(@NonNull java.util.List, @Nullable String); - method public int describeContents(); - method @NonNull public java.util.List getConversationActions(); - method @Nullable public String getId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class ConversationActions.Message implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.app.Person getAuthor(); - method @NonNull public android.os.Bundle getExtras(); - method @Nullable public java.time.ZonedDateTime getReferenceTime(); - method @Nullable public CharSequence getText(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field @NonNull public static final android.app.Person PERSON_USER_OTHERS; - field @NonNull public static final android.app.Person PERSON_USER_SELF; - } - - public static final class ConversationActions.Message.Builder { - ctor public ConversationActions.Message.Builder(@NonNull android.app.Person); - method @NonNull public android.view.textclassifier.ConversationActions.Message build(); - method @NonNull public android.view.textclassifier.ConversationActions.Message.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.view.textclassifier.ConversationActions.Message.Builder setReferenceTime(@Nullable java.time.ZonedDateTime); - method @NonNull public android.view.textclassifier.ConversationActions.Message.Builder setText(@Nullable CharSequence); - } - - public static final class ConversationActions.Request implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getCallingPackageName(); - method @NonNull public java.util.List getConversation(); - method @NonNull public android.os.Bundle getExtras(); - method @NonNull public java.util.List getHints(); - method @IntRange(from=0xffffffff) public int getMaxSuggestions(); - method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig getTypeConfig(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String HINT_FOR_IN_APP = "in_app"; - field public static final String HINT_FOR_NOTIFICATION = "notification"; - } - - public static final class ConversationActions.Request.Builder { - ctor public ConversationActions.Request.Builder(@NonNull java.util.List); - method @NonNull public android.view.textclassifier.ConversationActions.Request build(); - method @NonNull public android.view.textclassifier.ConversationActions.Request.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.view.textclassifier.ConversationActions.Request.Builder setHints(@Nullable java.util.List); - method @NonNull public android.view.textclassifier.ConversationActions.Request.Builder setMaxSuggestions(@IntRange(from=0xffffffff) int); - method @NonNull public android.view.textclassifier.ConversationActions.Request.Builder setTypeConfig(@Nullable android.view.textclassifier.TextClassifier.EntityConfig); - } - - public final class SelectionEvent implements android.os.Parcelable { - method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionActionEvent(int, int, int); - method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionActionEvent(int, int, int, @NonNull android.view.textclassifier.TextClassification); - method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int); - method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int, @NonNull android.view.textclassifier.TextClassification); - method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int, @NonNull android.view.textclassifier.TextSelection); - method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionStartedEvent(int, int); - method public int describeContents(); - method public long getDurationSincePreviousEvent(); - method public long getDurationSinceSessionStart(); - method public int getEnd(); - method @NonNull public String getEntityType(); - method public int getEventIndex(); - method public long getEventTime(); - method public int getEventType(); - method public int getInvocationMethod(); - method @NonNull public String getPackageName(); - method @Nullable public String getResultId(); - method @Nullable public android.view.textclassifier.TextClassificationSessionId getSessionId(); - method public int getSmartEnd(); - method public int getSmartStart(); - method public int getStart(); - method @NonNull public String getWidgetType(); - method @Nullable public String getWidgetVersion(); - method public static boolean isTerminal(int); - method public void writeToParcel(android.os.Parcel, int); - field public static final int ACTION_ABANDON = 107; // 0x6b - field public static final int ACTION_COPY = 101; // 0x65 - field public static final int ACTION_CUT = 103; // 0x67 - field public static final int ACTION_DRAG = 106; // 0x6a - field public static final int ACTION_OTHER = 108; // 0x6c - field public static final int ACTION_OVERTYPE = 100; // 0x64 - field public static final int ACTION_PASTE = 102; // 0x66 - field public static final int ACTION_RESET = 201; // 0xc9 - field public static final int ACTION_SELECT_ALL = 200; // 0xc8 - field public static final int ACTION_SHARE = 104; // 0x68 - field public static final int ACTION_SMART_SHARE = 105; // 0x69 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int EVENT_AUTO_SELECTION = 5; // 0x5 - field public static final int EVENT_SELECTION_MODIFIED = 2; // 0x2 - field public static final int EVENT_SELECTION_STARTED = 1; // 0x1 - field public static final int EVENT_SMART_SELECTION_MULTI = 4; // 0x4 - field public static final int EVENT_SMART_SELECTION_SINGLE = 3; // 0x3 - field public static final int INVOCATION_LINK = 2; // 0x2 - field public static final int INVOCATION_MANUAL = 1; // 0x1 - field public static final int INVOCATION_UNKNOWN = 0; // 0x0 - } - - public final class TextClassification implements android.os.Parcelable { - method public int describeContents(); - method public java.util.List getActions(); - method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(String); - method @NonNull public String getEntity(int); - method @IntRange(from=0) public int getEntityCount(); - method @NonNull public android.os.Bundle getExtras(); - method @Deprecated @Nullable public android.graphics.drawable.Drawable getIcon(); - method @Nullable public String getId(); - method @Deprecated @Nullable public android.content.Intent getIntent(); - method @Deprecated @Nullable public CharSequence getLabel(); - method @Deprecated @Nullable public android.view.View.OnClickListener getOnClickListener(); - method @Nullable public String getText(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextClassification.Builder { - ctor public TextClassification.Builder(); - method @NonNull public android.view.textclassifier.TextClassification.Builder addAction(@NonNull android.app.RemoteAction); - method @NonNull public android.view.textclassifier.TextClassification build(); - method @NonNull public android.view.textclassifier.TextClassification.Builder setEntityType(@NonNull String, @FloatRange(from=0.0, to=1.0) float); - method @NonNull public android.view.textclassifier.TextClassification.Builder setExtras(@Nullable android.os.Bundle); - method @Deprecated @NonNull public android.view.textclassifier.TextClassification.Builder setIcon(@Nullable android.graphics.drawable.Drawable); - method @NonNull public android.view.textclassifier.TextClassification.Builder setId(@Nullable String); - method @Deprecated @NonNull public android.view.textclassifier.TextClassification.Builder setIntent(@Nullable android.content.Intent); - method @Deprecated @NonNull public android.view.textclassifier.TextClassification.Builder setLabel(@Nullable String); - method @Deprecated @NonNull public android.view.textclassifier.TextClassification.Builder setOnClickListener(@Nullable android.view.View.OnClickListener); - method @NonNull public android.view.textclassifier.TextClassification.Builder setText(@Nullable String); - } - - public static final class TextClassification.Request implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getCallingPackageName(); - method @Nullable public android.os.LocaleList getDefaultLocales(); - method @IntRange(from=0) public int getEndIndex(); - method @NonNull public android.os.Bundle getExtras(); - method @Nullable public java.time.ZonedDateTime getReferenceTime(); - method @IntRange(from=0) public int getStartIndex(); - method @NonNull public CharSequence getText(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextClassification.Request.Builder { - ctor public TextClassification.Request.Builder(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int); - method @NonNull public android.view.textclassifier.TextClassification.Request build(); - method @NonNull public android.view.textclassifier.TextClassification.Request.Builder setDefaultLocales(@Nullable android.os.LocaleList); - method @NonNull public android.view.textclassifier.TextClassification.Request.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.view.textclassifier.TextClassification.Request.Builder setReferenceTime(@Nullable java.time.ZonedDateTime); - } - - public final class TextClassificationContext implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getPackageName(); - method @NonNull public String getWidgetType(); - method @Nullable public String getWidgetVersion(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextClassificationContext.Builder { - ctor public TextClassificationContext.Builder(@NonNull String, @NonNull String); - method @NonNull public android.view.textclassifier.TextClassificationContext build(); - method public android.view.textclassifier.TextClassificationContext.Builder setWidgetVersion(@Nullable String); - } - - public final class TextClassificationManager { - method @NonNull public android.view.textclassifier.TextClassifier createTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext); - method @NonNull public android.view.textclassifier.TextClassifier getTextClassifier(); - method public void setTextClassificationSessionFactory(@Nullable android.view.textclassifier.TextClassificationSessionFactory); - method public void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier); - } - - public interface TextClassificationSessionFactory { - method @NonNull public android.view.textclassifier.TextClassifier createTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext); - } - - public final class TextClassificationSessionId implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public String getValue(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface TextClassifier { - method @NonNull @WorkerThread public default android.view.textclassifier.TextClassification classifyText(@NonNull android.view.textclassifier.TextClassification.Request); - method @NonNull @WorkerThread public default android.view.textclassifier.TextClassification classifyText(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.os.LocaleList); - method public default void destroy(); - method @NonNull @WorkerThread public default android.view.textclassifier.TextLanguage detectLanguage(@NonNull android.view.textclassifier.TextLanguage.Request); - method @NonNull @WorkerThread public default android.view.textclassifier.TextLinks generateLinks(@NonNull android.view.textclassifier.TextLinks.Request); - method @WorkerThread public default int getMaxGenerateLinksTextLength(); - method public default boolean isDestroyed(); - method public default void onSelectionEvent(@NonNull android.view.textclassifier.SelectionEvent); - method public default void onTextClassifierEvent(@NonNull android.view.textclassifier.TextClassifierEvent); - method @NonNull @WorkerThread public default android.view.textclassifier.ConversationActions suggestConversationActions(@NonNull android.view.textclassifier.ConversationActions.Request); - method @NonNull @WorkerThread public default android.view.textclassifier.TextSelection suggestSelection(@NonNull android.view.textclassifier.TextSelection.Request); - method @NonNull @WorkerThread public default android.view.textclassifier.TextSelection suggestSelection(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.os.LocaleList); - field public static final String EXTRA_FROM_TEXT_CLASSIFIER = "android.view.textclassifier.extra.FROM_TEXT_CLASSIFIER"; - field @FlaggedApi("android.permission.flags.text_classifier_choice_api_enabled") public static final String EXTRA_TEXT_ORIGIN_PACKAGE = "android.view.textclassifier.extra.TEXT_ORIGIN_PACKAGE"; - field public static final String HINT_TEXT_IS_EDITABLE = "android.text_is_editable"; - field public static final String HINT_TEXT_IS_NOT_EDITABLE = "android.text_is_not_editable"; - field public static final android.view.textclassifier.TextClassifier NO_OP; - field public static final String TYPE_ADDRESS = "address"; - field public static final String TYPE_DATE = "date"; - field public static final String TYPE_DATE_TIME = "datetime"; - field public static final String TYPE_EMAIL = "email"; - field public static final String TYPE_FLIGHT_NUMBER = "flight"; - field public static final String TYPE_OTHER = "other"; - field @FlaggedApi("android.permission.flags.text_classifier_choice_api_enabled") public static final String TYPE_OTP = "otp"; - field public static final String TYPE_PHONE = "phone"; - field public static final String TYPE_UNKNOWN = ""; - field public static final String TYPE_URL = "url"; - field public static final String WIDGET_TYPE_CLIPBOARD = "clipboard"; - field public static final String WIDGET_TYPE_CUSTOM_EDITTEXT = "customedit"; - field public static final String WIDGET_TYPE_CUSTOM_TEXTVIEW = "customview"; - field public static final String WIDGET_TYPE_CUSTOM_UNSELECTABLE_TEXTVIEW = "nosel-customview"; - field public static final String WIDGET_TYPE_EDITTEXT = "edittext"; - field public static final String WIDGET_TYPE_EDIT_WEBVIEW = "edit-webview"; - field public static final String WIDGET_TYPE_NOTIFICATION = "notification"; - field public static final String WIDGET_TYPE_TEXTVIEW = "textview"; - field public static final String WIDGET_TYPE_UNKNOWN = "unknown"; - field public static final String WIDGET_TYPE_UNSELECTABLE_TEXTVIEW = "nosel-textview"; - field public static final String WIDGET_TYPE_WEBVIEW = "webview"; - } - - public static final class TextClassifier.EntityConfig implements android.os.Parcelable { - method @Deprecated public static android.view.textclassifier.TextClassifier.EntityConfig create(@Nullable java.util.Collection, @Nullable java.util.Collection, @Nullable java.util.Collection); - method @Deprecated public static android.view.textclassifier.TextClassifier.EntityConfig createWithExplicitEntityList(@Nullable java.util.Collection); - method @Deprecated public static android.view.textclassifier.TextClassifier.EntityConfig createWithHints(@Nullable java.util.Collection); - method public int describeContents(); - method public java.util.Collection getHints(); - method public java.util.Collection resolveEntityListModifications(@NonNull java.util.Collection); - method public boolean shouldIncludeTypesFromTextClassifier(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextClassifier.EntityConfig.Builder { - ctor public TextClassifier.EntityConfig.Builder(); - method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig build(); - method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig.Builder includeTypesFromTextClassifier(boolean); - method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig.Builder setExcludedTypes(@Nullable java.util.Collection); - method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig.Builder setHints(@Nullable java.util.Collection); - method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig.Builder setIncludedTypes(@Nullable java.util.Collection); - } - - public abstract class TextClassifierEvent implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public int[] getActionIndices(); - method @NonNull public String[] getEntityTypes(); - method public int getEventCategory(); - method @Nullable public android.view.textclassifier.TextClassificationContext getEventContext(); - method public int getEventIndex(); - method public int getEventType(); - method @NonNull public android.os.Bundle getExtras(); - method @Nullable public android.icu.util.ULocale getLocale(); - method @Nullable public String getModelName(); - method @Nullable public String getResultId(); - method @NonNull public float[] getScores(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int CATEGORY_CONVERSATION_ACTIONS = 3; // 0x3 - field public static final int CATEGORY_LANGUAGE_DETECTION = 4; // 0x4 - field public static final int CATEGORY_LINKIFY = 2; // 0x2 - field public static final int CATEGORY_SELECTION = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TYPE_ACTIONS_GENERATED = 20; // 0x14 - field public static final int TYPE_ACTIONS_SHOWN = 6; // 0x6 - field public static final int TYPE_AUTO_SELECTION = 5; // 0x5 - field public static final int TYPE_COPY_ACTION = 9; // 0x9 - field public static final int TYPE_CUT_ACTION = 11; // 0xb - field public static final int TYPE_LINKS_GENERATED = 21; // 0x15 - field public static final int TYPE_LINK_CLICKED = 7; // 0x7 - field public static final int TYPE_MANUAL_REPLY = 19; // 0x13 - field public static final int TYPE_OTHER_ACTION = 16; // 0x10 - field public static final int TYPE_OVERTYPE = 8; // 0x8 - field public static final int TYPE_PASTE_ACTION = 10; // 0xa - field public static final int TYPE_SELECTION_DESTROYED = 15; // 0xf - field public static final int TYPE_SELECTION_DRAG = 14; // 0xe - field public static final int TYPE_SELECTION_MODIFIED = 2; // 0x2 - field public static final int TYPE_SELECTION_RESET = 18; // 0x12 - field public static final int TYPE_SELECTION_STARTED = 1; // 0x1 - field public static final int TYPE_SELECT_ALL = 17; // 0x11 - field public static final int TYPE_SHARE_ACTION = 12; // 0xc - field public static final int TYPE_SMART_ACTION = 13; // 0xd - field public static final int TYPE_SMART_SELECTION_MULTI = 4; // 0x4 - field public static final int TYPE_SMART_SELECTION_SINGLE = 3; // 0x3 - } - - public abstract static class TextClassifierEvent.Builder> { - method @NonNull public T setActionIndices(@NonNull int...); - method @NonNull public T setEntityTypes(@NonNull java.lang.String...); - method @NonNull public T setEventContext(@Nullable android.view.textclassifier.TextClassificationContext); - method @NonNull public T setEventIndex(int); - method @NonNull public T setExtras(@NonNull android.os.Bundle); - method @NonNull public T setLocale(@Nullable android.icu.util.ULocale); - method @NonNull public T setModelName(@Nullable String); - method @NonNull public T setResultId(@Nullable String); - method @NonNull public T setScores(@NonNull float...); - } - - public static final class TextClassifierEvent.ConversationActionsEvent extends android.view.textclassifier.TextClassifierEvent implements android.os.Parcelable { - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextClassifierEvent.ConversationActionsEvent.Builder extends android.view.textclassifier.TextClassifierEvent.Builder { - ctor public TextClassifierEvent.ConversationActionsEvent.Builder(int); - method @NonNull public android.view.textclassifier.TextClassifierEvent.ConversationActionsEvent build(); - } - - public static final class TextClassifierEvent.LanguageDetectionEvent extends android.view.textclassifier.TextClassifierEvent implements android.os.Parcelable { - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextClassifierEvent.LanguageDetectionEvent.Builder extends android.view.textclassifier.TextClassifierEvent.Builder { - ctor public TextClassifierEvent.LanguageDetectionEvent.Builder(int); - method @NonNull public android.view.textclassifier.TextClassifierEvent.LanguageDetectionEvent build(); - } - - public static final class TextClassifierEvent.TextLinkifyEvent extends android.view.textclassifier.TextClassifierEvent implements android.os.Parcelable { - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextClassifierEvent.TextLinkifyEvent.Builder extends android.view.textclassifier.TextClassifierEvent.Builder { - ctor public TextClassifierEvent.TextLinkifyEvent.Builder(int); - method @NonNull public android.view.textclassifier.TextClassifierEvent.TextLinkifyEvent build(); - } - - public static final class TextClassifierEvent.TextSelectionEvent extends android.view.textclassifier.TextClassifierEvent implements android.os.Parcelable { - method public int getRelativeSuggestedWordEndIndex(); - method public int getRelativeSuggestedWordStartIndex(); - method public int getRelativeWordEndIndex(); - method public int getRelativeWordStartIndex(); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextClassifierEvent.TextSelectionEvent.Builder extends android.view.textclassifier.TextClassifierEvent.Builder { - ctor public TextClassifierEvent.TextSelectionEvent.Builder(int); - method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent build(); - method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent.Builder setRelativeSuggestedWordEndIndex(int); - method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent.Builder setRelativeSuggestedWordStartIndex(int); - method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent.Builder setRelativeWordEndIndex(int); - method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent.Builder setRelativeWordStartIndex(int); - } - - public final class TextLanguage implements android.os.Parcelable { - method public int describeContents(); - method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(@NonNull android.icu.util.ULocale); - method @NonNull public android.os.Bundle getExtras(); - method @Nullable public String getId(); - method @NonNull public android.icu.util.ULocale getLocale(int); - method @IntRange(from=0) public int getLocaleHypothesisCount(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextLanguage.Builder { - ctor public TextLanguage.Builder(); - method @NonNull public android.view.textclassifier.TextLanguage build(); - method @NonNull public android.view.textclassifier.TextLanguage.Builder putLocale(@NonNull android.icu.util.ULocale, @FloatRange(from=0.0, to=1.0) float); - method @NonNull public android.view.textclassifier.TextLanguage.Builder setExtras(@NonNull android.os.Bundle); - method @NonNull public android.view.textclassifier.TextLanguage.Builder setId(@Nullable String); - } - - public static final class TextLanguage.Request implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getCallingPackageName(); - method @NonNull public android.os.Bundle getExtras(); - method @NonNull public CharSequence getText(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextLanguage.Request.Builder { - ctor public TextLanguage.Request.Builder(@NonNull CharSequence); - method @NonNull public android.view.textclassifier.TextLanguage.Request build(); - method @NonNull public android.view.textclassifier.TextLanguage.Request.Builder setExtras(@NonNull android.os.Bundle); - } - - public final class TextLinks implements android.os.Parcelable { - method public int apply(@NonNull android.text.Spannable, int, @Nullable java.util.function.Function); - method public int describeContents(); - method @NonNull public android.os.Bundle getExtras(); - method @NonNull public java.util.Collection getLinks(); - method @NonNull public CharSequence getText(); - method public void writeToParcel(android.os.Parcel, int); - field public static final int APPLY_STRATEGY_IGNORE = 0; // 0x0 - field public static final int APPLY_STRATEGY_REPLACE = 1; // 0x1 - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STATUS_DIFFERENT_TEXT = 3; // 0x3 - field public static final int STATUS_LINKS_APPLIED = 0; // 0x0 - field public static final int STATUS_NO_LINKS_APPLIED = 2; // 0x2 - field public static final int STATUS_NO_LINKS_FOUND = 1; // 0x1 - field public static final int STATUS_UNSUPPORTED_CHARACTER = 4; // 0x4 - } - - public static final class TextLinks.Builder { - ctor public TextLinks.Builder(@NonNull String); - method @NonNull public android.view.textclassifier.TextLinks.Builder addLink(int, int, @NonNull java.util.Map); - method @NonNull public android.view.textclassifier.TextLinks.Builder addLink(int, int, @NonNull java.util.Map, @NonNull android.os.Bundle); - method @NonNull public android.view.textclassifier.TextLinks build(); - method @NonNull public android.view.textclassifier.TextLinks.Builder clearTextLinks(); - method @NonNull public android.view.textclassifier.TextLinks.Builder setExtras(@Nullable android.os.Bundle); - } - - public static final class TextLinks.Request implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getCallingPackageName(); - method @Nullable public android.os.LocaleList getDefaultLocales(); - method @Nullable public android.view.textclassifier.TextClassifier.EntityConfig getEntityConfig(); - method @NonNull public android.os.Bundle getExtras(); - method @Nullable public java.time.ZonedDateTime getReferenceTime(); - method @NonNull public CharSequence getText(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextLinks.Request.Builder { - ctor public TextLinks.Request.Builder(@NonNull CharSequence); - method @NonNull public android.view.textclassifier.TextLinks.Request build(); - method @NonNull public android.view.textclassifier.TextLinks.Request.Builder setDefaultLocales(@Nullable android.os.LocaleList); - method @NonNull public android.view.textclassifier.TextLinks.Request.Builder setEntityConfig(@Nullable android.view.textclassifier.TextClassifier.EntityConfig); - method public android.view.textclassifier.TextLinks.Request.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.view.textclassifier.TextLinks.Request.Builder setReferenceTime(@Nullable java.time.ZonedDateTime); - } - - public static final class TextLinks.TextLink implements android.os.Parcelable { - method public int describeContents(); - method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(String); - method public int getEnd(); - method @NonNull public String getEntity(int); - method public int getEntityCount(); - method @NonNull public android.os.Bundle getExtras(); - method public int getStart(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static class TextLinks.TextLinkSpan extends android.text.style.ClickableSpan { - ctor public TextLinks.TextLinkSpan(@NonNull android.view.textclassifier.TextLinks.TextLink); - method public final android.view.textclassifier.TextLinks.TextLink getTextLink(); - method public void onClick(android.view.View); - } - - public final class TextSelection implements android.os.Parcelable { - method public int describeContents(); - method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(String); - method @NonNull public String getEntity(int); - method @IntRange(from=0) public int getEntityCount(); - method @NonNull public android.os.Bundle getExtras(); - method @Nullable public String getId(); - method public int getSelectionEndIndex(); - method public int getSelectionStartIndex(); - method @Nullable public android.view.textclassifier.TextClassification getTextClassification(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextSelection.Builder { - ctor public TextSelection.Builder(@IntRange(from=0) int, @IntRange(from=0) int); - method @NonNull public android.view.textclassifier.TextSelection build(); - method @NonNull public android.view.textclassifier.TextSelection.Builder setEntityType(@NonNull String, @FloatRange(from=0.0, to=1.0) float); - method @NonNull public android.view.textclassifier.TextSelection.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.view.textclassifier.TextSelection.Builder setId(@Nullable String); - method @NonNull public android.view.textclassifier.TextSelection.Builder setTextClassification(@Nullable android.view.textclassifier.TextClassification); - } - - public static final class TextSelection.Request implements android.os.Parcelable { - method public int describeContents(); - method @Nullable public String getCallingPackageName(); - method @Nullable public android.os.LocaleList getDefaultLocales(); - method @IntRange(from=0) public int getEndIndex(); - method @NonNull public android.os.Bundle getExtras(); - method @IntRange(from=0) public int getStartIndex(); - method @NonNull public CharSequence getText(); - method public boolean shouldIncludeTextClassification(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class TextSelection.Request.Builder { - ctor public TextSelection.Request.Builder(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int); - method @NonNull public android.view.textclassifier.TextSelection.Request build(); - method @NonNull public android.view.textclassifier.TextSelection.Request.Builder setDefaultLocales(@Nullable android.os.LocaleList); - method @NonNull public android.view.textclassifier.TextSelection.Request.Builder setExtras(@Nullable android.os.Bundle); - method @NonNull public android.view.textclassifier.TextSelection.Request.Builder setIncludeTextClassification(boolean); - } - -} - -package android.view.textservice { - - public final class SentenceSuggestionsInfo implements android.os.Parcelable { - ctor public SentenceSuggestionsInfo(android.view.textservice.SuggestionsInfo[], int[], int[]); - ctor public SentenceSuggestionsInfo(android.os.Parcel); - method public int describeContents(); - method public int getLengthAt(int); - method public int getOffsetAt(int); - method public int getSuggestionsCount(); - method public android.view.textservice.SuggestionsInfo getSuggestionsInfoAt(int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class SpellCheckerInfo implements android.os.Parcelable { - method public int describeContents(); - method public android.content.ComponentName getComponent(); - method public String getId(); - method public String getPackageName(); - method public android.content.pm.ServiceInfo getServiceInfo(); - method public String getSettingsActivity(); - method public android.view.textservice.SpellCheckerSubtype getSubtypeAt(int); - method public int getSubtypeCount(); - method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); - method public CharSequence loadLabel(android.content.pm.PackageManager); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public class SpellCheckerSession { - method public void cancel(); - method public void close(); - method public void getSentenceSuggestions(android.view.textservice.TextInfo[], int); - method public android.view.textservice.SpellCheckerInfo getSpellChecker(); - method @Deprecated public void getSuggestions(android.view.textservice.TextInfo, int); - method @Deprecated public void getSuggestions(android.view.textservice.TextInfo[], int, boolean); - method public boolean isSessionDisconnected(); - field public static final String SERVICE_META_DATA = "android.view.textservice.scs"; - } - - public static interface SpellCheckerSession.SpellCheckerSessionListener { - method public void onGetSentenceSuggestions(android.view.textservice.SentenceSuggestionsInfo[]); - method public void onGetSuggestions(android.view.textservice.SuggestionsInfo[]); - } - - public static class SpellCheckerSession.SpellCheckerSessionParams { - method @NonNull public android.os.Bundle getExtras(); - method @Nullable public java.util.Locale getLocale(); - method public int getSupportedAttributes(); - method public boolean shouldReferToSpellCheckerLanguageSettings(); - } - - public static final class SpellCheckerSession.SpellCheckerSessionParams.Builder { - ctor public SpellCheckerSession.SpellCheckerSessionParams.Builder(); - method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams build(); - method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams.Builder setExtras(@NonNull android.os.Bundle); - method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams.Builder setLocale(@Nullable java.util.Locale); - method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams.Builder setShouldReferToSpellCheckerLanguageSettings(boolean); - method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams.Builder setSupportedAttributes(int); - } - - public final class SpellCheckerSubtype implements android.os.Parcelable { - ctor @Deprecated public SpellCheckerSubtype(int, String, String); - method public boolean containsExtraValueKey(String); - method public int describeContents(); - method public CharSequence getDisplayName(android.content.Context, String, android.content.pm.ApplicationInfo); - method public String getExtraValue(); - method public String getExtraValueOf(String); - method @NonNull public String getLanguageTag(); - method @Deprecated @NonNull public String getLocale(); - method public int getNameResId(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class SuggestionsInfo implements android.os.Parcelable { - ctor public SuggestionsInfo(int, String[]); - ctor public SuggestionsInfo(int, String[], int, int); - ctor public SuggestionsInfo(android.os.Parcel); - method public int describeContents(); - method public int getCookie(); - method public int getSequence(); - method public String getSuggestionAt(int); - method public int getSuggestionsAttributes(); - method public int getSuggestionsCount(); - method public void setCookieAndSequence(int, int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int RESULT_ATTR_DONT_SHOW_UI_FOR_SUGGESTIONS = 16; // 0x10 - field public static final int RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS = 4; // 0x4 - field public static final int RESULT_ATTR_IN_THE_DICTIONARY = 1; // 0x1 - field public static final int RESULT_ATTR_LOOKS_LIKE_GRAMMAR_ERROR = 8; // 0x8 - field public static final int RESULT_ATTR_LOOKS_LIKE_TYPO = 2; // 0x2 - } - - public final class TextInfo implements android.os.Parcelable { - ctor public TextInfo(String); - ctor public TextInfo(String, int, int); - ctor public TextInfo(CharSequence, int, int, int, int); - ctor public TextInfo(android.os.Parcel); - method public int describeContents(); - method public CharSequence getCharSequence(); - method public int getCookie(); - method public int getSequence(); - method public String getText(); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class TextServicesManager { - method @Nullable public android.view.textservice.SpellCheckerInfo getCurrentSpellCheckerInfo(); - method @NonNull public java.util.List getEnabledSpellCheckerInfos(); - method public boolean isSpellCheckerEnabled(); - method @Nullable public android.view.textservice.SpellCheckerSession newSpellCheckerSession(@Nullable android.os.Bundle, @Nullable java.util.Locale, @NonNull android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener, boolean); - method @Nullable public android.view.textservice.SpellCheckerSession newSpellCheckerSession(@NonNull android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams, @NonNull java.util.concurrent.Executor, @NonNull android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener); - } - -} - -package android.view.translation { - - public final class TranslationCapability implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.view.translation.TranslationSpec getSourceSpec(); - method public int getState(); - method public int getSupportedTranslationFlags(); - method @NonNull public android.view.translation.TranslationSpec getTargetSpec(); - method public boolean isUiTranslationEnabled(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int STATE_AVAILABLE_TO_DOWNLOAD = 1; // 0x1 - field public static final int STATE_DOWNLOADING = 2; // 0x2 - field public static final int STATE_NOT_AVAILABLE = 4; // 0x4 - field public static final int STATE_ON_DEVICE = 3; // 0x3 - } - - public final class TranslationContext implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.view.translation.TranslationSpec getSourceSpec(); - method @NonNull public android.view.translation.TranslationSpec getTargetSpec(); - method public int getTranslationFlags(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_DEFINITIONS = 4; // 0x4 - field public static final int FLAG_LOW_LATENCY = 1; // 0x1 - field public static final int FLAG_TRANSLITERATION = 2; // 0x2 - } - - public static final class TranslationContext.Builder { - ctor public TranslationContext.Builder(@NonNull android.view.translation.TranslationSpec, @NonNull android.view.translation.TranslationSpec); - method @NonNull public android.view.translation.TranslationContext build(); - method @NonNull public android.view.translation.TranslationContext.Builder setTranslationFlags(int); - } - - public final class TranslationManager { - method public void addOnDeviceTranslationCapabilityUpdateListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method public void createOnDeviceTranslator(@NonNull android.view.translation.TranslationContext, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - method @NonNull @WorkerThread public java.util.Set getOnDeviceTranslationCapabilities(int, int); - method @Nullable public android.app.PendingIntent getOnDeviceTranslationSettingsActivityIntent(); - method public void removeOnDeviceTranslationCapabilityUpdateListener(@NonNull java.util.function.Consumer); - } - - public final class TranslationRequest implements android.os.Parcelable { - method public int describeContents(); - method public int getFlags(); - method @NonNull public java.util.List getTranslationRequestValues(); - method @NonNull public java.util.List getViewTranslationRequests(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int FLAG_DICTIONARY_RESULT = 2; // 0x2 - field public static final int FLAG_PARTIAL_RESPONSES = 8; // 0x8 - field public static final int FLAG_TRANSLATION_RESULT = 1; // 0x1 - field public static final int FLAG_TRANSLITERATION_RESULT = 4; // 0x4 - } - - public static final class TranslationRequest.Builder { - ctor public TranslationRequest.Builder(); - method @NonNull public android.view.translation.TranslationRequest build(); - method @NonNull public android.view.translation.TranslationRequest.Builder setFlags(int); - method @NonNull public android.view.translation.TranslationRequest.Builder setTranslationRequestValues(@NonNull java.util.List); - method @NonNull public android.view.translation.TranslationRequest.Builder setViewTranslationRequests(@NonNull java.util.List); - } - - public final class TranslationRequestValue implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public static android.view.translation.TranslationRequestValue forText(@NonNull CharSequence); - method @Nullable public CharSequence getText(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public final class TranslationResponse implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.util.SparseArray getTranslationResponseValues(); - method public int getTranslationStatus(); - method @NonNull public android.util.SparseArray getViewTranslationResponses(); - method public boolean isFinalResponse(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int TRANSLATION_STATUS_CONTEXT_UNSUPPORTED = 2; // 0x2 - field public static final int TRANSLATION_STATUS_SUCCESS = 0; // 0x0 - field public static final int TRANSLATION_STATUS_UNKNOWN_ERROR = 1; // 0x1 - } - - public static final class TranslationResponse.Builder { - ctor public TranslationResponse.Builder(int); - method @NonNull public android.view.translation.TranslationResponse build(); - method @NonNull public android.view.translation.TranslationResponse.Builder setFinalResponse(boolean); - method @NonNull public android.view.translation.TranslationResponse.Builder setTranslationResponseValue(int, @NonNull android.view.translation.TranslationResponseValue); - method @NonNull public android.view.translation.TranslationResponse.Builder setTranslationResponseValues(@NonNull android.util.SparseArray); - method @NonNull public android.view.translation.TranslationResponse.Builder setViewTranslationResponse(int, @NonNull android.view.translation.ViewTranslationResponse); - method @NonNull public android.view.translation.TranslationResponse.Builder setViewTranslationResponses(@NonNull android.util.SparseArray); - } - - public final class TranslationResponseValue implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public static android.view.translation.TranslationResponseValue forError(); - method @NonNull public android.os.Bundle getExtras(); - method public int getStatusCode(); - method @Nullable public CharSequence getText(); - method @Nullable public CharSequence getTransliteration(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String EXTRA_DEFINITIONS = "android.view.translation.extra.DEFINITIONS"; - field public static final int STATUS_ERROR = 1; // 0x1 - field public static final int STATUS_SUCCESS = 0; // 0x0 - } - - public static final class TranslationResponseValue.Builder { - ctor public TranslationResponseValue.Builder(int); - method @NonNull public android.view.translation.TranslationResponseValue build(); - method @NonNull public android.view.translation.TranslationResponseValue.Builder setExtras(@NonNull android.os.Bundle); - method @NonNull public android.view.translation.TranslationResponseValue.Builder setText(@NonNull CharSequence); - method @NonNull public android.view.translation.TranslationResponseValue.Builder setTransliteration(@NonNull CharSequence); - } - - public final class TranslationSpec implements android.os.Parcelable { - ctor public TranslationSpec(@NonNull android.icu.util.ULocale, int); - method public int describeContents(); - method public int getDataFormat(); - method @NonNull public android.icu.util.ULocale getLocale(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final int DATA_FORMAT_TEXT = 1; // 0x1 - } - - public class Translator { - method public void destroy(); - method public boolean isDestroyed(); - method @Nullable public void translate(@NonNull android.view.translation.TranslationRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); - } - - public final class UiTranslationManager { - method public void registerUiTranslationStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.view.translation.UiTranslationStateCallback); - method public void unregisterUiTranslationStateCallback(@NonNull android.view.translation.UiTranslationStateCallback); - } - - public interface UiTranslationStateCallback { - method public void onFinished(); - method public default void onFinished(@NonNull String); - method public void onPaused(); - method public default void onPaused(@NonNull String); - method public default void onResumed(@NonNull android.icu.util.ULocale, @NonNull android.icu.util.ULocale); - method public default void onResumed(@NonNull android.icu.util.ULocale, @NonNull android.icu.util.ULocale, @NonNull String); - method public default void onStarted(@NonNull android.icu.util.ULocale, @NonNull android.icu.util.ULocale); - method public default void onStarted(@NonNull android.icu.util.ULocale, @NonNull android.icu.util.ULocale, @NonNull String); - } - - @UiThread public interface ViewTranslationCallback { - method public boolean onClearTranslation(@NonNull android.view.View); - method public boolean onHideTranslation(@NonNull android.view.View); - method public boolean onShowTranslation(@NonNull android.view.View); - } - - public final class ViewTranslationRequest implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.view.autofill.AutofillId getAutofillId(); - method @NonNull public java.util.Set getKeys(); - method @NonNull public android.view.translation.TranslationRequestValue getValue(@NonNull String); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String ID_TEXT = "android:text"; - } - - public static final class ViewTranslationRequest.Builder { - ctor public ViewTranslationRequest.Builder(@NonNull android.view.autofill.AutofillId); - ctor public ViewTranslationRequest.Builder(@NonNull android.view.autofill.AutofillId, long); - method @NonNull public android.view.translation.ViewTranslationRequest build(); - method @NonNull public android.view.translation.ViewTranslationRequest.Builder setValue(@NonNull String, @NonNull android.view.translation.TranslationRequestValue); - } - - public final class ViewTranslationResponse implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.view.autofill.AutofillId getAutofillId(); - method @NonNull public java.util.Set getKeys(); - method @NonNull public android.view.translation.TranslationResponseValue getValue(@NonNull String); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class ViewTranslationResponse.Builder { - ctor public ViewTranslationResponse.Builder(@NonNull android.view.autofill.AutofillId); - method @NonNull public android.view.translation.ViewTranslationResponse build(); - method public android.view.translation.ViewTranslationResponse.Builder setValue(String, android.view.translation.TranslationResponseValue); - } - -} - -package android.webkit { - - public abstract class ClientCertRequest { - ctor public ClientCertRequest(); - method public abstract void cancel(); - method public abstract String getHost(); - method @Nullable public abstract String[] getKeyTypes(); - method public abstract int getPort(); - method @Nullable public abstract java.security.Principal[] getPrincipals(); - method public abstract void ignore(); - method public abstract void proceed(java.security.PrivateKey, java.security.cert.X509Certificate[]); - } - - public class ConsoleMessage { - ctor public ConsoleMessage(String, String, int, android.webkit.ConsoleMessage.MessageLevel); - method public int lineNumber(); - method public String message(); - method public android.webkit.ConsoleMessage.MessageLevel messageLevel(); - method public String sourceId(); - } - - public enum ConsoleMessage.MessageLevel { - enum_constant public static final android.webkit.ConsoleMessage.MessageLevel DEBUG; - enum_constant public static final android.webkit.ConsoleMessage.MessageLevel ERROR; - enum_constant public static final android.webkit.ConsoleMessage.MessageLevel LOG; - enum_constant public static final android.webkit.ConsoleMessage.MessageLevel TIP; - enum_constant public static final android.webkit.ConsoleMessage.MessageLevel WARNING; - } - - public abstract class CookieManager { - ctor @Deprecated public CookieManager(); - method public abstract boolean acceptCookie(); - method public abstract boolean acceptThirdPartyCookies(android.webkit.WebView); - method public static boolean allowFileSchemeCookies(); - method public abstract void flush(); - method public abstract String getCookie(String); - method public static android.webkit.CookieManager getInstance(); - method public abstract boolean hasCookies(); - method @Deprecated public abstract void removeAllCookie(); - method public abstract void removeAllCookies(@Nullable android.webkit.ValueCallback); - method @Deprecated public abstract void removeExpiredCookie(); - method @Deprecated public abstract void removeSessionCookie(); - method public abstract void removeSessionCookies(@Nullable android.webkit.ValueCallback); - method public abstract void setAcceptCookie(boolean); - method @Deprecated public static void setAcceptFileSchemeCookies(boolean); - method public abstract void setAcceptThirdPartyCookies(android.webkit.WebView, boolean); - method public abstract void setCookie(String, String); - method public abstract void setCookie(String, String, @Nullable android.webkit.ValueCallback); - } - - @Deprecated public final class CookieSyncManager implements java.lang.Runnable { - method @Deprecated public static android.webkit.CookieSyncManager createInstance(android.content.Context); - method @Deprecated public static android.webkit.CookieSyncManager getInstance(); - method @Deprecated public void resetSync(); - method @Deprecated public void run(); - method @Deprecated public void startSync(); - method @Deprecated public void stopSync(); - method @Deprecated public void sync(); - method @Deprecated protected void syncFromRamToFlash(); - } - - public class DateSorter { - ctor public DateSorter(android.content.Context); - method public long getBoundary(int); - method public int getIndex(long); - method public String getLabel(int); - field public static final int DAY_COUNT = 5; // 0x5 - } - - public interface DownloadListener { - method public void onDownloadStart(String, String, String, String, long); - } - - public class GeolocationPermissions { - method public void allow(String); - method public void clear(String); - method public void clearAll(); - method public void getAllowed(String, android.webkit.ValueCallback); - method public static android.webkit.GeolocationPermissions getInstance(); - method public void getOrigins(android.webkit.ValueCallback>); - } - - public static interface GeolocationPermissions.Callback { - method public void invoke(String, boolean, boolean); - } - - public class HttpAuthHandler extends android.os.Handler { - method public void cancel(); - method public void proceed(String, String); - method public boolean useHttpAuthUsernamePassword(); - } - - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface JavascriptInterface { - } - - public class JsPromptResult extends android.webkit.JsResult { - method public void confirm(String); - } - - public class JsResult { - method public final void cancel(); - method public final void confirm(); - } - - public class MimeTypeMap { - method @Nullable public String getExtensionFromMimeType(String); - method public static String getFileExtensionFromUrl(String); - method @Nullable public String getMimeTypeFromExtension(String); - method public static android.webkit.MimeTypeMap getSingleton(); - method public boolean hasExtension(String); - method public boolean hasMimeType(String); - } - - public abstract class PermissionRequest { - ctor public PermissionRequest(); - method public abstract void deny(); - method public abstract android.net.Uri getOrigin(); - method public abstract String[] getResources(); - method public abstract void grant(String[]); - field public static final String RESOURCE_AUDIO_CAPTURE = "android.webkit.resource.AUDIO_CAPTURE"; - field public static final String RESOURCE_MIDI_SYSEX = "android.webkit.resource.MIDI_SYSEX"; - field public static final String RESOURCE_PROTECTED_MEDIA_ID = "android.webkit.resource.PROTECTED_MEDIA_ID"; - field public static final String RESOURCE_VIDEO_CAPTURE = "android.webkit.resource.VIDEO_CAPTURE"; - } - - public interface PluginStub { - method public android.view.View getEmbeddedView(int, android.content.Context); - method public android.view.View getFullScreenView(int, android.content.Context); - } - - public abstract class RenderProcessGoneDetail { - ctor @Deprecated public RenderProcessGoneDetail(); - method public abstract boolean didCrash(); - method public abstract int rendererPriorityAtExit(); - } - - public abstract class SafeBrowsingResponse { - ctor @Deprecated public SafeBrowsingResponse(); - method public abstract void backToSafety(boolean); - method public abstract void proceed(boolean); - method public abstract void showInterstitial(boolean); - } - - public class ServiceWorkerClient { - ctor public ServiceWorkerClient(); - method @Nullable public android.webkit.WebResourceResponse shouldInterceptRequest(android.webkit.WebResourceRequest); - } - - public abstract class ServiceWorkerController { - ctor @Deprecated public ServiceWorkerController(); - method @NonNull public static android.webkit.ServiceWorkerController getInstance(); - method @NonNull public abstract android.webkit.ServiceWorkerWebSettings getServiceWorkerWebSettings(); - method public abstract void setServiceWorkerClient(@Nullable android.webkit.ServiceWorkerClient); - } - - public abstract class ServiceWorkerWebSettings { - ctor public ServiceWorkerWebSettings(); - method public abstract boolean getAllowContentAccess(); - method public abstract boolean getAllowFileAccess(); - method public abstract boolean getBlockNetworkLoads(); - method public abstract int getCacheMode(); - method public abstract void setAllowContentAccess(boolean); - method public abstract void setAllowFileAccess(boolean); - method public abstract void setBlockNetworkLoads(boolean); - method public abstract void setCacheMode(int); - } - - public class SslErrorHandler extends android.os.Handler { - method public void cancel(); - method public void proceed(); - } - - public class TracingConfig { - method @NonNull public java.util.List getCustomIncludedCategories(); - method public int getPredefinedCategories(); - method public int getTracingMode(); - field public static final int CATEGORIES_ALL = 1; // 0x1 - field public static final int CATEGORIES_ANDROID_WEBVIEW = 2; // 0x2 - field public static final int CATEGORIES_FRAME_VIEWER = 64; // 0x40 - field public static final int CATEGORIES_INPUT_LATENCY = 8; // 0x8 - field public static final int CATEGORIES_JAVASCRIPT_AND_RENDERING = 32; // 0x20 - field public static final int CATEGORIES_NONE = 0; // 0x0 - field public static final int CATEGORIES_RENDERING = 16; // 0x10 - field public static final int CATEGORIES_WEB_DEVELOPER = 4; // 0x4 - field public static final int RECORD_CONTINUOUSLY = 1; // 0x1 - field public static final int RECORD_UNTIL_FULL = 0; // 0x0 - } - - public static class TracingConfig.Builder { - ctor public TracingConfig.Builder(); - method public android.webkit.TracingConfig.Builder addCategories(int...); - method public android.webkit.TracingConfig.Builder addCategories(java.lang.String...); - method public android.webkit.TracingConfig.Builder addCategories(java.util.Collection); - method public android.webkit.TracingConfig build(); - method public android.webkit.TracingConfig.Builder setTracingMode(int); - } - - public abstract class TracingController { - ctor @Deprecated public TracingController(); - method @NonNull public static android.webkit.TracingController getInstance(); - method public abstract boolean isTracing(); - method public abstract void start(@NonNull android.webkit.TracingConfig); - method public abstract boolean stop(@Nullable java.io.OutputStream, @NonNull java.util.concurrent.Executor); - } - - public final class URLUtil { - ctor public URLUtil(); - method public static String composeSearchUrl(String, String, String); - method public static byte[] decode(byte[]) throws java.lang.IllegalArgumentException; - method public static String guessFileName(String, @Nullable String, @Nullable String); - method public static String guessUrl(String); - method public static boolean isAboutUrl(String); - method public static boolean isAssetUrl(String); - method public static boolean isContentUrl(String); - method @Deprecated public static boolean isCookielessProxyUrl(String); - method public static boolean isDataUrl(String); - method public static boolean isFileUrl(String); - method public static boolean isHttpUrl(String); - method public static boolean isHttpsUrl(String); - method public static boolean isJavaScriptUrl(String); - method public static boolean isNetworkUrl(String); - method public static boolean isValidUrl(String); - method public static String stripAnchor(String); - } - - public interface ValueCallback { - method public void onReceiveValue(T); - } - - public abstract class WebBackForwardList implements java.lang.Cloneable java.io.Serializable { - ctor public WebBackForwardList(); - method protected abstract android.webkit.WebBackForwardList clone(); - method public abstract int getCurrentIndex(); - method @Nullable public abstract android.webkit.WebHistoryItem getCurrentItem(); - method public abstract android.webkit.WebHistoryItem getItemAtIndex(int); - method public abstract int getSize(); - } - - public class WebChromeClient { - ctor public WebChromeClient(); - method @Nullable public android.graphics.Bitmap getDefaultVideoPoster(); - method @Nullable public android.view.View getVideoLoadingProgressView(); - method public void getVisitedHistory(android.webkit.ValueCallback); - method public void onCloseWindow(android.webkit.WebView); - method @Deprecated public void onConsoleMessage(String, int, String); - method public boolean onConsoleMessage(android.webkit.ConsoleMessage); - method public boolean onCreateWindow(android.webkit.WebView, boolean, boolean, android.os.Message); - method @Deprecated public void onExceededDatabaseQuota(String, String, long, long, long, android.webkit.WebStorage.QuotaUpdater); - method public void onGeolocationPermissionsHidePrompt(); - method public void onGeolocationPermissionsShowPrompt(String, android.webkit.GeolocationPermissions.Callback); - method public void onHideCustomView(); - method public boolean onJsAlert(android.webkit.WebView, String, String, android.webkit.JsResult); - method public boolean onJsBeforeUnload(android.webkit.WebView, String, String, android.webkit.JsResult); - method public boolean onJsConfirm(android.webkit.WebView, String, String, android.webkit.JsResult); - method public boolean onJsPrompt(android.webkit.WebView, String, String, String, android.webkit.JsPromptResult); - method @Deprecated public boolean onJsTimeout(); - method public void onPermissionRequest(android.webkit.PermissionRequest); - method public void onPermissionRequestCanceled(android.webkit.PermissionRequest); - method public void onProgressChanged(android.webkit.WebView, int); - method public void onReceivedIcon(android.webkit.WebView, android.graphics.Bitmap); - method public void onReceivedTitle(android.webkit.WebView, String); - method public void onReceivedTouchIconUrl(android.webkit.WebView, String, boolean); - method public void onRequestFocus(android.webkit.WebView); - method public void onShowCustomView(android.view.View, android.webkit.WebChromeClient.CustomViewCallback); - method @Deprecated public void onShowCustomView(android.view.View, int, android.webkit.WebChromeClient.CustomViewCallback); - method public boolean onShowFileChooser(android.webkit.WebView, android.webkit.ValueCallback, android.webkit.WebChromeClient.FileChooserParams); - } - - public static interface WebChromeClient.CustomViewCallback { - method public void onCustomViewHidden(); - } - - public abstract static class WebChromeClient.FileChooserParams { - ctor public WebChromeClient.FileChooserParams(); - method public abstract android.content.Intent createIntent(); - method public abstract String[] getAcceptTypes(); - method @Nullable public abstract String getFilenameHint(); - method public abstract int getMode(); - method @FlaggedApi("android.webkit.file_system_access") public int getPermissionMode(); - method @Nullable public abstract CharSequence getTitle(); - method public abstract boolean isCaptureEnabled(); - method @Nullable public static android.net.Uri[] parseResult(int, android.content.Intent); - field public static final int MODE_OPEN = 0; // 0x0 - field @FlaggedApi("android.webkit.file_system_access") public static final int MODE_OPEN_FOLDER = 2; // 0x2 - field public static final int MODE_OPEN_MULTIPLE = 1; // 0x1 - field public static final int MODE_SAVE = 3; // 0x3 - field @FlaggedApi("android.webkit.file_system_access") public static final int PERMISSION_MODE_READ = 0; // 0x0 - field @FlaggedApi("android.webkit.file_system_access") public static final int PERMISSION_MODE_READ_WRITE = 1; // 0x1 - } - - public abstract class WebHistoryItem implements java.lang.Cloneable { - ctor public WebHistoryItem(); - method protected abstract android.webkit.WebHistoryItem clone(); - method @Nullable public abstract android.graphics.Bitmap getFavicon(); - method public abstract String getOriginalUrl(); - method public abstract String getTitle(); - method public abstract String getUrl(); - } - - @Deprecated public abstract class WebIconDatabase { - ctor @Deprecated public WebIconDatabase(); - method @Deprecated public abstract void close(); - method @Deprecated public static android.webkit.WebIconDatabase getInstance(); - method @Deprecated public abstract void open(String); - method @Deprecated public abstract void releaseIconForPageUrl(String); - method @Deprecated public abstract void removeAllIcons(); - method @Deprecated public abstract void requestIconForPageUrl(String, android.webkit.WebIconDatabase.IconListener); - method @Deprecated public abstract void retainIconForPageUrl(String); - } - - @Deprecated public static interface WebIconDatabase.IconListener { - method @Deprecated public void onReceivedIcon(String, android.graphics.Bitmap); - } - - public class WebMessage { - ctor public WebMessage(String); - ctor public WebMessage(String, android.webkit.WebMessagePort[]); - method public String getData(); - method @Nullable public android.webkit.WebMessagePort[] getPorts(); - } - - public abstract class WebMessagePort { - method public abstract void close(); - method public abstract void postMessage(android.webkit.WebMessage); - method public abstract void setWebMessageCallback(android.webkit.WebMessagePort.WebMessageCallback); - method public abstract void setWebMessageCallback(android.webkit.WebMessagePort.WebMessageCallback, android.os.Handler); - } - - public abstract static class WebMessagePort.WebMessageCallback { - ctor public WebMessagePort.WebMessageCallback(); - method public void onMessage(android.webkit.WebMessagePort, android.webkit.WebMessage); - } - - public abstract class WebResourceError { - method public abstract CharSequence getDescription(); - method public abstract int getErrorCode(); - } - - public interface WebResourceRequest { - method public String getMethod(); - method public java.util.Map getRequestHeaders(); - method public android.net.Uri getUrl(); - method public boolean hasGesture(); - method public boolean isForMainFrame(); - method public boolean isRedirect(); - } - - public class WebResourceResponse { - ctor public WebResourceResponse(String, String, java.io.InputStream); - ctor public WebResourceResponse(String, String, int, @NonNull String, java.util.Map, java.io.InputStream); - method public java.io.InputStream getData(); - method public String getEncoding(); - method public String getMimeType(); - method public String getReasonPhrase(); - method public java.util.Map getResponseHeaders(); - method public int getStatusCode(); - method public void setData(java.io.InputStream); - method public void setEncoding(String); - method public void setMimeType(String); - method public void setResponseHeaders(java.util.Map); - method public void setStatusCodeAndReasonPhrase(int, @NonNull String); - } - - public abstract class WebSettings { - ctor public WebSettings(); - method @Deprecated public abstract boolean enableSmoothTransition(); - method public abstract boolean getAllowContentAccess(); - method public abstract boolean getAllowFileAccess(); - method public abstract boolean getAllowFileAccessFromFileURLs(); - method public abstract boolean getAllowUniversalAccessFromFileURLs(); - method public abstract boolean getBlockNetworkImage(); - method public abstract boolean getBlockNetworkLoads(); - method public abstract boolean getBuiltInZoomControls(); - method public abstract int getCacheMode(); - method public abstract String getCursiveFontFamily(); - method @Deprecated public abstract boolean getDatabaseEnabled(); - method @Deprecated public abstract String getDatabasePath(); - method public abstract int getDefaultFixedFontSize(); - method public abstract int getDefaultFontSize(); - method public abstract String getDefaultTextEncodingName(); - method public static String getDefaultUserAgent(android.content.Context); - method @Deprecated public abstract android.webkit.WebSettings.ZoomDensity getDefaultZoom(); - method public abstract int getDisabledActionModeMenuItems(); - method public abstract boolean getDisplayZoomControls(); - method public abstract boolean getDomStorageEnabled(); - method public abstract String getFantasyFontFamily(); - method public abstract String getFixedFontFamily(); - method @Deprecated public int getForceDark(); - method public abstract boolean getJavaScriptCanOpenWindowsAutomatically(); - method public abstract boolean getJavaScriptEnabled(); - method public abstract android.webkit.WebSettings.LayoutAlgorithm getLayoutAlgorithm(); - method @Deprecated public abstract boolean getLightTouchEnabled(); - method public abstract boolean getLoadWithOverviewMode(); - method public abstract boolean getLoadsImagesAutomatically(); - method public abstract boolean getMediaPlaybackRequiresUserGesture(); - method public abstract int getMinimumFontSize(); - method public abstract int getMinimumLogicalFontSize(); - method public abstract int getMixedContentMode(); - method public abstract boolean getOffscreenPreRaster(); - method @Deprecated public abstract android.webkit.WebSettings.PluginState getPluginState(); - method public abstract boolean getSafeBrowsingEnabled(); - method public abstract String getSansSerifFontFamily(); - method @Deprecated public abstract boolean getSaveFormData(); - method @Deprecated public abstract boolean getSavePassword(); - method public abstract String getSerifFontFamily(); - method public abstract String getStandardFontFamily(); - method @Deprecated public android.webkit.WebSettings.TextSize getTextSize(); - method public abstract int getTextZoom(); - method public abstract boolean getUseWideViewPort(); - method public abstract String getUserAgentString(); - method public boolean isAlgorithmicDarkeningAllowed(); - method public void setAlgorithmicDarkeningAllowed(boolean); - method public abstract void setAllowContentAccess(boolean); - method public abstract void setAllowFileAccess(boolean); - method @Deprecated public abstract void setAllowFileAccessFromFileURLs(boolean); - method @Deprecated public abstract void setAllowUniversalAccessFromFileURLs(boolean); - method public abstract void setBlockNetworkImage(boolean); - method public abstract void setBlockNetworkLoads(boolean); - method public abstract void setBuiltInZoomControls(boolean); - method public abstract void setCacheMode(int); - method public abstract void setCursiveFontFamily(String); - method @Deprecated public abstract void setDatabaseEnabled(boolean); - method @Deprecated public abstract void setDatabasePath(String); - method public abstract void setDefaultFixedFontSize(int); - method public abstract void setDefaultFontSize(int); - method public abstract void setDefaultTextEncodingName(String); - method @Deprecated public abstract void setDefaultZoom(android.webkit.WebSettings.ZoomDensity); - method public abstract void setDisabledActionModeMenuItems(int); - method public abstract void setDisplayZoomControls(boolean); - method public abstract void setDomStorageEnabled(boolean); - method @Deprecated public abstract void setEnableSmoothTransition(boolean); - method public abstract void setFantasyFontFamily(String); - method public abstract void setFixedFontFamily(String); - method @Deprecated public void setForceDark(int); - method @Deprecated public abstract void setGeolocationDatabasePath(String); - method public abstract void setGeolocationEnabled(boolean); - method public abstract void setJavaScriptCanOpenWindowsAutomatically(boolean); - method public abstract void setJavaScriptEnabled(boolean); - method public abstract void setLayoutAlgorithm(android.webkit.WebSettings.LayoutAlgorithm); - method @Deprecated public abstract void setLightTouchEnabled(boolean); - method public abstract void setLoadWithOverviewMode(boolean); - method public abstract void setLoadsImagesAutomatically(boolean); - method public abstract void setMediaPlaybackRequiresUserGesture(boolean); - method public abstract void setMinimumFontSize(int); - method public abstract void setMinimumLogicalFontSize(int); - method public abstract void setMixedContentMode(int); - method public abstract void setNeedInitialFocus(boolean); - method public abstract void setOffscreenPreRaster(boolean); - method @Deprecated public abstract void setPluginState(android.webkit.WebSettings.PluginState); - method @Deprecated public abstract void setRenderPriority(android.webkit.WebSettings.RenderPriority); - method public abstract void setSafeBrowsingEnabled(boolean); - method public abstract void setSansSerifFontFamily(String); - method @Deprecated public abstract void setSaveFormData(boolean); - method @Deprecated public abstract void setSavePassword(boolean); - method public abstract void setSerifFontFamily(String); - method public abstract void setStandardFontFamily(String); - method public abstract void setSupportMultipleWindows(boolean); - method public abstract void setSupportZoom(boolean); - method @Deprecated public void setTextSize(android.webkit.WebSettings.TextSize); - method public abstract void setTextZoom(int); - method public abstract void setUseWideViewPort(boolean); - method public abstract void setUserAgentString(@Nullable String); - method public abstract boolean supportMultipleWindows(); - method public abstract boolean supportZoom(); - field @Deprecated public static final int FORCE_DARK_AUTO = 1; // 0x1 - field @Deprecated public static final int FORCE_DARK_OFF = 0; // 0x0 - field @Deprecated public static final int FORCE_DARK_ON = 2; // 0x2 - field public static final int LOAD_CACHE_ELSE_NETWORK = 1; // 0x1 - field public static final int LOAD_CACHE_ONLY = 3; // 0x3 - field public static final int LOAD_DEFAULT = -1; // 0xffffffff - field @Deprecated public static final int LOAD_NORMAL = 0; // 0x0 - field public static final int LOAD_NO_CACHE = 2; // 0x2 - field public static final int MENU_ITEM_NONE = 0; // 0x0 - field public static final int MENU_ITEM_PROCESS_TEXT = 4; // 0x4 - field public static final int MENU_ITEM_SHARE = 1; // 0x1 - field public static final int MENU_ITEM_WEB_SEARCH = 2; // 0x2 - field public static final int MIXED_CONTENT_ALWAYS_ALLOW = 0; // 0x0 - field public static final int MIXED_CONTENT_COMPATIBILITY_MODE = 2; // 0x2 - field public static final int MIXED_CONTENT_NEVER_ALLOW = 1; // 0x1 - } - - public enum WebSettings.LayoutAlgorithm { - enum_constant @Deprecated public static final android.webkit.WebSettings.LayoutAlgorithm NARROW_COLUMNS; - enum_constant public static final android.webkit.WebSettings.LayoutAlgorithm NORMAL; - enum_constant @Deprecated public static final android.webkit.WebSettings.LayoutAlgorithm SINGLE_COLUMN; - enum_constant public static final android.webkit.WebSettings.LayoutAlgorithm TEXT_AUTOSIZING; - } - - public enum WebSettings.PluginState { - enum_constant public static final android.webkit.WebSettings.PluginState OFF; - enum_constant public static final android.webkit.WebSettings.PluginState ON; - enum_constant public static final android.webkit.WebSettings.PluginState ON_DEMAND; - } - - public enum WebSettings.RenderPriority { - enum_constant public static final android.webkit.WebSettings.RenderPriority HIGH; - enum_constant public static final android.webkit.WebSettings.RenderPriority LOW; - enum_constant public static final android.webkit.WebSettings.RenderPriority NORMAL; - } - - @Deprecated public enum WebSettings.TextSize { - enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize LARGER; - enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize LARGEST; - enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize NORMAL; - enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize SMALLER; - enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize SMALLEST; - } - - public enum WebSettings.ZoomDensity { - enum_constant public static final android.webkit.WebSettings.ZoomDensity CLOSE; - enum_constant public static final android.webkit.WebSettings.ZoomDensity FAR; - enum_constant public static final android.webkit.WebSettings.ZoomDensity MEDIUM; - } - - public class WebStorage { - method public void deleteAllData(); - method public void deleteOrigin(String); - method public static android.webkit.WebStorage getInstance(); - method public void getOrigins(android.webkit.ValueCallback); - method public void getQuotaForOrigin(String, android.webkit.ValueCallback); - method public void getUsageForOrigin(String, android.webkit.ValueCallback); - method @Deprecated public void setQuotaForOrigin(String, long); - } - - public static class WebStorage.Origin { - method public String getOrigin(); - method public long getQuota(); - method public long getUsage(); - } - - @Deprecated public static interface WebStorage.QuotaUpdater { - method @Deprecated public void updateQuota(long); - } - - public class WebView extends android.widget.AbsoluteLayout implements android.view.ViewGroup.OnHierarchyChangeListener android.view.ViewTreeObserver.OnGlobalFocusChangeListener { - ctor public WebView(@NonNull android.content.Context); - ctor public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); - ctor public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); - ctor public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, int); - ctor @Deprecated public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, boolean); - method public void addJavascriptInterface(@NonNull Object, @NonNull String); - method public boolean canGoBack(); - method public boolean canGoBackOrForward(int); - method public boolean canGoForward(); - method @Deprecated public boolean canZoomIn(); - method @Deprecated public boolean canZoomOut(); - method @Deprecated public android.graphics.Picture capturePicture(); - method public void clearCache(boolean); - method public static void clearClientCertPreferences(@Nullable Runnable); - method public void clearFormData(); - method public void clearHistory(); - method public void clearMatches(); - method public void clearSslPreferences(); - method @Deprecated public void clearView(); - method @NonNull public android.webkit.WebBackForwardList copyBackForwardList(); - method @Deprecated public android.print.PrintDocumentAdapter createPrintDocumentAdapter(); - method @NonNull public android.print.PrintDocumentAdapter createPrintDocumentAdapter(@NonNull String); - method @NonNull public android.webkit.WebMessagePort[] createWebMessageChannel(); - method public void destroy(); - method public static void disableWebView(); - method public void documentHasImages(@NonNull android.os.Message); - method public static void enableSlowWholeDocumentDraw(); - method public void evaluateJavascript(@NonNull String, @Nullable android.webkit.ValueCallback); - method @Deprecated @Nullable public static String findAddress(String); - method @Deprecated public int findAll(String); - method public void findAllAsync(@NonNull String); - method public void findNext(boolean); - method public void flingScroll(int, int); - method @Deprecated public void freeMemory(); - method @Nullable public android.net.http.SslCertificate getCertificate(); - method public int getContentHeight(); - method @Nullable public static android.content.pm.PackageInfo getCurrentWebViewPackage(); - method @Nullable public android.graphics.Bitmap getFavicon(); - method @NonNull public android.webkit.WebView.HitTestResult getHitTestResult(); - method @Deprecated @Nullable public String[] getHttpAuthUsernamePassword(String, String); - method @Nullable public String getOriginalUrl(); - method public int getProgress(); - method public boolean getRendererPriorityWaivedWhenNotVisible(); - method public int getRendererRequestedPriority(); - method @NonNull public static android.net.Uri getSafeBrowsingPrivacyPolicyUrl(); - method @Deprecated public float getScale(); - method @NonNull public android.webkit.WebSettings getSettings(); - method @NonNull public android.view.textclassifier.TextClassifier getTextClassifier(); - method @Nullable public String getTitle(); - method @Nullable public String getUrl(); - method @Nullable public android.webkit.WebChromeClient getWebChromeClient(); - method @NonNull public static ClassLoader getWebViewClassLoader(); - method @NonNull public android.webkit.WebViewClient getWebViewClient(); - method @NonNull public android.os.Looper getWebViewLooper(); - method @Nullable public android.webkit.WebViewRenderProcess getWebViewRenderProcess(); - method @Nullable public android.webkit.WebViewRenderProcessClient getWebViewRenderProcessClient(); - method public void goBack(); - method public void goBackOrForward(int); - method public void goForward(); - method public void invokeZoomPicker(); - method public boolean isPrivateBrowsingEnabled(); - method public void loadData(@NonNull String, @Nullable String, @Nullable String); - method public void loadDataWithBaseURL(@Nullable String, @NonNull String, @Nullable String, @Nullable String, @Nullable String); - method public void loadUrl(@NonNull String, @NonNull java.util.Map); - method public void loadUrl(@NonNull String); - method @Deprecated public void onChildViewAdded(android.view.View, android.view.View); - method @Deprecated public void onChildViewRemoved(android.view.View, android.view.View); - method @Deprecated public void onGlobalFocusChanged(android.view.View, android.view.View); - method public void onPause(); - method public void onResume(); - method @Deprecated public boolean overlayHorizontalScrollbar(); - method @Deprecated public boolean overlayVerticalScrollbar(); - method public boolean pageDown(boolean); - method public boolean pageUp(boolean); - method public void pauseTimers(); - method public void postUrl(@NonNull String, @NonNull byte[]); - method public void postVisualStateCallback(long, @NonNull android.webkit.WebView.VisualStateCallback); - method public void postWebMessage(@NonNull android.webkit.WebMessage, @NonNull android.net.Uri); - method public void reload(); - method public void removeJavascriptInterface(@NonNull String); - method public void requestFocusNodeHref(@Nullable android.os.Message); - method public void requestImageRef(@NonNull android.os.Message); - method @Nullable public android.webkit.WebBackForwardList restoreState(@NonNull android.os.Bundle); - method public void resumeTimers(); - method @Deprecated public void savePassword(String, String, String); - method @Nullable public android.webkit.WebBackForwardList saveState(@NonNull android.os.Bundle); - method public void saveWebArchive(@NonNull String); - method public void saveWebArchive(@NonNull String, boolean, @Nullable android.webkit.ValueCallback); - method @Deprecated public void setCertificate(android.net.http.SslCertificate); - method public static void setDataDirectorySuffix(@NonNull String); - method public void setDownloadListener(@Nullable android.webkit.DownloadListener); - method public void setFindListener(@Nullable android.webkit.WebView.FindListener); - method @Deprecated public void setHorizontalScrollbarOverlay(boolean); - method @Deprecated public void setHttpAuthUsernamePassword(String, String, String, String); - method public void setInitialScale(int); - method @Deprecated public void setMapTrackballToArrowKeys(boolean); - method public void setNetworkAvailable(boolean); - method @Deprecated public void setPictureListener(android.webkit.WebView.PictureListener); - method public void setRendererPriorityPolicy(int, boolean); - method public static void setSafeBrowsingWhitelist(@NonNull java.util.List, @Nullable android.webkit.ValueCallback); - method public void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier); - method @Deprecated public void setVerticalScrollbarOverlay(boolean); - method public void setWebChromeClient(@Nullable android.webkit.WebChromeClient); - method public static void setWebContentsDebuggingEnabled(boolean); - method public void setWebViewClient(@NonNull android.webkit.WebViewClient); - method public void setWebViewRenderProcessClient(@NonNull java.util.concurrent.Executor, @NonNull android.webkit.WebViewRenderProcessClient); - method public void setWebViewRenderProcessClient(@Nullable android.webkit.WebViewRenderProcessClient); - method @Deprecated public boolean shouldDelayChildPressedState(); - method @Deprecated public boolean showFindDialog(@Nullable String, boolean); - method @Deprecated @FlaggedApi("android.webkit.deprecate_start_safe_browsing") public static void startSafeBrowsing(@NonNull android.content.Context, @Nullable android.webkit.ValueCallback); - method public void stopLoading(); - method public void zoomBy(float); - method public boolean zoomIn(); - method public boolean zoomOut(); - field public static final int RENDERER_PRIORITY_BOUND = 1; // 0x1 - field public static final int RENDERER_PRIORITY_IMPORTANT = 2; // 0x2 - field public static final int RENDERER_PRIORITY_WAIVED = 0; // 0x0 - field public static final String SCHEME_GEO = "geo:0,0?q="; - field public static final String SCHEME_MAILTO = "mailto:"; - field public static final String SCHEME_TEL = "tel:"; - } - - public static interface WebView.FindListener { - method public void onFindResultReceived(int, int, boolean); - } - - public static class WebView.HitTestResult { - method @Nullable public String getExtra(); - method public int getType(); - field @Deprecated public static final int ANCHOR_TYPE = 1; // 0x1 - field public static final int EDIT_TEXT_TYPE = 9; // 0x9 - field public static final int EMAIL_TYPE = 4; // 0x4 - field public static final int GEO_TYPE = 3; // 0x3 - field @Deprecated public static final int IMAGE_ANCHOR_TYPE = 6; // 0x6 - field public static final int IMAGE_TYPE = 5; // 0x5 - field public static final int PHONE_TYPE = 2; // 0x2 - field public static final int SRC_ANCHOR_TYPE = 7; // 0x7 - field public static final int SRC_IMAGE_ANCHOR_TYPE = 8; // 0x8 - field public static final int UNKNOWN_TYPE = 0; // 0x0 - } - - @Deprecated public static interface WebView.PictureListener { - method @Deprecated public void onNewPicture(android.webkit.WebView, @Nullable android.graphics.Picture); - } - - public abstract static class WebView.VisualStateCallback { - ctor public WebView.VisualStateCallback(); - method public abstract void onComplete(long); - } - - public class WebView.WebViewTransport { - ctor public WebView.WebViewTransport(); - method @Nullable public android.webkit.WebView getWebView(); - method public void setWebView(@Nullable android.webkit.WebView); - } - - public class WebViewClient { - ctor public WebViewClient(); - method public void doUpdateVisitedHistory(android.webkit.WebView, String, boolean); - method public void onFormResubmission(android.webkit.WebView, android.os.Message, android.os.Message); - method public void onLoadResource(android.webkit.WebView, String); - method public void onPageCommitVisible(android.webkit.WebView, String); - method public void onPageFinished(android.webkit.WebView, String); - method public void onPageStarted(android.webkit.WebView, String, android.graphics.Bitmap); - method public void onReceivedClientCertRequest(android.webkit.WebView, android.webkit.ClientCertRequest); - method @Deprecated public void onReceivedError(android.webkit.WebView, int, String, String); - method public void onReceivedError(android.webkit.WebView, android.webkit.WebResourceRequest, android.webkit.WebResourceError); - method public void onReceivedHttpAuthRequest(android.webkit.WebView, android.webkit.HttpAuthHandler, String, String); - method public void onReceivedHttpError(android.webkit.WebView, android.webkit.WebResourceRequest, android.webkit.WebResourceResponse); - method public void onReceivedLoginRequest(android.webkit.WebView, String, @Nullable String, String); - method public void onReceivedSslError(android.webkit.WebView, android.webkit.SslErrorHandler, android.net.http.SslError); - method public boolean onRenderProcessGone(android.webkit.WebView, android.webkit.RenderProcessGoneDetail); - method public void onSafeBrowsingHit(android.webkit.WebView, android.webkit.WebResourceRequest, int, android.webkit.SafeBrowsingResponse); - method public void onScaleChanged(android.webkit.WebView, float, float); - method @Deprecated public void onTooManyRedirects(android.webkit.WebView, android.os.Message, android.os.Message); - method public void onUnhandledKeyEvent(android.webkit.WebView, android.view.KeyEvent); - method @Deprecated @Nullable public android.webkit.WebResourceResponse shouldInterceptRequest(android.webkit.WebView, String); - method @Nullable public android.webkit.WebResourceResponse shouldInterceptRequest(android.webkit.WebView, android.webkit.WebResourceRequest); - method public boolean shouldOverrideKeyEvent(android.webkit.WebView, android.view.KeyEvent); - method @Deprecated public boolean shouldOverrideUrlLoading(android.webkit.WebView, String); - method public boolean shouldOverrideUrlLoading(android.webkit.WebView, android.webkit.WebResourceRequest); - field public static final int ERROR_AUTHENTICATION = -4; // 0xfffffffc - field public static final int ERROR_BAD_URL = -12; // 0xfffffff4 - field public static final int ERROR_CONNECT = -6; // 0xfffffffa - field public static final int ERROR_FAILED_SSL_HANDSHAKE = -11; // 0xfffffff5 - field public static final int ERROR_FILE = -13; // 0xfffffff3 - field public static final int ERROR_FILE_NOT_FOUND = -14; // 0xfffffff2 - field public static final int ERROR_HOST_LOOKUP = -2; // 0xfffffffe - field public static final int ERROR_IO = -7; // 0xfffffff9 - field public static final int ERROR_PROXY_AUTHENTICATION = -5; // 0xfffffffb - field public static final int ERROR_REDIRECT_LOOP = -9; // 0xfffffff7 - field public static final int ERROR_TIMEOUT = -8; // 0xfffffff8 - field public static final int ERROR_TOO_MANY_REQUESTS = -15; // 0xfffffff1 - field public static final int ERROR_UNKNOWN = -1; // 0xffffffff - field public static final int ERROR_UNSAFE_RESOURCE = -16; // 0xfffffff0 - field public static final int ERROR_UNSUPPORTED_AUTH_SCHEME = -3; // 0xfffffffd - field public static final int ERROR_UNSUPPORTED_SCHEME = -10; // 0xfffffff6 - field public static final int SAFE_BROWSING_THREAT_BILLING = 4; // 0x4 - field public static final int SAFE_BROWSING_THREAT_MALWARE = 1; // 0x1 - field public static final int SAFE_BROWSING_THREAT_PHISHING = 2; // 0x2 - field public static final int SAFE_BROWSING_THREAT_UNKNOWN = 0; // 0x0 - field public static final int SAFE_BROWSING_THREAT_UNWANTED_SOFTWARE = 3; // 0x3 - } - - public abstract class WebViewDatabase { - ctor @Deprecated public WebViewDatabase(); - method @Deprecated public abstract void clearFormData(); - method public abstract void clearHttpAuthUsernamePassword(); - method @Deprecated public abstract void clearUsernamePassword(); - method @Nullable public abstract String[] getHttpAuthUsernamePassword(String, String); - method public static android.webkit.WebViewDatabase getInstance(android.content.Context); - method @Deprecated public abstract boolean hasFormData(); - method public abstract boolean hasHttpAuthUsernamePassword(); - method @Deprecated public abstract boolean hasUsernamePassword(); - method public abstract void setHttpAuthUsernamePassword(String, String, String, String); - } - - @Deprecated public class WebViewFragment extends android.app.Fragment { - ctor @Deprecated public WebViewFragment(); - method @Deprecated public android.webkit.WebView getWebView(); - } - - public abstract class WebViewRenderProcess { - ctor public WebViewRenderProcess(); - method public abstract boolean terminate(); - } - - public abstract class WebViewRenderProcessClient { - ctor public WebViewRenderProcessClient(); - method public abstract void onRenderProcessResponsive(@NonNull android.webkit.WebView, @Nullable android.webkit.WebViewRenderProcess); - method public abstract void onRenderProcessUnresponsive(@NonNull android.webkit.WebView, @Nullable android.webkit.WebViewRenderProcess); - } - -} - -package android.widget { - - public abstract class AbsListView extends android.widget.AdapterView implements android.widget.Filter.FilterListener android.text.TextWatcher android.view.ViewTreeObserver.OnGlobalLayoutListener android.view.ViewTreeObserver.OnTouchModeChangeListener { - ctor public AbsListView(android.content.Context); - ctor public AbsListView(android.content.Context, android.util.AttributeSet); - ctor public AbsListView(android.content.Context, android.util.AttributeSet, int); - ctor public AbsListView(android.content.Context, android.util.AttributeSet, int, int); - method public void afterTextChanged(android.text.Editable); - method public void beforeTextChanged(CharSequence, int, int, int); - method public boolean canScrollList(int); - method public void clearChoices(); - method public void clearTextFilter(); - method public void deferNotifyDataSetChanged(); - method public void fling(int); - method public android.widget.AbsListView.LayoutParams generateLayoutParams(android.util.AttributeSet); - method @ColorInt public int getBottomEdgeEffectColor(); - method @ColorInt public int getCacheColorHint(); - method public int getCheckedItemCount(); - method public long[] getCheckedItemIds(); - method public int getCheckedItemPosition(); - method public android.util.SparseBooleanArray getCheckedItemPositions(); - method public int getChoiceMode(); - method public int getListPaddingBottom(); - method public int getListPaddingLeft(); - method public int getListPaddingRight(); - method public int getListPaddingTop(); - method public android.view.View getSelectedView(); - method public android.graphics.drawable.Drawable getSelector(); - method public CharSequence getTextFilter(); - method @ColorInt public int getTopEdgeEffectColor(); - method public int getTranscriptMode(); - method protected void handleDataChanged(); - method public boolean hasTextFilter(); - method public void invalidateViews(); - method public boolean isDrawSelectorOnTop(); - method public boolean isFastScrollAlwaysVisible(); - method public boolean isFastScrollEnabled(); - method protected boolean isInFilterMode(); - method public boolean isItemChecked(int); - method public boolean isScrollingCacheEnabled(); - method public boolean isSelectedChildViewEnabled(); - method public boolean isSmoothScrollbarEnabled(); - method public boolean isStackFromBottom(); - method public boolean isTextFilterEnabled(); - method protected void layoutChildren(); - method public void onFilterComplete(int); - method public void onGlobalLayout(); - method public void onInitializeAccessibilityNodeInfoForItem(android.view.View, int, android.view.accessibility.AccessibilityNodeInfo); - method public boolean onRemoteAdapterConnected(); - method public void onRemoteAdapterDisconnected(); - method public void onRestoreInstanceState(android.os.Parcelable); - method public android.os.Parcelable onSaveInstanceState(); - method public void onTextChanged(CharSequence, int, int, int); - method public void onTouchModeChanged(boolean); - method public int pointToPosition(int, int); - method public long pointToRowId(int, int); - method public void reclaimViews(java.util.List); - method public void scrollListBy(int); - method public void setAdapter(android.widget.ListAdapter); - method public void setBottomEdgeEffectColor(@ColorInt int); - method public void setCacheColorHint(@ColorInt int); - method public void setChoiceMode(int); - method public void setDrawSelectorOnTop(boolean); - method public void setEdgeEffectColor(@ColorInt int); - method public void setFastScrollAlwaysVisible(boolean); - method public void setFastScrollEnabled(boolean); - method public void setFastScrollStyle(int); - method public void setFilterText(String); - method public void setFriction(float); - method public void setItemChecked(int, boolean); - method public void setMultiChoiceModeListener(android.widget.AbsListView.MultiChoiceModeListener); - method public void setOnScrollListener(android.widget.AbsListView.OnScrollListener); - method public void setRecyclerListener(android.widget.AbsListView.RecyclerListener); - method public void setRemoteViewsAdapter(android.content.Intent); - method public void setScrollIndicators(android.view.View, android.view.View); - method public void setScrollingCacheEnabled(boolean); - method public void setSelectedChildViewEnabled(boolean); - method public void setSelectionFromTop(int, int); - method public void setSelector(@DrawableRes int); - method public void setSelector(android.graphics.drawable.Drawable); - method public void setSmoothScrollbarEnabled(boolean); - method public void setStackFromBottom(boolean); - method public void setTextFilterEnabled(boolean); - method public void setTopEdgeEffectColor(@ColorInt int); - method public void setTranscriptMode(int); - method public void setVelocityScale(float); - method public void smoothScrollBy(int, int); - method public void smoothScrollToPosition(int); - method public void smoothScrollToPosition(int, int); - method public void smoothScrollToPositionFromTop(int, int, int); - method public void smoothScrollToPositionFromTop(int, int); - method public boolean verifyDrawable(@NonNull android.graphics.drawable.Drawable); - field public static final int CHOICE_MODE_MULTIPLE = 2; // 0x2 - field public static final int CHOICE_MODE_MULTIPLE_MODAL = 3; // 0x3 - field public static final int CHOICE_MODE_NONE = 0; // 0x0 - field public static final int CHOICE_MODE_SINGLE = 1; // 0x1 - field public static final int TRANSCRIPT_MODE_ALWAYS_SCROLL = 2; // 0x2 - field public static final int TRANSCRIPT_MODE_DISABLED = 0; // 0x0 - field public static final int TRANSCRIPT_MODE_NORMAL = 1; // 0x1 - } - - public static class AbsListView.LayoutParams extends android.view.ViewGroup.LayoutParams { - ctor public AbsListView.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor public AbsListView.LayoutParams(int, int); - ctor public AbsListView.LayoutParams(int, int, int); - ctor public AbsListView.LayoutParams(android.view.ViewGroup.LayoutParams); - } - - public static interface AbsListView.MultiChoiceModeListener extends android.view.ActionMode.Callback { - method public void onItemCheckedStateChanged(android.view.ActionMode, int, long, boolean); - } - - public static interface AbsListView.OnScrollListener { - method public void onScroll(android.widget.AbsListView, int, int, int); - method public void onScrollStateChanged(android.widget.AbsListView, int); - field public static final int SCROLL_STATE_FLING = 2; // 0x2 - field public static final int SCROLL_STATE_IDLE = 0; // 0x0 - field public static final int SCROLL_STATE_TOUCH_SCROLL = 1; // 0x1 - } - - public static interface AbsListView.RecyclerListener { - method public void onMovedToScrapHeap(android.view.View); - } - - public static interface AbsListView.SelectionBoundsAdjuster { - method public void adjustListItemSelectionBounds(android.graphics.Rect); - } - - public abstract class AbsSeekBar extends android.widget.ProgressBar { - ctor public AbsSeekBar(android.content.Context); - ctor public AbsSeekBar(android.content.Context, android.util.AttributeSet); - ctor public AbsSeekBar(android.content.Context, android.util.AttributeSet, int); - ctor public AbsSeekBar(android.content.Context, android.util.AttributeSet, int, int); - method public int getKeyProgressIncrement(); - method public boolean getSplitTrack(); - method public android.graphics.drawable.Drawable getThumb(); - method public int getThumbOffset(); - method @Nullable public android.graphics.BlendMode getThumbTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getThumbTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getThumbTintMode(); - method public android.graphics.drawable.Drawable getTickMark(); - method @Nullable public android.graphics.BlendMode getTickMarkTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getTickMarkTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getTickMarkTintMode(); - method public void setKeyProgressIncrement(int); - method public void setSplitTrack(boolean); - method public void setThumb(android.graphics.drawable.Drawable); - method public void setThumbOffset(int); - method public void setThumbTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setThumbTintList(@Nullable android.content.res.ColorStateList); - method public void setThumbTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public void setTickMark(android.graphics.drawable.Drawable); - method public void setTickMarkTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setTickMarkTintList(@Nullable android.content.res.ColorStateList); - method public void setTickMarkTintMode(@Nullable android.graphics.PorterDuff.Mode); - } - - public abstract class AbsSpinner extends android.widget.AdapterView { - ctor public AbsSpinner(android.content.Context); - ctor public AbsSpinner(android.content.Context, android.util.AttributeSet); - ctor public AbsSpinner(android.content.Context, android.util.AttributeSet, int); - ctor public AbsSpinner(android.content.Context, android.util.AttributeSet, int, int); - method public android.widget.SpinnerAdapter getAdapter(); - method public android.view.View getSelectedView(); - method public void onRestoreInstanceState(android.os.Parcelable); - method public android.os.Parcelable onSaveInstanceState(); - method public int pointToPosition(int, int); - method public void setAdapter(android.widget.SpinnerAdapter); - method public void setSelection(int, boolean); - method public void setSelection(int); - } - - @Deprecated @android.widget.RemoteViews.RemoteView public class AbsoluteLayout extends android.view.ViewGroup { - ctor @Deprecated public AbsoluteLayout(android.content.Context); - ctor @Deprecated public AbsoluteLayout(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public AbsoluteLayout(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public AbsoluteLayout(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated protected void onLayout(boolean, int, int, int, int); - } - - @Deprecated public static class AbsoluteLayout.LayoutParams extends android.view.ViewGroup.LayoutParams { - ctor @Deprecated public AbsoluteLayout.LayoutParams(int, int, int, int); - ctor @Deprecated public AbsoluteLayout.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public AbsoluteLayout.LayoutParams(android.view.ViewGroup.LayoutParams); - method @Deprecated public String debug(String); - field @Deprecated public int x; - field @Deprecated public int y; - } - - public class ActionMenuView extends android.widget.LinearLayout { - ctor public ActionMenuView(android.content.Context); - ctor public ActionMenuView(android.content.Context, android.util.AttributeSet); - method public void dismissPopupMenus(); - method protected android.widget.ActionMenuView.LayoutParams generateDefaultLayoutParams(); - method public android.widget.ActionMenuView.LayoutParams generateLayoutParams(android.util.AttributeSet); - method protected android.widget.ActionMenuView.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); - method public android.view.Menu getMenu(); - method @Nullable public android.graphics.drawable.Drawable getOverflowIcon(); - method public int getPopupTheme(); - method public boolean hideOverflowMenu(); - method public boolean isOverflowMenuShowing(); - method public void onConfigurationChanged(android.content.res.Configuration); - method public void onDetachedFromWindow(); - method public void setOnMenuItemClickListener(android.widget.ActionMenuView.OnMenuItemClickListener); - method public void setOverflowIcon(@Nullable android.graphics.drawable.Drawable); - method public void setPopupTheme(@StyleRes int); - method public boolean showOverflowMenu(); - } - - public static class ActionMenuView.LayoutParams extends android.widget.LinearLayout.LayoutParams { - ctor public ActionMenuView.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor public ActionMenuView.LayoutParams(android.view.ViewGroup.LayoutParams); - ctor public ActionMenuView.LayoutParams(android.widget.ActionMenuView.LayoutParams); - ctor public ActionMenuView.LayoutParams(int, int); - } - - public static interface ActionMenuView.OnMenuItemClickListener { - method public boolean onMenuItemClick(android.view.MenuItem); - } - - public interface Adapter { - method @Nullable public default CharSequence[] getAutofillOptions(); - method public int getCount(); - method public Object getItem(int); - method public long getItemId(int); - method public int getItemViewType(int); - method public android.view.View getView(int, android.view.View, android.view.ViewGroup); - method public int getViewTypeCount(); - method public boolean hasStableIds(); - method public boolean isEmpty(); - method public void registerDataSetObserver(android.database.DataSetObserver); - method public void unregisterDataSetObserver(android.database.DataSetObserver); - field public static final int IGNORE_ITEM_VIEW_TYPE = -1; // 0xffffffff - field public static final int NO_SELECTION = -2147483648; // 0x80000000 - } - - public abstract class AdapterView extends android.view.ViewGroup { - ctor public AdapterView(android.content.Context); - ctor public AdapterView(android.content.Context, android.util.AttributeSet); - ctor public AdapterView(android.content.Context, android.util.AttributeSet, int); - ctor public AdapterView(android.content.Context, android.util.AttributeSet, int, int); - method public abstract T getAdapter(); - method public int getCount(); - method public android.view.View getEmptyView(); - method public int getFirstVisiblePosition(); - method public Object getItemAtPosition(int); - method public long getItemIdAtPosition(int); - method public int getLastVisiblePosition(); - method @Nullable public final android.widget.AdapterView.OnItemClickListener getOnItemClickListener(); - method public final android.widget.AdapterView.OnItemLongClickListener getOnItemLongClickListener(); - method @Nullable public final android.widget.AdapterView.OnItemSelectedListener getOnItemSelectedListener(); - method public int getPositionForView(android.view.View); - method public Object getSelectedItem(); - method public long getSelectedItemId(); - method public int getSelectedItemPosition(); - method public abstract android.view.View getSelectedView(); - method protected void onLayout(boolean, int, int, int, int); - method public boolean performItemClick(android.view.View, int, long); - method public abstract void setAdapter(T); - method public void setEmptyView(android.view.View); - method public void setOnItemClickListener(@Nullable android.widget.AdapterView.OnItemClickListener); - method public void setOnItemLongClickListener(android.widget.AdapterView.OnItemLongClickListener); - method public void setOnItemSelectedListener(@Nullable android.widget.AdapterView.OnItemSelectedListener); - method public abstract void setSelection(int); - field public static final int INVALID_POSITION = -1; // 0xffffffff - field public static final long INVALID_ROW_ID = -9223372036854775808L; // 0x8000000000000000L - field public static final int ITEM_VIEW_TYPE_HEADER_OR_FOOTER = -2; // 0xfffffffe - field public static final int ITEM_VIEW_TYPE_IGNORE = -1; // 0xffffffff - } - - public static class AdapterView.AdapterContextMenuInfo implements android.view.ContextMenu.ContextMenuInfo { - ctor public AdapterView.AdapterContextMenuInfo(android.view.View, int, long); - field public long id; - field public int position; - field public android.view.View targetView; - } - - public static interface AdapterView.OnItemClickListener { - method public void onItemClick(android.widget.AdapterView, android.view.View, int, long); - } - - public static interface AdapterView.OnItemLongClickListener { - method public boolean onItemLongClick(android.widget.AdapterView, android.view.View, int, long); - } - - public static interface AdapterView.OnItemSelectedListener { - method public void onItemSelected(android.widget.AdapterView, android.view.View, int, long); - method public void onNothingSelected(android.widget.AdapterView); - } - - public abstract class AdapterViewAnimator extends android.widget.AdapterView implements android.widget.Advanceable { - ctor public AdapterViewAnimator(android.content.Context); - ctor public AdapterViewAnimator(android.content.Context, android.util.AttributeSet); - ctor public AdapterViewAnimator(android.content.Context, android.util.AttributeSet, int); - ctor public AdapterViewAnimator(android.content.Context, android.util.AttributeSet, int, int); - method public void advance(); - method public void deferNotifyDataSetChanged(); - method public void fyiWillBeAdvancedByHostKThx(); - method public android.widget.Adapter getAdapter(); - method public android.view.View getCurrentView(); - method public int getDisplayedChild(); - method public android.animation.ObjectAnimator getInAnimation(); - method public android.animation.ObjectAnimator getOutAnimation(); - method public android.view.View getSelectedView(); - method public boolean onRemoteAdapterConnected(); - method public void onRemoteAdapterDisconnected(); - method public void onRestoreInstanceState(android.os.Parcelable); - method public android.os.Parcelable onSaveInstanceState(); - method public void setAdapter(android.widget.Adapter); - method public void setAnimateFirstView(boolean); - method public void setDisplayedChild(int); - method public void setInAnimation(android.animation.ObjectAnimator); - method public void setInAnimation(android.content.Context, int); - method public void setOutAnimation(android.animation.ObjectAnimator); - method public void setOutAnimation(android.content.Context, int); - method public void setRemoteViewsAdapter(android.content.Intent); - method public void setSelection(int); - method public void showNext(); - method public void showPrevious(); - } - - @android.widget.RemoteViews.RemoteView public class AdapterViewFlipper extends android.widget.AdapterViewAnimator { - ctor public AdapterViewFlipper(android.content.Context); - ctor public AdapterViewFlipper(android.content.Context, android.util.AttributeSet); - ctor public AdapterViewFlipper(android.content.Context, android.util.AttributeSet, int); - ctor public AdapterViewFlipper(android.content.Context, android.util.AttributeSet, int, int); - method public int getFlipInterval(); - method public boolean isAutoStart(); - method public boolean isFlipping(); - method public void setAutoStart(boolean); - method public void setFlipInterval(int); - method public void startFlipping(); - method public void stopFlipping(); - } - - public interface Advanceable { - method public void advance(); - method public void fyiWillBeAdvancedByHostKThx(); - } - - public class AlphabetIndexer extends android.database.DataSetObserver implements android.widget.SectionIndexer { - ctor public AlphabetIndexer(android.database.Cursor, int, CharSequence); - method protected int compare(String, String); - method public int getPositionForSection(int); - method public int getSectionForPosition(int); - method public Object[] getSections(); - method public void setCursor(android.database.Cursor); - field protected CharSequence mAlphabet; - field protected int mColumnIndex; - field protected android.database.Cursor mDataCursor; - } - - @Deprecated @android.widget.RemoteViews.RemoteView public class AnalogClock extends android.view.View { - ctor @Deprecated public AnalogClock(android.content.Context); - ctor @Deprecated public AnalogClock(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public AnalogClock(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public AnalogClock(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated @Nullable public android.graphics.BlendMode getDialTintBlendMode(); - method @Deprecated @Nullable public android.content.res.ColorStateList getDialTintList(); - method @Deprecated @Nullable public android.graphics.BlendMode getHourHandTintBlendMode(); - method @Deprecated @Nullable public android.content.res.ColorStateList getHourHandTintList(); - method @Deprecated @Nullable public android.graphics.BlendMode getMinuteHandTintBlendMode(); - method @Deprecated @Nullable public android.content.res.ColorStateList getMinuteHandTintList(); - method @Deprecated @Nullable public android.graphics.BlendMode getSecondHandTintBlendMode(); - method @Deprecated @Nullable public android.content.res.ColorStateList getSecondHandTintList(); - method @Deprecated @Nullable public String getTimeZone(); - method @Deprecated public void setDial(@NonNull android.graphics.drawable.Icon); - method @Deprecated public void setDialTintBlendMode(@Nullable android.graphics.BlendMode); - method @Deprecated public void setDialTintList(@Nullable android.content.res.ColorStateList); - method @Deprecated public void setHourHand(@NonNull android.graphics.drawable.Icon); - method @Deprecated public void setHourHandTintBlendMode(@Nullable android.graphics.BlendMode); - method @Deprecated public void setHourHandTintList(@Nullable android.content.res.ColorStateList); - method @Deprecated public void setMinuteHand(@NonNull android.graphics.drawable.Icon); - method @Deprecated public void setMinuteHandTintBlendMode(@Nullable android.graphics.BlendMode); - method @Deprecated public void setMinuteHandTintList(@Nullable android.content.res.ColorStateList); - method @Deprecated public void setSecondHand(@Nullable android.graphics.drawable.Icon); - method @Deprecated public void setSecondHandTintBlendMode(@Nullable android.graphics.BlendMode); - method @Deprecated public void setSecondHandTintList(@Nullable android.content.res.ColorStateList); - method @Deprecated public void setTimeZone(@Nullable String); - } - - public class ArrayAdapter extends android.widget.BaseAdapter implements android.widget.Filterable android.widget.ThemedSpinnerAdapter { - ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int); - ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @IdRes int); - ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @NonNull T[]); - ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @IdRes int, @NonNull T[]); - ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @NonNull java.util.List); - ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @IdRes int, @NonNull java.util.List); - method public void add(@Nullable T); - method public void addAll(@NonNull java.util.Collection); - method public void addAll(T...); - method public void clear(); - method @NonNull public static android.widget.ArrayAdapter createFromResource(@NonNull android.content.Context, @ArrayRes int, @LayoutRes int); - method @NonNull public android.content.Context getContext(); - method public int getCount(); - method @Nullable public android.content.res.Resources.Theme getDropDownViewTheme(); - method @NonNull public android.widget.Filter getFilter(); - method @Nullable public T getItem(int); - method public long getItemId(int); - method public int getPosition(@Nullable T); - method @NonNull public android.view.View getView(int, @Nullable android.view.View, @NonNull android.view.ViewGroup); - method public void insert(@Nullable T, int); - method public void remove(@Nullable T); - method public void setDropDownViewResource(@LayoutRes int); - method public void setDropDownViewTheme(@Nullable android.content.res.Resources.Theme); - method public void setNotifyOnChange(boolean); - method public void sort(@NonNull java.util.Comparator); - } - - public class AutoCompleteTextView extends android.widget.EditText implements android.widget.Filter.FilterListener { - ctor public AutoCompleteTextView(android.content.Context); - ctor public AutoCompleteTextView(android.content.Context, android.util.AttributeSet); - ctor public AutoCompleteTextView(android.content.Context, android.util.AttributeSet, int); - ctor public AutoCompleteTextView(android.content.Context, android.util.AttributeSet, int, int); - ctor public AutoCompleteTextView(android.content.Context, android.util.AttributeSet, int, int, android.content.res.Resources.Theme); - method public void clearListSelection(); - method protected CharSequence convertSelectionToString(Object); - method public void dismissDropDown(); - method public boolean enoughToFilter(); - method public android.widget.ListAdapter getAdapter(); - method public CharSequence getCompletionHint(); - method public int getDropDownAnchor(); - method public android.graphics.drawable.Drawable getDropDownBackground(); - method public int getDropDownHeight(); - method public int getDropDownHorizontalOffset(); - method public int getDropDownVerticalOffset(); - method public int getDropDownWidth(); - method protected android.widget.Filter getFilter(); - method public int getInputMethodMode(); - method @Deprecated public android.widget.AdapterView.OnItemClickListener getItemClickListener(); - method @Deprecated public android.widget.AdapterView.OnItemSelectedListener getItemSelectedListener(); - method public int getListSelection(); - method public android.widget.AdapterView.OnItemClickListener getOnItemClickListener(); - method public android.widget.AdapterView.OnItemSelectedListener getOnItemSelectedListener(); - method public int getThreshold(); - method public android.widget.AutoCompleteTextView.Validator getValidator(); - method public boolean isPerformingCompletion(); - method public boolean isPopupShowing(); - method public void onFilterComplete(int); - method public void performCompletion(); - method protected void performFiltering(CharSequence, int); - method public void performValidation(); - method public final void refreshAutoCompleteResults(); - method protected void replaceText(CharSequence); - method public void setAdapter(T); - method public void setCompletionHint(CharSequence); - method public void setDropDownAnchor(int); - method public void setDropDownBackgroundDrawable(android.graphics.drawable.Drawable); - method public void setDropDownBackgroundResource(@DrawableRes int); - method public void setDropDownHeight(int); - method public void setDropDownHorizontalOffset(int); - method public void setDropDownVerticalOffset(int); - method public void setDropDownWidth(int); - method public void setInputMethodMode(int); - method public void setListSelection(int); - method public void setOnDismissListener(android.widget.AutoCompleteTextView.OnDismissListener); - method public void setOnItemClickListener(android.widget.AdapterView.OnItemClickListener); - method public void setOnItemSelectedListener(android.widget.AdapterView.OnItemSelectedListener); - method public void setText(CharSequence, boolean); - method public void setThreshold(int); - method public void setValidator(android.widget.AutoCompleteTextView.Validator); - method public void showDropDown(); - } - - public static interface AutoCompleteTextView.OnDismissListener { - method public void onDismiss(); - } - - public static interface AutoCompleteTextView.Validator { - method public CharSequence fixText(CharSequence); - method public boolean isValid(CharSequence); - } - - public abstract class BaseAdapter implements android.widget.ListAdapter android.widget.SpinnerAdapter { - ctor public BaseAdapter(); - method public boolean areAllItemsEnabled(); - method public CharSequence[] getAutofillOptions(); - method public android.view.View getDropDownView(int, android.view.View, android.view.ViewGroup); - method public int getItemViewType(int); - method public int getViewTypeCount(); - method public boolean hasStableIds(); - method public boolean isEmpty(); - method public boolean isEnabled(int); - method public void notifyDataSetChanged(); - method public void notifyDataSetInvalidated(); - method public void registerDataSetObserver(android.database.DataSetObserver); - method public void setAutofillOptions(@Nullable java.lang.CharSequence...); - method public void unregisterDataSetObserver(android.database.DataSetObserver); - } - - public abstract class BaseExpandableListAdapter implements android.widget.ExpandableListAdapter android.widget.HeterogeneousExpandableList { - ctor public BaseExpandableListAdapter(); - method public boolean areAllItemsEnabled(); - method public int getChildType(int, int); - method public int getChildTypeCount(); - method public long getCombinedChildId(long, long); - method public long getCombinedGroupId(long); - method public int getGroupType(int); - method public int getGroupTypeCount(); - method public boolean isEmpty(); - method public void notifyDataSetChanged(); - method public void notifyDataSetInvalidated(); - method public void onGroupCollapsed(int); - method public void onGroupExpanded(int); - method public void registerDataSetObserver(android.database.DataSetObserver); - method public void unregisterDataSetObserver(android.database.DataSetObserver); - } - - @android.widget.RemoteViews.RemoteView public class Button extends android.widget.TextView { - ctor public Button(android.content.Context); - ctor public Button(android.content.Context, android.util.AttributeSet); - ctor public Button(android.content.Context, android.util.AttributeSet, int); - ctor public Button(android.content.Context, android.util.AttributeSet, int, int); - } - - public class CalendarView extends android.widget.FrameLayout { - ctor public CalendarView(@NonNull android.content.Context); - ctor public CalendarView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); - ctor public CalendarView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int); - ctor public CalendarView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int, @StyleRes int); - method public long getDate(); - method @StyleRes public int getDateTextAppearance(); - method public int getFirstDayOfWeek(); - method @Deprecated @ColorInt public int getFocusedMonthDateColor(); - method public long getMaxDate(); - method public long getMinDate(); - method @Deprecated public android.graphics.drawable.Drawable getSelectedDateVerticalBar(); - method @Deprecated @ColorInt public int getSelectedWeekBackgroundColor(); - method @Deprecated public boolean getShowWeekNumber(); - method @Deprecated public int getShownWeekCount(); - method @Deprecated @ColorInt public int getUnfocusedMonthDateColor(); - method @StyleRes public int getWeekDayTextAppearance(); - method @Deprecated @ColorInt public int getWeekNumberColor(); - method @Deprecated @ColorInt public int getWeekSeparatorLineColor(); - method public void setDate(long); - method public void setDate(long, boolean, boolean); - method public void setDateTextAppearance(@StyleRes int); - method public void setFirstDayOfWeek(int); - method @Deprecated public void setFocusedMonthDateColor(@ColorInt int); - method public void setMaxDate(long); - method public void setMinDate(long); - method public void setOnDateChangeListener(android.widget.CalendarView.OnDateChangeListener); - method @Deprecated public void setSelectedDateVerticalBar(@DrawableRes int); - method @Deprecated public void setSelectedDateVerticalBar(android.graphics.drawable.Drawable); - method @Deprecated public void setSelectedWeekBackgroundColor(@ColorInt int); - method @Deprecated public void setShowWeekNumber(boolean); - method @Deprecated public void setShownWeekCount(int); - method @Deprecated public void setUnfocusedMonthDateColor(@ColorInt int); - method public void setWeekDayTextAppearance(@StyleRes int); - method @Deprecated public void setWeekNumberColor(@ColorInt int); - method @Deprecated public void setWeekSeparatorLineColor(@ColorInt int); - } - - public static interface CalendarView.OnDateChangeListener { - method public void onSelectedDayChange(@NonNull android.widget.CalendarView, int, int, int); - } - - @android.widget.RemoteViews.RemoteView public class CheckBox extends android.widget.CompoundButton { - ctor public CheckBox(android.content.Context); - ctor public CheckBox(android.content.Context, android.util.AttributeSet); - ctor public CheckBox(android.content.Context, android.util.AttributeSet, int); - ctor public CheckBox(android.content.Context, android.util.AttributeSet, int, int); - } - - public interface Checkable { - method public boolean isChecked(); - method public void setChecked(boolean); - method public void toggle(); - } - - public class CheckedTextView extends android.widget.TextView implements android.widget.Checkable { - ctor public CheckedTextView(android.content.Context); - ctor public CheckedTextView(android.content.Context, android.util.AttributeSet); - ctor public CheckedTextView(android.content.Context, android.util.AttributeSet, int); - ctor public CheckedTextView(android.content.Context, android.util.AttributeSet, int, int); - method public android.graphics.drawable.Drawable getCheckMarkDrawable(); - method @Nullable public android.graphics.BlendMode getCheckMarkTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getCheckMarkTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getCheckMarkTintMode(); - method public boolean isChecked(); - method public void setCheckMarkDrawable(@DrawableRes int); - method public void setCheckMarkDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setCheckMarkTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setCheckMarkTintList(@Nullable android.content.res.ColorStateList); - method public void setCheckMarkTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public void setChecked(boolean); - method public void toggle(); - } - - @android.widget.RemoteViews.RemoteView public class Chronometer extends android.widget.TextView { - ctor public Chronometer(android.content.Context); - ctor public Chronometer(android.content.Context, android.util.AttributeSet); - ctor public Chronometer(android.content.Context, android.util.AttributeSet, int); - ctor public Chronometer(android.content.Context, android.util.AttributeSet, int, int); - method public long getBase(); - method public String getFormat(); - method public android.widget.Chronometer.OnChronometerTickListener getOnChronometerTickListener(); - method public boolean isCountDown(); - method public boolean isTheFinalCountDown(); - method public void setBase(long); - method public void setCountDown(boolean); - method public void setFormat(String); - method public void setOnChronometerTickListener(android.widget.Chronometer.OnChronometerTickListener); - method public void start(); - method public void stop(); - } - - public static interface Chronometer.OnChronometerTickListener { - method public void onChronometerTick(android.widget.Chronometer); - } - - public abstract class CompoundButton extends android.widget.Button implements android.widget.Checkable { - ctor public CompoundButton(android.content.Context); - ctor public CompoundButton(android.content.Context, android.util.AttributeSet); - ctor public CompoundButton(android.content.Context, android.util.AttributeSet, int); - ctor public CompoundButton(android.content.Context, android.util.AttributeSet, int, int); - method @Nullable public android.graphics.drawable.Drawable getButtonDrawable(); - method @Nullable public android.graphics.BlendMode getButtonTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getButtonTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getButtonTintMode(); - method public boolean isChecked(); - method public void setButtonDrawable(@DrawableRes int); - method public void setButtonDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setButtonIcon(@Nullable android.graphics.drawable.Icon); - method public void setButtonTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setButtonTintList(@Nullable android.content.res.ColorStateList); - method public void setButtonTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public void setChecked(boolean); - method public void setOnCheckedChangeListener(@Nullable android.widget.CompoundButton.OnCheckedChangeListener); - method public void toggle(); - } - - public static interface CompoundButton.OnCheckedChangeListener { - method public void onCheckedChanged(@NonNull android.widget.CompoundButton, boolean); - } - - public abstract class CursorAdapter extends android.widget.BaseAdapter implements android.widget.Filterable android.widget.ThemedSpinnerAdapter { - ctor @Deprecated public CursorAdapter(android.content.Context, android.database.Cursor); - ctor public CursorAdapter(android.content.Context, android.database.Cursor, boolean); - ctor public CursorAdapter(android.content.Context, android.database.Cursor, int); - method public abstract void bindView(android.view.View, android.content.Context, android.database.Cursor); - method public void changeCursor(android.database.Cursor); - method public CharSequence convertToString(android.database.Cursor); - method public int getCount(); - method public android.database.Cursor getCursor(); - method public android.content.res.Resources.Theme getDropDownViewTheme(); - method public android.widget.Filter getFilter(); - method public android.widget.FilterQueryProvider getFilterQueryProvider(); - method public Object getItem(int); - method public long getItemId(int); - method public android.view.View getView(int, android.view.View, android.view.ViewGroup); - method @Deprecated protected void init(android.content.Context, android.database.Cursor, boolean); - method public android.view.View newDropDownView(android.content.Context, android.database.Cursor, android.view.ViewGroup); - method public abstract android.view.View newView(android.content.Context, android.database.Cursor, android.view.ViewGroup); - method protected void onContentChanged(); - method @WorkerThread public android.database.Cursor runQueryOnBackgroundThread(CharSequence); - method public void setDropDownViewTheme(android.content.res.Resources.Theme); - method public void setFilterQueryProvider(android.widget.FilterQueryProvider); - method public android.database.Cursor swapCursor(android.database.Cursor); - field @Deprecated public static final int FLAG_AUTO_REQUERY = 1; // 0x1 - field public static final int FLAG_REGISTER_CONTENT_OBSERVER = 2; // 0x2 - } - - public abstract class CursorTreeAdapter extends android.widget.BaseExpandableListAdapter implements android.widget.Filterable { - ctor public CursorTreeAdapter(android.database.Cursor, android.content.Context); - ctor public CursorTreeAdapter(android.database.Cursor, android.content.Context, boolean); - method protected abstract void bindChildView(android.view.View, android.content.Context, android.database.Cursor, boolean); - method protected abstract void bindGroupView(android.view.View, android.content.Context, android.database.Cursor, boolean); - method public void changeCursor(android.database.Cursor); - method public String convertToString(android.database.Cursor); - method public android.database.Cursor getChild(int, int); - method public long getChildId(int, int); - method public android.view.View getChildView(int, int, boolean, android.view.View, android.view.ViewGroup); - method public int getChildrenCount(int); - method protected abstract android.database.Cursor getChildrenCursor(android.database.Cursor); - method public android.database.Cursor getCursor(); - method public android.widget.Filter getFilter(); - method public android.widget.FilterQueryProvider getFilterQueryProvider(); - method public android.database.Cursor getGroup(int); - method public int getGroupCount(); - method public long getGroupId(int); - method public android.view.View getGroupView(int, boolean, android.view.View, android.view.ViewGroup); - method public boolean hasStableIds(); - method public boolean isChildSelectable(int, int); - method protected abstract android.view.View newChildView(android.content.Context, android.database.Cursor, boolean, android.view.ViewGroup); - method protected abstract android.view.View newGroupView(android.content.Context, android.database.Cursor, boolean, android.view.ViewGroup); - method public void notifyDataSetChanged(boolean); - method public android.database.Cursor runQueryOnBackgroundThread(CharSequence); - method public void setChildrenCursor(int, android.database.Cursor); - method public void setFilterQueryProvider(android.widget.FilterQueryProvider); - method public void setGroupCursor(android.database.Cursor); - } - - public class DatePicker extends android.widget.FrameLayout { - ctor public DatePicker(android.content.Context); - ctor public DatePicker(android.content.Context, android.util.AttributeSet); - ctor public DatePicker(android.content.Context, android.util.AttributeSet, int); - ctor public DatePicker(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated public android.widget.CalendarView getCalendarView(); - method @Deprecated public boolean getCalendarViewShown(); - method public int getDayOfMonth(); - method public int getFirstDayOfWeek(); - method public long getMaxDate(); - method public long getMinDate(); - method public int getMonth(); - method @Deprecated public boolean getSpinnersShown(); - method public int getYear(); - method public void init(int, int, int, android.widget.DatePicker.OnDateChangedListener); - method @Deprecated public void setCalendarViewShown(boolean); - method public void setFirstDayOfWeek(int); - method public void setMaxDate(long); - method public void setMinDate(long); - method public void setOnDateChangedListener(android.widget.DatePicker.OnDateChangedListener); - method @Deprecated public void setSpinnersShown(boolean); - method public void updateDate(int, int, int); - } - - public static interface DatePicker.OnDateChangedListener { - method public void onDateChanged(android.widget.DatePicker, int, int, int); - } - - @Deprecated public class DialerFilter extends android.widget.RelativeLayout { - ctor @Deprecated public DialerFilter(android.content.Context); - ctor @Deprecated public DialerFilter(android.content.Context, android.util.AttributeSet); - method @Deprecated public void append(String); - method @Deprecated public void clearText(); - method @Deprecated public CharSequence getDigits(); - method @Deprecated public CharSequence getFilterText(); - method @Deprecated public CharSequence getLetters(); - method @Deprecated public int getMode(); - method @Deprecated public boolean isQwertyKeyboard(); - method @Deprecated protected void onModeChange(int, int); - method @Deprecated public void removeFilterWatcher(android.text.TextWatcher); - method @Deprecated public void setDigitsWatcher(android.text.TextWatcher); - method @Deprecated public void setFilterWatcher(android.text.TextWatcher); - method @Deprecated public void setLettersWatcher(android.text.TextWatcher); - method @Deprecated public void setMode(int); - field @Deprecated public static final int DIGITS_AND_LETTERS = 1; // 0x1 - field @Deprecated public static final int DIGITS_AND_LETTERS_NO_DIGITS = 2; // 0x2 - field @Deprecated public static final int DIGITS_AND_LETTERS_NO_LETTERS = 3; // 0x3 - field @Deprecated public static final int DIGITS_ONLY = 4; // 0x4 - field @Deprecated public static final int LETTERS_ONLY = 5; // 0x5 - } - - @Deprecated public class DigitalClock extends android.widget.TextView { - ctor @Deprecated public DigitalClock(android.content.Context); - ctor @Deprecated public DigitalClock(android.content.Context, android.util.AttributeSet); - } - - public class EdgeEffect { - ctor public EdgeEffect(android.content.Context); - ctor public EdgeEffect(@NonNull android.content.Context, @Nullable android.util.AttributeSet); - method public boolean draw(android.graphics.Canvas); - method public void finish(); - method @Nullable public android.graphics.BlendMode getBlendMode(); - method @ColorInt public int getColor(); - method public float getDistance(); - method public int getMaxHeight(); - method public boolean isFinished(); - method public void onAbsorb(int); - method public void onPull(float); - method public void onPull(float, float); - method public float onPullDistance(float, float); - method public void onRelease(); - method public void setBlendMode(@Nullable android.graphics.BlendMode); - method public void setColor(@ColorInt int); - method public void setSize(int, int); - field public static final android.graphics.BlendMode DEFAULT_BLEND_MODE; - } - - public class EditText extends android.widget.TextView { - ctor public EditText(android.content.Context); - ctor public EditText(android.content.Context, android.util.AttributeSet); - ctor public EditText(android.content.Context, android.util.AttributeSet, int); - ctor public EditText(android.content.Context, android.util.AttributeSet, int, int); - method public void extendSelection(int); - method public android.text.Editable getText(); - method public boolean isStyleShortcutEnabled(); - method public void selectAll(); - method public void setSelection(int, int); - method public void setSelection(int); - method public void setStyleShortcutsEnabled(boolean); - } - - public interface ExpandableListAdapter { - method public boolean areAllItemsEnabled(); - method public Object getChild(int, int); - method public long getChildId(int, int); - method public android.view.View getChildView(int, int, boolean, android.view.View, android.view.ViewGroup); - method public int getChildrenCount(int); - method public long getCombinedChildId(long, long); - method public long getCombinedGroupId(long); - method public Object getGroup(int); - method public int getGroupCount(); - method public long getGroupId(int); - method public android.view.View getGroupView(int, boolean, android.view.View, android.view.ViewGroup); - method public boolean hasStableIds(); - method public boolean isChildSelectable(int, int); - method public boolean isEmpty(); - method public void onGroupCollapsed(int); - method public void onGroupExpanded(int); - method public void registerDataSetObserver(android.database.DataSetObserver); - method public void unregisterDataSetObserver(android.database.DataSetObserver); - } - - public class ExpandableListView extends android.widget.ListView { - ctor public ExpandableListView(android.content.Context); - ctor public ExpandableListView(android.content.Context, android.util.AttributeSet); - ctor public ExpandableListView(android.content.Context, android.util.AttributeSet, int); - ctor public ExpandableListView(android.content.Context, android.util.AttributeSet, int, int); - method public boolean collapseGroup(int); - method public boolean expandGroup(int); - method public boolean expandGroup(int, boolean); - method public android.widget.ExpandableListAdapter getExpandableListAdapter(); - method public long getExpandableListPosition(int); - method public int getFlatListPosition(long); - method public static int getPackedPositionChild(long); - method public static long getPackedPositionForChild(int, int); - method public static long getPackedPositionForGroup(int); - method public static int getPackedPositionGroup(long); - method public static int getPackedPositionType(long); - method public long getSelectedId(); - method public long getSelectedPosition(); - method public boolean isGroupExpanded(int); - method public void setAdapter(android.widget.ExpandableListAdapter); - method public void setChildDivider(android.graphics.drawable.Drawable); - method public void setChildIndicator(android.graphics.drawable.Drawable); - method public void setChildIndicatorBounds(int, int); - method public void setChildIndicatorBoundsRelative(int, int); - method public void setGroupIndicator(android.graphics.drawable.Drawable); - method public void setIndicatorBounds(int, int); - method public void setIndicatorBoundsRelative(int, int); - method public void setOnChildClickListener(android.widget.ExpandableListView.OnChildClickListener); - method public void setOnGroupClickListener(android.widget.ExpandableListView.OnGroupClickListener); - method public void setOnGroupCollapseListener(android.widget.ExpandableListView.OnGroupCollapseListener); - method public void setOnGroupExpandListener(android.widget.ExpandableListView.OnGroupExpandListener); - method public boolean setSelectedChild(int, int, boolean); - method public void setSelectedGroup(int); - field public static final int CHILD_INDICATOR_INHERIT = -1; // 0xffffffff - field public static final int PACKED_POSITION_TYPE_CHILD = 1; // 0x1 - field public static final int PACKED_POSITION_TYPE_GROUP = 0; // 0x0 - field public static final int PACKED_POSITION_TYPE_NULL = 2; // 0x2 - field public static final long PACKED_POSITION_VALUE_NULL = 4294967295L; // 0xffffffffL - } - - public static class ExpandableListView.ExpandableListContextMenuInfo implements android.view.ContextMenu.ContextMenuInfo { - ctor public ExpandableListView.ExpandableListContextMenuInfo(android.view.View, long, long); - field public long id; - field public long packedPosition; - field public android.view.View targetView; - } - - public static interface ExpandableListView.OnChildClickListener { - method public boolean onChildClick(android.widget.ExpandableListView, android.view.View, int, int, long); - } - - public static interface ExpandableListView.OnGroupClickListener { - method public boolean onGroupClick(android.widget.ExpandableListView, android.view.View, int, long); - } - - public static interface ExpandableListView.OnGroupCollapseListener { - method public void onGroupCollapse(int); - } - - public static interface ExpandableListView.OnGroupExpandListener { - method public void onGroupExpand(int); - } - - public abstract class Filter { - ctor public Filter(); - method public CharSequence convertResultToString(Object); - method public final void filter(CharSequence); - method public final void filter(CharSequence, android.widget.Filter.FilterListener); - method protected abstract android.widget.Filter.FilterResults performFiltering(CharSequence); - method protected abstract void publishResults(CharSequence, android.widget.Filter.FilterResults); - } - - public static interface Filter.FilterListener { - method public void onFilterComplete(int); - } - - protected static class Filter.FilterResults { - ctor public Filter.FilterResults(); - field public int count; - field public Object values; - } - - public interface FilterQueryProvider { - method public android.database.Cursor runQuery(CharSequence); - } - - public interface Filterable { - method public android.widget.Filter getFilter(); - } - - @android.widget.RemoteViews.RemoteView public class FrameLayout extends android.view.ViewGroup { - ctor public FrameLayout(@NonNull android.content.Context); - ctor public FrameLayout(@NonNull android.content.Context, @Nullable android.util.AttributeSet); - ctor public FrameLayout(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int); - ctor public FrameLayout(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int, @StyleRes int); - method protected android.widget.FrameLayout.LayoutParams generateDefaultLayoutParams(); - method public android.widget.FrameLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); - method @Deprecated public boolean getConsiderGoneChildrenWhenMeasuring(); - method public boolean getMeasureAllChildren(); - method protected void onLayout(boolean, int, int, int, int); - method public void setMeasureAllChildren(boolean); - } - - public static class FrameLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { - ctor public FrameLayout.LayoutParams(@NonNull android.content.Context, @Nullable android.util.AttributeSet); - ctor public FrameLayout.LayoutParams(int, int); - ctor public FrameLayout.LayoutParams(int, int, int); - ctor public FrameLayout.LayoutParams(@NonNull android.view.ViewGroup.LayoutParams); - ctor public FrameLayout.LayoutParams(@NonNull android.view.ViewGroup.MarginLayoutParams); - ctor public FrameLayout.LayoutParams(@NonNull android.widget.FrameLayout.LayoutParams); - field public static final int UNSPECIFIED_GRAVITY = -1; // 0xffffffff - field public int gravity; - } - - @Deprecated public class Gallery extends android.widget.AbsSpinner implements android.view.GestureDetector.OnGestureListener { - ctor @Deprecated public Gallery(android.content.Context); - ctor @Deprecated public Gallery(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public Gallery(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public Gallery(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated public boolean onDown(android.view.MotionEvent); - method @Deprecated public boolean onFling(android.view.MotionEvent, android.view.MotionEvent, float, float); - method @Deprecated public void onLongPress(@NonNull android.view.MotionEvent); - method @Deprecated public boolean onScroll(android.view.MotionEvent, android.view.MotionEvent, float, float); - method @Deprecated public void onShowPress(android.view.MotionEvent); - method @Deprecated public boolean onSingleTapUp(android.view.MotionEvent); - method @Deprecated public void setAnimationDuration(int); - method @Deprecated public void setCallbackDuringFling(boolean); - method @Deprecated public void setGravity(int); - method @Deprecated public void setSpacing(int); - method @Deprecated public void setUnselectedAlpha(float); - } - - @Deprecated public static class Gallery.LayoutParams extends android.view.ViewGroup.LayoutParams { - ctor @Deprecated public Gallery.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public Gallery.LayoutParams(int, int); - ctor @Deprecated public Gallery.LayoutParams(android.view.ViewGroup.LayoutParams); - } - - @android.widget.RemoteViews.RemoteView public class GridLayout extends android.view.ViewGroup { - ctor public GridLayout(android.content.Context); - ctor public GridLayout(android.content.Context, android.util.AttributeSet); - ctor public GridLayout(android.content.Context, android.util.AttributeSet, int); - ctor public GridLayout(android.content.Context, android.util.AttributeSet, int, int); - method protected android.widget.GridLayout.LayoutParams generateDefaultLayoutParams(); - method public android.widget.GridLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); - method protected android.widget.GridLayout.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); - method public int getAlignmentMode(); - method public int getColumnCount(); - method public int getOrientation(); - method public int getRowCount(); - method public boolean getUseDefaultMargins(); - method public boolean isColumnOrderPreserved(); - method public boolean isRowOrderPreserved(); - method protected void onLayout(boolean, int, int, int, int); - method public void setAlignmentMode(int); - method public void setColumnCount(int); - method public void setColumnOrderPreserved(boolean); - method public void setOrientation(int); - method public void setRowCount(int); - method public void setRowOrderPreserved(boolean); - method public void setUseDefaultMargins(boolean); - method public static android.widget.GridLayout.Spec spec(int, int, android.widget.GridLayout.Alignment, float); - method public static android.widget.GridLayout.Spec spec(int, android.widget.GridLayout.Alignment, float); - method public static android.widget.GridLayout.Spec spec(int, int, float); - method public static android.widget.GridLayout.Spec spec(int, float); - method public static android.widget.GridLayout.Spec spec(int, int, android.widget.GridLayout.Alignment); - method public static android.widget.GridLayout.Spec spec(int, android.widget.GridLayout.Alignment); - method public static android.widget.GridLayout.Spec spec(int, int); - method public static android.widget.GridLayout.Spec spec(int); - field public static final int ALIGN_BOUNDS = 0; // 0x0 - field public static final int ALIGN_MARGINS = 1; // 0x1 - field public static final android.widget.GridLayout.Alignment BASELINE; - field public static final android.widget.GridLayout.Alignment BOTTOM; - field public static final android.widget.GridLayout.Alignment CENTER; - field public static final android.widget.GridLayout.Alignment END; - field public static final android.widget.GridLayout.Alignment FILL; - field public static final int HORIZONTAL = 0; // 0x0 - field public static final android.widget.GridLayout.Alignment LEFT; - field public static final android.widget.GridLayout.Alignment RIGHT; - field public static final android.widget.GridLayout.Alignment START; - field public static final android.widget.GridLayout.Alignment TOP; - field public static final int UNDEFINED = -2147483648; // 0x80000000 - field public static final int VERTICAL = 1; // 0x1 - } - - public abstract static class GridLayout.Alignment { - } - - public static class GridLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { - ctor public GridLayout.LayoutParams(android.widget.GridLayout.Spec, android.widget.GridLayout.Spec); - ctor public GridLayout.LayoutParams(); - ctor public GridLayout.LayoutParams(android.view.ViewGroup.LayoutParams); - ctor public GridLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams); - ctor public GridLayout.LayoutParams(android.widget.GridLayout.LayoutParams); - ctor public GridLayout.LayoutParams(android.content.Context, android.util.AttributeSet); - method public void setGravity(int); - field public android.widget.GridLayout.Spec columnSpec; - field public android.widget.GridLayout.Spec rowSpec; - } - - public static class GridLayout.Spec { - } - - @android.widget.RemoteViews.RemoteView public class GridView extends android.widget.AbsListView { - ctor public GridView(android.content.Context); - ctor public GridView(android.content.Context, android.util.AttributeSet); - ctor public GridView(android.content.Context, android.util.AttributeSet, int); - ctor public GridView(android.content.Context, android.util.AttributeSet, int, int); - method public android.widget.ListAdapter getAdapter(); - method public int getColumnWidth(); - method public int getGravity(); - method public int getHorizontalSpacing(); - method public int getNumColumns(); - method public int getRequestedColumnWidth(); - method public int getRequestedHorizontalSpacing(); - method public int getStretchMode(); - method public int getVerticalSpacing(); - method public void setColumnWidth(int); - method public void setGravity(int); - method public void setHorizontalSpacing(int); - method public void setNumColumns(int); - method public void setSelection(int); - method public void setStretchMode(int); - method public void setVerticalSpacing(int); - method public void smoothScrollByOffset(int); - field public static final int AUTO_FIT = -1; // 0xffffffff - field public static final int NO_STRETCH = 0; // 0x0 - field public static final int STRETCH_COLUMN_WIDTH = 2; // 0x2 - field public static final int STRETCH_SPACING = 1; // 0x1 - field public static final int STRETCH_SPACING_UNIFORM = 3; // 0x3 - } - - public class HeaderViewListAdapter implements android.widget.Filterable android.widget.WrapperListAdapter { - ctor public HeaderViewListAdapter(java.util.ArrayList, java.util.ArrayList, android.widget.ListAdapter); - method public boolean areAllItemsEnabled(); - method public int getCount(); - method public android.widget.Filter getFilter(); - method public int getFootersCount(); - method public int getHeadersCount(); - method public Object getItem(int); - method public long getItemId(int); - method public int getItemViewType(int); - method public android.view.View getView(int, android.view.View, android.view.ViewGroup); - method public int getViewTypeCount(); - method public android.widget.ListAdapter getWrappedAdapter(); - method public boolean hasStableIds(); - method public boolean isEmpty(); - method public boolean isEnabled(int); - method public void registerDataSetObserver(android.database.DataSetObserver); - method public boolean removeFooter(android.view.View); - method public boolean removeHeader(android.view.View); - method public void unregisterDataSetObserver(android.database.DataSetObserver); - } - - public interface HeterogeneousExpandableList { - method public int getChildType(int, int); - method public int getChildTypeCount(); - method public int getGroupType(int); - method public int getGroupTypeCount(); - } - - public class HorizontalScrollView extends android.widget.FrameLayout { - ctor public HorizontalScrollView(android.content.Context); - ctor public HorizontalScrollView(android.content.Context, android.util.AttributeSet); - ctor public HorizontalScrollView(android.content.Context, android.util.AttributeSet, int); - ctor public HorizontalScrollView(android.content.Context, android.util.AttributeSet, int, int); - method public boolean arrowScroll(int); - method protected int computeScrollDeltaToGetChildRectOnScreen(android.graphics.Rect); - method public boolean executeKeyEvent(android.view.KeyEvent); - method public void fling(int); - method public boolean fullScroll(int); - method @ColorInt public int getLeftEdgeEffectColor(); - method public int getMaxScrollAmount(); - method @ColorInt public int getRightEdgeEffectColor(); - method public boolean isFillViewport(); - method public boolean isSmoothScrollingEnabled(); - method public boolean pageScroll(int); - method public void setEdgeEffectColor(@ColorInt int); - method public void setFillViewport(boolean); - method public void setLeftEdgeEffectColor(@ColorInt int); - method public void setRightEdgeEffectColor(@ColorInt int); - method public void setSmoothScrollingEnabled(boolean); - method public final void smoothScrollBy(int, int); - method public final void smoothScrollTo(int, int); - } - - @android.widget.RemoteViews.RemoteView public class ImageButton extends android.widget.ImageView { - ctor public ImageButton(android.content.Context); - ctor public ImageButton(android.content.Context, android.util.AttributeSet); - ctor public ImageButton(android.content.Context, android.util.AttributeSet, int); - ctor public ImageButton(android.content.Context, android.util.AttributeSet, int, int); - } - - public class ImageSwitcher extends android.widget.ViewSwitcher { - ctor public ImageSwitcher(android.content.Context); - ctor public ImageSwitcher(android.content.Context, android.util.AttributeSet); - method public void setImageDrawable(android.graphics.drawable.Drawable); - method public void setImageResource(@DrawableRes int); - method public void setImageURI(android.net.Uri); - } - - @android.widget.RemoteViews.RemoteView public class ImageView extends android.view.View { - ctor public ImageView(android.content.Context); - ctor public ImageView(android.content.Context, @Nullable android.util.AttributeSet); - ctor public ImageView(android.content.Context, @Nullable android.util.AttributeSet, int); - ctor public ImageView(android.content.Context, @Nullable android.util.AttributeSet, int, int); - method public void animateTransform(@Nullable android.graphics.Matrix); - method public final void clearColorFilter(); - method public boolean getAdjustViewBounds(); - method public boolean getBaselineAlignBottom(); - method public android.graphics.ColorFilter getColorFilter(); - method public boolean getCropToPadding(); - method public android.graphics.drawable.Drawable getDrawable(); - method public int getImageAlpha(); - method public android.graphics.Matrix getImageMatrix(); - method @Nullable public android.graphics.BlendMode getImageTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getImageTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getImageTintMode(); - method public int getMaxHeight(); - method public int getMaxWidth(); - method public android.widget.ImageView.ScaleType getScaleType(); - method public int[] onCreateDrawableState(int); - method public void setAdjustViewBounds(boolean); - method @Deprecated public void setAlpha(int); - method public void setBaseline(int); - method public void setBaselineAlignBottom(boolean); - method public final void setColorFilter(int, android.graphics.PorterDuff.Mode); - method public final void setColorFilter(int); - method public void setColorFilter(android.graphics.ColorFilter); - method public void setCropToPadding(boolean); - method protected boolean setFrame(int, int, int, int); - method public void setImageAlpha(int); - method public void setImageBitmap(android.graphics.Bitmap); - method public void setImageDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setImageIcon(@Nullable android.graphics.drawable.Icon); - method public void setImageLevel(int); - method public void setImageMatrix(android.graphics.Matrix); - method public void setImageResource(@DrawableRes int); - method public void setImageState(int[], boolean); - method public void setImageTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setImageTintList(@Nullable android.content.res.ColorStateList); - method public void setImageTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public void setImageURI(@Nullable android.net.Uri); - method public void setMaxHeight(int); - method public void setMaxWidth(int); - method public void setScaleType(android.widget.ImageView.ScaleType); - } - - public enum ImageView.ScaleType { - enum_constant public static final android.widget.ImageView.ScaleType CENTER; - enum_constant public static final android.widget.ImageView.ScaleType CENTER_CROP; - enum_constant public static final android.widget.ImageView.ScaleType CENTER_INSIDE; - enum_constant public static final android.widget.ImageView.ScaleType FIT_CENTER; - enum_constant public static final android.widget.ImageView.ScaleType FIT_END; - enum_constant public static final android.widget.ImageView.ScaleType FIT_START; - enum_constant public static final android.widget.ImageView.ScaleType FIT_XY; - enum_constant public static final android.widget.ImageView.ScaleType MATRIX; - } - - @android.widget.RemoteViews.RemoteView public class LinearLayout extends android.view.ViewGroup { - ctor public LinearLayout(android.content.Context); - ctor public LinearLayout(android.content.Context, @Nullable android.util.AttributeSet); - ctor public LinearLayout(android.content.Context, @Nullable android.util.AttributeSet, int); - ctor public LinearLayout(android.content.Context, android.util.AttributeSet, int, int); - method protected android.widget.LinearLayout.LayoutParams generateDefaultLayoutParams(); - method public android.widget.LinearLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); - method protected android.widget.LinearLayout.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); - method public int getBaselineAlignedChildIndex(); - method public android.graphics.drawable.Drawable getDividerDrawable(); - method public int getDividerPadding(); - method public int getGravity(); - method public int getOrientation(); - method public int getShowDividers(); - method public float getWeightSum(); - method public boolean isBaselineAligned(); - method public boolean isMeasureWithLargestChildEnabled(); - method protected void onLayout(boolean, int, int, int, int); - method public void setBaselineAligned(boolean); - method public void setBaselineAlignedChildIndex(int); - method public void setDividerDrawable(android.graphics.drawable.Drawable); - method public void setDividerPadding(int); - method public void setGravity(int); - method public void setHorizontalGravity(int); - method public void setMeasureWithLargestChildEnabled(boolean); - method public void setOrientation(int); - method public void setShowDividers(int); - method public void setVerticalGravity(int); - method public void setWeightSum(float); - field public static final int HORIZONTAL = 0; // 0x0 - field public static final int SHOW_DIVIDER_BEGINNING = 1; // 0x1 - field public static final int SHOW_DIVIDER_END = 4; // 0x4 - field public static final int SHOW_DIVIDER_MIDDLE = 2; // 0x2 - field public static final int SHOW_DIVIDER_NONE = 0; // 0x0 - field public static final int VERTICAL = 1; // 0x1 - } - - public static class LinearLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { - ctor public LinearLayout.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor public LinearLayout.LayoutParams(int, int); - ctor public LinearLayout.LayoutParams(int, int, float); - ctor public LinearLayout.LayoutParams(android.view.ViewGroup.LayoutParams); - ctor public LinearLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams); - ctor public LinearLayout.LayoutParams(android.widget.LinearLayout.LayoutParams); - method public String debug(String); - field public int gravity; - field public float weight; - } - - public interface ListAdapter extends android.widget.Adapter { - method public boolean areAllItemsEnabled(); - method public boolean isEnabled(int); - } - - public class ListPopupWindow { - ctor public ListPopupWindow(@NonNull android.content.Context); - ctor public ListPopupWindow(@NonNull android.content.Context, @Nullable android.util.AttributeSet); - ctor public ListPopupWindow(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int); - ctor public ListPopupWindow(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int, @StyleRes int); - method public void clearListSelection(); - method public android.view.View.OnTouchListener createDragToOpenListener(android.view.View); - method public void dismiss(); - method @Nullable public android.view.View getAnchorView(); - method @StyleRes public int getAnimationStyle(); - method @Nullable public android.graphics.drawable.Drawable getBackground(); - method @Nullable public android.graphics.Rect getEpicenterBounds(); - method public int getHeight(); - method public int getHorizontalOffset(); - method public int getInputMethodMode(); - method @Nullable public android.widget.ListView getListView(); - method public int getPromptPosition(); - method @Nullable public Object getSelectedItem(); - method public long getSelectedItemId(); - method public int getSelectedItemPosition(); - method @Nullable public android.view.View getSelectedView(); - method public int getSoftInputMode(); - method public int getVerticalOffset(); - method public int getWidth(); - method public boolean isInputMethodNotNeeded(); - method public boolean isModal(); - method public boolean isShowing(); - method public boolean onKeyDown(int, @NonNull android.view.KeyEvent); - method public boolean onKeyPreIme(int, @NonNull android.view.KeyEvent); - method public boolean onKeyUp(int, @NonNull android.view.KeyEvent); - method public boolean performItemClick(int); - method public void postShow(); - method public void setAdapter(@Nullable android.widget.ListAdapter); - method public void setAnchorView(@Nullable android.view.View); - method public void setAnimationStyle(@StyleRes int); - method public void setBackgroundDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setContentWidth(int); - method public void setDropDownGravity(int); - method public void setEpicenterBounds(@Nullable android.graphics.Rect); - method public void setHeight(int); - method public void setHorizontalOffset(int); - method public void setInputMethodMode(int); - method public void setListSelector(android.graphics.drawable.Drawable); - method public void setModal(boolean); - method public void setOnDismissListener(@Nullable android.widget.PopupWindow.OnDismissListener); - method public void setOnItemClickListener(@Nullable android.widget.AdapterView.OnItemClickListener); - method public void setOnItemSelectedListener(@Nullable android.widget.AdapterView.OnItemSelectedListener); - method public void setPromptPosition(int); - method public void setPromptView(@Nullable android.view.View); - method public void setSelection(int); - method public void setSoftInputMode(int); - method public void setVerticalOffset(int); - method public void setWidth(int); - method public void setWindowLayoutType(int); - method public void show(); - field public static final int INPUT_METHOD_FROM_FOCUSABLE = 0; // 0x0 - field public static final int INPUT_METHOD_NEEDED = 1; // 0x1 - field public static final int INPUT_METHOD_NOT_NEEDED = 2; // 0x2 - field public static final int MATCH_PARENT = -1; // 0xffffffff - field public static final int POSITION_PROMPT_ABOVE = 0; // 0x0 - field public static final int POSITION_PROMPT_BELOW = 1; // 0x1 - field public static final int WRAP_CONTENT = -2; // 0xfffffffe - } - - @android.widget.RemoteViews.RemoteView public class ListView extends android.widget.AbsListView { - ctor public ListView(android.content.Context); - ctor public ListView(android.content.Context, android.util.AttributeSet); - ctor public ListView(android.content.Context, android.util.AttributeSet, int); - ctor public ListView(android.content.Context, android.util.AttributeSet, int, int); - method public void addFooterView(android.view.View, Object, boolean); - method public void addFooterView(android.view.View); - method public void addHeaderView(android.view.View, Object, boolean); - method public void addHeaderView(android.view.View); - method public boolean areFooterDividersEnabled(); - method public boolean areHeaderDividersEnabled(); - method public android.widget.ListAdapter getAdapter(); - method @Deprecated public long[] getCheckItemIds(); - method @Nullable public android.graphics.drawable.Drawable getDivider(); - method public int getDividerHeight(); - method public int getFooterViewsCount(); - method public int getHeaderViewsCount(); - method public boolean getItemsCanFocus(); - method public int getMaxScrollAmount(); - method public android.graphics.drawable.Drawable getOverscrollFooter(); - method public android.graphics.drawable.Drawable getOverscrollHeader(); - method public boolean removeFooterView(android.view.View); - method public boolean removeHeaderView(android.view.View); - method public void setDivider(@Nullable android.graphics.drawable.Drawable); - method public void setDividerHeight(int); - method public void setFooterDividersEnabled(boolean); - method public void setHeaderDividersEnabled(boolean); - method public void setItemsCanFocus(boolean); - method public void setOverscrollFooter(android.graphics.drawable.Drawable); - method public void setOverscrollHeader(android.graphics.drawable.Drawable); - method public void setSelection(int); - method public void setSelectionAfterHeaderView(); - method public void smoothScrollByOffset(int); - } - - public class ListView.FixedViewInfo { - ctor public ListView.FixedViewInfo(); - field public Object data; - field public boolean isSelectable; - field public android.view.View view; - } - - @UiThread public final class Magnifier { - ctor @Deprecated public Magnifier(@NonNull android.view.View); - method public void dismiss(); - method @Px public float getCornerRadius(); - method @Px public int getDefaultHorizontalSourceToMagnifierOffset(); - method @Px public int getDefaultVerticalSourceToMagnifierOffset(); - method @Px public float getElevation(); - method @Px public int getHeight(); - method @Nullable public android.graphics.drawable.Drawable getOverlay(); - method @Nullable public android.graphics.Point getPosition(); - method @Px public int getSourceHeight(); - method @Nullable public android.graphics.Point getSourcePosition(); - method @Px public int getSourceWidth(); - method @Px public int getWidth(); - method public float getZoom(); - method public boolean isClippingEnabled(); - method public void setZoom(@FloatRange(from=0.0f) float); - method public void show(@FloatRange(from=0) float, @FloatRange(from=0) float); - method public void show(@FloatRange(from=0) float, @FloatRange(from=0) float, float, float); - method public void update(); - field public static final int SOURCE_BOUND_MAX_IN_SURFACE = 0; // 0x0 - field public static final int SOURCE_BOUND_MAX_VISIBLE = 1; // 0x1 - } - - public static final class Magnifier.Builder { - ctor public Magnifier.Builder(@NonNull android.view.View); - method @NonNull public android.widget.Magnifier build(); - method @NonNull public android.widget.Magnifier.Builder setClippingEnabled(boolean); - method @NonNull public android.widget.Magnifier.Builder setCornerRadius(@FloatRange(from=0) @Px float); - method @NonNull public android.widget.Magnifier.Builder setDefaultSourceToMagnifierOffset(@Px int, @Px int); - method @NonNull public android.widget.Magnifier.Builder setElevation(@FloatRange(from=0) @Px float); - method @NonNull public android.widget.Magnifier.Builder setInitialZoom(@FloatRange(from=0.0f) float); - method @NonNull public android.widget.Magnifier.Builder setOverlay(@Nullable android.graphics.drawable.Drawable); - method @NonNull public android.widget.Magnifier.Builder setSize(@IntRange(from=0) @Px int, @IntRange(from=0) @Px int); - method @NonNull public android.widget.Magnifier.Builder setSourceBounds(int, int, int, int); - } - - public class MediaController extends android.widget.FrameLayout { - ctor public MediaController(android.content.Context, android.util.AttributeSet); - ctor public MediaController(android.content.Context, boolean); - ctor public MediaController(android.content.Context); - method public void hide(); - method public boolean isShowing(); - method public void onFinishInflate(); - method public void setAnchorView(android.view.View); - method public void setMediaPlayer(android.widget.MediaController.MediaPlayerControl); - method public void setPrevNextListeners(android.view.View.OnClickListener, android.view.View.OnClickListener); - method public void show(); - method public void show(int); - } - - public static interface MediaController.MediaPlayerControl { - method public boolean canPause(); - method public boolean canSeekBackward(); - method public boolean canSeekForward(); - method public int getAudioSessionId(); - method public int getBufferPercentage(); - method public int getCurrentPosition(); - method public int getDuration(); - method public boolean isPlaying(); - method public void pause(); - method public void seekTo(int); - method public void start(); - } - - public class MultiAutoCompleteTextView extends android.widget.AutoCompleteTextView { - ctor public MultiAutoCompleteTextView(android.content.Context); - ctor public MultiAutoCompleteTextView(android.content.Context, android.util.AttributeSet); - ctor public MultiAutoCompleteTextView(android.content.Context, android.util.AttributeSet, int); - ctor public MultiAutoCompleteTextView(android.content.Context, android.util.AttributeSet, int, int); - method protected void performFiltering(CharSequence, int, int, int); - method public void setTokenizer(android.widget.MultiAutoCompleteTextView.Tokenizer); - } - - public static class MultiAutoCompleteTextView.CommaTokenizer implements android.widget.MultiAutoCompleteTextView.Tokenizer { - ctor public MultiAutoCompleteTextView.CommaTokenizer(); - method public int findTokenEnd(CharSequence, int); - method public int findTokenStart(CharSequence, int); - method public CharSequence terminateToken(CharSequence); - } - - public static interface MultiAutoCompleteTextView.Tokenizer { - method public int findTokenEnd(CharSequence, int); - method public int findTokenStart(CharSequence, int); - method public CharSequence terminateToken(CharSequence); - } - - public class NumberPicker extends android.widget.LinearLayout { - ctor public NumberPicker(android.content.Context); - ctor public NumberPicker(android.content.Context, android.util.AttributeSet); - ctor public NumberPicker(android.content.Context, android.util.AttributeSet, int); - ctor public NumberPicker(android.content.Context, android.util.AttributeSet, int, int); - method public String[] getDisplayedValues(); - method public int getMaxValue(); - method public int getMinValue(); - method @Px public int getSelectionDividerHeight(); - method @ColorInt public int getTextColor(); - method @FloatRange(from=0.0, fromInclusive=false) public float getTextSize(); - method public int getValue(); - method public boolean getWrapSelectorWheel(); - method public void setDisplayedValues(String[]); - method public void setFormatter(android.widget.NumberPicker.Formatter); - method public void setMaxValue(int); - method public void setMinValue(int); - method public void setOnLongPressUpdateInterval(long); - method public void setOnScrollListener(android.widget.NumberPicker.OnScrollListener); - method public void setOnValueChangedListener(android.widget.NumberPicker.OnValueChangeListener); - method public void setSelectionDividerHeight(@IntRange(from=0) @Px int); - method public void setTextColor(@ColorInt int); - method public void setTextSize(@FloatRange(from=0.0, fromInclusive=false) float); - method public void setValue(int); - method public void setWrapSelectorWheel(boolean); - } - - public static interface NumberPicker.Formatter { - method public String format(int); - } - - public static interface NumberPicker.OnScrollListener { - method public void onScrollStateChange(android.widget.NumberPicker, int); - field public static final int SCROLL_STATE_FLING = 2; // 0x2 - field public static final int SCROLL_STATE_IDLE = 0; // 0x0 - field public static final int SCROLL_STATE_TOUCH_SCROLL = 1; // 0x1 - } - - public static interface NumberPicker.OnValueChangeListener { - method public void onValueChange(android.widget.NumberPicker, int, int); - } - - public class OverScroller { - ctor public OverScroller(android.content.Context); - ctor public OverScroller(android.content.Context, android.view.animation.Interpolator); - ctor @Deprecated public OverScroller(android.content.Context, android.view.animation.Interpolator, float, float); - ctor @Deprecated public OverScroller(android.content.Context, android.view.animation.Interpolator, float, float, boolean); - method public void abortAnimation(); - method public boolean computeScrollOffset(); - method public void fling(int, int, int, int, int, int, int, int); - method public void fling(int, int, int, int, int, int, int, int, int, int); - method public final void forceFinished(boolean); - method public float getCurrVelocity(); - method public final int getCurrX(); - method public final int getCurrY(); - method public final int getFinalX(); - method public final int getFinalY(); - method public final int getStartX(); - method public final int getStartY(); - method public final boolean isFinished(); - method public boolean isOverScrolled(); - method public void notifyHorizontalEdgeReached(int, int, int); - method public void notifyVerticalEdgeReached(int, int, int); - method public final void setFriction(float); - method public boolean springBack(int, int, int, int, int, int); - method public void startScroll(int, int, int, int); - method public void startScroll(int, int, int, int, int); - } - - public class PopupMenu { - ctor public PopupMenu(android.content.Context, android.view.View); - ctor public PopupMenu(android.content.Context, android.view.View, int); - ctor public PopupMenu(android.content.Context, android.view.View, int, int, int); - method public void dismiss(); - method public android.view.View.OnTouchListener getDragToOpenListener(); - method public int getGravity(); - method public android.view.Menu getMenu(); - method public android.view.MenuInflater getMenuInflater(); - method public void inflate(@MenuRes int); - method public void setForceShowIcon(boolean); - method public void setGravity(int); - method public void setOnDismissListener(android.widget.PopupMenu.OnDismissListener); - method public void setOnMenuItemClickListener(android.widget.PopupMenu.OnMenuItemClickListener); - method public void show(); - } - - public static interface PopupMenu.OnDismissListener { - method public void onDismiss(android.widget.PopupMenu); - } - - public static interface PopupMenu.OnMenuItemClickListener { - method public boolean onMenuItemClick(android.view.MenuItem); - } - - public class PopupWindow { - ctor public PopupWindow(android.content.Context); - ctor public PopupWindow(android.content.Context, android.util.AttributeSet); - ctor public PopupWindow(android.content.Context, android.util.AttributeSet, int); - ctor public PopupWindow(android.content.Context, android.util.AttributeSet, int, int); - ctor public PopupWindow(); - ctor public PopupWindow(android.view.View); - ctor public PopupWindow(int, int); - ctor public PopupWindow(android.view.View, int, int); - ctor public PopupWindow(android.view.View, int, int, boolean); - method public void dismiss(); - method public int getAnimationStyle(); - method public android.graphics.drawable.Drawable getBackground(); - method public android.view.View getContentView(); - method public float getElevation(); - method @Nullable public android.transition.Transition getEnterTransition(); - method @Nullable public android.graphics.Rect getEpicenterBounds(); - method @Nullable public android.transition.Transition getExitTransition(); - method public int getHeight(); - method public int getInputMethodMode(); - method public int getMaxAvailableHeight(@NonNull android.view.View); - method public int getMaxAvailableHeight(@NonNull android.view.View, int); - method public int getMaxAvailableHeight(@NonNull android.view.View, int, boolean); - method public boolean getOverlapAnchor(); - method public int getSoftInputMode(); - method public int getWidth(); - method public int getWindowLayoutType(); - method public boolean isAboveAnchor(); - method public boolean isAttachedInDecor(); - method public boolean isClippedToScreen(); - method public boolean isClippingEnabled(); - method public boolean isFocusable(); - method public boolean isLaidOutInScreen(); - method public boolean isOutsideTouchable(); - method public boolean isShowing(); - method public boolean isSplitTouchEnabled(); - method public boolean isTouchModal(); - method public boolean isTouchable(); - method public void setAnimationStyle(int); - method public void setAttachedInDecor(boolean); - method public void setBackgroundDrawable(android.graphics.drawable.Drawable); - method public void setClippingEnabled(boolean); - method public void setContentView(android.view.View); - method public void setElevation(float); - method public void setEnterTransition(@Nullable android.transition.Transition); - method public void setEpicenterBounds(@Nullable android.graphics.Rect); - method public void setExitTransition(@Nullable android.transition.Transition); - method public void setFocusable(boolean); - method public void setHeight(int); - method public void setIgnoreCheekPress(); - method public void setInputMethodMode(int); - method public void setIsClippedToScreen(boolean); - method public void setIsLaidOutInScreen(boolean); - method public void setOnDismissListener(android.widget.PopupWindow.OnDismissListener); - method public void setOutsideTouchable(boolean); - method public void setOverlapAnchor(boolean); - method public void setSoftInputMode(int); - method public void setSplitTouchEnabled(boolean); - method public void setTouchInterceptor(android.view.View.OnTouchListener); - method public void setTouchModal(boolean); - method public void setTouchable(boolean); - method public void setWidth(int); - method @Deprecated public void setWindowLayoutMode(int, int); - method public void setWindowLayoutType(int); - method public void showAsDropDown(android.view.View); - method public void showAsDropDown(android.view.View, int, int); - method public void showAsDropDown(android.view.View, int, int, int); - method public void showAtLocation(android.view.View, int, int, int); - method public void update(); - method public void update(int, int); - method public void update(int, int, int, int); - method public void update(int, int, int, int, boolean); - method public void update(android.view.View, int, int); - method public void update(android.view.View, int, int, int, int); - field public static final int INPUT_METHOD_FROM_FOCUSABLE = 0; // 0x0 - field public static final int INPUT_METHOD_NEEDED = 1; // 0x1 - field public static final int INPUT_METHOD_NOT_NEEDED = 2; // 0x2 - } - - public static interface PopupWindow.OnDismissListener { - method public void onDismiss(); - } - - @android.widget.RemoteViews.RemoteView public class ProgressBar extends android.view.View { - ctor public ProgressBar(android.content.Context); - ctor public ProgressBar(android.content.Context, android.util.AttributeSet); - ctor public ProgressBar(android.content.Context, android.util.AttributeSet, int); - ctor public ProgressBar(android.content.Context, android.util.AttributeSet, int, int); - method @Nullable public android.graphics.drawable.Drawable getCurrentDrawable(); - method public android.graphics.drawable.Drawable getIndeterminateDrawable(); - method @Nullable public android.graphics.BlendMode getIndeterminateTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getIndeterminateTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getIndeterminateTintMode(); - method public android.view.animation.Interpolator getInterpolator(); - method public int getMax(); - method @Px public int getMaxHeight(); - method @Px public int getMaxWidth(); - method public int getMin(); - method @Px public int getMinHeight(); - method @Px public int getMinWidth(); - method public int getProgress(); - method @Nullable public android.graphics.BlendMode getProgressBackgroundTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getProgressBackgroundTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getProgressBackgroundTintMode(); - method public android.graphics.drawable.Drawable getProgressDrawable(); - method @Nullable public android.graphics.BlendMode getProgressTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getProgressTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getProgressTintMode(); - method public int getSecondaryProgress(); - method @Nullable public android.graphics.BlendMode getSecondaryProgressTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getSecondaryProgressTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getSecondaryProgressTintMode(); - method public final void incrementProgressBy(int); - method public final void incrementSecondaryProgressBy(int); - method public boolean isAnimating(); - method public boolean isIndeterminate(); - method public void onRestoreInstanceState(android.os.Parcelable); - method public android.os.Parcelable onSaveInstanceState(); - method public void setIndeterminate(boolean); - method public void setIndeterminateDrawable(android.graphics.drawable.Drawable); - method public void setIndeterminateDrawableTiled(android.graphics.drawable.Drawable); - method public void setIndeterminateTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setIndeterminateTintList(@Nullable android.content.res.ColorStateList); - method public void setIndeterminateTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public void setInterpolator(android.content.Context, @InterpolatorRes int); - method public void setInterpolator(android.view.animation.Interpolator); - method public void setMax(int); - method public void setMaxHeight(@Px int); - method public void setMaxWidth(@Px int); - method public void setMin(int); - method public void setMinHeight(@Px int); - method public void setMinWidth(@Px int); - method public void setProgress(int); - method public void setProgress(int, boolean); - method public void setProgressBackgroundTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setProgressBackgroundTintList(@Nullable android.content.res.ColorStateList); - method public void setProgressBackgroundTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public void setProgressDrawable(android.graphics.drawable.Drawable); - method public void setProgressDrawableTiled(android.graphics.drawable.Drawable); - method public void setProgressTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setProgressTintList(@Nullable android.content.res.ColorStateList); - method public void setProgressTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public void setSecondaryProgress(int); - method public void setSecondaryProgressTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setSecondaryProgressTintList(@Nullable android.content.res.ColorStateList); - method public void setSecondaryProgressTintMode(@Nullable android.graphics.PorterDuff.Mode); - } - - public class QuickContactBadge extends android.widget.ImageView implements android.view.View.OnClickListener { - ctor public QuickContactBadge(android.content.Context); - ctor public QuickContactBadge(android.content.Context, android.util.AttributeSet); - ctor public QuickContactBadge(android.content.Context, android.util.AttributeSet, int); - ctor public QuickContactBadge(android.content.Context, android.util.AttributeSet, int, int); - method public void assignContactFromEmail(String, boolean); - method public void assignContactFromEmail(String, boolean, android.os.Bundle); - method public void assignContactFromPhone(String, boolean); - method public void assignContactFromPhone(String, boolean, android.os.Bundle); - method public void assignContactUri(android.net.Uri); - method public void onClick(android.view.View); - method public void setExcludeMimes(String[]); - method public void setImageToDefault(); - method public void setMode(int); - method public void setOverlay(android.graphics.drawable.Drawable); - method public void setPrioritizedMimeType(String); - field protected String[] mExcludeMimes; - } - - @android.widget.RemoteViews.RemoteView public class RadioButton extends android.widget.CompoundButton { - ctor public RadioButton(android.content.Context); - ctor public RadioButton(android.content.Context, android.util.AttributeSet); - ctor public RadioButton(android.content.Context, android.util.AttributeSet, int); - ctor public RadioButton(android.content.Context, android.util.AttributeSet, int, int); - } - - @android.widget.RemoteViews.RemoteView public class RadioGroup extends android.widget.LinearLayout { - ctor public RadioGroup(android.content.Context); - ctor public RadioGroup(android.content.Context, android.util.AttributeSet); - method public void check(@IdRes int); - method public void clearCheck(); - method public android.widget.RadioGroup.LayoutParams generateLayoutParams(android.util.AttributeSet); - method @IdRes public int getCheckedRadioButtonId(); - method public void setOnCheckedChangeListener(android.widget.RadioGroup.OnCheckedChangeListener); - } - - public static class RadioGroup.LayoutParams extends android.widget.LinearLayout.LayoutParams { - ctor public RadioGroup.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor public RadioGroup.LayoutParams(int, int); - ctor public RadioGroup.LayoutParams(int, int, float); - ctor public RadioGroup.LayoutParams(android.view.ViewGroup.LayoutParams); - ctor public RadioGroup.LayoutParams(android.view.ViewGroup.MarginLayoutParams); - } - - public static interface RadioGroup.OnCheckedChangeListener { - method public void onCheckedChanged(@NonNull android.widget.RadioGroup, @IdRes int); - } - - public class RatingBar extends android.widget.AbsSeekBar { - ctor public RatingBar(android.content.Context, android.util.AttributeSet, int); - ctor public RatingBar(android.content.Context, android.util.AttributeSet, int, int); - ctor public RatingBar(android.content.Context, android.util.AttributeSet); - ctor public RatingBar(android.content.Context); - method public int getNumStars(); - method public android.widget.RatingBar.OnRatingBarChangeListener getOnRatingBarChangeListener(); - method public float getRating(); - method public float getStepSize(); - method public boolean isIndicator(); - method public void setIsIndicator(boolean); - method public void setNumStars(int); - method public void setOnRatingBarChangeListener(android.widget.RatingBar.OnRatingBarChangeListener); - method public void setRating(float); - method public void setStepSize(float); - } - - public static interface RatingBar.OnRatingBarChangeListener { - method public void onRatingChanged(android.widget.RatingBar, float, boolean); - } - - @android.widget.RemoteViews.RemoteView public class RelativeLayout extends android.view.ViewGroup { - ctor public RelativeLayout(android.content.Context); - ctor public RelativeLayout(android.content.Context, android.util.AttributeSet); - ctor public RelativeLayout(android.content.Context, android.util.AttributeSet, int); - ctor public RelativeLayout(android.content.Context, android.util.AttributeSet, int, int); - method public android.widget.RelativeLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); - method public int getGravity(); - method public int getIgnoreGravity(); - method protected void onLayout(boolean, int, int, int, int); - method public void setGravity(int); - method public void setHorizontalGravity(int); - method public void setIgnoreGravity(int); - method public void setVerticalGravity(int); - field public static final int ABOVE = 2; // 0x2 - field public static final int ALIGN_BASELINE = 4; // 0x4 - field public static final int ALIGN_BOTTOM = 8; // 0x8 - field public static final int ALIGN_END = 19; // 0x13 - field public static final int ALIGN_LEFT = 5; // 0x5 - field public static final int ALIGN_PARENT_BOTTOM = 12; // 0xc - field public static final int ALIGN_PARENT_END = 21; // 0x15 - field public static final int ALIGN_PARENT_LEFT = 9; // 0x9 - field public static final int ALIGN_PARENT_RIGHT = 11; // 0xb - field public static final int ALIGN_PARENT_START = 20; // 0x14 - field public static final int ALIGN_PARENT_TOP = 10; // 0xa - field public static final int ALIGN_RIGHT = 7; // 0x7 - field public static final int ALIGN_START = 18; // 0x12 - field public static final int ALIGN_TOP = 6; // 0x6 - field public static final int BELOW = 3; // 0x3 - field public static final int CENTER_HORIZONTAL = 14; // 0xe - field public static final int CENTER_IN_PARENT = 13; // 0xd - field public static final int CENTER_VERTICAL = 15; // 0xf - field public static final int END_OF = 17; // 0x11 - field public static final int LEFT_OF = 0; // 0x0 - field public static final int RIGHT_OF = 1; // 0x1 - field public static final int START_OF = 16; // 0x10 - field public static final int TRUE = -1; // 0xffffffff - } - - public static class RelativeLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { - ctor public RelativeLayout.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor public RelativeLayout.LayoutParams(int, int); - ctor public RelativeLayout.LayoutParams(android.view.ViewGroup.LayoutParams); - ctor public RelativeLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams); - ctor public RelativeLayout.LayoutParams(android.widget.RelativeLayout.LayoutParams); - method public void addRule(int); - method public void addRule(int, int); - method public String debug(String); - method public int getRule(int); - method public int[] getRules(); - method public void removeRule(int); - field public boolean alignWithParent; - } - - public class RemoteViews implements android.view.LayoutInflater.Filter android.os.Parcelable { - ctor public RemoteViews(String, int); - ctor public RemoteViews(@NonNull String, @LayoutRes int, @IdRes int); - ctor public RemoteViews(android.widget.RemoteViews, android.widget.RemoteViews); - ctor public RemoteViews(@NonNull java.util.Map); - ctor public RemoteViews(android.widget.RemoteViews); - ctor public RemoteViews(android.os.Parcel); - ctor @FlaggedApi("android.appwidget.flags.draw_data_parcel") public RemoteViews(@NonNull android.widget.RemoteViews.DrawInstructions); - method public void addStableView(@IdRes int, @NonNull android.widget.RemoteViews, int); - method public void addView(@IdRes int, android.widget.RemoteViews); - method public android.view.View apply(android.content.Context, android.view.ViewGroup); - method @Deprecated public android.widget.RemoteViews clone(); - method public int describeContents(); - method public int getLayoutId(); - method public String getPackage(); - method @IdRes public int getViewId(); - method @Deprecated public boolean onLoadClass(Class); - method public void reapply(android.content.Context, android.view.View); - method public void removeAllViews(@IdRes int); - method public void setAccessibilityTraversalAfter(@IdRes int, @IdRes int); - method public void setAccessibilityTraversalBefore(@IdRes int, @IdRes int); - method public void setBitmap(@IdRes int, String, android.graphics.Bitmap); - method public void setBlendMode(@IdRes int, @NonNull String, @Nullable android.graphics.BlendMode); - method public void setBoolean(@IdRes int, String, boolean); - method public void setBundle(@IdRes int, String, android.os.Bundle); - method public void setByte(@IdRes int, String, byte); - method public void setChar(@IdRes int, String, char); - method public void setCharSequence(@IdRes int, String, CharSequence); - method public void setCharSequence(@IdRes int, @NonNull String, @StringRes int); - method public void setCharSequenceAttr(@IdRes int, @NonNull String, @AttrRes int); - method public void setChronometer(@IdRes int, long, String, boolean); - method public void setChronometerCountDown(@IdRes int, boolean); - method public void setColor(@IdRes int, @NonNull String, @ColorRes int); - method public void setColorAttr(@IdRes int, @NonNull String, @AttrRes int); - method public void setColorInt(@IdRes int, @NonNull String, @ColorInt int, @ColorInt int); - method public void setColorStateList(@IdRes int, @NonNull String, @Nullable android.content.res.ColorStateList); - method public void setColorStateList(@IdRes int, @NonNull String, @Nullable android.content.res.ColorStateList, @Nullable android.content.res.ColorStateList); - method public void setColorStateList(@IdRes int, @NonNull String, @ColorRes int); - method public void setColorStateListAttr(@IdRes int, @NonNull String, @AttrRes int); - method public void setCompoundButtonChecked(@IdRes int, boolean); - method public void setContentDescription(@IdRes int, CharSequence); - method public void setDisplayedChild(@IdRes int, int); - method public void setDouble(@IdRes int, String, double); - method public void setEmptyView(@IdRes int, @IdRes int); - method public void setFloat(@IdRes int, String, float); - method public void setFloatDimen(@IdRes int, @NonNull String, @DimenRes int); - method public void setFloatDimen(@IdRes int, @NonNull String, float, int); - method public void setFloatDimenAttr(@IdRes int, @NonNull String, @AttrRes int); - method public void setIcon(@IdRes int, String, android.graphics.drawable.Icon); - method public void setIcon(@IdRes int, @NonNull String, @Nullable android.graphics.drawable.Icon, @Nullable android.graphics.drawable.Icon); - method public void setImageViewBitmap(@IdRes int, android.graphics.Bitmap); - method public void setImageViewIcon(@IdRes int, android.graphics.drawable.Icon); - method public void setImageViewResource(@IdRes int, @DrawableRes int); - method public void setImageViewUri(@IdRes int, android.net.Uri); - method public void setInt(@IdRes int, String, int); - method public void setIntDimen(@IdRes int, @NonNull String, @DimenRes int); - method public void setIntDimen(@IdRes int, @NonNull String, float, int); - method public void setIntDimenAttr(@IdRes int, @NonNull String, @AttrRes int); - method public void setIntent(@IdRes int, String, android.content.Intent); - method public void setLabelFor(@IdRes int, @IdRes int); - method public void setLightBackgroundLayoutId(@LayoutRes int); - method public void setLong(@IdRes int, String, long); - method public void setOnCheckedChangeResponse(@IdRes int, @NonNull android.widget.RemoteViews.RemoteResponse); - method public void setOnClickFillInIntent(@IdRes int, android.content.Intent); - method public void setOnClickPendingIntent(@IdRes int, android.app.PendingIntent); - method public void setOnClickResponse(@IdRes int, @NonNull android.widget.RemoteViews.RemoteResponse); - method @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public void setOnStylusHandwritingPendingIntent(@IdRes int, @Nullable android.app.PendingIntent); - method public void setPendingIntentTemplate(@IdRes int, android.app.PendingIntent); - method public void setProgressBar(@IdRes int, int, int, boolean); - method public void setRadioGroupChecked(@IdRes int, @IdRes int); - method public void setRelativeScrollPosition(@IdRes int, int); - method @Deprecated public void setRemoteAdapter(int, @IdRes int, android.content.Intent); - method @Deprecated public void setRemoteAdapter(@IdRes int, android.content.Intent); - method public void setRemoteAdapter(@IdRes int, @NonNull android.widget.RemoteViews.RemoteCollectionItems); - method public void setScrollPosition(@IdRes int, int); - method public void setShort(@IdRes int, String, short); - method public void setString(@IdRes int, String, String); - method public void setTextColor(@IdRes int, @ColorInt int); - method public void setTextViewCompoundDrawables(@IdRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int); - method public void setTextViewCompoundDrawablesRelative(@IdRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int); - method public void setTextViewText(@IdRes int, CharSequence); - method public void setTextViewTextSize(@IdRes int, int, float); - method public void setUri(@IdRes int, String, android.net.Uri); - method public void setViewLayoutHeight(@IdRes int, float, int); - method public void setViewLayoutHeightAttr(@IdRes int, @AttrRes int); - method public void setViewLayoutHeightDimen(@IdRes int, @DimenRes int); - method public void setViewLayoutMargin(@IdRes int, int, float, int); - method public void setViewLayoutMarginAttr(@IdRes int, int, @AttrRes int); - method public void setViewLayoutMarginDimen(@IdRes int, int, @DimenRes int); - method public void setViewLayoutWidth(@IdRes int, float, int); - method public void setViewLayoutWidthAttr(@IdRes int, @AttrRes int); - method public void setViewLayoutWidthDimen(@IdRes int, @DimenRes int); - method public void setViewOutlinePreferredRadius(@IdRes int, float, int); - method public void setViewOutlinePreferredRadiusAttr(@IdRes int, @AttrRes int); - method public void setViewOutlinePreferredRadiusDimen(@IdRes int, @DimenRes int); - method public void setViewPadding(@IdRes int, @Px int, @Px int, @Px int, @Px int); - method public void setViewVisibility(@IdRes int, int); - method @Deprecated public void showNext(@IdRes int); - method @Deprecated public void showPrevious(@IdRes int); - method public void writeToParcel(android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - field public static final String EXTRA_CHECKED = "android.widget.extra.CHECKED"; - field public static final String EXTRA_SHARED_ELEMENT_BOUNDS = "android.widget.extra.SHARED_ELEMENT_BOUNDS"; - field public static final int MARGIN_BOTTOM = 3; // 0x3 - field public static final int MARGIN_END = 5; // 0x5 - field public static final int MARGIN_LEFT = 0; // 0x0 - field public static final int MARGIN_RIGHT = 2; // 0x2 - field public static final int MARGIN_START = 4; // 0x4 - field public static final int MARGIN_TOP = 1; // 0x1 - } - - public static class RemoteViews.ActionException extends java.lang.RuntimeException { - ctor public RemoteViews.ActionException(Exception); - ctor public RemoteViews.ActionException(String); - } - - @FlaggedApi("android.appwidget.flags.draw_data_parcel") public static final class RemoteViews.DrawInstructions { - method @FlaggedApi("android.appwidget.flags.draw_data_parcel") public static long getSupportedVersion(); - } - - @FlaggedApi("android.appwidget.flags.draw_data_parcel") public static final class RemoteViews.DrawInstructions.Builder { - ctor @FlaggedApi("android.appwidget.flags.draw_data_parcel") public RemoteViews.DrawInstructions.Builder(@NonNull java.util.List); - method @FlaggedApi("android.appwidget.flags.draw_data_parcel") @NonNull public android.widget.RemoteViews.DrawInstructions build(); - } - - public static final class RemoteViews.RemoteCollectionItems implements android.os.Parcelable { - method public int describeContents(); - method public int getItemCount(); - method public long getItemId(int); - method @NonNull public android.widget.RemoteViews getItemView(int); - method public int getViewTypeCount(); - method public boolean hasStableIds(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class RemoteViews.RemoteCollectionItems.Builder { - ctor public RemoteViews.RemoteCollectionItems.Builder(); - method @NonNull public android.widget.RemoteViews.RemoteCollectionItems.Builder addItem(long, @NonNull android.widget.RemoteViews); - method @NonNull public android.widget.RemoteViews.RemoteCollectionItems build(); - method @NonNull public android.widget.RemoteViews.RemoteCollectionItems.Builder setHasStableIds(boolean); - method @NonNull public android.widget.RemoteViews.RemoteCollectionItems.Builder setViewTypeCount(int); - } - - public static class RemoteViews.RemoteResponse { - ctor public RemoteViews.RemoteResponse(); - method @NonNull public android.widget.RemoteViews.RemoteResponse addSharedElement(@IdRes int, @NonNull String); - method @NonNull public static android.widget.RemoteViews.RemoteResponse fromFillInIntent(@NonNull android.content.Intent); - method @NonNull public static android.widget.RemoteViews.RemoteResponse fromPendingIntent(@NonNull android.app.PendingIntent); - } - - @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface RemoteViews.RemoteView { - } - - public static final class RemoteViews.RemoteViewOutlineProvider extends android.view.ViewOutlineProvider { - ctor public RemoteViews.RemoteViewOutlineProvider(float); - method public void getOutline(@NonNull android.view.View, @NonNull android.graphics.Outline); - method public float getRadius(); - } - - public abstract class RemoteViewsService extends android.app.Service { - ctor public RemoteViewsService(); - method public android.os.IBinder onBind(android.content.Intent); - method public abstract android.widget.RemoteViewsService.RemoteViewsFactory onGetViewFactory(android.content.Intent); - } - - public static interface RemoteViewsService.RemoteViewsFactory { - method public int getCount(); - method public long getItemId(int); - method public android.widget.RemoteViews getLoadingView(); - method public android.widget.RemoteViews getViewAt(int); - method public int getViewTypeCount(); - method public boolean hasStableIds(); - method public void onCreate(); - method public void onDataSetChanged(); - method public void onDestroy(); - } - - public abstract class ResourceCursorAdapter extends android.widget.CursorAdapter { - ctor @Deprecated public ResourceCursorAdapter(android.content.Context, int, android.database.Cursor); - ctor public ResourceCursorAdapter(android.content.Context, int, android.database.Cursor, boolean); - ctor public ResourceCursorAdapter(android.content.Context, int, android.database.Cursor, int); - method public android.view.View newView(android.content.Context, android.database.Cursor, android.view.ViewGroup); - method public void setDropDownViewResource(int); - method public void setViewResource(int); - } - - public abstract class ResourceCursorTreeAdapter extends android.widget.CursorTreeAdapter { - ctor public ResourceCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int, int, int); - ctor public ResourceCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int, int); - ctor public ResourceCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int); - method public android.view.View newChildView(android.content.Context, android.database.Cursor, boolean, android.view.ViewGroup); - method public android.view.View newGroupView(android.content.Context, android.database.Cursor, boolean, android.view.ViewGroup); - } - - public class ScrollView extends android.widget.FrameLayout { - ctor public ScrollView(android.content.Context); - ctor public ScrollView(android.content.Context, android.util.AttributeSet); - ctor public ScrollView(android.content.Context, android.util.AttributeSet, int); - ctor public ScrollView(android.content.Context, android.util.AttributeSet, int, int); - method public boolean arrowScroll(int); - method protected int computeScrollDeltaToGetChildRectOnScreen(android.graphics.Rect); - method public boolean executeKeyEvent(android.view.KeyEvent); - method public void fling(int); - method public boolean fullScroll(int); - method @ColorInt public int getBottomEdgeEffectColor(); - method public int getMaxScrollAmount(); - method @ColorInt public int getTopEdgeEffectColor(); - method public boolean isFillViewport(); - method public boolean isSmoothScrollingEnabled(); - method public boolean pageScroll(int); - method public void scrollToDescendant(@NonNull android.view.View); - method public void setBottomEdgeEffectColor(@ColorInt int); - method public void setEdgeEffectColor(@ColorInt int); - method public void setFillViewport(boolean); - method public void setSmoothScrollingEnabled(boolean); - method public void setTopEdgeEffectColor(@ColorInt int); - method public final void smoothScrollBy(int, int); - method public final void smoothScrollTo(int, int); - } - - public class Scroller { - ctor public Scroller(android.content.Context); - ctor public Scroller(android.content.Context, android.view.animation.Interpolator); - ctor public Scroller(android.content.Context, android.view.animation.Interpolator, boolean); - method public void abortAnimation(); - method public boolean computeScrollOffset(); - method public void extendDuration(int); - method public void fling(int, int, int, int, int, int, int, int); - method public final void forceFinished(boolean); - method public float getCurrVelocity(); - method public final int getCurrX(); - method public final int getCurrY(); - method public final int getDuration(); - method public final int getFinalX(); - method public final int getFinalY(); - method public final int getStartX(); - method public final int getStartY(); - method public final boolean isFinished(); - method public void setFinalX(int); - method public void setFinalY(int); - method public final void setFriction(float); - method public void startScroll(int, int, int, int); - method public void startScroll(int, int, int, int, int); - method public int timePassed(); - } - - public class SearchView extends android.widget.LinearLayout implements android.view.CollapsibleActionView { - ctor public SearchView(android.content.Context); - ctor public SearchView(android.content.Context, android.util.AttributeSet); - ctor public SearchView(android.content.Context, android.util.AttributeSet, int); - ctor public SearchView(android.content.Context, android.util.AttributeSet, int, int); - method public int getImeOptions(); - method public int getInputType(); - method public int getMaxWidth(); - method public CharSequence getQuery(); - method @Nullable public CharSequence getQueryHint(); - method public android.widget.CursorAdapter getSuggestionsAdapter(); - method @Deprecated public boolean isIconfiedByDefault(); - method public boolean isIconified(); - method public boolean isIconifiedByDefault(); - method public boolean isQueryRefinementEnabled(); - method public boolean isSubmitButtonEnabled(); - method public void onActionViewCollapsed(); - method public void onActionViewExpanded(); - method public void setIconified(boolean); - method public void setIconifiedByDefault(boolean); - method public void setImeOptions(int); - method public void setInputType(int); - method public void setMaxWidth(int); - method public void setOnCloseListener(android.widget.SearchView.OnCloseListener); - method public void setOnQueryTextFocusChangeListener(android.view.View.OnFocusChangeListener); - method public void setOnQueryTextListener(android.widget.SearchView.OnQueryTextListener); - method public void setOnSearchClickListener(android.view.View.OnClickListener); - method public void setOnSuggestionListener(android.widget.SearchView.OnSuggestionListener); - method public void setQuery(CharSequence, boolean); - method public void setQueryHint(@Nullable CharSequence); - method public void setQueryRefinementEnabled(boolean); - method public void setSearchableInfo(android.app.SearchableInfo); - method public void setSubmitButtonEnabled(boolean); - method public void setSuggestionsAdapter(android.widget.CursorAdapter); - } - - public static interface SearchView.OnCloseListener { - method public boolean onClose(); - } - - public static interface SearchView.OnQueryTextListener { - method public boolean onQueryTextChange(String); - method public boolean onQueryTextSubmit(String); - } - - public static interface SearchView.OnSuggestionListener { - method public boolean onSuggestionClick(int); - method public boolean onSuggestionSelect(int); - } - - public interface SectionIndexer { - method public int getPositionForSection(int); - method public int getSectionForPosition(int); - method public Object[] getSections(); - } - - public class SeekBar extends android.widget.AbsSeekBar { - ctor public SeekBar(android.content.Context); - ctor public SeekBar(android.content.Context, android.util.AttributeSet); - ctor public SeekBar(android.content.Context, android.util.AttributeSet, int); - ctor public SeekBar(android.content.Context, android.util.AttributeSet, int, int); - method public void setOnSeekBarChangeListener(android.widget.SeekBar.OnSeekBarChangeListener); - } - - public static interface SeekBar.OnSeekBarChangeListener { - method public void onProgressChanged(android.widget.SeekBar, int, boolean); - method public void onStartTrackingTouch(android.widget.SeekBar); - method public void onStopTrackingTouch(android.widget.SeekBar); - } - - public class ShareActionProvider extends android.view.ActionProvider { - ctor public ShareActionProvider(android.content.Context); - method public android.view.View onCreateActionView(); - method public void setOnShareTargetSelectedListener(android.widget.ShareActionProvider.OnShareTargetSelectedListener); - method public void setShareHistoryFileName(String); - method public void setShareIntent(android.content.Intent); - field public static final String DEFAULT_SHARE_HISTORY_FILE_NAME = "share_history.xml"; - } - - public static interface ShareActionProvider.OnShareTargetSelectedListener { - method public boolean onShareTargetSelected(android.widget.ShareActionProvider, android.content.Intent); - } - - public class SimpleAdapter extends android.widget.BaseAdapter implements android.widget.Filterable android.widget.ThemedSpinnerAdapter { - ctor public SimpleAdapter(android.content.Context, java.util.List>, @LayoutRes int, String[], @IdRes int[]); - method public int getCount(); - method public android.content.res.Resources.Theme getDropDownViewTheme(); - method public android.widget.Filter getFilter(); - method public Object getItem(int); - method public long getItemId(int); - method public android.view.View getView(int, android.view.View, android.view.ViewGroup); - method public android.widget.SimpleAdapter.ViewBinder getViewBinder(); - method public void setDropDownViewResource(int); - method public void setDropDownViewTheme(android.content.res.Resources.Theme); - method public void setViewBinder(android.widget.SimpleAdapter.ViewBinder); - method public void setViewImage(android.widget.ImageView, int); - method public void setViewImage(android.widget.ImageView, String); - method public void setViewText(android.widget.TextView, String); - } - - public static interface SimpleAdapter.ViewBinder { - method public boolean setViewValue(android.view.View, Object, String); - } - - public class SimpleCursorAdapter extends android.widget.ResourceCursorAdapter { - ctor @Deprecated public SimpleCursorAdapter(android.content.Context, int, android.database.Cursor, String[], int[]); - ctor public SimpleCursorAdapter(android.content.Context, int, android.database.Cursor, String[], int[], int); - method public void bindView(android.view.View, android.content.Context, android.database.Cursor); - method public void changeCursorAndColumns(android.database.Cursor, String[], int[]); - method public android.widget.SimpleCursorAdapter.CursorToStringConverter getCursorToStringConverter(); - method public int getStringConversionColumn(); - method public android.widget.SimpleCursorAdapter.ViewBinder getViewBinder(); - method public void setCursorToStringConverter(android.widget.SimpleCursorAdapter.CursorToStringConverter); - method public void setStringConversionColumn(int); - method public void setViewBinder(android.widget.SimpleCursorAdapter.ViewBinder); - method public void setViewImage(android.widget.ImageView, String); - method public void setViewText(android.widget.TextView, String); - } - - public static interface SimpleCursorAdapter.CursorToStringConverter { - method public CharSequence convertToString(android.database.Cursor); - } - - public static interface SimpleCursorAdapter.ViewBinder { - method public boolean setViewValue(android.view.View, android.database.Cursor, int); - } - - public abstract class SimpleCursorTreeAdapter extends android.widget.ResourceCursorTreeAdapter { - ctor public SimpleCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int, String[], int[], int, int, String[], int[]); - ctor public SimpleCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int, String[], int[], int, String[], int[]); - ctor public SimpleCursorTreeAdapter(android.content.Context, android.database.Cursor, int, String[], int[], int, String[], int[]); - method protected void bindChildView(android.view.View, android.content.Context, android.database.Cursor, boolean); - method protected void bindGroupView(android.view.View, android.content.Context, android.database.Cursor, boolean); - method public android.widget.SimpleCursorTreeAdapter.ViewBinder getViewBinder(); - method public void setViewBinder(android.widget.SimpleCursorTreeAdapter.ViewBinder); - method protected void setViewImage(android.widget.ImageView, String); - method public void setViewText(android.widget.TextView, String); - } - - public static interface SimpleCursorTreeAdapter.ViewBinder { - method public boolean setViewValue(android.view.View, android.database.Cursor, int); - } - - public class SimpleExpandableListAdapter extends android.widget.BaseExpandableListAdapter { - ctor public SimpleExpandableListAdapter(android.content.Context, java.util.List>, int, String[], int[], java.util.List>>, int, String[], int[]); - ctor public SimpleExpandableListAdapter(android.content.Context, java.util.List>, int, int, String[], int[], java.util.List>>, int, String[], int[]); - ctor public SimpleExpandableListAdapter(android.content.Context, java.util.List>, int, int, String[], int[], java.util.List>>, int, int, String[], int[]); - method public Object getChild(int, int); - method public long getChildId(int, int); - method public android.view.View getChildView(int, int, boolean, android.view.View, android.view.ViewGroup); - method public int getChildrenCount(int); - method public Object getGroup(int); - method public int getGroupCount(); - method public long getGroupId(int); - method public android.view.View getGroupView(int, boolean, android.view.View, android.view.ViewGroup); - method public boolean hasStableIds(); - method public boolean isChildSelectable(int, int); - method public android.view.View newChildView(boolean, android.view.ViewGroup); - method public android.view.View newGroupView(boolean, android.view.ViewGroup); - } - - @Deprecated public class SlidingDrawer extends android.view.ViewGroup { - ctor @Deprecated public SlidingDrawer(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public SlidingDrawer(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public SlidingDrawer(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated public void animateClose(); - method @Deprecated public void animateOpen(); - method @Deprecated public void animateToggle(); - method @Deprecated public void close(); - method @Deprecated public android.view.View getContent(); - method @Deprecated public android.view.View getHandle(); - method @Deprecated public boolean isMoving(); - method @Deprecated public boolean isOpened(); - method @Deprecated public void lock(); - method @Deprecated protected void onLayout(boolean, int, int, int, int); - method @Deprecated public void open(); - method @Deprecated public void setOnDrawerCloseListener(android.widget.SlidingDrawer.OnDrawerCloseListener); - method @Deprecated public void setOnDrawerOpenListener(android.widget.SlidingDrawer.OnDrawerOpenListener); - method @Deprecated public void setOnDrawerScrollListener(android.widget.SlidingDrawer.OnDrawerScrollListener); - method @Deprecated public void toggle(); - method @Deprecated public void unlock(); - field @Deprecated public static final int ORIENTATION_HORIZONTAL = 0; // 0x0 - field @Deprecated public static final int ORIENTATION_VERTICAL = 1; // 0x1 - } - - @Deprecated public static interface SlidingDrawer.OnDrawerCloseListener { - method @Deprecated public void onDrawerClosed(); - } - - @Deprecated public static interface SlidingDrawer.OnDrawerOpenListener { - method @Deprecated public void onDrawerOpened(); - } - - @Deprecated public static interface SlidingDrawer.OnDrawerScrollListener { - method @Deprecated public void onScrollEnded(); - method @Deprecated public void onScrollStarted(); - } - - public final class Space extends android.view.View { - ctor public Space(android.content.Context, android.util.AttributeSet, int, int); - ctor public Space(android.content.Context, android.util.AttributeSet, int); - ctor public Space(android.content.Context, android.util.AttributeSet); - ctor public Space(android.content.Context); - } - - public class Spinner extends android.widget.AbsSpinner implements android.content.DialogInterface.OnClickListener { - ctor public Spinner(android.content.Context); - ctor public Spinner(android.content.Context, int); - ctor public Spinner(android.content.Context, android.util.AttributeSet); - ctor public Spinner(android.content.Context, android.util.AttributeSet, int); - ctor public Spinner(android.content.Context, android.util.AttributeSet, int, int); - ctor public Spinner(android.content.Context, android.util.AttributeSet, int, int, int); - ctor public Spinner(android.content.Context, android.util.AttributeSet, int, int, int, android.content.res.Resources.Theme); - method public int getDropDownHorizontalOffset(); - method public int getDropDownVerticalOffset(); - method public int getDropDownWidth(); - method public int getGravity(); - method public android.graphics.drawable.Drawable getPopupBackground(); - method public android.content.Context getPopupContext(); - method public CharSequence getPrompt(); - method public void onClick(android.content.DialogInterface, int); - method public void setDropDownHorizontalOffset(int); - method public void setDropDownVerticalOffset(int); - method public void setDropDownWidth(int); - method public void setGravity(int); - method public void setPopupBackgroundDrawable(android.graphics.drawable.Drawable); - method public void setPopupBackgroundResource(@DrawableRes int); - method public void setPrompt(CharSequence); - method public void setPromptId(int); - field public static final int MODE_DIALOG = 0; // 0x0 - field public static final int MODE_DROPDOWN = 1; // 0x1 - } - - public interface SpinnerAdapter extends android.widget.Adapter { - method public android.view.View getDropDownView(int, android.view.View, android.view.ViewGroup); - } - - @android.widget.RemoteViews.RemoteView public class StackView extends android.widget.AdapterViewAnimator { - ctor public StackView(android.content.Context); - ctor public StackView(android.content.Context, android.util.AttributeSet); - ctor public StackView(android.content.Context, android.util.AttributeSet, int); - ctor public StackView(android.content.Context, android.util.AttributeSet, int, int); - } - - @android.widget.RemoteViews.RemoteView public class Switch extends android.widget.CompoundButton { - ctor public Switch(android.content.Context); - ctor public Switch(android.content.Context, android.util.AttributeSet); - ctor public Switch(android.content.Context, android.util.AttributeSet, int); - ctor public Switch(android.content.Context, android.util.AttributeSet, int, int); - method public boolean getShowText(); - method public boolean getSplitTrack(); - method public int getSwitchMinWidth(); - method public int getSwitchPadding(); - method public CharSequence getTextOff(); - method public CharSequence getTextOn(); - method public android.graphics.drawable.Drawable getThumbDrawable(); - method public int getThumbTextPadding(); - method @Nullable public android.graphics.BlendMode getThumbTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getThumbTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getThumbTintMode(); - method public android.graphics.drawable.Drawable getTrackDrawable(); - method @Nullable public android.graphics.BlendMode getTrackTintBlendMode(); - method @Nullable public android.content.res.ColorStateList getTrackTintList(); - method @Nullable public android.graphics.PorterDuff.Mode getTrackTintMode(); - method public void onMeasure(int, int); - method public void setShowText(boolean); - method public void setSplitTrack(boolean); - method public void setSwitchMinWidth(int); - method public void setSwitchPadding(int); - method public void setSwitchTextAppearance(android.content.Context, @StyleRes int); - method public void setSwitchTypeface(android.graphics.Typeface, int); - method public void setSwitchTypeface(android.graphics.Typeface); - method public void setTextOff(CharSequence); - method public void setTextOn(CharSequence); - method public void setThumbDrawable(android.graphics.drawable.Drawable); - method public void setThumbIcon(@Nullable android.graphics.drawable.Icon); - method public void setThumbResource(@DrawableRes int); - method public void setThumbTextPadding(int); - method public void setThumbTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setThumbTintList(@Nullable android.content.res.ColorStateList); - method public void setThumbTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public void setTrackDrawable(android.graphics.drawable.Drawable); - method public void setTrackIcon(@Nullable android.graphics.drawable.Icon); - method public void setTrackResource(@DrawableRes int); - method public void setTrackTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setTrackTintList(@Nullable android.content.res.ColorStateList); - method public void setTrackTintMode(@Nullable android.graphics.PorterDuff.Mode); - } - - @Deprecated public class TabHost extends android.widget.FrameLayout implements android.view.ViewTreeObserver.OnTouchModeChangeListener { - ctor @Deprecated public TabHost(android.content.Context); - ctor @Deprecated public TabHost(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public TabHost(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public TabHost(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated public void addTab(android.widget.TabHost.TabSpec); - method @Deprecated public void clearAllTabs(); - method @Deprecated @Nullable public int getCurrentTab(); - method @Deprecated @Nullable public String getCurrentTabTag(); - method @Deprecated @Nullable public android.view.View getCurrentTabView(); - method @Deprecated public android.view.View getCurrentView(); - method @Deprecated public android.widget.FrameLayout getTabContentView(); - method @Deprecated public android.widget.TabWidget getTabWidget(); - method @Deprecated @NonNull public android.widget.TabHost.TabSpec newTabSpec(@NonNull String); - method @Deprecated public void onTouchModeChanged(boolean); - method @Deprecated public void setCurrentTab(int); - method @Deprecated public void setCurrentTabByTag(String); - method @Deprecated public void setOnTabChangedListener(android.widget.TabHost.OnTabChangeListener); - method @Deprecated public void setup(); - method @Deprecated public void setup(android.app.LocalActivityManager); - } - - @Deprecated public static interface TabHost.OnTabChangeListener { - method @Deprecated public void onTabChanged(String); - } - - @Deprecated public static interface TabHost.TabContentFactory { - method @Deprecated public android.view.View createTabContent(String); - } - - @Deprecated public class TabHost.TabSpec { - method @Deprecated @NonNull public String getTag(); - method @Deprecated public android.widget.TabHost.TabSpec setContent(int); - method @Deprecated public android.widget.TabHost.TabSpec setContent(android.widget.TabHost.TabContentFactory); - method @Deprecated public android.widget.TabHost.TabSpec setContent(android.content.Intent); - method @Deprecated public android.widget.TabHost.TabSpec setIndicator(CharSequence); - method @Deprecated public android.widget.TabHost.TabSpec setIndicator(CharSequence, android.graphics.drawable.Drawable); - method @Deprecated public android.widget.TabHost.TabSpec setIndicator(android.view.View); - } - - @Deprecated public class TabWidget extends android.widget.LinearLayout implements android.view.View.OnFocusChangeListener { - ctor @Deprecated public TabWidget(android.content.Context); - ctor @Deprecated public TabWidget(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public TabWidget(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public TabWidget(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated public void dispatchDraw(android.graphics.Canvas); - method @Deprecated public void focusCurrentTab(int); - method @Deprecated public android.view.View getChildTabViewAt(int); - method @Deprecated @Nullable public android.graphics.drawable.Drawable getLeftStripDrawable(); - method @Deprecated @Nullable public android.graphics.drawable.Drawable getRightStripDrawable(); - method @Deprecated public int getTabCount(); - method @Deprecated public boolean isStripEnabled(); - method @Deprecated public void onFocusChange(android.view.View, boolean); - method @Deprecated public void setCurrentTab(int); - method @Deprecated public void setDividerDrawable(@DrawableRes int); - method @Deprecated public void setLeftStripDrawable(@Nullable android.graphics.drawable.Drawable); - method @Deprecated public void setLeftStripDrawable(@DrawableRes int); - method @Deprecated public void setRightStripDrawable(@Nullable android.graphics.drawable.Drawable); - method @Deprecated public void setRightStripDrawable(@DrawableRes int); - method @Deprecated public void setStripEnabled(boolean); - } - - public class TableLayout extends android.widget.LinearLayout { - ctor public TableLayout(android.content.Context); - ctor public TableLayout(android.content.Context, android.util.AttributeSet); - method public android.widget.TableLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); - method public boolean isColumnCollapsed(int); - method public boolean isColumnShrinkable(int); - method public boolean isColumnStretchable(int); - method public boolean isShrinkAllColumns(); - method public boolean isStretchAllColumns(); - method public void setColumnCollapsed(int, boolean); - method public void setColumnShrinkable(int, boolean); - method public void setColumnStretchable(int, boolean); - method public void setShrinkAllColumns(boolean); - method public void setStretchAllColumns(boolean); - } - - public static class TableLayout.LayoutParams extends android.widget.LinearLayout.LayoutParams { - ctor public TableLayout.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor public TableLayout.LayoutParams(int, int); - ctor public TableLayout.LayoutParams(int, int, float); - ctor public TableLayout.LayoutParams(); - ctor public TableLayout.LayoutParams(android.view.ViewGroup.LayoutParams); - ctor public TableLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams); - } - - public class TableRow extends android.widget.LinearLayout { - ctor public TableRow(android.content.Context); - ctor public TableRow(android.content.Context, android.util.AttributeSet); - method public android.widget.TableRow.LayoutParams generateLayoutParams(android.util.AttributeSet); - method public android.view.View getVirtualChildAt(int); - method public int getVirtualChildCount(); - } - - public static class TableRow.LayoutParams extends android.widget.LinearLayout.LayoutParams { - ctor public TableRow.LayoutParams(android.content.Context, android.util.AttributeSet); - ctor public TableRow.LayoutParams(int, int); - ctor public TableRow.LayoutParams(int, int, float); - ctor public TableRow.LayoutParams(); - ctor public TableRow.LayoutParams(int); - ctor public TableRow.LayoutParams(android.view.ViewGroup.LayoutParams); - ctor public TableRow.LayoutParams(android.view.ViewGroup.MarginLayoutParams); - field public int column; - field public int span; - } - - @android.widget.RemoteViews.RemoteView public class TextClock extends android.widget.TextView { - ctor public TextClock(android.content.Context); - ctor public TextClock(android.content.Context, android.util.AttributeSet); - ctor public TextClock(android.content.Context, android.util.AttributeSet, int); - ctor public TextClock(android.content.Context, android.util.AttributeSet, int, int); - method public CharSequence getFormat12Hour(); - method public CharSequence getFormat24Hour(); - method public String getTimeZone(); - method public boolean is24HourModeEnabled(); - method public void refreshTime(); - method public void setFormat12Hour(CharSequence); - method public void setFormat24Hour(CharSequence); - method public void setTimeZone(String); - field @Deprecated public static final CharSequence DEFAULT_FORMAT_12_HOUR; - field @Deprecated public static final CharSequence DEFAULT_FORMAT_24_HOUR; - } - - public class TextSwitcher extends android.widget.ViewSwitcher { - ctor public TextSwitcher(android.content.Context); - ctor public TextSwitcher(android.content.Context, android.util.AttributeSet); - method public void setCurrentText(CharSequence); - method public void setText(CharSequence); - } - - @android.widget.RemoteViews.RemoteView public class TextView extends android.view.View implements android.view.ViewTreeObserver.OnPreDrawListener { - ctor public TextView(android.content.Context); - ctor public TextView(android.content.Context, @Nullable android.util.AttributeSet); - ctor public TextView(android.content.Context, @Nullable android.util.AttributeSet, int); - ctor public TextView(android.content.Context, @Nullable android.util.AttributeSet, int, int); - method public void addTextChangedListener(android.text.TextWatcher); - method public final void append(CharSequence); - method public void append(CharSequence, int, int); - method public void beginBatchEdit(); - method public boolean bringPointIntoView(int); - method public boolean bringPointIntoView(@IntRange(from=0) int, boolean); - method public void clearComposingText(); - method public void debug(int); - method public boolean didTouchFocusSelect(); - method public void endBatchEdit(); - method public boolean extractText(android.view.inputmethod.ExtractedTextRequest, android.view.inputmethod.ExtractedText); - method public final int getAutoLinkMask(); - method public int getAutoSizeMaxTextSize(); - method public int getAutoSizeMinTextSize(); - method public int getAutoSizeStepGranularity(); - method public int[] getAutoSizeTextAvailableSizes(); - method public int getAutoSizeTextType(); - method public int getBreakStrategy(); - method public int getCompoundDrawablePadding(); - method @Nullable public android.graphics.BlendMode getCompoundDrawableTintBlendMode(); - method public android.content.res.ColorStateList getCompoundDrawableTintList(); - method public android.graphics.PorterDuff.Mode getCompoundDrawableTintMode(); - method @NonNull public android.graphics.drawable.Drawable[] getCompoundDrawables(); - method @NonNull public android.graphics.drawable.Drawable[] getCompoundDrawablesRelative(); - method public int getCompoundPaddingBottom(); - method public int getCompoundPaddingEnd(); - method public int getCompoundPaddingLeft(); - method public int getCompoundPaddingRight(); - method public int getCompoundPaddingStart(); - method public int getCompoundPaddingTop(); - method @ColorInt public final int getCurrentHintTextColor(); - method @ColorInt public final int getCurrentTextColor(); - method public android.view.ActionMode.Callback getCustomInsertionActionModeCallback(); - method public android.view.ActionMode.Callback getCustomSelectionActionModeCallback(); - method protected boolean getDefaultEditable(); - method protected android.text.method.MovementMethod getDefaultMovementMethod(); - method public android.text.Editable getEditableText(); - method public android.text.TextUtils.TruncateAt getEllipsize(); - method public CharSequence getError(); - method public int getExtendedPaddingBottom(); - method public int getExtendedPaddingTop(); - method public android.text.InputFilter[] getFilters(); - method public int getFirstBaselineToTopHeight(); - method @ColorInt public int getFocusedSearchResultHighlightColor(); - method public int getFocusedSearchResultIndex(); - method @Nullable public String getFontFeatureSettings(); - method @Nullable public String getFontVariationSettings(); - method public boolean getFreezesText(); - method public int getGravity(); - method @ColorInt public int getHighlightColor(); - method @Nullable public android.text.Highlights getHighlights(); - method public CharSequence getHint(); - method public final android.content.res.ColorStateList getHintTextColors(); - method public int getHyphenationFrequency(); - method public int getImeActionId(); - method public CharSequence getImeActionLabel(); - method @Nullable public android.os.LocaleList getImeHintLocales(); - method public int getImeOptions(); - method public boolean getIncludeFontPadding(); - method public android.os.Bundle getInputExtras(boolean); - method public int getInputType(); - method public int getJustificationMode(); - method public final android.text.method.KeyListener getKeyListener(); - method public int getLastBaselineToBottomHeight(); - method public final android.text.Layout getLayout(); - method public float getLetterSpacing(); - method public int getLineBounds(int, android.graphics.Rect); - method public int getLineBreakStyle(); - method public int getLineBreakWordStyle(); - method public int getLineCount(); - method public int getLineHeight(); - method public float getLineSpacingExtra(); - method public float getLineSpacingMultiplier(); - method public final android.content.res.ColorStateList getLinkTextColors(); - method public final boolean getLinksClickable(); - method public int getMarqueeRepeatLimit(); - method public int getMaxEms(); - method public int getMaxHeight(); - method public int getMaxLines(); - method public int getMaxWidth(); - method public int getMinEms(); - method public int getMinHeight(); - method public int getMinLines(); - method public int getMinWidth(); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @Nullable public android.graphics.Paint.FontMetrics getMinimumFontMetrics(); - method public final android.text.method.MovementMethod getMovementMethod(); - method public int getOffsetForPosition(float, float); - method public android.text.TextPaint getPaint(); - method public int getPaintFlags(); - method public String getPrivateImeOptions(); - method @ColorInt public int getSearchResultHighlightColor(); - method @Nullable public int[] getSearchResultHighlights(); - method public int getSelectionEnd(); - method public int getSelectionStart(); - method @ColorInt public int getShadowColor(); - method public float getShadowDx(); - method public float getShadowDy(); - method public float getShadowRadius(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public boolean getShiftDrawingOffsetForStartOverhang(); - method public final boolean getShowSoftInputOnFocus(); - method public CharSequence getText(); - method @NonNull public android.view.textclassifier.TextClassifier getTextClassifier(); - method public final android.content.res.ColorStateList getTextColors(); - method @Nullable public android.graphics.drawable.Drawable getTextCursorDrawable(); - method @NonNull public android.text.TextDirectionHeuristic getTextDirectionHeuristic(); - method @NonNull public java.util.Locale getTextLocale(); - method @NonNull @Size(min=1) public android.os.LocaleList getTextLocales(); - method @NonNull public android.text.PrecomputedText.Params getTextMetricsParams(); - method public float getTextScaleX(); - method @Nullable public android.graphics.drawable.Drawable getTextSelectHandle(); - method @Nullable public android.graphics.drawable.Drawable getTextSelectHandleLeft(); - method @Nullable public android.graphics.drawable.Drawable getTextSelectHandleRight(); - method public float getTextSize(); - method public int getTextSizeUnit(); - method public int getTotalPaddingBottom(); - method public int getTotalPaddingEnd(); - method public int getTotalPaddingLeft(); - method public int getTotalPaddingRight(); - method public int getTotalPaddingStart(); - method public int getTotalPaddingTop(); - method public final android.text.method.TransformationMethod getTransformationMethod(); - method public android.graphics.Typeface getTypeface(); - method public android.text.style.URLSpan[] getUrls(); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public boolean getUseBoundsForWidth(); - method public boolean hasSelection(); - method public boolean isAllCaps(); - method public boolean isCursorVisible(); - method public boolean isElegantTextHeight(); - method public boolean isFallbackLineSpacing(); - method public final boolean isHorizontallyScrollable(); - method public boolean isInputMethodTarget(); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public boolean isLocalePreferredLineHeightForMinimumUsed(); - method public boolean isSingleLine(); - method public boolean isSuggestionsEnabled(); - method public boolean isTextSelectable(); - method public int length(); - method public boolean moveCursorToVisibleOffset(); - method public void onBeginBatchEdit(); - method public void onCommitCompletion(android.view.inputmethod.CompletionInfo); - method public void onCommitCorrection(android.view.inputmethod.CorrectionInfo); - method public void onEditorAction(int); - method public void onEndBatchEdit(); - method public boolean onPreDraw(); - method public boolean onPrivateIMECommand(String, android.os.Bundle); - method public void onRestoreInstanceState(android.os.Parcelable); - method public android.os.Parcelable onSaveInstanceState(); - method @CallSuper protected void onSelectionChanged(int, int); - method protected void onTextChanged(CharSequence, int, int, int); - method public boolean onTextContextMenuItem(int); - method public void removeTextChangedListener(android.text.TextWatcher); - method public void setAllCaps(boolean); - method public final void setAutoLinkMask(int); - method public void setAutoSizeTextTypeUniformWithConfiguration(int, int, int, int); - method public void setAutoSizeTextTypeUniformWithPresetSizes(@NonNull int[], int); - method public void setAutoSizeTextTypeWithDefaults(int); - method public void setBreakStrategy(int); - method public void setCompoundDrawablePadding(int); - method public void setCompoundDrawableTintBlendMode(@Nullable android.graphics.BlendMode); - method public void setCompoundDrawableTintList(@Nullable android.content.res.ColorStateList); - method public void setCompoundDrawableTintMode(@Nullable android.graphics.PorterDuff.Mode); - method public void setCompoundDrawables(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); - method public void setCompoundDrawablesRelative(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); - method public void setCompoundDrawablesRelativeWithIntrinsicBounds(@DrawableRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int); - method public void setCompoundDrawablesRelativeWithIntrinsicBounds(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); - method public void setCompoundDrawablesWithIntrinsicBounds(@DrawableRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int); - method public void setCompoundDrawablesWithIntrinsicBounds(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); - method public void setCursorVisible(boolean); - method public void setCustomInsertionActionModeCallback(android.view.ActionMode.Callback); - method public void setCustomSelectionActionModeCallback(android.view.ActionMode.Callback); - method public final void setEditableFactory(android.text.Editable.Factory); - method public void setElegantTextHeight(boolean); - method public void setEllipsize(android.text.TextUtils.TruncateAt); - method public void setEms(int); - method public void setError(CharSequence); - method public void setError(CharSequence, android.graphics.drawable.Drawable); - method public void setExtractedText(android.view.inputmethod.ExtractedText); - method public void setFallbackLineSpacing(boolean); - method public void setFilters(android.text.InputFilter[]); - method public void setFirstBaselineToTopHeight(@IntRange(from=0) @Px int); - method public void setFocusedSearchResultHighlightColor(@ColorInt int); - method public void setFocusedSearchResultIndex(int); - method public void setFontFeatureSettings(@Nullable String); - method public boolean setFontVariationSettings(@Nullable String); - method protected boolean setFrame(int, int, int, int); - method public void setFreezesText(boolean); - method public void setGravity(int); - method public void setHeight(int); - method public void setHighlightColor(@ColorInt int); - method public void setHighlights(@Nullable android.text.Highlights); - method public final void setHint(CharSequence); - method public final void setHint(@StringRes int); - method public final void setHintTextColor(@ColorInt int); - method public final void setHintTextColor(android.content.res.ColorStateList); - method public void setHorizontallyScrolling(boolean); - method public void setHyphenationFrequency(int); - method public void setImeActionLabel(CharSequence, int); - method public void setImeHintLocales(@Nullable android.os.LocaleList); - method public void setImeOptions(int); - method public void setIncludeFontPadding(boolean); - method public void setInputExtras(@XmlRes int) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; - method public void setInputType(int); - method public void setJustificationMode(int); - method public void setKeyListener(android.text.method.KeyListener); - method public void setLastBaselineToBottomHeight(@IntRange(from=0) @Px int); - method public void setLetterSpacing(float); - method public void setLineBreakStyle(int); - method public void setLineBreakWordStyle(int); - method public void setLineHeight(@IntRange(from=0) @Px int); - method public void setLineHeight(int, @FloatRange(from=0) float); - method public void setLineSpacing(float, float); - method public void setLines(int); - method public final void setLinkTextColor(@ColorInt int); - method public final void setLinkTextColor(android.content.res.ColorStateList); - method public final void setLinksClickable(boolean); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void setLocalePreferredLineHeightForMinimumUsed(boolean); - method public void setMarqueeRepeatLimit(int); - method public void setMaxEms(int); - method public void setMaxHeight(int); - method public void setMaxLines(int); - method public void setMaxWidth(int); - method public void setMinEms(int); - method public void setMinHeight(int); - method public void setMinLines(int); - method public void setMinWidth(int); - method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void setMinimumFontMetrics(@Nullable android.graphics.Paint.FontMetrics); - method public final void setMovementMethod(android.text.method.MovementMethod); - method public void setOnEditorActionListener(android.widget.TextView.OnEditorActionListener); - method public void setPaintFlags(int); - method public void setPrivateImeOptions(String); - method public void setRawInputType(int); - method public void setScroller(android.widget.Scroller); - method public void setSearchResultHighlightColor(@ColorInt int); - method public void setSearchResultHighlights(@Nullable int...); - method public void setSelectAllOnFocus(boolean); - method public void setShadowLayer(float, float, float, int); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public void setShiftDrawingOffsetForStartOverhang(boolean); - method public final void setShowSoftInputOnFocus(boolean); - method public void setSingleLine(); - method public void setSingleLine(boolean); - method public final void setSpannableFactory(android.text.Spannable.Factory); - method public final void setText(CharSequence); - method public void setText(CharSequence, android.widget.TextView.BufferType); - method public final void setText(@NonNull char[], int, int); - method public final void setText(@StringRes int); - method public final void setText(@StringRes int, android.widget.TextView.BufferType); - method public void setTextAppearance(@StyleRes int); - method @Deprecated public void setTextAppearance(android.content.Context, @StyleRes int); - method public void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier); - method public void setTextColor(@ColorInt int); - method public void setTextColor(android.content.res.ColorStateList); - method public void setTextCursorDrawable(@Nullable android.graphics.drawable.Drawable); - method public void setTextCursorDrawable(@DrawableRes int); - method public void setTextIsSelectable(boolean); - method public final void setTextKeepState(CharSequence); - method public final void setTextKeepState(CharSequence, android.widget.TextView.BufferType); - method public void setTextLocale(@NonNull java.util.Locale); - method public void setTextLocales(@NonNull @Size(min=1) android.os.LocaleList); - method public void setTextMetricsParams(@NonNull android.text.PrecomputedText.Params); - method public void setTextScaleX(float); - method public void setTextSelectHandle(@NonNull android.graphics.drawable.Drawable); - method public void setTextSelectHandle(@DrawableRes int); - method public void setTextSelectHandleLeft(@NonNull android.graphics.drawable.Drawable); - method public void setTextSelectHandleLeft(@DrawableRes int); - method public void setTextSelectHandleRight(@NonNull android.graphics.drawable.Drawable); - method public void setTextSelectHandleRight(@DrawableRes int); - method public void setTextSize(float); - method public void setTextSize(int, float); - method public final void setTransformationMethod(android.text.method.TransformationMethod); - method public void setTypeface(@Nullable android.graphics.Typeface, int); - method public void setTypeface(@Nullable android.graphics.Typeface); - method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public void setUseBoundsForWidth(boolean); - method public void setWidth(int); - field public static final int AUTO_SIZE_TEXT_TYPE_NONE = 0; // 0x0 - field public static final int AUTO_SIZE_TEXT_TYPE_UNIFORM = 1; // 0x1 - field public static final int FOCUSED_SEARCH_RESULT_INDEX_NONE = -1; // 0xffffffff - } - - public enum TextView.BufferType { - enum_constant public static final android.widget.TextView.BufferType EDITABLE; - enum_constant public static final android.widget.TextView.BufferType NORMAL; - enum_constant public static final android.widget.TextView.BufferType SPANNABLE; - } - - public static interface TextView.OnEditorActionListener { - method public boolean onEditorAction(android.widget.TextView, int, android.view.KeyEvent); - } - - public static class TextView.SavedState extends android.view.View.BaseSavedState { - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface ThemedSpinnerAdapter extends android.widget.SpinnerAdapter { - method @Nullable public android.content.res.Resources.Theme getDropDownViewTheme(); - method public void setDropDownViewTheme(@Nullable android.content.res.Resources.Theme); - } - - public class TimePicker extends android.widget.FrameLayout { - ctor public TimePicker(android.content.Context); - ctor public TimePicker(android.content.Context, android.util.AttributeSet); - ctor public TimePicker(android.content.Context, android.util.AttributeSet, int); - ctor public TimePicker(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated @NonNull public Integer getCurrentHour(); - method @Deprecated @NonNull public Integer getCurrentMinute(); - method public int getHour(); - method public int getMinute(); - method public boolean is24HourView(); - method @Deprecated public void setCurrentHour(@NonNull Integer); - method @Deprecated public void setCurrentMinute(@NonNull Integer); - method public void setHour(@IntRange(from=0, to=23) int); - method public void setIs24HourView(@NonNull Boolean); - method public void setMinute(@IntRange(from=0, to=59) int); - method public void setOnTimeChangedListener(android.widget.TimePicker.OnTimeChangedListener); - method public boolean validateInput(); - } - - public static interface TimePicker.OnTimeChangedListener { - method public void onTimeChanged(android.widget.TimePicker, int, int); - } - - public class Toast { - ctor public Toast(android.content.Context); - method public void addCallback(@NonNull android.widget.Toast.Callback); - method public void cancel(); - method public int getDuration(); - method public int getGravity(); - method public float getHorizontalMargin(); - method public float getVerticalMargin(); - method @Deprecated @Nullable public android.view.View getView(); - method public int getXOffset(); - method public int getYOffset(); - method public static android.widget.Toast makeText(android.content.Context, CharSequence, int); - method public static android.widget.Toast makeText(android.content.Context, @StringRes int, int) throws android.content.res.Resources.NotFoundException; - method public void removeCallback(@NonNull android.widget.Toast.Callback); - method public void setDuration(int); - method public void setGravity(int, int, int); - method public void setMargin(float, float); - method public void setText(@StringRes int); - method public void setText(CharSequence); - method @Deprecated public void setView(android.view.View); - method public void show(); - field public static final int LENGTH_LONG = 1; // 0x1 - field public static final int LENGTH_SHORT = 0; // 0x0 - } - - public abstract static class Toast.Callback { - ctor public Toast.Callback(); - method public void onToastHidden(); - method public void onToastShown(); - } - - public class ToggleButton extends android.widget.CompoundButton { - ctor public ToggleButton(android.content.Context, android.util.AttributeSet, int, int); - ctor public ToggleButton(android.content.Context, android.util.AttributeSet, int); - ctor public ToggleButton(android.content.Context, android.util.AttributeSet); - ctor public ToggleButton(android.content.Context); - method @FloatRange(from=0.0, to=1.0) public float getDisabledAlpha(); - method public CharSequence getTextOff(); - method public CharSequence getTextOn(); - method public void setBackgroundDrawable(android.graphics.drawable.Drawable); - method public void setTextOff(CharSequence); - method public void setTextOn(CharSequence); - } - - public class Toolbar extends android.view.ViewGroup { - ctor public Toolbar(android.content.Context); - ctor public Toolbar(android.content.Context, android.util.AttributeSet); - ctor public Toolbar(android.content.Context, android.util.AttributeSet, int); - ctor public Toolbar(android.content.Context, android.util.AttributeSet, int, int); - method public void collapseActionView(); - method public void dismissPopupMenus(); - method protected android.widget.Toolbar.LayoutParams generateDefaultLayoutParams(); - method public android.widget.Toolbar.LayoutParams generateLayoutParams(android.util.AttributeSet); - method protected android.widget.Toolbar.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); - method @Nullable public CharSequence getCollapseContentDescription(); - method @Nullable public android.graphics.drawable.Drawable getCollapseIcon(); - method public int getContentInsetEnd(); - method public int getContentInsetEndWithActions(); - method public int getContentInsetLeft(); - method public int getContentInsetRight(); - method public int getContentInsetStart(); - method public int getContentInsetStartWithNavigation(); - method public int getCurrentContentInsetEnd(); - method public int getCurrentContentInsetLeft(); - method public int getCurrentContentInsetRight(); - method public int getCurrentContentInsetStart(); - method public android.graphics.drawable.Drawable getLogo(); - method public CharSequence getLogoDescription(); - method public android.view.Menu getMenu(); - method @Nullable public CharSequence getNavigationContentDescription(); - method @Nullable public android.graphics.drawable.Drawable getNavigationIcon(); - method @Nullable public android.graphics.drawable.Drawable getOverflowIcon(); - method public int getPopupTheme(); - method public CharSequence getSubtitle(); - method public CharSequence getTitle(); - method public int getTitleMarginBottom(); - method public int getTitleMarginEnd(); - method public int getTitleMarginStart(); - method public int getTitleMarginTop(); - method public boolean hasExpandedActionView(); - method public boolean hideOverflowMenu(); - method public void inflateMenu(@MenuRes int); - method public boolean isOverflowMenuShowing(); - method protected void onLayout(boolean, int, int, int, int); - method public void setCollapseContentDescription(@StringRes int); - method public void setCollapseContentDescription(@Nullable CharSequence); - method public void setCollapseIcon(@DrawableRes int); - method public void setCollapseIcon(@Nullable android.graphics.drawable.Drawable); - method public void setContentInsetEndWithActions(int); - method public void setContentInsetStartWithNavigation(int); - method public void setContentInsetsAbsolute(int, int); - method public void setContentInsetsRelative(int, int); - method public void setLogo(@DrawableRes int); - method public void setLogo(android.graphics.drawable.Drawable); - method public void setLogoDescription(@StringRes int); - method public void setLogoDescription(CharSequence); - method public void setNavigationContentDescription(@StringRes int); - method public void setNavigationContentDescription(@Nullable CharSequence); - method public void setNavigationIcon(@DrawableRes int); - method public void setNavigationIcon(@Nullable android.graphics.drawable.Drawable); - method public void setNavigationOnClickListener(android.view.View.OnClickListener); - method public void setOnMenuItemClickListener(android.widget.Toolbar.OnMenuItemClickListener); - method public void setOverflowIcon(@Nullable android.graphics.drawable.Drawable); - method public void setPopupTheme(@StyleRes int); - method public void setSubtitle(@StringRes int); - method public void setSubtitle(CharSequence); - method public void setSubtitleTextAppearance(android.content.Context, @StyleRes int); - method public void setSubtitleTextColor(@ColorInt int); - method public void setTitle(@StringRes int); - method public void setTitle(CharSequence); - method public void setTitleMargin(int, int, int, int); - method public void setTitleMarginBottom(int); - method public void setTitleMarginEnd(int); - method public void setTitleMarginStart(int); - method public void setTitleMarginTop(int); - method public void setTitleTextAppearance(android.content.Context, @StyleRes int); - method public void setTitleTextColor(@ColorInt int); - method public boolean showOverflowMenu(); - } - - public static class Toolbar.LayoutParams extends android.app.ActionBar.LayoutParams { - ctor public Toolbar.LayoutParams(@NonNull android.content.Context, android.util.AttributeSet); - ctor public Toolbar.LayoutParams(int, int); - ctor public Toolbar.LayoutParams(int, int, int); - ctor public Toolbar.LayoutParams(int); - ctor public Toolbar.LayoutParams(android.widget.Toolbar.LayoutParams); - ctor public Toolbar.LayoutParams(android.app.ActionBar.LayoutParams); - ctor public Toolbar.LayoutParams(android.view.ViewGroup.MarginLayoutParams); - ctor public Toolbar.LayoutParams(android.view.ViewGroup.LayoutParams); - } - - public static interface Toolbar.OnMenuItemClickListener { - method public boolean onMenuItemClick(android.view.MenuItem); - } - - @Deprecated public class TwoLineListItem extends android.widget.RelativeLayout { - ctor @Deprecated public TwoLineListItem(android.content.Context); - ctor @Deprecated public TwoLineListItem(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public TwoLineListItem(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public TwoLineListItem(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated public android.widget.TextView getText1(); - method @Deprecated public android.widget.TextView getText2(); - } - - public class VideoView extends android.view.SurfaceView implements android.widget.MediaController.MediaPlayerControl { - ctor public VideoView(android.content.Context); - ctor public VideoView(android.content.Context, android.util.AttributeSet); - ctor public VideoView(android.content.Context, android.util.AttributeSet, int); - ctor public VideoView(android.content.Context, android.util.AttributeSet, int, int); - method public void addSubtitleSource(java.io.InputStream, android.media.MediaFormat); - method public boolean canPause(); - method public boolean canSeekBackward(); - method public boolean canSeekForward(); - method public int getAudioSessionId(); - method public int getBufferPercentage(); - method public int getCurrentPosition(); - method public int getDuration(); - method public boolean isPlaying(); - method public void pause(); - method public int resolveAdjustedSize(int, int); - method public void resume(); - method public void seekTo(int); - method public void setAudioAttributes(@NonNull android.media.AudioAttributes); - method public void setAudioFocusRequest(int); - method public void setMediaController(android.widget.MediaController); - method public void setOnCompletionListener(android.media.MediaPlayer.OnCompletionListener); - method public void setOnErrorListener(android.media.MediaPlayer.OnErrorListener); - method public void setOnInfoListener(android.media.MediaPlayer.OnInfoListener); - method public void setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener); - method public void setVideoPath(String); - method public void setVideoURI(android.net.Uri); - method public void setVideoURI(android.net.Uri, java.util.Map); - method public void start(); - method public void stopPlayback(); - method public void suspend(); - } - - public class ViewAnimator extends android.widget.FrameLayout { - ctor public ViewAnimator(android.content.Context); - ctor public ViewAnimator(android.content.Context, android.util.AttributeSet); - method public boolean getAnimateFirstView(); - method public android.view.View getCurrentView(); - method public int getDisplayedChild(); - method public android.view.animation.Animation getInAnimation(); - method public android.view.animation.Animation getOutAnimation(); - method public void setAnimateFirstView(boolean); - method public void setDisplayedChild(int); - method public void setInAnimation(android.view.animation.Animation); - method public void setInAnimation(android.content.Context, @AnimRes int); - method public void setOutAnimation(android.view.animation.Animation); - method public void setOutAnimation(android.content.Context, @AnimRes int); - method public void showNext(); - method public void showPrevious(); - } - - @android.widget.RemoteViews.RemoteView public class ViewFlipper extends android.widget.ViewAnimator { - ctor public ViewFlipper(android.content.Context); - ctor public ViewFlipper(android.content.Context, android.util.AttributeSet); - method @IntRange(from=0) public int getFlipInterval(); - method public boolean isAutoStart(); - method public boolean isFlipping(); - method public void setAutoStart(boolean); - method public void setFlipInterval(@IntRange(from=0) int); - method public void startFlipping(); - method public void stopFlipping(); - } - - public class ViewSwitcher extends android.widget.ViewAnimator { - ctor public ViewSwitcher(android.content.Context); - ctor public ViewSwitcher(android.content.Context, android.util.AttributeSet); - method public android.view.View getNextView(); - method public void reset(); - method public void setFactory(android.widget.ViewSwitcher.ViewFactory); - } - - public static interface ViewSwitcher.ViewFactory { - method public android.view.View makeView(); - } - - public interface WrapperListAdapter extends android.widget.ListAdapter { - method public android.widget.ListAdapter getWrappedAdapter(); - } - - @Deprecated public class ZoomButton extends android.widget.ImageButton implements android.view.View.OnLongClickListener { - ctor @Deprecated public ZoomButton(android.content.Context); - ctor @Deprecated public ZoomButton(android.content.Context, android.util.AttributeSet); - ctor @Deprecated public ZoomButton(android.content.Context, android.util.AttributeSet, int); - ctor @Deprecated public ZoomButton(android.content.Context, android.util.AttributeSet, int, int); - method @Deprecated public boolean onLongClick(android.view.View); - method @Deprecated public void setZoomSpeed(long); - } - - @Deprecated public class ZoomButtonsController implements android.view.View.OnTouchListener { - ctor @Deprecated public ZoomButtonsController(android.view.View); - method @Deprecated public android.view.ViewGroup getContainer(); - method @Deprecated public android.view.View getZoomControls(); - method @Deprecated public boolean isAutoDismissed(); - method @Deprecated public boolean isVisible(); - method @Deprecated public boolean onTouch(android.view.View, android.view.MotionEvent); - method @Deprecated public void setAutoDismissed(boolean); - method @Deprecated public void setFocusable(boolean); - method @Deprecated public void setOnZoomListener(android.widget.ZoomButtonsController.OnZoomListener); - method @Deprecated public void setVisible(boolean); - method @Deprecated public void setZoomInEnabled(boolean); - method @Deprecated public void setZoomOutEnabled(boolean); - method @Deprecated public void setZoomSpeed(long); - } - - @Deprecated public static interface ZoomButtonsController.OnZoomListener { - method @Deprecated public void onVisibilityChanged(boolean); - method @Deprecated public void onZoom(boolean); - } - - @Deprecated public class ZoomControls extends android.widget.LinearLayout { - ctor @Deprecated public ZoomControls(android.content.Context); - ctor @Deprecated public ZoomControls(android.content.Context, android.util.AttributeSet); - method @Deprecated public void hide(); - method @Deprecated public void setIsZoomInEnabled(boolean); - method @Deprecated public void setIsZoomOutEnabled(boolean); - method @Deprecated public void setOnZoomInClickListener(android.view.View.OnClickListener); - method @Deprecated public void setOnZoomOutClickListener(android.view.View.OnClickListener); - method @Deprecated public void setZoomSpeed(long); - method @Deprecated public void show(); - } - -} - -package android.widget.inline { - - public class InlineContentView extends android.view.ViewGroup { - method @Nullable public android.view.SurfaceControl getSurfaceControl(); - method public boolean isZOrderedOnTop(); - method public void onLayout(boolean, int, int, int, int); - method public void setSurfaceControlCallback(@Nullable android.widget.inline.InlineContentView.SurfaceControlCallback); - method public boolean setZOrderedOnTop(boolean); - } - - public static interface InlineContentView.SurfaceControlCallback { - method public void onCreated(@NonNull android.view.SurfaceControl); - method public void onDestroyed(@NonNull android.view.SurfaceControl); - } - - public final class InlinePresentationSpec implements android.os.Parcelable { - method public int describeContents(); - method @NonNull public android.util.Size getMaxSize(); - method @NonNull public android.util.Size getMinSize(); - method @NonNull public android.os.Bundle getStyle(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public static final class InlinePresentationSpec.Builder { - ctor public InlinePresentationSpec.Builder(@NonNull android.util.Size, @NonNull android.util.Size); - method @NonNull public android.widget.inline.InlinePresentationSpec build(); - method @NonNull public android.widget.inline.InlinePresentationSpec.Builder setStyle(@NonNull android.os.Bundle); - } - -} - -package android.window { - - public final class BackEvent { - ctor public BackEvent(float, float, float, int); - ctor @FlaggedApi("com.android.window.flags.predictive_back_timestamp_api") public BackEvent(float, float, float, int, long); - method @FlaggedApi("com.android.window.flags.predictive_back_timestamp_api") public long getFrameTimeMillis(); - method @FloatRange(from=0, to=1) public float getProgress(); - method public int getSwipeEdge(); - method public float getTouchX(); - method public float getTouchY(); - field public static final int EDGE_LEFT = 0; // 0x0 - field @FlaggedApi("com.android.window.flags.predictive_back_swipe_edge_none_api") public static final int EDGE_NONE = 2; // 0x2 - field public static final int EDGE_RIGHT = 1; // 0x1 - } - - @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public final class InputTransferToken implements android.os.Parcelable { - method public int describeContents(); - method public void writeToParcel(@NonNull android.os.Parcel, int); - field @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - - public interface OnBackAnimationCallback extends android.window.OnBackInvokedCallback { - method public default void onBackCancelled(); - method public default void onBackProgressed(@NonNull android.window.BackEvent); - method public default void onBackStarted(@NonNull android.window.BackEvent); - } - - public interface OnBackInvokedCallback { - method public void onBackInvoked(); - } - - public interface OnBackInvokedDispatcher { - method public void registerOnBackInvokedCallback(@IntRange(from=0) int, @NonNull android.window.OnBackInvokedCallback); - method public void unregisterOnBackInvokedCallback(@NonNull android.window.OnBackInvokedCallback); - field public static final int PRIORITY_DEFAULT = 0; // 0x0 - field public static final int PRIORITY_OVERLAY = 1000000; // 0xf4240 - field @FlaggedApi("com.android.window.flags.predictive_back_priority_system_navigation_observer") public static final int PRIORITY_SYSTEM_NAVIGATION_OBSERVER = -2; // 0xfffffffe - } - - public interface SplashScreen { - method public void clearOnExitAnimationListener(); - method public void setOnExitAnimationListener(@NonNull android.window.SplashScreen.OnExitAnimationListener); - method public void setSplashScreenTheme(@StyleRes int); - field public static final int SPLASH_SCREEN_STYLE_ICON = 1; // 0x1 - field public static final int SPLASH_SCREEN_STYLE_SOLID_COLOR = 0; // 0x0 - } - - public static interface SplashScreen.OnExitAnimationListener { - method @UiThread public void onSplashScreenExit(@NonNull android.window.SplashScreenView); - } - - public final class SplashScreenView extends android.widget.FrameLayout { - method @Nullable public java.time.Duration getIconAnimationDuration(); - method @Nullable public java.time.Instant getIconAnimationStart(); - method @Nullable public android.view.View getIconView(); - method @UiThread public void remove(); - } - - public final class SurfaceSyncGroup { - ctor public SurfaceSyncGroup(@NonNull String); - method @UiThread public boolean add(@Nullable android.view.AttachedSurfaceControl, @Nullable Runnable); - method public boolean add(@NonNull android.view.SurfaceControlViewHost.SurfacePackage, @Nullable Runnable); - method public void addTransaction(@NonNull android.view.SurfaceControl.Transaction); - method public void markSyncReady(); - } - - @FlaggedApi("com.android.window.flags.predictive_back_system_override_callback") public final class SystemOnBackInvokedCallbacks { - method @FlaggedApi("com.android.window.flags.predictive_back_system_override_callback") @NonNull public static android.window.OnBackInvokedCallback finishAndRemoveTaskCallback(@NonNull android.app.Activity); - method @FlaggedApi("com.android.window.flags.predictive_back_system_override_callback") @NonNull public static android.window.OnBackInvokedCallback moveTaskToBackCallback(@NonNull android.app.Activity); - } - - @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public final class TrustedPresentationThresholds implements android.os.Parcelable { - ctor @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public TrustedPresentationThresholds(@FloatRange(from=0.0f, fromInclusive=false, to=1.0f) float, @FloatRange(from=0.0f, fromInclusive=false, to=1.0f) float, @IntRange(from=1) int); - method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public int describeContents(); - method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") @FloatRange(from=0.0f, fromInclusive=false, to=1.0f) public float getMinAlpha(); - method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") @FloatRange(from=0.0f, fromInclusive=false, to=1.0f) public float getMinFractionRendered(); - method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") @IntRange(from=1) public int getStabilityRequirementMillis(); - method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public void writeToParcel(@NonNull android.os.Parcel, int); - field @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") @NonNull public static final android.os.Parcelable.Creator CREATOR; - } - -} - -package javax.microedition.khronos.egl { - - public interface EGL { - } - - public interface EGL10 extends javax.microedition.khronos.egl.EGL { - method public boolean eglChooseConfig(javax.microedition.khronos.egl.EGLDisplay, int[], javax.microedition.khronos.egl.EGLConfig[], int, int[]); - method public boolean eglCopyBuffers(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface, Object); - method public javax.microedition.khronos.egl.EGLContext eglCreateContext(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, javax.microedition.khronos.egl.EGLContext, int[]); - method public javax.microedition.khronos.egl.EGLSurface eglCreatePbufferSurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, int[]); - method @Deprecated public javax.microedition.khronos.egl.EGLSurface eglCreatePixmapSurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, Object, int[]); - method public javax.microedition.khronos.egl.EGLSurface eglCreateWindowSurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, Object, int[]); - method public boolean eglDestroyContext(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLContext); - method public boolean eglDestroySurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface); - method public boolean eglGetConfigAttrib(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, int, int[]); - method public boolean eglGetConfigs(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig[], int, int[]); - method public javax.microedition.khronos.egl.EGLContext eglGetCurrentContext(); - method public javax.microedition.khronos.egl.EGLDisplay eglGetCurrentDisplay(); - method public javax.microedition.khronos.egl.EGLSurface eglGetCurrentSurface(int); - method public javax.microedition.khronos.egl.EGLDisplay eglGetDisplay(Object); - method public int eglGetError(); - method public boolean eglInitialize(javax.microedition.khronos.egl.EGLDisplay, int[]); - method public boolean eglMakeCurrent(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface, javax.microedition.khronos.egl.EGLSurface, javax.microedition.khronos.egl.EGLContext); - method public boolean eglQueryContext(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLContext, int, int[]); - method public String eglQueryString(javax.microedition.khronos.egl.EGLDisplay, int); - method public boolean eglQuerySurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface, int, int[]); - method public boolean eglSwapBuffers(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface); - method public boolean eglTerminate(javax.microedition.khronos.egl.EGLDisplay); - method public boolean eglWaitGL(); - method public boolean eglWaitNative(int, Object); - field public static final int EGL_ALPHA_FORMAT = 12424; // 0x3088 - field public static final int EGL_ALPHA_MASK_SIZE = 12350; // 0x303e - field public static final int EGL_ALPHA_SIZE = 12321; // 0x3021 - field public static final int EGL_BAD_ACCESS = 12290; // 0x3002 - field public static final int EGL_BAD_ALLOC = 12291; // 0x3003 - field public static final int EGL_BAD_ATTRIBUTE = 12292; // 0x3004 - field public static final int EGL_BAD_CONFIG = 12293; // 0x3005 - field public static final int EGL_BAD_CONTEXT = 12294; // 0x3006 - field public static final int EGL_BAD_CURRENT_SURFACE = 12295; // 0x3007 - field public static final int EGL_BAD_DISPLAY = 12296; // 0x3008 - field public static final int EGL_BAD_MATCH = 12297; // 0x3009 - field public static final int EGL_BAD_NATIVE_PIXMAP = 12298; // 0x300a - field public static final int EGL_BAD_NATIVE_WINDOW = 12299; // 0x300b - field public static final int EGL_BAD_PARAMETER = 12300; // 0x300c - field public static final int EGL_BAD_SURFACE = 12301; // 0x300d - field public static final int EGL_BLUE_SIZE = 12322; // 0x3022 - field public static final int EGL_BUFFER_SIZE = 12320; // 0x3020 - field public static final int EGL_COLORSPACE = 12423; // 0x3087 - field public static final int EGL_COLOR_BUFFER_TYPE = 12351; // 0x303f - field public static final int EGL_CONFIG_CAVEAT = 12327; // 0x3027 - field public static final int EGL_CONFIG_ID = 12328; // 0x3028 - field public static final int EGL_CORE_NATIVE_ENGINE = 12379; // 0x305b - field public static final Object EGL_DEFAULT_DISPLAY; - field public static final int EGL_DEPTH_SIZE = 12325; // 0x3025 - field public static final int EGL_DONT_CARE = -1; // 0xffffffff - field public static final int EGL_DRAW = 12377; // 0x3059 - field public static final int EGL_EXTENSIONS = 12373; // 0x3055 - field public static final int EGL_GREEN_SIZE = 12323; // 0x3023 - field public static final int EGL_HEIGHT = 12374; // 0x3056 - field public static final int EGL_HORIZONTAL_RESOLUTION = 12432; // 0x3090 - field public static final int EGL_LARGEST_PBUFFER = 12376; // 0x3058 - field public static final int EGL_LEVEL = 12329; // 0x3029 - field public static final int EGL_LUMINANCE_BUFFER = 12431; // 0x308f - field public static final int EGL_LUMINANCE_SIZE = 12349; // 0x303d - field public static final int EGL_MAX_PBUFFER_HEIGHT = 12330; // 0x302a - field public static final int EGL_MAX_PBUFFER_PIXELS = 12331; // 0x302b - field public static final int EGL_MAX_PBUFFER_WIDTH = 12332; // 0x302c - field public static final int EGL_NATIVE_RENDERABLE = 12333; // 0x302d - field public static final int EGL_NATIVE_VISUAL_ID = 12334; // 0x302e - field public static final int EGL_NATIVE_VISUAL_TYPE = 12335; // 0x302f - field public static final int EGL_NONE = 12344; // 0x3038 - field public static final int EGL_NON_CONFORMANT_CONFIG = 12369; // 0x3051 - field public static final int EGL_NOT_INITIALIZED = 12289; // 0x3001 - field public static final javax.microedition.khronos.egl.EGLContext EGL_NO_CONTEXT; - field public static final javax.microedition.khronos.egl.EGLDisplay EGL_NO_DISPLAY; - field public static final javax.microedition.khronos.egl.EGLSurface EGL_NO_SURFACE; - field public static final int EGL_PBUFFER_BIT = 1; // 0x1 - field public static final int EGL_PIXEL_ASPECT_RATIO = 12434; // 0x3092 - field public static final int EGL_PIXMAP_BIT = 2; // 0x2 - field public static final int EGL_READ = 12378; // 0x305a - field public static final int EGL_RED_SIZE = 12324; // 0x3024 - field public static final int EGL_RENDERABLE_TYPE = 12352; // 0x3040 - field public static final int EGL_RENDER_BUFFER = 12422; // 0x3086 - field public static final int EGL_RGB_BUFFER = 12430; // 0x308e - field public static final int EGL_SAMPLES = 12337; // 0x3031 - field public static final int EGL_SAMPLE_BUFFERS = 12338; // 0x3032 - field public static final int EGL_SINGLE_BUFFER = 12421; // 0x3085 - field public static final int EGL_SLOW_CONFIG = 12368; // 0x3050 - field public static final int EGL_STENCIL_SIZE = 12326; // 0x3026 - field public static final int EGL_SUCCESS = 12288; // 0x3000 - field public static final int EGL_SURFACE_TYPE = 12339; // 0x3033 - field public static final int EGL_TRANSPARENT_BLUE_VALUE = 12341; // 0x3035 - field public static final int EGL_TRANSPARENT_GREEN_VALUE = 12342; // 0x3036 - field public static final int EGL_TRANSPARENT_RED_VALUE = 12343; // 0x3037 - field public static final int EGL_TRANSPARENT_RGB = 12370; // 0x3052 - field public static final int EGL_TRANSPARENT_TYPE = 12340; // 0x3034 - field public static final int EGL_VENDOR = 12371; // 0x3053 - field public static final int EGL_VERSION = 12372; // 0x3054 - field public static final int EGL_VERTICAL_RESOLUTION = 12433; // 0x3091 - field public static final int EGL_WIDTH = 12375; // 0x3057 - field public static final int EGL_WINDOW_BIT = 4; // 0x4 - } - - public interface EGL11 extends javax.microedition.khronos.egl.EGL10 { - field public static final int EGL_CONTEXT_LOST = 12302; // 0x300e - } - - public abstract class EGLConfig { - ctor public EGLConfig(); - } - - public abstract class EGLContext { - ctor public EGLContext(); - method public static javax.microedition.khronos.egl.EGL getEGL(); - method public abstract javax.microedition.khronos.opengles.GL getGL(); - } - - public abstract class EGLDisplay { - ctor public EGLDisplay(); - } - - public abstract class EGLSurface { - ctor public EGLSurface(); - } - -} - -package javax.microedition.khronos.opengles { - - public interface GL { - } - - public interface GL10 extends javax.microedition.khronos.opengles.GL { - method public void glActiveTexture(int); - method public void glAlphaFunc(int, float); - method public void glAlphaFuncx(int, int); - method public void glBindTexture(int, int); - method public void glBlendFunc(int, int); - method public void glClear(int); - method public void glClearColor(float, float, float, float); - method public void glClearColorx(int, int, int, int); - method public void glClearDepthf(float); - method public void glClearDepthx(int); - method public void glClearStencil(int); - method public void glClientActiveTexture(int); - method public void glColor4f(float, float, float, float); - method public void glColor4x(int, int, int, int); - method public void glColorMask(boolean, boolean, boolean, boolean); - method public void glColorPointer(int, int, int, java.nio.Buffer); - method public void glCompressedTexImage2D(int, int, int, int, int, int, int, java.nio.Buffer); - method public void glCompressedTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public void glCopyTexImage2D(int, int, int, int, int, int, int, int); - method public void glCopyTexSubImage2D(int, int, int, int, int, int, int, int); - method public void glCullFace(int); - method public void glDeleteTextures(int, int[], int); - method public void glDeleteTextures(int, java.nio.IntBuffer); - method public void glDepthFunc(int); - method public void glDepthMask(boolean); - method public void glDepthRangef(float, float); - method public void glDepthRangex(int, int); - method public void glDisable(int); - method public void glDisableClientState(int); - method public void glDrawArrays(int, int, int); - method public void glDrawElements(int, int, int, java.nio.Buffer); - method public void glEnable(int); - method public void glEnableClientState(int); - method public void glFinish(); - method public void glFlush(); - method public void glFogf(int, float); - method public void glFogfv(int, float[], int); - method public void glFogfv(int, java.nio.FloatBuffer); - method public void glFogx(int, int); - method public void glFogxv(int, int[], int); - method public void glFogxv(int, java.nio.IntBuffer); - method public void glFrontFace(int); - method public void glFrustumf(float, float, float, float, float, float); - method public void glFrustumx(int, int, int, int, int, int); - method public void glGenTextures(int, int[], int); - method public void glGenTextures(int, java.nio.IntBuffer); - method public int glGetError(); - method public void glGetIntegerv(int, int[], int); - method public void glGetIntegerv(int, java.nio.IntBuffer); - method public String glGetString(int); - method public void glHint(int, int); - method public void glLightModelf(int, float); - method public void glLightModelfv(int, float[], int); - method public void glLightModelfv(int, java.nio.FloatBuffer); - method public void glLightModelx(int, int); - method public void glLightModelxv(int, int[], int); - method public void glLightModelxv(int, java.nio.IntBuffer); - method public void glLightf(int, int, float); - method public void glLightfv(int, int, float[], int); - method public void glLightfv(int, int, java.nio.FloatBuffer); - method public void glLightx(int, int, int); - method public void glLightxv(int, int, int[], int); - method public void glLightxv(int, int, java.nio.IntBuffer); - method public void glLineWidth(float); - method public void glLineWidthx(int); - method public void glLoadIdentity(); - method public void glLoadMatrixf(float[], int); - method public void glLoadMatrixf(java.nio.FloatBuffer); - method public void glLoadMatrixx(int[], int); - method public void glLoadMatrixx(java.nio.IntBuffer); - method public void glLogicOp(int); - method public void glMaterialf(int, int, float); - method public void glMaterialfv(int, int, float[], int); - method public void glMaterialfv(int, int, java.nio.FloatBuffer); - method public void glMaterialx(int, int, int); - method public void glMaterialxv(int, int, int[], int); - method public void glMaterialxv(int, int, java.nio.IntBuffer); - method public void glMatrixMode(int); - method public void glMultMatrixf(float[], int); - method public void glMultMatrixf(java.nio.FloatBuffer); - method public void glMultMatrixx(int[], int); - method public void glMultMatrixx(java.nio.IntBuffer); - method public void glMultiTexCoord4f(int, float, float, float, float); - method public void glMultiTexCoord4x(int, int, int, int, int); - method public void glNormal3f(float, float, float); - method public void glNormal3x(int, int, int); - method public void glNormalPointer(int, int, java.nio.Buffer); - method public void glOrthof(float, float, float, float, float, float); - method public void glOrthox(int, int, int, int, int, int); - method public void glPixelStorei(int, int); - method public void glPointSize(float); - method public void glPointSizex(int); - method public void glPolygonOffset(float, float); - method public void glPolygonOffsetx(int, int); - method public void glPopMatrix(); - method public void glPushMatrix(); - method public void glReadPixels(int, int, int, int, int, int, java.nio.Buffer); - method public void glRotatef(float, float, float, float); - method public void glRotatex(int, int, int, int); - method public void glSampleCoverage(float, boolean); - method public void glSampleCoveragex(int, boolean); - method public void glScalef(float, float, float); - method public void glScalex(int, int, int); - method public void glScissor(int, int, int, int); - method public void glShadeModel(int); - method public void glStencilFunc(int, int, int); - method public void glStencilMask(int); - method public void glStencilOp(int, int, int); - method public void glTexCoordPointer(int, int, int, java.nio.Buffer); - method public void glTexEnvf(int, int, float); - method public void glTexEnvfv(int, int, float[], int); - method public void glTexEnvfv(int, int, java.nio.FloatBuffer); - method public void glTexEnvx(int, int, int); - method public void glTexEnvxv(int, int, int[], int); - method public void glTexEnvxv(int, int, java.nio.IntBuffer); - method public void glTexImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public void glTexParameterf(int, int, float); - method public void glTexParameterx(int, int, int); - method public void glTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); - method public void glTranslatef(float, float, float); - method public void glTranslatex(int, int, int); - method public void glVertexPointer(int, int, int, java.nio.Buffer); - method public void glViewport(int, int, int, int); - field public static final int GL_ADD = 260; // 0x104 - field public static final int GL_ALIASED_LINE_WIDTH_RANGE = 33902; // 0x846e - field public static final int GL_ALIASED_POINT_SIZE_RANGE = 33901; // 0x846d - field public static final int GL_ALPHA = 6406; // 0x1906 - field public static final int GL_ALPHA_BITS = 3413; // 0xd55 - field public static final int GL_ALPHA_TEST = 3008; // 0xbc0 - field public static final int GL_ALWAYS = 519; // 0x207 - field public static final int GL_AMBIENT = 4608; // 0x1200 - field public static final int GL_AMBIENT_AND_DIFFUSE = 5634; // 0x1602 - field public static final int GL_AND = 5377; // 0x1501 - field public static final int GL_AND_INVERTED = 5380; // 0x1504 - field public static final int GL_AND_REVERSE = 5378; // 0x1502 - field public static final int GL_BACK = 1029; // 0x405 - field public static final int GL_BLEND = 3042; // 0xbe2 - field public static final int GL_BLUE_BITS = 3412; // 0xd54 - field public static final int GL_BYTE = 5120; // 0x1400 - field public static final int GL_CCW = 2305; // 0x901 - field public static final int GL_CLAMP_TO_EDGE = 33071; // 0x812f - field public static final int GL_CLEAR = 5376; // 0x1500 - field public static final int GL_COLOR_ARRAY = 32886; // 0x8076 - field public static final int GL_COLOR_BUFFER_BIT = 16384; // 0x4000 - field public static final int GL_COLOR_LOGIC_OP = 3058; // 0xbf2 - field public static final int GL_COLOR_MATERIAL = 2903; // 0xb57 - field public static final int GL_COMPRESSED_TEXTURE_FORMATS = 34467; // 0x86a3 - field public static final int GL_CONSTANT_ATTENUATION = 4615; // 0x1207 - field public static final int GL_COPY = 5379; // 0x1503 - field public static final int GL_COPY_INVERTED = 5388; // 0x150c - field public static final int GL_CULL_FACE = 2884; // 0xb44 - field public static final int GL_CW = 2304; // 0x900 - field public static final int GL_DECAL = 8449; // 0x2101 - field public static final int GL_DECR = 7683; // 0x1e03 - field public static final int GL_DEPTH_BITS = 3414; // 0xd56 - field public static final int GL_DEPTH_BUFFER_BIT = 256; // 0x100 - field public static final int GL_DEPTH_TEST = 2929; // 0xb71 - field public static final int GL_DIFFUSE = 4609; // 0x1201 - field public static final int GL_DITHER = 3024; // 0xbd0 - field public static final int GL_DONT_CARE = 4352; // 0x1100 - field public static final int GL_DST_ALPHA = 772; // 0x304 - field public static final int GL_DST_COLOR = 774; // 0x306 - field public static final int GL_EMISSION = 5632; // 0x1600 - field public static final int GL_EQUAL = 514; // 0x202 - field public static final int GL_EQUIV = 5385; // 0x1509 - field public static final int GL_EXP = 2048; // 0x800 - field public static final int GL_EXP2 = 2049; // 0x801 - field public static final int GL_EXTENSIONS = 7939; // 0x1f03 - field public static final int GL_FALSE = 0; // 0x0 - field public static final int GL_FASTEST = 4353; // 0x1101 - field public static final int GL_FIXED = 5132; // 0x140c - field public static final int GL_FLAT = 7424; // 0x1d00 - field public static final int GL_FLOAT = 5126; // 0x1406 - field public static final int GL_FOG = 2912; // 0xb60 - field public static final int GL_FOG_COLOR = 2918; // 0xb66 - field public static final int GL_FOG_DENSITY = 2914; // 0xb62 - field public static final int GL_FOG_END = 2916; // 0xb64 - field public static final int GL_FOG_HINT = 3156; // 0xc54 - field public static final int GL_FOG_MODE = 2917; // 0xb65 - field public static final int GL_FOG_START = 2915; // 0xb63 - field public static final int GL_FRONT = 1028; // 0x404 - field public static final int GL_FRONT_AND_BACK = 1032; // 0x408 - field public static final int GL_GEQUAL = 518; // 0x206 - field public static final int GL_GREATER = 516; // 0x204 - field public static final int GL_GREEN_BITS = 3411; // 0xd53 - field public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES = 35739; // 0x8b9b - field public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE_OES = 35738; // 0x8b9a - field public static final int GL_INCR = 7682; // 0x1e02 - field public static final int GL_INVALID_ENUM = 1280; // 0x500 - field public static final int GL_INVALID_OPERATION = 1282; // 0x502 - field public static final int GL_INVALID_VALUE = 1281; // 0x501 - field public static final int GL_INVERT = 5386; // 0x150a - field public static final int GL_KEEP = 7680; // 0x1e00 - field public static final int GL_LEQUAL = 515; // 0x203 - field public static final int GL_LESS = 513; // 0x201 - field public static final int GL_LIGHT0 = 16384; // 0x4000 - field public static final int GL_LIGHT1 = 16385; // 0x4001 - field public static final int GL_LIGHT2 = 16386; // 0x4002 - field public static final int GL_LIGHT3 = 16387; // 0x4003 - field public static final int GL_LIGHT4 = 16388; // 0x4004 - field public static final int GL_LIGHT5 = 16389; // 0x4005 - field public static final int GL_LIGHT6 = 16390; // 0x4006 - field public static final int GL_LIGHT7 = 16391; // 0x4007 - field public static final int GL_LIGHTING = 2896; // 0xb50 - field public static final int GL_LIGHT_MODEL_AMBIENT = 2899; // 0xb53 - field public static final int GL_LIGHT_MODEL_TWO_SIDE = 2898; // 0xb52 - field public static final int GL_LINEAR = 9729; // 0x2601 - field public static final int GL_LINEAR_ATTENUATION = 4616; // 0x1208 - field public static final int GL_LINEAR_MIPMAP_LINEAR = 9987; // 0x2703 - field public static final int GL_LINEAR_MIPMAP_NEAREST = 9985; // 0x2701 - field public static final int GL_LINES = 1; // 0x1 - field public static final int GL_LINE_LOOP = 2; // 0x2 - field public static final int GL_LINE_SMOOTH = 2848; // 0xb20 - field public static final int GL_LINE_SMOOTH_HINT = 3154; // 0xc52 - field public static final int GL_LINE_STRIP = 3; // 0x3 - field public static final int GL_LUMINANCE = 6409; // 0x1909 - field public static final int GL_LUMINANCE_ALPHA = 6410; // 0x190a - field public static final int GL_MAX_ELEMENTS_INDICES = 33001; // 0x80e9 - field public static final int GL_MAX_ELEMENTS_VERTICES = 33000; // 0x80e8 - field public static final int GL_MAX_LIGHTS = 3377; // 0xd31 - field public static final int GL_MAX_MODELVIEW_STACK_DEPTH = 3382; // 0xd36 - field public static final int GL_MAX_PROJECTION_STACK_DEPTH = 3384; // 0xd38 - field public static final int GL_MAX_TEXTURE_SIZE = 3379; // 0xd33 - field public static final int GL_MAX_TEXTURE_STACK_DEPTH = 3385; // 0xd39 - field public static final int GL_MAX_TEXTURE_UNITS = 34018; // 0x84e2 - field public static final int GL_MAX_VIEWPORT_DIMS = 3386; // 0xd3a - field public static final int GL_MODELVIEW = 5888; // 0x1700 - field public static final int GL_MODULATE = 8448; // 0x2100 - field public static final int GL_MULTISAMPLE = 32925; // 0x809d - field public static final int GL_NAND = 5390; // 0x150e - field public static final int GL_NEAREST = 9728; // 0x2600 - field public static final int GL_NEAREST_MIPMAP_LINEAR = 9986; // 0x2702 - field public static final int GL_NEAREST_MIPMAP_NEAREST = 9984; // 0x2700 - field public static final int GL_NEVER = 512; // 0x200 - field public static final int GL_NICEST = 4354; // 0x1102 - field public static final int GL_NOOP = 5381; // 0x1505 - field public static final int GL_NOR = 5384; // 0x1508 - field public static final int GL_NORMALIZE = 2977; // 0xba1 - field public static final int GL_NORMAL_ARRAY = 32885; // 0x8075 - field public static final int GL_NOTEQUAL = 517; // 0x205 - field public static final int GL_NO_ERROR = 0; // 0x0 - field public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 34466; // 0x86a2 - field public static final int GL_ONE = 1; // 0x1 - field public static final int GL_ONE_MINUS_DST_ALPHA = 773; // 0x305 - field public static final int GL_ONE_MINUS_DST_COLOR = 775; // 0x307 - field public static final int GL_ONE_MINUS_SRC_ALPHA = 771; // 0x303 - field public static final int GL_ONE_MINUS_SRC_COLOR = 769; // 0x301 - field public static final int GL_OR = 5383; // 0x1507 - field public static final int GL_OR_INVERTED = 5389; // 0x150d - field public static final int GL_OR_REVERSE = 5387; // 0x150b - field public static final int GL_OUT_OF_MEMORY = 1285; // 0x505 - field public static final int GL_PACK_ALIGNMENT = 3333; // 0xd05 - field public static final int GL_PALETTE4_R5_G6_B5_OES = 35730; // 0x8b92 - field public static final int GL_PALETTE4_RGB5_A1_OES = 35732; // 0x8b94 - field public static final int GL_PALETTE4_RGB8_OES = 35728; // 0x8b90 - field public static final int GL_PALETTE4_RGBA4_OES = 35731; // 0x8b93 - field public static final int GL_PALETTE4_RGBA8_OES = 35729; // 0x8b91 - field public static final int GL_PALETTE8_R5_G6_B5_OES = 35735; // 0x8b97 - field public static final int GL_PALETTE8_RGB5_A1_OES = 35737; // 0x8b99 - field public static final int GL_PALETTE8_RGB8_OES = 35733; // 0x8b95 - field public static final int GL_PALETTE8_RGBA4_OES = 35736; // 0x8b98 - field public static final int GL_PALETTE8_RGBA8_OES = 35734; // 0x8b96 - field public static final int GL_PERSPECTIVE_CORRECTION_HINT = 3152; // 0xc50 - field public static final int GL_POINTS = 0; // 0x0 - field public static final int GL_POINT_FADE_THRESHOLD_SIZE = 33064; // 0x8128 - field public static final int GL_POINT_SIZE = 2833; // 0xb11 - field public static final int GL_POINT_SMOOTH = 2832; // 0xb10 - field public static final int GL_POINT_SMOOTH_HINT = 3153; // 0xc51 - field public static final int GL_POLYGON_OFFSET_FILL = 32823; // 0x8037 - field public static final int GL_POLYGON_SMOOTH_HINT = 3155; // 0xc53 - field public static final int GL_POSITION = 4611; // 0x1203 - field public static final int GL_PROJECTION = 5889; // 0x1701 - field public static final int GL_QUADRATIC_ATTENUATION = 4617; // 0x1209 - field public static final int GL_RED_BITS = 3410; // 0xd52 - field public static final int GL_RENDERER = 7937; // 0x1f01 - field public static final int GL_REPEAT = 10497; // 0x2901 - field public static final int GL_REPLACE = 7681; // 0x1e01 - field public static final int GL_RESCALE_NORMAL = 32826; // 0x803a - field public static final int GL_RGB = 6407; // 0x1907 - field public static final int GL_RGBA = 6408; // 0x1908 - field public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 32926; // 0x809e - field public static final int GL_SAMPLE_ALPHA_TO_ONE = 32927; // 0x809f - field public static final int GL_SAMPLE_COVERAGE = 32928; // 0x80a0 - field public static final int GL_SCISSOR_TEST = 3089; // 0xc11 - field public static final int GL_SET = 5391; // 0x150f - field public static final int GL_SHININESS = 5633; // 0x1601 - field public static final int GL_SHORT = 5122; // 0x1402 - field public static final int GL_SMOOTH = 7425; // 0x1d01 - field public static final int GL_SMOOTH_LINE_WIDTH_RANGE = 2850; // 0xb22 - field public static final int GL_SMOOTH_POINT_SIZE_RANGE = 2834; // 0xb12 - field public static final int GL_SPECULAR = 4610; // 0x1202 - field public static final int GL_SPOT_CUTOFF = 4614; // 0x1206 - field public static final int GL_SPOT_DIRECTION = 4612; // 0x1204 - field public static final int GL_SPOT_EXPONENT = 4613; // 0x1205 - field public static final int GL_SRC_ALPHA = 770; // 0x302 - field public static final int GL_SRC_ALPHA_SATURATE = 776; // 0x308 - field public static final int GL_SRC_COLOR = 768; // 0x300 - field public static final int GL_STACK_OVERFLOW = 1283; // 0x503 - field public static final int GL_STACK_UNDERFLOW = 1284; // 0x504 - field public static final int GL_STENCIL_BITS = 3415; // 0xd57 - field public static final int GL_STENCIL_BUFFER_BIT = 1024; // 0x400 - field public static final int GL_STENCIL_TEST = 2960; // 0xb90 - field public static final int GL_SUBPIXEL_BITS = 3408; // 0xd50 - field public static final int GL_TEXTURE = 5890; // 0x1702 - field public static final int GL_TEXTURE0 = 33984; // 0x84c0 - field public static final int GL_TEXTURE1 = 33985; // 0x84c1 - field public static final int GL_TEXTURE10 = 33994; // 0x84ca - field public static final int GL_TEXTURE11 = 33995; // 0x84cb - field public static final int GL_TEXTURE12 = 33996; // 0x84cc - field public static final int GL_TEXTURE13 = 33997; // 0x84cd - field public static final int GL_TEXTURE14 = 33998; // 0x84ce - field public static final int GL_TEXTURE15 = 33999; // 0x84cf - field public static final int GL_TEXTURE16 = 34000; // 0x84d0 - field public static final int GL_TEXTURE17 = 34001; // 0x84d1 - field public static final int GL_TEXTURE18 = 34002; // 0x84d2 - field public static final int GL_TEXTURE19 = 34003; // 0x84d3 - field public static final int GL_TEXTURE2 = 33986; // 0x84c2 - field public static final int GL_TEXTURE20 = 34004; // 0x84d4 - field public static final int GL_TEXTURE21 = 34005; // 0x84d5 - field public static final int GL_TEXTURE22 = 34006; // 0x84d6 - field public static final int GL_TEXTURE23 = 34007; // 0x84d7 - field public static final int GL_TEXTURE24 = 34008; // 0x84d8 - field public static final int GL_TEXTURE25 = 34009; // 0x84d9 - field public static final int GL_TEXTURE26 = 34010; // 0x84da - field public static final int GL_TEXTURE27 = 34011; // 0x84db - field public static final int GL_TEXTURE28 = 34012; // 0x84dc - field public static final int GL_TEXTURE29 = 34013; // 0x84dd - field public static final int GL_TEXTURE3 = 33987; // 0x84c3 - field public static final int GL_TEXTURE30 = 34014; // 0x84de - field public static final int GL_TEXTURE31 = 34015; // 0x84df - field public static final int GL_TEXTURE4 = 33988; // 0x84c4 - field public static final int GL_TEXTURE5 = 33989; // 0x84c5 - field public static final int GL_TEXTURE6 = 33990; // 0x84c6 - field public static final int GL_TEXTURE7 = 33991; // 0x84c7 - field public static final int GL_TEXTURE8 = 33992; // 0x84c8 - field public static final int GL_TEXTURE9 = 33993; // 0x84c9 - field public static final int GL_TEXTURE_2D = 3553; // 0xde1 - field public static final int GL_TEXTURE_COORD_ARRAY = 32888; // 0x8078 - field public static final int GL_TEXTURE_ENV = 8960; // 0x2300 - field public static final int GL_TEXTURE_ENV_COLOR = 8705; // 0x2201 - field public static final int GL_TEXTURE_ENV_MODE = 8704; // 0x2200 - field public static final int GL_TEXTURE_MAG_FILTER = 10240; // 0x2800 - field public static final int GL_TEXTURE_MIN_FILTER = 10241; // 0x2801 - field public static final int GL_TEXTURE_WRAP_S = 10242; // 0x2802 - field public static final int GL_TEXTURE_WRAP_T = 10243; // 0x2803 - field public static final int GL_TRIANGLES = 4; // 0x4 - field public static final int GL_TRIANGLE_FAN = 6; // 0x6 - field public static final int GL_TRIANGLE_STRIP = 5; // 0x5 - field public static final int GL_TRUE = 1; // 0x1 - field public static final int GL_UNPACK_ALIGNMENT = 3317; // 0xcf5 - field public static final int GL_UNSIGNED_BYTE = 5121; // 0x1401 - field public static final int GL_UNSIGNED_SHORT = 5123; // 0x1403 - field public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 32819; // 0x8033 - field public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 32820; // 0x8034 - field public static final int GL_UNSIGNED_SHORT_5_6_5 = 33635; // 0x8363 - field public static final int GL_VENDOR = 7936; // 0x1f00 - field public static final int GL_VERSION = 7938; // 0x1f02 - field public static final int GL_VERTEX_ARRAY = 32884; // 0x8074 - field public static final int GL_XOR = 5382; // 0x1506 - field public static final int GL_ZERO = 0; // 0x0 - } - - public interface GL10Ext extends javax.microedition.khronos.opengles.GL { - method public int glQueryMatrixxOES(int[], int, int[], int); - method public int glQueryMatrixxOES(java.nio.IntBuffer, java.nio.IntBuffer); - } - - public interface GL11 extends javax.microedition.khronos.opengles.GL10 { - method public void glBindBuffer(int, int); - method public void glBufferData(int, int, java.nio.Buffer, int); - method public void glBufferSubData(int, int, int, java.nio.Buffer); - method public void glClipPlanef(int, float[], int); - method public void glClipPlanef(int, java.nio.FloatBuffer); - method public void glClipPlanex(int, int[], int); - method public void glClipPlanex(int, java.nio.IntBuffer); - method public void glColor4ub(byte, byte, byte, byte); - method public void glColorPointer(int, int, int, int); - method public void glDeleteBuffers(int, int[], int); - method public void glDeleteBuffers(int, java.nio.IntBuffer); - method public void glDrawElements(int, int, int, int); - method public void glGenBuffers(int, int[], int); - method public void glGenBuffers(int, java.nio.IntBuffer); - method public void glGetBooleanv(int, boolean[], int); - method public void glGetBooleanv(int, java.nio.IntBuffer); - method public void glGetBufferParameteriv(int, int, int[], int); - method public void glGetBufferParameteriv(int, int, java.nio.IntBuffer); - method public void glGetClipPlanef(int, float[], int); - method public void glGetClipPlanef(int, java.nio.FloatBuffer); - method public void glGetClipPlanex(int, int[], int); - method public void glGetClipPlanex(int, java.nio.IntBuffer); - method public void glGetFixedv(int, int[], int); - method public void glGetFixedv(int, java.nio.IntBuffer); - method public void glGetFloatv(int, float[], int); - method public void glGetFloatv(int, java.nio.FloatBuffer); - method public void glGetLightfv(int, int, float[], int); - method public void glGetLightfv(int, int, java.nio.FloatBuffer); - method public void glGetLightxv(int, int, int[], int); - method public void glGetLightxv(int, int, java.nio.IntBuffer); - method public void glGetMaterialfv(int, int, float[], int); - method public void glGetMaterialfv(int, int, java.nio.FloatBuffer); - method public void glGetMaterialxv(int, int, int[], int); - method public void glGetMaterialxv(int, int, java.nio.IntBuffer); - method public void glGetPointerv(int, java.nio.Buffer[]); - method public void glGetTexEnviv(int, int, int[], int); - method public void glGetTexEnviv(int, int, java.nio.IntBuffer); - method public void glGetTexEnvxv(int, int, int[], int); - method public void glGetTexEnvxv(int, int, java.nio.IntBuffer); - method public void glGetTexParameterfv(int, int, float[], int); - method public void glGetTexParameterfv(int, int, java.nio.FloatBuffer); - method public void glGetTexParameteriv(int, int, int[], int); - method public void glGetTexParameteriv(int, int, java.nio.IntBuffer); - method public void glGetTexParameterxv(int, int, int[], int); - method public void glGetTexParameterxv(int, int, java.nio.IntBuffer); - method public boolean glIsBuffer(int); - method public boolean glIsEnabled(int); - method public boolean glIsTexture(int); - method public void glNormalPointer(int, int, int); - method public void glPointParameterf(int, float); - method public void glPointParameterfv(int, float[], int); - method public void glPointParameterfv(int, java.nio.FloatBuffer); - method public void glPointParameterx(int, int); - method public void glPointParameterxv(int, int[], int); - method public void glPointParameterxv(int, java.nio.IntBuffer); - method public void glPointSizePointerOES(int, int, java.nio.Buffer); - method public void glTexCoordPointer(int, int, int, int); - method public void glTexEnvi(int, int, int); - method public void glTexEnviv(int, int, int[], int); - method public void glTexEnviv(int, int, java.nio.IntBuffer); - method public void glTexParameterfv(int, int, float[], int); - method public void glTexParameterfv(int, int, java.nio.FloatBuffer); - method public void glTexParameteri(int, int, int); - method public void glTexParameteriv(int, int, int[], int); - method public void glTexParameteriv(int, int, java.nio.IntBuffer); - method public void glTexParameterxv(int, int, int[], int); - method public void glTexParameterxv(int, int, java.nio.IntBuffer); - method public void glVertexPointer(int, int, int, int); - field public static final int GL_ACTIVE_TEXTURE = 34016; // 0x84e0 - field public static final int GL_ADD_SIGNED = 34164; // 0x8574 - field public static final int GL_ALPHA_SCALE = 3356; // 0xd1c - field public static final int GL_ALPHA_TEST_FUNC = 3009; // 0xbc1 - field public static final int GL_ALPHA_TEST_REF = 3010; // 0xbc2 - field public static final int GL_ARRAY_BUFFER = 34962; // 0x8892 - field public static final int GL_ARRAY_BUFFER_BINDING = 34964; // 0x8894 - field public static final int GL_BLEND_DST = 3040; // 0xbe0 - field public static final int GL_BLEND_SRC = 3041; // 0xbe1 - field public static final int GL_BUFFER_ACCESS = 35003; // 0x88bb - field public static final int GL_BUFFER_SIZE = 34660; // 0x8764 - field public static final int GL_BUFFER_USAGE = 34661; // 0x8765 - field public static final int GL_CLIENT_ACTIVE_TEXTURE = 34017; // 0x84e1 - field public static final int GL_CLIP_PLANE0 = 12288; // 0x3000 - field public static final int GL_CLIP_PLANE1 = 12289; // 0x3001 - field public static final int GL_CLIP_PLANE2 = 12290; // 0x3002 - field public static final int GL_CLIP_PLANE3 = 12291; // 0x3003 - field public static final int GL_CLIP_PLANE4 = 12292; // 0x3004 - field public static final int GL_CLIP_PLANE5 = 12293; // 0x3005 - field public static final int GL_COLOR_ARRAY_BUFFER_BINDING = 34968; // 0x8898 - field public static final int GL_COLOR_ARRAY_POINTER = 32912; // 0x8090 - field public static final int GL_COLOR_ARRAY_SIZE = 32897; // 0x8081 - field public static final int GL_COLOR_ARRAY_STRIDE = 32899; // 0x8083 - field public static final int GL_COLOR_ARRAY_TYPE = 32898; // 0x8082 - field public static final int GL_COLOR_CLEAR_VALUE = 3106; // 0xc22 - field public static final int GL_COLOR_WRITEMASK = 3107; // 0xc23 - field public static final int GL_COMBINE = 34160; // 0x8570 - field public static final int GL_COMBINE_ALPHA = 34162; // 0x8572 - field public static final int GL_COMBINE_RGB = 34161; // 0x8571 - field public static final int GL_CONSTANT = 34166; // 0x8576 - field public static final int GL_COORD_REPLACE_OES = 34914; // 0x8862 - field public static final int GL_CULL_FACE_MODE = 2885; // 0xb45 - field public static final int GL_CURRENT_COLOR = 2816; // 0xb00 - field public static final int GL_CURRENT_NORMAL = 2818; // 0xb02 - field public static final int GL_CURRENT_TEXTURE_COORDS = 2819; // 0xb03 - field public static final int GL_DEPTH_CLEAR_VALUE = 2931; // 0xb73 - field public static final int GL_DEPTH_FUNC = 2932; // 0xb74 - field public static final int GL_DEPTH_RANGE = 2928; // 0xb70 - field public static final int GL_DEPTH_WRITEMASK = 2930; // 0xb72 - field public static final int GL_DOT3_RGB = 34478; // 0x86ae - field public static final int GL_DOT3_RGBA = 34479; // 0x86af - field public static final int GL_DYNAMIC_DRAW = 35048; // 0x88e8 - field public static final int GL_ELEMENT_ARRAY_BUFFER = 34963; // 0x8893 - field public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING = 34965; // 0x8895 - field public static final int GL_FRONT_FACE = 2886; // 0xb46 - field public static final int GL_GENERATE_MIPMAP = 33169; // 0x8191 - field public static final int GL_GENERATE_MIPMAP_HINT = 33170; // 0x8192 - field public static final int GL_INTERPOLATE = 34165; // 0x8575 - field public static final int GL_LINE_WIDTH = 2849; // 0xb21 - field public static final int GL_LOGIC_OP_MODE = 3056; // 0xbf0 - field public static final int GL_MATRIX_MODE = 2976; // 0xba0 - field public static final int GL_MAX_CLIP_PLANES = 3378; // 0xd32 - field public static final int GL_MODELVIEW_MATRIX = 2982; // 0xba6 - field public static final int GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES = 35213; // 0x898d - field public static final int GL_MODELVIEW_STACK_DEPTH = 2979; // 0xba3 - field public static final int GL_NORMAL_ARRAY_BUFFER_BINDING = 34967; // 0x8897 - field public static final int GL_NORMAL_ARRAY_POINTER = 32911; // 0x808f - field public static final int GL_NORMAL_ARRAY_STRIDE = 32895; // 0x807f - field public static final int GL_NORMAL_ARRAY_TYPE = 32894; // 0x807e - field public static final int GL_OPERAND0_ALPHA = 34200; // 0x8598 - field public static final int GL_OPERAND0_RGB = 34192; // 0x8590 - field public static final int GL_OPERAND1_ALPHA = 34201; // 0x8599 - field public static final int GL_OPERAND1_RGB = 34193; // 0x8591 - field public static final int GL_OPERAND2_ALPHA = 34202; // 0x859a - field public static final int GL_OPERAND2_RGB = 34194; // 0x8592 - field public static final int GL_POINT_DISTANCE_ATTENUATION = 33065; // 0x8129 - field public static final int GL_POINT_FADE_THRESHOLD_SIZE = 33064; // 0x8128 - field public static final int GL_POINT_SIZE = 2833; // 0xb11 - field public static final int GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES = 35743; // 0x8b9f - field public static final int GL_POINT_SIZE_ARRAY_OES = 35740; // 0x8b9c - field public static final int GL_POINT_SIZE_ARRAY_POINTER_OES = 35212; // 0x898c - field public static final int GL_POINT_SIZE_ARRAY_STRIDE_OES = 35211; // 0x898b - field public static final int GL_POINT_SIZE_ARRAY_TYPE_OES = 35210; // 0x898a - field public static final int GL_POINT_SIZE_MAX = 33063; // 0x8127 - field public static final int GL_POINT_SIZE_MIN = 33062; // 0x8126 - field public static final int GL_POINT_SPRITE_OES = 34913; // 0x8861 - field public static final int GL_POLYGON_OFFSET_FACTOR = 32824; // 0x8038 - field public static final int GL_POLYGON_OFFSET_UNITS = 10752; // 0x2a00 - field public static final int GL_PREVIOUS = 34168; // 0x8578 - field public static final int GL_PRIMARY_COLOR = 34167; // 0x8577 - field public static final int GL_PROJECTION_MATRIX = 2983; // 0xba7 - field public static final int GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES = 35214; // 0x898e - field public static final int GL_PROJECTION_STACK_DEPTH = 2980; // 0xba4 - field public static final int GL_RGB_SCALE = 34163; // 0x8573 - field public static final int GL_SAMPLES = 32937; // 0x80a9 - field public static final int GL_SAMPLE_BUFFERS = 32936; // 0x80a8 - field public static final int GL_SAMPLE_COVERAGE_INVERT = 32939; // 0x80ab - field public static final int GL_SAMPLE_COVERAGE_VALUE = 32938; // 0x80aa - field public static final int GL_SCISSOR_BOX = 3088; // 0xc10 - field public static final int GL_SHADE_MODEL = 2900; // 0xb54 - field public static final int GL_SRC0_ALPHA = 34184; // 0x8588 - field public static final int GL_SRC0_RGB = 34176; // 0x8580 - field public static final int GL_SRC1_ALPHA = 34185; // 0x8589 - field public static final int GL_SRC1_RGB = 34177; // 0x8581 - field public static final int GL_SRC2_ALPHA = 34186; // 0x858a - field public static final int GL_SRC2_RGB = 34178; // 0x8582 - field public static final int GL_STATIC_DRAW = 35044; // 0x88e4 - field public static final int GL_STENCIL_CLEAR_VALUE = 2961; // 0xb91 - field public static final int GL_STENCIL_FAIL = 2964; // 0xb94 - field public static final int GL_STENCIL_FUNC = 2962; // 0xb92 - field public static final int GL_STENCIL_PASS_DEPTH_FAIL = 2965; // 0xb95 - field public static final int GL_STENCIL_PASS_DEPTH_PASS = 2966; // 0xb96 - field public static final int GL_STENCIL_REF = 2967; // 0xb97 - field public static final int GL_STENCIL_VALUE_MASK = 2963; // 0xb93 - field public static final int GL_STENCIL_WRITEMASK = 2968; // 0xb98 - field public static final int GL_SUBTRACT = 34023; // 0x84e7 - field public static final int GL_TEXTURE_BINDING_2D = 32873; // 0x8069 - field public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 34970; // 0x889a - field public static final int GL_TEXTURE_COORD_ARRAY_POINTER = 32914; // 0x8092 - field public static final int GL_TEXTURE_COORD_ARRAY_SIZE = 32904; // 0x8088 - field public static final int GL_TEXTURE_COORD_ARRAY_STRIDE = 32906; // 0x808a - field public static final int GL_TEXTURE_COORD_ARRAY_TYPE = 32905; // 0x8089 - field public static final int GL_TEXTURE_MATRIX = 2984; // 0xba8 - field public static final int GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES = 35215; // 0x898f - field public static final int GL_TEXTURE_STACK_DEPTH = 2981; // 0xba5 - field public static final int GL_VERTEX_ARRAY_BUFFER_BINDING = 34966; // 0x8896 - field public static final int GL_VERTEX_ARRAY_POINTER = 32910; // 0x808e - field public static final int GL_VERTEX_ARRAY_SIZE = 32890; // 0x807a - field public static final int GL_VERTEX_ARRAY_STRIDE = 32892; // 0x807c - field public static final int GL_VERTEX_ARRAY_TYPE = 32891; // 0x807b - field public static final int GL_VIEWPORT = 2978; // 0xba2 - field public static final int GL_WRITE_ONLY = 35001; // 0x88b9 - } - - public interface GL11Ext extends javax.microedition.khronos.opengles.GL { - method public void glCurrentPaletteMatrixOES(int); - method public void glDrawTexfOES(float, float, float, float, float); - method public void glDrawTexfvOES(float[], int); - method public void glDrawTexfvOES(java.nio.FloatBuffer); - method public void glDrawTexiOES(int, int, int, int, int); - method public void glDrawTexivOES(int[], int); - method public void glDrawTexivOES(java.nio.IntBuffer); - method public void glDrawTexsOES(short, short, short, short, short); - method public void glDrawTexsvOES(short[], int); - method public void glDrawTexsvOES(java.nio.ShortBuffer); - method public void glDrawTexxOES(int, int, int, int, int); - method public void glDrawTexxvOES(int[], int); - method public void glDrawTexxvOES(java.nio.IntBuffer); - method public void glEnable(int); - method public void glEnableClientState(int); - method public void glLoadPaletteFromModelViewMatrixOES(); - method public void glMatrixIndexPointerOES(int, int, int, java.nio.Buffer); - method public void glMatrixIndexPointerOES(int, int, int, int); - method public void glTexParameterfv(int, int, float[], int); - method public void glWeightPointerOES(int, int, int, java.nio.Buffer); - method public void glWeightPointerOES(int, int, int, int); - field public static final int GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES = 35742; // 0x8b9e - field public static final int GL_MATRIX_INDEX_ARRAY_OES = 34884; // 0x8844 - field public static final int GL_MATRIX_INDEX_ARRAY_POINTER_OES = 34889; // 0x8849 - field public static final int GL_MATRIX_INDEX_ARRAY_SIZE_OES = 34886; // 0x8846 - field public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_OES = 34888; // 0x8848 - field public static final int GL_MATRIX_INDEX_ARRAY_TYPE_OES = 34887; // 0x8847 - field public static final int GL_MATRIX_PALETTE_OES = 34880; // 0x8840 - field public static final int GL_MAX_PALETTE_MATRICES_OES = 34882; // 0x8842 - field public static final int GL_MAX_VERTEX_UNITS_OES = 34468; // 0x86a4 - field public static final int GL_TEXTURE_CROP_RECT_OES = 35741; // 0x8b9d - field public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_OES = 34974; // 0x889e - field public static final int GL_WEIGHT_ARRAY_OES = 34477; // 0x86ad - field public static final int GL_WEIGHT_ARRAY_POINTER_OES = 34476; // 0x86ac - field public static final int GL_WEIGHT_ARRAY_SIZE_OES = 34475; // 0x86ab - field public static final int GL_WEIGHT_ARRAY_STRIDE_OES = 34474; // 0x86aa - field public static final int GL_WEIGHT_ARRAY_TYPE_OES = 34473; // 0x86a9 - } - - public interface GL11ExtensionPack extends javax.microedition.khronos.opengles.GL { - method public void glBindFramebufferOES(int, int); - method public void glBindRenderbufferOES(int, int); - method public void glBindTexture(int, int); - method public void glBlendEquation(int); - method public void glBlendEquationSeparate(int, int); - method public void glBlendFuncSeparate(int, int, int, int); - method public int glCheckFramebufferStatusOES(int); - method public void glCompressedTexImage2D(int, int, int, int, int, int, int, java.nio.Buffer); - method public void glCopyTexImage2D(int, int, int, int, int, int, int, int); - method public void glDeleteFramebuffersOES(int, int[], int); - method public void glDeleteFramebuffersOES(int, java.nio.IntBuffer); - method public void glDeleteRenderbuffersOES(int, int[], int); - method public void glDeleteRenderbuffersOES(int, java.nio.IntBuffer); - method public void glEnable(int); - method public void glFramebufferRenderbufferOES(int, int, int, int); - method public void glFramebufferTexture2DOES(int, int, int, int, int); - method public void glGenFramebuffersOES(int, int[], int); - method public void glGenFramebuffersOES(int, java.nio.IntBuffer); - method public void glGenRenderbuffersOES(int, int[], int); - method public void glGenRenderbuffersOES(int, java.nio.IntBuffer); - method public void glGenerateMipmapOES(int); - method public void glGetFramebufferAttachmentParameterivOES(int, int, int, int[], int); - method public void glGetFramebufferAttachmentParameterivOES(int, int, int, java.nio.IntBuffer); - method public void glGetIntegerv(int, int[], int); - method public void glGetIntegerv(int, java.nio.IntBuffer); - method public void glGetRenderbufferParameterivOES(int, int, int[], int); - method public void glGetRenderbufferParameterivOES(int, int, java.nio.IntBuffer); - method public void glGetTexGenfv(int, int, float[], int); - method public void glGetTexGenfv(int, int, java.nio.FloatBuffer); - method public void glGetTexGeniv(int, int, int[], int); - method public void glGetTexGeniv(int, int, java.nio.IntBuffer); - method public void glGetTexGenxv(int, int, int[], int); - method public void glGetTexGenxv(int, int, java.nio.IntBuffer); - method public boolean glIsFramebufferOES(int); - method public boolean glIsRenderbufferOES(int); - method public void glRenderbufferStorageOES(int, int, int, int); - method public void glStencilOp(int, int, int); - method public void glTexEnvf(int, int, float); - method public void glTexEnvfv(int, int, float[], int); - method public void glTexEnvfv(int, int, java.nio.FloatBuffer); - method public void glTexEnvx(int, int, int); - method public void glTexEnvxv(int, int, int[], int); - method public void glTexEnvxv(int, int, java.nio.IntBuffer); - method public void glTexGenf(int, int, float); - method public void glTexGenfv(int, int, float[], int); - method public void glTexGenfv(int, int, java.nio.FloatBuffer); - method public void glTexGeni(int, int, int); - method public void glTexGeniv(int, int, int[], int); - method public void glTexGeniv(int, int, java.nio.IntBuffer); - method public void glTexGenx(int, int, int); - method public void glTexGenxv(int, int, int[], int); - method public void glTexGenxv(int, int, java.nio.IntBuffer); - method public void glTexParameterf(int, int, float); - field public static final int GL_BLEND_DST_ALPHA = 32970; // 0x80ca - field public static final int GL_BLEND_DST_RGB = 32968; // 0x80c8 - field public static final int GL_BLEND_EQUATION = 32777; // 0x8009 - field public static final int GL_BLEND_EQUATION_ALPHA = 34877; // 0x883d - field public static final int GL_BLEND_EQUATION_RGB = 32777; // 0x8009 - field public static final int GL_BLEND_SRC_ALPHA = 32971; // 0x80cb - field public static final int GL_BLEND_SRC_RGB = 32969; // 0x80c9 - field public static final int GL_COLOR_ATTACHMENT0_OES = 36064; // 0x8ce0 - field public static final int GL_COLOR_ATTACHMENT10_OES = 36074; // 0x8cea - field public static final int GL_COLOR_ATTACHMENT11_OES = 36075; // 0x8ceb - field public static final int GL_COLOR_ATTACHMENT12_OES = 36076; // 0x8cec - field public static final int GL_COLOR_ATTACHMENT13_OES = 36077; // 0x8ced - field public static final int GL_COLOR_ATTACHMENT14_OES = 36078; // 0x8cee - field public static final int GL_COLOR_ATTACHMENT15_OES = 36079; // 0x8cef - field public static final int GL_COLOR_ATTACHMENT1_OES = 36065; // 0x8ce1 - field public static final int GL_COLOR_ATTACHMENT2_OES = 36066; // 0x8ce2 - field public static final int GL_COLOR_ATTACHMENT3_OES = 36067; // 0x8ce3 - field public static final int GL_COLOR_ATTACHMENT4_OES = 36068; // 0x8ce4 - field public static final int GL_COLOR_ATTACHMENT5_OES = 36069; // 0x8ce5 - field public static final int GL_COLOR_ATTACHMENT6_OES = 36070; // 0x8ce6 - field public static final int GL_COLOR_ATTACHMENT7_OES = 36071; // 0x8ce7 - field public static final int GL_COLOR_ATTACHMENT8_OES = 36072; // 0x8ce8 - field public static final int GL_COLOR_ATTACHMENT9_OES = 36073; // 0x8ce9 - field public static final int GL_DECR_WRAP = 34056; // 0x8508 - field public static final int GL_DEPTH_ATTACHMENT_OES = 36096; // 0x8d00 - field public static final int GL_DEPTH_COMPONENT = 6402; // 0x1902 - field public static final int GL_DEPTH_COMPONENT16 = 33189; // 0x81a5 - field public static final int GL_DEPTH_COMPONENT24 = 33190; // 0x81a6 - field public static final int GL_DEPTH_COMPONENT32 = 33191; // 0x81a7 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES = 36049; // 0x8cd1 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES = 36048; // 0x8cd0 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES = 36051; // 0x8cd3 - field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES = 36050; // 0x8cd2 - field public static final int GL_FRAMEBUFFER_BINDING_OES = 36006; // 0x8ca6 - field public static final int GL_FRAMEBUFFER_COMPLETE_OES = 36053; // 0x8cd5 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES = 36054; // 0x8cd6 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES = 36057; // 0x8cd9 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES = 36059; // 0x8cdb - field public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES = 36058; // 0x8cda - field public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES = 36055; // 0x8cd7 - field public static final int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES = 36060; // 0x8cdc - field public static final int GL_FRAMEBUFFER_OES = 36160; // 0x8d40 - field public static final int GL_FRAMEBUFFER_UNSUPPORTED_OES = 36061; // 0x8cdd - field public static final int GL_FUNC_ADD = 32774; // 0x8006 - field public static final int GL_FUNC_REVERSE_SUBTRACT = 32779; // 0x800b - field public static final int GL_FUNC_SUBTRACT = 32778; // 0x800a - field public static final int GL_INCR_WRAP = 34055; // 0x8507 - field public static final int GL_INVALID_FRAMEBUFFER_OPERATION_OES = 1286; // 0x506 - field public static final int GL_MAX_COLOR_ATTACHMENTS_OES = 36063; // 0x8cdf - field public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 34076; // 0x851c - field public static final int GL_MAX_RENDERBUFFER_SIZE_OES = 34024; // 0x84e8 - field public static final int GL_MIRRORED_REPEAT = 33648; // 0x8370 - field public static final int GL_NORMAL_MAP = 34065; // 0x8511 - field public static final int GL_REFLECTION_MAP = 34066; // 0x8512 - field public static final int GL_RENDERBUFFER_ALPHA_SIZE_OES = 36179; // 0x8d53 - field public static final int GL_RENDERBUFFER_BINDING_OES = 36007; // 0x8ca7 - field public static final int GL_RENDERBUFFER_BLUE_SIZE_OES = 36178; // 0x8d52 - field public static final int GL_RENDERBUFFER_DEPTH_SIZE_OES = 36180; // 0x8d54 - field public static final int GL_RENDERBUFFER_GREEN_SIZE_OES = 36177; // 0x8d51 - field public static final int GL_RENDERBUFFER_HEIGHT_OES = 36163; // 0x8d43 - field public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_OES = 36164; // 0x8d44 - field public static final int GL_RENDERBUFFER_OES = 36161; // 0x8d41 - field public static final int GL_RENDERBUFFER_RED_SIZE_OES = 36176; // 0x8d50 - field public static final int GL_RENDERBUFFER_STENCIL_SIZE_OES = 36181; // 0x8d55 - field public static final int GL_RENDERBUFFER_WIDTH_OES = 36162; // 0x8d42 - field public static final int GL_RGB565_OES = 36194; // 0x8d62 - field public static final int GL_RGB5_A1 = 32855; // 0x8057 - field public static final int GL_RGB8 = 32849; // 0x8051 - field public static final int GL_RGBA4 = 32854; // 0x8056 - field public static final int GL_RGBA8 = 32856; // 0x8058 - field public static final int GL_STENCIL_ATTACHMENT_OES = 36128; // 0x8d20 - field public static final int GL_STENCIL_INDEX = 6401; // 0x1901 - field public static final int GL_STENCIL_INDEX1_OES = 36166; // 0x8d46 - field public static final int GL_STENCIL_INDEX4_OES = 36167; // 0x8d47 - field public static final int GL_STENCIL_INDEX8_OES = 36168; // 0x8d48 - field public static final int GL_STR = -1; // 0xffffffff - field public static final int GL_TEXTURE_BINDING_CUBE_MAP = 34068; // 0x8514 - field public static final int GL_TEXTURE_CUBE_MAP = 34067; // 0x8513 - field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 34070; // 0x8516 - field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072; // 0x8518 - field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074; // 0x851a - field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 34069; // 0x8515 - field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 34071; // 0x8517 - field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 34073; // 0x8519 - field public static final int GL_TEXTURE_GEN_MODE = 9472; // 0x2500 - field public static final int GL_TEXTURE_GEN_STR = 36192; // 0x8d60 - } - -} - -package org.apache.http.conn { - - @Deprecated public class ConnectTimeoutException extends java.io.InterruptedIOException { - ctor @Deprecated public ConnectTimeoutException(); - ctor @Deprecated public ConnectTimeoutException(String); - } - -} - -package org.apache.http.conn.scheme { - - @Deprecated public interface HostNameResolver { - method @Deprecated public java.net.InetAddress resolve(String) throws java.io.IOException; - } - - @Deprecated public interface LayeredSocketFactory extends org.apache.http.conn.scheme.SocketFactory { - method @Deprecated public java.net.Socket createSocket(java.net.Socket, String, int, boolean) throws java.io.IOException, java.net.UnknownHostException; - } - - @Deprecated public interface SocketFactory { - method @Deprecated public java.net.Socket connectSocket(java.net.Socket, String, int, java.net.InetAddress, int, org.apache.http.params.HttpParams) throws org.apache.http.conn.ConnectTimeoutException, java.io.IOException, java.net.UnknownHostException; - method @Deprecated public java.net.Socket createSocket() throws java.io.IOException; - method @Deprecated public boolean isSecure(java.net.Socket) throws java.lang.IllegalArgumentException; - } - -} - -package org.apache.http.conn.ssl { - - @Deprecated public abstract class AbstractVerifier implements org.apache.http.conn.ssl.X509HostnameVerifier { - ctor @Deprecated public AbstractVerifier(); - method @Deprecated public static boolean acceptableCountryWildcard(String); - method @Deprecated public static int countDots(String); - method @Deprecated public static String[] getCNs(java.security.cert.X509Certificate); - method @Deprecated public static String[] getDNSSubjectAlts(java.security.cert.X509Certificate); - method @Deprecated public final void verify(String, javax.net.ssl.SSLSocket) throws java.io.IOException; - method @Deprecated public final boolean verify(String, javax.net.ssl.SSLSession); - method @Deprecated public final void verify(String, java.security.cert.X509Certificate) throws javax.net.ssl.SSLException; - method @Deprecated public final void verify(String, String[], String[], boolean) throws javax.net.ssl.SSLException; - } - - @Deprecated public class AllowAllHostnameVerifier extends org.apache.http.conn.ssl.AbstractVerifier { - ctor @Deprecated public AllowAllHostnameVerifier(); - method @Deprecated public final String toString(); - method @Deprecated public final void verify(String, String[], String[]); - } - - @Deprecated public class BrowserCompatHostnameVerifier extends org.apache.http.conn.ssl.AbstractVerifier { - ctor @Deprecated public BrowserCompatHostnameVerifier(); - method @Deprecated public final String toString(); - method @Deprecated public final void verify(String, String[], String[]) throws javax.net.ssl.SSLException; - } - - @Deprecated public class SSLSocketFactory implements org.apache.http.conn.scheme.LayeredSocketFactory { - ctor @Deprecated public SSLSocketFactory(String, java.security.KeyStore, String, java.security.KeyStore, java.security.SecureRandom, org.apache.http.conn.scheme.HostNameResolver) throws java.security.KeyManagementException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException; - ctor @Deprecated public SSLSocketFactory(java.security.KeyStore, String, java.security.KeyStore) throws java.security.KeyManagementException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException; - ctor @Deprecated public SSLSocketFactory(java.security.KeyStore, String) throws java.security.KeyManagementException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException; - ctor @Deprecated public SSLSocketFactory(java.security.KeyStore) throws java.security.KeyManagementException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException; - method @Deprecated public java.net.Socket connectSocket(java.net.Socket, String, int, java.net.InetAddress, int, org.apache.http.params.HttpParams) throws java.io.IOException; - method @Deprecated public java.net.Socket createSocket() throws java.io.IOException; - method @Deprecated public java.net.Socket createSocket(java.net.Socket, String, int, boolean) throws java.io.IOException, java.net.UnknownHostException; - method @Deprecated public org.apache.http.conn.ssl.X509HostnameVerifier getHostnameVerifier(); - method @Deprecated public static org.apache.http.conn.ssl.SSLSocketFactory getSocketFactory(); - method @Deprecated public boolean isSecure(java.net.Socket) throws java.lang.IllegalArgumentException; - method @Deprecated public void setHostnameVerifier(org.apache.http.conn.ssl.X509HostnameVerifier); - field @Deprecated public static final org.apache.http.conn.ssl.X509HostnameVerifier ALLOW_ALL_HOSTNAME_VERIFIER; - field @Deprecated public static final org.apache.http.conn.ssl.X509HostnameVerifier BROWSER_COMPATIBLE_HOSTNAME_VERIFIER; - field @Deprecated public static final String SSL = "SSL"; - field @Deprecated public static final String SSLV2 = "SSLv2"; - field @Deprecated public static final org.apache.http.conn.ssl.X509HostnameVerifier STRICT_HOSTNAME_VERIFIER; - field @Deprecated public static final String TLS = "TLS"; - } - - @Deprecated public class StrictHostnameVerifier extends org.apache.http.conn.ssl.AbstractVerifier { - ctor @Deprecated public StrictHostnameVerifier(); - method @Deprecated public final String toString(); - method @Deprecated public final void verify(String, String[], String[]) throws javax.net.ssl.SSLException; - } - - @Deprecated public interface X509HostnameVerifier extends javax.net.ssl.HostnameVerifier { - method @Deprecated public void verify(String, javax.net.ssl.SSLSocket) throws java.io.IOException; - method @Deprecated public void verify(String, java.security.cert.X509Certificate) throws javax.net.ssl.SSLException; - method @Deprecated public void verify(String, String[], String[]) throws javax.net.ssl.SSLException; - } - -} - -package org.apache.http.params { - - @Deprecated public interface CoreConnectionPNames { - field @Deprecated public static final String CONNECTION_TIMEOUT = "http.connection.timeout"; - field @Deprecated public static final String MAX_HEADER_COUNT = "http.connection.max-header-count"; - field @Deprecated public static final String MAX_LINE_LENGTH = "http.connection.max-line-length"; - field @Deprecated public static final String SOCKET_BUFFER_SIZE = "http.socket.buffer-size"; - field @Deprecated public static final String SO_LINGER = "http.socket.linger"; - field @Deprecated public static final String SO_TIMEOUT = "http.socket.timeout"; - field @Deprecated public static final String STALE_CONNECTION_CHECK = "http.connection.stalecheck"; - field @Deprecated public static final String TCP_NODELAY = "http.tcp.nodelay"; - } - - @Deprecated public final class HttpConnectionParams implements org.apache.http.params.CoreConnectionPNames { - method @Deprecated public static int getConnectionTimeout(org.apache.http.params.HttpParams); - method @Deprecated public static int getLinger(org.apache.http.params.HttpParams); - method @Deprecated public static int getSoTimeout(org.apache.http.params.HttpParams); - method @Deprecated public static int getSocketBufferSize(org.apache.http.params.HttpParams); - method @Deprecated public static boolean getTcpNoDelay(org.apache.http.params.HttpParams); - method @Deprecated public static boolean isStaleCheckingEnabled(org.apache.http.params.HttpParams); - method @Deprecated public static void setConnectionTimeout(org.apache.http.params.HttpParams, int); - method @Deprecated public static void setLinger(org.apache.http.params.HttpParams, int); - method @Deprecated public static void setSoTimeout(org.apache.http.params.HttpParams, int); - method @Deprecated public static void setSocketBufferSize(org.apache.http.params.HttpParams, int); - method @Deprecated public static void setStaleCheckingEnabled(org.apache.http.params.HttpParams, boolean); - method @Deprecated public static void setTcpNoDelay(org.apache.http.params.HttpParams, boolean); - } - - @Deprecated public interface HttpParams { - method @Deprecated public org.apache.http.params.HttpParams copy(); - method @Deprecated public boolean getBooleanParameter(String, boolean); - method @Deprecated public double getDoubleParameter(String, double); - method @Deprecated public int getIntParameter(String, int); - method @Deprecated public long getLongParameter(String, long); - method @Deprecated public Object getParameter(String); - method @Deprecated public boolean isParameterFalse(String); - method @Deprecated public boolean isParameterTrue(String); - method @Deprecated public boolean removeParameter(String); - method @Deprecated public org.apache.http.params.HttpParams setBooleanParameter(String, boolean); - method @Deprecated public org.apache.http.params.HttpParams setDoubleParameter(String, double); - method @Deprecated public org.apache.http.params.HttpParams setIntParameter(String, int); - method @Deprecated public org.apache.http.params.HttpParams setLongParameter(String, long); - method @Deprecated public org.apache.http.params.HttpParams setParameter(String, Object); - } - -} - +// Signature format: 2.0 +package android { + + public final class Manifest { + ctor public Manifest(); + } + + public static final class Manifest.permission { + ctor public Manifest.permission(); + field public static final String ACCEPT_HANDOVER = "android.permission.ACCEPT_HANDOVER"; + field public static final String ACCESS_BACKGROUND_LOCATION = "android.permission.ACCESS_BACKGROUND_LOCATION"; + field public static final String ACCESS_BLOBS_ACROSS_USERS = "android.permission.ACCESS_BLOBS_ACROSS_USERS"; + field public static final String ACCESS_CHECKIN_PROPERTIES = "android.permission.ACCESS_CHECKIN_PROPERTIES"; + field public static final String ACCESS_COARSE_LOCATION = "android.permission.ACCESS_COARSE_LOCATION"; + field public static final String ACCESS_FINE_LOCATION = "android.permission.ACCESS_FINE_LOCATION"; + field @FlaggedApi("android.multiuser.enable_permission_to_access_hidden_profiles") public static final String ACCESS_HIDDEN_PROFILES = "android.permission.ACCESS_HIDDEN_PROFILES"; + field public static final String ACCESS_LOCATION_EXTRA_COMMANDS = "android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"; + field public static final String ACCESS_MEDIA_LOCATION = "android.permission.ACCESS_MEDIA_LOCATION"; + field public static final String ACCESS_NETWORK_STATE = "android.permission.ACCESS_NETWORK_STATE"; + field public static final String ACCESS_NOTIFICATION_POLICY = "android.permission.ACCESS_NOTIFICATION_POLICY"; + field public static final String ACCESS_WIFI_STATE = "android.permission.ACCESS_WIFI_STATE"; + field public static final String ACCOUNT_MANAGER = "android.permission.ACCOUNT_MANAGER"; + field public static final String ACTIVITY_RECOGNITION = "android.permission.ACTIVITY_RECOGNITION"; + field public static final String ADD_VOICEMAIL = "com.android.voicemail.permission.ADD_VOICEMAIL"; + field public static final String ANSWER_PHONE_CALLS = "android.permission.ANSWER_PHONE_CALLS"; + field @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public static final String APPLY_PICTURE_PROFILE = "android.permission.APPLY_PICTURE_PROFILE"; + field public static final String BATTERY_STATS = "android.permission.BATTERY_STATS"; + field public static final String BIND_ACCESSIBILITY_SERVICE = "android.permission.BIND_ACCESSIBILITY_SERVICE"; + field public static final String BIND_APPWIDGET = "android.permission.BIND_APPWIDGET"; + field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String BIND_APP_FUNCTION_SERVICE = "android.permission.BIND_APP_FUNCTION_SERVICE"; + field public static final String BIND_AUTOFILL_SERVICE = "android.permission.BIND_AUTOFILL_SERVICE"; + field public static final String BIND_CALL_REDIRECTION_SERVICE = "android.permission.BIND_CALL_REDIRECTION_SERVICE"; + field public static final String BIND_CARRIER_MESSAGING_CLIENT_SERVICE = "android.permission.BIND_CARRIER_MESSAGING_CLIENT_SERVICE"; + field @Deprecated public static final String BIND_CARRIER_MESSAGING_SERVICE = "android.permission.BIND_CARRIER_MESSAGING_SERVICE"; + field public static final String BIND_CARRIER_SERVICES = "android.permission.BIND_CARRIER_SERVICES"; + field @Deprecated public static final String BIND_CHOOSER_TARGET_SERVICE = "android.permission.BIND_CHOOSER_TARGET_SERVICE"; + field public static final String BIND_COMPANION_DEVICE_SERVICE = "android.permission.BIND_COMPANION_DEVICE_SERVICE"; + field public static final String BIND_CONDITION_PROVIDER_SERVICE = "android.permission.BIND_CONDITION_PROVIDER_SERVICE"; + field public static final String BIND_CONTROLS = "android.permission.BIND_CONTROLS"; + field public static final String BIND_CREDENTIAL_PROVIDER_SERVICE = "android.permission.BIND_CREDENTIAL_PROVIDER_SERVICE"; + field public static final String BIND_DEVICE_ADMIN = "android.permission.BIND_DEVICE_ADMIN"; + field public static final String BIND_DREAM_SERVICE = "android.permission.BIND_DREAM_SERVICE"; + field public static final String BIND_INCALL_SERVICE = "android.permission.BIND_INCALL_SERVICE"; + field public static final String BIND_INPUT_METHOD = "android.permission.BIND_INPUT_METHOD"; + field public static final String BIND_MIDI_DEVICE_SERVICE = "android.permission.BIND_MIDI_DEVICE_SERVICE"; + field public static final String BIND_NFC_SERVICE = "android.permission.BIND_NFC_SERVICE"; + field public static final String BIND_NOTIFICATION_LISTENER_SERVICE = "android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"; + field public static final String BIND_PRINT_SERVICE = "android.permission.BIND_PRINT_SERVICE"; + field public static final String BIND_QUICK_ACCESS_WALLET_SERVICE = "android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE"; + field public static final String BIND_QUICK_SETTINGS_TILE = "android.permission.BIND_QUICK_SETTINGS_TILE"; + field public static final String BIND_REMOTEVIEWS = "android.permission.BIND_REMOTEVIEWS"; + field public static final String BIND_SCREENING_SERVICE = "android.permission.BIND_SCREENING_SERVICE"; + field public static final String BIND_TELECOM_CONNECTION_SERVICE = "android.permission.BIND_TELECOM_CONNECTION_SERVICE"; + field public static final String BIND_TEXT_SERVICE = "android.permission.BIND_TEXT_SERVICE"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String BIND_TV_AD_SERVICE = "android.permission.BIND_TV_AD_SERVICE"; + field public static final String BIND_TV_INPUT = "android.permission.BIND_TV_INPUT"; + field public static final String BIND_TV_INTERACTIVE_APP = "android.permission.BIND_TV_INTERACTIVE_APP"; + field public static final String BIND_VISUAL_VOICEMAIL_SERVICE = "android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"; + field public static final String BIND_VOICE_INTERACTION = "android.permission.BIND_VOICE_INTERACTION"; + field public static final String BIND_VPN_SERVICE = "android.permission.BIND_VPN_SERVICE"; + field public static final String BIND_VR_LISTENER_SERVICE = "android.permission.BIND_VR_LISTENER_SERVICE"; + field public static final String BIND_WALLPAPER = "android.permission.BIND_WALLPAPER"; + field public static final String BLUETOOTH = "android.permission.BLUETOOTH"; + field public static final String BLUETOOTH_ADMIN = "android.permission.BLUETOOTH_ADMIN"; + field public static final String BLUETOOTH_ADVERTISE = "android.permission.BLUETOOTH_ADVERTISE"; + field public static final String BLUETOOTH_CONNECT = "android.permission.BLUETOOTH_CONNECT"; + field public static final String BLUETOOTH_PRIVILEGED = "android.permission.BLUETOOTH_PRIVILEGED"; + field public static final String BLUETOOTH_SCAN = "android.permission.BLUETOOTH_SCAN"; + field public static final String BODY_SENSORS = "android.permission.BODY_SENSORS"; + field public static final String BODY_SENSORS_BACKGROUND = "android.permission.BODY_SENSORS_BACKGROUND"; + field public static final String BROADCAST_PACKAGE_REMOVED = "android.permission.BROADCAST_PACKAGE_REMOVED"; + field public static final String BROADCAST_SMS = "android.permission.BROADCAST_SMS"; + field public static final String BROADCAST_STICKY = "android.permission.BROADCAST_STICKY"; + field public static final String BROADCAST_WAP_PUSH = "android.permission.BROADCAST_WAP_PUSH"; + field public static final String CALL_COMPANION_APP = "android.permission.CALL_COMPANION_APP"; + field public static final String CALL_PHONE = "android.permission.CALL_PHONE"; + field public static final String CALL_PRIVILEGED = "android.permission.CALL_PRIVILEGED"; + field public static final String CAMERA = "android.permission.CAMERA"; + field public static final String CAPTURE_AUDIO_OUTPUT = "android.permission.CAPTURE_AUDIO_OUTPUT"; + field public static final String CHANGE_COMPONENT_ENABLED_STATE = "android.permission.CHANGE_COMPONENT_ENABLED_STATE"; + field public static final String CHANGE_CONFIGURATION = "android.permission.CHANGE_CONFIGURATION"; + field public static final String CHANGE_NETWORK_STATE = "android.permission.CHANGE_NETWORK_STATE"; + field public static final String CHANGE_WIFI_MULTICAST_STATE = "android.permission.CHANGE_WIFI_MULTICAST_STATE"; + field public static final String CHANGE_WIFI_STATE = "android.permission.CHANGE_WIFI_STATE"; + field public static final String CLEAR_APP_CACHE = "android.permission.CLEAR_APP_CACHE"; + field public static final String CONFIGURE_WIFI_DISPLAY = "android.permission.CONFIGURE_WIFI_DISPLAY"; + field public static final String CONTROL_LOCATION_UPDATES = "android.permission.CONTROL_LOCATION_UPDATES"; + field public static final String CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS = "android.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS"; + field public static final String CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS = "android.permission.CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS"; + field public static final String CREDENTIAL_MANAGER_SET_ORIGIN = "android.permission.CREDENTIAL_MANAGER_SET_ORIGIN"; + field public static final String DELETE_CACHE_FILES = "android.permission.DELETE_CACHE_FILES"; + field public static final String DELETE_PACKAGES = "android.permission.DELETE_PACKAGES"; + field public static final String DELIVER_COMPANION_MESSAGES = "android.permission.DELIVER_COMPANION_MESSAGES"; + field public static final String DETECT_SCREEN_CAPTURE = "android.permission.DETECT_SCREEN_CAPTURE"; + field @FlaggedApi("com.android.window.flags.screen_recording_callbacks") public static final String DETECT_SCREEN_RECORDING = "android.permission.DETECT_SCREEN_RECORDING"; + field public static final String DIAGNOSTIC = "android.permission.DIAGNOSTIC"; + field public static final String DISABLE_KEYGUARD = "android.permission.DISABLE_KEYGUARD"; + field public static final String DUMP = "android.permission.DUMP"; + field public static final String ENFORCE_UPDATE_OWNERSHIP = "android.permission.ENFORCE_UPDATE_OWNERSHIP"; + field public static final String EXECUTE_APP_ACTION = "android.permission.EXECUTE_APP_ACTION"; + field public static final String EXPAND_STATUS_BAR = "android.permission.EXPAND_STATUS_BAR"; + field public static final String FACTORY_TEST = "android.permission.FACTORY_TEST"; + field public static final String FOREGROUND_SERVICE = "android.permission.FOREGROUND_SERVICE"; + field public static final String FOREGROUND_SERVICE_CAMERA = "android.permission.FOREGROUND_SERVICE_CAMERA"; + field public static final String FOREGROUND_SERVICE_CONNECTED_DEVICE = "android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE"; + field public static final String FOREGROUND_SERVICE_DATA_SYNC = "android.permission.FOREGROUND_SERVICE_DATA_SYNC"; + field public static final String FOREGROUND_SERVICE_HEALTH = "android.permission.FOREGROUND_SERVICE_HEALTH"; + field public static final String FOREGROUND_SERVICE_LOCATION = "android.permission.FOREGROUND_SERVICE_LOCATION"; + field public static final String FOREGROUND_SERVICE_MEDIA_PLAYBACK = "android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK"; + field @FlaggedApi("android.content.pm.introduce_media_processing_type") public static final String FOREGROUND_SERVICE_MEDIA_PROCESSING = "android.permission.FOREGROUND_SERVICE_MEDIA_PROCESSING"; + field public static final String FOREGROUND_SERVICE_MEDIA_PROJECTION = "android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION"; + field public static final String FOREGROUND_SERVICE_MICROPHONE = "android.permission.FOREGROUND_SERVICE_MICROPHONE"; + field public static final String FOREGROUND_SERVICE_PHONE_CALL = "android.permission.FOREGROUND_SERVICE_PHONE_CALL"; + field public static final String FOREGROUND_SERVICE_REMOTE_MESSAGING = "android.permission.FOREGROUND_SERVICE_REMOTE_MESSAGING"; + field public static final String FOREGROUND_SERVICE_SPECIAL_USE = "android.permission.FOREGROUND_SERVICE_SPECIAL_USE"; + field public static final String FOREGROUND_SERVICE_SYSTEM_EXEMPTED = "android.permission.FOREGROUND_SERVICE_SYSTEM_EXEMPTED"; + field public static final String GET_ACCOUNTS = "android.permission.GET_ACCOUNTS"; + field public static final String GET_ACCOUNTS_PRIVILEGED = "android.permission.GET_ACCOUNTS_PRIVILEGED"; + field public static final String GET_PACKAGE_SIZE = "android.permission.GET_PACKAGE_SIZE"; + field @Deprecated public static final String GET_TASKS = "android.permission.GET_TASKS"; + field public static final String GLOBAL_SEARCH = "android.permission.GLOBAL_SEARCH"; + field public static final String HIDE_OVERLAY_WINDOWS = "android.permission.HIDE_OVERLAY_WINDOWS"; + field public static final String HIGH_SAMPLING_RATE_SENSORS = "android.permission.HIGH_SAMPLING_RATE_SENSORS"; + field public static final String INSTALL_LOCATION_PROVIDER = "android.permission.INSTALL_LOCATION_PROVIDER"; + field public static final String INSTALL_PACKAGES = "android.permission.INSTALL_PACKAGES"; + field public static final String INSTALL_SHORTCUT = "com.android.launcher.permission.INSTALL_SHORTCUT"; + field public static final String INSTANT_APP_FOREGROUND_SERVICE = "android.permission.INSTANT_APP_FOREGROUND_SERVICE"; + field public static final String INTERACT_ACROSS_PROFILES = "android.permission.INTERACT_ACROSS_PROFILES"; + field public static final String INTERNET = "android.permission.INTERNET"; + field public static final String KILL_BACKGROUND_PROCESSES = "android.permission.KILL_BACKGROUND_PROCESSES"; + field public static final String LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE = "android.permission.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE"; + field public static final String LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK = "android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK"; + field public static final String LOADER_USAGE_STATS = "android.permission.LOADER_USAGE_STATS"; + field public static final String LOCATION_HARDWARE = "android.permission.LOCATION_HARDWARE"; + field public static final String MANAGE_DEVICE_LOCK_STATE = "android.permission.MANAGE_DEVICE_LOCK_STATE"; + field public static final String MANAGE_DEVICE_POLICY_ACCESSIBILITY = "android.permission.MANAGE_DEVICE_POLICY_ACCESSIBILITY"; + field public static final String MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT = "android.permission.MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT"; + field public static final String MANAGE_DEVICE_POLICY_ACROSS_USERS = "android.permission.MANAGE_DEVICE_POLICY_ACROSS_USERS"; + field public static final String MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL = "android.permission.MANAGE_DEVICE_POLICY_ACROSS_USERS_FULL"; + field public static final String MANAGE_DEVICE_POLICY_ACROSS_USERS_SECURITY_CRITICAL = "android.permission.MANAGE_DEVICE_POLICY_ACROSS_USERS_SECURITY_CRITICAL"; + field public static final String MANAGE_DEVICE_POLICY_AIRPLANE_MODE = "android.permission.MANAGE_DEVICE_POLICY_AIRPLANE_MODE"; + field public static final String MANAGE_DEVICE_POLICY_APPS_CONTROL = "android.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL"; + field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String MANAGE_DEVICE_POLICY_APP_FUNCTIONS = "android.permission.MANAGE_DEVICE_POLICY_APP_FUNCTIONS"; + field public static final String MANAGE_DEVICE_POLICY_APP_RESTRICTIONS = "android.permission.MANAGE_DEVICE_POLICY_APP_RESTRICTIONS"; + field public static final String MANAGE_DEVICE_POLICY_APP_USER_DATA = "android.permission.MANAGE_DEVICE_POLICY_APP_USER_DATA"; + field public static final String MANAGE_DEVICE_POLICY_ASSIST_CONTENT = "android.permission.MANAGE_DEVICE_POLICY_ASSIST_CONTENT"; + field public static final String MANAGE_DEVICE_POLICY_AUDIO_OUTPUT = "android.permission.MANAGE_DEVICE_POLICY_AUDIO_OUTPUT"; + field public static final String MANAGE_DEVICE_POLICY_AUTOFILL = "android.permission.MANAGE_DEVICE_POLICY_AUTOFILL"; + field public static final String MANAGE_DEVICE_POLICY_BACKUP_SERVICE = "android.permission.MANAGE_DEVICE_POLICY_BACKUP_SERVICE"; + field public static final String MANAGE_DEVICE_POLICY_BLOCK_UNINSTALL = "android.permission.MANAGE_DEVICE_POLICY_BLOCK_UNINSTALL"; + field public static final String MANAGE_DEVICE_POLICY_BLUETOOTH = "android.permission.MANAGE_DEVICE_POLICY_BLUETOOTH"; + field public static final String MANAGE_DEVICE_POLICY_BUGREPORT = "android.permission.MANAGE_DEVICE_POLICY_BUGREPORT"; + field public static final String MANAGE_DEVICE_POLICY_CALLS = "android.permission.MANAGE_DEVICE_POLICY_CALLS"; + field public static final String MANAGE_DEVICE_POLICY_CAMERA = "android.permission.MANAGE_DEVICE_POLICY_CAMERA"; + field public static final String MANAGE_DEVICE_POLICY_CAMERA_TOGGLE = "android.permission.MANAGE_DEVICE_POLICY_CAMERA_TOGGLE"; + field public static final String MANAGE_DEVICE_POLICY_CERTIFICATES = "android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES"; + field public static final String MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE = "android.permission.MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE"; + field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final String MANAGE_DEVICE_POLICY_CONTENT_PROTECTION = "android.permission.MANAGE_DEVICE_POLICY_CONTENT_PROTECTION"; + field public static final String MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES = "android.permission.MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES"; + field public static final String MANAGE_DEVICE_POLICY_DEFAULT_SMS = "android.permission.MANAGE_DEVICE_POLICY_DEFAULT_SMS"; + field public static final String MANAGE_DEVICE_POLICY_DEVICE_IDENTIFIERS = "android.permission.MANAGE_DEVICE_POLICY_DEVICE_IDENTIFIERS"; + field public static final String MANAGE_DEVICE_POLICY_DISPLAY = "android.permission.MANAGE_DEVICE_POLICY_DISPLAY"; + field public static final String MANAGE_DEVICE_POLICY_FACTORY_RESET = "android.permission.MANAGE_DEVICE_POLICY_FACTORY_RESET"; + field public static final String MANAGE_DEVICE_POLICY_FUN = "android.permission.MANAGE_DEVICE_POLICY_FUN"; + field public static final String MANAGE_DEVICE_POLICY_INPUT_METHODS = "android.permission.MANAGE_DEVICE_POLICY_INPUT_METHODS"; + field public static final String MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES = "android.permission.MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES"; + field public static final String MANAGE_DEVICE_POLICY_KEEP_UNINSTALLED_PACKAGES = "android.permission.MANAGE_DEVICE_POLICY_KEEP_UNINSTALLED_PACKAGES"; + field public static final String MANAGE_DEVICE_POLICY_KEYGUARD = "android.permission.MANAGE_DEVICE_POLICY_KEYGUARD"; + field public static final String MANAGE_DEVICE_POLICY_LOCALE = "android.permission.MANAGE_DEVICE_POLICY_LOCALE"; + field public static final String MANAGE_DEVICE_POLICY_LOCATION = "android.permission.MANAGE_DEVICE_POLICY_LOCATION"; + field public static final String MANAGE_DEVICE_POLICY_LOCK = "android.permission.MANAGE_DEVICE_POLICY_LOCK"; + field public static final String MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS = "android.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS"; + field public static final String MANAGE_DEVICE_POLICY_LOCK_TASK = "android.permission.MANAGE_DEVICE_POLICY_LOCK_TASK"; + field public static final String MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS = "android.permission.MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS"; + field public static final String MANAGE_DEVICE_POLICY_METERED_DATA = "android.permission.MANAGE_DEVICE_POLICY_METERED_DATA"; + field public static final String MANAGE_DEVICE_POLICY_MICROPHONE = "android.permission.MANAGE_DEVICE_POLICY_MICROPHONE"; + field public static final String MANAGE_DEVICE_POLICY_MICROPHONE_TOGGLE = "android.permission.MANAGE_DEVICE_POLICY_MICROPHONE_TOGGLE"; + field public static final String MANAGE_DEVICE_POLICY_MOBILE_NETWORK = "android.permission.MANAGE_DEVICE_POLICY_MOBILE_NETWORK"; + field public static final String MANAGE_DEVICE_POLICY_MODIFY_USERS = "android.permission.MANAGE_DEVICE_POLICY_MODIFY_USERS"; + field public static final String MANAGE_DEVICE_POLICY_MTE = "android.permission.MANAGE_DEVICE_POLICY_MTE"; + field public static final String MANAGE_DEVICE_POLICY_NEARBY_COMMUNICATION = "android.permission.MANAGE_DEVICE_POLICY_NEARBY_COMMUNICATION"; + field public static final String MANAGE_DEVICE_POLICY_NETWORK_LOGGING = "android.permission.MANAGE_DEVICE_POLICY_NETWORK_LOGGING"; + field public static final String MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY = "android.permission.MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY"; + field public static final String MANAGE_DEVICE_POLICY_OVERRIDE_APN = "android.permission.MANAGE_DEVICE_POLICY_OVERRIDE_APN"; + field public static final String MANAGE_DEVICE_POLICY_PACKAGE_STATE = "android.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE"; + field public static final String MANAGE_DEVICE_POLICY_PHYSICAL_MEDIA = "android.permission.MANAGE_DEVICE_POLICY_PHYSICAL_MEDIA"; + field public static final String MANAGE_DEVICE_POLICY_PRINTING = "android.permission.MANAGE_DEVICE_POLICY_PRINTING"; + field public static final String MANAGE_DEVICE_POLICY_PRIVATE_DNS = "android.permission.MANAGE_DEVICE_POLICY_PRIVATE_DNS"; + field public static final String MANAGE_DEVICE_POLICY_PROFILES = "android.permission.MANAGE_DEVICE_POLICY_PROFILES"; + field public static final String MANAGE_DEVICE_POLICY_PROFILE_INTERACTION = "android.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION"; + field public static final String MANAGE_DEVICE_POLICY_PROXY = "android.permission.MANAGE_DEVICE_POLICY_PROXY"; + field public static final String MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES = "android.permission.MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES"; + field public static final String MANAGE_DEVICE_POLICY_RESET_PASSWORD = "android.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD"; + field public static final String MANAGE_DEVICE_POLICY_RESTRICT_PRIVATE_DNS = "android.permission.MANAGE_DEVICE_POLICY_RESTRICT_PRIVATE_DNS"; + field public static final String MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS = "android.permission.MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS"; + field public static final String MANAGE_DEVICE_POLICY_RUN_IN_BACKGROUND = "android.permission.MANAGE_DEVICE_POLICY_RUN_IN_BACKGROUND"; + field public static final String MANAGE_DEVICE_POLICY_SAFE_BOOT = "android.permission.MANAGE_DEVICE_POLICY_SAFE_BOOT"; + field public static final String MANAGE_DEVICE_POLICY_SCREEN_CAPTURE = "android.permission.MANAGE_DEVICE_POLICY_SCREEN_CAPTURE"; + field public static final String MANAGE_DEVICE_POLICY_SCREEN_CONTENT = "android.permission.MANAGE_DEVICE_POLICY_SCREEN_CONTENT"; + field public static final String MANAGE_DEVICE_POLICY_SECURITY_LOGGING = "android.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING"; + field public static final String MANAGE_DEVICE_POLICY_SETTINGS = "android.permission.MANAGE_DEVICE_POLICY_SETTINGS"; + field public static final String MANAGE_DEVICE_POLICY_SMS = "android.permission.MANAGE_DEVICE_POLICY_SMS"; + field public static final String MANAGE_DEVICE_POLICY_STATUS_BAR = "android.permission.MANAGE_DEVICE_POLICY_STATUS_BAR"; + field public static final String MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE = "android.permission.MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE"; + field public static final String MANAGE_DEVICE_POLICY_SUSPEND_PERSONAL_APPS = "android.permission.MANAGE_DEVICE_POLICY_SUSPEND_PERSONAL_APPS"; + field public static final String MANAGE_DEVICE_POLICY_SYSTEM_APPS = "android.permission.MANAGE_DEVICE_POLICY_SYSTEM_APPS"; + field public static final String MANAGE_DEVICE_POLICY_SYSTEM_DIALOGS = "android.permission.MANAGE_DEVICE_POLICY_SYSTEM_DIALOGS"; + field public static final String MANAGE_DEVICE_POLICY_SYSTEM_UPDATES = "android.permission.MANAGE_DEVICE_POLICY_SYSTEM_UPDATES"; + field @FlaggedApi("com.android.net.thread.platform.flags.thread_user_restriction_enabled") public static final String MANAGE_DEVICE_POLICY_THREAD_NETWORK = "android.permission.MANAGE_DEVICE_POLICY_THREAD_NETWORK"; + field public static final String MANAGE_DEVICE_POLICY_TIME = "android.permission.MANAGE_DEVICE_POLICY_TIME"; + field public static final String MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING = "android.permission.MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING"; + field public static final String MANAGE_DEVICE_POLICY_USB_FILE_TRANSFER = "android.permission.MANAGE_DEVICE_POLICY_USB_FILE_TRANSFER"; + field public static final String MANAGE_DEVICE_POLICY_USERS = "android.permission.MANAGE_DEVICE_POLICY_USERS"; + field public static final String MANAGE_DEVICE_POLICY_VPN = "android.permission.MANAGE_DEVICE_POLICY_VPN"; + field public static final String MANAGE_DEVICE_POLICY_WALLPAPER = "android.permission.MANAGE_DEVICE_POLICY_WALLPAPER"; + field public static final String MANAGE_DEVICE_POLICY_WIFI = "android.permission.MANAGE_DEVICE_POLICY_WIFI"; + field public static final String MANAGE_DEVICE_POLICY_WINDOWS = "android.permission.MANAGE_DEVICE_POLICY_WINDOWS"; + field public static final String MANAGE_DEVICE_POLICY_WIPE_DATA = "android.permission.MANAGE_DEVICE_POLICY_WIPE_DATA"; + field public static final String MANAGE_DOCUMENTS = "android.permission.MANAGE_DOCUMENTS"; + field public static final String MANAGE_EXTERNAL_STORAGE = "android.permission.MANAGE_EXTERNAL_STORAGE"; + field public static final String MANAGE_MEDIA = "android.permission.MANAGE_MEDIA"; + field public static final String MANAGE_ONGOING_CALLS = "android.permission.MANAGE_ONGOING_CALLS"; + field public static final String MANAGE_OWN_CALLS = "android.permission.MANAGE_OWN_CALLS"; + field public static final String MANAGE_WIFI_INTERFACES = "android.permission.MANAGE_WIFI_INTERFACES"; + field public static final String MANAGE_WIFI_NETWORK_SELECTION = "android.permission.MANAGE_WIFI_NETWORK_SELECTION"; + field public static final String MASTER_CLEAR = "android.permission.MASTER_CLEAR"; + field public static final String MEDIA_CONTENT_CONTROL = "android.permission.MEDIA_CONTENT_CONTROL"; + field @FlaggedApi("com.android.media.flags.enable_privileged_routing_for_media_routing_control") public static final String MEDIA_ROUTING_CONTROL = "android.permission.MEDIA_ROUTING_CONTROL"; + field public static final String MODIFY_AUDIO_SETTINGS = "android.permission.MODIFY_AUDIO_SETTINGS"; + field public static final String MODIFY_PHONE_STATE = "android.permission.MODIFY_PHONE_STATE"; + field public static final String MOUNT_FORMAT_FILESYSTEMS = "android.permission.MOUNT_FORMAT_FILESYSTEMS"; + field public static final String MOUNT_UNMOUNT_FILESYSTEMS = "android.permission.MOUNT_UNMOUNT_FILESYSTEMS"; + field public static final String NEARBY_WIFI_DEVICES = "android.permission.NEARBY_WIFI_DEVICES"; + field public static final String NFC = "android.permission.NFC"; + field public static final String NFC_PREFERRED_PAYMENT_INFO = "android.permission.NFC_PREFERRED_PAYMENT_INFO"; + field public static final String NFC_TRANSACTION_EVENT = "android.permission.NFC_TRANSACTION_EVENT"; + field public static final String OTHER_SENSORS = "android.permission.OTHER_SENSORS"; + field public static final String OVERRIDE_WIFI_CONFIG = "android.permission.OVERRIDE_WIFI_CONFIG"; + field public static final String PACKAGE_USAGE_STATS = "android.permission.PACKAGE_USAGE_STATS"; + field @Deprecated public static final String PERSISTENT_ACTIVITY = "android.permission.PERSISTENT_ACTIVITY"; + field public static final String POST_NOTIFICATIONS = "android.permission.POST_NOTIFICATIONS"; + field @Deprecated public static final String PROCESS_OUTGOING_CALLS = "android.permission.PROCESS_OUTGOING_CALLS"; + field public static final String PROVIDE_OWN_AUTOFILL_SUGGESTIONS = "android.permission.PROVIDE_OWN_AUTOFILL_SUGGESTIONS"; + field public static final String PROVIDE_REMOTE_CREDENTIALS = "android.permission.PROVIDE_REMOTE_CREDENTIALS"; + field @FlaggedApi("android.security.aapm_api") public static final String QUERY_ADVANCED_PROTECTION_MODE = "android.permission.QUERY_ADVANCED_PROTECTION_MODE"; + field public static final String QUERY_ALL_PACKAGES = "android.permission.QUERY_ALL_PACKAGES"; + field @FlaggedApi("android.permission.flags.ranging_permission_enabled") public static final String RANGING = "android.permission.RANGING"; + field public static final String READ_ASSISTANT_APP_SEARCH_DATA = "android.permission.READ_ASSISTANT_APP_SEARCH_DATA"; + field public static final String READ_BASIC_PHONE_STATE = "android.permission.READ_BASIC_PHONE_STATE"; + field public static final String READ_CALENDAR = "android.permission.READ_CALENDAR"; + field public static final String READ_CALL_LOG = "android.permission.READ_CALL_LOG"; + field @FlaggedApi("android.media.tv.flags.media_quality_fw") public static final String READ_COLOR_ZONES = "android.permission.READ_COLOR_ZONES"; + field public static final String READ_CONTACTS = "android.permission.READ_CONTACTS"; + field @FlaggedApi("com.android.server.feature.flags.enable_read_dropbox_permission") public static final String READ_DROPBOX_DATA = "android.permission.READ_DROPBOX_DATA"; + field public static final String READ_EXTERNAL_STORAGE = "android.permission.READ_EXTERNAL_STORAGE"; + field public static final String READ_HOME_APP_SEARCH_DATA = "android.permission.READ_HOME_APP_SEARCH_DATA"; + field @Deprecated public static final String READ_INPUT_STATE = "android.permission.READ_INPUT_STATE"; + field public static final String READ_LOGS = "android.permission.READ_LOGS"; + field public static final String READ_MEDIA_AUDIO = "android.permission.READ_MEDIA_AUDIO"; + field public static final String READ_MEDIA_IMAGES = "android.permission.READ_MEDIA_IMAGES"; + field public static final String READ_MEDIA_VIDEO = "android.permission.READ_MEDIA_VIDEO"; + field public static final String READ_MEDIA_VISUAL_USER_SELECTED = "android.permission.READ_MEDIA_VISUAL_USER_SELECTED"; + field public static final String READ_NEARBY_STREAMING_POLICY = "android.permission.READ_NEARBY_STREAMING_POLICY"; + field public static final String READ_PHONE_NUMBERS = "android.permission.READ_PHONE_NUMBERS"; + field public static final String READ_PHONE_STATE = "android.permission.READ_PHONE_STATE"; + field public static final String READ_PRECISE_PHONE_STATE = "android.permission.READ_PRECISE_PHONE_STATE"; + field public static final String READ_SMS = "android.permission.READ_SMS"; + field public static final String READ_SYNC_SETTINGS = "android.permission.READ_SYNC_SETTINGS"; + field public static final String READ_SYNC_STATS = "android.permission.READ_SYNC_STATS"; + field @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public static final String READ_SYSTEM_PREFERENCES = "android.permission.READ_SYSTEM_PREFERENCES"; + field public static final String READ_VOICEMAIL = "com.android.voicemail.permission.READ_VOICEMAIL"; + field public static final String REBOOT = "android.permission.REBOOT"; + field public static final String RECEIVE_BOOT_COMPLETED = "android.permission.RECEIVE_BOOT_COMPLETED"; + field public static final String RECEIVE_MMS = "android.permission.RECEIVE_MMS"; + field public static final String RECEIVE_SMS = "android.permission.RECEIVE_SMS"; + field public static final String RECEIVE_WAP_PUSH = "android.permission.RECEIVE_WAP_PUSH"; + field public static final String RECORD_AUDIO = "android.permission.RECORD_AUDIO"; + field public static final String REORDER_TASKS = "android.permission.REORDER_TASKS"; + field public static final String REQUEST_COMPANION_PROFILE_APP_STREAMING = "android.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING"; + field public static final String REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION = "android.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION"; + field public static final String REQUEST_COMPANION_PROFILE_COMPUTER = "android.permission.REQUEST_COMPANION_PROFILE_COMPUTER"; + field public static final String REQUEST_COMPANION_PROFILE_GLASSES = "android.permission.REQUEST_COMPANION_PROFILE_GLASSES"; + field public static final String REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING = "android.permission.REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING"; + field public static final String REQUEST_COMPANION_PROFILE_WATCH = "android.permission.REQUEST_COMPANION_PROFILE_WATCH"; + field public static final String REQUEST_COMPANION_RUN_IN_BACKGROUND = "android.permission.REQUEST_COMPANION_RUN_IN_BACKGROUND"; + field public static final String REQUEST_COMPANION_SELF_MANAGED = "android.permission.REQUEST_COMPANION_SELF_MANAGED"; + field public static final String REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND = "android.permission.REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND"; + field public static final String REQUEST_COMPANION_USE_DATA_IN_BACKGROUND = "android.permission.REQUEST_COMPANION_USE_DATA_IN_BACKGROUND"; + field public static final String REQUEST_DELETE_PACKAGES = "android.permission.REQUEST_DELETE_PACKAGES"; + field public static final String REQUEST_IGNORE_BATTERY_OPTIMIZATIONS = "android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"; + field public static final String REQUEST_INSTALL_PACKAGES = "android.permission.REQUEST_INSTALL_PACKAGES"; + field public static final String REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE = "android.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE"; + field @FlaggedApi("android.companion.device_presence") public static final String REQUEST_OBSERVE_DEVICE_UUID_PRESENCE = "android.permission.REQUEST_OBSERVE_DEVICE_UUID_PRESENCE"; + field public static final String REQUEST_PASSWORD_COMPLEXITY = "android.permission.REQUEST_PASSWORD_COMPLEXITY"; + field @Deprecated public static final String RESTART_PACKAGES = "android.permission.RESTART_PACKAGES"; + field public static final String RUN_USER_INITIATED_JOBS = "android.permission.RUN_USER_INITIATED_JOBS"; + field public static final String SCHEDULE_EXACT_ALARM = "android.permission.SCHEDULE_EXACT_ALARM"; + field public static final String SEND_RESPOND_VIA_MESSAGE = "android.permission.SEND_RESPOND_VIA_MESSAGE"; + field public static final String SEND_SMS = "android.permission.SEND_SMS"; + field public static final String SET_ALARM = "com.android.alarm.permission.SET_ALARM"; + field public static final String SET_ALWAYS_FINISH = "android.permission.SET_ALWAYS_FINISH"; + field public static final String SET_ANIMATION_SCALE = "android.permission.SET_ANIMATION_SCALE"; + field public static final String SET_BIOMETRIC_DIALOG_ADVANCED = "android.permission.SET_BIOMETRIC_DIALOG_ADVANCED"; + field public static final String SET_DEBUG_APP = "android.permission.SET_DEBUG_APP"; + field @Deprecated public static final String SET_PREFERRED_APPLICATIONS = "android.permission.SET_PREFERRED_APPLICATIONS"; + field public static final String SET_PROCESS_LIMIT = "android.permission.SET_PROCESS_LIMIT"; + field public static final String SET_TIME = "android.permission.SET_TIME"; + field public static final String SET_TIME_ZONE = "android.permission.SET_TIME_ZONE"; + field public static final String SET_WALLPAPER = "android.permission.SET_WALLPAPER"; + field public static final String SET_WALLPAPER_HINTS = "android.permission.SET_WALLPAPER_HINTS"; + field public static final String SIGNAL_PERSISTENT_PROCESSES = "android.permission.SIGNAL_PERSISTENT_PROCESSES"; + field @Deprecated public static final String SMS_FINANCIAL_TRANSACTIONS = "android.permission.SMS_FINANCIAL_TRANSACTIONS"; + field public static final String START_FOREGROUND_SERVICES_FROM_BACKGROUND = "android.permission.START_FOREGROUND_SERVICES_FROM_BACKGROUND"; + field public static final String START_VIEW_APP_FEATURES = "android.permission.START_VIEW_APP_FEATURES"; + field public static final String START_VIEW_PERMISSION_USAGE = "android.permission.START_VIEW_PERMISSION_USAGE"; + field public static final String STATUS_BAR = "android.permission.STATUS_BAR"; + field public static final String SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE = "android.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE"; + field public static final String SYSTEM_ALERT_WINDOW = "android.permission.SYSTEM_ALERT_WINDOW"; + field public static final String TRANSMIT_IR = "android.permission.TRANSMIT_IR"; + field public static final String TURN_SCREEN_ON = "android.permission.TURN_SCREEN_ON"; + field @FlaggedApi("android.app.enable_tv_implicit_enter_pip_restriction") public static final String TV_IMPLICIT_ENTER_PIP = "android.permission.TV_IMPLICIT_ENTER_PIP"; + field public static final String UNINSTALL_SHORTCUT = "com.android.launcher.permission.UNINSTALL_SHORTCUT"; + field public static final String UPDATE_DEVICE_STATS = "android.permission.UPDATE_DEVICE_STATS"; + field public static final String UPDATE_PACKAGES_WITHOUT_USER_ACTION = "android.permission.UPDATE_PACKAGES_WITHOUT_USER_ACTION"; + field public static final String USE_BIOMETRIC = "android.permission.USE_BIOMETRIC"; + field public static final String USE_EXACT_ALARM = "android.permission.USE_EXACT_ALARM"; + field @Deprecated public static final String USE_FINGERPRINT = "android.permission.USE_FINGERPRINT"; + field public static final String USE_FULL_SCREEN_INTENT = "android.permission.USE_FULL_SCREEN_INTENT"; + field public static final String USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER = "android.permission.USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER"; + field public static final String USE_SIP = "android.permission.USE_SIP"; + field public static final String UWB_RANGING = "android.permission.UWB_RANGING"; + field public static final String VIBRATE = "android.permission.VIBRATE"; + field public static final String WAKE_LOCK = "android.permission.WAKE_LOCK"; + field public static final String WRITE_APN_SETTINGS = "android.permission.WRITE_APN_SETTINGS"; + field public static final String WRITE_CALENDAR = "android.permission.WRITE_CALENDAR"; + field public static final String WRITE_CALL_LOG = "android.permission.WRITE_CALL_LOG"; + field public static final String WRITE_CONTACTS = "android.permission.WRITE_CONTACTS"; + field public static final String WRITE_EXTERNAL_STORAGE = "android.permission.WRITE_EXTERNAL_STORAGE"; + field public static final String WRITE_GSERVICES = "android.permission.WRITE_GSERVICES"; + field public static final String WRITE_SECURE_SETTINGS = "android.permission.WRITE_SECURE_SETTINGS"; + field public static final String WRITE_SETTINGS = "android.permission.WRITE_SETTINGS"; + field public static final String WRITE_SYNC_SETTINGS = "android.permission.WRITE_SYNC_SETTINGS"; + field @FlaggedApi("com.android.settingslib.flags.write_system_preference_permission_enabled") public static final String WRITE_SYSTEM_PREFERENCES = "android.permission.WRITE_SYSTEM_PREFERENCES"; + field public static final String WRITE_VOICEMAIL = "com.android.voicemail.permission.WRITE_VOICEMAIL"; + } + + public static final class Manifest.permission_group { + ctor public Manifest.permission_group(); + field public static final String ACTIVITY_RECOGNITION = "android.permission-group.ACTIVITY_RECOGNITION"; + field public static final String CALENDAR = "android.permission-group.CALENDAR"; + field public static final String CALL_LOG = "android.permission-group.CALL_LOG"; + field public static final String CAMERA = "android.permission-group.CAMERA"; + field public static final String CONTACTS = "android.permission-group.CONTACTS"; + field public static final String LOCATION = "android.permission-group.LOCATION"; + field public static final String MICROPHONE = "android.permission-group.MICROPHONE"; + field public static final String NEARBY_DEVICES = "android.permission-group.NEARBY_DEVICES"; + field public static final String NETWORK = "android.permission-group.NETWORK"; + field public static final String NOTIFICATIONS = "android.permission-group.NOTIFICATIONS"; + field public static final String OTHER_SENSORS = "android.permission-group.OTHER_SENSORS"; + field public static final String PHONE = "android.permission-group.PHONE"; + field public static final String READ_MEDIA_AURAL = "android.permission-group.READ_MEDIA_AURAL"; + field public static final String READ_MEDIA_VISUAL = "android.permission-group.READ_MEDIA_VISUAL"; + field public static final String SENSORS = "android.permission-group.SENSORS"; + field public static final String SMS = "android.permission-group.SMS"; + field public static final String STORAGE = "android.permission-group.STORAGE"; + } + + public final class R { + ctor public R(); + } + + public static final class R.anim { + ctor public R.anim(); + field public static final int accelerate_decelerate_interpolator = 17432580; // 0x10a0004 + field public static final int accelerate_interpolator = 17432581; // 0x10a0005 + field public static final int anticipate_interpolator = 17432583; // 0x10a0007 + field public static final int anticipate_overshoot_interpolator = 17432585; // 0x10a0009 + field public static final int bounce_interpolator = 17432586; // 0x10a000a + field public static final int cycle_interpolator = 17432588; // 0x10a000c + field public static final int decelerate_interpolator = 17432582; // 0x10a0006 + field public static final int fade_in = 17432576; // 0x10a0000 + field public static final int fade_out = 17432577; // 0x10a0001 + field public static final int linear_interpolator = 17432587; // 0x10a000b + field public static final int overshoot_interpolator = 17432584; // 0x10a0008 + field public static final int slide_in_left = 17432578; // 0x10a0002 + field public static final int slide_out_right = 17432579; // 0x10a0003 + } + + public static final class R.animator { + ctor public R.animator(); + field public static final int fade_in = 17498112; // 0x10b0000 + field public static final int fade_out = 17498113; // 0x10b0001 + } + + public static final class R.array { + ctor public R.array(); + field public static final int emailAddressTypes = 17235968; // 0x1070000 + field public static final int imProtocols = 17235969; // 0x1070001 + field public static final int organizationTypes = 17235970; // 0x1070002 + field public static final int phoneTypes = 17235971; // 0x1070003 + field public static final int postalAddressTypes = 17235972; // 0x1070004 + } + + public static final class R.attr { + ctor public R.attr(); + field public static final int absListViewStyle = 16842858; // 0x101006a + field public static final int accessibilityDataSensitive = 16844407; // 0x1010677 + field public static final int accessibilityEventTypes = 16843648; // 0x1010380 + field public static final int accessibilityFeedbackType = 16843650; // 0x1010382 + field public static final int accessibilityFlags = 16843652; // 0x1010384 + field public static final int accessibilityHeading = 16844160; // 0x1010580 + field public static final int accessibilityLiveRegion = 16843758; // 0x10103ee + field public static final int accessibilityPaneTitle = 16844156; // 0x101057c + field public static final int accessibilityTraversalAfter = 16843986; // 0x10104d2 + field public static final int accessibilityTraversalBefore = 16843985; // 0x10104d1 + field public static final int accountPreferences = 16843423; // 0x101029f + field public static final int accountType = 16843407; // 0x101028f + field public static final int action = 16842797; // 0x101002d + field public static final int actionBarDivider = 16843675; // 0x101039b + field public static final int actionBarItemBackground = 16843676; // 0x101039c + field public static final int actionBarPopupTheme = 16843917; // 0x101048d + field public static final int actionBarSize = 16843499; // 0x10102eb + field public static final int actionBarSplitStyle = 16843656; // 0x1010388 + field public static final int actionBarStyle = 16843470; // 0x10102ce + field public static final int actionBarTabBarStyle = 16843508; // 0x10102f4 + field public static final int actionBarTabStyle = 16843507; // 0x10102f3 + field public static final int actionBarTabTextStyle = 16843509; // 0x10102f5 + field public static final int actionBarTheme = 16843825; // 0x1010431 + field public static final int actionBarWidgetTheme = 16843671; // 0x1010397 + field public static final int actionButtonStyle = 16843480; // 0x10102d8 + field public static final int actionDropDownStyle = 16843479; // 0x10102d7 + field public static final int actionLayout = 16843515; // 0x10102fb + field public static final int actionMenuTextAppearance = 16843616; // 0x1010360 + field public static final int actionMenuTextColor = 16843617; // 0x1010361 + field public static final int actionModeBackground = 16843483; // 0x10102db + field public static final int actionModeCloseButtonStyle = 16843511; // 0x10102f7 + field public static final int actionModeCloseDrawable = 16843484; // 0x10102dc + field public static final int actionModeCopyDrawable = 16843538; // 0x1010312 + field public static final int actionModeCutDrawable = 16843537; // 0x1010311 + field public static final int actionModeFindDrawable = 16843898; // 0x101047a + field public static final int actionModePasteDrawable = 16843539; // 0x1010313 + field public static final int actionModeSelectAllDrawable = 16843646; // 0x101037e + field public static final int actionModeShareDrawable = 16843897; // 0x1010479 + field public static final int actionModeSplitBackground = 16843677; // 0x101039d + field public static final int actionModeStyle = 16843668; // 0x1010394 + field public static final int actionModeWebSearchDrawable = 16843899; // 0x101047b + field public static final int actionOverflowButtonStyle = 16843510; // 0x10102f6 + field public static final int actionOverflowMenuStyle = 16843844; // 0x1010444 + field public static final int actionProviderClass = 16843657; // 0x1010389 + field public static final int actionViewClass = 16843516; // 0x10102fc + field public static final int activatedBackgroundIndicator = 16843517; // 0x10102fd + field public static final int activityCloseEnterAnimation = 16842938; // 0x10100ba + field public static final int activityCloseExitAnimation = 16842939; // 0x10100bb + field public static final int activityOpenEnterAnimation = 16842936; // 0x10100b8 + field public static final int activityOpenExitAnimation = 16842937; // 0x10100b9 + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final int adServiceTypes; + field public static final int addPrintersActivity = 16843750; // 0x10103e6 + field public static final int addStatesFromChildren = 16842992; // 0x10100f0 + field public static final int adjustViewBounds = 16843038; // 0x101011e + field public static final int advancedPrintOptionsActivity = 16843761; // 0x10103f1 + field public static final int alertDialogIcon = 16843605; // 0x1010355 + field public static final int alertDialogStyle = 16842845; // 0x101005d + field public static final int alertDialogTheme = 16843529; // 0x1010309 + field public static final int alignmentMode = 16843642; // 0x101037a + field public static final int allContactsName = 16843468; // 0x10102cc + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int allow = 16844430; // 0x101068e + field public static final int allowAudioPlaybackCapture = 16844289; // 0x1010601 + field public static final int allowBackup = 16843392; // 0x1010280 + field public static final int allowClearUserData = 16842757; // 0x1010005 + field public static final int allowClickWhenDisabled = 16844312; // 0x1010618 + field @FlaggedApi("android.security.asm_restrictions_enabled") public static final int allowCrossUidActivitySwitchFromBelow = 16844449; // 0x10106a1 + field public static final int allowEmbedded = 16843765; // 0x10103f5 + field public static final int allowGameAngleDriver = 16844376; // 0x1010658 + field public static final int allowGameDownscaling = 16844377; // 0x1010659 + field public static final int allowGameFpsOverride = 16844378; // 0x101065a + field public static final int allowNativeHeapPointerTagging = 16844306; // 0x1010612 + field public static final int allowParallelSyncs = 16843570; // 0x1010332 + field public static final int allowSharedIsolatedProcess = 16844413; // 0x101067d + field public static final int allowSingleTap = 16843353; // 0x1010259 + field public static final int allowTaskReparenting = 16843268; // 0x1010204 + field public static final int allowUndo = 16843999; // 0x10104df + field public static final int allowUntrustedActivityEmbedding = 16844393; // 0x1010669 + field public static final int allowUpdateOwnership = 16844416; // 0x1010680 + field public static final int alpha = 16843551; // 0x101031f + field public static final int alphabeticModifiers = 16844110; // 0x101054e + field public static final int alphabeticShortcut = 16843235; // 0x10101e3 + field @FlaggedApi("android.content.pm.change_launcher_badging") public static final int alternateLauncherIcons; + field @FlaggedApi("android.content.pm.change_launcher_badging") public static final int alternateLauncherLabels; + field public static final int alwaysDrawnWithCache = 16842991; // 0x10100ef + field public static final int alwaysRetainTaskState = 16843267; // 0x1010203 + field @Deprecated public static final int amPmBackgroundColor = 16843941; // 0x10104a5 + field @Deprecated public static final int amPmTextColor = 16843940; // 0x10104a4 + field public static final int ambientShadowAlpha = 16843966; // 0x10104be + field public static final int angle = 16843168; // 0x10101a0 + field public static final int animateFirstView = 16843477; // 0x10102d5 + field public static final int animateLayoutChanges = 16843506; // 0x10102f2 + field public static final int animateOnClick = 16843356; // 0x101025c + field public static final int animatedImageDrawable = 16844298; // 0x101060a + field public static final int animation = 16843213; // 0x10101cd + field public static final int animationCache = 16842989; // 0x10100ed + field public static final int animationDuration = 16843026; // 0x1010112 + field public static final int animationOrder = 16843214; // 0x10101ce + field @Deprecated public static final int animationResolution = 16843546; // 0x101031a + field public static final int antialias = 16843034; // 0x101011a + field @Deprecated public static final int anyDensity = 16843372; // 0x101026c + field public static final int apduServiceBanner = 16843757; // 0x10103ed + field public static final int apiKey = 16843281; // 0x1010211 + field public static final int appCategory = 16844101; // 0x1010545 + field public static final int appComponentFactory = 16844154; // 0x101057a + field public static final int attributionTags = 16844354; // 0x1010642 + field public static final int attributionsAreUserVisible = 16844363; // 0x101064b + field public static final int author = 16843444; // 0x10102b4 + field public static final int authorities = 16842776; // 0x1010018 + field public static final int autoAdvanceViewId = 16843535; // 0x101030f + field public static final int autoCompleteTextViewStyle = 16842859; // 0x101006b + field public static final int autoHandwritingEnabled = 16844382; // 0x101065e + field public static final int autoLink = 16842928; // 0x10100b0 + field public static final int autoMirrored = 16843754; // 0x10103ea + field public static final int autoRemoveFromRecents = 16843847; // 0x1010447 + field public static final int autoRevokePermissions = 16844307; // 0x1010613 + field public static final int autoSizeMaxTextSize = 16844102; // 0x1010546 + field public static final int autoSizeMinTextSize = 16844088; // 0x1010538 + field public static final int autoSizePresetSizes = 16844087; // 0x1010537 + field public static final int autoSizeStepGranularity = 16844086; // 0x1010536 + field public static final int autoSizeTextType = 16844085; // 0x1010535 + field public static final int autoStart = 16843445; // 0x10102b5 + field @Deprecated public static final int autoText = 16843114; // 0x101016a + field @FlaggedApi("android.nfc.nfc_read_polling_loop") public static final int autoTransact = 16844441; // 0x1010699 + field public static final int autoUrlDetect = 16843404; // 0x101028c + field public static final int autoVerify = 16844014; // 0x10104ee + field public static final int autofillHints = 16844118; // 0x1010556 + field public static final int autofilledHighlight = 16844136; // 0x1010568 + field public static final int backdropColor = 16844402; // 0x1010672 + field public static final int background = 16842964; // 0x10100d4 + field public static final int backgroundDimAmount = 16842802; // 0x1010032 + field public static final int backgroundDimEnabled = 16843295; // 0x101021f + field public static final int backgroundSplit = 16843659; // 0x101038b + field public static final int backgroundStacked = 16843658; // 0x101038a + field public static final int backgroundTint = 16843883; // 0x101046b + field public static final int backgroundTintMode = 16843884; // 0x101046c + field public static final int backupAgent = 16843391; // 0x101027f + field public static final int backupInForeground = 16844058; // 0x101051a + field public static final int banner = 16843762; // 0x10103f2 + field public static final int baseline = 16843548; // 0x101031c + field public static final int baselineAlignBottom = 16843042; // 0x1010122 + field public static final int baselineAligned = 16843046; // 0x1010126 + field public static final int baselineAlignedChildIndex = 16843047; // 0x1010127 + field public static final int bitmap = 16844054; // 0x1010516 + field public static final int borderlessButtonStyle = 16843563; // 0x101032b + field public static final int bottom = 16843184; // 0x10101b0 + field public static final int bottomBright = 16842957; // 0x10100cd + field public static final int bottomDark = 16842953; // 0x10100c9 + field public static final int bottomLeftRadius = 16843179; // 0x10101ab + field public static final int bottomMedium = 16842958; // 0x10100ce + field public static final int bottomOffset = 16843351; // 0x1010257 + field public static final int bottomRightRadius = 16843180; // 0x10101ac + field public static final int breadCrumbShortTitle = 16843524; // 0x1010304 + field public static final int breadCrumbTitle = 16843523; // 0x1010303 + field public static final int breakStrategy = 16843997; // 0x10104dd + field public static final int bufferType = 16843086; // 0x101014e + field public static final int button = 16843015; // 0x1010107 + field public static final int buttonBarButtonStyle = 16843567; // 0x101032f + field public static final int buttonBarNegativeButtonStyle = 16843915; // 0x101048b + field public static final int buttonBarNeutralButtonStyle = 16843914; // 0x101048a + field public static final int buttonBarPositiveButtonStyle = 16843913; // 0x1010489 + field public static final int buttonBarStyle = 16843566; // 0x101032e + field public static final int buttonCornerRadius = 16844149; // 0x1010575 + field public static final int buttonGravity = 16844030; // 0x10104fe + field public static final int buttonStyle = 16842824; // 0x1010048 + field public static final int buttonStyleInset = 16842826; // 0x101004a + field public static final int buttonStyleSmall = 16842825; // 0x1010049 + field public static final int buttonStyleToggle = 16842827; // 0x101004b + field public static final int buttonTint = 16843887; // 0x101046f + field public static final int buttonTintMode = 16843888; // 0x1010470 + field public static final int cacheColorHint = 16843009; // 0x1010101 + field public static final int calendarTextColor = 16843931; // 0x101049b + field public static final int calendarViewShown = 16843596; // 0x101034c + field public static final int calendarViewStyle = 16843613; // 0x101035d + field public static final int canControlMagnification = 16844039; // 0x1010507 + field public static final int canDisplayOnRemoteDevices = 16844368; // 0x1010650 + field public static final int canPauseRecording = 16844314; // 0x101061a + field public static final int canPerformGestures = 16844045; // 0x101050d + field public static final int canRecord = 16844060; // 0x101051c + field @Deprecated public static final int canRequestEnhancedWebAccessibility = 16843736; // 0x10103d8 + field public static final int canRequestFilterKeyEvents = 16843737; // 0x10103d9 + field public static final int canRequestFingerprintGestures = 16844109; // 0x101054d + field public static final int canRequestTouchExplorationMode = 16843735; // 0x10103d7 + field public static final int canRetrieveWindowContent = 16843653; // 0x1010385 + field public static final int canTakeScreenshot = 16844303; // 0x101060f + field public static final int candidatesTextStyleSpans = 16843312; // 0x1010230 + field public static final int cantSaveState = 16844142; // 0x101056e + field public static final int capability = 16844423; // 0x1010687 + field @Deprecated public static final int capitalize = 16843113; // 0x1010169 + field public static final int category = 16843752; // 0x10103e8 + field public static final int centerBright = 16842956; // 0x10100cc + field public static final int centerColor = 16843275; // 0x101020b + field public static final int centerDark = 16842952; // 0x10100c8 + field public static final int centerMedium = 16842959; // 0x10100cf + field public static final int centerX = 16843170; // 0x10101a2 + field public static final int centerY = 16843171; // 0x10101a3 + field public static final int certDigest = 16844104; // 0x1010548 + field public static final int checkBoxPreferenceStyle = 16842895; // 0x101008f + field public static final int checkMark = 16843016; // 0x1010108 + field public static final int checkMarkTint = 16843943; // 0x10104a7 + field public static final int checkMarkTintMode = 16843944; // 0x10104a8 + field public static final int checkable = 16843237; // 0x10101e5 + field public static final int checkableBehavior = 16843232; // 0x10101e0 + field public static final int checkboxStyle = 16842860; // 0x101006c + field public static final int checked = 16843014; // 0x1010106 + field public static final int checkedButton = 16843080; // 0x1010148 + field public static final int checkedTextViewStyle = 16843720; // 0x10103c8 + field public static final int childDivider = 16843025; // 0x1010111 + field public static final int childIndicator = 16843020; // 0x101010c + field public static final int childIndicatorEnd = 16843732; // 0x10103d4 + field public static final int childIndicatorLeft = 16843023; // 0x101010f + field public static final int childIndicatorRight = 16843024; // 0x1010110 + field public static final int childIndicatorStart = 16843731; // 0x10103d3 + field public static final int choiceMode = 16843051; // 0x101012b + field public static final int classLoader = 16844139; // 0x101056b + field public static final int clearTaskOnLaunch = 16842773; // 0x1010015 + field public static final int clickable = 16842981; // 0x10100e5 + field public static final int clipChildren = 16842986; // 0x10100ea + field public static final int clipOrientation = 16843274; // 0x101020a + field public static final int clipToOutline = 16844328; // 0x1010628 + field public static final int clipToPadding = 16842987; // 0x10100eb + field public static final int closeIcon = 16843905; // 0x1010481 + field @Deprecated public static final int codes = 16843330; // 0x1010242 + field public static final int collapseColumns = 16843083; // 0x101014b + field public static final int collapseContentDescription = 16843984; // 0x10104d0 + field public static final int collapseIcon = 16844031; // 0x10104ff + field public static final int color = 16843173; // 0x10101a5 + field public static final int colorAccent = 16843829; // 0x1010435 + field public static final int colorActivatedHighlight = 16843664; // 0x1010390 + field public static final int colorBackground = 16842801; // 0x1010031 + field public static final int colorBackgroundCacheHint = 16843435; // 0x10102ab + field public static final int colorBackgroundFloating = 16844002; // 0x10104e2 + field public static final int colorButtonNormal = 16843819; // 0x101042b + field public static final int colorControlActivated = 16843818; // 0x101042a + field public static final int colorControlHighlight = 16843820; // 0x101042c + field public static final int colorControlNormal = 16843817; // 0x1010429 + field public static final int colorEdgeEffect = 16843982; // 0x10104ce + field public static final int colorError = 16844099; // 0x1010543 + field public static final int colorFocusedHighlight = 16843663; // 0x101038f + field public static final int colorForeground = 16842800; // 0x1010030 + field public static final int colorForegroundInverse = 16843270; // 0x1010206 + field public static final int colorLongPressedHighlight = 16843662; // 0x101038e + field public static final int colorMode = 16844106; // 0x101054a + field public static final int colorMultiSelectHighlight = 16843665; // 0x1010391 + field public static final int colorPressedHighlight = 16843661; // 0x101038d + field public static final int colorPrimary = 16843827; // 0x1010433 + field public static final int colorPrimaryDark = 16843828; // 0x1010434 + field public static final int colorSecondary = 16844080; // 0x1010530 + field public static final int columnCount = 16843639; // 0x1010377 + field public static final int columnDelay = 16843215; // 0x10101cf + field public static final int columnOrderPreserved = 16843640; // 0x1010378 + field public static final int columnWidth = 16843031; // 0x1010117 + field public static final int commitIcon = 16843909; // 0x1010485 + field public static final int compatibleWidthLimitDp = 16843621; // 0x1010365 + field public static final int completionHint = 16843122; // 0x1010172 + field public static final int completionHintView = 16843123; // 0x1010173 + field public static final int completionThreshold = 16843124; // 0x1010174 + field public static final int configChanges = 16842783; // 0x101001f + field public static final int configure = 16843357; // 0x101025d + field public static final int constantSize = 16843158; // 0x1010196 + field public static final int content = 16843355; // 0x101025b + field public static final int contentAgeHint = 16843961; // 0x10104b9 + field public static final int contentAuthority = 16843408; // 0x1010290 + field public static final int contentDescription = 16843379; // 0x1010273 + field public static final int contentInsetEnd = 16843860; // 0x1010454 + field public static final int contentInsetEndWithActions = 16844067; // 0x1010523 + field public static final int contentInsetLeft = 16843861; // 0x1010455 + field public static final int contentInsetRight = 16843862; // 0x1010456 + field public static final int contentInsetStart = 16843859; // 0x1010453 + field public static final int contentInsetStartWithNavigation = 16844066; // 0x1010522 + field @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public static final int contentSensitivity = 16844446; // 0x101069e + field public static final int contextClickable = 16844007; // 0x10104e7 + field public static final int contextDescription = 16844078; // 0x101052e + field public static final int contextPopupMenuStyle = 16844033; // 0x1010501 + field public static final int contextUri = 16844077; // 0x101052d + field public static final int controlX1 = 16843772; // 0x10103fc + field public static final int controlX2 = 16843774; // 0x10103fe + field public static final int controlY1 = 16843773; // 0x10103fd + field public static final int controlY2 = 16843775; // 0x10103ff + field public static final int countDown = 16844059; // 0x101051b + field public static final int country = 16843962; // 0x10104ba + field public static final int cropToPadding = 16843043; // 0x1010123 + field public static final int crossProfile = 16844302; // 0x101060e + field public static final int cursorVisible = 16843090; // 0x1010152 + field public static final int customNavigationLayout = 16843474; // 0x10102d2 + field public static final int customTokens = 16843579; // 0x101033b + field public static final int cycles = 16843220; // 0x10101d4 + field public static final int dashGap = 16843175; // 0x10101a7 + field public static final int dashWidth = 16843174; // 0x10101a6 + field public static final int data = 16842798; // 0x101002e + field public static final int dataExtractionRules = 16844350; // 0x101063e + field public static final int datePickerDialogTheme = 16843948; // 0x10104ac + field public static final int datePickerMode = 16843955; // 0x10104b3 + field public static final int datePickerStyle = 16843612; // 0x101035c + field public static final int dateTextAppearance = 16843593; // 0x1010349 + field @Deprecated public static final int dayOfWeekBackground = 16843924; // 0x1010494 + field @Deprecated public static final int dayOfWeekTextAppearance = 16843925; // 0x1010495 + field public static final int debuggable = 16842767; // 0x101000f + field public static final int defaultFocusHighlightEnabled = 16844130; // 0x1010562 + field public static final int defaultHeight = 16844021; // 0x10104f5 + field @FlaggedApi("android.content.res.default_locale") public static final int defaultLocale = 16844424; // 0x1010688 + field public static final int defaultToDeviceProtectedStorage = 16844036; // 0x1010504 + field public static final int defaultValue = 16843245; // 0x10101ed + field public static final int defaultWidth = 16844020; // 0x10104f4 + field public static final int delay = 16843212; // 0x10101cc + field public static final int dependency = 16843244; // 0x10101ec + field public static final int descendantFocusability = 16842993; // 0x10100f1 + field public static final int description = 16842784; // 0x1010020 + field public static final int detachWallpaper = 16843430; // 0x10102a6 + field public static final int detailColumn = 16843427; // 0x10102a3 + field public static final int detailSocialSummary = 16843428; // 0x10102a4 + field public static final int detailsElementBackground = 16843598; // 0x101034e + field public static final int dial = 16843010; // 0x1010102 + field public static final int dialTint = 16844342; // 0x1010636 + field public static final int dialTintMode = 16844343; // 0x1010637 + field public static final int dialogCornerRadius = 16844145; // 0x1010571 + field public static final int dialogIcon = 16843252; // 0x10101f4 + field public static final int dialogLayout = 16843255; // 0x10101f7 + field public static final int dialogMessage = 16843251; // 0x10101f3 + field public static final int dialogPreferenceStyle = 16842897; // 0x1010091 + field public static final int dialogPreferredPadding = 16843987; // 0x10104d3 + field public static final int dialogTheme = 16843528; // 0x1010308 + field public static final int dialogTitle = 16843250; // 0x10101f2 + field public static final int digits = 16843110; // 0x1010166 + field public static final int directBootAware = 16844037; // 0x1010505 + field public static final int direction = 16843217; // 0x10101d1 + field @Deprecated public static final int directionDescriptions = 16843681; // 0x10103a1 + field public static final int directionPriority = 16843218; // 0x10101d2 + field public static final int disableDependentsState = 16843249; // 0x10101f1 + field public static final int disabledAlpha = 16842803; // 0x1010033 + field public static final int displayOptions = 16843472; // 0x10102d0 + field public static final int dither = 16843036; // 0x101011c + field public static final int divider = 16843049; // 0x1010129 + field public static final int dividerHeight = 16843050; // 0x101012a + field public static final int dividerHorizontal = 16843564; // 0x101032c + field public static final int dividerPadding = 16843562; // 0x101032a + field public static final int dividerVertical = 16843530; // 0x101030a + field public static final int documentLaunchMode = 16843845; // 0x1010445 + field public static final int drawSelectorOnTop = 16843004; // 0x10100fc + field public static final int drawable = 16843161; // 0x1010199 + field public static final int drawableBottom = 16843118; // 0x101016e + field public static final int drawableEnd = 16843667; // 0x1010393 + field public static final int drawableLeft = 16843119; // 0x101016f + field public static final int drawablePadding = 16843121; // 0x1010171 + field public static final int drawableRight = 16843120; // 0x1010170 + field public static final int drawableStart = 16843666; // 0x1010392 + field public static final int drawableTint = 16843990; // 0x10104d6 + field public static final int drawableTintMode = 16843991; // 0x10104d7 + field public static final int drawableTop = 16843117; // 0x101016d + field public static final int drawingCacheQuality = 16842984; // 0x10100e8 + field public static final int dropDownAnchor = 16843363; // 0x1010263 + field public static final int dropDownHeight = 16843395; // 0x1010283 + field public static final int dropDownHintAppearance = 16842888; // 0x1010088 + field public static final int dropDownHorizontalOffset = 16843436; // 0x10102ac + field public static final int dropDownItemStyle = 16842886; // 0x1010086 + field public static final int dropDownListViewStyle = 16842861; // 0x101006d + field public static final int dropDownSelector = 16843125; // 0x1010175 + field public static final int dropDownSpinnerStyle = 16843478; // 0x10102d6 + field public static final int dropDownVerticalOffset = 16843437; // 0x10102ad + field public static final int dropDownWidth = 16843362; // 0x1010262 + field public static final int duplicateParentState = 16842985; // 0x10100e9 + field public static final int duration = 16843160; // 0x1010198 + field public static final int editTextBackground = 16843602; // 0x1010352 + field public static final int editTextColor = 16843601; // 0x1010351 + field public static final int editTextPreferenceStyle = 16842898; // 0x1010092 + field public static final int editTextStyle = 16842862; // 0x101006e + field @Deprecated public static final int editable = 16843115; // 0x101016b + field public static final int editorExtras = 16843300; // 0x1010224 + field public static final int effectColor = 16844361; // 0x1010649 + field public static final int elegantTextHeight = 16843869; // 0x101045d + field public static final int elevation = 16843840; // 0x1010440 + field public static final int ellipsize = 16842923; // 0x10100ab + field public static final int ems = 16843096; // 0x1010158 + field public static final int enableOnBackInvokedCallback = 16844396; // 0x101066c + field public static final int enableTextStylingShortcuts = 16844408; // 0x1010678 + field public static final int enableVrMode = 16844069; // 0x1010525 + field public static final int enabled = 16842766; // 0x101000e + field public static final int end = 16843996; // 0x10104dc + field public static final int endColor = 16843166; // 0x101019e + field public static final int endX = 16844050; // 0x1010512 + field public static final int endY = 16844051; // 0x1010513 + field @Deprecated public static final int endYear = 16843133; // 0x101017d + field public static final int enforceNavigationBarContrast = 16844293; // 0x1010605 + field @Deprecated public static final int enforceStatusBarContrast = 16844292; // 0x1010604 + field public static final int enterFadeDuration = 16843532; // 0x101030c + field public static final int entries = 16842930; // 0x10100b2 + field public static final int entryValues = 16843256; // 0x10101f8 + field public static final int eventsInterceptionEnabled = 16843389; // 0x101027d + field public static final int excludeClass = 16843842; // 0x1010442 + field public static final int excludeFromRecents = 16842775; // 0x1010017 + field public static final int excludeId = 16843841; // 0x1010441 + field public static final int excludeName = 16843854; // 0x101044e + field public static final int exitFadeDuration = 16843533; // 0x101030d + field public static final int expandableListPreferredChildIndicatorLeft = 16842834; // 0x1010052 + field public static final int expandableListPreferredChildIndicatorRight = 16842835; // 0x1010053 + field public static final int expandableListPreferredChildPaddingLeft = 16842831; // 0x101004f + field public static final int expandableListPreferredItemIndicatorLeft = 16842832; // 0x1010050 + field public static final int expandableListPreferredItemIndicatorRight = 16842833; // 0x1010051 + field public static final int expandableListPreferredItemPaddingLeft = 16842830; // 0x101004e + field public static final int expandableListViewStyle = 16842863; // 0x101006f + field public static final int expandableListViewWhiteStyle = 16843446; // 0x10102b6 + field public static final int exported = 16842768; // 0x1010010 + field public static final int externalService = 16844046; // 0x101050e + field public static final int extraTension = 16843371; // 0x101026b + field public static final int extractNativeLibs = 16844010; // 0x10104ea + field public static final int factor = 16843219; // 0x10101d3 + field public static final int fadeDuration = 16843384; // 0x1010278 + field public static final int fadeEnabled = 16843390; // 0x101027e + field public static final int fadeOffset = 16843383; // 0x1010277 + field public static final int fadeScrollbars = 16843434; // 0x10102aa + field public static final int fadingEdge = 16842975; // 0x10100df + field public static final int fadingEdgeLength = 16842976; // 0x10100e0 + field public static final int fadingMode = 16843745; // 0x10103e1 + field public static final int fallbackLineSpacing = 16844155; // 0x101057b + field public static final int fastScrollAlwaysVisible = 16843573; // 0x1010335 + field public static final int fastScrollEnabled = 16843302; // 0x1010226 + field public static final int fastScrollOverlayPosition = 16843578; // 0x101033a + field public static final int fastScrollPreviewBackgroundLeft = 16843575; // 0x1010337 + field public static final int fastScrollPreviewBackgroundRight = 16843576; // 0x1010338 + field public static final int fastScrollStyle = 16843767; // 0x10103f7 + field public static final int fastScrollTextColor = 16843609; // 0x1010359 + field public static final int fastScrollThumbDrawable = 16843574; // 0x1010336 + field public static final int fastScrollTrackDrawable = 16843577; // 0x1010339 + field public static final int fillAfter = 16843197; // 0x10101bd + field public static final int fillAlpha = 16843980; // 0x10104cc + field public static final int fillBefore = 16843196; // 0x10101bc + field public static final int fillColor = 16843780; // 0x1010404 + field public static final int fillEnabled = 16843343; // 0x101024f + field public static final int fillType = 16844062; // 0x101051e + field public static final int fillViewport = 16843130; // 0x101017a + field public static final int filter = 16843035; // 0x101011b + field public static final int filterTouchesWhenObscured = 16843460; // 0x10102c4 + field public static final int fingerprintAuthDrawable = 16844008; // 0x10104e8 + field public static final int finishOnCloseSystemDialogs = 16843431; // 0x10102a7 + field public static final int finishOnTaskLaunch = 16842772; // 0x1010014 + field public static final int firstBaselineToTopHeight = 16844157; // 0x101057d + field public static final int firstDayOfWeek = 16843581; // 0x101033d + field public static final int fitsSystemWindows = 16842973; // 0x10100dd + field public static final int flipInterval = 16843129; // 0x1010179 + field public static final int focusable = 16842970; // 0x10100da + field public static final int focusableInTouchMode = 16842971; // 0x10100db + field public static final int focusedByDefault = 16844100; // 0x1010544 + field @Deprecated public static final int focusedMonthDateColor = 16843587; // 0x1010343 + field public static final int focusedSearchResultHighlightColor = 16844419; // 0x1010683 + field public static final int font = 16844082; // 0x1010532 + field public static final int fontFamily = 16843692; // 0x10103ac + field public static final int fontFeatureSettings = 16843959; // 0x10104b7 + field @Deprecated public static final int fontProviderAuthority = 16844112; // 0x1010550 + field @Deprecated public static final int fontProviderCerts = 16844125; // 0x101055d + field @Deprecated public static final int fontProviderPackage = 16844119; // 0x1010557 + field @Deprecated public static final int fontProviderQuery = 16844113; // 0x1010551 + field public static final int fontProviderSystemFontFamily = 16844322; // 0x1010622 + field public static final int fontStyle = 16844095; // 0x101053f + field public static final int fontVariationSettings = 16844144; // 0x1010570 + field public static final int fontWeight = 16844083; // 0x1010533 + field public static final int footerDividersEnabled = 16843311; // 0x101022f + field public static final int forceDarkAllowed = 16844172; // 0x101058c + field public static final int forceHasOverlappingRendering = 16844065; // 0x1010521 + field public static final int forceQueryable = 16844296; // 0x1010608 + field public static final int forceUriPermissions = 16844191; // 0x101059f + field public static final int foreground = 16843017; // 0x1010109 + field public static final int foregroundGravity = 16843264; // 0x1010200 + field public static final int foregroundServiceType = 16844185; // 0x1010599 + field public static final int foregroundTint = 16843885; // 0x101046d + field public static final int foregroundTintMode = 16843886; // 0x101046e + field public static final int format = 16843013; // 0x1010105 + field public static final int format12Hour = 16843722; // 0x10103ca + field public static final int format24Hour = 16843723; // 0x10103cb + field public static final int fraction = 16843992; // 0x10104d8 + field public static final int fragment = 16843491; // 0x10102e3 + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int fragmentAdvancedPattern = 16844438; // 0x1010696 + field public static final int fragmentAllowEnterTransitionOverlap = 16843976; // 0x10104c8 + field public static final int fragmentAllowReturnTransitionOverlap = 16843977; // 0x10104c9 + field public static final int fragmentCloseEnterAnimation = 16843495; // 0x10102e7 + field public static final int fragmentCloseExitAnimation = 16843496; // 0x10102e8 + field public static final int fragmentEnterTransition = 16843971; // 0x10104c3 + field public static final int fragmentExitTransition = 16843970; // 0x10104c2 + field public static final int fragmentFadeEnterAnimation = 16843497; // 0x10102e9 + field public static final int fragmentFadeExitAnimation = 16843498; // 0x10102ea + field public static final int fragmentOpenEnterAnimation = 16843493; // 0x10102e5 + field public static final int fragmentOpenExitAnimation = 16843494; // 0x10102e6 + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int fragmentPattern = 16844437; // 0x1010695 + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int fragmentPrefix = 16844436; // 0x1010694 + field public static final int fragmentReenterTransition = 16843975; // 0x10104c7 + field public static final int fragmentReturnTransition = 16843973; // 0x10104c5 + field public static final int fragmentSharedElementEnterTransition = 16843972; // 0x10104c4 + field public static final int fragmentSharedElementReturnTransition = 16843974; // 0x10104c6 + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int fragmentSuffix = 16844439; // 0x1010697 + field public static final int freezesText = 16843116; // 0x101016c + field public static final int fromAlpha = 16843210; // 0x10101ca + field public static final int fromDegrees = 16843187; // 0x10101b3 + field public static final int fromExtendBottom = 16844386; // 0x1010662 + field public static final int fromExtendLeft = 16844383; // 0x101065f + field public static final int fromExtendRight = 16844385; // 0x1010661 + field public static final int fromExtendTop = 16844384; // 0x1010660 + field public static final int fromId = 16843850; // 0x101044a + field public static final int fromScene = 16843741; // 0x10103dd + field public static final int fromXDelta = 16843206; // 0x10101c6 + field public static final int fromXScale = 16843202; // 0x10101c2 + field public static final int fromYDelta = 16843208; // 0x10101c8 + field public static final int fromYScale = 16843204; // 0x10101c4 + field public static final int fullBackupContent = 16844011; // 0x10104eb + field public static final int fullBackupOnly = 16843891; // 0x1010473 + field public static final int fullBright = 16842954; // 0x10100ca + field public static final int fullDark = 16842950; // 0x10100c6 + field public static final int functionalTest = 16842787; // 0x1010023 + field public static final int galleryItemBackground = 16842828; // 0x101004c + field public static final int galleryStyle = 16842864; // 0x1010070 + field public static final int gestureColor = 16843381; // 0x1010275 + field public static final int gestureStrokeAngleThreshold = 16843388; // 0x101027c + field public static final int gestureStrokeLengthThreshold = 16843386; // 0x101027a + field public static final int gestureStrokeSquarenessThreshold = 16843387; // 0x101027b + field public static final int gestureStrokeType = 16843385; // 0x1010279 + field public static final int gestureStrokeWidth = 16843380; // 0x1010274 + field public static final int glEsVersion = 16843393; // 0x1010281 + field public static final int goIcon = 16843906; // 0x1010482 + field public static final int gradientRadius = 16843172; // 0x10101a4 + field public static final int grantUriPermissions = 16842779; // 0x101001b + field public static final int gravity = 16842927; // 0x10100af + field public static final int gridViewStyle = 16842865; // 0x1010071 + field public static final int groupIndicator = 16843019; // 0x101010b + field public static final int gwpAsanMode = 16844310; // 0x1010616 + field public static final int hand_hour = 16843011; // 0x1010103 + field public static final int hand_hourTint = 16844344; // 0x1010638 + field public static final int hand_hourTintMode = 16844345; // 0x1010639 + field public static final int hand_minute = 16843012; // 0x1010104 + field public static final int hand_minuteTint = 16844346; // 0x101063a + field public static final int hand_minuteTintMode = 16844347; // 0x101063b + field public static final int hand_second = 16844323; // 0x1010623 + field public static final int hand_secondTint = 16844348; // 0x101063c + field public static final int hand_secondTintMode = 16844349; // 0x101063d + field public static final int handle = 16843354; // 0x101025a + field public static final int handleProfiling = 16842786; // 0x1010022 + field public static final int handwritingBoundsOffsetBottom = 16844406; // 0x1010676 + field public static final int handwritingBoundsOffsetLeft = 16844403; // 0x1010673 + field public static final int handwritingBoundsOffsetRight = 16844405; // 0x1010675 + field public static final int handwritingBoundsOffsetTop = 16844404; // 0x1010674 + field public static final int hapticFeedbackEnabled = 16843358; // 0x101025e + field public static final int hardwareAccelerated = 16843475; // 0x10102d3 + field public static final int hasCode = 16842764; // 0x101000c + field public static final int hasFragileUserData = 16844186; // 0x101059a + field @Deprecated public static final int headerAmPmTextAppearance = 16843936; // 0x10104a0 + field public static final int headerBackground = 16843055; // 0x101012f + field @Deprecated public static final int headerDayOfMonthTextAppearance = 16843927; // 0x1010497 + field public static final int headerDividersEnabled = 16843310; // 0x101022e + field @Deprecated public static final int headerMonthTextAppearance = 16843926; // 0x1010496 + field @Deprecated public static final int headerTimeTextAppearance = 16843935; // 0x101049f + field @Deprecated public static final int headerYearTextAppearance = 16843928; // 0x1010498 + field public static final int height = 16843093; // 0x1010155 + field public static final int hideOnContentScroll = 16843843; // 0x1010443 + field public static final int hint = 16843088; // 0x1010150 + field public static final int homeAsUpIndicator = 16843531; // 0x101030b + field public static final int homeLayout = 16843549; // 0x101031d + field public static final int horizontalDivider = 16843053; // 0x101012d + field @Deprecated public static final int horizontalGap = 16843327; // 0x101023f + field public static final int horizontalScrollViewStyle = 16843603; // 0x1010353 + field public static final int horizontalSpacing = 16843028; // 0x1010114 + field public static final int host = 16842792; // 0x1010028 + field public static final int hotSpotX = 16844055; // 0x1010517 + field public static final int hotSpotY = 16844056; // 0x1010518 + field public static final int htmlDescription = 16844299; // 0x101060b + field public static final int hyphenationFrequency = 16843998; // 0x10104de + field public static final int icon = 16842754; // 0x1010002 + field @Deprecated public static final int iconPreview = 16843337; // 0x1010249 + field public static final int iconSpaceReserved = 16844129; // 0x1010561 + field public static final int iconTint = 16844126; // 0x101055e + field public static final int iconTintMode = 16844127; // 0x101055f + field public static final int iconifiedByDefault = 16843514; // 0x10102fa + field public static final int id = 16842960; // 0x10100d0 + field public static final int identifier = 16844294; // 0x1010606 + field public static final int ignoreGravity = 16843263; // 0x10101ff + field public static final int imageButtonStyle = 16842866; // 0x1010072 + field public static final int imageWellStyle = 16842867; // 0x1010073 + field public static final int imeActionId = 16843366; // 0x1010266 + field public static final int imeActionLabel = 16843365; // 0x1010265 + field public static final int imeExtractEnterAnimation = 16843368; // 0x1010268 + field public static final int imeExtractExitAnimation = 16843369; // 0x1010269 + field public static final int imeFullscreenBackground = 16843308; // 0x101022c + field public static final int imeOptions = 16843364; // 0x1010264 + field public static final int imeSubtypeExtraValue = 16843502; // 0x10102ee + field public static final int imeSubtypeLocale = 16843500; // 0x10102ec + field public static final int imeSubtypeMode = 16843501; // 0x10102ed + field public static final int immersive = 16843456; // 0x10102c0 + field public static final int importantForAccessibility = 16843690; // 0x10103aa + field public static final int importantForAutofill = 16844120; // 0x1010558 + field public static final int importantForContentCapture = 16844295; // 0x1010607 + field public static final int inAnimation = 16843127; // 0x1010177 + field public static final int includeFontPadding = 16843103; // 0x101015f + field public static final int includeInGlobalSearch = 16843374; // 0x101026e + field public static final int indeterminate = 16843065; // 0x1010139 + field public static final int indeterminateBehavior = 16843070; // 0x101013e + field public static final int indeterminateDrawable = 16843067; // 0x101013b + field public static final int indeterminateDuration = 16843069; // 0x101013d + field public static final int indeterminateOnly = 16843066; // 0x101013a + field public static final int indeterminateProgressStyle = 16843544; // 0x1010318 + field public static final int indeterminateTint = 16843881; // 0x1010469 + field public static final int indeterminateTintMode = 16843882; // 0x101046a + field public static final int indicatorEnd = 16843730; // 0x10103d2 + field public static final int indicatorLeft = 16843021; // 0x101010d + field public static final int indicatorRight = 16843022; // 0x101010e + field public static final int indicatorStart = 16843729; // 0x10103d1 + field public static final int inflatedId = 16842995; // 0x10100f3 + field public static final int inheritShowWhenLocked = 16844188; // 0x101059c + field public static final int initOrder = 16842778; // 0x101001a + field public static final int initialKeyguardLayout = 16843714; // 0x10103c2 + field public static final int initialLayout = 16843345; // 0x1010251 + field public static final int innerRadius = 16843359; // 0x101025f + field public static final int innerRadiusRatio = 16843163; // 0x101019b + field @Deprecated public static final int inputMethod = 16843112; // 0x1010168 + field public static final int inputType = 16843296; // 0x1010220 + field public static final int inset = 16843957; // 0x10104b5 + field public static final int insetBottom = 16843194; // 0x10101ba + field public static final int insetLeft = 16843191; // 0x10101b7 + field public static final int insetRight = 16843192; // 0x10101b8 + field public static final int insetTop = 16843193; // 0x10101b9 + field public static final int installLocation = 16843447; // 0x10102b7 + field @FlaggedApi("android.security.enable_intent_matching_flags") public static final int intentMatchingFlags; + field public static final int interactiveUiTimeout = 16844181; // 0x1010595 + field public static final int interpolator = 16843073; // 0x1010141 + field public static final int intro = 16844395; // 0x101066b + field public static final int isAccessibilityTool = 16844353; // 0x1010641 + field public static final int isAlwaysSyncable = 16843571; // 0x1010333 + field public static final int isAsciiCapable = 16843753; // 0x10103e9 + field public static final int isAuxiliary = 16843647; // 0x101037f + field public static final int isCredential = 16844417; // 0x1010681 + field public static final int isDefault = 16843297; // 0x1010221 + field public static final int isFeatureSplit = 16844123; // 0x101055b + field public static final int isGame = 16843764; // 0x10103f4 + field public static final int isIndicator = 16843079; // 0x1010147 + field public static final int isLightTheme = 16844176; // 0x1010590 + field @Deprecated public static final int isModifier = 16843334; // 0x1010246 + field @Deprecated public static final int isRepeatable = 16843336; // 0x1010248 + field public static final int isScrollContainer = 16843342; // 0x101024e + field @Deprecated public static final int isSplitRequired = 16844177; // 0x1010591 + field public static final int isStatic = 16844122; // 0x101055a + field @Deprecated public static final int isSticky = 16843335; // 0x1010247 + field public static final int isolatedProcess = 16843689; // 0x10103a9 + field public static final int isolatedSplits = 16844107; // 0x101054b + field public static final int itemBackground = 16843056; // 0x1010130 + field public static final int itemIconDisabledAlpha = 16843057; // 0x1010131 + field public static final int itemPadding = 16843565; // 0x101032d + field public static final int itemTextAppearance = 16843052; // 0x101012c + field public static final int justificationMode = 16844135; // 0x1010567 + field public static final int keepScreenOn = 16843286; // 0x1010216 + field public static final int key = 16843240; // 0x10101e8 + field @Deprecated public static final int keyBackground = 16843315; // 0x1010233 + field @Deprecated public static final int keyEdgeFlags = 16843333; // 0x1010245 + field @Deprecated public static final int keyHeight = 16843326; // 0x101023e + field @Deprecated public static final int keyIcon = 16843340; // 0x101024c + field @Deprecated public static final int keyLabel = 16843339; // 0x101024b + field @Deprecated public static final int keyOutputText = 16843338; // 0x101024a + field @Deprecated public static final int keyPreviewHeight = 16843321; // 0x1010239 + field @Deprecated public static final int keyPreviewLayout = 16843319; // 0x1010237 + field @Deprecated public static final int keyPreviewOffset = 16843320; // 0x1010238 + field public static final int keySet = 16843739; // 0x10103db + field @Deprecated public static final int keyTextColor = 16843318; // 0x1010236 + field @Deprecated public static final int keyTextSize = 16843316; // 0x1010234 + field @Deprecated public static final int keyWidth = 16843325; // 0x101023d + field public static final int keyboardLayout = 16843691; // 0x10103ab + field public static final int keyboardLayoutType = 16844415; // 0x101067f + field public static final int keyboardLocale = 16844414; // 0x101067e + field @Deprecated public static final int keyboardMode = 16843341; // 0x101024d + field public static final int keyboardNavigationCluster = 16844096; // 0x1010540 + field public static final int keycode = 16842949; // 0x10100c5 + field public static final int killAfterRestore = 16843420; // 0x101029c + field public static final int knownActivityEmbeddingCerts = 16844394; // 0x101066a + field public static final int knownCerts = 16844330; // 0x101062a + field public static final int lStar = 16844359; // 0x1010647 + field public static final int label = 16842753; // 0x1010001 + field public static final int labelFor = 16843718; // 0x10103c6 + field @Deprecated public static final int labelTextSize = 16843317; // 0x1010235 + field @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") public static final int languageSettingsActivity; + field public static final int languageTag = 16844040; // 0x1010508 + field public static final int largeHeap = 16843610; // 0x101035a + field public static final int largeScreens = 16843398; // 0x1010286 + field public static final int largestWidthLimitDp = 16843622; // 0x1010366 + field public static final int lastBaselineToBottomHeight = 16844158; // 0x101057e + field public static final int launchMode = 16842781; // 0x101001d + field public static final int launchTaskBehindSourceAnimation = 16843922; // 0x1010492 + field public static final int launchTaskBehindTargetAnimation = 16843921; // 0x1010491 + field public static final int layerType = 16843604; // 0x1010354 + field public static final int layout = 16842994; // 0x10100f2 + field public static final int layoutAnimation = 16842988; // 0x10100ec + field public static final int layoutDirection = 16843698; // 0x10103b2 + field @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") public static final int layoutLabel; + field public static final int layoutMode = 16843738; // 0x10103da + field public static final int layout_above = 16843140; // 0x1010184 + field public static final int layout_alignBaseline = 16843142; // 0x1010186 + field public static final int layout_alignBottom = 16843146; // 0x101018a + field public static final int layout_alignEnd = 16843706; // 0x10103ba + field public static final int layout_alignLeft = 16843143; // 0x1010187 + field public static final int layout_alignParentBottom = 16843150; // 0x101018e + field public static final int layout_alignParentEnd = 16843708; // 0x10103bc + field public static final int layout_alignParentLeft = 16843147; // 0x101018b + field public static final int layout_alignParentRight = 16843149; // 0x101018d + field public static final int layout_alignParentStart = 16843707; // 0x10103bb + field public static final int layout_alignParentTop = 16843148; // 0x101018c + field public static final int layout_alignRight = 16843145; // 0x1010189 + field public static final int layout_alignStart = 16843705; // 0x10103b9 + field public static final int layout_alignTop = 16843144; // 0x1010188 + field public static final int layout_alignWithParentIfMissing = 16843154; // 0x1010192 + field public static final int layout_below = 16843141; // 0x1010185 + field public static final int layout_centerHorizontal = 16843152; // 0x1010190 + field public static final int layout_centerInParent = 16843151; // 0x101018f + field public static final int layout_centerVertical = 16843153; // 0x1010191 + field public static final int layout_column = 16843084; // 0x101014c + field public static final int layout_columnSpan = 16843645; // 0x101037d + field public static final int layout_columnWeight = 16843865; // 0x1010459 + field public static final int layout_gravity = 16842931; // 0x10100b3 + field public static final int layout_height = 16842997; // 0x10100f5 + field public static final int layout_margin = 16842998; // 0x10100f6 + field public static final int layout_marginBottom = 16843002; // 0x10100fa + field public static final int layout_marginEnd = 16843702; // 0x10103b6 + field public static final int layout_marginHorizontal = 16844091; // 0x101053b + field public static final int layout_marginLeft = 16842999; // 0x10100f7 + field public static final int layout_marginRight = 16843001; // 0x10100f9 + field public static final int layout_marginStart = 16843701; // 0x10103b5 + field public static final int layout_marginTop = 16843000; // 0x10100f8 + field public static final int layout_marginVertical = 16844092; // 0x101053c + field public static final int layout_row = 16843643; // 0x101037b + field public static final int layout_rowSpan = 16843644; // 0x101037c + field public static final int layout_rowWeight = 16843864; // 0x1010458 + field public static final int layout_scale = 16843155; // 0x1010193 + field public static final int layout_span = 16843085; // 0x101014d + field public static final int layout_toEndOf = 16843704; // 0x10103b8 + field public static final int layout_toLeftOf = 16843138; // 0x1010182 + field public static final int layout_toRightOf = 16843139; // 0x1010183 + field public static final int layout_toStartOf = 16843703; // 0x10103b7 + field public static final int layout_weight = 16843137; // 0x1010181 + field public static final int layout_width = 16842996; // 0x10100f4 + field public static final int layout_x = 16843135; // 0x101017f + field public static final int layout_y = 16843136; // 0x1010180 + field public static final int left = 16843181; // 0x10101ad + field public static final int letterSpacing = 16843958; // 0x10104b6 + field public static final int level = 16844032; // 0x1010500 + field public static final int lineBreakStyle = 16844398; // 0x101066e + field public static final int lineBreakWordStyle = 16844399; // 0x101066f + field public static final int lineHeight = 16844159; // 0x101057f + field public static final int lineSpacingExtra = 16843287; // 0x1010217 + field public static final int lineSpacingMultiplier = 16843288; // 0x1010218 + field public static final int lines = 16843092; // 0x1010154 + field public static final int linksClickable = 16842929; // 0x10100b1 + field public static final int listChoiceBackgroundIndicator = 16843504; // 0x10102f0 + field public static final int listChoiceIndicatorMultiple = 16843290; // 0x101021a + field public static final int listChoiceIndicatorSingle = 16843289; // 0x1010219 + field public static final int listDivider = 16843284; // 0x1010214 + field public static final int listDividerAlertDialog = 16843525; // 0x1010305 + field public static final int listMenuViewStyle = 16844018; // 0x10104f2 + field public static final int listPopupWindowStyle = 16843519; // 0x10102ff + field public static final int listPreferredItemHeight = 16842829; // 0x101004d + field public static final int listPreferredItemHeightLarge = 16843654; // 0x1010386 + field public static final int listPreferredItemHeightSmall = 16843655; // 0x1010387 + field public static final int listPreferredItemPaddingEnd = 16843710; // 0x10103be + field public static final int listPreferredItemPaddingLeft = 16843683; // 0x10103a3 + field public static final int listPreferredItemPaddingRight = 16843684; // 0x10103a4 + field public static final int listPreferredItemPaddingStart = 16843709; // 0x10103bd + field public static final int listSelector = 16843003; // 0x10100fb + field public static final int listSeparatorTextViewStyle = 16843272; // 0x1010208 + field public static final int listViewStyle = 16842868; // 0x1010074 + field public static final int listViewWhiteStyle = 16842869; // 0x1010075 + field public static final int localeConfig = 16844379; // 0x101065b + field public static final int lockTaskMode = 16844013; // 0x10104ed + field public static final int logo = 16843454; // 0x10102be + field public static final int logoDescription = 16844009; // 0x10104e9 + field public static final int longClickable = 16842982; // 0x10100e6 + field public static final int loopViews = 16843527; // 0x1010307 + field public static final int manageSpaceActivity = 16842756; // 0x1010004 + field public static final int mapViewStyle = 16842890; // 0x101008a + field public static final int marqueeRepeatLimit = 16843293; // 0x101021d + field public static final int matchOrder = 16843855; // 0x101044f + field public static final int max = 16843062; // 0x1010136 + field public static final int maxAspectRatio = 16844128; // 0x1010560 + field public static final int maxButtonHeight = 16844029; // 0x10104fd + field public static final int maxDate = 16843584; // 0x1010340 + field public static final int maxEms = 16843095; // 0x1010157 + field public static final int maxHeight = 16843040; // 0x1010120 + field public static final int maxItemsPerRow = 16843060; // 0x1010134 + field public static final int maxLength = 16843104; // 0x1010160 + field public static final int maxLevel = 16843186; // 0x10101b2 + field public static final int maxLines = 16843091; // 0x1010153 + field public static final int maxLongVersionCode = 16844163; // 0x1010583 + field public static final int maxRecents = 16843846; // 0x1010446 + field public static final int maxResizeHeight = 16844339; // 0x1010633 + field public static final int maxResizeWidth = 16844338; // 0x1010632 + field public static final int maxRows = 16843059; // 0x1010133 + field public static final int maxSdkVersion = 16843377; // 0x1010271 + field public static final int maxWidth = 16843039; // 0x101011f + field public static final int maximumAngle = 16843903; // 0x101047f + field public static final int measureAllChildren = 16843018; // 0x101010a + field public static final int measureWithLargestChild = 16843476; // 0x10102d4 + field public static final int mediaRouteButtonStyle = 16843693; // 0x10103ad + field public static final int mediaRouteTypes = 16843694; // 0x10103ae + field public static final int memtagMode = 16844324; // 0x1010624 + field public static final int menuCategory = 16843230; // 0x10101de + field public static final int mimeGroup = 16844309; // 0x1010615 + field public static final int mimeType = 16842790; // 0x1010026 + field public static final int min = 16844089; // 0x1010539 + field public static final int minAspectRatio = 16844187; // 0x101059b + field public static final int minDate = 16843583; // 0x101033f + field public static final int minEms = 16843098; // 0x101015a + field public static final int minHeight = 16843072; // 0x1010140 + field public static final int minLevel = 16843185; // 0x10101b1 + field public static final int minLines = 16843094; // 0x1010156 + field public static final int minResizeHeight = 16843670; // 0x1010396 + field public static final int minResizeWidth = 16843669; // 0x1010395 + field public static final int minSdkVersion = 16843276; // 0x101020c + field @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static final int minSdkVersionFull; + field public static final int minWidth = 16843071; // 0x101013f + field public static final int minimumHorizontalAngle = 16843901; // 0x101047d + field public static final int minimumVerticalAngle = 16843902; // 0x101047e + field public static final int mipMap = 16843725; // 0x10103cd + field public static final int mirrorForRtl = 16843726; // 0x10103ce + field public static final int mode = 16843134; // 0x101017e + field public static final int moreIcon = 16843061; // 0x1010135 + field public static final int multiArch = 16843918; // 0x101048e + field public static final int multiprocess = 16842771; // 0x1010013 + field public static final int name = 16842755; // 0x1010003 + field public static final int nativeHeapZeroInitialized = 16844325; // 0x1010625 + field @Deprecated public static final int navigationBarColor = 16843858; // 0x1010452 + field @Deprecated public static final int navigationBarDividerColor = 16844141; // 0x101056d + field public static final int navigationContentDescription = 16843969; // 0x10104c1 + field public static final int navigationIcon = 16843968; // 0x10104c0 + field public static final int navigationMode = 16843471; // 0x10102cf + field public static final int negativeButtonText = 16843254; // 0x10101f6 + field public static final int nestedScrollingEnabled = 16843830; // 0x1010436 + field public static final int networkSecurityConfig = 16844071; // 0x1010527 + field public static final int nextClusterForward = 16844098; // 0x1010542 + field public static final int nextFocusDown = 16842980; // 0x10100e4 + field public static final int nextFocusForward = 16843580; // 0x101033c + field public static final int nextFocusLeft = 16842977; // 0x10100e1 + field public static final int nextFocusRight = 16842978; // 0x10100e2 + field public static final int nextFocusUp = 16842979; // 0x10100e3 + field public static final int noHistory = 16843309; // 0x101022d + field public static final int nonInteractiveUiTimeout = 16844175; // 0x101058f + field public static final int normalScreens = 16843397; // 0x1010285 + field public static final int notificationTimeout = 16843651; // 0x1010383 + field public static final int numColumns = 16843032; // 0x1010118 + field public static final int numStars = 16843076; // 0x1010144 + field public static final int numberPickerStyle = 16844068; // 0x1010524 + field public static final int numbersBackgroundColor = 16843938; // 0x10104a2 + field public static final int numbersInnerTextColor = 16844001; // 0x10104e1 + field public static final int numbersSelectorColor = 16843939; // 0x10104a3 + field public static final int numbersTextColor = 16843937; // 0x10104a1 + field @Deprecated public static final int numeric = 16843109; // 0x1010165 + field public static final int numericModifiers = 16844111; // 0x101054f + field public static final int numericShortcut = 16843236; // 0x10101e4 + field public static final int offset = 16844052; // 0x1010514 + field @Deprecated public static final int onClick = 16843375; // 0x101026f + field public static final int oneshot = 16843159; // 0x1010197 + field public static final int opacity = 16843550; // 0x101031e + field public static final int opticalInsetBottom = 16844171; // 0x101058b + field public static final int opticalInsetLeft = 16844168; // 0x1010588 + field public static final int opticalInsetRight = 16844170; // 0x101058a + field public static final int opticalInsetTop = 16844169; // 0x1010589 + field @FlaggedApi("android.content.pm.sdk_lib_independence") public static final int optional; + field public static final int order = 16843242; // 0x10101ea + field public static final int orderInCategory = 16843231; // 0x10101df + field public static final int ordering = 16843490; // 0x10102e2 + field public static final int orderingFromXml = 16843239; // 0x10101e7 + field public static final int orientation = 16842948; // 0x10100c4 + field public static final int outAnimation = 16843128; // 0x1010178 + field public static final int outlineAmbientShadowColor = 16844162; // 0x1010582 + field public static final int outlineProvider = 16843960; // 0x10104b8 + field public static final int outlineSpotShadowColor = 16844161; // 0x1010581 + field public static final int overScrollFooter = 16843459; // 0x10102c3 + field public static final int overScrollHeader = 16843458; // 0x10102c2 + field public static final int overScrollMode = 16843457; // 0x10102c1 + field public static final int overlapAnchor = 16843874; // 0x1010462 + field public static final int overridesImplicitlyEnabledSubtype = 16843682; // 0x10103a2 + field public static final int packageNames = 16843649; // 0x1010381 + field public static final int packageType = 16844167; // 0x1010587 + field public static final int padding = 16842965; // 0x10100d5 + field public static final int paddingBottom = 16842969; // 0x10100d9 + field public static final int paddingEnd = 16843700; // 0x10103b4 + field public static final int paddingHorizontal = 16844093; // 0x101053d + field public static final int paddingLeft = 16842966; // 0x10100d6 + field public static final int paddingMode = 16843863; // 0x1010457 + field public static final int paddingRight = 16842968; // 0x10100d8 + field public static final int paddingStart = 16843699; // 0x10103b3 + field public static final int paddingTop = 16842967; // 0x10100d7 + field public static final int paddingVertical = 16844094; // 0x101053e + field @FlaggedApi("android.content.pm.app_compat_option_16kb") public static final int pageSizeCompat; + field public static final int panelBackground = 16842846; // 0x101005e + field public static final int panelColorBackground = 16842849; // 0x1010061 + field public static final int panelColorForeground = 16842848; // 0x1010060 + field public static final int panelFullBackground = 16842847; // 0x101005f + field public static final int panelTextAppearance = 16842850; // 0x1010062 + field public static final int parentActivityName = 16843687; // 0x10103a7 + field @Deprecated public static final int password = 16843100; // 0x101015c + field public static final int passwordsActivity = 16844351; // 0x101063f + field public static final int path = 16842794; // 0x101002a + field public static final int pathAdvancedPattern = 16844320; // 0x1010620 + field public static final int pathData = 16843781; // 0x1010405 + field public static final int pathPattern = 16842796; // 0x101002c + field public static final int pathPrefix = 16842795; // 0x101002b + field public static final int pathSuffix = 16844318; // 0x101061e + field public static final int patternPathData = 16843978; // 0x10104ca + field public static final int permission = 16842758; // 0x1010006 + field public static final int permissionFlags = 16843719; // 0x10103c7 + field public static final int permissionGroup = 16842762; // 0x101000a + field public static final int permissionGroupFlags = 16843717; // 0x10103c5 + field public static final int persistableMode = 16843821; // 0x101042d + field public static final int persistent = 16842765; // 0x101000d + field public static final int persistentDrawingCache = 16842990; // 0x10100ee + field public static final int persistentWhenFeatureAvailable = 16844131; // 0x1010563 + field @Deprecated public static final int phoneNumber = 16843111; // 0x1010167 + field public static final int physicalKeyboardHintLanguageTag = 16844411; // 0x101067b + field public static final int physicalKeyboardHintLayoutType = 16844412; // 0x101067c + field public static final int pivotX = 16843189; // 0x10101b5 + field public static final int pivotY = 16843190; // 0x10101b6 + field public static final int pointerIcon = 16844041; // 0x1010509 + field public static final int popupAnimationStyle = 16843465; // 0x10102c9 + field public static final int popupBackground = 16843126; // 0x1010176 + field @Deprecated public static final int popupCharacters = 16843332; // 0x1010244 + field public static final int popupElevation = 16843916; // 0x101048c + field public static final int popupEnterTransition = 16844063; // 0x101051f + field public static final int popupExitTransition = 16844064; // 0x1010520 + field @Deprecated public static final int popupKeyboard = 16843331; // 0x1010243 + field @Deprecated public static final int popupLayout = 16843323; // 0x101023b + field public static final int popupMenuStyle = 16843520; // 0x1010300 + field public static final int popupTheme = 16843945; // 0x10104a9 + field public static final int popupWindowStyle = 16842870; // 0x1010076 + field public static final int port = 16842793; // 0x1010029 + field public static final int positiveButtonText = 16843253; // 0x10101f5 + field public static final int preferKeepClear = 16844381; // 0x101065d + field public static final int preferMinimalPostProcessing = 16844300; // 0x101060c + field public static final int preferenceCategoryStyle = 16842892; // 0x101008c + field public static final int preferenceFragmentStyle = 16844038; // 0x1010506 + field public static final int preferenceInformationStyle = 16842893; // 0x101008d + field public static final int preferenceLayoutChild = 16842900; // 0x1010094 + field public static final int preferenceScreenStyle = 16842891; // 0x101008b + field public static final int preferenceStyle = 16842894; // 0x101008e + field public static final int presentationTheme = 16843712; // 0x10103c0 + field public static final int preserveLegacyExternalStorage = 16844308; // 0x1010614 + field public static final int previewImage = 16843482; // 0x10102da + field public static final int previewLayout = 16844327; // 0x1010627 + field public static final int primaryContentAlpha = 16844114; // 0x1010552 + field public static final int priority = 16842780; // 0x101001c + field public static final int privateImeOptions = 16843299; // 0x1010223 + field public static final int process = 16842769; // 0x1010011 + field public static final int progress = 16843063; // 0x1010137 + field public static final int progressBackgroundTint = 16843877; // 0x1010465 + field public static final int progressBackgroundTintMode = 16843878; // 0x1010466 + field public static final int progressBarPadding = 16843545; // 0x1010319 + field public static final int progressBarStyle = 16842871; // 0x1010077 + field public static final int progressBarStyleHorizontal = 16842872; // 0x1010078 + field public static final int progressBarStyleInverse = 16843399; // 0x1010287 + field public static final int progressBarStyleLarge = 16842874; // 0x101007a + field public static final int progressBarStyleLargeInverse = 16843401; // 0x1010289 + field public static final int progressBarStyleSmall = 16842873; // 0x1010079 + field public static final int progressBarStyleSmallInverse = 16843400; // 0x1010288 + field public static final int progressBarStyleSmallTitle = 16843279; // 0x101020f + field public static final int progressDrawable = 16843068; // 0x101013c + field public static final int progressTint = 16843875; // 0x1010463 + field public static final int progressTintMode = 16843876; // 0x1010464 + field public static final int prompt = 16843131; // 0x101017b + field public static final int propertyName = 16843489; // 0x10102e1 + field public static final int propertyXName = 16843892; // 0x1010474 + field public static final int propertyYName = 16843893; // 0x1010475 + field public static final int protectionLevel = 16842761; // 0x1010009 + field public static final int publicKey = 16843686; // 0x10103a6 + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int query = 16844431; // 0x101068f + field public static final int queryActionMsg = 16843227; // 0x10101db + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int queryAdvancedPattern = 16844434; // 0x1010692 + field public static final int queryAfterZeroResults = 16843394; // 0x1010282 + field public static final int queryBackground = 16843911; // 0x1010487 + field public static final int queryHint = 16843608; // 0x1010358 + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int queryPattern = 16844433; // 0x1010691 + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int queryPrefix = 16844432; // 0x1010690 + field @FlaggedApi("android.content.pm.relative_reference_intent_filters") public static final int querySuffix = 16844435; // 0x1010693 + field public static final int quickContactBadgeStyleSmallWindowLarge = 16843443; // 0x10102b3 + field public static final int quickContactBadgeStyleSmallWindowMedium = 16843442; // 0x10102b2 + field public static final int quickContactBadgeStyleSmallWindowSmall = 16843441; // 0x10102b1 + field public static final int quickContactBadgeStyleWindowLarge = 16843440; // 0x10102b0 + field public static final int quickContactBadgeStyleWindowMedium = 16843439; // 0x10102af + field public static final int quickContactBadgeStyleWindowSmall = 16843438; // 0x10102ae + field public static final int radioButtonStyle = 16842878; // 0x101007e + field public static final int radius = 16843176; // 0x10101a8 + field public static final int rating = 16843077; // 0x1010145 + field public static final int ratingBarStyle = 16842876; // 0x101007c + field public static final int ratingBarStyleIndicator = 16843280; // 0x1010210 + field public static final int ratingBarStyleSmall = 16842877; // 0x101007d + field public static final int readPermission = 16842759; // 0x1010007 + field public static final int recognitionService = 16843932; // 0x101049c + field public static final int recreateOnConfigChanges = 16844103; // 0x1010547 + field public static final int recycleEnabled = 16844121; // 0x1010559 + field public static final int relinquishTaskIdentity = 16843894; // 0x1010476 + field public static final int reparent = 16843964; // 0x10104bc + field public static final int reparentWithOverlay = 16843965; // 0x10104bd + field public static final int repeatCount = 16843199; // 0x10101bf + field public static final int repeatMode = 16843200; // 0x10101c0 + field public static final int reqFiveWayNav = 16843314; // 0x1010232 + field public static final int reqHardKeyboard = 16843305; // 0x1010229 + field public static final int reqKeyboardType = 16843304; // 0x1010228 + field public static final int reqNavigation = 16843306; // 0x101022a + field public static final int reqTouchScreen = 16843303; // 0x1010227 + field public static final int requestLegacyExternalStorage = 16844291; // 0x1010603 + field public static final int requestRawExternalStorageAccess = 16844357; // 0x1010645 + field @FlaggedApi("android.security.content_uri_permission_apis") public static final int requireContentUriPermissionFromCaller = 16844443; // 0x101069b + field public static final int requireDeviceScreenOn = 16844317; // 0x101061d + field public static final int requireDeviceUnlock = 16843756; // 0x10103ec + field public static final int required = 16843406; // 0x101028e + field public static final int requiredAccountType = 16843734; // 0x10103d6 + field public static final int requiredDisplayCategory = 16844409; // 0x1010679 + field public static final int requiredFeature = 16844116; // 0x1010554 + field public static final int requiredForAllUsers = 16843728; // 0x10103d0 + field public static final int requiredNotFeature = 16844117; // 0x1010555 + field public static final int requiredSplitTypes = 16844366; // 0x101064e + field public static final int requiresFadingEdge = 16843685; // 0x10103a5 + field public static final int requiresSmallestWidthDp = 16843620; // 0x1010364 + field public static final int resetEnabledSettingsOnAppDataCleared = 16844370; // 0x1010652 + field public static final int resizeClip = 16843983; // 0x10104cf + field public static final int resizeMode = 16843619; // 0x1010363 + field public static final int resizeable = 16843405; // 0x101028d + field public static final int resizeableActivity = 16844022; // 0x10104f6 + field public static final int resource = 16842789; // 0x1010025 + field public static final int resourcesMap = 16844297; // 0x1010609 + field public static final int restoreAnyVersion = 16843450; // 0x10102ba + field @Deprecated public static final int restoreNeedsApplication = 16843421; // 0x101029d + field public static final int restrictedAccountType = 16843733; // 0x10103d5 + field public static final int restrictionType = 16843923; // 0x1010493 + field public static final int resumeWhilePausing = 16843954; // 0x10104b2 + field public static final int reversible = 16843851; // 0x101044b + field public static final int revisionCode = 16843989; // 0x10104d5 + field public static final int right = 16843183; // 0x10101af + field public static final int ringtonePreferenceStyle = 16842899; // 0x1010093 + field public static final int ringtoneType = 16843257; // 0x10101f9 + field public static final int rollbackDataPolicy = 16844311; // 0x1010617 + field public static final int rotation = 16843558; // 0x1010326 + field public static final int rotationAnimation = 16844090; // 0x101053a + field public static final int rotationX = 16843559; // 0x1010327 + field public static final int rotationY = 16843560; // 0x1010328 + field public static final int roundIcon = 16844076; // 0x101052c + field public static final int rowCount = 16843637; // 0x1010375 + field public static final int rowDelay = 16843216; // 0x10101d0 + field @Deprecated public static final int rowEdgeFlags = 16843329; // 0x1010241 + field public static final int rowHeight = 16843058; // 0x1010132 + field public static final int rowOrderPreserved = 16843638; // 0x1010376 + field public static final int saveEnabled = 16842983; // 0x10100e7 + field public static final int scaleGravity = 16843262; // 0x10101fe + field public static final int scaleHeight = 16843261; // 0x10101fd + field public static final int scaleType = 16843037; // 0x101011d + field public static final int scaleWidth = 16843260; // 0x10101fc + field public static final int scaleX = 16843556; // 0x1010324 + field public static final int scaleY = 16843557; // 0x1010325 + field public static final int scheme = 16842791; // 0x1010027 + field public static final int screenDensity = 16843467; // 0x10102cb + field public static final int screenOrientation = 16842782; // 0x101001e + field public static final int screenReaderFocusable = 16844148; // 0x1010574 + field public static final int screenSize = 16843466; // 0x10102ca + field public static final int scrollHorizontally = 16843099; // 0x101015b + field public static final int scrollIndicators = 16844006; // 0x10104e6 + field public static final int scrollViewStyle = 16842880; // 0x1010080 + field public static final int scrollX = 16842962; // 0x10100d2 + field public static final int scrollY = 16842963; // 0x10100d3 + field public static final int scrollbarAlwaysDrawHorizontalTrack = 16842856; // 0x1010068 + field public static final int scrollbarAlwaysDrawVerticalTrack = 16842857; // 0x1010069 + field public static final int scrollbarDefaultDelayBeforeFade = 16843433; // 0x10102a9 + field public static final int scrollbarFadeDuration = 16843432; // 0x10102a8 + field public static final int scrollbarSize = 16842851; // 0x1010063 + field public static final int scrollbarStyle = 16842879; // 0x101007f + field public static final int scrollbarThumbHorizontal = 16842852; // 0x1010064 + field public static final int scrollbarThumbVertical = 16842853; // 0x1010065 + field public static final int scrollbarTrackHorizontal = 16842854; // 0x1010066 + field public static final int scrollbarTrackVertical = 16842855; // 0x1010067 + field public static final int scrollbars = 16842974; // 0x10100de + field public static final int scrollingCache = 16843006; // 0x10100fe + field @Deprecated public static final int searchButtonText = 16843269; // 0x1010205 + field public static final int searchHintIcon = 16843988; // 0x10104d4 + field public static final int searchIcon = 16843907; // 0x1010483 + field public static final int searchMode = 16843221; // 0x10101d5 + field public static final int searchResultHighlightColor = 16844418; // 0x1010682 + field public static final int searchSettingsDescription = 16843402; // 0x101028a + field public static final int searchSuggestAuthority = 16843222; // 0x10101d6 + field public static final int searchSuggestIntentAction = 16843225; // 0x10101d9 + field public static final int searchSuggestIntentData = 16843226; // 0x10101da + field public static final int searchSuggestPath = 16843223; // 0x10101d7 + field public static final int searchSuggestSelection = 16843224; // 0x10101d8 + field public static final int searchSuggestThreshold = 16843373; // 0x101026d + field public static final int searchViewStyle = 16843904; // 0x1010480 + field public static final int secondaryContentAlpha = 16844115; // 0x1010553 + field public static final int secondaryProgress = 16843064; // 0x1010138 + field public static final int secondaryProgressTint = 16843879; // 0x1010467 + field public static final int secondaryProgressTintMode = 16843880; // 0x1010468 + field public static final int secureElementName = 16844290; // 0x1010602 + field public static final int seekBarStyle = 16842875; // 0x101007b + field public static final int segmentedButtonStyle = 16843568; // 0x1010330 + field public static final int selectAllOnFocus = 16843102; // 0x101015e + field public static final int selectable = 16843238; // 0x10101e6 + field public static final int selectableAsDefault = 16844352; // 0x1010640 + field public static final int selectableItemBackground = 16843534; // 0x101030e + field public static final int selectableItemBackgroundBorderless = 16843868; // 0x101045c + field @Deprecated public static final int selectedDateVerticalBar = 16843591; // 0x1010347 + field @Deprecated public static final int selectedWeekBackgroundColor = 16843586; // 0x1010342 + field public static final int selectionDividerHeight = 16844184; // 0x1010598 + field public static final int sessionService = 16843837; // 0x101043d + field public static final int settingsActivity = 16843301; // 0x1010225 + field public static final int settingsSliceUri = 16844179; // 0x1010593 + field public static final int settingsSubtitle = 16844422; // 0x1010686 + field public static final int setupActivity = 16843766; // 0x10103f6 + field public static final int shadowColor = 16843105; // 0x1010161 + field public static final int shadowDx = 16843106; // 0x1010162 + field public static final int shadowDy = 16843107; // 0x1010163 + field public static final int shadowRadius = 16843108; // 0x1010164 + field public static final int shape = 16843162; // 0x101019a + field public static final int shareInterpolator = 16843195; // 0x10101bb + field @FlaggedApi("android.nfc.nfc_associated_role_services") public static final int shareRolePriority; + field @Deprecated public static final int sharedUserId = 16842763; // 0x101000b + field @Deprecated public static final int sharedUserLabel = 16843361; // 0x1010261 + field public static final int sharedUserMaxSdkVersion = 16844365; // 0x101064d + field public static final int shell = 16844180; // 0x1010594 + field @FlaggedApi("com.android.text.flags.use_bounds_for_width") public static final int shiftDrawingOffsetForStartOverhang = 16844450; // 0x10106a2 + field public static final int shortcutDisabledMessage = 16844075; // 0x101052b + field public static final int shortcutId = 16844072; // 0x1010528 + field public static final int shortcutLongLabel = 16844074; // 0x101052a + field public static final int shortcutShortLabel = 16844073; // 0x1010529 + field @FlaggedApi("android.nfc.nfc_observe_mode") public static final int shouldDefaultToObserveMode = 16844448; // 0x10106a0 + field public static final int shouldDisableView = 16843246; // 0x10101ee + field public static final int shouldUseDefaultUnfoldTransition = 16844364; // 0x101064c + field public static final int showAsAction = 16843481; // 0x10102d9 + field public static final int showBackdrop = 16844380; // 0x101065c + field public static final int showClockAndComplications = 16844372; // 0x1010654 + field public static final int showDefault = 16843258; // 0x10101fa + field public static final int showDividers = 16843561; // 0x1010329 + field public static final int showForAllUsers = 16844015; // 0x10104ef + field public static final int showInInputMethodPicker = 16844360; // 0x1010648 + field public static final int showMetadataInPreview = 16844079; // 0x101052f + field @Deprecated public static final int showOnLockScreen = 16843721; // 0x10103c9 + field public static final int showSilent = 16843259; // 0x10101fb + field public static final int showText = 16843949; // 0x10104ad + field @Deprecated public static final int showWeekNumber = 16843582; // 0x101033e + field public static final int showWhenLocked = 16844137; // 0x1010569 + field @Deprecated public static final int shownWeekCount = 16843585; // 0x1010341 + field public static final int shrinkColumns = 16843082; // 0x101014a + field @Deprecated public static final int singleLine = 16843101; // 0x101015d + field public static final int singleLineTitle = 16844124; // 0x101055c + field public static final int singleUser = 16843711; // 0x10103bf + field public static final int slideEdge = 16843824; // 0x1010430 + field public static final int smallIcon = 16843422; // 0x101029e + field public static final int smallScreens = 16843396; // 0x1010284 + field public static final int smoothScrollbar = 16843313; // 0x1010231 + field public static final int soundEffectsEnabled = 16843285; // 0x1010215 + field public static final int spacing = 16843027; // 0x1010113 + field public static final int spinnerDropDownItemStyle = 16842887; // 0x1010087 + field public static final int spinnerItemStyle = 16842889; // 0x1010089 + field public static final int spinnerMode = 16843505; // 0x10102f1 + field public static final int spinnerStyle = 16842881; // 0x1010081 + field public static final int spinnersShown = 16843595; // 0x101034b + field public static final int splashScreenTheme = 16844337; // 0x1010631 + field public static final int splitMotionEvents = 16843503; // 0x10102ef + field public static final int splitName = 16844105; // 0x1010549 + field public static final int splitTrack = 16843852; // 0x101044c + field public static final int splitTypes = 16844367; // 0x101064f + field public static final int spotShadowAlpha = 16843967; // 0x10104bf + field public static final int src = 16843033; // 0x1010119 + field public static final int ssp = 16843747; // 0x10103e3 + field public static final int sspAdvancedPattern = 16844321; // 0x1010621 + field public static final int sspPattern = 16843749; // 0x10103e5 + field public static final int sspPrefix = 16843748; // 0x10103e4 + field public static final int sspSuffix = 16844319; // 0x101061f + field public static final int stackFromBottom = 16843005; // 0x10100fd + field public static final int stackViewStyle = 16843838; // 0x101043e + field public static final int starStyle = 16842882; // 0x1010082 + field public static final int start = 16843995; // 0x10104db + field public static final int startColor = 16843165; // 0x101019d + field public static final int startDelay = 16843746; // 0x10103e2 + field public static final int startOffset = 16843198; // 0x10101be + field public static final int startX = 16844048; // 0x1010510 + field public static final int startY = 16844049; // 0x1010511 + field @Deprecated public static final int startYear = 16843132; // 0x101017c + field public static final int stateListAnimator = 16843848; // 0x1010448 + field public static final int stateNotNeeded = 16842774; // 0x1010016 + field public static final int state_above_anchor = 16842922; // 0x10100aa + field public static final int state_accelerated = 16843547; // 0x101031b + field public static final int state_activated = 16843518; // 0x10102fe + field public static final int state_active = 16842914; // 0x10100a2 + field public static final int state_checkable = 16842911; // 0x101009f + field public static final int state_checked = 16842912; // 0x10100a0 + field public static final int state_drag_can_accept = 16843624; // 0x1010368 + field public static final int state_drag_hovered = 16843625; // 0x1010369 + field public static final int state_empty = 16842921; // 0x10100a9 + field public static final int state_enabled = 16842910; // 0x101009e + field public static final int state_expanded = 16842920; // 0x10100a8 + field public static final int state_first = 16842916; // 0x10100a4 + field public static final int state_focused = 16842908; // 0x101009c + field public static final int state_hovered = 16843623; // 0x1010367 + field public static final int state_last = 16842918; // 0x10100a6 + field @Deprecated public static final int state_long_pressable = 16843324; // 0x101023c + field public static final int state_middle = 16842917; // 0x10100a5 + field public static final int state_multiline = 16843597; // 0x101034d + field public static final int state_pressed = 16842919; // 0x10100a7 + field public static final int state_selected = 16842913; // 0x10100a1 + field public static final int state_single = 16842915; // 0x10100a3 + field public static final int state_window_focused = 16842909; // 0x101009d + field public static final int staticWallpaperPreview = 16843569; // 0x1010331 + field @Deprecated public static final int statusBarColor = 16843857; // 0x1010451 + field public static final int stepSize = 16843078; // 0x1010146 + field public static final int stopWithTask = 16843626; // 0x101036a + field public static final int streamType = 16843273; // 0x1010209 + field public static final int stretchColumns = 16843081; // 0x1010149 + field public static final int stretchMode = 16843030; // 0x1010116 + field public static final int strokeAlpha = 16843979; // 0x10104cb + field public static final int strokeColor = 16843782; // 0x1010406 + field public static final int strokeLineCap = 16843787; // 0x101040b + field public static final int strokeLineJoin = 16843788; // 0x101040c + field public static final int strokeMiterLimit = 16843789; // 0x101040d + field public static final int strokeWidth = 16843783; // 0x1010407 + field public static final int stylusHandwritingSettingsActivity = 16844420; // 0x1010684 + field public static final int subMenuArrow = 16844019; // 0x10104f3 + field public static final int submitBackground = 16843912; // 0x1010488 + field public static final int subtitle = 16843473; // 0x10102d1 + field public static final int subtitleTextAppearance = 16843823; // 0x101042f + field public static final int subtitleTextColor = 16844004; // 0x10104e4 + field public static final int subtitleTextStyle = 16843513; // 0x10102f9 + field public static final int subtypeExtraValue = 16843674; // 0x101039a + field public static final int subtypeId = 16843713; // 0x10103c1 + field public static final int subtypeLocale = 16843673; // 0x1010399 + field public static final int suggestActionMsg = 16843228; // 0x10101dc + field public static final int suggestActionMsgColumn = 16843229; // 0x10101dd + field public static final int suggestionRowLayout = 16843910; // 0x1010486 + field public static final int summary = 16843241; // 0x10101e9 + field public static final int summaryColumn = 16843426; // 0x10102a2 + field public static final int summaryOff = 16843248; // 0x10101f0 + field public static final int summaryOn = 16843247; // 0x10101ef + field @FlaggedApi("android.view.accessibility.supplemental_description") public static final int supplementalDescription; + field public static final int supportedTypes = 16844369; // 0x1010651 + field public static final int supportsAssist = 16844016; // 0x10104f0 + field public static final int supportsBatteryGameMode = 16844374; // 0x1010656 + field @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public static final int supportsConnectionlessStylusHandwriting = 16844447; // 0x101069f + field public static final int supportsInlineSuggestions = 16844301; // 0x101060d + field public static final int supportsInlineSuggestionsWithTouchExploration = 16844397; // 0x101066d + field public static final int supportsLaunchVoiceAssistFromKeyguard = 16844017; // 0x10104f1 + field public static final int supportsLocalInteraction = 16844047; // 0x101050f + field public static final int supportsMultipleDisplays = 16844182; // 0x1010596 + field public static final int supportsPerformanceGameMode = 16844375; // 0x1010657 + field public static final int supportsPictureInPicture = 16844023; // 0x10104f7 + field public static final int supportsRtl = 16843695; // 0x10103af + field public static final int supportsStylusHandwriting = 16844371; // 0x1010653 + field public static final int supportsSwitchingToNextInputMethod = 16843755; // 0x10103eb + field public static final int supportsUploading = 16843419; // 0x101029b + field public static final int suppressesSpellChecker = 16844355; // 0x1010643 + field public static final int switchMinWidth = 16843632; // 0x1010370 + field public static final int switchPadding = 16843633; // 0x1010371 + field public static final int switchPreferenceStyle = 16843629; // 0x101036d + field public static final int switchStyle = 16843839; // 0x101043f + field public static final int switchTextAppearance = 16843630; // 0x101036e + field public static final int switchTextOff = 16843628; // 0x101036c + field public static final int switchTextOn = 16843627; // 0x101036b + field public static final int syncable = 16842777; // 0x1010019 + field @FlaggedApi("android.multiuser.enable_system_user_only_for_services_and_providers") public static final int systemUserOnly = 16844429; // 0x101068d + field public static final int tabStripEnabled = 16843453; // 0x10102bd + field public static final int tabStripLeft = 16843451; // 0x10102bb + field public static final int tabStripRight = 16843452; // 0x10102bc + field public static final int tabWidgetStyle = 16842883; // 0x1010083 + field public static final int tag = 16842961; // 0x10100d1 + field public static final int targetActivity = 16843266; // 0x1010202 + field public static final int targetCellHeight = 16844341; // 0x1010635 + field public static final int targetCellWidth = 16844340; // 0x1010634 + field public static final int targetClass = 16842799; // 0x101002f + field @Deprecated public static final int targetDescriptions = 16843680; // 0x10103a0 + field public static final int targetId = 16843740; // 0x10103dc + field public static final int targetName = 16843853; // 0x101044d + field public static final int targetPackage = 16842785; // 0x1010021 + field public static final int targetProcesses = 16844097; // 0x1010541 + field @Deprecated public static final int targetSandboxVersion = 16844108; // 0x101054c + field public static final int targetSdkVersion = 16843376; // 0x1010270 + field public static final int taskAffinity = 16842770; // 0x1010012 + field public static final int taskCloseEnterAnimation = 16842942; // 0x10100be + field public static final int taskCloseExitAnimation = 16842943; // 0x10100bf + field public static final int taskOpenEnterAnimation = 16842940; // 0x10100bc + field public static final int taskOpenExitAnimation = 16842941; // 0x10100bd + field public static final int taskToBackEnterAnimation = 16842946; // 0x10100c2 + field public static final int taskToBackExitAnimation = 16842947; // 0x10100c3 + field public static final int taskToFrontEnterAnimation = 16842944; // 0x10100c0 + field public static final int taskToFrontExitAnimation = 16842945; // 0x10100c1 + field public static final int tension = 16843370; // 0x101026a + field public static final int testOnly = 16843378; // 0x1010272 + field public static final int text = 16843087; // 0x101014f + field public static final int textAlignment = 16843697; // 0x10103b1 + field public static final int textAllCaps = 16843660; // 0x101038c + field public static final int textAppearance = 16842804; // 0x1010034 + field public static final int textAppearanceButton = 16843271; // 0x1010207 + field public static final int textAppearanceInverse = 16842805; // 0x1010035 + field public static final int textAppearanceLarge = 16842816; // 0x1010040 + field public static final int textAppearanceLargeInverse = 16842819; // 0x1010043 + field public static final int textAppearanceLargePopupMenu = 16843521; // 0x1010301 + field public static final int textAppearanceListItem = 16843678; // 0x101039e + field public static final int textAppearanceListItemSecondary = 16843826; // 0x1010432 + field public static final int textAppearanceListItemSmall = 16843679; // 0x101039f + field public static final int textAppearanceMedium = 16842817; // 0x1010041 + field public static final int textAppearanceMediumInverse = 16842820; // 0x1010044 + field public static final int textAppearancePopupMenuHeader = 16844034; // 0x1010502 + field public static final int textAppearanceSearchResultSubtitle = 16843424; // 0x10102a0 + field public static final int textAppearanceSearchResultTitle = 16843425; // 0x10102a1 + field public static final int textAppearanceSmall = 16842818; // 0x1010042 + field public static final int textAppearanceSmallInverse = 16842821; // 0x1010045 + field public static final int textAppearanceSmallPopupMenu = 16843522; // 0x1010302 + field public static final int textCheckMark = 16842822; // 0x1010046 + field public static final int textCheckMarkInverse = 16842823; // 0x1010047 + field public static final int textColor = 16842904; // 0x1010098 + field public static final int textColorAlertDialogListItem = 16843526; // 0x1010306 + field public static final int textColorHighlight = 16842905; // 0x1010099 + field public static final int textColorHighlightInverse = 16843599; // 0x101034f + field public static final int textColorHint = 16842906; // 0x101009a + field public static final int textColorHintInverse = 16842815; // 0x101003f + field public static final int textColorLink = 16842907; // 0x101009b + field public static final int textColorLinkInverse = 16843600; // 0x1010350 + field public static final int textColorPrimary = 16842806; // 0x1010036 + field public static final int textColorPrimaryDisableOnly = 16842807; // 0x1010037 + field public static final int textColorPrimaryInverse = 16842809; // 0x1010039 + field public static final int textColorPrimaryInverseDisableOnly = 16843403; // 0x101028b + field public static final int textColorPrimaryInverseNoDisable = 16842813; // 0x101003d + field public static final int textColorPrimaryNoDisable = 16842811; // 0x101003b + field public static final int textColorSecondary = 16842808; // 0x1010038 + field public static final int textColorSecondaryInverse = 16842810; // 0x101003a + field public static final int textColorSecondaryInverseNoDisable = 16842814; // 0x101003e + field public static final int textColorSecondaryNoDisable = 16842812; // 0x101003c + field public static final int textColorTertiary = 16843282; // 0x1010212 + field public static final int textColorTertiaryInverse = 16843283; // 0x1010213 + field public static final int textCursorDrawable = 16843618; // 0x1010362 + field public static final int textDirection = 16843696; // 0x10103b0 + field public static final int textEditNoPasteWindowLayout = 16843541; // 0x1010315 + field public static final int textEditPasteWindowLayout = 16843540; // 0x1010314 + field public static final int textEditSideNoPasteWindowLayout = 16843615; // 0x101035f + field public static final int textEditSidePasteWindowLayout = 16843614; // 0x101035e + field public static final int textEditSuggestionItemLayout = 16843636; // 0x1010374 + field public static final int textFilterEnabled = 16843007; // 0x10100ff + field public static final int textFontWeight = 16844165; // 0x1010585 + field public static final int textIsSelectable = 16843542; // 0x1010316 + field public static final int textLocale = 16844178; // 0x1010592 + field public static final int textOff = 16843045; // 0x1010125 + field public static final int textOn = 16843044; // 0x1010124 + field public static final int textScaleX = 16843089; // 0x1010151 + field public static final int textSelectHandle = 16843463; // 0x10102c7 + field public static final int textSelectHandleLeft = 16843461; // 0x10102c5 + field public static final int textSelectHandleRight = 16843462; // 0x10102c6 + field public static final int textSelectHandleWindowStyle = 16843464; // 0x10102c8 + field public static final int textSize = 16842901; // 0x1010095 + field public static final int textStyle = 16842903; // 0x1010097 + field public static final int textSuggestionsWindowStyle = 16843635; // 0x1010373 + field public static final int textViewStyle = 16842884; // 0x1010084 + field public static final int theme = 16842752; // 0x1010000 + field public static final int thickness = 16843360; // 0x1010260 + field public static final int thicknessRatio = 16843164; // 0x101019c + field public static final int thumb = 16843074; // 0x1010142 + field public static final int thumbOffset = 16843075; // 0x1010143 + field public static final int thumbPosition = 16844005; // 0x10104e5 + field public static final int thumbTextPadding = 16843634; // 0x1010372 + field public static final int thumbTint = 16843889; // 0x1010471 + field public static final int thumbTintMode = 16843890; // 0x1010472 + field public static final int thumbnail = 16843429; // 0x10102a5 + field public static final int tickMark = 16844042; // 0x101050a + field public static final int tickMarkTint = 16844043; // 0x101050b + field public static final int tickMarkTintMode = 16844044; // 0x101050c + field public static final int tileMode = 16843265; // 0x1010201 + field public static final int tileModeX = 16843895; // 0x1010477 + field public static final int tileModeY = 16843896; // 0x1010478 + field public static final int tileService = 16844391; // 0x1010667 + field public static final int timePickerDialogTheme = 16843934; // 0x101049e + field public static final int timePickerMode = 16843956; // 0x10104b4 + field public static final int timePickerStyle = 16843933; // 0x101049d + field public static final int timeZone = 16843724; // 0x10103cc + field public static final int tint = 16843041; // 0x1010121 + field public static final int tintMode = 16843771; // 0x10103fb + field public static final int title = 16843233; // 0x10101e1 + field public static final int titleCondensed = 16843234; // 0x10101e2 + field public static final int titleMargin = 16844024; // 0x10104f8 + field public static final int titleMarginBottom = 16844028; // 0x10104fc + field public static final int titleMarginEnd = 16844026; // 0x10104fa + field public static final int titleMarginStart = 16844025; // 0x10104f9 + field public static final int titleMarginTop = 16844027; // 0x10104fb + field public static final int titleTextAppearance = 16843822; // 0x101042e + field public static final int titleTextColor = 16844003; // 0x10104e3 + field public static final int titleTextStyle = 16843512; // 0x10102f8 + field public static final int toAlpha = 16843211; // 0x10101cb + field public static final int toDegrees = 16843188; // 0x10101b4 + field public static final int toExtendBottom = 16844390; // 0x1010666 + field public static final int toExtendLeft = 16844387; // 0x1010663 + field public static final int toExtendRight = 16844389; // 0x1010665 + field public static final int toExtendTop = 16844388; // 0x1010664 + field public static final int toId = 16843849; // 0x1010449 + field public static final int toScene = 16843742; // 0x10103de + field public static final int toXDelta = 16843207; // 0x10101c7 + field public static final int toXScale = 16843203; // 0x10101c3 + field public static final int toYDelta = 16843209; // 0x10101c9 + field public static final int toYScale = 16843205; // 0x10101c5 + field public static final int toolbarStyle = 16843946; // 0x10104aa + field public static final int tooltipText = 16844084; // 0x1010534 + field public static final int top = 16843182; // 0x10101ae + field public static final int topBright = 16842955; // 0x10100cb + field public static final int topDark = 16842951; // 0x10100c7 + field public static final int topLeftRadius = 16843177; // 0x10101a9 + field public static final int topOffset = 16843352; // 0x1010258 + field public static final int topRightRadius = 16843178; // 0x10101aa + field public static final int touchscreenBlocksFocus = 16843919; // 0x101048f + field public static final int track = 16843631; // 0x101036f + field public static final int trackTint = 16843993; // 0x10104d9 + field public static final int trackTintMode = 16843994; // 0x10104da + field public static final int transcriptMode = 16843008; // 0x1010100 + field public static final int transformPivotX = 16843552; // 0x1010320 + field public static final int transformPivotY = 16843553; // 0x1010321 + field public static final int transition = 16843743; // 0x10103df + field public static final int transitionGroup = 16843777; // 0x1010401 + field public static final int transitionName = 16843776; // 0x1010400 + field public static final int transitionOrdering = 16843744; // 0x10103e0 + field public static final int transitionVisibilityMode = 16843900; // 0x101047c + field public static final int translateX = 16843866; // 0x101045a + field public static final int translateY = 16843867; // 0x101045b + field public static final int translationX = 16843554; // 0x1010322 + field public static final int translationY = 16843555; // 0x1010323 + field public static final int translationZ = 16843770; // 0x10103fa + field public static final int trimPathEnd = 16843785; // 0x1010409 + field public static final int trimPathOffset = 16843786; // 0x101040a + field public static final int trimPathStart = 16843784; // 0x1010408 + field public static final int ttcIndex = 16844143; // 0x101056f + field public static final int tunerCount = 16844061; // 0x101051d + field public static final int turnScreenOn = 16844138; // 0x101056a + field public static final int type = 16843169; // 0x10101a1 + field public static final int typeface = 16842902; // 0x1010096 + field public static final int uiOptions = 16843672; // 0x1010398 + field public static final int uncertainGestureColor = 16843382; // 0x1010276 + field @Deprecated public static final int unfocusedMonthDateColor = 16843588; // 0x1010344 + field public static final int unselectedAlpha = 16843278; // 0x101020e + field public static final int updatePeriodMillis = 16843344; // 0x1010250 + field public static final int use32bitAbi = 16844053; // 0x1010515 + field public static final int useAppZygote = 16844183; // 0x1010597 + field @FlaggedApi("com.android.text.flags.use_bounds_for_width") public static final int useBoundsForWidth = 16844440; // 0x1010698 + field public static final int useDefaultMargins = 16843641; // 0x1010379 + field public static final int useEmbeddedDex = 16844190; // 0x101059e + field public static final int useIntrinsicSizeAsMinimum = 16843536; // 0x1010310 + field public static final int useLevel = 16843167; // 0x101019f + field @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public static final int useLocalePreferredLineHeightForMinimum = 16844445; // 0x101069d + field public static final int userVisible = 16843409; // 0x1010291 + field public static final int usesCleartextTraffic = 16844012; // 0x10104ec + field public static final int usesPermissionFlags = 16844356; // 0x1010644 + field public static final int value = 16842788; // 0x1010024 + field public static final int valueFrom = 16843486; // 0x10102de + field public static final int valueTo = 16843487; // 0x10102df + field public static final int valueType = 16843488; // 0x10102e0 + field public static final int variablePadding = 16843157; // 0x1010195 + field public static final int vendor = 16843751; // 0x10103e7 + field public static final int version = 16844057; // 0x1010519 + field public static final int versionCode = 16843291; // 0x101021b + field public static final int versionCodeMajor = 16844150; // 0x1010576 + field public static final int versionMajor = 16844151; // 0x1010577 + field public static final int versionName = 16843292; // 0x101021c + field @Deprecated public static final int verticalCorrection = 16843322; // 0x101023a + field public static final int verticalDivider = 16843054; // 0x101012e + field @Deprecated public static final int verticalGap = 16843328; // 0x1010240 + field public static final int verticalScrollbarPosition = 16843572; // 0x1010334 + field public static final int verticalSpacing = 16843029; // 0x1010115 + field public static final int viewportHeight = 16843779; // 0x1010403 + field public static final int viewportWidth = 16843778; // 0x1010402 + field public static final int visibility = 16842972; // 0x10100dc + field public static final int visible = 16843156; // 0x1010194 + field public static final int visibleToInstantApps = 16844081; // 0x1010531 + field public static final int vmSafeMode = 16843448; // 0x10102b8 + field public static final int voiceIcon = 16843908; // 0x1010484 + field public static final int voiceLanguage = 16843349; // 0x1010255 + field public static final int voiceLanguageModel = 16843347; // 0x1010253 + field public static final int voiceMaxResults = 16843350; // 0x1010256 + field public static final int voicePromptText = 16843348; // 0x1010254 + field public static final int voiceSearchMode = 16843346; // 0x1010252 + field public static final int wallpaperCloseEnterAnimation = 16843413; // 0x1010295 + field public static final int wallpaperCloseExitAnimation = 16843414; // 0x1010296 + field public static final int wallpaperIntraCloseEnterAnimation = 16843417; // 0x1010299 + field public static final int wallpaperIntraCloseExitAnimation = 16843418; // 0x101029a + field public static final int wallpaperIntraOpenEnterAnimation = 16843415; // 0x1010297 + field public static final int wallpaperIntraOpenExitAnimation = 16843416; // 0x1010298 + field public static final int wallpaperOpenEnterAnimation = 16843411; // 0x1010293 + field public static final int wallpaperOpenExitAnimation = 16843412; // 0x1010294 + field public static final int webTextViewStyle = 16843449; // 0x10102b9 + field public static final int webViewStyle = 16842885; // 0x1010085 + field public static final int weekDayTextAppearance = 16843592; // 0x1010348 + field @Deprecated public static final int weekNumberColor = 16843589; // 0x1010345 + field @Deprecated public static final int weekSeparatorLineColor = 16843590; // 0x1010346 + field public static final int weightSum = 16843048; // 0x1010128 + field public static final int widgetCategory = 16843716; // 0x10103c4 + field public static final int widgetFeatures = 16844153; // 0x1010579 + field public static final int widgetLayout = 16843243; // 0x10101eb + field public static final int width = 16843097; // 0x1010159 + field public static final int windowActionBar = 16843469; // 0x10102cd + field public static final int windowActionBarOverlay = 16843492; // 0x10102e4 + field public static final int windowActionModeOverlay = 16843485; // 0x10102dd + field public static final int windowActivityTransitions = 16843981; // 0x10104cd + field public static final int windowAllowEnterTransitionOverlap = 16843836; // 0x101043c + field public static final int windowAllowReturnTransitionOverlap = 16843835; // 0x101043b + field public static final int windowAnimationStyle = 16842926; // 0x10100ae + field public static final int windowBackground = 16842836; // 0x1010054 + field public static final int windowBackgroundBlurRadius = 16844331; // 0x101062b + field public static final int windowBackgroundFallback = 16844035; // 0x1010503 + field public static final int windowBlurBehindEnabled = 16844316; // 0x101061c + field public static final int windowBlurBehindRadius = 16844315; // 0x101061b + field public static final int windowClipToOutline = 16843947; // 0x10104ab + field public static final int windowCloseOnTouchOutside = 16843611; // 0x101035b + field public static final int windowContentOverlay = 16842841; // 0x1010059 + field public static final int windowContentTransitionManager = 16843769; // 0x10103f9 + field public static final int windowContentTransitions = 16843768; // 0x10103f8 + field public static final int windowDisablePreview = 16843298; // 0x1010222 + field public static final int windowDrawsSystemBarBackgrounds = 16843856; // 0x1010450 + field public static final int windowElevation = 16843920; // 0x1010490 + field public static final int windowEnableSplitTouch = 16843543; // 0x1010317 + field public static final int windowEnterAnimation = 16842932; // 0x10100b4 + field public static final int windowEnterTransition = 16843831; // 0x1010437 + field public static final int windowExitAnimation = 16842933; // 0x10100b5 + field public static final int windowExitTransition = 16843832; // 0x1010438 + field public static final int windowFrame = 16842837; // 0x1010055 + field public static final int windowFullscreen = 16843277; // 0x101020d + field public static final int windowHideAnimation = 16842935; // 0x10100b7 + field public static final int windowIsFloating = 16842839; // 0x1010057 + field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final int windowIsFrameRatePowerSavingsBalanced = 16844451; // 0x10106a3 + field public static final int windowIsTranslucent = 16842840; // 0x1010058 + field public static final int windowLayoutAffinity = 16844313; // 0x1010619 + field public static final int windowLayoutInDisplayCutoutMode = 16844166; // 0x1010586 + field public static final int windowLightNavigationBar = 16844140; // 0x101056c + field public static final int windowLightStatusBar = 16844000; // 0x10104e0 + field public static final int windowMinWidthMajor = 16843606; // 0x1010356 + field public static final int windowMinWidthMinor = 16843607; // 0x1010357 + field public static final int windowNoDisplay = 16843294; // 0x101021e + field public static final int windowNoMoveAnimation = 16844421; // 0x1010685 + field public static final int windowNoTitle = 16842838; // 0x1010056 + field @FlaggedApi("com.android.window.flags.enforce_edge_to_edge") public static final int windowOptOutEdgeToEdgeEnforcement = 16844442; // 0x101069a + field @Deprecated public static final int windowOverscan = 16843727; // 0x10103cf + field public static final int windowReenterTransition = 16843951; // 0x10104af + field public static final int windowReturnTransition = 16843950; // 0x10104ae + field public static final int windowSharedElementEnterTransition = 16843833; // 0x1010439 + field public static final int windowSharedElementExitTransition = 16843834; // 0x101043a + field public static final int windowSharedElementReenterTransition = 16843953; // 0x10104b1 + field public static final int windowSharedElementReturnTransition = 16843952; // 0x10104b0 + field public static final int windowSharedElementsUseOverlay = 16843963; // 0x10104bb + field public static final int windowShowAnimation = 16842934; // 0x10100b6 + field public static final int windowShowWallpaper = 16843410; // 0x1010292 + field public static final int windowSoftInputMode = 16843307; // 0x101022b + field public static final int windowSplashScreenAnimatedIcon = 16844333; // 0x101062d + field @Deprecated public static final int windowSplashScreenAnimationDuration = 16844334; // 0x101062e + field public static final int windowSplashScreenBackground = 16844332; // 0x101062c + field public static final int windowSplashScreenBehavior = 16844392; // 0x1010668 + field public static final int windowSplashScreenBrandingImage = 16844335; // 0x101062f + field public static final int windowSplashScreenIconBackgroundColor = 16844336; // 0x1010630 + field @Deprecated public static final int windowSplashscreenContent = 16844132; // 0x1010564 + field @Deprecated public static final int windowSwipeToDismiss = 16843763; // 0x10103f3 + field public static final int windowTitleBackgroundStyle = 16842844; // 0x101005c + field public static final int windowTitleSize = 16842842; // 0x101005a + field public static final int windowTitleStyle = 16842843; // 0x101005b + field public static final int windowTransitionBackgroundFadeDuration = 16843873; // 0x1010461 + field public static final int windowTranslucentNavigation = 16843760; // 0x10103f0 + field public static final int windowTranslucentStatus = 16843759; // 0x10103ef + field public static final int writePermission = 16842760; // 0x1010008 + field public static final int x = 16842924; // 0x10100ac + field public static final int xlargeScreens = 16843455; // 0x10102bf + field public static final int y = 16842925; // 0x10100ad + field @Deprecated public static final int yearListItemTextAppearance = 16843929; // 0x1010499 + field @Deprecated public static final int yearListSelectorColor = 16843930; // 0x101049a + field public static final int yesNoPreferenceStyle = 16842896; // 0x1010090 + field public static final int zAdjustment = 16843201; // 0x10101c1 + field public static final int zygotePreloadName = 16844189; // 0x101059d + } + + public static final class R.bool { + ctor public R.bool(); + } + + public static final class R.color { + ctor public R.color(); + field public static final int background_dark = 17170446; // 0x106000e + field public static final int background_light = 17170447; // 0x106000f + field public static final int black = 17170444; // 0x106000c + field public static final int darker_gray = 17170432; // 0x1060000 + field public static final int holo_blue_bright = 17170459; // 0x106001b + field public static final int holo_blue_dark = 17170451; // 0x1060013 + field public static final int holo_blue_light = 17170450; // 0x1060012 + field public static final int holo_green_dark = 17170453; // 0x1060015 + field public static final int holo_green_light = 17170452; // 0x1060014 + field public static final int holo_orange_dark = 17170457; // 0x1060019 + field public static final int holo_orange_light = 17170456; // 0x1060018 + field public static final int holo_purple = 17170458; // 0x106001a + field public static final int holo_red_dark = 17170455; // 0x1060017 + field public static final int holo_red_light = 17170454; // 0x1060016 + field @Deprecated public static final int primary_text_dark = 17170433; // 0x1060001 + field @Deprecated public static final int primary_text_dark_nodisable = 17170434; // 0x1060002 + field @Deprecated public static final int primary_text_light = 17170435; // 0x1060003 + field @Deprecated public static final int primary_text_light_nodisable = 17170436; // 0x1060004 + field @Deprecated public static final int secondary_text_dark = 17170437; // 0x1060005 + field @Deprecated public static final int secondary_text_dark_nodisable = 17170438; // 0x1060006 + field @Deprecated public static final int secondary_text_light = 17170439; // 0x1060007 + field @Deprecated public static final int secondary_text_light_nodisable = 17170440; // 0x1060008 + field public static final int system_accent1_0 = 17170487; // 0x1060037 + field public static final int system_accent1_10 = 17170488; // 0x1060038 + field public static final int system_accent1_100 = 17170490; // 0x106003a + field public static final int system_accent1_1000 = 17170499; // 0x1060043 + field public static final int system_accent1_200 = 17170491; // 0x106003b + field public static final int system_accent1_300 = 17170492; // 0x106003c + field public static final int system_accent1_400 = 17170493; // 0x106003d + field public static final int system_accent1_50 = 17170489; // 0x1060039 + field public static final int system_accent1_500 = 17170494; // 0x106003e + field public static final int system_accent1_600 = 17170495; // 0x106003f + field public static final int system_accent1_700 = 17170496; // 0x1060040 + field public static final int system_accent1_800 = 17170497; // 0x1060041 + field public static final int system_accent1_900 = 17170498; // 0x1060042 + field public static final int system_accent2_0 = 17170500; // 0x1060044 + field public static final int system_accent2_10 = 17170501; // 0x1060045 + field public static final int system_accent2_100 = 17170503; // 0x1060047 + field public static final int system_accent2_1000 = 17170512; // 0x1060050 + field public static final int system_accent2_200 = 17170504; // 0x1060048 + field public static final int system_accent2_300 = 17170505; // 0x1060049 + field public static final int system_accent2_400 = 17170506; // 0x106004a + field public static final int system_accent2_50 = 17170502; // 0x1060046 + field public static final int system_accent2_500 = 17170507; // 0x106004b + field public static final int system_accent2_600 = 17170508; // 0x106004c + field public static final int system_accent2_700 = 17170509; // 0x106004d + field public static final int system_accent2_800 = 17170510; // 0x106004e + field public static final int system_accent2_900 = 17170511; // 0x106004f + field public static final int system_accent3_0 = 17170513; // 0x1060051 + field public static final int system_accent3_10 = 17170514; // 0x1060052 + field public static final int system_accent3_100 = 17170516; // 0x1060054 + field public static final int system_accent3_1000 = 17170525; // 0x106005d + field public static final int system_accent3_200 = 17170517; // 0x1060055 + field public static final int system_accent3_300 = 17170518; // 0x1060056 + field public static final int system_accent3_400 = 17170519; // 0x1060057 + field public static final int system_accent3_50 = 17170515; // 0x1060053 + field public static final int system_accent3_500 = 17170520; // 0x1060058 + field public static final int system_accent3_600 = 17170521; // 0x1060059 + field public static final int system_accent3_700 = 17170522; // 0x106005a + field public static final int system_accent3_800 = 17170523; // 0x106005b + field public static final int system_accent3_900 = 17170524; // 0x106005c + field public static final int system_background_dark = 17170581; // 0x1060095 + field public static final int system_background_light = 17170538; // 0x106006a + field public static final int system_control_activated_dark = 17170599; // 0x10600a7 + field public static final int system_control_activated_light = 17170556; // 0x106007c + field public static final int system_control_highlight_dark = 17170601; // 0x10600a9 + field public static final int system_control_highlight_light = 17170558; // 0x106007e + field public static final int system_control_normal_dark = 17170600; // 0x10600a8 + field public static final int system_control_normal_light = 17170557; // 0x106007d + field public static final int system_error_0 = 17170629; // 0x10600c5 + field public static final int system_error_10 = 17170630; // 0x10600c6 + field public static final int system_error_100 = 17170632; // 0x10600c8 + field public static final int system_error_1000 = 17170641; // 0x10600d1 + field public static final int system_error_200 = 17170633; // 0x10600c9 + field public static final int system_error_300 = 17170634; // 0x10600ca + field public static final int system_error_400 = 17170635; // 0x10600cb + field public static final int system_error_50 = 17170631; // 0x10600c7 + field public static final int system_error_500 = 17170636; // 0x10600cc + field public static final int system_error_600 = 17170637; // 0x10600cd + field public static final int system_error_700 = 17170638; // 0x10600ce + field public static final int system_error_800 = 17170639; // 0x10600cf + field public static final int system_error_900 = 17170640; // 0x10600d0 + field public static final int system_error_container_dark = 17170597; // 0x10600a5 + field public static final int system_error_container_light = 17170554; // 0x106007a + field public static final int system_error_dark = 17170595; // 0x10600a3 + field public static final int system_error_light = 17170552; // 0x1060078 + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_on_surface_dark; + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_on_surface_light; + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_primary_dark; + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_primary_light; + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_surface_dark; + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_inverse_surface_light; + field public static final int system_neutral1_0 = 17170461; // 0x106001d + field public static final int system_neutral1_10 = 17170462; // 0x106001e + field public static final int system_neutral1_100 = 17170464; // 0x1060020 + field public static final int system_neutral1_1000 = 17170473; // 0x1060029 + field public static final int system_neutral1_200 = 17170465; // 0x1060021 + field public static final int system_neutral1_300 = 17170466; // 0x1060022 + field public static final int system_neutral1_400 = 17170467; // 0x1060023 + field public static final int system_neutral1_50 = 17170463; // 0x106001f + field public static final int system_neutral1_500 = 17170468; // 0x1060024 + field public static final int system_neutral1_600 = 17170469; // 0x1060025 + field public static final int system_neutral1_700 = 17170470; // 0x1060026 + field public static final int system_neutral1_800 = 17170471; // 0x1060027 + field public static final int system_neutral1_900 = 17170472; // 0x1060028 + field public static final int system_neutral2_0 = 17170474; // 0x106002a + field public static final int system_neutral2_10 = 17170475; // 0x106002b + field public static final int system_neutral2_100 = 17170477; // 0x106002d + field public static final int system_neutral2_1000 = 17170486; // 0x1060036 + field public static final int system_neutral2_200 = 17170478; // 0x106002e + field public static final int system_neutral2_300 = 17170479; // 0x106002f + field public static final int system_neutral2_400 = 17170480; // 0x1060030 + field public static final int system_neutral2_50 = 17170476; // 0x106002c + field public static final int system_neutral2_500 = 17170481; // 0x1060031 + field public static final int system_neutral2_600 = 17170482; // 0x1060032 + field public static final int system_neutral2_700 = 17170483; // 0x1060033 + field public static final int system_neutral2_800 = 17170484; // 0x1060034 + field public static final int system_neutral2_900 = 17170485; // 0x1060035 + field public static final int system_on_background_dark = 17170582; // 0x1060096 + field public static final int system_on_background_light = 17170539; // 0x106006b + field public static final int system_on_error_container_dark = 17170598; // 0x10600a6 + field public static final int system_on_error_container_light = 17170555; // 0x106007b + field public static final int system_on_error_dark = 17170596; // 0x10600a4 + field public static final int system_on_error_light = 17170553; // 0x1060079 + field public static final int system_on_primary_container_dark = 17170570; // 0x106008a + field public static final int system_on_primary_container_light = 17170527; // 0x106005f + field public static final int system_on_primary_dark = 17170572; // 0x106008c + field public static final int system_on_primary_fixed = 17170614; // 0x10600b6 + field public static final int system_on_primary_fixed_variant = 17170615; // 0x10600b7 + field public static final int system_on_primary_light = 17170529; // 0x1060061 + field public static final int system_on_secondary_container_dark = 17170574; // 0x106008e + field public static final int system_on_secondary_container_light = 17170531; // 0x1060063 + field public static final int system_on_secondary_dark = 17170576; // 0x1060090 + field public static final int system_on_secondary_fixed = 17170618; // 0x10600ba + field public static final int system_on_secondary_fixed_variant = 17170619; // 0x10600bb + field public static final int system_on_secondary_light = 17170533; // 0x1060065 + field public static final int system_on_surface_dark = 17170584; // 0x1060098 + field public static final int system_on_surface_disabled = 17170627; // 0x10600c3 + field public static final int system_on_surface_light = 17170541; // 0x106006d + field public static final int system_on_surface_variant_dark = 17170593; // 0x10600a1 + field public static final int system_on_surface_variant_light = 17170550; // 0x1060076 + field public static final int system_on_tertiary_container_dark = 17170578; // 0x1060092 + field public static final int system_on_tertiary_container_light = 17170535; // 0x1060067 + field public static final int system_on_tertiary_dark = 17170580; // 0x1060094 + field public static final int system_on_tertiary_fixed = 17170622; // 0x10600be + field public static final int system_on_tertiary_fixed_variant = 17170623; // 0x10600bf + field public static final int system_on_tertiary_light = 17170537; // 0x1060069 + field public static final int system_outline_dark = 17170594; // 0x10600a2 + field public static final int system_outline_disabled = 17170628; // 0x10600c4 + field public static final int system_outline_light = 17170551; // 0x1060077 + field public static final int system_outline_variant_dark = 17170625; // 0x10600c1 + field public static final int system_outline_variant_light = 17170624; // 0x10600c0 + field public static final int system_palette_key_color_neutral_dark = 17170610; // 0x10600b2 + field public static final int system_palette_key_color_neutral_light = 17170567; // 0x1060087 + field public static final int system_palette_key_color_neutral_variant_dark = 17170611; // 0x10600b3 + field public static final int system_palette_key_color_neutral_variant_light = 17170568; // 0x1060088 + field public static final int system_palette_key_color_primary_dark = 17170607; // 0x10600af + field public static final int system_palette_key_color_primary_light = 17170564; // 0x1060084 + field public static final int system_palette_key_color_secondary_dark = 17170608; // 0x10600b0 + field public static final int system_palette_key_color_secondary_light = 17170565; // 0x1060085 + field public static final int system_palette_key_color_tertiary_dark = 17170609; // 0x10600b1 + field public static final int system_palette_key_color_tertiary_light = 17170566; // 0x1060086 + field public static final int system_primary_container_dark = 17170569; // 0x1060089 + field public static final int system_primary_container_light = 17170526; // 0x106005e + field public static final int system_primary_dark = 17170571; // 0x106008b + field public static final int system_primary_fixed = 17170612; // 0x10600b4 + field public static final int system_primary_fixed_dim = 17170613; // 0x10600b5 + field public static final int system_primary_light = 17170528; // 0x1060060 + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_scrim_dark; + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_scrim_light; + field public static final int system_secondary_container_dark = 17170573; // 0x106008d + field public static final int system_secondary_container_light = 17170530; // 0x1060062 + field public static final int system_secondary_dark = 17170575; // 0x106008f + field public static final int system_secondary_fixed = 17170616; // 0x10600b8 + field public static final int system_secondary_fixed_dim = 17170617; // 0x10600b9 + field public static final int system_secondary_light = 17170532; // 0x1060064 + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_shadow_dark; + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_shadow_light; + field public static final int system_surface_bright_dark = 17170590; // 0x106009e + field public static final int system_surface_bright_light = 17170547; // 0x1060073 + field public static final int system_surface_container_dark = 17170587; // 0x106009b + field public static final int system_surface_container_high_dark = 17170588; // 0x106009c + field public static final int system_surface_container_high_light = 17170545; // 0x1060071 + field public static final int system_surface_container_highest_dark = 17170589; // 0x106009d + field public static final int system_surface_container_highest_light = 17170546; // 0x1060072 + field public static final int system_surface_container_light = 17170544; // 0x1060070 + field public static final int system_surface_container_low_dark = 17170585; // 0x1060099 + field public static final int system_surface_container_low_light = 17170542; // 0x106006e + field public static final int system_surface_container_lowest_dark = 17170586; // 0x106009a + field public static final int system_surface_container_lowest_light = 17170543; // 0x106006f + field public static final int system_surface_dark = 17170583; // 0x1060097 + field public static final int system_surface_dim_dark = 17170591; // 0x106009f + field public static final int system_surface_dim_light = 17170548; // 0x1060074 + field public static final int system_surface_disabled = 17170626; // 0x10600c2 + field public static final int system_surface_light = 17170540; // 0x106006c + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_surface_tint_dark; + field @FlaggedApi("android.os.material_colors_10_2024") public static final int system_surface_tint_light; + field public static final int system_surface_variant_dark = 17170592; // 0x10600a0 + field public static final int system_surface_variant_light = 17170549; // 0x1060075 + field public static final int system_tertiary_container_dark = 17170577; // 0x1060091 + field public static final int system_tertiary_container_light = 17170534; // 0x1060066 + field public static final int system_tertiary_dark = 17170579; // 0x1060093 + field public static final int system_tertiary_fixed = 17170620; // 0x10600bc + field public static final int system_tertiary_fixed_dim = 17170621; // 0x10600bd + field public static final int system_tertiary_light = 17170536; // 0x1060068 + field public static final int system_text_hint_inverse_dark = 17170606; // 0x10600ae + field public static final int system_text_hint_inverse_light = 17170563; // 0x1060083 + field public static final int system_text_primary_inverse_dark = 17170602; // 0x10600aa + field public static final int system_text_primary_inverse_disable_only_dark = 17170604; // 0x10600ac + field public static final int system_text_primary_inverse_disable_only_light = 17170561; // 0x1060081 + field public static final int system_text_primary_inverse_light = 17170559; // 0x106007f + field public static final int system_text_secondary_and_tertiary_inverse_dark = 17170603; // 0x10600ab + field public static final int system_text_secondary_and_tertiary_inverse_disabled_dark = 17170605; // 0x10600ad + field public static final int system_text_secondary_and_tertiary_inverse_disabled_light = 17170562; // 0x1060082 + field public static final int system_text_secondary_and_tertiary_inverse_light = 17170560; // 0x1060080 + field public static final int tab_indicator_text = 17170441; // 0x1060009 + field @Deprecated public static final int tertiary_text_dark = 17170448; // 0x1060010 + field @Deprecated public static final int tertiary_text_light = 17170449; // 0x1060011 + field public static final int transparent = 17170445; // 0x106000d + field public static final int white = 17170443; // 0x106000b + field public static final int widget_edittext_dark = 17170442; // 0x106000a + } + + public static final class R.dimen { + ctor public R.dimen(); + field public static final int app_icon_size = 17104896; // 0x1050000 + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveDefaultEffectDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveDefaultSpatialDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveFastEffectDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveFastSpatialDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveSlowEffectDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveSlowSpatialDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardDefaultEffectDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardDefaultSpatialDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardFastEffectDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardFastSpatialDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardSlowEffectDamping; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardSlowSpatialDamping; + field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusLarge; + field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusMedium; + field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusSmall; + field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusXlarge; + field @FlaggedApi("android.os.material_shape_tokens") public static final int config_shapeCornerRadiusXsmall; + field public static final int dialog_min_width_major = 17104899; // 0x1050003 + field public static final int dialog_min_width_minor = 17104900; // 0x1050004 + field public static final int notification_large_icon_height = 17104902; // 0x1050006 + field public static final int notification_large_icon_width = 17104901; // 0x1050005 + field public static final int system_app_widget_background_radius = 17104904; // 0x1050008 + field public static final int system_app_widget_inner_radius = 17104905; // 0x1050009 + field public static final int thumbnail_height = 17104897; // 0x1050001 + field public static final int thumbnail_width = 17104898; // 0x1050002 + } + + public static final class R.drawable { + ctor public R.drawable(); + field public static final int alert_dark_frame = 17301504; // 0x1080000 + field public static final int alert_light_frame = 17301505; // 0x1080001 + field public static final int arrow_down_float = 17301506; // 0x1080002 + field public static final int arrow_up_float = 17301507; // 0x1080003 + field public static final int bottom_bar = 17301658; // 0x108009a + field public static final int btn_default = 17301508; // 0x1080004 + field public static final int btn_default_small = 17301509; // 0x1080005 + field public static final int btn_dialog = 17301527; // 0x1080017 + field public static final int btn_dropdown = 17301510; // 0x1080006 + field public static final int btn_minus = 17301511; // 0x1080007 + field public static final int btn_plus = 17301512; // 0x1080008 + field public static final int btn_radio = 17301513; // 0x1080009 + field public static final int btn_star = 17301514; // 0x108000a + field public static final int btn_star_big_off = 17301515; // 0x108000b + field public static final int btn_star_big_on = 17301516; // 0x108000c + field public static final int button_onoff_indicator_off = 17301518; // 0x108000e + field public static final int button_onoff_indicator_on = 17301517; // 0x108000d + field public static final int checkbox_off_background = 17301519; // 0x108000f + field public static final int checkbox_on_background = 17301520; // 0x1080010 + field public static final int dark_header = 17301669; // 0x10800a5 + field public static final int dialog_frame = 17301521; // 0x1080011 + field public static final int dialog_holo_dark_frame = 17301682; // 0x10800b2 + field public static final int dialog_holo_light_frame = 17301683; // 0x10800b3 + field public static final int divider_horizontal_bright = 17301522; // 0x1080012 + field public static final int divider_horizontal_dark = 17301524; // 0x1080014 + field public static final int divider_horizontal_dim_dark = 17301525; // 0x1080015 + field public static final int divider_horizontal_textfield = 17301523; // 0x1080013 + field public static final int edit_text = 17301526; // 0x1080016 + field public static final int editbox_background = 17301528; // 0x1080018 + field public static final int editbox_background_normal = 17301529; // 0x1080019 + field public static final int editbox_dropdown_dark_frame = 17301530; // 0x108001a + field public static final int editbox_dropdown_light_frame = 17301531; // 0x108001b + field public static final int gallery_thumb = 17301532; // 0x108001c + field public static final int ic_btn_speak_now = 17301668; // 0x10800a4 + field public static final int ic_delete = 17301533; // 0x108001d + field public static final int ic_dialog_alert = 17301543; // 0x1080027 + field public static final int ic_dialog_dialer = 17301544; // 0x1080028 + field public static final int ic_dialog_email = 17301545; // 0x1080029 + field public static final int ic_dialog_info = 17301659; // 0x108009b + field public static final int ic_dialog_map = 17301546; // 0x108002a + field public static final int ic_input_add = 17301547; // 0x108002b + field public static final int ic_input_delete = 17301548; // 0x108002c + field public static final int ic_input_get = 17301549; // 0x108002d + field public static final int ic_lock_idle_alarm = 17301550; // 0x108002e + field public static final int ic_lock_idle_charging = 17301534; // 0x108001e + field public static final int ic_lock_idle_lock = 17301535; // 0x108001f + field public static final int ic_lock_idle_low_battery = 17301536; // 0x1080020 + field public static final int ic_lock_lock = 17301551; // 0x108002f + field public static final int ic_lock_power_off = 17301552; // 0x1080030 + field public static final int ic_lock_silent_mode = 17301553; // 0x1080031 + field public static final int ic_lock_silent_mode_off = 17301554; // 0x1080032 + field public static final int ic_media_ff = 17301537; // 0x1080021 + field public static final int ic_media_next = 17301538; // 0x1080022 + field public static final int ic_media_pause = 17301539; // 0x1080023 + field public static final int ic_media_play = 17301540; // 0x1080024 + field public static final int ic_media_previous = 17301541; // 0x1080025 + field public static final int ic_media_rew = 17301542; // 0x1080026 + field public static final int ic_menu_add = 17301555; // 0x1080033 + field public static final int ic_menu_agenda = 17301556; // 0x1080034 + field public static final int ic_menu_always_landscape_portrait = 17301557; // 0x1080035 + field public static final int ic_menu_call = 17301558; // 0x1080036 + field public static final int ic_menu_camera = 17301559; // 0x1080037 + field public static final int ic_menu_close_clear_cancel = 17301560; // 0x1080038 + field public static final int ic_menu_compass = 17301561; // 0x1080039 + field public static final int ic_menu_crop = 17301562; // 0x108003a + field public static final int ic_menu_day = 17301563; // 0x108003b + field public static final int ic_menu_delete = 17301564; // 0x108003c + field public static final int ic_menu_directions = 17301565; // 0x108003d + field public static final int ic_menu_edit = 17301566; // 0x108003e + field public static final int ic_menu_gallery = 17301567; // 0x108003f + field public static final int ic_menu_help = 17301568; // 0x1080040 + field public static final int ic_menu_info_details = 17301569; // 0x1080041 + field public static final int ic_menu_manage = 17301570; // 0x1080042 + field public static final int ic_menu_mapmode = 17301571; // 0x1080043 + field public static final int ic_menu_month = 17301572; // 0x1080044 + field public static final int ic_menu_more = 17301573; // 0x1080045 + field public static final int ic_menu_my_calendar = 17301574; // 0x1080046 + field public static final int ic_menu_mylocation = 17301575; // 0x1080047 + field public static final int ic_menu_myplaces = 17301576; // 0x1080048 + field public static final int ic_menu_preferences = 17301577; // 0x1080049 + field public static final int ic_menu_recent_history = 17301578; // 0x108004a + field public static final int ic_menu_report_image = 17301579; // 0x108004b + field public static final int ic_menu_revert = 17301580; // 0x108004c + field public static final int ic_menu_rotate = 17301581; // 0x108004d + field public static final int ic_menu_save = 17301582; // 0x108004e + field public static final int ic_menu_search = 17301583; // 0x108004f + field public static final int ic_menu_send = 17301584; // 0x1080050 + field public static final int ic_menu_set_as = 17301585; // 0x1080051 + field public static final int ic_menu_share = 17301586; // 0x1080052 + field public static final int ic_menu_slideshow = 17301587; // 0x1080053 + field public static final int ic_menu_sort_alphabetically = 17301660; // 0x108009c + field public static final int ic_menu_sort_by_size = 17301661; // 0x108009d + field public static final int ic_menu_today = 17301588; // 0x1080054 + field public static final int ic_menu_upload = 17301589; // 0x1080055 + field public static final int ic_menu_upload_you_tube = 17301590; // 0x1080056 + field public static final int ic_menu_view = 17301591; // 0x1080057 + field public static final int ic_menu_week = 17301592; // 0x1080058 + field public static final int ic_menu_zoom = 17301593; // 0x1080059 + field public static final int ic_notification_clear_all = 17301594; // 0x108005a + field public static final int ic_notification_overlay = 17301595; // 0x108005b + field public static final int ic_partial_secure = 17301596; // 0x108005c + field public static final int ic_popup_disk_full = 17301597; // 0x108005d + field public static final int ic_popup_reminder = 17301598; // 0x108005e + field public static final int ic_popup_sync = 17301599; // 0x108005f + field public static final int ic_search_category_default = 17301600; // 0x1080060 + field public static final int ic_secure = 17301601; // 0x1080061 + field public static final int list_selector_background = 17301602; // 0x1080062 + field public static final int menu_frame = 17301603; // 0x1080063 + field public static final int menu_full_frame = 17301604; // 0x1080064 + field public static final int menuitem_background = 17301605; // 0x1080065 + field public static final int picture_frame = 17301606; // 0x1080066 + field public static final int presence_audio_away = 17301679; // 0x10800af + field public static final int presence_audio_busy = 17301680; // 0x10800b0 + field public static final int presence_audio_online = 17301681; // 0x10800b1 + field public static final int presence_away = 17301607; // 0x1080067 + field public static final int presence_busy = 17301608; // 0x1080068 + field public static final int presence_invisible = 17301609; // 0x1080069 + field public static final int presence_offline = 17301610; // 0x108006a + field public static final int presence_online = 17301611; // 0x108006b + field public static final int presence_video_away = 17301676; // 0x10800ac + field public static final int presence_video_busy = 17301677; // 0x10800ad + field public static final int presence_video_online = 17301678; // 0x10800ae + field public static final int progress_horizontal = 17301612; // 0x108006c + field public static final int progress_indeterminate_horizontal = 17301613; // 0x108006d + field public static final int radiobutton_off_background = 17301614; // 0x108006e + field public static final int radiobutton_on_background = 17301615; // 0x108006f + field public static final int screen_background_dark = 17301656; // 0x1080098 + field public static final int screen_background_dark_transparent = 17301673; // 0x10800a9 + field public static final int screen_background_light = 17301657; // 0x1080099 + field public static final int screen_background_light_transparent = 17301674; // 0x10800aa + field public static final int spinner_background = 17301616; // 0x1080070 + field public static final int spinner_dropdown_background = 17301617; // 0x1080071 + field public static final int star_big_off = 17301619; // 0x1080073 + field public static final int star_big_on = 17301618; // 0x1080072 + field public static final int star_off = 17301621; // 0x1080075 + field public static final int star_on = 17301620; // 0x1080074 + field public static final int stat_notify_call_mute = 17301622; // 0x1080076 + field public static final int stat_notify_chat = 17301623; // 0x1080077 + field public static final int stat_notify_error = 17301624; // 0x1080078 + field public static final int stat_notify_missed_call = 17301631; // 0x108007f + field public static final int stat_notify_more = 17301625; // 0x1080079 + field public static final int stat_notify_sdcard = 17301626; // 0x108007a + field public static final int stat_notify_sdcard_prepare = 17301675; // 0x10800ab + field public static final int stat_notify_sdcard_usb = 17301627; // 0x108007b + field public static final int stat_notify_sync = 17301628; // 0x108007c + field public static final int stat_notify_sync_noanim = 17301629; // 0x108007d + field public static final int stat_notify_voicemail = 17301630; // 0x108007e + field public static final int stat_sys_data_bluetooth = 17301632; // 0x1080080 + field public static final int stat_sys_download = 17301633; // 0x1080081 + field public static final int stat_sys_download_done = 17301634; // 0x1080082 + field public static final int stat_sys_headset = 17301635; // 0x1080083 + field @Deprecated public static final int stat_sys_phone_call = 17301636; // 0x1080084 + field @Deprecated public static final int stat_sys_phone_call_forward = 17301637; // 0x1080085 + field @Deprecated public static final int stat_sys_phone_call_on_hold = 17301638; // 0x1080086 + field public static final int stat_sys_speakerphone = 17301639; // 0x1080087 + field public static final int stat_sys_upload = 17301640; // 0x1080088 + field public static final int stat_sys_upload_done = 17301641; // 0x1080089 + field @Deprecated public static final int stat_sys_vp_phone_call = 17301671; // 0x10800a7 + field @Deprecated public static final int stat_sys_vp_phone_call_on_hold = 17301672; // 0x10800a8 + field public static final int stat_sys_warning = 17301642; // 0x108008a + field public static final int status_bar_item_app_background = 17301643; // 0x108008b + field public static final int status_bar_item_background = 17301644; // 0x108008c + field public static final int sym_action_call = 17301645; // 0x108008d + field public static final int sym_action_chat = 17301646; // 0x108008e + field public static final int sym_action_email = 17301647; // 0x108008f + field public static final int sym_call_incoming = 17301648; // 0x1080090 + field public static final int sym_call_missed = 17301649; // 0x1080091 + field public static final int sym_call_outgoing = 17301650; // 0x1080092 + field public static final int sym_contact_card = 17301652; // 0x1080094 + field public static final int sym_def_app_icon = 17301651; // 0x1080093 + field public static final int title_bar = 17301653; // 0x1080095 + field public static final int title_bar_tall = 17301670; // 0x10800a6 + field public static final int toast_frame = 17301654; // 0x1080096 + field public static final int zoom_plate = 17301655; // 0x1080097 + } + + public static final class R.fraction { + ctor public R.fraction(); + } + + public static final class R.id { + ctor public R.id(); + field public static final int accessibilityActionContextClick = 16908348; // 0x102003c + field public static final int accessibilityActionDragCancel = 16908375; // 0x1020057 + field public static final int accessibilityActionDragDrop = 16908374; // 0x1020056 + field public static final int accessibilityActionDragStart = 16908373; // 0x1020055 + field public static final int accessibilityActionHideTooltip = 16908357; // 0x1020045 + field public static final int accessibilityActionImeEnter = 16908372; // 0x1020054 + field public static final int accessibilityActionMoveWindow = 16908354; // 0x1020042 + field public static final int accessibilityActionPageDown = 16908359; // 0x1020047 + field public static final int accessibilityActionPageLeft = 16908360; // 0x1020048 + field public static final int accessibilityActionPageRight = 16908361; // 0x1020049 + field public static final int accessibilityActionPageUp = 16908358; // 0x1020046 + field public static final int accessibilityActionPressAndHold = 16908362; // 0x102004a + field public static final int accessibilityActionScrollDown = 16908346; // 0x102003a + field public static final int accessibilityActionScrollInDirection = 16908382; // 0x102005e + field public static final int accessibilityActionScrollLeft = 16908345; // 0x1020039 + field public static final int accessibilityActionScrollRight = 16908347; // 0x102003b + field public static final int accessibilityActionScrollToPosition = 16908343; // 0x1020037 + field public static final int accessibilityActionScrollUp = 16908344; // 0x1020038 + field public static final int accessibilityActionSetProgress = 16908349; // 0x102003d + field public static final int accessibilityActionShowOnScreen = 16908342; // 0x1020036 + field public static final int accessibilityActionShowTextSuggestions = 16908376; // 0x1020058 + field public static final int accessibilityActionShowTooltip = 16908356; // 0x1020044 + field public static final int accessibilitySystemActionBack = 16908363; // 0x102004b + field public static final int accessibilitySystemActionHome = 16908364; // 0x102004c + field public static final int accessibilitySystemActionLockScreen = 16908370; // 0x1020052 + field public static final int accessibilitySystemActionNotifications = 16908366; // 0x102004e + field public static final int accessibilitySystemActionPowerDialog = 16908368; // 0x1020050 + field public static final int accessibilitySystemActionQuickSettings = 16908367; // 0x102004f + field public static final int accessibilitySystemActionRecents = 16908365; // 0x102004d + field public static final int accessibilitySystemActionTakeScreenshot = 16908371; // 0x1020053 + field public static final int accessibilitySystemActionToggleSplitScreen = 16908369; // 0x1020051 + field public static final int addToDictionary = 16908330; // 0x102002a + field public static final int autofill = 16908355; // 0x1020043 + field public static final int background = 16908288; // 0x1020000 + field public static final int bold = 16908379; // 0x102005b + field public static final int button1 = 16908313; // 0x1020019 + field public static final int button2 = 16908314; // 0x102001a + field public static final int button3 = 16908315; // 0x102001b + field public static final int candidatesArea = 16908317; // 0x102001d + field public static final int checkbox = 16908289; // 0x1020001 + field public static final int closeButton = 16908327; // 0x1020027 + field public static final int content = 16908290; // 0x1020002 + field public static final int copy = 16908321; // 0x1020021 + field public static final int copyUrl = 16908323; // 0x1020023 + field public static final int custom = 16908331; // 0x102002b + field public static final int cut = 16908320; // 0x1020020 + field public static final int edit = 16908291; // 0x1020003 + field public static final int empty = 16908292; // 0x1020004 + field public static final int extractArea = 16908316; // 0x102001c + field public static final int hint = 16908293; // 0x1020005 + field public static final int home = 16908332; // 0x102002c + field public static final int icon = 16908294; // 0x1020006 + field public static final int icon1 = 16908295; // 0x1020007 + field public static final int icon2 = 16908296; // 0x1020008 + field public static final int icon_frame = 16908350; // 0x102003e + field public static final int input = 16908297; // 0x1020009 + field public static final int inputArea = 16908318; // 0x102001e + field public static final int inputExtractAccessories = 16908378; // 0x102005a + field public static final int inputExtractAction = 16908377; // 0x1020059 + field public static final int inputExtractEditText = 16908325; // 0x1020025 + field public static final int italic = 16908380; // 0x102005c + field @Deprecated public static final int keyboardView = 16908326; // 0x1020026 + field public static final int list = 16908298; // 0x102000a + field public static final int list_container = 16908351; // 0x102003f + field public static final int mask = 16908334; // 0x102002e + field public static final int message = 16908299; // 0x102000b + field public static final int navigationBarBackground = 16908336; // 0x1020030 + field public static final int paste = 16908322; // 0x1020022 + field public static final int pasteAsPlainText = 16908337; // 0x1020031 + field public static final int primary = 16908300; // 0x102000c + field public static final int progress = 16908301; // 0x102000d + field public static final int redo = 16908339; // 0x1020033 + field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final int remoteViewsMetricsId; + field public static final int replaceText = 16908340; // 0x1020034 + field public static final int secondaryProgress = 16908303; // 0x102000f + field public static final int selectAll = 16908319; // 0x102001f + field public static final int selectTextMode = 16908333; // 0x102002d + field public static final int selectedIcon = 16908302; // 0x102000e + field public static final int shareText = 16908341; // 0x1020035 + field public static final int startSelectingText = 16908328; // 0x1020028 + field public static final int statusBarBackground = 16908335; // 0x102002f + field public static final int stopSelectingText = 16908329; // 0x1020029 + field public static final int summary = 16908304; // 0x1020010 + field public static final int switchInputMethod = 16908324; // 0x1020024 + field public static final int switch_widget = 16908352; // 0x1020040 + field public static final int tabcontent = 16908305; // 0x1020011 + field public static final int tabhost = 16908306; // 0x1020012 + field public static final int tabs = 16908307; // 0x1020013 + field public static final int text1 = 16908308; // 0x1020014 + field public static final int text2 = 16908309; // 0x1020015 + field public static final int textAssist = 16908353; // 0x1020041 + field public static final int title = 16908310; // 0x1020016 + field public static final int toggle = 16908311; // 0x1020017 + field public static final int underline = 16908381; // 0x102005d + field public static final int undo = 16908338; // 0x1020032 + field public static final int widget_frame = 16908312; // 0x1020018 + } + + public static final class R.integer { + ctor public R.integer(); + field public static final int config_longAnimTime = 17694722; // 0x10e0002 + field public static final int config_mediumAnimTime = 17694721; // 0x10e0001 + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveDefaultEffectStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveDefaultSpatialStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveFastEffectStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveFastSpatialStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveSlowEffectStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionExpressiveSlowSpatialStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardDefaultEffectStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardDefaultSpatialStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardFastEffectStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardFastSpatialStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardSlowEffectStiffness; + field @FlaggedApi("android.os.material_motion_tokens") public static final int config_motionStandardSlowSpatialStiffness; + field public static final int config_shortAnimTime = 17694720; // 0x10e0000 + field @Deprecated public static final int status_bar_notification_info_maxnum = 17694723; // 0x10e0003 + } + + public static final class R.interpolator { + ctor public R.interpolator(); + field public static final int accelerate_cubic = 17563650; // 0x10c0002 + field public static final int accelerate_decelerate = 17563654; // 0x10c0006 + field public static final int accelerate_quad = 17563648; // 0x10c0000 + field public static final int accelerate_quint = 17563652; // 0x10c0004 + field public static final int anticipate = 17563655; // 0x10c0007 + field public static final int anticipate_overshoot = 17563657; // 0x10c0009 + field public static final int bounce = 17563658; // 0x10c000a + field public static final int cycle = 17563660; // 0x10c000c + field public static final int decelerate_cubic = 17563651; // 0x10c0003 + field public static final int decelerate_quad = 17563649; // 0x10c0001 + field public static final int decelerate_quint = 17563653; // 0x10c0005 + field public static final int fast_out_extra_slow_in = 17563674; // 0x10c001a + field public static final int fast_out_linear_in = 17563663; // 0x10c000f + field public static final int fast_out_slow_in = 17563661; // 0x10c000d + field public static final int linear = 17563659; // 0x10c000b + field public static final int linear_out_slow_in = 17563662; // 0x10c000e + field public static final int overshoot = 17563656; // 0x10c0008 + } + + public static final class R.layout { + ctor public R.layout(); + field public static final int activity_list_item = 17367040; // 0x1090000 + field public static final int browser_link_context_header = 17367054; // 0x109000e + field public static final int expandable_list_content = 17367041; // 0x1090001 + field public static final int list_content = 17367060; // 0x1090014 + field public static final int preference_category = 17367042; // 0x1090002 + field public static final int select_dialog_item = 17367057; // 0x1090011 + field public static final int select_dialog_multichoice = 17367059; // 0x1090013 + field public static final int select_dialog_singlechoice = 17367058; // 0x1090012 + field public static final int simple_dropdown_item_1line = 17367050; // 0x109000a + field public static final int simple_expandable_list_item_1 = 17367046; // 0x1090006 + field public static final int simple_expandable_list_item_2 = 17367047; // 0x1090007 + field public static final int simple_gallery_item = 17367051; // 0x109000b + field public static final int simple_list_item_1 = 17367043; // 0x1090003 + field public static final int simple_list_item_2 = 17367044; // 0x1090004 + field public static final int simple_list_item_activated_1 = 17367062; // 0x1090016 + field public static final int simple_list_item_activated_2 = 17367063; // 0x1090017 + field public static final int simple_list_item_checked = 17367045; // 0x1090005 + field public static final int simple_list_item_multiple_choice = 17367056; // 0x1090010 + field public static final int simple_list_item_single_choice = 17367055; // 0x109000f + field public static final int simple_selectable_list_item = 17367061; // 0x1090015 + field public static final int simple_spinner_dropdown_item = 17367049; // 0x1090009 + field public static final int simple_spinner_item = 17367048; // 0x1090008 + field public static final int test_list_item = 17367052; // 0x109000c + field public static final int two_line_list_item = 17367053; // 0x109000d + } + + public static final class R.menu { + ctor public R.menu(); + } + + public static final class R.mipmap { + ctor public R.mipmap(); + field public static final int sym_def_app_icon = 17629184; // 0x10d0000 + } + + public static final class R.plurals { + ctor public R.plurals(); + } + + public static final class R.raw { + ctor public R.raw(); + } + + public static final class R.string { + ctor public R.string(); + field public static final int VideoView_error_button = 17039376; // 0x1040010 + field public static final int VideoView_error_text_invalid_progressive_playback = 17039381; // 0x1040015 + field public static final int VideoView_error_text_unknown = 17039377; // 0x1040011 + field public static final int VideoView_error_title = 17039378; // 0x1040012 + field public static final int autofill = 17039386; // 0x104001a + field public static final int cancel = 17039360; // 0x1040000 + field public static final int copy = 17039361; // 0x1040001 + field public static final int copyUrl = 17039362; // 0x1040002 + field public static final int cut = 17039363; // 0x1040003 + field public static final int defaultMsisdnAlphaTag = 17039365; // 0x1040005 + field public static final int defaultVoiceMailAlphaTag = 17039364; // 0x1040004 + field public static final int dialog_alert_title = 17039380; // 0x1040014 + field public static final int emptyPhoneNumber = 17039366; // 0x1040006 + field public static final int fingerprint_icon_content_description = 17039384; // 0x1040018 + field public static final int httpErrorBadUrl = 17039367; // 0x1040007 + field public static final int httpErrorUnsupportedScheme = 17039368; // 0x1040008 + field @Deprecated public static final int no = 17039369; // 0x1040009 + field public static final int ok = 17039370; // 0x104000a + field public static final int paste = 17039371; // 0x104000b + field public static final int paste_as_plain_text = 17039385; // 0x1040019 + field public static final int search_go = 17039372; // 0x104000c + field public static final int selectAll = 17039373; // 0x104000d + field public static final int selectTextMode = 17039382; // 0x1040016 + field @Deprecated public static final int status_bar_notification_info_overflow = 17039383; // 0x1040017 + field public static final int unknownName = 17039374; // 0x104000e + field public static final int untitled = 17039375; // 0x104000f + field @Deprecated public static final int yes = 17039379; // 0x1040013 + } + + public static final class R.style { + ctor public R.style(); + field public static final int Animation = 16973824; // 0x1030000 + field public static final int Animation_Activity = 16973825; // 0x1030001 + field public static final int Animation_Dialog = 16973826; // 0x1030002 + field public static final int Animation_InputMethod = 16973910; // 0x1030056 + field public static final int Animation_Toast = 16973828; // 0x1030004 + field public static final int Animation_Translucent = 16973827; // 0x1030003 + field public static final int DeviceDefault_ButtonBar = 16974287; // 0x10301cf + field public static final int DeviceDefault_ButtonBar_AlertDialog = 16974288; // 0x10301d0 + field public static final int DeviceDefault_Light_ButtonBar = 16974290; // 0x10301d2 + field public static final int DeviceDefault_Light_ButtonBar_AlertDialog = 16974291; // 0x10301d3 + field public static final int DeviceDefault_Light_SegmentedButton = 16974292; // 0x10301d4 + field public static final int DeviceDefault_SegmentedButton = 16974289; // 0x10301d1 + field public static final int Holo_ButtonBar = 16974053; // 0x10300e5 + field public static final int Holo_ButtonBar_AlertDialog = 16974055; // 0x10300e7 + field public static final int Holo_Light_ButtonBar = 16974054; // 0x10300e6 + field public static final int Holo_Light_ButtonBar_AlertDialog = 16974056; // 0x10300e8 + field public static final int Holo_Light_SegmentedButton = 16974058; // 0x10300ea + field public static final int Holo_SegmentedButton = 16974057; // 0x10300e9 + field public static final int MediaButton = 16973879; // 0x1030037 + field public static final int MediaButton_Ffwd = 16973883; // 0x103003b + field public static final int MediaButton_Next = 16973881; // 0x1030039 + field public static final int MediaButton_Pause = 16973885; // 0x103003d + field public static final int MediaButton_Play = 16973882; // 0x103003a + field public static final int MediaButton_Previous = 16973880; // 0x1030038 + field public static final int MediaButton_Rew = 16973884; // 0x103003c + field public static final int TextAppearance = 16973886; // 0x103003e + field public static final int TextAppearance_DeviceDefault = 16974253; // 0x10301ad + field public static final int TextAppearance_DeviceDefault_DialogWindowTitle = 16974264; // 0x10301b8 + field public static final int TextAppearance_DeviceDefault_Headline = 16974565; // 0x10302e5 + field public static final int TextAppearance_DeviceDefault_Inverse = 16974254; // 0x10301ae + field public static final int TextAppearance_DeviceDefault_Large = 16974255; // 0x10301af + field public static final int TextAppearance_DeviceDefault_Large_Inverse = 16974256; // 0x10301b0 + field public static final int TextAppearance_DeviceDefault_Medium = 16974257; // 0x10301b1 + field public static final int TextAppearance_DeviceDefault_Medium_Inverse = 16974258; // 0x10301b2 + field public static final int TextAppearance_DeviceDefault_SearchResult_Subtitle = 16974262; // 0x10301b6 + field public static final int TextAppearance_DeviceDefault_SearchResult_Title = 16974261; // 0x10301b5 + field public static final int TextAppearance_DeviceDefault_Small = 16974259; // 0x10301b3 + field public static final int TextAppearance_DeviceDefault_Small_Inverse = 16974260; // 0x10301b4 + field public static final int TextAppearance_DeviceDefault_Widget = 16974265; // 0x10301b9 + field public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Menu = 16974286; // 0x10301ce + field public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Subtitle = 16974279; // 0x10301c7 + field @Deprecated public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Subtitle_Inverse = 16974283; // 0x10301cb + field public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Title = 16974278; // 0x10301c6 + field @Deprecated public static final int TextAppearance_DeviceDefault_Widget_ActionBar_Title_Inverse = 16974282; // 0x10301ca + field public static final int TextAppearance_DeviceDefault_Widget_ActionMode_Subtitle = 16974281; // 0x10301c9 + field @Deprecated public static final int TextAppearance_DeviceDefault_Widget_ActionMode_Subtitle_Inverse = 16974285; // 0x10301cd + field public static final int TextAppearance_DeviceDefault_Widget_ActionMode_Title = 16974280; // 0x10301c8 + field @Deprecated public static final int TextAppearance_DeviceDefault_Widget_ActionMode_Title_Inverse = 16974284; // 0x10301cc + field public static final int TextAppearance_DeviceDefault_Widget_Button = 16974266; // 0x10301ba + field public static final int TextAppearance_DeviceDefault_Widget_DropDownHint = 16974271; // 0x10301bf + field public static final int TextAppearance_DeviceDefault_Widget_DropDownItem = 16974272; // 0x10301c0 + field public static final int TextAppearance_DeviceDefault_Widget_EditText = 16974274; // 0x10301c2 + field public static final int TextAppearance_DeviceDefault_Widget_IconMenu_Item = 16974267; // 0x10301bb + field public static final int TextAppearance_DeviceDefault_Widget_PopupMenu = 16974275; // 0x10301c3 + field public static final int TextAppearance_DeviceDefault_Widget_PopupMenu_Large = 16974276; // 0x10301c4 + field public static final int TextAppearance_DeviceDefault_Widget_PopupMenu_Small = 16974277; // 0x10301c5 + field public static final int TextAppearance_DeviceDefault_Widget_TabWidget = 16974268; // 0x10301bc + field public static final int TextAppearance_DeviceDefault_Widget_TextView = 16974269; // 0x10301bd + field public static final int TextAppearance_DeviceDefault_Widget_TextView_PopupMenu = 16974270; // 0x10301be + field public static final int TextAppearance_DeviceDefault_Widget_TextView_SpinnerItem = 16974273; // 0x10301c1 + field public static final int TextAppearance_DeviceDefault_WindowTitle = 16974263; // 0x10301b7 + field public static final int TextAppearance_DialogWindowTitle = 16973889; // 0x1030041 + field public static final int TextAppearance_Holo = 16974075; // 0x10300fb + field public static final int TextAppearance_Holo_DialogWindowTitle = 16974103; // 0x1030117 + field public static final int TextAppearance_Holo_Inverse = 16974076; // 0x10300fc + field public static final int TextAppearance_Holo_Large = 16974077; // 0x10300fd + field public static final int TextAppearance_Holo_Large_Inverse = 16974078; // 0x10300fe + field public static final int TextAppearance_Holo_Medium = 16974079; // 0x10300ff + field public static final int TextAppearance_Holo_Medium_Inverse = 16974080; // 0x1030100 + field public static final int TextAppearance_Holo_SearchResult_Subtitle = 16974084; // 0x1030104 + field public static final int TextAppearance_Holo_SearchResult_Title = 16974083; // 0x1030103 + field public static final int TextAppearance_Holo_Small = 16974081; // 0x1030101 + field public static final int TextAppearance_Holo_Small_Inverse = 16974082; // 0x1030102 + field public static final int TextAppearance_Holo_Widget = 16974085; // 0x1030105 + field public static final int TextAppearance_Holo_Widget_ActionBar_Menu = 16974112; // 0x1030120 + field public static final int TextAppearance_Holo_Widget_ActionBar_Subtitle = 16974099; // 0x1030113 + field public static final int TextAppearance_Holo_Widget_ActionBar_Subtitle_Inverse = 16974109; // 0x103011d + field public static final int TextAppearance_Holo_Widget_ActionBar_Title = 16974098; // 0x1030112 + field public static final int TextAppearance_Holo_Widget_ActionBar_Title_Inverse = 16974108; // 0x103011c + field public static final int TextAppearance_Holo_Widget_ActionMode_Subtitle = 16974101; // 0x1030115 + field public static final int TextAppearance_Holo_Widget_ActionMode_Subtitle_Inverse = 16974111; // 0x103011f + field public static final int TextAppearance_Holo_Widget_ActionMode_Title = 16974100; // 0x1030114 + field public static final int TextAppearance_Holo_Widget_ActionMode_Title_Inverse = 16974110; // 0x103011e + field public static final int TextAppearance_Holo_Widget_Button = 16974086; // 0x1030106 + field public static final int TextAppearance_Holo_Widget_DropDownHint = 16974091; // 0x103010b + field public static final int TextAppearance_Holo_Widget_DropDownItem = 16974092; // 0x103010c + field public static final int TextAppearance_Holo_Widget_EditText = 16974094; // 0x103010e + field public static final int TextAppearance_Holo_Widget_IconMenu_Item = 16974087; // 0x1030107 + field public static final int TextAppearance_Holo_Widget_PopupMenu = 16974095; // 0x103010f + field public static final int TextAppearance_Holo_Widget_PopupMenu_Large = 16974096; // 0x1030110 + field public static final int TextAppearance_Holo_Widget_PopupMenu_Small = 16974097; // 0x1030111 + field public static final int TextAppearance_Holo_Widget_TabWidget = 16974088; // 0x1030108 + field public static final int TextAppearance_Holo_Widget_TextView = 16974089; // 0x1030109 + field public static final int TextAppearance_Holo_Widget_TextView_PopupMenu = 16974090; // 0x103010a + field public static final int TextAppearance_Holo_Widget_TextView_SpinnerItem = 16974093; // 0x103010d + field public static final int TextAppearance_Holo_WindowTitle = 16974102; // 0x1030116 + field public static final int TextAppearance_Inverse = 16973887; // 0x103003f + field public static final int TextAppearance_Large = 16973890; // 0x1030042 + field public static final int TextAppearance_Large_Inverse = 16973891; // 0x1030043 + field public static final int TextAppearance_Material = 16974317; // 0x10301ed + field public static final int TextAppearance_Material_Body1 = 16974320; // 0x10301f0 + field public static final int TextAppearance_Material_Body2 = 16974319; // 0x10301ef + field public static final int TextAppearance_Material_Button = 16974318; // 0x10301ee + field public static final int TextAppearance_Material_Caption = 16974321; // 0x10301f1 + field public static final int TextAppearance_Material_DialogWindowTitle = 16974322; // 0x10301f2 + field public static final int TextAppearance_Material_Display1 = 16974326; // 0x10301f6 + field public static final int TextAppearance_Material_Display2 = 16974325; // 0x10301f5 + field public static final int TextAppearance_Material_Display3 = 16974324; // 0x10301f4 + field public static final int TextAppearance_Material_Display4 = 16974323; // 0x10301f3 + field public static final int TextAppearance_Material_Headline = 16974327; // 0x10301f7 + field public static final int TextAppearance_Material_Inverse = 16974328; // 0x10301f8 + field public static final int TextAppearance_Material_Large = 16974329; // 0x10301f9 + field public static final int TextAppearance_Material_Large_Inverse = 16974330; // 0x10301fa + field public static final int TextAppearance_Material_Medium = 16974331; // 0x10301fb + field public static final int TextAppearance_Material_Medium_Inverse = 16974332; // 0x10301fc + field public static final int TextAppearance_Material_Menu = 16974333; // 0x10301fd + field public static final int TextAppearance_Material_Notification = 16974334; // 0x10301fe + field public static final int TextAppearance_Material_Notification_Emphasis = 16974335; // 0x10301ff + field public static final int TextAppearance_Material_Notification_Info = 16974336; // 0x1030200 + field public static final int TextAppearance_Material_Notification_Line2 = 16974337; // 0x1030201 + field public static final int TextAppearance_Material_Notification_Time = 16974338; // 0x1030202 + field public static final int TextAppearance_Material_Notification_Title = 16974339; // 0x1030203 + field public static final int TextAppearance_Material_SearchResult_Subtitle = 16974340; // 0x1030204 + field public static final int TextAppearance_Material_SearchResult_Title = 16974341; // 0x1030205 + field public static final int TextAppearance_Material_Small = 16974342; // 0x1030206 + field public static final int TextAppearance_Material_Small_Inverse = 16974343; // 0x1030207 + field public static final int TextAppearance_Material_Subhead = 16974344; // 0x1030208 + field public static final int TextAppearance_Material_Title = 16974345; // 0x1030209 + field public static final int TextAppearance_Material_Widget = 16974347; // 0x103020b + field public static final int TextAppearance_Material_Widget_ActionBar_Menu = 16974348; // 0x103020c + field public static final int TextAppearance_Material_Widget_ActionBar_Subtitle = 16974349; // 0x103020d + field public static final int TextAppearance_Material_Widget_ActionBar_Subtitle_Inverse = 16974350; // 0x103020e + field public static final int TextAppearance_Material_Widget_ActionBar_Title = 16974351; // 0x103020f + field public static final int TextAppearance_Material_Widget_ActionBar_Title_Inverse = 16974352; // 0x1030210 + field public static final int TextAppearance_Material_Widget_ActionMode_Subtitle = 16974353; // 0x1030211 + field public static final int TextAppearance_Material_Widget_ActionMode_Subtitle_Inverse = 16974354; // 0x1030212 + field public static final int TextAppearance_Material_Widget_ActionMode_Title = 16974355; // 0x1030213 + field public static final int TextAppearance_Material_Widget_ActionMode_Title_Inverse = 16974356; // 0x1030214 + field public static final int TextAppearance_Material_Widget_Button = 16974357; // 0x1030215 + field public static final int TextAppearance_Material_Widget_Button_Borderless_Colored = 16974559; // 0x10302df + field public static final int TextAppearance_Material_Widget_Button_Colored = 16974558; // 0x10302de + field public static final int TextAppearance_Material_Widget_Button_Inverse = 16974548; // 0x10302d4 + field public static final int TextAppearance_Material_Widget_DropDownHint = 16974358; // 0x1030216 + field public static final int TextAppearance_Material_Widget_DropDownItem = 16974359; // 0x1030217 + field public static final int TextAppearance_Material_Widget_EditText = 16974360; // 0x1030218 + field public static final int TextAppearance_Material_Widget_IconMenu_Item = 16974361; // 0x1030219 + field public static final int TextAppearance_Material_Widget_PopupMenu = 16974362; // 0x103021a + field public static final int TextAppearance_Material_Widget_PopupMenu_Large = 16974363; // 0x103021b + field public static final int TextAppearance_Material_Widget_PopupMenu_Small = 16974364; // 0x103021c + field public static final int TextAppearance_Material_Widget_TabWidget = 16974365; // 0x103021d + field public static final int TextAppearance_Material_Widget_TextView = 16974366; // 0x103021e + field public static final int TextAppearance_Material_Widget_TextView_PopupMenu = 16974367; // 0x103021f + field public static final int TextAppearance_Material_Widget_TextView_SpinnerItem = 16974368; // 0x1030220 + field public static final int TextAppearance_Material_Widget_Toolbar_Subtitle = 16974369; // 0x1030221 + field public static final int TextAppearance_Material_Widget_Toolbar_Title = 16974370; // 0x1030222 + field public static final int TextAppearance_Material_WindowTitle = 16974346; // 0x103020a + field public static final int TextAppearance_Medium = 16973892; // 0x1030044 + field public static final int TextAppearance_Medium_Inverse = 16973893; // 0x1030045 + field public static final int TextAppearance_Small = 16973894; // 0x1030046 + field public static final int TextAppearance_Small_Inverse = 16973895; // 0x1030047 + field public static final int TextAppearance_StatusBar_EventContent = 16973927; // 0x1030067 + field public static final int TextAppearance_StatusBar_EventContent_Title = 16973928; // 0x1030068 + field public static final int TextAppearance_StatusBar_Icon = 16973926; // 0x1030066 + field public static final int TextAppearance_StatusBar_Title = 16973925; // 0x1030065 + field public static final int TextAppearance_SuggestionHighlight = 16974104; // 0x1030118 + field public static final int TextAppearance_Theme = 16973888; // 0x1030040 + field public static final int TextAppearance_Theme_Dialog = 16973896; // 0x1030048 + field public static final int TextAppearance_Widget = 16973897; // 0x1030049 + field public static final int TextAppearance_Widget_Button = 16973898; // 0x103004a + field public static final int TextAppearance_Widget_DropDownHint = 16973904; // 0x1030050 + field public static final int TextAppearance_Widget_DropDownItem = 16973905; // 0x1030051 + field public static final int TextAppearance_Widget_EditText = 16973900; // 0x103004c + field public static final int TextAppearance_Widget_IconMenu_Item = 16973899; // 0x103004b + field public static final int TextAppearance_Widget_PopupMenu_Large = 16973952; // 0x1030080 + field public static final int TextAppearance_Widget_PopupMenu_Small = 16973953; // 0x1030081 + field public static final int TextAppearance_Widget_TabWidget = 16973901; // 0x103004d + field public static final int TextAppearance_Widget_TextView = 16973902; // 0x103004e + field public static final int TextAppearance_Widget_TextView_PopupMenu = 16973903; // 0x103004f + field public static final int TextAppearance_Widget_TextView_SpinnerItem = 16973906; // 0x1030052 + field public static final int TextAppearance_WindowTitle = 16973907; // 0x1030053 + field public static final int Theme = 16973829; // 0x1030005 + field public static final int ThemeOverlay = 16974407; // 0x1030247 + field public static final int ThemeOverlay_DeviceDefault_Accent_DayNight = 16974564; // 0x10302e4 + field public static final int ThemeOverlay_Material = 16974408; // 0x1030248 + field public static final int ThemeOverlay_Material_ActionBar = 16974409; // 0x1030249 + field public static final int ThemeOverlay_Material_Dark = 16974411; // 0x103024b + field public static final int ThemeOverlay_Material_Dark_ActionBar = 16974412; // 0x103024c + field public static final int ThemeOverlay_Material_Dialog = 16974550; // 0x10302d6 + field public static final int ThemeOverlay_Material_Dialog_Alert = 16974551; // 0x10302d7 + field public static final int ThemeOverlay_Material_Light = 16974410; // 0x103024a + field public static final int Theme_Black = 16973832; // 0x1030008 + field public static final int Theme_Black_NoTitleBar = 16973833; // 0x1030009 + field public static final int Theme_Black_NoTitleBar_Fullscreen = 16973834; // 0x103000a + field public static final int Theme_DeviceDefault = 16974120; // 0x1030128 + field public static final int Theme_DeviceDefault_DayNight = 16974563; // 0x10302e3 + field public static final int Theme_DeviceDefault_Dialog = 16974126; // 0x103012e + field public static final int Theme_DeviceDefault_DialogWhenLarge = 16974134; // 0x1030136 + field public static final int Theme_DeviceDefault_DialogWhenLarge_NoActionBar = 16974135; // 0x1030137 + field public static final int Theme_DeviceDefault_Dialog_Alert = 16974545; // 0x10302d1 + field public static final int Theme_DeviceDefault_Dialog_MinWidth = 16974127; // 0x103012f + field public static final int Theme_DeviceDefault_Dialog_NoActionBar = 16974128; // 0x1030130 + field public static final int Theme_DeviceDefault_Dialog_NoActionBar_MinWidth = 16974129; // 0x1030131 + field public static final int Theme_DeviceDefault_InputMethod = 16974142; // 0x103013e + field public static final int Theme_DeviceDefault_Light = 16974123; // 0x103012b + field public static final int Theme_DeviceDefault_Light_DarkActionBar = 16974143; // 0x103013f + field public static final int Theme_DeviceDefault_Light_Dialog = 16974130; // 0x1030132 + field public static final int Theme_DeviceDefault_Light_DialogWhenLarge = 16974136; // 0x1030138 + field public static final int Theme_DeviceDefault_Light_DialogWhenLarge_NoActionBar = 16974137; // 0x1030139 + field public static final int Theme_DeviceDefault_Light_Dialog_Alert = 16974546; // 0x10302d2 + field public static final int Theme_DeviceDefault_Light_Dialog_MinWidth = 16974131; // 0x1030133 + field public static final int Theme_DeviceDefault_Light_Dialog_NoActionBar = 16974132; // 0x1030134 + field public static final int Theme_DeviceDefault_Light_Dialog_NoActionBar_MinWidth = 16974133; // 0x1030135 + field public static final int Theme_DeviceDefault_Light_NoActionBar = 16974124; // 0x103012c + field public static final int Theme_DeviceDefault_Light_NoActionBar_Fullscreen = 16974125; // 0x103012d + field public static final int Theme_DeviceDefault_Light_NoActionBar_Overscan = 16974304; // 0x10301e0 + field public static final int Theme_DeviceDefault_Light_NoActionBar_TranslucentDecor = 16974308; // 0x10301e4 + field public static final int Theme_DeviceDefault_Light_Panel = 16974139; // 0x103013b + field public static final int Theme_DeviceDefault_NoActionBar = 16974121; // 0x1030129 + field public static final int Theme_DeviceDefault_NoActionBar_Fullscreen = 16974122; // 0x103012a + field public static final int Theme_DeviceDefault_NoActionBar_Overscan = 16974303; // 0x10301df + field public static final int Theme_DeviceDefault_NoActionBar_TranslucentDecor = 16974307; // 0x10301e3 + field public static final int Theme_DeviceDefault_Panel = 16974138; // 0x103013a + field public static final int Theme_DeviceDefault_Settings = 16974371; // 0x1030223 + field public static final int Theme_DeviceDefault_Wallpaper = 16974140; // 0x103013c + field public static final int Theme_DeviceDefault_Wallpaper_NoTitleBar = 16974141; // 0x103013d + field public static final int Theme_Dialog = 16973835; // 0x103000b + field @Deprecated public static final int Theme_Holo = 16973931; // 0x103006b + field @Deprecated public static final int Theme_Holo_Dialog = 16973935; // 0x103006f + field @Deprecated public static final int Theme_Holo_DialogWhenLarge = 16973943; // 0x1030077 + field @Deprecated public static final int Theme_Holo_DialogWhenLarge_NoActionBar = 16973944; // 0x1030078 + field @Deprecated public static final int Theme_Holo_Dialog_MinWidth = 16973936; // 0x1030070 + field @Deprecated public static final int Theme_Holo_Dialog_NoActionBar = 16973937; // 0x1030071 + field @Deprecated public static final int Theme_Holo_Dialog_NoActionBar_MinWidth = 16973938; // 0x1030072 + field @Deprecated public static final int Theme_Holo_InputMethod = 16973951; // 0x103007f + field @Deprecated public static final int Theme_Holo_Light = 16973934; // 0x103006e + field @Deprecated public static final int Theme_Holo_Light_DarkActionBar = 16974105; // 0x1030119 + field @Deprecated public static final int Theme_Holo_Light_Dialog = 16973939; // 0x1030073 + field @Deprecated public static final int Theme_Holo_Light_DialogWhenLarge = 16973945; // 0x1030079 + field @Deprecated public static final int Theme_Holo_Light_DialogWhenLarge_NoActionBar = 16973946; // 0x103007a + field @Deprecated public static final int Theme_Holo_Light_Dialog_MinWidth = 16973940; // 0x1030074 + field @Deprecated public static final int Theme_Holo_Light_Dialog_NoActionBar = 16973941; // 0x1030075 + field @Deprecated public static final int Theme_Holo_Light_Dialog_NoActionBar_MinWidth = 16973942; // 0x1030076 + field @Deprecated public static final int Theme_Holo_Light_NoActionBar = 16974064; // 0x10300f0 + field @Deprecated public static final int Theme_Holo_Light_NoActionBar_Fullscreen = 16974065; // 0x10300f1 + field @Deprecated public static final int Theme_Holo_Light_NoActionBar_Overscan = 16974302; // 0x10301de + field @Deprecated public static final int Theme_Holo_Light_NoActionBar_TranslucentDecor = 16974306; // 0x10301e2 + field @Deprecated public static final int Theme_Holo_Light_Panel = 16973948; // 0x103007c + field @Deprecated public static final int Theme_Holo_NoActionBar = 16973932; // 0x103006c + field @Deprecated public static final int Theme_Holo_NoActionBar_Fullscreen = 16973933; // 0x103006d + field @Deprecated public static final int Theme_Holo_NoActionBar_Overscan = 16974301; // 0x10301dd + field @Deprecated public static final int Theme_Holo_NoActionBar_TranslucentDecor = 16974305; // 0x10301e1 + field @Deprecated public static final int Theme_Holo_Panel = 16973947; // 0x103007b + field @Deprecated public static final int Theme_Holo_Wallpaper = 16973949; // 0x103007d + field @Deprecated public static final int Theme_Holo_Wallpaper_NoTitleBar = 16973950; // 0x103007e + field public static final int Theme_InputMethod = 16973908; // 0x1030054 + field public static final int Theme_Light = 16973836; // 0x103000c + field public static final int Theme_Light_NoTitleBar = 16973837; // 0x103000d + field public static final int Theme_Light_NoTitleBar_Fullscreen = 16973838; // 0x103000e + field public static final int Theme_Light_Panel = 16973914; // 0x103005a + field public static final int Theme_Light_WallpaperSettings = 16973922; // 0x1030062 + field public static final int Theme_Material = 16974372; // 0x1030224 + field public static final int Theme_Material_Dialog = 16974373; // 0x1030225 + field public static final int Theme_Material_DialogWhenLarge = 16974379; // 0x103022b + field public static final int Theme_Material_DialogWhenLarge_NoActionBar = 16974380; // 0x103022c + field public static final int Theme_Material_Dialog_Alert = 16974374; // 0x1030226 + field public static final int Theme_Material_Dialog_MinWidth = 16974375; // 0x1030227 + field public static final int Theme_Material_Dialog_NoActionBar = 16974376; // 0x1030228 + field public static final int Theme_Material_Dialog_NoActionBar_MinWidth = 16974377; // 0x1030229 + field public static final int Theme_Material_Dialog_Presentation = 16974378; // 0x103022a + field public static final int Theme_Material_InputMethod = 16974381; // 0x103022d + field public static final int Theme_Material_Light = 16974391; // 0x1030237 + field public static final int Theme_Material_Light_DarkActionBar = 16974392; // 0x1030238 + field public static final int Theme_Material_Light_Dialog = 16974393; // 0x1030239 + field public static final int Theme_Material_Light_DialogWhenLarge = 16974399; // 0x103023f + field public static final int Theme_Material_Light_DialogWhenLarge_DarkActionBar = 16974552; // 0x10302d8 + field public static final int Theme_Material_Light_DialogWhenLarge_NoActionBar = 16974400; // 0x1030240 + field public static final int Theme_Material_Light_Dialog_Alert = 16974394; // 0x103023a + field public static final int Theme_Material_Light_Dialog_MinWidth = 16974395; // 0x103023b + field public static final int Theme_Material_Light_Dialog_NoActionBar = 16974396; // 0x103023c + field public static final int Theme_Material_Light_Dialog_NoActionBar_MinWidth = 16974397; // 0x103023d + field public static final int Theme_Material_Light_Dialog_Presentation = 16974398; // 0x103023e + field public static final int Theme_Material_Light_LightStatusBar = 16974549; // 0x10302d5 + field public static final int Theme_Material_Light_NoActionBar = 16974401; // 0x1030241 + field public static final int Theme_Material_Light_NoActionBar_Fullscreen = 16974402; // 0x1030242 + field @Deprecated public static final int Theme_Material_Light_NoActionBar_Overscan = 16974403; // 0x1030243 + field public static final int Theme_Material_Light_NoActionBar_TranslucentDecor = 16974404; // 0x1030244 + field public static final int Theme_Material_Light_Panel = 16974405; // 0x1030245 + field public static final int Theme_Material_Light_Voice = 16974406; // 0x1030246 + field public static final int Theme_Material_NoActionBar = 16974382; // 0x103022e + field public static final int Theme_Material_NoActionBar_Fullscreen = 16974383; // 0x103022f + field @Deprecated public static final int Theme_Material_NoActionBar_Overscan = 16974384; // 0x1030230 + field public static final int Theme_Material_NoActionBar_TranslucentDecor = 16974385; // 0x1030231 + field public static final int Theme_Material_Panel = 16974386; // 0x1030232 + field public static final int Theme_Material_Settings = 16974387; // 0x1030233 + field public static final int Theme_Material_Voice = 16974388; // 0x1030234 + field public static final int Theme_Material_Wallpaper = 16974389; // 0x1030235 + field public static final int Theme_Material_Wallpaper_NoTitleBar = 16974390; // 0x1030236 + field public static final int Theme_NoDisplay = 16973909; // 0x1030055 + field public static final int Theme_NoTitleBar = 16973830; // 0x1030006 + field public static final int Theme_NoTitleBar_Fullscreen = 16973831; // 0x1030007 + field public static final int Theme_NoTitleBar_OverlayActionModes = 16973930; // 0x103006a + field public static final int Theme_Panel = 16973913; // 0x1030059 + field public static final int Theme_Translucent = 16973839; // 0x103000f + field public static final int Theme_Translucent_NoTitleBar = 16973840; // 0x1030010 + field public static final int Theme_Translucent_NoTitleBar_Fullscreen = 16973841; // 0x1030011 + field public static final int Theme_Wallpaper = 16973918; // 0x103005e + field public static final int Theme_WallpaperSettings = 16973921; // 0x1030061 + field public static final int Theme_Wallpaper_NoTitleBar = 16973919; // 0x103005f + field public static final int Theme_Wallpaper_NoTitleBar_Fullscreen = 16973920; // 0x1030060 + field public static final int Theme_WithActionBar = 16973929; // 0x1030069 + field public static final int Widget = 16973842; // 0x1030012 + field public static final int Widget_AbsListView = 16973843; // 0x1030013 + field public static final int Widget_ActionBar = 16973954; // 0x1030082 + field public static final int Widget_ActionBar_TabBar = 16974068; // 0x10300f4 + field public static final int Widget_ActionBar_TabText = 16974067; // 0x10300f3 + field public static final int Widget_ActionBar_TabView = 16974066; // 0x10300f2 + field public static final int Widget_ActionButton = 16973956; // 0x1030084 + field public static final int Widget_ActionButton_CloseMode = 16973960; // 0x1030088 + field public static final int Widget_ActionButton_Overflow = 16973959; // 0x1030087 + field public static final int Widget_AutoCompleteTextView = 16973863; // 0x1030027 + field public static final int Widget_Button = 16973844; // 0x1030014 + field public static final int Widget_Button_Inset = 16973845; // 0x1030015 + field public static final int Widget_Button_Small = 16973846; // 0x1030016 + field public static final int Widget_Button_Toggle = 16973847; // 0x1030017 + field public static final int Widget_CalendarView = 16974059; // 0x10300eb + field public static final int Widget_CompoundButton = 16973848; // 0x1030018 + field public static final int Widget_CompoundButton_CheckBox = 16973849; // 0x1030019 + field public static final int Widget_CompoundButton_RadioButton = 16973850; // 0x103001a + field public static final int Widget_CompoundButton_Star = 16973851; // 0x103001b + field public static final int Widget_DatePicker = 16974062; // 0x10300ee + field public static final int Widget_DeviceDefault = 16974144; // 0x1030140 + field public static final int Widget_DeviceDefault_ActionBar = 16974187; // 0x103016b + field public static final int Widget_DeviceDefault_ActionBar_Solid = 16974195; // 0x1030173 + field public static final int Widget_DeviceDefault_ActionBar_TabBar = 16974194; // 0x1030172 + field public static final int Widget_DeviceDefault_ActionBar_TabText = 16974193; // 0x1030171 + field public static final int Widget_DeviceDefault_ActionBar_TabView = 16974192; // 0x1030170 + field public static final int Widget_DeviceDefault_ActionButton = 16974182; // 0x1030166 + field public static final int Widget_DeviceDefault_ActionButton_CloseMode = 16974186; // 0x103016a + field public static final int Widget_DeviceDefault_ActionButton_Overflow = 16974183; // 0x1030167 + field public static final int Widget_DeviceDefault_ActionButton_TextButton = 16974184; // 0x1030168 + field public static final int Widget_DeviceDefault_ActionMode = 16974185; // 0x1030169 + field public static final int Widget_DeviceDefault_AutoCompleteTextView = 16974151; // 0x1030147 + field public static final int Widget_DeviceDefault_Button = 16974145; // 0x1030141 + field public static final int Widget_DeviceDefault_Button_Borderless = 16974188; // 0x103016c + field public static final int Widget_DeviceDefault_Button_Borderless_Colored = 16974561; // 0x10302e1 + field public static final int Widget_DeviceDefault_Button_Borderless_Small = 16974149; // 0x1030145 + field public static final int Widget_DeviceDefault_Button_Colored = 16974560; // 0x10302e0 + field public static final int Widget_DeviceDefault_Button_Inset = 16974147; // 0x1030143 + field public static final int Widget_DeviceDefault_Button_Small = 16974146; // 0x1030142 + field public static final int Widget_DeviceDefault_Button_Toggle = 16974148; // 0x1030144 + field public static final int Widget_DeviceDefault_CalendarView = 16974190; // 0x103016e + field public static final int Widget_DeviceDefault_CheckedTextView = 16974299; // 0x10301db + field public static final int Widget_DeviceDefault_CompoundButton_CheckBox = 16974152; // 0x1030148 + field public static final int Widget_DeviceDefault_CompoundButton_RadioButton = 16974169; // 0x1030159 + field public static final int Widget_DeviceDefault_CompoundButton_Star = 16974173; // 0x103015d + field public static final int Widget_DeviceDefault_DatePicker = 16974191; // 0x103016f + field public static final int Widget_DeviceDefault_DropDownItem = 16974177; // 0x1030161 + field public static final int Widget_DeviceDefault_DropDownItem_Spinner = 16974178; // 0x1030162 + field public static final int Widget_DeviceDefault_EditText = 16974154; // 0x103014a + field public static final int Widget_DeviceDefault_ExpandableListView = 16974155; // 0x103014b + field public static final int Widget_DeviceDefault_FastScroll = 16974313; // 0x10301e9 + field public static final int Widget_DeviceDefault_GridView = 16974156; // 0x103014c + field public static final int Widget_DeviceDefault_HorizontalScrollView = 16974171; // 0x103015b + field public static final int Widget_DeviceDefault_ImageButton = 16974157; // 0x103014d + field public static final int Widget_DeviceDefault_Light = 16974196; // 0x1030174 + field public static final int Widget_DeviceDefault_Light_ActionBar = 16974243; // 0x10301a3 + field public static final int Widget_DeviceDefault_Light_ActionBar_Solid = 16974247; // 0x10301a7 + field @Deprecated public static final int Widget_DeviceDefault_Light_ActionBar_Solid_Inverse = 16974248; // 0x10301a8 + field public static final int Widget_DeviceDefault_Light_ActionBar_TabBar = 16974246; // 0x10301a6 + field @Deprecated public static final int Widget_DeviceDefault_Light_ActionBar_TabBar_Inverse = 16974249; // 0x10301a9 + field public static final int Widget_DeviceDefault_Light_ActionBar_TabText = 16974245; // 0x10301a5 + field @Deprecated public static final int Widget_DeviceDefault_Light_ActionBar_TabText_Inverse = 16974251; // 0x10301ab + field public static final int Widget_DeviceDefault_Light_ActionBar_TabView = 16974244; // 0x10301a4 + field @Deprecated public static final int Widget_DeviceDefault_Light_ActionBar_TabView_Inverse = 16974250; // 0x10301aa + field public static final int Widget_DeviceDefault_Light_ActionButton = 16974239; // 0x103019f + field public static final int Widget_DeviceDefault_Light_ActionButton_CloseMode = 16974242; // 0x10301a2 + field public static final int Widget_DeviceDefault_Light_ActionButton_Overflow = 16974240; // 0x10301a0 + field public static final int Widget_DeviceDefault_Light_ActionMode = 16974241; // 0x10301a1 + field @Deprecated public static final int Widget_DeviceDefault_Light_ActionMode_Inverse = 16974252; // 0x10301ac + field public static final int Widget_DeviceDefault_Light_AutoCompleteTextView = 16974203; // 0x103017b + field public static final int Widget_DeviceDefault_Light_Button = 16974197; // 0x1030175 + field public static final int Widget_DeviceDefault_Light_Button_Borderless_Small = 16974201; // 0x1030179 + field public static final int Widget_DeviceDefault_Light_Button_Inset = 16974199; // 0x1030177 + field public static final int Widget_DeviceDefault_Light_Button_Small = 16974198; // 0x1030176 + field public static final int Widget_DeviceDefault_Light_Button_Toggle = 16974200; // 0x1030178 + field public static final int Widget_DeviceDefault_Light_CalendarView = 16974238; // 0x103019e + field public static final int Widget_DeviceDefault_Light_CheckedTextView = 16974300; // 0x10301dc + field public static final int Widget_DeviceDefault_Light_CompoundButton_CheckBox = 16974204; // 0x103017c + field public static final int Widget_DeviceDefault_Light_CompoundButton_RadioButton = 16974224; // 0x1030190 + field public static final int Widget_DeviceDefault_Light_CompoundButton_Star = 16974228; // 0x1030194 + field public static final int Widget_DeviceDefault_Light_DropDownItem = 16974232; // 0x1030198 + field public static final int Widget_DeviceDefault_Light_DropDownItem_Spinner = 16974233; // 0x1030199 + field public static final int Widget_DeviceDefault_Light_EditText = 16974206; // 0x103017e + field public static final int Widget_DeviceDefault_Light_ExpandableListView = 16974207; // 0x103017f + field public static final int Widget_DeviceDefault_Light_FastScroll = 16974315; // 0x10301eb + field public static final int Widget_DeviceDefault_Light_GridView = 16974208; // 0x1030180 + field public static final int Widget_DeviceDefault_Light_HorizontalScrollView = 16974226; // 0x1030192 + field public static final int Widget_DeviceDefault_Light_ImageButton = 16974209; // 0x1030181 + field public static final int Widget_DeviceDefault_Light_ListPopupWindow = 16974235; // 0x103019b + field public static final int Widget_DeviceDefault_Light_ListView = 16974210; // 0x1030182 + field public static final int Widget_DeviceDefault_Light_ListView_DropDown = 16974205; // 0x103017d + field public static final int Widget_DeviceDefault_Light_MediaRouteButton = 16974296; // 0x10301d8 + field public static final int Widget_DeviceDefault_Light_PopupMenu = 16974236; // 0x103019c + field public static final int Widget_DeviceDefault_Light_PopupWindow = 16974211; // 0x1030183 + field public static final int Widget_DeviceDefault_Light_ProgressBar = 16974212; // 0x1030184 + field public static final int Widget_DeviceDefault_Light_ProgressBar_Horizontal = 16974213; // 0x1030185 + field public static final int Widget_DeviceDefault_Light_ProgressBar_Inverse = 16974217; // 0x1030189 + field public static final int Widget_DeviceDefault_Light_ProgressBar_Large = 16974216; // 0x1030188 + field public static final int Widget_DeviceDefault_Light_ProgressBar_Large_Inverse = 16974219; // 0x103018b + field public static final int Widget_DeviceDefault_Light_ProgressBar_Small = 16974214; // 0x1030186 + field public static final int Widget_DeviceDefault_Light_ProgressBar_Small_Inverse = 16974218; // 0x103018a + field public static final int Widget_DeviceDefault_Light_ProgressBar_Small_Title = 16974215; // 0x1030187 + field public static final int Widget_DeviceDefault_Light_RatingBar = 16974221; // 0x103018d + field public static final int Widget_DeviceDefault_Light_RatingBar_Indicator = 16974222; // 0x103018e + field public static final int Widget_DeviceDefault_Light_RatingBar_Small = 16974223; // 0x103018f + field public static final int Widget_DeviceDefault_Light_ScrollView = 16974225; // 0x1030191 + field public static final int Widget_DeviceDefault_Light_SeekBar = 16974220; // 0x103018c + field public static final int Widget_DeviceDefault_Light_Spinner = 16974227; // 0x1030193 + field public static final int Widget_DeviceDefault_Light_StackView = 16974316; // 0x10301ec + field public static final int Widget_DeviceDefault_Light_Tab = 16974237; // 0x103019d + field public static final int Widget_DeviceDefault_Light_TabWidget = 16974229; // 0x1030195 + field public static final int Widget_DeviceDefault_Light_TextView = 16974202; // 0x103017a + field public static final int Widget_DeviceDefault_Light_TextView_SpinnerItem = 16974234; // 0x103019a + field public static final int Widget_DeviceDefault_Light_WebTextView = 16974230; // 0x1030196 + field public static final int Widget_DeviceDefault_Light_WebView = 16974231; // 0x1030197 + field public static final int Widget_DeviceDefault_ListPopupWindow = 16974180; // 0x1030164 + field public static final int Widget_DeviceDefault_ListView = 16974158; // 0x103014e + field public static final int Widget_DeviceDefault_ListView_DropDown = 16974153; // 0x1030149 + field public static final int Widget_DeviceDefault_MediaRouteButton = 16974295; // 0x10301d7 + field public static final int Widget_DeviceDefault_PopupMenu = 16974181; // 0x1030165 + field public static final int Widget_DeviceDefault_PopupWindow = 16974159; // 0x103014f + field public static final int Widget_DeviceDefault_ProgressBar = 16974160; // 0x1030150 + field public static final int Widget_DeviceDefault_ProgressBar_Horizontal = 16974161; // 0x1030151 + field public static final int Widget_DeviceDefault_ProgressBar_Large = 16974164; // 0x1030154 + field public static final int Widget_DeviceDefault_ProgressBar_Small = 16974162; // 0x1030152 + field public static final int Widget_DeviceDefault_ProgressBar_Small_Title = 16974163; // 0x1030153 + field public static final int Widget_DeviceDefault_RatingBar = 16974166; // 0x1030156 + field public static final int Widget_DeviceDefault_RatingBar_Indicator = 16974167; // 0x1030157 + field public static final int Widget_DeviceDefault_RatingBar_Small = 16974168; // 0x1030158 + field public static final int Widget_DeviceDefault_ScrollView = 16974170; // 0x103015a + field public static final int Widget_DeviceDefault_SeekBar = 16974165; // 0x1030155 + field public static final int Widget_DeviceDefault_Spinner = 16974172; // 0x103015c + field public static final int Widget_DeviceDefault_StackView = 16974314; // 0x10301ea + field public static final int Widget_DeviceDefault_Tab = 16974189; // 0x103016d + field public static final int Widget_DeviceDefault_TabWidget = 16974174; // 0x103015e + field public static final int Widget_DeviceDefault_TextView = 16974150; // 0x1030146 + field public static final int Widget_DeviceDefault_TextView_SpinnerItem = 16974179; // 0x1030163 + field public static final int Widget_DeviceDefault_WebTextView = 16974175; // 0x103015f + field public static final int Widget_DeviceDefault_WebView = 16974176; // 0x1030160 + field public static final int Widget_DropDownItem = 16973867; // 0x103002b + field public static final int Widget_DropDownItem_Spinner = 16973868; // 0x103002c + field public static final int Widget_EditText = 16973859; // 0x1030023 + field public static final int Widget_ExpandableListView = 16973860; // 0x1030024 + field public static final int Widget_FastScroll = 16974309; // 0x10301e5 + field public static final int Widget_FragmentBreadCrumbs = 16973961; // 0x1030089 + field public static final int Widget_Gallery = 16973877; // 0x1030035 + field public static final int Widget_GridView = 16973874; // 0x1030032 + field public static final int Widget_Holo = 16973962; // 0x103008a + field public static final int Widget_Holo_ActionBar = 16974004; // 0x10300b4 + field public static final int Widget_Holo_ActionBar_Solid = 16974113; // 0x1030121 + field public static final int Widget_Holo_ActionBar_TabBar = 16974071; // 0x10300f7 + field public static final int Widget_Holo_ActionBar_TabText = 16974070; // 0x10300f6 + field public static final int Widget_Holo_ActionBar_TabView = 16974069; // 0x10300f5 + field public static final int Widget_Holo_ActionButton = 16973999; // 0x10300af + field public static final int Widget_Holo_ActionButton_CloseMode = 16974003; // 0x10300b3 + field public static final int Widget_Holo_ActionButton_Overflow = 16974000; // 0x10300b0 + field public static final int Widget_Holo_ActionButton_TextButton = 16974001; // 0x10300b1 + field public static final int Widget_Holo_ActionMode = 16974002; // 0x10300b2 + field public static final int Widget_Holo_AutoCompleteTextView = 16973968; // 0x1030090 + field public static final int Widget_Holo_Button = 16973963; // 0x103008b + field public static final int Widget_Holo_Button_Borderless = 16974050; // 0x10300e2 + field public static final int Widget_Holo_Button_Borderless_Small = 16974106; // 0x103011a + field public static final int Widget_Holo_Button_Inset = 16973965; // 0x103008d + field public static final int Widget_Holo_Button_Small = 16973964; // 0x103008c + field public static final int Widget_Holo_Button_Toggle = 16973966; // 0x103008e + field public static final int Widget_Holo_CalendarView = 16974060; // 0x10300ec + field public static final int Widget_Holo_CheckedTextView = 16974297; // 0x10301d9 + field public static final int Widget_Holo_CompoundButton_CheckBox = 16973969; // 0x1030091 + field public static final int Widget_Holo_CompoundButton_RadioButton = 16973986; // 0x10300a2 + field public static final int Widget_Holo_CompoundButton_Star = 16973990; // 0x10300a6 + field public static final int Widget_Holo_DatePicker = 16974063; // 0x10300ef + field public static final int Widget_Holo_DropDownItem = 16973994; // 0x10300aa + field public static final int Widget_Holo_DropDownItem_Spinner = 16973995; // 0x10300ab + field public static final int Widget_Holo_EditText = 16973971; // 0x1030093 + field public static final int Widget_Holo_ExpandableListView = 16973972; // 0x1030094 + field public static final int Widget_Holo_GridView = 16973973; // 0x1030095 + field public static final int Widget_Holo_HorizontalScrollView = 16973988; // 0x10300a4 + field public static final int Widget_Holo_ImageButton = 16973974; // 0x1030096 + field public static final int Widget_Holo_Light = 16974005; // 0x10300b5 + field public static final int Widget_Holo_Light_ActionBar = 16974049; // 0x10300e1 + field public static final int Widget_Holo_Light_ActionBar_Solid = 16974114; // 0x1030122 + field public static final int Widget_Holo_Light_ActionBar_Solid_Inverse = 16974115; // 0x1030123 + field public static final int Widget_Holo_Light_ActionBar_TabBar = 16974074; // 0x10300fa + field public static final int Widget_Holo_Light_ActionBar_TabBar_Inverse = 16974116; // 0x1030124 + field public static final int Widget_Holo_Light_ActionBar_TabText = 16974073; // 0x10300f9 + field public static final int Widget_Holo_Light_ActionBar_TabText_Inverse = 16974118; // 0x1030126 + field public static final int Widget_Holo_Light_ActionBar_TabView = 16974072; // 0x10300f8 + field public static final int Widget_Holo_Light_ActionBar_TabView_Inverse = 16974117; // 0x1030125 + field public static final int Widget_Holo_Light_ActionButton = 16974045; // 0x10300dd + field public static final int Widget_Holo_Light_ActionButton_CloseMode = 16974048; // 0x10300e0 + field public static final int Widget_Holo_Light_ActionButton_Overflow = 16974046; // 0x10300de + field public static final int Widget_Holo_Light_ActionMode = 16974047; // 0x10300df + field public static final int Widget_Holo_Light_ActionMode_Inverse = 16974119; // 0x1030127 + field public static final int Widget_Holo_Light_AutoCompleteTextView = 16974011; // 0x10300bb + field public static final int Widget_Holo_Light_Button = 16974006; // 0x10300b6 + field public static final int Widget_Holo_Light_Button_Borderless_Small = 16974107; // 0x103011b + field public static final int Widget_Holo_Light_Button_Inset = 16974008; // 0x10300b8 + field public static final int Widget_Holo_Light_Button_Small = 16974007; // 0x10300b7 + field public static final int Widget_Holo_Light_Button_Toggle = 16974009; // 0x10300b9 + field public static final int Widget_Holo_Light_CalendarView = 16974061; // 0x10300ed + field public static final int Widget_Holo_Light_CheckedTextView = 16974298; // 0x10301da + field public static final int Widget_Holo_Light_CompoundButton_CheckBox = 16974012; // 0x10300bc + field public static final int Widget_Holo_Light_CompoundButton_RadioButton = 16974032; // 0x10300d0 + field public static final int Widget_Holo_Light_CompoundButton_Star = 16974036; // 0x10300d4 + field public static final int Widget_Holo_Light_DropDownItem = 16974040; // 0x10300d8 + field public static final int Widget_Holo_Light_DropDownItem_Spinner = 16974041; // 0x10300d9 + field public static final int Widget_Holo_Light_EditText = 16974014; // 0x10300be + field public static final int Widget_Holo_Light_ExpandableListView = 16974015; // 0x10300bf + field public static final int Widget_Holo_Light_GridView = 16974016; // 0x10300c0 + field public static final int Widget_Holo_Light_HorizontalScrollView = 16974034; // 0x10300d2 + field public static final int Widget_Holo_Light_ImageButton = 16974017; // 0x10300c1 + field public static final int Widget_Holo_Light_ListPopupWindow = 16974043; // 0x10300db + field public static final int Widget_Holo_Light_ListView = 16974018; // 0x10300c2 + field public static final int Widget_Holo_Light_ListView_DropDown = 16974013; // 0x10300bd + field public static final int Widget_Holo_Light_MediaRouteButton = 16974294; // 0x10301d6 + field public static final int Widget_Holo_Light_PopupMenu = 16974044; // 0x10300dc + field public static final int Widget_Holo_Light_PopupWindow = 16974019; // 0x10300c3 + field public static final int Widget_Holo_Light_ProgressBar = 16974020; // 0x10300c4 + field public static final int Widget_Holo_Light_ProgressBar_Horizontal = 16974021; // 0x10300c5 + field public static final int Widget_Holo_Light_ProgressBar_Inverse = 16974025; // 0x10300c9 + field public static final int Widget_Holo_Light_ProgressBar_Large = 16974024; // 0x10300c8 + field public static final int Widget_Holo_Light_ProgressBar_Large_Inverse = 16974027; // 0x10300cb + field public static final int Widget_Holo_Light_ProgressBar_Small = 16974022; // 0x10300c6 + field public static final int Widget_Holo_Light_ProgressBar_Small_Inverse = 16974026; // 0x10300ca + field public static final int Widget_Holo_Light_ProgressBar_Small_Title = 16974023; // 0x10300c7 + field public static final int Widget_Holo_Light_RatingBar = 16974029; // 0x10300cd + field public static final int Widget_Holo_Light_RatingBar_Indicator = 16974030; // 0x10300ce + field public static final int Widget_Holo_Light_RatingBar_Small = 16974031; // 0x10300cf + field public static final int Widget_Holo_Light_ScrollView = 16974033; // 0x10300d1 + field public static final int Widget_Holo_Light_SeekBar = 16974028; // 0x10300cc + field public static final int Widget_Holo_Light_Spinner = 16974035; // 0x10300d3 + field public static final int Widget_Holo_Light_Tab = 16974052; // 0x10300e4 + field public static final int Widget_Holo_Light_TabWidget = 16974037; // 0x10300d5 + field public static final int Widget_Holo_Light_TextView = 16974010; // 0x10300ba + field public static final int Widget_Holo_Light_TextView_SpinnerItem = 16974042; // 0x10300da + field public static final int Widget_Holo_Light_WebTextView = 16974038; // 0x10300d6 + field public static final int Widget_Holo_Light_WebView = 16974039; // 0x10300d7 + field public static final int Widget_Holo_ListPopupWindow = 16973997; // 0x10300ad + field public static final int Widget_Holo_ListView = 16973975; // 0x1030097 + field public static final int Widget_Holo_ListView_DropDown = 16973970; // 0x1030092 + field public static final int Widget_Holo_MediaRouteButton = 16974293; // 0x10301d5 + field public static final int Widget_Holo_PopupMenu = 16973998; // 0x10300ae + field public static final int Widget_Holo_PopupWindow = 16973976; // 0x1030098 + field public static final int Widget_Holo_ProgressBar = 16973977; // 0x1030099 + field public static final int Widget_Holo_ProgressBar_Horizontal = 16973978; // 0x103009a + field public static final int Widget_Holo_ProgressBar_Large = 16973981; // 0x103009d + field public static final int Widget_Holo_ProgressBar_Small = 16973979; // 0x103009b + field public static final int Widget_Holo_ProgressBar_Small_Title = 16973980; // 0x103009c + field public static final int Widget_Holo_RatingBar = 16973983; // 0x103009f + field public static final int Widget_Holo_RatingBar_Indicator = 16973984; // 0x10300a0 + field public static final int Widget_Holo_RatingBar_Small = 16973985; // 0x10300a1 + field public static final int Widget_Holo_ScrollView = 16973987; // 0x10300a3 + field public static final int Widget_Holo_SeekBar = 16973982; // 0x103009e + field public static final int Widget_Holo_Spinner = 16973989; // 0x10300a5 + field public static final int Widget_Holo_Tab = 16974051; // 0x10300e3 + field public static final int Widget_Holo_TabWidget = 16973991; // 0x10300a7 + field public static final int Widget_Holo_TextView = 16973967; // 0x103008f + field public static final int Widget_Holo_TextView_SpinnerItem = 16973996; // 0x10300ac + field public static final int Widget_Holo_WebTextView = 16973992; // 0x10300a8 + field public static final int Widget_Holo_WebView = 16973993; // 0x10300a9 + field public static final int Widget_ImageButton = 16973862; // 0x1030026 + field public static final int Widget_ImageWell = 16973861; // 0x1030025 + field @Deprecated public static final int Widget_KeyboardView = 16973911; // 0x1030057 + field public static final int Widget_ListPopupWindow = 16973957; // 0x1030085 + field public static final int Widget_ListView = 16973870; // 0x103002e + field public static final int Widget_ListView_DropDown = 16973872; // 0x1030030 + field public static final int Widget_ListView_Menu = 16973873; // 0x1030031 + field public static final int Widget_ListView_White = 16973871; // 0x103002f + field public static final int Widget_Material = 16974413; // 0x103024d + field public static final int Widget_Material_ActionBar = 16974414; // 0x103024e + field public static final int Widget_Material_ActionBar_Solid = 16974415; // 0x103024f + field public static final int Widget_Material_ActionBar_TabBar = 16974416; // 0x1030250 + field public static final int Widget_Material_ActionBar_TabText = 16974417; // 0x1030251 + field public static final int Widget_Material_ActionBar_TabView = 16974418; // 0x1030252 + field public static final int Widget_Material_ActionButton = 16974419; // 0x1030253 + field public static final int Widget_Material_ActionButton_CloseMode = 16974420; // 0x1030254 + field public static final int Widget_Material_ActionButton_Overflow = 16974421; // 0x1030255 + field public static final int Widget_Material_ActionMode = 16974422; // 0x1030256 + field public static final int Widget_Material_AutoCompleteTextView = 16974423; // 0x1030257 + field public static final int Widget_Material_Button = 16974424; // 0x1030258 + field public static final int Widget_Material_ButtonBar = 16974431; // 0x103025f + field public static final int Widget_Material_ButtonBar_AlertDialog = 16974432; // 0x1030260 + field public static final int Widget_Material_Button_Borderless = 16974425; // 0x1030259 + field public static final int Widget_Material_Button_Borderless_Colored = 16974426; // 0x103025a + field public static final int Widget_Material_Button_Borderless_Small = 16974427; // 0x103025b + field public static final int Widget_Material_Button_Colored = 16974547; // 0x10302d3 + field public static final int Widget_Material_Button_Inset = 16974428; // 0x103025c + field public static final int Widget_Material_Button_Small = 16974429; // 0x103025d + field public static final int Widget_Material_Button_Toggle = 16974430; // 0x103025e + field public static final int Widget_Material_CalendarView = 16974433; // 0x1030261 + field public static final int Widget_Material_CheckedTextView = 16974434; // 0x1030262 + field public static final int Widget_Material_CompoundButton_CheckBox = 16974435; // 0x1030263 + field public static final int Widget_Material_CompoundButton_RadioButton = 16974436; // 0x1030264 + field public static final int Widget_Material_CompoundButton_Star = 16974437; // 0x1030265 + field public static final int Widget_Material_CompoundButton_Switch = 16974554; // 0x10302da + field public static final int Widget_Material_DatePicker = 16974438; // 0x1030266 + field public static final int Widget_Material_DropDownItem = 16974439; // 0x1030267 + field public static final int Widget_Material_DropDownItem_Spinner = 16974440; // 0x1030268 + field public static final int Widget_Material_EditText = 16974441; // 0x1030269 + field public static final int Widget_Material_ExpandableListView = 16974442; // 0x103026a + field public static final int Widget_Material_FastScroll = 16974443; // 0x103026b + field public static final int Widget_Material_GridView = 16974444; // 0x103026c + field public static final int Widget_Material_HorizontalScrollView = 16974445; // 0x103026d + field public static final int Widget_Material_ImageButton = 16974446; // 0x103026e + field public static final int Widget_Material_Light = 16974478; // 0x103028e + field public static final int Widget_Material_Light_ActionBar = 16974479; // 0x103028f + field public static final int Widget_Material_Light_ActionBar_Solid = 16974480; // 0x1030290 + field public static final int Widget_Material_Light_ActionBar_TabBar = 16974481; // 0x1030291 + field public static final int Widget_Material_Light_ActionBar_TabText = 16974482; // 0x1030292 + field public static final int Widget_Material_Light_ActionBar_TabView = 16974483; // 0x1030293 + field public static final int Widget_Material_Light_ActionButton = 16974484; // 0x1030294 + field public static final int Widget_Material_Light_ActionButton_CloseMode = 16974485; // 0x1030295 + field public static final int Widget_Material_Light_ActionButton_Overflow = 16974486; // 0x1030296 + field public static final int Widget_Material_Light_ActionMode = 16974487; // 0x1030297 + field public static final int Widget_Material_Light_AutoCompleteTextView = 16974488; // 0x1030298 + field public static final int Widget_Material_Light_Button = 16974489; // 0x1030299 + field public static final int Widget_Material_Light_ButtonBar = 16974496; // 0x10302a0 + field public static final int Widget_Material_Light_ButtonBar_AlertDialog = 16974497; // 0x10302a1 + field public static final int Widget_Material_Light_Button_Borderless = 16974490; // 0x103029a + field public static final int Widget_Material_Light_Button_Borderless_Colored = 16974491; // 0x103029b + field public static final int Widget_Material_Light_Button_Borderless_Small = 16974492; // 0x103029c + field public static final int Widget_Material_Light_Button_Inset = 16974493; // 0x103029d + field public static final int Widget_Material_Light_Button_Small = 16974494; // 0x103029e + field public static final int Widget_Material_Light_Button_Toggle = 16974495; // 0x103029f + field public static final int Widget_Material_Light_CalendarView = 16974498; // 0x10302a2 + field public static final int Widget_Material_Light_CheckedTextView = 16974499; // 0x10302a3 + field public static final int Widget_Material_Light_CompoundButton_CheckBox = 16974500; // 0x10302a4 + field public static final int Widget_Material_Light_CompoundButton_RadioButton = 16974501; // 0x10302a5 + field public static final int Widget_Material_Light_CompoundButton_Star = 16974502; // 0x10302a6 + field public static final int Widget_Material_Light_CompoundButton_Switch = 16974555; // 0x10302db + field public static final int Widget_Material_Light_DatePicker = 16974503; // 0x10302a7 + field public static final int Widget_Material_Light_DropDownItem = 16974504; // 0x10302a8 + field public static final int Widget_Material_Light_DropDownItem_Spinner = 16974505; // 0x10302a9 + field public static final int Widget_Material_Light_EditText = 16974506; // 0x10302aa + field public static final int Widget_Material_Light_ExpandableListView = 16974507; // 0x10302ab + field public static final int Widget_Material_Light_FastScroll = 16974508; // 0x10302ac + field public static final int Widget_Material_Light_GridView = 16974509; // 0x10302ad + field public static final int Widget_Material_Light_HorizontalScrollView = 16974510; // 0x10302ae + field public static final int Widget_Material_Light_ImageButton = 16974511; // 0x10302af + field public static final int Widget_Material_Light_ListPopupWindow = 16974512; // 0x10302b0 + field public static final int Widget_Material_Light_ListView = 16974513; // 0x10302b1 + field public static final int Widget_Material_Light_ListView_DropDown = 16974514; // 0x10302b2 + field public static final int Widget_Material_Light_MediaRouteButton = 16974515; // 0x10302b3 + field public static final int Widget_Material_Light_NumberPicker = 16974557; // 0x10302dd + field public static final int Widget_Material_Light_PopupMenu = 16974516; // 0x10302b4 + field public static final int Widget_Material_Light_PopupMenu_Overflow = 16974517; // 0x10302b5 + field public static final int Widget_Material_Light_PopupWindow = 16974518; // 0x10302b6 + field public static final int Widget_Material_Light_ProgressBar = 16974519; // 0x10302b7 + field public static final int Widget_Material_Light_ProgressBar_Horizontal = 16974520; // 0x10302b8 + field public static final int Widget_Material_Light_ProgressBar_Inverse = 16974521; // 0x10302b9 + field public static final int Widget_Material_Light_ProgressBar_Large = 16974522; // 0x10302ba + field public static final int Widget_Material_Light_ProgressBar_Large_Inverse = 16974523; // 0x10302bb + field public static final int Widget_Material_Light_ProgressBar_Small = 16974524; // 0x10302bc + field public static final int Widget_Material_Light_ProgressBar_Small_Inverse = 16974525; // 0x10302bd + field public static final int Widget_Material_Light_ProgressBar_Small_Title = 16974526; // 0x10302be + field public static final int Widget_Material_Light_RatingBar = 16974527; // 0x10302bf + field public static final int Widget_Material_Light_RatingBar_Indicator = 16974528; // 0x10302c0 + field public static final int Widget_Material_Light_RatingBar_Small = 16974529; // 0x10302c1 + field public static final int Widget_Material_Light_ScrollView = 16974530; // 0x10302c2 + field public static final int Widget_Material_Light_SearchView = 16974531; // 0x10302c3 + field public static final int Widget_Material_Light_SeekBar = 16974532; // 0x10302c4 + field public static final int Widget_Material_Light_SegmentedButton = 16974533; // 0x10302c5 + field public static final int Widget_Material_Light_Spinner = 16974535; // 0x10302c7 + field public static final int Widget_Material_Light_Spinner_Underlined = 16974536; // 0x10302c8 + field public static final int Widget_Material_Light_StackView = 16974534; // 0x10302c6 + field public static final int Widget_Material_Light_Tab = 16974537; // 0x10302c9 + field public static final int Widget_Material_Light_TabWidget = 16974538; // 0x10302ca + field public static final int Widget_Material_Light_TextView = 16974539; // 0x10302cb + field public static final int Widget_Material_Light_TextView_SpinnerItem = 16974540; // 0x10302cc + field public static final int Widget_Material_Light_TimePicker = 16974541; // 0x10302cd + field public static final int Widget_Material_Light_WebTextView = 16974542; // 0x10302ce + field public static final int Widget_Material_Light_WebView = 16974543; // 0x10302cf + field public static final int Widget_Material_ListPopupWindow = 16974447; // 0x103026f + field public static final int Widget_Material_ListView = 16974448; // 0x1030270 + field public static final int Widget_Material_ListView_DropDown = 16974449; // 0x1030271 + field public static final int Widget_Material_MediaRouteButton = 16974450; // 0x1030272 + field public static final int Widget_Material_NumberPicker = 16974556; // 0x10302dc + field public static final int Widget_Material_PopupMenu = 16974451; // 0x1030273 + field public static final int Widget_Material_PopupMenu_Overflow = 16974452; // 0x1030274 + field public static final int Widget_Material_PopupWindow = 16974453; // 0x1030275 + field public static final int Widget_Material_ProgressBar = 16974454; // 0x1030276 + field public static final int Widget_Material_ProgressBar_Horizontal = 16974455; // 0x1030277 + field public static final int Widget_Material_ProgressBar_Large = 16974456; // 0x1030278 + field public static final int Widget_Material_ProgressBar_Small = 16974457; // 0x1030279 + field public static final int Widget_Material_ProgressBar_Small_Title = 16974458; // 0x103027a + field public static final int Widget_Material_RatingBar = 16974459; // 0x103027b + field public static final int Widget_Material_RatingBar_Indicator = 16974460; // 0x103027c + field public static final int Widget_Material_RatingBar_Small = 16974461; // 0x103027d + field public static final int Widget_Material_ScrollView = 16974462; // 0x103027e + field public static final int Widget_Material_SearchView = 16974463; // 0x103027f + field public static final int Widget_Material_SeekBar = 16974464; // 0x1030280 + field public static final int Widget_Material_SeekBar_Discrete = 16974553; // 0x10302d9 + field public static final int Widget_Material_SegmentedButton = 16974465; // 0x1030281 + field public static final int Widget_Material_Spinner = 16974467; // 0x1030283 + field public static final int Widget_Material_Spinner_Underlined = 16974468; // 0x1030284 + field public static final int Widget_Material_StackView = 16974466; // 0x1030282 + field public static final int Widget_Material_Tab = 16974469; // 0x1030285 + field public static final int Widget_Material_TabWidget = 16974470; // 0x1030286 + field public static final int Widget_Material_TextView = 16974471; // 0x1030287 + field public static final int Widget_Material_TextView_SpinnerItem = 16974472; // 0x1030288 + field public static final int Widget_Material_TimePicker = 16974473; // 0x1030289 + field public static final int Widget_Material_Toolbar = 16974474; // 0x103028a + field public static final int Widget_Material_Toolbar_Button_Navigation = 16974475; // 0x103028b + field public static final int Widget_Material_WebTextView = 16974476; // 0x103028c + field public static final int Widget_Material_WebView = 16974477; // 0x103028d + field public static final int Widget_PopupMenu = 16973958; // 0x1030086 + field public static final int Widget_PopupWindow = 16973878; // 0x1030036 + field public static final int Widget_ProgressBar = 16973852; // 0x103001c + field public static final int Widget_ProgressBar_Horizontal = 16973855; // 0x103001f + field public static final int Widget_ProgressBar_Inverse = 16973915; // 0x103005b + field public static final int Widget_ProgressBar_Large = 16973853; // 0x103001d + field public static final int Widget_ProgressBar_Large_Inverse = 16973916; // 0x103005c + field public static final int Widget_ProgressBar_Small = 16973854; // 0x103001e + field public static final int Widget_ProgressBar_Small_Inverse = 16973917; // 0x103005d + field public static final int Widget_RatingBar = 16973857; // 0x1030021 + field public static final int Widget_ScrollView = 16973869; // 0x103002d + field public static final int Widget_SeekBar = 16973856; // 0x1030020 + field public static final int Widget_Spinner = 16973864; // 0x1030028 + field public static final int Widget_Spinner_DropDown = 16973955; // 0x1030083 + field public static final int Widget_StackView = 16974310; // 0x10301e6 + field public static final int Widget_TabWidget = 16973876; // 0x1030034 + field public static final int Widget_TextView = 16973858; // 0x1030022 + field public static final int Widget_TextView_PopupMenu = 16973865; // 0x1030029 + field public static final int Widget_TextView_SpinnerItem = 16973866; // 0x103002a + field public static final int Widget_Toolbar = 16974311; // 0x10301e7 + field public static final int Widget_Toolbar_Button_Navigation = 16974312; // 0x10301e8 + field public static final int Widget_WebView = 16973875; // 0x1030033 + } + + public static final class R.transition { + ctor public R.transition(); + field public static final int explode = 17760259; // 0x10f0003 + field public static final int fade = 17760258; // 0x10f0002 + field public static final int move = 17760257; // 0x10f0001 + field public static final int no_transition = 17760256; // 0x10f0000 + field public static final int slide_bottom = 17760260; // 0x10f0004 + field public static final int slide_left = 17760263; // 0x10f0007 + field public static final int slide_right = 17760262; // 0x10f0006 + field public static final int slide_top = 17760261; // 0x10f0005 + } + + public static final class R.xml { + ctor public R.xml(); + } + +} + +package android.accessibilityservice { + + public final class AccessibilityButtonController { + method public boolean isAccessibilityButtonAvailable(); + method public void registerAccessibilityButtonCallback(@NonNull android.accessibilityservice.AccessibilityButtonController.AccessibilityButtonCallback); + method public void registerAccessibilityButtonCallback(@NonNull android.accessibilityservice.AccessibilityButtonController.AccessibilityButtonCallback, @NonNull android.os.Handler); + method public void unregisterAccessibilityButtonCallback(@NonNull android.accessibilityservice.AccessibilityButtonController.AccessibilityButtonCallback); + } + + public abstract static class AccessibilityButtonController.AccessibilityButtonCallback { + ctor public AccessibilityButtonController.AccessibilityButtonCallback(); + method public void onAvailabilityChanged(android.accessibilityservice.AccessibilityButtonController, boolean); + method public void onClicked(android.accessibilityservice.AccessibilityButtonController); + } + + public final class AccessibilityGestureEvent implements android.os.Parcelable { + ctor public AccessibilityGestureEvent(int, int, @NonNull java.util.List); + method public int describeContents(); + method @NonNull public static String gestureIdToString(int); + method public int getDisplayId(); + method public int getGestureId(); + method @NonNull public java.util.List getMotionEvents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class AccessibilityService extends android.app.Service { + ctor public AccessibilityService(); + method public void attachAccessibilityOverlayToDisplay(int, @NonNull android.view.SurfaceControl); + method @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public final void attachAccessibilityOverlayToDisplay(int, @NonNull android.view.SurfaceControl, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer); + method public void attachAccessibilityOverlayToWindow(int, @NonNull android.view.SurfaceControl); + method @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public final void attachAccessibilityOverlayToWindow(int, @NonNull android.view.SurfaceControl, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer); + method public boolean clearCache(); + method public boolean clearCachedSubtree(@NonNull android.view.accessibility.AccessibilityNodeInfo); + method public final void disableSelf(); + method public final boolean dispatchGesture(@NonNull android.accessibilityservice.GestureDescription, @Nullable android.accessibilityservice.AccessibilityService.GestureResultCallback, @Nullable android.os.Handler); + method public android.view.accessibility.AccessibilityNodeInfo findFocus(int); + method @NonNull public final android.accessibilityservice.AccessibilityButtonController getAccessibilityButtonController(); + method @NonNull public final android.accessibilityservice.AccessibilityButtonController getAccessibilityButtonController(int); + method @FlaggedApi("android.view.accessibility.braille_display_hid") @NonNull public final android.accessibilityservice.BrailleDisplayController getBrailleDisplayController(); + method @NonNull @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) public final android.accessibilityservice.FingerprintGestureController getFingerprintGestureController(); + method @Nullable public final android.accessibilityservice.InputMethod getInputMethod(); + method @NonNull public final android.accessibilityservice.AccessibilityService.MagnificationController getMagnificationController(); + method public android.view.accessibility.AccessibilityNodeInfo getRootInActiveWindow(); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo getRootInActiveWindow(int); + method public final android.accessibilityservice.AccessibilityServiceInfo getServiceInfo(); + method @NonNull public final android.accessibilityservice.AccessibilityService.SoftKeyboardController getSoftKeyboardController(); + method @NonNull public final java.util.List getSystemActions(); + method @NonNull public final android.accessibilityservice.TouchInteractionController getTouchInteractionController(int); + method public java.util.List getWindows(); + method @NonNull public final android.util.SparseArray> getWindowsOnAllDisplays(); + method public boolean isCacheEnabled(); + method public boolean isNodeInCache(@NonNull android.view.accessibility.AccessibilityNodeInfo); + method public abstract void onAccessibilityEvent(android.view.accessibility.AccessibilityEvent); + method public final android.os.IBinder onBind(android.content.Intent); + method @NonNull public android.accessibilityservice.InputMethod onCreateInputMethod(); + method @Deprecated protected boolean onGesture(int); + method public boolean onGesture(@NonNull android.accessibilityservice.AccessibilityGestureEvent); + method public abstract void onInterrupt(); + method protected boolean onKeyEvent(android.view.KeyEvent); + method public void onMotionEvent(@NonNull android.view.MotionEvent); + method protected void onServiceConnected(); + method public void onSystemActionsChanged(); + method public final boolean performGlobalAction(int); + method public void setAccessibilityFocusAppearance(int, @ColorInt int); + method public void setAnimationScale(float); + method public boolean setCacheEnabled(boolean); + method public void setGestureDetectionPassthroughRegion(int, @NonNull android.graphics.Region); + method public final void setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo); + method public void setTouchExplorationPassthroughRegion(int, @NonNull android.graphics.Region); + method public void takeScreenshot(int, @NonNull java.util.concurrent.Executor, @NonNull android.accessibilityservice.AccessibilityService.TakeScreenshotCallback); + method public void takeScreenshotOfWindow(int, @NonNull java.util.concurrent.Executor, @NonNull android.accessibilityservice.AccessibilityService.TakeScreenshotCallback); + field public static final int ERROR_TAKE_SCREENSHOT_INTERNAL_ERROR = 1; // 0x1 + field public static final int ERROR_TAKE_SCREENSHOT_INTERVAL_TIME_SHORT = 3; // 0x3 + field public static final int ERROR_TAKE_SCREENSHOT_INVALID_DISPLAY = 4; // 0x4 + field public static final int ERROR_TAKE_SCREENSHOT_INVALID_WINDOW = 5; // 0x5 + field public static final int ERROR_TAKE_SCREENSHOT_NO_ACCESSIBILITY_ACCESS = 2; // 0x2 + field public static final int ERROR_TAKE_SCREENSHOT_SECURE_WINDOW = 6; // 0x6 + field public static final int GESTURE_2_FINGER_DOUBLE_TAP = 20; // 0x14 + field public static final int GESTURE_2_FINGER_DOUBLE_TAP_AND_HOLD = 40; // 0x28 + field public static final int GESTURE_2_FINGER_SINGLE_TAP = 19; // 0x13 + field public static final int GESTURE_2_FINGER_SWIPE_DOWN = 26; // 0x1a + field public static final int GESTURE_2_FINGER_SWIPE_LEFT = 27; // 0x1b + field public static final int GESTURE_2_FINGER_SWIPE_RIGHT = 28; // 0x1c + field public static final int GESTURE_2_FINGER_SWIPE_UP = 25; // 0x19 + field public static final int GESTURE_2_FINGER_TRIPLE_TAP = 21; // 0x15 + field public static final int GESTURE_2_FINGER_TRIPLE_TAP_AND_HOLD = 43; // 0x2b + field public static final int GESTURE_3_FINGER_DOUBLE_TAP = 23; // 0x17 + field public static final int GESTURE_3_FINGER_DOUBLE_TAP_AND_HOLD = 41; // 0x29 + field public static final int GESTURE_3_FINGER_SINGLE_TAP = 22; // 0x16 + field public static final int GESTURE_3_FINGER_SINGLE_TAP_AND_HOLD = 44; // 0x2c + field public static final int GESTURE_3_FINGER_SWIPE_DOWN = 30; // 0x1e + field public static final int GESTURE_3_FINGER_SWIPE_LEFT = 31; // 0x1f + field public static final int GESTURE_3_FINGER_SWIPE_RIGHT = 32; // 0x20 + field public static final int GESTURE_3_FINGER_SWIPE_UP = 29; // 0x1d + field public static final int GESTURE_3_FINGER_TRIPLE_TAP = 24; // 0x18 + field public static final int GESTURE_3_FINGER_TRIPLE_TAP_AND_HOLD = 45; // 0x2d + field public static final int GESTURE_4_FINGER_DOUBLE_TAP = 38; // 0x26 + field public static final int GESTURE_4_FINGER_DOUBLE_TAP_AND_HOLD = 42; // 0x2a + field public static final int GESTURE_4_FINGER_SINGLE_TAP = 37; // 0x25 + field public static final int GESTURE_4_FINGER_SWIPE_DOWN = 34; // 0x22 + field public static final int GESTURE_4_FINGER_SWIPE_LEFT = 35; // 0x23 + field public static final int GESTURE_4_FINGER_SWIPE_RIGHT = 36; // 0x24 + field public static final int GESTURE_4_FINGER_SWIPE_UP = 33; // 0x21 + field public static final int GESTURE_4_FINGER_TRIPLE_TAP = 39; // 0x27 + field public static final int GESTURE_DOUBLE_TAP = 17; // 0x11 + field public static final int GESTURE_DOUBLE_TAP_AND_HOLD = 18; // 0x12 + field public static final int GESTURE_SWIPE_DOWN = 2; // 0x2 + field public static final int GESTURE_SWIPE_DOWN_AND_LEFT = 15; // 0xf + field public static final int GESTURE_SWIPE_DOWN_AND_RIGHT = 16; // 0x10 + field public static final int GESTURE_SWIPE_DOWN_AND_UP = 8; // 0x8 + field public static final int GESTURE_SWIPE_LEFT = 3; // 0x3 + field public static final int GESTURE_SWIPE_LEFT_AND_DOWN = 10; // 0xa + field public static final int GESTURE_SWIPE_LEFT_AND_RIGHT = 5; // 0x5 + field public static final int GESTURE_SWIPE_LEFT_AND_UP = 9; // 0x9 + field public static final int GESTURE_SWIPE_RIGHT = 4; // 0x4 + field public static final int GESTURE_SWIPE_RIGHT_AND_DOWN = 12; // 0xc + field public static final int GESTURE_SWIPE_RIGHT_AND_LEFT = 6; // 0x6 + field public static final int GESTURE_SWIPE_RIGHT_AND_UP = 11; // 0xb + field public static final int GESTURE_SWIPE_UP = 1; // 0x1 + field public static final int GESTURE_SWIPE_UP_AND_DOWN = 7; // 0x7 + field public static final int GESTURE_SWIPE_UP_AND_LEFT = 13; // 0xd + field public static final int GESTURE_SWIPE_UP_AND_RIGHT = 14; // 0xe + field public static final int GESTURE_UNKNOWN = 0; // 0x0 + field public static final int GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS = 14; // 0xe + field public static final int GLOBAL_ACTION_ACCESSIBILITY_BUTTON = 11; // 0xb + field public static final int GLOBAL_ACTION_ACCESSIBILITY_BUTTON_CHOOSER = 12; // 0xc + field public static final int GLOBAL_ACTION_ACCESSIBILITY_SHORTCUT = 13; // 0xd + field public static final int GLOBAL_ACTION_BACK = 1; // 0x1 + field public static final int GLOBAL_ACTION_DISMISS_NOTIFICATION_SHADE = 15; // 0xf + field public static final int GLOBAL_ACTION_DPAD_CENTER = 20; // 0x14 + field public static final int GLOBAL_ACTION_DPAD_DOWN = 17; // 0x11 + field public static final int GLOBAL_ACTION_DPAD_LEFT = 18; // 0x12 + field public static final int GLOBAL_ACTION_DPAD_RIGHT = 19; // 0x13 + field public static final int GLOBAL_ACTION_DPAD_UP = 16; // 0x10 + field public static final int GLOBAL_ACTION_HOME = 2; // 0x2 + field public static final int GLOBAL_ACTION_KEYCODE_HEADSETHOOK = 10; // 0xa + field public static final int GLOBAL_ACTION_LOCK_SCREEN = 8; // 0x8 + field @FlaggedApi("android.view.accessibility.global_action_media_play_pause") public static final int GLOBAL_ACTION_MEDIA_PLAY_PAUSE = 22; // 0x16 + field @FlaggedApi("android.view.accessibility.global_action_menu") public static final int GLOBAL_ACTION_MENU = 21; // 0x15 + field public static final int GLOBAL_ACTION_NOTIFICATIONS = 4; // 0x4 + field public static final int GLOBAL_ACTION_POWER_DIALOG = 6; // 0x6 + field public static final int GLOBAL_ACTION_QUICK_SETTINGS = 5; // 0x5 + field public static final int GLOBAL_ACTION_RECENTS = 3; // 0x3 + field public static final int GLOBAL_ACTION_TAKE_SCREENSHOT = 9; // 0x9 + field public static final int GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN = 7; // 0x7 + field @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public static final int OVERLAY_RESULT_INTERNAL_ERROR = 1; // 0x1 + field @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public static final int OVERLAY_RESULT_INVALID = 2; // 0x2 + field @FlaggedApi("android.view.accessibility.a11y_overlay_callbacks") public static final int OVERLAY_RESULT_SUCCESS = 0; // 0x0 + field public static final String SERVICE_INTERFACE = "android.accessibilityservice.AccessibilityService"; + field public static final String SERVICE_META_DATA = "android.accessibilityservice"; + field public static final int SHOW_MODE_AUTO = 0; // 0x0 + field public static final int SHOW_MODE_HIDDEN = 1; // 0x1 + field public static final int SHOW_MODE_IGNORE_HARD_KEYBOARD = 2; // 0x2 + } + + public abstract static class AccessibilityService.GestureResultCallback { + ctor public AccessibilityService.GestureResultCallback(); + method public void onCancelled(android.accessibilityservice.GestureDescription); + method public void onCompleted(android.accessibilityservice.GestureDescription); + } + + public static final class AccessibilityService.MagnificationController { + method public void addListener(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController.OnMagnificationChangedListener); + method public void addListener(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController.OnMagnificationChangedListener, @Nullable android.os.Handler); + method @Deprecated public float getCenterX(); + method @Deprecated public float getCenterY(); + method @NonNull public android.graphics.Region getCurrentMagnificationRegion(); + method @Nullable public android.accessibilityservice.MagnificationConfig getMagnificationConfig(); + method @Deprecated @NonNull public android.graphics.Region getMagnificationRegion(); + method @Deprecated public float getScale(); + method public boolean removeListener(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController.OnMagnificationChangedListener); + method public boolean reset(boolean); + method public boolean resetCurrentMagnification(boolean); + method @Deprecated public boolean setCenter(float, float, boolean); + method public boolean setMagnificationConfig(@NonNull android.accessibilityservice.MagnificationConfig, boolean); + method @Deprecated public boolean setScale(float, boolean); + } + + public static interface AccessibilityService.MagnificationController.OnMagnificationChangedListener { + method @Deprecated public void onMagnificationChanged(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController, @NonNull android.graphics.Region, float, float, float); + method public default void onMagnificationChanged(@NonNull android.accessibilityservice.AccessibilityService.MagnificationController, @NonNull android.graphics.Region, @NonNull android.accessibilityservice.MagnificationConfig); + } + + public static final class AccessibilityService.ScreenshotResult { + method @NonNull public android.graphics.ColorSpace getColorSpace(); + method @NonNull public android.hardware.HardwareBuffer getHardwareBuffer(); + method public long getTimestamp(); + } + + public static final class AccessibilityService.SoftKeyboardController { + method public void addOnShowModeChangedListener(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener); + method public void addOnShowModeChangedListener(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener, @Nullable android.os.Handler); + method public int getShowMode(); + method public boolean removeOnShowModeChangedListener(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController.OnShowModeChangedListener); + method @CheckResult public int setInputMethodEnabled(@NonNull String, boolean) throws java.lang.SecurityException; + method public boolean setShowMode(int); + method public boolean switchToInputMethod(@NonNull String); + field public static final int ENABLE_IME_FAIL_BY_ADMIN = 1; // 0x1 + field public static final int ENABLE_IME_FAIL_UNKNOWN = 2; // 0x2 + field public static final int ENABLE_IME_SUCCESS = 0; // 0x0 + } + + public static interface AccessibilityService.SoftKeyboardController.OnShowModeChangedListener { + method public void onShowModeChanged(@NonNull android.accessibilityservice.AccessibilityService.SoftKeyboardController, int); + } + + public static interface AccessibilityService.TakeScreenshotCallback { + method public void onFailure(int); + method public void onSuccess(@NonNull android.accessibilityservice.AccessibilityService.ScreenshotResult); + } + + public class AccessibilityServiceInfo implements android.os.Parcelable { + ctor public AccessibilityServiceInfo(); + method public static String capabilityToString(int); + method public int describeContents(); + method public static String feedbackTypeToString(int); + method public static String flagToString(int); + method @Deprecated public boolean getCanRetrieveWindowContent(); + method public int getCapabilities(); + method @Deprecated public String getDescription(); + method public String getId(); + method public int getInteractiveUiTimeoutMillis(); + method public int getMotionEventSources(); + method public int getNonInteractiveUiTimeoutMillis(); + method public android.content.pm.ResolveInfo getResolveInfo(); + method public String getSettingsActivityName(); + method @Nullable public String getTileServiceName(); + method public boolean isAccessibilityTool(); + method public String loadDescription(android.content.pm.PackageManager); + method @Nullable public CharSequence loadIntro(@NonNull android.content.pm.PackageManager); + method public CharSequence loadSummary(android.content.pm.PackageManager); + method public void setInteractiveUiTimeoutMillis(@IntRange(from=0) int); + method public void setMotionEventSources(int); + method public void setNonInteractiveUiTimeoutMillis(@IntRange(from=0) int); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CAPABILITY_CAN_CONTROL_MAGNIFICATION = 16; // 0x10 + field public static final int CAPABILITY_CAN_PERFORM_GESTURES = 32; // 0x20 + field @Deprecated public static final int CAPABILITY_CAN_REQUEST_ENHANCED_WEB_ACCESSIBILITY = 4; // 0x4 + field public static final int CAPABILITY_CAN_REQUEST_FILTER_KEY_EVENTS = 8; // 0x8 + field public static final int CAPABILITY_CAN_REQUEST_FINGERPRINT_GESTURES = 64; // 0x40 + field public static final int CAPABILITY_CAN_REQUEST_TOUCH_EXPLORATION = 2; // 0x2 + field public static final int CAPABILITY_CAN_RETRIEVE_WINDOW_CONTENT = 1; // 0x1 + field public static final int CAPABILITY_CAN_TAKE_SCREENSHOT = 128; // 0x80 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DEFAULT = 1; // 0x1 + field public static final int FEEDBACK_ALL_MASK = -1; // 0xffffffff + field public static final int FEEDBACK_AUDIBLE = 4; // 0x4 + field public static final int FEEDBACK_BRAILLE = 32; // 0x20 + field public static final int FEEDBACK_GENERIC = 16; // 0x10 + field public static final int FEEDBACK_HAPTIC = 2; // 0x2 + field public static final int FEEDBACK_SPOKEN = 1; // 0x1 + field public static final int FEEDBACK_VISUAL = 8; // 0x8 + field public static final int FLAG_ENABLE_ACCESSIBILITY_VOLUME = 128; // 0x80 + field public static final int FLAG_INCLUDE_NOT_IMPORTANT_VIEWS = 2; // 0x2 + field public static final int FLAG_INPUT_METHOD_EDITOR = 32768; // 0x8000 + field public static final int FLAG_REPORT_VIEW_IDS = 16; // 0x10 + field public static final int FLAG_REQUEST_2_FINGER_PASSTHROUGH = 8192; // 0x2000 + field public static final int FLAG_REQUEST_ACCESSIBILITY_BUTTON = 256; // 0x100 + field @Deprecated public static final int FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY = 8; // 0x8 + field public static final int FLAG_REQUEST_FILTER_KEY_EVENTS = 32; // 0x20 + field public static final int FLAG_REQUEST_FINGERPRINT_GESTURES = 512; // 0x200 + field public static final int FLAG_REQUEST_MULTI_FINGER_GESTURES = 4096; // 0x1000 + field public static final int FLAG_REQUEST_SHORTCUT_WARNING_DIALOG_SPOKEN_FEEDBACK = 1024; // 0x400 + field public static final int FLAG_REQUEST_TOUCH_EXPLORATION_MODE = 4; // 0x4 + field public static final int FLAG_RETRIEVE_INTERACTIVE_WINDOWS = 64; // 0x40 + field public static final int FLAG_SEND_MOTION_EVENTS = 16384; // 0x4000 + field public static final int FLAG_SERVICE_HANDLES_DOUBLE_TAP = 2048; // 0x800 + field public int eventTypes; + field public int feedbackType; + field public int flags; + field public long notificationTimeout; + field public String[] packageNames; + } + + @FlaggedApi("android.view.accessibility.braille_display_hid") public interface BrailleDisplayController { + method @FlaggedApi("android.view.accessibility.braille_display_hid") @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void connect(@NonNull android.bluetooth.BluetoothDevice, @NonNull android.accessibilityservice.BrailleDisplayController.BrailleDisplayCallback); + method @FlaggedApi("android.view.accessibility.braille_display_hid") @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public void connect(@NonNull android.bluetooth.BluetoothDevice, @NonNull java.util.concurrent.Executor, @NonNull android.accessibilityservice.BrailleDisplayController.BrailleDisplayCallback); + method @FlaggedApi("android.view.accessibility.braille_display_hid") public void connect(@NonNull android.hardware.usb.UsbDevice, @NonNull android.accessibilityservice.BrailleDisplayController.BrailleDisplayCallback); + method @FlaggedApi("android.view.accessibility.braille_display_hid") public void connect(@NonNull android.hardware.usb.UsbDevice, @NonNull java.util.concurrent.Executor, @NonNull android.accessibilityservice.BrailleDisplayController.BrailleDisplayCallback); + method @FlaggedApi("android.view.accessibility.braille_display_hid") public void disconnect(); + method @FlaggedApi("android.view.accessibility.braille_display_hid") public boolean isConnected(); + method @FlaggedApi("android.view.accessibility.braille_display_hid") public void write(@NonNull byte[]) throws java.io.IOException; + } + + @FlaggedApi("android.view.accessibility.braille_display_hid") public static interface BrailleDisplayController.BrailleDisplayCallback { + method @FlaggedApi("android.view.accessibility.braille_display_hid") public void onConnected(@NonNull byte[]); + method @FlaggedApi("android.view.accessibility.braille_display_hid") public void onConnectionFailed(int); + method @FlaggedApi("android.view.accessibility.braille_display_hid") public void onDisconnected(); + method @FlaggedApi("android.view.accessibility.braille_display_hid") public void onInput(@NonNull byte[]); + field @FlaggedApi("android.view.accessibility.braille_display_hid") public static final int FLAG_ERROR_BRAILLE_DISPLAY_NOT_FOUND = 2; // 0x2 + field @FlaggedApi("android.view.accessibility.braille_display_hid") public static final int FLAG_ERROR_CANNOT_ACCESS = 1; // 0x1 + } + + public final class FingerprintGestureController { + method public boolean isGestureDetectionAvailable(); + method public void registerFingerprintGestureCallback(@NonNull android.accessibilityservice.FingerprintGestureController.FingerprintGestureCallback, @Nullable android.os.Handler); + method public void unregisterFingerprintGestureCallback(android.accessibilityservice.FingerprintGestureController.FingerprintGestureCallback); + field public static final int FINGERPRINT_GESTURE_SWIPE_DOWN = 8; // 0x8 + field public static final int FINGERPRINT_GESTURE_SWIPE_LEFT = 2; // 0x2 + field public static final int FINGERPRINT_GESTURE_SWIPE_RIGHT = 1; // 0x1 + field public static final int FINGERPRINT_GESTURE_SWIPE_UP = 4; // 0x4 + } + + public abstract static class FingerprintGestureController.FingerprintGestureCallback { + ctor public FingerprintGestureController.FingerprintGestureCallback(); + method public void onGestureDetected(int); + method public void onGestureDetectionAvailabilityChanged(boolean); + } + + public final class GestureDescription { + method public int getDisplayId(); + method public static long getMaxGestureDuration(); + method public static int getMaxStrokeCount(); + method public android.accessibilityservice.GestureDescription.StrokeDescription getStroke(@IntRange(from=0) int); + method public int getStrokeCount(); + } + + public static class GestureDescription.Builder { + ctor public GestureDescription.Builder(); + method public android.accessibilityservice.GestureDescription.Builder addStroke(@NonNull android.accessibilityservice.GestureDescription.StrokeDescription); + method public android.accessibilityservice.GestureDescription build(); + method @NonNull public android.accessibilityservice.GestureDescription.Builder setDisplayId(int); + } + + public static class GestureDescription.StrokeDescription { + ctor public GestureDescription.StrokeDescription(@NonNull android.graphics.Path, @IntRange(from=0) long, @IntRange(from=0) long); + ctor public GestureDescription.StrokeDescription(@NonNull android.graphics.Path, @IntRange(from=0) long, @IntRange(from=0) long, boolean); + method public android.accessibilityservice.GestureDescription.StrokeDescription continueStroke(android.graphics.Path, long, long, boolean); + method public long getDuration(); + method public android.graphics.Path getPath(); + method public long getStartTime(); + method public boolean willContinue(); + } + + public class InputMethod { + ctor public InputMethod(@NonNull android.accessibilityservice.AccessibilityService); + method @Nullable public final android.accessibilityservice.InputMethod.AccessibilityInputConnection getCurrentInputConnection(); + method @Nullable public final android.view.inputmethod.EditorInfo getCurrentInputEditorInfo(); + method public final boolean getCurrentInputStarted(); + method public void onFinishInput(); + method public void onStartInput(@NonNull android.view.inputmethod.EditorInfo, boolean); + method public void onUpdateSelection(int, int, int, int, int, int); + } + + public final class InputMethod.AccessibilityInputConnection { + method public void clearMetaKeyStates(int); + method public void commitText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); + method public void deleteSurroundingText(int, int); + method public int getCursorCapsMode(int); + method @Nullable public android.view.inputmethod.SurroundingText getSurroundingText(@IntRange(from=0) int, @IntRange(from=0) int, int); + method public void performContextMenuAction(int); + method public void performEditorAction(int); + method public void sendKeyEvent(@NonNull android.view.KeyEvent); + method public void setSelection(int, int); + } + + public final class MagnificationConfig implements android.os.Parcelable { + method public int describeContents(); + method public float getCenterX(); + method public float getCenterY(); + method public int getMode(); + method public float getScale(); + method public boolean isActivated(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int MAGNIFICATION_MODE_DEFAULT = 0; // 0x0 + field public static final int MAGNIFICATION_MODE_FULLSCREEN = 1; // 0x1 + field public static final int MAGNIFICATION_MODE_WINDOW = 2; // 0x2 + } + + public static final class MagnificationConfig.Builder { + ctor public MagnificationConfig.Builder(); + method @NonNull public android.accessibilityservice.MagnificationConfig build(); + method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setActivated(boolean); + method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setCenterX(float); + method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setCenterY(float); + method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setMode(int); + method @NonNull public android.accessibilityservice.MagnificationConfig.Builder setScale(@FloatRange(from=1.0f, to=8.0f) float); + } + + public final class TouchInteractionController { + method public int getDisplayId(); + method public int getMaxPointerCount(); + method public int getState(); + method public void performClick(); + method public void performLongClickAndStartDrag(); + method public void registerCallback(@Nullable java.util.concurrent.Executor, @NonNull android.accessibilityservice.TouchInteractionController.Callback); + method public void requestDelegating(); + method public void requestDragging(int); + method public void requestTouchExploration(); + method @NonNull public static String stateToString(int); + method public void unregisterAllCallbacks(); + method public boolean unregisterCallback(@NonNull android.accessibilityservice.TouchInteractionController.Callback); + field public static final int STATE_CLEAR = 0; // 0x0 + field public static final int STATE_DELEGATING = 4; // 0x4 + field public static final int STATE_DRAGGING = 3; // 0x3 + field public static final int STATE_TOUCH_EXPLORING = 2; // 0x2 + field public static final int STATE_TOUCH_INTERACTING = 1; // 0x1 + } + + public static interface TouchInteractionController.Callback { + method public void onMotionEvent(@NonNull android.view.MotionEvent); + method public void onStateChanged(int); + } + +} + +package android.accounts { + + public abstract class AbstractAccountAuthenticator { + ctor public AbstractAccountAuthenticator(android.content.Context); + method public abstract android.os.Bundle addAccount(android.accounts.AccountAuthenticatorResponse, String, String, String[], android.os.Bundle) throws android.accounts.NetworkErrorException; + method public android.os.Bundle addAccountFromCredentials(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, android.os.Bundle) throws android.accounts.NetworkErrorException; + method public abstract android.os.Bundle confirmCredentials(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, android.os.Bundle) throws android.accounts.NetworkErrorException; + method public abstract android.os.Bundle editProperties(android.accounts.AccountAuthenticatorResponse, String); + method public android.os.Bundle finishSession(android.accounts.AccountAuthenticatorResponse, String, android.os.Bundle) throws android.accounts.NetworkErrorException; + method public android.os.Bundle getAccountCredentialsForCloning(android.accounts.AccountAuthenticatorResponse, android.accounts.Account) throws android.accounts.NetworkErrorException; + method public android.os.Bundle getAccountRemovalAllowed(android.accounts.AccountAuthenticatorResponse, android.accounts.Account) throws android.accounts.NetworkErrorException; + method public abstract android.os.Bundle getAuthToken(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String, android.os.Bundle) throws android.accounts.NetworkErrorException; + method public abstract String getAuthTokenLabel(String); + method public final android.os.IBinder getIBinder(); + method public abstract android.os.Bundle hasFeatures(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String[]) throws android.accounts.NetworkErrorException; + method public android.os.Bundle isCredentialsUpdateSuggested(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String) throws android.accounts.NetworkErrorException; + method public android.os.Bundle startAddAccountSession(android.accounts.AccountAuthenticatorResponse, String, String, String[], android.os.Bundle) throws android.accounts.NetworkErrorException; + method public android.os.Bundle startUpdateCredentialsSession(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String, android.os.Bundle) throws android.accounts.NetworkErrorException; + method public abstract android.os.Bundle updateCredentials(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, String, android.os.Bundle) throws android.accounts.NetworkErrorException; + field public static final String KEY_CUSTOM_TOKEN_EXPIRY = "android.accounts.expiry"; + } + + public class Account implements android.os.Parcelable { + ctor public Account(@NonNull String, @NonNull String); + ctor public Account(android.os.Parcel); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @NonNull public final String name; + field @NonNull public final String type; + } + + @Deprecated public class AccountAuthenticatorActivity extends android.app.Activity { + ctor @Deprecated public AccountAuthenticatorActivity(); + method @Deprecated public final void setAccountAuthenticatorResult(android.os.Bundle); + } + + public class AccountAuthenticatorResponse implements android.os.Parcelable { + ctor public AccountAuthenticatorResponse(android.os.Parcel); + method public int describeContents(); + method public void onError(int, String); + method public void onRequestContinued(); + method public void onResult(android.os.Bundle); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class AccountManager { + method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture addAccount(String, String, String[], android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public boolean addAccountExplicitly(android.accounts.Account, String, android.os.Bundle); + method public boolean addAccountExplicitly(android.accounts.Account, String, android.os.Bundle, java.util.Map); + method @RequiresPermission(value="android.permission.GET_ACCOUNTS", apis="..22") public void addOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener, android.os.Handler, boolean); + method public void addOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener, android.os.Handler, boolean, String[]); + method @RequiresPermission(value="android.permission.USE_CREDENTIALS", apis="..22") public String blockingGetAuthToken(android.accounts.Account, String, boolean) throws android.accounts.AuthenticatorException, java.io.IOException, android.accounts.OperationCanceledException; + method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public void clearPassword(android.accounts.Account); + method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture confirmCredentials(android.accounts.Account, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); + method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture editProperties(String, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); + method public android.accounts.AccountManagerFuture finishSession(android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); + method public static android.accounts.AccountManager get(android.content.Context); + method public int getAccountVisibility(android.accounts.Account, String); + method @NonNull @RequiresPermission(value="android.permission.GET_ACCOUNTS", apis="..22") public android.accounts.Account[] getAccounts(); + method public java.util.Map getAccountsAndVisibilityForPackage(String, String); + method @NonNull @RequiresPermission(value="android.permission.GET_ACCOUNTS", apis="..22") public android.accounts.Account[] getAccountsByType(String); + method public android.accounts.AccountManagerFuture getAccountsByTypeAndFeatures(String, String[], android.accounts.AccountManagerCallback, android.os.Handler); + method @NonNull public android.accounts.Account[] getAccountsByTypeForPackage(String, String); + method @RequiresPermission(value="android.permission.USE_CREDENTIALS", apis="..22") public android.accounts.AccountManagerFuture getAuthToken(android.accounts.Account, String, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); + method @Deprecated @RequiresPermission(value="android.permission.USE_CREDENTIALS", apis="..22") public android.accounts.AccountManagerFuture getAuthToken(android.accounts.Account, String, boolean, android.accounts.AccountManagerCallback, android.os.Handler); + method @RequiresPermission(value="android.permission.USE_CREDENTIALS", apis="..22") public android.accounts.AccountManagerFuture getAuthToken(android.accounts.Account, String, android.os.Bundle, boolean, android.accounts.AccountManagerCallback, android.os.Handler); + method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture getAuthTokenByFeatures(String, String, String[], android.app.Activity, android.os.Bundle, android.os.Bundle, android.accounts.AccountManagerCallback, android.os.Handler); + method public android.accounts.AuthenticatorDescription[] getAuthenticatorTypes(); + method public java.util.Map getPackagesAndVisibilityForAccount(android.accounts.Account); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public String getPassword(android.accounts.Account); + method public String getPreviousName(android.accounts.Account); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public String getUserData(android.accounts.Account, String); + method public android.accounts.AccountManagerFuture hasFeatures(android.accounts.Account, String[], android.accounts.AccountManagerCallback, android.os.Handler); + method @RequiresPermission(anyOf={"android.permission.MANAGE_ACCOUNTS", "android.permission.USE_CREDENTIALS"}, apis="..22") public void invalidateAuthToken(String, String); + method public android.accounts.AccountManagerFuture isCredentialsUpdateSuggested(android.accounts.Account, String, android.accounts.AccountManagerCallback, android.os.Handler); + method @Deprecated public static android.content.Intent newChooseAccountIntent(android.accounts.Account, java.util.ArrayList, String[], boolean, String, String, String[], android.os.Bundle); + method public static android.content.Intent newChooseAccountIntent(android.accounts.Account, java.util.List, String[], String, String, String[], android.os.Bundle); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public boolean notifyAccountAuthenticated(android.accounts.Account); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public String peekAuthToken(android.accounts.Account, String); + method @Deprecated @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture removeAccount(android.accounts.Account, android.accounts.AccountManagerCallback, android.os.Handler); + method @FlaggedApi("android.app.admin.flags.split_create_managed_profile_enabled") @RequiresPermission(value="android.permission.REMOVE_ACCOUNTS", conditional=true) public android.accounts.AccountManagerFuture removeAccount(android.accounts.Account, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public boolean removeAccountExplicitly(android.accounts.Account); + method public void removeOnAccountsUpdatedListener(android.accounts.OnAccountsUpdateListener); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture renameAccount(android.accounts.Account, @Size(min=1) String, android.accounts.AccountManagerCallback, android.os.Handler); + method public boolean setAccountVisibility(android.accounts.Account, String, int); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public void setAuthToken(android.accounts.Account, String, String); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public void setPassword(android.accounts.Account, String); + method @RequiresPermission(value="android.permission.AUTHENTICATE_ACCOUNTS", apis="..22") public void setUserData(android.accounts.Account, String, String); + method public android.accounts.AccountManagerFuture startAddAccountSession(String, String, String[], android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); + method public android.accounts.AccountManagerFuture startUpdateCredentialsSession(android.accounts.Account, String, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); + method @RequiresPermission(value="android.permission.MANAGE_ACCOUNTS", apis="..22") public android.accounts.AccountManagerFuture updateCredentials(android.accounts.Account, String, android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback, android.os.Handler); + field public static final String ACTION_ACCOUNT_REMOVED = "android.accounts.action.ACCOUNT_REMOVED"; + field public static final String ACTION_AUTHENTICATOR_INTENT = "android.accounts.AccountAuthenticator"; + field public static final String AUTHENTICATOR_ATTRIBUTES_NAME = "account-authenticator"; + field public static final String AUTHENTICATOR_META_DATA_NAME = "android.accounts.AccountAuthenticator"; + field public static final int ERROR_CODE_BAD_ARGUMENTS = 7; // 0x7 + field public static final int ERROR_CODE_BAD_AUTHENTICATION = 9; // 0x9 + field public static final int ERROR_CODE_BAD_REQUEST = 8; // 0x8 + field public static final int ERROR_CODE_CANCELED = 4; // 0x4 + field public static final int ERROR_CODE_INVALID_RESPONSE = 5; // 0x5 + field public static final int ERROR_CODE_NETWORK_ERROR = 3; // 0x3 + field public static final int ERROR_CODE_REMOTE_EXCEPTION = 1; // 0x1 + field public static final int ERROR_CODE_UNSUPPORTED_OPERATION = 6; // 0x6 + field public static final String KEY_ACCOUNTS = "accounts"; + field public static final String KEY_ACCOUNT_AUTHENTICATOR_RESPONSE = "accountAuthenticatorResponse"; + field public static final String KEY_ACCOUNT_MANAGER_RESPONSE = "accountManagerResponse"; + field public static final String KEY_ACCOUNT_NAME = "authAccount"; + field public static final String KEY_ACCOUNT_SESSION_BUNDLE = "accountSessionBundle"; + field public static final String KEY_ACCOUNT_STATUS_TOKEN = "accountStatusToken"; + field public static final String KEY_ACCOUNT_TYPE = "accountType"; + field public static final String KEY_ANDROID_PACKAGE_NAME = "androidPackageName"; + field public static final String KEY_AUTHENTICATOR_TYPES = "authenticator_types"; + field public static final String KEY_AUTHTOKEN = "authtoken"; + field public static final String KEY_AUTH_FAILED_MESSAGE = "authFailedMessage"; + field public static final String KEY_AUTH_TOKEN_LABEL = "authTokenLabelKey"; + field public static final String KEY_BOOLEAN_RESULT = "booleanResult"; + field public static final String KEY_CALLER_PID = "callerPid"; + field public static final String KEY_CALLER_UID = "callerUid"; + field public static final String KEY_ERROR_CODE = "errorCode"; + field public static final String KEY_ERROR_MESSAGE = "errorMessage"; + field public static final String KEY_INTENT = "intent"; + field public static final String KEY_LAST_AUTHENTICATED_TIME = "lastAuthenticatedTime"; + field public static final String KEY_PASSWORD = "password"; + field public static final String KEY_USERDATA = "userdata"; + field @Deprecated public static final String LOGIN_ACCOUNTS_CHANGED_ACTION = "android.accounts.LOGIN_ACCOUNTS_CHANGED"; + field public static final String PACKAGE_NAME_KEY_LEGACY_NOT_VISIBLE = "android:accounts:key_legacy_not_visible"; + field public static final String PACKAGE_NAME_KEY_LEGACY_VISIBLE = "android:accounts:key_legacy_visible"; + field public static final int VISIBILITY_NOT_VISIBLE = 3; // 0x3 + field public static final int VISIBILITY_UNDEFINED = 0; // 0x0 + field public static final int VISIBILITY_USER_MANAGED_NOT_VISIBLE = 4; // 0x4 + field public static final int VISIBILITY_USER_MANAGED_VISIBLE = 2; // 0x2 + field public static final int VISIBILITY_VISIBLE = 1; // 0x1 + } + + public interface AccountManagerCallback { + method public void run(android.accounts.AccountManagerFuture); + } + + public interface AccountManagerFuture { + method public boolean cancel(boolean); + method public V getResult() throws android.accounts.AuthenticatorException, java.io.IOException, android.accounts.OperationCanceledException; + method public V getResult(long, java.util.concurrent.TimeUnit) throws android.accounts.AuthenticatorException, java.io.IOException, android.accounts.OperationCanceledException; + method public boolean isCancelled(); + method public boolean isDone(); + } + + public class AccountsException extends java.lang.Exception { + ctor public AccountsException(); + ctor public AccountsException(String); + ctor public AccountsException(String, Throwable); + ctor public AccountsException(Throwable); + } + + public class AuthenticatorDescription implements android.os.Parcelable { + ctor public AuthenticatorDescription(String, String, int, int, int, int, boolean); + ctor public AuthenticatorDescription(String, String, int, int, int, int); + method public int describeContents(); + method public static android.accounts.AuthenticatorDescription newKey(String); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public final int accountPreferencesId; + field public final boolean customTokens; + field public final int iconId; + field public final int labelId; + field public final String packageName; + field public final int smallIconId; + field public final String type; + } + + public class AuthenticatorException extends android.accounts.AccountsException { + ctor public AuthenticatorException(); + ctor public AuthenticatorException(String); + ctor public AuthenticatorException(String, Throwable); + ctor public AuthenticatorException(Throwable); + } + + public class NetworkErrorException extends android.accounts.AccountsException { + ctor public NetworkErrorException(); + ctor public NetworkErrorException(String); + ctor public NetworkErrorException(String, Throwable); + ctor public NetworkErrorException(Throwable); + } + + public interface OnAccountsUpdateListener { + method public void onAccountsUpdated(android.accounts.Account[]); + } + + public class OperationCanceledException extends android.accounts.AccountsException { + ctor public OperationCanceledException(); + ctor public OperationCanceledException(String); + ctor public OperationCanceledException(String, Throwable); + ctor public OperationCanceledException(Throwable); + } + +} + +package android.animation { + + public abstract class Animator implements java.lang.Cloneable { + ctor public Animator(); + method public void addListener(android.animation.Animator.AnimatorListener); + method public void addPauseListener(android.animation.Animator.AnimatorPauseListener); + method public void cancel(); + method public android.animation.Animator clone(); + method public void end(); + method public abstract long getDuration(); + method public android.animation.TimeInterpolator getInterpolator(); + method public java.util.ArrayList getListeners(); + method public abstract long getStartDelay(); + method public long getTotalDuration(); + method public boolean isPaused(); + method public abstract boolean isRunning(); + method public boolean isStarted(); + method public void pause(); + method public void removeAllListeners(); + method public void removeListener(android.animation.Animator.AnimatorListener); + method public void removePauseListener(android.animation.Animator.AnimatorPauseListener); + method public void resume(); + method public abstract android.animation.Animator setDuration(long); + method public abstract void setInterpolator(android.animation.TimeInterpolator); + method public abstract void setStartDelay(long); + method public void setTarget(@Nullable Object); + method public void setupEndValues(); + method public void setupStartValues(); + method public void start(); + field public static final long DURATION_INFINITE = -1L; // 0xffffffffffffffffL + } + + public static interface Animator.AnimatorListener { + method public void onAnimationCancel(@NonNull android.animation.Animator); + method public default void onAnimationEnd(@NonNull android.animation.Animator, boolean); + method public void onAnimationEnd(@NonNull android.animation.Animator); + method public void onAnimationRepeat(@NonNull android.animation.Animator); + method public default void onAnimationStart(@NonNull android.animation.Animator, boolean); + method public void onAnimationStart(@NonNull android.animation.Animator); + } + + public static interface Animator.AnimatorPauseListener { + method public void onAnimationPause(@NonNull android.animation.Animator); + method public void onAnimationResume(@NonNull android.animation.Animator); + } + + public class AnimatorInflater { + ctor public AnimatorInflater(); + method public static android.animation.Animator loadAnimator(android.content.Context, @AnimatorRes int) throws android.content.res.Resources.NotFoundException; + method public static android.animation.StateListAnimator loadStateListAnimator(android.content.Context, int) throws android.content.res.Resources.NotFoundException; + } + + public abstract class AnimatorListenerAdapter implements android.animation.Animator.AnimatorListener android.animation.Animator.AnimatorPauseListener { + ctor public AnimatorListenerAdapter(); + method public void onAnimationCancel(android.animation.Animator); + method public void onAnimationEnd(android.animation.Animator); + method public void onAnimationPause(android.animation.Animator); + method public void onAnimationRepeat(android.animation.Animator); + method public void onAnimationResume(android.animation.Animator); + method public void onAnimationStart(android.animation.Animator); + } + + public final class AnimatorSet extends android.animation.Animator { + ctor public AnimatorSet(); + method public android.animation.AnimatorSet clone(); + method public java.util.ArrayList getChildAnimations(); + method public long getCurrentPlayTime(); + method public long getDuration(); + method public long getStartDelay(); + method public boolean isRunning(); + method public android.animation.AnimatorSet.Builder play(android.animation.Animator); + method public void playSequentially(android.animation.Animator...); + method public void playSequentially(java.util.List); + method public void playTogether(android.animation.Animator...); + method public void playTogether(java.util.Collection); + method public void reverse(); + method public void setCurrentPlayTime(long); + method public android.animation.AnimatorSet setDuration(long); + method public void setInterpolator(android.animation.TimeInterpolator); + method public void setStartDelay(long); + } + + public class AnimatorSet.Builder { + method public android.animation.AnimatorSet.Builder after(android.animation.Animator); + method public android.animation.AnimatorSet.Builder after(long); + method public android.animation.AnimatorSet.Builder before(android.animation.Animator); + method public android.animation.AnimatorSet.Builder with(android.animation.Animator); + } + + public class ArgbEvaluator implements android.animation.TypeEvaluator { + ctor public ArgbEvaluator(); + method public Object evaluate(float, Object, Object); + } + + public abstract class BidirectionalTypeConverter extends android.animation.TypeConverter { + ctor public BidirectionalTypeConverter(Class, Class); + method public abstract T convertBack(V); + method public android.animation.BidirectionalTypeConverter invert(); + } + + public class FloatArrayEvaluator implements android.animation.TypeEvaluator { + ctor public FloatArrayEvaluator(); + ctor public FloatArrayEvaluator(float[]); + method public float[] evaluate(float, float[], float[]); + } + + public class FloatEvaluator implements android.animation.TypeEvaluator { + ctor public FloatEvaluator(); + method public Float evaluate(float, Number, Number); + } + + public class IntArrayEvaluator implements android.animation.TypeEvaluator { + ctor public IntArrayEvaluator(); + ctor public IntArrayEvaluator(int[]); + method public int[] evaluate(float, int[], int[]); + } + + public class IntEvaluator implements android.animation.TypeEvaluator { + ctor public IntEvaluator(); + method public Integer evaluate(float, Integer, Integer); + } + + public abstract class Keyframe implements java.lang.Cloneable { + ctor public Keyframe(); + method public abstract android.animation.Keyframe clone(); + method public float getFraction(); + method public android.animation.TimeInterpolator getInterpolator(); + method public Class getType(); + method public abstract Object getValue(); + method public boolean hasValue(); + method public static android.animation.Keyframe ofFloat(float, float); + method public static android.animation.Keyframe ofFloat(float); + method public static android.animation.Keyframe ofInt(float, int); + method public static android.animation.Keyframe ofInt(float); + method public static android.animation.Keyframe ofObject(float, Object); + method public static android.animation.Keyframe ofObject(float); + method public void setFraction(float); + method public void setInterpolator(android.animation.TimeInterpolator); + method public abstract void setValue(Object); + } + + public class LayoutTransition { + ctor public LayoutTransition(); + method public void addChild(android.view.ViewGroup, android.view.View); + method public void addTransitionListener(android.animation.LayoutTransition.TransitionListener); + method public void disableTransitionType(int); + method public void enableTransitionType(int); + method public android.animation.Animator getAnimator(int); + method public long getDuration(int); + method public android.animation.TimeInterpolator getInterpolator(int); + method public long getStagger(int); + method public long getStartDelay(int); + method public java.util.List getTransitionListeners(); + method @Deprecated public void hideChild(android.view.ViewGroup, android.view.View); + method public void hideChild(android.view.ViewGroup, android.view.View, int); + method public boolean isChangingLayout(); + method public boolean isRunning(); + method public boolean isTransitionTypeEnabled(int); + method public void removeChild(android.view.ViewGroup, android.view.View); + method public void removeTransitionListener(android.animation.LayoutTransition.TransitionListener); + method public void setAnimateParentHierarchy(boolean); + method public void setAnimator(int, android.animation.Animator); + method public void setDuration(long); + method public void setDuration(int, long); + method public void setInterpolator(int, android.animation.TimeInterpolator); + method public void setStagger(int, long); + method public void setStartDelay(int, long); + method @Deprecated public void showChild(android.view.ViewGroup, android.view.View); + method public void showChild(android.view.ViewGroup, android.view.View, int); + field public static final int APPEARING = 2; // 0x2 + field public static final int CHANGE_APPEARING = 0; // 0x0 + field public static final int CHANGE_DISAPPEARING = 1; // 0x1 + field public static final int CHANGING = 4; // 0x4 + field public static final int DISAPPEARING = 3; // 0x3 + } + + public static interface LayoutTransition.TransitionListener { + method public void endTransition(android.animation.LayoutTransition, android.view.ViewGroup, android.view.View, int); + method public void startTransition(android.animation.LayoutTransition, android.view.ViewGroup, android.view.View, int); + } + + public final class ObjectAnimator extends android.animation.ValueAnimator { + ctor public ObjectAnimator(); + method public android.animation.ObjectAnimator clone(); + method @Nullable public String getPropertyName(); + method @Nullable public Object getTarget(); + method public static android.animation.ObjectAnimator ofArgb(Object, String, int...); + method public static android.animation.ObjectAnimator ofArgb(T, android.util.Property, int...); + method public static android.animation.ObjectAnimator ofFloat(Object, String, float...); + method public static android.animation.ObjectAnimator ofFloat(Object, String, String, android.graphics.Path); + method public static android.animation.ObjectAnimator ofFloat(T, android.util.Property, float...); + method public static android.animation.ObjectAnimator ofFloat(T, android.util.Property, android.util.Property, android.graphics.Path); + method public static android.animation.ObjectAnimator ofInt(Object, String, int...); + method public static android.animation.ObjectAnimator ofInt(Object, String, String, android.graphics.Path); + method public static android.animation.ObjectAnimator ofInt(T, android.util.Property, int...); + method public static android.animation.ObjectAnimator ofInt(T, android.util.Property, android.util.Property, android.graphics.Path); + method public static android.animation.ObjectAnimator ofMultiFloat(Object, String, float[][]); + method public static android.animation.ObjectAnimator ofMultiFloat(Object, String, android.graphics.Path); + method @java.lang.SafeVarargs public static android.animation.ObjectAnimator ofMultiFloat(Object, String, android.animation.TypeConverter, android.animation.TypeEvaluator, T...); + method public static android.animation.ObjectAnimator ofMultiInt(Object, String, int[][]); + method public static android.animation.ObjectAnimator ofMultiInt(Object, String, android.graphics.Path); + method @java.lang.SafeVarargs public static android.animation.ObjectAnimator ofMultiInt(Object, String, android.animation.TypeConverter, android.animation.TypeEvaluator, T...); + method public static android.animation.ObjectAnimator ofObject(Object, String, android.animation.TypeEvaluator, java.lang.Object...); + method @NonNull public static android.animation.ObjectAnimator ofObject(Object, String, @Nullable android.animation.TypeConverter, android.graphics.Path); + method @NonNull @java.lang.SafeVarargs public static android.animation.ObjectAnimator ofObject(T, android.util.Property, android.animation.TypeEvaluator, V...); + method @NonNull @java.lang.SafeVarargs public static android.animation.ObjectAnimator ofObject(T, android.util.Property, android.animation.TypeConverter, android.animation.TypeEvaluator, V...); + method @NonNull public static android.animation.ObjectAnimator ofObject(T, @NonNull android.util.Property, @Nullable android.animation.TypeConverter, android.graphics.Path); + method @NonNull public static android.animation.ObjectAnimator ofPropertyValuesHolder(Object, android.animation.PropertyValuesHolder...); + method public void setAutoCancel(boolean); + method @NonNull public android.animation.ObjectAnimator setDuration(long); + method public void setProperty(@NonNull android.util.Property); + method public void setPropertyName(@NonNull String); + } + + public class PointFEvaluator implements android.animation.TypeEvaluator { + ctor public PointFEvaluator(); + ctor public PointFEvaluator(android.graphics.PointF); + method public android.graphics.PointF evaluate(float, android.graphics.PointF, android.graphics.PointF); + } + + public class PropertyValuesHolder implements java.lang.Cloneable { + method public android.animation.PropertyValuesHolder clone(); + method public String getPropertyName(); + method public static android.animation.PropertyValuesHolder ofFloat(String, float...); + method public static android.animation.PropertyValuesHolder ofFloat(android.util.Property, float...); + method public static android.animation.PropertyValuesHolder ofInt(String, int...); + method public static android.animation.PropertyValuesHolder ofInt(android.util.Property, int...); + method public static android.animation.PropertyValuesHolder ofKeyframe(String, android.animation.Keyframe...); + method public static android.animation.PropertyValuesHolder ofKeyframe(android.util.Property, android.animation.Keyframe...); + method public static android.animation.PropertyValuesHolder ofMultiFloat(String, float[][]); + method public static android.animation.PropertyValuesHolder ofMultiFloat(String, android.graphics.Path); + method @java.lang.SafeVarargs public static android.animation.PropertyValuesHolder ofMultiFloat(String, android.animation.TypeConverter, android.animation.TypeEvaluator, V...); + method public static android.animation.PropertyValuesHolder ofMultiFloat(String, android.animation.TypeConverter, android.animation.TypeEvaluator, android.animation.Keyframe...); + method public static android.animation.PropertyValuesHolder ofMultiInt(String, int[][]); + method public static android.animation.PropertyValuesHolder ofMultiInt(String, android.graphics.Path); + method @java.lang.SafeVarargs public static android.animation.PropertyValuesHolder ofMultiInt(String, android.animation.TypeConverter, android.animation.TypeEvaluator, V...); + method public static android.animation.PropertyValuesHolder ofMultiInt(String, android.animation.TypeConverter, android.animation.TypeEvaluator, android.animation.Keyframe...); + method public static android.animation.PropertyValuesHolder ofObject(String, android.animation.TypeEvaluator, java.lang.Object...); + method public static android.animation.PropertyValuesHolder ofObject(String, android.animation.TypeConverter, android.graphics.Path); + method @java.lang.SafeVarargs public static android.animation.PropertyValuesHolder ofObject(android.util.Property, android.animation.TypeEvaluator, V...); + method @java.lang.SafeVarargs public static android.animation.PropertyValuesHolder ofObject(android.util.Property, android.animation.TypeConverter, android.animation.TypeEvaluator, T...); + method public static android.animation.PropertyValuesHolder ofObject(android.util.Property, android.animation.TypeConverter, android.graphics.Path); + method public void setConverter(android.animation.TypeConverter); + method public void setEvaluator(android.animation.TypeEvaluator); + method public void setFloatValues(float...); + method public void setIntValues(int...); + method public void setKeyframes(android.animation.Keyframe...); + method public void setObjectValues(java.lang.Object...); + method public void setProperty(android.util.Property); + method public void setPropertyName(String); + } + + public class RectEvaluator implements android.animation.TypeEvaluator { + ctor public RectEvaluator(); + ctor public RectEvaluator(android.graphics.Rect); + method public android.graphics.Rect evaluate(float, android.graphics.Rect, android.graphics.Rect); + } + + public class StateListAnimator implements java.lang.Cloneable { + ctor public StateListAnimator(); + method public void addState(int[], android.animation.Animator); + method public android.animation.StateListAnimator clone(); + method public void jumpToCurrentState(); + } + + public class TimeAnimator extends android.animation.ValueAnimator { + ctor public TimeAnimator(); + method public void setTimeListener(android.animation.TimeAnimator.TimeListener); + } + + public static interface TimeAnimator.TimeListener { + method public void onTimeUpdate(android.animation.TimeAnimator, long, long); + } + + public interface TimeInterpolator { + method public float getInterpolation(float); + } + + public abstract class TypeConverter { + ctor public TypeConverter(Class, Class); + method public abstract V convert(T); + } + + public interface TypeEvaluator { + method public T evaluate(float, T, T); + } + + public class ValueAnimator extends android.animation.Animator { + ctor public ValueAnimator(); + method public void addUpdateListener(android.animation.ValueAnimator.AnimatorUpdateListener); + method public static boolean areAnimatorsEnabled(); + method public android.animation.ValueAnimator clone(); + method public float getAnimatedFraction(); + method public Object getAnimatedValue(); + method public Object getAnimatedValue(String); + method public long getCurrentPlayTime(); + method public long getDuration(); + method @FloatRange(from=0) public static float getDurationScale(); + method public static long getFrameDelay(); + method public int getRepeatCount(); + method public int getRepeatMode(); + method public long getStartDelay(); + method public android.animation.PropertyValuesHolder[] getValues(); + method public boolean isRunning(); + method public static android.animation.ValueAnimator ofArgb(int...); + method public static android.animation.ValueAnimator ofFloat(float...); + method public static android.animation.ValueAnimator ofInt(int...); + method public static android.animation.ValueAnimator ofObject(android.animation.TypeEvaluator, java.lang.Object...); + method public static android.animation.ValueAnimator ofPropertyValuesHolder(android.animation.PropertyValuesHolder...); + method public static boolean registerDurationScaleChangeListener(@NonNull android.animation.ValueAnimator.DurationScaleChangeListener); + method public void removeAllUpdateListeners(); + method public void removeUpdateListener(android.animation.ValueAnimator.AnimatorUpdateListener); + method public void reverse(); + method public void setCurrentFraction(float); + method public void setCurrentPlayTime(long); + method public android.animation.ValueAnimator setDuration(long); + method public void setEvaluator(android.animation.TypeEvaluator); + method public void setFloatValues(float...); + method public static void setFrameDelay(long); + method public void setIntValues(int...); + method public void setInterpolator(android.animation.TimeInterpolator); + method public void setObjectValues(java.lang.Object...); + method public void setRepeatCount(int); + method public void setRepeatMode(int); + method public void setStartDelay(long); + method public void setValues(android.animation.PropertyValuesHolder...); + method public static boolean unregisterDurationScaleChangeListener(@NonNull android.animation.ValueAnimator.DurationScaleChangeListener); + field public static final int INFINITE = -1; // 0xffffffff + field public static final int RESTART = 1; // 0x1 + field public static final int REVERSE = 2; // 0x2 + } + + public static interface ValueAnimator.AnimatorUpdateListener { + method public void onAnimationUpdate(@NonNull android.animation.ValueAnimator); + } + + public static interface ValueAnimator.DurationScaleChangeListener { + method public void onChanged(@FloatRange(from=0) float); + } + +} + +package android.annotation { + + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.LOCAL_VARIABLE}) public @interface SuppressLint { + method public abstract String[] value(); + } + + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.CONSTRUCTOR, java.lang.annotation.ElementType.FIELD}) public @interface TargetApi { + method public abstract int value(); + } + +} + +package android.app { + + public abstract class ActionBar { + ctor public ActionBar(); + method public abstract void addOnMenuVisibilityListener(android.app.ActionBar.OnMenuVisibilityListener); + method @Deprecated public abstract void addTab(android.app.ActionBar.Tab); + method @Deprecated public abstract void addTab(android.app.ActionBar.Tab, boolean); + method @Deprecated public abstract void addTab(android.app.ActionBar.Tab, int); + method @Deprecated public abstract void addTab(android.app.ActionBar.Tab, int, boolean); + method public abstract android.view.View getCustomView(); + method public abstract int getDisplayOptions(); + method public float getElevation(); + method public abstract int getHeight(); + method public int getHideOffset(); + method @Deprecated public abstract int getNavigationItemCount(); + method @Deprecated public abstract int getNavigationMode(); + method @Deprecated public abstract int getSelectedNavigationIndex(); + method @Deprecated public abstract android.app.ActionBar.Tab getSelectedTab(); + method public abstract CharSequence getSubtitle(); + method @Deprecated public abstract android.app.ActionBar.Tab getTabAt(int); + method @Deprecated public abstract int getTabCount(); + method public android.content.Context getThemedContext(); + method public abstract CharSequence getTitle(); + method public abstract void hide(); + method public boolean isHideOnContentScrollEnabled(); + method public abstract boolean isShowing(); + method @Deprecated public abstract android.app.ActionBar.Tab newTab(); + method @Deprecated public abstract void removeAllTabs(); + method public abstract void removeOnMenuVisibilityListener(android.app.ActionBar.OnMenuVisibilityListener); + method @Deprecated public abstract void removeTab(android.app.ActionBar.Tab); + method @Deprecated public abstract void removeTabAt(int); + method @Deprecated public abstract void selectTab(android.app.ActionBar.Tab); + method public abstract void setBackgroundDrawable(@Nullable android.graphics.drawable.Drawable); + method public abstract void setCustomView(android.view.View); + method public abstract void setCustomView(android.view.View, android.app.ActionBar.LayoutParams); + method public abstract void setCustomView(@LayoutRes int); + method public abstract void setDisplayHomeAsUpEnabled(boolean); + method public abstract void setDisplayOptions(int); + method public abstract void setDisplayOptions(int, int); + method public abstract void setDisplayShowCustomEnabled(boolean); + method public abstract void setDisplayShowHomeEnabled(boolean); + method public abstract void setDisplayShowTitleEnabled(boolean); + method public abstract void setDisplayUseLogoEnabled(boolean); + method public void setElevation(float); + method public void setHideOffset(int); + method public void setHideOnContentScrollEnabled(boolean); + method public void setHomeActionContentDescription(CharSequence); + method public void setHomeActionContentDescription(@StringRes int); + method public void setHomeAsUpIndicator(android.graphics.drawable.Drawable); + method public void setHomeAsUpIndicator(@DrawableRes int); + method public void setHomeButtonEnabled(boolean); + method public abstract void setIcon(@DrawableRes int); + method public abstract void setIcon(android.graphics.drawable.Drawable); + method @Deprecated public abstract void setListNavigationCallbacks(android.widget.SpinnerAdapter, android.app.ActionBar.OnNavigationListener); + method public abstract void setLogo(@DrawableRes int); + method public abstract void setLogo(android.graphics.drawable.Drawable); + method @Deprecated public abstract void setNavigationMode(int); + method @Deprecated public abstract void setSelectedNavigationItem(int); + method public void setSplitBackgroundDrawable(android.graphics.drawable.Drawable); + method public void setStackedBackgroundDrawable(android.graphics.drawable.Drawable); + method public abstract void setSubtitle(CharSequence); + method public abstract void setSubtitle(@StringRes int); + method public abstract void setTitle(CharSequence); + method public abstract void setTitle(@StringRes int); + method public abstract void show(); + field public static final int DISPLAY_HOME_AS_UP = 4; // 0x4 + field public static final int DISPLAY_SHOW_CUSTOM = 16; // 0x10 + field public static final int DISPLAY_SHOW_HOME = 2; // 0x2 + field public static final int DISPLAY_SHOW_TITLE = 8; // 0x8 + field public static final int DISPLAY_USE_LOGO = 1; // 0x1 + field @Deprecated public static final int NAVIGATION_MODE_LIST = 1; // 0x1 + field @Deprecated public static final int NAVIGATION_MODE_STANDARD = 0; // 0x0 + field @Deprecated public static final int NAVIGATION_MODE_TABS = 2; // 0x2 + } + + public static class ActionBar.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { + ctor public ActionBar.LayoutParams(@NonNull android.content.Context, android.util.AttributeSet); + ctor public ActionBar.LayoutParams(int, int); + ctor public ActionBar.LayoutParams(int, int, int); + ctor public ActionBar.LayoutParams(int); + ctor public ActionBar.LayoutParams(android.app.ActionBar.LayoutParams); + ctor public ActionBar.LayoutParams(android.view.ViewGroup.LayoutParams); + field public int gravity; + } + + public static interface ActionBar.OnMenuVisibilityListener { + method public void onMenuVisibilityChanged(boolean); + } + + @Deprecated public static interface ActionBar.OnNavigationListener { + method @Deprecated public boolean onNavigationItemSelected(int, long); + } + + @Deprecated public abstract static class ActionBar.Tab { + ctor @Deprecated public ActionBar.Tab(); + method @Deprecated public abstract CharSequence getContentDescription(); + method @Deprecated public abstract android.view.View getCustomView(); + method @Deprecated public abstract android.graphics.drawable.Drawable getIcon(); + method @Deprecated public abstract int getPosition(); + method @Deprecated public abstract Object getTag(); + method @Deprecated public abstract CharSequence getText(); + method @Deprecated public abstract void select(); + method @Deprecated public abstract android.app.ActionBar.Tab setContentDescription(@StringRes int); + method @Deprecated public abstract android.app.ActionBar.Tab setContentDescription(CharSequence); + method @Deprecated public abstract android.app.ActionBar.Tab setCustomView(android.view.View); + method @Deprecated public abstract android.app.ActionBar.Tab setCustomView(@LayoutRes int); + method @Deprecated public abstract android.app.ActionBar.Tab setIcon(android.graphics.drawable.Drawable); + method @Deprecated public abstract android.app.ActionBar.Tab setIcon(@DrawableRes int); + method @Deprecated public abstract android.app.ActionBar.Tab setTabListener(android.app.ActionBar.TabListener); + method @Deprecated public abstract android.app.ActionBar.Tab setTag(Object); + method @Deprecated public abstract android.app.ActionBar.Tab setText(CharSequence); + method @Deprecated public abstract android.app.ActionBar.Tab setText(@StringRes int); + field @Deprecated public static final int INVALID_POSITION = -1; // 0xffffffff + } + + @Deprecated public static interface ActionBar.TabListener { + method @Deprecated public void onTabReselected(android.app.ActionBar.Tab, android.app.FragmentTransaction); + method @Deprecated public void onTabSelected(android.app.ActionBar.Tab, android.app.FragmentTransaction); + method @Deprecated public void onTabUnselected(android.app.ActionBar.Tab, android.app.FragmentTransaction); + } + + @UiContext public class Activity extends android.view.ContextThemeWrapper implements android.content.ComponentCallbacks2 android.view.KeyEvent.Callback android.view.LayoutInflater.Factory2 android.view.View.OnCreateContextMenuListener android.view.Window.Callback { + ctor public Activity(); + method public void addContentView(android.view.View, android.view.ViewGroup.LayoutParams); + method public void clearOverrideActivityTransition(int); + method public void closeContextMenu(); + method public void closeOptionsMenu(); + method public android.app.PendingIntent createPendingResult(int, @NonNull android.content.Intent, int); + method @Deprecated public final void dismissDialog(int); + method public final void dismissKeyboardShortcutsHelper(); + method public boolean dispatchGenericMotionEvent(android.view.MotionEvent); + method public boolean dispatchKeyEvent(android.view.KeyEvent); + method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent); + method public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); + method public boolean dispatchTouchEvent(android.view.MotionEvent); + method public boolean dispatchTrackballEvent(android.view.MotionEvent); + method public void dump(@NonNull String, @Nullable java.io.FileDescriptor, @NonNull java.io.PrintWriter, @Nullable String[]); + method @Deprecated public void enterPictureInPictureMode(); + method public boolean enterPictureInPictureMode(@NonNull android.app.PictureInPictureParams); + method public T findViewById(@IdRes int); + method public void finish(); + method public void finishActivity(int); + method @Deprecated public void finishActivityFromChild(@NonNull android.app.Activity, int); + method public void finishAffinity(); + method public void finishAfterTransition(); + method public void finishAndRemoveTask(); + method @Deprecated public void finishFromChild(android.app.Activity); + method @Nullable public android.app.ActionBar getActionBar(); + method public final android.app.Application getApplication(); + method @FlaggedApi("android.security.content_uri_permission_apis") @Nullable public android.app.ComponentCaller getCaller(); + method @Nullable public android.content.ComponentName getCallingActivity(); + method @Nullable public String getCallingPackage(); + method public int getChangingConfigurations(); + method public android.content.ComponentName getComponentName(); + method public android.transition.Scene getContentScene(); + method public android.transition.TransitionManager getContentTransitionManager(); + method @FlaggedApi("android.security.content_uri_permission_apis") @NonNull public android.app.ComponentCaller getCurrentCaller(); + method @Nullable public android.view.View getCurrentFocus(); + method @Deprecated public android.app.FragmentManager getFragmentManager(); + method @FlaggedApi("android.security.content_uri_permission_apis") @NonNull public android.app.ComponentCaller getInitialCaller(); + method public android.content.Intent getIntent(); + method @Nullable public Object getLastNonConfigurationInstance(); + method @Nullable public String getLaunchedFromPackage(); + method public int getLaunchedFromUid(); + method @NonNull public android.view.LayoutInflater getLayoutInflater(); + method @Deprecated public android.app.LoaderManager getLoaderManager(); + method @NonNull public String getLocalClassName(); + method public int getMaxNumPictureInPictureActions(); + method public final android.media.session.MediaController getMediaController(); + method @NonNull public android.view.MenuInflater getMenuInflater(); + method @NonNull public android.window.OnBackInvokedDispatcher getOnBackInvokedDispatcher(); + method @Deprecated public final android.app.Activity getParent(); + method @Nullable public android.content.Intent getParentActivityIntent(); + method public android.content.SharedPreferences getPreferences(int); + method @Nullable public android.net.Uri getReferrer(); + method public int getRequestedOrientation(); + method public final android.view.SearchEvent getSearchEvent(); + method @NonNull public final android.window.SplashScreen getSplashScreen(); + method public int getTaskId(); + method public final CharSequence getTitle(); + method public final int getTitleColor(); + method public android.app.VoiceInteractor getVoiceInteractor(); + method public final int getVolumeControlStream(); + method public android.view.Window getWindow(); + method public android.view.WindowManager getWindowManager(); + method public boolean hasWindowFocus(); + method public void invalidateOptionsMenu(); + method public boolean isActivityTransitionRunning(); + method public boolean isChangingConfigurations(); + method @Deprecated public final boolean isChild(); + method public boolean isDestroyed(); + method public boolean isFinishing(); + method public boolean isImmersive(); + method public boolean isInMultiWindowMode(); + method public boolean isInPictureInPictureMode(); + method public boolean isLaunchedFromBubble(); + method public boolean isLocalVoiceInteractionSupported(); + method public boolean isTaskRoot(); + method public boolean isVoiceInteraction(); + method public boolean isVoiceInteractionRoot(); + method @Deprecated public final android.database.Cursor managedQuery(android.net.Uri, String[], String, String[], String); + method public boolean moveTaskToBack(boolean); + method public boolean navigateUpTo(android.content.Intent); + method @Deprecated public boolean navigateUpToFromChild(android.app.Activity, android.content.Intent); + method @CallSuper public void onActionModeFinished(android.view.ActionMode); + method @CallSuper public void onActionModeStarted(android.view.ActionMode); + method public void onActivityReenter(int, android.content.Intent); + method protected void onActivityResult(int, int, android.content.Intent); + method @FlaggedApi("android.security.content_uri_permission_apis") public void onActivityResult(int, int, @Nullable android.content.Intent, @NonNull android.app.ComponentCaller); + method @Deprecated public void onAttachFragment(android.app.Fragment); + method public void onAttachedToWindow(); + method @Deprecated public void onBackPressed(); + method protected void onChildTitleChanged(android.app.Activity, CharSequence); + method public void onConfigurationChanged(@NonNull android.content.res.Configuration); + method public void onContentChanged(); + method public boolean onContextItemSelected(@NonNull android.view.MenuItem); + method public void onContextMenuClosed(@NonNull android.view.Menu); + method @CallSuper @MainThread protected void onCreate(@Nullable android.os.Bundle); + method public void onCreate(@Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); + method public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo); + method @Nullable public CharSequence onCreateDescription(); + method @Deprecated protected android.app.Dialog onCreateDialog(int); + method @Deprecated @Nullable protected android.app.Dialog onCreateDialog(int, android.os.Bundle); + method public void onCreateNavigateUpTaskStack(android.app.TaskStackBuilder); + method public boolean onCreateOptionsMenu(android.view.Menu); + method public boolean onCreatePanelMenu(int, @NonNull android.view.Menu); + method @Nullable public android.view.View onCreatePanelView(int); + method @Deprecated public boolean onCreateThumbnail(android.graphics.Bitmap, android.graphics.Canvas); + method @Nullable public android.view.View onCreateView(@NonNull String, @NonNull android.content.Context, @NonNull android.util.AttributeSet); + method @Nullable public android.view.View onCreateView(@Nullable android.view.View, @NonNull String, @NonNull android.content.Context, @NonNull android.util.AttributeSet); + method @CallSuper protected void onDestroy(); + method public void onDetachedFromWindow(); + method public void onEnterAnimationComplete(); + method public boolean onGenericMotionEvent(android.view.MotionEvent); + method public void onGetDirectActions(@NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer>); + method public boolean onKeyDown(int, android.view.KeyEvent); + method public boolean onKeyLongPress(int, android.view.KeyEvent); + method public boolean onKeyMultiple(int, int, android.view.KeyEvent); + method public boolean onKeyShortcut(int, android.view.KeyEvent); + method public boolean onKeyUp(int, android.view.KeyEvent); + method public void onLocalVoiceInteractionStarted(); + method public void onLocalVoiceInteractionStopped(); + method public void onLowMemory(); + method public boolean onMenuItemSelected(int, @NonNull android.view.MenuItem); + method public boolean onMenuOpened(int, @NonNull android.view.Menu); + method public void onMultiWindowModeChanged(boolean, android.content.res.Configuration); + method @Deprecated public void onMultiWindowModeChanged(boolean); + method public boolean onNavigateUp(); + method @Deprecated public boolean onNavigateUpFromChild(android.app.Activity); + method protected void onNewIntent(android.content.Intent); + method @FlaggedApi("android.security.content_uri_permission_apis") public void onNewIntent(@NonNull android.content.Intent, @NonNull android.app.ComponentCaller); + method public boolean onOptionsItemSelected(@NonNull android.view.MenuItem); + method public void onOptionsMenuClosed(android.view.Menu); + method public void onPanelClosed(int, @NonNull android.view.Menu); + method @CallSuper protected void onPause(); + method public void onPerformDirectAction(@NonNull String, @NonNull android.os.Bundle, @NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer); + method public void onPictureInPictureModeChanged(boolean, android.content.res.Configuration); + method @Deprecated public void onPictureInPictureModeChanged(boolean); + method public boolean onPictureInPictureRequested(); + method public void onPictureInPictureUiStateChanged(@NonNull android.app.PictureInPictureUiState); + method @CallSuper protected void onPostCreate(@Nullable android.os.Bundle); + method public void onPostCreate(@Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); + method @CallSuper protected void onPostResume(); + method @Deprecated protected void onPrepareDialog(int, android.app.Dialog); + method @Deprecated protected void onPrepareDialog(int, android.app.Dialog, android.os.Bundle); + method public void onPrepareNavigateUpTaskStack(android.app.TaskStackBuilder); + method public boolean onPrepareOptionsMenu(android.view.Menu); + method public boolean onPreparePanel(int, @Nullable android.view.View, @NonNull android.view.Menu); + method public void onProvideAssistContent(android.app.assist.AssistContent); + method public void onProvideAssistData(android.os.Bundle); + method public void onProvideKeyboardShortcuts(java.util.List, android.view.Menu, int); + method public android.net.Uri onProvideReferrer(); + method public void onRequestPermissionsResult(int, @NonNull String[], @NonNull int[]); + method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public void onRequestPermissionsResult(int, @NonNull String[], @NonNull int[], int); + method @CallSuper protected void onRestart(); + method protected void onRestoreInstanceState(@NonNull android.os.Bundle); + method public void onRestoreInstanceState(@Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); + method @CallSuper protected void onResume(); + method public Object onRetainNonConfigurationInstance(); + method protected void onSaveInstanceState(@NonNull android.os.Bundle); + method public void onSaveInstanceState(@NonNull android.os.Bundle, @NonNull android.os.PersistableBundle); + method public boolean onSearchRequested(@Nullable android.view.SearchEvent); + method public boolean onSearchRequested(); + method @CallSuper protected void onStart(); + method @Deprecated public void onStateNotSaved(); + method @CallSuper protected void onStop(); + method protected void onTitleChanged(CharSequence, int); + method public void onTopResumedActivityChanged(boolean); + method public boolean onTouchEvent(android.view.MotionEvent); + method public boolean onTrackballEvent(android.view.MotionEvent); + method public void onTrimMemory(int); + method public void onUserInteraction(); + method protected void onUserLeaveHint(); + method @Deprecated @CallSuper public void onVisibleBehindCanceled(); + method public void onWindowAttributesChanged(android.view.WindowManager.LayoutParams); + method public void onWindowFocusChanged(boolean); + method @Nullable public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback); + method @Nullable public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int); + method public void openContextMenu(android.view.View); + method public void openOptionsMenu(); + method public void overrideActivityTransition(int, @AnimRes int, @AnimRes int); + method public void overrideActivityTransition(int, @AnimRes int, @AnimRes int, @ColorInt int); + method @Deprecated public void overridePendingTransition(int, int); + method @Deprecated public void overridePendingTransition(int, int, int); + method public void postponeEnterTransition(); + method public void recreate(); + method public void registerActivityLifecycleCallbacks(@NonNull android.app.Application.ActivityLifecycleCallbacks); + method public void registerForContextMenu(android.view.View); + method @RequiresPermission(android.Manifest.permission.DETECT_SCREEN_CAPTURE) public void registerScreenCaptureCallback(@NonNull java.util.concurrent.Executor, @NonNull android.app.Activity.ScreenCaptureCallback); + method public boolean releaseInstance(); + method @Deprecated public final void removeDialog(int); + method public void reportFullyDrawn(); + method public android.view.DragAndDropPermissions requestDragAndDropPermissions(android.view.DragEvent); + method public void requestFullscreenMode(int, @Nullable android.os.OutcomeReceiver); + method @FlaggedApi("com.android.window.flags.enable_desktop_windowing_app_to_web_education") public final void requestOpenInBrowserEducation(); + method public final void requestPermissions(@NonNull String[], int); + method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public final void requestPermissions(@NonNull String[], int, int); + method public final void requestShowKeyboardShortcuts(); + method @Deprecated public boolean requestVisibleBehind(boolean); + method public final boolean requestWindowFeature(int); + method @NonNull public final T requireViewById(@IdRes int); + method public final void runOnUiThread(Runnable); + method public void setActionBar(@Nullable android.widget.Toolbar); + method @FlaggedApi("android.security.asm_restrictions_enabled") public void setAllowCrossUidActivitySwitchFromBelow(boolean); + method public void setContentTransitionManager(android.transition.TransitionManager); + method public void setContentView(@LayoutRes int); + method public void setContentView(android.view.View); + method public void setContentView(android.view.View, android.view.ViewGroup.LayoutParams); + method public final void setDefaultKeyMode(int); + method public void setEnterSharedElementCallback(android.app.SharedElementCallback); + method public void setExitSharedElementCallback(android.app.SharedElementCallback); + method public final void setFeatureDrawable(int, android.graphics.drawable.Drawable); + method public final void setFeatureDrawableAlpha(int, int); + method public final void setFeatureDrawableResource(int, @DrawableRes int); + method public final void setFeatureDrawableUri(int, android.net.Uri); + method public void setFinishOnTouchOutside(boolean); + method public void setImmersive(boolean); + method public void setInheritShowWhenLocked(boolean); + method public void setIntent(android.content.Intent); + method @FlaggedApi("android.security.content_uri_permission_apis") public void setIntent(@Nullable android.content.Intent, @Nullable android.app.ComponentCaller); + method public void setLocusContext(@Nullable android.content.LocusId, @Nullable android.os.Bundle); + method public final void setMediaController(android.media.session.MediaController); + method public void setPictureInPictureParams(@NonNull android.app.PictureInPictureParams); + method @Deprecated public final void setProgress(int); + method @Deprecated public final void setProgressBarIndeterminate(boolean); + method @Deprecated public final void setProgressBarIndeterminateVisibility(boolean); + method @Deprecated public final void setProgressBarVisibility(boolean); + method public void setRecentsScreenshotEnabled(boolean); + method public void setRequestedOrientation(int); + method public final void setResult(int); + method public final void setResult(int, android.content.Intent); + method @Deprecated public final void setSecondaryProgress(int); + method public void setShouldDockBigOverlays(boolean); + method public void setShowWhenLocked(boolean); + method public void setTaskDescription(android.app.ActivityManager.TaskDescription); + method public void setTitle(CharSequence); + method public void setTitle(int); + method @Deprecated public void setTitleColor(int); + method public boolean setTranslucent(boolean); + method public void setTurnScreenOn(boolean); + method public void setVisible(boolean); + method public final void setVolumeControlStream(int); + method public void setVrModeEnabled(boolean, @NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; + method public boolean shouldDockBigOverlays(); + method public boolean shouldShowRequestPermissionRationale(@NonNull String); + method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public boolean shouldShowRequestPermissionRationale(@NonNull String, int); + method public boolean shouldUpRecreateTask(android.content.Intent); + method public boolean showAssist(android.os.Bundle); + method @Deprecated public final void showDialog(int); + method @Deprecated public final boolean showDialog(int, android.os.Bundle); + method public void showLockTaskEscapeMessage(); + method @Nullable public android.view.ActionMode startActionMode(android.view.ActionMode.Callback); + method @Nullable public android.view.ActionMode startActionMode(android.view.ActionMode.Callback, int); + method public void startActivityForResult(@RequiresPermission android.content.Intent, int); + method public void startActivityForResult(@RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); + method @Deprecated public void startActivityFromChild(@NonNull android.app.Activity, @RequiresPermission android.content.Intent, int); + method @Deprecated public void startActivityFromChild(@NonNull android.app.Activity, @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); + method @Deprecated public void startActivityFromFragment(@NonNull android.app.Fragment, @RequiresPermission android.content.Intent, int); + method @Deprecated public void startActivityFromFragment(@NonNull android.app.Fragment, @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); + method public boolean startActivityIfNeeded(@NonNull @RequiresPermission android.content.Intent, int); + method public boolean startActivityIfNeeded(@NonNull @RequiresPermission android.content.Intent, int, @Nullable android.os.Bundle); + method public void startIntentSenderForResult(android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; + method public void startIntentSenderForResult(android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; + method @Deprecated public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; + method @Deprecated public void startIntentSenderFromChild(android.app.Activity, android.content.IntentSender, int, android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; + method public void startLocalVoiceInteraction(android.os.Bundle); + method public void startLockTask(); + method @Deprecated public void startManagingCursor(android.database.Cursor); + method public boolean startNextMatchingActivity(@NonNull @RequiresPermission android.content.Intent); + method public boolean startNextMatchingActivity(@NonNull @RequiresPermission android.content.Intent, @Nullable android.os.Bundle); + method public void startPostponedEnterTransition(); + method public void startSearch(@Nullable String, boolean, @Nullable android.os.Bundle, boolean); + method public void stopLocalVoiceInteraction(); + method public void stopLockTask(); + method @Deprecated public void stopManagingCursor(android.database.Cursor); + method public void takeKeyEvents(boolean); + method public void triggerSearch(String, @Nullable android.os.Bundle); + method public void unregisterActivityLifecycleCallbacks(@NonNull android.app.Application.ActivityLifecycleCallbacks); + method public void unregisterForContextMenu(android.view.View); + method @RequiresPermission(android.Manifest.permission.DETECT_SCREEN_CAPTURE) public void unregisterScreenCaptureCallback(@NonNull android.app.Activity.ScreenCaptureCallback); + field public static final int DEFAULT_KEYS_DIALER = 1; // 0x1 + field public static final int DEFAULT_KEYS_DISABLE = 0; // 0x0 + field public static final int DEFAULT_KEYS_SEARCH_GLOBAL = 4; // 0x4 + field public static final int DEFAULT_KEYS_SEARCH_LOCAL = 3; // 0x3 + field public static final int DEFAULT_KEYS_SHORTCUT = 2; // 0x2 + field protected static final int[] FOCUSED_STATE_SET; + field public static final int FULLSCREEN_MODE_REQUEST_ENTER = 1; // 0x1 + field public static final int FULLSCREEN_MODE_REQUEST_EXIT = 0; // 0x0 + field public static final int OVERRIDE_TRANSITION_CLOSE = 1; // 0x1 + field public static final int OVERRIDE_TRANSITION_OPEN = 0; // 0x0 + field public static final int RESULT_CANCELED = 0; // 0x0 + field public static final int RESULT_FIRST_USER = 1; // 0x1 + field public static final int RESULT_OK = -1; // 0xffffffff + } + + public static interface Activity.ScreenCaptureCallback { + method public void onScreenCaptured(); + } + + @Deprecated public class ActivityGroup extends android.app.Activity { + ctor @Deprecated public ActivityGroup(); + ctor @Deprecated public ActivityGroup(boolean); + method @Deprecated public android.app.Activity getCurrentActivity(); + method @Deprecated public final android.app.LocalActivityManager getLocalActivityManager(); + } + + public class ActivityManager { + method public int addAppTask(@NonNull android.app.Activity, @NonNull android.content.Intent, @Nullable android.app.ActivityManager.TaskDescription, @NonNull android.graphics.Bitmap); + method @FlaggedApi("android.app.app_start_info") public void addApplicationStartInfoCompletionListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @FlaggedApi("android.app.app_start_info") public void addStartInfoTimestamp(@IntRange(from=android.app.ApplicationStartInfo.START_TIMESTAMP_RESERVED_RANGE_DEVELOPER_START, to=android.app.ApplicationStartInfo.START_TIMESTAMP_RESERVED_RANGE_DEVELOPER) int, long); + method public void appNotResponding(@NonNull String); + method public boolean clearApplicationUserData(); + method public void clearWatchHeapLimit(); + method @RequiresPermission(android.Manifest.permission.DUMP) public void dumpPackageState(java.io.FileDescriptor, String); + method public android.util.Size getAppTaskThumbnailSize(); + method public java.util.List getAppTasks(); + method public android.content.pm.ConfigurationInfo getDeviceConfigurationInfo(); + method @NonNull public java.util.List getHistoricalProcessExitReasons(@Nullable String, @IntRange(from=0) int, @IntRange(from=0) int); + method @FlaggedApi("android.app.app_start_info") @NonNull public java.util.List getHistoricalProcessStartReasons(@IntRange(from=0) int); + method public int getLargeMemoryClass(); + method public int getLauncherLargeIconDensity(); + method public int getLauncherLargeIconSize(); + method public int getLockTaskModeState(); + method public int getMemoryClass(); + method public void getMemoryInfo(android.app.ActivityManager.MemoryInfo); + method public static void getMyMemoryState(android.app.ActivityManager.RunningAppProcessInfo); + method public android.os.Debug.MemoryInfo[] getProcessMemoryInfo(int[]); + method public java.util.List getProcessesInErrorState(); + method @Deprecated public java.util.List getRecentTasks(int, int) throws java.lang.SecurityException; + method public java.util.List getRunningAppProcesses(); + method public android.app.PendingIntent getRunningServiceControlPanel(android.content.ComponentName) throws java.lang.SecurityException; + method @Deprecated public java.util.List getRunningServices(int) throws java.lang.SecurityException; + method @Deprecated public java.util.List getRunningTasks(int) throws java.lang.SecurityException; + method public boolean isActivityStartAllowedOnDisplay(@NonNull android.content.Context, int, @NonNull android.content.Intent); + method public boolean isBackgroundRestricted(); + method @Deprecated public boolean isInLockTaskMode(); + method public static boolean isLowMemoryKillReportSupported(); + method public boolean isLowRamDevice(); + method @Deprecated public static boolean isRunningInTestHarness(); + method public static boolean isRunningInUserTestHarness(); + method public static boolean isUserAMonkey(); + method @RequiresPermission(android.Manifest.permission.KILL_BACKGROUND_PROCESSES) public void killBackgroundProcesses(String); + method @RequiresPermission(android.Manifest.permission.REORDER_TASKS) public void moveTaskToFront(int, int); + method @RequiresPermission(android.Manifest.permission.REORDER_TASKS) public void moveTaskToFront(int, int, android.os.Bundle); + method @FlaggedApi("android.app.app_start_info") public void removeApplicationStartInfoCompletionListener(@NonNull java.util.function.Consumer); + method @Deprecated public void restartPackage(String); + method public void setProcessStateSummary(@Nullable byte[]); + method public static void setVrThread(int); + method public void setWatchHeapLimit(long); + field public static final String ACTION_REPORT_HEAP_LIMIT = "android.app.action.REPORT_HEAP_LIMIT"; + field public static final int LOCK_TASK_MODE_LOCKED = 1; // 0x1 + field public static final int LOCK_TASK_MODE_NONE = 0; // 0x0 + field public static final int LOCK_TASK_MODE_PINNED = 2; // 0x2 + field public static final String META_HOME_ALTERNATE = "android.app.home.alternate"; + field public static final int MOVE_TASK_NO_USER_ACTION = 2; // 0x2 + field public static final int MOVE_TASK_WITH_HOME = 1; // 0x1 + field public static final int RECENT_IGNORE_UNAVAILABLE = 2; // 0x2 + field public static final int RECENT_WITH_EXCLUDED = 1; // 0x1 + } + + public static class ActivityManager.AppTask { + method public void finishAndRemoveTask(); + method public android.app.ActivityManager.RecentTaskInfo getTaskInfo(); + method public void moveToFront(); + method public void setExcludeFromRecents(boolean); + method public void startActivity(android.content.Context, android.content.Intent, android.os.Bundle); + } + + public static class ActivityManager.MemoryInfo implements android.os.Parcelable { + ctor public ActivityManager.MemoryInfo(); + method public int describeContents(); + method public void readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public long advertisedMem; + field public long availMem; + field public boolean lowMemory; + field public long threshold; + field public long totalMem; + } + + public static class ActivityManager.ProcessErrorStateInfo implements android.os.Parcelable { + ctor public ActivityManager.ProcessErrorStateInfo(); + method public int describeContents(); + method public void readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CRASHED = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int NOT_RESPONDING = 2; // 0x2 + field public static final int NO_ERROR = 0; // 0x0 + field public int condition; + field public byte[] crashData; + field public String longMsg; + field public int pid; + field public String processName; + field public String shortMsg; + field public String stackTrace; + field public String tag; + field public int uid; + } + + public static class ActivityManager.RecentTaskInfo extends android.app.TaskInfo implements android.os.Parcelable { + ctor public ActivityManager.RecentTaskInfo(); + method public int describeContents(); + method public void readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Deprecated public int affiliatedTaskId; + field @Deprecated public CharSequence description; + field @Deprecated public int id; + field @Deprecated public int persistentId; + } + + public static class ActivityManager.RunningAppProcessInfo implements android.os.Parcelable { + ctor public ActivityManager.RunningAppProcessInfo(); + ctor public ActivityManager.RunningAppProcessInfo(String, int, String[]); + method public int describeContents(); + method public void readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Deprecated public static final int IMPORTANCE_BACKGROUND = 400; // 0x190 + field public static final int IMPORTANCE_CACHED = 400; // 0x190 + field public static final int IMPORTANCE_CANT_SAVE_STATE = 350; // 0x15e + field @Deprecated public static final int IMPORTANCE_EMPTY = 500; // 0x1f4 + field public static final int IMPORTANCE_FOREGROUND = 100; // 0x64 + field public static final int IMPORTANCE_FOREGROUND_SERVICE = 125; // 0x7d + field public static final int IMPORTANCE_GONE = 1000; // 0x3e8 + field public static final int IMPORTANCE_PERCEPTIBLE = 230; // 0xe6 + field public static final int IMPORTANCE_PERCEPTIBLE_PRE_26 = 130; // 0x82 + field public static final int IMPORTANCE_SERVICE = 300; // 0x12c + field public static final int IMPORTANCE_TOP_SLEEPING = 325; // 0x145 + field @Deprecated public static final int IMPORTANCE_TOP_SLEEPING_PRE_28 = 150; // 0x96 + field public static final int IMPORTANCE_VISIBLE = 200; // 0xc8 + field public static final int REASON_PROVIDER_IN_USE = 1; // 0x1 + field public static final int REASON_SERVICE_IN_USE = 2; // 0x2 + field public static final int REASON_UNKNOWN = 0; // 0x0 + field public int importance; + field public int importanceReasonCode; + field public android.content.ComponentName importanceReasonComponent; + field public int importanceReasonPid; + field public int lastTrimLevel; + field public int lru; + field public int pid; + field public String[] pkgList; + field public String processName; + field public int uid; + } + + public static class ActivityManager.RunningServiceInfo implements android.os.Parcelable { + ctor public ActivityManager.RunningServiceInfo(); + method public int describeContents(); + method public void readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_FOREGROUND = 2; // 0x2 + field public static final int FLAG_PERSISTENT_PROCESS = 8; // 0x8 + field public static final int FLAG_STARTED = 1; // 0x1 + field public static final int FLAG_SYSTEM_PROCESS = 4; // 0x4 + field public long activeSince; + field public int clientCount; + field public int clientLabel; + field public String clientPackage; + field public int crashCount; + field public int flags; + field public boolean foreground; + field public long lastActivityTime; + field public int pid; + field public String process; + field public long restarting; + field public android.content.ComponentName service; + field public boolean started; + field public int uid; + } + + public static class ActivityManager.RunningTaskInfo extends android.app.TaskInfo implements android.os.Parcelable { + ctor public ActivityManager.RunningTaskInfo(); + method public int describeContents(); + method public void readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Deprecated public CharSequence description; + field @Deprecated public int id; + field @Deprecated public int numRunning; + field @Deprecated public android.graphics.Bitmap thumbnail; + } + + public static class ActivityManager.TaskDescription implements android.os.Parcelable { + ctor @Deprecated public ActivityManager.TaskDescription(String, @DrawableRes int, int); + ctor @Deprecated public ActivityManager.TaskDescription(String, @DrawableRes int); + ctor @Deprecated public ActivityManager.TaskDescription(String); + ctor @Deprecated public ActivityManager.TaskDescription(); + ctor @Deprecated public ActivityManager.TaskDescription(String, android.graphics.Bitmap, int); + ctor @Deprecated public ActivityManager.TaskDescription(String, android.graphics.Bitmap); + ctor public ActivityManager.TaskDescription(android.app.ActivityManager.TaskDescription); + method public int describeContents(); + method @ColorInt public int getBackgroundColor(); + method @Deprecated public android.graphics.Bitmap getIcon(); + method public String getLabel(); + method @ColorInt public int getNavigationBarColor(); + method @ColorInt public int getPrimaryColor(); + method @ColorInt public int getStatusBarColor(); + method public void readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class ActivityManager.TaskDescription.Builder { + ctor public ActivityManager.TaskDescription.Builder(); + method @NonNull public android.app.ActivityManager.TaskDescription build(); + method @NonNull public android.app.ActivityManager.TaskDescription.Builder setBackgroundColor(@ColorInt int); + method @NonNull public android.app.ActivityManager.TaskDescription.Builder setIcon(@DrawableRes int); + method @NonNull public android.app.ActivityManager.TaskDescription.Builder setLabel(@Nullable String); + method @NonNull public android.app.ActivityManager.TaskDescription.Builder setNavigationBarColor(@ColorInt int); + method @NonNull public android.app.ActivityManager.TaskDescription.Builder setPrimaryColor(@ColorInt int); + method @NonNull public android.app.ActivityManager.TaskDescription.Builder setStatusBarColor(@ColorInt int); + } + + public class ActivityOptions { + method @Nullable public android.graphics.Rect getLaunchBounds(); + method public int getLaunchDisplayId(); + method public boolean getLockTaskMode(); + method public int getPendingIntentBackgroundActivityStartMode(); + method public int getPendingIntentCreatorBackgroundActivityStartMode(); + method public int getSplashScreenStyle(); + method @FlaggedApi("com.android.window.flags.touch_pass_through_opt_in") public boolean isAllowPassThroughOnTouchOutside(); + method @Deprecated public boolean isPendingIntentBackgroundActivityLaunchAllowed(); + method public boolean isShareIdentityEnabled(); + method public static android.app.ActivityOptions makeBasic(); + method public static android.app.ActivityOptions makeClipRevealAnimation(android.view.View, int, int, int, int); + method public static android.app.ActivityOptions makeCustomAnimation(android.content.Context, int, int); + method @NonNull public static android.app.ActivityOptions makeCustomAnimation(@NonNull android.content.Context, int, int, int); + method @NonNull public static android.app.ActivityOptions makeLaunchIntoPip(@NonNull android.app.PictureInPictureParams); + method public static android.app.ActivityOptions makeScaleUpAnimation(android.view.View, int, int, int, int); + method public static android.app.ActivityOptions makeSceneTransitionAnimation(android.app.Activity, android.view.View, String); + method @java.lang.SafeVarargs public static android.app.ActivityOptions makeSceneTransitionAnimation(android.app.Activity, android.util.Pair...); + method public static android.app.ActivityOptions makeTaskLaunchBehind(); + method public static android.app.ActivityOptions makeThumbnailScaleUpAnimation(android.view.View, android.graphics.Bitmap, int, int); + method public void requestUsageTimeReport(android.app.PendingIntent); + method @FlaggedApi("com.android.window.flags.touch_pass_through_opt_in") public void setAllowPassThroughOnTouchOutside(boolean); + method public android.app.ActivityOptions setAppVerificationBundle(android.os.Bundle); + method public android.app.ActivityOptions setLaunchBounds(@Nullable android.graphics.Rect); + method public android.app.ActivityOptions setLaunchDisplayId(int); + method public android.app.ActivityOptions setLockTaskEnabled(boolean); + method @Deprecated public void setPendingIntentBackgroundActivityLaunchAllowed(boolean); + method @NonNull public android.app.ActivityOptions setPendingIntentBackgroundActivityStartMode(int); + method @NonNull public android.app.ActivityOptions setPendingIntentCreatorBackgroundActivityStartMode(int); + method @NonNull public android.app.ActivityOptions setShareIdentityEnabled(boolean); + method @NonNull public android.app.ActivityOptions setSplashScreenStyle(int); + method public android.os.Bundle toBundle(); + method public void update(android.app.ActivityOptions); + field public static final String EXTRA_USAGE_TIME_REPORT = "android.activity.usage_time"; + field public static final String EXTRA_USAGE_TIME_REPORT_PACKAGES = "android.usage_time_packages"; + field @Deprecated @FlaggedApi("com.android.window.flags.bal_additional_start_modes") public static final int MODE_BACKGROUND_ACTIVITY_START_ALLOWED = 1; // 0x1 + field @FlaggedApi("com.android.window.flags.bal_additional_start_modes") public static final int MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS = 3; // 0x3 + field @FlaggedApi("com.android.window.flags.bal_additional_start_modes") public static final int MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE = 4; // 0x4 + field public static final int MODE_BACKGROUND_ACTIVITY_START_DENIED = 2; // 0x2 + field public static final int MODE_BACKGROUND_ACTIVITY_START_SYSTEM_DEFINED = 0; // 0x0 + } + + public class AlarmManager { + method public boolean canScheduleExactAlarms(); + method public void cancel(@NonNull android.app.PendingIntent); + method public void cancel(@NonNull android.app.AlarmManager.OnAlarmListener); + method public void cancelAll(); + method public android.app.AlarmManager.AlarmClockInfo getNextAlarmClock(); + method public void set(int, long, @NonNull android.app.PendingIntent); + method public void set(int, long, @Nullable String, @NonNull android.app.AlarmManager.OnAlarmListener, @Nullable android.os.Handler); + method @RequiresPermission(android.Manifest.permission.SCHEDULE_EXACT_ALARM) public void setAlarmClock(@NonNull android.app.AlarmManager.AlarmClockInfo, @NonNull android.app.PendingIntent); + method public void setAndAllowWhileIdle(int, long, @NonNull android.app.PendingIntent); + method @RequiresPermission(value=android.Manifest.permission.SCHEDULE_EXACT_ALARM, conditional=true) public void setExact(int, long, @NonNull android.app.PendingIntent); + method public void setExact(int, long, @Nullable String, @NonNull android.app.AlarmManager.OnAlarmListener, @Nullable android.os.Handler); + method @RequiresPermission(value=android.Manifest.permission.SCHEDULE_EXACT_ALARM, conditional=true) public void setExactAndAllowWhileIdle(int, long, @NonNull android.app.PendingIntent); + method public void setInexactRepeating(int, long, long, @NonNull android.app.PendingIntent); + method public void setRepeating(int, long, long, @NonNull android.app.PendingIntent); + method @RequiresPermission(android.Manifest.permission.SET_TIME) public void setTime(long); + method @RequiresPermission(android.Manifest.permission.SET_TIME_ZONE) public void setTimeZone(String); + method public void setWindow(int, long, long, @NonNull android.app.PendingIntent); + method public void setWindow(int, long, long, @Nullable String, @NonNull android.app.AlarmManager.OnAlarmListener, @Nullable android.os.Handler); + method public void setWindow(int, long, long, @Nullable String, @NonNull java.util.concurrent.Executor, @NonNull android.app.AlarmManager.OnAlarmListener); + field public static final String ACTION_NEXT_ALARM_CLOCK_CHANGED = "android.app.action.NEXT_ALARM_CLOCK_CHANGED"; + field public static final String ACTION_SCHEDULE_EXACT_ALARM_PERMISSION_STATE_CHANGED = "android.app.action.SCHEDULE_EXACT_ALARM_PERMISSION_STATE_CHANGED"; + field public static final int ELAPSED_REALTIME = 3; // 0x3 + field public static final int ELAPSED_REALTIME_WAKEUP = 2; // 0x2 + field public static final long INTERVAL_DAY = 86400000L; // 0x5265c00L + field public static final long INTERVAL_FIFTEEN_MINUTES = 900000L; // 0xdbba0L + field public static final long INTERVAL_HALF_DAY = 43200000L; // 0x2932e00L + field public static final long INTERVAL_HALF_HOUR = 1800000L; // 0x1b7740L + field public static final long INTERVAL_HOUR = 3600000L; // 0x36ee80L + field public static final int RTC = 1; // 0x1 + field public static final int RTC_WAKEUP = 0; // 0x0 + } + + public static final class AlarmManager.AlarmClockInfo implements android.os.Parcelable { + ctor public AlarmManager.AlarmClockInfo(long, android.app.PendingIntent); + method public int describeContents(); + method public android.app.PendingIntent getShowIntent(); + method public long getTriggerTime(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static interface AlarmManager.OnAlarmListener { + method public void onAlarm(); + } + + public class AlertDialog extends android.app.Dialog implements android.content.DialogInterface { + ctor protected AlertDialog(android.content.Context); + ctor protected AlertDialog(android.content.Context, boolean, android.content.DialogInterface.OnCancelListener); + ctor protected AlertDialog(android.content.Context, @StyleRes int); + method public android.widget.Button getButton(int); + method public android.widget.ListView getListView(); + method public void setButton(int, CharSequence, android.os.Message); + method public void setButton(int, CharSequence, android.content.DialogInterface.OnClickListener); + method @Deprecated public void setButton(CharSequence, android.os.Message); + method @Deprecated public void setButton(CharSequence, android.content.DialogInterface.OnClickListener); + method @Deprecated public void setButton2(CharSequence, android.os.Message); + method @Deprecated public void setButton2(CharSequence, android.content.DialogInterface.OnClickListener); + method @Deprecated public void setButton3(CharSequence, android.os.Message); + method @Deprecated public void setButton3(CharSequence, android.content.DialogInterface.OnClickListener); + method public void setCustomTitle(android.view.View); + method public void setIcon(@DrawableRes int); + method public void setIcon(android.graphics.drawable.Drawable); + method public void setIconAttribute(@AttrRes int); + method public void setInverseBackgroundForced(boolean); + method public void setMessage(CharSequence); + method public void setView(android.view.View); + method public void setView(android.view.View, int, int, int, int); + field @Deprecated public static final int THEME_DEVICE_DEFAULT_DARK = 4; // 0x4 + field @Deprecated public static final int THEME_DEVICE_DEFAULT_LIGHT = 5; // 0x5 + field @Deprecated public static final int THEME_HOLO_DARK = 2; // 0x2 + field @Deprecated public static final int THEME_HOLO_LIGHT = 3; // 0x3 + field @Deprecated public static final int THEME_TRADITIONAL = 1; // 0x1 + } + + public static class AlertDialog.Builder { + ctor public AlertDialog.Builder(android.content.Context); + ctor public AlertDialog.Builder(android.content.Context, int); + method public android.app.AlertDialog create(); + method public android.content.Context getContext(); + method public android.app.AlertDialog.Builder setAdapter(android.widget.ListAdapter, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setCancelable(boolean); + method public android.app.AlertDialog.Builder setCursor(android.database.Cursor, android.content.DialogInterface.OnClickListener, String); + method public android.app.AlertDialog.Builder setCustomTitle(android.view.View); + method public android.app.AlertDialog.Builder setIcon(@DrawableRes int); + method public android.app.AlertDialog.Builder setIcon(android.graphics.drawable.Drawable); + method public android.app.AlertDialog.Builder setIconAttribute(@AttrRes int); + method @Deprecated public android.app.AlertDialog.Builder setInverseBackgroundForced(boolean); + method public android.app.AlertDialog.Builder setItems(@ArrayRes int, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setItems(CharSequence[], android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setMessage(@StringRes int); + method public android.app.AlertDialog.Builder setMessage(CharSequence); + method public android.app.AlertDialog.Builder setMultiChoiceItems(@ArrayRes int, boolean[], android.content.DialogInterface.OnMultiChoiceClickListener); + method public android.app.AlertDialog.Builder setMultiChoiceItems(CharSequence[], boolean[], android.content.DialogInterface.OnMultiChoiceClickListener); + method public android.app.AlertDialog.Builder setMultiChoiceItems(android.database.Cursor, String, String, android.content.DialogInterface.OnMultiChoiceClickListener); + method public android.app.AlertDialog.Builder setNegativeButton(@StringRes int, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setNegativeButton(CharSequence, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setNeutralButton(@StringRes int, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setNeutralButton(CharSequence, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setOnCancelListener(android.content.DialogInterface.OnCancelListener); + method public android.app.AlertDialog.Builder setOnDismissListener(android.content.DialogInterface.OnDismissListener); + method public android.app.AlertDialog.Builder setOnItemSelectedListener(android.widget.AdapterView.OnItemSelectedListener); + method public android.app.AlertDialog.Builder setOnKeyListener(android.content.DialogInterface.OnKeyListener); + method public android.app.AlertDialog.Builder setPositiveButton(@StringRes int, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setPositiveButton(CharSequence, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setSingleChoiceItems(@ArrayRes int, int, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setSingleChoiceItems(android.database.Cursor, int, String, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setSingleChoiceItems(CharSequence[], int, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setSingleChoiceItems(android.widget.ListAdapter, int, android.content.DialogInterface.OnClickListener); + method public android.app.AlertDialog.Builder setTitle(@StringRes int); + method public android.app.AlertDialog.Builder setTitle(CharSequence); + method public android.app.AlertDialog.Builder setView(int); + method public android.app.AlertDialog.Builder setView(android.view.View); + method public android.app.AlertDialog show(); + } + + @Deprecated public class AliasActivity extends android.app.Activity { + ctor @Deprecated public AliasActivity(); + } + + public class AppComponentFactory { + ctor public AppComponentFactory(); + method @NonNull public android.app.Activity instantiateActivity(@NonNull ClassLoader, @NonNull String, @Nullable android.content.Intent) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; + method @NonNull public android.app.Application instantiateApplication(@NonNull ClassLoader, @NonNull String) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; + method @NonNull public ClassLoader instantiateClassLoader(@NonNull ClassLoader, @NonNull android.content.pm.ApplicationInfo); + method @NonNull public android.content.ContentProvider instantiateProvider(@NonNull ClassLoader, @NonNull String) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; + method @NonNull public android.content.BroadcastReceiver instantiateReceiver(@NonNull ClassLoader, @NonNull String, @Nullable android.content.Intent) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; + method @NonNull public android.app.Service instantiateService(@NonNull ClassLoader, @NonNull String, @Nullable android.content.Intent) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; + } + + public class AppOpsManager { + method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOp(@NonNull String, int, @NonNull String); + method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOp(@NonNull String, int, @NonNull String, @Nullable String); + method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOpNoThrow(@NonNull String, int, @NonNull String, @Nullable String); + method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOpNoThrow(@NonNull String, int, @NonNull String); + method @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int checkOpRawNoThrow(@NonNull String, int, @NonNull String, @Nullable String); + method @Deprecated public void checkPackage(int, @NonNull String); + method @Deprecated public void finishOp(@NonNull String, int, @NonNull String); + method public void finishOp(@NonNull String, int, @NonNull String, @Nullable String); + method public void finishProxyOp(@NonNull String, int, @NonNull String, @Nullable String); + method public boolean isOpActive(@NonNull String, int, @NonNull String); + method @Deprecated public int noteOp(@NonNull String, int, @NonNull String); + method public int noteOp(@NonNull String, int, @Nullable String, @Nullable String, @Nullable String); + method @Deprecated public int noteOpNoThrow(@NonNull String, int, @NonNull String); + method public int noteOpNoThrow(@NonNull String, int, @NonNull String, @Nullable String, @Nullable String); + method @Deprecated public int noteProxyOp(@NonNull String, @NonNull String); + method public int noteProxyOp(@NonNull String, @Nullable String, int, @Nullable String, @Nullable String); + method @Deprecated public int noteProxyOpNoThrow(@NonNull String, @NonNull String); + method @Deprecated public int noteProxyOpNoThrow(@NonNull String, @Nullable String, int); + method public int noteProxyOpNoThrow(@NonNull String, @Nullable String, int, @Nullable String, @Nullable String); + method @Nullable public static String permissionToOp(@NonNull String); + method public void setOnOpNotedCallback(@Nullable java.util.concurrent.Executor, @Nullable android.app.AppOpsManager.OnOpNotedCallback); + method @FlaggedApi("android.permission.flags.sync_on_op_noted_api") public void setOnOpNotedCallback(@Nullable java.util.concurrent.Executor, @Nullable android.app.AppOpsManager.OnOpNotedCallback, int); + method @Deprecated public int startOp(@NonNull String, int, @NonNull String); + method public int startOp(@NonNull String, int, @Nullable String, @Nullable String, @Nullable String); + method @Deprecated public int startOpNoThrow(@NonNull String, int, @NonNull String); + method public int startOpNoThrow(@NonNull String, int, @NonNull String, @Nullable String, @Nullable String); + method public int startProxyOp(@NonNull String, int, @NonNull String, @Nullable String, @Nullable String); + method public int startProxyOpNoThrow(@NonNull String, int, @NonNull String, @Nullable String, @Nullable String); + method public void startWatchingActive(@NonNull String[], @NonNull java.util.concurrent.Executor, @NonNull android.app.AppOpsManager.OnOpActiveChangedListener); + method public void startWatchingMode(@NonNull String, @Nullable String, @NonNull android.app.AppOpsManager.OnOpChangedListener); + method public void startWatchingMode(@NonNull String, @Nullable String, int, @NonNull android.app.AppOpsManager.OnOpChangedListener); + method public void stopWatchingActive(@NonNull android.app.AppOpsManager.OnOpActiveChangedListener); + method public void stopWatchingMode(@NonNull android.app.AppOpsManager.OnOpChangedListener); + method @Deprecated @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int unsafeCheckOp(@NonNull String, int, @NonNull String); + method @Deprecated @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int unsafeCheckOpNoThrow(@NonNull String, int, @NonNull String); + method @Deprecated @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int unsafeCheckOpRaw(@NonNull String, int, @NonNull String); + method @Deprecated @FlaggedApi("android.permission.flags.check_op_overload_api_enabled") public int unsafeCheckOpRawNoThrow(@NonNull String, int, @NonNull String); + field public static final int MODE_ALLOWED = 0; // 0x0 + field public static final int MODE_DEFAULT = 3; // 0x3 + field public static final int MODE_ERRORED = 2; // 0x2 + field public static final int MODE_FOREGROUND = 4; // 0x4 + field public static final int MODE_IGNORED = 1; // 0x1 + field public static final String OPSTR_ADD_VOICEMAIL = "android:add_voicemail"; + field public static final String OPSTR_ANSWER_PHONE_CALLS = "android:answer_phone_calls"; + field public static final String OPSTR_BODY_SENSORS = "android:body_sensors"; + field public static final String OPSTR_CALL_PHONE = "android:call_phone"; + field public static final String OPSTR_CAMERA = "android:camera"; + field public static final String OPSTR_COARSE_LOCATION = "android:coarse_location"; + field public static final String OPSTR_FINE_LOCATION = "android:fine_location"; + field public static final String OPSTR_GET_USAGE_STATS = "android:get_usage_stats"; + field public static final String OPSTR_MOCK_LOCATION = "android:mock_location"; + field public static final String OPSTR_MONITOR_HIGH_POWER_LOCATION = "android:monitor_location_high_power"; + field public static final String OPSTR_MONITOR_LOCATION = "android:monitor_location"; + field public static final String OPSTR_PICTURE_IN_PICTURE = "android:picture_in_picture"; + field public static final String OPSTR_PROCESS_OUTGOING_CALLS = "android:process_outgoing_calls"; + field public static final String OPSTR_READ_CALENDAR = "android:read_calendar"; + field public static final String OPSTR_READ_CALL_LOG = "android:read_call_log"; + field public static final String OPSTR_READ_CELL_BROADCASTS = "android:read_cell_broadcasts"; + field public static final String OPSTR_READ_CONTACTS = "android:read_contacts"; + field public static final String OPSTR_READ_EXTERNAL_STORAGE = "android:read_external_storage"; + field public static final String OPSTR_READ_PHONE_NUMBERS = "android:read_phone_numbers"; + field public static final String OPSTR_READ_PHONE_STATE = "android:read_phone_state"; + field public static final String OPSTR_READ_SMS = "android:read_sms"; + field public static final String OPSTR_RECEIVE_MMS = "android:receive_mms"; + field public static final String OPSTR_RECEIVE_SMS = "android:receive_sms"; + field public static final String OPSTR_RECEIVE_WAP_PUSH = "android:receive_wap_push"; + field public static final String OPSTR_RECORD_AUDIO = "android:record_audio"; + field public static final String OPSTR_SEND_SMS = "android:send_sms"; + field public static final String OPSTR_SYSTEM_ALERT_WINDOW = "android:system_alert_window"; + field public static final String OPSTR_USE_FINGERPRINT = "android:use_fingerprint"; + field public static final String OPSTR_USE_SIP = "android:use_sip"; + field public static final String OPSTR_WRITE_CALENDAR = "android:write_calendar"; + field public static final String OPSTR_WRITE_CALL_LOG = "android:write_call_log"; + field public static final String OPSTR_WRITE_CONTACTS = "android:write_contacts"; + field public static final String OPSTR_WRITE_EXTERNAL_STORAGE = "android:write_external_storage"; + field public static final String OPSTR_WRITE_SETTINGS = "android:write_settings"; + field @FlaggedApi("android.permission.flags.sync_on_op_noted_api") public static final int OP_NOTED_CALLBACK_FLAG_IGNORE_ASYNC = 1; // 0x1 + field public static final int WATCH_FOREGROUND_CHANGES = 1; // 0x1 + } + + public static interface AppOpsManager.OnOpActiveChangedListener { + method public void onOpActiveChanged(@NonNull String, int, @NonNull String, boolean); + method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public default void onOpActiveChanged(@NonNull String, int, @NonNull String, @Nullable String, int, boolean, int, int); + } + + public static interface AppOpsManager.OnOpChangedListener { + method public void onOpChanged(String, String); + method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public default void onOpChanged(@NonNull String, @NonNull String, int, @NonNull String); + } + + public abstract static class AppOpsManager.OnOpNotedCallback { + ctor public AppOpsManager.OnOpNotedCallback(); + method public abstract void onAsyncNoted(@NonNull android.app.AsyncNotedAppOp); + method public abstract void onNoted(@NonNull android.app.SyncNotedAppOp); + method public abstract void onSelfNoted(@NonNull android.app.SyncNotedAppOp); + } + + public class Application extends android.content.ContextWrapper implements android.content.ComponentCallbacks2 { + ctor public Application(); + method public static String getProcessName(); + method @CallSuper public void onConfigurationChanged(@NonNull android.content.res.Configuration); + method @CallSuper public void onCreate(); + method @CallSuper public void onLowMemory(); + method @CallSuper public void onTerminate(); + method @CallSuper public void onTrimMemory(int); + method public void registerActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks); + method public void registerOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener); + method public void unregisterActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks); + method public void unregisterOnProvideAssistDataListener(android.app.Application.OnProvideAssistDataListener); + } + + public static interface Application.ActivityLifecycleCallbacks { + method public void onActivityCreated(@NonNull android.app.Activity, @Nullable android.os.Bundle); + method public void onActivityDestroyed(@NonNull android.app.Activity); + method public void onActivityPaused(@NonNull android.app.Activity); + method public default void onActivityPostCreated(@NonNull android.app.Activity, @Nullable android.os.Bundle); + method public default void onActivityPostDestroyed(@NonNull android.app.Activity); + method public default void onActivityPostPaused(@NonNull android.app.Activity); + method public default void onActivityPostResumed(@NonNull android.app.Activity); + method public default void onActivityPostSaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); + method public default void onActivityPostStarted(@NonNull android.app.Activity); + method public default void onActivityPostStopped(@NonNull android.app.Activity); + method public default void onActivityPreCreated(@NonNull android.app.Activity, @Nullable android.os.Bundle); + method public default void onActivityPreDestroyed(@NonNull android.app.Activity); + method public default void onActivityPrePaused(@NonNull android.app.Activity); + method public default void onActivityPreResumed(@NonNull android.app.Activity); + method public default void onActivityPreSaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); + method public default void onActivityPreStarted(@NonNull android.app.Activity); + method public default void onActivityPreStopped(@NonNull android.app.Activity); + method public void onActivityResumed(@NonNull android.app.Activity); + method public void onActivitySaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); + method public void onActivityStarted(@NonNull android.app.Activity); + method public void onActivityStopped(@NonNull android.app.Activity); + } + + public static interface Application.OnProvideAssistDataListener { + method public void onProvideAssistData(android.app.Activity, android.os.Bundle); + } + + public class ApplicationErrorReport implements android.os.Parcelable { + ctor public ApplicationErrorReport(); + method public int describeContents(); + method public void dump(android.util.Printer, String); + method public static android.content.ComponentName getErrorReportReceiver(android.content.Context, String, int); + method public void readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_ANR = 2; // 0x2 + field public static final int TYPE_BATTERY = 3; // 0x3 + field public static final int TYPE_CRASH = 1; // 0x1 + field public static final int TYPE_NONE = 0; // 0x0 + field public static final int TYPE_RUNNING_SERVICE = 5; // 0x5 + field public android.app.ApplicationErrorReport.AnrInfo anrInfo; + field public android.app.ApplicationErrorReport.BatteryInfo batteryInfo; + field public android.app.ApplicationErrorReport.CrashInfo crashInfo; + field public String installerPackageName; + field public String packageName; + field public String processName; + field public android.app.ApplicationErrorReport.RunningServiceInfo runningServiceInfo; + field public boolean systemApp; + field public long time; + field public int type; + } + + public static class ApplicationErrorReport.AnrInfo { + ctor public ApplicationErrorReport.AnrInfo(); + ctor public ApplicationErrorReport.AnrInfo(android.os.Parcel); + method public void dump(android.util.Printer, String); + method public void writeToParcel(android.os.Parcel, int); + field public String activity; + field public String cause; + field public String info; + } + + public static class ApplicationErrorReport.BatteryInfo { + ctor public ApplicationErrorReport.BatteryInfo(); + ctor public ApplicationErrorReport.BatteryInfo(android.os.Parcel); + method public void dump(android.util.Printer, String); + method public void writeToParcel(android.os.Parcel, int); + field public String checkinDetails; + field public long durationMicros; + field public String usageDetails; + field public int usagePercent; + } + + public static class ApplicationErrorReport.CrashInfo { + ctor public ApplicationErrorReport.CrashInfo(); + ctor public ApplicationErrorReport.CrashInfo(Throwable); + ctor public ApplicationErrorReport.CrashInfo(android.os.Parcel); + method public void dump(android.util.Printer, String); + method public void writeToParcel(android.os.Parcel, int); + field public String exceptionClassName; + field public String exceptionMessage; + field public String stackTrace; + field public String throwClassName; + field public String throwFileName; + field public int throwLineNumber; + field public String throwMethodName; + } + + public static class ApplicationErrorReport.RunningServiceInfo { + ctor public ApplicationErrorReport.RunningServiceInfo(); + ctor public ApplicationErrorReport.RunningServiceInfo(android.os.Parcel); + method public void dump(android.util.Printer, String); + method public void writeToParcel(android.os.Parcel, int); + field public long durationMillis; + field public String serviceDetails; + } + + public final class ApplicationExitInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getDefiningUid(); + method @Nullable public String getDescription(); + method public int getImportance(); + method public int getPackageUid(); + method public int getPid(); + method @NonNull public String getProcessName(); + method @Nullable public byte[] getProcessStateSummary(); + method public long getPss(); + method public int getRealUid(); + method public int getReason(); + method public long getRss(); + method public int getStatus(); + method public long getTimestamp(); + method @Nullable public java.io.InputStream getTraceInputStream() throws java.io.IOException; + method @NonNull public android.os.UserHandle getUserHandle(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int REASON_ANR = 6; // 0x6 + field public static final int REASON_CRASH = 4; // 0x4 + field public static final int REASON_CRASH_NATIVE = 5; // 0x5 + field public static final int REASON_DEPENDENCY_DIED = 12; // 0xc + field public static final int REASON_EXCESSIVE_RESOURCE_USAGE = 9; // 0x9 + field public static final int REASON_EXIT_SELF = 1; // 0x1 + field public static final int REASON_FREEZER = 14; // 0xe + field public static final int REASON_INITIALIZATION_FAILURE = 7; // 0x7 + field public static final int REASON_LOW_MEMORY = 3; // 0x3 + field public static final int REASON_OTHER = 13; // 0xd + field public static final int REASON_PACKAGE_STATE_CHANGE = 15; // 0xf + field public static final int REASON_PACKAGE_UPDATED = 16; // 0x10 + field public static final int REASON_PERMISSION_CHANGE = 8; // 0x8 + field public static final int REASON_SIGNALED = 2; // 0x2 + field public static final int REASON_UNKNOWN = 0; // 0x0 + field public static final int REASON_USER_REQUESTED = 10; // 0xa + field public static final int REASON_USER_STOPPED = 11; // 0xb + } + + @FlaggedApi("android.app.app_start_info") public final class ApplicationStartInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getDefiningUid(); + method @Nullable public android.content.Intent getIntent(); + method public int getLaunchMode(); + method public int getPackageUid(); + method public int getPid(); + method @NonNull public String getProcessName(); + method public int getRealUid(); + method public int getReason(); + method @FlaggedApi("android.app.app_start_info_component") public int getStartComponent(); + method public int getStartType(); + method public int getStartupState(); + method @NonNull public java.util.Map getStartupTimestamps(); + method @FlaggedApi("android.content.pm.stay_stopped") public boolean wasForceStopped(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int LAUNCH_MODE_SINGLE_INSTANCE = 2; // 0x2 + field public static final int LAUNCH_MODE_SINGLE_INSTANCE_PER_TASK = 4; // 0x4 + field public static final int LAUNCH_MODE_SINGLE_TASK = 3; // 0x3 + field public static final int LAUNCH_MODE_SINGLE_TOP = 1; // 0x1 + field public static final int LAUNCH_MODE_STANDARD = 0; // 0x0 + field public static final int STARTUP_STATE_ERROR = 1; // 0x1 + field public static final int STARTUP_STATE_FIRST_FRAME_DRAWN = 2; // 0x2 + field public static final int STARTUP_STATE_STARTED = 0; // 0x0 + field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_ACTIVITY = 1; // 0x1 + field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_BROADCAST = 2; // 0x2 + field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_CONTENT_PROVIDER = 3; // 0x3 + field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_OTHER = 5; // 0x5 + field @FlaggedApi("android.app.app_start_info_component") public static final int START_COMPONENT_SERVICE = 4; // 0x4 + field public static final int START_REASON_ALARM = 0; // 0x0 + field public static final int START_REASON_BACKUP = 1; // 0x1 + field public static final int START_REASON_BOOT_COMPLETE = 2; // 0x2 + field public static final int START_REASON_BROADCAST = 3; // 0x3 + field public static final int START_REASON_CONTENT_PROVIDER = 4; // 0x4 + field public static final int START_REASON_JOB = 5; // 0x5 + field public static final int START_REASON_LAUNCHER = 6; // 0x6 + field public static final int START_REASON_LAUNCHER_RECENTS = 7; // 0x7 + field public static final int START_REASON_OTHER = 8; // 0x8 + field public static final int START_REASON_PUSH = 9; // 0x9 + field public static final int START_REASON_SERVICE = 10; // 0xa + field public static final int START_REASON_START_ACTIVITY = 11; // 0xb + field public static final int START_TIMESTAMP_APPLICATION_ONCREATE = 2; // 0x2 + field public static final int START_TIMESTAMP_BIND_APPLICATION = 3; // 0x3 + field public static final int START_TIMESTAMP_FIRST_FRAME = 4; // 0x4 + field public static final int START_TIMESTAMP_FORK = 1; // 0x1 + field public static final int START_TIMESTAMP_FULLY_DRAWN = 5; // 0x5 + field public static final int START_TIMESTAMP_INITIAL_RENDERTHREAD_FRAME = 6; // 0x6 + field public static final int START_TIMESTAMP_LAUNCH = 0; // 0x0 + field public static final int START_TIMESTAMP_RESERVED_RANGE_DEVELOPER = 30; // 0x1e + field public static final int START_TIMESTAMP_RESERVED_RANGE_DEVELOPER_START = 21; // 0x15 + field public static final int START_TIMESTAMP_RESERVED_RANGE_SYSTEM = 20; // 0x14 + field public static final int START_TIMESTAMP_SURFACEFLINGER_COMPOSITION_COMPLETE = 7; // 0x7 + field public static final int START_TYPE_COLD = 1; // 0x1 + field public static final int START_TYPE_HOT = 3; // 0x3 + field public static final int START_TYPE_UNSET = 0; // 0x0 + field public static final int START_TYPE_WARM = 2; // 0x2 + } + + public final class AsyncNotedAppOp implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getAttributionTag(); + method @NonNull public String getMessage(); + method @IntRange(from=0) public int getNotingUid(); + method @NonNull public String getOp(); + method public long getTime(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class AuthenticationRequiredException extends java.lang.SecurityException implements android.os.Parcelable { + ctor public AuthenticationRequiredException(Throwable, android.app.PendingIntent); + method public int describeContents(); + method public android.app.PendingIntent getUserAction(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class AutomaticZenRule implements android.os.Parcelable { + ctor @Deprecated public AutomaticZenRule(String, android.content.ComponentName, android.net.Uri, int, boolean); + ctor public AutomaticZenRule(@NonNull String, @Nullable android.content.ComponentName, @Nullable android.content.ComponentName, @NonNull android.net.Uri, @Nullable android.service.notification.ZenPolicy, int, boolean); + ctor public AutomaticZenRule(android.os.Parcel); + method public int describeContents(); + method public android.net.Uri getConditionId(); + method @Nullable public android.content.ComponentName getConfigurationActivity(); + method public long getCreationTime(); + method @FlaggedApi("android.app.modes_api") @Nullable public android.service.notification.ZenDeviceEffects getDeviceEffects(); + method @FlaggedApi("android.app.modes_api") @DrawableRes public int getIconResId(); + method public int getInterruptionFilter(); + method public String getName(); + method public android.content.ComponentName getOwner(); + method @FlaggedApi("android.app.modes_api") @Nullable public String getTriggerDescription(); + method @FlaggedApi("android.app.modes_api") public int getType(); + method @Nullable public android.service.notification.ZenPolicy getZenPolicy(); + method public boolean isEnabled(); + method @FlaggedApi("android.app.modes_api") public boolean isManualInvocationAllowed(); + method public void setConditionId(android.net.Uri); + method public void setConfigurationActivity(@Nullable android.content.ComponentName); + method @FlaggedApi("android.app.modes_api") public void setDeviceEffects(@Nullable android.service.notification.ZenDeviceEffects); + method public void setEnabled(boolean); + method public void setInterruptionFilter(int); + method public void setName(String); + method public void setZenPolicy(@Nullable android.service.notification.ZenPolicy); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @FlaggedApi("android.app.modes_api") public static final int TYPE_BEDTIME = 3; // 0x3 + field @FlaggedApi("android.app.modes_api") public static final int TYPE_DRIVING = 4; // 0x4 + field @FlaggedApi("android.app.modes_api") public static final int TYPE_IMMERSIVE = 5; // 0x5 + field @FlaggedApi("android.app.modes_api") public static final int TYPE_MANAGED = 7; // 0x7 + field @FlaggedApi("android.app.modes_api") public static final int TYPE_OTHER = 0; // 0x0 + field @FlaggedApi("android.app.modes_api") public static final int TYPE_SCHEDULE_CALENDAR = 2; // 0x2 + field @FlaggedApi("android.app.modes_api") public static final int TYPE_SCHEDULE_TIME = 1; // 0x1 + field @FlaggedApi("android.app.modes_api") public static final int TYPE_THEATER = 6; // 0x6 + field @FlaggedApi("android.app.modes_api") public static final int TYPE_UNKNOWN = -1; // 0xffffffff + } + + @FlaggedApi("android.app.modes_api") public static final class AutomaticZenRule.Builder { + ctor public AutomaticZenRule.Builder(@NonNull android.app.AutomaticZenRule); + ctor public AutomaticZenRule.Builder(@NonNull String, @NonNull android.net.Uri); + method @NonNull public android.app.AutomaticZenRule build(); + method @NonNull public android.app.AutomaticZenRule.Builder setConditionId(@NonNull android.net.Uri); + method @NonNull public android.app.AutomaticZenRule.Builder setConfigurationActivity(@Nullable android.content.ComponentName); + method @NonNull public android.app.AutomaticZenRule.Builder setDeviceEffects(@Nullable android.service.notification.ZenDeviceEffects); + method @NonNull public android.app.AutomaticZenRule.Builder setEnabled(boolean); + method @NonNull public android.app.AutomaticZenRule.Builder setIconResId(@DrawableRes int); + method @NonNull public android.app.AutomaticZenRule.Builder setInterruptionFilter(int); + method @NonNull public android.app.AutomaticZenRule.Builder setManualInvocationAllowed(boolean); + method @NonNull public android.app.AutomaticZenRule.Builder setName(@NonNull String); + method @NonNull public android.app.AutomaticZenRule.Builder setOwner(@Nullable android.content.ComponentName); + method @NonNull public android.app.AutomaticZenRule.Builder setTriggerDescription(@Nullable String); + method @NonNull public android.app.AutomaticZenRule.Builder setType(int); + method @NonNull public android.app.AutomaticZenRule.Builder setZenPolicy(@Nullable android.service.notification.ZenPolicy); + } + + public final class BackgroundServiceStartNotAllowedException extends android.app.ServiceStartNotAllowedException implements android.os.Parcelable { + ctor public BackgroundServiceStartNotAllowedException(@NonNull String); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class BroadcastOptions { + method public void clearDeferralPolicy(); + method public void clearDeliveryGroupMatchingKey(); + method public void clearDeliveryGroupPolicy(); + method @NonNull public static android.app.BroadcastOptions fromBundle(@NonNull android.os.Bundle); + method public int getDeferralPolicy(); + method @Nullable public String getDeliveryGroupMatchingKey(); + method public int getDeliveryGroupPolicy(); + method public boolean isShareIdentityEnabled(); + method @NonNull public static android.app.BroadcastOptions makeBasic(); + method @NonNull public android.app.BroadcastOptions setDeferralPolicy(int); + method @NonNull public android.app.BroadcastOptions setDeliveryGroupMatchingKey(@NonNull String, @NonNull String); + method @NonNull public android.app.BroadcastOptions setDeliveryGroupPolicy(int); + method @NonNull public android.app.BroadcastOptions setShareIdentityEnabled(boolean); + method @NonNull public android.os.Bundle toBundle(); + field public static final int DEFERRAL_POLICY_DEFAULT = 0; // 0x0 + field public static final int DEFERRAL_POLICY_NONE = 1; // 0x1 + field public static final int DEFERRAL_POLICY_UNTIL_ACTIVE = 2; // 0x2 + field public static final int DELIVERY_GROUP_POLICY_ALL = 0; // 0x0 + field public static final int DELIVERY_GROUP_POLICY_MOST_RECENT = 1; // 0x1 + } + + @FlaggedApi("android.security.content_uri_permission_apis") public final class ComponentCaller { + method public int checkContentUriPermission(@NonNull android.net.Uri, int); + method @Nullable public String getPackage(); + method public int getUid(); + } + + public class DatePickerDialog extends android.app.AlertDialog implements android.widget.DatePicker.OnDateChangedListener android.content.DialogInterface.OnClickListener { + ctor public DatePickerDialog(@NonNull android.content.Context); + ctor public DatePickerDialog(@NonNull android.content.Context, @StyleRes int); + ctor public DatePickerDialog(@NonNull android.content.Context, @Nullable android.app.DatePickerDialog.OnDateSetListener, int, int, int); + ctor public DatePickerDialog(@NonNull android.content.Context, @StyleRes int, @Nullable android.app.DatePickerDialog.OnDateSetListener, int, int, int); + method @NonNull public android.widget.DatePicker getDatePicker(); + method public void onClick(@NonNull android.content.DialogInterface, int); + method public void onDateChanged(@NonNull android.widget.DatePicker, int, int, int); + method public void setOnDateSetListener(@Nullable android.app.DatePickerDialog.OnDateSetListener); + method public void updateDate(int, int, int); + } + + public static interface DatePickerDialog.OnDateSetListener { + method public void onDateSet(android.widget.DatePicker, int, int, int); + } + + public class Dialog implements android.content.DialogInterface android.view.KeyEvent.Callback android.view.View.OnCreateContextMenuListener android.view.Window.Callback { + ctor public Dialog(@NonNull @UiContext android.content.Context); + ctor public Dialog(@NonNull @UiContext android.content.Context, @StyleRes int); + ctor protected Dialog(@NonNull @UiContext android.content.Context, boolean, @Nullable android.content.DialogInterface.OnCancelListener); + method public void addContentView(@NonNull android.view.View, @Nullable android.view.ViewGroup.LayoutParams); + method public void cancel(); + method public void closeOptionsMenu(); + method public void create(); + method public void dismiss(); + method public boolean dispatchGenericMotionEvent(@NonNull android.view.MotionEvent); + method public boolean dispatchKeyEvent(@NonNull android.view.KeyEvent); + method public boolean dispatchKeyShortcutEvent(@NonNull android.view.KeyEvent); + method public boolean dispatchPopulateAccessibilityEvent(@NonNull android.view.accessibility.AccessibilityEvent); + method public boolean dispatchTouchEvent(@NonNull android.view.MotionEvent); + method public boolean dispatchTrackballEvent(@NonNull android.view.MotionEvent); + method public T findViewById(@IdRes int); + method @Nullable public android.app.ActionBar getActionBar(); + method @NonNull @UiContext public final android.content.Context getContext(); + method @Nullable public android.view.View getCurrentFocus(); + method @NonNull public android.view.LayoutInflater getLayoutInflater(); + method @NonNull public android.window.OnBackInvokedDispatcher getOnBackInvokedDispatcher(); + method @Nullable public final android.app.Activity getOwnerActivity(); + method @Nullable public final android.view.SearchEvent getSearchEvent(); + method public final int getVolumeControlStream(); + method @Nullable public android.view.Window getWindow(); + method public void hide(); + method public void invalidateOptionsMenu(); + method public boolean isShowing(); + method @CallSuper public void onActionModeFinished(android.view.ActionMode); + method @CallSuper public void onActionModeStarted(android.view.ActionMode); + method public void onAttachedToWindow(); + method @Deprecated public void onBackPressed(); + method public void onContentChanged(); + method public boolean onContextItemSelected(@NonNull android.view.MenuItem); + method public void onContextMenuClosed(@NonNull android.view.Menu); + method protected void onCreate(android.os.Bundle); + method public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo); + method public boolean onCreateOptionsMenu(@NonNull android.view.Menu); + method public boolean onCreatePanelMenu(int, @NonNull android.view.Menu); + method public android.view.View onCreatePanelView(int); + method public void onDetachedFromWindow(); + method public boolean onGenericMotionEvent(@NonNull android.view.MotionEvent); + method public boolean onKeyDown(int, @NonNull android.view.KeyEvent); + method public boolean onKeyLongPress(int, @NonNull android.view.KeyEvent); + method public boolean onKeyMultiple(int, int, @NonNull android.view.KeyEvent); + method public boolean onKeyShortcut(int, @NonNull android.view.KeyEvent); + method public boolean onKeyUp(int, @NonNull android.view.KeyEvent); + method public boolean onMenuItemSelected(int, @NonNull android.view.MenuItem); + method public boolean onMenuOpened(int, @NonNull android.view.Menu); + method public boolean onOptionsItemSelected(@NonNull android.view.MenuItem); + method public void onOptionsMenuClosed(@NonNull android.view.Menu); + method public void onPanelClosed(int, @NonNull android.view.Menu); + method public boolean onPrepareOptionsMenu(@NonNull android.view.Menu); + method public boolean onPreparePanel(int, @Nullable android.view.View, @NonNull android.view.Menu); + method public void onRestoreInstanceState(@NonNull android.os.Bundle); + method @NonNull public android.os.Bundle onSaveInstanceState(); + method public boolean onSearchRequested(@NonNull android.view.SearchEvent); + method public boolean onSearchRequested(); + method protected void onStart(); + method protected void onStop(); + method public boolean onTouchEvent(@NonNull android.view.MotionEvent); + method public boolean onTrackballEvent(@NonNull android.view.MotionEvent); + method public void onWindowAttributesChanged(android.view.WindowManager.LayoutParams); + method public void onWindowFocusChanged(boolean); + method public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback); + method public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int); + method public void openContextMenu(@NonNull android.view.View); + method public void openOptionsMenu(); + method public void registerForContextMenu(@NonNull android.view.View); + method public final boolean requestWindowFeature(int); + method @NonNull public final T requireViewById(@IdRes int); + method public void setCancelMessage(@Nullable android.os.Message); + method public void setCancelable(boolean); + method public void setCanceledOnTouchOutside(boolean); + method public void setContentView(@LayoutRes int); + method public void setContentView(@NonNull android.view.View); + method public void setContentView(@NonNull android.view.View, @Nullable android.view.ViewGroup.LayoutParams); + method public void setDismissMessage(@Nullable android.os.Message); + method public final void setFeatureDrawable(int, @Nullable android.graphics.drawable.Drawable); + method public final void setFeatureDrawableAlpha(int, int); + method public final void setFeatureDrawableResource(int, @DrawableRes int); + method public final void setFeatureDrawableUri(int, @Nullable android.net.Uri); + method public void setOnCancelListener(@Nullable android.content.DialogInterface.OnCancelListener); + method public void setOnDismissListener(@Nullable android.content.DialogInterface.OnDismissListener); + method public void setOnKeyListener(@Nullable android.content.DialogInterface.OnKeyListener); + method public void setOnShowListener(@Nullable android.content.DialogInterface.OnShowListener); + method public final void setOwnerActivity(@NonNull android.app.Activity); + method public void setTitle(@Nullable CharSequence); + method public void setTitle(@StringRes int); + method public final void setVolumeControlStream(int); + method public void show(); + method public void takeKeyEvents(boolean); + method public void unregisterForContextMenu(@NonNull android.view.View); + } + + @Deprecated public class DialogFragment extends android.app.Fragment implements android.content.DialogInterface.OnCancelListener android.content.DialogInterface.OnDismissListener { + ctor @Deprecated public DialogFragment(); + method @Deprecated public void dismiss(); + method @Deprecated public void dismissAllowingStateLoss(); + method @Deprecated public android.app.Dialog getDialog(); + method @Deprecated public boolean getShowsDialog(); + method @Deprecated public int getTheme(); + method @Deprecated public boolean isCancelable(); + method @Deprecated public void onCancel(android.content.DialogInterface); + method @Deprecated public android.app.Dialog onCreateDialog(android.os.Bundle); + method @Deprecated public void onDismiss(android.content.DialogInterface); + method @Deprecated public void setCancelable(boolean); + method @Deprecated public void setShowsDialog(boolean); + method @Deprecated public void setStyle(int, int); + method @Deprecated public void show(android.app.FragmentManager, String); + method @Deprecated public int show(android.app.FragmentTransaction, String); + field @Deprecated public static final int STYLE_NORMAL = 0; // 0x0 + field @Deprecated public static final int STYLE_NO_FRAME = 2; // 0x2 + field @Deprecated public static final int STYLE_NO_INPUT = 3; // 0x3 + field @Deprecated public static final int STYLE_NO_TITLE = 1; // 0x1 + } + + public final class DirectAction implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.os.Bundle getExtras(); + method @NonNull public String getId(); + method @Nullable public android.content.LocusId getLocusId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class DirectAction.Builder { + ctor public DirectAction.Builder(@NonNull String); + method @NonNull public android.app.DirectAction build(); + method @NonNull public android.app.DirectAction.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.app.DirectAction.Builder setLocusId(@Nullable android.content.LocusId); + } + + public class DownloadManager { + method @Deprecated public long addCompletedDownload(String, String, boolean, String, String, long, boolean); + method @Deprecated public long addCompletedDownload(String, String, boolean, String, String, long, boolean, android.net.Uri, android.net.Uri); + method public long enqueue(android.app.DownloadManager.Request); + method public static Long getMaxBytesOverMobile(android.content.Context); + method public String getMimeTypeForDownloadedFile(long); + method public static Long getRecommendedMaxBytesOverMobile(android.content.Context); + method public android.net.Uri getUriForDownloadedFile(long); + method public android.os.ParcelFileDescriptor openDownloadedFile(long) throws java.io.FileNotFoundException; + method public android.database.Cursor query(android.app.DownloadManager.Query); + method public int remove(long...); + field public static final String ACTION_DOWNLOAD_COMPLETE = "android.intent.action.DOWNLOAD_COMPLETE"; + field public static final String ACTION_NOTIFICATION_CLICKED = "android.intent.action.DOWNLOAD_NOTIFICATION_CLICKED"; + field public static final String ACTION_VIEW_DOWNLOADS = "android.intent.action.VIEW_DOWNLOADS"; + field public static final String COLUMN_BYTES_DOWNLOADED_SO_FAR = "bytes_so_far"; + field public static final String COLUMN_DESCRIPTION = "description"; + field public static final String COLUMN_ID = "_id"; + field public static final String COLUMN_LAST_MODIFIED_TIMESTAMP = "last_modified_timestamp"; + field @Deprecated public static final String COLUMN_LOCAL_FILENAME = "local_filename"; + field public static final String COLUMN_LOCAL_URI = "local_uri"; + field public static final String COLUMN_MEDIAPROVIDER_URI = "mediaprovider_uri"; + field public static final String COLUMN_MEDIA_TYPE = "media_type"; + field public static final String COLUMN_REASON = "reason"; + field public static final String COLUMN_STATUS = "status"; + field public static final String COLUMN_TITLE = "title"; + field public static final String COLUMN_TOTAL_SIZE_BYTES = "total_size"; + field public static final String COLUMN_URI = "uri"; + field public static final int ERROR_CANNOT_RESUME = 1008; // 0x3f0 + field public static final int ERROR_DEVICE_NOT_FOUND = 1007; // 0x3ef + field public static final int ERROR_FILE_ALREADY_EXISTS = 1009; // 0x3f1 + field public static final int ERROR_FILE_ERROR = 1001; // 0x3e9 + field public static final int ERROR_HTTP_DATA_ERROR = 1004; // 0x3ec + field public static final int ERROR_INSUFFICIENT_SPACE = 1006; // 0x3ee + field public static final int ERROR_TOO_MANY_REDIRECTS = 1005; // 0x3ed + field public static final int ERROR_UNHANDLED_HTTP_CODE = 1002; // 0x3ea + field public static final int ERROR_UNKNOWN = 1000; // 0x3e8 + field public static final String EXTRA_DOWNLOAD_ID = "extra_download_id"; + field public static final String EXTRA_NOTIFICATION_CLICK_DOWNLOAD_IDS = "extra_click_download_ids"; + field public static final String INTENT_EXTRAS_SORT_BY_SIZE = "android.app.DownloadManager.extra_sortBySize"; + field public static final int PAUSED_QUEUED_FOR_WIFI = 3; // 0x3 + field public static final int PAUSED_UNKNOWN = 4; // 0x4 + field public static final int PAUSED_WAITING_FOR_NETWORK = 2; // 0x2 + field public static final int PAUSED_WAITING_TO_RETRY = 1; // 0x1 + field public static final int STATUS_FAILED = 16; // 0x10 + field public static final int STATUS_PAUSED = 4; // 0x4 + field public static final int STATUS_PENDING = 1; // 0x1 + field public static final int STATUS_RUNNING = 2; // 0x2 + field public static final int STATUS_SUCCESSFUL = 8; // 0x8 + } + + public static class DownloadManager.Query { + ctor public DownloadManager.Query(); + method public android.app.DownloadManager.Query setFilterById(long...); + method public android.app.DownloadManager.Query setFilterByStatus(int); + } + + public static class DownloadManager.Request { + ctor public DownloadManager.Request(android.net.Uri); + method public android.app.DownloadManager.Request addRequestHeader(String, String); + method @Deprecated public void allowScanningByMediaScanner(); + method public android.app.DownloadManager.Request setAllowedNetworkTypes(int); + method public android.app.DownloadManager.Request setAllowedOverMetered(boolean); + method public android.app.DownloadManager.Request setAllowedOverRoaming(boolean); + method public android.app.DownloadManager.Request setDescription(CharSequence); + method public android.app.DownloadManager.Request setDestinationInExternalFilesDir(android.content.Context, String, String); + method public android.app.DownloadManager.Request setDestinationInExternalPublicDir(String, String); + method public android.app.DownloadManager.Request setDestinationUri(android.net.Uri); + method public android.app.DownloadManager.Request setMimeType(String); + method public android.app.DownloadManager.Request setNotificationVisibility(int); + method public android.app.DownloadManager.Request setRequiresCharging(boolean); + method public android.app.DownloadManager.Request setRequiresDeviceIdle(boolean); + method @Deprecated public android.app.DownloadManager.Request setShowRunningNotification(boolean); + method public android.app.DownloadManager.Request setTitle(CharSequence); + method @Deprecated public android.app.DownloadManager.Request setVisibleInDownloadsUi(boolean); + field public static final int NETWORK_MOBILE = 1; // 0x1 + field public static final int NETWORK_WIFI = 2; // 0x2 + field public static final int VISIBILITY_HIDDEN = 2; // 0x2 + field public static final int VISIBILITY_VISIBLE = 0; // 0x0 + field public static final int VISIBILITY_VISIBLE_NOTIFY_COMPLETED = 1; // 0x1 + field public static final int VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION = 3; // 0x3 + } + + @Deprecated public class ExpandableListActivity extends android.app.Activity implements android.widget.ExpandableListView.OnChildClickListener android.widget.ExpandableListView.OnGroupCollapseListener android.widget.ExpandableListView.OnGroupExpandListener android.view.View.OnCreateContextMenuListener { + ctor @Deprecated public ExpandableListActivity(); + method @Deprecated public android.widget.ExpandableListAdapter getExpandableListAdapter(); + method @Deprecated public android.widget.ExpandableListView getExpandableListView(); + method @Deprecated public long getSelectedId(); + method @Deprecated public long getSelectedPosition(); + method @Deprecated public boolean onChildClick(android.widget.ExpandableListView, android.view.View, int, int, long); + method @Deprecated public void onGroupCollapse(int); + method @Deprecated public void onGroupExpand(int); + method @Deprecated public void setListAdapter(android.widget.ExpandableListAdapter); + method @Deprecated public boolean setSelectedChild(int, int, boolean); + method @Deprecated public void setSelectedGroup(int); + } + + public final class ForegroundServiceStartNotAllowedException extends android.app.ServiceStartNotAllowedException implements android.os.Parcelable { + ctor public ForegroundServiceStartNotAllowedException(@NonNull String); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class ForegroundServiceTypeException extends android.app.ServiceStartNotAllowedException { + ctor public ForegroundServiceTypeException(@NonNull String); + } + + @Deprecated public class Fragment implements android.content.ComponentCallbacks2 android.view.View.OnCreateContextMenuListener { + ctor @Deprecated public Fragment(); + method @Deprecated public void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); + method @Deprecated public final boolean equals(@Nullable Object); + method @Deprecated public final android.app.Activity getActivity(); + method @Deprecated public boolean getAllowEnterTransitionOverlap(); + method @Deprecated public boolean getAllowReturnTransitionOverlap(); + method @Deprecated public final android.os.Bundle getArguments(); + method @Deprecated public final android.app.FragmentManager getChildFragmentManager(); + method @Deprecated public android.content.Context getContext(); + method @Deprecated public android.transition.Transition getEnterTransition(); + method @Deprecated public android.transition.Transition getExitTransition(); + method @Deprecated public final android.app.FragmentManager getFragmentManager(); + method @Deprecated @Nullable public final Object getHost(); + method @Deprecated public final int getId(); + method @Deprecated public final android.view.LayoutInflater getLayoutInflater(); + method @Deprecated public android.app.LoaderManager getLoaderManager(); + method @Deprecated public final android.app.Fragment getParentFragment(); + method @Deprecated public android.transition.Transition getReenterTransition(); + method @Deprecated public final android.content.res.Resources getResources(); + method @Deprecated public final boolean getRetainInstance(); + method @Deprecated public android.transition.Transition getReturnTransition(); + method @Deprecated public android.transition.Transition getSharedElementEnterTransition(); + method @Deprecated public android.transition.Transition getSharedElementReturnTransition(); + method @Deprecated public final String getString(@StringRes int); + method @Deprecated public final String getString(@StringRes int, java.lang.Object...); + method @Deprecated public final String getTag(); + method @Deprecated public final android.app.Fragment getTargetFragment(); + method @Deprecated public final int getTargetRequestCode(); + method @Deprecated public final CharSequence getText(@StringRes int); + method @Deprecated public boolean getUserVisibleHint(); + method @Deprecated @Nullable public android.view.View getView(); + method @Deprecated public final int hashCode(); + method @Deprecated public static android.app.Fragment instantiate(android.content.Context, String); + method @Deprecated public static android.app.Fragment instantiate(android.content.Context, String, @Nullable android.os.Bundle); + method @Deprecated public final boolean isAdded(); + method @Deprecated public final boolean isDetached(); + method @Deprecated public final boolean isHidden(); + method @Deprecated public final boolean isInLayout(); + method @Deprecated public final boolean isRemoving(); + method @Deprecated public final boolean isResumed(); + method @Deprecated public final boolean isStateSaved(); + method @Deprecated public final boolean isVisible(); + method @Deprecated @CallSuper public void onActivityCreated(@Nullable android.os.Bundle); + method @Deprecated public void onActivityResult(int, int, android.content.Intent); + method @Deprecated @CallSuper public void onAttach(android.content.Context); + method @Deprecated @CallSuper public void onAttach(android.app.Activity); + method @Deprecated public void onAttachFragment(android.app.Fragment); + method @Deprecated @CallSuper public void onConfigurationChanged(android.content.res.Configuration); + method @Deprecated public boolean onContextItemSelected(android.view.MenuItem); + method @Deprecated @CallSuper public void onCreate(@Nullable android.os.Bundle); + method @Deprecated public android.animation.Animator onCreateAnimator(int, boolean, int); + method @Deprecated public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo); + method @Deprecated public void onCreateOptionsMenu(android.view.Menu, android.view.MenuInflater); + method @Deprecated @Nullable public android.view.View onCreateView(android.view.LayoutInflater, @Nullable android.view.ViewGroup, android.os.Bundle); + method @Deprecated @CallSuper public void onDestroy(); + method @Deprecated public void onDestroyOptionsMenu(); + method @Deprecated @CallSuper public void onDestroyView(); + method @Deprecated @CallSuper public void onDetach(); + method @Deprecated public android.view.LayoutInflater onGetLayoutInflater(android.os.Bundle); + method @Deprecated public void onHiddenChanged(boolean); + method @Deprecated @CallSuper public void onInflate(android.util.AttributeSet, android.os.Bundle); + method @Deprecated @CallSuper public void onInflate(android.content.Context, android.util.AttributeSet, android.os.Bundle); + method @Deprecated @CallSuper public void onInflate(android.app.Activity, android.util.AttributeSet, android.os.Bundle); + method @Deprecated @CallSuper public void onLowMemory(); + method @Deprecated public void onMultiWindowModeChanged(boolean, android.content.res.Configuration); + method @Deprecated public void onMultiWindowModeChanged(boolean); + method @Deprecated public boolean onOptionsItemSelected(android.view.MenuItem); + method @Deprecated public void onOptionsMenuClosed(android.view.Menu); + method @Deprecated @CallSuper public void onPause(); + method @Deprecated public void onPictureInPictureModeChanged(boolean, android.content.res.Configuration); + method @Deprecated public void onPictureInPictureModeChanged(boolean); + method @Deprecated public void onPrepareOptionsMenu(android.view.Menu); + method @Deprecated public void onRequestPermissionsResult(int, @NonNull String[], @NonNull int[]); + method @Deprecated @CallSuper public void onResume(); + method @Deprecated public void onSaveInstanceState(android.os.Bundle); + method @Deprecated @CallSuper public void onStart(); + method @Deprecated @CallSuper public void onStop(); + method @Deprecated @CallSuper public void onTrimMemory(int); + method @Deprecated public void onViewCreated(android.view.View, @Nullable android.os.Bundle); + method @Deprecated @CallSuper public void onViewStateRestored(android.os.Bundle); + method @Deprecated public void postponeEnterTransition(); + method @Deprecated public void registerForContextMenu(android.view.View); + method @Deprecated public final void requestPermissions(@NonNull String[], int); + method @Deprecated public void setAllowEnterTransitionOverlap(boolean); + method @Deprecated public void setAllowReturnTransitionOverlap(boolean); + method @Deprecated public void setArguments(android.os.Bundle); + method @Deprecated public void setEnterSharedElementCallback(android.app.SharedElementCallback); + method @Deprecated public void setEnterTransition(android.transition.Transition); + method @Deprecated public void setExitSharedElementCallback(android.app.SharedElementCallback); + method @Deprecated public void setExitTransition(android.transition.Transition); + method @Deprecated public void setHasOptionsMenu(boolean); + method @Deprecated public void setInitialSavedState(android.app.Fragment.SavedState); + method @Deprecated public void setMenuVisibility(boolean); + method @Deprecated public void setReenterTransition(android.transition.Transition); + method @Deprecated public void setRetainInstance(boolean); + method @Deprecated public void setReturnTransition(android.transition.Transition); + method @Deprecated public void setSharedElementEnterTransition(android.transition.Transition); + method @Deprecated public void setSharedElementReturnTransition(android.transition.Transition); + method @Deprecated public void setTargetFragment(android.app.Fragment, int); + method @Deprecated public void setUserVisibleHint(boolean); + method @Deprecated public boolean shouldShowRequestPermissionRationale(@NonNull String); + method @Deprecated public void startActivity(android.content.Intent); + method @Deprecated public void startActivity(android.content.Intent, android.os.Bundle); + method @Deprecated public void startActivityForResult(android.content.Intent, int); + method @Deprecated public void startActivityForResult(android.content.Intent, int, android.os.Bundle); + method @Deprecated public void startIntentSenderForResult(android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int, android.os.Bundle) throws android.content.IntentSender.SendIntentException; + method @Deprecated public void startPostponedEnterTransition(); + method @Deprecated public void unregisterForContextMenu(android.view.View); + } + + @Deprecated public static class Fragment.InstantiationException extends android.util.AndroidRuntimeException { + ctor @Deprecated public Fragment.InstantiationException(String, Exception); + } + + @Deprecated public static class Fragment.SavedState implements android.os.Parcelable { + method @Deprecated public int describeContents(); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated public static final android.os.Parcelable.ClassLoaderCreator CREATOR; + } + + @Deprecated public class FragmentBreadCrumbs extends android.view.ViewGroup implements android.app.FragmentManager.OnBackStackChangedListener { + ctor @Deprecated public FragmentBreadCrumbs(android.content.Context); + ctor @Deprecated public FragmentBreadCrumbs(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public FragmentBreadCrumbs(android.content.Context, android.util.AttributeSet, int); + method @Deprecated public void onBackStackChanged(); + method @Deprecated protected void onLayout(boolean, int, int, int, int); + method @Deprecated public void setActivity(android.app.Activity); + method @Deprecated public void setMaxVisible(int); + method @Deprecated public void setOnBreadCrumbClickListener(android.app.FragmentBreadCrumbs.OnBreadCrumbClickListener); + method @Deprecated public void setParentTitle(CharSequence, CharSequence, android.view.View.OnClickListener); + method @Deprecated public void setTitle(CharSequence, CharSequence); + } + + @Deprecated public static interface FragmentBreadCrumbs.OnBreadCrumbClickListener { + method @Deprecated public boolean onBreadCrumbClick(android.app.FragmentManager.BackStackEntry, int); + } + + @Deprecated public abstract class FragmentContainer { + ctor @Deprecated public FragmentContainer(); + method @Deprecated @Nullable public abstract T onFindViewById(@IdRes int); + method @Deprecated public abstract boolean onHasView(); + } + + @Deprecated public class FragmentController { + method @Deprecated public void attachHost(android.app.Fragment); + method @Deprecated public static final android.app.FragmentController createController(android.app.FragmentHostCallback); + method @Deprecated public void dispatchActivityCreated(); + method @Deprecated public void dispatchConfigurationChanged(android.content.res.Configuration); + method @Deprecated public boolean dispatchContextItemSelected(android.view.MenuItem); + method @Deprecated public void dispatchCreate(); + method @Deprecated public boolean dispatchCreateOptionsMenu(android.view.Menu, android.view.MenuInflater); + method @Deprecated public void dispatchDestroy(); + method @Deprecated public void dispatchDestroyView(); + method @Deprecated public void dispatchLowMemory(); + method @Deprecated public void dispatchMultiWindowModeChanged(boolean); + method @Deprecated public void dispatchMultiWindowModeChanged(boolean, android.content.res.Configuration); + method @Deprecated public boolean dispatchOptionsItemSelected(android.view.MenuItem); + method @Deprecated public void dispatchOptionsMenuClosed(android.view.Menu); + method @Deprecated public void dispatchPause(); + method @Deprecated public void dispatchPictureInPictureModeChanged(boolean); + method @Deprecated public void dispatchPictureInPictureModeChanged(boolean, android.content.res.Configuration); + method @Deprecated public boolean dispatchPrepareOptionsMenu(android.view.Menu); + method @Deprecated public void dispatchResume(); + method @Deprecated public void dispatchStart(); + method @Deprecated public void dispatchStop(); + method @Deprecated public void dispatchTrimMemory(int); + method @Deprecated public void doLoaderDestroy(); + method @Deprecated public void doLoaderStart(); + method @Deprecated public void doLoaderStop(boolean); + method @Deprecated public void dumpLoaders(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); + method @Deprecated public boolean execPendingActions(); + method @Deprecated @Nullable public android.app.Fragment findFragmentByWho(String); + method @Deprecated public android.app.FragmentManager getFragmentManager(); + method @Deprecated public android.app.LoaderManager getLoaderManager(); + method @Deprecated public void noteStateNotSaved(); + method @Deprecated public android.view.View onCreateView(android.view.View, String, android.content.Context, android.util.AttributeSet); + method @Deprecated public void reportLoaderStart(); + method @Deprecated public void restoreAllState(android.os.Parcelable, java.util.List); + method @Deprecated public void restoreAllState(android.os.Parcelable, android.app.FragmentManagerNonConfig); + method @Deprecated public void restoreLoaderNonConfig(android.util.ArrayMap); + method @Deprecated public android.util.ArrayMap retainLoaderNonConfig(); + method @Deprecated public android.app.FragmentManagerNonConfig retainNestedNonConfig(); + method @Deprecated public java.util.List retainNonConfig(); + method @Deprecated public android.os.Parcelable saveAllState(); + } + + @Deprecated public abstract class FragmentHostCallback extends android.app.FragmentContainer { + ctor @Deprecated public FragmentHostCallback(android.content.Context, android.os.Handler, int); + method @Deprecated public void onAttachFragment(android.app.Fragment); + method @Deprecated public void onDump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); + method @Deprecated @Nullable public T onFindViewById(int); + method @Deprecated @Nullable public abstract E onGetHost(); + method @Deprecated public android.view.LayoutInflater onGetLayoutInflater(); + method @Deprecated public int onGetWindowAnimations(); + method @Deprecated public boolean onHasView(); + method @Deprecated public boolean onHasWindowAnimations(); + method @Deprecated public void onInvalidateOptionsMenu(); + method @Deprecated public void onRequestPermissionsFromFragment(@NonNull android.app.Fragment, @NonNull String[], int); + method @Deprecated public boolean onShouldSaveFragmentState(android.app.Fragment); + method @Deprecated public void onStartActivityFromFragment(android.app.Fragment, android.content.Intent, int, android.os.Bundle); + method @Deprecated public void onStartIntentSenderFromFragment(android.app.Fragment, android.content.IntentSender, int, @Nullable android.content.Intent, int, int, int, android.os.Bundle) throws android.content.IntentSender.SendIntentException; + method @Deprecated public boolean onUseFragmentManagerInflaterFactory(); + } + + @Deprecated public abstract class FragmentManager { + ctor @Deprecated public FragmentManager(); + method @Deprecated public abstract void addOnBackStackChangedListener(android.app.FragmentManager.OnBackStackChangedListener); + method @Deprecated public abstract android.app.FragmentTransaction beginTransaction(); + method @Deprecated public abstract void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); + method @Deprecated public static void enableDebugLogging(boolean); + method @Deprecated public abstract boolean executePendingTransactions(); + method @Deprecated public abstract android.app.Fragment findFragmentById(int); + method @Deprecated public abstract android.app.Fragment findFragmentByTag(String); + method @Deprecated public abstract android.app.FragmentManager.BackStackEntry getBackStackEntryAt(int); + method @Deprecated public abstract int getBackStackEntryCount(); + method @Deprecated public abstract android.app.Fragment getFragment(android.os.Bundle, String); + method @Deprecated public abstract java.util.List getFragments(); + method @Deprecated public abstract android.app.Fragment getPrimaryNavigationFragment(); + method @Deprecated public void invalidateOptionsMenu(); + method @Deprecated public abstract boolean isDestroyed(); + method @Deprecated public abstract boolean isStateSaved(); + method @Deprecated public abstract void popBackStack(); + method @Deprecated public abstract void popBackStack(String, int); + method @Deprecated public abstract void popBackStack(int, int); + method @Deprecated public abstract boolean popBackStackImmediate(); + method @Deprecated public abstract boolean popBackStackImmediate(String, int); + method @Deprecated public abstract boolean popBackStackImmediate(int, int); + method @Deprecated public abstract void putFragment(android.os.Bundle, String, android.app.Fragment); + method @Deprecated public abstract void registerFragmentLifecycleCallbacks(android.app.FragmentManager.FragmentLifecycleCallbacks, boolean); + method @Deprecated public abstract void removeOnBackStackChangedListener(android.app.FragmentManager.OnBackStackChangedListener); + method @Deprecated public abstract android.app.Fragment.SavedState saveFragmentInstanceState(android.app.Fragment); + method @Deprecated public abstract void unregisterFragmentLifecycleCallbacks(android.app.FragmentManager.FragmentLifecycleCallbacks); + field @Deprecated public static final int POP_BACK_STACK_INCLUSIVE = 1; // 0x1 + } + + @Deprecated public static interface FragmentManager.BackStackEntry { + method @Deprecated public CharSequence getBreadCrumbShortTitle(); + method @Deprecated public int getBreadCrumbShortTitleRes(); + method @Deprecated public CharSequence getBreadCrumbTitle(); + method @Deprecated public int getBreadCrumbTitleRes(); + method @Deprecated public int getId(); + method @Deprecated public String getName(); + } + + @Deprecated public abstract static class FragmentManager.FragmentLifecycleCallbacks { + ctor @Deprecated public FragmentManager.FragmentLifecycleCallbacks(); + method @Deprecated public void onFragmentActivityCreated(android.app.FragmentManager, android.app.Fragment, android.os.Bundle); + method @Deprecated public void onFragmentAttached(android.app.FragmentManager, android.app.Fragment, android.content.Context); + method @Deprecated public void onFragmentCreated(android.app.FragmentManager, android.app.Fragment, android.os.Bundle); + method @Deprecated public void onFragmentDestroyed(android.app.FragmentManager, android.app.Fragment); + method @Deprecated public void onFragmentDetached(android.app.FragmentManager, android.app.Fragment); + method @Deprecated public void onFragmentPaused(android.app.FragmentManager, android.app.Fragment); + method @Deprecated public void onFragmentPreAttached(android.app.FragmentManager, android.app.Fragment, android.content.Context); + method @Deprecated public void onFragmentPreCreated(android.app.FragmentManager, android.app.Fragment, android.os.Bundle); + method @Deprecated public void onFragmentResumed(android.app.FragmentManager, android.app.Fragment); + method @Deprecated public void onFragmentSaveInstanceState(android.app.FragmentManager, android.app.Fragment, android.os.Bundle); + method @Deprecated public void onFragmentStarted(android.app.FragmentManager, android.app.Fragment); + method @Deprecated public void onFragmentStopped(android.app.FragmentManager, android.app.Fragment); + method @Deprecated public void onFragmentViewCreated(android.app.FragmentManager, android.app.Fragment, android.view.View, android.os.Bundle); + method @Deprecated public void onFragmentViewDestroyed(android.app.FragmentManager, android.app.Fragment); + } + + @Deprecated public static interface FragmentManager.OnBackStackChangedListener { + method @Deprecated public void onBackStackChanged(); + } + + @Deprecated public class FragmentManagerNonConfig { + } + + @Deprecated public abstract class FragmentTransaction { + ctor @Deprecated public FragmentTransaction(); + method @Deprecated public abstract android.app.FragmentTransaction add(android.app.Fragment, String); + method @Deprecated public abstract android.app.FragmentTransaction add(@IdRes int, android.app.Fragment); + method @Deprecated public abstract android.app.FragmentTransaction add(@IdRes int, android.app.Fragment, String); + method @Deprecated public abstract android.app.FragmentTransaction addSharedElement(android.view.View, String); + method @Deprecated public abstract android.app.FragmentTransaction addToBackStack(@Nullable String); + method @Deprecated public abstract android.app.FragmentTransaction attach(android.app.Fragment); + method @Deprecated public abstract int commit(); + method @Deprecated public abstract int commitAllowingStateLoss(); + method @Deprecated public abstract void commitNow(); + method @Deprecated public abstract void commitNowAllowingStateLoss(); + method @Deprecated public abstract android.app.FragmentTransaction detach(android.app.Fragment); + method @Deprecated public abstract android.app.FragmentTransaction disallowAddToBackStack(); + method @Deprecated public abstract android.app.FragmentTransaction hide(android.app.Fragment); + method @Deprecated public abstract boolean isAddToBackStackAllowed(); + method @Deprecated public abstract boolean isEmpty(); + method @Deprecated public abstract android.app.FragmentTransaction remove(android.app.Fragment); + method @Deprecated public abstract android.app.FragmentTransaction replace(@IdRes int, android.app.Fragment); + method @Deprecated public abstract android.app.FragmentTransaction replace(@IdRes int, android.app.Fragment, String); + method @Deprecated public abstract android.app.FragmentTransaction runOnCommit(Runnable); + method @Deprecated public abstract android.app.FragmentTransaction setBreadCrumbShortTitle(@StringRes int); + method @Deprecated public abstract android.app.FragmentTransaction setBreadCrumbShortTitle(CharSequence); + method @Deprecated public abstract android.app.FragmentTransaction setBreadCrumbTitle(@StringRes int); + method @Deprecated public abstract android.app.FragmentTransaction setBreadCrumbTitle(CharSequence); + method @Deprecated public abstract android.app.FragmentTransaction setCustomAnimations(@AnimatorRes int, @AnimatorRes int); + method @Deprecated public abstract android.app.FragmentTransaction setCustomAnimations(@AnimatorRes int, @AnimatorRes int, @AnimatorRes int, @AnimatorRes int); + method @Deprecated public abstract android.app.FragmentTransaction setPrimaryNavigationFragment(android.app.Fragment); + method @Deprecated public abstract android.app.FragmentTransaction setReorderingAllowed(boolean); + method @Deprecated public abstract android.app.FragmentTransaction setTransition(int); + method @Deprecated public abstract android.app.FragmentTransaction setTransitionStyle(@StyleRes int); + method @Deprecated public abstract android.app.FragmentTransaction show(android.app.Fragment); + field @Deprecated public static final int TRANSIT_ENTER_MASK = 4096; // 0x1000 + field @Deprecated public static final int TRANSIT_EXIT_MASK = 8192; // 0x2000 + field @Deprecated public static final int TRANSIT_FRAGMENT_CLOSE = 8194; // 0x2002 + field @Deprecated public static final int TRANSIT_FRAGMENT_FADE = 4099; // 0x1003 + field @Deprecated public static final int TRANSIT_FRAGMENT_OPEN = 4097; // 0x1001 + field @Deprecated public static final int TRANSIT_NONE = 0; // 0x0 + field @Deprecated public static final int TRANSIT_UNSET = -1; // 0xffffffff + } + + public final class GameManager { + method public int getGameMode(); + method public void setGameState(@NonNull android.app.GameState); + field public static final int GAME_MODE_BATTERY = 3; // 0x3 + field public static final int GAME_MODE_CUSTOM = 4; // 0x4 + field public static final int GAME_MODE_PERFORMANCE = 2; // 0x2 + field public static final int GAME_MODE_STANDARD = 1; // 0x1 + field public static final int GAME_MODE_UNSUPPORTED = 0; // 0x0 + } + + public final class GameState implements android.os.Parcelable { + ctor public GameState(boolean, int); + ctor public GameState(boolean, int, int, int); + method public int describeContents(); + method public int getLabel(); + method public int getMode(); + method public int getQuality(); + method public boolean isLoading(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int MODE_CONTENT = 4; // 0x4 + field public static final int MODE_GAMEPLAY_INTERRUPTIBLE = 2; // 0x2 + field public static final int MODE_GAMEPLAY_UNINTERRUPTIBLE = 3; // 0x3 + field public static final int MODE_NONE = 1; // 0x1 + field public static final int MODE_UNKNOWN = 0; // 0x0 + } + + public class GrammaticalInflectionManager { + method public int getApplicationGrammaticalGender(); + method @FlaggedApi("android.app.system_terms_of_address_enabled") @RequiresPermission("android.permission.READ_SYSTEM_GRAMMATICAL_GENDER") public int getSystemGrammaticalGender(); + method public void setRequestedApplicationGrammaticalGender(int); + } + + public class Instrumentation { + ctor public Instrumentation(); + method public android.os.TestLooperManager acquireLooperManager(android.os.Looper); + method public void addMonitor(android.app.Instrumentation.ActivityMonitor); + method public android.app.Instrumentation.ActivityMonitor addMonitor(android.content.IntentFilter, android.app.Instrumentation.ActivityResult, boolean); + method public android.app.Instrumentation.ActivityMonitor addMonitor(String, android.app.Instrumentation.ActivityResult, boolean); + method public void addResults(android.os.Bundle); + method public void callActivityOnCreate(android.app.Activity, android.os.Bundle); + method public void callActivityOnCreate(android.app.Activity, android.os.Bundle, android.os.PersistableBundle); + method public void callActivityOnDestroy(android.app.Activity); + method public void callActivityOnNewIntent(android.app.Activity, android.content.Intent); + method @FlaggedApi("android.security.content_uri_permission_apis") public void callActivityOnNewIntent(@NonNull android.app.Activity, @NonNull android.content.Intent, @NonNull android.app.ComponentCaller); + method public void callActivityOnPause(android.app.Activity); + method public void callActivityOnPictureInPictureRequested(@NonNull android.app.Activity); + method public void callActivityOnPostCreate(@NonNull android.app.Activity, @Nullable android.os.Bundle); + method public void callActivityOnPostCreate(@NonNull android.app.Activity, @Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); + method public void callActivityOnRestart(android.app.Activity); + method public void callActivityOnRestoreInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); + method public void callActivityOnRestoreInstanceState(@NonNull android.app.Activity, @Nullable android.os.Bundle, @Nullable android.os.PersistableBundle); + method public void callActivityOnResume(android.app.Activity); + method public void callActivityOnSaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle); + method public void callActivityOnSaveInstanceState(@NonNull android.app.Activity, @NonNull android.os.Bundle, @NonNull android.os.PersistableBundle); + method public void callActivityOnStart(android.app.Activity); + method public void callActivityOnStop(android.app.Activity); + method public void callActivityOnUserLeaving(android.app.Activity); + method public void callApplicationOnCreate(android.app.Application); + method public boolean checkMonitorHit(android.app.Instrumentation.ActivityMonitor, int); + method public void endPerformanceSnapshot(); + method public void finish(int, android.os.Bundle); + method public android.os.Bundle getAllocCounts(); + method public android.os.Bundle getBinderCounts(); + method public android.content.ComponentName getComponentName(); + method public android.content.Context getContext(); + method public String getProcessName(); + method public android.content.Context getTargetContext(); + method public android.app.UiAutomation getUiAutomation(); + method public android.app.UiAutomation getUiAutomation(int); + method public boolean invokeContextMenuAction(android.app.Activity, int, int); + method public boolean invokeMenuActionSync(android.app.Activity, int, int); + method public boolean isProfiling(); + method public android.app.Activity newActivity(Class, android.content.Context, android.os.IBinder, android.app.Application, android.content.Intent, android.content.pm.ActivityInfo, CharSequence, android.app.Activity, String, Object) throws java.lang.IllegalAccessException, java.lang.InstantiationException; + method public android.app.Activity newActivity(ClassLoader, String, android.content.Intent) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; + method public android.app.Application newApplication(ClassLoader, String, android.content.Context) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; + method public static android.app.Application newApplication(Class, android.content.Context) throws java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.InstantiationException; + method public void onCreate(android.os.Bundle); + method public void onDestroy(); + method public boolean onException(Object, Throwable); + method public void onStart(); + method public void removeMonitor(android.app.Instrumentation.ActivityMonitor); + method public void resetInTouchMode(); + method public void runOnMainSync(Runnable); + method public void sendCharacterSync(int); + method public void sendKeyDownUpSync(int); + method public void sendKeySync(android.view.KeyEvent); + method public void sendPointerSync(android.view.MotionEvent); + method public void sendStatus(int, android.os.Bundle); + method public void sendStringSync(String); + method public void sendTrackballEventSync(android.view.MotionEvent); + method public void setAutomaticPerformanceSnapshots(); + method public void setInTouchMode(boolean); + method public void start(); + method public android.app.Activity startActivitySync(android.content.Intent); + method @NonNull public android.app.Activity startActivitySync(@NonNull android.content.Intent, @Nullable android.os.Bundle); + method @Deprecated public void startAllocCounting(); + method public void startPerformanceSnapshot(); + method public void startProfiling(); + method @Deprecated public void stopAllocCounting(); + method public void stopProfiling(); + method public void waitForIdle(Runnable); + method public void waitForIdleSync(); + method public android.app.Activity waitForMonitor(android.app.Instrumentation.ActivityMonitor); + method public android.app.Activity waitForMonitorWithTimeout(android.app.Instrumentation.ActivityMonitor, long); + field public static final String REPORT_KEY_IDENTIFIER = "id"; + field public static final String REPORT_KEY_STREAMRESULT = "stream"; + } + + public static class Instrumentation.ActivityMonitor { + ctor public Instrumentation.ActivityMonitor(android.content.IntentFilter, android.app.Instrumentation.ActivityResult, boolean); + ctor public Instrumentation.ActivityMonitor(String, android.app.Instrumentation.ActivityResult, boolean); + ctor public Instrumentation.ActivityMonitor(); + method public final android.content.IntentFilter getFilter(); + method public final int getHits(); + method public final android.app.Activity getLastActivity(); + method public final android.app.Instrumentation.ActivityResult getResult(); + method public final boolean isBlocking(); + method public android.app.Instrumentation.ActivityResult onStartActivity(android.content.Intent); + method public final android.app.Activity waitForActivity(); + method public final android.app.Activity waitForActivityWithTimeout(long); + } + + public static final class Instrumentation.ActivityResult { + ctor public Instrumentation.ActivityResult(int, android.content.Intent); + method public int getResultCode(); + method public android.content.Intent getResultData(); + } + + @Deprecated public abstract class IntentService extends android.app.Service { + ctor @Deprecated public IntentService(String); + method @Deprecated @Nullable public android.os.IBinder onBind(android.content.Intent); + method @Deprecated @WorkerThread protected abstract void onHandleIntent(@Nullable android.content.Intent); + method @Deprecated public void onStart(@Nullable android.content.Intent, int); + method @Deprecated public void setIntentRedelivery(boolean); + } + + public final class InvalidForegroundServiceTypeException extends android.app.ForegroundServiceTypeException implements android.os.Parcelable { + ctor public InvalidForegroundServiceTypeException(@NonNull String); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class KeyguardManager { + method @FlaggedApi("android.app.device_unlock_listener") @RequiresPermission(android.Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) public void addDeviceLockedStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.KeyguardManager.DeviceLockedStateListener); + method @RequiresPermission(android.Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) public void addKeyguardLockedStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.KeyguardManager.KeyguardLockedStateListener); + method @Deprecated public android.content.Intent createConfirmDeviceCredentialIntent(CharSequence, CharSequence); + method @Deprecated @RequiresPermission(android.Manifest.permission.DISABLE_KEYGUARD) public void exitKeyguardSecurely(android.app.KeyguardManager.OnKeyguardExitResult); + method @Deprecated public boolean inKeyguardRestrictedInputMode(); + method public boolean isDeviceLocked(); + method public boolean isDeviceSecure(); + method public boolean isKeyguardLocked(); + method public boolean isKeyguardSecure(); + method @Deprecated public android.app.KeyguardManager.KeyguardLock newKeyguardLock(String); + method @FlaggedApi("android.app.device_unlock_listener") @RequiresPermission(android.Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) public void removeDeviceLockedStateListener(@NonNull android.app.KeyguardManager.DeviceLockedStateListener); + method @RequiresPermission(android.Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) public void removeKeyguardLockedStateListener(@NonNull android.app.KeyguardManager.KeyguardLockedStateListener); + method public void requestDismissKeyguard(@NonNull android.app.Activity, @Nullable android.app.KeyguardManager.KeyguardDismissCallback); + } + + @FlaggedApi("android.app.device_unlock_listener") @java.lang.FunctionalInterface public static interface KeyguardManager.DeviceLockedStateListener { + method public void onDeviceLockedStateChanged(boolean); + } + + public abstract static class KeyguardManager.KeyguardDismissCallback { + ctor public KeyguardManager.KeyguardDismissCallback(); + method public void onDismissCancelled(); + method public void onDismissError(); + method public void onDismissSucceeded(); + } + + @Deprecated public class KeyguardManager.KeyguardLock { + method @Deprecated @RequiresPermission(android.Manifest.permission.DISABLE_KEYGUARD) public void disableKeyguard(); + method @Deprecated @RequiresPermission(android.Manifest.permission.DISABLE_KEYGUARD) public void reenableKeyguard(); + } + + @java.lang.FunctionalInterface public static interface KeyguardManager.KeyguardLockedStateListener { + method public void onKeyguardLockedStateChanged(boolean); + } + + @Deprecated public static interface KeyguardManager.OnKeyguardExitResult { + method @Deprecated public void onKeyguardExitResult(boolean); + } + + @Deprecated public abstract class LauncherActivity extends android.app.ListActivity { + ctor @Deprecated public LauncherActivity(); + method @Deprecated protected android.content.Intent getTargetIntent(); + method @Deprecated protected android.content.Intent intentForPosition(int); + method @Deprecated protected android.app.LauncherActivity.ListItem itemForPosition(int); + method @Deprecated public java.util.List makeListItems(); + method @Deprecated protected java.util.List onQueryPackageManager(android.content.Intent); + method @Deprecated protected void onSetContentView(); + } + + @Deprecated public class LauncherActivity.IconResizer { + ctor @Deprecated public LauncherActivity.IconResizer(); + method @Deprecated public android.graphics.drawable.Drawable createIconThumbnail(android.graphics.drawable.Drawable); + } + + @Deprecated public static class LauncherActivity.ListItem { + ctor @Deprecated public LauncherActivity.ListItem(); + field @Deprecated public String className; + field @Deprecated public android.os.Bundle extras; + field @Deprecated public android.graphics.drawable.Drawable icon; + field @Deprecated public CharSequence label; + field @Deprecated public String packageName; + field @Deprecated public android.content.pm.ResolveInfo resolveInfo; + } + + @Deprecated public class ListActivity extends android.app.Activity { + ctor @Deprecated public ListActivity(); + method @Deprecated public android.widget.ListAdapter getListAdapter(); + method @Deprecated public android.widget.ListView getListView(); + method @Deprecated public long getSelectedItemId(); + method @Deprecated public int getSelectedItemPosition(); + method @Deprecated protected void onListItemClick(android.widget.ListView, android.view.View, int, long); + method @Deprecated public void setListAdapter(android.widget.ListAdapter); + method @Deprecated public void setSelection(int); + } + + @Deprecated public class ListFragment extends android.app.Fragment { + ctor @Deprecated public ListFragment(); + method @Deprecated public android.widget.ListAdapter getListAdapter(); + method @Deprecated public android.widget.ListView getListView(); + method @Deprecated public long getSelectedItemId(); + method @Deprecated public int getSelectedItemPosition(); + method @Deprecated public void onListItemClick(android.widget.ListView, android.view.View, int, long); + method @Deprecated public void setEmptyText(CharSequence); + method @Deprecated public void setListAdapter(android.widget.ListAdapter); + method @Deprecated public void setListShown(boolean); + method @Deprecated public void setListShownNoAnimation(boolean); + method @Deprecated public void setSelection(int); + } + + @Deprecated public abstract class LoaderManager { + ctor @Deprecated public LoaderManager(); + method @Deprecated public abstract void destroyLoader(int); + method @Deprecated public abstract void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); + method @Deprecated public static void enableDebugLogging(boolean); + method @Deprecated public abstract android.content.Loader getLoader(int); + method @Deprecated public abstract android.content.Loader initLoader(int, android.os.Bundle, android.app.LoaderManager.LoaderCallbacks); + method @Deprecated public abstract android.content.Loader restartLoader(int, android.os.Bundle, android.app.LoaderManager.LoaderCallbacks); + } + + @Deprecated public static interface LoaderManager.LoaderCallbacks { + method @Deprecated public android.content.Loader onCreateLoader(int, android.os.Bundle); + method @Deprecated public void onLoadFinished(android.content.Loader, D); + method @Deprecated public void onLoaderReset(android.content.Loader); + } + + @Deprecated public class LocalActivityManager { + ctor @Deprecated public LocalActivityManager(android.app.Activity, boolean); + method @Deprecated public android.view.Window destroyActivity(String, boolean); + method @Deprecated public void dispatchCreate(android.os.Bundle); + method @Deprecated public void dispatchDestroy(boolean); + method @Deprecated public void dispatchPause(boolean); + method @Deprecated public void dispatchResume(); + method @Deprecated public void dispatchStop(); + method @Deprecated public android.app.Activity getActivity(String); + method @Deprecated public android.app.Activity getCurrentActivity(); + method @Deprecated public String getCurrentId(); + method @Deprecated public void removeAllActivities(); + method @Deprecated public android.os.Bundle saveInstanceState(); + method @Deprecated public android.view.Window startActivity(String, android.content.Intent); + } + + public class LocaleConfig implements android.os.Parcelable { + ctor public LocaleConfig(@NonNull android.content.Context); + ctor public LocaleConfig(@NonNull android.os.LocaleList); + method public int describeContents(); + method @NonNull public static android.app.LocaleConfig fromContextIgnoringOverride(@NonNull android.content.Context); + method @FlaggedApi("android.content.res.default_locale") @Nullable public java.util.Locale getDefaultLocale(); + method public int getStatus(); + method @Nullable public android.os.LocaleList getSupportedLocales(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STATUS_NOT_SPECIFIED = 1; // 0x1 + field public static final int STATUS_PARSING_FAILED = 2; // 0x2 + field public static final int STATUS_SUCCESS = 0; // 0x0 + field public static final String TAG_LOCALE = "locale"; + field public static final String TAG_LOCALE_CONFIG = "locale-config"; + } + + public class LocaleManager { + method @NonNull public android.os.LocaleList getApplicationLocales(); + method @NonNull @RequiresPermission(value="android.permission.READ_APP_SPECIFIC_LOCALES", conditional=true) public android.os.LocaleList getApplicationLocales(@NonNull String); + method @Nullable public android.app.LocaleConfig getOverrideLocaleConfig(); + method @NonNull public android.os.LocaleList getSystemLocales(); + method public void setApplicationLocales(@NonNull android.os.LocaleList); + method public void setOverrideLocaleConfig(@Nullable android.app.LocaleConfig); + } + + public class MediaRouteActionProvider extends android.view.ActionProvider { + ctor public MediaRouteActionProvider(android.content.Context); + method public android.view.View onCreateActionView(); + method public void setExtendedSettingsClickListener(android.view.View.OnClickListener); + method public void setRouteTypes(int); + } + + public class MediaRouteButton extends android.view.View { + ctor public MediaRouteButton(android.content.Context); + ctor public MediaRouteButton(android.content.Context, android.util.AttributeSet); + ctor public MediaRouteButton(android.content.Context, android.util.AttributeSet, int); + ctor public MediaRouteButton(android.content.Context, android.util.AttributeSet, int, int); + method public int getRouteTypes(); + method public void onAttachedToWindow(); + method public void onDetachedFromWindow(); + method public void setExtendedSettingsClickListener(android.view.View.OnClickListener); + method public void setRouteTypes(int); + method public void showDialog(); + } + + public final class MissingForegroundServiceTypeException extends android.app.ForegroundServiceTypeException implements android.os.Parcelable { + ctor public MissingForegroundServiceTypeException(@NonNull String); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class NativeActivity extends android.app.Activity implements android.view.InputQueue.Callback android.view.SurfaceHolder.Callback2 android.view.ViewTreeObserver.OnGlobalLayoutListener { + ctor public NativeActivity(); + method public void onGlobalLayout(); + method public void onInputQueueCreated(android.view.InputQueue); + method public void onInputQueueDestroyed(android.view.InputQueue); + method public void surfaceChanged(android.view.SurfaceHolder, int, int, int); + method public void surfaceCreated(android.view.SurfaceHolder); + method public void surfaceDestroyed(android.view.SurfaceHolder); + method public void surfaceRedrawNeeded(android.view.SurfaceHolder); + field public static final String META_DATA_FUNC_NAME = "android.app.func_name"; + field public static final String META_DATA_LIB_NAME = "android.app.lib_name"; + } + + public class Notification implements android.os.Parcelable { + ctor public Notification(); + ctor @Deprecated public Notification(int, CharSequence, long); + ctor public Notification(android.os.Parcel); + method public android.app.Notification clone(); + method public int describeContents(); + method @Nullable public android.util.Pair findRemoteInputActionPair(boolean); + method public boolean getAllowSystemGeneratedContextualActions(); + method public int getBadgeIconType(); + method @Nullable public android.app.Notification.BubbleMetadata getBubbleMetadata(); + method public String getChannelId(); + method @NonNull public java.util.List getContextualActions(); + method public String getGroup(); + method public int getGroupAlertBehavior(); + method public android.graphics.drawable.Icon getLargeIcon(); + method @Nullable public android.content.LocusId getLocusId(); + method public CharSequence getSettingsText(); + method @FlaggedApi("android.app.api_rich_ongoing") @Nullable public String getShortCriticalText(); + method public String getShortcutId(); + method public android.graphics.drawable.Icon getSmallIcon(); + method public String getSortKey(); + method public long getTimeoutAfter(); + method public boolean hasImage(); + method @FlaggedApi("android.app.api_rich_ongoing") public boolean hasPromotableCharacteristics(); + method public void writeToParcel(android.os.Parcel, int); + field public static final android.media.AudioAttributes AUDIO_ATTRIBUTES_DEFAULT; + field public static final int BADGE_ICON_LARGE = 2; // 0x2 + field public static final int BADGE_ICON_NONE = 0; // 0x0 + field public static final int BADGE_ICON_SMALL = 1; // 0x1 + field public static final String CATEGORY_ALARM = "alarm"; + field public static final String CATEGORY_CALL = "call"; + field public static final String CATEGORY_EMAIL = "email"; + field public static final String CATEGORY_ERROR = "err"; + field public static final String CATEGORY_EVENT = "event"; + field public static final String CATEGORY_LOCATION_SHARING = "location_sharing"; + field public static final String CATEGORY_MESSAGE = "msg"; + field public static final String CATEGORY_MISSED_CALL = "missed_call"; + field public static final String CATEGORY_NAVIGATION = "navigation"; + field public static final String CATEGORY_PROGRESS = "progress"; + field public static final String CATEGORY_PROMO = "promo"; + field public static final String CATEGORY_RECOMMENDATION = "recommendation"; + field public static final String CATEGORY_REMINDER = "reminder"; + field public static final String CATEGORY_SERVICE = "service"; + field public static final String CATEGORY_SOCIAL = "social"; + field public static final String CATEGORY_STATUS = "status"; + field public static final String CATEGORY_STOPWATCH = "stopwatch"; + field public static final String CATEGORY_SYSTEM = "sys"; + field public static final String CATEGORY_TRANSPORT = "transport"; + field @FlaggedApi("android.app.category_voicemail") public static final String CATEGORY_VOICEMAIL = "voicemail"; + field public static final String CATEGORY_WORKOUT = "workout"; + field @ColorInt public static final int COLOR_DEFAULT = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DEFAULT_ALL = -1; // 0xffffffff + field public static final int DEFAULT_LIGHTS = 4; // 0x4 + field public static final int DEFAULT_SOUND = 1; // 0x1 + field public static final int DEFAULT_VIBRATE = 2; // 0x2 + field public static final String EXTRA_ANSWER_COLOR = "android.answerColor"; + field public static final String EXTRA_ANSWER_INTENT = "android.answerIntent"; + field public static final String EXTRA_AUDIO_CONTENTS_URI = "android.audioContents"; + field public static final String EXTRA_BACKGROUND_IMAGE_URI = "android.backgroundImageUri"; + field public static final String EXTRA_BIG_TEXT = "android.bigText"; + field public static final String EXTRA_CALL_IS_VIDEO = "android.callIsVideo"; + field public static final String EXTRA_CALL_PERSON = "android.callPerson"; + field public static final String EXTRA_CALL_TYPE = "android.callType"; + field public static final String EXTRA_CHANNEL_GROUP_ID = "android.intent.extra.CHANNEL_GROUP_ID"; + field public static final String EXTRA_CHANNEL_ID = "android.intent.extra.CHANNEL_ID"; + field public static final String EXTRA_CHRONOMETER_COUNT_DOWN = "android.chronometerCountDown"; + field public static final String EXTRA_COLORIZED = "android.colorized"; + field public static final String EXTRA_COMPACT_ACTIONS = "android.compactActions"; + field public static final String EXTRA_CONVERSATION_TITLE = "android.conversationTitle"; + field public static final String EXTRA_DECLINE_COLOR = "android.declineColor"; + field public static final String EXTRA_DECLINE_INTENT = "android.declineIntent"; + field public static final String EXTRA_HANG_UP_INTENT = "android.hangUpIntent"; + field public static final String EXTRA_HISTORIC_MESSAGES = "android.messages.historic"; + field public static final String EXTRA_INFO_TEXT = "android.infoText"; + field public static final String EXTRA_IS_GROUP_CONVERSATION = "android.isGroupConversation"; + field @Deprecated public static final String EXTRA_LARGE_ICON = "android.largeIcon"; + field public static final String EXTRA_LARGE_ICON_BIG = "android.largeIcon.big"; + field public static final String EXTRA_MEDIA_SESSION = "android.mediaSession"; + field public static final String EXTRA_MESSAGES = "android.messages"; + field public static final String EXTRA_MESSAGING_PERSON = "android.messagingUser"; + field public static final String EXTRA_NOTIFICATION_ID = "android.intent.extra.NOTIFICATION_ID"; + field public static final String EXTRA_NOTIFICATION_TAG = "android.intent.extra.NOTIFICATION_TAG"; + field @Deprecated public static final String EXTRA_PEOPLE = "android.people"; + field public static final String EXTRA_PEOPLE_LIST = "android.people.list"; + field public static final String EXTRA_PICTURE = "android.picture"; + field public static final String EXTRA_PICTURE_CONTENT_DESCRIPTION = "android.pictureContentDescription"; + field public static final String EXTRA_PICTURE_ICON = "android.pictureIcon"; + field public static final String EXTRA_PROGRESS = "android.progress"; + field public static final String EXTRA_PROGRESS_INDETERMINATE = "android.progressIndeterminate"; + field public static final String EXTRA_PROGRESS_MAX = "android.progressMax"; + field public static final String EXTRA_REMOTE_INPUT_DRAFT = "android.remoteInputDraft"; + field public static final String EXTRA_REMOTE_INPUT_HISTORY = "android.remoteInputHistory"; + field @Deprecated public static final String EXTRA_SELF_DISPLAY_NAME = "android.selfDisplayName"; + field public static final String EXTRA_SHOW_BIG_PICTURE_WHEN_COLLAPSED = "android.showBigPictureWhenCollapsed"; + field public static final String EXTRA_SHOW_CHRONOMETER = "android.showChronometer"; + field public static final String EXTRA_SHOW_WHEN = "android.showWhen"; + field @Deprecated public static final String EXTRA_SMALL_ICON = "android.icon"; + field public static final String EXTRA_SUB_TEXT = "android.subText"; + field public static final String EXTRA_SUMMARY_TEXT = "android.summaryText"; + field public static final String EXTRA_TEMPLATE = "android.template"; + field public static final String EXTRA_TEXT = "android.text"; + field public static final String EXTRA_TEXT_LINES = "android.textLines"; + field public static final String EXTRA_TITLE = "android.title"; + field public static final String EXTRA_TITLE_BIG = "android.title.big"; + field public static final String EXTRA_VERIFICATION_ICON = "android.verificationIcon"; + field public static final String EXTRA_VERIFICATION_TEXT = "android.verificationText"; + field public static final int FLAG_AUTO_CANCEL = 16; // 0x10 + field public static final int FLAG_BUBBLE = 4096; // 0x1000 + field public static final int FLAG_FOREGROUND_SERVICE = 64; // 0x40 + field public static final int FLAG_GROUP_SUMMARY = 512; // 0x200 + field @Deprecated public static final int FLAG_HIGH_PRIORITY = 128; // 0x80 + field public static final int FLAG_INSISTENT = 4; // 0x4 + field public static final int FLAG_LOCAL_ONLY = 256; // 0x100 + field public static final int FLAG_NO_CLEAR = 32; // 0x20 + field public static final int FLAG_ONGOING_EVENT = 2; // 0x2 + field public static final int FLAG_ONLY_ALERT_ONCE = 8; // 0x8 + field @FlaggedApi("android.app.api_rich_ongoing") public static final int FLAG_PROMOTED_ONGOING = 262144; // 0x40000 + field @Deprecated public static final int FLAG_SHOW_LIGHTS = 1; // 0x1 + field public static final int FOREGROUND_SERVICE_DEFAULT = 0; // 0x0 + field public static final int FOREGROUND_SERVICE_DEFERRED = 2; // 0x2 + field public static final int FOREGROUND_SERVICE_IMMEDIATE = 1; // 0x1 + field public static final int GROUP_ALERT_ALL = 0; // 0x0 + field public static final int GROUP_ALERT_CHILDREN = 2; // 0x2 + field public static final int GROUP_ALERT_SUMMARY = 1; // 0x1 + field public static final String INTENT_CATEGORY_NOTIFICATION_PREFERENCES = "android.intent.category.NOTIFICATION_PREFERENCES"; + field @Deprecated public static final int PRIORITY_DEFAULT = 0; // 0x0 + field @Deprecated public static final int PRIORITY_HIGH = 1; // 0x1 + field @Deprecated public static final int PRIORITY_LOW = -1; // 0xffffffff + field @Deprecated public static final int PRIORITY_MAX = 2; // 0x2 + field @Deprecated public static final int PRIORITY_MIN = -2; // 0xfffffffe + field @Deprecated public static final int STREAM_DEFAULT = -1; // 0xffffffff + field public static final int VISIBILITY_PRIVATE = 0; // 0x0 + field public static final int VISIBILITY_PUBLIC = 1; // 0x1 + field public static final int VISIBILITY_SECRET = -1; // 0xffffffff + field public android.app.Notification.Action[] actions; + field @Deprecated public android.media.AudioAttributes audioAttributes; + field @Deprecated public int audioStreamType; + field @Deprecated public android.widget.RemoteViews bigContentView; + field public String category; + field @ColorInt public int color; + field public android.app.PendingIntent contentIntent; + field @Deprecated public android.widget.RemoteViews contentView; + field @Deprecated public int defaults; + field public android.app.PendingIntent deleteIntent; + field public android.os.Bundle extras; + field public int flags; + field public android.app.PendingIntent fullScreenIntent; + field @Deprecated public android.widget.RemoteViews headsUpContentView; + field @Deprecated @DrawableRes public int icon; + field public int iconLevel; + field @Deprecated public android.graphics.Bitmap largeIcon; + field @Deprecated @ColorInt public int ledARGB; + field @Deprecated public int ledOffMS; + field @Deprecated public int ledOnMS; + field public int number; + field @Deprecated public int priority; + field public android.app.Notification publicVersion; + field @Deprecated public android.net.Uri sound; + field public CharSequence tickerText; + field @Deprecated public android.widget.RemoteViews tickerView; + field @Deprecated public long[] vibrate; + field public int visibility; + field public long when; + } + + public static class Notification.Action implements android.os.Parcelable { + ctor @Deprecated public Notification.Action(int, CharSequence, @Nullable android.app.PendingIntent); + method public android.app.Notification.Action clone(); + method public int describeContents(); + method public boolean getAllowGeneratedReplies(); + method public android.app.RemoteInput[] getDataOnlyRemoteInputs(); + method public android.os.Bundle getExtras(); + method public android.graphics.drawable.Icon getIcon(); + method public android.app.RemoteInput[] getRemoteInputs(); + method public int getSemanticAction(); + method public boolean isAuthenticationRequired(); + method public boolean isContextual(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SEMANTIC_ACTION_ARCHIVE = 5; // 0x5 + field public static final int SEMANTIC_ACTION_CALL = 10; // 0xa + field public static final int SEMANTIC_ACTION_DELETE = 4; // 0x4 + field public static final int SEMANTIC_ACTION_MARK_AS_READ = 2; // 0x2 + field public static final int SEMANTIC_ACTION_MARK_AS_UNREAD = 3; // 0x3 + field public static final int SEMANTIC_ACTION_MUTE = 6; // 0x6 + field public static final int SEMANTIC_ACTION_NONE = 0; // 0x0 + field public static final int SEMANTIC_ACTION_REPLY = 1; // 0x1 + field public static final int SEMANTIC_ACTION_THUMBS_DOWN = 9; // 0x9 + field public static final int SEMANTIC_ACTION_THUMBS_UP = 8; // 0x8 + field public static final int SEMANTIC_ACTION_UNMUTE = 7; // 0x7 + field public android.app.PendingIntent actionIntent; + field @Deprecated public int icon; + field public CharSequence title; + } + + public static final class Notification.Action.Builder { + ctor @Deprecated public Notification.Action.Builder(int, CharSequence, @Nullable android.app.PendingIntent); + ctor public Notification.Action.Builder(android.graphics.drawable.Icon, CharSequence, @Nullable android.app.PendingIntent); + ctor public Notification.Action.Builder(android.app.Notification.Action); + method @NonNull public android.app.Notification.Action.Builder addExtras(android.os.Bundle); + method @NonNull public android.app.Notification.Action.Builder addRemoteInput(android.app.RemoteInput); + method @NonNull public android.app.Notification.Action build(); + method @NonNull public android.app.Notification.Action.Builder extend(android.app.Notification.Action.Extender); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public android.app.Notification.Action.Builder setAllowGeneratedReplies(boolean); + method @NonNull public android.app.Notification.Action.Builder setAuthenticationRequired(boolean); + method @NonNull public android.app.Notification.Action.Builder setContextual(boolean); + method @NonNull public android.app.Notification.Action.Builder setSemanticAction(int); + } + + public static interface Notification.Action.Extender { + method public android.app.Notification.Action.Builder extend(android.app.Notification.Action.Builder); + } + + public static final class Notification.Action.WearableExtender implements android.app.Notification.Action.Extender { + ctor public Notification.Action.WearableExtender(); + ctor public Notification.Action.WearableExtender(android.app.Notification.Action); + method public android.app.Notification.Action.WearableExtender clone(); + method public android.app.Notification.Action.Builder extend(android.app.Notification.Action.Builder); + method @Deprecated public CharSequence getCancelLabel(); + method @Deprecated public CharSequence getConfirmLabel(); + method public boolean getHintDisplayActionInline(); + method public boolean getHintLaunchesActivity(); + method @Deprecated public CharSequence getInProgressLabel(); + method public boolean isAvailableOffline(); + method public android.app.Notification.Action.WearableExtender setAvailableOffline(boolean); + method @Deprecated public android.app.Notification.Action.WearableExtender setCancelLabel(CharSequence); + method @Deprecated public android.app.Notification.Action.WearableExtender setConfirmLabel(CharSequence); + method public android.app.Notification.Action.WearableExtender setHintDisplayActionInline(boolean); + method public android.app.Notification.Action.WearableExtender setHintLaunchesActivity(boolean); + method @Deprecated public android.app.Notification.Action.WearableExtender setInProgressLabel(CharSequence); + } + + public static class Notification.BigPictureStyle extends android.app.Notification.Style { + ctor public Notification.BigPictureStyle(); + ctor @Deprecated public Notification.BigPictureStyle(android.app.Notification.Builder); + method @NonNull public android.app.Notification.BigPictureStyle bigLargeIcon(@Nullable android.graphics.Bitmap); + method @NonNull public android.app.Notification.BigPictureStyle bigLargeIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.app.Notification.BigPictureStyle bigPicture(@Nullable android.graphics.Bitmap); + method @NonNull public android.app.Notification.BigPictureStyle bigPicture(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.app.Notification.BigPictureStyle setBigContentTitle(@Nullable CharSequence); + method @NonNull public android.app.Notification.BigPictureStyle setContentDescription(@Nullable CharSequence); + method @NonNull public android.app.Notification.BigPictureStyle setSummaryText(@Nullable CharSequence); + method @NonNull public android.app.Notification.BigPictureStyle showBigPictureWhenCollapsed(boolean); + } + + public static class Notification.BigTextStyle extends android.app.Notification.Style { + ctor public Notification.BigTextStyle(); + ctor @Deprecated public Notification.BigTextStyle(android.app.Notification.Builder); + method public android.app.Notification.BigTextStyle bigText(CharSequence); + method public android.app.Notification.BigTextStyle setBigContentTitle(CharSequence); + method public android.app.Notification.BigTextStyle setSummaryText(CharSequence); + } + + public static final class Notification.BubbleMetadata implements android.os.Parcelable { + method public int describeContents(); + method public boolean getAutoExpandBubble(); + method @Nullable public android.app.PendingIntent getDeleteIntent(); + method @Dimension(unit=android.annotation.Dimension.DP) public int getDesiredHeight(); + method @DimenRes public int getDesiredHeightResId(); + method @Nullable public android.graphics.drawable.Icon getIcon(); + method @Nullable public android.app.PendingIntent getIntent(); + method @Nullable public String getShortcutId(); + method public boolean isBubbleSuppressable(); + method public boolean isBubbleSuppressed(); + method public boolean isNotificationSuppressed(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class Notification.BubbleMetadata.Builder { + ctor @Deprecated public Notification.BubbleMetadata.Builder(); + ctor public Notification.BubbleMetadata.Builder(@NonNull String); + ctor public Notification.BubbleMetadata.Builder(@NonNull android.app.PendingIntent, @NonNull android.graphics.drawable.Icon); + method @NonNull public android.app.Notification.BubbleMetadata build(); + method @NonNull public android.app.Notification.BubbleMetadata.Builder setAutoExpandBubble(boolean); + method @NonNull public android.app.Notification.BubbleMetadata.Builder setDeleteIntent(@Nullable android.app.PendingIntent); + method @NonNull public android.app.Notification.BubbleMetadata.Builder setDesiredHeight(@Dimension(unit=android.annotation.Dimension.DP) int); + method @NonNull public android.app.Notification.BubbleMetadata.Builder setDesiredHeightResId(@DimenRes int); + method @NonNull public android.app.Notification.BubbleMetadata.Builder setIcon(@NonNull android.graphics.drawable.Icon); + method @NonNull public android.app.Notification.BubbleMetadata.Builder setIntent(@NonNull android.app.PendingIntent); + method @NonNull public android.app.Notification.BubbleMetadata.Builder setSuppressNotification(boolean); + method @NonNull public android.app.Notification.BubbleMetadata.Builder setSuppressableBubble(boolean); + } + + public static class Notification.Builder { + ctor public Notification.Builder(android.content.Context, String); + ctor @Deprecated public Notification.Builder(android.content.Context); + method @Deprecated public android.app.Notification.Builder addAction(int, CharSequence, android.app.PendingIntent); + method @NonNull public android.app.Notification.Builder addAction(android.app.Notification.Action); + method @NonNull public android.app.Notification.Builder addExtras(android.os.Bundle); + method @Deprecated public android.app.Notification.Builder addPerson(String); + method @NonNull public android.app.Notification.Builder addPerson(android.app.Person); + method @NonNull public android.app.Notification build(); + method @Deprecated public android.widget.RemoteViews createBigContentView(); + method @Deprecated public android.widget.RemoteViews createContentView(); + method @Deprecated public android.widget.RemoteViews createHeadsUpContentView(); + method @NonNull public android.app.Notification.Builder extend(android.app.Notification.Extender); + method public android.os.Bundle getExtras(); + method @Deprecated public android.app.Notification getNotification(); + method public android.app.Notification.Style getStyle(); + method @NonNull public static android.app.Notification.Builder recoverBuilder(android.content.Context, android.app.Notification); + method @NonNull public android.app.Notification.Builder setActions(android.app.Notification.Action...); + method @NonNull public android.app.Notification.Builder setAllowSystemGeneratedContextualActions(boolean); + method @NonNull public android.app.Notification.Builder setAutoCancel(boolean); + method @NonNull public android.app.Notification.Builder setBadgeIconType(int); + method @NonNull public android.app.Notification.Builder setBubbleMetadata(@Nullable android.app.Notification.BubbleMetadata); + method @NonNull public android.app.Notification.Builder setCategory(String); + method @NonNull public android.app.Notification.Builder setChannelId(String); + method @NonNull public android.app.Notification.Builder setChronometerCountDown(boolean); + method @NonNull public android.app.Notification.Builder setColor(@ColorInt int); + method @NonNull public android.app.Notification.Builder setColorized(boolean); + method @Deprecated public android.app.Notification.Builder setContent(android.widget.RemoteViews); + method @Deprecated public android.app.Notification.Builder setContentInfo(CharSequence); + method @NonNull public android.app.Notification.Builder setContentIntent(android.app.PendingIntent); + method @NonNull public android.app.Notification.Builder setContentText(CharSequence); + method @NonNull public android.app.Notification.Builder setContentTitle(CharSequence); + method @NonNull public android.app.Notification.Builder setCustomBigContentView(android.widget.RemoteViews); + method @NonNull public android.app.Notification.Builder setCustomContentView(android.widget.RemoteViews); + method @NonNull public android.app.Notification.Builder setCustomHeadsUpContentView(android.widget.RemoteViews); + method @Deprecated public android.app.Notification.Builder setDefaults(int); + method @NonNull public android.app.Notification.Builder setDeleteIntent(android.app.PendingIntent); + method @NonNull public android.app.Notification.Builder setExtras(android.os.Bundle); + method @NonNull public android.app.Notification.Builder setFlag(int, boolean); + method @NonNull public android.app.Notification.Builder setForegroundServiceBehavior(int); + method @NonNull @RequiresPermission(android.Manifest.permission.USE_FULL_SCREEN_INTENT) public android.app.Notification.Builder setFullScreenIntent(android.app.PendingIntent, boolean); + method @NonNull public android.app.Notification.Builder setGroup(String); + method @NonNull public android.app.Notification.Builder setGroupAlertBehavior(int); + method @NonNull public android.app.Notification.Builder setGroupSummary(boolean); + method @NonNull public android.app.Notification.Builder setLargeIcon(android.graphics.Bitmap); + method @NonNull public android.app.Notification.Builder setLargeIcon(android.graphics.drawable.Icon); + method @Deprecated public android.app.Notification.Builder setLights(@ColorInt int, int, int); + method @NonNull public android.app.Notification.Builder setLocalOnly(boolean); + method @NonNull public android.app.Notification.Builder setLocusId(@Nullable android.content.LocusId); + method @NonNull public android.app.Notification.Builder setNumber(int); + method @NonNull public android.app.Notification.Builder setOngoing(boolean); + method @NonNull public android.app.Notification.Builder setOnlyAlertOnce(boolean); + method @Deprecated public android.app.Notification.Builder setPriority(int); + method @NonNull public android.app.Notification.Builder setProgress(int, int, boolean); + method @NonNull public android.app.Notification.Builder setPublicVersion(android.app.Notification); + method @NonNull public android.app.Notification.Builder setRemoteInputHistory(CharSequence[]); + method @NonNull public android.app.Notification.Builder setSettingsText(CharSequence); + method @FlaggedApi("android.app.api_rich_ongoing") @NonNull public android.app.Notification.Builder setShortCriticalText(@Nullable String); + method @NonNull public android.app.Notification.Builder setShortcutId(String); + method @NonNull public android.app.Notification.Builder setShowWhen(boolean); + method @NonNull public android.app.Notification.Builder setSmallIcon(@DrawableRes int); + method @NonNull public android.app.Notification.Builder setSmallIcon(@DrawableRes int, int); + method @NonNull public android.app.Notification.Builder setSmallIcon(android.graphics.drawable.Icon); + method @NonNull public android.app.Notification.Builder setSortKey(String); + method @Deprecated public android.app.Notification.Builder setSound(android.net.Uri); + method @Deprecated public android.app.Notification.Builder setSound(android.net.Uri, int); + method @Deprecated public android.app.Notification.Builder setSound(android.net.Uri, android.media.AudioAttributes); + method @NonNull public android.app.Notification.Builder setStyle(android.app.Notification.Style); + method @NonNull public android.app.Notification.Builder setSubText(CharSequence); + method @NonNull public android.app.Notification.Builder setTicker(CharSequence); + method @Deprecated public android.app.Notification.Builder setTicker(CharSequence, android.widget.RemoteViews); + method @NonNull public android.app.Notification.Builder setTimeoutAfter(long); + method @NonNull public android.app.Notification.Builder setUsesChronometer(boolean); + method @Deprecated public android.app.Notification.Builder setVibrate(long[]); + method @NonNull public android.app.Notification.Builder setVisibility(int); + method @NonNull public android.app.Notification.Builder setWhen(long); + } + + public static class Notification.CallStyle extends android.app.Notification.Style { + method @NonNull public static android.app.Notification.CallStyle forIncomingCall(@NonNull android.app.Person, @NonNull android.app.PendingIntent, @NonNull android.app.PendingIntent); + method @NonNull public static android.app.Notification.CallStyle forOngoingCall(@NonNull android.app.Person, @NonNull android.app.PendingIntent); + method @NonNull public static android.app.Notification.CallStyle forScreeningCall(@NonNull android.app.Person, @NonNull android.app.PendingIntent, @NonNull android.app.PendingIntent); + method @NonNull public android.app.Notification.CallStyle setAnswerButtonColorHint(@ColorInt int); + method @NonNull public android.app.Notification.CallStyle setDeclineButtonColorHint(@ColorInt int); + method @NonNull public android.app.Notification.CallStyle setIsVideo(boolean); + method @NonNull public android.app.Notification.CallStyle setVerificationIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.app.Notification.CallStyle setVerificationText(@Nullable CharSequence); + field public static final int CALL_TYPE_INCOMING = 1; // 0x1 + field public static final int CALL_TYPE_ONGOING = 2; // 0x2 + field public static final int CALL_TYPE_SCREENING = 3; // 0x3 + field public static final int CALL_TYPE_UNKNOWN = 0; // 0x0 + } + + public static final class Notification.CarExtender implements android.app.Notification.Extender { + ctor public Notification.CarExtender(); + ctor public Notification.CarExtender(android.app.Notification); + method public android.app.Notification.Builder extend(android.app.Notification.Builder); + method @ColorInt public int getColor(); + method public android.graphics.Bitmap getLargeIcon(); + method public android.app.Notification.CarExtender.UnreadConversation getUnreadConversation(); + method public android.app.Notification.CarExtender setColor(@ColorInt int); + method public android.app.Notification.CarExtender setLargeIcon(android.graphics.Bitmap); + method public android.app.Notification.CarExtender setUnreadConversation(android.app.Notification.CarExtender.UnreadConversation); + } + + public static class Notification.CarExtender.Builder { + ctor public Notification.CarExtender.Builder(String); + method public android.app.Notification.CarExtender.Builder addMessage(String); + method public android.app.Notification.CarExtender.UnreadConversation build(); + method public android.app.Notification.CarExtender.Builder setLatestTimestamp(long); + method public android.app.Notification.CarExtender.Builder setReadPendingIntent(android.app.PendingIntent); + method public android.app.Notification.CarExtender.Builder setReplyAction(android.app.PendingIntent, android.app.RemoteInput); + } + + public static class Notification.CarExtender.UnreadConversation { + method public long getLatestTimestamp(); + method public String[] getMessages(); + method public String getParticipant(); + method public String[] getParticipants(); + method public android.app.PendingIntent getReadPendingIntent(); + method public android.app.RemoteInput getRemoteInput(); + method public android.app.PendingIntent getReplyPendingIntent(); + } + + public static class Notification.DecoratedCustomViewStyle extends android.app.Notification.Style { + ctor public Notification.DecoratedCustomViewStyle(); + } + + public static class Notification.DecoratedMediaCustomViewStyle extends android.app.Notification.MediaStyle { + ctor public Notification.DecoratedMediaCustomViewStyle(); + } + + public static interface Notification.Extender { + method public android.app.Notification.Builder extend(android.app.Notification.Builder); + } + + public static class Notification.InboxStyle extends android.app.Notification.Style { + ctor public Notification.InboxStyle(); + ctor @Deprecated public Notification.InboxStyle(android.app.Notification.Builder); + method public android.app.Notification.InboxStyle addLine(CharSequence); + method public android.app.Notification.InboxStyle setBigContentTitle(CharSequence); + method public android.app.Notification.InboxStyle setSummaryText(CharSequence); + } + + public static class Notification.MediaStyle extends android.app.Notification.Style { + ctor public Notification.MediaStyle(); + ctor @Deprecated public Notification.MediaStyle(android.app.Notification.Builder); + method public android.app.Notification.MediaStyle setMediaSession(android.media.session.MediaSession.Token); + method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public android.app.Notification.MediaStyle setRemotePlaybackInfo(@NonNull CharSequence, @DrawableRes int, @Nullable android.app.PendingIntent); + method public android.app.Notification.MediaStyle setShowActionsInCompactView(int...); + } + + public static class Notification.MessagingStyle extends android.app.Notification.Style { + ctor @Deprecated public Notification.MessagingStyle(@NonNull CharSequence); + ctor public Notification.MessagingStyle(@NonNull android.app.Person); + method public android.app.Notification.MessagingStyle addHistoricMessage(android.app.Notification.MessagingStyle.Message); + method @Deprecated public android.app.Notification.MessagingStyle addMessage(CharSequence, long, CharSequence); + method public android.app.Notification.MessagingStyle addMessage(@NonNull CharSequence, long, @Nullable android.app.Person); + method public android.app.Notification.MessagingStyle addMessage(android.app.Notification.MessagingStyle.Message); + method @Nullable public CharSequence getConversationTitle(); + method public java.util.List getHistoricMessages(); + method public java.util.List getMessages(); + method @NonNull public android.app.Person getUser(); + method @Deprecated public CharSequence getUserDisplayName(); + method public boolean isGroupConversation(); + method public android.app.Notification.MessagingStyle setConversationTitle(@Nullable CharSequence); + method public android.app.Notification.MessagingStyle setGroupConversation(boolean); + field public static final int MAXIMUM_RETAINED_MESSAGES = 25; // 0x19 + } + + public static final class Notification.MessagingStyle.Message { + ctor @Deprecated public Notification.MessagingStyle.Message(CharSequence, long, CharSequence); + ctor public Notification.MessagingStyle.Message(@NonNull CharSequence, long, @Nullable android.app.Person); + method public String getDataMimeType(); + method public android.net.Uri getDataUri(); + method public android.os.Bundle getExtras(); + method @NonNull public static java.util.List getMessagesFromBundleArray(@Nullable android.os.Parcelable[]); + method @Deprecated public CharSequence getSender(); + method @Nullable public android.app.Person getSenderPerson(); + method public CharSequence getText(); + method public long getTimestamp(); + method public android.app.Notification.MessagingStyle.Message setData(String, android.net.Uri); + } + + @FlaggedApi("android.app.api_rich_ongoing") public static class Notification.ProgressStyle extends android.app.Notification.Style { + ctor public Notification.ProgressStyle(); + method @NonNull public android.app.Notification.ProgressStyle addProgressPoint(@NonNull android.app.Notification.ProgressStyle.Point); + method @NonNull public android.app.Notification.ProgressStyle addProgressSegment(@NonNull android.app.Notification.ProgressStyle.Segment); + method public int getProgress(); + method @Nullable public android.graphics.drawable.Icon getProgressEndIcon(); + method public int getProgressMax(); + method @NonNull public java.util.List getProgressPoints(); + method @NonNull public java.util.List getProgressSegments(); + method @Nullable public android.graphics.drawable.Icon getProgressStartIcon(); + method @Nullable public android.graphics.drawable.Icon getProgressTrackerIcon(); + method public boolean isProgressIndeterminate(); + method public boolean isStyledByProgress(); + method @NonNull public android.app.Notification.ProgressStyle setProgress(int); + method @NonNull public android.app.Notification.ProgressStyle setProgressEndIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.app.Notification.ProgressStyle setProgressIndeterminate(boolean); + method @NonNull public android.app.Notification.ProgressStyle setProgressPoints(@NonNull java.util.List); + method @NonNull public android.app.Notification.ProgressStyle setProgressSegments(@NonNull java.util.List); + method @NonNull public android.app.Notification.ProgressStyle setProgressStartIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.app.Notification.ProgressStyle setProgressTrackerIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.app.Notification.ProgressStyle setStyledByProgress(boolean); + } + + public static final class Notification.ProgressStyle.Point { + ctor public Notification.ProgressStyle.Point(int); + method @ColorInt public int getColor(); + method public int getId(); + method public int getPosition(); + method @NonNull public android.app.Notification.ProgressStyle.Point setColor(@ColorInt int); + method @NonNull public android.app.Notification.ProgressStyle.Point setId(int); + } + + public static final class Notification.ProgressStyle.Segment { + ctor public Notification.ProgressStyle.Segment(int); + method @ColorInt public int getColor(); + method public int getId(); + method public int getLength(); + method @NonNull public android.app.Notification.ProgressStyle.Segment setColor(@ColorInt int); + method @NonNull public android.app.Notification.ProgressStyle.Segment setId(int); + } + + public abstract static class Notification.Style { + ctor @Deprecated public Notification.Style(); + method public android.app.Notification build(); + method protected void checkBuilder(); + method protected android.widget.RemoteViews getStandardView(int); + method protected void internalSetBigContentTitle(CharSequence); + method protected void internalSetSummaryText(CharSequence); + method public void setBuilder(android.app.Notification.Builder); + field protected android.app.Notification.Builder mBuilder; + } + + @FlaggedApi("android.app.api_tvextender") public static final class Notification.TvExtender implements android.app.Notification.Extender { + ctor public Notification.TvExtender(); + ctor public Notification.TvExtender(@NonNull android.app.Notification); + method @NonNull public android.app.Notification.Builder extend(@NonNull android.app.Notification.Builder); + method @Nullable public String getChannelId(); + method @Nullable public android.app.PendingIntent getContentIntent(); + method @Nullable public android.app.PendingIntent getDeleteIntent(); + method public boolean isAvailableOnTv(); + method public boolean isSuppressShowOverApps(); + method @NonNull public android.app.Notification.TvExtender setChannelId(@Nullable String); + method @NonNull public android.app.Notification.TvExtender setContentIntent(@Nullable android.app.PendingIntent); + method @NonNull public android.app.Notification.TvExtender setDeleteIntent(@Nullable android.app.PendingIntent); + method @NonNull public android.app.Notification.TvExtender setSuppressShowOverApps(boolean); + } + + public static final class Notification.WearableExtender implements android.app.Notification.Extender { + ctor public Notification.WearableExtender(); + ctor public Notification.WearableExtender(android.app.Notification); + method public android.app.Notification.WearableExtender addAction(android.app.Notification.Action); + method public android.app.Notification.WearableExtender addActions(java.util.List); + method @Deprecated public android.app.Notification.WearableExtender addPage(android.app.Notification); + method @Deprecated public android.app.Notification.WearableExtender addPages(java.util.List); + method public android.app.Notification.WearableExtender clearActions(); + method @Deprecated public android.app.Notification.WearableExtender clearPages(); + method public android.app.Notification.WearableExtender clone(); + method public android.app.Notification.Builder extend(android.app.Notification.Builder); + method public java.util.List getActions(); + method public String getBridgeTag(); + method public int getContentAction(); + method @Deprecated public int getContentIcon(); + method @Deprecated public int getContentIconGravity(); + method public boolean getContentIntentAvailableOffline(); + method @Deprecated public int getCustomContentHeight(); + method @Deprecated public int getCustomSizePreset(); + method public String getDismissalId(); + method @Deprecated public android.app.PendingIntent getDisplayIntent(); + method @Deprecated public int getGravity(); + method @Deprecated public boolean getHintAmbientBigPicture(); + method @Deprecated public boolean getHintAvoidBackgroundClipping(); + method public boolean getHintContentIntentLaunchesActivity(); + method @Deprecated public boolean getHintHideIcon(); + method @Deprecated public int getHintScreenTimeout(); + method @Deprecated public boolean getHintShowBackgroundOnly(); + method @Deprecated public java.util.List getPages(); + method public boolean getStartScrollBottom(); + method public android.app.Notification.WearableExtender setBridgeTag(String); + method public android.app.Notification.WearableExtender setContentAction(int); + method @Deprecated public android.app.Notification.WearableExtender setContentIcon(int); + method @Deprecated public android.app.Notification.WearableExtender setContentIconGravity(int); + method public android.app.Notification.WearableExtender setContentIntentAvailableOffline(boolean); + method @Deprecated public android.app.Notification.WearableExtender setCustomContentHeight(int); + method @Deprecated public android.app.Notification.WearableExtender setCustomSizePreset(int); + method public android.app.Notification.WearableExtender setDismissalId(String); + method @Deprecated public android.app.Notification.WearableExtender setDisplayIntent(android.app.PendingIntent); + method @Deprecated public android.app.Notification.WearableExtender setGravity(int); + method @Deprecated public android.app.Notification.WearableExtender setHintAmbientBigPicture(boolean); + method @Deprecated public android.app.Notification.WearableExtender setHintAvoidBackgroundClipping(boolean); + method public android.app.Notification.WearableExtender setHintContentIntentLaunchesActivity(boolean); + method @Deprecated public android.app.Notification.WearableExtender setHintHideIcon(boolean); + method @Deprecated public android.app.Notification.WearableExtender setHintScreenTimeout(int); + method @Deprecated public android.app.Notification.WearableExtender setHintShowBackgroundOnly(boolean); + method public android.app.Notification.WearableExtender setStartScrollBottom(boolean); + field @Deprecated public static final int SCREEN_TIMEOUT_LONG = -1; // 0xffffffff + field @Deprecated public static final int SCREEN_TIMEOUT_SHORT = 0; // 0x0 + field @Deprecated public static final int SIZE_DEFAULT = 0; // 0x0 + field @Deprecated public static final int SIZE_FULL_SCREEN = 5; // 0x5 + field @Deprecated public static final int SIZE_LARGE = 4; // 0x4 + field @Deprecated public static final int SIZE_MEDIUM = 3; // 0x3 + field @Deprecated public static final int SIZE_SMALL = 2; // 0x2 + field @Deprecated public static final int SIZE_XSMALL = 1; // 0x1 + field public static final int UNSET_ACTION_INDEX = -1; // 0xffffffff + } + + public final class NotificationChannel implements android.os.Parcelable { + ctor public NotificationChannel(String, CharSequence, int); + method public boolean canBubble(); + method public boolean canBypassDnd(); + method public boolean canShowBadge(); + method public int describeContents(); + method public void enableLights(boolean); + method public void enableVibration(boolean); + method public android.media.AudioAttributes getAudioAttributes(); + method @Nullable public String getConversationId(); + method public String getDescription(); + method public String getGroup(); + method public String getId(); + method public int getImportance(); + method public int getLightColor(); + method public int getLockscreenVisibility(); + method public CharSequence getName(); + method @Nullable public String getParentChannelId(); + method public android.net.Uri getSound(); + method @FlaggedApi("android.app.notification_channel_vibration_effect_api") @Nullable public android.os.VibrationEffect getVibrationEffect(); + method public long[] getVibrationPattern(); + method public boolean hasUserSetImportance(); + method public boolean hasUserSetSound(); + method public boolean isBlockable(); + method public boolean isConversation(); + method public boolean isDemoted(); + method public boolean isImportantConversation(); + method public void setAllowBubbles(boolean); + method public void setBlockable(boolean); + method public void setBypassDnd(boolean); + method public void setConversationId(@NonNull String, @NonNull String); + method public void setDescription(String); + method public void setGroup(String); + method public void setImportance(int); + method public void setLightColor(int); + method public void setLockscreenVisibility(int); + method public void setName(CharSequence); + method public void setShowBadge(boolean); + method public void setSound(android.net.Uri, android.media.AudioAttributes); + method @FlaggedApi("android.app.notification_channel_vibration_effect_api") public void setVibrationEffect(@Nullable android.os.VibrationEffect); + method public void setVibrationPattern(long[]); + method public boolean shouldShowLights(); + method public boolean shouldVibrate(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String DEFAULT_CHANNEL_ID = "miscellaneous"; + field public static final String EDIT_CONVERSATION = "conversation"; + field public static final String EDIT_IMPORTANCE = "importance"; + field public static final String EDIT_LAUNCHER = "launcher"; + field public static final String EDIT_LOCKED_DEVICE = "locked"; + field public static final String EDIT_SOUND = "sound"; + field public static final String EDIT_VIBRATION = "vibration"; + field public static final String EDIT_ZEN = "zen"; + } + + public final class NotificationChannelGroup implements android.os.Parcelable { + ctor public NotificationChannelGroup(String, CharSequence); + method public android.app.NotificationChannelGroup clone(); + method public int describeContents(); + method public java.util.List getChannels(); + method public String getDescription(); + method public String getId(); + method public CharSequence getName(); + method public boolean isBlocked(); + method public void setDescription(String); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class NotificationManager { + method public String addAutomaticZenRule(android.app.AutomaticZenRule); + method @FlaggedApi("android.app.modes_api") public boolean areAutomaticZenRulesUserManaged(); + method @Deprecated public boolean areBubblesAllowed(); + method public boolean areBubblesEnabled(); + method public boolean areNotificationsEnabled(); + method public boolean areNotificationsPaused(); + method public boolean canNotifyAsPackage(@NonNull String); + method @FlaggedApi("android.app.api_rich_ongoing") public boolean canPostPromotedNotifications(); + method public boolean canUseFullScreenIntent(); + method public void cancel(int); + method public void cancel(@Nullable String, int); + method public void cancelAll(); + method public void cancelAsPackage(@NonNull String, @Nullable String, int); + method public void createNotificationChannel(@NonNull android.app.NotificationChannel); + method public void createNotificationChannelGroup(@NonNull android.app.NotificationChannelGroup); + method public void createNotificationChannelGroups(@NonNull java.util.List); + method public void createNotificationChannels(@NonNull java.util.List); + method public void deleteNotificationChannel(String); + method public void deleteNotificationChannelGroup(String); + method public android.service.notification.StatusBarNotification[] getActiveNotifications(); + method public android.app.AutomaticZenRule getAutomaticZenRule(String); + method @FlaggedApi("android.app.modes_api") public int getAutomaticZenRuleState(@NonNull String); + method public java.util.Map getAutomaticZenRules(); + method public int getBubblePreference(); + method @NonNull public android.app.NotificationManager.Policy getConsolidatedNotificationPolicy(); + method public final int getCurrentInterruptionFilter(); + method public int getImportance(); + method public android.app.NotificationChannel getNotificationChannel(String); + method @Nullable public android.app.NotificationChannel getNotificationChannel(@NonNull String, @NonNull String); + method public android.app.NotificationChannelGroup getNotificationChannelGroup(String); + method public java.util.List getNotificationChannelGroups(); + method public java.util.List getNotificationChannels(); + method @Nullable public String getNotificationDelegate(); + method public android.app.NotificationManager.Policy getNotificationPolicy(); + method public boolean isNotificationListenerAccessGranted(android.content.ComponentName); + method public boolean isNotificationPolicyAccessGranted(); + method @WorkerThread public boolean matchesCallFilter(@NonNull android.net.Uri); + method public void notify(int, android.app.Notification); + method public void notify(String, int, android.app.Notification); + method public void notifyAsPackage(@NonNull String, @Nullable String, int, @NonNull android.app.Notification); + method public boolean removeAutomaticZenRule(String); + method public void setAutomaticZenRuleState(@NonNull String, @NonNull android.service.notification.Condition); + method public final void setInterruptionFilter(int); + method public void setNotificationDelegate(@Nullable String); + method public void setNotificationPolicy(@NonNull android.app.NotificationManager.Policy); + method public boolean shouldHideSilentStatusBarIcons(); + method public boolean updateAutomaticZenRule(String, android.app.AutomaticZenRule); + field public static final String ACTION_APP_BLOCK_STATE_CHANGED = "android.app.action.APP_BLOCK_STATE_CHANGED"; + field public static final String ACTION_AUTOMATIC_ZEN_RULE = "android.app.action.AUTOMATIC_ZEN_RULE"; + field public static final String ACTION_AUTOMATIC_ZEN_RULE_STATUS_CHANGED = "android.app.action.AUTOMATIC_ZEN_RULE_STATUS_CHANGED"; + field @FlaggedApi("android.app.modes_api") public static final String ACTION_CONSOLIDATED_NOTIFICATION_POLICY_CHANGED = "android.app.action.CONSOLIDATED_NOTIFICATION_POLICY_CHANGED"; + field public static final String ACTION_INTERRUPTION_FILTER_CHANGED = "android.app.action.INTERRUPTION_FILTER_CHANGED"; + field public static final String ACTION_NOTIFICATION_CHANNEL_BLOCK_STATE_CHANGED = "android.app.action.NOTIFICATION_CHANNEL_BLOCK_STATE_CHANGED"; + field public static final String ACTION_NOTIFICATION_CHANNEL_GROUP_BLOCK_STATE_CHANGED = "android.app.action.NOTIFICATION_CHANNEL_GROUP_BLOCK_STATE_CHANGED"; + field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED = "android.app.action.NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED"; + field public static final String ACTION_NOTIFICATION_POLICY_CHANGED = "android.app.action.NOTIFICATION_POLICY_CHANGED"; + field @FlaggedApi("android.app.modes_api") public static final int AUTOMATIC_RULE_STATUS_ACTIVATED = 4; // 0x4 + field @FlaggedApi("android.app.modes_api") public static final int AUTOMATIC_RULE_STATUS_DEACTIVATED = 5; // 0x5 + field public static final int AUTOMATIC_RULE_STATUS_DISABLED = 2; // 0x2 + field public static final int AUTOMATIC_RULE_STATUS_ENABLED = 1; // 0x1 + field public static final int AUTOMATIC_RULE_STATUS_REMOVED = 3; // 0x3 + field public static final int AUTOMATIC_RULE_STATUS_UNKNOWN = -1; // 0xffffffff + field public static final int BUBBLE_PREFERENCE_ALL = 1; // 0x1 + field public static final int BUBBLE_PREFERENCE_NONE = 0; // 0x0 + field public static final int BUBBLE_PREFERENCE_SELECTED = 2; // 0x2 + field public static final String EXTRA_AUTOMATIC_RULE_ID = "android.app.extra.AUTOMATIC_RULE_ID"; + field public static final String EXTRA_AUTOMATIC_ZEN_RULE_ID = "android.app.extra.AUTOMATIC_ZEN_RULE_ID"; + field public static final String EXTRA_AUTOMATIC_ZEN_RULE_STATUS = "android.app.extra.AUTOMATIC_ZEN_RULE_STATUS"; + field public static final String EXTRA_BLOCKED_STATE = "android.app.extra.BLOCKED_STATE"; + field public static final String EXTRA_NOTIFICATION_CHANNEL_GROUP_ID = "android.app.extra.NOTIFICATION_CHANNEL_GROUP_ID"; + field public static final String EXTRA_NOTIFICATION_CHANNEL_ID = "android.app.extra.NOTIFICATION_CHANNEL_ID"; + field @FlaggedApi("android.app.modes_api") public static final String EXTRA_NOTIFICATION_POLICY = "android.app.extra.NOTIFICATION_POLICY"; + field public static final int IMPORTANCE_DEFAULT = 3; // 0x3 + field public static final int IMPORTANCE_HIGH = 4; // 0x4 + field public static final int IMPORTANCE_LOW = 2; // 0x2 + field public static final int IMPORTANCE_MAX = 5; // 0x5 + field public static final int IMPORTANCE_MIN = 1; // 0x1 + field public static final int IMPORTANCE_NONE = 0; // 0x0 + field public static final int IMPORTANCE_UNSPECIFIED = -1000; // 0xfffffc18 + field public static final int INTERRUPTION_FILTER_ALARMS = 4; // 0x4 + field public static final int INTERRUPTION_FILTER_ALL = 1; // 0x1 + field public static final int INTERRUPTION_FILTER_NONE = 3; // 0x3 + field public static final int INTERRUPTION_FILTER_PRIORITY = 2; // 0x2 + field public static final int INTERRUPTION_FILTER_UNKNOWN = 0; // 0x0 + field public static final String META_DATA_AUTOMATIC_RULE_TYPE = "android.service.zen.automatic.ruleType"; + field public static final String META_DATA_RULE_INSTANCE_LIMIT = "android.service.zen.automatic.ruleInstanceLimit"; + } + + public static class NotificationManager.Policy implements android.os.Parcelable { + ctor public NotificationManager.Policy(int, int, int); + ctor public NotificationManager.Policy(int, int, int, int); + ctor public NotificationManager.Policy(int, int, int, int, int); + method public int describeContents(); + method public static String priorityCategoriesToString(int); + method public static String prioritySendersToString(int); + method public static String suppressedEffectsToString(int); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CONVERSATION_SENDERS_ANYONE = 1; // 0x1 + field public static final int CONVERSATION_SENDERS_IMPORTANT = 2; // 0x2 + field public static final int CONVERSATION_SENDERS_NONE = 3; // 0x3 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int PRIORITY_CATEGORY_ALARMS = 32; // 0x20 + field public static final int PRIORITY_CATEGORY_CALLS = 8; // 0x8 + field public static final int PRIORITY_CATEGORY_CONVERSATIONS = 256; // 0x100 + field public static final int PRIORITY_CATEGORY_EVENTS = 2; // 0x2 + field public static final int PRIORITY_CATEGORY_MEDIA = 64; // 0x40 + field public static final int PRIORITY_CATEGORY_MESSAGES = 4; // 0x4 + field public static final int PRIORITY_CATEGORY_REMINDERS = 1; // 0x1 + field public static final int PRIORITY_CATEGORY_REPEAT_CALLERS = 16; // 0x10 + field public static final int PRIORITY_CATEGORY_SYSTEM = 128; // 0x80 + field public static final int PRIORITY_SENDERS_ANY = 0; // 0x0 + field public static final int PRIORITY_SENDERS_CONTACTS = 1; // 0x1 + field public static final int PRIORITY_SENDERS_STARRED = 2; // 0x2 + field public static final int SUPPRESSED_EFFECT_AMBIENT = 128; // 0x80 + field public static final int SUPPRESSED_EFFECT_BADGE = 64; // 0x40 + field public static final int SUPPRESSED_EFFECT_FULL_SCREEN_INTENT = 4; // 0x4 + field public static final int SUPPRESSED_EFFECT_LIGHTS = 8; // 0x8 + field public static final int SUPPRESSED_EFFECT_NOTIFICATION_LIST = 256; // 0x100 + field public static final int SUPPRESSED_EFFECT_PEEK = 16; // 0x10 + field @Deprecated public static final int SUPPRESSED_EFFECT_SCREEN_OFF = 1; // 0x1 + field @Deprecated public static final int SUPPRESSED_EFFECT_SCREEN_ON = 2; // 0x2 + field public static final int SUPPRESSED_EFFECT_STATUS_BAR = 32; // 0x20 + field public final int priorityCallSenders; + field public final int priorityCategories; + field public final int priorityConversationSenders; + field public final int priorityMessageSenders; + field public final int suppressedVisualEffects; + } + + public final class PendingIntent implements android.os.Parcelable { + method public void cancel(); + method public int describeContents(); + method public static android.app.PendingIntent getActivities(android.content.Context, int, @NonNull android.content.Intent[], int); + method public static android.app.PendingIntent getActivities(android.content.Context, int, @NonNull android.content.Intent[], int, @Nullable android.os.Bundle); + method public static android.app.PendingIntent getActivity(android.content.Context, int, android.content.Intent, int); + method public static android.app.PendingIntent getActivity(android.content.Context, int, @NonNull android.content.Intent, int, @Nullable android.os.Bundle); + method public static android.app.PendingIntent getBroadcast(android.content.Context, int, @NonNull android.content.Intent, int); + method @Nullable public String getCreatorPackage(); + method public int getCreatorUid(); + method @NonNull public android.os.UserHandle getCreatorUserHandle(); + method public static android.app.PendingIntent getForegroundService(android.content.Context, int, @NonNull android.content.Intent, int); + method @NonNull public android.content.IntentSender getIntentSender(); + method public static android.app.PendingIntent getService(android.content.Context, int, @NonNull android.content.Intent, int); + method @Deprecated @Nullable public String getTargetPackage(); + method public boolean isActivity(); + method public boolean isBroadcast(); + method public boolean isForegroundService(); + method public boolean isImmutable(); + method public boolean isService(); + method @Nullable public static android.app.PendingIntent readPendingIntentOrNullFromParcel(@NonNull android.os.Parcel); + method public void send() throws android.app.PendingIntent.CanceledException; + method public void send(int) throws android.app.PendingIntent.CanceledException; + method public void send(android.content.Context, int, @Nullable android.content.Intent) throws android.app.PendingIntent.CanceledException; + method public void send(@Nullable android.os.Bundle) throws android.app.PendingIntent.CanceledException; + method public void send(int, @Nullable android.app.PendingIntent.OnFinished, @Nullable android.os.Handler) throws android.app.PendingIntent.CanceledException; + method public void send(android.content.Context, int, @Nullable android.content.Intent, @Nullable android.app.PendingIntent.OnFinished, @Nullable android.os.Handler) throws android.app.PendingIntent.CanceledException; + method public void send(android.content.Context, int, @Nullable android.content.Intent, @Nullable android.app.PendingIntent.OnFinished, @Nullable android.os.Handler, @Nullable String) throws android.app.PendingIntent.CanceledException; + method public void send(android.content.Context, int, @Nullable android.content.Intent, @Nullable android.app.PendingIntent.OnFinished, @Nullable android.os.Handler, @Nullable String, @Nullable android.os.Bundle) throws android.app.PendingIntent.CanceledException; + method public static void writePendingIntentOrNullToParcel(@Nullable android.app.PendingIntent, @NonNull android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_ALLOW_UNSAFE_IMPLICIT_INTENT = 16777216; // 0x1000000 + field public static final int FLAG_CANCEL_CURRENT = 268435456; // 0x10000000 + field public static final int FLAG_IMMUTABLE = 67108864; // 0x4000000 + field public static final int FLAG_MUTABLE = 33554432; // 0x2000000 + field public static final int FLAG_NO_CREATE = 536870912; // 0x20000000 + field public static final int FLAG_ONE_SHOT = 1073741824; // 0x40000000 + field public static final int FLAG_UPDATE_CURRENT = 134217728; // 0x8000000 + } + + public static class PendingIntent.CanceledException extends android.util.AndroidException { + ctor public PendingIntent.CanceledException(); + ctor public PendingIntent.CanceledException(String); + ctor public PendingIntent.CanceledException(Exception); + } + + public static interface PendingIntent.OnFinished { + method public void onSendFinished(android.app.PendingIntent, android.content.Intent, int, String, android.os.Bundle); + } + + public final class Person implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.graphics.drawable.Icon getIcon(); + method @Nullable public String getKey(); + method @Nullable public CharSequence getName(); + method @Nullable public String getUri(); + method public boolean isBot(); + method public boolean isImportant(); + method public android.app.Person.Builder toBuilder(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class Person.Builder { + ctor public Person.Builder(); + method @NonNull public android.app.Person build(); + method @NonNull public android.app.Person.Builder setBot(boolean); + method @NonNull public android.app.Person.Builder setIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.app.Person.Builder setImportant(boolean); + method @NonNull public android.app.Person.Builder setKey(@Nullable String); + method @NonNull public android.app.Person.Builder setName(@Nullable CharSequence); + method @NonNull public android.app.Person.Builder setUri(@Nullable String); + } + + public final class PictureInPictureParams implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getActions(); + method @Nullable public android.util.Rational getAspectRatio(); + method @Nullable public android.app.RemoteAction getCloseAction(); + method @Nullable public android.util.Rational getExpandedAspectRatio(); + method @Nullable public android.graphics.Rect getSourceRectHint(); + method @Nullable public CharSequence getSubtitle(); + method @Nullable public CharSequence getTitle(); + method public boolean isAutoEnterEnabled(); + method public boolean isSeamlessResizeEnabled(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class PictureInPictureParams.Builder { + ctor public PictureInPictureParams.Builder(); + ctor public PictureInPictureParams.Builder(@NonNull android.app.PictureInPictureParams); + method public android.app.PictureInPictureParams build(); + method public android.app.PictureInPictureParams.Builder setActions(java.util.List); + method public android.app.PictureInPictureParams.Builder setAspectRatio(android.util.Rational); + method @NonNull public android.app.PictureInPictureParams.Builder setAutoEnterEnabled(boolean); + method @NonNull public android.app.PictureInPictureParams.Builder setCloseAction(@Nullable android.app.RemoteAction); + method @NonNull public android.app.PictureInPictureParams.Builder setExpandedAspectRatio(@Nullable android.util.Rational); + method @NonNull public android.app.PictureInPictureParams.Builder setSeamlessResizeEnabled(boolean); + method public android.app.PictureInPictureParams.Builder setSourceRectHint(android.graphics.Rect); + method @NonNull public android.app.PictureInPictureParams.Builder setSubtitle(@Nullable CharSequence); + method @NonNull public android.app.PictureInPictureParams.Builder setTitle(@Nullable CharSequence); + } + + public final class PictureInPictureUiState implements android.os.Parcelable { + method public int describeContents(); + method public boolean isStashed(); + method @FlaggedApi("android.app.enable_pip_ui_state_callback_on_entering") public boolean isTransitioningToPip(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class Presentation extends android.app.Dialog { + ctor public Presentation(android.content.Context, android.view.Display); + ctor public Presentation(android.content.Context, android.view.Display, int); + method public android.view.Display getDisplay(); + method public android.content.res.Resources getResources(); + method public void onDisplayChanged(); + method public void onDisplayRemoved(); + } + + @Deprecated public class ProgressDialog extends android.app.AlertDialog { + ctor @Deprecated public ProgressDialog(android.content.Context); + ctor @Deprecated public ProgressDialog(android.content.Context, int); + method @Deprecated public int getMax(); + method @Deprecated public int getProgress(); + method @Deprecated public int getSecondaryProgress(); + method @Deprecated public void incrementProgressBy(int); + method @Deprecated public void incrementSecondaryProgressBy(int); + method @Deprecated public boolean isIndeterminate(); + method @Deprecated public void onStart(); + method @Deprecated public void setIndeterminate(boolean); + method @Deprecated public void setIndeterminateDrawable(android.graphics.drawable.Drawable); + method @Deprecated public void setMax(int); + method @Deprecated public void setProgress(int); + method @Deprecated public void setProgressDrawable(android.graphics.drawable.Drawable); + method @Deprecated public void setProgressNumberFormat(String); + method @Deprecated public void setProgressPercentFormat(java.text.NumberFormat); + method @Deprecated public void setProgressStyle(int); + method @Deprecated public void setSecondaryProgress(int); + method @Deprecated public static android.app.ProgressDialog show(android.content.Context, CharSequence, CharSequence); + method @Deprecated public static android.app.ProgressDialog show(android.content.Context, CharSequence, CharSequence, boolean); + method @Deprecated public static android.app.ProgressDialog show(android.content.Context, CharSequence, CharSequence, boolean, boolean); + method @Deprecated public static android.app.ProgressDialog show(android.content.Context, CharSequence, CharSequence, boolean, boolean, android.content.DialogInterface.OnCancelListener); + field @Deprecated public static final int STYLE_HORIZONTAL = 1; // 0x1 + field @Deprecated public static final int STYLE_SPINNER = 0; // 0x0 + } + + public final class RecoverableSecurityException extends java.lang.SecurityException implements android.os.Parcelable { + ctor public RecoverableSecurityException(@NonNull Throwable, @NonNull CharSequence, @NonNull android.app.RemoteAction); + method public int describeContents(); + method @NonNull public android.app.RemoteAction getUserAction(); + method @NonNull public CharSequence getUserMessage(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class RemoteAction implements android.os.Parcelable { + ctor public RemoteAction(@NonNull android.graphics.drawable.Icon, @NonNull CharSequence, @NonNull CharSequence, @NonNull android.app.PendingIntent); + method public android.app.RemoteAction clone(); + method public int describeContents(); + method public void dump(String, java.io.PrintWriter); + method @NonNull public android.app.PendingIntent getActionIntent(); + method @NonNull public CharSequence getContentDescription(); + method @NonNull public android.graphics.drawable.Icon getIcon(); + method @NonNull public CharSequence getTitle(); + method public boolean isEnabled(); + method public void setEnabled(boolean); + method public void setShouldShowIcon(boolean); + method public boolean shouldShowIcon(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class RemoteInput implements android.os.Parcelable { + method public static void addDataResultToIntent(android.app.RemoteInput, android.content.Intent, java.util.Map); + method public static void addResultsToIntent(android.app.RemoteInput[], android.content.Intent, android.os.Bundle); + method public int describeContents(); + method public boolean getAllowFreeFormInput(); + method public java.util.Set getAllowedDataTypes(); + method public CharSequence[] getChoices(); + method public static java.util.Map getDataResultsFromIntent(android.content.Intent, String); + method public int getEditChoicesBeforeSending(); + method public android.os.Bundle getExtras(); + method public CharSequence getLabel(); + method public String getResultKey(); + method public static android.os.Bundle getResultsFromIntent(android.content.Intent); + method public static int getResultsSource(android.content.Intent); + method public boolean isDataOnly(); + method public static void setResultsSource(android.content.Intent, int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int EDIT_CHOICES_BEFORE_SENDING_AUTO = 0; // 0x0 + field public static final int EDIT_CHOICES_BEFORE_SENDING_DISABLED = 1; // 0x1 + field public static final int EDIT_CHOICES_BEFORE_SENDING_ENABLED = 2; // 0x2 + field public static final String EXTRA_RESULTS_DATA = "android.remoteinput.resultsData"; + field public static final String RESULTS_CLIP_LABEL = "android.remoteinput.results"; + field public static final int SOURCE_CHOICE = 1; // 0x1 + field public static final int SOURCE_FREE_FORM_INPUT = 0; // 0x0 + } + + public static final class RemoteInput.Builder { + ctor public RemoteInput.Builder(@NonNull String); + method @NonNull public android.app.RemoteInput.Builder addExtras(@NonNull android.os.Bundle); + method @NonNull public android.app.RemoteInput build(); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public android.app.RemoteInput.Builder setAllowDataType(@NonNull String, boolean); + method @NonNull public android.app.RemoteInput.Builder setAllowFreeFormInput(boolean); + method @NonNull public android.app.RemoteInput.Builder setChoices(@Nullable CharSequence[]); + method @NonNull public android.app.RemoteInput.Builder setEditChoicesBeforeSending(int); + method @NonNull public android.app.RemoteInput.Builder setLabel(@Nullable CharSequence); + } + + public class SearchManager implements android.content.DialogInterface.OnCancelListener android.content.DialogInterface.OnDismissListener { + method public android.content.ComponentName getGlobalSearchActivity(); + method public android.app.SearchableInfo getSearchableInfo(android.content.ComponentName); + method public java.util.List getSearchablesInGlobalSearch(); + method @Deprecated public void onCancel(android.content.DialogInterface); + method @Deprecated public void onDismiss(android.content.DialogInterface); + method public void setOnCancelListener(android.app.SearchManager.OnCancelListener); + method public void setOnDismissListener(android.app.SearchManager.OnDismissListener); + method public void startSearch(String, boolean, android.content.ComponentName, android.os.Bundle, boolean); + method public void stopSearch(); + method public void triggerSearch(String, android.content.ComponentName, android.os.Bundle); + field public static final String ACTION_KEY = "action_key"; + field public static final String ACTION_MSG = "action_msg"; + field public static final String APP_DATA = "app_data"; + field public static final String CURSOR_EXTRA_KEY_IN_PROGRESS = "in_progress"; + field public static final String EXTRA_DATA_KEY = "intent_extra_data_key"; + field public static final String EXTRA_NEW_SEARCH = "new_search"; + field public static final String EXTRA_SELECT_QUERY = "select_query"; + field public static final String EXTRA_WEB_SEARCH_PENDINGINTENT = "web_search_pendingintent"; + field public static final int FLAG_QUERY_REFINEMENT = 1; // 0x1 + field public static final String INTENT_ACTION_GLOBAL_SEARCH = "android.search.action.GLOBAL_SEARCH"; + field public static final String INTENT_ACTION_SEARCHABLES_CHANGED = "android.search.action.SEARCHABLES_CHANGED"; + field public static final String INTENT_ACTION_SEARCH_SETTINGS = "android.search.action.SEARCH_SETTINGS"; + field public static final String INTENT_ACTION_SEARCH_SETTINGS_CHANGED = "android.search.action.SETTINGS_CHANGED"; + field public static final String INTENT_ACTION_WEB_SEARCH_SETTINGS = "android.search.action.WEB_SEARCH_SETTINGS"; + field public static final String INTENT_GLOBAL_SEARCH_ACTIVITY_CHANGED = "android.search.action.GLOBAL_SEARCH_ACTIVITY_CHANGED"; + field public static final char MENU_KEY = 115; // 0x0073 's' + field public static final int MENU_KEYCODE = 47; // 0x2f + field public static final String QUERY = "query"; + field public static final String SHORTCUT_MIME_TYPE = "vnd.android.cursor.item/vnd.android.search.suggest"; + field public static final String SUGGEST_COLUMN_AUDIO_CHANNEL_CONFIG = "suggest_audio_channel_config"; + field public static final String SUGGEST_COLUMN_CONTENT_TYPE = "suggest_content_type"; + field public static final String SUGGEST_COLUMN_DURATION = "suggest_duration"; + field public static final String SUGGEST_COLUMN_FLAGS = "suggest_flags"; + field public static final String SUGGEST_COLUMN_FORMAT = "suggest_format"; + field public static final String SUGGEST_COLUMN_ICON_1 = "suggest_icon_1"; + field public static final String SUGGEST_COLUMN_ICON_2 = "suggest_icon_2"; + field public static final String SUGGEST_COLUMN_INTENT_ACTION = "suggest_intent_action"; + field public static final String SUGGEST_COLUMN_INTENT_DATA = "suggest_intent_data"; + field public static final String SUGGEST_COLUMN_INTENT_DATA_ID = "suggest_intent_data_id"; + field public static final String SUGGEST_COLUMN_INTENT_EXTRA_DATA = "suggest_intent_extra_data"; + field public static final String SUGGEST_COLUMN_IS_LIVE = "suggest_is_live"; + field public static final String SUGGEST_COLUMN_LAST_ACCESS_HINT = "suggest_last_access_hint"; + field public static final String SUGGEST_COLUMN_PRODUCTION_YEAR = "suggest_production_year"; + field public static final String SUGGEST_COLUMN_PURCHASE_PRICE = "suggest_purchase_price"; + field public static final String SUGGEST_COLUMN_QUERY = "suggest_intent_query"; + field public static final String SUGGEST_COLUMN_RATING_SCORE = "suggest_rating_score"; + field public static final String SUGGEST_COLUMN_RATING_STYLE = "suggest_rating_style"; + field public static final String SUGGEST_COLUMN_RENTAL_PRICE = "suggest_rental_price"; + field public static final String SUGGEST_COLUMN_RESULT_CARD_IMAGE = "suggest_result_card_image"; + field public static final String SUGGEST_COLUMN_SHORTCUT_ID = "suggest_shortcut_id"; + field public static final String SUGGEST_COLUMN_SPINNER_WHILE_REFRESHING = "suggest_spinner_while_refreshing"; + field public static final String SUGGEST_COLUMN_TEXT_1 = "suggest_text_1"; + field public static final String SUGGEST_COLUMN_TEXT_2 = "suggest_text_2"; + field public static final String SUGGEST_COLUMN_TEXT_2_URL = "suggest_text_2_url"; + field public static final String SUGGEST_COLUMN_VIDEO_HEIGHT = "suggest_video_height"; + field public static final String SUGGEST_COLUMN_VIDEO_WIDTH = "suggest_video_width"; + field public static final String SUGGEST_MIME_TYPE = "vnd.android.cursor.dir/vnd.android.search.suggest"; + field public static final String SUGGEST_NEVER_MAKE_SHORTCUT = "_-1"; + field public static final String SUGGEST_PARAMETER_LIMIT = "limit"; + field public static final String SUGGEST_URI_PATH_QUERY = "search_suggest_query"; + field public static final String SUGGEST_URI_PATH_SHORTCUT = "search_suggest_shortcut"; + field public static final String USER_QUERY = "user_query"; + } + + public static interface SearchManager.OnCancelListener { + method public void onCancel(); + } + + public static interface SearchManager.OnDismissListener { + method public void onDismiss(); + } + + public final class SearchableInfo implements android.os.Parcelable { + method public boolean autoUrlDetect(); + method public int describeContents(); + method public int getHintId(); + method public int getImeOptions(); + method public int getInputType(); + method public android.content.ComponentName getSearchActivity(); + method public int getSettingsDescriptionId(); + method public String getSuggestAuthority(); + method public String getSuggestIntentAction(); + method public String getSuggestIntentData(); + method public String getSuggestPackage(); + method public String getSuggestPath(); + method public String getSuggestSelection(); + method public int getSuggestThreshold(); + method @StringRes public int getVoiceLanguageId(); + method @StringRes public int getVoiceLanguageModeId(); + method public int getVoiceMaxResults(); + method @StringRes public int getVoicePromptTextId(); + method public boolean getVoiceSearchEnabled(); + method public boolean getVoiceSearchLaunchRecognizer(); + method public boolean getVoiceSearchLaunchWebSearch(); + method public boolean queryAfterZeroResults(); + method public boolean shouldIncludeInGlobalSearch(); + method public boolean shouldRewriteQueryFromData(); + method public boolean shouldRewriteQueryFromText(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class Service extends android.content.ContextWrapper implements android.content.ComponentCallbacks2 { + ctor public Service(); + method protected void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]); + method public final android.app.Application getApplication(); + method public final int getForegroundServiceType(); + method @Nullable public abstract android.os.IBinder onBind(android.content.Intent); + method public void onConfigurationChanged(android.content.res.Configuration); + method public void onCreate(); + method public void onDestroy(); + method public void onLowMemory(); + method public void onRebind(android.content.Intent); + method @Deprecated public void onStart(android.content.Intent, int); + method public int onStartCommand(android.content.Intent, int, int); + method public void onTaskRemoved(android.content.Intent); + method public void onTimeout(int); + method @FlaggedApi("android.app.introduce_new_service_ontimeout_callback") public void onTimeout(int, int); + method public void onTrimMemory(int); + method public boolean onUnbind(android.content.Intent); + method public final void startForeground(int, android.app.Notification); + method public final void startForeground(int, @NonNull android.app.Notification, @RequiresPermission int); + method @Deprecated public final void stopForeground(boolean); + method public final void stopForeground(int); + method public final void stopSelf(); + method public final void stopSelf(int); + method public final boolean stopSelfResult(int); + field public static final int START_CONTINUATION_MASK = 15; // 0xf + field public static final int START_FLAG_REDELIVERY = 1; // 0x1 + field public static final int START_FLAG_RETRY = 2; // 0x2 + field public static final int START_NOT_STICKY = 2; // 0x2 + field public static final int START_REDELIVER_INTENT = 3; // 0x3 + field public static final int START_STICKY = 1; // 0x1 + field public static final int START_STICKY_COMPATIBILITY = 0; // 0x0 + field public static final int STOP_FOREGROUND_DETACH = 2; // 0x2 + field @Deprecated public static final int STOP_FOREGROUND_LEGACY = 0; // 0x0 + field public static final int STOP_FOREGROUND_REMOVE = 1; // 0x1 + } + + public abstract class ServiceStartNotAllowedException extends java.lang.IllegalStateException { + } + + public abstract class SharedElementCallback { + ctor public SharedElementCallback(); + method public android.os.Parcelable onCaptureSharedElementSnapshot(android.view.View, android.graphics.Matrix, android.graphics.RectF); + method public android.view.View onCreateSnapshotView(android.content.Context, android.os.Parcelable); + method public void onMapSharedElements(java.util.List, java.util.Map); + method public void onRejectSharedElements(java.util.List); + method public void onSharedElementEnd(java.util.List, java.util.List, java.util.List); + method public void onSharedElementStart(java.util.List, java.util.List, java.util.List); + method public void onSharedElementsArrived(java.util.List, java.util.List, android.app.SharedElementCallback.OnSharedElementsReadyListener); + } + + public static interface SharedElementCallback.OnSharedElementsReadyListener { + method public void onSharedElementsReady(); + } + + public final class StartForegroundCalledOnStoppedServiceException extends java.lang.IllegalStateException implements android.os.Parcelable { + ctor public StartForegroundCalledOnStoppedServiceException(@NonNull String); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class StatusBarManager { + method @RequiresPermission(android.Manifest.permission.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE) public boolean canLaunchCaptureContentActivityForNote(@NonNull android.app.Activity); + method public void requestAddTileService(@NonNull android.content.ComponentName, @NonNull CharSequence, @NonNull android.graphics.drawable.Icon, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + field public static final int TILE_ADD_REQUEST_ERROR_APP_NOT_IN_FOREGROUND = 1004; // 0x3ec + field public static final int TILE_ADD_REQUEST_ERROR_BAD_COMPONENT = 1002; // 0x3ea + field public static final int TILE_ADD_REQUEST_ERROR_MISMATCHED_PACKAGE = 1000; // 0x3e8 + field public static final int TILE_ADD_REQUEST_ERROR_NOT_CURRENT_USER = 1003; // 0x3eb + field public static final int TILE_ADD_REQUEST_ERROR_NO_STATUS_BAR_SERVICE = 1005; // 0x3ed + field public static final int TILE_ADD_REQUEST_ERROR_REQUEST_IN_PROGRESS = 1001; // 0x3e9 + field public static final int TILE_ADD_REQUEST_RESULT_TILE_ADDED = 2; // 0x2 + field public static final int TILE_ADD_REQUEST_RESULT_TILE_ALREADY_ADDED = 1; // 0x1 + field public static final int TILE_ADD_REQUEST_RESULT_TILE_NOT_ADDED = 0; // 0x0 + } + + public final class SyncNotedAppOp implements android.os.Parcelable { + ctor public SyncNotedAppOp(@IntRange(from=0L) int, @Nullable String); + method public int describeContents(); + method @Nullable public String getAttributionTag(); + method @NonNull public String getOp(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @Deprecated public class TabActivity extends android.app.ActivityGroup { + ctor @Deprecated public TabActivity(); + method @Deprecated public android.widget.TabHost getTabHost(); + method @Deprecated public android.widget.TabWidget getTabWidget(); + method @Deprecated public void setDefaultTab(String); + method @Deprecated public void setDefaultTab(int); + } + + public class TaskInfo { + method public boolean isVisible(); + field @Nullable public android.content.ComponentName baseActivity; + field @NonNull public android.content.Intent baseIntent; + field public boolean isRunning; + field public int numActivities; + field @Nullable public android.content.ComponentName origActivity; + field @Nullable public android.app.ActivityManager.TaskDescription taskDescription; + field public int taskId; + field @Nullable public android.content.ComponentName topActivity; + } + + public class TaskStackBuilder { + method public android.app.TaskStackBuilder addNextIntent(android.content.Intent); + method public android.app.TaskStackBuilder addNextIntentWithParentStack(android.content.Intent); + method public android.app.TaskStackBuilder addParentStack(android.app.Activity); + method public android.app.TaskStackBuilder addParentStack(Class); + method public android.app.TaskStackBuilder addParentStack(android.content.ComponentName); + method public static android.app.TaskStackBuilder create(android.content.Context); + method public android.content.Intent editIntentAt(int); + method public int getIntentCount(); + method @NonNull public android.content.Intent[] getIntents(); + method public android.app.PendingIntent getPendingIntent(int, int); + method public android.app.PendingIntent getPendingIntent(int, int, android.os.Bundle); + method public void startActivities(); + method public void startActivities(android.os.Bundle); + } + + public class TimePickerDialog extends android.app.AlertDialog implements android.content.DialogInterface.OnClickListener android.widget.TimePicker.OnTimeChangedListener { + ctor public TimePickerDialog(android.content.Context, android.app.TimePickerDialog.OnTimeSetListener, int, int, boolean); + ctor public TimePickerDialog(android.content.Context, int, android.app.TimePickerDialog.OnTimeSetListener, int, int, boolean); + method public void onClick(android.content.DialogInterface, int); + method public void onTimeChanged(android.widget.TimePicker, int, int); + method public void updateTime(int, int); + } + + public static interface TimePickerDialog.OnTimeSetListener { + method public void onTimeSet(android.widget.TimePicker, int, int); + } + + public final class UiAutomation { + method public void adoptShellPermissionIdentity(); + method public void adoptShellPermissionIdentity(@Nullable java.lang.String...); + method public boolean clearCache(); + method @Deprecated public void clearWindowAnimationFrameStats(); + method public boolean clearWindowContentFrameStats(int); + method public void dropShellPermissionIdentity(); + method public android.view.accessibility.AccessibilityEvent executeAndWaitForEvent(Runnable, android.app.UiAutomation.AccessibilityEventFilter, long) throws java.util.concurrent.TimeoutException; + method public android.os.ParcelFileDescriptor executeShellCommand(String); + method @NonNull public android.os.ParcelFileDescriptor[] executeShellCommandRw(@NonNull String); + method @NonNull public android.os.ParcelFileDescriptor[] executeShellCommandRwe(@NonNull String); + method public android.view.accessibility.AccessibilityNodeInfo findFocus(int); + method public android.view.accessibility.AccessibilityNodeInfo getRootInActiveWindow(); + method public android.accessibilityservice.AccessibilityServiceInfo getServiceInfo(); + method @Deprecated public android.view.WindowAnimationFrameStats getWindowAnimationFrameStats(); + method public android.view.WindowContentFrameStats getWindowContentFrameStats(int); + method public java.util.List getWindows(); + method @NonNull public android.util.SparseArray> getWindowsOnAllDisplays(); + method public void grantRuntimePermission(String, String); + method public void grantRuntimePermissionAsUser(String, String, android.os.UserHandle); + method public boolean injectInputEvent(android.view.InputEvent, boolean); + method public boolean performGlobalAction(int); + method public void revokeRuntimePermission(String, String); + method public void revokeRuntimePermissionAsUser(String, String, android.os.UserHandle); + method public void setAnimationScale(float); + method public void setOnAccessibilityEventListener(android.app.UiAutomation.OnAccessibilityEventListener); + method public boolean setRotation(int); + method public void setRunAsMonkey(boolean); + method public void setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo); + method public android.graphics.Bitmap takeScreenshot(); + method @Nullable public android.graphics.Bitmap takeScreenshot(@NonNull android.view.Window); + method public void waitForIdle(long, long) throws java.util.concurrent.TimeoutException; + field public static final int FLAG_DONT_SUPPRESS_ACCESSIBILITY_SERVICES = 1; // 0x1 + field public static final int FLAG_DONT_USE_ACCESSIBILITY = 2; // 0x2 + field public static final int ROTATION_FREEZE_0 = 0; // 0x0 + field public static final int ROTATION_FREEZE_180 = 2; // 0x2 + field public static final int ROTATION_FREEZE_270 = 3; // 0x3 + field public static final int ROTATION_FREEZE_90 = 1; // 0x1 + field public static final int ROTATION_FREEZE_CURRENT = -1; // 0xffffffff + field public static final int ROTATION_UNFREEZE = -2; // 0xfffffffe + } + + public static interface UiAutomation.AccessibilityEventFilter { + method public boolean accept(android.view.accessibility.AccessibilityEvent); + } + + public static interface UiAutomation.OnAccessibilityEventListener { + method public void onAccessibilityEvent(android.view.accessibility.AccessibilityEvent); + } + + public class UiModeManager { + method public void addContrastChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.app.UiModeManager.ContrastChangeListener); + method public void disableCarMode(int); + method public void enableCarMode(int); + method @FloatRange(from=-1.0F, to=1.0f) public float getContrast(); + method public int getCurrentModeType(); + method @NonNull public java.time.LocalTime getCustomNightModeEnd(); + method @NonNull public java.time.LocalTime getCustomNightModeStart(); + method public int getNightMode(); + method public void removeContrastChangeListener(@NonNull android.app.UiModeManager.ContrastChangeListener); + method public void setApplicationNightMode(int); + method public void setCustomNightModeEnd(@NonNull java.time.LocalTime); + method public void setCustomNightModeStart(@NonNull java.time.LocalTime); + method public void setNightMode(int); + field public static String ACTION_ENTER_CAR_MODE; + field public static String ACTION_ENTER_DESK_MODE; + field public static String ACTION_EXIT_CAR_MODE; + field public static String ACTION_EXIT_DESK_MODE; + field public static final int DISABLE_CAR_MODE_GO_HOME = 1; // 0x1 + field public static final int ENABLE_CAR_MODE_ALLOW_SLEEP = 2; // 0x2 + field public static final int ENABLE_CAR_MODE_GO_CAR_HOME = 1; // 0x1 + field public static final int MODE_NIGHT_AUTO = 0; // 0x0 + field public static final int MODE_NIGHT_CUSTOM = 3; // 0x3 + field public static final int MODE_NIGHT_NO = 1; // 0x1 + field public static final int MODE_NIGHT_YES = 2; // 0x2 + } + + public static interface UiModeManager.ContrastChangeListener { + method public void onContrastChanged(@FloatRange(from=-1.0F, to=1.0f) float); + } + + public final class VoiceInteractor { + method public android.app.VoiceInteractor.Request getActiveRequest(String); + method public android.app.VoiceInteractor.Request[] getActiveRequests(); + method @NonNull public String getPackageName(); + method public boolean isDestroyed(); + method public void notifyDirectActionsChanged(); + method public boolean registerOnDestroyedCallback(@NonNull java.util.concurrent.Executor, @NonNull Runnable); + method public boolean submitRequest(android.app.VoiceInteractor.Request); + method public boolean submitRequest(android.app.VoiceInteractor.Request, String); + method public boolean[] supportsCommands(String[]); + method public boolean unregisterOnDestroyedCallback(@NonNull Runnable); + } + + public static class VoiceInteractor.AbortVoiceRequest extends android.app.VoiceInteractor.Request { + ctor public VoiceInteractor.AbortVoiceRequest(@Nullable android.app.VoiceInteractor.Prompt, @Nullable android.os.Bundle); + method public void onAbortResult(android.os.Bundle); + } + + public static class VoiceInteractor.CommandRequest extends android.app.VoiceInteractor.Request { + ctor public VoiceInteractor.CommandRequest(String, android.os.Bundle); + method public void onCommandResult(boolean, android.os.Bundle); + } + + public static class VoiceInteractor.CompleteVoiceRequest extends android.app.VoiceInteractor.Request { + ctor public VoiceInteractor.CompleteVoiceRequest(@Nullable android.app.VoiceInteractor.Prompt, @Nullable android.os.Bundle); + method public void onCompleteResult(android.os.Bundle); + } + + public static class VoiceInteractor.ConfirmationRequest extends android.app.VoiceInteractor.Request { + ctor public VoiceInteractor.ConfirmationRequest(@Nullable android.app.VoiceInteractor.Prompt, @Nullable android.os.Bundle); + method public void onConfirmationResult(boolean, android.os.Bundle); + } + + public static class VoiceInteractor.PickOptionRequest extends android.app.VoiceInteractor.Request { + ctor public VoiceInteractor.PickOptionRequest(@Nullable android.app.VoiceInteractor.Prompt, android.app.VoiceInteractor.PickOptionRequest.Option[], @Nullable android.os.Bundle); + method public void onPickOptionResult(boolean, android.app.VoiceInteractor.PickOptionRequest.Option[], android.os.Bundle); + } + + public static final class VoiceInteractor.PickOptionRequest.Option implements android.os.Parcelable { + ctor public VoiceInteractor.PickOptionRequest.Option(CharSequence, int); + method public android.app.VoiceInteractor.PickOptionRequest.Option addSynonym(CharSequence); + method public int countSynonyms(); + method public int describeContents(); + method public android.os.Bundle getExtras(); + method public int getIndex(); + method public CharSequence getLabel(); + method public CharSequence getSynonymAt(int); + method public void setExtras(android.os.Bundle); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class VoiceInteractor.Prompt implements android.os.Parcelable { + ctor public VoiceInteractor.Prompt(@NonNull CharSequence[], @NonNull CharSequence); + ctor public VoiceInteractor.Prompt(@NonNull CharSequence); + method public int countVoicePrompts(); + method public int describeContents(); + method @NonNull public CharSequence getVisualPrompt(); + method @NonNull public CharSequence getVoicePromptAt(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract static class VoiceInteractor.Request { + method public void cancel(); + method public android.app.Activity getActivity(); + method public android.content.Context getContext(); + method public String getName(); + method public void onAttached(android.app.Activity); + method public void onCancel(); + method public void onDetached(); + } + + public final class WallpaperColors implements android.os.Parcelable { + ctor public WallpaperColors(android.os.Parcel); + ctor public WallpaperColors(@NonNull android.graphics.Color, @Nullable android.graphics.Color, @Nullable android.graphics.Color); + ctor public WallpaperColors(@NonNull android.graphics.Color, @Nullable android.graphics.Color, @Nullable android.graphics.Color, int); + method public int describeContents(); + method public static android.app.WallpaperColors fromBitmap(@NonNull android.graphics.Bitmap); + method public static android.app.WallpaperColors fromDrawable(android.graphics.drawable.Drawable); + method public int getColorHints(); + method @NonNull public android.graphics.Color getPrimaryColor(); + method @Nullable public android.graphics.Color getSecondaryColor(); + method @Nullable public android.graphics.Color getTertiaryColor(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int HINT_SUPPORTS_DARK_TEXT = 1; // 0x1 + field public static final int HINT_SUPPORTS_DARK_THEME = 2; // 0x2 + } + + public final class WallpaperInfo implements android.os.Parcelable { + ctor public WallpaperInfo(android.content.Context, android.content.pm.ResolveInfo) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public int describeContents(); + method public void dump(android.util.Printer, String); + method public android.content.ComponentName getComponent(); + method public String getPackageName(); + method public android.content.pm.ServiceInfo getServiceInfo(); + method public String getServiceName(); + method public String getSettingsActivity(); + method @Nullable public android.net.Uri getSettingsSliceUri(); + method public boolean getShowMetadataInPreview(); + method public CharSequence loadAuthor(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; + method public CharSequence loadContextDescription(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; + method public android.net.Uri loadContextUri(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; + method public CharSequence loadDescription(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; + method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); + method public CharSequence loadLabel(android.content.pm.PackageManager); + method public android.graphics.drawable.Drawable loadThumbnail(android.content.pm.PackageManager); + method public boolean shouldUseDefaultUnfoldTransition(); + method public boolean supportsMultipleDisplays(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class WallpaperManager { + method public void addOnColorsChangedListener(@NonNull android.app.WallpaperManager.OnColorsChangedListener, @NonNull android.os.Handler); + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void clear() throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void clear(int) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void clearWallpaper(); + method public void clearWallpaperOffsets(android.os.IBinder); + method public void forgetLoadedWallpaper(); + method public android.graphics.drawable.Drawable getBuiltInDrawable(); + method public android.graphics.drawable.Drawable getBuiltInDrawable(int); + method public android.graphics.drawable.Drawable getBuiltInDrawable(int, int, boolean, float, float); + method public android.graphics.drawable.Drawable getBuiltInDrawable(int, int, boolean, float, float, int); + method public android.content.Intent getCropAndSetWallpaperIntent(android.net.Uri); + method public int getDesiredMinimumHeight(); + method public int getDesiredMinimumWidth(); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable getDrawable(); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable getDrawable(int); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable getFastDrawable(); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable getFastDrawable(int); + method public static android.app.WallpaperManager getInstance(android.content.Context); + method @Nullable public android.app.WallpaperColors getWallpaperColors(int); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.os.ParcelFileDescriptor getWallpaperFile(int); + method public int getWallpaperId(int); + method @RequiresPermission(value="QUERY_ALL_PACKAGES", conditional=true) public android.app.WallpaperInfo getWallpaperInfo(); + method @Nullable public android.app.WallpaperInfo getWallpaperInfo(int); + method public boolean hasResourceWallpaper(@RawRes int); + method public boolean isSetWallpaperAllowed(); + method public boolean isWallpaperSupported(); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable peekDrawable(); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable peekDrawable(int); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable peekFastDrawable(); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_EXTERNAL_STORAGE, "android.permission.READ_WALLPAPER_INTERNAL"}) public android.graphics.drawable.Drawable peekFastDrawable(int); + method public void removeOnColorsChangedListener(@NonNull android.app.WallpaperManager.OnColorsChangedListener); + method @RequiresPermission(value="android.permission.ALWAYS_UPDATE_WALLPAPER", conditional=true) public void sendWallpaperCommand(android.os.IBinder, String, int, int, int, android.os.Bundle); + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void setBitmap(android.graphics.Bitmap) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setBitmap(android.graphics.Bitmap, android.graphics.Rect, boolean) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setBitmap(android.graphics.Bitmap, android.graphics.Rect, boolean, int) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER_HINTS) public void setDisplayPadding(android.graphics.Rect); + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void setResource(@RawRes int) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setResource(@RawRes int, int) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public void setStream(java.io.InputStream) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setStream(java.io.InputStream, android.graphics.Rect, boolean) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.SET_WALLPAPER) public int setStream(java.io.InputStream, android.graphics.Rect, boolean, int) throws java.io.IOException; + method public void setWallpaperOffsetSteps(float, float); + method public void setWallpaperOffsets(android.os.IBinder, float, float); + method public void suggestDesiredDimensions(int, int); + field public static final String ACTION_CHANGE_LIVE_WALLPAPER = "android.service.wallpaper.CHANGE_LIVE_WALLPAPER"; + field public static final String ACTION_CROP_AND_SET_WALLPAPER = "android.service.wallpaper.CROP_AND_SET_WALLPAPER"; + field public static final String ACTION_LIVE_WALLPAPER_CHOOSER = "android.service.wallpaper.LIVE_WALLPAPER_CHOOSER"; + field public static final String COMMAND_DROP = "android.home.drop"; + field public static final String COMMAND_SECONDARY_TAP = "android.wallpaper.secondaryTap"; + field public static final String COMMAND_TAP = "android.wallpaper.tap"; + field public static final String EXTRA_LIVE_WALLPAPER_COMPONENT = "android.service.wallpaper.extra.LIVE_WALLPAPER_COMPONENT"; + field public static final int FLAG_LOCK = 2; // 0x2 + field public static final int FLAG_SYSTEM = 1; // 0x1 + field public static final String WALLPAPER_PREVIEW_META_DATA = "android.wallpaper.preview"; + } + + public static interface WallpaperManager.OnColorsChangedListener { + method public void onColorsChanged(@Nullable android.app.WallpaperColors, int); + } + + public interface ZygotePreload { + method public void doPreload(@NonNull android.content.pm.ApplicationInfo); + } + +} + +package android.app.admin { + + public final class ConnectEvent extends android.app.admin.NetworkEvent implements android.os.Parcelable { + method public java.net.InetAddress getInetAddress(); + method public int getPort(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class DelegatedAdminReceiver extends android.content.BroadcastReceiver { + ctor public DelegatedAdminReceiver(); + method @Nullable public String onChoosePrivateKeyAlias(@NonNull android.content.Context, @NonNull android.content.Intent, int, @Nullable android.net.Uri, @Nullable String); + method public void onNetworkLogsAvailable(@NonNull android.content.Context, @NonNull android.content.Intent, long, @IntRange(from=1) int); + method public final void onReceive(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onSecurityLogsAvailable(@NonNull android.content.Context, @NonNull android.content.Intent); + } + + public final class DeviceAdminInfo implements android.os.Parcelable { + ctor public DeviceAdminInfo(android.content.Context, android.content.pm.ResolveInfo) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public int describeContents(); + method public void dump(android.util.Printer, String); + method public android.content.pm.ActivityInfo getActivityInfo(); + method @NonNull public android.content.ComponentName getComponent(); + method public int getHeadlessDeviceOwnerMode(); + method public String getPackageName(); + method public String getReceiverName(); + method public String getTagForPolicy(int); + method public boolean isVisible(); + method public CharSequence loadDescription(android.content.pm.PackageManager) throws android.content.res.Resources.NotFoundException; + method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); + method public CharSequence loadLabel(android.content.pm.PackageManager); + method public boolean supportsTransferOwnership(); + method public boolean usesPolicy(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int HEADLESS_DEVICE_OWNER_MODE_AFFILIATED = 1; // 0x1 + field public static final int HEADLESS_DEVICE_OWNER_MODE_SINGLE_USER = 2; // 0x2 + field public static final int HEADLESS_DEVICE_OWNER_MODE_UNSUPPORTED = 0; // 0x0 + field public static final int USES_ENCRYPTED_STORAGE = 7; // 0x7 + field public static final int USES_POLICY_DISABLE_CAMERA = 8; // 0x8 + field public static final int USES_POLICY_DISABLE_KEYGUARD_FEATURES = 9; // 0x9 + field public static final int USES_POLICY_EXPIRE_PASSWORD = 6; // 0x6 + field public static final int USES_POLICY_FORCE_LOCK = 3; // 0x3 + field public static final int USES_POLICY_LIMIT_PASSWORD = 0; // 0x0 + field public static final int USES_POLICY_RESET_PASSWORD = 2; // 0x2 + field public static final int USES_POLICY_WATCH_LOGIN = 1; // 0x1 + field public static final int USES_POLICY_WIPE_DATA = 4; // 0x4 + } + + public class DeviceAdminReceiver extends android.content.BroadcastReceiver { + ctor public DeviceAdminReceiver(); + method @NonNull public android.app.admin.DevicePolicyManager getManager(@NonNull android.content.Context); + method @NonNull public android.content.ComponentName getWho(@NonNull android.content.Context); + method public void onBugreportFailed(@NonNull android.content.Context, @NonNull android.content.Intent, int); + method public void onBugreportShared(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull String); + method public void onBugreportSharingDeclined(@NonNull android.content.Context, @NonNull android.content.Intent); + method @Nullable public String onChoosePrivateKeyAlias(@NonNull android.content.Context, @NonNull android.content.Intent, int, @Nullable android.net.Uri, @Nullable String); + method public void onComplianceAcknowledgementRequired(@NonNull android.content.Context, @NonNull android.content.Intent); + method @Nullable public CharSequence onDisableRequested(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onDisabled(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onEnabled(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onLockTaskModeEntering(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull String); + method public void onLockTaskModeExiting(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onNetworkLogsAvailable(@NonNull android.content.Context, @NonNull android.content.Intent, long, @IntRange(from=1) int); + method public void onOperationSafetyStateChanged(@NonNull android.content.Context, int, boolean); + method @Deprecated public void onPasswordChanged(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onPasswordChanged(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); + method @Deprecated public void onPasswordExpiring(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onPasswordExpiring(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); + method @Deprecated public void onPasswordFailed(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onPasswordFailed(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); + method @Deprecated public void onPasswordSucceeded(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onPasswordSucceeded(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); + method public void onProfileProvisioningComplete(@NonNull android.content.Context, @NonNull android.content.Intent); + method @Deprecated public void onReadyForUserInitialization(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onReceive(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onSecurityLogsAvailable(@NonNull android.content.Context, @NonNull android.content.Intent); + method public void onSystemUpdatePending(@NonNull android.content.Context, @NonNull android.content.Intent, long); + method public void onTransferAffiliatedProfileOwnershipComplete(@NonNull android.content.Context, @NonNull android.os.UserHandle); + method public void onTransferOwnershipComplete(@NonNull android.content.Context, @Nullable android.os.PersistableBundle); + method public void onUserAdded(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); + method public void onUserRemoved(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); + method public void onUserStarted(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); + method public void onUserStopped(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); + method public void onUserSwitched(@NonNull android.content.Context, @NonNull android.content.Intent, @NonNull android.os.UserHandle); + field public static final String ACTION_CHOOSE_PRIVATE_KEY_ALIAS = "android.app.action.CHOOSE_PRIVATE_KEY_ALIAS"; + field public static final String ACTION_DEVICE_ADMIN_DISABLED = "android.app.action.DEVICE_ADMIN_DISABLED"; + field public static final String ACTION_DEVICE_ADMIN_DISABLE_REQUESTED = "android.app.action.DEVICE_ADMIN_DISABLE_REQUESTED"; + field public static final String ACTION_DEVICE_ADMIN_ENABLED = "android.app.action.DEVICE_ADMIN_ENABLED"; + field public static final String ACTION_LOCK_TASK_ENTERING = "android.app.action.LOCK_TASK_ENTERING"; + field public static final String ACTION_LOCK_TASK_EXITING = "android.app.action.LOCK_TASK_EXITING"; + field public static final String ACTION_NETWORK_LOGS_AVAILABLE = "android.app.action.NETWORK_LOGS_AVAILABLE"; + field public static final String ACTION_PASSWORD_CHANGED = "android.app.action.ACTION_PASSWORD_CHANGED"; + field public static final String ACTION_PASSWORD_EXPIRING = "android.app.action.ACTION_PASSWORD_EXPIRING"; + field public static final String ACTION_PASSWORD_FAILED = "android.app.action.ACTION_PASSWORD_FAILED"; + field public static final String ACTION_PASSWORD_SUCCEEDED = "android.app.action.ACTION_PASSWORD_SUCCEEDED"; + field public static final String ACTION_PROFILE_PROVISIONING_COMPLETE = "android.app.action.PROFILE_PROVISIONING_COMPLETE"; + field public static final String ACTION_SECURITY_LOGS_AVAILABLE = "android.app.action.SECURITY_LOGS_AVAILABLE"; + field public static final int BUGREPORT_FAILURE_FAILED_COMPLETING = 0; // 0x0 + field public static final int BUGREPORT_FAILURE_FILE_NO_LONGER_AVAILABLE = 1; // 0x1 + field public static final String DEVICE_ADMIN_META_DATA = "android.app.device_admin"; + field public static final String EXTRA_DISABLE_WARNING = "android.app.extra.DISABLE_WARNING"; + field public static final String EXTRA_LOCK_TASK_PACKAGE = "android.app.extra.LOCK_TASK_PACKAGE"; + field public static final String EXTRA_TRANSFER_OWNERSHIP_ADMIN_EXTRAS_BUNDLE = "android.app.extra.TRANSFER_OWNERSHIP_ADMIN_EXTRAS_BUNDLE"; + } + + public class DeviceAdminService extends android.app.Service { + ctor public DeviceAdminService(); + method public final android.os.IBinder onBind(android.content.Intent); + } + + public final class DevicePolicyIdentifiers { + method @NonNull public static String getIdentifierForUserRestriction(@NonNull String); + field public static final String ACCOUNT_MANAGEMENT_DISABLED_POLICY = "accountManagementDisabled"; + field public static final String APPLICATION_HIDDEN_POLICY = "applicationHidden"; + field public static final String APPLICATION_RESTRICTIONS_POLICY = "applicationRestrictions"; + field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String APP_FUNCTIONS_POLICY = "appFunctions"; + field public static final String AUTO_TIMEZONE_POLICY = "autoTimezone"; + field public static final String AUTO_TIME_POLICY = "autoTime"; + field public static final String BACKUP_SERVICE_POLICY = "backupService"; + field public static final String CAMERA_DISABLED_POLICY = "cameraDisabled"; + field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final String CONTENT_PROTECTION_POLICY = "contentProtection"; + field public static final String KEYGUARD_DISABLED_FEATURES_POLICY = "keyguardDisabledFeatures"; + field public static final String LOCK_TASK_POLICY = "lockTask"; + field @FlaggedApi("android.app.admin.flags.set_mte_policy_coexistence") public static final String MEMORY_TAGGING_POLICY = "memoryTagging"; + field public static final String PACKAGES_SUSPENDED_POLICY = "packagesSuspended"; + field public static final String PACKAGE_UNINSTALL_BLOCKED_POLICY = "packageUninstallBlocked"; + field public static final String PASSWORD_COMPLEXITY_POLICY = "passwordComplexity"; + field public static final String PERMISSION_GRANT_POLICY = "permissionGrant"; + field public static final String PERSISTENT_PREFERRED_ACTIVITY_POLICY = "persistentPreferredActivity"; + field public static final String RESET_PASSWORD_TOKEN_POLICY = "resetPasswordToken"; + field public static final String SECURITY_LOGGING_POLICY = "securityLogging"; + field public static final String STATUS_BAR_DISABLED_POLICY = "statusBarDisabled"; + field public static final String USB_DATA_SIGNALING_POLICY = "usbDataSignaling"; + field public static final String USER_CONTROL_DISABLED_PACKAGES_POLICY = "userControlDisabledPackages"; + } + + public class DevicePolicyManager { + method public void acknowledgeDeviceCompliant(); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public void addCrossProfileIntentFilter(@Nullable android.content.ComponentName, android.content.IntentFilter, int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public boolean addCrossProfileWidgetProvider(@Nullable android.content.ComponentName, String); + method public int addOverrideApn(@NonNull android.content.ComponentName, @NonNull android.telephony.data.ApnSetting); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public void addPersistentPreferredActivity(@Nullable android.content.ComponentName, android.content.IntentFilter, @NonNull android.content.ComponentName); + method public void addUserRestriction(@NonNull android.content.ComponentName, String); + method public void addUserRestrictionGlobally(@NonNull String); + method public boolean bindDeviceAdminServiceAsUser(@NonNull android.content.ComponentName, @NonNull android.content.Intent, @NonNull android.content.ServiceConnection, int, @NonNull android.os.UserHandle); + method public boolean bindDeviceAdminServiceAsUser(@NonNull android.content.ComponentName, @NonNull android.content.Intent, @NonNull android.content.ServiceConnection, @NonNull android.content.Context.BindServiceFlags, @NonNull android.os.UserHandle); + method public boolean canAdminGrantSensorsPermissions(); + method public boolean canUsbDataSignalingBeDisabled(); + method public void clearApplicationUserData(@NonNull android.content.ComponentName, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.app.admin.DevicePolicyManager.OnClearApplicationUserDataListener); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public void clearCrossProfileIntentFilters(@Nullable android.content.ComponentName); + method @Deprecated public void clearDeviceOwnerApp(String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public void clearPackagePersistentPreferredActivities(@Nullable android.content.ComponentName, String); + method @Deprecated public void clearProfileOwner(@NonNull android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD, conditional=true) public boolean clearResetPasswordToken(@Nullable android.content.ComponentName); + method public void clearUserRestriction(@NonNull android.content.ComponentName, String); + method public android.content.Intent createAdminSupportIntent(@NonNull String); + method @Nullable public android.os.UserHandle createAndManageUser(@NonNull android.content.ComponentName, @NonNull String, @NonNull android.content.ComponentName, @Nullable android.os.PersistableBundle, int); + method public void enableSystemApp(@NonNull android.content.ComponentName, String); + method public int enableSystemApp(@NonNull android.content.ComponentName, android.content.Intent); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public android.security.AttestedKeyPair generateKeyPair(@Nullable android.content.ComponentName, @NonNull String, @NonNull android.security.keystore.KeyGenParameterSpec, int); + method @Nullable public String[] getAccountTypesWithManagementDisabled(); + method @Nullable public java.util.List getActiveAdmins(); + method @NonNull public java.util.Set getAffiliationIds(@NonNull android.content.ComponentName); + method @Nullable public java.util.Set getAlwaysOnVpnLockdownWhitelist(@NonNull android.content.ComponentName); + method @Nullable public String getAlwaysOnVpnPackage(@NonNull android.content.ComponentName); + method @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APP_FUNCTIONS, conditional=true) public int getAppFunctionsPolicy(); + method @NonNull @WorkerThread public android.os.Bundle getApplicationRestrictions(@Nullable android.content.ComponentName, String); + method @Deprecated @Nullable public String getApplicationRestrictionsManagingPackage(@NonNull android.content.ComponentName); + method @RequiresPermission(anyOf={android.Manifest.permission.SET_TIME, "android.permission.QUERY_ADMIN_POLICY"}, conditional=true) public boolean getAutoTimeEnabled(@Nullable android.content.ComponentName); + method @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") @RequiresPermission(anyOf={android.Manifest.permission.SET_TIME, "android.permission.QUERY_ADMIN_POLICY"}, conditional=true) public int getAutoTimePolicy(); + method @Deprecated public boolean getAutoTimeRequired(); + method @RequiresPermission(anyOf={android.Manifest.permission.SET_TIME_ZONE, "android.permission.QUERY_ADMIN_POLICY"}, conditional=true) public boolean getAutoTimeZoneEnabled(@Nullable android.content.ComponentName); + method @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") @RequiresPermission(anyOf={android.Manifest.permission.SET_TIME_ZONE, "android.permission.QUERY_ADMIN_POLICY"}, conditional=true) public int getAutoTimeZonePolicy(); + method @NonNull public java.util.List getBindDeviceAdminTargetUsers(@NonNull android.content.ComponentName); + method public boolean getBluetoothContactSharingDisabled(@NonNull android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CAMERA, conditional=true) public boolean getCameraDisabled(@Nullable android.content.ComponentName); + method @Deprecated @Nullable public String getCertInstallerPackage(@NonNull android.content.ComponentName) throws java.lang.SecurityException; + method @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CONTENT_PROTECTION, conditional=true) public int getContentProtectionPolicy(@Nullable android.content.ComponentName); + method @Nullable public android.app.admin.PackagePolicy getCredentialManagerPolicy(); + method @Deprecated @Nullable public java.util.Set getCrossProfileCalendarPackages(@NonNull android.content.ComponentName); + method @Deprecated public boolean getCrossProfileCallerIdDisabled(@NonNull android.content.ComponentName); + method @Deprecated public boolean getCrossProfileContactsSearchDisabled(@NonNull android.content.ComponentName); + method @NonNull public java.util.Set getCrossProfilePackages(@NonNull android.content.ComponentName); + method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public java.util.List getCrossProfileWidgetProviders(@Nullable android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public int getCurrentFailedPasswordAttempts(); + method @Nullable public java.util.List getDelegatePackages(@NonNull android.content.ComponentName, @NonNull String); + method @NonNull public java.util.List getDelegatedScopes(@Nullable android.content.ComponentName, @NonNull String); + method public CharSequence getDeviceOwnerLockScreenInfo(); + method @Nullable public String getDevicePolicyManagementRoleHolderPackage(); + method public CharSequence getEndUserSessionMessage(@NonNull android.content.ComponentName); + method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public String getEnrollmentSpecificId(); + method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_FACTORY_RESET, conditional=true) public android.app.admin.FactoryResetProtectionPolicy getFactoryResetProtectionPolicy(@Nullable android.content.ComponentName); + method @Nullable public String getGlobalPrivateDnsHost(@NonNull android.content.ComponentName); + method public int getGlobalPrivateDnsMode(@NonNull android.content.ComponentName); + method @NonNull public java.util.List getInstalledCaCerts(@Nullable android.content.ComponentName); + method @Nullable public java.util.List getKeepUninstalledPackages(@Nullable android.content.ComponentName); + method @NonNull public java.util.Map> getKeyPairGrants(@NonNull String); + method public int getKeyguardDisabledFeatures(@Nullable android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public int getLockTaskFeatures(@Nullable android.content.ComponentName); + method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public String[] getLockTaskPackages(@Nullable android.content.ComponentName); + method @Nullable public CharSequence getLongSupportMessage(@NonNull android.content.ComponentName); + method @Nullable public android.app.admin.PackagePolicy getManagedProfileCallerIdAccessPolicy(); + method @Nullable public android.app.admin.PackagePolicy getManagedProfileContactsAccessPolicy(); + method public long getManagedProfileMaximumTimeOff(@NonNull android.content.ComponentName); + method @NonNull public android.app.admin.ManagedSubscriptionsPolicy getManagedSubscriptionsPolicy(); + method public int getMaximumFailedPasswordsForWipe(@Nullable android.content.ComponentName); + method public long getMaximumTimeToLock(@Nullable android.content.ComponentName); + method @NonNull public java.util.List getMeteredDataDisabledPackages(@NonNull android.content.ComponentName); + method public int getMinimumRequiredWifiSecurityLevel(); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_MTE, conditional=true) public int getMtePolicy(); + method @RequiresPermission(value=android.Manifest.permission.READ_NEARBY_STREAMING_POLICY, conditional=true) public int getNearbyAppStreamingPolicy(); + method @RequiresPermission(value=android.Manifest.permission.READ_NEARBY_STREAMING_POLICY, conditional=true) public int getNearbyNotificationStreamingPolicy(); + method @Deprecated @ColorInt public int getOrganizationColor(@NonNull android.content.ComponentName); + method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY, conditional=true) public CharSequence getOrganizationName(@Nullable android.content.ComponentName); + method public java.util.List getOverrideApns(@NonNull android.content.ComponentName); + method @NonNull public android.app.admin.DevicePolicyManager getParentProfileInstance(@NonNull android.content.ComponentName); + method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, android.Manifest.permission.REQUEST_PASSWORD_COMPLEXITY}, conditional=true) public int getPasswordComplexity(); + method public long getPasswordExpiration(@Nullable android.content.ComponentName); + method public long getPasswordExpirationTimeout(@Nullable android.content.ComponentName); + method public int getPasswordHistoryLength(@Nullable android.content.ComponentName); + method public int getPasswordMaximumLength(int); + method @Deprecated public int getPasswordMinimumLength(@Nullable android.content.ComponentName); + method @Deprecated public int getPasswordMinimumLetters(@Nullable android.content.ComponentName); + method @Deprecated public int getPasswordMinimumLowerCase(@Nullable android.content.ComponentName); + method @Deprecated public int getPasswordMinimumNonLetter(@Nullable android.content.ComponentName); + method @Deprecated public int getPasswordMinimumNumeric(@Nullable android.content.ComponentName); + method @Deprecated public int getPasswordMinimumSymbols(@Nullable android.content.ComponentName); + method @Deprecated public int getPasswordMinimumUpperCase(@Nullable android.content.ComponentName); + method @Deprecated public int getPasswordQuality(@Nullable android.content.ComponentName); + method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES, conditional=true) public android.app.admin.SystemUpdateInfo getPendingSystemUpdate(@Nullable android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS, conditional=true) public int getPermissionGrantState(@Nullable android.content.ComponentName, @NonNull String, @NonNull String); + method public int getPermissionPolicy(android.content.ComponentName); + method @Nullable public java.util.List getPermittedAccessibilityServices(@NonNull android.content.ComponentName); + method @Nullable public java.util.List getPermittedCrossProfileNotificationListeners(@NonNull android.content.ComponentName); + method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_INPUT_METHODS, conditional=true) public java.util.List getPermittedInputMethods(@Nullable android.content.ComponentName); + method public int getPersonalAppsSuspendedReasons(@NonNull android.content.ComponentName); + method @NonNull public java.util.List getPreferentialNetworkServiceConfigs(); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public int getRequiredPasswordComplexity(); + method public long getRequiredStrongAuthTimeout(@Nullable android.content.ComponentName); + method @NonNull public android.app.admin.DevicePolicyResourcesManager getResources(); + method public boolean getScreenCaptureDisabled(@Nullable android.content.ComponentName); + method public java.util.List getSecondaryUsers(@NonNull android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE, conditional=true) public CharSequence getShortSupportMessage(@Nullable android.content.ComponentName); + method public CharSequence getStartUserSessionMessage(@NonNull android.content.ComponentName); + method @Deprecated public boolean getStorageEncryption(@Nullable android.content.ComponentName); + method public int getStorageEncryptionStatus(); + method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS) public java.util.Set getSubscriptionIds(); + method @Nullable public android.app.admin.SystemUpdatePolicy getSystemUpdatePolicy(); + method @Nullable public android.os.PersistableBundle getTransferOwnershipBundle(); + method @Nullable public java.util.List getTrustAgentConfiguration(@Nullable android.content.ComponentName, @NonNull android.content.ComponentName); + method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL, conditional=true) public java.util.List getUserControlDisabledPackages(@Nullable android.content.ComponentName); + method @NonNull public android.os.Bundle getUserRestrictions(@NonNull android.content.ComponentName); + method @NonNull public android.os.Bundle getUserRestrictionsGlobally(); + method @Nullable public String getWifiMacAddress(@Nullable android.content.ComponentName); + method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public android.app.admin.WifiSsidPolicy getWifiSsidPolicy(); + method public boolean grantKeyPairToApp(@Nullable android.content.ComponentName, @NonNull String, @NonNull String); + method public boolean grantKeyPairToWifiAuth(@NonNull String); + method public boolean hasCaCertInstalled(@Nullable android.content.ComponentName, byte[]); + method public boolean hasGrantedPolicy(@NonNull android.content.ComponentName, int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean hasKeyPair(@NonNull String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public boolean hasLockdownAdminConfiguredNetworks(@Nullable android.content.ComponentName); + method public boolean installCaCert(@Nullable android.content.ComponentName, byte[]); + method public boolean installExistingPackage(@NonNull android.content.ComponentName, String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean installKeyPair(@Nullable android.content.ComponentName, @NonNull java.security.PrivateKey, @NonNull java.security.cert.Certificate, @NonNull String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean installKeyPair(@Nullable android.content.ComponentName, @NonNull java.security.PrivateKey, @NonNull java.security.cert.Certificate[], @NonNull String, boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean installKeyPair(@Nullable android.content.ComponentName, @NonNull java.security.PrivateKey, @NonNull java.security.cert.Certificate[], @NonNull String, int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SYSTEM_UPDATES, conditional=true) public void installSystemUpdate(@Nullable android.content.ComponentName, @NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.app.admin.DevicePolicyManager.InstallSystemUpdateCallback); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public boolean isActivePasswordSufficient(); + method public boolean isActivePasswordSufficientForDeviceRequirement(); + method public boolean isAdminActive(@NonNull android.content.ComponentName); + method public boolean isAffiliatedUser(); + method public boolean isAlwaysOnVpnLockdownEnabled(@NonNull android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE, conditional=true) public boolean isApplicationHidden(@Nullable android.content.ComponentName, String); + method public boolean isBackupServiceEnabled(@NonNull android.content.ComponentName); + method @Deprecated public boolean isCallerApplicationRestrictionsManagingPackage(); + method public boolean isCommonCriteriaModeEnabled(@Nullable android.content.ComponentName); + method public boolean isComplianceAcknowledgementRequired(); + method public boolean isDeviceFinanced(); + method public boolean isDeviceIdAttestationSupported(); + method public boolean isDeviceOwnerApp(String); + method public boolean isEphemeralUser(@NonNull android.content.ComponentName); + method public boolean isKeyPairGrantedToWifiAuth(@NonNull String); + method public boolean isLockTaskPermitted(String); + method public boolean isLogoutEnabled(); + method public boolean isManagedProfile(@NonNull android.content.ComponentName); + method public boolean isMasterVolumeMuted(@NonNull android.content.ComponentName); + method public static boolean isMtePolicyEnforced(); + method public boolean isNetworkLoggingEnabled(@Nullable android.content.ComponentName); + method public boolean isOrganizationOwnedDeviceWithManagedProfile(); + method public boolean isOverrideApnEnabled(@NonNull android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE, conditional=true) public boolean isPackageSuspended(@Nullable android.content.ComponentName, String) throws android.content.pm.PackageManager.NameNotFoundException; + method public boolean isPreferentialNetworkServiceEnabled(); + method public boolean isProfileOwnerApp(String); + method public boolean isProvisioningAllowed(@NonNull String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD, conditional=true) public boolean isResetPasswordTokenActive(@Nullable android.content.ComponentName); + method public boolean isSafeOperation(int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING, conditional=true) public boolean isSecurityLoggingEnabled(@Nullable android.content.ComponentName); + method public boolean isStatusBarDisabled(); + method public boolean isUninstallBlocked(@Nullable android.content.ComponentName, String); + method public boolean isUniqueDeviceAttestationSupported(); + method public boolean isUsbDataSignalingEnabled(); + method public boolean isUsingUnifiedPassword(@NonNull android.content.ComponentName); + method @NonNull public java.util.List listForegroundAffiliatedUsers(); + method @RequiresPermission(value="android.permission.LOCK_DEVICE", conditional=true) public void lockNow(); + method @RequiresPermission(value="android.permission.LOCK_DEVICE", conditional=true) public void lockNow(int); + method public int logoutUser(@NonNull android.content.ComponentName); + method public void reboot(@NonNull android.content.ComponentName); + method public void removeActiveAdmin(@NonNull android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PROFILE_INTERACTION, conditional=true) public boolean removeCrossProfileWidgetProvider(@Nullable android.content.ComponentName, String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean removeKeyPair(@Nullable android.content.ComponentName, @NonNull String); + method public boolean removeOverrideApn(@NonNull android.content.ComponentName, int); + method public boolean removeUser(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); + method public boolean requestBugreport(@NonNull android.content.ComponentName); + method @Deprecated public boolean resetPassword(String, int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD, conditional=true) public boolean resetPasswordWithToken(@Nullable android.content.ComponentName, String, byte[], int); + method @Nullable public java.util.List retrieveNetworkLogs(@Nullable android.content.ComponentName, long); + method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING, conditional=true) public java.util.List retrievePreRebootSecurityLogs(@Nullable android.content.ComponentName); + method @Nullable @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING, conditional=true) public java.util.List retrieveSecurityLogs(@Nullable android.content.ComponentName); + method public boolean revokeKeyPairFromApp(@Nullable android.content.ComponentName, @NonNull String, @NonNull String); + method public boolean revokeKeyPairFromWifiAuth(@NonNull String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT, conditional=true) public void setAccountManagementDisabled(@Nullable android.content.ComponentName, String, boolean); + method public void setAffiliationIds(@NonNull android.content.ComponentName, @NonNull java.util.Set); + method public void setAlwaysOnVpnPackage(@NonNull android.content.ComponentName, @Nullable String, boolean) throws android.content.pm.PackageManager.NameNotFoundException; + method public void setAlwaysOnVpnPackage(@NonNull android.content.ComponentName, @Nullable String, boolean, @Nullable java.util.Set) throws android.content.pm.PackageManager.NameNotFoundException; + method @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APP_FUNCTIONS, conditional=true) public void setAppFunctionsPolicy(int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE, conditional=true) public boolean setApplicationHidden(@Nullable android.content.ComponentName, String, boolean); + method @WorkerThread public void setApplicationRestrictions(@Nullable android.content.ComponentName, String, android.os.Bundle); + method @Deprecated public void setApplicationRestrictionsManagingPackage(@NonNull android.content.ComponentName, @Nullable String) throws android.content.pm.PackageManager.NameNotFoundException; + method @RequiresPermission(value=android.Manifest.permission.SET_TIME, conditional=true) public void setAutoTimeEnabled(@Nullable android.content.ComponentName, boolean); + method @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") @RequiresPermission(value=android.Manifest.permission.SET_TIME, conditional=true) public void setAutoTimePolicy(int); + method @Deprecated public void setAutoTimeRequired(@NonNull android.content.ComponentName, boolean); + method @RequiresPermission(value=android.Manifest.permission.SET_TIME_ZONE, conditional=true) public void setAutoTimeZoneEnabled(@Nullable android.content.ComponentName, boolean); + method @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") @RequiresPermission(value=android.Manifest.permission.SET_TIME_ZONE, conditional=true) public void setAutoTimeZonePolicy(int); + method public void setBackupServiceEnabled(@NonNull android.content.ComponentName, boolean); + method public void setBluetoothContactSharingDisabled(@NonNull android.content.ComponentName, boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CAMERA, conditional=true) public void setCameraDisabled(@Nullable android.content.ComponentName, boolean); + method @Deprecated public void setCertInstallerPackage(@NonNull android.content.ComponentName, @Nullable String) throws java.lang.SecurityException; + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE, conditional=true) public void setCommonCriteriaModeEnabled(@Nullable android.content.ComponentName, boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public void setConfiguredNetworksLockdownState(@Nullable android.content.ComponentName, boolean); + method @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CONTENT_PROTECTION, conditional=true) public void setContentProtectionPolicy(@Nullable android.content.ComponentName, int); + method public void setCredentialManagerPolicy(@Nullable android.app.admin.PackagePolicy); + method @Deprecated public void setCrossProfileCalendarPackages(@NonNull android.content.ComponentName, @Nullable java.util.Set); + method @Deprecated public void setCrossProfileCallerIdDisabled(@NonNull android.content.ComponentName, boolean); + method @Deprecated public void setCrossProfileContactsSearchDisabled(@NonNull android.content.ComponentName, boolean); + method public void setCrossProfilePackages(@NonNull android.content.ComponentName, @NonNull java.util.Set); + method public void setDefaultDialerApplication(@NonNull String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_DEFAULT_SMS, conditional=true) public void setDefaultSmsApplication(@Nullable android.content.ComponentName, @NonNull String); + method public void setDelegatedScopes(@NonNull android.content.ComponentName, @NonNull String, @NonNull java.util.List); + method public void setDeviceOwnerLockScreenInfo(@NonNull android.content.ComponentName, CharSequence); + method public void setEndUserSessionMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_FACTORY_RESET, conditional=true) public void setFactoryResetProtectionPolicy(@Nullable android.content.ComponentName, @Nullable android.app.admin.FactoryResetProtectionPolicy); + method public int setGlobalPrivateDnsModeOpportunistic(@NonNull android.content.ComponentName); + method @WorkerThread public int setGlobalPrivateDnsModeSpecifiedHost(@NonNull android.content.ComponentName, @NonNull String); + method public void setGlobalSetting(@NonNull android.content.ComponentName, String, String); + method public void setKeepUninstalledPackages(@Nullable android.content.ComponentName, @NonNull java.util.List); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_CERTIFICATES, conditional=true) public boolean setKeyPairCertificate(@Nullable android.content.ComponentName, @NonNull String, @NonNull java.util.List, boolean); + method public boolean setKeyguardDisabled(@NonNull android.content.ComponentName, boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_KEYGUARD, conditional=true) public void setKeyguardDisabledFeatures(@Nullable android.content.ComponentName, int); + method public void setLocationEnabled(@NonNull android.content.ComponentName, boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public void setLockTaskFeatures(@Nullable android.content.ComponentName, int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_TASK, conditional=true) public void setLockTaskPackages(@Nullable android.content.ComponentName, @NonNull String[]) throws java.lang.SecurityException; + method public void setLogoutEnabled(@NonNull android.content.ComponentName, boolean); + method public void setLongSupportMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); + method public void setManagedProfileCallerIdAccessPolicy(@Nullable android.app.admin.PackagePolicy); + method public void setManagedProfileContactsAccessPolicy(@Nullable android.app.admin.PackagePolicy); + method public void setManagedProfileMaximumTimeOff(@NonNull android.content.ComponentName, long); + method public void setManagedSubscriptionsPolicy(@Nullable android.app.admin.ManagedSubscriptionsPolicy); + method public void setMasterVolumeMuted(@NonNull android.content.ComponentName, boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIPE_DATA, conditional=true) public void setMaximumFailedPasswordsForWipe(@Nullable android.content.ComponentName, int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK, conditional=true) public void setMaximumTimeToLock(@Nullable android.content.ComponentName, long); + method @NonNull public java.util.List setMeteredDataDisabledPackages(@NonNull android.content.ComponentName, @NonNull java.util.List); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public void setMinimumRequiredWifiSecurityLevel(int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_MTE, conditional=true) public void setMtePolicy(int); + method public void setNearbyAppStreamingPolicy(int); + method public void setNearbyNotificationStreamingPolicy(int); + method public void setNetworkLoggingEnabled(@Nullable android.content.ComponentName, boolean); + method @Deprecated public void setOrganizationColor(@NonNull android.content.ComponentName, int); + method public void setOrganizationId(@NonNull String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_ORGANIZATION_IDENTITY, conditional=true) public void setOrganizationName(@Nullable android.content.ComponentName, @Nullable CharSequence); + method public void setOverrideApnsEnabled(@NonNull android.content.ComponentName, boolean); + method @NonNull @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE, conditional=true) public String[] setPackagesSuspended(@Nullable android.content.ComponentName, @NonNull String[], boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public void setPasswordExpirationTimeout(@Nullable android.content.ComponentName, long); + method public void setPasswordHistoryLength(@NonNull android.content.ComponentName, int); + method @Deprecated public void setPasswordMinimumLength(@NonNull android.content.ComponentName, int); + method @Deprecated public void setPasswordMinimumLetters(@NonNull android.content.ComponentName, int); + method @Deprecated public void setPasswordMinimumLowerCase(@NonNull android.content.ComponentName, int); + method @Deprecated public void setPasswordMinimumNonLetter(@NonNull android.content.ComponentName, int); + method @Deprecated public void setPasswordMinimumNumeric(@NonNull android.content.ComponentName, int); + method @Deprecated public void setPasswordMinimumSymbols(@NonNull android.content.ComponentName, int); + method @Deprecated public void setPasswordMinimumUpperCase(@NonNull android.content.ComponentName, int); + method @Deprecated public void setPasswordQuality(@NonNull android.content.ComponentName, int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS, conditional=true) public boolean setPermissionGrantState(@Nullable android.content.ComponentName, @NonNull String, @NonNull String, int); + method public void setPermissionPolicy(@NonNull android.content.ComponentName, int); + method public boolean setPermittedAccessibilityServices(@NonNull android.content.ComponentName, java.util.List); + method public boolean setPermittedCrossProfileNotificationListeners(@NonNull android.content.ComponentName, @Nullable java.util.List); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_INPUT_METHODS, conditional=true) public boolean setPermittedInputMethods(@Nullable android.content.ComponentName, java.util.List); + method public void setPersonalAppsSuspended(@NonNull android.content.ComponentName, boolean); + method public void setPreferentialNetworkServiceConfigs(@NonNull java.util.List); + method public void setPreferentialNetworkServiceEnabled(boolean); + method public void setProfileEnabled(@NonNull android.content.ComponentName); + method public void setProfileName(@NonNull android.content.ComponentName, String); + method public void setRecommendedGlobalProxy(@NonNull android.content.ComponentName, @Nullable android.net.ProxyInfo); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public void setRequiredPasswordComplexity(int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS, conditional=true) public void setRequiredStrongAuthTimeout(@Nullable android.content.ComponentName, long); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_RESET_PASSWORD, conditional=true) public boolean setResetPasswordToken(@Nullable android.content.ComponentName, byte[]); + method public void setRestrictionsProvider(@NonNull android.content.ComponentName, @Nullable android.content.ComponentName); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SCREEN_CAPTURE, conditional=true) public void setScreenCaptureDisabled(@Nullable android.content.ComponentName, boolean); + method public void setSecureSetting(@NonNull android.content.ComponentName, String, String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING, conditional=true) public void setSecurityLoggingEnabled(@Nullable android.content.ComponentName, boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SUPPORT_MESSAGE, conditional=true) public void setShortSupportMessage(@Nullable android.content.ComponentName, @Nullable CharSequence); + method public void setStartUserSessionMessage(@NonNull android.content.ComponentName, @Nullable CharSequence); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_STATUS_BAR, conditional=true) public boolean setStatusBarDisabled(@Nullable android.content.ComponentName, boolean); + method @Deprecated public int setStorageEncryption(@NonNull android.content.ComponentName, boolean); + method public void setSystemSetting(@NonNull android.content.ComponentName, @NonNull String, String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_SYSTEM_UPDATES, conditional=true) public void setSystemUpdatePolicy(@NonNull android.content.ComponentName, android.app.admin.SystemUpdatePolicy); + method @RequiresPermission(value=android.Manifest.permission.SET_TIME, conditional=true) public boolean setTime(@Nullable android.content.ComponentName, long); + method @RequiresPermission(value=android.Manifest.permission.SET_TIME_ZONE, conditional=true) public boolean setTimeZone(@Nullable android.content.ComponentName, String); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_KEYGUARD, conditional=true) public void setTrustAgentConfiguration(@Nullable android.content.ComponentName, @NonNull android.content.ComponentName, android.os.PersistableBundle); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL, conditional=true) public void setUninstallBlocked(@Nullable android.content.ComponentName, String, boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING, conditional=true) public void setUsbDataSignalingEnabled(boolean); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL, conditional=true) public void setUserControlDisabledPackages(@Nullable android.content.ComponentName, @NonNull java.util.List); + method public void setUserIcon(@NonNull android.content.ComponentName, android.graphics.Bitmap); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIFI, conditional=true) public void setWifiSsidPolicy(@Nullable android.app.admin.WifiSsidPolicy); + method public int startUserInBackground(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); + method public int stopUser(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); + method public boolean switchUser(@NonNull android.content.ComponentName, @Nullable android.os.UserHandle); + method public void transferOwnership(@NonNull android.content.ComponentName, @NonNull android.content.ComponentName, @Nullable android.os.PersistableBundle); + method public void uninstallAllUserCaCerts(@Nullable android.content.ComponentName); + method public void uninstallCaCert(@Nullable android.content.ComponentName, byte[]); + method public boolean updateOverrideApn(@NonNull android.content.ComponentName, int, @NonNull android.telephony.data.ApnSetting); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIPE_DATA, conditional=true) public void wipeData(int); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIPE_DATA, conditional=true) public void wipeData(int, @NonNull CharSequence); + method @RequiresPermission(value=android.Manifest.permission.MANAGE_DEVICE_POLICY_WIPE_DATA, conditional=true) public void wipeDevice(int); + field public static final String ACTION_ADD_DEVICE_ADMIN = "android.app.action.ADD_DEVICE_ADMIN"; + field public static final String ACTION_ADMIN_POLICY_COMPLIANCE = "android.app.action.ADMIN_POLICY_COMPLIANCE"; + field public static final String ACTION_APPLICATION_DELEGATION_SCOPES_CHANGED = "android.app.action.APPLICATION_DELEGATION_SCOPES_CHANGED"; + field public static final String ACTION_CHECK_POLICY_COMPLIANCE = "android.app.action.CHECK_POLICY_COMPLIANCE"; + field public static final String ACTION_DEVICE_ADMIN_SERVICE = "android.app.action.DEVICE_ADMIN_SERVICE"; + field public static final String ACTION_DEVICE_FINANCING_STATE_CHANGED = "android.app.admin.action.DEVICE_FINANCING_STATE_CHANGED"; + field public static final String ACTION_DEVICE_OWNER_CHANGED = "android.app.action.DEVICE_OWNER_CHANGED"; + field public static final String ACTION_DEVICE_POLICY_RESOURCE_UPDATED = "android.app.action.DEVICE_POLICY_RESOURCE_UPDATED"; + field public static final String ACTION_GET_PROVISIONING_MODE = "android.app.action.GET_PROVISIONING_MODE"; + field public static final String ACTION_MANAGED_PROFILE_PROVISIONED = "android.app.action.MANAGED_PROFILE_PROVISIONED"; + field public static final String ACTION_PROFILE_OWNER_CHANGED = "android.app.action.PROFILE_OWNER_CHANGED"; + field public static final String ACTION_PROVISIONING_SUCCESSFUL = "android.app.action.PROVISIONING_SUCCESSFUL"; + field @Deprecated public static final String ACTION_PROVISION_MANAGED_DEVICE = "android.app.action.PROVISION_MANAGED_DEVICE"; + field public static final String ACTION_PROVISION_MANAGED_PROFILE = "android.app.action.PROVISION_MANAGED_PROFILE"; + field public static final String ACTION_SET_NEW_PARENT_PROFILE_PASSWORD = "android.app.action.SET_NEW_PARENT_PROFILE_PASSWORD"; + field public static final String ACTION_SET_NEW_PASSWORD = "android.app.action.SET_NEW_PASSWORD"; + field public static final String ACTION_START_ENCRYPTION = "android.app.action.START_ENCRYPTION"; + field public static final String ACTION_SYSTEM_UPDATE_POLICY_CHANGED = "android.app.action.SYSTEM_UPDATE_POLICY_CHANGED"; + field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final int APP_FUNCTIONS_DISABLED = 1; // 0x1 + field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final int APP_FUNCTIONS_DISABLED_CROSS_PROFILE = 2; // 0x2 + field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final int APP_FUNCTIONS_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 + field @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") public static final int AUTO_TIME_DISABLED = 1; // 0x1 + field @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") public static final int AUTO_TIME_ENABLED = 2; // 0x2 + field @FlaggedApi("android.app.admin.flags.set_auto_time_enabled_coexistence") public static final int AUTO_TIME_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 + field @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") public static final int AUTO_TIME_ZONE_DISABLED = 1; // 0x1 + field @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") public static final int AUTO_TIME_ZONE_ENABLED = 2; // 0x2 + field @FlaggedApi("android.app.admin.flags.set_auto_time_zone_enabled_coexistence") public static final int AUTO_TIME_ZONE_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 + field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final int CONTENT_PROTECTION_DISABLED = 1; // 0x1 + field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final int CONTENT_PROTECTION_ENABLED = 2; // 0x2 + field @FlaggedApi("android.view.contentprotection.flags.manage_device_policy_enabled") public static final int CONTENT_PROTECTION_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 + field public static final String DELEGATION_APP_RESTRICTIONS = "delegation-app-restrictions"; + field public static final String DELEGATION_BLOCK_UNINSTALL = "delegation-block-uninstall"; + field public static final String DELEGATION_CERT_INSTALL = "delegation-cert-install"; + field public static final String DELEGATION_CERT_SELECTION = "delegation-cert-selection"; + field public static final String DELEGATION_ENABLE_SYSTEM_APP = "delegation-enable-system-app"; + field public static final String DELEGATION_INSTALL_EXISTING_PACKAGE = "delegation-install-existing-package"; + field public static final String DELEGATION_KEEP_UNINSTALLED_PACKAGES = "delegation-keep-uninstalled-packages"; + field public static final String DELEGATION_NETWORK_LOGGING = "delegation-network-logging"; + field public static final String DELEGATION_PACKAGE_ACCESS = "delegation-package-access"; + field public static final String DELEGATION_PERMISSION_GRANT = "delegation-permission-grant"; + field public static final String DELEGATION_SECURITY_LOGGING = "delegation-security-logging"; + field @Deprecated public static final int ENCRYPTION_STATUS_ACTIVATING = 2; // 0x2 + field public static final int ENCRYPTION_STATUS_ACTIVE = 3; // 0x3 + field public static final int ENCRYPTION_STATUS_ACTIVE_DEFAULT_KEY = 4; // 0x4 + field public static final int ENCRYPTION_STATUS_ACTIVE_PER_USER = 5; // 0x5 + field public static final int ENCRYPTION_STATUS_INACTIVE = 1; // 0x1 + field public static final int ENCRYPTION_STATUS_UNSUPPORTED = 0; // 0x0 + field public static final String EXTRA_ADD_EXPLANATION = "android.app.extra.ADD_EXPLANATION"; + field public static final String EXTRA_DELEGATION_SCOPES = "android.app.extra.DELEGATION_SCOPES"; + field public static final String EXTRA_DEVICE_ADMIN = "android.app.extra.DEVICE_ADMIN"; + field public static final String EXTRA_DEVICE_PASSWORD_REQUIREMENT_ONLY = "android.app.extra.DEVICE_PASSWORD_REQUIREMENT_ONLY"; + field @RequiresPermission(android.Manifest.permission.REQUEST_PASSWORD_COMPLEXITY) public static final String EXTRA_PASSWORD_COMPLEXITY = "android.app.extra.PASSWORD_COMPLEXITY"; + field public static final String EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE = "android.app.extra.PROVISIONING_ACCOUNT_TO_MIGRATE"; + field public static final String EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE = "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE"; + field public static final String EXTRA_PROVISIONING_ALLOWED_PROVISIONING_MODES = "android.app.extra.PROVISIONING_ALLOWED_PROVISIONING_MODES"; + field public static final String EXTRA_PROVISIONING_ALLOW_OFFLINE = "android.app.extra.PROVISIONING_ALLOW_OFFLINE"; + field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME = "android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME"; + field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_MINIMUM_VERSION_CODE = "android.app.extra.PROVISIONING_DEVICE_ADMIN_MINIMUM_VERSION_CODE"; + field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM"; + field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_COOKIE_HEADER = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_COOKIE_HEADER"; + field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION"; + field @Deprecated public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME = "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME"; + field public static final String EXTRA_PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM = "android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM"; + field public static final String EXTRA_PROVISIONING_DISCLAIMERS = "android.app.extra.PROVISIONING_DISCLAIMERS"; + field public static final String EXTRA_PROVISIONING_DISCLAIMER_CONTENT = "android.app.extra.PROVISIONING_DISCLAIMER_CONTENT"; + field public static final String EXTRA_PROVISIONING_DISCLAIMER_HEADER = "android.app.extra.PROVISIONING_DISCLAIMER_HEADER"; + field @Deprecated public static final String EXTRA_PROVISIONING_EMAIL_ADDRESS = "android.app.extra.PROVISIONING_EMAIL_ADDRESS"; + field public static final String EXTRA_PROVISIONING_IMEI = "android.app.extra.PROVISIONING_IMEI"; + field public static final String EXTRA_PROVISIONING_KEEP_ACCOUNT_ON_MIGRATION = "android.app.extra.PROVISIONING_KEEP_ACCOUNT_ON_MIGRATION"; + field @Deprecated public static final String EXTRA_PROVISIONING_KEEP_SCREEN_ON = "android.app.extra.PROVISIONING_KEEP_SCREEN_ON"; + field public static final String EXTRA_PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED = "android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED"; + field public static final String EXTRA_PROVISIONING_LOCALE = "android.app.extra.PROVISIONING_LOCALE"; + field public static final String EXTRA_PROVISIONING_LOCAL_TIME = "android.app.extra.PROVISIONING_LOCAL_TIME"; + field @Deprecated public static final String EXTRA_PROVISIONING_LOGO_URI = "android.app.extra.PROVISIONING_LOGO_URI"; + field @Deprecated public static final String EXTRA_PROVISIONING_MAIN_COLOR = "android.app.extra.PROVISIONING_MAIN_COLOR"; + field public static final String EXTRA_PROVISIONING_MODE = "android.app.extra.PROVISIONING_MODE"; + field public static final String EXTRA_PROVISIONING_SENSORS_PERMISSION_GRANT_OPT_OUT = "android.app.extra.PROVISIONING_SENSORS_PERMISSION_GRANT_OPT_OUT"; + field public static final String EXTRA_PROVISIONING_SERIAL_NUMBER = "android.app.extra.PROVISIONING_SERIAL_NUMBER"; + field public static final String EXTRA_PROVISIONING_SHOULD_LAUNCH_RESULT_INTENT = "android.app.extra.PROVISIONING_SHOULD_LAUNCH_RESULT_INTENT"; + field public static final String EXTRA_PROVISIONING_SKIP_EDUCATION_SCREENS = "android.app.extra.PROVISIONING_SKIP_EDUCATION_SCREENS"; + field public static final String EXTRA_PROVISIONING_SKIP_ENCRYPTION = "android.app.extra.PROVISIONING_SKIP_ENCRYPTION"; + field @Deprecated public static final String EXTRA_PROVISIONING_SKIP_USER_CONSENT = "android.app.extra.PROVISIONING_SKIP_USER_CONSENT"; + field public static final String EXTRA_PROVISIONING_TIME_ZONE = "android.app.extra.PROVISIONING_TIME_ZONE"; + field public static final String EXTRA_PROVISIONING_USE_MOBILE_DATA = "android.app.extra.PROVISIONING_USE_MOBILE_DATA"; + field public static final String EXTRA_PROVISIONING_WIFI_ANONYMOUS_IDENTITY = "android.app.extra.PROVISIONING_WIFI_ANONYMOUS_IDENTITY"; + field public static final String EXTRA_PROVISIONING_WIFI_CA_CERTIFICATE = "android.app.extra.PROVISIONING_WIFI_CA_CERTIFICATE"; + field public static final String EXTRA_PROVISIONING_WIFI_DOMAIN = "android.app.extra.PROVISIONING_WIFI_DOMAIN"; + field public static final String EXTRA_PROVISIONING_WIFI_EAP_METHOD = "android.app.extra.PROVISIONING_WIFI_EAP_METHOD"; + field public static final String EXTRA_PROVISIONING_WIFI_HIDDEN = "android.app.extra.PROVISIONING_WIFI_HIDDEN"; + field public static final String EXTRA_PROVISIONING_WIFI_IDENTITY = "android.app.extra.PROVISIONING_WIFI_IDENTITY"; + field public static final String EXTRA_PROVISIONING_WIFI_PAC_URL = "android.app.extra.PROVISIONING_WIFI_PAC_URL"; + field public static final String EXTRA_PROVISIONING_WIFI_PASSWORD = "android.app.extra.PROVISIONING_WIFI_PASSWORD"; + field public static final String EXTRA_PROVISIONING_WIFI_PHASE2_AUTH = "android.app.extra.PROVISIONING_WIFI_PHASE2_AUTH"; + field public static final String EXTRA_PROVISIONING_WIFI_PROXY_BYPASS = "android.app.extra.PROVISIONING_WIFI_PROXY_BYPASS"; + field public static final String EXTRA_PROVISIONING_WIFI_PROXY_HOST = "android.app.extra.PROVISIONING_WIFI_PROXY_HOST"; + field public static final String EXTRA_PROVISIONING_WIFI_PROXY_PORT = "android.app.extra.PROVISIONING_WIFI_PROXY_PORT"; + field public static final String EXTRA_PROVISIONING_WIFI_SECURITY_TYPE = "android.app.extra.PROVISIONING_WIFI_SECURITY_TYPE"; + field public static final String EXTRA_PROVISIONING_WIFI_SSID = "android.app.extra.PROVISIONING_WIFI_SSID"; + field public static final String EXTRA_PROVISIONING_WIFI_USER_CERTIFICATE = "android.app.extra.PROVISIONING_WIFI_USER_CERTIFICATE"; + field public static final String EXTRA_RESOURCE_IDS = "android.app.extra.RESOURCE_IDS"; + field public static final String EXTRA_RESOURCE_TYPE = "android.app.extra.RESOURCE_TYPE"; + field public static final int EXTRA_RESOURCE_TYPE_DRAWABLE = 1; // 0x1 + field public static final int EXTRA_RESOURCE_TYPE_STRING = 2; // 0x2 + field public static final String EXTRA_RESULT_LAUNCH_INTENT = "android.app.extra.RESULT_LAUNCH_INTENT"; + field public static final int FLAG_EVICT_CREDENTIAL_ENCRYPTION_KEY = 1; // 0x1 + field public static final int FLAG_MANAGED_CAN_ACCESS_PARENT = 2; // 0x2 + field public static final int FLAG_PARENT_CAN_ACCESS_MANAGED = 1; // 0x1 + field public static final int ID_TYPE_BASE_INFO = 1; // 0x1 + field public static final int ID_TYPE_IMEI = 4; // 0x4 + field public static final int ID_TYPE_INDIVIDUAL_ATTESTATION = 16; // 0x10 + field public static final int ID_TYPE_MEID = 8; // 0x8 + field public static final int ID_TYPE_SERIAL = 2; // 0x2 + field public static final int INSTALLKEY_REQUEST_CREDENTIALS_ACCESS = 1; // 0x1 + field public static final int INSTALLKEY_SET_USER_SELECTABLE = 2; // 0x2 + field public static final int KEYGUARD_DISABLE_BIOMETRICS = 416; // 0x1a0 + field public static final int KEYGUARD_DISABLE_FACE = 128; // 0x80 + field public static final int KEYGUARD_DISABLE_FEATURES_ALL = 2147483647; // 0x7fffffff + field public static final int KEYGUARD_DISABLE_FEATURES_NONE = 0; // 0x0 + field public static final int KEYGUARD_DISABLE_FINGERPRINT = 32; // 0x20 + field public static final int KEYGUARD_DISABLE_IRIS = 256; // 0x100 + field @Deprecated public static final int KEYGUARD_DISABLE_REMOTE_INPUT = 64; // 0x40 + field public static final int KEYGUARD_DISABLE_SECURE_CAMERA = 2; // 0x2 + field public static final int KEYGUARD_DISABLE_SECURE_NOTIFICATIONS = 4; // 0x4 + field public static final int KEYGUARD_DISABLE_SHORTCUTS_ALL = 512; // 0x200 + field public static final int KEYGUARD_DISABLE_TRUST_AGENTS = 16; // 0x10 + field public static final int KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS = 8; // 0x8 + field public static final int KEYGUARD_DISABLE_WIDGETS_ALL = 1; // 0x1 + field public static final int LEAVE_ALL_SYSTEM_APPS_ENABLED = 16; // 0x10 + field public static final int LOCK_TASK_FEATURE_BLOCK_ACTIVITY_START_IN_TASK = 64; // 0x40 + field public static final int LOCK_TASK_FEATURE_GLOBAL_ACTIONS = 16; // 0x10 + field public static final int LOCK_TASK_FEATURE_HOME = 4; // 0x4 + field public static final int LOCK_TASK_FEATURE_KEYGUARD = 32; // 0x20 + field public static final int LOCK_TASK_FEATURE_NONE = 0; // 0x0 + field public static final int LOCK_TASK_FEATURE_NOTIFICATIONS = 2; // 0x2 + field public static final int LOCK_TASK_FEATURE_OVERVIEW = 8; // 0x8 + field public static final int LOCK_TASK_FEATURE_SYSTEM_INFO = 1; // 0x1 + field public static final int MAKE_USER_EPHEMERAL = 2; // 0x2 + field public static final String MIME_TYPE_PROVISIONING_NFC = "application/com.android.managedprovisioning"; + field public static final int MTE_DISABLED = 2; // 0x2 + field public static final int MTE_ENABLED = 1; // 0x1 + field public static final int MTE_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 + field public static final int NEARBY_STREAMING_DISABLED = 1; // 0x1 + field public static final int NEARBY_STREAMING_ENABLED = 2; // 0x2 + field public static final int NEARBY_STREAMING_NOT_CONTROLLED_BY_POLICY = 0; // 0x0 + field public static final int NEARBY_STREAMING_SAME_MANAGED_ACCOUNT_ONLY = 3; // 0x3 + field public static final int OPERATION_SAFETY_REASON_DRIVING_DISTRACTION = 1; // 0x1 + field public static final int PASSWORD_COMPLEXITY_HIGH = 327680; // 0x50000 + field public static final int PASSWORD_COMPLEXITY_LOW = 65536; // 0x10000 + field public static final int PASSWORD_COMPLEXITY_MEDIUM = 196608; // 0x30000 + field public static final int PASSWORD_COMPLEXITY_NONE = 0; // 0x0 + field public static final int PASSWORD_QUALITY_ALPHABETIC = 262144; // 0x40000 + field public static final int PASSWORD_QUALITY_ALPHANUMERIC = 327680; // 0x50000 + field public static final int PASSWORD_QUALITY_BIOMETRIC_WEAK = 32768; // 0x8000 + field public static final int PASSWORD_QUALITY_COMPLEX = 393216; // 0x60000 + field public static final int PASSWORD_QUALITY_NUMERIC = 131072; // 0x20000 + field public static final int PASSWORD_QUALITY_NUMERIC_COMPLEX = 196608; // 0x30000 + field public static final int PASSWORD_QUALITY_SOMETHING = 65536; // 0x10000 + field public static final int PASSWORD_QUALITY_UNSPECIFIED = 0; // 0x0 + field public static final int PERMISSION_GRANT_STATE_DEFAULT = 0; // 0x0 + field public static final int PERMISSION_GRANT_STATE_DENIED = 2; // 0x2 + field public static final int PERMISSION_GRANT_STATE_GRANTED = 1; // 0x1 + field public static final int PERMISSION_POLICY_AUTO_DENY = 2; // 0x2 + field public static final int PERMISSION_POLICY_AUTO_GRANT = 1; // 0x1 + field public static final int PERMISSION_POLICY_PROMPT = 0; // 0x0 + field public static final int PERSONAL_APPS_NOT_SUSPENDED = 0; // 0x0 + field public static final int PERSONAL_APPS_SUSPENDED_EXPLICITLY = 1; // 0x1 + field public static final int PERSONAL_APPS_SUSPENDED_PROFILE_TIMEOUT = 2; // 0x2 + field public static final String POLICY_DISABLE_CAMERA = "policy_disable_camera"; + field public static final String POLICY_DISABLE_SCREEN_CAPTURE = "policy_disable_screen_capture"; + field public static final int PRIVATE_DNS_MODE_OFF = 1; // 0x1 + field public static final int PRIVATE_DNS_MODE_OPPORTUNISTIC = 2; // 0x2 + field public static final int PRIVATE_DNS_MODE_PROVIDER_HOSTNAME = 3; // 0x3 + field public static final int PRIVATE_DNS_MODE_UNKNOWN = 0; // 0x0 + field public static final int PRIVATE_DNS_SET_ERROR_FAILURE_SETTING = 2; // 0x2 + field public static final int PRIVATE_DNS_SET_ERROR_HOST_NOT_SERVING = 1; // 0x1 + field public static final int PRIVATE_DNS_SET_NO_ERROR = 0; // 0x0 + field public static final int PROVISIONING_MODE_FULLY_MANAGED_DEVICE = 1; // 0x1 + field public static final int PROVISIONING_MODE_MANAGED_PROFILE = 2; // 0x2 + field public static final int PROVISIONING_MODE_MANAGED_PROFILE_ON_PERSONAL_DEVICE = 3; // 0x3 + field public static final int RESET_PASSWORD_DO_NOT_ASK_CREDENTIALS_ON_BOOT = 2; // 0x2 + field public static final int RESET_PASSWORD_REQUIRE_ENTRY = 1; // 0x1 + field public static final int SKIP_SETUP_WIZARD = 1; // 0x1 + field public static final int WIFI_SECURITY_ENTERPRISE_192 = 3; // 0x3 + field public static final int WIFI_SECURITY_ENTERPRISE_EAP = 2; // 0x2 + field public static final int WIFI_SECURITY_OPEN = 0; // 0x0 + field public static final int WIFI_SECURITY_PERSONAL = 1; // 0x1 + field public static final int WIPE_EUICC = 4; // 0x4 + field public static final int WIPE_EXTERNAL_STORAGE = 1; // 0x1 + field public static final int WIPE_RESET_PROTECTION_DATA = 2; // 0x2 + field public static final int WIPE_SILENTLY = 8; // 0x8 + } + + public abstract static class DevicePolicyManager.InstallSystemUpdateCallback { + ctor public DevicePolicyManager.InstallSystemUpdateCallback(); + method public void onInstallUpdateError(int, @NonNull String); + field public static final int UPDATE_ERROR_BATTERY_LOW = 5; // 0x5 + field public static final int UPDATE_ERROR_FILE_NOT_FOUND = 4; // 0x4 + field public static final int UPDATE_ERROR_INCORRECT_OS_VERSION = 2; // 0x2 + field public static final int UPDATE_ERROR_UNKNOWN = 1; // 0x1 + field public static final int UPDATE_ERROR_UPDATE_FILE_INVALID = 3; // 0x3 + } + + public static interface DevicePolicyManager.OnClearApplicationUserDataListener { + method public void onApplicationUserDataCleared(String, boolean); + } + + public final class DevicePolicyResources { + field public static final String UNDEFINED = "UNDEFINED"; + } + + public class DevicePolicyResourcesManager { + method @Nullable public android.graphics.drawable.Drawable getDrawable(@NonNull String, @NonNull String, @NonNull java.util.function.Supplier); + method @Nullable public android.graphics.drawable.Drawable getDrawable(@NonNull String, @NonNull String, @NonNull String, @NonNull java.util.function.Supplier); + method @Nullable public android.graphics.drawable.Icon getDrawableAsIcon(@NonNull String, @NonNull String, @NonNull String, @Nullable android.graphics.drawable.Icon); + method @Nullable public android.graphics.drawable.Icon getDrawableAsIcon(@NonNull String, @NonNull String, @Nullable android.graphics.drawable.Icon); + method @Nullable public android.graphics.drawable.Drawable getDrawableForDensity(@NonNull String, @NonNull String, int, @NonNull java.util.function.Supplier); + method @Nullable public android.graphics.drawable.Drawable getDrawableForDensity(@NonNull String, @NonNull String, @NonNull String, int, @NonNull java.util.function.Supplier); + method @Nullable public String getString(@NonNull String, @NonNull java.util.function.Supplier); + method @Nullable public String getString(@NonNull String, @NonNull java.util.function.Supplier, @NonNull java.lang.Object...); + } + + public final class DnsEvent extends android.app.admin.NetworkEvent implements android.os.Parcelable { + method public String getHostname(); + method public java.util.List getInetAddresses(); + method public int getTotalResolvedAddressCount(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class FactoryResetProtectionPolicy implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getFactoryResetProtectionAccounts(); + method public boolean isFactoryResetProtectionEnabled(); + method public void writeToParcel(@NonNull android.os.Parcel, @Nullable int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class FactoryResetProtectionPolicy.Builder { + ctor public FactoryResetProtectionPolicy.Builder(); + method @NonNull public android.app.admin.FactoryResetProtectionPolicy build(); + method @NonNull public android.app.admin.FactoryResetProtectionPolicy.Builder setFactoryResetProtectionAccounts(@NonNull java.util.List); + method @NonNull public android.app.admin.FactoryResetProtectionPolicy.Builder setFactoryResetProtectionEnabled(boolean); + } + + public class FreezePeriod { + ctor public FreezePeriod(java.time.MonthDay, java.time.MonthDay); + method public java.time.MonthDay getEnd(); + method public java.time.MonthDay getStart(); + } + + public final class ManagedSubscriptionsPolicy implements android.os.Parcelable { + ctor public ManagedSubscriptionsPolicy(int); + method public int describeContents(); + method public int getPolicyType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_ALL_MANAGED_SUBSCRIPTIONS = 1; // 0x1 + field public static final int TYPE_ALL_PERSONAL_SUBSCRIPTIONS = 0; // 0x0 + } + + public abstract class NetworkEvent implements android.os.Parcelable { + method public int describeContents(); + method public long getId(); + method public String getPackageName(); + method public long getTimestamp(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class PackagePolicy implements android.os.Parcelable { + ctor public PackagePolicy(int); + ctor public PackagePolicy(int, @NonNull java.util.Set); + method public int describeContents(); + method @NonNull public java.util.Set getPackageNames(); + method public int getPolicyType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int PACKAGE_POLICY_ALLOWLIST = 3; // 0x3 + field public static final int PACKAGE_POLICY_ALLOWLIST_AND_SYSTEM = 2; // 0x2 + field public static final int PACKAGE_POLICY_BLOCKLIST = 1; // 0x1 + } + + public abstract class PolicyUpdateReceiver extends android.content.BroadcastReceiver { + ctor public PolicyUpdateReceiver(); + method public void onPolicyChanged(@NonNull android.content.Context, @NonNull String, @NonNull android.os.Bundle, @NonNull android.app.admin.TargetUser, @NonNull android.app.admin.PolicyUpdateResult); + method public void onPolicySetResult(@NonNull android.content.Context, @NonNull String, @NonNull android.os.Bundle, @NonNull android.app.admin.TargetUser, @NonNull android.app.admin.PolicyUpdateResult); + method public final void onReceive(android.content.Context, android.content.Intent); + field public static final String ACTION_DEVICE_POLICY_CHANGED = "android.app.admin.action.DEVICE_POLICY_CHANGED"; + field public static final String ACTION_DEVICE_POLICY_SET_RESULT = "android.app.admin.action.DEVICE_POLICY_SET_RESULT"; + field public static final String EXTRA_ACCOUNT_TYPE = "android.app.admin.extra.ACCOUNT_TYPE"; + field public static final String EXTRA_INTENT_FILTER = "android.app.admin.extra.INTENT_FILTER"; + field public static final String EXTRA_PACKAGE_NAME = "android.app.admin.extra.PACKAGE_NAME"; + field public static final String EXTRA_PERMISSION_NAME = "android.app.admin.extra.PERMISSION_NAME"; + } + + public final class PolicyUpdateResult { + ctor public PolicyUpdateResult(int); + method public int getResultCode(); + field public static final int RESULT_FAILURE_CONFLICTING_ADMIN_POLICY = 1; // 0x1 + field public static final int RESULT_FAILURE_HARDWARE_LIMITATION = 4; // 0x4 + field public static final int RESULT_FAILURE_STORAGE_LIMIT_REACHED = 3; // 0x3 + field public static final int RESULT_FAILURE_UNKNOWN = -1; // 0xffffffff + field public static final int RESULT_POLICY_CLEARED = 2; // 0x2 + field public static final int RESULT_POLICY_SET = 0; // 0x0 + } + + public final class PreferentialNetworkServiceConfig implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public int[] getExcludedUids(); + method @NonNull public int[] getIncludedUids(); + method public int getNetworkId(); + method public boolean isEnabled(); + method public boolean isFallbackToDefaultConnectionAllowed(); + method public boolean shouldBlockNonMatchingNetworks(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int PREFERENTIAL_NETWORK_ID_1 = 1; // 0x1 + field public static final int PREFERENTIAL_NETWORK_ID_2 = 2; // 0x2 + field public static final int PREFERENTIAL_NETWORK_ID_3 = 3; // 0x3 + field public static final int PREFERENTIAL_NETWORK_ID_4 = 4; // 0x4 + field public static final int PREFERENTIAL_NETWORK_ID_5 = 5; // 0x5 + } + + public static final class PreferentialNetworkServiceConfig.Builder { + ctor public PreferentialNetworkServiceConfig.Builder(); + method @NonNull public android.app.admin.PreferentialNetworkServiceConfig build(); + method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setEnabled(boolean); + method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setExcludedUids(@NonNull int[]); + method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setFallbackToDefaultConnectionAllowed(boolean); + method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setIncludedUids(@NonNull int[]); + method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setNetworkId(int); + method @NonNull public android.app.admin.PreferentialNetworkServiceConfig.Builder setShouldBlockNonMatchingNetworks(boolean); + } + + public class SecurityLog { + ctor public SecurityLog(); + field public static final int LEVEL_ERROR = 3; // 0x3 + field public static final int LEVEL_INFO = 1; // 0x1 + field public static final int LEVEL_WARNING = 2; // 0x2 + field public static final int TAG_ADB_SHELL_CMD = 210002; // 0x33452 + field public static final int TAG_ADB_SHELL_INTERACTIVE = 210001; // 0x33451 + field public static final int TAG_APP_PROCESS_START = 210005; // 0x33455 + field public static final int TAG_BACKUP_SERVICE_TOGGLED = 210044; // 0x3347c + field public static final int TAG_BLUETOOTH_CONNECTION = 210039; // 0x33477 + field public static final int TAG_BLUETOOTH_DISCONNECTION = 210040; // 0x33478 + field public static final int TAG_CAMERA_POLICY_SET = 210034; // 0x33472 + field public static final int TAG_CERT_AUTHORITY_INSTALLED = 210029; // 0x3346d + field public static final int TAG_CERT_AUTHORITY_REMOVED = 210030; // 0x3346e + field public static final int TAG_CERT_VALIDATION_FAILURE = 210033; // 0x33471 + field public static final int TAG_CRYPTO_SELF_TEST_COMPLETED = 210031; // 0x3346f + field public static final int TAG_KEYGUARD_DISABLED_FEATURES_SET = 210021; // 0x33465 + field public static final int TAG_KEYGUARD_DISMISSED = 210006; // 0x33456 + field public static final int TAG_KEYGUARD_DISMISS_AUTH_ATTEMPT = 210007; // 0x33457 + field public static final int TAG_KEYGUARD_SECURED = 210008; // 0x33458 + field public static final int TAG_KEY_DESTRUCTION = 210026; // 0x3346a + field public static final int TAG_KEY_GENERATED = 210024; // 0x33468 + field public static final int TAG_KEY_IMPORT = 210025; // 0x33469 + field public static final int TAG_KEY_INTEGRITY_VIOLATION = 210032; // 0x33470 + field public static final int TAG_LOGGING_STARTED = 210011; // 0x3345b + field public static final int TAG_LOGGING_STOPPED = 210012; // 0x3345c + field public static final int TAG_LOG_BUFFER_SIZE_CRITICAL = 210015; // 0x3345f + field public static final int TAG_MAX_PASSWORD_ATTEMPTS_SET = 210020; // 0x33464 + field public static final int TAG_MAX_SCREEN_LOCK_TIMEOUT_SET = 210019; // 0x33463 + field public static final int TAG_MEDIA_MOUNT = 210013; // 0x3345d + field public static final int TAG_MEDIA_UNMOUNT = 210014; // 0x3345e + field @FlaggedApi("android.nfc.nfc_state_change_security_log_event_enabled") public static final int TAG_NFC_DISABLED = 210046; // 0x3347e + field @FlaggedApi("android.nfc.nfc_state_change_security_log_event_enabled") public static final int TAG_NFC_ENABLED = 210045; // 0x3347d + field public static final int TAG_OS_SHUTDOWN = 210010; // 0x3345a + field public static final int TAG_OS_STARTUP = 210009; // 0x33459 + field public static final int TAG_PACKAGE_INSTALLED = 210041; // 0x33479 + field public static final int TAG_PACKAGE_UNINSTALLED = 210043; // 0x3347b + field public static final int TAG_PACKAGE_UPDATED = 210042; // 0x3347a + field public static final int TAG_PASSWORD_CHANGED = 210036; // 0x33474 + field public static final int TAG_PASSWORD_COMPLEXITY_REQUIRED = 210035; // 0x33473 + field public static final int TAG_PASSWORD_COMPLEXITY_SET = 210017; // 0x33461 + field public static final int TAG_PASSWORD_EXPIRATION_SET = 210016; // 0x33460 + field public static final int TAG_PASSWORD_HISTORY_LENGTH_SET = 210018; // 0x33462 + field public static final int TAG_REMOTE_LOCK = 210022; // 0x33466 + field public static final int TAG_SYNC_RECV_FILE = 210003; // 0x33453 + field public static final int TAG_SYNC_SEND_FILE = 210004; // 0x33454 + field public static final int TAG_USER_RESTRICTION_ADDED = 210027; // 0x3346b + field public static final int TAG_USER_RESTRICTION_REMOVED = 210028; // 0x3346c + field public static final int TAG_WIFI_CONNECTION = 210037; // 0x33475 + field public static final int TAG_WIFI_DISCONNECTION = 210038; // 0x33476 + field public static final int TAG_WIPE_FAILURE = 210023; // 0x33467 + } + + public static final class SecurityLog.SecurityEvent implements android.os.Parcelable { + method public int describeContents(); + method public Object getData(); + method public long getId(); + method public int getLogLevel(); + method public int getTag(); + method public long getTimeNanos(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class SystemUpdateInfo implements android.os.Parcelable { + method public int describeContents(); + method public long getReceivedTime(); + method public int getSecurityPatchState(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SECURITY_PATCH_STATE_FALSE = 1; // 0x1 + field public static final int SECURITY_PATCH_STATE_TRUE = 2; // 0x2 + field public static final int SECURITY_PATCH_STATE_UNKNOWN = 0; // 0x0 + } + + public final class SystemUpdatePolicy implements android.os.Parcelable { + method public static android.app.admin.SystemUpdatePolicy createAutomaticInstallPolicy(); + method public static android.app.admin.SystemUpdatePolicy createPostponeInstallPolicy(); + method public static android.app.admin.SystemUpdatePolicy createWindowedInstallPolicy(int, int); + method public int describeContents(); + method public java.util.List getFreezePeriods(); + method public int getInstallWindowEnd(); + method public int getInstallWindowStart(); + method public int getPolicyType(); + method public android.app.admin.SystemUpdatePolicy setFreezePeriods(java.util.List); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_INSTALL_AUTOMATIC = 1; // 0x1 + field public static final int TYPE_INSTALL_WINDOWED = 2; // 0x2 + field public static final int TYPE_POSTPONE = 3; // 0x3 + } + + public static final class SystemUpdatePolicy.ValidationFailedException extends java.lang.IllegalArgumentException implements android.os.Parcelable { + method public int describeContents(); + method public int getErrorCode(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ERROR_COMBINED_FREEZE_PERIOD_TOO_CLOSE = 6; // 0x6 + field public static final int ERROR_COMBINED_FREEZE_PERIOD_TOO_LONG = 5; // 0x5 + field public static final int ERROR_DUPLICATE_OR_OVERLAP = 2; // 0x2 + field public static final int ERROR_NEW_FREEZE_PERIOD_TOO_CLOSE = 4; // 0x4 + field public static final int ERROR_NEW_FREEZE_PERIOD_TOO_LONG = 3; // 0x3 + field public static final int ERROR_UNKNOWN = 1; // 0x1 + } + + public final class TargetUser { + field @NonNull public static final android.app.admin.TargetUser GLOBAL; + field @NonNull public static final android.app.admin.TargetUser LOCAL_USER; + field @NonNull public static final android.app.admin.TargetUser PARENT_USER; + field @NonNull public static final android.app.admin.TargetUser UNKNOWN_USER; + } + + public final class UnsafeStateException extends java.lang.IllegalStateException implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getReasons(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class WifiSsidPolicy implements android.os.Parcelable { + ctor public WifiSsidPolicy(int, @NonNull java.util.Set); + method public int describeContents(); + method public int getPolicyType(); + method @NonNull public java.util.Set getSsids(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int WIFI_SSID_POLICY_TYPE_ALLOWLIST = 0; // 0x0 + field public static final int WIFI_SSID_POLICY_TYPE_DENYLIST = 1; // 0x1 + } + +} + +package android.app.appfunctions { + + @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public final class AppFunctionException extends java.lang.Exception implements android.os.Parcelable { + ctor public AppFunctionException(int, @Nullable String); + ctor public AppFunctionException(int, @Nullable String, @NonNull android.os.Bundle); + method public int describeContents(); + method public int getErrorCategory(); + method public int getErrorCode(); + method @Nullable public String getErrorMessage(); + method @NonNull public android.os.Bundle getExtras(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ERROR_APP_UNKNOWN_ERROR = 3000; // 0xbb8 + field public static final int ERROR_CANCELLED = 2001; // 0x7d1 + field public static final int ERROR_CATEGORY_APP = 3; // 0x3 + field public static final int ERROR_CATEGORY_REQUEST_ERROR = 1; // 0x1 + field public static final int ERROR_CATEGORY_SYSTEM = 2; // 0x2 + field public static final int ERROR_CATEGORY_UNKNOWN = 0; // 0x0 + field public static final int ERROR_DENIED = 1000; // 0x3e8 + field public static final int ERROR_DISABLED = 1002; // 0x3ea + field public static final int ERROR_ENTERPRISE_POLICY_DISALLOWED = 2002; // 0x7d2 + field public static final int ERROR_FUNCTION_NOT_FOUND = 1003; // 0x3eb + field public static final int ERROR_INVALID_ARGUMENT = 1001; // 0x3e9 + field public static final int ERROR_SYSTEM_ERROR = 2000; // 0x7d0 + } + + @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public final class AppFunctionManager { + method @RequiresPermission(anyOf={"android.permission.EXECUTE_APP_FUNCTIONS_TRUSTED", "android.permission.EXECUTE_APP_FUNCTIONS"}, conditional=true) public void executeAppFunction(@NonNull android.app.appfunctions.ExecuteAppFunctionRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); + method @RequiresPermission(anyOf={"android.permission.EXECUTE_APP_FUNCTIONS_TRUSTED", "android.permission.EXECUTE_APP_FUNCTIONS"}, conditional=true) public void isAppFunctionEnabled(@NonNull String, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void isAppFunctionEnabled(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void setAppFunctionEnabled(@NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + field public static final int APP_FUNCTION_STATE_DEFAULT = 0; // 0x0 + field public static final int APP_FUNCTION_STATE_DISABLED = 2; // 0x2 + field public static final int APP_FUNCTION_STATE_ENABLED = 1; // 0x1 + } + + @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public abstract class AppFunctionService extends android.app.Service { + ctor public AppFunctionService(); + method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent); + method @MainThread public abstract void onExecuteFunction(@NonNull android.app.appfunctions.ExecuteAppFunctionRequest, @NonNull String, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); + field @NonNull public static final String SERVICE_INTERFACE = "android.app.appfunctions.AppFunctionService"; + } + + @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public final class ExecuteAppFunctionRequest implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public String getFunctionIdentifier(); + method @NonNull public android.app.appsearch.GenericDocument getParameters(); + method @NonNull public String getTargetPackageName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class ExecuteAppFunctionRequest.Builder { + ctor public ExecuteAppFunctionRequest.Builder(@NonNull String, @NonNull String); + method @NonNull public android.app.appfunctions.ExecuteAppFunctionRequest build(); + method @NonNull public android.app.appfunctions.ExecuteAppFunctionRequest.Builder setExtras(@NonNull android.os.Bundle); + method @NonNull public android.app.appfunctions.ExecuteAppFunctionRequest.Builder setParameters(@NonNull android.app.appsearch.GenericDocument); + } + + @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public final class ExecuteAppFunctionResponse implements android.os.Parcelable { + ctor public ExecuteAppFunctionResponse(@NonNull android.app.appsearch.GenericDocument); + ctor public ExecuteAppFunctionResponse(@NonNull android.app.appsearch.GenericDocument, @NonNull android.os.Bundle); + method public int describeContents(); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public android.app.appsearch.GenericDocument getResultDocument(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String PROPERTY_RETURN_VALUE = "androidAppfunctionsReturnValue"; + } + +} + +package android.app.assist { + + public class AssistContent implements android.os.Parcelable { + ctor public AssistContent(); + method public int describeContents(); + method public android.content.ClipData getClipData(); + method public android.os.Bundle getExtras(); + method public android.content.Intent getIntent(); + method public String getStructuredData(); + method public android.net.Uri getWebUri(); + method public boolean isAppProvidedIntent(); + method public boolean isAppProvidedWebUri(); + method public void setClipData(android.content.ClipData); + method public void setIntent(android.content.Intent); + method public void setStructuredData(String); + method public void setWebUri(android.net.Uri); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String EXTRA_APP_FUNCTION_DATA = "android.app.assist.extra.APP_FUNCTION_DATA"; + field @FlaggedApi("com.android.window.flags.enable_desktop_windowing_app_to_web_education") public static final String EXTRA_SESSION_TRANSFER_WEB_URI = "android.app.assist.extra.SESSION_TRANSFER_WEB_URI"; + } + + public class AssistStructure implements android.os.Parcelable { + ctor public AssistStructure(); + method public int describeContents(); + method public long getAcquisitionEndTime(); + method public long getAcquisitionStartTime(); + method public android.content.ComponentName getActivityComponent(); + method public android.app.assist.AssistStructure.WindowNode getWindowNodeAt(int); + method public int getWindowNodeCount(); + method public boolean isHomeActivity(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class AssistStructure.ViewNode { + method public float getAlpha(); + method @Nullable public String[] getAutofillHints(); + method @Nullable public android.view.autofill.AutofillId getAutofillId(); + method @Nullable public CharSequence[] getAutofillOptions(); + method public int getAutofillType(); + method @Nullable public android.view.autofill.AutofillValue getAutofillValue(); + method public android.app.assist.AssistStructure.ViewNode getChildAt(int); + method public int getChildCount(); + method @Nullable public String getClassName(); + method @Nullable public CharSequence getContentDescription(); + method public float getElevation(); + method @Nullable public android.os.Bundle getExtras(); + method public int getHeight(); + method @Nullable public String getHint(); + method @Nullable public String getHintIdEntry(); + method @Nullable public android.view.ViewStructure.HtmlInfo getHtmlInfo(); + method public int getId(); + method @Nullable public String getIdEntry(); + method @Nullable public String getIdPackage(); + method @Nullable public String getIdType(); + method public int getImportantForAutofill(); + method public int getInputType(); + method public int getLeft(); + method @Nullable public android.os.LocaleList getLocaleList(); + method public int getMaxTextEms(); + method public int getMaxTextLength(); + method public int getMinTextEms(); + method @Nullable public String[] getReceiveContentMimeTypes(); + method public int getScrollX(); + method public int getScrollY(); + method @Nullable public CharSequence getText(); + method public int getTextBackgroundColor(); + method public int getTextColor(); + method @Nullable public String getTextIdEntry(); + method @Nullable public int[] getTextLineBaselines(); + method @Nullable public int[] getTextLineCharOffsets(); + method public int getTextSelectionEnd(); + method public int getTextSelectionStart(); + method public float getTextSize(); + method public int getTextStyle(); + method public int getTop(); + method public android.graphics.Matrix getTransformation(); + method public int getVisibility(); + method @Nullable public String getWebDomain(); + method @Nullable public String getWebScheme(); + method public int getWidth(); + method public boolean isAccessibilityFocused(); + method public boolean isActivated(); + method public boolean isAssistBlocked(); + method public boolean isCheckable(); + method public boolean isChecked(); + method public boolean isClickable(); + method public boolean isContextClickable(); + method public boolean isEnabled(); + method public boolean isFocusable(); + method public boolean isFocused(); + method public boolean isLongClickable(); + method public boolean isOpaque(); + method public boolean isSelected(); + field public static final int TEXT_COLOR_UNDEFINED = 1; // 0x1 + field public static final int TEXT_STYLE_BOLD = 1; // 0x1 + field public static final int TEXT_STYLE_ITALIC = 2; // 0x2 + field public static final int TEXT_STYLE_STRIKE_THRU = 8; // 0x8 + field public static final int TEXT_STYLE_UNDERLINE = 4; // 0x4 + } + + public static class AssistStructure.WindowNode { + method public int getDisplayId(); + method public int getHeight(); + method public int getLeft(); + method public android.app.assist.AssistStructure.ViewNode getRootViewNode(); + method public CharSequence getTitle(); + method public int getTop(); + method public int getWidth(); + } + +} + +package android.app.backup { + + public abstract class BackupAgent extends android.content.ContextWrapper { + ctor public BackupAgent(); + method public final void fullBackupFile(java.io.File, android.app.backup.FullBackupDataOutput); + method public abstract void onBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor) throws java.io.IOException; + method public void onCreate(); + method public void onDestroy(); + method public void onFullBackup(android.app.backup.FullBackupDataOutput) throws java.io.IOException; + method public void onQuotaExceeded(long, long); + method public abstract void onRestore(android.app.backup.BackupDataInput, int, android.os.ParcelFileDescriptor) throws java.io.IOException; + method public void onRestore(android.app.backup.BackupDataInput, long, android.os.ParcelFileDescriptor) throws java.io.IOException; + method public void onRestoreFile(android.os.ParcelFileDescriptor, long, java.io.File, int, long, long) throws java.io.IOException; + method public void onRestoreFinished(); + field public static final int FLAG_CLIENT_SIDE_ENCRYPTION_ENABLED = 1; // 0x1 + field public static final int FLAG_DEVICE_TO_DEVICE_TRANSFER = 2; // 0x2 + field public static final int TYPE_DIRECTORY = 2; // 0x2 + field public static final int TYPE_FILE = 1; // 0x1 + } + + public class BackupAgentHelper extends android.app.backup.BackupAgent { + ctor public BackupAgentHelper(); + method public void addHelper(String, android.app.backup.BackupHelper); + method public void onBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor) throws java.io.IOException; + method public void onRestore(android.app.backup.BackupDataInput, int, android.os.ParcelFileDescriptor) throws java.io.IOException; + } + + public class BackupDataInput { + method public int getDataSize(); + method public String getKey(); + method public int readEntityData(byte[], int, int) throws java.io.IOException; + method public boolean readNextHeader() throws java.io.IOException; + method public void skipEntityData() throws java.io.IOException; + } + + public class BackupDataInputStream extends java.io.InputStream { + method public String getKey(); + method public int read() throws java.io.IOException; + method public int size(); + } + + public class BackupDataOutput { + method public long getQuota(); + method public int getTransportFlags(); + method public int writeEntityData(byte[], int) throws java.io.IOException; + method public int writeEntityHeader(String, int) throws java.io.IOException; + } + + public interface BackupHelper { + method public void performBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor); + method public void restoreEntity(android.app.backup.BackupDataInputStream); + method public void writeNewStateDescription(android.os.ParcelFileDescriptor); + } + + public class BackupManager { + ctor public BackupManager(android.content.Context); + method public void dataChanged(); + method public static void dataChanged(String); + method @Nullable public android.os.UserHandle getUserForAncestralSerialNumber(long); + method @Deprecated public int requestRestore(android.app.backup.RestoreObserver); + } + + public class FileBackupHelper implements android.app.backup.BackupHelper { + ctor public FileBackupHelper(android.content.Context, java.lang.String...); + method public void performBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor); + method public void restoreEntity(android.app.backup.BackupDataInputStream); + method public void writeNewStateDescription(android.os.ParcelFileDescriptor); + } + + public class FullBackupDataOutput { + method public long getQuota(); + method public int getTransportFlags(); + } + + public abstract class RestoreObserver { + ctor public RestoreObserver(); + method public void onUpdate(int, String); + method public void restoreFinished(int); + method public void restoreStarting(int); + } + + public class SharedPreferencesBackupHelper implements android.app.backup.BackupHelper { + ctor public SharedPreferencesBackupHelper(android.content.Context, java.lang.String...); + method public void performBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor); + method public void restoreEntity(android.app.backup.BackupDataInputStream); + method public void writeNewStateDescription(android.os.ParcelFileDescriptor); + } + +} + +package android.app.blob { + + public final class BlobHandle implements android.os.Parcelable { + method @NonNull public static android.app.blob.BlobHandle createWithSha256(@NonNull byte[], @NonNull CharSequence, long, @NonNull String); + method public int describeContents(); + method public long getExpiryTimeMillis(); + method @NonNull public CharSequence getLabel(); + method @NonNull public byte[] getSha256Digest(); + method @NonNull public String getTag(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class BlobStoreManager { + method public void abandonSession(@IntRange(from=1) long) throws java.io.IOException; + method public void acquireLease(@NonNull android.app.blob.BlobHandle, @IdRes int, long) throws java.io.IOException; + method public void acquireLease(@NonNull android.app.blob.BlobHandle, @NonNull CharSequence, long) throws java.io.IOException; + method public void acquireLease(@NonNull android.app.blob.BlobHandle, @IdRes int) throws java.io.IOException; + method public void acquireLease(@NonNull android.app.blob.BlobHandle, @NonNull CharSequence) throws java.io.IOException; + method @IntRange(from=1) public long createSession(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; + method @NonNull public java.util.List getLeasedBlobs() throws java.io.IOException; + method @IntRange(from=0) public long getRemainingLeaseQuotaBytes(); + method @NonNull public android.os.ParcelFileDescriptor openBlob(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; + method @NonNull public android.app.blob.BlobStoreManager.Session openSession(@IntRange(from=1) long) throws java.io.IOException; + method public void releaseLease(@NonNull android.app.blob.BlobHandle) throws java.io.IOException; + } + + public static class BlobStoreManager.Session implements java.io.Closeable { + method public void abandon() throws java.io.IOException; + method public void allowPackageAccess(@NonNull String, @NonNull byte[]) throws java.io.IOException; + method public void allowPublicAccess() throws java.io.IOException; + method public void allowSameSignatureAccess() throws java.io.IOException; + method public void close() throws java.io.IOException; + method public void commit(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer) throws java.io.IOException; + method public long getSize() throws java.io.IOException; + method public boolean isPackageAccessAllowed(@NonNull String, @NonNull byte[]) throws java.io.IOException; + method public boolean isPublicAccessAllowed() throws java.io.IOException; + method public boolean isSameSignatureAccessAllowed() throws java.io.IOException; + method @NonNull public android.os.ParcelFileDescriptor openRead() throws java.io.IOException; + method @NonNull public android.os.ParcelFileDescriptor openWrite(long, long) throws java.io.IOException; + } + +} + +package android.app.jank { + + @FlaggedApi("android.app.jank.detailed_app_jank_metrics_api") public final class AppJankStats { + ctor public AppJankStats(int, @NonNull String, @Nullable String, @Nullable String, long, long, @NonNull android.app.jank.FrameOverrunHistogram); + method @NonNull public android.app.jank.FrameOverrunHistogram getFrameOverrunHistogram(); + method public long getJankyFrameCount(); + method public long getTotalFrameCount(); + method public int getUid(); + method @NonNull public String getWidgetCategory(); + method @NonNull public String getWidgetId(); + method @NonNull public String getWidgetState(); + field public static final String ANIMATING = "animating"; + field public static final String ANIMATION = "animation"; + field public static final String DRAGGING = "dragging"; + field public static final String FLINGING = "flinging"; + field public static final String KEYBOARD = "keyboard"; + field public static final String MEDIA = "media"; + field public static final String NAVIGATION = "navigation"; + field public static final String NONE = "none"; + field public static final String OTHER = "other"; + field public static final String PLAYBACK = "playback"; + field public static final String PREDICTIVE_BACK = "predictive_back"; + field public static final String SCROLL = "scroll"; + field public static final String SCROLLING = "scrolling"; + field public static final String SWIPING = "swiping"; + field public static final String TAPPING = "tapping"; + field public static final String WIDGET_CATEGORY_UNSPECIFIED = "widget_category_unspecified"; + field public static final String WIDGET_STATE_UNSPECIFIED = "widget_state_unspecified"; + field public static final String ZOOMING = "zooming"; + } + + @FlaggedApi("android.app.jank.detailed_app_jank_metrics_api") public class FrameOverrunHistogram { + ctor public FrameOverrunHistogram(); + method public void addFrameOverrunMillis(int); + method @NonNull public int[] getBucketCounters(); + method @NonNull public int[] getBucketEndpointsMillis(); + } + +} + +package android.app.job { + + public class JobInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getBackoffPolicy(); + method @Nullable public android.content.ClipData getClipData(); + method public int getClipGrantFlags(); + method @FlaggedApi("android.app.job.job_debug_info_apis") @NonNull public java.util.Set getDebugTags(); + method public long getEstimatedNetworkDownloadBytes(); + method public long getEstimatedNetworkUploadBytes(); + method @NonNull public android.os.PersistableBundle getExtras(); + method public long getFlexMillis(); + method public int getId(); + method public long getInitialBackoffMillis(); + method public long getIntervalMillis(); + method public long getMaxExecutionDelayMillis(); + method public static final long getMinFlexMillis(); + method public long getMinLatencyMillis(); + method public static final long getMinPeriodMillis(); + method public long getMinimumNetworkChunkBytes(); + method @Deprecated public int getNetworkType(); + method public int getPriority(); + method @Nullable public android.net.NetworkRequest getRequiredNetwork(); + method @NonNull public android.content.ComponentName getService(); + method @FlaggedApi("android.app.job.job_debug_info_apis") @Nullable public String getTraceTag(); + method @NonNull public android.os.Bundle getTransientExtras(); + method public long getTriggerContentMaxDelay(); + method public long getTriggerContentUpdateDelay(); + method @Nullable public android.app.job.JobInfo.TriggerContentUri[] getTriggerContentUris(); + method public boolean isExpedited(); + method @Deprecated @FlaggedApi("android.app.job.ignore_important_while_foreground") public boolean isImportantWhileForeground(); + method public boolean isPeriodic(); + method public boolean isPersisted(); + method public boolean isPrefetch(); + method public boolean isRequireBatteryNotLow(); + method public boolean isRequireCharging(); + method public boolean isRequireDeviceIdle(); + method public boolean isRequireStorageNotLow(); + method public boolean isUserInitiated(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int BACKOFF_POLICY_EXPONENTIAL = 1; // 0x1 + field public static final int BACKOFF_POLICY_LINEAR = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final long DEFAULT_INITIAL_BACKOFF_MILLIS = 30000L; // 0x7530L + field public static final long MAX_BACKOFF_DELAY_MILLIS = 18000000L; // 0x112a880L + field public static final int NETWORK_BYTES_UNKNOWN = -1; // 0xffffffff + field public static final int NETWORK_TYPE_ANY = 1; // 0x1 + field public static final int NETWORK_TYPE_CELLULAR = 4; // 0x4 + field @Deprecated public static final int NETWORK_TYPE_METERED = 4; // 0x4 + field public static final int NETWORK_TYPE_NONE = 0; // 0x0 + field public static final int NETWORK_TYPE_NOT_ROAMING = 3; // 0x3 + field public static final int NETWORK_TYPE_UNMETERED = 2; // 0x2 + field public static final int PRIORITY_DEFAULT = 300; // 0x12c + field public static final int PRIORITY_HIGH = 400; // 0x190 + field public static final int PRIORITY_LOW = 200; // 0xc8 + field public static final int PRIORITY_MAX = 500; // 0x1f4 + field public static final int PRIORITY_MIN = 100; // 0x64 + } + + public static final class JobInfo.Builder { + ctor public JobInfo.Builder(int, @NonNull android.content.ComponentName); + method @FlaggedApi("android.app.job.job_debug_info_apis") @NonNull public android.app.job.JobInfo.Builder addDebugTag(@NonNull String); + method public android.app.job.JobInfo.Builder addTriggerContentUri(@NonNull android.app.job.JobInfo.TriggerContentUri); + method public android.app.job.JobInfo build(); + method @FlaggedApi("android.app.job.job_debug_info_apis") @NonNull public android.app.job.JobInfo.Builder removeDebugTag(@NonNull String); + method public android.app.job.JobInfo.Builder setBackoffCriteria(long, int); + method public android.app.job.JobInfo.Builder setClipData(@Nullable android.content.ClipData, int); + method public android.app.job.JobInfo.Builder setEstimatedNetworkBytes(long, long); + method @NonNull public android.app.job.JobInfo.Builder setExpedited(boolean); + method public android.app.job.JobInfo.Builder setExtras(@NonNull android.os.PersistableBundle); + method @Deprecated public android.app.job.JobInfo.Builder setImportantWhileForeground(boolean); + method public android.app.job.JobInfo.Builder setMinimumLatency(long); + method @NonNull public android.app.job.JobInfo.Builder setMinimumNetworkChunkBytes(long); + method public android.app.job.JobInfo.Builder setOverrideDeadline(long); + method public android.app.job.JobInfo.Builder setPeriodic(long); + method public android.app.job.JobInfo.Builder setPeriodic(long, long); + method @RequiresPermission(android.Manifest.permission.RECEIVE_BOOT_COMPLETED) public android.app.job.JobInfo.Builder setPersisted(boolean); + method public android.app.job.JobInfo.Builder setPrefetch(boolean); + method @NonNull public android.app.job.JobInfo.Builder setPriority(int); + method public android.app.job.JobInfo.Builder setRequiredNetwork(@Nullable android.net.NetworkRequest); + method public android.app.job.JobInfo.Builder setRequiredNetworkType(int); + method public android.app.job.JobInfo.Builder setRequiresBatteryNotLow(boolean); + method public android.app.job.JobInfo.Builder setRequiresCharging(boolean); + method public android.app.job.JobInfo.Builder setRequiresDeviceIdle(boolean); + method public android.app.job.JobInfo.Builder setRequiresStorageNotLow(boolean); + method @FlaggedApi("android.app.job.job_debug_info_apis") @NonNull public android.app.job.JobInfo.Builder setTraceTag(@Nullable String); + method public android.app.job.JobInfo.Builder setTransientExtras(@NonNull android.os.Bundle); + method public android.app.job.JobInfo.Builder setTriggerContentMaxDelay(long); + method public android.app.job.JobInfo.Builder setTriggerContentUpdateDelay(long); + method @NonNull @RequiresPermission(android.Manifest.permission.RUN_USER_INITIATED_JOBS) public android.app.job.JobInfo.Builder setUserInitiated(boolean); + } + + public static final class JobInfo.TriggerContentUri implements android.os.Parcelable { + ctor public JobInfo.TriggerContentUri(@NonNull android.net.Uri, int); + method public int describeContents(); + method public int getFlags(); + method public android.net.Uri getUri(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_NOTIFY_FOR_DESCENDANTS = 1; // 0x1 + } + + public class JobParameters implements android.os.Parcelable { + method public void completeWork(@NonNull android.app.job.JobWorkItem); + method @Nullable public android.app.job.JobWorkItem dequeueWork(); + method public int describeContents(); + method @Nullable public android.content.ClipData getClipData(); + method public int getClipGrantFlags(); + method @NonNull public android.os.PersistableBundle getExtras(); + method public int getJobId(); + method @Nullable public String getJobNamespace(); + method @Nullable public android.net.Network getNetwork(); + method public int getStopReason(); + method @NonNull public android.os.Bundle getTransientExtras(); + method @Nullable public String[] getTriggeredContentAuthorities(); + method @Nullable public android.net.Uri[] getTriggeredContentUris(); + method public boolean isExpeditedJob(); + method public boolean isOverrideDeadlineExpired(); + method public boolean isUserInitiatedJob(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STOP_REASON_APP_STANDBY = 12; // 0xc + field public static final int STOP_REASON_BACKGROUND_RESTRICTION = 11; // 0xb + field public static final int STOP_REASON_CANCELLED_BY_APP = 1; // 0x1 + field public static final int STOP_REASON_CONSTRAINT_BATTERY_NOT_LOW = 5; // 0x5 + field public static final int STOP_REASON_CONSTRAINT_CHARGING = 6; // 0x6 + field public static final int STOP_REASON_CONSTRAINT_CONNECTIVITY = 7; // 0x7 + field public static final int STOP_REASON_CONSTRAINT_DEVICE_IDLE = 8; // 0x8 + field public static final int STOP_REASON_CONSTRAINT_STORAGE_NOT_LOW = 9; // 0x9 + field public static final int STOP_REASON_DEVICE_STATE = 4; // 0x4 + field public static final int STOP_REASON_ESTIMATED_APP_LAUNCH_TIME_CHANGED = 15; // 0xf + field public static final int STOP_REASON_PREEMPT = 2; // 0x2 + field public static final int STOP_REASON_QUOTA = 10; // 0xa + field public static final int STOP_REASON_SYSTEM_PROCESSING = 14; // 0xe + field public static final int STOP_REASON_TIMEOUT = 3; // 0x3 + field @FlaggedApi("android.app.job.handle_abandoned_jobs") public static final int STOP_REASON_TIMEOUT_ABANDONED = 16; // 0x10 + field public static final int STOP_REASON_UNDEFINED = 0; // 0x0 + field public static final int STOP_REASON_USER = 13; // 0xd + } + + public abstract class JobScheduler { + ctor public JobScheduler(); + method public boolean canRunUserInitiatedJobs(); + method public abstract void cancel(int); + method public abstract void cancelAll(); + method public void cancelInAllNamespaces(); + method public abstract int enqueue(@NonNull android.app.job.JobInfo, @NonNull android.app.job.JobWorkItem); + method @NonNull public android.app.job.JobScheduler forNamespace(@NonNull String); + method @NonNull public abstract java.util.List getAllPendingJobs(); + method @Nullable public String getNamespace(); + method @Nullable public abstract android.app.job.JobInfo getPendingJob(int); + method public int getPendingJobReason(int); + method @FlaggedApi("android.app.job.get_pending_job_reasons_api") @NonNull public int[] getPendingJobReasons(int); + method @FlaggedApi("android.app.job.get_pending_job_reasons_history_api") @NonNull public java.util.List getPendingJobReasonsHistory(int); + method @NonNull public java.util.Map> getPendingJobsInAllNamespaces(); + method public abstract int schedule(@NonNull android.app.job.JobInfo); + field public static final int PENDING_JOB_REASON_APP = 1; // 0x1 + field public static final int PENDING_JOB_REASON_APP_STANDBY = 2; // 0x2 + field public static final int PENDING_JOB_REASON_BACKGROUND_RESTRICTION = 3; // 0x3 + field public static final int PENDING_JOB_REASON_CONSTRAINT_BATTERY_NOT_LOW = 4; // 0x4 + field public static final int PENDING_JOB_REASON_CONSTRAINT_CHARGING = 5; // 0x5 + field public static final int PENDING_JOB_REASON_CONSTRAINT_CONNECTIVITY = 6; // 0x6 + field public static final int PENDING_JOB_REASON_CONSTRAINT_CONTENT_TRIGGER = 7; // 0x7 + field @FlaggedApi("android.app.job.get_pending_job_reasons_api") public static final int PENDING_JOB_REASON_CONSTRAINT_DEADLINE = 16; // 0x10 + field public static final int PENDING_JOB_REASON_CONSTRAINT_DEVICE_IDLE = 8; // 0x8 + field public static final int PENDING_JOB_REASON_CONSTRAINT_MINIMUM_LATENCY = 9; // 0x9 + field public static final int PENDING_JOB_REASON_CONSTRAINT_PREFETCH = 10; // 0xa + field public static final int PENDING_JOB_REASON_CONSTRAINT_STORAGE_NOT_LOW = 11; // 0xb + field public static final int PENDING_JOB_REASON_DEVICE_STATE = 12; // 0xc + field public static final int PENDING_JOB_REASON_EXECUTING = -1; // 0xffffffff + field public static final int PENDING_JOB_REASON_INVALID_JOB_ID = -2; // 0xfffffffe + field public static final int PENDING_JOB_REASON_JOB_SCHEDULER_OPTIMIZATION = 13; // 0xd + field public static final int PENDING_JOB_REASON_QUOTA = 14; // 0xe + field public static final int PENDING_JOB_REASON_UNDEFINED = 0; // 0x0 + field public static final int PENDING_JOB_REASON_USER = 15; // 0xf + field public static final int RESULT_FAILURE = 0; // 0x0 + field public static final int RESULT_SUCCESS = 1; // 0x1 + } + + public abstract class JobService extends android.app.Service { + ctor public JobService(); + method public final void jobFinished(android.app.job.JobParameters, boolean); + method public final android.os.IBinder onBind(android.content.Intent); + method public void onNetworkChanged(@NonNull android.app.job.JobParameters); + method public abstract boolean onStartJob(android.app.job.JobParameters); + method public abstract boolean onStopJob(android.app.job.JobParameters); + method public final void setNotification(@NonNull android.app.job.JobParameters, int, @NonNull android.app.Notification, int); + method public final void updateEstimatedNetworkBytes(@NonNull android.app.job.JobParameters, long, long); + method public final void updateEstimatedNetworkBytes(@NonNull android.app.job.JobParameters, @NonNull android.app.job.JobWorkItem, long, long); + method public final void updateTransferredNetworkBytes(@NonNull android.app.job.JobParameters, long, long); + method public final void updateTransferredNetworkBytes(@NonNull android.app.job.JobParameters, @NonNull android.app.job.JobWorkItem, long, long); + field public static final int JOB_END_NOTIFICATION_POLICY_DETACH = 0; // 0x0 + field public static final int JOB_END_NOTIFICATION_POLICY_REMOVE = 1; // 0x1 + field public static final String PERMISSION_BIND = "android.permission.BIND_JOB_SERVICE"; + } + + public abstract class JobServiceEngine { + ctor public JobServiceEngine(android.app.Service); + method public final android.os.IBinder getBinder(); + method public void jobFinished(android.app.job.JobParameters, boolean); + method public void onNetworkChanged(@NonNull android.app.job.JobParameters); + method public abstract boolean onStartJob(android.app.job.JobParameters); + method public abstract boolean onStopJob(android.app.job.JobParameters); + method public void setNotification(@NonNull android.app.job.JobParameters, int, @NonNull android.app.Notification, int); + method public void updateEstimatedNetworkBytes(@NonNull android.app.job.JobParameters, @Nullable android.app.job.JobWorkItem, long, long); + method public void updateTransferredNetworkBytes(@NonNull android.app.job.JobParameters, @Nullable android.app.job.JobWorkItem, long, long); + } + + public final class JobWorkItem implements android.os.Parcelable { + ctor public JobWorkItem(android.content.Intent); + ctor public JobWorkItem(android.content.Intent, long, long); + ctor public JobWorkItem(@Nullable android.content.Intent, long, long, long); + method public int describeContents(); + method public int getDeliveryCount(); + method public long getEstimatedNetworkDownloadBytes(); + method public long getEstimatedNetworkUploadBytes(); + method @NonNull public android.os.PersistableBundle getExtras(); + method public android.content.Intent getIntent(); + method public long getMinimumNetworkChunkBytes(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class JobWorkItem.Builder { + ctor public JobWorkItem.Builder(); + method @NonNull public android.app.job.JobWorkItem build(); + method @NonNull public android.app.job.JobWorkItem.Builder setEstimatedNetworkBytes(long, long); + method @NonNull public android.app.job.JobWorkItem.Builder setExtras(@NonNull android.os.PersistableBundle); + method @NonNull public android.app.job.JobWorkItem.Builder setIntent(@NonNull android.content.Intent); + method @NonNull public android.app.job.JobWorkItem.Builder setMinimumNetworkChunkBytes(long); + } + + @FlaggedApi("android.app.job.get_pending_job_reasons_history_api") public final class PendingJobReasonsInfo implements android.os.Parcelable { + ctor public PendingJobReasonsInfo(long, @NonNull int[]); + method public int describeContents(); + method @NonNull public int[] getPendingJobReasons(); + method public long getTimestampMillis(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.app.people { + + public final class ConversationStatus implements android.os.Parcelable { + method public int describeContents(); + method public int getActivity(); + method public int getAvailability(); + method @Nullable public CharSequence getDescription(); + method public long getEndTimeMillis(); + method @Nullable public android.graphics.drawable.Icon getIcon(); + method @NonNull public String getId(); + method public long getStartTimeMillis(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int ACTIVITY_ANNIVERSARY = 2; // 0x2 + field public static final int ACTIVITY_AUDIO = 4; // 0x4 + field public static final int ACTIVITY_BIRTHDAY = 1; // 0x1 + field public static final int ACTIVITY_GAME = 6; // 0x6 + field public static final int ACTIVITY_LOCATION = 7; // 0x7 + field public static final int ACTIVITY_NEW_STORY = 3; // 0x3 + field public static final int ACTIVITY_OTHER = 0; // 0x0 + field public static final int ACTIVITY_UPCOMING_BIRTHDAY = 8; // 0x8 + field public static final int ACTIVITY_VIDEO = 5; // 0x5 + field public static final int AVAILABILITY_AVAILABLE = 0; // 0x0 + field public static final int AVAILABILITY_BUSY = 1; // 0x1 + field public static final int AVAILABILITY_OFFLINE = 2; // 0x2 + field public static final int AVAILABILITY_UNKNOWN = -1; // 0xffffffff + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class ConversationStatus.Builder { + ctor public ConversationStatus.Builder(@NonNull String, @NonNull int); + method @NonNull public android.app.people.ConversationStatus build(); + method @NonNull public android.app.people.ConversationStatus.Builder setAvailability(int); + method @NonNull public android.app.people.ConversationStatus.Builder setDescription(@Nullable CharSequence); + method @NonNull public android.app.people.ConversationStatus.Builder setEndTimeMillis(long); + method @NonNull public android.app.people.ConversationStatus.Builder setIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.app.people.ConversationStatus.Builder setStartTimeMillis(long); + } + + public final class PeopleManager { + method public void addOrUpdateStatus(@NonNull String, @NonNull android.app.people.ConversationStatus); + method public void clearStatus(@NonNull String, @NonNull String); + method public void clearStatuses(@NonNull String); + method @NonNull public java.util.List getStatuses(@NonNull String); + } + +} + +package android.app.slice { + + @Deprecated public final class Slice implements android.os.Parcelable { + ctor @Deprecated protected Slice(android.os.Parcel); + method @Deprecated public int describeContents(); + method @Deprecated public java.util.List getHints(); + method @Deprecated public java.util.List getItems(); + method @Deprecated @Nullable public android.app.slice.SliceSpec getSpec(); + method @Deprecated public android.net.Uri getUri(); + method @Deprecated public boolean isCallerNeeded(); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Deprecated public static final String EXTRA_RANGE_VALUE = "android.app.slice.extra.RANGE_VALUE"; + field @Deprecated public static final String EXTRA_TOGGLE_STATE = "android.app.slice.extra.TOGGLE_STATE"; + field @Deprecated public static final String HINT_ACTIONS = "actions"; + field @Deprecated public static final String HINT_ERROR = "error"; + field @Deprecated public static final String HINT_HORIZONTAL = "horizontal"; + field @Deprecated public static final String HINT_KEYWORDS = "keywords"; + field @Deprecated public static final String HINT_LARGE = "large"; + field @Deprecated public static final String HINT_LAST_UPDATED = "last_updated"; + field @Deprecated public static final String HINT_LIST = "list"; + field @Deprecated public static final String HINT_LIST_ITEM = "list_item"; + field @Deprecated public static final String HINT_NO_TINT = "no_tint"; + field @Deprecated public static final String HINT_PARTIAL = "partial"; + field @Deprecated public static final String HINT_PERMISSION_REQUEST = "permission_request"; + field @Deprecated public static final String HINT_SEE_MORE = "see_more"; + field @Deprecated public static final String HINT_SELECTED = "selected"; + field @Deprecated public static final String HINT_SHORTCUT = "shortcut"; + field @Deprecated public static final String HINT_SUMMARY = "summary"; + field @Deprecated public static final String HINT_TITLE = "title"; + field @Deprecated public static final String HINT_TTL = "ttl"; + field @Deprecated public static final String SUBTYPE_COLOR = "color"; + field @Deprecated public static final String SUBTYPE_CONTENT_DESCRIPTION = "content_description"; + field @Deprecated public static final String SUBTYPE_LAYOUT_DIRECTION = "layout_direction"; + field @Deprecated public static final String SUBTYPE_MAX = "max"; + field @Deprecated public static final String SUBTYPE_MESSAGE = "message"; + field @Deprecated public static final String SUBTYPE_MILLIS = "millis"; + field @Deprecated public static final String SUBTYPE_PRIORITY = "priority"; + field @Deprecated public static final String SUBTYPE_RANGE = "range"; + field @Deprecated public static final String SUBTYPE_SOURCE = "source"; + field @Deprecated public static final String SUBTYPE_TOGGLE = "toggle"; + field @Deprecated public static final String SUBTYPE_VALUE = "value"; + } + + @Deprecated public static class Slice.Builder { + ctor @Deprecated public Slice.Builder(@NonNull android.net.Uri, android.app.slice.SliceSpec); + ctor @Deprecated public Slice.Builder(@NonNull android.app.slice.Slice.Builder); + method @Deprecated public android.app.slice.Slice.Builder addAction(@NonNull android.app.PendingIntent, @NonNull android.app.slice.Slice, @Nullable String); + method @Deprecated public android.app.slice.Slice.Builder addBundle(android.os.Bundle, @Nullable String, java.util.List); + method @Deprecated public android.app.slice.Slice.Builder addHints(java.util.List); + method @Deprecated public android.app.slice.Slice.Builder addIcon(android.graphics.drawable.Icon, @Nullable String, java.util.List); + method @Deprecated public android.app.slice.Slice.Builder addInt(int, @Nullable String, java.util.List); + method @Deprecated public android.app.slice.Slice.Builder addLong(long, @Nullable String, java.util.List); + method @Deprecated public android.app.slice.Slice.Builder addRemoteInput(android.app.RemoteInput, @Nullable String, java.util.List); + method @Deprecated public android.app.slice.Slice.Builder addSubSlice(@NonNull android.app.slice.Slice, @Nullable String); + method @Deprecated public android.app.slice.Slice.Builder addText(CharSequence, @Nullable String, java.util.List); + method @Deprecated public android.app.slice.Slice build(); + method @Deprecated public android.app.slice.Slice.Builder setCallerNeeded(boolean); + } + + @Deprecated public final class SliceItem implements android.os.Parcelable { + method @Deprecated public int describeContents(); + method @Deprecated public android.app.PendingIntent getAction(); + method @Deprecated public android.os.Bundle getBundle(); + method @Deprecated public String getFormat(); + method @Deprecated @NonNull public java.util.List getHints(); + method @Deprecated public android.graphics.drawable.Icon getIcon(); + method @Deprecated public int getInt(); + method @Deprecated public long getLong(); + method @Deprecated public android.app.RemoteInput getRemoteInput(); + method @Deprecated public android.app.slice.Slice getSlice(); + method @Deprecated public String getSubType(); + method @Deprecated public CharSequence getText(); + method @Deprecated public boolean hasHint(String); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Deprecated public static final String FORMAT_ACTION = "action"; + field @Deprecated public static final String FORMAT_BUNDLE = "bundle"; + field @Deprecated public static final String FORMAT_IMAGE = "image"; + field @Deprecated public static final String FORMAT_INT = "int"; + field @Deprecated public static final String FORMAT_LONG = "long"; + field @Deprecated public static final String FORMAT_REMOTE_INPUT = "input"; + field @Deprecated public static final String FORMAT_SLICE = "slice"; + field @Deprecated public static final String FORMAT_TEXT = "text"; + } + + @Deprecated public class SliceManager { + method @Deprecated @Nullable public android.app.slice.Slice bindSlice(@NonNull android.net.Uri, @NonNull java.util.Set); + method @Deprecated @Nullable public android.app.slice.Slice bindSlice(@NonNull android.content.Intent, @NonNull java.util.Set); + method @Deprecated public int checkSlicePermission(@NonNull android.net.Uri, int, int); + method @Deprecated @NonNull public java.util.List getPinnedSlices(); + method @Deprecated @NonNull public java.util.Set getPinnedSpecs(android.net.Uri); + method @Deprecated @NonNull @WorkerThread public java.util.Collection getSliceDescendants(@NonNull android.net.Uri); + method @Deprecated public void grantSlicePermission(@NonNull String, @NonNull android.net.Uri); + method @Deprecated @Nullable public android.net.Uri mapIntentToUri(@NonNull android.content.Intent); + method @Deprecated public void pinSlice(@NonNull android.net.Uri, @NonNull java.util.Set); + method @Deprecated public void revokeSlicePermission(@NonNull String, @NonNull android.net.Uri); + method @Deprecated public void unpinSlice(@NonNull android.net.Uri); + field @Deprecated public static final String CATEGORY_SLICE = "android.app.slice.category.SLICE"; + field @Deprecated public static final String SLICE_METADATA_KEY = "android.metadata.SLICE_URI"; + } + + @Deprecated public class SliceMetrics { + ctor @Deprecated public SliceMetrics(@NonNull android.content.Context, @NonNull android.net.Uri); + method @Deprecated public void logHidden(); + method @Deprecated public void logTouch(int, @NonNull android.net.Uri); + method @Deprecated public void logVisible(); + } + + @Deprecated public abstract class SliceProvider extends android.content.ContentProvider { + ctor @Deprecated public SliceProvider(@NonNull java.lang.String...); + ctor @Deprecated public SliceProvider(); + method @Deprecated public final int delete(android.net.Uri, String, String[]); + method @Deprecated public final String getType(android.net.Uri); + method @Deprecated public final android.net.Uri insert(android.net.Uri, android.content.ContentValues); + method @Deprecated public android.app.slice.Slice onBindSlice(android.net.Uri, java.util.Set); + method @Deprecated @NonNull public android.app.PendingIntent onCreatePermissionRequest(android.net.Uri); + method @Deprecated @NonNull public java.util.Collection onGetSliceDescendants(@NonNull android.net.Uri); + method @Deprecated @NonNull public android.net.Uri onMapIntentToUri(android.content.Intent); + method @Deprecated public void onSlicePinned(android.net.Uri); + method @Deprecated public void onSliceUnpinned(android.net.Uri); + method @Deprecated public final android.database.Cursor query(android.net.Uri, String[], String, String[], String); + method @Deprecated public final android.database.Cursor query(android.net.Uri, String[], String, String[], String, android.os.CancellationSignal); + method @Deprecated public final android.database.Cursor query(android.net.Uri, String[], android.os.Bundle, android.os.CancellationSignal); + method @Deprecated public final int update(android.net.Uri, android.content.ContentValues, String, String[]); + field @Deprecated public static final String SLICE_TYPE = "vnd.android.slice"; + } + + @Deprecated public final class SliceSpec implements android.os.Parcelable { + ctor @Deprecated public SliceSpec(@NonNull String, int); + method @Deprecated public boolean canRender(@NonNull android.app.slice.SliceSpec); + method @Deprecated public int describeContents(); + method @Deprecated public int getRevision(); + method @Deprecated public String getType(); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.app.usage { + + public final class ConfigurationStats implements android.os.Parcelable { + ctor public ConfigurationStats(android.app.usage.ConfigurationStats); + method public int describeContents(); + method public int getActivationCount(); + method public android.content.res.Configuration getConfiguration(); + method public long getFirstTimeStamp(); + method public long getLastTimeActive(); + method public long getLastTimeStamp(); + method public long getTotalTimeActive(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class EventStats implements android.os.Parcelable { + ctor public EventStats(android.app.usage.EventStats); + method public void add(android.app.usage.EventStats); + method public int describeContents(); + method public int getCount(); + method public int getEventType(); + method public long getFirstTimeStamp(); + method public long getLastEventTime(); + method public long getLastTimeStamp(); + method public long getTotalTime(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class ExternalStorageStats implements android.os.Parcelable { + method public int describeContents(); + method public long getAppBytes(); + method public long getAudioBytes(); + method public long getImageBytes(); + method public long getTotalBytes(); + method public long getVideoBytes(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class StorageStats implements android.os.Parcelable { + method public int describeContents(); + method public long getAppBytes(); + method @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public long getAppBytesByDataType(int); + method public long getCacheBytes(); + method public long getDataBytes(); + method public long getExternalCacheBytes(); + method public void writeToParcel(android.os.Parcel, int); + field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_APK = 3; // 0x3 + field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_CURRENT_PROFILE = 2; // 0x2 + field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_DEXOPT_ARTIFACT = 0; // 0x0 + field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_DM = 4; // 0x4 + field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_FILE_TYPE_REFERENCE_PROFILE = 1; // 0x1 + field @FlaggedApi("android.app.usage.get_app_bytes_by_data_type_api") public static final int APP_DATA_TYPE_LIB = 5; // 0x5 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class StorageStatsManager { + method @WorkerThread public long getFreeBytes(@NonNull java.util.UUID) throws java.io.IOException; + method @WorkerThread public long getTotalBytes(@NonNull java.util.UUID) throws java.io.IOException; + method @NonNull @WorkerThread public android.app.usage.ExternalStorageStats queryExternalStatsForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle) throws java.io.IOException; + method @NonNull @WorkerThread public android.app.usage.StorageStats queryStatsForPackage(@NonNull java.util.UUID, @NonNull String, @NonNull android.os.UserHandle) throws java.io.IOException, android.content.pm.PackageManager.NameNotFoundException; + method @NonNull @WorkerThread public android.app.usage.StorageStats queryStatsForUid(@NonNull java.util.UUID, int) throws java.io.IOException; + method @NonNull @WorkerThread public android.app.usage.StorageStats queryStatsForUser(@NonNull java.util.UUID, @NonNull android.os.UserHandle) throws java.io.IOException; + } + + public final class UsageEvents implements android.os.Parcelable { + method public int describeContents(); + method public boolean getNextEvent(android.app.usage.UsageEvents.Event); + method public boolean hasNextEvent(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class UsageEvents.Event { + ctor public UsageEvents.Event(); + method public int getAppStandbyBucket(); + method public String getClassName(); + method public android.content.res.Configuration getConfiguration(); + method public int getEventType(); + method @FlaggedApi("android.app.usage.user_interaction_type_api") @NonNull public android.os.PersistableBundle getExtras(); + method public String getPackageName(); + method public String getShortcutId(); + method public long getTimeStamp(); + field public static final int ACTIVITY_PAUSED = 2; // 0x2 + field public static final int ACTIVITY_RESUMED = 1; // 0x1 + field public static final int ACTIVITY_STOPPED = 23; // 0x17 + field public static final int CONFIGURATION_CHANGE = 5; // 0x5 + field public static final int DEVICE_SHUTDOWN = 26; // 0x1a + field public static final int DEVICE_STARTUP = 27; // 0x1b + field public static final int FOREGROUND_SERVICE_START = 19; // 0x13 + field public static final int FOREGROUND_SERVICE_STOP = 20; // 0x14 + field public static final int KEYGUARD_HIDDEN = 18; // 0x12 + field public static final int KEYGUARD_SHOWN = 17; // 0x11 + field @Deprecated public static final int MOVE_TO_BACKGROUND = 2; // 0x2 + field @Deprecated public static final int MOVE_TO_FOREGROUND = 1; // 0x1 + field public static final int NONE = 0; // 0x0 + field public static final int SCREEN_INTERACTIVE = 15; // 0xf + field public static final int SCREEN_NON_INTERACTIVE = 16; // 0x10 + field public static final int SHORTCUT_INVOCATION = 8; // 0x8 + field public static final int STANDBY_BUCKET_CHANGED = 11; // 0xb + field public static final int USER_INTERACTION = 7; // 0x7 + } + + @FlaggedApi("android.app.usage.filter_based_event_query_api") public final class UsageEventsQuery implements android.os.Parcelable { + method public int describeContents(); + method public long getBeginTimeMillis(); + method public long getEndTimeMillis(); + method @NonNull public int[] getEventTypes(); + method @NonNull public java.util.Set getPackageNames(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class UsageEventsQuery.Builder { + ctor public UsageEventsQuery.Builder(long, long); + method @NonNull public android.app.usage.UsageEventsQuery build(); + method @NonNull public android.app.usage.UsageEventsQuery.Builder setEventTypes(@NonNull int...); + method @NonNull public android.app.usage.UsageEventsQuery.Builder setPackageNames(@NonNull java.lang.String...); + } + + public final class UsageStats implements android.os.Parcelable { + ctor public UsageStats(android.app.usage.UsageStats); + method public void add(android.app.usage.UsageStats); + method public int describeContents(); + method public long getFirstTimeStamp(); + method public long getLastTimeForegroundServiceUsed(); + method public long getLastTimeStamp(); + method public long getLastTimeUsed(); + method public long getLastTimeVisible(); + method public String getPackageName(); + method public long getTotalTimeForegroundServiceUsed(); + method public long getTotalTimeInForeground(); + method public long getTotalTimeVisible(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class UsageStatsManager { + method public int getAppStandbyBucket(); + method public boolean isAppInactive(String); + method public java.util.Map queryAndAggregateUsageStats(long, long); + method public java.util.List queryConfigurations(int, long, long); + method public java.util.List queryEventStats(int, long, long); + method public android.app.usage.UsageEvents queryEvents(long, long); + method @FlaggedApi("android.app.usage.filter_based_event_query_api") @Nullable @RequiresPermission(android.Manifest.permission.PACKAGE_USAGE_STATS) public android.app.usage.UsageEvents queryEvents(@NonNull android.app.usage.UsageEventsQuery); + method public android.app.usage.UsageEvents queryEventsForSelf(long, long); + method public java.util.List queryUsageStats(int, long, long); + field @FlaggedApi("android.app.usage.user_interaction_type_api") public static final String EXTRA_EVENT_ACTION = "android.app.usage.extra.EVENT_ACTION"; + field @FlaggedApi("android.app.usage.user_interaction_type_api") public static final String EXTRA_EVENT_CATEGORY = "android.app.usage.extra.EVENT_CATEGORY"; + field public static final int INTERVAL_BEST = 4; // 0x4 + field public static final int INTERVAL_DAILY = 0; // 0x0 + field public static final int INTERVAL_MONTHLY = 2; // 0x2 + field public static final int INTERVAL_WEEKLY = 1; // 0x1 + field public static final int INTERVAL_YEARLY = 3; // 0x3 + field public static final int STANDBY_BUCKET_ACTIVE = 10; // 0xa + field public static final int STANDBY_BUCKET_FREQUENT = 30; // 0x1e + field public static final int STANDBY_BUCKET_RARE = 40; // 0x28 + field public static final int STANDBY_BUCKET_RESTRICTED = 45; // 0x2d + field public static final int STANDBY_BUCKET_WORKING_SET = 20; // 0x14 + } + +} + +package android.app.wallpaper { + + @FlaggedApi("android.app.live_wallpaper_content_handling") public final class WallpaperDescription implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.content.ComponentName getComponent(); + method @NonNull public android.os.PersistableBundle getContent(); + method @Nullable public CharSequence getContextDescription(); + method @Nullable public android.net.Uri getContextUri(); + method @NonNull public java.util.List getDescription(); + method @Nullable public String getId(); + method @Nullable public android.net.Uri getThumbnail(); + method @Nullable public CharSequence getTitle(); + method @NonNull public android.app.wallpaper.WallpaperDescription.Builder toBuilder(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class WallpaperDescription.Builder { + ctor public WallpaperDescription.Builder(); + method @NonNull public android.app.wallpaper.WallpaperDescription build(); + method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setContent(@NonNull android.os.PersistableBundle); + method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setContextDescription(@Nullable CharSequence); + method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setContextUri(@Nullable android.net.Uri); + method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setDescription(@NonNull java.util.List); + method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setId(@Nullable String); + method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setThumbnail(@Nullable android.net.Uri); + method @NonNull public android.app.wallpaper.WallpaperDescription.Builder setTitle(@Nullable CharSequence); + } + + @FlaggedApi("android.app.live_wallpaper_content_handling") public final class WallpaperInstance implements android.os.Parcelable { + ctor public WallpaperInstance(@Nullable android.app.WallpaperInfo, @NonNull android.app.wallpaper.WallpaperDescription); + method public int describeContents(); + method @NonNull public android.app.wallpaper.WallpaperDescription getDescription(); + method @NonNull public String getId(); + method @Nullable public android.app.WallpaperInfo getInfo(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.appwidget { + + public class AppWidgetHost { + ctor public AppWidgetHost(android.content.Context, int); + method public int allocateAppWidgetId(); + method protected void clearViews(); + method public final android.appwidget.AppWidgetHostView createView(android.content.Context, int, android.appwidget.AppWidgetProviderInfo); + method public static void deleteAllHosts(); + method public void deleteAppWidgetId(int); + method public void deleteHost(); + method public int[] getAppWidgetIds(); + method public void onAppWidgetRemoved(int); + method protected android.appwidget.AppWidgetHostView onCreateView(android.content.Context, int, android.appwidget.AppWidgetProviderInfo); + method protected void onProviderChanged(int, android.appwidget.AppWidgetProviderInfo); + method protected void onProvidersChanged(); + method public final void startAppWidgetConfigureActivityForResult(@NonNull android.app.Activity, int, int, int, @Nullable android.os.Bundle); + method public void startListening(); + method public void stopListening(); + } + + public class AppWidgetHostView extends android.widget.FrameLayout { + ctor public AppWidgetHostView(android.content.Context); + ctor public AppWidgetHostView(android.content.Context, int, int); + method public int getAppWidgetId(); + method public android.appwidget.AppWidgetProviderInfo getAppWidgetInfo(); + method public static android.graphics.Rect getDefaultPaddingForWidget(android.content.Context, android.content.ComponentName, android.graphics.Rect); + method protected android.view.View getDefaultView(); + method protected android.view.View getErrorView(); + method protected void prepareView(android.view.View); + method public void resetColorResources(); + method public void setAppWidget(int, android.appwidget.AppWidgetProviderInfo); + method public void setColorResources(@NonNull android.util.SparseIntArray); + method public void setExecutor(java.util.concurrent.Executor); + method public void setOnLightBackground(boolean); + method public void updateAppWidget(android.widget.RemoteViews); + method public void updateAppWidgetOptions(android.os.Bundle); + method @Deprecated public void updateAppWidgetSize(android.os.Bundle, int, int, int, int); + method public void updateAppWidgetSize(@NonNull android.os.Bundle, @NonNull java.util.List); + } + + public class AppWidgetManager { + method public boolean bindAppWidgetIdIfAllowed(int, android.content.ComponentName); + method public boolean bindAppWidgetIdIfAllowed(int, android.content.ComponentName, android.os.Bundle); + method public boolean bindAppWidgetIdIfAllowed(int, android.os.UserHandle, android.content.ComponentName, android.os.Bundle); + method public int[] getAppWidgetIds(android.content.ComponentName); + method public android.appwidget.AppWidgetProviderInfo getAppWidgetInfo(int); + method public android.os.Bundle getAppWidgetOptions(int); + method public java.util.List getInstalledProviders(); + method @NonNull public java.util.List getInstalledProvidersForPackage(@NonNull String, @Nullable android.os.UserHandle); + method @NonNull public java.util.List getInstalledProvidersForProfile(@Nullable android.os.UserHandle); + method public static android.appwidget.AppWidgetManager getInstance(android.content.Context); + method @FlaggedApi("android.appwidget.flags.generated_previews") @Nullable public android.widget.RemoteViews getWidgetPreview(@NonNull android.content.ComponentName, @Nullable android.os.UserHandle, int); + method public boolean isRequestPinAppWidgetSupported(); + method @Deprecated public void notifyAppWidgetViewDataChanged(int[], int); + method @Deprecated public void notifyAppWidgetViewDataChanged(int, int); + method public void partiallyUpdateAppWidget(int[], android.widget.RemoteViews); + method public void partiallyUpdateAppWidget(int, android.widget.RemoteViews); + method @FlaggedApi("android.appwidget.flags.generated_previews") public void removeWidgetPreview(@NonNull android.content.ComponentName, int); + method public boolean requestPinAppWidget(@NonNull android.content.ComponentName, @Nullable android.os.Bundle, @Nullable android.app.PendingIntent); + method @FlaggedApi("android.appwidget.flags.generated_previews") public boolean setWidgetPreview(@NonNull android.content.ComponentName, int, @NonNull android.widget.RemoteViews); + method public void updateAppWidget(int[], android.widget.RemoteViews); + method public void updateAppWidget(int, android.widget.RemoteViews); + method public void updateAppWidget(android.content.ComponentName, android.widget.RemoteViews); + method public void updateAppWidgetOptions(int, android.os.Bundle); + method public void updateAppWidgetProviderInfo(android.content.ComponentName, @Nullable String); + field public static final String ACTION_APPWIDGET_BIND = "android.appwidget.action.APPWIDGET_BIND"; + field public static final String ACTION_APPWIDGET_CONFIGURE = "android.appwidget.action.APPWIDGET_CONFIGURE"; + field public static final String ACTION_APPWIDGET_DELETED = "android.appwidget.action.APPWIDGET_DELETED"; + field public static final String ACTION_APPWIDGET_DISABLED = "android.appwidget.action.APPWIDGET_DISABLED"; + field public static final String ACTION_APPWIDGET_ENABLED = "android.appwidget.action.APPWIDGET_ENABLED"; + field public static final String ACTION_APPWIDGET_HOST_RESTORED = "android.appwidget.action.APPWIDGET_HOST_RESTORED"; + field public static final String ACTION_APPWIDGET_OPTIONS_CHANGED = "android.appwidget.action.APPWIDGET_UPDATE_OPTIONS"; + field public static final String ACTION_APPWIDGET_PICK = "android.appwidget.action.APPWIDGET_PICK"; + field public static final String ACTION_APPWIDGET_RESTORED = "android.appwidget.action.APPWIDGET_RESTORED"; + field public static final String ACTION_APPWIDGET_UPDATE = "android.appwidget.action.APPWIDGET_UPDATE"; + field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EVENT_CATEGORY_APPWIDGET = "android.appwidget"; + field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EVENT_TYPE_WIDGET_INTERACTION = "widget_interaction"; + field public static final String EXTRA_APPWIDGET_ID = "appWidgetId"; + field public static final String EXTRA_APPWIDGET_IDS = "appWidgetIds"; + field public static final String EXTRA_APPWIDGET_OLD_IDS = "appWidgetOldIds"; + field public static final String EXTRA_APPWIDGET_OPTIONS = "appWidgetOptions"; + field public static final String EXTRA_APPWIDGET_PREVIEW = "appWidgetPreview"; + field public static final String EXTRA_APPWIDGET_PROVIDER = "appWidgetProvider"; + field public static final String EXTRA_APPWIDGET_PROVIDER_PROFILE = "appWidgetProviderProfile"; + field public static final String EXTRA_CUSTOM_EXTRAS = "customExtras"; + field public static final String EXTRA_CUSTOM_INFO = "customInfo"; + field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EXTRA_EVENT_CLICKED_VIEWS = "android.appwidget.extra.EVENT_CLICKED_VIEWS"; + field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EXTRA_EVENT_DURATION_MS = "android.appwidget.extra.EVENT_DURATION_MS"; + field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EXTRA_EVENT_POSITION_RECT = "android.appwidget.extra.EVENT_POSITION_RECT"; + field @FlaggedApi("android.appwidget.flags.engagement_metrics") public static final String EXTRA_EVENT_SCROLLED_VIEWS = "android.appwidget.extra.EVENT_SCROLLED_VIEWS"; + field public static final String EXTRA_HOST_ID = "hostId"; + field public static final int INVALID_APPWIDGET_ID = 0; // 0x0 + field public static final String META_DATA_APPWIDGET_PROVIDER = "android.appwidget.provider"; + field public static final String OPTION_APPWIDGET_HOST_CATEGORY = "appWidgetCategory"; + field public static final String OPTION_APPWIDGET_MAX_HEIGHT = "appWidgetMaxHeight"; + field public static final String OPTION_APPWIDGET_MAX_WIDTH = "appWidgetMaxWidth"; + field public static final String OPTION_APPWIDGET_MIN_HEIGHT = "appWidgetMinHeight"; + field public static final String OPTION_APPWIDGET_MIN_WIDTH = "appWidgetMinWidth"; + field public static final String OPTION_APPWIDGET_RESTORE_COMPLETED = "appWidgetRestoreCompleted"; + field public static final String OPTION_APPWIDGET_SIZES = "appWidgetSizes"; + } + + public class AppWidgetProvider extends android.content.BroadcastReceiver { + ctor public AppWidgetProvider(); + method public void onAppWidgetOptionsChanged(android.content.Context, android.appwidget.AppWidgetManager, int, android.os.Bundle); + method public void onDeleted(android.content.Context, int[]); + method public void onDisabled(android.content.Context); + method public void onEnabled(android.content.Context); + method public void onReceive(android.content.Context, android.content.Intent); + method public void onRestored(android.content.Context, int[], int[]); + method public void onUpdate(android.content.Context, android.appwidget.AppWidgetManager, int[]); + } + + public class AppWidgetProviderInfo implements android.os.Parcelable { + ctor public AppWidgetProviderInfo(); + ctor public AppWidgetProviderInfo(android.os.Parcel); + method public android.appwidget.AppWidgetProviderInfo clone(); + method public int describeContents(); + method @NonNull public android.content.pm.ActivityInfo getActivityInfo(); + method public final android.os.UserHandle getProfile(); + method @Nullable public final CharSequence loadDescription(@NonNull android.content.Context); + method public final android.graphics.drawable.Drawable loadIcon(@NonNull android.content.Context, int); + method public final String loadLabel(android.content.pm.PackageManager); + method public final android.graphics.drawable.Drawable loadPreviewImage(@NonNull android.content.Context, int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int RESIZE_BOTH = 3; // 0x3 + field public static final int RESIZE_HORIZONTAL = 1; // 0x1 + field public static final int RESIZE_NONE = 0; // 0x0 + field public static final int RESIZE_VERTICAL = 2; // 0x2 + field public static final int WIDGET_CATEGORY_HOME_SCREEN = 1; // 0x1 + field public static final int WIDGET_CATEGORY_KEYGUARD = 2; // 0x2 + field @FlaggedApi("android.appwidget.flags.not_keyguard_category") public static final int WIDGET_CATEGORY_NOT_KEYGUARD = 8; // 0x8 + field public static final int WIDGET_CATEGORY_SEARCHBOX = 4; // 0x4 + field public static final int WIDGET_FEATURE_CONFIGURATION_OPTIONAL = 4; // 0x4 + field public static final int WIDGET_FEATURE_HIDE_FROM_PICKER = 2; // 0x2 + field public static final int WIDGET_FEATURE_RECONFIGURABLE = 1; // 0x1 + field public int autoAdvanceViewId; + field public android.content.ComponentName configure; + field @IdRes public int descriptionRes; + field @FlaggedApi("android.appwidget.flags.generated_previews") public int generatedPreviewCategories; + field public int icon; + field public int initialKeyguardLayout; + field public int initialLayout; + field @Deprecated public String label; + field public int maxResizeHeight; + field public int maxResizeWidth; + field public int minHeight; + field public int minResizeHeight; + field public int minResizeWidth; + field public int minWidth; + field public int previewImage; + field @IdRes public int previewLayout; + field public android.content.ComponentName provider; + field public int resizeMode; + field public int targetCellHeight; + field public int targetCellWidth; + field public int updatePeriodMillis; + field public int widgetCategory; + field public int widgetFeatures; + } + +} + +package android.companion { + + public final class AssociatedDevice implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.bluetooth.le.ScanResult getBleDevice(); + method @Nullable public android.bluetooth.BluetoothDevice getBluetoothDevice(); + method @Nullable public android.net.wifi.ScanResult getWifiDevice(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class AssociationInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.companion.AssociatedDevice getAssociatedDevice(); + method @FlaggedApi("android.companion.association_device_icon") @Nullable public android.graphics.drawable.Icon getDeviceIcon(); + method @FlaggedApi("android.companion.association_tag") @Nullable public android.companion.DeviceId getDeviceId(); + method @Nullable public android.net.MacAddress getDeviceMacAddress(); + method @Nullable public String getDeviceProfile(); + method @Nullable public CharSequence getDisplayName(); + method public int getId(); + method public int getSystemDataSyncFlags(); + method public boolean isSelfManaged(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class AssociationRequest implements android.os.Parcelable { + method public int describeContents(); + method @FlaggedApi("android.companion.association_device_icon") @Nullable public android.graphics.drawable.Icon getDeviceIcon(); + method @Nullable public String getDeviceProfile(); + method @Nullable public CharSequence getDisplayName(); + method public boolean isForceConfirmation(); + method public boolean isSelfManaged(); + method public boolean isSingleDevice(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING) public static final String DEVICE_PROFILE_APP_STREAMING = "android.app.role.COMPANION_DEVICE_APP_STREAMING"; + field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION) public static final String DEVICE_PROFILE_AUTOMOTIVE_PROJECTION = "android.app.role.SYSTEM_AUTOMOTIVE_PROJECTION"; + field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_COMPUTER) public static final String DEVICE_PROFILE_COMPUTER = "android.app.role.COMPANION_DEVICE_COMPUTER"; + field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_GLASSES) public static final String DEVICE_PROFILE_GLASSES = "android.app.role.COMPANION_DEVICE_GLASSES"; + field @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING) public static final String DEVICE_PROFILE_NEARBY_DEVICE_STREAMING = "android.app.role.COMPANION_DEVICE_NEARBY_DEVICE_STREAMING"; + field public static final String DEVICE_PROFILE_WATCH = "android.app.role.COMPANION_DEVICE_WATCH"; + } + + public static final class AssociationRequest.Builder { + ctor public AssociationRequest.Builder(); + method @NonNull public android.companion.AssociationRequest.Builder addDeviceFilter(@Nullable android.companion.DeviceFilter); + method @NonNull public android.companion.AssociationRequest build(); + method @FlaggedApi("android.companion.association_device_icon") @NonNull @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public android.companion.AssociationRequest.Builder setDeviceIcon(@NonNull android.graphics.drawable.Icon); + method @NonNull public android.companion.AssociationRequest.Builder setDeviceProfile(@NonNull String); + method @NonNull public android.companion.AssociationRequest.Builder setDisplayName(@NonNull CharSequence); + method @NonNull @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public android.companion.AssociationRequest.Builder setForceConfirmation(boolean); + method @NonNull @RequiresPermission(android.Manifest.permission.REQUEST_COMPANION_SELF_MANAGED) public android.companion.AssociationRequest.Builder setSelfManaged(boolean); + method @NonNull public android.companion.AssociationRequest.Builder setSingleDevice(boolean); + } + + public final class BluetoothDeviceFilter implements android.companion.DeviceFilter { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class BluetoothDeviceFilter.Builder { + ctor public BluetoothDeviceFilter.Builder(); + method @NonNull public android.companion.BluetoothDeviceFilter.Builder addServiceUuid(@Nullable android.os.ParcelUuid, @Nullable android.os.ParcelUuid); + method @NonNull public android.companion.BluetoothDeviceFilter build(); + method @NonNull public android.companion.BluetoothDeviceFilter.Builder setAddress(@Nullable String); + method public android.companion.BluetoothDeviceFilter.Builder setNamePattern(@Nullable java.util.regex.Pattern); + } + + public final class BluetoothLeDeviceFilter implements android.companion.DeviceFilter { + method public int describeContents(); + method public static int getRenamePrefixLengthLimit(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class BluetoothLeDeviceFilter.Builder { + ctor public BluetoothLeDeviceFilter.Builder(); + method @NonNull public android.companion.BluetoothLeDeviceFilter build(); + method public android.companion.BluetoothLeDeviceFilter.Builder setNamePattern(@Nullable java.util.regex.Pattern); + method @NonNull public android.companion.BluetoothLeDeviceFilter.Builder setRawDataFilter(@NonNull byte[], @Nullable byte[]); + method @NonNull public android.companion.BluetoothLeDeviceFilter.Builder setRenameFromBytes(@NonNull String, @NonNull String, int, int, java.nio.ByteOrder); + method @NonNull public android.companion.BluetoothLeDeviceFilter.Builder setRenameFromName(@NonNull String, @NonNull String, int, int); + method @NonNull public android.companion.BluetoothLeDeviceFilter.Builder setScanFilter(@Nullable android.bluetooth.le.ScanFilter); + } + + public final class CompanionDeviceManager { + method @RequiresPermission(anyOf={android.Manifest.permission.REQUEST_COMPANION_PROFILE_WATCH, android.Manifest.permission.REQUEST_COMPANION_PROFILE_COMPUTER, android.Manifest.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING, android.Manifest.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION}, conditional=true) public void associate(@NonNull android.companion.AssociationRequest, @NonNull android.companion.CompanionDeviceManager.Callback, @Nullable android.os.Handler); + method @RequiresPermission(anyOf={android.Manifest.permission.REQUEST_COMPANION_PROFILE_WATCH, android.Manifest.permission.REQUEST_COMPANION_PROFILE_COMPUTER, android.Manifest.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING, android.Manifest.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION}, conditional=true) public void associate(@NonNull android.companion.AssociationRequest, @NonNull java.util.concurrent.Executor, @NonNull android.companion.CompanionDeviceManager.Callback); + method @RequiresPermission(android.Manifest.permission.DELIVER_COMPANION_MESSAGES) public void attachSystemDataTransport(int, @NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws android.companion.DeviceNotAssociatedException; + method @Nullable public android.content.IntentSender buildAssociationCancellationIntent(); + method @Nullable public android.content.IntentSender buildPermissionTransferUserConsentIntent(int) throws android.companion.DeviceNotAssociatedException; + method @RequiresPermission(android.Manifest.permission.DELIVER_COMPANION_MESSAGES) public void detachSystemDataTransport(int) throws android.companion.DeviceNotAssociatedException; + method public void disableSystemDataSyncForTypes(int, int); + method @Deprecated public void disassociate(@NonNull String); + method public void disassociate(int); + method public void enableSystemDataSyncForTypes(int, int); + method @Deprecated @NonNull public java.util.List getAssociations(); + method @NonNull public java.util.List getMyAssociations(); + method @Deprecated public boolean hasNotificationAccess(android.content.ComponentName); + method @FlaggedApi("android.companion.perm_sync_user_consent") public boolean isPermissionTransferUserConsented(int); + method @FlaggedApi("android.companion.unpair_associated_device") @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT) public boolean removeBond(int); + method public void requestNotificationAccess(android.content.ComponentName); + method @FlaggedApi("android.companion.association_tag") public void setDeviceId(int, @Nullable android.companion.DeviceId); + method @Deprecated @FlaggedApi("android.companion.device_presence") @RequiresPermission(android.Manifest.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE) public void startObservingDevicePresence(@NonNull String) throws android.companion.DeviceNotAssociatedException; + method @FlaggedApi("android.companion.device_presence") @RequiresPermission(android.Manifest.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE) public void startObservingDevicePresence(@NonNull android.companion.ObservingDevicePresenceRequest); + method public void startSystemDataTransfer(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver) throws android.companion.DeviceNotAssociatedException; + method @Deprecated @FlaggedApi("android.companion.device_presence") @RequiresPermission(android.Manifest.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE) public void stopObservingDevicePresence(@NonNull String) throws android.companion.DeviceNotAssociatedException; + method @FlaggedApi("android.companion.device_presence") @RequiresPermission(android.Manifest.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE) public void stopObservingDevicePresence(@NonNull android.companion.ObservingDevicePresenceRequest); + field public static final String EXTRA_ASSOCIATION = "android.companion.extra.ASSOCIATION"; + field @Deprecated public static final String EXTRA_DEVICE = "android.companion.extra.DEVICE"; + field public static final int FLAG_CALL_METADATA = 1; // 0x1 + field public static final int RESULT_CANCELED = 0; // 0x0 + field public static final int RESULT_DISCOVERY_TIMEOUT = 2; // 0x2 + field public static final int RESULT_INTERNAL_ERROR = 3; // 0x3 + field public static final int RESULT_OK = -1; // 0xffffffff + field @FlaggedApi("android.companion.association_failure_code") public static final int RESULT_SECURITY_ERROR = 4; // 0x4 + field public static final int RESULT_USER_REJECTED = 1; // 0x1 + } + + public abstract static class CompanionDeviceManager.Callback { + ctor public CompanionDeviceManager.Callback(); + method public void onAssociationCreated(@NonNull android.companion.AssociationInfo); + method public void onAssociationPending(@NonNull android.content.IntentSender); + method @Deprecated public void onDeviceFound(@NonNull android.content.IntentSender); + method public abstract void onFailure(@Nullable CharSequence); + method @FlaggedApi("android.companion.association_failure_code") public void onFailure(int, @Nullable CharSequence); + } + + public abstract class CompanionDeviceService extends android.app.Service { + ctor public CompanionDeviceService(); + method @RequiresPermission(android.Manifest.permission.DELIVER_COMPANION_MESSAGES) public final void attachSystemDataTransport(int, @NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws android.companion.DeviceNotAssociatedException; + method @RequiresPermission(android.Manifest.permission.DELIVER_COMPANION_MESSAGES) public final void detachSystemDataTransport(int) throws android.companion.DeviceNotAssociatedException; + method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); + method @Deprecated @MainThread public void onDeviceAppeared(@NonNull String); + method @Deprecated @FlaggedApi("android.companion.device_presence") @MainThread public void onDeviceAppeared(@NonNull android.companion.AssociationInfo); + method @Deprecated @MainThread public void onDeviceDisappeared(@NonNull String); + method @Deprecated @FlaggedApi("android.companion.device_presence") @MainThread public void onDeviceDisappeared(@NonNull android.companion.AssociationInfo); + method @FlaggedApi("android.companion.device_presence") @MainThread public void onDevicePresenceEvent(@NonNull android.companion.DevicePresenceEvent); + field public static final String SERVICE_INTERFACE = "android.companion.CompanionDeviceService"; + } + + public class CompanionException extends java.lang.RuntimeException { + } + + public interface DeviceFilter extends android.os.Parcelable { + } + + @FlaggedApi("android.companion.association_tag") public final class DeviceId implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getCustomId(); + method @Nullable public android.net.MacAddress getMacAddress(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class DeviceId.Builder { + ctor public DeviceId.Builder(); + method @NonNull public android.companion.DeviceId build(); + method @NonNull public android.companion.DeviceId.Builder setCustomId(@Nullable String); + method @NonNull public android.companion.DeviceId.Builder setMacAddress(@Nullable android.net.MacAddress); + } + + public class DeviceNotAssociatedException extends java.lang.RuntimeException { + } + + @FlaggedApi("android.companion.device_presence") public final class DevicePresenceEvent implements android.os.Parcelable { + ctor public DevicePresenceEvent(int, int, @Nullable android.os.ParcelUuid); + method public int describeContents(); + method public int getAssociationId(); + method public int getEvent(); + method @Nullable public android.os.ParcelUuid getUuid(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int EVENT_BLE_APPEARED = 0; // 0x0 + field public static final int EVENT_BLE_DISAPPEARED = 1; // 0x1 + field public static final int EVENT_BT_CONNECTED = 2; // 0x2 + field public static final int EVENT_BT_DISCONNECTED = 3; // 0x3 + field public static final int EVENT_SELF_MANAGED_APPEARED = 4; // 0x4 + field public static final int EVENT_SELF_MANAGED_DISAPPEARED = 5; // 0x5 + field public static final int NO_ASSOCIATION = -1; // 0xffffffff + } + + @FlaggedApi("android.companion.device_presence") public final class ObservingDevicePresenceRequest implements android.os.Parcelable { + method public int describeContents(); + method public int getAssociationId(); + method @Nullable public android.os.ParcelUuid getUuid(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class ObservingDevicePresenceRequest.Builder { + ctor public ObservingDevicePresenceRequest.Builder(); + method @NonNull public android.companion.ObservingDevicePresenceRequest build(); + method @NonNull public android.companion.ObservingDevicePresenceRequest.Builder setAssociationId(int); + method @NonNull @RequiresPermission(allOf={android.Manifest.permission.REQUEST_OBSERVE_DEVICE_UUID_PRESENCE, android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_SCAN}) public android.companion.ObservingDevicePresenceRequest.Builder setUuid(@NonNull android.os.ParcelUuid); + } + + public final class WifiDeviceFilter implements android.companion.DeviceFilter { + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class WifiDeviceFilter.Builder { + ctor public WifiDeviceFilter.Builder(); + method @NonNull public android.companion.WifiDeviceFilter build(); + method @NonNull public android.companion.WifiDeviceFilter.Builder setBssid(@NonNull android.net.MacAddress); + method @NonNull public android.companion.WifiDeviceFilter.Builder setBssidMask(@NonNull android.net.MacAddress); + method @NonNull public android.companion.WifiDeviceFilter.Builder setNamePattern(@Nullable java.util.regex.Pattern); + } + +} + +package android.companion.virtual { + + public final class VirtualDevice implements android.os.Parcelable { + method public int describeContents(); + method public int getDeviceId(); + method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") @NonNull public int[] getDisplayIds(); + method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") @Nullable public CharSequence getDisplayName(); + method @Nullable public String getName(); + method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") @Nullable public String getPersistentDeviceId(); + method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public boolean hasCustomSensorSupport(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class VirtualDeviceManager { + method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") @Nullable public android.companion.virtual.VirtualDevice getVirtualDevice(int); + method @NonNull public java.util.List getVirtualDevices(); + method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public void registerVirtualDeviceListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.VirtualDeviceListener); + method @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public void unregisterVirtualDeviceListener(@NonNull android.companion.virtual.VirtualDeviceManager.VirtualDeviceListener); + } + + @FlaggedApi("android.companion.virtual.flags.vdm_public_apis") public static interface VirtualDeviceManager.VirtualDeviceListener { + method public default void onVirtualDeviceClosed(int); + method public default void onVirtualDeviceCreated(int); + } + +} + +package android.content { + + public abstract class AbstractThreadedSyncAdapter { + ctor public AbstractThreadedSyncAdapter(android.content.Context, boolean); + ctor public AbstractThreadedSyncAdapter(android.content.Context, boolean, boolean); + method public android.content.Context getContext(); + method public final android.os.IBinder getSyncAdapterBinder(); + method public abstract void onPerformSync(android.accounts.Account, android.os.Bundle, String, android.content.ContentProviderClient, android.content.SyncResult); + method public void onSecurityException(android.accounts.Account, android.os.Bundle, String, android.content.SyncResult); + method public void onSyncCanceled(); + method public void onSyncCanceled(Thread); + method @MainThread public boolean onUnsyncableAccount(); + field @Deprecated public static final int LOG_SYNC_DETAILS = 2743; // 0xab7 + } + + public class ActivityNotFoundException extends java.lang.RuntimeException { + ctor public ActivityNotFoundException(); + ctor public ActivityNotFoundException(String); + } + + public abstract class AsyncQueryHandler extends android.os.Handler { + ctor public AsyncQueryHandler(android.content.ContentResolver); + method public final void cancelOperation(int); + method protected android.os.Handler createHandler(android.os.Looper); + method protected void onDeleteComplete(int, Object, int); + method protected void onInsertComplete(int, Object, android.net.Uri); + method protected void onQueryComplete(int, Object, android.database.Cursor); + method protected void onUpdateComplete(int, Object, int); + method public final void startDelete(int, Object, android.net.Uri, String, String[]); + method public final void startInsert(int, Object, android.net.Uri, android.content.ContentValues); + method public void startQuery(int, Object, android.net.Uri, String[], String, String[], String); + method public final void startUpdate(int, Object, android.net.Uri, android.content.ContentValues, String, String[]); + } + + protected static final class AsyncQueryHandler.WorkerArgs { + ctor protected AsyncQueryHandler.WorkerArgs(); + field public Object cookie; + field public android.os.Handler handler; + field public String orderBy; + field public String[] projection; + field public Object result; + field public String selection; + field public String[] selectionArgs; + field public android.net.Uri uri; + field public android.content.ContentValues values; + } + + protected class AsyncQueryHandler.WorkerHandler extends android.os.Handler { + ctor public AsyncQueryHandler.WorkerHandler(android.os.Looper); + } + + @Deprecated public abstract class AsyncTaskLoader extends android.content.Loader { + ctor @Deprecated public AsyncTaskLoader(android.content.Context); + method @Deprecated public void cancelLoadInBackground(); + method @Deprecated public boolean isLoadInBackgroundCanceled(); + method @Deprecated public abstract D loadInBackground(); + method @Deprecated public void onCanceled(D); + method @Deprecated protected D onLoadInBackground(); + method @Deprecated public void setUpdateThrottle(long); + } + + public final class AttributionSource implements android.os.Parcelable { + method public boolean checkCallingUid(); + method public int describeContents(); + method public void enforceCallingUid(); + method @Nullable public String getAttributionTag(); + method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") public int getDeviceId(); + method @Nullable public android.content.AttributionSource getNext(); + method @Nullable public String getPackageName(); + method public int getPid(); + method public int getUid(); + method public boolean isTrusted(@NonNull android.content.Context); + method @NonNull public static android.content.AttributionSource myAttributionSource(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class AttributionSource.Builder { + ctor public AttributionSource.Builder(int); + ctor public AttributionSource.Builder(@NonNull android.content.AttributionSource); + method @NonNull public android.content.AttributionSource build(); + method @NonNull public android.content.AttributionSource.Builder setAttributionTag(@Nullable String); + method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @NonNull public android.content.AttributionSource.Builder setDeviceId(int); + method @NonNull public android.content.AttributionSource.Builder setNext(@Nullable android.content.AttributionSource); + method @FlaggedApi("android.permission.flags.set_next_attribution_source") @NonNull public android.content.AttributionSource.Builder setNextAttributionSource(@NonNull android.content.AttributionSource); + method @NonNull public android.content.AttributionSource.Builder setPackageName(@Nullable String); + method @NonNull public android.content.AttributionSource.Builder setPid(int); + } + + public abstract class BroadcastReceiver { + ctor public BroadcastReceiver(); + method public final void abortBroadcast(); + method public final void clearAbortBroadcast(); + method public final boolean getAbortBroadcast(); + method public final boolean getDebugUnregister(); + method public final int getResultCode(); + method public final String getResultData(); + method public final android.os.Bundle getResultExtras(boolean); + method @Nullable public String getSentFromPackage(); + method public int getSentFromUid(); + method public final android.content.BroadcastReceiver.PendingResult goAsync(); + method public final boolean isInitialStickyBroadcast(); + method public final boolean isOrderedBroadcast(); + method public abstract void onReceive(android.content.Context, android.content.Intent); + method public android.os.IBinder peekService(android.content.Context, android.content.Intent); + method public final void setDebugUnregister(boolean); + method public final void setOrderedHint(boolean); + method public final void setResult(int, String, android.os.Bundle); + method public final void setResultCode(int); + method public final void setResultData(String); + method public final void setResultExtras(android.os.Bundle); + } + + public static class BroadcastReceiver.PendingResult { + method public final void abortBroadcast(); + method public final void clearAbortBroadcast(); + method public final void finish(); + method public final boolean getAbortBroadcast(); + method public final int getResultCode(); + method public final String getResultData(); + method public final android.os.Bundle getResultExtras(boolean); + method public final void setResult(int, String, android.os.Bundle); + method public final void setResultCode(int); + method public final void setResultData(String); + method public final void setResultExtras(android.os.Bundle); + } + + public class ClipData implements android.os.Parcelable { + ctor public ClipData(CharSequence, String[], android.content.ClipData.Item); + ctor public ClipData(android.content.ClipDescription, android.content.ClipData.Item); + ctor public ClipData(android.content.ClipData); + method public void addItem(android.content.ClipData.Item); + method public void addItem(android.content.ContentResolver, android.content.ClipData.Item); + method public int describeContents(); + method public android.content.ClipDescription getDescription(); + method public android.content.ClipData.Item getItemAt(int); + method public int getItemCount(); + method public static android.content.ClipData newHtmlText(CharSequence, CharSequence, String); + method public static android.content.ClipData newIntent(CharSequence, android.content.Intent); + method public static android.content.ClipData newPlainText(CharSequence, CharSequence); + method public static android.content.ClipData newRawUri(CharSequence, android.net.Uri); + method public static android.content.ClipData newUri(android.content.ContentResolver, CharSequence, android.net.Uri); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class ClipData.Item { + ctor public ClipData.Item(CharSequence); + ctor public ClipData.Item(CharSequence, String); + ctor public ClipData.Item(android.content.Intent); + ctor public ClipData.Item(android.net.Uri); + ctor public ClipData.Item(CharSequence, android.content.Intent, android.net.Uri); + ctor public ClipData.Item(CharSequence, String, android.content.Intent, android.net.Uri); + method public String coerceToHtmlText(android.content.Context); + method public CharSequence coerceToStyledText(android.content.Context); + method public CharSequence coerceToText(android.content.Context); + method public String getHtmlText(); + method public android.content.Intent getIntent(); + method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @Nullable public android.content.IntentSender getIntentSender(); + method public CharSequence getText(); + method @Nullable public android.view.textclassifier.TextLinks getTextLinks(); + method public android.net.Uri getUri(); + } + + @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") public static final class ClipData.Item.Builder { + ctor public ClipData.Item.Builder(); + method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item build(); + method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setHtmlText(@Nullable String); + method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setIntent(@Nullable android.content.Intent); + method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setIntentSender(@Nullable android.content.IntentSender); + method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setText(@Nullable CharSequence); + method @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") @NonNull public android.content.ClipData.Item.Builder setUri(@Nullable android.net.Uri); + } + + public class ClipDescription implements android.os.Parcelable { + ctor public ClipDescription(CharSequence, String[]); + ctor public ClipDescription(android.content.ClipDescription); + method public static boolean compareMimeTypes(String, String); + method public int describeContents(); + method public String[] filterMimeTypes(String); + method public int getClassificationStatus(); + method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(@NonNull String); + method public android.os.PersistableBundle getExtras(); + method public CharSequence getLabel(); + method public String getMimeType(int); + method public int getMimeTypeCount(); + method public long getTimestamp(); + method public boolean hasMimeType(String); + method public boolean isStyledText(); + method public void setExtras(android.os.PersistableBundle); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CLASSIFICATION_COMPLETE = 3; // 0x3 + field public static final int CLASSIFICATION_NOT_COMPLETE = 1; // 0x1 + field public static final int CLASSIFICATION_NOT_PERFORMED = 2; // 0x2 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String EXTRA_IS_REMOTE_DEVICE = "android.content.extra.IS_REMOTE_DEVICE"; + field public static final String EXTRA_IS_SENSITIVE = "android.content.extra.IS_SENSITIVE"; + field public static final String MIMETYPE_TEXT_HTML = "text/html"; + field public static final String MIMETYPE_TEXT_INTENT = "text/vnd.android.intent"; + field public static final String MIMETYPE_TEXT_PLAIN = "text/plain"; + field public static final String MIMETYPE_TEXT_URILIST = "text/uri-list"; + field public static final String MIMETYPE_UNKNOWN = "application/octet-stream"; + } + + public class ClipboardManager extends android.text.ClipboardManager { + method public void addPrimaryClipChangedListener(android.content.ClipboardManager.OnPrimaryClipChangedListener); + method public void clearPrimaryClip(); + method @Nullable public android.content.ClipData getPrimaryClip(); + method @Nullable public android.content.ClipDescription getPrimaryClipDescription(); + method @Deprecated public CharSequence getText(); + method public boolean hasPrimaryClip(); + method @Deprecated public boolean hasText(); + method public void removePrimaryClipChangedListener(android.content.ClipboardManager.OnPrimaryClipChangedListener); + method public void setPrimaryClip(@NonNull android.content.ClipData); + method @Deprecated public void setText(CharSequence); + } + + public static interface ClipboardManager.OnPrimaryClipChangedListener { + method public void onPrimaryClipChanged(); + } + + public interface ComponentCallbacks { + method public void onConfigurationChanged(@NonNull android.content.res.Configuration); + method @Deprecated public void onLowMemory(); + } + + public interface ComponentCallbacks2 extends android.content.ComponentCallbacks { + method public void onTrimMemory(int); + field public static final int TRIM_MEMORY_BACKGROUND = 40; // 0x28 + field @Deprecated public static final int TRIM_MEMORY_COMPLETE = 80; // 0x50 + field @Deprecated public static final int TRIM_MEMORY_MODERATE = 60; // 0x3c + field @Deprecated public static final int TRIM_MEMORY_RUNNING_CRITICAL = 15; // 0xf + field @Deprecated public static final int TRIM_MEMORY_RUNNING_LOW = 10; // 0xa + field @Deprecated public static final int TRIM_MEMORY_RUNNING_MODERATE = 5; // 0x5 + field public static final int TRIM_MEMORY_UI_HIDDEN = 20; // 0x14 + } + + public final class ComponentName implements java.lang.Cloneable java.lang.Comparable android.os.Parcelable { + ctor public ComponentName(@NonNull String, @NonNull String); + ctor public ComponentName(@NonNull android.content.Context, @NonNull String); + ctor public ComponentName(@NonNull android.content.Context, @NonNull Class); + ctor public ComponentName(android.os.Parcel); + method public android.content.ComponentName clone(); + method public int compareTo(android.content.ComponentName); + method @NonNull public static android.content.ComponentName createRelative(@NonNull String, @NonNull String); + method @NonNull public static android.content.ComponentName createRelative(@NonNull android.content.Context, @NonNull String); + method public int describeContents(); + method @NonNull public String flattenToShortString(); + method @NonNull public String flattenToString(); + method @NonNull public String getClassName(); + method @NonNull public String getPackageName(); + method public String getShortClassName(); + method public static android.content.ComponentName readFromParcel(android.os.Parcel); + method public String toShortString(); + method @Nullable public static android.content.ComponentName unflattenFromString(@NonNull String); + method public void writeToParcel(android.os.Parcel, int); + method public static void writeToParcel(android.content.ComponentName, android.os.Parcel); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class ContentProvider implements android.content.ComponentCallbacks2 { + ctor public ContentProvider(); + method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull String, @NonNull java.util.ArrayList) throws android.content.OperationApplicationException; + method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull java.util.ArrayList) throws android.content.OperationApplicationException; + method public void attachInfo(android.content.Context, android.content.pm.ProviderInfo); + method public int bulkInsert(@NonNull android.net.Uri, @NonNull android.content.ContentValues[]); + method @Nullable public android.os.Bundle call(@NonNull String, @NonNull String, @Nullable String, @Nullable android.os.Bundle); + method @Nullable public android.os.Bundle call(@NonNull String, @Nullable String, @Nullable android.os.Bundle); + method @Nullable public android.net.Uri canonicalize(@NonNull android.net.Uri); + method @NonNull public final android.content.ContentProvider.CallingIdentity clearCallingIdentity(); + method public abstract int delete(@NonNull android.net.Uri, @Nullable String, @Nullable String[]); + method public int delete(@NonNull android.net.Uri, @Nullable android.os.Bundle); + method public void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]); + method @Nullable public final android.content.AttributionSource getCallingAttributionSource(); + method @Nullable public final String getCallingAttributionTag(); + method @Nullable public final String getCallingPackage(); + method @Nullable public final String getCallingPackageUnchecked(); + method @Nullable public final android.content.Context getContext(); + method @Nullable public final android.content.pm.PathPermission[] getPathPermissions(); + method @Nullable public final String getReadPermission(); + method @Nullable public String[] getStreamTypes(@NonNull android.net.Uri, @NonNull String); + method @Nullable public abstract String getType(@NonNull android.net.Uri); + method @Nullable public String getTypeAnonymous(@NonNull android.net.Uri); + method @Nullable public final String getWritePermission(); + method @Nullable public abstract android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues); + method @Nullable public android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); + method protected boolean isTemporary(); + method public void onCallingPackageChanged(); + method public void onConfigurationChanged(android.content.res.Configuration); + method public abstract boolean onCreate(); + method public void onLowMemory(); + method public void onTrimMemory(int); + method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; + method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method @Nullable public android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; + method @Nullable public android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method @NonNull protected final android.os.ParcelFileDescriptor openFileHelper(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; + method @NonNull public android.os.ParcelFileDescriptor openPipeHelper(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable T, @NonNull android.content.ContentProvider.PipeDataWriter) throws java.io.FileNotFoundException; + method @Nullable public android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException; + method @Nullable public android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method @Nullable public abstract android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String); + method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal); + method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); + method public boolean refresh(android.net.Uri, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); + method @NonNull public final android.content.Context requireContext(); + method public final void restoreCallingIdentity(@NonNull android.content.ContentProvider.CallingIdentity); + method protected final void setPathPermissions(@Nullable android.content.pm.PathPermission[]); + method protected final void setReadPermission(@Nullable String); + method protected final void setWritePermission(@Nullable String); + method public void shutdown(); + method @Nullable public android.net.Uri uncanonicalize(@NonNull android.net.Uri); + method public abstract int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]); + method public int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); + } + + public final class ContentProvider.CallingIdentity { + } + + public static interface ContentProvider.PipeDataWriter { + method public void writeDataToPipe(@NonNull android.os.ParcelFileDescriptor, @NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable T); + } + + public class ContentProviderClient implements java.lang.AutoCloseable { + method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull java.util.ArrayList) throws android.content.OperationApplicationException, android.os.RemoteException; + method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull String, @NonNull java.util.ArrayList) throws android.content.OperationApplicationException, android.os.RemoteException; + method public int bulkInsert(@NonNull android.net.Uri, @NonNull android.content.ContentValues[]) throws android.os.RemoteException; + method @Nullable public android.os.Bundle call(@NonNull String, @Nullable String, @Nullable android.os.Bundle) throws android.os.RemoteException; + method @Nullable public android.os.Bundle call(@NonNull String, @NonNull String, @Nullable String, @Nullable android.os.Bundle) throws android.os.RemoteException; + method @Nullable public final android.net.Uri canonicalize(@NonNull android.net.Uri) throws android.os.RemoteException; + method public void close(); + method public int delete(@NonNull android.net.Uri, @Nullable String, @Nullable String[]) throws android.os.RemoteException; + method public int delete(@NonNull android.net.Uri, @Nullable android.os.Bundle) throws android.os.RemoteException; + method @Nullable public android.content.ContentProvider getLocalContentProvider(); + method @Nullable public String[] getStreamTypes(@NonNull android.net.Uri, @NonNull String) throws android.os.RemoteException; + method @Nullable public String getType(@NonNull android.net.Uri) throws android.os.RemoteException; + method @Nullable public android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues) throws android.os.RemoteException; + method @Nullable public android.net.Uri insert(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle) throws android.os.RemoteException; + method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException, android.os.RemoteException; + method @Nullable public android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException, android.os.RemoteException; + method @Nullable public android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException, android.os.RemoteException; + method @Nullable public android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException, android.os.RemoteException; + method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException, android.os.RemoteException; + method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException, android.os.RemoteException; + method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException, android.os.RemoteException; + method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String) throws android.os.RemoteException; + method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal) throws android.os.RemoteException; + method @Nullable public android.database.Cursor query(@NonNull android.net.Uri, @Nullable String[], android.os.Bundle, @Nullable android.os.CancellationSignal) throws android.os.RemoteException; + method public boolean refresh(android.net.Uri, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws android.os.RemoteException; + method @Deprecated public boolean release(); + method @Nullable public final android.net.Uri uncanonicalize(@NonNull android.net.Uri) throws android.os.RemoteException; + method public int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]) throws android.os.RemoteException; + method public int update(@NonNull android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle) throws android.os.RemoteException; + } + + public class ContentProviderOperation implements android.os.Parcelable { + method @NonNull public android.content.ContentProviderResult apply(@NonNull android.content.ContentProvider, @NonNull android.content.ContentProviderResult[], int) throws android.content.OperationApplicationException; + method public int describeContents(); + method @NonNull public android.net.Uri getUri(); + method public boolean isAssertQuery(); + method public boolean isCall(); + method public boolean isDelete(); + method public boolean isExceptionAllowed(); + method public boolean isInsert(); + method public boolean isReadOperation(); + method public boolean isUpdate(); + method public boolean isWriteOperation(); + method public boolean isYieldAllowed(); + method @NonNull public static android.content.ContentProviderOperation.Builder newAssertQuery(@NonNull android.net.Uri); + method @NonNull public static android.content.ContentProviderOperation.Builder newCall(@NonNull android.net.Uri, @Nullable String, @Nullable String); + method @NonNull public static android.content.ContentProviderOperation.Builder newDelete(@NonNull android.net.Uri); + method @NonNull public static android.content.ContentProviderOperation.Builder newInsert(@NonNull android.net.Uri); + method @NonNull public static android.content.ContentProviderOperation.Builder newUpdate(@NonNull android.net.Uri); + method @Nullable public android.os.Bundle resolveExtrasBackReferences(@NonNull android.content.ContentProviderResult[], int); + method @Nullable public String[] resolveSelectionArgsBackReferences(@NonNull android.content.ContentProviderResult[], int); + method @Nullable public android.content.ContentValues resolveValueBackReferences(@NonNull android.content.ContentProviderResult[], int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class ContentProviderOperation.Builder { + method @NonNull public android.content.ContentProviderOperation build(); + method @NonNull public android.content.ContentProviderOperation.Builder withExceptionAllowed(boolean); + method @NonNull public android.content.ContentProviderOperation.Builder withExpectedCount(int); + method @NonNull public android.content.ContentProviderOperation.Builder withExtra(@NonNull String, @Nullable Object); + method @NonNull public android.content.ContentProviderOperation.Builder withExtraBackReference(@NonNull String, int); + method @NonNull public android.content.ContentProviderOperation.Builder withExtraBackReference(@NonNull String, int, @NonNull String); + method @NonNull public android.content.ContentProviderOperation.Builder withExtras(@NonNull android.os.Bundle); + method @NonNull public android.content.ContentProviderOperation.Builder withSelection(@Nullable String, @Nullable String[]); + method @NonNull public android.content.ContentProviderOperation.Builder withSelectionBackReference(int, int); + method @NonNull public android.content.ContentProviderOperation.Builder withSelectionBackReference(int, int, @NonNull String); + method @NonNull public android.content.ContentProviderOperation.Builder withValue(@NonNull String, @Nullable Object); + method @NonNull public android.content.ContentProviderOperation.Builder withValueBackReference(@NonNull String, int); + method @NonNull public android.content.ContentProviderOperation.Builder withValueBackReference(@NonNull String, int, @NonNull String); + method @NonNull public android.content.ContentProviderOperation.Builder withValueBackReferences(@NonNull android.content.ContentValues); + method @NonNull public android.content.ContentProviderOperation.Builder withValues(@NonNull android.content.ContentValues); + method @NonNull public android.content.ContentProviderOperation.Builder withYieldAllowed(boolean); + } + + public class ContentProviderResult implements android.os.Parcelable { + ctor public ContentProviderResult(@NonNull android.net.Uri); + ctor public ContentProviderResult(int); + ctor public ContentProviderResult(@NonNull android.os.Bundle); + ctor public ContentProviderResult(@NonNull Throwable); + ctor public ContentProviderResult(android.os.Parcel); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Nullable public final Integer count; + field @Nullable public final Throwable exception; + field @Nullable public final android.os.Bundle extras; + field @Nullable public final android.net.Uri uri; + } + + public class ContentQueryMap extends java.util.Observable { + ctor public ContentQueryMap(android.database.Cursor, String, boolean, android.os.Handler); + method public void close(); + method public java.util.Map getRows(); + method public android.content.ContentValues getValues(String); + method public void requery(); + method public void setKeepUpdated(boolean); + } + + public abstract class ContentResolver { + ctor public ContentResolver(@Nullable android.content.Context); + method @Nullable public final android.content.ContentProviderClient acquireContentProviderClient(@NonNull android.net.Uri); + method @Nullable public final android.content.ContentProviderClient acquireContentProviderClient(@NonNull String); + method @Nullable public final android.content.ContentProviderClient acquireUnstableContentProviderClient(@NonNull android.net.Uri); + method @Nullable public final android.content.ContentProviderClient acquireUnstableContentProviderClient(@NonNull String); + method public static void addPeriodicSync(android.accounts.Account, String, android.os.Bundle, long); + method public static Object addStatusChangeListener(int, android.content.SyncStatusObserver); + method @NonNull public android.content.ContentProviderResult[] applyBatch(@NonNull String, @NonNull java.util.ArrayList) throws android.content.OperationApplicationException, android.os.RemoteException; + method public final int bulkInsert(@NonNull @RequiresPermission.Write android.net.Uri, @NonNull android.content.ContentValues[]); + method @Nullable public final android.os.Bundle call(@NonNull android.net.Uri, @NonNull String, @Nullable String, @Nullable android.os.Bundle); + method @Nullable public final android.os.Bundle call(@NonNull String, @NonNull String, @Nullable String, @Nullable android.os.Bundle); + method @Deprecated public void cancelSync(android.net.Uri); + method public static void cancelSync(android.accounts.Account, String); + method public static void cancelSync(android.content.SyncRequest); + method @Nullable public final android.net.Uri canonicalize(@NonNull android.net.Uri); + method public final int delete(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable String, @Nullable String[]); + method public final int delete(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.os.Bundle); + method @Deprecated public static android.content.SyncInfo getCurrentSync(); + method public static java.util.List getCurrentSyncs(); + method public static int getIsSyncable(android.accounts.Account, String); + method public static boolean getMasterSyncAutomatically(); + method @NonNull public java.util.List getOutgoingPersistedUriPermissions(); + method public static java.util.List getPeriodicSyncs(android.accounts.Account, String); + method @NonNull public java.util.List getPersistedUriPermissions(); + method @Nullable public String[] getStreamTypes(@NonNull android.net.Uri, @NonNull String); + method public static android.content.SyncAdapterType[] getSyncAdapterTypes(); + method public static boolean getSyncAutomatically(android.accounts.Account, String); + method @Nullable public final String getType(@NonNull android.net.Uri); + method @NonNull public final android.content.ContentResolver.MimeTypeInfo getTypeInfo(@NonNull String); + method @Nullable public final android.net.Uri insert(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues); + method @Nullable public final android.net.Uri insert(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); + method public static boolean isSyncActive(android.accounts.Account, String); + method public static boolean isSyncPending(android.accounts.Account, String); + method @NonNull public android.graphics.Bitmap loadThumbnail(@NonNull android.net.Uri, @NonNull android.util.Size, @Nullable android.os.CancellationSignal) throws java.io.IOException; + method public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver); + method @Deprecated public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver, boolean); + method public void notifyChange(@NonNull android.net.Uri, @Nullable android.database.ContentObserver, int); + method public void notifyChange(@NonNull java.util.Collection, @Nullable android.database.ContentObserver, int); + method @Nullable public final android.content.res.AssetFileDescriptor openAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method @Nullable public final android.content.res.AssetFileDescriptor openAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; + method @Nullable public final android.content.res.AssetFileDescriptor openAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method @Nullable public final android.os.ParcelFileDescriptor openFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method @Nullable public final android.os.ParcelFileDescriptor openFileDescriptor(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; + method @Nullable public final android.os.ParcelFileDescriptor openFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method @Nullable public final java.io.InputStream openInputStream(@NonNull android.net.Uri) throws java.io.FileNotFoundException; + method @Nullable public final java.io.OutputStream openOutputStream(@NonNull android.net.Uri) throws java.io.FileNotFoundException; + method @Nullable public final java.io.OutputStream openOutputStream(@NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; + method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFile(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException; + method @Nullable public final android.content.res.AssetFileDescriptor openTypedAssetFileDescriptor(@NonNull android.net.Uri, @NonNull String, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method @Nullable public final android.database.Cursor query(@NonNull @RequiresPermission.Read android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String); + method @Nullable public final android.database.Cursor query(@NonNull @RequiresPermission.Read android.net.Uri, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable android.os.CancellationSignal); + method @Nullable public final android.database.Cursor query(@NonNull @RequiresPermission.Read android.net.Uri, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); + method public final boolean refresh(@NonNull android.net.Uri, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal); + method public final void registerContentObserver(@NonNull android.net.Uri, boolean, @NonNull android.database.ContentObserver); + method public void releasePersistableUriPermission(@NonNull android.net.Uri, int); + method public static void removePeriodicSync(android.accounts.Account, String, android.os.Bundle); + method public static void removeStatusChangeListener(Object); + method public static void requestSync(android.accounts.Account, String, android.os.Bundle); + method public static void requestSync(android.content.SyncRequest); + method public static void setIsSyncable(android.accounts.Account, String, int); + method public static void setMasterSyncAutomatically(boolean); + method public static void setSyncAutomatically(android.accounts.Account, String, boolean); + method @Deprecated public void startSync(android.net.Uri, android.os.Bundle); + method public void takePersistableUriPermission(@NonNull android.net.Uri, int); + method @Nullable public final android.net.Uri uncanonicalize(@NonNull android.net.Uri); + method public final void unregisterContentObserver(@NonNull android.database.ContentObserver); + method public final int update(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]); + method public final int update(@NonNull @RequiresPermission.Write android.net.Uri, @Nullable android.content.ContentValues, @Nullable android.os.Bundle); + method public static void validateSyncExtrasBundle(android.os.Bundle); + method @NonNull public static android.content.ContentResolver wrap(@NonNull android.content.ContentProvider); + method @NonNull public static android.content.ContentResolver wrap(@NonNull android.content.ContentProviderClient); + field public static final String ANY_CURSOR_ITEM_TYPE = "vnd.android.cursor.item/*"; + field public static final String CURSOR_DIR_BASE_TYPE = "vnd.android.cursor.dir"; + field public static final String CURSOR_ITEM_BASE_TYPE = "vnd.android.cursor.item"; + field public static final String EXTRA_HONORED_ARGS = "android.content.extra.HONORED_ARGS"; + field public static final String EXTRA_REFRESH_SUPPORTED = "android.content.extra.REFRESH_SUPPORTED"; + field public static final String EXTRA_SIZE = "android.content.extra.SIZE"; + field public static final String EXTRA_TOTAL_COUNT = "android.content.extra.TOTAL_COUNT"; + field public static final int NOTIFY_DELETE = 16; // 0x10 + field public static final int NOTIFY_INSERT = 4; // 0x4 + field public static final int NOTIFY_SKIP_NOTIFY_FOR_DESCENDANTS = 2; // 0x2 + field public static final int NOTIFY_SYNC_TO_NETWORK = 1; // 0x1 + field public static final int NOTIFY_UPDATE = 8; // 0x8 + field public static final String QUERY_ARG_GROUP_COLUMNS = "android:query-arg-group-columns"; + field public static final String QUERY_ARG_LIMIT = "android:query-arg-limit"; + field public static final String QUERY_ARG_OFFSET = "android:query-arg-offset"; + field public static final String QUERY_ARG_SORT_COLLATION = "android:query-arg-sort-collation"; + field public static final String QUERY_ARG_SORT_COLUMNS = "android:query-arg-sort-columns"; + field public static final String QUERY_ARG_SORT_DIRECTION = "android:query-arg-sort-direction"; + field public static final String QUERY_ARG_SORT_LOCALE = "android:query-arg-sort-locale"; + field public static final String QUERY_ARG_SQL_GROUP_BY = "android:query-arg-sql-group-by"; + field public static final String QUERY_ARG_SQL_HAVING = "android:query-arg-sql-having"; + field public static final String QUERY_ARG_SQL_LIMIT = "android:query-arg-sql-limit"; + field public static final String QUERY_ARG_SQL_SELECTION = "android:query-arg-sql-selection"; + field public static final String QUERY_ARG_SQL_SELECTION_ARGS = "android:query-arg-sql-selection-args"; + field public static final String QUERY_ARG_SQL_SORT_ORDER = "android:query-arg-sql-sort-order"; + field public static final int QUERY_SORT_DIRECTION_ASCENDING = 0; // 0x0 + field public static final int QUERY_SORT_DIRECTION_DESCENDING = 1; // 0x1 + field public static final String SCHEME_ANDROID_RESOURCE = "android.resource"; + field public static final String SCHEME_CONTENT = "content"; + field public static final String SCHEME_FILE = "file"; + field @Deprecated public static final String SYNC_EXTRAS_ACCOUNT = "account"; + field public static final String SYNC_EXTRAS_DISCARD_LOCAL_DELETIONS = "discard_deletions"; + field public static final String SYNC_EXTRAS_DO_NOT_RETRY = "do_not_retry"; + field public static final String SYNC_EXTRAS_EXPEDITED = "expedited"; + field @Deprecated public static final String SYNC_EXTRAS_FORCE = "force"; + field public static final String SYNC_EXTRAS_IGNORE_BACKOFF = "ignore_backoff"; + field public static final String SYNC_EXTRAS_IGNORE_SETTINGS = "ignore_settings"; + field public static final String SYNC_EXTRAS_INITIALIZE = "initialize"; + field public static final String SYNC_EXTRAS_MANUAL = "force"; + field public static final String SYNC_EXTRAS_OVERRIDE_TOO_MANY_DELETIONS = "deletions_override"; + field public static final String SYNC_EXTRAS_REQUIRE_CHARGING = "require_charging"; + field public static final String SYNC_EXTRAS_SCHEDULE_AS_EXPEDITED_JOB = "schedule_as_expedited_job"; + field public static final String SYNC_EXTRAS_UPLOAD = "upload"; + field public static final int SYNC_OBSERVER_TYPE_ACTIVE = 4; // 0x4 + field public static final int SYNC_OBSERVER_TYPE_PENDING = 2; // 0x2 + field public static final int SYNC_OBSERVER_TYPE_SETTINGS = 1; // 0x1 + } + + public static final class ContentResolver.MimeTypeInfo { + method @NonNull public CharSequence getContentDescription(); + method @NonNull public android.graphics.drawable.Icon getIcon(); + method @NonNull public CharSequence getLabel(); + } + + public class ContentUris { + ctor public ContentUris(); + method @NonNull public static android.net.Uri.Builder appendId(@NonNull android.net.Uri.Builder, long); + method public static long parseId(@NonNull android.net.Uri); + method @NonNull public static android.net.Uri removeId(@NonNull android.net.Uri); + method @NonNull public static android.net.Uri withAppendedId(@NonNull android.net.Uri, long); + } + + public final class ContentValues implements android.os.Parcelable { + ctor public ContentValues(); + ctor public ContentValues(int); + ctor public ContentValues(android.content.ContentValues); + method public void clear(); + method public boolean containsKey(String); + method public int describeContents(); + method public Object get(String); + method public Boolean getAsBoolean(String); + method public Byte getAsByte(String); + method public byte[] getAsByteArray(String); + method public Double getAsDouble(String); + method public Float getAsFloat(String); + method public Integer getAsInteger(String); + method public Long getAsLong(String); + method public Short getAsShort(String); + method public String getAsString(String); + method public boolean isEmpty(); + method public java.util.Set keySet(); + method public void put(String, String); + method public void put(String, Byte); + method public void put(String, Short); + method public void put(String, Integer); + method public void put(String, Long); + method public void put(String, Float); + method public void put(String, Double); + method public void put(String, Boolean); + method public void put(String, byte[]); + method public void putAll(android.content.ContentValues); + method public void putNull(String); + method public void remove(String); + method public int size(); + method public java.util.Set> valueSet(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String TAG = "ContentValues"; + } + + public abstract class Context { + ctor public Context(); + method public boolean bindIsolatedService(@NonNull @RequiresPermission android.content.Intent, int, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); + method public boolean bindIsolatedService(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.Context.BindServiceFlags, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); + method public abstract boolean bindService(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, int); + method public boolean bindService(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, @NonNull android.content.Context.BindServiceFlags); + method public boolean bindService(@NonNull @RequiresPermission android.content.Intent, int, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); + method public boolean bindService(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.Context.BindServiceFlags, @NonNull java.util.concurrent.Executor, @NonNull android.content.ServiceConnection); + method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL", android.Manifest.permission.INTERACT_ACROSS_PROFILES}, conditional=true) public boolean bindServiceAsUser(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, int, @NonNull android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL", android.Manifest.permission.INTERACT_ACROSS_PROFILES}, conditional=true) public boolean bindServiceAsUser(@NonNull @RequiresPermission android.content.Intent, @NonNull android.content.ServiceConnection, @NonNull android.content.Context.BindServiceFlags, @NonNull android.os.UserHandle); + method @CheckResult(suggest="#enforceCallingOrSelfPermission(String,String)") public abstract int checkCallingOrSelfPermission(@NonNull String); + method @CheckResult(suggest="#enforceCallingOrSelfUriPermission(Uri,int,String)") public abstract int checkCallingOrSelfUriPermission(android.net.Uri, int); + method @NonNull public int[] checkCallingOrSelfUriPermissions(@NonNull java.util.List, int); + method @CheckResult(suggest="#enforceCallingPermission(String,String)") public abstract int checkCallingPermission(@NonNull String); + method @CheckResult(suggest="#enforceCallingUriPermission(Uri,int,String)") public abstract int checkCallingUriPermission(android.net.Uri, int); + method @NonNull public int[] checkCallingUriPermissions(@NonNull java.util.List, int); + method @FlaggedApi("android.security.content_uri_permission_apis") public int checkContentUriPermissionFull(@NonNull android.net.Uri, int, int, int); + method @CheckResult(suggest="#enforcePermission(String,int,int,String)") public abstract int checkPermission(@NonNull String, int, int); + method public abstract int checkSelfPermission(@NonNull String); + method @CheckResult(suggest="#enforceUriPermission(Uri,int,int,String)") public abstract int checkUriPermission(android.net.Uri, int, int, int); + method @CheckResult(suggest="#enforceUriPermission(Uri,String,String,int,int,int,String)") public abstract int checkUriPermission(@Nullable android.net.Uri, @Nullable String, @Nullable String, int, int, int); + method @NonNull public int[] checkUriPermissions(@NonNull java.util.List, int, int, int); + method @Deprecated public abstract void clearWallpaper() throws java.io.IOException; + method @NonNull public android.content.Context createAttributionContext(@Nullable String); + method public abstract android.content.Context createConfigurationContext(@NonNull android.content.res.Configuration); + method @NonNull public android.content.Context createContext(@NonNull android.content.ContextParams); + method public abstract android.content.Context createContextForSplit(String) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.Context createDeviceContext(int); + method public abstract android.content.Context createDeviceProtectedStorageContext(); + method @DisplayContext public abstract android.content.Context createDisplayContext(@NonNull android.view.Display); + method public abstract android.content.Context createPackageContext(String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull @UiContext public android.content.Context createWindowContext(int, @Nullable android.os.Bundle); + method @NonNull @UiContext public android.content.Context createWindowContext(@NonNull android.view.Display, int, @Nullable android.os.Bundle); + method public abstract String[] databaseList(); + method public abstract boolean deleteDatabase(String); + method public abstract boolean deleteFile(String); + method public abstract boolean deleteSharedPreferences(String); + method public abstract void enforceCallingOrSelfPermission(@NonNull String, @Nullable String); + method public abstract void enforceCallingOrSelfUriPermission(android.net.Uri, int, String); + method public abstract void enforceCallingPermission(@NonNull String, @Nullable String); + method public abstract void enforceCallingUriPermission(android.net.Uri, int, String); + method public abstract void enforcePermission(@NonNull String, int, int, @Nullable String); + method public abstract void enforceUriPermission(android.net.Uri, int, int, int, String); + method public abstract void enforceUriPermission(@Nullable android.net.Uri, @Nullable String, @Nullable String, int, int, int, @Nullable String); + method public abstract String[] fileList(); + method public abstract android.content.Context getApplicationContext(); + method public abstract android.content.pm.ApplicationInfo getApplicationInfo(); + method public abstract android.content.res.AssetManager getAssets(); + method @NonNull public android.content.AttributionSource getAttributionSource(); + method @Nullable public String getAttributionTag(); + method public abstract java.io.File getCacheDir(); + method public abstract ClassLoader getClassLoader(); + method public abstract java.io.File getCodeCacheDir(); + method @ColorInt public final int getColor(@ColorRes int); + method @NonNull public final android.content.res.ColorStateList getColorStateList(@ColorRes int); + method public abstract android.content.ContentResolver getContentResolver(); + method public abstract java.io.File getDataDir(); + method public abstract java.io.File getDatabasePath(String); + method public int getDeviceId(); + method public abstract java.io.File getDir(String, int); + method @NonNull public android.view.Display getDisplay(); + method @Nullable public final android.graphics.drawable.Drawable getDrawable(@DrawableRes int); + method @Nullable public abstract java.io.File getExternalCacheDir(); + method public abstract java.io.File[] getExternalCacheDirs(); + method @Nullable public abstract java.io.File getExternalFilesDir(@Nullable String); + method public abstract java.io.File[] getExternalFilesDirs(String); + method @Deprecated public abstract java.io.File[] getExternalMediaDirs(); + method public abstract java.io.File getFileStreamPath(String); + method public abstract java.io.File getFilesDir(); + method public java.util.concurrent.Executor getMainExecutor(); + method public abstract android.os.Looper getMainLooper(); + method public abstract java.io.File getNoBackupFilesDir(); + method public abstract java.io.File getObbDir(); + method public abstract java.io.File[] getObbDirs(); + method @NonNull public String getOpPackageName(); + method public abstract String getPackageCodePath(); + method public abstract android.content.pm.PackageManager getPackageManager(); + method public abstract String getPackageName(); + method public abstract String getPackageResourcePath(); + method @Nullable public android.content.ContextParams getParams(); + method public abstract android.content.res.Resources getResources(); + method public abstract android.content.SharedPreferences getSharedPreferences(String, int); + method @NonNull public final String getString(@StringRes int); + method @NonNull public final String getString(@StringRes int, java.lang.Object...); + method public abstract Object getSystemService(@NonNull String); + method public final T getSystemService(@NonNull Class); + method @Nullable public abstract String getSystemServiceName(@NonNull Class); + method @NonNull public final CharSequence getText(@StringRes int); + method public abstract android.content.res.Resources.Theme getTheme(); + method @Deprecated public abstract android.graphics.drawable.Drawable getWallpaper(); + method @Deprecated public abstract int getWallpaperDesiredMinimumHeight(); + method @Deprecated public abstract int getWallpaperDesiredMinimumWidth(); + method public abstract void grantUriPermission(String, android.net.Uri, int); + method public abstract boolean isDeviceProtectedStorage(); + method public boolean isRestricted(); + method public boolean isUiContext(); + method public abstract boolean moveDatabaseFrom(android.content.Context, String); + method public abstract boolean moveSharedPreferencesFrom(android.content.Context, String); + method @NonNull public final android.content.res.TypedArray obtainStyledAttributes(@NonNull @StyleableRes int[]); + method @NonNull public final android.content.res.TypedArray obtainStyledAttributes(@StyleRes int, @NonNull @StyleableRes int[]) throws android.content.res.Resources.NotFoundException; + method @NonNull public final android.content.res.TypedArray obtainStyledAttributes(@Nullable android.util.AttributeSet, @NonNull @StyleableRes int[]); + method @NonNull public final android.content.res.TypedArray obtainStyledAttributes(@Nullable android.util.AttributeSet, @NonNull @StyleableRes int[], @AttrRes int, @StyleRes int); + method public abstract java.io.FileInputStream openFileInput(String) throws java.io.FileNotFoundException; + method public abstract java.io.FileOutputStream openFileOutput(String, int) throws java.io.FileNotFoundException; + method public abstract android.database.sqlite.SQLiteDatabase openOrCreateDatabase(String, int, android.database.sqlite.SQLiteDatabase.CursorFactory); + method public abstract android.database.sqlite.SQLiteDatabase openOrCreateDatabase(String, int, android.database.sqlite.SQLiteDatabase.CursorFactory, @Nullable android.database.DatabaseErrorHandler); + method @Deprecated public abstract android.graphics.drawable.Drawable peekWallpaper(); + method public void registerComponentCallbacks(android.content.ComponentCallbacks); + method public void registerDeviceIdChangeListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer); + method @Nullable public abstract android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter); + method @Nullable public abstract android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter, int); + method @Nullable public abstract android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler); + method @Nullable public abstract android.content.Intent registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler, int); + method @Deprecated @RequiresPermission(android.Manifest.permission.BROADCAST_STICKY) public abstract void removeStickyBroadcast(@RequiresPermission android.content.Intent); + method @Deprecated @RequiresPermission(allOf={"android.permission.INTERACT_ACROSS_USERS", android.Manifest.permission.BROADCAST_STICKY}) public abstract void removeStickyBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle); + method public void revokeSelfPermissionOnKill(@NonNull String); + method public void revokeSelfPermissionsOnKill(@NonNull java.util.Collection); + method public abstract void revokeUriPermission(android.net.Uri, int); + method public abstract void revokeUriPermission(String, android.net.Uri, int); + method public abstract void sendBroadcast(@RequiresPermission android.content.Intent); + method public abstract void sendBroadcast(@RequiresPermission android.content.Intent, @Nullable String); + method public void sendBroadcast(@NonNull android.content.Intent, @Nullable String, @Nullable android.os.Bundle); + method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public abstract void sendBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle); + method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public abstract void sendBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, @Nullable String); + method public void sendBroadcastWithMultiplePermissions(@NonNull android.content.Intent, @NonNull String[]); + method public abstract void sendOrderedBroadcast(@RequiresPermission android.content.Intent, @Nullable String); + method public void sendOrderedBroadcast(@NonNull android.content.Intent, @Nullable String, @Nullable android.os.Bundle); + method public abstract void sendOrderedBroadcast(@NonNull @RequiresPermission android.content.Intent, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method public 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); + method public void sendOrderedBroadcast(@NonNull android.content.Intent, @Nullable String, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method @RequiresPermission("android.permission.INTERACT_ACROSS_USERS") public abstract void sendOrderedBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, @Nullable String, android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method @Deprecated @RequiresPermission(android.Manifest.permission.BROADCAST_STICKY) public abstract void sendStickyBroadcast(@RequiresPermission android.content.Intent); + method @Deprecated @RequiresPermission(android.Manifest.permission.BROADCAST_STICKY) public void sendStickyBroadcast(@NonNull @RequiresPermission android.content.Intent, @Nullable android.os.Bundle); + method @Deprecated @RequiresPermission(allOf={"android.permission.INTERACT_ACROSS_USERS", android.Manifest.permission.BROADCAST_STICKY}) public abstract void sendStickyBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle); + method @Deprecated @RequiresPermission(android.Manifest.permission.BROADCAST_STICKY) public abstract void sendStickyOrderedBroadcast(@RequiresPermission android.content.Intent, android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method @Deprecated @RequiresPermission(allOf={"android.permission.INTERACT_ACROSS_USERS", android.Manifest.permission.BROADCAST_STICKY}) public abstract void sendStickyOrderedBroadcastAsUser(@RequiresPermission android.content.Intent, android.os.UserHandle, android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method public abstract void setTheme(@StyleRes int); + method @Deprecated public abstract void setWallpaper(android.graphics.Bitmap) throws java.io.IOException; + method @Deprecated public abstract void setWallpaper(java.io.InputStream) throws java.io.IOException; + method public abstract void startActivities(@RequiresPermission android.content.Intent[]); + method public abstract void startActivities(@RequiresPermission android.content.Intent[], android.os.Bundle); + method public abstract void startActivity(@RequiresPermission android.content.Intent); + method public abstract void startActivity(@RequiresPermission android.content.Intent, @Nullable android.os.Bundle); + method @Nullable public abstract android.content.ComponentName startForegroundService(android.content.Intent); + method public abstract boolean startInstrumentation(@NonNull android.content.ComponentName, @Nullable String, @Nullable android.os.Bundle); + method public abstract void startIntentSender(android.content.IntentSender, @Nullable android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; + method public abstract void startIntentSender(android.content.IntentSender, @Nullable android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; + method @Nullable public abstract android.content.ComponentName startService(android.content.Intent); + method public abstract boolean stopService(android.content.Intent); + method public abstract void unbindService(@NonNull android.content.ServiceConnection); + method public void unregisterComponentCallbacks(android.content.ComponentCallbacks); + method public void unregisterDeviceIdChangeListener(@NonNull java.util.function.IntConsumer); + method public abstract void unregisterReceiver(android.content.BroadcastReceiver); + method public void updateServiceGroup(@NonNull android.content.ServiceConnection, int, int); + field public static final String ACCESSIBILITY_SERVICE = "accessibility"; + field public static final String ACCOUNT_SERVICE = "account"; + field public static final String ACTIVITY_SERVICE = "activity"; + field @FlaggedApi("android.security.aapm_api") public static final String ADVANCED_PROTECTION_SERVICE = "advanced_protection"; + field public static final String ALARM_SERVICE = "alarm"; + field public static final String APPWIDGET_SERVICE = "appwidget"; + field @FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public static final String APP_FUNCTION_SERVICE = "app_function"; + field public static final String APP_OPS_SERVICE = "appops"; + field public static final String APP_SEARCH_SERVICE = "app_search"; + field public static final String AUDIO_SERVICE = "audio"; + field public static final String BATTERY_SERVICE = "batterymanager"; + field public static final int BIND_ABOVE_CLIENT = 8; // 0x8 + field public static final int BIND_ADJUST_WITH_ACTIVITY = 128; // 0x80 + field public static final int BIND_ALLOW_ACTIVITY_STARTS = 512; // 0x200 + field public static final int BIND_ALLOW_OOM_MANAGEMENT = 16; // 0x10 + field public static final int BIND_AUTO_CREATE = 1; // 0x1 + field public static final int BIND_DEBUG_UNBIND = 2; // 0x2 + field public static final int BIND_EXTERNAL_SERVICE = -2147483648; // 0x80000000 + field public static final long BIND_EXTERNAL_SERVICE_LONG = 4611686018427387904L; // 0x4000000000000000L + field public static final int BIND_IMPORTANT = 64; // 0x40 + field public static final int BIND_INCLUDE_CAPABILITIES = 4096; // 0x1000 + field public static final int BIND_NOT_FOREGROUND = 4; // 0x4 + field public static final int BIND_NOT_PERCEPTIBLE = 256; // 0x100 + field @FlaggedApi("android.content.flags.enable_bind_package_isolated_process") public static final int BIND_PACKAGE_ISOLATED_PROCESS = 16384; // 0x4000 + field public static final int BIND_SHARED_ISOLATED_PROCESS = 8192; // 0x2000 + field public static final int BIND_WAIVE_PRIORITY = 32; // 0x20 + field public static final String BIOMETRIC_SERVICE = "biometric"; + field public static final String BLOB_STORE_SERVICE = "blob_store"; + field public static final String BLUETOOTH_SERVICE = "bluetooth"; + field public static final String BUGREPORT_SERVICE = "bugreport"; + field public static final String CAMERA_SERVICE = "camera"; + field public static final String CAPTIONING_SERVICE = "captioning"; + field public static final String CARRIER_CONFIG_SERVICE = "carrier_config"; + field public static final String CLIPBOARD_SERVICE = "clipboard"; + field public static final String COMPANION_DEVICE_SERVICE = "companiondevice"; + field public static final String CONNECTIVITY_DIAGNOSTICS_SERVICE = "connectivity_diagnostics"; + field public static final String CONNECTIVITY_SERVICE = "connectivity"; + field public static final String CONSUMER_IR_SERVICE = "consumer_ir"; + field @FlaggedApi("android.provider.user_keys") public static final String CONTACT_KEYS_SERVICE = "contact_keys"; + field public static final int CONTEXT_IGNORE_SECURITY = 2; // 0x2 + field public static final int CONTEXT_INCLUDE_CODE = 1; // 0x1 + field public static final int CONTEXT_RESTRICTED = 4; // 0x4 + field public static final String CREDENTIAL_SERVICE = "credential"; + field public static final String CROSS_PROFILE_APPS_SERVICE = "crossprofileapps"; + field public static final int DEVICE_ID_DEFAULT = 0; // 0x0 + field public static final int DEVICE_ID_INVALID = -1; // 0xffffffff + field public static final String DEVICE_LOCK_SERVICE = "device_lock"; + field public static final String DEVICE_POLICY_SERVICE = "device_policy"; + field public static final String DISPLAY_HASH_SERVICE = "display_hash"; + field public static final String DISPLAY_SERVICE = "display"; + field public static final String DOMAIN_VERIFICATION_SERVICE = "domain_verification"; + field public static final String DOWNLOAD_SERVICE = "download"; + field public static final String DROPBOX_SERVICE = "dropbox"; + field public static final String EUICC_SERVICE = "euicc"; + field public static final String FILE_INTEGRITY_SERVICE = "file_integrity"; + field public static final String FINGERPRINT_SERVICE = "fingerprint"; + field public static final String GAME_SERVICE = "game"; + field public static final String GRAMMATICAL_INFLECTION_SERVICE = "grammatical_inflection"; + field public static final String HARDWARE_PROPERTIES_SERVICE = "hardware_properties"; + field public static final String HEALTHCONNECT_SERVICE = "healthconnect"; + field public static final String INPUT_METHOD_SERVICE = "input_method"; + field public static final String INPUT_SERVICE = "input"; + field public static final String IPSEC_SERVICE = "ipsec"; + field public static final String JOB_SCHEDULER_SERVICE = "jobscheduler"; + field public static final String KEYGUARD_SERVICE = "keyguard"; + field @FlaggedApi("android.security.keystore_grant_api") public static final String KEYSTORE_SERVICE = "keystore"; + field public static final String LAUNCHER_APPS_SERVICE = "launcherapps"; + field @UiContext public static final String LAYOUT_INFLATER_SERVICE = "layout_inflater"; + field public static final String LOCALE_SERVICE = "locale"; + field public static final String LOCATION_SERVICE = "location"; + field public static final String MEDIA_COMMUNICATION_SERVICE = "media_communication"; + field public static final String MEDIA_METRICS_SERVICE = "media_metrics"; + field public static final String MEDIA_PROJECTION_SERVICE = "media_projection"; + field @FlaggedApi("android.media.tv.flags.media_quality_fw") public static final String MEDIA_QUALITY_SERVICE = "media_quality"; + field public static final String MEDIA_ROUTER_SERVICE = "media_router"; + field public static final String MEDIA_SESSION_SERVICE = "media_session"; + field public static final String MIDI_SERVICE = "midi"; + field public static final int MODE_APPEND = 32768; // 0x8000 + field public static final int MODE_ENABLE_WRITE_AHEAD_LOGGING = 8; // 0x8 + field @Deprecated public static final int MODE_MULTI_PROCESS = 4; // 0x4 + field public static final int MODE_NO_LOCALIZED_COLLATORS = 16; // 0x10 + field public static final int MODE_PRIVATE = 0; // 0x0 + field @Deprecated public static final int MODE_WORLD_READABLE = 1; // 0x1 + field @Deprecated public static final int MODE_WORLD_WRITEABLE = 2; // 0x2 + field public static final String NETWORK_STATS_SERVICE = "netstats"; + field public static final String NFC_SERVICE = "nfc"; + field public static final String NOTIFICATION_SERVICE = "notification"; + field public static final String NSD_SERVICE = "servicediscovery"; + field public static final String OVERLAY_SERVICE = "overlay"; + field public static final String PEOPLE_SERVICE = "people"; + field public static final String PERFORMANCE_HINT_SERVICE = "performance_hint"; + field @FlaggedApi("android.security.frp_enforcement") public static final String PERSISTENT_DATA_BLOCK_SERVICE = "persistent_data_block"; + field public static final String POWER_SERVICE = "power"; + field public static final String PRINT_SERVICE = "print"; + field @FlaggedApi("android.os.telemetry_apis_framework_initialization") public static final String PROFILING_SERVICE = "profiling"; + field public static final int RECEIVER_EXPORTED = 2; // 0x2 + field public static final int RECEIVER_NOT_EXPORTED = 4; // 0x4 + field public static final int RECEIVER_VISIBLE_TO_INSTANT_APPS = 1; // 0x1 + field public static final String RESTRICTIONS_SERVICE = "restrictions"; + field public static final String ROLE_SERVICE = "role"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") public static final String SATELLITE_SERVICE = "satellite"; + field public static final String SEARCH_SERVICE = "search"; + field @FlaggedApi("android.os.security_state_service") public static final String SECURITY_STATE_SERVICE = "security_state"; + field public static final String SENSOR_SERVICE = "sensor"; + field public static final String SHORTCUT_SERVICE = "shortcut"; + field public static final String STATUS_BAR_SERVICE = "statusbar"; + field public static final String STORAGE_SERVICE = "storage"; + field public static final String STORAGE_STATS_SERVICE = "storagestats"; + field public static final String SYSTEM_HEALTH_SERVICE = "systemhealth"; + field public static final String TELECOM_SERVICE = "telecom"; + field public static final String TELEPHONY_IMS_SERVICE = "telephony_ims"; + field public static final String TELEPHONY_SERVICE = "phone"; + field public static final String TELEPHONY_SUBSCRIPTION_SERVICE = "telephony_subscription_service"; + field public static final String TEXT_CLASSIFICATION_SERVICE = "textclassification"; + field public static final String TEXT_SERVICES_MANAGER_SERVICE = "textservices"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String TV_AD_SERVICE = "tv_ad"; + field public static final String TV_INPUT_SERVICE = "tv_input"; + field public static final String TV_INTERACTIVE_APP_SERVICE = "tv_interactive_app"; + field public static final String UI_MODE_SERVICE = "uimode"; + field public static final String USAGE_STATS_SERVICE = "usagestats"; + field public static final String USB_SERVICE = "usb"; + field public static final String USER_SERVICE = "user"; + field public static final String VIBRATOR_MANAGER_SERVICE = "vibrator_manager"; + field @Deprecated public static final String VIBRATOR_SERVICE = "vibrator"; + field public static final String VIRTUAL_DEVICE_SERVICE = "virtualdevice"; + field public static final String VPN_MANAGEMENT_SERVICE = "vpn_management"; + field @UiContext public static final String WALLPAPER_SERVICE = "wallpaper"; + field public static final String WIFI_AWARE_SERVICE = "wifiaware"; + field public static final String WIFI_P2P_SERVICE = "wifip2p"; + field public static final String WIFI_RTT_RANGING_SERVICE = "wifirtt"; + field public static final String WIFI_SERVICE = "wifi"; + field @UiContext public static final String WINDOW_SERVICE = "window"; + } + + public static final class Context.BindServiceFlags { + method @NonNull public static android.content.Context.BindServiceFlags of(long); + } + + public final class ContextParams { + method @Nullable public String getAttributionTag(); + method @Nullable public android.content.AttributionSource getNextAttributionSource(); + method @FlaggedApi("android.permission.flags.should_register_attribution_source") @NonNull public boolean shouldRegisterAttributionSource(); + } + + public static final class ContextParams.Builder { + ctor public ContextParams.Builder(); + ctor public ContextParams.Builder(@NonNull android.content.ContextParams); + method @NonNull public android.content.ContextParams build(); + method @NonNull public android.content.ContextParams.Builder setAttributionTag(@Nullable String); + method @NonNull public android.content.ContextParams.Builder setNextAttributionSource(@Nullable android.content.AttributionSource); + method @FlaggedApi("android.permission.flags.should_register_attribution_source") @NonNull public android.content.ContextParams.Builder setShouldRegisterAttributionSource(boolean); + } + + public class ContextWrapper extends android.content.Context { + ctor public ContextWrapper(android.content.Context); + method protected void attachBaseContext(android.content.Context); + method public boolean bindService(android.content.Intent, android.content.ServiceConnection, int); + method public int checkCallingOrSelfPermission(String); + method public int checkCallingOrSelfUriPermission(android.net.Uri, int); + method public int checkCallingPermission(String); + method public int checkCallingUriPermission(android.net.Uri, int); + method public int checkPermission(String, int, int); + method public int checkSelfPermission(String); + method public int checkUriPermission(android.net.Uri, int, int, int); + method public int checkUriPermission(@Nullable android.net.Uri, @Nullable String, @Nullable String, int, int, int); + method @Deprecated public void clearWallpaper() throws java.io.IOException; + method public android.content.Context createConfigurationContext(android.content.res.Configuration); + method public android.content.Context createContextForSplit(String) throws android.content.pm.PackageManager.NameNotFoundException; + method public android.content.Context createDeviceProtectedStorageContext(); + method public android.content.Context createDisplayContext(android.view.Display); + method public android.content.Context createPackageContext(String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method public String[] databaseList(); + method public boolean deleteDatabase(String); + method public boolean deleteFile(String); + method public boolean deleteSharedPreferences(String); + method public void enforceCallingOrSelfPermission(String, @Nullable String); + method public void enforceCallingOrSelfUriPermission(android.net.Uri, int, String); + method public void enforceCallingPermission(String, @Nullable String); + method public void enforceCallingUriPermission(android.net.Uri, int, String); + method public void enforcePermission(String, int, int, @Nullable String); + method public void enforceUriPermission(android.net.Uri, int, int, int, String); + method public void enforceUriPermission(@Nullable android.net.Uri, @Nullable String, @Nullable String, int, int, int, @Nullable String); + method public String[] fileList(); + method public android.content.Context getApplicationContext(); + method public android.content.pm.ApplicationInfo getApplicationInfo(); + method public android.content.res.AssetManager getAssets(); + method public android.content.Context getBaseContext(); + method public java.io.File getCacheDir(); + method public ClassLoader getClassLoader(); + method public java.io.File getCodeCacheDir(); + method public android.content.ContentResolver getContentResolver(); + method public java.io.File getDataDir(); + method public java.io.File getDatabasePath(String); + method public java.io.File getDir(String, int); + method @Nullable public java.io.File getExternalCacheDir(); + method public java.io.File[] getExternalCacheDirs(); + method @Nullable public java.io.File getExternalFilesDir(@Nullable String); + method public java.io.File[] getExternalFilesDirs(String); + method public java.io.File[] getExternalMediaDirs(); + method public java.io.File getFileStreamPath(String); + method public java.io.File getFilesDir(); + method public android.os.Looper getMainLooper(); + method public java.io.File getNoBackupFilesDir(); + method public java.io.File getObbDir(); + method public java.io.File[] getObbDirs(); + method public String getPackageCodePath(); + method public android.content.pm.PackageManager getPackageManager(); + method public String getPackageName(); + method public String getPackageResourcePath(); + method public android.content.res.Resources getResources(); + method public android.content.SharedPreferences getSharedPreferences(String, int); + method public Object getSystemService(String); + method public String getSystemServiceName(Class); + method public android.content.res.Resources.Theme getTheme(); + method @Deprecated public android.graphics.drawable.Drawable getWallpaper(); + method @Deprecated public int getWallpaperDesiredMinimumHeight(); + method @Deprecated public int getWallpaperDesiredMinimumWidth(); + method public void grantUriPermission(String, android.net.Uri, int); + method public boolean isDeviceProtectedStorage(); + method public boolean moveDatabaseFrom(android.content.Context, String); + method public boolean moveSharedPreferencesFrom(android.content.Context, String); + method public java.io.FileInputStream openFileInput(String) throws java.io.FileNotFoundException; + method public java.io.FileOutputStream openFileOutput(String, int) throws java.io.FileNotFoundException; + method public android.database.sqlite.SQLiteDatabase openOrCreateDatabase(String, int, android.database.sqlite.SQLiteDatabase.CursorFactory); + method public android.database.sqlite.SQLiteDatabase openOrCreateDatabase(String, int, android.database.sqlite.SQLiteDatabase.CursorFactory, @Nullable android.database.DatabaseErrorHandler); + method @Deprecated public android.graphics.drawable.Drawable peekWallpaper(); + method public android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter); + method public android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter, int); + method public android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler); + method public android.content.Intent registerReceiver(@Nullable android.content.BroadcastReceiver, android.content.IntentFilter, @Nullable String, @Nullable android.os.Handler, int); + method @Deprecated public void removeStickyBroadcast(android.content.Intent); + method @Deprecated public void removeStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle); + method public void revokeUriPermission(android.net.Uri, int); + method public void revokeUriPermission(String, android.net.Uri, int); + method public void sendBroadcast(android.content.Intent); + method public void sendBroadcast(android.content.Intent, @Nullable String); + method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle); + method public void sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, String); + method public void sendOrderedBroadcast(android.content.Intent, @Nullable String); + method public void sendOrderedBroadcast(android.content.Intent, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method public void sendOrderedBroadcast(@NonNull @RequiresPermission android.content.Intent, int, @Nullable String, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, @Nullable String, @Nullable android.os.Bundle, @Nullable android.os.Bundle); + method public void sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, @Nullable String, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method @Deprecated public void sendStickyBroadcast(android.content.Intent); + method @Deprecated public void sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle); + method @Deprecated public void sendStickyOrderedBroadcast(android.content.Intent, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method @Deprecated public void sendStickyOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, @Nullable android.content.BroadcastReceiver, @Nullable android.os.Handler, int, @Nullable String, @Nullable android.os.Bundle); + method public void setTheme(int); + method @Deprecated public void setWallpaper(android.graphics.Bitmap) throws java.io.IOException; + method @Deprecated public void setWallpaper(java.io.InputStream) throws java.io.IOException; + method public void startActivities(android.content.Intent[]); + method public void startActivities(android.content.Intent[], @Nullable android.os.Bundle); + method public void startActivity(android.content.Intent); + method public void startActivity(android.content.Intent, @Nullable android.os.Bundle); + method @Nullable public android.content.ComponentName startForegroundService(android.content.Intent); + method public boolean startInstrumentation(android.content.ComponentName, @Nullable String, @Nullable android.os.Bundle); + method public void startIntentSender(android.content.IntentSender, @Nullable android.content.Intent, int, int, int) throws android.content.IntentSender.SendIntentException; + method public void startIntentSender(android.content.IntentSender, @Nullable android.content.Intent, int, int, int, @Nullable android.os.Bundle) throws android.content.IntentSender.SendIntentException; + method @Nullable public android.content.ComponentName startService(android.content.Intent); + method public boolean stopService(android.content.Intent); + method public void unbindService(android.content.ServiceConnection); + method public void unregisterReceiver(android.content.BroadcastReceiver); + } + + @Deprecated public class CursorLoader extends android.content.AsyncTaskLoader { + ctor @Deprecated public CursorLoader(android.content.Context); + ctor @Deprecated public CursorLoader(android.content.Context, android.net.Uri, String[], String, String[], String); + method @Deprecated public void deliverResult(android.database.Cursor); + method @Deprecated public String[] getProjection(); + method @Deprecated public String getSelection(); + method @Deprecated public String[] getSelectionArgs(); + method @Deprecated public String getSortOrder(); + method @Deprecated public android.net.Uri getUri(); + method @Deprecated public android.database.Cursor loadInBackground(); + method @Deprecated public void onCanceled(android.database.Cursor); + method @Deprecated public void setProjection(String[]); + method @Deprecated public void setSelection(String); + method @Deprecated public void setSelectionArgs(String[]); + method @Deprecated public void setSortOrder(String); + method @Deprecated public void setUri(android.net.Uri); + } + + public interface DialogInterface { + method public void cancel(); + method public void dismiss(); + field @Deprecated public static final int BUTTON1 = -1; // 0xffffffff + field @Deprecated public static final int BUTTON2 = -2; // 0xfffffffe + field @Deprecated public static final int BUTTON3 = -3; // 0xfffffffd + field public static final int BUTTON_NEGATIVE = -2; // 0xfffffffe + field public static final int BUTTON_NEUTRAL = -3; // 0xfffffffd + field public static final int BUTTON_POSITIVE = -1; // 0xffffffff + } + + public static interface DialogInterface.OnCancelListener { + method public void onCancel(android.content.DialogInterface); + } + + public static interface DialogInterface.OnClickListener { + method public void onClick(android.content.DialogInterface, int); + } + + public static interface DialogInterface.OnDismissListener { + method public void onDismiss(android.content.DialogInterface); + } + + public static interface DialogInterface.OnKeyListener { + method public boolean onKey(android.content.DialogInterface, int, android.view.KeyEvent); + } + + public static interface DialogInterface.OnMultiChoiceClickListener { + method public void onClick(android.content.DialogInterface, int, boolean); + } + + public static interface DialogInterface.OnShowListener { + method public void onShow(android.content.DialogInterface); + } + + public final class Entity { + ctor public Entity(android.content.ContentValues); + method public void addSubValue(android.net.Uri, android.content.ContentValues); + method public android.content.ContentValues getEntityValues(); + method public java.util.ArrayList getSubValues(); + } + + public static class Entity.NamedContentValues { + ctor public Entity.NamedContentValues(android.net.Uri, android.content.ContentValues); + field public final android.net.Uri uri; + field public final android.content.ContentValues values; + } + + public interface EntityIterator extends java.util.Iterator { + method public void close(); + method public void reset(); + } + + public class Intent implements java.lang.Cloneable android.os.Parcelable { + ctor public Intent(); + ctor public Intent(android.content.Intent); + ctor public Intent(String); + ctor public Intent(String, android.net.Uri); + ctor public Intent(android.content.Context, Class); + ctor public Intent(String, android.net.Uri, android.content.Context, Class); + method @NonNull public android.content.Intent addCategory(String); + method @NonNull public android.content.Intent addFlags(int); + method public Object clone(); + method @NonNull public android.content.Intent cloneFilter(); + method public static android.content.Intent createChooser(android.content.Intent, CharSequence); + method public static android.content.Intent createChooser(android.content.Intent, CharSequence, android.content.IntentSender); + method public int describeContents(); + method public int fillIn(@NonNull android.content.Intent, int); + method public boolean filterEquals(android.content.Intent); + method public int filterHashCode(); + method @Nullable public String getAction(); + method @Nullable public boolean[] getBooleanArrayExtra(String); + method public boolean getBooleanExtra(String, boolean); + method @Nullable public android.os.Bundle getBundleExtra(String); + method @Nullable public byte[] getByteArrayExtra(String); + method public byte getByteExtra(String, byte); + method public java.util.Set getCategories(); + method @Nullable public char[] getCharArrayExtra(String); + method public char getCharExtra(String, char); + method @Nullable public CharSequence[] getCharSequenceArrayExtra(String); + method @Nullable public java.util.ArrayList getCharSequenceArrayListExtra(String); + method @Nullable public CharSequence getCharSequenceExtra(String); + method @Nullable public android.content.ClipData getClipData(); + method @Nullable public android.content.ComponentName getComponent(); + method @Nullable public android.net.Uri getData(); + method @Nullable public String getDataString(); + method @Nullable public double[] getDoubleArrayExtra(String); + method public double getDoubleExtra(String, double); + method @Nullable public android.os.Bundle getExtras(); + method public int getFlags(); + method @Nullable public float[] getFloatArrayExtra(String); + method public float getFloatExtra(String, float); + method @Nullable public String getIdentifier(); + method @Nullable public int[] getIntArrayExtra(String); + method public int getIntExtra(String, int); + method @Nullable public java.util.ArrayList getIntegerArrayListExtra(String); + method @Deprecated public static android.content.Intent getIntent(String) throws java.net.URISyntaxException; + method public static android.content.Intent getIntentOld(String) throws java.net.URISyntaxException; + method @Nullable public long[] getLongArrayExtra(String); + method public long getLongExtra(String, long); + method @Nullable public String getPackage(); + method @Deprecated @Nullable public android.os.Parcelable[] getParcelableArrayExtra(String); + method @Nullable public T[] getParcelableArrayExtra(@Nullable String, @NonNull Class); + method @Deprecated @Nullable public java.util.ArrayList getParcelableArrayListExtra(String); + method @Nullable public java.util.ArrayList getParcelableArrayListExtra(@Nullable String, @NonNull Class); + method @Deprecated @Nullable public T getParcelableExtra(String); + method @Nullable public T getParcelableExtra(@Nullable String, @NonNull Class); + method @Nullable public String getScheme(); + method @Nullable public android.content.Intent getSelector(); + method @Deprecated @Nullable public java.io.Serializable getSerializableExtra(String); + method @Nullable public T getSerializableExtra(@Nullable String, @NonNull Class); + method @Nullable public short[] getShortArrayExtra(String); + method public short getShortExtra(String, short); + method @Nullable public android.graphics.Rect getSourceBounds(); + method @Nullable public String[] getStringArrayExtra(String); + method @Nullable public java.util.ArrayList getStringArrayListExtra(String); + method @Nullable public String getStringExtra(String); + method @Nullable public String getType(); + method public boolean hasCategory(String); + method public boolean hasExtra(String); + method public boolean hasFileDescriptors(); + method @FlaggedApi("android.security.enforce_intent_filter_match") public boolean isMismatchingFilter(); + method public static android.content.Intent makeMainActivity(android.content.ComponentName); + method public static android.content.Intent makeMainSelectorActivity(String, String); + method public static android.content.Intent makeRestartActivityTask(android.content.ComponentName); + method @Nullable public static String normalizeMimeType(@Nullable String); + method @NonNull public static android.content.Intent parseIntent(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, android.util.AttributeSet) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public static android.content.Intent parseUri(String, int) throws java.net.URISyntaxException; + method @NonNull public android.content.Intent putCharSequenceArrayListExtra(String, @Nullable java.util.ArrayList); + method @NonNull public android.content.Intent putExtra(String, boolean); + method @NonNull public android.content.Intent putExtra(String, byte); + method @NonNull public android.content.Intent putExtra(String, char); + method @NonNull public android.content.Intent putExtra(String, short); + method @NonNull public android.content.Intent putExtra(String, int); + method @NonNull public android.content.Intent putExtra(String, long); + method @NonNull public android.content.Intent putExtra(String, float); + method @NonNull public android.content.Intent putExtra(String, double); + method @NonNull public android.content.Intent putExtra(String, @Nullable String); + method @NonNull public android.content.Intent putExtra(String, @Nullable CharSequence); + method @NonNull public android.content.Intent putExtra(String, @Nullable android.os.Parcelable); + method @NonNull public android.content.Intent putExtra(String, @Nullable android.os.Parcelable[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable java.io.Serializable); + method @NonNull public android.content.Intent putExtra(String, @Nullable boolean[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable byte[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable short[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable char[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable int[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable long[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable float[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable double[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable String[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable CharSequence[]); + method @NonNull public android.content.Intent putExtra(String, @Nullable android.os.Bundle); + method @NonNull public android.content.Intent putExtras(@NonNull android.content.Intent); + method @NonNull public android.content.Intent putExtras(@NonNull android.os.Bundle); + method @NonNull public android.content.Intent putIntegerArrayListExtra(String, @Nullable java.util.ArrayList); + method @NonNull public android.content.Intent putParcelableArrayListExtra(String, @Nullable java.util.ArrayList); + method @NonNull public android.content.Intent putStringArrayListExtra(String, @Nullable java.util.ArrayList); + method public void readFromParcel(android.os.Parcel); + method public void removeCategory(String); + method public void removeExtra(String); + method public void removeFlags(int); + method @FlaggedApi("android.security.prevent_intent_redirect") public void removeLaunchSecurityProtection(); + method @NonNull public android.content.Intent replaceExtras(@NonNull android.content.Intent); + method @NonNull public android.content.Intent replaceExtras(@Nullable android.os.Bundle); + method public android.content.ComponentName resolveActivity(@NonNull android.content.pm.PackageManager); + method public android.content.pm.ActivityInfo resolveActivityInfo(@NonNull android.content.pm.PackageManager, int); + method @Nullable public String resolveType(@NonNull android.content.Context); + method @Nullable public String resolveType(@NonNull android.content.ContentResolver); + method @Nullable public String resolveTypeIfNeeded(@NonNull android.content.ContentResolver); + method @NonNull public android.content.Intent setAction(@Nullable String); + method @NonNull public android.content.Intent setClass(@NonNull android.content.Context, @NonNull Class); + method @NonNull public android.content.Intent setClassName(@NonNull android.content.Context, @NonNull String); + method @NonNull public android.content.Intent setClassName(@NonNull String, @NonNull String); + method public void setClipData(@Nullable android.content.ClipData); + method @NonNull public android.content.Intent setComponent(@Nullable android.content.ComponentName); + method @NonNull public android.content.Intent setData(@Nullable android.net.Uri); + method @NonNull public android.content.Intent setDataAndNormalize(@NonNull android.net.Uri); + method @NonNull public android.content.Intent setDataAndType(@Nullable android.net.Uri, @Nullable String); + method @NonNull public android.content.Intent setDataAndTypeAndNormalize(@NonNull android.net.Uri, @Nullable String); + method public void setExtrasClassLoader(@Nullable ClassLoader); + method @NonNull public android.content.Intent setFlags(int); + method @NonNull public android.content.Intent setIdentifier(@Nullable String); + method @NonNull public android.content.Intent setPackage(@Nullable String); + method public void setSelector(@Nullable android.content.Intent); + method public void setSourceBounds(@Nullable android.graphics.Rect); + method @NonNull public android.content.Intent setType(@Nullable String); + method @NonNull public android.content.Intent setTypeAndNormalize(@Nullable String); + method @Deprecated public String toURI(); + method public String toUri(int); + method public void writeToParcel(android.os.Parcel, int); + field public static final String ACTION_AIRPLANE_MODE_CHANGED = "android.intent.action.AIRPLANE_MODE"; + field public static final String ACTION_ALL_APPS = "android.intent.action.ALL_APPS"; + field public static final String ACTION_ANSWER = "android.intent.action.ANSWER"; + field public static final String ACTION_APPLICATION_LOCALE_CHANGED = "android.intent.action.APPLICATION_LOCALE_CHANGED"; + field public static final String ACTION_APPLICATION_PREFERENCES = "android.intent.action.APPLICATION_PREFERENCES"; + field public static final String ACTION_APPLICATION_RESTRICTIONS_CHANGED = "android.intent.action.APPLICATION_RESTRICTIONS_CHANGED"; + field public static final String ACTION_APP_ERROR = "android.intent.action.APP_ERROR"; + field public static final String ACTION_ASSIST = "android.intent.action.ASSIST"; + field public static final String ACTION_ATTACH_DATA = "android.intent.action.ATTACH_DATA"; + field public static final String ACTION_AUTO_REVOKE_PERMISSIONS = "android.intent.action.AUTO_REVOKE_PERMISSIONS"; + field public static final String ACTION_BATTERY_CHANGED = "android.intent.action.BATTERY_CHANGED"; + field public static final String ACTION_BATTERY_LOW = "android.intent.action.BATTERY_LOW"; + field public static final String ACTION_BATTERY_OKAY = "android.intent.action.BATTERY_OKAY"; + field public static final String ACTION_BOOT_COMPLETED = "android.intent.action.BOOT_COMPLETED"; + field public static final String ACTION_BUG_REPORT = "android.intent.action.BUG_REPORT"; + field public static final String ACTION_CALL = "android.intent.action.CALL"; + field public static final String ACTION_CALL_BUTTON = "android.intent.action.CALL_BUTTON"; + field public static final String ACTION_CAMERA_BUTTON = "android.intent.action.CAMERA_BUTTON"; + field public static final String ACTION_CARRIER_SETUP = "android.intent.action.CARRIER_SETUP"; + field public static final String ACTION_CHOOSER = "android.intent.action.CHOOSER"; + field @Deprecated @RequiresPermission("android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS") public static final String ACTION_CLOSE_SYSTEM_DIALOGS = "android.intent.action.CLOSE_SYSTEM_DIALOGS"; + field public static final String ACTION_CONFIGURATION_CHANGED = "android.intent.action.CONFIGURATION_CHANGED"; + field public static final String ACTION_CREATE_DOCUMENT = "android.intent.action.CREATE_DOCUMENT"; + field public static final String ACTION_CREATE_NOTE = "android.intent.action.CREATE_NOTE"; + field public static final String ACTION_CREATE_REMINDER = "android.intent.action.CREATE_REMINDER"; + field public static final String ACTION_CREATE_SHORTCUT = "android.intent.action.CREATE_SHORTCUT"; + field public static final String ACTION_DATE_CHANGED = "android.intent.action.DATE_CHANGED"; + field public static final String ACTION_DEFAULT = "android.intent.action.VIEW"; + field public static final String ACTION_DEFINE = "android.intent.action.DEFINE"; + field public static final String ACTION_DELETE = "android.intent.action.DELETE"; + field @Deprecated public static final String ACTION_DEVICE_STORAGE_LOW = "android.intent.action.DEVICE_STORAGE_LOW"; + field @Deprecated public static final String ACTION_DEVICE_STORAGE_OK = "android.intent.action.DEVICE_STORAGE_OK"; + field public static final String ACTION_DIAL = "android.intent.action.DIAL"; + field public static final String ACTION_DOCK_EVENT = "android.intent.action.DOCK_EVENT"; + field public static final String ACTION_DREAMING_STARTED = "android.intent.action.DREAMING_STARTED"; + field public static final String ACTION_DREAMING_STOPPED = "android.intent.action.DREAMING_STOPPED"; + field public static final String ACTION_EDIT = "android.intent.action.EDIT"; + field public static final String ACTION_EXTERNAL_APPLICATIONS_AVAILABLE = "android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE"; + field public static final String ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE = "android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE"; + field public static final String ACTION_FACTORY_TEST = "android.intent.action.FACTORY_TEST"; + field public static final String ACTION_GET_CONTENT = "android.intent.action.GET_CONTENT"; + field public static final String ACTION_GET_RESTRICTION_ENTRIES = "android.intent.action.GET_RESTRICTION_ENTRIES"; + field public static final String ACTION_GTALK_SERVICE_CONNECTED = "android.intent.action.GTALK_CONNECTED"; + field public static final String ACTION_GTALK_SERVICE_DISCONNECTED = "android.intent.action.GTALK_DISCONNECTED"; + field public static final String ACTION_HEADSET_PLUG = "android.intent.action.HEADSET_PLUG"; + field public static final String ACTION_INPUT_METHOD_CHANGED = "android.intent.action.INPUT_METHOD_CHANGED"; + field public static final String ACTION_INSERT = "android.intent.action.INSERT"; + field public static final String ACTION_INSERT_OR_EDIT = "android.intent.action.INSERT_OR_EDIT"; + field public static final String ACTION_INSTALL_FAILURE = "android.intent.action.INSTALL_FAILURE"; + field @Deprecated public static final String ACTION_INSTALL_PACKAGE = "android.intent.action.INSTALL_PACKAGE"; + field @RequiresPermission(android.Manifest.permission.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE) public static final String ACTION_LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE = "android.intent.action.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE"; + field public static final String ACTION_LOCALE_CHANGED = "android.intent.action.LOCALE_CHANGED"; + field public static final String ACTION_LOCKED_BOOT_COMPLETED = "android.intent.action.LOCKED_BOOT_COMPLETED"; + field public static final String ACTION_MAIN = "android.intent.action.MAIN"; + field public static final String ACTION_MANAGED_PROFILE_ADDED = "android.intent.action.MANAGED_PROFILE_ADDED"; + field public static final String ACTION_MANAGED_PROFILE_AVAILABLE = "android.intent.action.MANAGED_PROFILE_AVAILABLE"; + field public static final String ACTION_MANAGED_PROFILE_REMOVED = "android.intent.action.MANAGED_PROFILE_REMOVED"; + field public static final String ACTION_MANAGED_PROFILE_UNAVAILABLE = "android.intent.action.MANAGED_PROFILE_UNAVAILABLE"; + field public static final String ACTION_MANAGED_PROFILE_UNLOCKED = "android.intent.action.MANAGED_PROFILE_UNLOCKED"; + field public static final String ACTION_MANAGE_NETWORK_USAGE = "android.intent.action.MANAGE_NETWORK_USAGE"; + field public static final String ACTION_MANAGE_PACKAGE_STORAGE = "android.intent.action.MANAGE_PACKAGE_STORAGE"; + field public static final String ACTION_MANAGE_UNUSED_APPS = "android.intent.action.MANAGE_UNUSED_APPS"; + field public static final String ACTION_MEDIA_BAD_REMOVAL = "android.intent.action.MEDIA_BAD_REMOVAL"; + field public static final String ACTION_MEDIA_BUTTON = "android.intent.action.MEDIA_BUTTON"; + field public static final String ACTION_MEDIA_CHECKING = "android.intent.action.MEDIA_CHECKING"; + field public static final String ACTION_MEDIA_EJECT = "android.intent.action.MEDIA_EJECT"; + field public static final String ACTION_MEDIA_MOUNTED = "android.intent.action.MEDIA_MOUNTED"; + field public static final String ACTION_MEDIA_NOFS = "android.intent.action.MEDIA_NOFS"; + field public static final String ACTION_MEDIA_REMOVED = "android.intent.action.MEDIA_REMOVED"; + field public static final String ACTION_MEDIA_SCANNER_FINISHED = "android.intent.action.MEDIA_SCANNER_FINISHED"; + field @Deprecated public static final String ACTION_MEDIA_SCANNER_SCAN_FILE = "android.intent.action.MEDIA_SCANNER_SCAN_FILE"; + field public static final String ACTION_MEDIA_SCANNER_STARTED = "android.intent.action.MEDIA_SCANNER_STARTED"; + field public static final String ACTION_MEDIA_SHARED = "android.intent.action.MEDIA_SHARED"; + field public static final String ACTION_MEDIA_UNMOUNTABLE = "android.intent.action.MEDIA_UNMOUNTABLE"; + field public static final String ACTION_MEDIA_UNMOUNTED = "android.intent.action.MEDIA_UNMOUNTED"; + field public static final String ACTION_MY_PACKAGE_REPLACED = "android.intent.action.MY_PACKAGE_REPLACED"; + field public static final String ACTION_MY_PACKAGE_SUSPENDED = "android.intent.action.MY_PACKAGE_SUSPENDED"; + field public static final String ACTION_MY_PACKAGE_UNSUSPENDED = "android.intent.action.MY_PACKAGE_UNSUSPENDED"; + field @Deprecated public static final String ACTION_NEW_OUTGOING_CALL = "android.intent.action.NEW_OUTGOING_CALL"; + field public static final String ACTION_OPEN_DOCUMENT = "android.intent.action.OPEN_DOCUMENT"; + field public static final String ACTION_OPEN_DOCUMENT_TREE = "android.intent.action.OPEN_DOCUMENT_TREE"; + field public static final String ACTION_PACKAGES_SUSPENDED = "android.intent.action.PACKAGES_SUSPENDED"; + field public static final String ACTION_PACKAGES_UNSUSPENDED = "android.intent.action.PACKAGES_UNSUSPENDED"; + field public static final String ACTION_PACKAGE_ADDED = "android.intent.action.PACKAGE_ADDED"; + field public static final String ACTION_PACKAGE_CHANGED = "android.intent.action.PACKAGE_CHANGED"; + field public static final String ACTION_PACKAGE_DATA_CLEARED = "android.intent.action.PACKAGE_DATA_CLEARED"; + field public static final String ACTION_PACKAGE_FIRST_LAUNCH = "android.intent.action.PACKAGE_FIRST_LAUNCH"; + field public static final String ACTION_PACKAGE_FULLY_REMOVED = "android.intent.action.PACKAGE_FULLY_REMOVED"; + field @Deprecated public static final String ACTION_PACKAGE_INSTALL = "android.intent.action.PACKAGE_INSTALL"; + field public static final String ACTION_PACKAGE_NEEDS_VERIFICATION = "android.intent.action.PACKAGE_NEEDS_VERIFICATION"; + field public static final String ACTION_PACKAGE_REMOVED = "android.intent.action.PACKAGE_REMOVED"; + field public static final String ACTION_PACKAGE_REPLACED = "android.intent.action.PACKAGE_REPLACED"; + field public static final String ACTION_PACKAGE_RESTARTED = "android.intent.action.PACKAGE_RESTARTED"; + field @FlaggedApi("android.content.pm.stay_stopped") public static final String ACTION_PACKAGE_UNSTOPPED = "android.intent.action.PACKAGE_UNSTOPPED"; + field public static final String ACTION_PACKAGE_VERIFIED = "android.intent.action.PACKAGE_VERIFIED"; + field public static final String ACTION_PASTE = "android.intent.action.PASTE"; + field public static final String ACTION_PICK = "android.intent.action.PICK"; + field public static final String ACTION_PICK_ACTIVITY = "android.intent.action.PICK_ACTIVITY"; + field public static final String ACTION_POWER_CONNECTED = "android.intent.action.ACTION_POWER_CONNECTED"; + field public static final String ACTION_POWER_DISCONNECTED = "android.intent.action.ACTION_POWER_DISCONNECTED"; + field public static final String ACTION_POWER_USAGE_SUMMARY = "android.intent.action.POWER_USAGE_SUMMARY"; + field public static final String ACTION_PROCESS_TEXT = "android.intent.action.PROCESS_TEXT"; + field public static final String ACTION_PROFILE_ACCESSIBLE = "android.intent.action.PROFILE_ACCESSIBLE"; + field public static final String ACTION_PROFILE_ADDED = "android.intent.action.PROFILE_ADDED"; + field @FlaggedApi("android.os.allow_private_profile") public static final String ACTION_PROFILE_AVAILABLE = "android.intent.action.PROFILE_AVAILABLE"; + field public static final String ACTION_PROFILE_INACCESSIBLE = "android.intent.action.PROFILE_INACCESSIBLE"; + field public static final String ACTION_PROFILE_REMOVED = "android.intent.action.PROFILE_REMOVED"; + field @FlaggedApi("android.os.allow_private_profile") public static final String ACTION_PROFILE_UNAVAILABLE = "android.intent.action.PROFILE_UNAVAILABLE"; + field public static final String ACTION_PROVIDER_CHANGED = "android.intent.action.PROVIDER_CHANGED"; + field public static final String ACTION_QUICK_CLOCK = "android.intent.action.QUICK_CLOCK"; + field public static final String ACTION_QUICK_VIEW = "android.intent.action.QUICK_VIEW"; + field public static final String ACTION_REBOOT = "android.intent.action.REBOOT"; + field public static final String ACTION_RUN = "android.intent.action.RUN"; + field public static final String ACTION_SAFETY_CENTER = "android.intent.action.SAFETY_CENTER"; + field public static final String ACTION_SCREEN_OFF = "android.intent.action.SCREEN_OFF"; + field public static final String ACTION_SCREEN_ON = "android.intent.action.SCREEN_ON"; + field public static final String ACTION_SEARCH = "android.intent.action.SEARCH"; + field public static final String ACTION_SEARCH_LONG_PRESS = "android.intent.action.SEARCH_LONG_PRESS"; + field public static final String ACTION_SEND = "android.intent.action.SEND"; + field public static final String ACTION_SENDTO = "android.intent.action.SENDTO"; + field public static final String ACTION_SEND_MULTIPLE = "android.intent.action.SEND_MULTIPLE"; + field public static final String ACTION_SET_WALLPAPER = "android.intent.action.SET_WALLPAPER"; + field public static final String ACTION_SHOW_APP_INFO = "android.intent.action.SHOW_APP_INFO"; + field public static final String ACTION_SHOW_WORK_APPS = "android.intent.action.SHOW_WORK_APPS"; + field public static final String ACTION_SHUTDOWN = "android.intent.action.ACTION_SHUTDOWN"; + field public static final String ACTION_SYNC = "android.intent.action.SYNC"; + field public static final String ACTION_SYSTEM_TUTORIAL = "android.intent.action.SYSTEM_TUTORIAL"; + field public static final String ACTION_TIMEZONE_CHANGED = "android.intent.action.TIMEZONE_CHANGED"; + field public static final String ACTION_TIME_CHANGED = "android.intent.action.TIME_SET"; + field public static final String ACTION_TIME_TICK = "android.intent.action.TIME_TICK"; + field public static final String ACTION_TRANSLATE = "android.intent.action.TRANSLATE"; + field public static final String ACTION_UID_REMOVED = "android.intent.action.UID_REMOVED"; + field @Deprecated public static final String ACTION_UMS_CONNECTED = "android.intent.action.UMS_CONNECTED"; + field @Deprecated public static final String ACTION_UMS_DISCONNECTED = "android.intent.action.UMS_DISCONNECTED"; + field @FlaggedApi("android.content.pm.archiving") public static final String ACTION_UNARCHIVE_PACKAGE = "android.intent.action.UNARCHIVE_PACKAGE"; + field @Deprecated public static final String ACTION_UNINSTALL_PACKAGE = "android.intent.action.UNINSTALL_PACKAGE"; + field public static final String ACTION_USER_BACKGROUND = "android.intent.action.USER_BACKGROUND"; + field public static final String ACTION_USER_FOREGROUND = "android.intent.action.USER_FOREGROUND"; + field public static final String ACTION_USER_INITIALIZE = "android.intent.action.USER_INITIALIZE"; + field public static final String ACTION_USER_PRESENT = "android.intent.action.USER_PRESENT"; + field public static final String ACTION_USER_UNLOCKED = "android.intent.action.USER_UNLOCKED"; + field public static final String ACTION_VIEW = "android.intent.action.VIEW"; + field public static final String ACTION_VIEW_LOCUS = "android.intent.action.VIEW_LOCUS"; + field @RequiresPermission(android.Manifest.permission.START_VIEW_PERMISSION_USAGE) public static final String ACTION_VIEW_PERMISSION_USAGE = "android.intent.action.VIEW_PERMISSION_USAGE"; + field @RequiresPermission(android.Manifest.permission.START_VIEW_PERMISSION_USAGE) public static final String ACTION_VIEW_PERMISSION_USAGE_FOR_PERIOD = "android.intent.action.VIEW_PERMISSION_USAGE_FOR_PERIOD"; + field public static final String ACTION_VOICE_COMMAND = "android.intent.action.VOICE_COMMAND"; + field @Deprecated public static final String ACTION_WALLPAPER_CHANGED = "android.intent.action.WALLPAPER_CHANGED"; + field public static final String ACTION_WEB_SEARCH = "android.intent.action.WEB_SEARCH"; + field public static final int CAPTURE_CONTENT_FOR_NOTE_BLOCKED_BY_ADMIN = 4; // 0x4 + field public static final int CAPTURE_CONTENT_FOR_NOTE_FAILED = 1; // 0x1 + field public static final int CAPTURE_CONTENT_FOR_NOTE_SUCCESS = 0; // 0x0 + field public static final int CAPTURE_CONTENT_FOR_NOTE_USER_CANCELED = 2; // 0x2 + field public static final int CAPTURE_CONTENT_FOR_NOTE_WINDOW_MODE_UNSUPPORTED = 3; // 0x3 + field public static final String CATEGORY_ACCESSIBILITY_SHORTCUT_TARGET = "android.intent.category.ACCESSIBILITY_SHORTCUT_TARGET"; + field public static final String CATEGORY_ALTERNATIVE = "android.intent.category.ALTERNATIVE"; + field public static final String CATEGORY_APP_BROWSER = "android.intent.category.APP_BROWSER"; + field public static final String CATEGORY_APP_CALCULATOR = "android.intent.category.APP_CALCULATOR"; + field public static final String CATEGORY_APP_CALENDAR = "android.intent.category.APP_CALENDAR"; + field public static final String CATEGORY_APP_CONTACTS = "android.intent.category.APP_CONTACTS"; + field public static final String CATEGORY_APP_EMAIL = "android.intent.category.APP_EMAIL"; + field public static final String CATEGORY_APP_FILES = "android.intent.category.APP_FILES"; + field public static final String CATEGORY_APP_FITNESS = "android.intent.category.APP_FITNESS"; + field public static final String CATEGORY_APP_GALLERY = "android.intent.category.APP_GALLERY"; + field public static final String CATEGORY_APP_MAPS = "android.intent.category.APP_MAPS"; + field public static final String CATEGORY_APP_MARKET = "android.intent.category.APP_MARKET"; + field public static final String CATEGORY_APP_MESSAGING = "android.intent.category.APP_MESSAGING"; + field public static final String CATEGORY_APP_MUSIC = "android.intent.category.APP_MUSIC"; + field public static final String CATEGORY_APP_WEATHER = "android.intent.category.APP_WEATHER"; + field public static final String CATEGORY_BROWSABLE = "android.intent.category.BROWSABLE"; + field public static final String CATEGORY_CAR_DOCK = "android.intent.category.CAR_DOCK"; + field public static final String CATEGORY_CAR_MODE = "android.intent.category.CAR_MODE"; + field public static final String CATEGORY_DEFAULT = "android.intent.category.DEFAULT"; + field public static final String CATEGORY_DESK_DOCK = "android.intent.category.DESK_DOCK"; + field public static final String CATEGORY_DEVELOPMENT_PREFERENCE = "android.intent.category.DEVELOPMENT_PREFERENCE"; + field public static final String CATEGORY_EMBED = "android.intent.category.EMBED"; + field public static final String CATEGORY_FRAMEWORK_INSTRUMENTATION_TEST = "android.intent.category.FRAMEWORK_INSTRUMENTATION_TEST"; + field public static final String CATEGORY_HE_DESK_DOCK = "android.intent.category.HE_DESK_DOCK"; + field public static final String CATEGORY_HOME = "android.intent.category.HOME"; + field public static final String CATEGORY_INFO = "android.intent.category.INFO"; + field public static final String CATEGORY_LAUNCHER = "android.intent.category.LAUNCHER"; + field public static final String CATEGORY_LEANBACK_LAUNCHER = "android.intent.category.LEANBACK_LAUNCHER"; + field public static final String CATEGORY_LE_DESK_DOCK = "android.intent.category.LE_DESK_DOCK"; + field public static final String CATEGORY_MONKEY = "android.intent.category.MONKEY"; + field public static final String CATEGORY_OPENABLE = "android.intent.category.OPENABLE"; + field public static final String CATEGORY_PREFERENCE = "android.intent.category.PREFERENCE"; + field public static final String CATEGORY_SAMPLE_CODE = "android.intent.category.SAMPLE_CODE"; + field public static final String CATEGORY_SECONDARY_HOME = "android.intent.category.SECONDARY_HOME"; + field public static final String CATEGORY_SELECTED_ALTERNATIVE = "android.intent.category.SELECTED_ALTERNATIVE"; + field public static final String CATEGORY_TAB = "android.intent.category.TAB"; + field public static final String CATEGORY_TEST = "android.intent.category.TEST"; + field public static final String CATEGORY_TYPED_OPENABLE = "android.intent.category.TYPED_OPENABLE"; + field public static final String CATEGORY_UNIT_TEST = "android.intent.category.UNIT_TEST"; + field public static final String CATEGORY_VOICE = "android.intent.category.VOICE"; + field public static final String CATEGORY_VR_HOME = "android.intent.category.VR_HOME"; + field public static final int CHOOSER_CONTENT_TYPE_ALBUM = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String EXTRA_ALARM_COUNT = "android.intent.extra.ALARM_COUNT"; + field public static final String EXTRA_ALLOW_MULTIPLE = "android.intent.extra.ALLOW_MULTIPLE"; + field @Deprecated public static final String EXTRA_ALLOW_REPLACE = "android.intent.extra.ALLOW_REPLACE"; + field public static final String EXTRA_ALTERNATE_INTENTS = "android.intent.extra.ALTERNATE_INTENTS"; + field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_ARCHIVAL = "android.intent.extra.ARCHIVAL"; + field public static final String EXTRA_ASSIST_CONTEXT = "android.intent.extra.ASSIST_CONTEXT"; + field public static final String EXTRA_ASSIST_INPUT_DEVICE_ID = "android.intent.extra.ASSIST_INPUT_DEVICE_ID"; + field public static final String EXTRA_ASSIST_INPUT_HINT_KEYBOARD = "android.intent.extra.ASSIST_INPUT_HINT_KEYBOARD"; + field public static final String EXTRA_ASSIST_PACKAGE = "android.intent.extra.ASSIST_PACKAGE"; + field public static final String EXTRA_ASSIST_UID = "android.intent.extra.ASSIST_UID"; + field public static final String EXTRA_ATTRIBUTION_TAGS = "android.intent.extra.ATTRIBUTION_TAGS"; + field public static final String EXTRA_AUTO_LAUNCH_SINGLE_CHOICE = "android.intent.extra.AUTO_LAUNCH_SINGLE_CHOICE"; + field public static final String EXTRA_BCC = "android.intent.extra.BCC"; + field public static final String EXTRA_BUG_REPORT = "android.intent.extra.BUG_REPORT"; + field public static final String EXTRA_CAPTURE_CONTENT_FOR_NOTE_STATUS_CODE = "android.intent.extra.CAPTURE_CONTENT_FOR_NOTE_STATUS_CODE"; + field public static final String EXTRA_CC = "android.intent.extra.CC"; + field @Deprecated public static final String EXTRA_CHANGED_COMPONENT_NAME = "android.intent.extra.changed_component_name"; + field public static final String EXTRA_CHANGED_COMPONENT_NAME_LIST = "android.intent.extra.changed_component_name_list"; + field public static final String EXTRA_CHANGED_PACKAGE_LIST = "android.intent.extra.changed_package_list"; + field public static final String EXTRA_CHANGED_UID_LIST = "android.intent.extra.changed_uid_list"; + field public static final String EXTRA_CHOOSER_ADDITIONAL_CONTENT_URI = "android.intent.extra.CHOOSER_ADDITIONAL_CONTENT_URI"; + field public static final String EXTRA_CHOOSER_CONTENT_TYPE_HINT = "android.intent.extra.CHOOSER_CONTENT_TYPE_HINT"; + field public static final String EXTRA_CHOOSER_CUSTOM_ACTIONS = "android.intent.extra.CHOOSER_CUSTOM_ACTIONS"; + field public static final String EXTRA_CHOOSER_FOCUSED_ITEM_POSITION = "android.intent.extra.CHOOSER_FOCUSED_ITEM_POSITION"; + field public static final String EXTRA_CHOOSER_MODIFY_SHARE_ACTION = "android.intent.extra.CHOOSER_MODIFY_SHARE_ACTION"; + field public static final String EXTRA_CHOOSER_REFINEMENT_INTENT_SENDER = "android.intent.extra.CHOOSER_REFINEMENT_INTENT_SENDER"; + field public static final String EXTRA_CHOOSER_RESULT = "android.intent.extra.CHOOSER_RESULT"; + field public static final String EXTRA_CHOOSER_RESULT_INTENT_SENDER = "android.intent.extra.CHOOSER_RESULT_INTENT_SENDER"; + field public static final String EXTRA_CHOOSER_TARGETS = "android.intent.extra.CHOOSER_TARGETS"; + field public static final String EXTRA_CHOSEN_COMPONENT = "android.intent.extra.CHOSEN_COMPONENT"; + field public static final String EXTRA_CHOSEN_COMPONENT_INTENT_SENDER = "android.intent.extra.CHOSEN_COMPONENT_INTENT_SENDER"; + field public static final String EXTRA_COMPONENT_NAME = "android.intent.extra.COMPONENT_NAME"; + field public static final String EXTRA_CONTENT_ANNOTATIONS = "android.intent.extra.CONTENT_ANNOTATIONS"; + field public static final String EXTRA_CONTENT_QUERY = "android.intent.extra.CONTENT_QUERY"; + field public static final String EXTRA_DATA_REMOVED = "android.intent.extra.DATA_REMOVED"; + field public static final String EXTRA_DOCK_STATE = "android.intent.extra.DOCK_STATE"; + field public static final int EXTRA_DOCK_STATE_CAR = 2; // 0x2 + field public static final int EXTRA_DOCK_STATE_DESK = 1; // 0x1 + field public static final int EXTRA_DOCK_STATE_HE_DESK = 4; // 0x4 + field public static final int EXTRA_DOCK_STATE_LE_DESK = 3; // 0x3 + field public static final int EXTRA_DOCK_STATE_UNDOCKED = 0; // 0x0 + field public static final String EXTRA_DONT_KILL_APP = "android.intent.extra.DONT_KILL_APP"; + field public static final String EXTRA_DURATION_MILLIS = "android.intent.extra.DURATION_MILLIS"; + field public static final String EXTRA_EMAIL = "android.intent.extra.EMAIL"; + field public static final String EXTRA_END_TIME = "android.intent.extra.END_TIME"; + field public static final String EXTRA_EXCLUDE_COMPONENTS = "android.intent.extra.EXCLUDE_COMPONENTS"; + field public static final String EXTRA_FROM_STORAGE = "android.intent.extra.FROM_STORAGE"; + field public static final String EXTRA_HTML_TEXT = "android.intent.extra.HTML_TEXT"; + field public static final String EXTRA_INDEX = "android.intent.extra.INDEX"; + field public static final String EXTRA_INITIAL_INTENTS = "android.intent.extra.INITIAL_INTENTS"; + field public static final String EXTRA_INSTALLER_PACKAGE_NAME = "android.intent.extra.INSTALLER_PACKAGE_NAME"; + field public static final String EXTRA_INTENT = "android.intent.extra.INTENT"; + field public static final String EXTRA_KEY_EVENT = "android.intent.extra.KEY_EVENT"; + field public static final String EXTRA_LOCALE_LIST = "android.intent.extra.LOCALE_LIST"; + field public static final String EXTRA_LOCAL_ONLY = "android.intent.extra.LOCAL_ONLY"; + field public static final String EXTRA_LOCUS_ID = "android.intent.extra.LOCUS_ID"; + field public static final String EXTRA_METADATA_TEXT = "android.intent.extra.METADATA_TEXT"; + field public static final String EXTRA_MIME_TYPES = "android.intent.extra.MIME_TYPES"; + field public static final String EXTRA_NOT_UNKNOWN_SOURCE = "android.intent.extra.NOT_UNKNOWN_SOURCE"; + field public static final String EXTRA_ORIGINATING_URI = "android.intent.extra.ORIGINATING_URI"; + field public static final String EXTRA_PACKAGES = "android.intent.extra.PACKAGES"; + field public static final String EXTRA_PACKAGE_NAME = "android.intent.extra.PACKAGE_NAME"; + field public static final String EXTRA_PERMISSION_GROUP_NAME = "android.intent.extra.PERMISSION_GROUP_NAME"; + field public static final String EXTRA_PHONE_NUMBER = "android.intent.extra.PHONE_NUMBER"; + field public static final String EXTRA_PROCESS_TEXT = "android.intent.extra.PROCESS_TEXT"; + field public static final String EXTRA_PROCESS_TEXT_READONLY = "android.intent.extra.PROCESS_TEXT_READONLY"; + field public static final String EXTRA_QUICK_VIEW_FEATURES = "android.intent.extra.QUICK_VIEW_FEATURES"; + field public static final String EXTRA_QUIET_MODE = "android.intent.extra.QUIET_MODE"; + field public static final String EXTRA_REFERRER = "android.intent.extra.REFERRER"; + field public static final String EXTRA_REFERRER_NAME = "android.intent.extra.REFERRER_NAME"; + field public static final String EXTRA_REMOTE_INTENT_TOKEN = "android.intent.extra.remote_intent_token"; + field public static final String EXTRA_REPLACEMENT_EXTRAS = "android.intent.extra.REPLACEMENT_EXTRAS"; + field public static final String EXTRA_REPLACING = "android.intent.extra.REPLACING"; + field public static final String EXTRA_RESTRICTIONS_BUNDLE = "android.intent.extra.restrictions_bundle"; + field public static final String EXTRA_RESTRICTIONS_INTENT = "android.intent.extra.restrictions_intent"; + field public static final String EXTRA_RESTRICTIONS_LIST = "android.intent.extra.restrictions_list"; + field public static final String EXTRA_RESULT_RECEIVER = "android.intent.extra.RESULT_RECEIVER"; + field public static final String EXTRA_RETURN_RESULT = "android.intent.extra.RETURN_RESULT"; + field @Deprecated public static final String EXTRA_SHORTCUT_ICON = "android.intent.extra.shortcut.ICON"; + field @Deprecated public static final String EXTRA_SHORTCUT_ICON_RESOURCE = "android.intent.extra.shortcut.ICON_RESOURCE"; + field public static final String EXTRA_SHORTCUT_ID = "android.intent.extra.shortcut.ID"; + field @Deprecated public static final String EXTRA_SHORTCUT_INTENT = "android.intent.extra.shortcut.INTENT"; + field @Deprecated public static final String EXTRA_SHORTCUT_NAME = "android.intent.extra.shortcut.NAME"; + field public static final String EXTRA_SHUTDOWN_USERSPACE_ONLY = "android.intent.extra.SHUTDOWN_USERSPACE_ONLY"; + field public static final String EXTRA_SPLIT_NAME = "android.intent.extra.SPLIT_NAME"; + field public static final String EXTRA_START_TIME = "android.intent.extra.START_TIME"; + field public static final String EXTRA_STREAM = "android.intent.extra.STREAM"; + field public static final String EXTRA_SUBJECT = "android.intent.extra.SUBJECT"; + field public static final String EXTRA_SUSPENDED_PACKAGE_EXTRAS = "android.intent.extra.SUSPENDED_PACKAGE_EXTRAS"; + field public static final String EXTRA_TEMPLATE = "android.intent.extra.TEMPLATE"; + field public static final String EXTRA_TEXT = "android.intent.extra.TEXT"; + field public static final String EXTRA_TIME = "android.intent.extra.TIME"; + field public static final String EXTRA_TIMEZONE = "time-zone"; + field public static final String EXTRA_TITLE = "android.intent.extra.TITLE"; + field public static final String EXTRA_UID = "android.intent.extra.UID"; + field public static final String EXTRA_USER = "android.intent.extra.USER"; + field public static final String EXTRA_USER_INITIATED = "android.intent.extra.USER_INITIATED"; + field public static final String EXTRA_USE_STYLUS_MODE = "android.intent.extra.USE_STYLUS_MODE"; + field public static final int FILL_IN_ACTION = 1; // 0x1 + field public static final int FILL_IN_CATEGORIES = 4; // 0x4 + field public static final int FILL_IN_CLIP_DATA = 128; // 0x80 + field public static final int FILL_IN_COMPONENT = 8; // 0x8 + field public static final int FILL_IN_DATA = 2; // 0x2 + field public static final int FILL_IN_IDENTIFIER = 256; // 0x100 + field public static final int FILL_IN_PACKAGE = 16; // 0x10 + field public static final int FILL_IN_SELECTOR = 64; // 0x40 + field public static final int FILL_IN_SOURCE_BOUNDS = 32; // 0x20 + field public static final int FLAG_ACTIVITY_BROUGHT_TO_FRONT = 4194304; // 0x400000 + field public static final int FLAG_ACTIVITY_CLEAR_TASK = 32768; // 0x8000 + field public static final int FLAG_ACTIVITY_CLEAR_TOP = 67108864; // 0x4000000 + field @Deprecated public static final int FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET = 524288; // 0x80000 + field public static final int FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS = 8388608; // 0x800000 + field public static final int FLAG_ACTIVITY_FORWARD_RESULT = 33554432; // 0x2000000 + field public static final int FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY = 1048576; // 0x100000 + field public static final int FLAG_ACTIVITY_LAUNCH_ADJACENT = 4096; // 0x1000 + field public static final int FLAG_ACTIVITY_MATCH_EXTERNAL = 2048; // 0x800 + field public static final int FLAG_ACTIVITY_MULTIPLE_TASK = 134217728; // 0x8000000 + field public static final int FLAG_ACTIVITY_NEW_DOCUMENT = 524288; // 0x80000 + field public static final int FLAG_ACTIVITY_NEW_TASK = 268435456; // 0x10000000 + field public static final int FLAG_ACTIVITY_NO_ANIMATION = 65536; // 0x10000 + field public static final int FLAG_ACTIVITY_NO_HISTORY = 1073741824; // 0x40000000 + field public static final int FLAG_ACTIVITY_NO_USER_ACTION = 262144; // 0x40000 + field public static final int FLAG_ACTIVITY_PREVIOUS_IS_TOP = 16777216; // 0x1000000 + field public static final int FLAG_ACTIVITY_REORDER_TO_FRONT = 131072; // 0x20000 + field public static final int FLAG_ACTIVITY_REQUIRE_DEFAULT = 512; // 0x200 + field public static final int FLAG_ACTIVITY_REQUIRE_NON_BROWSER = 1024; // 0x400 + field public static final int FLAG_ACTIVITY_RESET_TASK_IF_NEEDED = 2097152; // 0x200000 + field public static final int FLAG_ACTIVITY_RETAIN_IN_RECENTS = 8192; // 0x2000 + field public static final int FLAG_ACTIVITY_SINGLE_TOP = 536870912; // 0x20000000 + field public static final int FLAG_ACTIVITY_TASK_ON_HOME = 16384; // 0x4000 + field public static final int FLAG_DEBUG_LOG_RESOLUTION = 8; // 0x8 + field public static final int FLAG_DIRECT_BOOT_AUTO = 256; // 0x100 + field public static final int FLAG_EXCLUDE_STOPPED_PACKAGES = 16; // 0x10 + field public static final int FLAG_FROM_BACKGROUND = 4; // 0x4 + field public static final int FLAG_GRANT_PERSISTABLE_URI_PERMISSION = 64; // 0x40 + field public static final int FLAG_GRANT_PREFIX_URI_PERMISSION = 128; // 0x80 + field public static final int FLAG_GRANT_READ_URI_PERMISSION = 1; // 0x1 + field public static final int FLAG_GRANT_WRITE_URI_PERMISSION = 2; // 0x2 + field public static final int FLAG_INCLUDE_STOPPED_PACKAGES = 32; // 0x20 + field public static final int FLAG_RECEIVER_FOREGROUND = 268435456; // 0x10000000 + field public static final int FLAG_RECEIVER_NO_ABORT = 134217728; // 0x8000000 + field public static final int FLAG_RECEIVER_REGISTERED_ONLY = 1073741824; // 0x40000000 + field public static final int FLAG_RECEIVER_REPLACE_PENDING = 536870912; // 0x20000000 + field public static final int FLAG_RECEIVER_VISIBLE_TO_INSTANT_APPS = 2097152; // 0x200000 + field public static final String METADATA_DOCK_HOME = "android.dock_home"; + field public static final int URI_ALLOW_UNSAFE = 4; // 0x4 + field public static final int URI_ANDROID_APP_SCHEME = 2; // 0x2 + field public static final int URI_INTENT_SCHEME = 1; // 0x1 + } + + public static final class Intent.FilterComparison { + ctor public Intent.FilterComparison(android.content.Intent); + method public android.content.Intent getIntent(); + } + + public static class Intent.ShortcutIconResource implements android.os.Parcelable { + ctor public Intent.ShortcutIconResource(); + method public int describeContents(); + method public static android.content.Intent.ShortcutIconResource fromContext(android.content.Context, @AnyRes int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public String packageName; + field public String resourceName; + } + + public class IntentFilter implements android.os.Parcelable { + ctor public IntentFilter(); + ctor public IntentFilter(String); + ctor public IntentFilter(String, String) throws android.content.IntentFilter.MalformedMimeTypeException; + ctor public IntentFilter(android.content.IntentFilter); + method public final java.util.Iterator actionsIterator(); + method public final void addAction(String); + method public final void addCategory(String); + method public final void addDataAuthority(String, String); + method public final void addDataPath(String, int); + method public final void addDataScheme(String); + method public final void addDataSchemeSpecificPart(String, int); + method public final void addDataType(String) throws android.content.IntentFilter.MalformedMimeTypeException; + method @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final void addUriRelativeFilterGroup(@NonNull android.content.UriRelativeFilterGroup); + method @NonNull public java.util.function.Predicate asPredicate(); + method @NonNull public java.util.function.Predicate asPredicateWithTypeResolution(@NonNull android.content.ContentResolver); + method public final java.util.Iterator authoritiesIterator(); + method public final java.util.Iterator categoriesIterator(); + method @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final void clearUriRelativeFilterGroups(); + method public final int countActions(); + method public final int countCategories(); + method public final int countDataAuthorities(); + method public final int countDataPaths(); + method public final int countDataSchemeSpecificParts(); + method public final int countDataSchemes(); + method public final int countDataTypes(); + method @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final int countUriRelativeFilterGroups(); + method public static android.content.IntentFilter create(String, String); + method public final int describeContents(); + method public void dump(android.util.Printer, String); + method public final String getAction(int); + method public final String getCategory(int); + method public final android.content.IntentFilter.AuthorityEntry getDataAuthority(int); + method public final android.os.PatternMatcher getDataPath(int); + method public final String getDataScheme(int); + method public final android.os.PatternMatcher getDataSchemeSpecificPart(int); + method public final String getDataType(int); + method public final int getPriority(); + method @FlaggedApi("android.content.pm.relative_reference_intent_filters") @NonNull public final android.content.UriRelativeFilterGroup getUriRelativeFilterGroup(int); + method public final boolean hasAction(String); + method public final boolean hasCategory(String); + method public final boolean hasDataAuthority(android.net.Uri); + method public final boolean hasDataPath(String); + method public final boolean hasDataScheme(String); + method public final boolean hasDataSchemeSpecificPart(String); + method public final boolean hasDataType(String); + method public final int match(android.content.ContentResolver, android.content.Intent, boolean, String); + method public final int match(String, String, String, android.net.Uri, java.util.Set, String); + method public final boolean matchAction(String); + method public final String matchCategories(java.util.Set); + method public final int matchData(String, String, android.net.Uri); + method public final int matchDataAuthority(android.net.Uri); + method public final java.util.Iterator pathsIterator(); + method public void readFromXml(org.xmlpull.v1.XmlPullParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public final java.util.Iterator schemeSpecificPartsIterator(); + method public final java.util.Iterator schemesIterator(); + method public final void setPriority(int); + method public final java.util.Iterator typesIterator(); + method public final void writeToParcel(android.os.Parcel, int); + method public void writeToXml(org.xmlpull.v1.XmlSerializer) throws java.io.IOException; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int MATCH_ADJUSTMENT_MASK = 65535; // 0xffff + field public static final int MATCH_ADJUSTMENT_NORMAL = 32768; // 0x8000 + field public static final int MATCH_CATEGORY_EMPTY = 1048576; // 0x100000 + field public static final int MATCH_CATEGORY_HOST = 3145728; // 0x300000 + field public static final int MATCH_CATEGORY_MASK = 268369920; // 0xfff0000 + field public static final int MATCH_CATEGORY_PATH = 5242880; // 0x500000 + field public static final int MATCH_CATEGORY_PORT = 4194304; // 0x400000 + field public static final int MATCH_CATEGORY_SCHEME = 2097152; // 0x200000 + field public static final int MATCH_CATEGORY_SCHEME_SPECIFIC_PART = 5767168; // 0x580000 + field public static final int MATCH_CATEGORY_TYPE = 6291456; // 0x600000 + field public static final int NO_MATCH_ACTION = -3; // 0xfffffffd + field public static final int NO_MATCH_CATEGORY = -4; // 0xfffffffc + field public static final int NO_MATCH_DATA = -2; // 0xfffffffe + field public static final int NO_MATCH_TYPE = -1; // 0xffffffff + field public static final int SYSTEM_HIGH_PRIORITY = 1000; // 0x3e8 + field public static final int SYSTEM_LOW_PRIORITY = -1000; // 0xfffffc18 + } + + public static final class IntentFilter.AuthorityEntry { + ctor public IntentFilter.AuthorityEntry(String, String); + method public String getHost(); + method public int getPort(); + method public int match(android.net.Uri); + } + + public static class IntentFilter.MalformedMimeTypeException extends android.util.AndroidException { + ctor public IntentFilter.MalformedMimeTypeException(); + ctor public IntentFilter.MalformedMimeTypeException(String); + } + + public class IntentSender implements android.os.Parcelable { + method public int describeContents(); + method public String getCreatorPackage(); + method public int getCreatorUid(); + method public android.os.UserHandle getCreatorUserHandle(); + method @Deprecated public String getTargetPackage(); + method public static android.content.IntentSender readIntentSenderOrNullFromParcel(android.os.Parcel); + method public void sendIntent(android.content.Context, int, android.content.Intent, android.content.IntentSender.OnFinished, android.os.Handler) throws android.content.IntentSender.SendIntentException; + method public void sendIntent(android.content.Context, int, android.content.Intent, android.content.IntentSender.OnFinished, android.os.Handler, String) throws android.content.IntentSender.SendIntentException; + method @FlaggedApi("com.android.window.flags.bal_send_intent_with_options") public void sendIntent(@Nullable android.content.Context, int, @Nullable android.content.Intent, @Nullable String, @Nullable android.os.Bundle, @Nullable java.util.concurrent.Executor, @Nullable android.content.IntentSender.OnFinished) throws android.content.IntentSender.SendIntentException; + method public static void writeIntentSenderOrNullToParcel(android.content.IntentSender, android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static interface IntentSender.OnFinished { + method public void onSendFinished(android.content.IntentSender, android.content.Intent, int, String, android.os.Bundle); + } + + public static class IntentSender.SendIntentException extends android.util.AndroidException { + ctor public IntentSender.SendIntentException(); + ctor public IntentSender.SendIntentException(String); + ctor public IntentSender.SendIntentException(Exception); + } + + @Deprecated public class Loader { + ctor @Deprecated public Loader(android.content.Context); + method @Deprecated public void abandon(); + method @Deprecated public boolean cancelLoad(); + method @Deprecated public void commitContentChanged(); + method @Deprecated public String dataToString(D); + method @Deprecated public void deliverCancellation(); + method @Deprecated public void deliverResult(D); + method @Deprecated public void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); + method @Deprecated public void forceLoad(); + method @Deprecated public android.content.Context getContext(); + method @Deprecated public int getId(); + method @Deprecated public boolean isAbandoned(); + method @Deprecated public boolean isReset(); + method @Deprecated public boolean isStarted(); + method @Deprecated protected void onAbandon(); + method @Deprecated protected boolean onCancelLoad(); + method @Deprecated public void onContentChanged(); + method @Deprecated protected void onForceLoad(); + method @Deprecated protected void onReset(); + method @Deprecated protected void onStartLoading(); + method @Deprecated protected void onStopLoading(); + method @Deprecated public void registerListener(int, android.content.Loader.OnLoadCompleteListener); + method @Deprecated public void registerOnLoadCanceledListener(android.content.Loader.OnLoadCanceledListener); + method @Deprecated public void reset(); + method @Deprecated public void rollbackContentChanged(); + method @Deprecated public final void startLoading(); + method @Deprecated public void stopLoading(); + method @Deprecated public boolean takeContentChanged(); + method @Deprecated public void unregisterListener(android.content.Loader.OnLoadCompleteListener); + method @Deprecated public void unregisterOnLoadCanceledListener(android.content.Loader.OnLoadCanceledListener); + } + + @Deprecated public final class Loader.ForceLoadContentObserver extends android.database.ContentObserver { + ctor @Deprecated public Loader.ForceLoadContentObserver(); + } + + @Deprecated public static interface Loader.OnLoadCanceledListener { + method @Deprecated public void onLoadCanceled(android.content.Loader); + } + + @Deprecated public static interface Loader.OnLoadCompleteListener { + method @Deprecated public void onLoadComplete(android.content.Loader, D); + } + + public final class LocusId implements android.os.Parcelable { + ctor public LocusId(@NonNull String); + method public int describeContents(); + method @NonNull public String getId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class MutableContextWrapper extends android.content.ContextWrapper { + ctor public MutableContextWrapper(android.content.Context); + method public void setBaseContext(android.content.Context); + } + + public class OperationApplicationException extends java.lang.Exception { + ctor public OperationApplicationException(); + ctor public OperationApplicationException(String); + ctor public OperationApplicationException(String, Throwable); + ctor public OperationApplicationException(Throwable); + ctor public OperationApplicationException(int); + ctor public OperationApplicationException(String, int); + method public int getNumSuccessfulYieldPoints(); + } + + public class PeriodicSync implements android.os.Parcelable { + ctor public PeriodicSync(android.accounts.Account, String, android.os.Bundle, long); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public final android.accounts.Account account; + field public final String authority; + field public final android.os.Bundle extras; + field public final long period; + } + + public class QuickViewConstants { + field public static final String FEATURE_DELETE = "android:delete"; + field public static final String FEATURE_DOWNLOAD = "android:download"; + field public static final String FEATURE_EDIT = "android:edit"; + field public static final String FEATURE_PRINT = "android:print"; + field public static final String FEATURE_SEND = "android:send"; + field public static final String FEATURE_VIEW = "android:view"; + } + + public class ReceiverCallNotAllowedException extends android.util.AndroidRuntimeException { + ctor public ReceiverCallNotAllowedException(String); + } + + public class RestrictionEntry implements android.os.Parcelable { + ctor public RestrictionEntry(int, String); + ctor public RestrictionEntry(String, String); + ctor public RestrictionEntry(String, boolean); + ctor public RestrictionEntry(String, String[]); + ctor public RestrictionEntry(String, int); + ctor public RestrictionEntry(android.os.Parcel); + method public static android.content.RestrictionEntry createBundleArrayEntry(String, android.content.RestrictionEntry[]); + method public static android.content.RestrictionEntry createBundleEntry(String, android.content.RestrictionEntry[]); + method public int describeContents(); + method public String[] getAllSelectedStrings(); + method public String[] getChoiceEntries(); + method public String[] getChoiceValues(); + method public String getDescription(); + method public int getIntValue(); + method public String getKey(); + method public android.content.RestrictionEntry[] getRestrictions(); + method public boolean getSelectedState(); + method public String getSelectedString(); + method public String getTitle(); + method public int getType(); + method public void setAllSelectedStrings(String[]); + method public void setChoiceEntries(String[]); + method public void setChoiceEntries(android.content.Context, @ArrayRes int); + method public void setChoiceValues(String[]); + method public void setChoiceValues(android.content.Context, @ArrayRes int); + method public void setDescription(String); + method public void setIntValue(int); + method public void setRestrictions(android.content.RestrictionEntry[]); + method public void setSelectedState(boolean); + method public void setSelectedString(String); + method public void setTitle(String); + method public void setType(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_BOOLEAN = 1; // 0x1 + field public static final int TYPE_BUNDLE = 7; // 0x7 + field public static final int TYPE_BUNDLE_ARRAY = 8; // 0x8 + field public static final int TYPE_CHOICE = 2; // 0x2 + field public static final int TYPE_INTEGER = 5; // 0x5 + field public static final int TYPE_MULTI_SELECT = 4; // 0x4 + field public static final int TYPE_NULL = 0; // 0x0 + field public static final int TYPE_STRING = 6; // 0x6 + } + + public class RestrictionsManager { + method public static android.os.Bundle convertRestrictionsToBundle(java.util.List); + method public android.content.Intent createLocalApprovalIntent(); + method public android.os.Bundle getApplicationRestrictions(); + method @NonNull @WorkerThread public java.util.List getApplicationRestrictionsPerAdmin(); + method public java.util.List getManifestRestrictions(String); + method public boolean hasRestrictionsProvider(); + method public void notifyPermissionResponse(String, android.os.PersistableBundle); + method public void requestPermission(String, String, android.os.PersistableBundle); + field public static final String ACTION_PERMISSION_RESPONSE_RECEIVED = "android.content.action.PERMISSION_RESPONSE_RECEIVED"; + field public static final String ACTION_REQUEST_LOCAL_APPROVAL = "android.content.action.REQUEST_LOCAL_APPROVAL"; + field public static final String ACTION_REQUEST_PERMISSION = "android.content.action.REQUEST_PERMISSION"; + field public static final String EXTRA_PACKAGE_NAME = "android.content.extra.PACKAGE_NAME"; + field public static final String EXTRA_REQUEST_BUNDLE = "android.content.extra.REQUEST_BUNDLE"; + field public static final String EXTRA_REQUEST_ID = "android.content.extra.REQUEST_ID"; + field public static final String EXTRA_REQUEST_TYPE = "android.content.extra.REQUEST_TYPE"; + field public static final String EXTRA_RESPONSE_BUNDLE = "android.content.extra.RESPONSE_BUNDLE"; + field public static final String META_DATA_APP_RESTRICTIONS = "android.content.APP_RESTRICTIONS"; + field public static final String REQUEST_KEY_APPROVE_LABEL = "android.request.approve_label"; + field public static final String REQUEST_KEY_DATA = "android.request.data"; + field public static final String REQUEST_KEY_DENY_LABEL = "android.request.deny_label"; + field public static final String REQUEST_KEY_ICON = "android.request.icon"; + field public static final String REQUEST_KEY_ID = "android.request.id"; + field public static final String REQUEST_KEY_MESSAGE = "android.request.mesg"; + field public static final String REQUEST_KEY_NEW_REQUEST = "android.request.new_request"; + field public static final String REQUEST_KEY_TITLE = "android.request.title"; + field public static final String REQUEST_TYPE_APPROVAL = "android.request.type.approval"; + field public static final String RESPONSE_KEY_ERROR_CODE = "android.response.errorcode"; + field public static final String RESPONSE_KEY_MESSAGE = "android.response.msg"; + field public static final String RESPONSE_KEY_RESPONSE_TIMESTAMP = "android.response.timestamp"; + field public static final String RESPONSE_KEY_RESULT = "android.response.result"; + field public static final int RESULT_APPROVED = 1; // 0x1 + field public static final int RESULT_DENIED = 2; // 0x2 + field public static final int RESULT_ERROR = 5; // 0x5 + field public static final int RESULT_ERROR_BAD_REQUEST = 1; // 0x1 + field public static final int RESULT_ERROR_INTERNAL = 3; // 0x3 + field public static final int RESULT_ERROR_NETWORK = 2; // 0x2 + field public static final int RESULT_NO_RESPONSE = 3; // 0x3 + field public static final int RESULT_UNKNOWN_REQUEST = 4; // 0x4 + } + + public class SearchRecentSuggestionsProvider extends android.content.ContentProvider { + ctor public SearchRecentSuggestionsProvider(); + method public int delete(android.net.Uri, String, String[]); + method public String getType(android.net.Uri); + method public android.net.Uri insert(android.net.Uri, android.content.ContentValues); + method public boolean onCreate(); + method public android.database.Cursor query(android.net.Uri, String[], String, String[], String); + method protected void setupSuggestions(String, int); + method public int update(android.net.Uri, android.content.ContentValues, String, String[]); + field public static final int DATABASE_MODE_2LINES = 2; // 0x2 + field public static final int DATABASE_MODE_QUERIES = 1; // 0x1 + } + + public interface ServiceConnection { + method public default void onBindingDied(android.content.ComponentName); + method public default void onNullBinding(android.content.ComponentName); + method public void onServiceConnected(android.content.ComponentName, android.os.IBinder); + method public void onServiceDisconnected(android.content.ComponentName); + } + + public interface SharedPreferences { + method public boolean contains(String); + method public android.content.SharedPreferences.Editor edit(); + method public java.util.Map getAll(); + method public boolean getBoolean(String, boolean); + method public float getFloat(String, float); + method public int getInt(String, int); + method public long getLong(String, long); + method @Nullable public String getString(String, @Nullable String); + method @Nullable public java.util.Set getStringSet(String, @Nullable java.util.Set); + method public void registerOnSharedPreferenceChangeListener(android.content.SharedPreferences.OnSharedPreferenceChangeListener); + method public void unregisterOnSharedPreferenceChangeListener(android.content.SharedPreferences.OnSharedPreferenceChangeListener); + } + + public static interface SharedPreferences.Editor { + method public void apply(); + method public android.content.SharedPreferences.Editor clear(); + method public boolean commit(); + method public android.content.SharedPreferences.Editor putBoolean(String, boolean); + method public android.content.SharedPreferences.Editor putFloat(String, float); + method public android.content.SharedPreferences.Editor putInt(String, int); + method public android.content.SharedPreferences.Editor putLong(String, long); + method public android.content.SharedPreferences.Editor putString(String, @Nullable String); + method public android.content.SharedPreferences.Editor putStringSet(String, @Nullable java.util.Set); + method public android.content.SharedPreferences.Editor remove(String); + } + + public static interface SharedPreferences.OnSharedPreferenceChangeListener { + method public void onSharedPreferenceChanged(android.content.SharedPreferences, @Nullable String); + } + + public class SyncAdapterType implements android.os.Parcelable { + ctor public SyncAdapterType(String, String, boolean, boolean); + ctor public SyncAdapterType(android.os.Parcel); + method public boolean allowParallelSyncs(); + method public int describeContents(); + method public String getSettingsActivity(); + method public boolean isAlwaysSyncable(); + method public boolean isUserVisible(); + method public static android.content.SyncAdapterType newKey(String, String); + method public boolean supportsUploading(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public final String accountType; + field public final String authority; + field public final boolean isKey; + } + + public class SyncContext { + method public android.os.IBinder getSyncContextBinder(); + method public void onFinished(android.content.SyncResult); + } + + public class SyncInfo implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field public final android.accounts.Account account; + field public final String authority; + field public final long startTime; + } + + public class SyncRequest implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class SyncRequest.Builder { + ctor public SyncRequest.Builder(); + method public android.content.SyncRequest build(); + method public android.content.SyncRequest.Builder setDisallowMetered(boolean); + method public android.content.SyncRequest.Builder setExpedited(boolean); + method public android.content.SyncRequest.Builder setExtras(android.os.Bundle); + method public android.content.SyncRequest.Builder setIgnoreBackoff(boolean); + method public android.content.SyncRequest.Builder setIgnoreSettings(boolean); + method public android.content.SyncRequest.Builder setManual(boolean); + method public android.content.SyncRequest.Builder setNoRetry(boolean); + method public android.content.SyncRequest.Builder setRequiresCharging(boolean); + method @NonNull public android.content.SyncRequest.Builder setScheduleAsExpeditedJob(boolean); + method public android.content.SyncRequest.Builder setSyncAdapter(android.accounts.Account, String); + method public android.content.SyncRequest.Builder syncOnce(); + method public android.content.SyncRequest.Builder syncPeriodic(long, long); + } + + public final class SyncResult implements android.os.Parcelable { + ctor public SyncResult(); + method public void clear(); + method public int describeContents(); + method public boolean hasError(); + method public boolean hasHardError(); + method public boolean hasSoftError(); + method public boolean madeSomeProgress(); + method public String toDebugString(); + method public void writeToParcel(android.os.Parcel, int); + field public static final android.content.SyncResult ALREADY_IN_PROGRESS; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public boolean databaseError; + field public long delayUntil; + field public boolean fullSyncRequested; + field public boolean moreRecordsToGet; + field public boolean partialSyncUnavailable; + field public final android.content.SyncStats stats; + field public final boolean syncAlreadyInProgress; + field public boolean tooManyDeletions; + field public boolean tooManyRetries; + } + + public class SyncStats implements android.os.Parcelable { + ctor public SyncStats(); + ctor public SyncStats(android.os.Parcel); + method public void clear(); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public long numAuthExceptions; + field public long numConflictDetectedExceptions; + field public long numDeletes; + field public long numEntries; + field public long numInserts; + field public long numIoExceptions; + field public long numParseExceptions; + field public long numSkippedEntries; + field public long numUpdates; + } + + public interface SyncStatusObserver { + method public void onStatusChanged(int); + } + + public class UriMatcher { + ctor public UriMatcher(int); + method public void addURI(String, String, int); + method public int match(android.net.Uri); + field public static final int NO_MATCH = -1; // 0xffffffff + } + + public final class UriPermission implements android.os.Parcelable { + method public int describeContents(); + method public long getPersistedTime(); + method public android.net.Uri getUri(); + method public boolean isReadPermission(); + method public boolean isWritePermission(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final long INVALID_TIME = -9223372036854775808L; // 0x8000000000000000L + } + + @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final class UriRelativeFilter { + ctor public UriRelativeFilter(int, int, @NonNull String); + method @NonNull public String getFilter(); + method public int getPatternType(); + method public int getUriPart(); + method public boolean matchData(@NonNull android.net.Uri); + field public static final int FRAGMENT = 2; // 0x2 + field public static final int PATH = 0; // 0x0 + field public static final int QUERY = 1; // 0x1 + } + + @FlaggedApi("android.content.pm.relative_reference_intent_filters") public final class UriRelativeFilterGroup { + ctor public UriRelativeFilterGroup(int); + method public void addUriRelativeFilter(@NonNull android.content.UriRelativeFilter); + method public int getAction(); + method @NonNull public java.util.Collection getUriRelativeFilters(); + method public boolean matchData(@NonNull android.net.Uri); + field public static final int ACTION_ALLOW = 0; // 0x0 + field public static final int ACTION_BLOCK = 1; // 0x1 + } + +} + +package android.content.om { + + public class FabricatedOverlay { + ctor public FabricatedOverlay(@NonNull String, @NonNull String); + method @NonNull public android.content.om.OverlayIdentifier getIdentifier(); + method @FlaggedApi("android.content.res.nine_patch_frro") @NonNull public void setNinePatchResourceValue(@NonNull String, @NonNull android.os.ParcelFileDescriptor, @Nullable String); + method @NonNull public void setResourceValue(@NonNull String, @IntRange(from=android.util.TypedValue.TYPE_FIRST_INT, to=android.util.TypedValue.TYPE_LAST_INT) int, int, @Nullable String); + method @NonNull public void setResourceValue(@NonNull String, int, @NonNull String, @Nullable String); + method @NonNull public void setResourceValue(@NonNull String, @NonNull android.os.ParcelFileDescriptor, @Nullable String); + method @FlaggedApi("android.content.res.asset_file_descriptor_frro") @NonNull public void setResourceValue(@NonNull String, @NonNull android.content.res.AssetFileDescriptor, @Nullable String); + method @FlaggedApi("android.content.res.dimension_frro") public void setResourceValue(@NonNull String, float, int, @Nullable String); + method public void setTargetOverlayable(@Nullable String); + } + + public final class OverlayIdentifier implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class OverlayInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.content.om.OverlayIdentifier getOverlayIdentifier(); + method @Nullable public String getOverlayName(); + method @Nullable public String getTargetOverlayableName(); + method @NonNull public String getTargetPackageName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class OverlayManager { + method public void commit(@NonNull android.content.om.OverlayManagerTransaction); + method @NonNull @NonUiContext public java.util.List getOverlayInfosForTarget(@NonNull String); + } + + public final class OverlayManagerTransaction implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public static android.content.om.OverlayManagerTransaction newInstance(); + method @NonNull public void registerFabricatedOverlay(@NonNull android.content.om.FabricatedOverlay); + method @NonNull public void unregisterFabricatedOverlay(@NonNull android.content.om.OverlayIdentifier); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.content.pm { + + public class ActivityInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable { + ctor public ActivityInfo(); + ctor public ActivityInfo(android.content.pm.ActivityInfo); + method public int describeContents(); + method public void dump(android.util.Printer, String); + method @NonNull public java.util.Set getKnownActivityEmbeddingCerts(); + method public final int getThemeResource(); + field public static final int COLOR_MODE_DEFAULT = 0; // 0x0 + field public static final int COLOR_MODE_HDR = 2; // 0x2 + field public static final int COLOR_MODE_WIDE_COLOR_GAMUT = 1; // 0x1 + field @FlaggedApi("android.content.res.handle_all_config_changes") public static final int CONFIG_ASSETS_PATHS = -2147483648; // 0x80000000 + field public static final int CONFIG_COLOR_MODE = 16384; // 0x4000 + field public static final int CONFIG_DENSITY = 4096; // 0x1000 + field public static final int CONFIG_FONT_SCALE = 1073741824; // 0x40000000 + field public static final int CONFIG_FONT_WEIGHT_ADJUSTMENT = 268435456; // 0x10000000 + field public static final int CONFIG_GRAMMATICAL_GENDER = 32768; // 0x8000 + field public static final int CONFIG_KEYBOARD = 16; // 0x10 + field public static final int CONFIG_KEYBOARD_HIDDEN = 32; // 0x20 + field public static final int CONFIG_LAYOUT_DIRECTION = 8192; // 0x2000 + field public static final int CONFIG_LOCALE = 4; // 0x4 + field public static final int CONFIG_MCC = 1; // 0x1 + field public static final int CONFIG_MNC = 2; // 0x2 + field public static final int CONFIG_NAVIGATION = 64; // 0x40 + field public static final int CONFIG_ORIENTATION = 128; // 0x80 + field @FlaggedApi("android.content.res.handle_all_config_changes") public static final int CONFIG_RESOURCES_UNUSED = 134217728; // 0x8000000 + field public static final int CONFIG_SCREEN_LAYOUT = 256; // 0x100 + field public static final int CONFIG_SCREEN_SIZE = 1024; // 0x400 + field public static final int CONFIG_SMALLEST_SCREEN_SIZE = 2048; // 0x800 + field public static final int CONFIG_TOUCHSCREEN = 8; // 0x8 + field public static final int CONFIG_UI_MODE = 512; // 0x200 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DOCUMENT_LAUNCH_ALWAYS = 2; // 0x2 + field public static final int DOCUMENT_LAUNCH_INTO_EXISTING = 1; // 0x1 + field public static final int DOCUMENT_LAUNCH_NEVER = 3; // 0x3 + field public static final int DOCUMENT_LAUNCH_NONE = 0; // 0x0 + field public static final int FLAG_ALLOW_TASK_REPARENTING = 64; // 0x40 + field public static final int FLAG_ALLOW_UNTRUSTED_ACTIVITY_EMBEDDING = 268435456; // 0x10000000 + field public static final int FLAG_ALWAYS_RETAIN_TASK_STATE = 8; // 0x8 + field public static final int FLAG_AUTO_REMOVE_FROM_RECENTS = 8192; // 0x2000 + field public static final int FLAG_CLEAR_TASK_ON_LAUNCH = 4; // 0x4 + field public static final int FLAG_ENABLE_VR_MODE = 32768; // 0x8000 + field public static final int FLAG_EXCLUDE_FROM_RECENTS = 32; // 0x20 + field public static final int FLAG_FINISH_ON_CLOSE_SYSTEM_DIALOGS = 256; // 0x100 + field public static final int FLAG_FINISH_ON_TASK_LAUNCH = 2; // 0x2 + field public static final int FLAG_HARDWARE_ACCELERATED = 512; // 0x200 + field public static final int FLAG_IMMERSIVE = 2048; // 0x800 + field public static final int FLAG_MULTIPROCESS = 1; // 0x1 + field public static final int FLAG_NO_HISTORY = 128; // 0x80 + field public static final int FLAG_PREFER_MINIMAL_POST_PROCESSING = 33554432; // 0x2000000 + field public static final int FLAG_RELINQUISH_TASK_IDENTITY = 4096; // 0x1000 + field public static final int FLAG_RESUME_WHILE_PAUSING = 16384; // 0x4000 + field public static final int FLAG_SINGLE_USER = 1073741824; // 0x40000000 + field public static final int FLAG_STATE_NOT_NEEDED = 16; // 0x10 + field public static final int LAUNCH_MULTIPLE = 0; // 0x0 + field public static final int LAUNCH_SINGLE_INSTANCE = 3; // 0x3 + field public static final int LAUNCH_SINGLE_INSTANCE_PER_TASK = 4; // 0x4 + field public static final int LAUNCH_SINGLE_TASK = 2; // 0x2 + field public static final int LAUNCH_SINGLE_TOP = 1; // 0x1 + field public static final int PERSIST_ACROSS_REBOOTS = 2; // 0x2 + field public static final int PERSIST_NEVER = 1; // 0x1 + field public static final int PERSIST_ROOT_ONLY = 0; // 0x0 + field public static final int SCREEN_ORIENTATION_BEHIND = 3; // 0x3 + field public static final int SCREEN_ORIENTATION_FULL_SENSOR = 10; // 0xa + field public static final int SCREEN_ORIENTATION_FULL_USER = 13; // 0xd + field public static final int SCREEN_ORIENTATION_LANDSCAPE = 0; // 0x0 + field public static final int SCREEN_ORIENTATION_LOCKED = 14; // 0xe + field public static final int SCREEN_ORIENTATION_NOSENSOR = 5; // 0x5 + field public static final int SCREEN_ORIENTATION_PORTRAIT = 1; // 0x1 + field public static final int SCREEN_ORIENTATION_REVERSE_LANDSCAPE = 8; // 0x8 + field public static final int SCREEN_ORIENTATION_REVERSE_PORTRAIT = 9; // 0x9 + field public static final int SCREEN_ORIENTATION_SENSOR = 4; // 0x4 + field public static final int SCREEN_ORIENTATION_SENSOR_LANDSCAPE = 6; // 0x6 + field public static final int SCREEN_ORIENTATION_SENSOR_PORTRAIT = 7; // 0x7 + field public static final int SCREEN_ORIENTATION_UNSPECIFIED = -1; // 0xffffffff + field public static final int SCREEN_ORIENTATION_USER = 2; // 0x2 + field public static final int SCREEN_ORIENTATION_USER_LANDSCAPE = 11; // 0xb + field public static final int SCREEN_ORIENTATION_USER_PORTRAIT = 12; // 0xc + field public static final int UIOPTION_SPLIT_ACTION_BAR_WHEN_NARROW = 1; // 0x1 + field public int colorMode; + field public int configChanges; + field public int documentLaunchMode; + field public int flags; + field public int launchMode; + field public int maxRecents; + field public String parentActivityName; + field public String permission; + field public int persistableMode; + field @Nullable public String requiredDisplayCategory; + field public int screenOrientation; + field public int softInputMode; + field public String targetActivity; + field public String taskAffinity; + field public int theme; + field public int uiOptions; + field public android.content.pm.ActivityInfo.WindowLayout windowLayout; + } + + public static final class ActivityInfo.WindowLayout { + ctor public ActivityInfo.WindowLayout(int, float, int, float, int, int, int); + field public final int gravity; + field public final int height; + field public final float heightFraction; + field public final int minHeight; + field public final int minWidth; + field public final int width; + field public final float widthFraction; + } + + public final class ApkChecksum implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public java.security.cert.Certificate getInstallerCertificate() throws java.security.cert.CertificateException; + method @Nullable public String getInstallerPackageName(); + method @Nullable public String getSplitName(); + method public int getType(); + method @NonNull public byte[] getValue(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { + ctor public ApplicationInfo(); + ctor public ApplicationInfo(android.content.pm.ApplicationInfo); + method public boolean areAttributionsUserVisible(); + method public int describeContents(); + method public void dump(android.util.Printer, String); + method public static CharSequence getCategoryTitle(android.content.Context, int); + method public int getGwpAsanMode(); + method @NonNull public java.util.Set getKnownActivityEmbeddingCerts(); + method public int getMemtagMode(); + method public int getNativeHeapZeroInitialized(); + method public int getRequestRawExternalStorageAccess(); + method @FlaggedApi("android.content.pm.audio_playback_capture_allowance") public boolean isAudioPlaybackCaptureAllowed(); + method public boolean isProfileable(); + method public boolean isProfileableByShell(); + method public boolean isResourceOverlay(); + method public boolean isVirtualPreload(); + method public CharSequence loadDescription(android.content.pm.PackageManager); + field public static final int CATEGORY_ACCESSIBILITY = 8; // 0x8 + field public static final int CATEGORY_AUDIO = 1; // 0x1 + field public static final int CATEGORY_GAME = 0; // 0x0 + field public static final int CATEGORY_IMAGE = 3; // 0x3 + field public static final int CATEGORY_MAPS = 6; // 0x6 + field public static final int CATEGORY_NEWS = 5; // 0x5 + field public static final int CATEGORY_PRODUCTIVITY = 7; // 0x7 + field public static final int CATEGORY_SOCIAL = 4; // 0x4 + field public static final int CATEGORY_UNDEFINED = -1; // 0xffffffff + field public static final int CATEGORY_VIDEO = 2; // 0x2 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_ALLOW_BACKUP = 32768; // 0x8000 + field public static final int FLAG_ALLOW_CLEAR_USER_DATA = 64; // 0x40 + field public static final int FLAG_ALLOW_TASK_REPARENTING = 32; // 0x20 + field public static final int FLAG_DEBUGGABLE = 2; // 0x2 + field public static final int FLAG_EXTERNAL_STORAGE = 262144; // 0x40000 + field public static final int FLAG_EXTRACT_NATIVE_LIBS = 268435456; // 0x10000000 + field public static final int FLAG_FACTORY_TEST = 16; // 0x10 + field public static final int FLAG_FULL_BACKUP_ONLY = 67108864; // 0x4000000 + field public static final int FLAG_HARDWARE_ACCELERATED = 536870912; // 0x20000000 + field public static final int FLAG_HAS_CODE = 4; // 0x4 + field public static final int FLAG_INSTALLED = 8388608; // 0x800000 + field public static final int FLAG_IS_DATA_ONLY = 16777216; // 0x1000000 + field @Deprecated public static final int FLAG_IS_GAME = 33554432; // 0x2000000 + field public static final int FLAG_KILL_AFTER_RESTORE = 65536; // 0x10000 + field public static final int FLAG_LARGE_HEAP = 1048576; // 0x100000 + field public static final int FLAG_MULTIARCH = -2147483648; // 0x80000000 + field public static final int FLAG_PERSISTENT = 8; // 0x8 + field public static final int FLAG_RESIZEABLE_FOR_SCREENS = 4096; // 0x1000 + field public static final int FLAG_RESTORE_ANY_VERSION = 131072; // 0x20000 + field public static final int FLAG_STOPPED = 2097152; // 0x200000 + field public static final int FLAG_SUPPORTS_LARGE_SCREENS = 2048; // 0x800 + field public static final int FLAG_SUPPORTS_NORMAL_SCREENS = 1024; // 0x400 + field public static final int FLAG_SUPPORTS_RTL = 4194304; // 0x400000 + field @Deprecated public static final int FLAG_SUPPORTS_SCREEN_DENSITIES = 8192; // 0x2000 + field public static final int FLAG_SUPPORTS_SMALL_SCREENS = 512; // 0x200 + field public static final int FLAG_SUPPORTS_XLARGE_SCREENS = 524288; // 0x80000 + field public static final int FLAG_SUSPENDED = 1073741824; // 0x40000000 + field public static final int FLAG_SYSTEM = 1; // 0x1 + field public static final int FLAG_TEST_ONLY = 256; // 0x100 + field public static final int FLAG_UPDATED_SYSTEM_APP = 128; // 0x80 + field public static final int FLAG_USES_CLEARTEXT_TRAFFIC = 134217728; // 0x8000000 + field public static final int FLAG_VM_SAFE_MODE = 16384; // 0x4000 + field public static final int GWP_ASAN_ALWAYS = 1; // 0x1 + field public static final int GWP_ASAN_DEFAULT = -1; // 0xffffffff + field public static final int GWP_ASAN_NEVER = 0; // 0x0 + field public static final int MEMTAG_ASYNC = 1; // 0x1 + field public static final int MEMTAG_DEFAULT = -1; // 0xffffffff + field public static final int MEMTAG_OFF = 0; // 0x0 + field public static final int MEMTAG_SYNC = 2; // 0x2 + field public static final int RAW_EXTERNAL_STORAGE_ACCESS_DEFAULT = 0; // 0x0 + field public static final int RAW_EXTERNAL_STORAGE_ACCESS_NOT_REQUESTED = 2; // 0x2 + field public static final int RAW_EXTERNAL_STORAGE_ACCESS_REQUESTED = 1; // 0x1 + field public static final int ZEROINIT_DEFAULT = -1; // 0xffffffff + field public static final int ZEROINIT_DISABLED = 0; // 0x0 + field public static final int ZEROINIT_ENABLED = 1; // 0x1 + field public String appComponentFactory; + field public String backupAgentName; + field public int category; + field public String className; + field public int compatibleWidthLimitDp; + field public int compileSdkVersion; + field @Nullable public String compileSdkVersionCodename; + field public String dataDir; + field public int descriptionRes; + field public String deviceProtectedDataDir; + field public boolean enabled; + field public int flags; + field public int largestWidthLimitDp; + field public String manageSpaceActivityName; + field public int minSdkVersion; + field public String nativeLibraryDir; + field public String permission; + field public String processName; + field public String publicSourceDir; + field public int requiresSmallestWidthDp; + field public String[] sharedLibraryFiles; + field public String sourceDir; + field @Nullable public String[] splitNames; + field @Nullable public String[] splitPublicSourceDirs; + field @Nullable public String[] splitSourceDirs; + field public java.util.UUID storageUuid; + field public int targetSdkVersion; + field public String taskAffinity; + field public int theme; + field public int uiOptions; + field public int uid; + } + + public static class ApplicationInfo.DisplayNameComparator implements java.util.Comparator { + ctor public ApplicationInfo.DisplayNameComparator(android.content.pm.PackageManager); + method public final int compare(android.content.pm.ApplicationInfo, android.content.pm.ApplicationInfo); + } + + @FlaggedApi("android.content.pm.archiving") public final class ArchivedActivityInfo { + ctor public ArchivedActivityInfo(@NonNull CharSequence, @NonNull android.content.ComponentName); + method @NonNull public android.content.ComponentName getComponentName(); + method @Nullable public android.graphics.drawable.Drawable getIcon(); + method @NonNull public CharSequence getLabel(); + method @Nullable public android.graphics.drawable.Drawable getMonochromeIcon(); + method @NonNull public android.content.pm.ArchivedActivityInfo setComponentName(@NonNull android.content.ComponentName); + method @NonNull public android.content.pm.ArchivedActivityInfo setIcon(@NonNull android.graphics.drawable.Drawable); + method @NonNull public android.content.pm.ArchivedActivityInfo setLabel(@NonNull CharSequence); + method @NonNull public android.content.pm.ArchivedActivityInfo setMonochromeIcon(@NonNull android.graphics.drawable.Drawable); + } + + @FlaggedApi("android.content.pm.archiving") public final class ArchivedPackageInfo { + ctor public ArchivedPackageInfo(@NonNull String, @NonNull android.content.pm.SigningInfo, @NonNull java.util.List); + method @Nullable public String getDefaultToDeviceProtectedStorage(); + method @NonNull public java.util.List getLauncherActivities(); + method @NonNull public String getPackageName(); + method @Nullable public String getRequestLegacyExternalStorage(); + method @NonNull public android.content.pm.SigningInfo getSigningInfo(); + method public int getTargetSdkVersion(); + method @Nullable public String getUserDataFragile(); + method public int getVersionCode(); + method public int getVersionCodeMajor(); + method @NonNull public android.content.pm.ArchivedPackageInfo setDefaultToDeviceProtectedStorage(@NonNull String); + method @NonNull public android.content.pm.ArchivedPackageInfo setLauncherActivities(@NonNull java.util.List); + method @NonNull public android.content.pm.ArchivedPackageInfo setPackageName(@NonNull String); + method @NonNull public android.content.pm.ArchivedPackageInfo setRequestLegacyExternalStorage(@NonNull String); + method @NonNull public android.content.pm.ArchivedPackageInfo setSigningInfo(@NonNull android.content.pm.SigningInfo); + method @NonNull public android.content.pm.ArchivedPackageInfo setTargetSdkVersion(int); + method @NonNull public android.content.pm.ArchivedPackageInfo setUserDataFragile(@NonNull String); + method @NonNull public android.content.pm.ArchivedPackageInfo setVersionCode(int); + method @NonNull public android.content.pm.ArchivedPackageInfo setVersionCodeMajor(int); + } + + public final class Attribution implements android.os.Parcelable { + method public int describeContents(); + method @IdRes public int getLabel(); + method @NonNull public String getTag(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class Capability implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class Capability.Builder { + ctor public Capability.Builder(@NonNull String); + method @NonNull public android.content.pm.Capability build(); + } + + public final class CapabilityParams implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getAliases(); + method @NonNull public String getName(); + method @NonNull public String getValue(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class CapabilityParams.Builder { + ctor public CapabilityParams.Builder(@NonNull String, @NonNull String); + method @NonNull public android.content.pm.CapabilityParams.Builder addAlias(@NonNull String); + method @NonNull public android.content.pm.CapabilityParams build(); + } + + public final class ChangedPackages implements android.os.Parcelable { + ctor public ChangedPackages(int, @NonNull java.util.List); + method public int describeContents(); + method @NonNull public java.util.List getPackageNames(); + method public int getSequenceNumber(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class Checksum implements android.os.Parcelable { + ctor public Checksum(int, @NonNull byte[]); + method public int describeContents(); + method public int getType(); + method @NonNull public byte[] getValue(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA256 = 32; // 0x20 + field public static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA512 = 64; // 0x40 + field @Deprecated public static final int TYPE_WHOLE_MD5 = 2; // 0x2 + field public static final int TYPE_WHOLE_MERKLE_ROOT_4K_SHA256 = 1; // 0x1 + field @Deprecated public static final int TYPE_WHOLE_SHA1 = 4; // 0x4 + field @Deprecated public static final int TYPE_WHOLE_SHA256 = 8; // 0x8 + field @Deprecated public static final int TYPE_WHOLE_SHA512 = 16; // 0x10 + } + + public class ComponentInfo extends android.content.pm.PackageItemInfo { + ctor public ComponentInfo(); + ctor public ComponentInfo(android.content.pm.ComponentInfo); + ctor protected ComponentInfo(android.os.Parcel); + method public final int getBannerResource(); + method public final int getIconResource(); + method public final int getLogoResource(); + method public boolean isEnabled(); + field public android.content.pm.ApplicationInfo applicationInfo; + field public String[] attributionTags; + field public int descriptionRes; + field public boolean directBootAware; + field public boolean enabled; + field public boolean exported; + field public String processName; + field public String splitName; + } + + public class ConfigurationInfo implements android.os.Parcelable { + ctor public ConfigurationInfo(); + ctor public ConfigurationInfo(android.content.pm.ConfigurationInfo); + method public int describeContents(); + method public String getGlEsVersion(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int GL_ES_VERSION_UNDEFINED = 0; // 0x0 + field public static final int INPUT_FEATURE_FIVE_WAY_NAV = 2; // 0x2 + field public static final int INPUT_FEATURE_HARD_KEYBOARD = 1; // 0x1 + field public int reqGlEsVersion; + field public int reqInputFeatures; + field public int reqKeyboardType; + field public int reqNavigation; + field public int reqTouchScreen; + } + + public class CrossProfileApps { + method public boolean canInteractAcrossProfiles(); + method public boolean canRequestInteractAcrossProfiles(); + method @NonNull public android.content.Intent createRequestInteractAcrossProfilesIntent(); + method @NonNull public android.graphics.drawable.Drawable getProfileSwitchingIconDrawable(@NonNull android.os.UserHandle); + method @NonNull public CharSequence getProfileSwitchingLabel(@NonNull android.os.UserHandle); + method @NonNull public java.util.List getTargetUserProfiles(); + method @FlaggedApi("android.app.admin.flags.allow_querying_profile_type") public boolean isManagedProfile(@NonNull android.os.UserHandle); + method @FlaggedApi("android.app.admin.flags.allow_querying_profile_type") public boolean isProfile(@NonNull android.os.UserHandle); + method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_PROFILES, "android.permission.INTERACT_ACROSS_USERS"}) public void startActivity(@NonNull android.content.Intent, @NonNull android.os.UserHandle, @Nullable android.app.Activity); + method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_PROFILES, "android.permission.INTERACT_ACROSS_USERS"}) public void startActivity(@NonNull android.content.Intent, @NonNull android.os.UserHandle, @Nullable android.app.Activity, @Nullable android.os.Bundle); + method public void startMainActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle); + method public void startMainActivity(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle, @Nullable android.app.Activity, @Nullable android.os.Bundle); + field public static final String ACTION_CAN_INTERACT_ACROSS_PROFILES_CHANGED = "android.content.pm.action.CAN_INTERACT_ACROSS_PROFILES_CHANGED"; + } + + public final class FeatureGroupInfo implements android.os.Parcelable { + ctor public FeatureGroupInfo(); + ctor public FeatureGroupInfo(android.content.pm.FeatureGroupInfo); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public android.content.pm.FeatureInfo[] features; + } + + public class FeatureInfo implements android.os.Parcelable { + ctor public FeatureInfo(); + ctor public FeatureInfo(android.content.pm.FeatureInfo); + method public int describeContents(); + method public String getGlEsVersion(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_REQUIRED = 1; // 0x1 + field public static final int GL_ES_VERSION_UNDEFINED = 0; // 0x0 + field public int flags; + field public String name; + field public int reqGlEsVersion; + field public int version; + } + + public final class InstallSourceInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getInitiatingPackageName(); + method @Nullable public android.content.pm.SigningInfo getInitiatingPackageSigningInfo(); + method @Nullable public String getInstallingPackageName(); + method @Nullable public String getOriginatingPackageName(); + method public int getPackageSource(); + method @Nullable public String getUpdateOwnerPackageName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class InstrumentationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { + ctor public InstrumentationInfo(); + ctor public InstrumentationInfo(android.content.pm.InstrumentationInfo); + method public int describeContents(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public String dataDir; + field public boolean functionalTest; + field public boolean handleProfiling; + field public String publicSourceDir; + field public String sourceDir; + field public String[] splitNames; + field public String[] splitPublicSourceDirs; + field public String[] splitSourceDirs; + field public String targetPackage; + field public String targetProcesses; + } + + public class LabeledIntent extends android.content.Intent { + ctor public LabeledIntent(android.content.Intent, String, int, int); + ctor public LabeledIntent(android.content.Intent, String, CharSequence, int); + ctor public LabeledIntent(String, int, int); + ctor public LabeledIntent(String, CharSequence, int); + method public int getIconResource(); + method public int getLabelResource(); + method public CharSequence getNonLocalizedLabel(); + method public String getSourcePackage(); + method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); + method public CharSequence loadLabel(android.content.pm.PackageManager); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class LauncherActivityInfo { + method @NonNull public android.content.pm.ActivityInfo getActivityInfo(); + method public android.content.pm.ApplicationInfo getApplicationInfo(); + method public android.graphics.drawable.Drawable getBadgedIcon(int); + method public android.content.ComponentName getComponentName(); + method public long getFirstInstallTime(); + method public android.graphics.drawable.Drawable getIcon(int); + method public CharSequence getLabel(); + method @FloatRange(from=0.0, to=1.0) public float getLoadingProgress(); + method public String getName(); + method public android.os.UserHandle getUser(); + } + + public class LauncherApps { + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public java.util.List getActivityList(String, android.os.UserHandle); + method @NonNull @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public java.util.List getAllPackageInstallerSessions(); + method @FlaggedApi("android.os.allow_private_profile") @Nullable @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.content.IntentSender getAppMarketActivityIntent(@Nullable String, @NonNull android.os.UserHandle); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.content.pm.ApplicationInfo getApplicationInfo(@NonNull String, int, @NonNull android.os.UserHandle) throws android.content.pm.PackageManager.NameNotFoundException; + method @FlaggedApi("android.os.allow_private_profile") @Nullable @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public final android.content.pm.LauncherUserInfo getLauncherUserInfo(@NonNull android.os.UserHandle); + method public android.content.pm.LauncherApps.PinItemRequest getPinItemRequest(android.content.Intent); + method @FlaggedApi("android.os.allow_private_profile") @NonNull @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public java.util.List getPreInstalledSystemPackages(@NonNull android.os.UserHandle); + method @FlaggedApi("android.os.get_private_space_settings") @Nullable @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.content.IntentSender getPrivateSpaceSettingsIntent(); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public java.util.List getProfiles(); + method public android.graphics.drawable.Drawable getShortcutBadgedIconDrawable(android.content.pm.ShortcutInfo, int); + method @Nullable public android.content.IntentSender getShortcutConfigActivityIntent(@NonNull android.content.pm.LauncherActivityInfo); + method public java.util.List getShortcutConfigActivityList(@Nullable String, @NonNull android.os.UserHandle); + method public android.graphics.drawable.Drawable getShortcutIconDrawable(@NonNull android.content.pm.ShortcutInfo, int); + method @Nullable public android.app.PendingIntent getShortcutIntent(@NonNull String, @NonNull String, @Nullable android.os.Bundle, @NonNull android.os.UserHandle); + method @Nullable public java.util.List getShortcuts(@NonNull android.content.pm.LauncherApps.ShortcutQuery, @NonNull android.os.UserHandle); + method @Nullable @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.os.Bundle getSuspendedPackageLauncherExtras(String, android.os.UserHandle); + method public boolean hasShortcutHostPermission(); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public boolean isActivityEnabled(android.content.ComponentName, android.os.UserHandle); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public boolean isPackageEnabled(String, android.os.UserHandle); + method @RequiresPermission(conditional=true, value="android.permission.ACCESS_SHORTCUTS") public void pinShortcuts(@NonNull String, @NonNull java.util.List, @NonNull android.os.UserHandle); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public void registerCallback(android.content.pm.LauncherApps.Callback); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public void registerCallback(android.content.pm.LauncherApps.Callback, android.os.Handler); + method public void registerPackageInstallerSessionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.content.pm.PackageInstaller.SessionCallback); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public android.content.pm.LauncherActivityInfo resolveActivity(android.content.Intent, android.os.UserHandle); + method @FlaggedApi("android.content.pm.archiving") public void setArchiveCompatibility(@NonNull android.content.pm.LauncherApps.ArchiveCompatibilityParams); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public boolean shouldHideFromSuggestions(@NonNull String, @NonNull android.os.UserHandle); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public void startAppDetailsActivity(android.content.ComponentName, android.os.UserHandle, android.graphics.Rect, android.os.Bundle); + method @RequiresPermission(conditional=true, anyOf={"android.permission.ACCESS_HIDDEN_PROFILES_FULL", android.Manifest.permission.ACCESS_HIDDEN_PROFILES}) public void startMainActivity(android.content.ComponentName, android.os.UserHandle, android.graphics.Rect, android.os.Bundle); + method public void startPackageInstallerSessionDetailsActivity(@NonNull android.content.pm.PackageInstaller.SessionInfo, @Nullable android.graphics.Rect, @Nullable android.os.Bundle); + method public void startShortcut(@NonNull String, @NonNull String, @Nullable android.graphics.Rect, @Nullable android.os.Bundle, @NonNull android.os.UserHandle); + method public void startShortcut(@NonNull android.content.pm.ShortcutInfo, @Nullable android.graphics.Rect, @Nullable android.os.Bundle); + method public void unregisterCallback(android.content.pm.LauncherApps.Callback); + method public void unregisterPackageInstallerSessionCallback(@NonNull android.content.pm.PackageInstaller.SessionCallback); + field public static final String ACTION_CONFIRM_PIN_APPWIDGET = "android.content.pm.action.CONFIRM_PIN_APPWIDGET"; + field public static final String ACTION_CONFIRM_PIN_SHORTCUT = "android.content.pm.action.CONFIRM_PIN_SHORTCUT"; + field public static final String EXTRA_PIN_ITEM_REQUEST = "android.content.pm.extra.PIN_ITEM_REQUEST"; + } + + @FlaggedApi("android.content.pm.archiving") public static class LauncherApps.ArchiveCompatibilityParams { + ctor public LauncherApps.ArchiveCompatibilityParams(); + method public void setEnableIconOverlay(boolean); + method public void setEnableUnarchivalConfirmation(boolean); + } + + public abstract static class LauncherApps.Callback { + ctor public LauncherApps.Callback(); + method public abstract void onPackageAdded(String, android.os.UserHandle); + method public abstract void onPackageChanged(String, android.os.UserHandle); + method public void onPackageLoadingProgressChanged(@NonNull String, @NonNull android.os.UserHandle, float); + method public abstract void onPackageRemoved(String, android.os.UserHandle); + method public abstract void onPackagesAvailable(String[], android.os.UserHandle, boolean); + method public void onPackagesSuspended(String[], android.os.UserHandle); + method @Deprecated public void onPackagesSuspended(String[], android.os.UserHandle, @Nullable android.os.Bundle); + method public abstract void onPackagesUnavailable(String[], android.os.UserHandle, boolean); + method public void onPackagesUnsuspended(String[], android.os.UserHandle); + method public void onShortcutsChanged(@NonNull String, @NonNull java.util.List, @NonNull android.os.UserHandle); + method @FlaggedApi("android.multiuser.add_launcher_user_config") public void onUserConfigChanged(@NonNull android.content.pm.LauncherUserInfo); + } + + public static final class LauncherApps.PinItemRequest implements android.os.Parcelable { + method public boolean accept(@Nullable android.os.Bundle); + method public boolean accept(); + method public int describeContents(); + method @Nullable public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo(android.content.Context); + method @Nullable public android.os.Bundle getExtras(); + method public int getRequestType(); + method @Nullable public android.content.pm.ShortcutInfo getShortcutInfo(); + method public boolean isValid(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int REQUEST_TYPE_APPWIDGET = 2; // 0x2 + field public static final int REQUEST_TYPE_SHORTCUT = 1; // 0x1 + } + + public static class LauncherApps.ShortcutQuery { + ctor public LauncherApps.ShortcutQuery(); + method public android.content.pm.LauncherApps.ShortcutQuery setActivity(@Nullable android.content.ComponentName); + method public android.content.pm.LauncherApps.ShortcutQuery setChangedSince(long); + method @NonNull public android.content.pm.LauncherApps.ShortcutQuery setLocusIds(@Nullable java.util.List); + method public android.content.pm.LauncherApps.ShortcutQuery setPackage(@Nullable String); + method public android.content.pm.LauncherApps.ShortcutQuery setQueryFlags(int); + method public android.content.pm.LauncherApps.ShortcutQuery setShortcutIds(@Nullable java.util.List); + field public static final int FLAG_GET_KEY_FIELDS_ONLY = 4; // 0x4 + field public static final int FLAG_MATCH_CACHED = 16; // 0x10 + field public static final int FLAG_MATCH_DYNAMIC = 1; // 0x1 + field public static final int FLAG_MATCH_MANIFEST = 8; // 0x8 + field public static final int FLAG_MATCH_PINNED = 2; // 0x2 + field public static final int FLAG_MATCH_PINNED_BY_ANY_LAUNCHER = 1024; // 0x400 + } + + @FlaggedApi("android.os.allow_private_profile") public final class LauncherUserInfo implements android.os.Parcelable { + method @FlaggedApi("android.os.allow_private_profile") public int describeContents(); + method @FlaggedApi("android.multiuser.add_launcher_user_config") @NonNull public android.os.Bundle getUserConfig(); + method @FlaggedApi("android.os.allow_private_profile") public int getUserSerialNumber(); + method @FlaggedApi("android.os.allow_private_profile") @NonNull public String getUserType(); + method @FlaggedApi("android.os.allow_private_profile") public void writeToParcel(@NonNull android.os.Parcel, int); + field @FlaggedApi("android.os.allow_private_profile") @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @FlaggedApi("android.multiuser.add_launcher_user_config") public static final String PRIVATE_SPACE_ENTRYPOINT_HIDDEN = "private_space_entrypoint_hidden"; + } + + public final class ModuleInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public CharSequence getName(); + method @Nullable public String getPackageName(); + method public boolean isHidden(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class PackageInfo implements android.os.Parcelable { + ctor public PackageInfo(); + method public int describeContents(); + method @FlaggedApi("android.content.pm.provide_info_of_apk_in_apex") @Nullable public String getApexPackageName(); + method @FlaggedApi("android.content.pm.archiving") public long getArchiveTimeMillis(); + method public long getLongVersionCode(); + method public void setLongVersionCode(long); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int INSTALL_LOCATION_AUTO = 0; // 0x0 + field public static final int INSTALL_LOCATION_INTERNAL_ONLY = 1; // 0x1 + field public static final int INSTALL_LOCATION_PREFER_EXTERNAL = 2; // 0x2 + field public static final int REQUESTED_PERMISSION_GRANTED = 2; // 0x2 + field public static final int REQUESTED_PERMISSION_IMPLICIT = 4; // 0x4 + field public static final int REQUESTED_PERMISSION_NEVER_FOR_LOCATION = 65536; // 0x10000 + field @Nullable public android.content.pm.ActivityInfo[] activities; + field @Nullable public android.content.pm.ApplicationInfo applicationInfo; + field @Nullable public android.content.pm.Attribution[] attributions; + field public int baseRevisionCode; + field @Nullable public android.content.pm.ConfigurationInfo[] configPreferences; + field @Nullable public android.content.pm.FeatureGroupInfo[] featureGroups; + field public long firstInstallTime; + field @Nullable public int[] gids; + field public int installLocation; + field @Nullable public android.content.pm.InstrumentationInfo[] instrumentation; + field public boolean isApex; + field public long lastUpdateTime; + field @NonNull public String packageName; + field @Nullable public android.content.pm.PermissionInfo[] permissions; + field @Nullable public android.content.pm.ProviderInfo[] providers; + field @Nullable public android.content.pm.ActivityInfo[] receivers; + field @Nullable public android.content.pm.FeatureInfo[] reqFeatures; + field @Nullable public String[] requestedPermissions; + field @Nullable public int[] requestedPermissionsFlags; + field @Nullable public android.content.pm.ServiceInfo[] services; + field @Nullable public String sharedUserId; + field public int sharedUserLabel; + field @Deprecated @Nullable public android.content.pm.Signature[] signatures; + field @Nullable public android.content.pm.SigningInfo signingInfo; + field @NonNull public String[] splitNames; + field @NonNull public int[] splitRevisionCodes; + field @Deprecated public int versionCode; + field @Nullable public String versionName; + } + + public class PackageInstaller { + method public void abandonSession(int); + method public void checkInstallConstraints(@NonNull java.util.List, @NonNull android.content.pm.PackageInstaller.InstallConstraints, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public void commitSessionAfterInstallConstraintsAreMet(int, @NonNull android.content.IntentSender, @NonNull android.content.pm.PackageInstaller.InstallConstraints, long); + method public int createSession(@NonNull android.content.pm.PackageInstaller.SessionParams) throws java.io.IOException; + method @Deprecated @Nullable public android.content.pm.PackageInstaller.SessionInfo getActiveStagedSession(); + method @NonNull public java.util.List getActiveStagedSessions(); + method @NonNull public java.util.List getAllSessions(); + method @NonNull public java.util.List getMySessions(); + method @Nullable public android.content.pm.PackageInstaller.SessionInfo getSessionInfo(int); + method @NonNull public java.util.List getStagedSessions(); + method @RequiresPermission(allOf={android.Manifest.permission.INSTALL_PACKAGES, "com.android.permission.INSTALL_EXISTING_PACKAGES"}) public void installExistingPackage(@NonNull String, int, @Nullable android.content.IntentSender); + method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void installPackageArchived(@NonNull android.content.pm.ArchivedPackageInfo, @NonNull android.content.pm.PackageInstaller.SessionParams, @NonNull android.content.IntentSender); + method @NonNull public android.content.pm.PackageInstaller.Session openSession(int) throws java.io.IOException; + method public void registerSessionCallback(@NonNull android.content.pm.PackageInstaller.SessionCallback); + method public void registerSessionCallback(@NonNull android.content.pm.PackageInstaller.SessionCallback, @NonNull android.os.Handler); + method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(anyOf={android.Manifest.permission.INSTALL_PACKAGES, android.Manifest.permission.REQUEST_INSTALL_PACKAGES}) public void reportUnarchivalState(@NonNull android.content.pm.PackageInstaller.UnarchivalState) throws android.content.pm.PackageManager.NameNotFoundException; + method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(anyOf={android.Manifest.permission.INSTALL_PACKAGES, android.Manifest.permission.REQUEST_INSTALL_PACKAGES}) public void reportUnarchivalStatus(int, int, long, @Nullable android.app.PendingIntent) throws android.content.pm.PackageManager.NameNotFoundException; + method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(anyOf={android.Manifest.permission.DELETE_PACKAGES, android.Manifest.permission.REQUEST_DELETE_PACKAGES}) public void requestArchive(@NonNull String, @NonNull android.content.IntentSender) throws android.content.pm.PackageManager.NameNotFoundException; + method @FlaggedApi("android.content.pm.archiving") @RequiresPermission(anyOf={android.Manifest.permission.INSTALL_PACKAGES, android.Manifest.permission.REQUEST_INSTALL_PACKAGES}) public void requestUnarchive(@NonNull String, @NonNull android.content.IntentSender) throws java.io.IOException, android.content.pm.PackageManager.NameNotFoundException; + method @RequiresPermission(anyOf={android.Manifest.permission.DELETE_PACKAGES, android.Manifest.permission.REQUEST_DELETE_PACKAGES}) public void uninstall(@NonNull String, @NonNull android.content.IntentSender); + method @RequiresPermission(anyOf={android.Manifest.permission.DELETE_PACKAGES, android.Manifest.permission.REQUEST_DELETE_PACKAGES}) public void uninstall(@NonNull android.content.pm.VersionedPackage, @NonNull android.content.IntentSender); + method @RequiresPermission(anyOf={android.Manifest.permission.DELETE_PACKAGES, android.Manifest.permission.REQUEST_DELETE_PACKAGES}) public void uninstall(@NonNull android.content.pm.VersionedPackage, int, @NonNull android.content.IntentSender); + method @RequiresPermission(android.Manifest.permission.DELETE_PACKAGES) public void uninstallExistingPackage(@NonNull String, @Nullable android.content.IntentSender); + method public void unregisterSessionCallback(@NonNull android.content.pm.PackageInstaller.SessionCallback); + method public void updateSessionAppIcon(int, @Nullable android.graphics.Bitmap); + method public void updateSessionAppLabel(int, @Nullable CharSequence); + method public void waitForInstallConstraints(@NonNull java.util.List, @NonNull android.content.pm.PackageInstaller.InstallConstraints, @NonNull android.content.IntentSender, long); + field public static final String ACTION_SESSION_COMMITTED = "android.content.pm.action.SESSION_COMMITTED"; + field public static final String ACTION_SESSION_DETAILS = "android.content.pm.action.SESSION_DETAILS"; + field public static final String ACTION_SESSION_UPDATED = "android.content.pm.action.SESSION_UPDATED"; + field public static final String EXTRA_INSTALL_CONSTRAINTS = "android.content.pm.extra.INSTALL_CONSTRAINTS"; + field public static final String EXTRA_INSTALL_CONSTRAINTS_RESULT = "android.content.pm.extra.INSTALL_CONSTRAINTS_RESULT"; + field public static final String EXTRA_OTHER_PACKAGE_NAME = "android.content.pm.extra.OTHER_PACKAGE_NAME"; + field public static final String EXTRA_PACKAGE_NAME = "android.content.pm.extra.PACKAGE_NAME"; + field public static final String EXTRA_PRE_APPROVAL = "android.content.pm.extra.PRE_APPROVAL"; + field public static final String EXTRA_SESSION = "android.content.pm.extra.SESSION"; + field public static final String EXTRA_SESSION_ID = "android.content.pm.extra.SESSION_ID"; + field public static final String EXTRA_STATUS = "android.content.pm.extra.STATUS"; + field public static final String EXTRA_STATUS_MESSAGE = "android.content.pm.extra.STATUS_MESSAGE"; + field public static final String EXTRA_STORAGE_PATH = "android.content.pm.extra.STORAGE_PATH"; + field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_UNARCHIVE_ALL_USERS = "android.content.pm.extra.UNARCHIVE_ALL_USERS"; + field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_UNARCHIVE_ID = "android.content.pm.extra.UNARCHIVE_ID"; + field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_UNARCHIVE_PACKAGE_NAME = "android.content.pm.extra.UNARCHIVE_PACKAGE_NAME"; + field @FlaggedApi("android.content.pm.archiving") public static final String EXTRA_UNARCHIVE_STATUS = "android.content.pm.extra.UNARCHIVE_STATUS"; + field public static final int PACKAGE_SOURCE_DOWNLOADED_FILE = 4; // 0x4 + field public static final int PACKAGE_SOURCE_LOCAL_FILE = 3; // 0x3 + field public static final int PACKAGE_SOURCE_OTHER = 1; // 0x1 + field public static final int PACKAGE_SOURCE_STORE = 2; // 0x2 + field public static final int PACKAGE_SOURCE_UNSPECIFIED = 0; // 0x0 + field public static final int STATUS_FAILURE = 1; // 0x1 + field public static final int STATUS_FAILURE_ABORTED = 3; // 0x3 + field public static final int STATUS_FAILURE_BLOCKED = 2; // 0x2 + field public static final int STATUS_FAILURE_CONFLICT = 5; // 0x5 + field public static final int STATUS_FAILURE_INCOMPATIBLE = 7; // 0x7 + field public static final int STATUS_FAILURE_INVALID = 4; // 0x4 + field public static final int STATUS_FAILURE_STORAGE = 6; // 0x6 + field public static final int STATUS_FAILURE_TIMEOUT = 8; // 0x8 + field public static final int STATUS_PENDING_USER_ACTION = -1; // 0xffffffff + field public static final int STATUS_SUCCESS = 0; // 0x0 + field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_INSTALLER_DISABLED = 4; // 0x4 + field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_INSTALLER_UNINSTALLED = 5; // 0x5 + field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_INSUFFICIENT_STORAGE = 2; // 0x2 + field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_NO_CONNECTIVITY = 3; // 0x3 + field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_ERROR_USER_ACTION_NEEDED = 1; // 0x1 + field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_GENERIC_ERROR = 100; // 0x64 + field @FlaggedApi("android.content.pm.archiving") public static final int UNARCHIVAL_OK = 0; // 0x0 + } + + public static final class PackageInstaller.InstallConstraints implements android.os.Parcelable { + method public int describeContents(); + method public boolean isAppNotForegroundRequired(); + method public boolean isAppNotInteractingRequired(); + method public boolean isAppNotTopVisibleRequired(); + method public boolean isDeviceIdleRequired(); + method public boolean isNotInCallRequired(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @NonNull public static final android.content.pm.PackageInstaller.InstallConstraints GENTLE_UPDATE; + } + + public static final class PackageInstaller.InstallConstraints.Builder { + ctor public PackageInstaller.InstallConstraints.Builder(); + method @NonNull public android.content.pm.PackageInstaller.InstallConstraints build(); + method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setAppNotForegroundRequired(); + method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setAppNotInteractingRequired(); + method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setAppNotTopVisibleRequired(); + method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setDeviceIdleRequired(); + method @NonNull public android.content.pm.PackageInstaller.InstallConstraints.Builder setNotInCallRequired(); + } + + public static final class PackageInstaller.InstallConstraintsResult implements android.os.Parcelable { + method public boolean areAllConstraintsSatisfied(); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class PackageInstaller.PreapprovalDetails implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.graphics.Bitmap getIcon(); + method @NonNull public CharSequence getLabel(); + method @NonNull public android.icu.util.ULocale getLocale(); + method @NonNull public String getPackageName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class PackageInstaller.PreapprovalDetails.Builder { + ctor public PackageInstaller.PreapprovalDetails.Builder(); + method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails build(); + method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails.Builder setIcon(@NonNull android.graphics.Bitmap); + method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails.Builder setLabel(@NonNull CharSequence); + method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails.Builder setLocale(@NonNull android.icu.util.ULocale); + method @NonNull public android.content.pm.PackageInstaller.PreapprovalDetails.Builder setPackageName(@NonNull String); + } + + public static class PackageInstaller.Session implements java.io.Closeable { + method public void abandon(); + method public void addChildSessionId(int); + method public void close(); + method public void commit(@NonNull android.content.IntentSender); + method public void fsync(@NonNull java.io.OutputStream) throws java.io.IOException; + method @NonNull public android.os.PersistableBundle getAppMetadata(); + method @NonNull public int[] getChildSessionIds(); + method @NonNull public String[] getNames() throws java.io.IOException; + method public int getParentSessionId(); + method public boolean isApplicationEnabledSettingPersistent(); + method public boolean isMultiPackage(); + method public boolean isRequestUpdateOwnership(); + method public boolean isStaged(); + method @NonNull public java.io.InputStream openRead(@NonNull String) throws java.io.IOException; + method @NonNull public java.io.OutputStream openWrite(@NonNull String, long, long) throws java.io.IOException; + method public void removeChildSessionId(int); + method public void removeSplit(@NonNull String) throws java.io.IOException; + method public void requestChecksums(@NonNull String, int, @NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.content.pm.PackageManager.OnChecksumsReadyListener) throws java.security.cert.CertificateEncodingException, java.io.FileNotFoundException; + method public void requestUserPreapproval(@NonNull android.content.pm.PackageInstaller.PreapprovalDetails, @NonNull android.content.IntentSender); + method public void setAppMetadata(@Nullable android.os.PersistableBundle) throws java.io.IOException; + method @Deprecated public void setChecksums(@NonNull String, @NonNull java.util.List, @Nullable byte[]) throws java.io.IOException; + method public void setStagingProgress(float); + method public void transfer(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + } + + public abstract static class PackageInstaller.SessionCallback { + ctor public PackageInstaller.SessionCallback(); + method public abstract void onActiveChanged(int, boolean); + method public abstract void onBadgingChanged(int); + method public abstract void onCreated(int); + method public abstract void onFinished(int, boolean); + method public abstract void onProgressChanged(int, float); + } + + public static class PackageInstaller.SessionInfo implements android.os.Parcelable { + method @Nullable public android.content.Intent createDetailsIntent(); + method public int describeContents(); + method @Nullable public android.graphics.Bitmap getAppIcon(); + method @Nullable public CharSequence getAppLabel(); + method @Nullable public String getAppPackageName(); + method @NonNull public int[] getChildSessionIds(); + method public long getCreatedMillis(); + method public boolean getDontKillApp(); + method public int getInstallLocation(); + method public int getInstallReason(); + method @Nullable public String getInstallerAttributionTag(); + method @Nullable public String getInstallerPackageName(); + method public int getInstallerUid(); + method public int getMode(); + method public int getOriginatingUid(); + method @Nullable public android.net.Uri getOriginatingUri(); + method public int getPackageSource(); + method public int getParentSessionId(); + method public float getProgress(); + method @Nullable public android.net.Uri getReferrerUri(); + method public int getRequireUserAction(); + method public int getSessionId(); + method public long getSize(); + method public int getStagedSessionErrorCode(); + method @NonNull public String getStagedSessionErrorMessage(); + method public long getUpdatedMillis(); + method @NonNull public android.os.UserHandle getUser(); + method public boolean hasParentSessionId(); + method public boolean isActive(); + method public boolean isApplicationEnabledSettingPersistent(); + method @FlaggedApi("android.content.pm.sdk_dependency_installer") public boolean isAutoInstallDependenciesEnabled(); + method public boolean isCommitted(); + method public boolean isMultiPackage(); + method public boolean isPreApprovalRequested(); + method public boolean isRequestUpdateOwnership(); + method public boolean isSealed(); + method public boolean isStaged(); + method public boolean isStagedSessionActive(); + method public boolean isStagedSessionApplied(); + method public boolean isStagedSessionFailed(); + method public boolean isStagedSessionReady(); + method @FlaggedApi("android.content.pm.archiving") public boolean isUnarchival(); + method public void writeToParcel(android.os.Parcel, int); + field public static final android.os.Parcelable.Creator CREATOR; + field public static final int INVALID_ID = -1; // 0xffffffff + field public static final int SESSION_ACTIVATION_FAILED = 2; // 0x2 + field public static final int SESSION_CONFLICT = 4; // 0x4 + field public static final int SESSION_NO_ERROR = 0; // 0x0 + field public static final int SESSION_UNKNOWN_ERROR = 3; // 0x3 + field public static final int SESSION_VERIFICATION_FAILED = 1; // 0x1 + field @Deprecated public static final int STAGED_SESSION_ACTIVATION_FAILED = 2; // 0x2 + field @Deprecated public static final int STAGED_SESSION_CONFLICT = 4; // 0x4 + field @Deprecated public static final int STAGED_SESSION_NO_ERROR = 0; // 0x0 + field @Deprecated public static final int STAGED_SESSION_UNKNOWN = 3; // 0x3 + field @Deprecated public static final int STAGED_SESSION_VERIFICATION_FAILED = 1; // 0x1 + } + + public static class PackageInstaller.SessionParams implements android.os.Parcelable { + ctor public PackageInstaller.SessionParams(int); + method public int describeContents(); + method public void setAppIcon(@Nullable android.graphics.Bitmap); + method public void setAppLabel(@Nullable CharSequence); + method public void setAppPackageName(@Nullable String); + method public void setApplicationEnabledSettingPersistent(); + method @FlaggedApi("android.content.pm.sdk_dependency_installer") public void setAutoInstallDependenciesEnabled(boolean); + method @Deprecated public void setAutoRevokePermissionsMode(boolean); + method public void setDontKillApp(boolean); + method public void setInstallLocation(int); + method public void setInstallReason(int); + method public void setInstallScenario(int); + method public void setInstallerPackageName(@Nullable String); + method public void setMultiPackage(); + method public void setOriginatingUid(int); + method public void setOriginatingUri(@Nullable android.net.Uri); + method public void setPackageSource(int); + method @NonNull @RequiresPermission(value="android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS", conditional=true) public android.content.pm.PackageInstaller.SessionParams setPermissionState(@NonNull String, int); + method public void setReferrerUri(@Nullable android.net.Uri); + method @RequiresPermission(android.Manifest.permission.ENFORCE_UPDATE_OWNERSHIP) public void setRequestUpdateOwnership(boolean); + method public void setRequireUserAction(int); + method public void setSize(long); + method @FlaggedApi("android.content.pm.archiving") public void setUnarchiveId(int); + method public void setWhitelistedRestrictedPermissions(@Nullable java.util.Set); + method public void writeToParcel(android.os.Parcel, int); + field public static final android.os.Parcelable.Creator CREATOR; + field public static final int MODE_FULL_INSTALL = 1; // 0x1 + field public static final int MODE_INHERIT_EXISTING = 2; // 0x2 + field public static final int PERMISSION_STATE_DEFAULT = 0; // 0x0 + field public static final int PERMISSION_STATE_DENIED = 2; // 0x2 + field public static final int PERMISSION_STATE_GRANTED = 1; // 0x1 + field @NonNull public static final java.util.Set RESTRICTED_PERMISSIONS_ALL; + field public static final int USER_ACTION_NOT_REQUIRED = 2; // 0x2 + field public static final int USER_ACTION_REQUIRED = 1; // 0x1 + field public static final int USER_ACTION_UNSPECIFIED = 0; // 0x0 + } + + @FlaggedApi("android.content.pm.archiving") public static final class PackageInstaller.UnarchivalState { + method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createGenericErrorState(int); + method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createInsufficientStorageState(int, long, @Nullable android.app.PendingIntent); + method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createNoConnectivityState(int); + method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createOkState(int); + method @NonNull public static android.content.pm.PackageInstaller.UnarchivalState createUserActionRequiredState(int, @NonNull android.app.PendingIntent); + } + + public class PackageItemInfo { + ctor public PackageItemInfo(); + ctor public PackageItemInfo(android.content.pm.PackageItemInfo); + ctor protected PackageItemInfo(android.os.Parcel); + method protected void dumpBack(android.util.Printer, String); + method protected void dumpFront(android.util.Printer, String); + method public android.graphics.drawable.Drawable loadBanner(android.content.pm.PackageManager); + method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); + method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager); + method public android.graphics.drawable.Drawable loadLogo(android.content.pm.PackageManager); + method public android.graphics.drawable.Drawable loadUnbadgedIcon(android.content.pm.PackageManager); + method public android.content.res.XmlResourceParser loadXmlMetaData(android.content.pm.PackageManager, String); + method public void writeToParcel(android.os.Parcel, int); + field public int banner; + field public int icon; + field @FlaggedApi("android.content.pm.archiving") public boolean isArchived; + field public int labelRes; + field public int logo; + field public android.os.Bundle metaData; + field public String name; + field public CharSequence nonLocalizedLabel; + field public String packageName; + } + + public static class PackageItemInfo.DisplayNameComparator implements java.util.Comparator { + ctor public PackageItemInfo.DisplayNameComparator(android.content.pm.PackageManager); + method public final int compare(android.content.pm.PackageItemInfo, android.content.pm.PackageItemInfo); + } + + public abstract class PackageManager { + ctor @Deprecated public PackageManager(); + method @Deprecated public abstract void addPackageToPreferred(@NonNull String); + method @Deprecated @FlaggedApi("android.permission.flags.permission_tree_apis_deprecated") public abstract boolean addPermission(@NonNull android.content.pm.PermissionInfo); + method @Deprecated @FlaggedApi("android.permission.flags.permission_tree_apis_deprecated") public abstract boolean addPermissionAsync(@NonNull android.content.pm.PermissionInfo); + method @Deprecated public abstract void addPreferredActivity(@NonNull android.content.IntentFilter, int, @Nullable android.content.ComponentName[], @NonNull android.content.ComponentName); + method @RequiresPermission(value="android.permission.WHITELIST_RESTRICTED_PERMISSIONS", conditional=true) public boolean addWhitelistedRestrictedPermission(@NonNull String, @NonNull String, int); + method public boolean canPackageQuery(@NonNull String, @NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public boolean[] canPackageQuery(@NonNull String, @NonNull String[]) throws android.content.pm.PackageManager.NameNotFoundException; + method public abstract boolean canRequestPackageInstalls(); + method public abstract String[] canonicalToCurrentPackageNames(@NonNull String[]); + method @CheckResult public abstract int checkPermission(@NonNull String, @NonNull String); + method @CheckResult public abstract int checkSignatures(@NonNull String, @NonNull String); + method @CheckResult public abstract int checkSignatures(int, int); + method public abstract void clearInstantAppCookie(); + method @Deprecated public abstract void clearPackagePreferredActivities(@NonNull String); + method public abstract String[] currentToCanonicalPackageNames(@NonNull String[]); + method public abstract void extendVerificationTimeout(int, int, long); + method @Nullable public abstract android.graphics.drawable.Drawable getActivityBanner(@NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; + method @Nullable public abstract android.graphics.drawable.Drawable getActivityBanner(@NonNull android.content.Intent) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.graphics.drawable.Drawable getActivityIcon(@NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.graphics.drawable.Drawable getActivityIcon(@NonNull android.content.Intent) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.content.pm.ActivityInfo getActivityInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.pm.ActivityInfo getActivityInfo(@NonNull android.content.ComponentName, @NonNull android.content.pm.PackageManager.ComponentInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; + method @Nullable public abstract android.graphics.drawable.Drawable getActivityLogo(@NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; + method @Nullable public abstract android.graphics.drawable.Drawable getActivityLogo(@NonNull android.content.Intent) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract java.util.List getAllPermissionGroups(int); + method @Nullable public abstract android.graphics.drawable.Drawable getApplicationBanner(@NonNull android.content.pm.ApplicationInfo); + method @Nullable public abstract android.graphics.drawable.Drawable getApplicationBanner(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method public abstract int getApplicationEnabledSetting(@NonNull String); + method @NonNull public abstract android.graphics.drawable.Drawable getApplicationIcon(@NonNull android.content.pm.ApplicationInfo); + method @NonNull public abstract android.graphics.drawable.Drawable getApplicationIcon(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.content.pm.ApplicationInfo getApplicationInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.pm.ApplicationInfo getApplicationInfo(@NonNull String, @NonNull android.content.pm.PackageManager.ApplicationInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract CharSequence getApplicationLabel(@NonNull android.content.pm.ApplicationInfo); + method @Nullable public abstract android.graphics.drawable.Drawable getApplicationLogo(@NonNull android.content.pm.ApplicationInfo); + method @Nullable public abstract android.graphics.drawable.Drawable getApplicationLogo(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @FlaggedApi("android.content.pm.archiving") @Nullable public android.content.pm.ArchivedPackageInfo getArchivedPackage(@NonNull String); + method @NonNull public CharSequence getBackgroundPermissionOptionLabel(); + method @Nullable public abstract android.content.pm.ChangedPackages getChangedPackages(@IntRange(from=0) int); + method public abstract int getComponentEnabledSetting(@NonNull android.content.ComponentName); + method @NonNull public abstract android.graphics.drawable.Drawable getDefaultActivityIcon(); + method @Nullable public abstract android.graphics.drawable.Drawable getDrawable(@NonNull String, @DrawableRes int, @Nullable android.content.pm.ApplicationInfo); + method public void getGroupOfPlatformPermission(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @NonNull public android.content.pm.InstallSourceInfo getInstallSourceInfo(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract java.util.List getInstalledApplications(int); + method @NonNull public java.util.List getInstalledApplications(@NonNull android.content.pm.PackageManager.ApplicationInfoFlags); + method @NonNull public java.util.List getInstalledModules(int); + method @NonNull public abstract java.util.List getInstalledPackages(int); + method @NonNull public java.util.List getInstalledPackages(@NonNull android.content.pm.PackageManager.PackageInfoFlags); + method @Deprecated @Nullable public abstract String getInstallerPackageName(@NonNull String); + method @NonNull public abstract byte[] getInstantAppCookie(); + method public abstract int getInstantAppCookieMaxBytes(); + method @NonNull public abstract android.content.pm.InstrumentationInfo getInstrumentationInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @Nullable public abstract android.content.Intent getLaunchIntentForPackage(@NonNull String); + method @NonNull public android.content.IntentSender getLaunchIntentSenderForPackage(@NonNull String); + method @Nullable public abstract android.content.Intent getLeanbackLaunchIntentForPackage(@NonNull String); + method @NonNull public java.util.Set getMimeGroup(@NonNull String); + method @NonNull public android.content.pm.ModuleInfo getModuleInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @Nullable public abstract String getNameForUid(int); + method @Nullable public android.content.pm.PackageInfo getPackageArchiveInfo(@NonNull String, int); + method @Nullable public android.content.pm.PackageInfo getPackageArchiveInfo(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags); + method public abstract int[] getPackageGids(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method public abstract int[] getPackageGids(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @Nullable public int[] getPackageGids(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; + method public abstract android.content.pm.PackageInfo getPackageInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.pm.PackageInfo getPackageInfo(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; + method public abstract android.content.pm.PackageInfo getPackageInfo(@NonNull android.content.pm.VersionedPackage, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.pm.PackageInfo getPackageInfo(@NonNull android.content.pm.VersionedPackage, @NonNull android.content.pm.PackageManager.PackageInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.content.pm.PackageInstaller getPackageInstaller(); + method public abstract int getPackageUid(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method public int getPackageUid(@NonNull String, @NonNull android.content.pm.PackageManager.PackageInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; + method @Nullable public abstract String[] getPackagesForUid(int); + method @NonNull public abstract java.util.List getPackagesHoldingPermissions(@NonNull String[], int); + method @NonNull public java.util.List getPackagesHoldingPermissions(@NonNull String[], @NonNull android.content.pm.PackageManager.PackageInfoFlags); + method @NonNull public abstract android.content.pm.PermissionGroupInfo getPermissionGroupInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method public abstract android.content.pm.PermissionInfo getPermissionInfo(@NonNull String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method public void getPlatformPermissionsForGroup(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer>); + method @Deprecated public abstract int getPreferredActivities(@NonNull java.util.List, @NonNull java.util.List, @Nullable String); + method @Deprecated @NonNull public abstract java.util.List getPreferredPackages(int); + method @NonNull public android.content.pm.PackageManager.Property getProperty(@NonNull String, @NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.pm.PackageManager.Property getProperty(@NonNull String, @NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.content.pm.ProviderInfo getProviderInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.pm.ProviderInfo getProviderInfo(@NonNull android.content.ComponentName, @NonNull android.content.pm.PackageManager.ComponentInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.content.pm.ActivityInfo getReceiverInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.pm.ActivityInfo getReceiverInfo(@NonNull android.content.ComponentName, @NonNull android.content.pm.PackageManager.ComponentInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.content.res.Resources getResourcesForActivity(@NonNull android.content.ComponentName) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.content.res.Resources getResourcesForApplication(@NonNull android.content.pm.ApplicationInfo) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.res.Resources getResourcesForApplication(@NonNull android.content.pm.ApplicationInfo, @Nullable android.content.res.Configuration) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.content.res.Resources getResourcesForApplication(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract android.content.pm.ServiceInfo getServiceInfo(@NonNull android.content.ComponentName, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.content.pm.ServiceInfo getServiceInfo(@NonNull android.content.ComponentName, @NonNull android.content.pm.PackageManager.ComponentInfoFlags) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public abstract java.util.List getSharedLibraries(int); + method @NonNull public java.util.List getSharedLibraries(@NonNull android.content.pm.PackageManager.PackageInfoFlags); + method @Nullable public android.os.Bundle getSuspendedPackageAppExtras(); + method public boolean getSyntheticAppDetailsActivityEnabled(@NonNull String); + method @NonNull public abstract android.content.pm.FeatureInfo[] getSystemAvailableFeatures(); + method @Nullable public abstract String[] getSystemSharedLibraryNames(); + method @IntRange(from=0) public int getTargetSdkVersion(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @Nullable public abstract CharSequence getText(@NonNull String, @StringRes int, @Nullable android.content.pm.ApplicationInfo); + method @NonNull public abstract android.graphics.drawable.Drawable getUserBadgedDrawableForDensity(@NonNull android.graphics.drawable.Drawable, @NonNull android.os.UserHandle, @Nullable android.graphics.Rect, int); + method @NonNull public abstract android.graphics.drawable.Drawable getUserBadgedIcon(@NonNull android.graphics.drawable.Drawable, @NonNull android.os.UserHandle); + method @NonNull public abstract CharSequence getUserBadgedLabel(@NonNull CharSequence, @NonNull android.os.UserHandle); + method @NonNull @RequiresPermission(value="android.permission.WHITELIST_RESTRICTED_PERMISSIONS", conditional=true) public java.util.Set getWhitelistedRestrictedPermissions(@NonNull String, int); + method @Nullable public abstract android.content.res.XmlResourceParser getXml(@NonNull String, @XmlRes int, @Nullable android.content.pm.ApplicationInfo); + method public boolean hasSigningCertificate(@NonNull String, @NonNull byte[], int); + method public boolean hasSigningCertificate(int, @NonNull byte[], int); + method public abstract boolean hasSystemFeature(@NonNull String); + method public abstract boolean hasSystemFeature(@NonNull String, int); + method @FlaggedApi("android.content.pm.archiving") public boolean isAppArchivable(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @RequiresPermission(value="android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS", conditional=true) public boolean isAutoRevokeWhitelisted(@NonNull String); + method public boolean isAutoRevokeWhitelisted(); + method public boolean isDefaultApplicationIcon(@NonNull android.graphics.drawable.Drawable); + method public boolean isDeviceUpgrading(); + method public abstract boolean isInstantApp(); + method public abstract boolean isInstantApp(@NonNull String); + method @FlaggedApi("android.content.pm.quarantined_enabled") public boolean isPackageQuarantined(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @FlaggedApi("android.content.pm.stay_stopped") public boolean isPackageStopped(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method public boolean isPackageSuspended(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method public boolean isPackageSuspended(); + method @CheckResult public abstract boolean isPermissionRevokedByPolicy(@NonNull String, @NonNull String); + method public abstract boolean isSafeMode(); + method @FlaggedApi("android.content.pm.get_package_info") @WorkerThread public T parseAndroidManifest(@NonNull java.io.File, @NonNull java.util.function.Function) throws java.io.IOException; + method @FlaggedApi("android.content.pm.get_package_info_with_fd") @WorkerThread public T parseAndroidManifest(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.function.Function) throws java.io.IOException; + method @NonNull public java.util.List queryActivityProperty(@NonNull String); + method @NonNull public java.util.List queryApplicationProperty(@NonNull String); + method @NonNull public abstract java.util.List queryBroadcastReceivers(@NonNull android.content.Intent, int); + method @NonNull public java.util.List queryBroadcastReceivers(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); + method @NonNull public abstract java.util.List queryContentProviders(@Nullable String, int, int); + method @NonNull public java.util.List queryContentProviders(@Nullable String, int, @NonNull android.content.pm.PackageManager.ComponentInfoFlags); + method @NonNull public abstract java.util.List queryInstrumentation(@NonNull String, int); + method @NonNull public abstract java.util.List queryIntentActivities(@NonNull android.content.Intent, int); + method @NonNull public java.util.List queryIntentActivities(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); + method @NonNull public abstract java.util.List queryIntentActivityOptions(@Nullable android.content.ComponentName, @Nullable android.content.Intent[], @NonNull android.content.Intent, int); + method @NonNull public java.util.List queryIntentActivityOptions(@Nullable android.content.ComponentName, @Nullable java.util.List, @NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); + method @NonNull public abstract java.util.List queryIntentContentProviders(@NonNull android.content.Intent, int); + method @NonNull public java.util.List queryIntentContentProviders(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); + method @NonNull public abstract java.util.List queryIntentServices(@NonNull android.content.Intent, int); + method @NonNull public java.util.List queryIntentServices(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); + method @NonNull public abstract java.util.List queryPermissionsByGroup(@Nullable String, int) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public java.util.List queryProviderProperty(@NonNull String); + method @NonNull public java.util.List queryReceiverProperty(@NonNull String); + method @NonNull public java.util.List queryServiceProperty(@NonNull String); + method public void relinquishUpdateOwnership(@NonNull String); + method @Deprecated public abstract void removePackageFromPreferred(@NonNull String); + method @Deprecated @FlaggedApi("android.permission.flags.permission_tree_apis_deprecated") public abstract void removePermission(@NonNull String); + method @RequiresPermission(value="android.permission.WHITELIST_RESTRICTED_PERMISSIONS", conditional=true) public boolean removeWhitelistedRestrictedPermission(@NonNull String, @NonNull String, int); + method public void requestChecksums(@NonNull String, boolean, int, @NonNull java.util.List, @NonNull android.content.pm.PackageManager.OnChecksumsReadyListener) throws java.security.cert.CertificateEncodingException, android.content.pm.PackageManager.NameNotFoundException; + method @Nullable public abstract android.content.pm.ResolveInfo resolveActivity(@NonNull android.content.Intent, int); + method @Nullable public android.content.pm.ResolveInfo resolveActivity(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); + method @Nullable public abstract android.content.pm.ProviderInfo resolveContentProvider(@NonNull String, int); + method @Nullable public android.content.pm.ProviderInfo resolveContentProvider(@NonNull String, @NonNull android.content.pm.PackageManager.ComponentInfoFlags); + method @Nullable public abstract android.content.pm.ResolveInfo resolveService(@NonNull android.content.Intent, int); + method @Nullable public android.content.pm.ResolveInfo resolveService(@NonNull android.content.Intent, @NonNull android.content.pm.PackageManager.ResolveInfoFlags); + method public abstract void setApplicationCategoryHint(@NonNull String, int); + method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public abstract void setApplicationEnabledSetting(@NonNull String, int, int); + method @RequiresPermission(value="android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS", conditional=true) public boolean setAutoRevokeWhitelisted(@NonNull String, boolean); + method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public abstract void setComponentEnabledSetting(@NonNull android.content.ComponentName, int, int); + method @RequiresPermission(value=android.Manifest.permission.CHANGE_COMPONENT_ENABLED_STATE, conditional=true) public void setComponentEnabledSettings(@NonNull java.util.List); + method public abstract void setInstallerPackageName(@NonNull String, @Nullable String); + method public void setMimeGroup(@NonNull String, @NonNull java.util.Set); + method public abstract void updateInstantAppCookie(@Nullable byte[]); + method public abstract void verifyPendingInstall(int, int); + field public static final int CERT_INPUT_RAW_X509 = 0; // 0x0 + field public static final int CERT_INPUT_SHA256 = 1; // 0x1 + field public static final int COMPONENT_ENABLED_STATE_DEFAULT = 0; // 0x0 + field public static final int COMPONENT_ENABLED_STATE_DISABLED = 2; // 0x2 + field public static final int COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED = 4; // 0x4 + field public static final int COMPONENT_ENABLED_STATE_DISABLED_USER = 3; // 0x3 + field public static final int COMPONENT_ENABLED_STATE_ENABLED = 1; // 0x1 + field @FlaggedApi("android.content.pm.archiving") public static final int DELETE_ARCHIVE = 16; // 0x10 + field public static final int DONT_KILL_APP = 1; // 0x1 + field public static final String EXTRA_VERIFICATION_ID = "android.content.pm.extra.VERIFICATION_ID"; + field public static final String EXTRA_VERIFICATION_RESULT = "android.content.pm.extra.VERIFICATION_RESULT"; + field public static final String FEATURE_ACTIVITIES_ON_SECONDARY_DISPLAYS = "android.software.activities_on_secondary_displays"; + field public static final String FEATURE_APP_WIDGETS = "android.software.app_widgets"; + field public static final String FEATURE_AUDIO_LOW_LATENCY = "android.hardware.audio.low_latency"; + field public static final String FEATURE_AUDIO_OUTPUT = "android.hardware.audio.output"; + field public static final String FEATURE_AUDIO_PRO = "android.hardware.audio.pro"; + field @FlaggedApi("android.media.audio.feature_spatial_audio_headtracking_low_latency") public static final String FEATURE_AUDIO_SPATIAL_HEADTRACKING_LOW_LATENCY = "android.hardware.audio.spatial.headtracking.low_latency"; + field public static final String FEATURE_AUTOFILL = "android.software.autofill"; + field public static final String FEATURE_AUTOMOTIVE = "android.hardware.type.automotive"; + field public static final String FEATURE_BACKUP = "android.software.backup"; + field public static final String FEATURE_BLUETOOTH = "android.hardware.bluetooth"; + field public static final String FEATURE_BLUETOOTH_LE = "android.hardware.bluetooth_le"; + field @FlaggedApi("com.android.ranging.flags.ranging_cs_enabled") public static final String FEATURE_BLUETOOTH_LE_CHANNEL_SOUNDING = "android.hardware.bluetooth_le.channel_sounding"; + field public static final String FEATURE_CAMERA = "android.hardware.camera"; + field public static final String FEATURE_CAMERA_ANY = "android.hardware.camera.any"; + field public static final String FEATURE_CAMERA_AR = "android.hardware.camera.ar"; + field public static final String FEATURE_CAMERA_AUTOFOCUS = "android.hardware.camera.autofocus"; + field public static final String FEATURE_CAMERA_CAPABILITY_MANUAL_POST_PROCESSING = "android.hardware.camera.capability.manual_post_processing"; + field public static final String FEATURE_CAMERA_CAPABILITY_MANUAL_SENSOR = "android.hardware.camera.capability.manual_sensor"; + field public static final String FEATURE_CAMERA_CAPABILITY_RAW = "android.hardware.camera.capability.raw"; + field public static final String FEATURE_CAMERA_CONCURRENT = "android.hardware.camera.concurrent"; + field public static final String FEATURE_CAMERA_EXTERNAL = "android.hardware.camera.external"; + field public static final String FEATURE_CAMERA_FLASH = "android.hardware.camera.flash"; + field public static final String FEATURE_CAMERA_FRONT = "android.hardware.camera.front"; + field public static final String FEATURE_CAMERA_LEVEL_FULL = "android.hardware.camera.level.full"; + field public static final String FEATURE_CANT_SAVE_STATE = "android.software.cant_save_state"; + field public static final String FEATURE_COMPANION_DEVICE_SETUP = "android.software.companion_device_setup"; + field @Deprecated public static final String FEATURE_CONNECTION_SERVICE = "android.software.connectionservice"; + field public static final String FEATURE_CONSUMER_IR = "android.hardware.consumerir"; + field public static final String FEATURE_CONTROLS = "android.software.controls"; + field public static final String FEATURE_CREDENTIALS = "android.software.credentials"; + field public static final String FEATURE_DEVICE_ADMIN = "android.software.device_admin"; + field public static final String FEATURE_DEVICE_LOCK = "android.software.device_lock"; + field public static final String FEATURE_EMBEDDED = "android.hardware.type.embedded"; + field public static final String FEATURE_ETHERNET = "android.hardware.ethernet"; + field public static final String FEATURE_EXPANDED_PICTURE_IN_PICTURE = "android.software.expanded_picture_in_picture"; + field public static final String FEATURE_FACE = "android.hardware.biometrics.face"; + field public static final String FEATURE_FAKETOUCH = "android.hardware.faketouch"; + field public static final String FEATURE_FAKETOUCH_MULTITOUCH_DISTINCT = "android.hardware.faketouch.multitouch.distinct"; + field public static final String FEATURE_FAKETOUCH_MULTITOUCH_JAZZHAND = "android.hardware.faketouch.multitouch.jazzhand"; + field public static final String FEATURE_FINGERPRINT = "android.hardware.fingerprint"; + field public static final String FEATURE_FREEFORM_WINDOW_MANAGEMENT = "android.software.freeform_window_management"; + field public static final String FEATURE_GAMEPAD = "android.hardware.gamepad"; + field public static final String FEATURE_HARDWARE_KEYSTORE = "android.hardware.hardware_keystore"; + field public static final String FEATURE_HIFI_SENSORS = "android.hardware.sensor.hifi_sensors"; + field public static final String FEATURE_HOME_SCREEN = "android.software.home_screen"; + field public static final String FEATURE_IDENTITY_CREDENTIAL_HARDWARE = "android.hardware.identity_credential"; + field public static final String FEATURE_IDENTITY_CREDENTIAL_HARDWARE_DIRECT_ACCESS = "android.hardware.identity_credential_direct_access"; + field public static final String FEATURE_INPUT_METHODS = "android.software.input_methods"; + field public static final String FEATURE_IPSEC_TUNNELS = "android.software.ipsec_tunnels"; + field public static final String FEATURE_IPSEC_TUNNEL_MIGRATION = "android.software.ipsec_tunnel_migration"; + field public static final String FEATURE_IRIS = "android.hardware.biometrics.iris"; + field public static final String FEATURE_KEYSTORE_APP_ATTEST_KEY = "android.hardware.keystore.app_attest_key"; + field public static final String FEATURE_KEYSTORE_LIMITED_USE_KEY = "android.hardware.keystore.limited_use_key"; + field public static final String FEATURE_KEYSTORE_SINGLE_USE_KEY = "android.hardware.keystore.single_use_key"; + field public static final String FEATURE_LEANBACK = "android.software.leanback"; + field public static final String FEATURE_LEANBACK_ONLY = "android.software.leanback_only"; + field public static final String FEATURE_LIVE_TV = "android.software.live_tv"; + field public static final String FEATURE_LIVE_WALLPAPER = "android.software.live_wallpaper"; + field public static final String FEATURE_LOCATION = "android.hardware.location"; + field public static final String FEATURE_LOCATION_GPS = "android.hardware.location.gps"; + field public static final String FEATURE_LOCATION_NETWORK = "android.hardware.location.network"; + field public static final String FEATURE_MANAGED_USERS = "android.software.managed_users"; + field public static final String FEATURE_MICROPHONE = "android.hardware.microphone"; + field public static final String FEATURE_MIDI = "android.software.midi"; + field public static final String FEATURE_NFC = "android.hardware.nfc"; + field public static final String FEATURE_NFC_BEAM = "android.sofware.nfc.beam"; + field @FlaggedApi("android.nfc.enable_nfc_charging") public static final String FEATURE_NFC_CHARGING = "android.hardware.nfc.charging"; + field public static final String FEATURE_NFC_HOST_CARD_EMULATION = "android.hardware.nfc.hce"; + field public static final String FEATURE_NFC_HOST_CARD_EMULATION_NFCF = "android.hardware.nfc.hcef"; + field public static final String FEATURE_NFC_OFF_HOST_CARD_EMULATION_ESE = "android.hardware.nfc.ese"; + field public static final String FEATURE_NFC_OFF_HOST_CARD_EMULATION_UICC = "android.hardware.nfc.uicc"; + field public static final String FEATURE_OPENGLES_DEQP_LEVEL = "android.software.opengles.deqp.level"; + field public static final String FEATURE_OPENGLES_EXTENSION_PACK = "android.hardware.opengles.aep"; + field public static final String FEATURE_PC = "android.hardware.type.pc"; + field public static final String FEATURE_PICTURE_IN_PICTURE = "android.software.picture_in_picture"; + field public static final String FEATURE_PRINTING = "android.software.print"; + field public static final String FEATURE_RAM_LOW = "android.hardware.ram.low"; + field public static final String FEATURE_RAM_NORMAL = "android.hardware.ram.normal"; + field public static final String FEATURE_SCREEN_LANDSCAPE = "android.hardware.screen.landscape"; + field public static final String FEATURE_SCREEN_PORTRAIT = "android.hardware.screen.portrait"; + field public static final String FEATURE_SECURELY_REMOVES_USERS = "android.software.securely_removes_users"; + field public static final String FEATURE_SECURE_LOCK_SCREEN = "android.software.secure_lock_screen"; + field public static final String FEATURE_SECURITY_MODEL_COMPATIBLE = "android.hardware.security.model.compatible"; + field public static final String FEATURE_SENSOR_ACCELEROMETER = "android.hardware.sensor.accelerometer"; + field public static final String FEATURE_SENSOR_ACCELEROMETER_LIMITED_AXES = "android.hardware.sensor.accelerometer_limited_axes"; + field public static final String FEATURE_SENSOR_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED = "android.hardware.sensor.accelerometer_limited_axes_uncalibrated"; + field public static final String FEATURE_SENSOR_AMBIENT_TEMPERATURE = "android.hardware.sensor.ambient_temperature"; + field public static final String FEATURE_SENSOR_BAROMETER = "android.hardware.sensor.barometer"; + field public static final String FEATURE_SENSOR_COMPASS = "android.hardware.sensor.compass"; + field public static final String FEATURE_SENSOR_DYNAMIC_HEAD_TRACKER = "android.hardware.sensor.dynamic.head_tracker"; + field public static final String FEATURE_SENSOR_GYROSCOPE = "android.hardware.sensor.gyroscope"; + field public static final String FEATURE_SENSOR_GYROSCOPE_LIMITED_AXES = "android.hardware.sensor.gyroscope_limited_axes"; + field public static final String FEATURE_SENSOR_GYROSCOPE_LIMITED_AXES_UNCALIBRATED = "android.hardware.sensor.gyroscope_limited_axes_uncalibrated"; + field public static final String FEATURE_SENSOR_HEADING = "android.hardware.sensor.heading"; + field public static final String FEATURE_SENSOR_HEART_RATE = "android.hardware.sensor.heartrate"; + field public static final String FEATURE_SENSOR_HEART_RATE_ECG = "android.hardware.sensor.heartrate.ecg"; + field public static final String FEATURE_SENSOR_HINGE_ANGLE = "android.hardware.sensor.hinge_angle"; + field public static final String FEATURE_SENSOR_LIGHT = "android.hardware.sensor.light"; + field public static final String FEATURE_SENSOR_PROXIMITY = "android.hardware.sensor.proximity"; + field public static final String FEATURE_SENSOR_RELATIVE_HUMIDITY = "android.hardware.sensor.relative_humidity"; + field public static final String FEATURE_SENSOR_STEP_COUNTER = "android.hardware.sensor.stepcounter"; + field public static final String FEATURE_SENSOR_STEP_DETECTOR = "android.hardware.sensor.stepdetector"; + field public static final String FEATURE_SE_OMAPI_ESE = "android.hardware.se.omapi.ese"; + field public static final String FEATURE_SE_OMAPI_SD = "android.hardware.se.omapi.sd"; + field public static final String FEATURE_SE_OMAPI_UICC = "android.hardware.se.omapi.uicc"; + field public static final String FEATURE_SIP = "android.software.sip"; + field public static final String FEATURE_SIP_VOIP = "android.software.sip.voip"; + field public static final String FEATURE_STRONGBOX_KEYSTORE = "android.hardware.strongbox_keystore"; + field public static final String FEATURE_TELECOM = "android.software.telecom"; + field public static final String FEATURE_TELEPHONY = "android.hardware.telephony"; + field public static final String FEATURE_TELEPHONY_CALLING = "android.hardware.telephony.calling"; + field public static final String FEATURE_TELEPHONY_CDMA = "android.hardware.telephony.cdma"; + field public static final String FEATURE_TELEPHONY_DATA = "android.hardware.telephony.data"; + field public static final String FEATURE_TELEPHONY_EUICC = "android.hardware.telephony.euicc"; + field public static final String FEATURE_TELEPHONY_EUICC_MEP = "android.hardware.telephony.euicc.mep"; + field public static final String FEATURE_TELEPHONY_GSM = "android.hardware.telephony.gsm"; + field public static final String FEATURE_TELEPHONY_IMS = "android.hardware.telephony.ims"; + field public static final String FEATURE_TELEPHONY_MBMS = "android.hardware.telephony.mbms"; + field public static final String FEATURE_TELEPHONY_MESSAGING = "android.hardware.telephony.messaging"; + field public static final String FEATURE_TELEPHONY_RADIO_ACCESS = "android.hardware.telephony.radio.access"; + field public static final String FEATURE_TELEPHONY_SUBSCRIPTION = "android.hardware.telephony.subscription"; + field @Deprecated public static final String FEATURE_TELEVISION = "android.hardware.type.television"; + field @FlaggedApi("com.android.net.thread.platform.flags.thread_enabled_platform") public static final String FEATURE_THREAD_NETWORK = "android.hardware.thread_network"; + field public static final String FEATURE_TOUCHSCREEN = "android.hardware.touchscreen"; + field public static final String FEATURE_TOUCHSCREEN_MULTITOUCH = "android.hardware.touchscreen.multitouch"; + field public static final String FEATURE_TOUCHSCREEN_MULTITOUCH_DISTINCT = "android.hardware.touchscreen.multitouch.distinct"; + field public static final String FEATURE_TOUCHSCREEN_MULTITOUCH_JAZZHAND = "android.hardware.touchscreen.multitouch.jazzhand"; + field public static final String FEATURE_USB_ACCESSORY = "android.hardware.usb.accessory"; + field public static final String FEATURE_USB_HOST = "android.hardware.usb.host"; + field public static final String FEATURE_UWB = "android.hardware.uwb"; + field public static final String FEATURE_VERIFIED_BOOT = "android.software.verified_boot"; + field public static final String FEATURE_VR_HEADTRACKING = "android.hardware.vr.headtracking"; + field @Deprecated public static final String FEATURE_VR_MODE = "android.software.vr.mode"; + field public static final String FEATURE_VR_MODE_HIGH_PERFORMANCE = "android.hardware.vr.high_performance"; + field public static final String FEATURE_VULKAN_DEQP_LEVEL = "android.software.vulkan.deqp.level"; + field public static final String FEATURE_VULKAN_HARDWARE_COMPUTE = "android.hardware.vulkan.compute"; + field public static final String FEATURE_VULKAN_HARDWARE_LEVEL = "android.hardware.vulkan.level"; + field public static final String FEATURE_VULKAN_HARDWARE_VERSION = "android.hardware.vulkan.version"; + field public static final String FEATURE_WALLET_LOCATION_BASED_SUGGESTIONS = "android.software.wallet_location_based_suggestions"; + field public static final String FEATURE_WATCH = "android.hardware.type.watch"; + field public static final String FEATURE_WEBVIEW = "android.software.webview"; + field public static final String FEATURE_WIFI = "android.hardware.wifi"; + field public static final String FEATURE_WIFI_AWARE = "android.hardware.wifi.aware"; + field public static final String FEATURE_WIFI_DIRECT = "android.hardware.wifi.direct"; + field public static final String FEATURE_WIFI_PASSPOINT = "android.hardware.wifi.passpoint"; + field public static final String FEATURE_WIFI_RTT = "android.hardware.wifi.rtt"; + field public static final String FEATURE_WINDOW_MAGNIFICATION = "android.software.window_magnification"; + field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_API_OPENXR = "android.software.xr.api.openxr"; + field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_API_SPATIAL = "android.software.xr.api.spatial"; + field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_INPUT_CONTROLLER = "android.hardware.xr.input.controller"; + field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_INPUT_EYE_TRACKING = "android.hardware.xr.input.eye_tracking"; + field @FlaggedApi("android.xr.xr_manifest_entries") public static final String FEATURE_XR_INPUT_HAND_TRACKING = "android.hardware.xr.input.hand_tracking"; + field public static final int FLAG_PERMISSION_WHITELIST_INSTALLER = 2; // 0x2 + field public static final int FLAG_PERMISSION_WHITELIST_SYSTEM = 1; // 0x1 + field public static final int FLAG_PERMISSION_WHITELIST_UPGRADE = 4; // 0x4 + field public static final int GET_ACTIVITIES = 1; // 0x1 + field @Deprecated public static final int GET_ATTRIBUTIONS = -2147483648; // 0x80000000 + field public static final long GET_ATTRIBUTIONS_LONG = 2147483648L; // 0x80000000L + field public static final int GET_CONFIGURATIONS = 16384; // 0x4000 + field @Deprecated public static final int GET_DISABLED_COMPONENTS = 512; // 0x200 + field @Deprecated public static final int GET_DISABLED_UNTIL_USED_COMPONENTS = 32768; // 0x8000 + field public static final int GET_GIDS = 256; // 0x100 + field public static final int GET_INSTRUMENTATION = 16; // 0x10 + field @Deprecated public static final int GET_INTENT_FILTERS = 32; // 0x20 + field public static final int GET_META_DATA = 128; // 0x80 + field public static final int GET_PERMISSIONS = 4096; // 0x1000 + field public static final int GET_PROVIDERS = 8; // 0x8 + field public static final int GET_RECEIVERS = 2; // 0x2 + field public static final int GET_RESOLVED_FILTER = 64; // 0x40 + field public static final int GET_SERVICES = 4; // 0x4 + field public static final int GET_SHARED_LIBRARY_FILES = 1024; // 0x400 + field @Deprecated public static final int GET_SIGNATURES = 64; // 0x40 + field public static final int GET_SIGNING_CERTIFICATES = 134217728; // 0x8000000 + field @Deprecated public static final int GET_UNINSTALLED_PACKAGES = 8192; // 0x2000 + field public static final int GET_URI_PERMISSION_PATTERNS = 2048; // 0x800 + field public static final int INSTALL_REASON_DEVICE_RESTORE = 2; // 0x2 + field public static final int INSTALL_REASON_DEVICE_SETUP = 3; // 0x3 + field public static final int INSTALL_REASON_POLICY = 1; // 0x1 + field public static final int INSTALL_REASON_UNKNOWN = 0; // 0x0 + field public static final int INSTALL_REASON_USER = 4; // 0x4 + field public static final int INSTALL_SCENARIO_BULK = 2; // 0x2 + field public static final int INSTALL_SCENARIO_BULK_SECONDARY = 3; // 0x3 + field public static final int INSTALL_SCENARIO_DEFAULT = 0; // 0x0 + field public static final int INSTALL_SCENARIO_FAST = 1; // 0x1 + field public static final int MATCH_ALL = 131072; // 0x20000 + field public static final int MATCH_APEX = 1073741824; // 0x40000000 + field @FlaggedApi("android.content.pm.archiving") public static final long MATCH_ARCHIVED_PACKAGES = 4294967296L; // 0x100000000L + field public static final int MATCH_DEFAULT_ONLY = 65536; // 0x10000 + field public static final int MATCH_DIRECT_BOOT_AUTO = 268435456; // 0x10000000 + field public static final int MATCH_DIRECT_BOOT_AWARE = 524288; // 0x80000 + field public static final int MATCH_DIRECT_BOOT_UNAWARE = 262144; // 0x40000 + field public static final int MATCH_DISABLED_COMPONENTS = 512; // 0x200 + field public static final int MATCH_DISABLED_UNTIL_USED_COMPONENTS = 32768; // 0x8000 + field @FlaggedApi("android.content.pm.quarantined_enabled") public static final long MATCH_QUARANTINED_COMPONENTS = 8589934592L; // 0x200000000L + field public static final int MATCH_SYSTEM_ONLY = 1048576; // 0x100000 + field public static final int MATCH_UNINSTALLED_PACKAGES = 8192; // 0x2000 + field public static final long MAXIMUM_VERIFICATION_TIMEOUT = 3600000L; // 0x36ee80L + field public static final int PERMISSION_DENIED = -1; // 0xffffffff + field public static final int PERMISSION_GRANTED = 0; // 0x0 + field public static final String PROPERTY_COMPAT_OVERRIDE_LANDSCAPE_TO_PORTRAIT = "android.camera.PROPERTY_COMPAT_OVERRIDE_LANDSCAPE_TO_PORTRAIT"; + field public static final String PROPERTY_MEDIA_CAPABILITIES = "android.media.PROPERTY_MEDIA_CAPABILITIES"; + field public static final String PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES = "android.net.PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES"; + field public static final String PROPERTY_SPECIAL_USE_FGS_SUBTYPE = "android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE"; + field @FlaggedApi("com.android.server.backup.enable_restricted_mode_changes") public static final String PROPERTY_USE_RESTRICTED_BACKUP_MODE = "android.app.backup.PROPERTY_USE_RESTRICTED_BACKUP_MODE"; + field public static final int SIGNATURE_FIRST_NOT_SIGNED = -1; // 0xffffffff + field public static final int SIGNATURE_MATCH = 0; // 0x0 + field public static final int SIGNATURE_NEITHER_SIGNED = 1; // 0x1 + field public static final int SIGNATURE_NO_MATCH = -3; // 0xfffffffd + field public static final int SIGNATURE_SECOND_NOT_SIGNED = -2; // 0xfffffffe + field public static final int SIGNATURE_UNKNOWN_PACKAGE = -4; // 0xfffffffc + field public static final int SYNCHRONOUS = 2; // 0x2 + field @NonNull public static final java.util.List TRUST_ALL; + field @NonNull public static final java.util.List TRUST_NONE; + field public static final int VERIFICATION_ALLOW = 1; // 0x1 + field public static final int VERIFICATION_REJECT = -1; // 0xffffffff + field public static final int VERSION_CODE_HIGHEST = -1; // 0xffffffff + } + + public static final class PackageManager.ApplicationInfoFlags { + method public long getValue(); + method @NonNull public static android.content.pm.PackageManager.ApplicationInfoFlags of(long); + } + + public static final class PackageManager.ComponentEnabledSetting implements android.os.Parcelable { + ctor public PackageManager.ComponentEnabledSetting(@NonNull android.content.ComponentName, int, int); + method public int describeContents(); + method @Nullable public android.content.ComponentName getComponentName(); + method public int getEnabledFlags(); + method public int getEnabledState(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class PackageManager.ComponentInfoFlags { + method public long getValue(); + method @NonNull public static android.content.pm.PackageManager.ComponentInfoFlags of(long); + } + + public static class PackageManager.NameNotFoundException extends android.util.AndroidException { + ctor public PackageManager.NameNotFoundException(); + ctor public PackageManager.NameNotFoundException(String); + } + + @java.lang.FunctionalInterface public static interface PackageManager.OnChecksumsReadyListener { + method public void onChecksumsReady(@NonNull java.util.List); + } + + public static final class PackageManager.PackageInfoFlags { + method public long getValue(); + method @NonNull public static android.content.pm.PackageManager.PackageInfoFlags of(long); + } + + public static final class PackageManager.Property implements android.os.Parcelable { + method public int describeContents(); + method public boolean getBoolean(); + method @Nullable public String getClassName(); + method public float getFloat(); + method public int getInteger(); + method @NonNull public String getName(); + method @NonNull public String getPackageName(); + method public int getResourceId(); + method @Nullable public String getString(); + method public boolean isBoolean(); + method public boolean isFloat(); + method public boolean isInteger(); + method public boolean isResourceId(); + method public boolean isString(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class PackageManager.ResolveInfoFlags { + method public long getValue(); + method @NonNull public static android.content.pm.PackageManager.ResolveInfoFlags of(long); + } + + @Deprecated public class PackageStats implements android.os.Parcelable { + ctor @Deprecated public PackageStats(String); + ctor @Deprecated public PackageStats(android.os.Parcel); + ctor @Deprecated public PackageStats(android.content.pm.PackageStats); + method @Deprecated public int describeContents(); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Deprecated public long cacheSize; + field @Deprecated public long codeSize; + field @Deprecated public long dataSize; + field @Deprecated public long externalCacheSize; + field @Deprecated public long externalCodeSize; + field @Deprecated public long externalDataSize; + field @Deprecated public long externalMediaSize; + field @Deprecated public long externalObbSize; + field @Deprecated public String packageName; + } + + public class PathPermission extends android.os.PatternMatcher { + ctor public PathPermission(String, int, String, String); + ctor public PathPermission(android.os.Parcel); + method public String getReadPermission(); + method public String getWritePermission(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class PermissionGroupInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { + ctor @Deprecated public PermissionGroupInfo(); + ctor @Deprecated public PermissionGroupInfo(@NonNull android.content.pm.PermissionGroupInfo); + method public int describeContents(); + method @Nullable public CharSequence loadDescription(@NonNull android.content.pm.PackageManager); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_PERSONAL_INFO = 1; // 0x1 + field @StringRes public int descriptionRes; + field public int flags; + field @Nullable public CharSequence nonLocalizedDescription; + field public int priority; + } + + public class PermissionInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { + ctor @Deprecated public PermissionInfo(); + ctor @Deprecated public PermissionInfo(@NonNull android.content.pm.PermissionInfo); + method public int describeContents(); + method public int getProtection(); + method public int getProtectionFlags(); + method @Nullable public CharSequence loadDescription(@NonNull android.content.pm.PackageManager); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_COSTS_MONEY = 1; // 0x1 + field public static final int FLAG_HARD_RESTRICTED = 4; // 0x4 + field public static final int FLAG_IMMUTABLY_RESTRICTED = 16; // 0x10 + field public static final int FLAG_INSTALLED = 1073741824; // 0x40000000 + field public static final int FLAG_SOFT_RESTRICTED = 8; // 0x8 + field public static final int PROTECTION_DANGEROUS = 1; // 0x1 + field public static final int PROTECTION_FLAG_APPOP = 64; // 0x40 + field public static final int PROTECTION_FLAG_DEVELOPMENT = 32; // 0x20 + field public static final int PROTECTION_FLAG_INSTALLER = 256; // 0x100 + field public static final int PROTECTION_FLAG_INSTANT = 4096; // 0x1000 + field public static final int PROTECTION_FLAG_PRE23 = 128; // 0x80 + field public static final int PROTECTION_FLAG_PREINSTALLED = 1024; // 0x400 + field public static final int PROTECTION_FLAG_PRIVILEGED = 16; // 0x10 + field public static final int PROTECTION_FLAG_RUNTIME_ONLY = 8192; // 0x2000 + field public static final int PROTECTION_FLAG_SETUP = 2048; // 0x800 + field @Deprecated public static final int PROTECTION_FLAG_SYSTEM = 16; // 0x10 + field public static final int PROTECTION_FLAG_VERIFIER = 512; // 0x200 + field public static final int PROTECTION_INTERNAL = 4; // 0x4 + field @Deprecated public static final int PROTECTION_MASK_BASE = 15; // 0xf + field @Deprecated public static final int PROTECTION_MASK_FLAGS = 65520; // 0xfff0 + field public static final int PROTECTION_NORMAL = 0; // 0x0 + field public static final int PROTECTION_SIGNATURE = 2; // 0x2 + field @Deprecated public static final int PROTECTION_SIGNATURE_OR_SYSTEM = 3; // 0x3 + field @StringRes public int descriptionRes; + field public int flags; + field @Nullable public String group; + field @Nullable public CharSequence nonLocalizedDescription; + field @Deprecated public int protectionLevel; + } + + public final class ProviderInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable { + ctor public ProviderInfo(); + ctor public ProviderInfo(android.content.pm.ProviderInfo); + method public int describeContents(); + method public void dump(android.util.Printer, String); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_SINGLE_USER = 1073741824; // 0x40000000 + field public String authority; + field public int flags; + field public boolean forceUriPermissions; + field public boolean grantUriPermissions; + field public int initOrder; + field @Deprecated public boolean isSyncable; + field public boolean multiprocess; + field public android.content.pm.PathPermission[] pathPermissions; + field public String readPermission; + field public android.os.PatternMatcher[] uriPermissionPatterns; + field public String writePermission; + } + + public class ResolveInfo implements android.os.Parcelable { + ctor public ResolveInfo(); + ctor public ResolveInfo(android.content.pm.ResolveInfo); + method public int describeContents(); + method public void dump(android.util.Printer, String); + method public final int getIconResource(); + method public boolean isCrossProfileIntentForwarderActivity(); + method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); + method @NonNull public CharSequence loadLabel(@NonNull android.content.pm.PackageManager); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public android.content.pm.ActivityInfo activityInfo; + field public android.content.IntentFilter filter; + field public int icon; + field public boolean isDefault; + field public boolean isInstantAppAvailable; + field public int labelRes; + field public int match; + field public CharSequence nonLocalizedLabel; + field public int preferredOrder; + field public int priority; + field public android.content.pm.ProviderInfo providerInfo; + field public String resolvePackageName; + field public android.content.pm.ServiceInfo serviceInfo; + field public int specificIndex; + } + + public static class ResolveInfo.DisplayNameComparator implements java.util.Comparator { + ctor public ResolveInfo.DisplayNameComparator(android.content.pm.PackageManager); + method public final int compare(android.content.pm.ResolveInfo, android.content.pm.ResolveInfo); + } + + public class ServiceInfo extends android.content.pm.ComponentInfo implements android.os.Parcelable { + ctor public ServiceInfo(); + ctor public ServiceInfo(android.content.pm.ServiceInfo); + method public int describeContents(); + method public void dump(android.util.Printer, String); + method public int getForegroundServiceType(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_ALLOW_SHARED_ISOLATED_PROCESS = 16; // 0x10 + field public static final int FLAG_EXTERNAL_SERVICE = 4; // 0x4 + field public static final int FLAG_ISOLATED_PROCESS = 2; // 0x2 + field public static final int FLAG_SINGLE_USER = 1073741824; // 0x40000000 + field public static final int FLAG_STOP_WITH_TASK = 1; // 0x1 + field public static final int FLAG_USE_APP_ZYGOTE = 8; // 0x8 + field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_CAMERA}, anyOf={android.Manifest.permission.CAMERA}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_CAMERA = 64; // 0x40 + field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE}, anyOf={android.Manifest.permission.BLUETOOTH_ADVERTISE, android.Manifest.permission.BLUETOOTH_CONNECT, android.Manifest.permission.BLUETOOTH_SCAN, android.Manifest.permission.CHANGE_NETWORK_STATE, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_MULTICAST_STATE, android.Manifest.permission.NFC, android.Manifest.permission.TRANSMIT_IR, android.Manifest.permission.UWB_RANGING, android.Manifest.permission.RANGING}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE = 16; // 0x10 + field @RequiresPermission(value=android.Manifest.permission.FOREGROUND_SERVICE_DATA_SYNC, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_DATA_SYNC = 1; // 0x1 + field @FlaggedApi("android.permission.flags.replace_body_sensor_permission_enabled") @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_HEALTH}, anyOf={android.Manifest.permission.ACTIVITY_RECOGNITION, android.Manifest.permission.HIGH_SAMPLING_RATE_SENSORS, android.health.connect.HealthPermissions.READ_HEART_RATE, android.health.connect.HealthPermissions.READ_SKIN_TEMPERATURE, android.health.connect.HealthPermissions.READ_OXYGEN_SATURATION}) public static final int FOREGROUND_SERVICE_TYPE_HEALTH = 256; // 0x100 + field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_LOCATION}, anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_LOCATION = 8; // 0x8 + field public static final int FOREGROUND_SERVICE_TYPE_MANIFEST = -1; // 0xffffffff + field @RequiresPermission(value=android.Manifest.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK = 2; // 0x2 + field @FlaggedApi("android.content.pm.introduce_media_processing_type") @RequiresPermission(android.Manifest.permission.FOREGROUND_SERVICE_MEDIA_PROCESSING) public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING = 8192; // 0x2000 + field @RequiresPermission(value=android.Manifest.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION = 32; // 0x20 + field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_MICROPHONE}, anyOf={android.Manifest.permission.CAPTURE_AUDIO_OUTPUT, android.Manifest.permission.RECORD_AUDIO}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_MICROPHONE = 128; // 0x80 + field @Deprecated public static final int FOREGROUND_SERVICE_TYPE_NONE = 0; // 0x0 + field @RequiresPermission(allOf={android.Manifest.permission.FOREGROUND_SERVICE_PHONE_CALL}, anyOf={android.Manifest.permission.MANAGE_OWN_CALLS}, conditional=true) public static final int FOREGROUND_SERVICE_TYPE_PHONE_CALL = 4; // 0x4 + field @RequiresPermission(android.Manifest.permission.FOREGROUND_SERVICE_REMOTE_MESSAGING) public static final int FOREGROUND_SERVICE_TYPE_REMOTE_MESSAGING = 512; // 0x200 + field public static final int FOREGROUND_SERVICE_TYPE_SHORT_SERVICE = 2048; // 0x800 + field @RequiresPermission(android.Manifest.permission.FOREGROUND_SERVICE_SPECIAL_USE) public static final int FOREGROUND_SERVICE_TYPE_SPECIAL_USE = 1073741824; // 0x40000000 + field @RequiresPermission(android.Manifest.permission.FOREGROUND_SERVICE_SYSTEM_EXEMPTED) public static final int FOREGROUND_SERVICE_TYPE_SYSTEM_EXEMPTED = 1024; // 0x400 + field public int flags; + field public String permission; + } + + public final class SharedLibraryInfo implements android.os.Parcelable { + method public int describeContents(); + method @FlaggedApi("android.content.pm.sdk_dependency_installer") @NonNull public java.util.List getCertDigests(); + method @NonNull public android.content.pm.VersionedPackage getDeclaringPackage(); + method @NonNull public java.util.List getDependentPackages(); + method @IntRange(from=0xffffffff) public long getLongVersion(); + method public String getName(); + method @FlaggedApi("android.content.pm.sdk_lib_independence") @NonNull public java.util.List getOptionalDependentPackages(); + method public int getType(); + method @Deprecated @IntRange(from=0xffffffff) public int getVersion(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_BUILTIN = 0; // 0x0 + field public static final int TYPE_DYNAMIC = 1; // 0x1 + field public static final int TYPE_SDK_PACKAGE = 3; // 0x3 + field public static final int TYPE_STATIC = 2; // 0x2 + field public static final int VERSION_UNDEFINED = -1; // 0xffffffff + } + + public final class ShortcutInfo implements android.os.Parcelable { + method @NonNull public static android.content.pm.ShortcutInfo createFromGenericDocument(@NonNull android.content.Context, @NonNull android.app.appsearch.GenericDocument); + method public int describeContents(); + method @Nullable public android.content.ComponentName getActivity(); + method @NonNull public java.util.List getCapabilities(); + method @NonNull public java.util.List getCapabilityParams(@NonNull android.content.pm.Capability); + method @Nullable public java.util.Set getCategories(); + method @Nullable public CharSequence getDisabledMessage(); + method public int getDisabledReason(); + method public int getExcludedFromSurfaces(); + method @Nullable public android.os.PersistableBundle getExtras(); + method @NonNull public String getId(); + method @Nullable public android.content.Intent getIntent(); + method @Nullable public android.content.Intent[] getIntents(); + method public long getLastChangedTimestamp(); + method @Nullable public android.content.LocusId getLocusId(); + method @Nullable public CharSequence getLongLabel(); + method @NonNull public String getPackage(); + method public int getRank(); + method @Nullable public CharSequence getShortLabel(); + method public android.os.UserHandle getUserHandle(); + method public boolean hasKeyFieldsOnly(); + method public boolean isCached(); + method public boolean isDeclaredInManifest(); + method public boolean isDynamic(); + method public boolean isEnabled(); + method public boolean isExcludedFromSurfaces(int); + method public boolean isImmutable(); + method public boolean isPinned(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DISABLED_REASON_APP_CHANGED = 2; // 0x2 + field public static final int DISABLED_REASON_BACKUP_NOT_SUPPORTED = 101; // 0x65 + field public static final int DISABLED_REASON_BY_APP = 1; // 0x1 + field public static final int DISABLED_REASON_NOT_DISABLED = 0; // 0x0 + field public static final int DISABLED_REASON_OTHER_RESTORE_ISSUE = 103; // 0x67 + field public static final int DISABLED_REASON_SIGNATURE_MISMATCH = 102; // 0x66 + field public static final int DISABLED_REASON_UNKNOWN = 3; // 0x3 + field public static final int DISABLED_REASON_VERSION_LOWER = 100; // 0x64 + field public static final String SHORTCUT_CATEGORY_CONVERSATION = "android.shortcut.conversation"; + field public static final int SURFACE_LAUNCHER = 1; // 0x1 + } + + public static class ShortcutInfo.Builder { + ctor public ShortcutInfo.Builder(android.content.Context, String); + method @NonNull public android.content.pm.ShortcutInfo.Builder addCapabilityBinding(@NonNull android.content.pm.Capability, @Nullable android.content.pm.CapabilityParams); + method @NonNull public android.content.pm.ShortcutInfo build(); + method @NonNull public android.content.pm.ShortcutInfo.Builder setActivity(@NonNull android.content.ComponentName); + method @NonNull public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set); + method @NonNull public android.content.pm.ShortcutInfo.Builder setDisabledMessage(@NonNull CharSequence); + method @NonNull public android.content.pm.ShortcutInfo.Builder setExcludedFromSurfaces(int); + method @NonNull public android.content.pm.ShortcutInfo.Builder setExtras(@NonNull android.os.PersistableBundle); + method @NonNull public android.content.pm.ShortcutInfo.Builder setIcon(android.graphics.drawable.Icon); + method @NonNull public android.content.pm.ShortcutInfo.Builder setIntent(@NonNull android.content.Intent); + method @NonNull public android.content.pm.ShortcutInfo.Builder setIntents(@NonNull android.content.Intent[]); + method @NonNull public android.content.pm.ShortcutInfo.Builder setLocusId(@NonNull android.content.LocusId); + method @NonNull public android.content.pm.ShortcutInfo.Builder setLongLabel(@NonNull CharSequence); + method @NonNull public android.content.pm.ShortcutInfo.Builder setLongLived(boolean); + method @NonNull public android.content.pm.ShortcutInfo.Builder setPerson(@NonNull android.app.Person); + method @NonNull public android.content.pm.ShortcutInfo.Builder setPersons(@NonNull android.app.Person[]); + method @NonNull public android.content.pm.ShortcutInfo.Builder setRank(int); + method @NonNull public android.content.pm.ShortcutInfo.Builder setShortLabel(@NonNull CharSequence); + method @NonNull public android.content.pm.ShortcutInfo.Builder setStartingTheme(int); + } + + public class ShortcutManager { + method @WorkerThread public boolean addDynamicShortcuts(@NonNull java.util.List); + method @WorkerThread public android.content.Intent createShortcutResultIntent(@NonNull android.content.pm.ShortcutInfo); + method public void disableShortcuts(@NonNull java.util.List); + method public void disableShortcuts(@NonNull java.util.List, CharSequence); + method public void enableShortcuts(@NonNull java.util.List); + method @NonNull @WorkerThread public java.util.List getDynamicShortcuts(); + method public int getIconMaxHeight(); + method public int getIconMaxWidth(); + method @NonNull @WorkerThread public java.util.List getManifestShortcuts(); + method public int getMaxShortcutCountPerActivity(); + method @NonNull @WorkerThread public java.util.List getPinnedShortcuts(); + method @NonNull @WorkerThread public java.util.List getShortcuts(int); + method public boolean isRateLimitingActive(); + method public boolean isRequestPinShortcutSupported(); + method public void pushDynamicShortcut(@NonNull android.content.pm.ShortcutInfo); + method public void removeAllDynamicShortcuts(); + method public void removeDynamicShortcuts(@NonNull java.util.List); + method public void removeLongLivedShortcuts(@NonNull java.util.List); + method public void reportShortcutUsed(String); + method @WorkerThread public boolean requestPinShortcut(@NonNull android.content.pm.ShortcutInfo, @Nullable android.content.IntentSender); + method @WorkerThread public boolean setDynamicShortcuts(@NonNull java.util.List); + method @WorkerThread public boolean updateShortcuts(@NonNull java.util.List); + field public static final int FLAG_MATCH_CACHED = 8; // 0x8 + field public static final int FLAG_MATCH_DYNAMIC = 2; // 0x2 + field public static final int FLAG_MATCH_MANIFEST = 1; // 0x1 + field public static final int FLAG_MATCH_PINNED = 4; // 0x4 + } + + public class Signature implements android.os.Parcelable { + ctor public Signature(byte[]); + ctor public Signature(String); + method public int describeContents(); + method public byte[] toByteArray(); + method public char[] toChars(); + method public char[] toChars(char[], int[]); + method public String toCharsString(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class SigningInfo implements android.os.Parcelable { + ctor public SigningInfo(); + ctor @FlaggedApi("android.content.pm.archiving") public SigningInfo(int, @Nullable java.util.Collection, @Nullable java.util.Collection, @Nullable java.util.Collection); + ctor public SigningInfo(android.content.pm.SigningInfo); + method public int describeContents(); + method public android.content.pm.Signature[] getApkContentsSigners(); + method @FlaggedApi("android.content.pm.archiving") @NonNull public java.util.Collection getPublicKeys(); + method @FlaggedApi("android.content.pm.archiving") public int getSchemeVersion(); + method public android.content.pm.Signature[] getSigningCertificateHistory(); + method public boolean hasMultipleSigners(); + method public boolean hasPastSigningCertificates(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class VersionedPackage implements android.os.Parcelable { + ctor public VersionedPackage(@NonNull String, int); + ctor public VersionedPackage(@NonNull String, long); + method public int describeContents(); + method public long getLongVersionCode(); + method @NonNull public String getPackageName(); + method @Deprecated public int getVersionCode(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.content.pm.verify.domain { + + public final class DomainVerificationManager { + method @Nullable public android.content.pm.verify.domain.DomainVerificationUserState getDomainVerificationUserState(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + } + + public final class DomainVerificationUserState implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.Map getHostToStateMap(); + method @NonNull public String getPackageName(); + method @NonNull public android.os.UserHandle getUser(); + method @NonNull public boolean isLinkHandlingAllowed(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DOMAIN_STATE_NONE = 0; // 0x0 + field public static final int DOMAIN_STATE_SELECTED = 1; // 0x1 + field public static final int DOMAIN_STATE_VERIFIED = 2; // 0x2 + } + +} + +package android.content.res { + + public class AssetFileDescriptor implements java.io.Closeable android.os.Parcelable { + ctor public AssetFileDescriptor(android.os.ParcelFileDescriptor, long, long); + ctor public AssetFileDescriptor(android.os.ParcelFileDescriptor, long, long, android.os.Bundle); + method public void close() throws java.io.IOException; + method public java.io.FileInputStream createInputStream() throws java.io.IOException; + method public java.io.FileOutputStream createOutputStream() throws java.io.IOException; + method public int describeContents(); + method public long getDeclaredLength(); + method public android.os.Bundle getExtras(); + method public java.io.FileDescriptor getFileDescriptor(); + method public long getLength(); + method public android.os.ParcelFileDescriptor getParcelFileDescriptor(); + method public long getStartOffset(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final long UNKNOWN_LENGTH = -1L; // 0xffffffffffffffffL + } + + public static class AssetFileDescriptor.AutoCloseInputStream extends android.os.ParcelFileDescriptor.AutoCloseInputStream { + ctor public AssetFileDescriptor.AutoCloseInputStream(android.content.res.AssetFileDescriptor) throws java.io.IOException; + } + + public static class AssetFileDescriptor.AutoCloseOutputStream extends android.os.ParcelFileDescriptor.AutoCloseOutputStream { + ctor public AssetFileDescriptor.AutoCloseOutputStream(android.content.res.AssetFileDescriptor) throws java.io.IOException; + } + + public final class AssetManager implements java.lang.AutoCloseable { + method public void close(); + method public String[] getLocales(); + method @Nullable public String[] list(@NonNull String) throws java.io.IOException; + method @NonNull public java.io.InputStream open(@NonNull String) throws java.io.IOException; + method @NonNull public java.io.InputStream open(@NonNull String, int) throws java.io.IOException; + method @NonNull public android.content.res.AssetFileDescriptor openFd(@NonNull String) throws java.io.IOException; + method @NonNull public android.content.res.AssetFileDescriptor openNonAssetFd(@NonNull String) throws java.io.IOException; + method @NonNull public android.content.res.AssetFileDescriptor openNonAssetFd(int, @NonNull String) throws java.io.IOException; + method @NonNull public android.content.res.XmlResourceParser openXmlResourceParser(@NonNull String) throws java.io.IOException; + method @NonNull public android.content.res.XmlResourceParser openXmlResourceParser(int, @NonNull String) throws java.io.IOException; + field public static final int ACCESS_BUFFER = 3; // 0x3 + field public static final int ACCESS_RANDOM = 1; // 0x1 + field public static final int ACCESS_STREAMING = 2; // 0x2 + field public static final int ACCESS_UNKNOWN = 0; // 0x0 + } + + public final class AssetManager.AssetInputStream extends java.io.InputStream { + method public int read() throws java.io.IOException; + } + + public class ColorStateList implements android.os.Parcelable { + ctor public ColorStateList(int[][], @ColorInt int[]); + method @Deprecated @NonNull public static android.content.res.ColorStateList createFromXml(android.content.res.Resources, org.xmlpull.v1.XmlPullParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method @NonNull public static android.content.res.ColorStateList createFromXml(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @Nullable android.content.res.Resources.Theme) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public int describeContents(); + method public int getChangingConfigurations(); + method public int getColorForState(@Nullable int[], int); + method @ColorInt public int getDefaultColor(); + method public boolean isOpaque(); + method public boolean isStateful(); + method @NonNull public static android.content.res.ColorStateList valueOf(@ColorInt int); + method @NonNull public android.content.res.ColorStateList withAlpha(int); + method @NonNull public android.content.res.ColorStateList withLStar(float); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class Configuration implements java.lang.Comparable android.os.Parcelable { + ctor public Configuration(); + ctor public Configuration(android.content.res.Configuration); + method public int compareTo(android.content.res.Configuration); + method public int describeContents(); + method public int diff(android.content.res.Configuration); + method public boolean equals(android.content.res.Configuration); + method @NonNull public static android.content.res.Configuration generateDelta(@NonNull android.content.res.Configuration, @NonNull android.content.res.Configuration); + method public int getGrammaticalGender(); + method public int getLayoutDirection(); + method @NonNull public android.os.LocaleList getLocales(); + method public boolean isLayoutSizeAtLeast(int); + method public boolean isNightModeActive(); + method public boolean isScreenHdr(); + method public boolean isScreenRound(); + method public boolean isScreenWideColorGamut(); + method public static boolean needNewResources(int, int); + method public void readFromParcel(android.os.Parcel); + method public void setLayoutDirection(java.util.Locale); + method public void setLocale(@Nullable java.util.Locale); + method public void setLocales(@Nullable android.os.LocaleList); + method public void setTo(android.content.res.Configuration); + method public void setToDefaults(); + method public int updateFrom(@NonNull android.content.res.Configuration); + method public void writeToParcel(android.os.Parcel, int); + field public static final int COLOR_MODE_HDR_MASK = 12; // 0xc + field public static final int COLOR_MODE_HDR_NO = 4; // 0x4 + field public static final int COLOR_MODE_HDR_SHIFT = 2; // 0x2 + field public static final int COLOR_MODE_HDR_UNDEFINED = 0; // 0x0 + field public static final int COLOR_MODE_HDR_YES = 8; // 0x8 + field public static final int COLOR_MODE_UNDEFINED = 0; // 0x0 + field public static final int COLOR_MODE_WIDE_COLOR_GAMUT_MASK = 3; // 0x3 + field public static final int COLOR_MODE_WIDE_COLOR_GAMUT_NO = 1; // 0x1 + field public static final int COLOR_MODE_WIDE_COLOR_GAMUT_UNDEFINED = 0; // 0x0 + field public static final int COLOR_MODE_WIDE_COLOR_GAMUT_YES = 2; // 0x2 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DENSITY_DPI_UNDEFINED = 0; // 0x0 + field public static final int FONT_WEIGHT_ADJUSTMENT_UNDEFINED = 2147483647; // 0x7fffffff + field public static final int GRAMMATICAL_GENDER_FEMININE = 2; // 0x2 + field public static final int GRAMMATICAL_GENDER_MASCULINE = 3; // 0x3 + field public static final int GRAMMATICAL_GENDER_NEUTRAL = 1; // 0x1 + field public static final int GRAMMATICAL_GENDER_NOT_SPECIFIED = 0; // 0x0 + field public static final int HARDKEYBOARDHIDDEN_NO = 1; // 0x1 + field public static final int HARDKEYBOARDHIDDEN_UNDEFINED = 0; // 0x0 + field public static final int HARDKEYBOARDHIDDEN_YES = 2; // 0x2 + field public static final int KEYBOARDHIDDEN_NO = 1; // 0x1 + field public static final int KEYBOARDHIDDEN_UNDEFINED = 0; // 0x0 + field public static final int KEYBOARDHIDDEN_YES = 2; // 0x2 + field public static final int KEYBOARD_12KEY = 3; // 0x3 + field public static final int KEYBOARD_NOKEYS = 1; // 0x1 + field public static final int KEYBOARD_QWERTY = 2; // 0x2 + field public static final int KEYBOARD_UNDEFINED = 0; // 0x0 + field public static final int MNC_ZERO = 65535; // 0xffff + field public static final int NAVIGATIONHIDDEN_NO = 1; // 0x1 + field public static final int NAVIGATIONHIDDEN_UNDEFINED = 0; // 0x0 + field public static final int NAVIGATIONHIDDEN_YES = 2; // 0x2 + field public static final int NAVIGATION_DPAD = 2; // 0x2 + field public static final int NAVIGATION_NONAV = 1; // 0x1 + field public static final int NAVIGATION_TRACKBALL = 3; // 0x3 + field public static final int NAVIGATION_UNDEFINED = 0; // 0x0 + field public static final int NAVIGATION_WHEEL = 4; // 0x4 + field public static final int ORIENTATION_LANDSCAPE = 2; // 0x2 + field public static final int ORIENTATION_PORTRAIT = 1; // 0x1 + field @Deprecated public static final int ORIENTATION_SQUARE = 3; // 0x3 + field public static final int ORIENTATION_UNDEFINED = 0; // 0x0 + field public static final int SCREENLAYOUT_LAYOUTDIR_LTR = 64; // 0x40 + field public static final int SCREENLAYOUT_LAYOUTDIR_MASK = 192; // 0xc0 + field public static final int SCREENLAYOUT_LAYOUTDIR_RTL = 128; // 0x80 + field public static final int SCREENLAYOUT_LAYOUTDIR_SHIFT = 6; // 0x6 + field public static final int SCREENLAYOUT_LAYOUTDIR_UNDEFINED = 0; // 0x0 + field public static final int SCREENLAYOUT_LONG_MASK = 48; // 0x30 + field public static final int SCREENLAYOUT_LONG_NO = 16; // 0x10 + field public static final int SCREENLAYOUT_LONG_UNDEFINED = 0; // 0x0 + field public static final int SCREENLAYOUT_LONG_YES = 32; // 0x20 + field public static final int SCREENLAYOUT_ROUND_MASK = 768; // 0x300 + field public static final int SCREENLAYOUT_ROUND_NO = 256; // 0x100 + field public static final int SCREENLAYOUT_ROUND_UNDEFINED = 0; // 0x0 + field public static final int SCREENLAYOUT_ROUND_YES = 512; // 0x200 + field public static final int SCREENLAYOUT_SIZE_LARGE = 3; // 0x3 + field public static final int SCREENLAYOUT_SIZE_MASK = 15; // 0xf + field public static final int SCREENLAYOUT_SIZE_NORMAL = 2; // 0x2 + field public static final int SCREENLAYOUT_SIZE_SMALL = 1; // 0x1 + field public static final int SCREENLAYOUT_SIZE_UNDEFINED = 0; // 0x0 + field public static final int SCREENLAYOUT_SIZE_XLARGE = 4; // 0x4 + field public static final int SCREENLAYOUT_UNDEFINED = 0; // 0x0 + field public static final int SCREEN_HEIGHT_DP_UNDEFINED = 0; // 0x0 + field public static final int SCREEN_WIDTH_DP_UNDEFINED = 0; // 0x0 + field public static final int SMALLEST_SCREEN_WIDTH_DP_UNDEFINED = 0; // 0x0 + field public static final int TOUCHSCREEN_FINGER = 3; // 0x3 + field public static final int TOUCHSCREEN_NOTOUCH = 1; // 0x1 + field @Deprecated public static final int TOUCHSCREEN_STYLUS = 2; // 0x2 + field public static final int TOUCHSCREEN_UNDEFINED = 0; // 0x0 + field public static final int UI_MODE_NIGHT_MASK = 48; // 0x30 + field public static final int UI_MODE_NIGHT_NO = 16; // 0x10 + field public static final int UI_MODE_NIGHT_UNDEFINED = 0; // 0x0 + field public static final int UI_MODE_NIGHT_YES = 32; // 0x20 + field public static final int UI_MODE_TYPE_APPLIANCE = 5; // 0x5 + field public static final int UI_MODE_TYPE_CAR = 3; // 0x3 + field public static final int UI_MODE_TYPE_DESK = 2; // 0x2 + field public static final int UI_MODE_TYPE_MASK = 15; // 0xf + field public static final int UI_MODE_TYPE_NORMAL = 1; // 0x1 + field public static final int UI_MODE_TYPE_TELEVISION = 4; // 0x4 + field public static final int UI_MODE_TYPE_UNDEFINED = 0; // 0x0 + field public static final int UI_MODE_TYPE_VR_HEADSET = 7; // 0x7 + field public static final int UI_MODE_TYPE_WATCH = 6; // 0x6 + field public int colorMode; + field public int densityDpi; + field public float fontScale; + field public int fontWeightAdjustment; + field public int hardKeyboardHidden; + field public int keyboard; + field public int keyboardHidden; + field @Deprecated public java.util.Locale locale; + field public int mcc; + field public int mnc; + field public int navigation; + field public int navigationHidden; + field public int orientation; + field public int screenHeightDp; + field public int screenLayout; + field public int screenWidthDp; + field public int smallestScreenWidthDp; + field public int touchscreen; + field public int uiMode; + } + + @FlaggedApi("android.content.res.font_scale_converter_public") public interface FontScaleConverter { + method public float convertDpToSp(float); + method public float convertSpToDp(float); + method @AnyThread @Nullable public static android.content.res.FontScaleConverter forScale(float); + method @AnyThread public static boolean isNonLinearFontScalingActive(float); + } + + public class ObbInfo implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int OBB_OVERLAY = 1; // 0x1 + field public String filename; + field public int flags; + field public String packageName; + field public int version; + } + + public class ObbScanner { + method public static android.content.res.ObbInfo getObbInfo(String) throws java.io.IOException; + } + + public class Resources { + ctor @Deprecated public Resources(android.content.res.AssetManager, android.util.DisplayMetrics, android.content.res.Configuration); + method public void addLoaders(@NonNull android.content.res.loader.ResourcesLoader...); + method public final void finishPreloading(); + method public final void flushLayoutCache(); + method @NonNull public android.content.res.XmlResourceParser getAnimation(@AnimRes @AnimatorRes int) throws android.content.res.Resources.NotFoundException; + method public final android.content.res.AssetManager getAssets(); + method @AnyRes public static int getAttributeSetSourceResId(@Nullable android.util.AttributeSet); + method public boolean getBoolean(@BoolRes int) throws android.content.res.Resources.NotFoundException; + method @Deprecated @ColorInt public int getColor(@ColorRes int) throws android.content.res.Resources.NotFoundException; + method @ColorInt public int getColor(@ColorRes int, @Nullable android.content.res.Resources.Theme) throws android.content.res.Resources.NotFoundException; + method @Deprecated @NonNull public android.content.res.ColorStateList getColorStateList(@ColorRes int) throws android.content.res.Resources.NotFoundException; + method @NonNull public android.content.res.ColorStateList getColorStateList(@ColorRes int, @Nullable android.content.res.Resources.Theme) throws android.content.res.Resources.NotFoundException; + method public android.content.res.Configuration getConfiguration(); + method public float getDimension(@DimenRes int) throws android.content.res.Resources.NotFoundException; + method public int getDimensionPixelOffset(@DimenRes int) throws android.content.res.Resources.NotFoundException; + method public int getDimensionPixelSize(@DimenRes int) throws android.content.res.Resources.NotFoundException; + method public android.util.DisplayMetrics getDisplayMetrics(); + method @Deprecated public android.graphics.drawable.Drawable getDrawable(@DrawableRes int) throws android.content.res.Resources.NotFoundException; + method public android.graphics.drawable.Drawable getDrawable(@DrawableRes int, @Nullable android.content.res.Resources.Theme) throws android.content.res.Resources.NotFoundException; + method @Deprecated @Nullable public android.graphics.drawable.Drawable getDrawableForDensity(@DrawableRes int, int) throws android.content.res.Resources.NotFoundException; + method @Nullable public android.graphics.drawable.Drawable getDrawableForDensity(@DrawableRes int, int, @Nullable android.content.res.Resources.Theme); + method public float getFloat(@DimenRes int); + method @NonNull public android.graphics.Typeface getFont(@FontRes int) throws android.content.res.Resources.NotFoundException; + method public float getFraction(@FractionRes int, int, int); + method @Discouraged(message="Use of this function is discouraged because resource reflection makes it harder to perform build optimizations and compile-time verification of code. It is much more efficient to retrieve resources by identifier (e.g. `R.foo.bar`) than by name (e.g. `getIdentifier(\"bar\", \"foo\", null)`).") public int getIdentifier(String, String, String); + method @NonNull public int[] getIntArray(@ArrayRes int) throws android.content.res.Resources.NotFoundException; + method public int getInteger(@IntegerRes int) throws android.content.res.Resources.NotFoundException; + method @NonNull public android.content.res.XmlResourceParser getLayout(@LayoutRes int) throws android.content.res.Resources.NotFoundException; + method @Deprecated public android.graphics.Movie getMovie(@RawRes int) throws android.content.res.Resources.NotFoundException; + method @NonNull public String getQuantityString(@PluralsRes int, int, java.lang.Object...) throws android.content.res.Resources.NotFoundException; + method @NonNull public String getQuantityString(@PluralsRes int, int) throws android.content.res.Resources.NotFoundException; + method @NonNull public CharSequence getQuantityText(@PluralsRes int, int) throws android.content.res.Resources.NotFoundException; + method public String getResourceEntryName(@AnyRes int) throws android.content.res.Resources.NotFoundException; + method public String getResourceName(@AnyRes int) throws android.content.res.Resources.NotFoundException; + method public String getResourcePackageName(@AnyRes int) throws android.content.res.Resources.NotFoundException; + method public String getResourceTypeName(@AnyRes int) throws android.content.res.Resources.NotFoundException; + method @NonNull public String getString(@StringRes int) throws android.content.res.Resources.NotFoundException; + method @NonNull public String getString(@StringRes int, java.lang.Object...) throws android.content.res.Resources.NotFoundException; + method @NonNull public String[] getStringArray(@ArrayRes int) throws android.content.res.Resources.NotFoundException; + method public static android.content.res.Resources getSystem(); + method @NonNull public CharSequence getText(@StringRes int) throws android.content.res.Resources.NotFoundException; + method public CharSequence getText(@StringRes int, CharSequence); + method @NonNull public CharSequence[] getTextArray(@ArrayRes int) throws android.content.res.Resources.NotFoundException; + method public void getValue(@AnyRes int, android.util.TypedValue, boolean) throws android.content.res.Resources.NotFoundException; + method @Discouraged(message="Use of this function is discouraged because it makes internal calls to `getIdentifier()`, which uses resource reflection. Reflection makes it harder to perform build optimizations and compile-time verification of code. It is much more efficient to retrieve resource values by identifier (e.g. `getValue(R.foo.bar, outValue, true)`) than by name (e.g. `getValue(\"foo\", outvalue, true)`).") public void getValue(String, android.util.TypedValue, boolean) throws android.content.res.Resources.NotFoundException; + method public void getValueForDensity(@AnyRes int, int, android.util.TypedValue, boolean) throws android.content.res.Resources.NotFoundException; + method @NonNull public android.content.res.XmlResourceParser getXml(@XmlRes int) throws android.content.res.Resources.NotFoundException; + method public final android.content.res.Resources.Theme newTheme(); + method public android.content.res.TypedArray obtainAttributes(android.util.AttributeSet, @StyleableRes int[]); + method @NonNull public android.content.res.TypedArray obtainTypedArray(@ArrayRes int) throws android.content.res.Resources.NotFoundException; + method @NonNull public java.io.InputStream openRawResource(@RawRes int) throws android.content.res.Resources.NotFoundException; + method @NonNull public java.io.InputStream openRawResource(@RawRes int, android.util.TypedValue) throws android.content.res.Resources.NotFoundException; + method public android.content.res.AssetFileDescriptor openRawResourceFd(@RawRes int) throws android.content.res.Resources.NotFoundException; + method public void parseBundleExtra(String, android.util.AttributeSet, android.os.Bundle) throws org.xmlpull.v1.XmlPullParserException; + method public void parseBundleExtras(android.content.res.XmlResourceParser, android.os.Bundle) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method @FlaggedApi("android.content.res.register_resource_paths") public static void registerResourcePaths(@NonNull String, @NonNull android.content.pm.ApplicationInfo); + method public void removeLoaders(@NonNull android.content.res.loader.ResourcesLoader...); + method @Deprecated public void updateConfiguration(android.content.res.Configuration, android.util.DisplayMetrics); + field @AnyRes public static final int ID_NULL = 0; // 0x0 + } + + public static class Resources.NotFoundException extends java.lang.RuntimeException { + ctor public Resources.NotFoundException(); + ctor public Resources.NotFoundException(String); + ctor public Resources.NotFoundException(String, Exception); + } + + public final class Resources.Theme { + method public void applyStyle(int, boolean); + method public void dump(int, String, String); + method @NonNull public int[] getAttributeResolutionStack(@AttrRes int, @StyleRes int, @StyleRes int); + method public int getChangingConfigurations(); + method public android.graphics.drawable.Drawable getDrawable(@DrawableRes int) throws android.content.res.Resources.NotFoundException; + method @StyleRes public int getExplicitStyle(@Nullable android.util.AttributeSet); + method public android.content.res.Resources getResources(); + method @NonNull public android.content.res.TypedArray obtainStyledAttributes(@NonNull @StyleableRes int[]); + method @NonNull public android.content.res.TypedArray obtainStyledAttributes(@StyleRes int, @NonNull @StyleableRes int[]) throws android.content.res.Resources.NotFoundException; + method @NonNull public android.content.res.TypedArray obtainStyledAttributes(@Nullable android.util.AttributeSet, @NonNull @StyleableRes int[], @AttrRes int, @StyleRes int); + method public void rebase(); + method public boolean resolveAttribute(int, android.util.TypedValue, boolean); + method public void setTo(android.content.res.Resources.Theme); + } + + public class TypedArray implements java.lang.AutoCloseable { + method public void close(); + method public boolean getBoolean(@StyleableRes int, boolean); + method public int getChangingConfigurations(); + method @ColorInt public int getColor(@StyleableRes int, @ColorInt int); + method @Nullable public android.content.res.ColorStateList getColorStateList(@StyleableRes int); + method public float getDimension(@StyleableRes int, float); + method public int getDimensionPixelOffset(@StyleableRes int, int); + method public int getDimensionPixelSize(@StyleableRes int, int); + method @Nullable public android.graphics.drawable.Drawable getDrawable(@StyleableRes int); + method public float getFloat(@StyleableRes int, float); + method @Nullable public android.graphics.Typeface getFont(@StyleableRes int); + method public float getFraction(@StyleableRes int, int, int, float); + method public int getIndex(int); + method public int getIndexCount(); + method public int getInt(@StyleableRes int, int); + method public int getInteger(@StyleableRes int, int); + method public int getLayoutDimension(@StyleableRes int, String); + method public int getLayoutDimension(@StyleableRes int, int); + method public String getNonResourceString(@StyleableRes int); + method public String getPositionDescription(); + method @AnyRes public int getResourceId(@StyleableRes int, int); + method public android.content.res.Resources getResources(); + method @AnyRes public int getSourceResourceId(@StyleableRes int, @AnyRes int); + method @Nullable public String getString(@StyleableRes int); + method public CharSequence getText(@StyleableRes int); + method public CharSequence[] getTextArray(@StyleableRes int); + method public int getType(@StyleableRes int); + method public boolean getValue(@StyleableRes int, android.util.TypedValue); + method public boolean hasValue(@StyleableRes int); + method public boolean hasValueOrEmpty(@StyleableRes int); + method public int length(); + method public android.util.TypedValue peekValue(@StyleableRes int); + method public void recycle(); + } + + public interface XmlResourceParser extends org.xmlpull.v1.XmlPullParser android.util.AttributeSet java.lang.AutoCloseable { + method public void close(); + method public String getAttributeNamespace(int); + } + +} + +package android.content.res.loader { + + public interface AssetsProvider { + method @Nullable public default android.content.res.AssetFileDescriptor loadAssetFd(@NonNull String, int); + } + + public class ResourcesLoader { + ctor public ResourcesLoader(); + method public void addProvider(@NonNull android.content.res.loader.ResourcesProvider); + method public void clearProviders(); + method @NonNull public java.util.List getProviders(); + method public void removeProvider(@NonNull android.content.res.loader.ResourcesProvider); + method public void setProviders(@NonNull java.util.List); + } + + public class ResourcesProvider implements java.lang.AutoCloseable java.io.Closeable { + method public void close(); + method @NonNull public static android.content.res.loader.ResourcesProvider empty(@NonNull android.content.res.loader.AssetsProvider); + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromApk(@NonNull android.os.ParcelFileDescriptor) throws java.io.IOException; + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromApk(@NonNull android.os.ParcelFileDescriptor, @Nullable android.content.res.loader.AssetsProvider) throws java.io.IOException; + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromDirectory(@NonNull String, @Nullable android.content.res.loader.AssetsProvider) throws java.io.IOException; + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromSplit(@NonNull android.content.Context, @NonNull String) throws java.io.IOException; + method @NonNull public static android.content.res.loader.ResourcesProvider loadFromTable(@NonNull android.os.ParcelFileDescriptor, @Nullable android.content.res.loader.AssetsProvider) throws java.io.IOException; + method @NonNull public static android.content.res.loader.ResourcesProvider loadOverlay(@NonNull android.content.om.OverlayInfo) throws java.io.IOException; + } + +} + +package android.credentials { + + public class ClearCredentialStateException extends java.lang.Exception { + ctor public ClearCredentialStateException(@NonNull String, @Nullable String); + ctor public ClearCredentialStateException(@NonNull String, @Nullable String, @Nullable Throwable); + ctor public ClearCredentialStateException(@NonNull String, @Nullable Throwable); + ctor public ClearCredentialStateException(@NonNull String); + method @NonNull public String getType(); + field @NonNull public static final String TYPE_UNKNOWN = "android.credentials.ClearCredentialStateException.TYPE_UNKNOWN"; + } + + public final class ClearCredentialStateRequest implements android.os.Parcelable { + ctor public ClearCredentialStateRequest(@NonNull android.os.Bundle); + method public int describeContents(); + method @NonNull public android.os.Bundle getData(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class CreateCredentialException extends java.lang.Exception { + ctor public CreateCredentialException(@NonNull String, @Nullable String); + ctor public CreateCredentialException(@NonNull String, @Nullable String, @Nullable Throwable); + ctor public CreateCredentialException(@NonNull String, @Nullable Throwable); + ctor public CreateCredentialException(@NonNull String); + method @NonNull public String getType(); + field @NonNull public static final String TYPE_INTERRUPTED = "android.credentials.CreateCredentialException.TYPE_INTERRUPTED"; + field @NonNull public static final String TYPE_NO_CREATE_OPTIONS = "android.credentials.CreateCredentialException.TYPE_NO_CREATE_OPTIONS"; + field @NonNull public static final String TYPE_UNKNOWN = "android.credentials.CreateCredentialException.TYPE_UNKNOWN"; + field @NonNull public static final String TYPE_USER_CANCELED = "android.credentials.CreateCredentialException.TYPE_USER_CANCELED"; + } + + public final class CreateCredentialRequest implements android.os.Parcelable { + method public boolean alwaysSendAppInfoToProvider(); + method public int describeContents(); + method @NonNull public android.os.Bundle getCandidateQueryData(); + method @NonNull public android.os.Bundle getCredentialData(); + method @Nullable public String getOrigin(); + method @NonNull public String getType(); + method public boolean isSystemProviderRequired(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class CreateCredentialRequest.Builder { + ctor public CreateCredentialRequest.Builder(@NonNull String, @NonNull android.os.Bundle, @NonNull android.os.Bundle); + method @NonNull public android.credentials.CreateCredentialRequest build(); + method @NonNull public android.credentials.CreateCredentialRequest.Builder setAlwaysSendAppInfoToProvider(boolean); + method @NonNull public android.credentials.CreateCredentialRequest.Builder setIsSystemProviderRequired(boolean); + method @NonNull @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_SET_ORIGIN) public android.credentials.CreateCredentialRequest.Builder setOrigin(@NonNull String); + } + + public final class CreateCredentialResponse implements android.os.Parcelable { + ctor public CreateCredentialResponse(@NonNull android.os.Bundle); + method public int describeContents(); + method @NonNull public android.os.Bundle getData(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class Credential implements android.os.Parcelable { + ctor public Credential(@NonNull String, @NonNull android.os.Bundle); + method public int describeContents(); + method @NonNull public android.os.Bundle getData(); + method @NonNull public String getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @NonNull public static final String TYPE_PASSWORD_CREDENTIAL = "android.credentials.TYPE_PASSWORD_CREDENTIAL"; + } + + public final class CredentialDescription implements android.os.Parcelable { + ctor public CredentialDescription(@NonNull String, @NonNull java.util.Set, @NonNull java.util.List); + method public int describeContents(); + method @NonNull public java.util.List getCredentialEntries(); + method @NonNull public java.util.Set getSupportedElementKeys(); + method @NonNull public String getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CredentialManager { + method public void clearCredentialState(@NonNull android.credentials.ClearCredentialStateRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void createCredential(@NonNull android.content.Context, @NonNull android.credentials.CreateCredentialRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void getCredential(@NonNull android.content.Context, @NonNull android.credentials.GetCredentialRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void getCredential(@NonNull android.content.Context, @NonNull android.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public boolean isEnabledCredentialProviderService(@NonNull android.content.ComponentName); + method public void prepareGetCredential(@NonNull android.credentials.GetCredentialRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void registerCredentialDescription(@NonNull android.credentials.RegisterCredentialDescriptionRequest); + method public void unregisterCredentialDescription(@NonNull android.credentials.UnregisterCredentialDescriptionRequest); + } + + public final class CredentialOption implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.Set getAllowedProviders(); + method @NonNull public android.os.Bundle getCandidateQueryData(); + method @NonNull public android.os.Bundle getCredentialRetrievalData(); + method @NonNull public String getType(); + method public boolean isSystemProviderRequired(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String SUPPORTED_ELEMENT_KEYS = "android.credentials.GetCredentialOption.SUPPORTED_ELEMENT_KEYS"; + } + + public static final class CredentialOption.Builder { + ctor public CredentialOption.Builder(@NonNull String, @NonNull android.os.Bundle, @NonNull android.os.Bundle); + method @NonNull public android.credentials.CredentialOption.Builder addAllowedProvider(@NonNull android.content.ComponentName); + method @NonNull public android.credentials.CredentialOption build(); + method @NonNull public android.credentials.CredentialOption.Builder setAllowedProviders(@NonNull java.util.Set); + method @NonNull public android.credentials.CredentialOption.Builder setIsSystemProviderRequired(boolean); + } + + public class GetCredentialException extends java.lang.Exception { + ctor public GetCredentialException(@NonNull String, @Nullable String); + ctor public GetCredentialException(@NonNull String, @Nullable String, @Nullable Throwable); + ctor public GetCredentialException(@NonNull String, @Nullable Throwable); + ctor public GetCredentialException(@NonNull String); + method @NonNull public String getType(); + field @NonNull public static final String TYPE_INTERRUPTED = "android.credentials.GetCredentialException.TYPE_INTERRUPTED"; + field @NonNull public static final String TYPE_NO_CREDENTIAL = "android.credentials.GetCredentialException.TYPE_NO_CREDENTIAL"; + field @NonNull public static final String TYPE_UNKNOWN = "android.credentials.GetCredentialException.TYPE_UNKNOWN"; + field @NonNull public static final String TYPE_USER_CANCELED = "android.credentials.GetCredentialException.TYPE_USER_CANCELED"; + } + + public final class GetCredentialRequest implements android.os.Parcelable { + method public boolean alwaysSendAppInfoToProvider(); + method public int describeContents(); + method @NonNull public java.util.List getCredentialOptions(); + method @NonNull public android.os.Bundle getData(); + method @Nullable public String getOrigin(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class GetCredentialRequest.Builder { + ctor public GetCredentialRequest.Builder(@NonNull android.os.Bundle); + method @NonNull public android.credentials.GetCredentialRequest.Builder addCredentialOption(@NonNull android.credentials.CredentialOption); + method @NonNull public android.credentials.GetCredentialRequest build(); + method @NonNull public android.credentials.GetCredentialRequest.Builder setAlwaysSendAppInfoToProvider(boolean); + method @NonNull public android.credentials.GetCredentialRequest.Builder setCredentialOptions(@NonNull java.util.List); + method @NonNull @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_SET_ORIGIN) public android.credentials.GetCredentialRequest.Builder setOrigin(@NonNull String); + } + + public final class GetCredentialResponse implements android.os.Parcelable { + ctor public GetCredentialResponse(@NonNull android.credentials.Credential); + method public int describeContents(); + method @NonNull public android.credentials.Credential getCredential(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class PrepareGetCredentialResponse { + method @NonNull public android.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle getPendingGetCredentialHandle(); + method @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS) public boolean hasAuthenticationResults(); + method @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS) public boolean hasCredentialResults(@NonNull String); + method @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS) public boolean hasRemoteResults(); + } + + public static final class PrepareGetCredentialResponse.PendingGetCredentialHandle { + } + + public final class RegisterCredentialDescriptionRequest implements android.os.Parcelable { + ctor public RegisterCredentialDescriptionRequest(@NonNull android.credentials.CredentialDescription); + ctor public RegisterCredentialDescriptionRequest(@NonNull java.util.Set); + method public int describeContents(); + method @NonNull public java.util.Set getCredentialDescriptions(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class UnregisterCredentialDescriptionRequest implements android.os.Parcelable { + ctor public UnregisterCredentialDescriptionRequest(@NonNull android.credentials.CredentialDescription); + ctor public UnregisterCredentialDescriptionRequest(@NonNull java.util.Set); + method public int describeContents(); + method @NonNull public java.util.Set getCredentialDescriptions(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.database { + + public abstract class AbstractCursor implements android.database.CrossProcessCursor { + ctor public AbstractCursor(); + method protected void checkPosition(); + method public void close(); + method public void copyStringToBuffer(int, android.database.CharArrayBuffer); + method public void deactivate(); + method public void fillWindow(int, android.database.CursorWindow); + method protected void finalize(); + method public byte[] getBlob(int); + method public int getColumnCount(); + method public int getColumnIndex(String); + method public int getColumnIndexOrThrow(String); + method public String getColumnName(int); + method public android.os.Bundle getExtras(); + method public android.net.Uri getNotificationUri(); + method public java.util.List getNotificationUris(); + method public final int getPosition(); + method public int getType(int); + method @Deprecated protected Object getUpdatedField(int); + method public boolean getWantsAllOnMoveCalls(); + method public android.database.CursorWindow getWindow(); + method public final boolean isAfterLast(); + method public final boolean isBeforeFirst(); + method public boolean isClosed(); + method @Deprecated protected boolean isFieldUpdated(int); + method public final boolean isFirst(); + method public final boolean isLast(); + method public final boolean move(int); + method public final boolean moveToFirst(); + method public final boolean moveToLast(); + method public final boolean moveToNext(); + method public final boolean moveToPosition(int); + method public final boolean moveToPrevious(); + method protected void onChange(boolean); + method public boolean onMove(int, int); + method public void registerContentObserver(android.database.ContentObserver); + method public void registerDataSetObserver(android.database.DataSetObserver); + method public boolean requery(); + method public android.os.Bundle respond(android.os.Bundle); + method public void setExtras(android.os.Bundle); + method public void setNotificationUri(android.content.ContentResolver, android.net.Uri); + method public void setNotificationUris(@NonNull android.content.ContentResolver, @NonNull java.util.List); + method public void unregisterContentObserver(android.database.ContentObserver); + method public void unregisterDataSetObserver(android.database.DataSetObserver); + field @Deprecated protected boolean mClosed; + field @Deprecated protected android.content.ContentResolver mContentResolver; + field @Deprecated protected int mPos; + } + + protected static class AbstractCursor.SelfContentObserver extends android.database.ContentObserver { + ctor public AbstractCursor.SelfContentObserver(android.database.AbstractCursor); + } + + public abstract class AbstractWindowedCursor extends android.database.AbstractCursor { + ctor public AbstractWindowedCursor(); + method public double getDouble(int); + method public float getFloat(int); + method public int getInt(int); + method public long getLong(int); + method public short getShort(int); + method public String getString(int); + method public boolean hasWindow(); + method @Deprecated public boolean isBlob(int); + method @Deprecated public boolean isFloat(int); + method @Deprecated public boolean isLong(int); + method public boolean isNull(int); + method @Deprecated public boolean isString(int); + method public void setWindow(android.database.CursorWindow); + field protected android.database.CursorWindow mWindow; + } + + public final class CharArrayBuffer { + ctor public CharArrayBuffer(int); + ctor public CharArrayBuffer(char[]); + field public char[] data; + field public int sizeCopied; + } + + public class ContentObservable extends android.database.Observable { + ctor public ContentObservable(); + method @Deprecated public void dispatchChange(boolean); + method public void dispatchChange(boolean, android.net.Uri); + method @Deprecated public void notifyChange(boolean); + method public void registerObserver(android.database.ContentObserver); + } + + public abstract class ContentObserver { + ctor public ContentObserver(android.os.Handler); + method public boolean deliverSelfNotifications(); + method @Deprecated public final void dispatchChange(boolean); + method public final void dispatchChange(boolean, @Nullable android.net.Uri); + method public final void dispatchChange(boolean, @Nullable android.net.Uri, int); + method public final void dispatchChange(boolean, @NonNull java.util.Collection, int); + method public void onChange(boolean); + method public void onChange(boolean, @Nullable android.net.Uri); + method public void onChange(boolean, @Nullable android.net.Uri, int); + method public void onChange(boolean, @NonNull java.util.Collection, int); + } + + public interface CrossProcessCursor extends android.database.Cursor { + method public void fillWindow(int, android.database.CursorWindow); + method public android.database.CursorWindow getWindow(); + method public boolean onMove(int, int); + } + + public class CrossProcessCursorWrapper extends android.database.CursorWrapper implements android.database.CrossProcessCursor { + ctor public CrossProcessCursorWrapper(android.database.Cursor); + method public void fillWindow(int, android.database.CursorWindow); + method public android.database.CursorWindow getWindow(); + method public boolean onMove(int, int); + } + + public interface Cursor extends java.io.Closeable { + method public void close(); + method public void copyStringToBuffer(@IntRange(from=0) int, android.database.CharArrayBuffer); + method @Deprecated public void deactivate(); + method public byte[] getBlob(@IntRange(from=0) int); + method @IntRange(from=0) public int getColumnCount(); + method @IntRange(from=0xffffffff) public int getColumnIndex(String); + method @IntRange(from=0) public int getColumnIndexOrThrow(String) throws java.lang.IllegalArgumentException; + method public String getColumnName(@IntRange(from=0) int); + method public String[] getColumnNames(); + method @IntRange(from=0) public int getCount(); + method public double getDouble(@IntRange(from=0) int); + method public android.os.Bundle getExtras(); + method public float getFloat(@IntRange(from=0) int); + method public int getInt(@IntRange(from=0) int); + method public long getLong(@IntRange(from=0) int); + method public android.net.Uri getNotificationUri(); + method @Nullable public default java.util.List getNotificationUris(); + method @IntRange(from=0xffffffff) public int getPosition(); + method public short getShort(@IntRange(from=0) int); + method public String getString(@IntRange(from=0) int); + method public int getType(@IntRange(from=0) int); + method public boolean getWantsAllOnMoveCalls(); + method public boolean isAfterLast(); + method public boolean isBeforeFirst(); + method public boolean isClosed(); + method public boolean isFirst(); + method public boolean isLast(); + method public boolean isNull(@IntRange(from=0) int); + method public boolean move(int); + method public boolean moveToFirst(); + method public boolean moveToLast(); + method public boolean moveToNext(); + method public boolean moveToPosition(@IntRange(from=0xffffffff) int); + method public boolean moveToPrevious(); + method public void registerContentObserver(android.database.ContentObserver); + method public void registerDataSetObserver(android.database.DataSetObserver); + method @Deprecated public boolean requery(); + method public android.os.Bundle respond(android.os.Bundle); + method public void setExtras(android.os.Bundle); + method public void setNotificationUri(android.content.ContentResolver, android.net.Uri); + method public default void setNotificationUris(@NonNull android.content.ContentResolver, @NonNull java.util.List); + method public void unregisterContentObserver(android.database.ContentObserver); + method public void unregisterDataSetObserver(android.database.DataSetObserver); + field public static final int FIELD_TYPE_BLOB = 4; // 0x4 + field public static final int FIELD_TYPE_FLOAT = 2; // 0x2 + field public static final int FIELD_TYPE_INTEGER = 1; // 0x1 + field public static final int FIELD_TYPE_NULL = 0; // 0x0 + field public static final int FIELD_TYPE_STRING = 3; // 0x3 + } + + public class CursorIndexOutOfBoundsException extends java.lang.IndexOutOfBoundsException { + ctor public CursorIndexOutOfBoundsException(int, int); + ctor public CursorIndexOutOfBoundsException(String); + } + + public final class CursorJoiner implements java.lang.Iterable java.util.Iterator { + ctor public CursorJoiner(android.database.Cursor, String[], android.database.Cursor, String[]); + method public boolean hasNext(); + method public java.util.Iterator iterator(); + method public android.database.CursorJoiner.Result next(); + method public void remove(); + } + + public enum CursorJoiner.Result { + enum_constant public static final android.database.CursorJoiner.Result BOTH; + enum_constant public static final android.database.CursorJoiner.Result LEFT; + enum_constant public static final android.database.CursorJoiner.Result RIGHT; + } + + public class CursorWindow extends android.database.sqlite.SQLiteClosable implements android.os.Parcelable { + ctor public CursorWindow(String); + ctor public CursorWindow(String, long); + ctor @Deprecated public CursorWindow(boolean); + method public boolean allocRow(); + method public void clear(); + method public void copyStringToBuffer(@IntRange(from=0) int, @IntRange(from=0) int, android.database.CharArrayBuffer); + method public int describeContents(); + method public void freeLastRow(); + method public byte[] getBlob(@IntRange(from=0) int, @IntRange(from=0) int); + method public double getDouble(@IntRange(from=0) int, @IntRange(from=0) int); + method public float getFloat(@IntRange(from=0) int, @IntRange(from=0) int); + method public int getInt(@IntRange(from=0) int, @IntRange(from=0) int); + method public long getLong(@IntRange(from=0) int, @IntRange(from=0) int); + method @IntRange(from=0) public int getNumRows(); + method public short getShort(@IntRange(from=0) int, @IntRange(from=0) int); + method @IntRange(from=0) public int getStartPosition(); + method public String getString(@IntRange(from=0) int, @IntRange(from=0) int); + method public int getType(@IntRange(from=0) int, @IntRange(from=0) int); + method @Deprecated public boolean isBlob(@IntRange(from=0) int, @IntRange(from=0) int); + method @Deprecated public boolean isFloat(@IntRange(from=0) int, @IntRange(from=0) int); + method @Deprecated public boolean isLong(@IntRange(from=0) int, @IntRange(from=0) int); + method @Deprecated public boolean isNull(@IntRange(from=0) int, @IntRange(from=0) int); + method @Deprecated public boolean isString(@IntRange(from=0) int, @IntRange(from=0) int); + method public static android.database.CursorWindow newFromParcel(android.os.Parcel); + method protected void onAllReferencesReleased(); + method public boolean putBlob(byte[], @IntRange(from=0) int, @IntRange(from=0) int); + method public boolean putDouble(double, @IntRange(from=0) int, @IntRange(from=0) int); + method public boolean putLong(long, @IntRange(from=0) int, @IntRange(from=0) int); + method public boolean putNull(@IntRange(from=0) int, @IntRange(from=0) int); + method public boolean putString(String, @IntRange(from=0) int, @IntRange(from=0) int); + method public boolean setNumColumns(@IntRange(from=0) int); + method public void setStartPosition(@IntRange(from=0) int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class CursorWindowAllocationException extends java.lang.RuntimeException { + ctor public CursorWindowAllocationException(@NonNull String); + } + + public class CursorWrapper implements android.database.Cursor { + ctor public CursorWrapper(android.database.Cursor); + method public void close(); + method public void copyStringToBuffer(int, android.database.CharArrayBuffer); + method @Deprecated public void deactivate(); + method public byte[] getBlob(int); + method public int getColumnCount(); + method public int getColumnIndex(String); + method public int getColumnIndexOrThrow(String) throws java.lang.IllegalArgumentException; + method public String getColumnName(int); + method public String[] getColumnNames(); + method public int getCount(); + method public double getDouble(int); + method public android.os.Bundle getExtras(); + method public float getFloat(int); + method public int getInt(int); + method public long getLong(int); + method public android.net.Uri getNotificationUri(); + method public java.util.List getNotificationUris(); + method public int getPosition(); + method public short getShort(int); + method public String getString(int); + method public int getType(int); + method public boolean getWantsAllOnMoveCalls(); + method public android.database.Cursor getWrappedCursor(); + method public boolean isAfterLast(); + method public boolean isBeforeFirst(); + method public boolean isClosed(); + method public boolean isFirst(); + method public boolean isLast(); + method public boolean isNull(int); + method public boolean move(int); + method public boolean moveToFirst(); + method public boolean moveToLast(); + method public boolean moveToNext(); + method public boolean moveToPosition(int); + method public boolean moveToPrevious(); + method public void registerContentObserver(android.database.ContentObserver); + method public void registerDataSetObserver(android.database.DataSetObserver); + method @Deprecated public boolean requery(); + method public android.os.Bundle respond(android.os.Bundle); + method public void setExtras(android.os.Bundle); + method public void setNotificationUri(android.content.ContentResolver, android.net.Uri); + method public void setNotificationUris(android.content.ContentResolver, java.util.List); + method public void unregisterContentObserver(android.database.ContentObserver); + method public void unregisterDataSetObserver(android.database.DataSetObserver); + } + + public class DataSetObservable extends android.database.Observable { + ctor public DataSetObservable(); + method public void notifyChanged(); + method public void notifyInvalidated(); + } + + public abstract class DataSetObserver { + ctor public DataSetObserver(); + method public void onChanged(); + method public void onInvalidated(); + } + + public interface DatabaseErrorHandler { + method public void onCorruption(android.database.sqlite.SQLiteDatabase); + } + + public class DatabaseUtils { + ctor public DatabaseUtils(); + method public static void appendEscapedSQLString(StringBuilder, String); + method public static String[] appendSelectionArgs(String[], String[]); + method public static final void appendValueToSql(StringBuilder, Object); + method public static void bindObjectToProgram(android.database.sqlite.SQLiteProgram, int, Object); + method public static android.os.ParcelFileDescriptor blobFileDescriptorForQuery(android.database.sqlite.SQLiteDatabase, String, String[]); + method public static android.os.ParcelFileDescriptor blobFileDescriptorForQuery(android.database.sqlite.SQLiteStatement, String[]); + method public static String concatenateWhere(String, String); + method public static void createDbFromSqlStatements(android.content.Context, String, int, String); + method public static void cursorDoubleToContentValues(android.database.Cursor, String, android.content.ContentValues, String); + method public static void cursorDoubleToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); + method public static void cursorDoubleToCursorValues(android.database.Cursor, String, android.content.ContentValues); + method public static void cursorFloatToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); + method public static void cursorIntToContentValues(android.database.Cursor, String, android.content.ContentValues); + method public static void cursorIntToContentValues(android.database.Cursor, String, android.content.ContentValues, String); + method public static void cursorIntToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); + method public static void cursorLongToContentValues(android.database.Cursor, String, android.content.ContentValues); + method public static void cursorLongToContentValues(android.database.Cursor, String, android.content.ContentValues, String); + method public static void cursorLongToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); + method public static void cursorRowToContentValues(android.database.Cursor, android.content.ContentValues); + method public static void cursorShortToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); + method public static void cursorStringToContentValues(android.database.Cursor, String, android.content.ContentValues); + method public static void cursorStringToContentValues(android.database.Cursor, String, android.content.ContentValues, String); + method public static void cursorStringToContentValuesIfPresent(android.database.Cursor, android.content.ContentValues, String); + method public static void cursorStringToInsertHelper(android.database.Cursor, String, android.database.DatabaseUtils.InsertHelper, int); + method public static void dumpCurrentRow(android.database.Cursor); + method public static void dumpCurrentRow(android.database.Cursor, java.io.PrintStream); + method public static void dumpCurrentRow(android.database.Cursor, StringBuilder); + method public static String dumpCurrentRowToString(android.database.Cursor); + method public static void dumpCursor(android.database.Cursor); + method public static void dumpCursor(android.database.Cursor, java.io.PrintStream); + method public static void dumpCursor(android.database.Cursor, StringBuilder); + method public static String dumpCursorToString(android.database.Cursor); + method public static String getCollationKey(String); + method public static String getHexCollationKey(String); + method public static int getSqlStatementType(String); + method public static long longForQuery(android.database.sqlite.SQLiteDatabase, String, String[]); + method public static long longForQuery(android.database.sqlite.SQLiteStatement, String[]); + method public static long queryNumEntries(android.database.sqlite.SQLiteDatabase, String); + method public static long queryNumEntries(android.database.sqlite.SQLiteDatabase, String, String); + method public static long queryNumEntries(android.database.sqlite.SQLiteDatabase, String, String, String[]); + method public static final void readExceptionFromParcel(android.os.Parcel); + method public static void readExceptionWithFileNotFoundExceptionFromParcel(android.os.Parcel) throws java.io.FileNotFoundException; + method public static void readExceptionWithOperationApplicationExceptionFromParcel(android.os.Parcel) throws android.content.OperationApplicationException; + method public static String sqlEscapeString(String); + method public static String stringForQuery(android.database.sqlite.SQLiteDatabase, String, String[]); + method public static String stringForQuery(android.database.sqlite.SQLiteStatement, String[]); + method public static final void writeExceptionToParcel(android.os.Parcel, Exception); + field public static final int STATEMENT_ABORT = 6; // 0x6 + field public static final int STATEMENT_ATTACH = 3; // 0x3 + field public static final int STATEMENT_BEGIN = 4; // 0x4 + field public static final int STATEMENT_COMMIT = 5; // 0x5 + field public static final int STATEMENT_DDL = 8; // 0x8 + field public static final int STATEMENT_OTHER = 99; // 0x63 + field public static final int STATEMENT_PRAGMA = 7; // 0x7 + field public static final int STATEMENT_SELECT = 1; // 0x1 + field public static final int STATEMENT_UNPREPARED = 9; // 0x9 + field public static final int STATEMENT_UPDATE = 2; // 0x2 + } + + @Deprecated public static class DatabaseUtils.InsertHelper { + ctor @Deprecated public DatabaseUtils.InsertHelper(android.database.sqlite.SQLiteDatabase, String); + method @Deprecated public void bind(int, double); + method @Deprecated public void bind(int, float); + method @Deprecated public void bind(int, long); + method @Deprecated public void bind(int, int); + method @Deprecated public void bind(int, boolean); + method @Deprecated public void bind(int, byte[]); + method @Deprecated public void bind(int, String); + method @Deprecated public void bindNull(int); + method @Deprecated public void close(); + method @Deprecated public long execute(); + method @Deprecated public int getColumnIndex(String); + method @Deprecated public long insert(android.content.ContentValues); + method @Deprecated public void prepareForInsert(); + method @Deprecated public void prepareForReplace(); + method @Deprecated public long replace(android.content.ContentValues); + } + + public final class DefaultDatabaseErrorHandler implements android.database.DatabaseErrorHandler { + ctor public DefaultDatabaseErrorHandler(); + method public void onCorruption(android.database.sqlite.SQLiteDatabase); + } + + public class MatrixCursor extends android.database.AbstractCursor { + ctor public MatrixCursor(String[], int); + ctor public MatrixCursor(String[]); + method public void addRow(Object[]); + method public void addRow(Iterable); + method public String[] getColumnNames(); + method public int getCount(); + method public double getDouble(int); + method public float getFloat(int); + method public int getInt(int); + method public long getLong(int); + method public short getShort(int); + method public String getString(int); + method public boolean isNull(int); + method public android.database.MatrixCursor.RowBuilder newRow(); + } + + public class MatrixCursor.RowBuilder { + method public android.database.MatrixCursor.RowBuilder add(Object); + method public android.database.MatrixCursor.RowBuilder add(String, Object); + } + + public class MergeCursor extends android.database.AbstractCursor { + ctor public MergeCursor(android.database.Cursor[]); + method public String[] getColumnNames(); + method public int getCount(); + method public double getDouble(int); + method public float getFloat(int); + method public int getInt(int); + method public long getLong(int); + method public short getShort(int); + method public String getString(int); + method public boolean isNull(int); + } + + public abstract class Observable { + ctor public Observable(); + method public void registerObserver(T); + method public void unregisterAll(); + method public void unregisterObserver(T); + field protected final java.util.ArrayList mObservers; + } + + public class SQLException extends java.lang.RuntimeException { + ctor public SQLException(); + ctor public SQLException(String); + ctor public SQLException(String, Throwable); + } + + public class StaleDataException extends java.lang.RuntimeException { + ctor public StaleDataException(); + ctor public StaleDataException(String); + } + +} + +package android.database.sqlite { + + public class SQLiteAbortException extends android.database.sqlite.SQLiteException { + ctor public SQLiteAbortException(); + ctor public SQLiteAbortException(String); + } + + public class SQLiteAccessPermException extends android.database.sqlite.SQLiteException { + ctor public SQLiteAccessPermException(); + ctor public SQLiteAccessPermException(String); + } + + public class SQLiteBindOrColumnIndexOutOfRangeException extends android.database.sqlite.SQLiteException { + ctor public SQLiteBindOrColumnIndexOutOfRangeException(); + ctor public SQLiteBindOrColumnIndexOutOfRangeException(String); + } + + public class SQLiteBlobTooBigException extends android.database.sqlite.SQLiteException { + ctor public SQLiteBlobTooBigException(); + ctor public SQLiteBlobTooBigException(String); + } + + public class SQLiteCantOpenDatabaseException extends android.database.sqlite.SQLiteException { + ctor public SQLiteCantOpenDatabaseException(); + ctor public SQLiteCantOpenDatabaseException(String); + } + + public abstract class SQLiteClosable implements java.io.Closeable { + ctor public SQLiteClosable(); + method public void acquireReference(); + method public void close(); + method protected abstract void onAllReferencesReleased(); + method @Deprecated protected void onAllReferencesReleasedFromContainer(); + method public void releaseReference(); + method @Deprecated public void releaseReferenceFromContainer(); + } + + public class SQLiteConstraintException extends android.database.sqlite.SQLiteException { + ctor public SQLiteConstraintException(); + ctor public SQLiteConstraintException(String); + } + + public class SQLiteCursor extends android.database.AbstractWindowedCursor { + ctor @Deprecated public SQLiteCursor(android.database.sqlite.SQLiteDatabase, android.database.sqlite.SQLiteCursorDriver, String, android.database.sqlite.SQLiteQuery); + ctor public SQLiteCursor(android.database.sqlite.SQLiteCursorDriver, String, android.database.sqlite.SQLiteQuery); + method public String[] getColumnNames(); + method public int getCount(); + method public android.database.sqlite.SQLiteDatabase getDatabase(); + method public void setFillWindowForwardOnly(boolean); + method public void setSelectionArguments(String[]); + } + + public interface SQLiteCursorDriver { + method public void cursorClosed(); + method public void cursorDeactivated(); + method public void cursorRequeried(android.database.Cursor); + method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase.CursorFactory, String[]); + method public void setBindArguments(String[]); + } + + public final class SQLiteDatabase extends android.database.sqlite.SQLiteClosable { + method public void beginTransaction(); + method public void beginTransactionNonExclusive(); + method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public void beginTransactionReadOnly(); + method public void beginTransactionWithListener(@Nullable android.database.sqlite.SQLiteTransactionListener); + method public void beginTransactionWithListenerNonExclusive(@Nullable android.database.sqlite.SQLiteTransactionListener); + method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public void beginTransactionWithListenerReadOnly(@Nullable android.database.sqlite.SQLiteTransactionListener); + method public android.database.sqlite.SQLiteStatement compileStatement(String) throws android.database.SQLException; + method @NonNull public static android.database.sqlite.SQLiteDatabase create(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); + method @NonNull public static android.database.sqlite.SQLiteDatabase createInMemory(@NonNull android.database.sqlite.SQLiteDatabase.OpenParams); + method @FlaggedApi("android.database.sqlite.sqlite_apis_35") @NonNull public android.database.sqlite.SQLiteRawStatement createRawStatement(@NonNull String); + method public int delete(@NonNull String, @Nullable String, @Nullable String[]); + method public static boolean deleteDatabase(@NonNull java.io.File); + method public void disableWriteAheadLogging(); + method public boolean enableWriteAheadLogging(); + method public void endTransaction(); + method public void execPerConnectionSQL(@NonNull String, @Nullable Object[]) throws android.database.SQLException; + method public void execSQL(String) throws android.database.SQLException; + method public void execSQL(@NonNull String, @NonNull Object[]) throws android.database.SQLException; + method public static String findEditTable(String); + method public java.util.List> getAttachedDbs(); + method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public long getLastChangedRowCount(); + method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public long getLastInsertRowId(); + method public long getMaximumSize(); + method public long getPageSize(); + method public String getPath(); + method @Deprecated public java.util.Map getSyncedTables(); + method @FlaggedApi("android.database.sqlite.sqlite_apis_35") public long getTotalChangedRowCount(); + method public int getVersion(); + method public boolean inTransaction(); + method public long insert(@NonNull String, @Nullable String, @Nullable android.content.ContentValues); + method public long insertOrThrow(@NonNull String, @Nullable String, @Nullable android.content.ContentValues) throws android.database.SQLException; + method public long insertWithOnConflict(@NonNull String, @Nullable String, @Nullable android.content.ContentValues, int); + method public boolean isDatabaseIntegrityOk(); + method public boolean isDbLockedByCurrentThread(); + method @Deprecated public boolean isDbLockedByOtherThreads(); + method public boolean isOpen(); + method public boolean isReadOnly(); + method public boolean isWriteAheadLoggingEnabled(); + method @Deprecated public void markTableSyncable(String, String); + method @Deprecated public void markTableSyncable(String, String, String); + method public boolean needUpgrade(int); + method protected void onAllReferencesReleased(); + method public static android.database.sqlite.SQLiteDatabase openDatabase(@NonNull String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, int); + method public static android.database.sqlite.SQLiteDatabase openDatabase(@NonNull java.io.File, @NonNull android.database.sqlite.SQLiteDatabase.OpenParams); + method public static android.database.sqlite.SQLiteDatabase openDatabase(@NonNull String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, int, @Nullable android.database.DatabaseErrorHandler); + method public static android.database.sqlite.SQLiteDatabase openOrCreateDatabase(@NonNull java.io.File, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); + method public static android.database.sqlite.SQLiteDatabase openOrCreateDatabase(@NonNull String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); + method public static android.database.sqlite.SQLiteDatabase openOrCreateDatabase(@NonNull String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, @Nullable android.database.DatabaseErrorHandler); + method @NonNull public android.database.Cursor query(boolean, @NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String); + method @NonNull public android.database.Cursor query(boolean, @NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String, @Nullable android.os.CancellationSignal); + method @NonNull public android.database.Cursor query(@NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String); + method @NonNull public android.database.Cursor query(@NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String); + method @NonNull public android.database.Cursor queryWithFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, boolean, @NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String); + method @NonNull public android.database.Cursor queryWithFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, boolean, @NonNull String, @Nullable String[], @Nullable String, @Nullable String[], @Nullable String, @Nullable String, @Nullable String, @Nullable String, @Nullable android.os.CancellationSignal); + method @NonNull public android.database.Cursor rawQuery(@NonNull String, @Nullable String[]); + method @NonNull public android.database.Cursor rawQuery(@NonNull String, @Nullable String[], @Nullable android.os.CancellationSignal); + method @NonNull public android.database.Cursor rawQueryWithFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, @NonNull String, @Nullable String[], @NonNull String); + method @NonNull public android.database.Cursor rawQueryWithFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, @NonNull String, @Nullable String[], @NonNull String, @Nullable android.os.CancellationSignal); + method public static int releaseMemory(); + method public long replace(@NonNull String, @Nullable String, @Nullable android.content.ContentValues); + method public long replaceOrThrow(@NonNull String, @Nullable String, @Nullable android.content.ContentValues) throws android.database.SQLException; + method public void setCustomAggregateFunction(@NonNull String, @NonNull java.util.function.BinaryOperator) throws android.database.sqlite.SQLiteException; + method public void setCustomScalarFunction(@NonNull String, @NonNull java.util.function.UnaryOperator) throws android.database.sqlite.SQLiteException; + method public void setForeignKeyConstraintsEnabled(boolean); + method public void setLocale(java.util.Locale); + method @Deprecated public void setLockingEnabled(boolean); + method public void setMaxSqlCacheSize(int); + method public long setMaximumSize(long); + method public void setPageSize(long); + method public void setTransactionSuccessful(); + method public void setVersion(int); + method public int update(@NonNull String, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[]); + method public int updateWithOnConflict(@NonNull String, @Nullable android.content.ContentValues, @Nullable String, @Nullable String[], int); + method public void validateSql(@NonNull String, @Nullable android.os.CancellationSignal); + method @Deprecated public boolean yieldIfContended(); + method public boolean yieldIfContendedSafely(); + method public boolean yieldIfContendedSafely(long); + field public static final int CONFLICT_ABORT = 2; // 0x2 + field public static final int CONFLICT_FAIL = 3; // 0x3 + field public static final int CONFLICT_IGNORE = 4; // 0x4 + field public static final int CONFLICT_NONE = 0; // 0x0 + field public static final int CONFLICT_REPLACE = 5; // 0x5 + field public static final int CONFLICT_ROLLBACK = 1; // 0x1 + field public static final int CREATE_IF_NECESSARY = 268435456; // 0x10000000 + field public static final int ENABLE_WRITE_AHEAD_LOGGING = 536870912; // 0x20000000 + field public static final String JOURNAL_MODE_DELETE = "DELETE"; + field public static final String JOURNAL_MODE_MEMORY = "MEMORY"; + field public static final String JOURNAL_MODE_OFF = "OFF"; + field public static final String JOURNAL_MODE_PERSIST = "PERSIST"; + field public static final String JOURNAL_MODE_TRUNCATE = "TRUNCATE"; + field public static final String JOURNAL_MODE_WAL = "WAL"; + field public static final int MAX_SQL_CACHE_SIZE = 100; // 0x64 + field public static final int NO_LOCALIZED_COLLATORS = 16; // 0x10 + field public static final int OPEN_READONLY = 1; // 0x1 + field public static final int OPEN_READWRITE = 0; // 0x0 + field public static final int SQLITE_MAX_LIKE_PATTERN_LENGTH = 50000; // 0xc350 + field public static final String SYNC_MODE_EXTRA = "EXTRA"; + field public static final String SYNC_MODE_FULL = "FULL"; + field public static final String SYNC_MODE_NORMAL = "NORMAL"; + field public static final String SYNC_MODE_OFF = "OFF"; + } + + public static interface SQLiteDatabase.CursorFactory { + method public android.database.Cursor newCursor(android.database.sqlite.SQLiteDatabase, android.database.sqlite.SQLiteCursorDriver, String, android.database.sqlite.SQLiteQuery); + } + + public static final class SQLiteDatabase.OpenParams { + method @Nullable public android.database.sqlite.SQLiteDatabase.CursorFactory getCursorFactory(); + method @Nullable public android.database.DatabaseErrorHandler getErrorHandler(); + method public long getIdleConnectionTimeout(); + method @Nullable public String getJournalMode(); + method @IntRange(from=0xffffffff) public int getLookasideSlotCount(); + method @IntRange(from=0xffffffff) public int getLookasideSlotSize(); + method public int getOpenFlags(); + method @Nullable public String getSynchronousMode(); + } + + public static final class SQLiteDatabase.OpenParams.Builder { + ctor public SQLiteDatabase.OpenParams.Builder(); + ctor public SQLiteDatabase.OpenParams.Builder(android.database.sqlite.SQLiteDatabase.OpenParams); + method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder addOpenFlags(int); + method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams build(); + method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder removeOpenFlags(int); + method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setCursorFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); + method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setErrorHandler(@Nullable android.database.DatabaseErrorHandler); + method @Deprecated @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setIdleConnectionTimeout(@IntRange(from=0) long); + method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setJournalMode(@NonNull String); + method public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setLookasideConfig(@IntRange(from=0) int, @IntRange(from=0) int); + method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setOpenFlags(int); + method @NonNull public android.database.sqlite.SQLiteDatabase.OpenParams.Builder setSynchronousMode(@NonNull String); + } + + public class SQLiteDatabaseCorruptException extends android.database.sqlite.SQLiteException { + ctor public SQLiteDatabaseCorruptException(); + ctor public SQLiteDatabaseCorruptException(String); + } + + public class SQLiteDatabaseLockedException extends android.database.sqlite.SQLiteException { + ctor public SQLiteDatabaseLockedException(); + ctor public SQLiteDatabaseLockedException(String); + } + + public class SQLiteDatatypeMismatchException extends android.database.sqlite.SQLiteException { + ctor public SQLiteDatatypeMismatchException(); + ctor public SQLiteDatatypeMismatchException(String); + } + + public class SQLiteDiskIOException extends android.database.sqlite.SQLiteException { + ctor public SQLiteDiskIOException(); + ctor public SQLiteDiskIOException(String); + } + + public class SQLiteDoneException extends android.database.sqlite.SQLiteException { + ctor public SQLiteDoneException(); + ctor public SQLiteDoneException(String); + } + + public class SQLiteException extends android.database.SQLException { + ctor public SQLiteException(); + ctor public SQLiteException(String); + ctor public SQLiteException(String, Throwable); + } + + public class SQLiteFullException extends android.database.sqlite.SQLiteException { + ctor public SQLiteFullException(); + ctor public SQLiteFullException(String); + } + + public class SQLiteMisuseException extends android.database.sqlite.SQLiteException { + ctor public SQLiteMisuseException(); + ctor public SQLiteMisuseException(String); + } + + public abstract class SQLiteOpenHelper implements java.lang.AutoCloseable { + ctor public SQLiteOpenHelper(@Nullable android.content.Context, @Nullable String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, int); + ctor public SQLiteOpenHelper(@Nullable android.content.Context, @Nullable String, @Nullable android.database.sqlite.SQLiteDatabase.CursorFactory, int, @Nullable android.database.DatabaseErrorHandler); + ctor public SQLiteOpenHelper(@Nullable android.content.Context, @Nullable String, int, @NonNull android.database.sqlite.SQLiteDatabase.OpenParams); + method public void close(); + method public String getDatabaseName(); + method public android.database.sqlite.SQLiteDatabase getReadableDatabase(); + method public android.database.sqlite.SQLiteDatabase getWritableDatabase(); + method public void onConfigure(android.database.sqlite.SQLiteDatabase); + method public abstract void onCreate(android.database.sqlite.SQLiteDatabase); + method public void onDowngrade(android.database.sqlite.SQLiteDatabase, int, int); + method public void onOpen(android.database.sqlite.SQLiteDatabase); + method public abstract void onUpgrade(android.database.sqlite.SQLiteDatabase, int, int); + method @Deprecated public void setIdleConnectionTimeout(@IntRange(from=0) long); + method public void setLookasideConfig(@IntRange(from=0) int, @IntRange(from=0) int); + method public void setOpenParams(@NonNull android.database.sqlite.SQLiteDatabase.OpenParams); + method public void setWriteAheadLoggingEnabled(boolean); + } + + public class SQLiteOutOfMemoryException extends android.database.sqlite.SQLiteException { + ctor public SQLiteOutOfMemoryException(); + ctor public SQLiteOutOfMemoryException(String); + } + + public abstract class SQLiteProgram extends android.database.sqlite.SQLiteClosable { + method public void bindAllArgsAsStrings(String[]); + method public void bindBlob(int, byte[]); + method public void bindDouble(int, double); + method public void bindLong(int, long); + method public void bindNull(int); + method public void bindString(int, String); + method public void clearBindings(); + method @Deprecated public final int getUniqueId(); + method protected void onAllReferencesReleased(); + } + + public final class SQLiteQuery extends android.database.sqlite.SQLiteProgram { + } + + public class SQLiteQueryBuilder { + ctor public SQLiteQueryBuilder(); + method public static void appendColumns(StringBuilder, String[]); + method public void appendWhere(@NonNull CharSequence); + method public void appendWhereEscapeString(@NonNull String); + method public void appendWhereStandalone(@NonNull CharSequence); + method public String buildQuery(String[], String, String, String, String, String); + method @Deprecated public String buildQuery(String[], String, String[], String, String, String, String); + method public static String buildQueryString(boolean, String, String[], String, String, String, String, String); + method public String buildUnionQuery(String[], String, String); + method public String buildUnionSubQuery(String, String[], java.util.Set, int, String, String, String, String); + method @Deprecated public String buildUnionSubQuery(String, String[], java.util.Set, int, String, String, String[], String, String); + method public int delete(@NonNull android.database.sqlite.SQLiteDatabase, @Nullable String, @Nullable String[]); + method @Nullable public android.database.sqlite.SQLiteDatabase.CursorFactory getCursorFactory(); + method @Nullable public java.util.Collection getProjectionGreylist(); + method @Nullable public java.util.Map getProjectionMap(); + method @Nullable public String getTables(); + method public long insert(@NonNull android.database.sqlite.SQLiteDatabase, @NonNull android.content.ContentValues); + method public boolean isDistinct(); + method public boolean isStrict(); + method public boolean isStrictColumns(); + method public boolean isStrictGrammar(); + method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase, String[], String, String[], String, String, String); + method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase, String[], String, String[], String, String, String, String); + method public android.database.Cursor query(android.database.sqlite.SQLiteDatabase, String[], String, String[], String, String, String, String, android.os.CancellationSignal); + method public void setCursorFactory(@Nullable android.database.sqlite.SQLiteDatabase.CursorFactory); + method public void setDistinct(boolean); + method public void setProjectionGreylist(@Nullable java.util.Collection); + method public void setProjectionMap(@Nullable java.util.Map); + method public void setStrict(boolean); + method public void setStrictColumns(boolean); + method public void setStrictGrammar(boolean); + method public void setTables(@Nullable String); + method public int update(@NonNull android.database.sqlite.SQLiteDatabase, @NonNull android.content.ContentValues, @Nullable String, @Nullable String[]); + } + + @FlaggedApi("android.database.sqlite.sqlite_apis_35") public final class SQLiteRawStatement implements java.io.Closeable { + method public void bindBlob(int, @NonNull byte[]); + method public void bindBlob(int, @NonNull byte[], int, int); + method public void bindDouble(int, double); + method public void bindInt(int, int); + method public void bindLong(int, long); + method public void bindNull(int); + method public void bindText(int, @NonNull String); + method public void clearBindings(); + method public void close(); + method @Nullable public byte[] getColumnBlob(int); + method public double getColumnDouble(int); + method public int getColumnInt(int); + method public int getColumnLength(int); + method public long getColumnLong(int); + method @NonNull public String getColumnName(int); + method @NonNull public String getColumnText(int); + method public int getColumnType(int); + method public int getParameterCount(); + method public int getParameterIndex(@NonNull String); + method @Nullable public String getParameterName(int); + method public int getResultColumnCount(); + method public boolean isOpen(); + method public int readColumnBlob(int, @NonNull byte[], int, int, int); + method public void reset(); + method public boolean step(); + field public static final int SQLITE_DATA_TYPE_BLOB = 4; // 0x4 + field public static final int SQLITE_DATA_TYPE_FLOAT = 2; // 0x2 + field public static final int SQLITE_DATA_TYPE_INTEGER = 1; // 0x1 + field public static final int SQLITE_DATA_TYPE_NULL = 5; // 0x5 + field public static final int SQLITE_DATA_TYPE_TEXT = 3; // 0x3 + } + + public class SQLiteReadOnlyDatabaseException extends android.database.sqlite.SQLiteException { + ctor public SQLiteReadOnlyDatabaseException(); + ctor public SQLiteReadOnlyDatabaseException(String); + } + + public final class SQLiteStatement extends android.database.sqlite.SQLiteProgram { + method public void execute(); + method public long executeInsert(); + method public int executeUpdateDelete(); + method public android.os.ParcelFileDescriptor simpleQueryForBlobFileDescriptor(); + method public long simpleQueryForLong(); + method public String simpleQueryForString(); + } + + public class SQLiteTableLockedException extends android.database.sqlite.SQLiteException { + ctor public SQLiteTableLockedException(); + ctor public SQLiteTableLockedException(String); + } + + public interface SQLiteTransactionListener { + method public void onBegin(); + method public void onCommit(); + method public void onRollback(); + } + +} + +package android.drm { + + @Deprecated public class DrmConvertedStatus { + ctor @Deprecated public DrmConvertedStatus(int, byte[], int); + field @Deprecated public static final int STATUS_ERROR = 3; // 0x3 + field @Deprecated public static final int STATUS_INPUTDATA_ERROR = 2; // 0x2 + field @Deprecated public static final int STATUS_OK = 1; // 0x1 + field @Deprecated public final byte[] convertedData; + field @Deprecated public final int offset; + field @Deprecated public final int statusCode; + } + + @Deprecated public class DrmErrorEvent extends android.drm.DrmEvent { + ctor @Deprecated public DrmErrorEvent(int, int, String); + ctor @Deprecated public DrmErrorEvent(int, int, String, java.util.HashMap); + field @Deprecated public static final int TYPE_ACQUIRE_DRM_INFO_FAILED = 2008; // 0x7d8 + field @Deprecated public static final int TYPE_NOT_SUPPORTED = 2003; // 0x7d3 + field @Deprecated public static final int TYPE_NO_INTERNET_CONNECTION = 2005; // 0x7d5 + field @Deprecated public static final int TYPE_OUT_OF_MEMORY = 2004; // 0x7d4 + field @Deprecated public static final int TYPE_PROCESS_DRM_INFO_FAILED = 2006; // 0x7d6 + field @Deprecated public static final int TYPE_REMOVE_ALL_RIGHTS_FAILED = 2007; // 0x7d7 + field @Deprecated public static final int TYPE_RIGHTS_NOT_INSTALLED = 2001; // 0x7d1 + field @Deprecated public static final int TYPE_RIGHTS_RENEWAL_NOT_ALLOWED = 2002; // 0x7d2 + } + + @Deprecated public class DrmEvent { + ctor @Deprecated protected DrmEvent(int, int, String, java.util.HashMap); + ctor @Deprecated protected DrmEvent(int, int, String); + method @Deprecated public Object getAttribute(String); + method @Deprecated public String getMessage(); + method @Deprecated public int getType(); + method @Deprecated public int getUniqueId(); + field @Deprecated public static final String DRM_INFO_OBJECT = "drm_info_object"; + field @Deprecated public static final String DRM_INFO_STATUS_OBJECT = "drm_info_status_object"; + field @Deprecated public static final int TYPE_ALL_RIGHTS_REMOVED = 1001; // 0x3e9 + field @Deprecated public static final int TYPE_DRM_INFO_PROCESSED = 1002; // 0x3ea + } + + @Deprecated public class DrmInfo { + ctor @Deprecated public DrmInfo(int, byte[], String); + ctor @Deprecated public DrmInfo(int, String, String); + method @Deprecated public Object get(String); + method @Deprecated public byte[] getData(); + method @Deprecated public int getInfoType(); + method @Deprecated public String getMimeType(); + method @Deprecated public java.util.Iterator iterator(); + method @Deprecated public java.util.Iterator keyIterator(); + method @Deprecated public void put(String, Object); + } + + @Deprecated public class DrmInfoEvent extends android.drm.DrmEvent { + ctor @Deprecated public DrmInfoEvent(int, int, String); + ctor @Deprecated public DrmInfoEvent(int, int, String, java.util.HashMap); + field @Deprecated public static final int TYPE_ACCOUNT_ALREADY_REGISTERED = 5; // 0x5 + field @Deprecated public static final int TYPE_ALREADY_REGISTERED_BY_ANOTHER_ACCOUNT = 1; // 0x1 + field @Deprecated public static final int TYPE_REMOVE_RIGHTS = 2; // 0x2 + field @Deprecated public static final int TYPE_RIGHTS_INSTALLED = 3; // 0x3 + field @Deprecated public static final int TYPE_RIGHTS_REMOVED = 6; // 0x6 + field @Deprecated public static final int TYPE_WAIT_FOR_RIGHTS = 4; // 0x4 + } + + @Deprecated public class DrmInfoRequest { + ctor @Deprecated public DrmInfoRequest(int, String); + method @Deprecated public Object get(String); + method @Deprecated public int getInfoType(); + method @Deprecated public String getMimeType(); + method @Deprecated public java.util.Iterator iterator(); + method @Deprecated public java.util.Iterator keyIterator(); + method @Deprecated public void put(String, Object); + field @Deprecated public static final String ACCOUNT_ID = "account_id"; + field @Deprecated public static final String SUBSCRIPTION_ID = "subscription_id"; + field @Deprecated public static final int TYPE_REGISTRATION_INFO = 1; // 0x1 + field @Deprecated public static final int TYPE_RIGHTS_ACQUISITION_INFO = 3; // 0x3 + field @Deprecated public static final int TYPE_RIGHTS_ACQUISITION_PROGRESS_INFO = 4; // 0x4 + field @Deprecated public static final int TYPE_UNREGISTRATION_INFO = 2; // 0x2 + } + + @Deprecated public class DrmInfoStatus { + ctor @Deprecated public DrmInfoStatus(int, int, android.drm.ProcessedData, String); + field @Deprecated public static final int STATUS_ERROR = 2; // 0x2 + field @Deprecated public static final int STATUS_OK = 1; // 0x1 + field @Deprecated public final android.drm.ProcessedData data; + field @Deprecated public final int infoType; + field @Deprecated public final String mimeType; + field @Deprecated public final int statusCode; + } + + @Deprecated public class DrmManagerClient implements java.lang.AutoCloseable { + ctor @Deprecated public DrmManagerClient(android.content.Context); + method @Deprecated public android.drm.DrmInfo acquireDrmInfo(android.drm.DrmInfoRequest); + method @Deprecated public int acquireRights(android.drm.DrmInfoRequest); + method @Deprecated public boolean canHandle(String, String); + method @Deprecated public boolean canHandle(android.net.Uri, String); + method @Deprecated public int checkRightsStatus(String); + method @Deprecated public int checkRightsStatus(android.net.Uri); + method @Deprecated public int checkRightsStatus(String, int); + method @Deprecated public int checkRightsStatus(android.net.Uri, int); + method @Deprecated public void close(); + method @Deprecated public android.drm.DrmConvertedStatus closeConvertSession(int); + method @Deprecated public android.drm.DrmConvertedStatus convertData(int, byte[]); + method @Deprecated public String[] getAvailableDrmEngines(); + method @Deprecated @NonNull public java.util.Collection getAvailableDrmSupportInfo(); + method @Deprecated public android.content.ContentValues getConstraints(String, int); + method @Deprecated public android.content.ContentValues getConstraints(android.net.Uri, int); + method @Deprecated public int getDrmObjectType(String, String); + method @Deprecated public int getDrmObjectType(android.net.Uri, String); + method @Deprecated public android.content.ContentValues getMetadata(String); + method @Deprecated public android.content.ContentValues getMetadata(android.net.Uri); + method @Deprecated public String getOriginalMimeType(String); + method @Deprecated public String getOriginalMimeType(android.net.Uri); + method @Deprecated public int openConvertSession(String); + method @Deprecated public int processDrmInfo(android.drm.DrmInfo); + method @Deprecated public void release(); + method @Deprecated public int removeAllRights(); + method @Deprecated public int removeRights(String); + method @Deprecated public int removeRights(android.net.Uri); + method @Deprecated public int saveRights(android.drm.DrmRights, String, String) throws java.io.IOException; + method @Deprecated public void setOnErrorListener(android.drm.DrmManagerClient.OnErrorListener); + method @Deprecated public void setOnEventListener(android.drm.DrmManagerClient.OnEventListener); + method @Deprecated public void setOnInfoListener(android.drm.DrmManagerClient.OnInfoListener); + field @Deprecated public static final int ERROR_NONE = 0; // 0x0 + field @Deprecated public static final int ERROR_UNKNOWN = -2000; // 0xfffff830 + } + + @Deprecated public static interface DrmManagerClient.OnErrorListener { + method @Deprecated public void onError(android.drm.DrmManagerClient, android.drm.DrmErrorEvent); + } + + @Deprecated public static interface DrmManagerClient.OnEventListener { + method @Deprecated public void onEvent(android.drm.DrmManagerClient, android.drm.DrmEvent); + } + + @Deprecated public static interface DrmManagerClient.OnInfoListener { + method @Deprecated public void onInfo(android.drm.DrmManagerClient, android.drm.DrmInfoEvent); + } + + @Deprecated public class DrmRights { + ctor @Deprecated public DrmRights(String, String); + ctor @Deprecated public DrmRights(String, String, String); + ctor @Deprecated public DrmRights(String, String, String, String); + ctor @Deprecated public DrmRights(java.io.File, String); + ctor @Deprecated public DrmRights(android.drm.ProcessedData, String); + method @Deprecated public String getAccountId(); + method @Deprecated public byte[] getData(); + method @Deprecated public String getMimeType(); + method @Deprecated public String getSubscriptionId(); + } + + @Deprecated public class DrmStore { + ctor @Deprecated public DrmStore(); + } + + @Deprecated public static class DrmStore.Action { + ctor @Deprecated public DrmStore.Action(); + field @Deprecated public static final int DEFAULT = 0; // 0x0 + field @Deprecated public static final int DISPLAY = 7; // 0x7 + field @Deprecated public static final int EXECUTE = 6; // 0x6 + field @Deprecated public static final int OUTPUT = 4; // 0x4 + field @Deprecated public static final int PLAY = 1; // 0x1 + field @Deprecated public static final int PREVIEW = 5; // 0x5 + field @Deprecated public static final int RINGTONE = 2; // 0x2 + field @Deprecated public static final int TRANSFER = 3; // 0x3 + } + + @Deprecated public static interface DrmStore.ConstraintsColumns { + field @Deprecated public static final String EXTENDED_METADATA = "extended_metadata"; + field @Deprecated public static final String LICENSE_AVAILABLE_TIME = "license_available_time"; + field @Deprecated public static final String LICENSE_EXPIRY_TIME = "license_expiry_time"; + field @Deprecated public static final String LICENSE_START_TIME = "license_start_time"; + field @Deprecated public static final String MAX_REPEAT_COUNT = "max_repeat_count"; + field @Deprecated public static final String REMAINING_REPEAT_COUNT = "remaining_repeat_count"; + } + + @Deprecated public static class DrmStore.DrmObjectType { + ctor @Deprecated public DrmStore.DrmObjectType(); + field @Deprecated public static final int CONTENT = 1; // 0x1 + field @Deprecated public static final int RIGHTS_OBJECT = 2; // 0x2 + field @Deprecated public static final int TRIGGER_OBJECT = 3; // 0x3 + field @Deprecated public static final int UNKNOWN = 0; // 0x0 + } + + @Deprecated public static class DrmStore.Playback { + ctor @Deprecated public DrmStore.Playback(); + field @Deprecated public static final int PAUSE = 2; // 0x2 + field @Deprecated public static final int RESUME = 3; // 0x3 + field @Deprecated public static final int START = 0; // 0x0 + field @Deprecated public static final int STOP = 1; // 0x1 + } + + @Deprecated public static class DrmStore.RightsStatus { + ctor @Deprecated public DrmStore.RightsStatus(); + field @Deprecated public static final int RIGHTS_EXPIRED = 2; // 0x2 + field @Deprecated public static final int RIGHTS_INVALID = 1; // 0x1 + field @Deprecated public static final int RIGHTS_NOT_ACQUIRED = 3; // 0x3 + field @Deprecated public static final int RIGHTS_VALID = 0; // 0x0 + } + + @Deprecated public class DrmSupportInfo { + ctor @Deprecated public DrmSupportInfo(); + method @Deprecated public void addFileSuffix(String); + method @Deprecated public void addMimeType(String); + method @Deprecated public String getDescriprition(); + method @Deprecated public String getDescription(); + method @Deprecated public java.util.Iterator getFileSuffixIterator(); + method @Deprecated public java.util.Iterator getMimeTypeIterator(); + method @Deprecated public void setDescription(String); + } + + @Deprecated public class DrmUtils { + ctor @Deprecated public DrmUtils(); + method @Deprecated public static android.drm.DrmUtils.ExtendedMetadataParser getExtendedMetadataParser(byte[]); + } + + @Deprecated public static class DrmUtils.ExtendedMetadataParser { + method @Deprecated public String get(String); + method @Deprecated public java.util.Iterator iterator(); + method @Deprecated public java.util.Iterator keyIterator(); + } + + @Deprecated public class ProcessedData { + method @Deprecated public String getAccountId(); + method @Deprecated public byte[] getData(); + method @Deprecated public String getSubscriptionId(); + } + +} + +package android.gesture { + + public class Gesture implements android.os.Parcelable { + ctor public Gesture(); + method public void addStroke(android.gesture.GestureStroke); + method public Object clone(); + method public int describeContents(); + method public android.graphics.RectF getBoundingBox(); + method public long getID(); + method public float getLength(); + method public java.util.ArrayList getStrokes(); + method public int getStrokesCount(); + method public android.graphics.Bitmap toBitmap(int, int, int, int, int); + method public android.graphics.Bitmap toBitmap(int, int, int, int); + method public android.graphics.Path toPath(); + method public android.graphics.Path toPath(android.graphics.Path); + method public android.graphics.Path toPath(int, int, int, int); + method public android.graphics.Path toPath(android.graphics.Path, int, int, int, int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class GestureLibraries { + method public static android.gesture.GestureLibrary fromFile(String); + method public static android.gesture.GestureLibrary fromFile(java.io.File); + method @NonNull public static android.gesture.GestureLibrary fromFileDescriptor(@NonNull android.os.ParcelFileDescriptor); + method public static android.gesture.GestureLibrary fromPrivateFile(android.content.Context, String); + method public static android.gesture.GestureLibrary fromRawResource(android.content.Context, @RawRes int); + } + + public abstract class GestureLibrary { + ctor protected GestureLibrary(); + method public void addGesture(String, android.gesture.Gesture); + method public java.util.Set getGestureEntries(); + method public java.util.ArrayList getGestures(String); + method public int getOrientationStyle(); + method public int getSequenceType(); + method public boolean isReadOnly(); + method public abstract boolean load(); + method public java.util.ArrayList recognize(android.gesture.Gesture); + method public void removeEntry(String); + method public void removeGesture(String, android.gesture.Gesture); + method public abstract boolean save(); + method public void setOrientationStyle(int); + method public void setSequenceType(int); + field protected final android.gesture.GestureStore mStore; + } + + public class GestureOverlayView extends android.widget.FrameLayout { + ctor public GestureOverlayView(android.content.Context); + ctor public GestureOverlayView(android.content.Context, android.util.AttributeSet); + ctor public GestureOverlayView(android.content.Context, android.util.AttributeSet, int); + ctor public GestureOverlayView(android.content.Context, android.util.AttributeSet, int, int); + method public void addOnGestureListener(android.gesture.GestureOverlayView.OnGestureListener); + method public void addOnGesturePerformedListener(android.gesture.GestureOverlayView.OnGesturePerformedListener); + method public void addOnGesturingListener(android.gesture.GestureOverlayView.OnGesturingListener); + method public void cancelClearAnimation(); + method public void cancelGesture(); + method public void clear(boolean); + method public java.util.ArrayList getCurrentStroke(); + method public long getFadeOffset(); + method public android.gesture.Gesture getGesture(); + method @ColorInt public int getGestureColor(); + method public android.graphics.Path getGesturePath(); + method public android.graphics.Path getGesturePath(android.graphics.Path); + method public float getGestureStrokeAngleThreshold(); + method public float getGestureStrokeLengthThreshold(); + method public float getGestureStrokeSquarenessTreshold(); + method public int getGestureStrokeType(); + method public float getGestureStrokeWidth(); + method public int getOrientation(); + method @ColorInt public int getUncertainGestureColor(); + method public boolean isEventsInterceptionEnabled(); + method public boolean isFadeEnabled(); + method public boolean isGestureVisible(); + method public boolean isGesturing(); + method public void removeAllOnGestureListeners(); + method public void removeAllOnGesturePerformedListeners(); + method public void removeAllOnGesturingListeners(); + method public void removeOnGestureListener(android.gesture.GestureOverlayView.OnGestureListener); + method public void removeOnGesturePerformedListener(android.gesture.GestureOverlayView.OnGesturePerformedListener); + method public void removeOnGesturingListener(android.gesture.GestureOverlayView.OnGesturingListener); + method public void setEventsInterceptionEnabled(boolean); + method public void setFadeEnabled(boolean); + method public void setFadeOffset(long); + method public void setGesture(android.gesture.Gesture); + method public void setGestureColor(@ColorInt int); + method public void setGestureStrokeAngleThreshold(float); + method public void setGestureStrokeLengthThreshold(float); + method public void setGestureStrokeSquarenessTreshold(float); + method public void setGestureStrokeType(int); + method public void setGestureStrokeWidth(float); + method public void setGestureVisible(boolean); + method public void setOrientation(int); + method public void setUncertainGestureColor(@ColorInt int); + field public static final int GESTURE_STROKE_TYPE_MULTIPLE = 1; // 0x1 + field public static final int GESTURE_STROKE_TYPE_SINGLE = 0; // 0x0 + field public static final int ORIENTATION_HORIZONTAL = 0; // 0x0 + field public static final int ORIENTATION_VERTICAL = 1; // 0x1 + } + + public static interface GestureOverlayView.OnGestureListener { + method public void onGesture(android.gesture.GestureOverlayView, android.view.MotionEvent); + method public void onGestureCancelled(android.gesture.GestureOverlayView, android.view.MotionEvent); + method public void onGestureEnded(android.gesture.GestureOverlayView, android.view.MotionEvent); + method public void onGestureStarted(android.gesture.GestureOverlayView, android.view.MotionEvent); + } + + public static interface GestureOverlayView.OnGesturePerformedListener { + method public void onGesturePerformed(android.gesture.GestureOverlayView, android.gesture.Gesture); + } + + public static interface GestureOverlayView.OnGesturingListener { + method public void onGesturingEnded(android.gesture.GestureOverlayView); + method public void onGesturingStarted(android.gesture.GestureOverlayView); + } + + public class GesturePoint { + ctor public GesturePoint(float, float, long); + method public Object clone(); + field public final long timestamp; + field public final float x; + field public final float y; + } + + public class GestureStore { + ctor public GestureStore(); + method public void addGesture(String, android.gesture.Gesture); + method public java.util.Set getGestureEntries(); + method public java.util.ArrayList getGestures(String); + method public int getOrientationStyle(); + method public int getSequenceType(); + method public boolean hasChanged(); + method public void load(java.io.InputStream) throws java.io.IOException; + method public void load(java.io.InputStream, boolean) throws java.io.IOException; + method public java.util.ArrayList recognize(android.gesture.Gesture); + method public void removeEntry(String); + method public void removeGesture(String, android.gesture.Gesture); + method public void save(java.io.OutputStream) throws java.io.IOException; + method public void save(java.io.OutputStream, boolean) throws java.io.IOException; + method public void setOrientationStyle(int); + method public void setSequenceType(int); + field public static final int ORIENTATION_INVARIANT = 1; // 0x1 + field public static final int ORIENTATION_SENSITIVE = 2; // 0x2 + field public static final int SEQUENCE_INVARIANT = 1; // 0x1 + field public static final int SEQUENCE_SENSITIVE = 2; // 0x2 + } + + public class GestureStroke { + ctor public GestureStroke(java.util.ArrayList); + method public void clearPath(); + method public Object clone(); + method public android.gesture.OrientedBoundingBox computeOrientedBoundingBox(); + method public android.graphics.Path getPath(); + method public android.graphics.Path toPath(float, float, int); + field public final android.graphics.RectF boundingBox; + field public final float length; + field public final float[] points; + } + + public final class GestureUtils { + method public static android.gesture.OrientedBoundingBox computeOrientedBoundingBox(java.util.ArrayList); + method public static android.gesture.OrientedBoundingBox computeOrientedBoundingBox(float[]); + method public static float[] spatialSampling(android.gesture.Gesture, int); + method public static float[] spatialSampling(android.gesture.Gesture, int, boolean); + method public static float[] temporalSampling(android.gesture.GestureStroke, int); + } + + public class OrientedBoundingBox { + field public final float centerX; + field public final float centerY; + field public final float height; + field public final float orientation; + field public final float squareness; + field public final float width; + } + + public class Prediction { + field public final String name; + field public double score; + } + +} + +package android.graphics { + + public final class Bitmap implements android.os.Parcelable { + method @NonNull public android.graphics.Bitmap asShared(); + method @WorkerThread public boolean compress(@NonNull android.graphics.Bitmap.CompressFormat, int, @NonNull java.io.OutputStream); + method public android.graphics.Bitmap copy(@NonNull android.graphics.Bitmap.Config, boolean); + method public void copyPixelsFromBuffer(@NonNull java.nio.Buffer); + method public void copyPixelsToBuffer(@NonNull java.nio.Buffer); + method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Bitmap); + method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Bitmap, int, int, int, int); + method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Bitmap, int, int, int, int, @Nullable android.graphics.Matrix, boolean); + method @NonNull public static android.graphics.Bitmap createBitmap(int, int, @NonNull android.graphics.Bitmap.Config); + method @NonNull public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, int, int, @NonNull android.graphics.Bitmap.Config); + method @NonNull public static android.graphics.Bitmap createBitmap(int, int, @NonNull android.graphics.Bitmap.Config, boolean); + method @NonNull public static android.graphics.Bitmap createBitmap(int, int, @NonNull android.graphics.Bitmap.Config, boolean, @NonNull android.graphics.ColorSpace); + method @NonNull public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, int, int, @NonNull android.graphics.Bitmap.Config, boolean); + method @NonNull public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, int, int, @NonNull android.graphics.Bitmap.Config, boolean, @NonNull android.graphics.ColorSpace); + method @NonNull public static android.graphics.Bitmap createBitmap(@ColorInt @NonNull int[], int, int, int, int, @NonNull android.graphics.Bitmap.Config); + method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.util.DisplayMetrics, @ColorInt @NonNull int[], int, int, int, int, @NonNull android.graphics.Bitmap.Config); + method @NonNull public static android.graphics.Bitmap createBitmap(@ColorInt @NonNull int[], int, int, android.graphics.Bitmap.Config); + method @NonNull public static android.graphics.Bitmap createBitmap(@Nullable android.util.DisplayMetrics, @ColorInt @NonNull int[], int, int, @NonNull android.graphics.Bitmap.Config); + method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Picture); + method @NonNull public static android.graphics.Bitmap createBitmap(@NonNull android.graphics.Picture, int, int, @NonNull android.graphics.Bitmap.Config); + method @NonNull public static android.graphics.Bitmap createScaledBitmap(@NonNull android.graphics.Bitmap, int, int, boolean); + method public int describeContents(); + method public void eraseColor(@ColorInt int); + method public void eraseColor(@ColorLong long); + method @CheckResult @NonNull public android.graphics.Bitmap extractAlpha(); + method @CheckResult @NonNull public android.graphics.Bitmap extractAlpha(@Nullable android.graphics.Paint, int[]); + method public int getAllocationByteCount(); + method public int getByteCount(); + method @NonNull public android.graphics.Color getColor(int, int); + method @Nullable public android.graphics.ColorSpace getColorSpace(); + method @Nullable public android.graphics.Bitmap.Config getConfig(); + method public int getDensity(); + method @Nullable public android.graphics.Gainmap getGainmap(); + method public int getGenerationId(); + method @NonNull public android.hardware.HardwareBuffer getHardwareBuffer(); + method public int getHeight(); + method @Nullable public byte[] getNinePatchChunk(); + method @ColorInt public int getPixel(int, int); + method public void getPixels(@ColorInt @NonNull int[], int, int, int, int, int, int); + method public int getRowBytes(); + method public int getScaledHeight(@NonNull android.graphics.Canvas); + method public int getScaledHeight(@NonNull android.util.DisplayMetrics); + method public int getScaledHeight(int); + method public int getScaledWidth(@NonNull android.graphics.Canvas); + method public int getScaledWidth(@NonNull android.util.DisplayMetrics); + method public int getScaledWidth(int); + method public int getWidth(); + method public boolean hasAlpha(); + method public boolean hasGainmap(); + method public boolean hasMipMap(); + method public boolean isMutable(); + method public boolean isPremultiplied(); + method public boolean isRecycled(); + method public void prepareToDraw(); + method public void reconfigure(int, int, @NonNull android.graphics.Bitmap.Config); + method public void recycle(); + method @WorkerThread public boolean sameAs(@Nullable android.graphics.Bitmap); + method public void setColorSpace(@NonNull android.graphics.ColorSpace); + method public void setConfig(@NonNull android.graphics.Bitmap.Config); + method public void setDensity(int); + method public void setGainmap(@Nullable android.graphics.Gainmap); + method public void setHasAlpha(boolean); + method public void setHasMipMap(boolean); + method public void setHeight(int); + method public void setPixel(int, int, @ColorInt int); + method public void setPixels(@ColorInt @NonNull int[], int, int, int, int, int, int); + method public void setPremultiplied(boolean); + method public void setWidth(int); + method @Nullable public static android.graphics.Bitmap wrapHardwareBuffer(@NonNull android.hardware.HardwareBuffer, @Nullable android.graphics.ColorSpace); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DENSITY_NONE = 0; // 0x0 + } + + public enum Bitmap.CompressFormat { + enum_constant public static final android.graphics.Bitmap.CompressFormat JPEG; + enum_constant public static final android.graphics.Bitmap.CompressFormat PNG; + enum_constant @Deprecated public static final android.graphics.Bitmap.CompressFormat WEBP; + enum_constant public static final android.graphics.Bitmap.CompressFormat WEBP_LOSSLESS; + enum_constant public static final android.graphics.Bitmap.CompressFormat WEBP_LOSSY; + } + + public enum Bitmap.Config { + enum_constant public static final android.graphics.Bitmap.Config ALPHA_8; + enum_constant @Deprecated public static final android.graphics.Bitmap.Config ARGB_4444; + enum_constant public static final android.graphics.Bitmap.Config ARGB_8888; + enum_constant public static final android.graphics.Bitmap.Config HARDWARE; + enum_constant public static final android.graphics.Bitmap.Config RGBA_1010102; + enum_constant public static final android.graphics.Bitmap.Config RGBA_F16; + enum_constant public static final android.graphics.Bitmap.Config RGB_565; + } + + public class BitmapFactory { + ctor public BitmapFactory(); + method public static android.graphics.Bitmap decodeByteArray(byte[], int, int, android.graphics.BitmapFactory.Options); + method public static android.graphics.Bitmap decodeByteArray(byte[], int, int); + method public static android.graphics.Bitmap decodeFile(String, android.graphics.BitmapFactory.Options); + method public static android.graphics.Bitmap decodeFile(String); + method public static android.graphics.Bitmap decodeFileDescriptor(java.io.FileDescriptor, android.graphics.Rect, android.graphics.BitmapFactory.Options); + method public static android.graphics.Bitmap decodeFileDescriptor(java.io.FileDescriptor); + method public static android.graphics.Bitmap decodeResource(android.content.res.Resources, int, android.graphics.BitmapFactory.Options); + method public static android.graphics.Bitmap decodeResource(android.content.res.Resources, int); + method @Nullable public static android.graphics.Bitmap decodeResourceStream(@Nullable android.content.res.Resources, @Nullable android.util.TypedValue, @Nullable java.io.InputStream, @Nullable android.graphics.Rect, @Nullable android.graphics.BitmapFactory.Options); + method @Nullable public static android.graphics.Bitmap decodeStream(@Nullable java.io.InputStream, @Nullable android.graphics.Rect, @Nullable android.graphics.BitmapFactory.Options); + method public static android.graphics.Bitmap decodeStream(java.io.InputStream); + } + + public static class BitmapFactory.Options { + ctor public BitmapFactory.Options(); + method @Deprecated public void requestCancelDecode(); + field public android.graphics.Bitmap inBitmap; + field public int inDensity; + field @Deprecated public boolean inDither; + field @Deprecated public boolean inInputShareable; + field public boolean inJustDecodeBounds; + field public boolean inMutable; + field @Deprecated public boolean inPreferQualityOverSpeed; + field public android.graphics.ColorSpace inPreferredColorSpace; + field public android.graphics.Bitmap.Config inPreferredConfig; + field public boolean inPremultiplied; + field @Deprecated public boolean inPurgeable; + field public int inSampleSize; + field public boolean inScaled; + field public int inScreenDensity; + field public int inTargetDensity; + field public byte[] inTempStorage; + field @Deprecated public boolean mCancel; + field public android.graphics.ColorSpace outColorSpace; + field public android.graphics.Bitmap.Config outConfig; + field public int outHeight; + field public String outMimeType; + field public int outWidth; + } + + public final class BitmapRegionDecoder { + method public android.graphics.Bitmap decodeRegion(android.graphics.Rect, android.graphics.BitmapFactory.Options); + method public int getHeight(); + method public int getWidth(); + method public boolean isRecycled(); + method @Deprecated @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull byte[], int, int, boolean) throws java.io.IOException; + method @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull byte[], int, int) throws java.io.IOException; + method @Deprecated @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull java.io.FileDescriptor, boolean) throws java.io.IOException; + method @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull android.os.ParcelFileDescriptor) throws java.io.IOException; + method @Deprecated @Nullable public static android.graphics.BitmapRegionDecoder newInstance(@NonNull java.io.InputStream, boolean) throws java.io.IOException; + method @Nullable public static android.graphics.BitmapRegionDecoder newInstance(@NonNull java.io.InputStream) throws java.io.IOException; + method @Deprecated @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull String, boolean) throws java.io.IOException; + method @NonNull public static android.graphics.BitmapRegionDecoder newInstance(@NonNull String) throws java.io.IOException; + method public void recycle(); + } + + public class BitmapShader extends android.graphics.Shader { + ctor public BitmapShader(@NonNull android.graphics.Bitmap, @NonNull android.graphics.Shader.TileMode, @NonNull android.graphics.Shader.TileMode); + method public int getFilterMode(); + method public int getMaxAnisotropy(); + method public void setFilterMode(int); + method public void setMaxAnisotropy(@IntRange(from=1) int); + method @FlaggedApi("com.android.graphics.hwui.flags.gainmap_animations") public void setOverrideGainmap(@Nullable android.graphics.Gainmap); + field public static final int FILTER_MODE_DEFAULT = 0; // 0x0 + field public static final int FILTER_MODE_LINEAR = 2; // 0x2 + field public static final int FILTER_MODE_NEAREST = 1; // 0x1 + } + + public enum BlendMode { + enum_constant public static final android.graphics.BlendMode CLEAR; + enum_constant public static final android.graphics.BlendMode COLOR; + enum_constant public static final android.graphics.BlendMode COLOR_BURN; + enum_constant public static final android.graphics.BlendMode COLOR_DODGE; + enum_constant public static final android.graphics.BlendMode DARKEN; + enum_constant public static final android.graphics.BlendMode DIFFERENCE; + enum_constant public static final android.graphics.BlendMode DST; + enum_constant public static final android.graphics.BlendMode DST_ATOP; + enum_constant public static final android.graphics.BlendMode DST_IN; + enum_constant public static final android.graphics.BlendMode DST_OUT; + enum_constant public static final android.graphics.BlendMode DST_OVER; + enum_constant public static final android.graphics.BlendMode EXCLUSION; + enum_constant public static final android.graphics.BlendMode HARD_LIGHT; + enum_constant public static final android.graphics.BlendMode HUE; + enum_constant public static final android.graphics.BlendMode LIGHTEN; + enum_constant public static final android.graphics.BlendMode LUMINOSITY; + enum_constant public static final android.graphics.BlendMode MODULATE; + enum_constant public static final android.graphics.BlendMode MULTIPLY; + enum_constant public static final android.graphics.BlendMode OVERLAY; + enum_constant public static final android.graphics.BlendMode PLUS; + enum_constant public static final android.graphics.BlendMode SATURATION; + enum_constant public static final android.graphics.BlendMode SCREEN; + enum_constant public static final android.graphics.BlendMode SOFT_LIGHT; + enum_constant public static final android.graphics.BlendMode SRC; + enum_constant public static final android.graphics.BlendMode SRC_ATOP; + enum_constant public static final android.graphics.BlendMode SRC_IN; + enum_constant public static final android.graphics.BlendMode SRC_OUT; + enum_constant public static final android.graphics.BlendMode SRC_OVER; + enum_constant public static final android.graphics.BlendMode XOR; + } + + public final class BlendModeColorFilter extends android.graphics.ColorFilter { + ctor public BlendModeColorFilter(@ColorInt int, @NonNull android.graphics.BlendMode); + method @ColorInt public int getColor(); + method public android.graphics.BlendMode getMode(); + } + + public class BlurMaskFilter extends android.graphics.MaskFilter { + ctor public BlurMaskFilter(float, android.graphics.BlurMaskFilter.Blur); + } + + public enum BlurMaskFilter.Blur { + enum_constant public static final android.graphics.BlurMaskFilter.Blur INNER; + enum_constant public static final android.graphics.BlurMaskFilter.Blur NORMAL; + enum_constant public static final android.graphics.BlurMaskFilter.Blur OUTER; + enum_constant public static final android.graphics.BlurMaskFilter.Blur SOLID; + } + + public class Camera { + ctor public Camera(); + method public void applyToCanvas(android.graphics.Canvas); + method public float dotWithNormal(float, float, float); + method public float getLocationX(); + method public float getLocationY(); + method public float getLocationZ(); + method public void getMatrix(android.graphics.Matrix); + method public void restore(); + method public void rotate(float, float, float); + method public void rotateX(float); + method public void rotateY(float); + method public void rotateZ(float); + method public void save(); + method public void setLocation(float, float, float); + method public void translate(float, float, float); + } + + public class Canvas { + ctor public Canvas(); + ctor public Canvas(@NonNull android.graphics.Bitmap); + method public boolean clipOutPath(@NonNull android.graphics.Path); + method public boolean clipOutRect(@NonNull android.graphics.RectF); + method public boolean clipOutRect(@NonNull android.graphics.Rect); + method public boolean clipOutRect(float, float, float, float); + method public boolean clipOutRect(int, int, int, int); + method @FlaggedApi("com.android.graphics.hwui.flags.clip_shader") public void clipOutShader(@NonNull android.graphics.Shader); + method @Deprecated public boolean clipPath(@NonNull android.graphics.Path, @NonNull android.graphics.Region.Op); + method public boolean clipPath(@NonNull android.graphics.Path); + method @Deprecated public boolean clipRect(@NonNull android.graphics.RectF, @NonNull android.graphics.Region.Op); + method @Deprecated public boolean clipRect(@NonNull android.graphics.Rect, @NonNull android.graphics.Region.Op); + method public boolean clipRect(@NonNull android.graphics.RectF); + method public boolean clipRect(@NonNull android.graphics.Rect); + method @Deprecated public boolean clipRect(float, float, float, float, @NonNull android.graphics.Region.Op); + method public boolean clipRect(float, float, float, float); + method public boolean clipRect(int, int, int, int); + method @FlaggedApi("com.android.graphics.hwui.flags.clip_shader") public void clipShader(@NonNull android.graphics.Shader); + method public void concat(@Nullable android.graphics.Matrix); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void concat(@Nullable android.graphics.Matrix44); + method public void disableZ(); + method public void drawARGB(int, int, int, int); + method public void drawArc(@NonNull android.graphics.RectF, float, float, boolean, @NonNull android.graphics.Paint); + method public void drawArc(float, float, float, float, float, float, boolean, @NonNull android.graphics.Paint); + method public void drawBitmap(@NonNull android.graphics.Bitmap, float, float, @Nullable android.graphics.Paint); + method public void drawBitmap(@NonNull android.graphics.Bitmap, @Nullable android.graphics.Rect, @NonNull android.graphics.RectF, @Nullable android.graphics.Paint); + method public void drawBitmap(@NonNull android.graphics.Bitmap, @Nullable android.graphics.Rect, @NonNull android.graphics.Rect, @Nullable android.graphics.Paint); + method @Deprecated public void drawBitmap(@NonNull int[], int, int, float, float, int, int, boolean, @Nullable android.graphics.Paint); + method @Deprecated public void drawBitmap(@NonNull int[], int, int, int, int, int, int, boolean, @Nullable android.graphics.Paint); + method public void drawBitmap(@NonNull android.graphics.Bitmap, @NonNull android.graphics.Matrix, @Nullable android.graphics.Paint); + method public void drawBitmapMesh(@NonNull android.graphics.Bitmap, int, int, @NonNull float[], int, @Nullable int[], int, @Nullable android.graphics.Paint); + method public void drawCircle(float, float, float, @NonNull android.graphics.Paint); + method public void drawColor(@ColorInt int); + method public void drawColor(@ColorLong long); + method public void drawColor(@ColorInt int, @NonNull android.graphics.PorterDuff.Mode); + method public void drawColor(@ColorInt int, @NonNull android.graphics.BlendMode); + method public void drawColor(@ColorLong long, @NonNull android.graphics.BlendMode); + method public void drawDoubleRoundRect(@NonNull android.graphics.RectF, float, float, @NonNull android.graphics.RectF, float, float, @NonNull android.graphics.Paint); + method public void drawDoubleRoundRect(@NonNull android.graphics.RectF, @NonNull float[], @NonNull android.graphics.RectF, @NonNull float[], @NonNull android.graphics.Paint); + method public void drawGlyphs(@NonNull int[], @IntRange(from=0) int, @NonNull float[], @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.fonts.Font, @NonNull android.graphics.Paint); + method public void drawLine(float, float, float, float, @NonNull android.graphics.Paint); + method public void drawLines(@NonNull @Size(multiple=4) float[], int, int, @NonNull android.graphics.Paint); + method public void drawLines(@NonNull @Size(multiple=4) float[], @NonNull android.graphics.Paint); + method public void drawMesh(@NonNull android.graphics.Mesh, @Nullable android.graphics.BlendMode, @NonNull android.graphics.Paint); + method public void drawOval(@NonNull android.graphics.RectF, @NonNull android.graphics.Paint); + method public void drawOval(float, float, float, float, @NonNull android.graphics.Paint); + method public void drawPaint(@NonNull android.graphics.Paint); + method public void drawPatch(@NonNull android.graphics.NinePatch, @NonNull android.graphics.Rect, @Nullable android.graphics.Paint); + method public void drawPatch(@NonNull android.graphics.NinePatch, @NonNull android.graphics.RectF, @Nullable android.graphics.Paint); + method public void drawPath(@NonNull android.graphics.Path, @NonNull android.graphics.Paint); + method public void drawPicture(@NonNull android.graphics.Picture); + method public void drawPicture(@NonNull android.graphics.Picture, @NonNull android.graphics.RectF); + method public void drawPicture(@NonNull android.graphics.Picture, @NonNull android.graphics.Rect); + method public void drawPoint(float, float, @NonNull android.graphics.Paint); + method public void drawPoints(@Size(multiple=2) float[], int, int, @NonNull android.graphics.Paint); + method public void drawPoints(@NonNull @Size(multiple=2) float[], @NonNull android.graphics.Paint); + method @Deprecated public void drawPosText(@NonNull char[], int, int, @NonNull @Size(multiple=2) float[], @NonNull android.graphics.Paint); + method @Deprecated public void drawPosText(@NonNull String, @NonNull @Size(multiple=2) float[], @NonNull android.graphics.Paint); + method public void drawRGB(int, int, int); + method public void drawRect(@NonNull android.graphics.RectF, @NonNull android.graphics.Paint); + method public void drawRect(@NonNull android.graphics.Rect, @NonNull android.graphics.Paint); + method public void drawRect(float, float, float, float, @NonNull android.graphics.Paint); + method @FlaggedApi("com.android.graphics.hwui.flags.draw_region") public void drawRegion(@NonNull android.graphics.Region, @NonNull android.graphics.Paint); + method public void drawRenderNode(@NonNull android.graphics.RenderNode); + method public void drawRoundRect(@NonNull android.graphics.RectF, float, float, @NonNull android.graphics.Paint); + method public void drawRoundRect(float, float, float, float, float, float, @NonNull android.graphics.Paint); + method public void drawText(@NonNull char[], int, int, float, float, @NonNull android.graphics.Paint); + method public void drawText(@NonNull String, float, float, @NonNull android.graphics.Paint); + method public void drawText(@NonNull String, int, int, float, float, @NonNull android.graphics.Paint); + method public void drawText(@NonNull CharSequence, int, int, float, float, @NonNull android.graphics.Paint); + method public void drawTextOnPath(@NonNull char[], int, int, @NonNull android.graphics.Path, float, float, @NonNull android.graphics.Paint); + method public void drawTextOnPath(@NonNull String, @NonNull android.graphics.Path, float, float, @NonNull android.graphics.Paint); + method public void drawTextRun(@NonNull char[], int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); + method public void drawTextRun(@NonNull CharSequence, int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); + method public void drawTextRun(@NonNull android.graphics.text.MeasuredText, int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); + method public void drawVertices(@NonNull android.graphics.Canvas.VertexMode, int, @NonNull float[], int, @Nullable float[], int, @Nullable int[], int, @Nullable short[], int, int, @NonNull android.graphics.Paint); + method public void enableZ(); + method public boolean getClipBounds(@NonNull android.graphics.Rect); + method @NonNull public final android.graphics.Rect getClipBounds(); + method public int getDensity(); + method @Nullable public android.graphics.DrawFilter getDrawFilter(); + method public int getHeight(); + method @Deprecated public void getMatrix(@NonNull android.graphics.Matrix); + method @Deprecated @NonNull public final android.graphics.Matrix getMatrix(); + method public int getMaximumBitmapHeight(); + method public int getMaximumBitmapWidth(); + method public int getSaveCount(); + method public int getWidth(); + method public boolean isHardwareAccelerated(); + method public boolean isOpaque(); + method @Deprecated public boolean quickReject(@NonNull android.graphics.RectF, @NonNull android.graphics.Canvas.EdgeType); + method public boolean quickReject(@NonNull android.graphics.RectF); + method @Deprecated public boolean quickReject(@NonNull android.graphics.Path, @NonNull android.graphics.Canvas.EdgeType); + method public boolean quickReject(@NonNull android.graphics.Path); + method @Deprecated public boolean quickReject(float, float, float, float, @NonNull android.graphics.Canvas.EdgeType); + method public boolean quickReject(float, float, float, float); + method public void restore(); + method public void restoreToCount(int); + method public void rotate(float); + method public final void rotate(float, float, float); + method public int save(); + method @Deprecated public int saveLayer(@Nullable android.graphics.RectF, @Nullable android.graphics.Paint, int); + method public int saveLayer(@Nullable android.graphics.RectF, @Nullable android.graphics.Paint); + method @Deprecated public int saveLayer(float, float, float, float, @Nullable android.graphics.Paint, int); + method public int saveLayer(float, float, float, float, @Nullable android.graphics.Paint); + method @Deprecated public int saveLayerAlpha(@Nullable android.graphics.RectF, int, int); + method public int saveLayerAlpha(@Nullable android.graphics.RectF, int); + method @Deprecated public int saveLayerAlpha(float, float, float, float, int, int); + method public int saveLayerAlpha(float, float, float, float, int); + method public void scale(float, float); + method public final void scale(float, float, float, float); + method public void setBitmap(@Nullable android.graphics.Bitmap); + method public void setDensity(int); + method public void setDrawFilter(@Nullable android.graphics.DrawFilter); + method public void setMatrix(@Nullable android.graphics.Matrix); + method public void skew(float, float); + method public void translate(float, float); + field public static final int ALL_SAVE_FLAG = 31; // 0x1f + } + + @Deprecated public enum Canvas.EdgeType { + enum_constant @Deprecated public static final android.graphics.Canvas.EdgeType AA; + enum_constant @Deprecated public static final android.graphics.Canvas.EdgeType BW; + } + + public enum Canvas.VertexMode { + enum_constant public static final android.graphics.Canvas.VertexMode TRIANGLES; + enum_constant public static final android.graphics.Canvas.VertexMode TRIANGLE_FAN; + enum_constant public static final android.graphics.Canvas.VertexMode TRIANGLE_STRIP; + } + + @AnyThread public class Color { + ctor public Color(); + method @ColorInt public static int HSVToColor(@Size(3) float[]); + method @ColorInt public static int HSVToColor(@IntRange(from=0, to=255) int, @Size(3) float[]); + method public static void RGBToHSV(@IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @Size(3) float[]); + method public float alpha(); + method public static float alpha(@ColorLong long); + method @IntRange(from=0, to=255) public static int alpha(int); + method @ColorInt public static int argb(@IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int); + method @ColorInt public static int argb(float, float, float, float); + method public float blue(); + method public static float blue(@ColorLong long); + method @IntRange(from=0, to=255) public static int blue(int); + method @NonNull public static android.graphics.ColorSpace colorSpace(@ColorLong long); + method public static void colorToHSV(@ColorInt int, @Size(3) float[]); + method @NonNull public android.graphics.Color convert(@NonNull android.graphics.ColorSpace); + method @ColorLong public static long convert(@ColorInt int, @NonNull android.graphics.ColorSpace); + method @ColorLong public static long convert(@ColorLong long, @NonNull android.graphics.ColorSpace); + method @ColorLong public static long convert(float, float, float, float, @NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace); + method @ColorLong public static long convert(@ColorLong long, @NonNull android.graphics.ColorSpace.Connector); + method @ColorLong public static long convert(float, float, float, float, @NonNull android.graphics.ColorSpace.Connector); + method @NonNull public android.graphics.ColorSpace getColorSpace(); + method public float getComponent(@IntRange(from=0, to=4) int); + method @IntRange(from=4, to=5) public int getComponentCount(); + method @NonNull @Size(min=4, max=5) public float[] getComponents(); + method @NonNull @Size(min=4) public float[] getComponents(@Nullable @Size(min=4) float[]); + method public android.graphics.ColorSpace.Model getModel(); + method public float green(); + method public static float green(@ColorLong long); + method @IntRange(from=0, to=255) public static int green(int); + method public static boolean isInColorSpace(@ColorLong long, @NonNull android.graphics.ColorSpace); + method public boolean isSrgb(); + method public static boolean isSrgb(@ColorLong long); + method public boolean isWideGamut(); + method public static boolean isWideGamut(@ColorLong long); + method public float luminance(); + method public static float luminance(@ColorLong long); + method public static float luminance(@ColorInt int); + method @ColorLong public long pack(); + method @ColorLong public static long pack(@ColorInt int); + method @ColorLong public static long pack(float, float, float); + method @ColorLong public static long pack(float, float, float, float); + method @ColorLong public static long pack(float, float, float, float, @NonNull android.graphics.ColorSpace); + method @ColorInt public static int parseColor(@Size(min=1) String); + method public float red(); + method public static float red(@ColorLong long); + method @IntRange(from=0, to=255) public static int red(int); + method @ColorInt public static int rgb(@IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int, @IntRange(from=0, to=255) int); + method @ColorInt public static int rgb(float, float, float); + method @ColorInt public int toArgb(); + method @ColorInt public static int toArgb(@ColorLong long); + method @NonNull public static android.graphics.Color valueOf(@ColorInt int); + method @NonNull public static android.graphics.Color valueOf(@ColorLong long); + method @NonNull public static android.graphics.Color valueOf(float, float, float); + method @NonNull public static android.graphics.Color valueOf(float, float, float, float); + method @NonNull public static android.graphics.Color valueOf(float, float, float, float, @NonNull android.graphics.ColorSpace); + method @NonNull public static android.graphics.Color valueOf(@NonNull @Size(min=4, max=5) float[], @NonNull android.graphics.ColorSpace); + field @ColorInt public static final int BLACK = -16777216; // 0xff000000 + field @ColorInt public static final int BLUE = -16776961; // 0xff0000ff + field @ColorInt public static final int CYAN = -16711681; // 0xff00ffff + field @ColorInt public static final int DKGRAY = -12303292; // 0xff444444 + field @ColorInt public static final int GRAY = -7829368; // 0xff888888 + field @ColorInt public static final int GREEN = -16711936; // 0xff00ff00 + field @ColorInt public static final int LTGRAY = -3355444; // 0xffcccccc + field @ColorInt public static final int MAGENTA = -65281; // 0xffff00ff + field @ColorInt public static final int RED = -65536; // 0xffff0000 + field @ColorInt public static final int TRANSPARENT = 0; // 0x0 + field @ColorInt public static final int WHITE = -1; // 0xffffffff + field @ColorInt public static final int YELLOW = -256; // 0xffffff00 + } + + public class ColorFilter { + ctor @Deprecated public ColorFilter(); + } + + public class ColorMatrixColorFilter extends android.graphics.ColorFilter { + ctor public ColorMatrixColorFilter(@NonNull android.graphics.ColorMatrix); + ctor public ColorMatrixColorFilter(@NonNull float[]); + method public void getColorMatrix(android.graphics.ColorMatrix); + } + + @AnyThread public abstract class ColorSpace { + method @NonNull public static android.graphics.ColorSpace adapt(@NonNull android.graphics.ColorSpace, @NonNull @Size(min=2, max=3) float[]); + method @NonNull public static android.graphics.ColorSpace adapt(@NonNull android.graphics.ColorSpace, @NonNull @Size(min=2, max=3) float[], @NonNull android.graphics.ColorSpace.Adaptation); + method @NonNull @Size(3) public static float[] cctToXyz(@IntRange(from=1) int); + method @NonNull @Size(9) public static float[] chromaticAdaptation(@NonNull android.graphics.ColorSpace.Adaptation, @NonNull @Size(min=2, max=3) float[], @NonNull @Size(min=2, max=3) float[]); + method @NonNull public static android.graphics.ColorSpace.Connector connect(@NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace); + method @NonNull public static android.graphics.ColorSpace.Connector connect(@NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace.RenderIntent); + method @NonNull public static android.graphics.ColorSpace.Connector connect(@NonNull android.graphics.ColorSpace); + method @NonNull public static android.graphics.ColorSpace.Connector connect(@NonNull android.graphics.ColorSpace, @NonNull android.graphics.ColorSpace.RenderIntent); + method @NonNull @Size(min=3) public float[] fromXyz(float, float, float); + method @NonNull @Size(min=3) public abstract float[] fromXyz(@NonNull @Size(min=3) float[]); + method @NonNull public static android.graphics.ColorSpace get(@NonNull android.graphics.ColorSpace.Named); + method @IntRange(from=1, to=4) public int getComponentCount(); + method public int getDataSpace(); + method @Nullable public static android.graphics.ColorSpace getFromDataSpace(int); + method @IntRange(from=android.graphics.ColorSpace.MIN_ID, to=android.graphics.ColorSpace.MAX_ID) public int getId(); + method public abstract float getMaxValue(@IntRange(from=0, to=3) int); + method public abstract float getMinValue(@IntRange(from=0, to=3) int); + method @NonNull public android.graphics.ColorSpace.Model getModel(); + method @NonNull public String getName(); + method public boolean isSrgb(); + method public abstract boolean isWideGamut(); + method @Nullable public static android.graphics.ColorSpace match(@NonNull @Size(9) float[], @NonNull android.graphics.ColorSpace.Rgb.TransferParameters); + method @NonNull @Size(3) public float[] toXyz(float, float, float); + method @NonNull @Size(min=3) public abstract float[] toXyz(@NonNull @Size(min=3) float[]); + field public static final float[] ILLUMINANT_A; + field public static final float[] ILLUMINANT_B; + field public static final float[] ILLUMINANT_C; + field public static final float[] ILLUMINANT_D50; + field public static final float[] ILLUMINANT_D55; + field public static final float[] ILLUMINANT_D60; + field public static final float[] ILLUMINANT_D65; + field public static final float[] ILLUMINANT_D75; + field public static final float[] ILLUMINANT_E; + field public static final int MAX_ID = 63; // 0x3f + field public static final int MIN_ID = -1; // 0xffffffff + } + + public enum ColorSpace.Adaptation { + enum_constant public static final android.graphics.ColorSpace.Adaptation BRADFORD; + enum_constant public static final android.graphics.ColorSpace.Adaptation CIECAT02; + enum_constant public static final android.graphics.ColorSpace.Adaptation VON_KRIES; + } + + @AnyThread public static class ColorSpace.Connector { + method @NonNull public android.graphics.ColorSpace getDestination(); + method public android.graphics.ColorSpace.RenderIntent getRenderIntent(); + method @NonNull public android.graphics.ColorSpace getSource(); + method @NonNull @Size(3) public float[] transform(float, float, float); + method @NonNull @Size(min=3) public float[] transform(@NonNull @Size(min=3) float[]); + } + + public enum ColorSpace.Model { + method @IntRange(from=1, to=4) public int getComponentCount(); + enum_constant public static final android.graphics.ColorSpace.Model CMYK; + enum_constant public static final android.graphics.ColorSpace.Model LAB; + enum_constant public static final android.graphics.ColorSpace.Model RGB; + enum_constant public static final android.graphics.ColorSpace.Model XYZ; + } + + public enum ColorSpace.Named { + enum_constant public static final android.graphics.ColorSpace.Named ACES; + enum_constant public static final android.graphics.ColorSpace.Named ACESCG; + enum_constant public static final android.graphics.ColorSpace.Named ADOBE_RGB; + enum_constant public static final android.graphics.ColorSpace.Named BT2020; + enum_constant public static final android.graphics.ColorSpace.Named BT2020_HLG; + enum_constant public static final android.graphics.ColorSpace.Named BT2020_PQ; + enum_constant public static final android.graphics.ColorSpace.Named BT709; + enum_constant public static final android.graphics.ColorSpace.Named CIE_LAB; + enum_constant public static final android.graphics.ColorSpace.Named CIE_XYZ; + enum_constant public static final android.graphics.ColorSpace.Named DCI_P3; + enum_constant @FlaggedApi("com.android.graphics.flags.display_bt2020_colorspace") public static final android.graphics.ColorSpace.Named DISPLAY_BT2020; + enum_constant public static final android.graphics.ColorSpace.Named DISPLAY_P3; + enum_constant public static final android.graphics.ColorSpace.Named EXTENDED_SRGB; + enum_constant public static final android.graphics.ColorSpace.Named LINEAR_EXTENDED_SRGB; + enum_constant public static final android.graphics.ColorSpace.Named LINEAR_SRGB; + enum_constant public static final android.graphics.ColorSpace.Named NTSC_1953; + enum_constant @FlaggedApi("com.android.graphics.flags.ok_lab_colorspace") public static final android.graphics.ColorSpace.Named OK_LAB; + enum_constant public static final android.graphics.ColorSpace.Named PRO_PHOTO_RGB; + enum_constant public static final android.graphics.ColorSpace.Named SMPTE_C; + enum_constant public static final android.graphics.ColorSpace.Named SRGB; + } + + public enum ColorSpace.RenderIntent { + enum_constant public static final android.graphics.ColorSpace.RenderIntent ABSOLUTE; + enum_constant public static final android.graphics.ColorSpace.RenderIntent PERCEPTUAL; + enum_constant public static final android.graphics.ColorSpace.RenderIntent RELATIVE; + enum_constant public static final android.graphics.ColorSpace.RenderIntent SATURATION; + } + + @AnyThread public static class ColorSpace.Rgb extends android.graphics.ColorSpace { + ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(9) float[], @NonNull java.util.function.DoubleUnaryOperator, @NonNull java.util.function.DoubleUnaryOperator); + ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(min=6, max=9) float[], @NonNull @Size(min=2, max=3) float[], @NonNull java.util.function.DoubleUnaryOperator, @NonNull java.util.function.DoubleUnaryOperator, float, float); + ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(9) float[], @NonNull android.graphics.ColorSpace.Rgb.TransferParameters); + ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(min=6, max=9) float[], @NonNull @Size(min=2, max=3) float[], @NonNull android.graphics.ColorSpace.Rgb.TransferParameters); + ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(9) float[], double); + ctor public ColorSpace.Rgb(@NonNull @Size(min=1) String, @NonNull @Size(min=6, max=9) float[], @NonNull @Size(min=2, max=3) float[], double); + method @NonNull @Size(3) public float[] fromLinear(float, float, float); + method @NonNull @Size(min=3) public float[] fromLinear(@NonNull @Size(min=3) float[]); + method @NonNull @Size(min=3) public float[] fromXyz(@NonNull @Size(min=3) float[]); + method @NonNull public java.util.function.DoubleUnaryOperator getEotf(); + method @NonNull @Size(min=9) public float[] getInverseTransform(@NonNull @Size(min=9) float[]); + method @NonNull @Size(9) public float[] getInverseTransform(); + method public float getMaxValue(int); + method public float getMinValue(int); + method @NonNull public java.util.function.DoubleUnaryOperator getOetf(); + method @NonNull @Size(min=6) public float[] getPrimaries(@NonNull @Size(min=6) float[]); + method @NonNull @Size(6) public float[] getPrimaries(); + method @Nullable public android.graphics.ColorSpace.Rgb.TransferParameters getTransferParameters(); + method @NonNull @Size(min=9) public float[] getTransform(@NonNull @Size(min=9) float[]); + method @NonNull @Size(9) public float[] getTransform(); + method @NonNull @Size(min=2) public float[] getWhitePoint(@NonNull @Size(min=2) float[]); + method @NonNull @Size(2) public float[] getWhitePoint(); + method public boolean isWideGamut(); + method @NonNull @Size(3) public float[] toLinear(float, float, float); + method @NonNull @Size(min=3) public float[] toLinear(@NonNull @Size(min=3) float[]); + method @NonNull @Size(min=3) public float[] toXyz(@NonNull @Size(min=3) float[]); + } + + public static class ColorSpace.Rgb.TransferParameters { + ctor public ColorSpace.Rgb.TransferParameters(double, double, double, double, double); + ctor public ColorSpace.Rgb.TransferParameters(double, double, double, double, double, double, double); + field public final double a; + field public final double b; + field public final double c; + field public final double d; + field public final double e; + field public final double f; + field public final double g; + } + + public class ComposePathEffect extends android.graphics.PathEffect { + ctor public ComposePathEffect(android.graphics.PathEffect, android.graphics.PathEffect); + } + + public class ComposeShader extends android.graphics.Shader { + ctor @Deprecated public ComposeShader(@NonNull android.graphics.Shader, @NonNull android.graphics.Shader, @NonNull android.graphics.Xfermode); + ctor public ComposeShader(@NonNull android.graphics.Shader, @NonNull android.graphics.Shader, @NonNull android.graphics.PorterDuff.Mode); + ctor public ComposeShader(@NonNull android.graphics.Shader, @NonNull android.graphics.Shader, @NonNull android.graphics.BlendMode); + } + + public class CornerPathEffect extends android.graphics.PathEffect { + ctor public CornerPathEffect(float); + } + + public class DashPathEffect extends android.graphics.PathEffect { + ctor public DashPathEffect(float[], float); + } + + public class DiscretePathEffect extends android.graphics.PathEffect { + ctor public DiscretePathEffect(float, float); + } + + public class DrawFilter { + ctor public DrawFilter(); + } + + public class EmbossMaskFilter extends android.graphics.MaskFilter { + ctor @Deprecated public EmbossMaskFilter(float[], float, float, float); + } + + public final class Gainmap implements android.os.Parcelable { + ctor public Gainmap(@NonNull android.graphics.Bitmap); + ctor @FlaggedApi("com.android.graphics.hwui.flags.gainmap_constructor_with_metadata") public Gainmap(@NonNull android.graphics.Gainmap, @NonNull android.graphics.Bitmap); + method public int describeContents(); + method @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") @Nullable public android.graphics.ColorSpace getAlternativeImagePrimaries(); + method @NonNull public float getDisplayRatioForFullHdr(); + method @NonNull public float[] getEpsilonHdr(); + method @NonNull public float[] getEpsilonSdr(); + method @NonNull public android.graphics.Bitmap getGainmapContents(); + method @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public int getGainmapDirection(); + method @NonNull public float[] getGamma(); + method @NonNull public float getMinDisplayRatioForHdrTransition(); + method @NonNull public float[] getRatioMax(); + method @NonNull public float[] getRatioMin(); + method @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public void setAlternativeImagePrimaries(@Nullable android.graphics.ColorSpace); + method public void setDisplayRatioForFullHdr(@FloatRange(from=1.0f) float); + method public void setEpsilonHdr(float, float, float); + method public void setEpsilonSdr(float, float, float); + method public void setGainmapContents(@NonNull android.graphics.Bitmap); + method @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public void setGainmapDirection(int); + method public void setGamma(float, float, float); + method public void setMinDisplayRatioForHdrTransition(@FloatRange(from=1.0f) float); + method public void setRatioMax(float, float, float); + method public void setRatioMin(float, float, float); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public static final int GAINMAP_DIRECTION_HDR_TO_SDR = 1; // 0x1 + field @FlaggedApi("com.android.graphics.hwui.flags.iso_gainmap_apis") public static final int GAINMAP_DIRECTION_SDR_TO_HDR = 0; // 0x0 + } + + public class HardwareBufferRenderer implements java.lang.AutoCloseable { + ctor public HardwareBufferRenderer(@NonNull android.hardware.HardwareBuffer); + method public void close(); + method public boolean isClosed(); + method @NonNull public android.graphics.HardwareBufferRenderer.RenderRequest obtainRenderRequest(); + method public void setContentRoot(@Nullable android.graphics.RenderNode); + method public void setLightSourceAlpha(@FloatRange(from=0.0f, to=1.0f) float, @FloatRange(from=0.0f, to=1.0f) float); + method public void setLightSourceGeometry(float, float, @FloatRange(from=0.0f) float, @FloatRange(from=0.0f) float); + } + + public final class HardwareBufferRenderer.RenderRequest { + method public void draw(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @NonNull public android.graphics.HardwareBufferRenderer.RenderRequest setBufferTransform(int); + method @NonNull public android.graphics.HardwareBufferRenderer.RenderRequest setColorSpace(@Nullable android.graphics.ColorSpace); + } + + public static final class HardwareBufferRenderer.RenderResult { + method @NonNull public android.hardware.SyncFence getFence(); + method public int getStatus(); + field public static final int ERROR_UNKNOWN = 1; // 0x1 + field public static final int SUCCESS = 0; // 0x0 + } + + public class HardwareRenderer { + ctor public HardwareRenderer(); + method public void clearContent(); + method @NonNull public android.graphics.HardwareRenderer.FrameRenderRequest createRenderRequest(); + method public void destroy(); + method public static boolean isDrawingEnabled(); + method public boolean isOpaque(); + method public void notifyFramePending(); + method public void setContentRoot(@Nullable android.graphics.RenderNode); + method public static void setDrawingEnabled(boolean); + method public void setLightSourceAlpha(@FloatRange(from=0.0f, to=1.0f) float, @FloatRange(from=0.0f, to=1.0f) float); + method public void setLightSourceGeometry(float, float, float, float); + method public void setName(@NonNull String); + method public void setOpaque(boolean); + method public void setSurface(@Nullable android.view.Surface); + method public void start(); + method public void stop(); + field public static final int SYNC_CONTEXT_IS_STOPPED = 4; // 0x4 + field public static final int SYNC_FRAME_DROPPED = 8; // 0x8 + field public static final int SYNC_LOST_SURFACE_REWARD_IF_FOUND = 2; // 0x2 + field public static final int SYNC_OK = 0; // 0x0 + field public static final int SYNC_REDRAW_REQUESTED = 1; // 0x1 + } + + public final class HardwareRenderer.FrameRenderRequest { + method @NonNull public android.graphics.HardwareRenderer.FrameRenderRequest setFrameCommitCallback(@NonNull java.util.concurrent.Executor, @NonNull Runnable); + method @NonNull public android.graphics.HardwareRenderer.FrameRenderRequest setVsyncTime(long); + method @NonNull public android.graphics.HardwareRenderer.FrameRenderRequest setWaitForPresent(boolean); + method public int syncAndDraw(); + } + + public final class ImageDecoder implements java.lang.AutoCloseable { + method public void close(); + method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull android.content.res.Resources, int); + method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull android.content.ContentResolver, @NonNull android.net.Uri); + method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull android.content.res.AssetManager, @NonNull String); + method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull byte[], int, int) throws java.lang.ArrayIndexOutOfBoundsException; + method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull byte[]); + method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull java.nio.ByteBuffer); + method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull java.io.File); + method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull java.util.concurrent.Callable); + method @NonNull @WorkerThread public static android.graphics.Bitmap decodeBitmap(@NonNull android.graphics.ImageDecoder.Source, @NonNull android.graphics.ImageDecoder.OnHeaderDecodedListener) throws java.io.IOException; + method @NonNull @WorkerThread public static android.graphics.Bitmap decodeBitmap(@NonNull android.graphics.ImageDecoder.Source) throws java.io.IOException; + method @NonNull @WorkerThread public static android.graphics.drawable.Drawable decodeDrawable(@NonNull android.graphics.ImageDecoder.Source, @NonNull android.graphics.ImageDecoder.OnHeaderDecodedListener) throws java.io.IOException; + method @NonNull @WorkerThread public static android.graphics.drawable.Drawable decodeDrawable(@NonNull android.graphics.ImageDecoder.Source) throws java.io.IOException; + method public int getAllocator(); + method @Nullable public android.graphics.Rect getCrop(); + method public int getMemorySizePolicy(); + method @Nullable public android.graphics.ImageDecoder.OnPartialImageListener getOnPartialImageListener(); + method @Nullable public android.graphics.PostProcessor getPostProcessor(); + method public boolean isDecodeAsAlphaMaskEnabled(); + method public static boolean isMimeTypeSupported(@NonNull String); + method public boolean isMutableRequired(); + method public boolean isUnpremultipliedRequired(); + method public void setAllocator(int); + method public void setCrop(@Nullable android.graphics.Rect); + method public void setDecodeAsAlphaMaskEnabled(boolean); + method public void setMemorySizePolicy(int); + method public void setMutableRequired(boolean); + method public void setOnPartialImageListener(@Nullable android.graphics.ImageDecoder.OnPartialImageListener); + method public void setPostProcessor(@Nullable android.graphics.PostProcessor); + method public void setTargetColorSpace(android.graphics.ColorSpace); + method public void setTargetSampleSize(@IntRange(from=1) int); + method public void setTargetSize(@IntRange(from=1) @Px int, @IntRange(from=1) @Px int); + method public void setUnpremultipliedRequired(boolean); + field public static final int ALLOCATOR_DEFAULT = 0; // 0x0 + field public static final int ALLOCATOR_HARDWARE = 3; // 0x3 + field public static final int ALLOCATOR_SHARED_MEMORY = 2; // 0x2 + field public static final int ALLOCATOR_SOFTWARE = 1; // 0x1 + field public static final int MEMORY_POLICY_DEFAULT = 1; // 0x1 + field public static final int MEMORY_POLICY_LOW_RAM = 0; // 0x0 + } + + public static final class ImageDecoder.DecodeException extends java.io.IOException { + method public int getError(); + method @NonNull public android.graphics.ImageDecoder.Source getSource(); + field public static final int SOURCE_EXCEPTION = 1; // 0x1 + field public static final int SOURCE_INCOMPLETE = 2; // 0x2 + field public static final int SOURCE_MALFORMED_DATA = 3; // 0x3 + } + + public static class ImageDecoder.ImageInfo { + method @Nullable public android.graphics.ColorSpace getColorSpace(); + method @NonNull public String getMimeType(); + method @NonNull public android.util.Size getSize(); + method public boolean isAnimated(); + } + + public static interface ImageDecoder.OnHeaderDecodedListener { + method public void onHeaderDecoded(@NonNull android.graphics.ImageDecoder, @NonNull android.graphics.ImageDecoder.ImageInfo, @NonNull android.graphics.ImageDecoder.Source); + } + + public static interface ImageDecoder.OnPartialImageListener { + method public boolean onPartialImage(@NonNull android.graphics.ImageDecoder.DecodeException); + } + + public abstract static class ImageDecoder.Source { + } + + public class ImageFormat { + ctor public ImageFormat(); + method public static int getBitsPerPixel(int); + field public static final int DEPTH16 = 1144402265; // 0x44363159 + field public static final int DEPTH_JPEG = 1768253795; // 0x69656963 + field public static final int DEPTH_POINT_CLOUD = 257; // 0x101 + field public static final int FLEX_RGBA_8888 = 42; // 0x2a + field public static final int FLEX_RGB_888 = 41; // 0x29 + field public static final int HEIC = 1212500294; // 0x48454946 + field @FlaggedApi("com.android.internal.camera.flags.camera_heif_gainmap") public static final int HEIC_ULTRAHDR = 4102; // 0x1006 + field public static final int JPEG = 256; // 0x100 + field public static final int JPEG_R = 4101; // 0x1005 + field public static final int NV16 = 16; // 0x10 + field public static final int NV21 = 17; // 0x11 + field public static final int PRIVATE = 34; // 0x22 + field public static final int RAW10 = 37; // 0x25 + field public static final int RAW12 = 38; // 0x26 + field public static final int RAW_PRIVATE = 36; // 0x24 + field public static final int RAW_SENSOR = 32; // 0x20 + field public static final int RGB_565 = 4; // 0x4 + field public static final int UNKNOWN = 0; // 0x0 + field public static final int Y8 = 538982489; // 0x20203859 + field public static final int YCBCR_P010 = 54; // 0x36 + field @FlaggedApi("android.media.codec.p210_format_support") public static final int YCBCR_P210 = 60; // 0x3c + field public static final int YUV_420_888 = 35; // 0x23 + field public static final int YUV_422_888 = 39; // 0x27 + field public static final int YUV_444_888 = 40; // 0x28 + field public static final int YUY2 = 20; // 0x14 + field public static final int YV12 = 842094169; // 0x32315659 + } + + public final class Insets implements android.os.Parcelable { + method @NonNull public static android.graphics.Insets add(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); + method public int describeContents(); + method @NonNull public static android.graphics.Insets max(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); + method @NonNull public static android.graphics.Insets min(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); + method @NonNull public static android.graphics.Insets of(int, int, int, int); + method @NonNull public static android.graphics.Insets of(@Nullable android.graphics.Rect); + method @NonNull public static android.graphics.Insets subtract(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @NonNull public static final android.graphics.Insets NONE; + field public final int bottom; + field public final int left; + field public final int right; + field public final int top; + } + + public class Interpolator { + ctor public Interpolator(int); + ctor public Interpolator(int, int); + method public final int getKeyFrameCount(); + method public final int getValueCount(); + method public void reset(int); + method public void reset(int, int); + method public void setKeyFrame(int, int, float[]); + method public void setKeyFrame(int, int, float[], float[]); + method public void setRepeatMirror(float, boolean); + method public android.graphics.Interpolator.Result timeToValues(float[]); + method public android.graphics.Interpolator.Result timeToValues(int, float[]); + } + + public enum Interpolator.Result { + enum_constant public static final android.graphics.Interpolator.Result FREEZE_END; + enum_constant public static final android.graphics.Interpolator.Result FREEZE_START; + enum_constant public static final android.graphics.Interpolator.Result NORMAL; + } + + public class LightingColorFilter extends android.graphics.ColorFilter { + ctor public LightingColorFilter(@ColorInt int, @ColorInt int); + method @ColorInt public int getColorAdd(); + method @ColorInt public int getColorMultiply(); + } + + public class LinearGradient extends android.graphics.Shader { + ctor public LinearGradient(float, float, float, float, @ColorInt @NonNull int[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); + ctor public LinearGradient(float, float, float, float, @ColorLong @NonNull long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); + ctor public LinearGradient(float, float, float, float, @ColorInt int, @ColorInt int, @NonNull android.graphics.Shader.TileMode); + ctor public LinearGradient(float, float, float, float, @ColorLong long, @ColorLong long, @NonNull android.graphics.Shader.TileMode); + } + + public class MaskFilter { + ctor public MaskFilter(); + } + + public class Matrix { + ctor public Matrix(); + ctor public Matrix(android.graphics.Matrix); + method public final void dump(@NonNull java.io.PrintWriter); + method public void getValues(float[]); + method public boolean invert(android.graphics.Matrix); + method public boolean isAffine(); + method public boolean isIdentity(); + method public void mapPoints(float[], int, float[], int, int); + method public void mapPoints(float[], float[]); + method public void mapPoints(float[]); + method public float mapRadius(float); + method public boolean mapRect(android.graphics.RectF, android.graphics.RectF); + method public boolean mapRect(android.graphics.RectF); + method public void mapVectors(float[], int, float[], int, int); + method public void mapVectors(float[], float[]); + method public void mapVectors(float[]); + method public boolean postConcat(android.graphics.Matrix); + method public boolean postRotate(float, float, float); + method public boolean postRotate(float); + method public boolean postScale(float, float, float, float); + method public boolean postScale(float, float); + method public boolean postSkew(float, float, float, float); + method public boolean postSkew(float, float); + method public boolean postTranslate(float, float); + method public boolean preConcat(android.graphics.Matrix); + method public boolean preRotate(float, float, float); + method public boolean preRotate(float); + method public boolean preScale(float, float, float, float); + method public boolean preScale(float, float); + method public boolean preSkew(float, float, float, float); + method public boolean preSkew(float, float); + method public boolean preTranslate(float, float); + method public boolean rectStaysRect(); + method public void reset(); + method public void set(android.graphics.Matrix); + method public boolean setConcat(android.graphics.Matrix, android.graphics.Matrix); + method public boolean setPolyToPoly(float[], int, float[], int, int); + method public boolean setRectToRect(android.graphics.RectF, android.graphics.RectF, android.graphics.Matrix.ScaleToFit); + method public void setRotate(float, float, float); + method public void setRotate(float); + method public void setScale(float, float, float, float); + method public void setScale(float, float); + method public void setSinCos(float, float, float, float); + method public void setSinCos(float, float); + method public void setSkew(float, float, float, float); + method public void setSkew(float, float); + method public void setTranslate(float, float); + method public void setValues(float[]); + method public String toShortString(); + field @NonNull public static final android.graphics.Matrix IDENTITY_MATRIX; + field public static final int MPERSP_0 = 6; // 0x6 + field public static final int MPERSP_1 = 7; // 0x7 + field public static final int MPERSP_2 = 8; // 0x8 + field public static final int MSCALE_X = 0; // 0x0 + field public static final int MSCALE_Y = 4; // 0x4 + field public static final int MSKEW_X = 1; // 0x1 + field public static final int MSKEW_Y = 3; // 0x3 + field public static final int MTRANS_X = 2; // 0x2 + field public static final int MTRANS_Y = 5; // 0x5 + } + + public enum Matrix.ScaleToFit { + enum_constant public static final android.graphics.Matrix.ScaleToFit CENTER; + enum_constant public static final android.graphics.Matrix.ScaleToFit END; + enum_constant public static final android.graphics.Matrix.ScaleToFit FILL; + enum_constant public static final android.graphics.Matrix.ScaleToFit START; + } + + @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public class Matrix44 { + ctor @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public Matrix44(); + ctor @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public Matrix44(@NonNull android.graphics.Matrix); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public android.graphics.Matrix44 concat(@NonNull android.graphics.Matrix44); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public float get(@IntRange(from=0, to=3) int, @IntRange(from=0, to=3) int); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void getValues(@NonNull float[]); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public boolean invert(); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public boolean isIdentity(); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public float[] map(float, float, float, float); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void map(float, float, float, float, @NonNull float[]); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void reset(); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public android.graphics.Matrix44 rotate(float, float, float, float); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public android.graphics.Matrix44 scale(float, float, float); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void set(@IntRange(from=0, to=3) int, @IntRange(from=0, to=3) int, float); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") public void setValues(@NonNull float[]); + method @FlaggedApi("com.android.graphics.hwui.flags.matrix_44") @NonNull public android.graphics.Matrix44 translate(float, float, float); + } + + public class Mesh { + ctor public Mesh(@NonNull android.graphics.MeshSpecification, int, @NonNull java.nio.Buffer, int, @NonNull android.graphics.RectF); + ctor public Mesh(@NonNull android.graphics.MeshSpecification, int, @NonNull java.nio.Buffer, int, @NonNull java.nio.ShortBuffer, @NonNull android.graphics.RectF); + method public void setColorUniform(@NonNull String, @ColorInt int); + method public void setColorUniform(@NonNull String, @ColorLong long); + method public void setColorUniform(@NonNull String, @NonNull android.graphics.Color); + method public void setFloatUniform(@NonNull String, float); + method public void setFloatUniform(@NonNull String, float, float); + method public void setFloatUniform(@NonNull String, float, float, float); + method public void setFloatUniform(@NonNull String, float, float, float, float); + method public void setFloatUniform(@NonNull String, @NonNull float[]); + method public void setIntUniform(@NonNull String, int); + method public void setIntUniform(@NonNull String, int, int); + method public void setIntUniform(@NonNull String, int, int, int); + method public void setIntUniform(@NonNull String, int, int, int, int); + method public void setIntUniform(@NonNull String, @NonNull int[]); + field public static final int TRIANGLES = 0; // 0x0 + field public static final int TRIANGLE_STRIP = 1; // 0x1 + } + + public class MeshSpecification { + method @NonNull public static android.graphics.MeshSpecification make(@NonNull @Size(max=8) android.graphics.MeshSpecification.Attribute[], @IntRange(from=1, to=1024) int, @NonNull @Size(max=6) android.graphics.MeshSpecification.Varying[], @NonNull String, @NonNull String); + method @NonNull public static android.graphics.MeshSpecification make(@NonNull @Size(max=8) android.graphics.MeshSpecification.Attribute[], @IntRange(from=1, to=1024) int, @NonNull @Size(max=6) android.graphics.MeshSpecification.Varying[], @NonNull String, @NonNull String, @NonNull android.graphics.ColorSpace); + method @NonNull public static android.graphics.MeshSpecification make(@NonNull @Size(max=8) android.graphics.MeshSpecification.Attribute[], @IntRange(from=1, to=1024) int, @NonNull @Size(max=6) android.graphics.MeshSpecification.Varying[], @NonNull String, @NonNull String, @NonNull android.graphics.ColorSpace, int); + field public static final int ALPHA_TYPE_OPAQUE = 1; // 0x1 + field public static final int ALPHA_TYPE_PREMULTIPLIED = 2; // 0x2 + field public static final int ALPHA_TYPE_UNKNOWN = 0; // 0x0 + field public static final int ALPHA_TYPE_UNPREMULTIPLIED = 3; // 0x3 + field public static final int TYPE_FLOAT = 0; // 0x0 + field public static final int TYPE_FLOAT2 = 1; // 0x1 + field public static final int TYPE_FLOAT3 = 2; // 0x2 + field public static final int TYPE_FLOAT4 = 3; // 0x3 + field public static final int TYPE_UBYTE4 = 4; // 0x4 + } + + public static class MeshSpecification.Attribute { + ctor public MeshSpecification.Attribute(int, int, @NonNull String); + method @NonNull public String getName(); + method public int getOffset(); + method public int getType(); + } + + public static class MeshSpecification.Varying { + ctor public MeshSpecification.Varying(int, @NonNull String); + method @NonNull public String getName(); + method public int getType(); + } + + @Deprecated public class Movie { + method @Deprecated public static android.graphics.Movie decodeByteArray(byte[], int, int); + method @Deprecated public static android.graphics.Movie decodeFile(String); + method @Deprecated public static android.graphics.Movie decodeStream(java.io.InputStream); + method @Deprecated public void draw(android.graphics.Canvas, float, float, android.graphics.Paint); + method @Deprecated public void draw(android.graphics.Canvas, float, float); + method @Deprecated public int duration(); + method @Deprecated public int height(); + method @Deprecated public boolean isOpaque(); + method @Deprecated public boolean setTime(int); + method @Deprecated public int width(); + } + + public class NinePatch { + ctor public NinePatch(android.graphics.Bitmap, byte[]); + ctor public NinePatch(android.graphics.Bitmap, byte[], String); + method public void draw(android.graphics.Canvas, android.graphics.RectF); + method public void draw(android.graphics.Canvas, android.graphics.Rect); + method public void draw(android.graphics.Canvas, android.graphics.Rect, android.graphics.Paint); + method public android.graphics.Bitmap getBitmap(); + method public int getDensity(); + method public int getHeight(); + method public String getName(); + method public android.graphics.Paint getPaint(); + method public final android.graphics.Region getTransparentRegion(android.graphics.Rect); + method public int getWidth(); + method public final boolean hasAlpha(); + method public static boolean isNinePatchChunk(byte[]); + method public void setPaint(android.graphics.Paint); + } + + public final class Outline { + ctor public Outline(); + ctor public Outline(@NonNull android.graphics.Outline); + method public boolean canClip(); + method public float getAlpha(); + method public float getRadius(); + method public boolean getRect(@NonNull android.graphics.Rect); + method public boolean isEmpty(); + method public void offset(int, int); + method public void set(@NonNull android.graphics.Outline); + method public void setAlpha(@FloatRange(from=0.0, to=1.0) float); + method @Deprecated public void setConvexPath(@NonNull android.graphics.Path); + method public void setEmpty(); + method public void setOval(int, int, int, int); + method public void setOval(@NonNull android.graphics.Rect); + method public void setPath(@NonNull android.graphics.Path); + method public void setRect(int, int, int, int); + method public void setRect(@NonNull android.graphics.Rect); + method public void setRoundRect(int, int, int, int, float); + method public void setRoundRect(@NonNull android.graphics.Rect, float); + } + + public class Paint { + ctor public Paint(); + ctor public Paint(int); + ctor public Paint(android.graphics.Paint); + method public float ascent(); + method public int breakText(char[], int, int, float, float[]); + method public int breakText(CharSequence, int, int, boolean, float, float[]); + method public int breakText(String, boolean, float, float[]); + method public void clearShadowLayer(); + method public float descent(); + method public boolean equalsForTextMeasurement(@NonNull android.graphics.Paint); + method public int getAlpha(); + method @Nullable public android.graphics.BlendMode getBlendMode(); + method @ColorInt public int getColor(); + method public android.graphics.ColorFilter getColorFilter(); + method @ColorLong public long getColorLong(); + method public int getEndHyphenEdit(); + method public boolean getFillPath(android.graphics.Path, android.graphics.Path); + method public int getFlags(); + method public String getFontFeatureSettings(); + method public float getFontMetrics(android.graphics.Paint.FontMetrics); + method public android.graphics.Paint.FontMetrics getFontMetrics(); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void getFontMetricsForLocale(@NonNull android.graphics.Paint.FontMetrics); + method public void getFontMetricsInt(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, boolean, @NonNull android.graphics.Paint.FontMetricsInt); + method public void getFontMetricsInt(@NonNull char[], @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, boolean, @NonNull android.graphics.Paint.FontMetricsInt); + method public int getFontMetricsInt(android.graphics.Paint.FontMetricsInt); + method public android.graphics.Paint.FontMetricsInt getFontMetricsInt(); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void getFontMetricsIntForLocale(@NonNull android.graphics.Paint.FontMetricsInt); + method public float getFontSpacing(); + method public String getFontVariationSettings(); + method public int getHinting(); + method public float getLetterSpacing(); + method public android.graphics.MaskFilter getMaskFilter(); + method public int getOffsetForAdvance(char[], int, int, int, int, boolean, float); + method public int getOffsetForAdvance(CharSequence, int, int, int, int, boolean, float); + method public android.graphics.PathEffect getPathEffect(); + method public float getRunAdvance(char[], int, int, int, int, boolean, int); + method public float getRunAdvance(CharSequence, int, int, int, int, boolean, int); + method public float getRunCharacterAdvance(@NonNull char[], int, int, int, int, boolean, int, @Nullable float[], int); + method public float getRunCharacterAdvance(@NonNull CharSequence, int, int, int, int, boolean, int, @Nullable float[], int); + method public android.graphics.Shader getShader(); + method @ColorInt public int getShadowLayerColor(); + method @ColorLong public long getShadowLayerColorLong(); + method public float getShadowLayerDx(); + method public float getShadowLayerDy(); + method public float getShadowLayerRadius(); + method public int getStartHyphenEdit(); + method @Px public float getStrikeThruPosition(); + method @Px public float getStrikeThruThickness(); + method public android.graphics.Paint.Cap getStrokeCap(); + method public android.graphics.Paint.Join getStrokeJoin(); + method public float getStrokeMiter(); + method public float getStrokeWidth(); + method public android.graphics.Paint.Style getStyle(); + method public android.graphics.Paint.Align getTextAlign(); + method public void getTextBounds(String, int, int, android.graphics.Rect); + method public void getTextBounds(@NonNull CharSequence, int, int, @NonNull android.graphics.Rect); + method public void getTextBounds(char[], int, int, android.graphics.Rect); + method @NonNull public java.util.Locale getTextLocale(); + method @NonNull @Size(min=1) public android.os.LocaleList getTextLocales(); + method public void getTextPath(char[], int, int, float, float, android.graphics.Path); + method public void getTextPath(String, int, int, float, float, android.graphics.Path); + method public float getTextRunAdvances(@NonNull char[], @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, boolean, @Nullable float[], @IntRange(from=0) int); + method public int getTextRunCursor(@NonNull char[], @IntRange(from=0) int, @IntRange(from=0) int, boolean, @IntRange(from=0) int, int); + method public int getTextRunCursor(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, boolean, @IntRange(from=0) int, int); + method public float getTextScaleX(); + method public float getTextSize(); + method public float getTextSkewX(); + method public int getTextWidths(char[], int, int, float[]); + method public int getTextWidths(CharSequence, int, int, float[]); + method public int getTextWidths(String, int, int, float[]); + method public int getTextWidths(String, float[]); + method public android.graphics.Typeface getTypeface(); + method @Px public float getUnderlinePosition(); + method @Px public float getUnderlineThickness(); + method @Px public float getWordSpacing(); + method public android.graphics.Xfermode getXfermode(); + method public boolean hasGlyph(String); + method public final boolean isAntiAlias(); + method public final boolean isDither(); + method @Deprecated @FlaggedApi("com.android.text.flags.deprecate_elegant_text_height_api") public boolean isElegantTextHeight(); + method public final boolean isFakeBoldText(); + method public final boolean isFilterBitmap(); + method public final boolean isLinearText(); + method public final boolean isStrikeThruText(); + method public final boolean isSubpixelText(); + method public final boolean isUnderlineText(); + method public float measureText(char[], int, int); + method public float measureText(String, int, int); + method public float measureText(String); + method public float measureText(CharSequence, int, int); + method public void reset(); + method public void set(android.graphics.Paint); + method public void setARGB(int, int, int, int); + method public void setAlpha(int); + method public void setAntiAlias(boolean); + method public void setBlendMode(@Nullable android.graphics.BlendMode); + method public void setColor(@ColorInt int); + method public void setColor(@ColorLong long); + method public android.graphics.ColorFilter setColorFilter(android.graphics.ColorFilter); + method public void setDither(boolean); + method @Deprecated @FlaggedApi("com.android.text.flags.deprecate_elegant_text_height_api") public void setElegantTextHeight(boolean); + method public void setEndHyphenEdit(int); + method public void setFakeBoldText(boolean); + method public void setFilterBitmap(boolean); + method public void setFlags(int); + method public void setFontFeatureSettings(String); + method public boolean setFontVariationSettings(String); + method public void setHinting(int); + method public void setLetterSpacing(float); + method public void setLinearText(boolean); + method public android.graphics.MaskFilter setMaskFilter(android.graphics.MaskFilter); + method public android.graphics.PathEffect setPathEffect(android.graphics.PathEffect); + method public android.graphics.Shader setShader(android.graphics.Shader); + method public void setShadowLayer(float, float, float, @ColorInt int); + method public void setShadowLayer(float, float, float, @ColorLong long); + method public void setStartHyphenEdit(int); + method public void setStrikeThruText(boolean); + method public void setStrokeCap(android.graphics.Paint.Cap); + method public void setStrokeJoin(android.graphics.Paint.Join); + method public void setStrokeMiter(float); + method public void setStrokeWidth(float); + method public void setStyle(android.graphics.Paint.Style); + method public void setSubpixelText(boolean); + method public void setTextAlign(android.graphics.Paint.Align); + method public void setTextLocale(@NonNull java.util.Locale); + method public void setTextLocales(@NonNull @Size(min=1) android.os.LocaleList); + method public void setTextScaleX(float); + method public void setTextSize(float); + method public void setTextSkewX(float); + method public android.graphics.Typeface setTypeface(android.graphics.Typeface); + method public void setUnderlineText(boolean); + method public void setWordSpacing(@Px float); + method public android.graphics.Xfermode setXfermode(android.graphics.Xfermode); + field public static final int ANTI_ALIAS_FLAG = 1; // 0x1 + field public static final int CURSOR_AFTER = 0; // 0x0 + field public static final int CURSOR_AT = 4; // 0x4 + field public static final int CURSOR_AT_OR_AFTER = 1; // 0x1 + field public static final int CURSOR_AT_OR_BEFORE = 3; // 0x3 + field public static final int CURSOR_BEFORE = 2; // 0x2 + field public static final int DEV_KERN_TEXT_FLAG = 256; // 0x100 + field public static final int DITHER_FLAG = 4; // 0x4 + field public static final int EMBEDDED_BITMAP_TEXT_FLAG = 1024; // 0x400 + field public static final int END_HYPHEN_EDIT_INSERT_ARMENIAN_HYPHEN = 3; // 0x3 + field public static final int END_HYPHEN_EDIT_INSERT_HYPHEN = 2; // 0x2 + field public static final int END_HYPHEN_EDIT_INSERT_MAQAF = 4; // 0x4 + field public static final int END_HYPHEN_EDIT_INSERT_UCAS_HYPHEN = 5; // 0x5 + field public static final int END_HYPHEN_EDIT_INSERT_ZWJ_AND_HYPHEN = 6; // 0x6 + field public static final int END_HYPHEN_EDIT_NO_EDIT = 0; // 0x0 + field public static final int END_HYPHEN_EDIT_REPLACE_WITH_HYPHEN = 1; // 0x1 + field public static final int FAKE_BOLD_TEXT_FLAG = 32; // 0x20 + field public static final int FILTER_BITMAP_FLAG = 2; // 0x2 + field public static final int HINTING_OFF = 0; // 0x0 + field public static final int HINTING_ON = 1; // 0x1 + field public static final int LINEAR_TEXT_FLAG = 64; // 0x40 + field public static final int START_HYPHEN_EDIT_INSERT_HYPHEN = 1; // 0x1 + field public static final int START_HYPHEN_EDIT_INSERT_ZWJ = 2; // 0x2 + field public static final int START_HYPHEN_EDIT_NO_EDIT = 0; // 0x0 + field public static final int STRIKE_THRU_TEXT_FLAG = 16; // 0x10 + field public static final int SUBPIXEL_TEXT_FLAG = 128; // 0x80 + field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int TEXT_RUN_FLAG_LEFT_EDGE = 8192; // 0x2000 + field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int TEXT_RUN_FLAG_RIGHT_EDGE = 16384; // 0x4000 + field public static final int UNDERLINE_TEXT_FLAG = 8; // 0x8 + field @FlaggedApi("com.android.text.flags.vertical_text_layout") public static final int VERTICAL_TEXT_FLAG = 4096; // 0x1000 + } + + public enum Paint.Align { + enum_constant public static final android.graphics.Paint.Align CENTER; + enum_constant public static final android.graphics.Paint.Align LEFT; + enum_constant public static final android.graphics.Paint.Align RIGHT; + } + + public enum Paint.Cap { + enum_constant public static final android.graphics.Paint.Cap BUTT; + enum_constant public static final android.graphics.Paint.Cap ROUND; + enum_constant public static final android.graphics.Paint.Cap SQUARE; + } + + public static class Paint.FontMetrics { + ctor public Paint.FontMetrics(); + field public float ascent; + field public float bottom; + field public float descent; + field public float leading; + field public float top; + } + + public static class Paint.FontMetricsInt { + ctor public Paint.FontMetricsInt(); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void set(@NonNull android.graphics.Paint.FontMetricsInt); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void set(@NonNull android.graphics.Paint.FontMetrics); + field public int ascent; + field public int bottom; + field public int descent; + field public int leading; + field public int top; + } + + public enum Paint.Join { + enum_constant public static final android.graphics.Paint.Join BEVEL; + enum_constant public static final android.graphics.Paint.Join MITER; + enum_constant public static final android.graphics.Paint.Join ROUND; + } + + public enum Paint.Style { + enum_constant public static final android.graphics.Paint.Style FILL; + enum_constant public static final android.graphics.Paint.Style FILL_AND_STROKE; + enum_constant public static final android.graphics.Paint.Style STROKE; + } + + public class PaintFlagsDrawFilter extends android.graphics.DrawFilter { + ctor public PaintFlagsDrawFilter(int, int); + } + + public final class ParcelableColorSpace implements android.os.Parcelable { + ctor public ParcelableColorSpace(@NonNull android.graphics.ColorSpace); + method public int describeContents(); + method @NonNull public android.graphics.ColorSpace getColorSpace(); + method public static boolean isParcelable(@NonNull android.graphics.ColorSpace); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class Path { + ctor public Path(); + ctor public Path(@Nullable android.graphics.Path); + method public void addArc(@NonNull android.graphics.RectF, float, float); + method public void addArc(float, float, float, float, float, float); + method public void addCircle(float, float, float, @NonNull android.graphics.Path.Direction); + method public void addOval(@NonNull android.graphics.RectF, @NonNull android.graphics.Path.Direction); + method public void addOval(float, float, float, float, @NonNull android.graphics.Path.Direction); + method public void addPath(@NonNull android.graphics.Path, float, float); + method public void addPath(@NonNull android.graphics.Path); + method public void addPath(@NonNull android.graphics.Path, @NonNull android.graphics.Matrix); + method public void addRect(@NonNull android.graphics.RectF, @NonNull android.graphics.Path.Direction); + method public void addRect(float, float, float, float, @NonNull android.graphics.Path.Direction); + method public void addRoundRect(@NonNull android.graphics.RectF, float, float, @NonNull android.graphics.Path.Direction); + method public void addRoundRect(float, float, float, float, float, float, @NonNull android.graphics.Path.Direction); + method public void addRoundRect(@NonNull android.graphics.RectF, @NonNull float[], @NonNull android.graphics.Path.Direction); + method public void addRoundRect(float, float, float, float, @NonNull float[], @NonNull android.graphics.Path.Direction); + method @NonNull @Size(min=6, multiple=3) public float[] approximate(@FloatRange(from=0) float); + method public void arcTo(@NonNull android.graphics.RectF, float, float, boolean); + method public void arcTo(@NonNull android.graphics.RectF, float, float); + method public void arcTo(float, float, float, float, float, float, boolean); + method public void close(); + method public void computeBounds(@NonNull android.graphics.RectF, boolean); + method @FlaggedApi("com.android.graphics.flags.exact_compute_bounds") public void computeBounds(@NonNull android.graphics.RectF); + method public void conicTo(float, float, float, float, float); + method public void cubicTo(float, float, float, float, float, float); + method @NonNull public android.graphics.Path.FillType getFillType(); + method public int getGenerationId(); + method @NonNull public android.graphics.PathIterator getPathIterator(); + method public void incReserve(int); + method public boolean interpolate(@NonNull android.graphics.Path, float, @NonNull android.graphics.Path); + method @Deprecated public boolean isConvex(); + method public boolean isEmpty(); + method public boolean isInterpolatable(@NonNull android.graphics.Path); + method public boolean isInverseFillType(); + method public boolean isRect(@Nullable android.graphics.RectF); + method public void lineTo(float, float); + method public void moveTo(float, float); + method public void offset(float, float, @Nullable android.graphics.Path); + method public void offset(float, float); + method public boolean op(@NonNull android.graphics.Path, @NonNull android.graphics.Path.Op); + method public boolean op(@NonNull android.graphics.Path, @NonNull android.graphics.Path, @NonNull android.graphics.Path.Op); + method public void quadTo(float, float, float, float); + method public void rConicTo(float, float, float, float, float); + method public void rCubicTo(float, float, float, float, float, float); + method public void rLineTo(float, float); + method public void rMoveTo(float, float); + method public void rQuadTo(float, float, float, float); + method public void reset(); + method public void rewind(); + method public void set(@NonNull android.graphics.Path); + method public void setFillType(@NonNull android.graphics.Path.FillType); + method public void setLastPoint(float, float); + method public void toggleInverseFillType(); + method public void transform(@NonNull android.graphics.Matrix, @Nullable android.graphics.Path); + method public void transform(@NonNull android.graphics.Matrix); + } + + public enum Path.Direction { + enum_constant public static final android.graphics.Path.Direction CCW; + enum_constant public static final android.graphics.Path.Direction CW; + } + + public enum Path.FillType { + enum_constant public static final android.graphics.Path.FillType EVEN_ODD; + enum_constant public static final android.graphics.Path.FillType INVERSE_EVEN_ODD; + enum_constant public static final android.graphics.Path.FillType INVERSE_WINDING; + enum_constant public static final android.graphics.Path.FillType WINDING; + } + + public enum Path.Op { + enum_constant public static final android.graphics.Path.Op DIFFERENCE; + enum_constant public static final android.graphics.Path.Op INTERSECT; + enum_constant public static final android.graphics.Path.Op REVERSE_DIFFERENCE; + enum_constant public static final android.graphics.Path.Op UNION; + enum_constant public static final android.graphics.Path.Op XOR; + } + + public class PathDashPathEffect extends android.graphics.PathEffect { + ctor public PathDashPathEffect(android.graphics.Path, float, float, android.graphics.PathDashPathEffect.Style); + } + + public enum PathDashPathEffect.Style { + enum_constant public static final android.graphics.PathDashPathEffect.Style MORPH; + enum_constant public static final android.graphics.PathDashPathEffect.Style ROTATE; + enum_constant public static final android.graphics.PathDashPathEffect.Style TRANSLATE; + } + + public class PathEffect { + ctor public PathEffect(); + } + + public class PathIterator implements java.util.Iterator { + method public boolean hasNext(); + method @NonNull public int next(@NonNull float[], int); + method @NonNull public android.graphics.PathIterator.Segment next(); + method @NonNull public int peek(); + field public static final int VERB_CLOSE = 5; // 0x5 + field public static final int VERB_CONIC = 3; // 0x3 + field public static final int VERB_CUBIC = 4; // 0x4 + field public static final int VERB_DONE = 6; // 0x6 + field public static final int VERB_LINE = 1; // 0x1 + field public static final int VERB_MOVE = 0; // 0x0 + field public static final int VERB_QUAD = 2; // 0x2 + } + + public static class PathIterator.Segment { + method public float getConicWeight(); + method @NonNull public float[] getPoints(); + method @NonNull public int getVerb(); + } + + public class PathMeasure { + ctor public PathMeasure(); + ctor public PathMeasure(android.graphics.Path, boolean); + method public float getLength(); + method public boolean getMatrix(float, android.graphics.Matrix, int); + method public boolean getPosTan(float, float[], float[]); + method public boolean getSegment(float, float, android.graphics.Path, boolean); + method public boolean isClosed(); + method public boolean nextContour(); + method public void setPath(android.graphics.Path, boolean); + field public static final int POSITION_MATRIX_FLAG = 1; // 0x1 + field public static final int TANGENT_MATRIX_FLAG = 2; // 0x2 + } + + public class Picture { + ctor public Picture(); + ctor public Picture(android.graphics.Picture); + method @NonNull public android.graphics.Canvas beginRecording(int, int); + method public void draw(@NonNull android.graphics.Canvas); + method public void endRecording(); + method public int getHeight(); + method public int getWidth(); + method public boolean requiresHardwareAcceleration(); + } + + public class PixelFormat { + ctor public PixelFormat(); + method public static boolean formatHasAlpha(int); + method public static void getPixelFormatInfo(int, android.graphics.PixelFormat); + field @Deprecated public static final int A_8 = 8; // 0x8 + field @Deprecated public static final int JPEG = 256; // 0x100 + field @Deprecated public static final int LA_88 = 10; // 0xa + field @Deprecated public static final int L_8 = 9; // 0x9 + field public static final int OPAQUE = -1; // 0xffffffff + field public static final int RGBA_1010102 = 43; // 0x2b + field @Deprecated public static final int RGBA_4444 = 7; // 0x7 + field @Deprecated public static final int RGBA_5551 = 6; // 0x6 + field public static final int RGBA_8888 = 1; // 0x1 + field public static final int RGBA_F16 = 22; // 0x16 + field public static final int RGBX_8888 = 2; // 0x2 + field @Deprecated public static final int RGB_332 = 11; // 0xb + field public static final int RGB_565 = 4; // 0x4 + field public static final int RGB_888 = 3; // 0x3 + field public static final int TRANSLUCENT = -3; // 0xfffffffd + field public static final int TRANSPARENT = -2; // 0xfffffffe + field public static final int UNKNOWN = 0; // 0x0 + field @Deprecated public static final int YCbCr_420_SP = 17; // 0x11 + field @Deprecated public static final int YCbCr_422_I = 20; // 0x14 + field @Deprecated public static final int YCbCr_422_SP = 16; // 0x10 + field public int bitsPerPixel; + field public int bytesPerPixel; + } + + public class Point implements android.os.Parcelable { + ctor public Point(); + ctor public Point(int, int); + ctor public Point(@NonNull android.graphics.Point); + method public int describeContents(); + method public final boolean equals(int, int); + method public final void negate(); + method public final void offset(int, int); + method public void readFromParcel(@NonNull android.os.Parcel); + method public void set(int, int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public int x; + field public int y; + } + + public class PointF implements android.os.Parcelable { + ctor public PointF(); + ctor public PointF(float, float); + ctor public PointF(@NonNull android.graphics.Point); + ctor public PointF(@NonNull android.graphics.PointF); + method public int describeContents(); + method public final boolean equals(float, float); + method public final float length(); + method public static float length(float, float); + method public final void negate(); + method public final void offset(float, float); + method public void readFromParcel(@NonNull android.os.Parcel); + method public final void set(float, float); + method public final void set(@NonNull android.graphics.PointF); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public float x; + field public float y; + } + + public class PorterDuff { + ctor public PorterDuff(); + } + + public enum PorterDuff.Mode { + enum_constant public static final android.graphics.PorterDuff.Mode ADD; + enum_constant public static final android.graphics.PorterDuff.Mode CLEAR; + enum_constant public static final android.graphics.PorterDuff.Mode DARKEN; + enum_constant public static final android.graphics.PorterDuff.Mode DST; + enum_constant public static final android.graphics.PorterDuff.Mode DST_ATOP; + enum_constant public static final android.graphics.PorterDuff.Mode DST_IN; + enum_constant public static final android.graphics.PorterDuff.Mode DST_OUT; + enum_constant public static final android.graphics.PorterDuff.Mode DST_OVER; + enum_constant public static final android.graphics.PorterDuff.Mode LIGHTEN; + enum_constant public static final android.graphics.PorterDuff.Mode MULTIPLY; + enum_constant public static final android.graphics.PorterDuff.Mode OVERLAY; + enum_constant public static final android.graphics.PorterDuff.Mode SCREEN; + enum_constant public static final android.graphics.PorterDuff.Mode SRC; + enum_constant public static final android.graphics.PorterDuff.Mode SRC_ATOP; + enum_constant public static final android.graphics.PorterDuff.Mode SRC_IN; + enum_constant public static final android.graphics.PorterDuff.Mode SRC_OUT; + enum_constant public static final android.graphics.PorterDuff.Mode SRC_OVER; + enum_constant public static final android.graphics.PorterDuff.Mode XOR; + } + + public class PorterDuffColorFilter extends android.graphics.ColorFilter { + ctor public PorterDuffColorFilter(@ColorInt int, @NonNull android.graphics.PorterDuff.Mode); + } + + public class PorterDuffXfermode extends android.graphics.Xfermode { + ctor public PorterDuffXfermode(android.graphics.PorterDuff.Mode); + } + + public interface PostProcessor { + method public int onPostProcess(@NonNull android.graphics.Canvas); + } + + public class RadialGradient extends android.graphics.Shader { + ctor public RadialGradient(float, float, float, @ColorInt @NonNull int[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); + ctor public RadialGradient(float, float, float, @ColorLong @NonNull long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); + ctor public RadialGradient(float, float, @FloatRange(from=0.0f) float, float, float, @FloatRange(from=0.0f, fromInclusive=false) float, @ColorLong @NonNull long[], @Nullable float[], @NonNull android.graphics.Shader.TileMode); + ctor public RadialGradient(float, float, float, @ColorInt int, @ColorInt int, @NonNull android.graphics.Shader.TileMode); + ctor public RadialGradient(float, float, float, @ColorLong long, @ColorLong long, @NonNull android.graphics.Shader.TileMode); + } + + public final class RecordingCanvas extends android.graphics.Canvas { + } + + public final class Rect implements android.os.Parcelable { + ctor public Rect(); + ctor public Rect(int, int, int, int); + ctor public Rect(@Nullable android.graphics.Rect); + method public int centerX(); + method public int centerY(); + method public boolean contains(int, int); + method public boolean contains(int, int, int, int); + method public boolean contains(@NonNull android.graphics.Rect); + method public int describeContents(); + method public float exactCenterX(); + method public float exactCenterY(); + method @NonNull public String flattenToString(); + method public int height(); + method public void inset(int, int); + method public void inset(@NonNull android.graphics.Insets); + method public void inset(int, int, int, int); + method @CheckResult public boolean intersect(int, int, int, int); + method @CheckResult public boolean intersect(@NonNull android.graphics.Rect); + method public boolean intersects(int, int, int, int); + method public static boolean intersects(@NonNull android.graphics.Rect, @NonNull android.graphics.Rect); + method public boolean isEmpty(); + method public void offset(int, int); + method public void offsetTo(int, int); + method public void readFromParcel(@NonNull android.os.Parcel); + method public void set(int, int, int, int); + method public void set(@NonNull android.graphics.Rect); + method public void setEmpty(); + method @CheckResult public boolean setIntersect(@NonNull android.graphics.Rect, @NonNull android.graphics.Rect); + method public void sort(); + method @NonNull public String toShortString(); + method @Nullable public static android.graphics.Rect unflattenFromString(@Nullable String); + method public void union(int, int, int, int); + method public void union(@NonNull android.graphics.Rect); + method public void union(int, int); + method public int width(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public int bottom; + field public int left; + field public int right; + field public int top; + } + + public class RectF implements android.os.Parcelable { + ctor public RectF(); + ctor public RectF(float, float, float, float); + ctor public RectF(@Nullable android.graphics.RectF); + ctor public RectF(@Nullable android.graphics.Rect); + method public final float centerX(); + method public final float centerY(); + method public boolean contains(float, float); + method public boolean contains(float, float, float, float); + method public boolean contains(@NonNull android.graphics.RectF); + method public int describeContents(); + method public final float height(); + method public void inset(float, float); + method public boolean intersect(float, float, float, float); + method public boolean intersect(@NonNull android.graphics.RectF); + method public boolean intersects(float, float, float, float); + method public static boolean intersects(@NonNull android.graphics.RectF, @NonNull android.graphics.RectF); + method public final boolean isEmpty(); + method public void offset(float, float); + method public void offsetTo(float, float); + method public void readFromParcel(@NonNull android.os.Parcel); + method public void round(@NonNull android.graphics.Rect); + method public void roundOut(@NonNull android.graphics.Rect); + method public void set(float, float, float, float); + method public void set(@NonNull android.graphics.RectF); + method public void set(@NonNull android.graphics.Rect); + method public void setEmpty(); + method public boolean setIntersect(@NonNull android.graphics.RectF, @NonNull android.graphics.RectF); + method public void sort(); + method @NonNull public String toShortString(); + method public void union(float, float, float, float); + method public void union(@NonNull android.graphics.RectF); + method public void union(float, float); + method public final float width(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public float bottom; + field public float left; + field public float right; + field public float top; + } + + public class Region implements android.os.Parcelable { + ctor public Region(); + ctor public Region(@NonNull android.graphics.Region); + ctor public Region(@NonNull android.graphics.Rect); + ctor public Region(int, int, int, int); + method public boolean contains(int, int); + method public int describeContents(); + method @NonNull public android.graphics.Path getBoundaryPath(); + method public boolean getBoundaryPath(@NonNull android.graphics.Path); + method @NonNull public android.graphics.Rect getBounds(); + method public boolean getBounds(@NonNull android.graphics.Rect); + method public boolean isComplex(); + method public boolean isEmpty(); + method public boolean isRect(); + method public boolean op(@NonNull android.graphics.Rect, @NonNull android.graphics.Region.Op); + method public boolean op(int, int, int, int, @NonNull android.graphics.Region.Op); + method public boolean op(@NonNull android.graphics.Region, @NonNull android.graphics.Region.Op); + method public boolean op(@NonNull android.graphics.Rect, @NonNull android.graphics.Region, @NonNull android.graphics.Region.Op); + method public boolean op(@NonNull android.graphics.Region, @NonNull android.graphics.Region, @NonNull android.graphics.Region.Op); + method public boolean quickContains(@NonNull android.graphics.Rect); + method public boolean quickContains(int, int, int, int); + method public boolean quickReject(@NonNull android.graphics.Rect); + method public boolean quickReject(int, int, int, int); + method public boolean quickReject(android.graphics.Region); + method public boolean set(@NonNull android.graphics.Region); + method public boolean set(@NonNull android.graphics.Rect); + method public boolean set(int, int, int, int); + method public void setEmpty(); + method public boolean setPath(@NonNull android.graphics.Path, @NonNull android.graphics.Region); + method public void translate(int, int); + method public void translate(int, int, android.graphics.Region); + method public final boolean union(@NonNull android.graphics.Rect); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public enum Region.Op { + enum_constant public static final android.graphics.Region.Op DIFFERENCE; + enum_constant public static final android.graphics.Region.Op INTERSECT; + enum_constant public static final android.graphics.Region.Op REPLACE; + enum_constant public static final android.graphics.Region.Op REVERSE_DIFFERENCE; + enum_constant public static final android.graphics.Region.Op UNION; + enum_constant public static final android.graphics.Region.Op XOR; + } + + public class RegionIterator { + ctor public RegionIterator(android.graphics.Region); + method public final boolean next(android.graphics.Rect); + } + + public final class RenderEffect { + method @NonNull public static android.graphics.RenderEffect createBitmapEffect(@NonNull android.graphics.Bitmap); + method @NonNull public static android.graphics.RenderEffect createBitmapEffect(@NonNull android.graphics.Bitmap, @Nullable android.graphics.Rect, @NonNull android.graphics.Rect); + method @NonNull public static android.graphics.RenderEffect createBlendModeEffect(@NonNull android.graphics.RenderEffect, @NonNull android.graphics.RenderEffect, @NonNull android.graphics.BlendMode); + method @NonNull public static android.graphics.RenderEffect createBlurEffect(float, float, @NonNull android.graphics.RenderEffect, @NonNull android.graphics.Shader.TileMode); + method @NonNull public static android.graphics.RenderEffect createBlurEffect(float, float, @NonNull android.graphics.Shader.TileMode); + method @NonNull public static android.graphics.RenderEffect createChainEffect(@NonNull android.graphics.RenderEffect, @NonNull android.graphics.RenderEffect); + method @NonNull public static android.graphics.RenderEffect createColorFilterEffect(@NonNull android.graphics.ColorFilter, @NonNull android.graphics.RenderEffect); + method @NonNull public static android.graphics.RenderEffect createColorFilterEffect(@NonNull android.graphics.ColorFilter); + method @NonNull public static android.graphics.RenderEffect createOffsetEffect(float, float); + method @NonNull public static android.graphics.RenderEffect createOffsetEffect(float, float, @NonNull android.graphics.RenderEffect); + method @NonNull public static android.graphics.RenderEffect createRuntimeShaderEffect(@NonNull android.graphics.RuntimeShader, @NonNull String); + method @NonNull public static android.graphics.RenderEffect createShaderEffect(@NonNull android.graphics.Shader); + } + + public final class RenderNode { + ctor public RenderNode(@Nullable String); + method @NonNull public android.graphics.RecordingCanvas beginRecording(int, int); + method @NonNull public android.graphics.RecordingCanvas beginRecording(); + method public long computeApproximateMemoryUsage(); + method public void discardDisplayList(); + method public void endRecording(); + method public float getAlpha(); + method @ColorInt public int getAmbientShadowColor(); + method public int getBottom(); + method @FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE) public float getCameraDistance(); + method public boolean getClipToBounds(); + method public boolean getClipToOutline(); + method public float getElevation(); + method public int getHeight(); + method public void getInverseMatrix(@NonNull android.graphics.Matrix); + method public int getLeft(); + method public void getMatrix(@NonNull android.graphics.Matrix); + method public float getPivotX(); + method public float getPivotY(); + method public int getRight(); + method public float getRotationX(); + method public float getRotationY(); + method public float getRotationZ(); + method public float getScaleX(); + method public float getScaleY(); + method @ColorInt public int getSpotShadowColor(); + method public int getTop(); + method public float getTranslationX(); + method public float getTranslationY(); + method public float getTranslationZ(); + method public long getUniqueId(); + method public boolean getUseCompositingLayer(); + method public int getWidth(); + method public boolean hasDisplayList(); + method public boolean hasIdentityMatrix(); + method public boolean hasOverlappingRendering(); + method public boolean hasShadow(); + method public boolean isForceDarkAllowed(); + method public boolean isPivotExplicitlySet(); + method public boolean offsetLeftAndRight(int); + method public boolean offsetTopAndBottom(int); + method public boolean resetPivot(); + method public boolean setAlpha(float); + method public boolean setAmbientShadowColor(@ColorInt int); + method public boolean setCameraDistance(@FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE) float); + method public boolean setClipRect(@Nullable android.graphics.Rect); + method public boolean setClipToBounds(boolean); + method public boolean setClipToOutline(boolean); + method public boolean setElevation(float); + method public boolean setForceDarkAllowed(boolean); + method public boolean setHasOverlappingRendering(boolean); + method public boolean setOutline(@Nullable android.graphics.Outline); + method public boolean setPivotX(float); + method public boolean setPivotY(float); + method public boolean setPosition(int, int, int, int); + method public boolean setPosition(@NonNull android.graphics.Rect); + method public boolean setProjectBackwards(boolean); + method public boolean setProjectionReceiver(boolean); + method public boolean setRenderEffect(@Nullable android.graphics.RenderEffect); + method public boolean setRotationX(float); + method public boolean setRotationY(float); + method public boolean setRotationZ(float); + method public boolean setScaleX(float); + method public boolean setScaleY(float); + method public boolean setSpotShadowColor(@ColorInt int); + method public boolean setTranslationX(float); + method public boolean setTranslationY(float); + method public boolean setTranslationZ(float); + method public boolean setUseCompositingLayer(boolean, @Nullable android.graphics.Paint); + } + + @FlaggedApi("com.android.graphics.hwui.flags.runtime_color_filters_blenders") public class RuntimeColorFilter extends android.graphics.ColorFilter { + ctor public RuntimeColorFilter(@NonNull String); + method public void setColorUniform(@NonNull String, @ColorInt int); + method public void setColorUniform(@NonNull String, @ColorLong long); + method public void setColorUniform(@NonNull String, @NonNull android.graphics.Color); + method public void setFloatUniform(@NonNull String, float); + method public void setFloatUniform(@NonNull String, float, float); + method public void setFloatUniform(@NonNull String, float, float, float); + method public void setFloatUniform(@NonNull String, float, float, float, float); + method public void setFloatUniform(@NonNull String, @NonNull float[]); + method public void setInputColorFilter(@NonNull String, @NonNull android.graphics.ColorFilter); + method public void setInputShader(@NonNull String, @NonNull android.graphics.Shader); + method public void setInputXfermode(@NonNull String, @NonNull android.graphics.RuntimeXfermode); + method public void setIntUniform(@NonNull String, int); + method public void setIntUniform(@NonNull String, int, int); + method public void setIntUniform(@NonNull String, int, int, int); + method public void setIntUniform(@NonNull String, int, int, int, int); + method public void setIntUniform(@NonNull String, @NonNull int[]); + } + + public class RuntimeShader extends android.graphics.Shader { + ctor public RuntimeShader(@NonNull String); + method public void setColorUniform(@NonNull String, @ColorInt int); + method public void setColorUniform(@NonNull String, @ColorLong long); + method public void setColorUniform(@NonNull String, @NonNull android.graphics.Color); + method public void setFloatUniform(@NonNull String, float); + method public void setFloatUniform(@NonNull String, float, float); + method public void setFloatUniform(@NonNull String, float, float, float); + method public void setFloatUniform(@NonNull String, float, float, float, float); + method public void setFloatUniform(@NonNull String, @NonNull float[]); + method public void setInputBuffer(@NonNull String, @NonNull android.graphics.BitmapShader); + method @FlaggedApi("com.android.graphics.hwui.flags.runtime_color_filters_blenders") public void setInputColorFilter(@NonNull String, @NonNull android.graphics.ColorFilter); + method public void setInputShader(@NonNull String, @NonNull android.graphics.Shader); + method @FlaggedApi("com.android.graphics.hwui.flags.runtime_color_filters_blenders") public void setInputXfermode(@NonNull String, @NonNull android.graphics.RuntimeXfermode); + method public void setIntUniform(@NonNull String, int); + method public void setIntUniform(@NonNull String, int, int); + method public void setIntUniform(@NonNull String, int, int, int); + method public void setIntUniform(@NonNull String, int, int, int, int); + method public void setIntUniform(@NonNull String, @NonNull int[]); + } + + @FlaggedApi("com.android.graphics.hwui.flags.runtime_color_filters_blenders") public class RuntimeXfermode extends android.graphics.Xfermode { + ctor public RuntimeXfermode(@NonNull String); + method public void setColorUniform(@NonNull String, @ColorInt int); + method public void setColorUniform(@NonNull String, @ColorLong long); + method public void setColorUniform(@NonNull String, @NonNull android.graphics.Color); + method public void setFloatUniform(@NonNull String, float); + method public void setFloatUniform(@NonNull String, float, float); + method public void setFloatUniform(@NonNull String, float, float, float); + method public void setFloatUniform(@NonNull String, float, float, float, float); + method public void setFloatUniform(@NonNull String, @NonNull float[]); + method public void setInputColorFilter(@NonNull String, @NonNull android.graphics.ColorFilter); + method public void setInputShader(@NonNull String, @NonNull android.graphics.Shader); + method public void setInputXfermode(@NonNull String, @NonNull android.graphics.RuntimeXfermode); + method public void setIntUniform(@NonNull String, int); + method public void setIntUniform(@NonNull String, int, int); + method public void setIntUniform(@NonNull String, int, int, int); + method public void setIntUniform(@NonNull String, int, int, int, int); + method public void setIntUniform(@NonNull String, @NonNull int[]); + } + + public class Shader { + ctor @Deprecated public Shader(); + method public boolean getLocalMatrix(@NonNull android.graphics.Matrix); + method public void setLocalMatrix(@Nullable android.graphics.Matrix); + } + + public enum Shader.TileMode { + enum_constant public static final android.graphics.Shader.TileMode CLAMP; + enum_constant public static final android.graphics.Shader.TileMode DECAL; + enum_constant public static final android.graphics.Shader.TileMode MIRROR; + enum_constant public static final android.graphics.Shader.TileMode REPEAT; + } + + public class SumPathEffect extends android.graphics.PathEffect { + ctor public SumPathEffect(android.graphics.PathEffect, android.graphics.PathEffect); + } + + public class SurfaceTexture { + ctor public SurfaceTexture(int); + ctor public SurfaceTexture(int, boolean); + ctor public SurfaceTexture(boolean); + method public void attachToGLContext(int); + method public void detachFromGLContext(); + method public int getDataSpace(); + method public long getTimestamp(); + method public void getTransformMatrix(float[]); + method public boolean isReleased(); + method public void release(); + method public void releaseTexImage(); + method public void setDefaultBufferSize(int, int); + method public void setOnFrameAvailableListener(@Nullable android.graphics.SurfaceTexture.OnFrameAvailableListener); + method public void setOnFrameAvailableListener(@Nullable android.graphics.SurfaceTexture.OnFrameAvailableListener, @Nullable android.os.Handler); + method public void updateTexImage(); + } + + public static interface SurfaceTexture.OnFrameAvailableListener { + method public void onFrameAvailable(android.graphics.SurfaceTexture); + } + + @Deprecated public static class SurfaceTexture.OutOfResourcesException extends java.lang.Exception { + ctor @Deprecated public SurfaceTexture.OutOfResourcesException(); + ctor @Deprecated public SurfaceTexture.OutOfResourcesException(String); + } + + public class SweepGradient extends android.graphics.Shader { + ctor public SweepGradient(float, float, @ColorInt @NonNull int[], @Nullable float[]); + ctor public SweepGradient(float, float, @ColorLong @NonNull long[], @Nullable float[]); + ctor public SweepGradient(float, float, @ColorInt int, @ColorInt int); + ctor public SweepGradient(float, float, @ColorLong long, @ColorLong long); + } + + public class Typeface { + method public static android.graphics.Typeface create(String, int); + method public static android.graphics.Typeface create(android.graphics.Typeface, int); + method @NonNull public static android.graphics.Typeface create(@Nullable android.graphics.Typeface, @IntRange(from=1, to=1000) int, boolean); + method public static android.graphics.Typeface createFromAsset(android.content.res.AssetManager, String); + method public static android.graphics.Typeface createFromFile(@Nullable java.io.File); + method public static android.graphics.Typeface createFromFile(@Nullable String); + method public static android.graphics.Typeface defaultFromStyle(int); + method public int getStyle(); + method @Nullable public final String getSystemFontFamilyName(); + method @IntRange(from=0, to=1000) public int getWeight(); + method public final boolean isBold(); + method public final boolean isItalic(); + field public static final int BOLD = 1; // 0x1 + field public static final int BOLD_ITALIC = 3; // 0x3 + field public static final android.graphics.Typeface DEFAULT; + field public static final android.graphics.Typeface DEFAULT_BOLD; + field public static final int ITALIC = 2; // 0x2 + field public static final android.graphics.Typeface MONOSPACE; + field public static final int NORMAL = 0; // 0x0 + field public static final android.graphics.Typeface SANS_SERIF; + field public static final android.graphics.Typeface SERIF; + } + + public static final class Typeface.Builder { + ctor public Typeface.Builder(@NonNull java.io.File); + ctor public Typeface.Builder(@NonNull java.io.FileDescriptor); + ctor public Typeface.Builder(@NonNull String); + ctor public Typeface.Builder(@NonNull android.content.res.AssetManager, @NonNull String); + method public android.graphics.Typeface build(); + method public android.graphics.Typeface.Builder setFallback(@Nullable String); + method public android.graphics.Typeface.Builder setFontVariationSettings(@Nullable String); + method public android.graphics.Typeface.Builder setFontVariationSettings(@Nullable android.graphics.fonts.FontVariationAxis[]); + method public android.graphics.Typeface.Builder setItalic(boolean); + method public android.graphics.Typeface.Builder setTtcIndex(@IntRange(from=0) int); + method public android.graphics.Typeface.Builder setWeight(@IntRange(from=1, to=1000) int); + } + + public static final class Typeface.CustomFallbackBuilder { + ctor public Typeface.CustomFallbackBuilder(@NonNull android.graphics.fonts.FontFamily); + method @NonNull public android.graphics.Typeface.CustomFallbackBuilder addCustomFallback(@NonNull android.graphics.fonts.FontFamily); + method @NonNull public android.graphics.Typeface build(); + method @IntRange(from=64) public static int getMaxCustomFallbackCount(); + method @NonNull public android.graphics.Typeface.CustomFallbackBuilder setStyle(@NonNull android.graphics.fonts.FontStyle); + method @NonNull public android.graphics.Typeface.CustomFallbackBuilder setSystemFallback(@NonNull String); + } + + public class Xfermode { + ctor public Xfermode(); + } + + public class YuvImage { + ctor public YuvImage(byte[], int, int, int, int[]); + ctor public YuvImage(@NonNull byte[], int, int, int, @Nullable int[], @NonNull android.graphics.ColorSpace); + method public boolean compressToJpeg(android.graphics.Rect, int, java.io.OutputStream); + method public boolean compressToJpegR(@NonNull android.graphics.YuvImage, int, @NonNull java.io.OutputStream); + method @FlaggedApi("com.android.graphics.flags.yuv_image_compress_to_ultra_hdr") public boolean compressToJpegR(@NonNull android.graphics.YuvImage, int, @NonNull java.io.OutputStream, @NonNull byte[]); + method @NonNull public android.graphics.ColorSpace getColorSpace(); + method public int getHeight(); + method public int[] getStrides(); + method public int getWidth(); + method public byte[] getYuvData(); + method public int getYuvFormat(); + } + +} + +package android.graphics.drawable { + + public class AdaptiveIconDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { + ctor public AdaptiveIconDrawable(android.graphics.drawable.Drawable, android.graphics.drawable.Drawable); + ctor public AdaptiveIconDrawable(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); + method public void draw(android.graphics.Canvas); + method public android.graphics.drawable.Drawable getBackground(); + method public static float getExtraInsetFraction(); + method public android.graphics.drawable.Drawable getForeground(); + method public android.graphics.Path getIconMask(); + method @Nullable public android.graphics.drawable.Drawable getMonochrome(); + method public int getOpacity(); + method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); + method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); + method public void setAlpha(int); + method public void setColorFilter(android.graphics.ColorFilter); + method public void setDither(boolean); + method public void setOpacity(int); + method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); + } + + public interface Animatable { + method public boolean isRunning(); + method public void start(); + method public void stop(); + } + + public interface Animatable2 extends android.graphics.drawable.Animatable { + method public void clearAnimationCallbacks(); + method public void registerAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); + method public boolean unregisterAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); + } + + public abstract static class Animatable2.AnimationCallback { + ctor public Animatable2.AnimationCallback(); + method public void onAnimationEnd(android.graphics.drawable.Drawable); + method public void onAnimationStart(android.graphics.drawable.Drawable); + } + + public class AnimatedImageDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Animatable2 { + ctor public AnimatedImageDrawable(); + method public void clearAnimationCallbacks(); + method public void draw(@NonNull android.graphics.Canvas); + method public int getOpacity(); + method public int getRepeatCount(); + method public final boolean isAutoMirrored(); + method public boolean isRunning(); + method public void registerAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); + method public void setAlpha(@IntRange(from=0, to=255) int); + method public void setColorFilter(@Nullable android.graphics.ColorFilter); + method public void setRepeatCount(@IntRange(from=android.graphics.drawable.AnimatedImageDrawable.REPEAT_INFINITE) int); + method public void start(); + method public void stop(); + method public boolean unregisterAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); + field public static final int REPEAT_INFINITE = -1; // 0xffffffff + } + + public class AnimatedStateListDrawable extends android.graphics.drawable.StateListDrawable { + ctor public AnimatedStateListDrawable(); + method public void addState(@NonNull int[], @NonNull android.graphics.drawable.Drawable, int); + method public void addTransition(int, int, @NonNull T, boolean); + } + + public class AnimatedVectorDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Animatable2 { + ctor public AnimatedVectorDrawable(); + method public void clearAnimationCallbacks(); + method public void draw(android.graphics.Canvas); + method public int getOpacity(); + method public boolean isRunning(); + method public void registerAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); + method public void reset(); + method public void setAlpha(int); + method public void setColorFilter(android.graphics.ColorFilter); + method public void start(); + method public void stop(); + method public boolean unregisterAnimationCallback(@NonNull android.graphics.drawable.Animatable2.AnimationCallback); + } + + public class AnimationDrawable extends android.graphics.drawable.DrawableContainer implements android.graphics.drawable.Animatable java.lang.Runnable { + ctor public AnimationDrawable(); + method public void addFrame(@NonNull android.graphics.drawable.Drawable, int); + method public int getDuration(int); + method public android.graphics.drawable.Drawable getFrame(int); + method public int getNumberOfFrames(); + method public boolean isOneShot(); + method public boolean isRunning(); + method public void run(); + method public void setOneShot(boolean); + method public void start(); + method public void stop(); + } + + public class BitmapDrawable extends android.graphics.drawable.Drawable { + ctor @Deprecated public BitmapDrawable(); + ctor @Deprecated public BitmapDrawable(android.content.res.Resources); + ctor @Deprecated public BitmapDrawable(android.graphics.Bitmap); + ctor public BitmapDrawable(android.content.res.Resources, android.graphics.Bitmap); + ctor @Deprecated public BitmapDrawable(String); + ctor public BitmapDrawable(android.content.res.Resources, String); + ctor @Deprecated public BitmapDrawable(java.io.InputStream); + ctor public BitmapDrawable(android.content.res.Resources, java.io.InputStream); + method public void draw(android.graphics.Canvas); + method public final android.graphics.Bitmap getBitmap(); + method public final android.graphics.drawable.Drawable.ConstantState getConstantState(); + method public int getGravity(); + method public int getOpacity(); + method public final android.graphics.Paint getPaint(); + method public android.graphics.Shader.TileMode getTileModeX(); + method public android.graphics.Shader.TileMode getTileModeY(); + method public boolean hasAntiAlias(); + method public boolean hasMipMap(); + method public final boolean isAutoMirrored(); + method public void setAlpha(int); + method public void setAntiAlias(boolean); + method public void setBitmap(@Nullable android.graphics.Bitmap); + method public void setColorFilter(android.graphics.ColorFilter); + method public void setDither(boolean); + method public void setGravity(int); + method public void setMipMap(boolean); + method public void setTargetDensity(android.graphics.Canvas); + method public void setTargetDensity(android.util.DisplayMetrics); + method public void setTargetDensity(int); + method public void setTileModeX(android.graphics.Shader.TileMode); + method public void setTileModeXY(android.graphics.Shader.TileMode, android.graphics.Shader.TileMode); + method public final void setTileModeY(android.graphics.Shader.TileMode); + } + + public class ClipDrawable extends android.graphics.drawable.DrawableWrapper { + ctor public ClipDrawable(android.graphics.drawable.Drawable, int, int); + field public static final int HORIZONTAL = 1; // 0x1 + field public static final int VERTICAL = 2; // 0x2 + } + + public class ColorDrawable extends android.graphics.drawable.Drawable { + ctor public ColorDrawable(); + ctor public ColorDrawable(@ColorInt int); + method public void draw(android.graphics.Canvas); + method @ColorInt public int getColor(); + method public int getOpacity(); + method public void setAlpha(int); + method public void setColor(@ColorInt int); + method public void setColorFilter(android.graphics.ColorFilter); + } + + public class ColorStateListDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { + ctor public ColorStateListDrawable(); + ctor public ColorStateListDrawable(@NonNull android.content.res.ColorStateList); + method public void clearAlpha(); + method public void draw(@NonNull android.graphics.Canvas); + method @NonNull public android.content.res.ColorStateList getColorStateList(); + method public int getOpacity(); + method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); + method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); + method public void setAlpha(@IntRange(from=0, to=255) int); + method public void setColorFilter(@Nullable android.graphics.ColorFilter); + method public void setColorStateList(@NonNull android.content.res.ColorStateList); + method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); + } + + public abstract class Drawable { + ctor public Drawable(); + method public void applyTheme(@NonNull android.content.res.Resources.Theme); + method public boolean canApplyTheme(); + method public void clearColorFilter(); + method public final void copyBounds(@NonNull android.graphics.Rect); + method @NonNull public final android.graphics.Rect copyBounds(); + method @Nullable public static android.graphics.drawable.Drawable createFromPath(String); + method @Nullable public static android.graphics.drawable.Drawable createFromResourceStream(@Nullable android.content.res.Resources, @Nullable android.util.TypedValue, @Nullable java.io.InputStream, @Nullable String); + method @Deprecated @Nullable public static android.graphics.drawable.Drawable createFromResourceStream(@Nullable android.content.res.Resources, @Nullable android.util.TypedValue, @Nullable java.io.InputStream, @Nullable String, @Nullable android.graphics.BitmapFactory.Options); + method @Nullable public static android.graphics.drawable.Drawable createFromStream(@Nullable java.io.InputStream, @Nullable String); + method @NonNull public static android.graphics.drawable.Drawable createFromXml(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method @NonNull public static android.graphics.drawable.Drawable createFromXml(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @Nullable android.content.res.Resources.Theme) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method @NonNull public static android.graphics.drawable.Drawable createFromXmlInner(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @NonNull android.util.AttributeSet) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method @NonNull public static android.graphics.drawable.Drawable createFromXmlInner(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @NonNull android.util.AttributeSet, @Nullable android.content.res.Resources.Theme) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public abstract void draw(@NonNull android.graphics.Canvas); + method @IntRange(from=0, to=255) public int getAlpha(); + method @NonNull public final android.graphics.Rect getBounds(); + method @Nullable public android.graphics.drawable.Drawable.Callback getCallback(); + method public int getChangingConfigurations(); + method @Nullable public android.graphics.ColorFilter getColorFilter(); + method @Nullable public android.graphics.drawable.Drawable.ConstantState getConstantState(); + method @NonNull public android.graphics.drawable.Drawable getCurrent(); + method @NonNull public android.graphics.Rect getDirtyBounds(); + method public void getHotspotBounds(@NonNull android.graphics.Rect); + method public int getIntrinsicHeight(); + method public int getIntrinsicWidth(); + method public int getLayoutDirection(); + method @IntRange(from=0, to=10000) public final int getLevel(); + method public int getMinimumHeight(); + method public int getMinimumWidth(); + method @Deprecated public abstract int getOpacity(); + method @NonNull public android.graphics.Insets getOpticalInsets(); + method public void getOutline(@NonNull android.graphics.Outline); + method public boolean getPadding(@NonNull android.graphics.Rect); + method @NonNull public int[] getState(); + method @Nullable public android.graphics.Region getTransparentRegion(); + method public boolean hasFocusStateSpecified(); + method public void inflate(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @NonNull android.util.AttributeSet) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public void inflate(@NonNull android.content.res.Resources, @NonNull org.xmlpull.v1.XmlPullParser, @NonNull android.util.AttributeSet, @Nullable android.content.res.Resources.Theme) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public void invalidateSelf(); + method public boolean isAutoMirrored(); + method public boolean isFilterBitmap(); + method public boolean isProjected(); + method public boolean isStateful(); + method public final boolean isVisible(); + method public void jumpToCurrentState(); + method @NonNull public android.graphics.drawable.Drawable mutate(); + method protected void onBoundsChange(@NonNull android.graphics.Rect); + method public boolean onLayoutDirectionChanged(int); + method protected boolean onLevelChange(int); + method protected boolean onStateChange(@NonNull int[]); + method public static int resolveOpacity(int, int); + method public void scheduleSelf(@NonNull Runnable, long); + method public abstract void setAlpha(@IntRange(from=0, to=255) int); + method public void setAutoMirrored(boolean); + method public void setBounds(int, int, int, int); + method public void setBounds(@NonNull android.graphics.Rect); + method public final void setCallback(@Nullable android.graphics.drawable.Drawable.Callback); + method public void setChangingConfigurations(int); + method public abstract void setColorFilter(@Nullable android.graphics.ColorFilter); + method @Deprecated public void setColorFilter(@ColorInt int, @NonNull android.graphics.PorterDuff.Mode); + method @Deprecated public void setDither(boolean); + method public void setFilterBitmap(boolean); + method public void setHotspot(float, float); + method public void setHotspotBounds(int, int, int, int); + method public final boolean setLayoutDirection(int); + method public final boolean setLevel(@IntRange(from=0, to=10000) int); + method public boolean setState(@NonNull int[]); + method public void setTint(@ColorInt int); + method public void setTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setTintList(@Nullable android.content.res.ColorStateList); + method public void setTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public boolean setVisible(boolean, boolean); + method public void unscheduleSelf(@NonNull Runnable); + } + + public static interface Drawable.Callback { + method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); + method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); + method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); + } + + public abstract static class Drawable.ConstantState { + ctor public Drawable.ConstantState(); + method public boolean canApplyTheme(); + method public abstract int getChangingConfigurations(); + method @NonNull public abstract android.graphics.drawable.Drawable newDrawable(); + method @NonNull public android.graphics.drawable.Drawable newDrawable(@Nullable android.content.res.Resources); + method @NonNull public android.graphics.drawable.Drawable newDrawable(@Nullable android.content.res.Resources, @Nullable android.content.res.Resources.Theme); + } + + public class DrawableContainer extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { + ctor public DrawableContainer(); + method public void draw(android.graphics.Canvas); + method public int getOpacity(); + method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); + method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); + method public boolean selectDrawable(int); + method public void setAlpha(int); + method public void setColorFilter(android.graphics.ColorFilter); + method protected void setConstantState(android.graphics.drawable.DrawableContainer.DrawableContainerState); + method public void setDither(boolean); + method public void setEnterFadeDuration(int); + method public void setExitFadeDuration(int); + method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); + } + + public abstract static class DrawableContainer.DrawableContainerState extends android.graphics.drawable.Drawable.ConstantState { + method public final int addChild(android.graphics.drawable.Drawable); + method public boolean canConstantState(); + method protected void computeConstantSize(); + method public int getChangingConfigurations(); + method public final android.graphics.drawable.Drawable getChild(int); + method public final int getChildCount(); + method public final android.graphics.drawable.Drawable[] getChildren(); + method public final int getConstantHeight(); + method public final int getConstantMinimumHeight(); + method public final int getConstantMinimumWidth(); + method public final android.graphics.Rect getConstantPadding(); + method public final int getConstantWidth(); + method public final int getEnterFadeDuration(); + method public final int getExitFadeDuration(); + method public final int getOpacity(); + method public void growArray(int, int); + method public final boolean isConstantSize(); + method public final boolean isStateful(); + method public final void setConstantSize(boolean); + method public final void setEnterFadeDuration(int); + method public final void setExitFadeDuration(int); + method public final void setVariablePadding(boolean); + } + + public abstract class DrawableWrapper extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { + ctor public DrawableWrapper(@Nullable android.graphics.drawable.Drawable); + method public void draw(@NonNull android.graphics.Canvas); + method @Nullable public android.graphics.drawable.Drawable getDrawable(); + method public int getOpacity(); + method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); + method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); + method public void setAlpha(int); + method public void setColorFilter(@Nullable android.graphics.ColorFilter); + method public void setDrawable(@Nullable android.graphics.drawable.Drawable); + method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); + } + + public class GradientDrawable extends android.graphics.drawable.Drawable { + ctor public GradientDrawable(); + ctor public GradientDrawable(android.graphics.drawable.GradientDrawable.Orientation, @ColorInt int[]); + method public void draw(android.graphics.Canvas); + method @Nullable public android.content.res.ColorStateList getColor(); + method @Nullable public int[] getColors(); + method @Nullable public float[] getCornerRadii(); + method public float getCornerRadius(); + method public float getGradientCenterX(); + method public float getGradientCenterY(); + method public float getGradientRadius(); + method public int getGradientType(); + method @Px public int getInnerRadius(); + method public float getInnerRadiusRatio(); + method public int getOpacity(); + method public android.graphics.drawable.GradientDrawable.Orientation getOrientation(); + method public int getShape(); + method @Px public int getThickness(); + method public float getThicknessRatio(); + method public boolean getUseLevel(); + method public void setAlpha(int); + method public void setColor(@ColorInt int); + method public void setColor(@Nullable android.content.res.ColorStateList); + method public void setColorFilter(@Nullable android.graphics.ColorFilter); + method public void setColors(@ColorInt @Nullable int[]); + method public void setColors(@ColorInt @Nullable int[], @Nullable float[]); + method public void setCornerRadii(@Nullable float[]); + method public void setCornerRadius(float); + method public void setDither(boolean); + method public void setGradientCenter(float, float); + method public void setGradientRadius(float); + method public void setGradientType(int); + method public void setInnerRadius(@Px int); + method public void setInnerRadiusRatio(@FloatRange(from=0.0f, fromInclusive=false) float); + method public void setOrientation(android.graphics.drawable.GradientDrawable.Orientation); + method public void setPadding(@Px int, @Px int, @Px int, @Px int); + method public void setShape(int); + method public void setSize(int, int); + method public void setStroke(int, @ColorInt int); + method public void setStroke(int, android.content.res.ColorStateList); + method public void setStroke(int, @ColorInt int, float, float); + method public void setStroke(int, android.content.res.ColorStateList, float, float); + method public void setThickness(@Px int); + method public void setThicknessRatio(@FloatRange(from=0.0f, fromInclusive=false) float); + method public void setUseLevel(boolean); + field public static final int LINE = 2; // 0x2 + field public static final int LINEAR_GRADIENT = 0; // 0x0 + field public static final int OVAL = 1; // 0x1 + field public static final int RADIAL_GRADIENT = 1; // 0x1 + field public static final int RECTANGLE = 0; // 0x0 + field public static final int RING = 3; // 0x3 + field public static final int SWEEP_GRADIENT = 2; // 0x2 + } + + public enum GradientDrawable.Orientation { + enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation BL_TR; + enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation BOTTOM_TOP; + enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation BR_TL; + enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation LEFT_RIGHT; + enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation RIGHT_LEFT; + enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation TL_BR; + enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation TOP_BOTTOM; + enum_constant public static final android.graphics.drawable.GradientDrawable.Orientation TR_BL; + } + + public final class Icon implements android.os.Parcelable { + method @NonNull public static android.graphics.drawable.Icon createWithAdaptiveBitmap(android.graphics.Bitmap); + method @NonNull public static android.graphics.drawable.Icon createWithAdaptiveBitmapContentUri(@NonNull String); + method @NonNull public static android.graphics.drawable.Icon createWithAdaptiveBitmapContentUri(@NonNull android.net.Uri); + method @NonNull public static android.graphics.drawable.Icon createWithBitmap(android.graphics.Bitmap); + method @NonNull public static android.graphics.drawable.Icon createWithContentUri(String); + method @NonNull public static android.graphics.drawable.Icon createWithContentUri(android.net.Uri); + method @NonNull public static android.graphics.drawable.Icon createWithData(byte[], int, int); + method @NonNull public static android.graphics.drawable.Icon createWithFilePath(String); + method @NonNull public static android.graphics.drawable.Icon createWithResource(android.content.Context, @DrawableRes int); + method @NonNull public static android.graphics.drawable.Icon createWithResource(String, @DrawableRes int); + method public int describeContents(); + method @DrawableRes public int getResId(); + method @NonNull public String getResPackage(); + method public int getType(); + method @NonNull public android.net.Uri getUri(); + method @Nullable public android.graphics.drawable.Drawable loadDrawable(android.content.Context); + method public void loadDrawableAsync(@NonNull android.content.Context, @NonNull android.os.Message); + method public void loadDrawableAsync(@NonNull android.content.Context, android.graphics.drawable.Icon.OnDrawableLoadedListener, android.os.Handler); + method @NonNull public android.graphics.drawable.Icon setTint(@ColorInt int); + method @NonNull public android.graphics.drawable.Icon setTintBlendMode(@NonNull android.graphics.BlendMode); + method @NonNull public android.graphics.drawable.Icon setTintList(android.content.res.ColorStateList); + method @NonNull public android.graphics.drawable.Icon setTintMode(@NonNull android.graphics.PorterDuff.Mode); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_ADAPTIVE_BITMAP = 5; // 0x5 + field public static final int TYPE_BITMAP = 1; // 0x1 + field public static final int TYPE_DATA = 3; // 0x3 + field public static final int TYPE_RESOURCE = 2; // 0x2 + field public static final int TYPE_URI = 4; // 0x4 + field public static final int TYPE_URI_ADAPTIVE_BITMAP = 6; // 0x6 + } + + public static interface Icon.OnDrawableLoadedListener { + method public void onDrawableLoaded(android.graphics.drawable.Drawable); + } + + public class InsetDrawable extends android.graphics.drawable.DrawableWrapper { + ctor public InsetDrawable(@Nullable android.graphics.drawable.Drawable, int); + ctor public InsetDrawable(@Nullable android.graphics.drawable.Drawable, float); + ctor public InsetDrawable(@Nullable android.graphics.drawable.Drawable, int, int, int, int); + ctor public InsetDrawable(@Nullable android.graphics.drawable.Drawable, float, float, float, float); + } + + public class LayerDrawable extends android.graphics.drawable.Drawable implements android.graphics.drawable.Drawable.Callback { + ctor public LayerDrawable(@NonNull android.graphics.drawable.Drawable[]); + method public int addLayer(android.graphics.drawable.Drawable); + method public void draw(android.graphics.Canvas); + method public android.graphics.drawable.Drawable findDrawableByLayerId(int); + method public int findIndexByLayerId(int); + method public int getBottomPadding(); + method public android.graphics.drawable.Drawable getDrawable(int); + method public int getEndPadding(); + method public int getId(int); + method public int getLayerGravity(int); + method public int getLayerHeight(int); + method public int getLayerInsetBottom(int); + method public int getLayerInsetEnd(int); + method public int getLayerInsetLeft(int); + method public int getLayerInsetRight(int); + method public int getLayerInsetStart(int); + method public int getLayerInsetTop(int); + method public int getLayerWidth(int); + method public int getLeftPadding(); + method public int getNumberOfLayers(); + method public int getOpacity(); + method public int getPaddingMode(); + method public int getRightPadding(); + method public int getStartPadding(); + method public int getTopPadding(); + method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); + method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); + method public void setAlpha(int); + method public void setColorFilter(android.graphics.ColorFilter); + method public void setDither(boolean); + method public void setDrawable(int, android.graphics.drawable.Drawable); + method public boolean setDrawableByLayerId(int, android.graphics.drawable.Drawable); + method public void setId(int, int); + method public void setLayerGravity(int, int); + method public void setLayerHeight(int, int); + method public void setLayerInset(int, int, int, int, int); + method public void setLayerInsetBottom(int, int); + method public void setLayerInsetEnd(int, int); + method public void setLayerInsetLeft(int, int); + method public void setLayerInsetRelative(int, int, int, int, int); + method public void setLayerInsetRight(int, int); + method public void setLayerInsetStart(int, int); + method public void setLayerInsetTop(int, int); + method public void setLayerSize(int, int, int); + method public void setLayerWidth(int, int); + method public void setOpacity(int); + method public void setPadding(int, int, int, int); + method public void setPaddingMode(int); + method public void setPaddingRelative(int, int, int, int); + method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); + field public static final int INSET_UNDEFINED = -2147483648; // 0x80000000 + field public static final int PADDING_MODE_NEST = 0; // 0x0 + field public static final int PADDING_MODE_STACK = 1; // 0x1 + } + + public class LevelListDrawable extends android.graphics.drawable.DrawableContainer { + ctor public LevelListDrawable(); + method public void addLevel(int, int, android.graphics.drawable.Drawable); + } + + public class NinePatchDrawable extends android.graphics.drawable.Drawable { + ctor @Deprecated public NinePatchDrawable(android.graphics.Bitmap, byte[], android.graphics.Rect, String); + ctor public NinePatchDrawable(android.content.res.Resources, android.graphics.Bitmap, byte[], android.graphics.Rect, String); + ctor @Deprecated public NinePatchDrawable(@NonNull android.graphics.NinePatch); + ctor public NinePatchDrawable(@Nullable android.content.res.Resources, @NonNull android.graphics.NinePatch); + method public void draw(android.graphics.Canvas); + method public int getOpacity(); + method @NonNull public android.graphics.Paint getPaint(); + method public void setAlpha(int); + method public void setColorFilter(@Nullable android.graphics.ColorFilter); + method public void setDither(boolean); + method public void setTargetDensity(@NonNull android.graphics.Canvas); + method public void setTargetDensity(@NonNull android.util.DisplayMetrics); + method public void setTargetDensity(int); + } + + public class PaintDrawable extends android.graphics.drawable.ShapeDrawable { + ctor public PaintDrawable(); + ctor public PaintDrawable(int); + method public void setCornerRadii(float[]); + method public void setCornerRadius(float); + } + + public class PictureDrawable extends android.graphics.drawable.Drawable { + ctor public PictureDrawable(android.graphics.Picture); + method public void draw(android.graphics.Canvas); + method public int getOpacity(); + method public android.graphics.Picture getPicture(); + method public void setAlpha(int); + method public void setColorFilter(android.graphics.ColorFilter); + method public void setPicture(android.graphics.Picture); + } + + public class RippleDrawable extends android.graphics.drawable.LayerDrawable { + ctor public RippleDrawable(@NonNull android.content.res.ColorStateList, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); + method @NonNull public android.content.res.ColorStateList getEffectColor(); + method public int getRadius(); + method public void setColor(@NonNull android.content.res.ColorStateList); + method public void setEffectColor(@NonNull android.content.res.ColorStateList); + method public void setRadius(int); + field public static final int RADIUS_AUTO = -1; // 0xffffffff + } + + public class RotateDrawable extends android.graphics.drawable.DrawableWrapper { + ctor public RotateDrawable(); + method public float getFromDegrees(); + method public float getPivotX(); + method public float getPivotY(); + method public float getToDegrees(); + method public boolean isPivotXRelative(); + method public boolean isPivotYRelative(); + method public void setFromDegrees(float); + method public void setPivotX(float); + method public void setPivotXRelative(boolean); + method public void setPivotY(float); + method public void setPivotYRelative(boolean); + method public void setToDegrees(float); + } + + public class ScaleDrawable extends android.graphics.drawable.DrawableWrapper { + ctor public ScaleDrawable(android.graphics.drawable.Drawable, int, float, float); + } + + public class ShapeDrawable extends android.graphics.drawable.Drawable { + ctor public ShapeDrawable(); + ctor public ShapeDrawable(android.graphics.drawable.shapes.Shape); + method public void draw(android.graphics.Canvas); + method public int getOpacity(); + method public android.graphics.Paint getPaint(); + method public android.graphics.drawable.ShapeDrawable.ShaderFactory getShaderFactory(); + method public android.graphics.drawable.shapes.Shape getShape(); + method protected boolean inflateTag(String, android.content.res.Resources, org.xmlpull.v1.XmlPullParser, android.util.AttributeSet); + method protected void onDraw(android.graphics.drawable.shapes.Shape, android.graphics.Canvas, android.graphics.Paint); + method public void setAlpha(int); + method public void setColorFilter(android.graphics.ColorFilter); + method public void setDither(boolean); + method public void setIntrinsicHeight(int); + method public void setIntrinsicWidth(int); + method public void setPadding(int, int, int, int); + method public void setPadding(android.graphics.Rect); + method public void setShaderFactory(android.graphics.drawable.ShapeDrawable.ShaderFactory); + method public void setShape(android.graphics.drawable.shapes.Shape); + } + + public abstract static class ShapeDrawable.ShaderFactory { + ctor public ShapeDrawable.ShaderFactory(); + method public abstract android.graphics.Shader resize(int, int); + } + + public class StateListDrawable extends android.graphics.drawable.DrawableContainer { + ctor public StateListDrawable(); + method public void addState(int[], android.graphics.drawable.Drawable); + method public int findStateDrawableIndex(@NonNull int[]); + method public int getStateCount(); + method @Nullable public android.graphics.drawable.Drawable getStateDrawable(int); + method @NonNull public int[] getStateSet(int); + } + + public class TransitionDrawable extends android.graphics.drawable.LayerDrawable implements android.graphics.drawable.Drawable.Callback { + ctor public TransitionDrawable(android.graphics.drawable.Drawable[]); + method public boolean isCrossFadeEnabled(); + method public void resetTransition(); + method public void reverseTransition(int); + method public void setCrossFadeEnabled(boolean); + method public void startTransition(int); + } + + public class VectorDrawable extends android.graphics.drawable.Drawable { + ctor public VectorDrawable(); + method public void draw(android.graphics.Canvas); + method public int getOpacity(); + method public void setAlpha(int); + method public void setColorFilter(android.graphics.ColorFilter); + } + +} + +package android.graphics.drawable.shapes { + + public class ArcShape extends android.graphics.drawable.shapes.RectShape { + ctor public ArcShape(float, float); + method public android.graphics.drawable.shapes.ArcShape clone() throws java.lang.CloneNotSupportedException; + method public final float getStartAngle(); + method public final float getSweepAngle(); + } + + public class OvalShape extends android.graphics.drawable.shapes.RectShape { + ctor public OvalShape(); + method public android.graphics.drawable.shapes.OvalShape clone() throws java.lang.CloneNotSupportedException; + } + + public class PathShape extends android.graphics.drawable.shapes.Shape { + ctor public PathShape(@NonNull android.graphics.Path, float, float); + method public android.graphics.drawable.shapes.PathShape clone() throws java.lang.CloneNotSupportedException; + method public void draw(android.graphics.Canvas, android.graphics.Paint); + } + + public class RectShape extends android.graphics.drawable.shapes.Shape { + ctor public RectShape(); + method public android.graphics.drawable.shapes.RectShape clone() throws java.lang.CloneNotSupportedException; + method public void draw(android.graphics.Canvas, android.graphics.Paint); + method protected final android.graphics.RectF rect(); + } + + public class RoundRectShape extends android.graphics.drawable.shapes.RectShape { + ctor public RoundRectShape(@Nullable float[], @Nullable android.graphics.RectF, @Nullable float[]); + method public android.graphics.drawable.shapes.RoundRectShape clone() throws java.lang.CloneNotSupportedException; + } + + public abstract class Shape implements java.lang.Cloneable { + ctor public Shape(); + method public android.graphics.drawable.shapes.Shape clone() throws java.lang.CloneNotSupportedException; + method public abstract void draw(android.graphics.Canvas, android.graphics.Paint); + method public final float getHeight(); + method public void getOutline(@NonNull android.graphics.Outline); + method public final float getWidth(); + method public boolean hasAlpha(); + method protected void onResize(float, float); + method public final void resize(float, float); + } + +} + +package android.graphics.fonts { + + public final class Font { + method @Nullable public android.graphics.fonts.FontVariationAxis[] getAxes(); + method @NonNull public java.nio.ByteBuffer getBuffer(); + method @Nullable public java.io.File getFile(); + method public float getGlyphBounds(@IntRange(from=0) int, @NonNull android.graphics.Paint, @Nullable android.graphics.RectF); + method @NonNull public android.os.LocaleList getLocaleList(); + method public void getMetrics(@NonNull android.graphics.Paint, @Nullable android.graphics.Paint.FontMetrics); + method public int getSourceIdentifier(); + method @NonNull public android.graphics.fonts.FontStyle getStyle(); + method @IntRange(from=0) public int getTtcIndex(); + } + + public static final class Font.Builder { + ctor public Font.Builder(@NonNull java.nio.ByteBuffer); + ctor public Font.Builder(@NonNull java.io.File); + ctor public Font.Builder(@NonNull android.os.ParcelFileDescriptor); + ctor public Font.Builder(@NonNull android.os.ParcelFileDescriptor, @IntRange(from=0) long, @IntRange(from=0xffffffff) long); + ctor public Font.Builder(@NonNull android.content.res.AssetManager, @NonNull String); + ctor public Font.Builder(@NonNull android.content.res.Resources, int); + ctor public Font.Builder(@NonNull android.graphics.fonts.Font); + method @NonNull public android.graphics.fonts.Font build() throws java.io.IOException; + method @NonNull public android.graphics.fonts.Font.Builder setFontVariationSettings(@Nullable String); + method @NonNull public android.graphics.fonts.Font.Builder setFontVariationSettings(@Nullable android.graphics.fonts.FontVariationAxis[]); + method @NonNull public android.graphics.fonts.Font.Builder setSlant(int); + method @NonNull public android.graphics.fonts.Font.Builder setTtcIndex(@IntRange(from=0) int); + method @NonNull public android.graphics.fonts.Font.Builder setWeight(@IntRange(from=android.graphics.fonts.FontStyle.FONT_WEIGHT_MIN, to=android.graphics.fonts.FontStyle.FONT_WEIGHT_MAX) int); + } + + public final class FontFamily { + method @NonNull public android.graphics.fonts.Font getFont(@IntRange(from=0) int); + method @IntRange(from=1) public int getSize(); + } + + public static final class FontFamily.Builder { + ctor public FontFamily.Builder(@NonNull android.graphics.fonts.Font); + method @NonNull public android.graphics.fonts.FontFamily.Builder addFont(@NonNull android.graphics.fonts.Font); + method @NonNull public android.graphics.fonts.FontFamily build(); + method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") @Nullable public android.graphics.fonts.FontFamily buildVariableFamily(); + } + + public final class FontStyle { + ctor public FontStyle(); + ctor public FontStyle(int, int); + method public int getSlant(); + method @IntRange(from=0, to=1000) public int getWeight(); + field public static final int FONT_SLANT_ITALIC = 1; // 0x1 + field public static final int FONT_SLANT_UPRIGHT = 0; // 0x0 + field public static final int FONT_WEIGHT_BLACK = 900; // 0x384 + field public static final int FONT_WEIGHT_BOLD = 700; // 0x2bc + field public static final int FONT_WEIGHT_EXTRA_BOLD = 800; // 0x320 + field public static final int FONT_WEIGHT_EXTRA_LIGHT = 200; // 0xc8 + field public static final int FONT_WEIGHT_LIGHT = 300; // 0x12c + field public static final int FONT_WEIGHT_MAX = 1000; // 0x3e8 + field public static final int FONT_WEIGHT_MEDIUM = 500; // 0x1f4 + field public static final int FONT_WEIGHT_MIN = 1; // 0x1 + field public static final int FONT_WEIGHT_NORMAL = 400; // 0x190 + field public static final int FONT_WEIGHT_SEMI_BOLD = 600; // 0x258 + field public static final int FONT_WEIGHT_THIN = 100; // 0x64 + field public static final int FONT_WEIGHT_UNSPECIFIED = -1; // 0xffffffff + } + + public final class FontVariationAxis { + ctor public FontVariationAxis(@NonNull String, float); + method @Nullable public static android.graphics.fonts.FontVariationAxis[] fromFontVariationSettings(@Nullable String); + method public float getStyleValue(); + method public String getTag(); + method @NonNull public static String toFontVariationSettings(@Nullable android.graphics.fonts.FontVariationAxis[]); + } + + public final class SystemFonts { + method @NonNull public static java.util.Set getAvailableFonts(); + } + +} + +package android.graphics.pdf { + + public class PdfDocument { + ctor public PdfDocument(); + method public void close(); + method public void finishPage(android.graphics.pdf.PdfDocument.Page); + method public java.util.List getPages(); + method public android.graphics.pdf.PdfDocument.Page startPage(android.graphics.pdf.PdfDocument.PageInfo); + method public void writeTo(java.io.OutputStream) throws java.io.IOException; + } + + public static final class PdfDocument.Page { + method public android.graphics.Canvas getCanvas(); + method public android.graphics.pdf.PdfDocument.PageInfo getInfo(); + } + + public static final class PdfDocument.PageInfo { + method public android.graphics.Rect getContentRect(); + method public int getPageHeight(); + method public int getPageNumber(); + method public int getPageWidth(); + } + + public static final class PdfDocument.PageInfo.Builder { + ctor public PdfDocument.PageInfo.Builder(int, int, int); + method public android.graphics.pdf.PdfDocument.PageInfo create(); + method public android.graphics.pdf.PdfDocument.PageInfo.Builder setContentRect(android.graphics.Rect); + } + +} + +package android.graphics.text { + + public final class LineBreakConfig implements android.os.Parcelable { + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public int describeContents(); + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public int getHyphenation(); + method public int getLineBreakStyle(); + method public int getLineBreakWordStyle(); + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.graphics.text.LineBreakConfig merge(@NonNull android.graphics.text.LineBreakConfig); + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public void writeToParcel(@NonNull android.os.Parcel, int); + field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int HYPHENATION_DISABLED = 0; // 0x0 + field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int HYPHENATION_ENABLED = 1; // 0x1 + field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int HYPHENATION_UNSPECIFIED = -1; // 0xffffffff + field @FlaggedApi("com.android.text.flags.word_style_auto") public static final int LINE_BREAK_STYLE_AUTO = 5; // 0x5 + field public static final int LINE_BREAK_STYLE_LOOSE = 1; // 0x1 + field public static final int LINE_BREAK_STYLE_NONE = 0; // 0x0 + field public static final int LINE_BREAK_STYLE_NORMAL = 2; // 0x2 + field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int LINE_BREAK_STYLE_NO_BREAK = 4; // 0x4 + field public static final int LINE_BREAK_STYLE_STRICT = 3; // 0x3 + field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int LINE_BREAK_STYLE_UNSPECIFIED = -1; // 0xffffffff + field @FlaggedApi("com.android.text.flags.word_style_auto") public static final int LINE_BREAK_WORD_STYLE_AUTO = 2; // 0x2 + field public static final int LINE_BREAK_WORD_STYLE_NONE = 0; // 0x0 + field public static final int LINE_BREAK_WORD_STYLE_PHRASE = 1; // 0x1 + field @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public static final int LINE_BREAK_WORD_STYLE_UNSPECIFIED = -1; // 0xffffffff + } + + public static final class LineBreakConfig.Builder { + ctor public LineBreakConfig.Builder(); + method @NonNull public android.graphics.text.LineBreakConfig build(); + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.graphics.text.LineBreakConfig.Builder merge(@NonNull android.graphics.text.LineBreakConfig); + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.graphics.text.LineBreakConfig.Builder setHyphenation(int); + method @NonNull public android.graphics.text.LineBreakConfig.Builder setLineBreakStyle(int); + method @NonNull public android.graphics.text.LineBreakConfig.Builder setLineBreakWordStyle(int); + } + + public class LineBreaker { + method @NonNull public android.graphics.text.LineBreaker.Result computeLineBreaks(@NonNull android.graphics.text.MeasuredText, @NonNull android.graphics.text.LineBreaker.ParagraphConstraints, @IntRange(from=0) int); + method @FlaggedApi("com.android.text.flags.missing_getter_apis") public int getBreakStrategy(); + method @FlaggedApi("com.android.text.flags.missing_getter_apis") public int getHyphenationFrequency(); + method @FlaggedApi("com.android.text.flags.missing_getter_apis") @Nullable public int[] getIndents(); + method @FlaggedApi("com.android.text.flags.missing_getter_apis") public int getJustificationMode(); + method @FlaggedApi("com.android.text.flags.missing_getter_apis") public boolean getUseBoundsForWidth(); + field public static final int BREAK_STRATEGY_BALANCED = 2; // 0x2 + field public static final int BREAK_STRATEGY_HIGH_QUALITY = 1; // 0x1 + field public static final int BREAK_STRATEGY_SIMPLE = 0; // 0x0 + field public static final int HYPHENATION_FREQUENCY_FULL = 2; // 0x2 + field public static final int HYPHENATION_FREQUENCY_NONE = 0; // 0x0 + field public static final int HYPHENATION_FREQUENCY_NORMAL = 1; // 0x1 + field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int JUSTIFICATION_MODE_INTER_CHARACTER = 2; // 0x2 + field public static final int JUSTIFICATION_MODE_INTER_WORD = 1; // 0x1 + field public static final int JUSTIFICATION_MODE_NONE = 0; // 0x0 + } + + public static final class LineBreaker.Builder { + ctor public LineBreaker.Builder(); + method @NonNull public android.graphics.text.LineBreaker build(); + method @NonNull public android.graphics.text.LineBreaker.Builder setBreakStrategy(int); + method @NonNull public android.graphics.text.LineBreaker.Builder setHyphenationFrequency(int); + method @NonNull public android.graphics.text.LineBreaker.Builder setIndents(@Nullable int[]); + method @NonNull public android.graphics.text.LineBreaker.Builder setJustificationMode(int); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.graphics.text.LineBreaker.Builder setUseBoundsForWidth(boolean); + } + + public static class LineBreaker.ParagraphConstraints { + ctor public LineBreaker.ParagraphConstraints(); + method @FloatRange(from=0) @Px public float getDefaultTabStop(); + method @FloatRange(from=0.0f) @Px public float getFirstWidth(); + method @IntRange(from=0) @Px public int getFirstWidthLineCount(); + method @Nullable public float[] getTabStops(); + method @FloatRange(from=0.0f) @Px public float getWidth(); + method public void setIndent(@FloatRange(from=0.0f) @Px float, @IntRange(from=0) @Px int); + method public void setTabStops(@Nullable float[], @FloatRange(from=0) @Px float); + method public void setWidth(@FloatRange(from=0.0f) @Px float); + } + + public static class LineBreaker.Result { + method public int getEndLineHyphenEdit(int); + method @Px public float getLineAscent(@IntRange(from=0) int); + method @IntRange(from=0) public int getLineBreakOffset(@IntRange(from=0) int); + method @IntRange(from=0) public int getLineCount(); + method @Px public float getLineDescent(@IntRange(from=0) int); + method @Px public float getLineWidth(@IntRange(from=0) int); + method public int getStartLineHyphenEdit(int); + method public boolean hasLineTab(int); + } + + public class MeasuredText { + method public void getBounds(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.Rect); + method @FloatRange(from=0.0f) @Px public float getCharWidthAt(@IntRange(from=0) int); + method public void getFontMetricsInt(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.Paint.FontMetricsInt); + method @FloatRange(from=0.0) @Px public float getWidth(@IntRange(from=0) int, @IntRange(from=0) int); + } + + public static final class MeasuredText.Builder { + ctor public MeasuredText.Builder(@NonNull char[]); + ctor public MeasuredText.Builder(@NonNull android.graphics.text.MeasuredText); + method @NonNull public android.graphics.text.MeasuredText.Builder appendReplacementRun(@NonNull android.graphics.Paint, @IntRange(from=0) int, @FloatRange(from=0) @Px float); + method @NonNull public android.graphics.text.MeasuredText.Builder appendStyleRun(@NonNull android.graphics.Paint, @IntRange(from=0) int, boolean); + method @NonNull public android.graphics.text.MeasuredText.Builder appendStyleRun(@NonNull android.graphics.Paint, @Nullable android.graphics.text.LineBreakConfig, @IntRange(from=0) int, boolean); + method @NonNull public android.graphics.text.MeasuredText build(); + method @Deprecated @NonNull public android.graphics.text.MeasuredText.Builder setComputeHyphenation(boolean); + method @NonNull public android.graphics.text.MeasuredText.Builder setComputeHyphenation(int); + method @NonNull public android.graphics.text.MeasuredText.Builder setComputeLayout(boolean); + field public static final int HYPHENATION_MODE_FAST = 2; // 0x2 + field public static final int HYPHENATION_MODE_NONE = 0; // 0x0 + field public static final int HYPHENATION_MODE_NORMAL = 1; // 0x1 + } + + public final class PositionedGlyphs { + method public float getAdvance(); + method public float getAscent(); + method public float getDescent(); + method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public boolean getFakeBold(@IntRange(from=0) int); + method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public boolean getFakeItalic(@IntRange(from=0) int); + method @NonNull public android.graphics.fonts.Font getFont(@IntRange(from=0) int); + method @IntRange(from=0) public int getGlyphId(@IntRange(from=0) int); + method public float getGlyphX(@IntRange(from=0) int); + method public float getGlyphY(@IntRange(from=0) int); + method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public float getItalicOverride(@IntRange(from=0) int); + method public float getOffsetX(); + method public float getOffsetY(); + method @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public float getWeightOverride(@IntRange(from=0) int); + method @IntRange(from=0) public int glyphCount(); + field @FlaggedApi("com.android.text.flags.new_fonts_fallback_xml") public static final float NO_OVERRIDE = 1.4E-45f; + } + + public class TextRunShaper { + method @NonNull public static android.graphics.text.PositionedGlyphs shapeTextRun(@NonNull char[], int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); + method @NonNull public static android.graphics.text.PositionedGlyphs shapeTextRun(@NonNull CharSequence, int, int, int, int, float, float, boolean, @NonNull android.graphics.Paint); + } + +} + +package android.hardware { + + public abstract class BatteryState { + ctor public BatteryState(); + method @FloatRange(from=-1.0F, to=1.0f) public abstract float getCapacity(); + method public abstract int getStatus(); + method public abstract boolean isPresent(); + field public static final int STATUS_CHARGING = 2; // 0x2 + field public static final int STATUS_DISCHARGING = 3; // 0x3 + field public static final int STATUS_FULL = 5; // 0x5 + field public static final int STATUS_NOT_CHARGING = 4; // 0x4 + field public static final int STATUS_UNKNOWN = 1; // 0x1 + } + + @Deprecated public class Camera { + method @Deprecated public final void addCallbackBuffer(byte[]); + method @Deprecated public final void autoFocus(android.hardware.Camera.AutoFocusCallback); + method @Deprecated public final void cancelAutoFocus(); + method @Deprecated public final boolean enableShutterSound(boolean); + method @Deprecated protected void finalize(); + method @Deprecated public static void getCameraInfo(int, android.hardware.Camera.CameraInfo); + method @Deprecated public static int getNumberOfCameras(); + method @Deprecated public android.hardware.Camera.Parameters getParameters(); + method @Deprecated public final void lock(); + method @Deprecated public static android.hardware.Camera open(int); + method @Deprecated public static android.hardware.Camera open(); + method @Deprecated public final void reconnect() throws java.io.IOException; + method @Deprecated public final void release(); + method @Deprecated public void setAutoFocusMoveCallback(android.hardware.Camera.AutoFocusMoveCallback); + method @Deprecated public final void setDisplayOrientation(int); + method @Deprecated public final void setErrorCallback(android.hardware.Camera.ErrorCallback); + method @Deprecated public final void setFaceDetectionListener(android.hardware.Camera.FaceDetectionListener); + method @Deprecated public final void setOneShotPreviewCallback(android.hardware.Camera.PreviewCallback); + method @Deprecated public void setParameters(android.hardware.Camera.Parameters); + method @Deprecated public final void setPreviewCallback(android.hardware.Camera.PreviewCallback); + method @Deprecated public final void setPreviewCallbackWithBuffer(android.hardware.Camera.PreviewCallback); + method @Deprecated public final void setPreviewDisplay(android.view.SurfaceHolder) throws java.io.IOException; + method @Deprecated public final void setPreviewTexture(android.graphics.SurfaceTexture) throws java.io.IOException; + method @Deprecated public final void setZoomChangeListener(android.hardware.Camera.OnZoomChangeListener); + method @Deprecated public final void startFaceDetection(); + method @Deprecated public final void startPreview(); + method @Deprecated public final void startSmoothZoom(int); + method @Deprecated public final void stopFaceDetection(); + method @Deprecated public final void stopPreview(); + method @Deprecated public final void stopSmoothZoom(); + method @Deprecated public final void takePicture(android.hardware.Camera.ShutterCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback); + method @Deprecated public final void takePicture(android.hardware.Camera.ShutterCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback); + method @Deprecated public final void unlock(); + field @Deprecated public static final String ACTION_NEW_PICTURE = "android.hardware.action.NEW_PICTURE"; + field @Deprecated public static final String ACTION_NEW_VIDEO = "android.hardware.action.NEW_VIDEO"; + field @Deprecated public static final int CAMERA_ERROR_EVICTED = 2; // 0x2 + field @Deprecated public static final int CAMERA_ERROR_SERVER_DIED = 100; // 0x64 + field @Deprecated public static final int CAMERA_ERROR_UNKNOWN = 1; // 0x1 + } + + @Deprecated public static class Camera.Area { + ctor @Deprecated public Camera.Area(android.graphics.Rect, int); + field @Deprecated public android.graphics.Rect rect; + field @Deprecated public int weight; + } + + @Deprecated public static interface Camera.AutoFocusCallback { + method @Deprecated public void onAutoFocus(boolean, android.hardware.Camera); + } + + @Deprecated public static interface Camera.AutoFocusMoveCallback { + method @Deprecated public void onAutoFocusMoving(boolean, android.hardware.Camera); + } + + @Deprecated public static class Camera.CameraInfo { + ctor @Deprecated public Camera.CameraInfo(); + field @Deprecated public static final int CAMERA_FACING_BACK = 0; // 0x0 + field @Deprecated public static final int CAMERA_FACING_FRONT = 1; // 0x1 + field @Deprecated public boolean canDisableShutterSound; + field @Deprecated public int facing; + field @Deprecated public int orientation; + } + + @Deprecated public static interface Camera.ErrorCallback { + method @Deprecated public void onError(int, android.hardware.Camera); + } + + @Deprecated public static class Camera.Face { + ctor @Deprecated public Camera.Face(); + field @Deprecated public int id; + field @Deprecated public android.graphics.Point leftEye; + field @Deprecated public android.graphics.Point mouth; + field @Deprecated public android.graphics.Rect rect; + field @Deprecated public android.graphics.Point rightEye; + field @Deprecated public int score; + } + + @Deprecated public static interface Camera.FaceDetectionListener { + method @Deprecated public void onFaceDetection(android.hardware.Camera.Face[], android.hardware.Camera); + } + + @Deprecated public static interface Camera.OnZoomChangeListener { + method @Deprecated public void onZoomChange(int, boolean, android.hardware.Camera); + } + + @Deprecated public class Camera.Parameters { + method @Deprecated public String flatten(); + method @Deprecated public String get(String); + method @Deprecated public String getAntibanding(); + method @Deprecated public boolean getAutoExposureLock(); + method @Deprecated public boolean getAutoWhiteBalanceLock(); + method @Deprecated public String getColorEffect(); + method @Deprecated public int getExposureCompensation(); + method @Deprecated public float getExposureCompensationStep(); + method @Deprecated public String getFlashMode(); + method @Deprecated public float getFocalLength(); + method @Deprecated public java.util.List getFocusAreas(); + method @Deprecated public void getFocusDistances(float[]); + method @Deprecated public String getFocusMode(); + method @Deprecated public float getHorizontalViewAngle(); + method @Deprecated public int getInt(String); + method @Deprecated public int getJpegQuality(); + method @Deprecated public int getJpegThumbnailQuality(); + method @Deprecated public android.hardware.Camera.Size getJpegThumbnailSize(); + method @Deprecated public int getMaxExposureCompensation(); + method @Deprecated public int getMaxNumDetectedFaces(); + method @Deprecated public int getMaxNumFocusAreas(); + method @Deprecated public int getMaxNumMeteringAreas(); + method @Deprecated public int getMaxZoom(); + method @Deprecated public java.util.List getMeteringAreas(); + method @Deprecated public int getMinExposureCompensation(); + method @Deprecated public int getPictureFormat(); + method @Deprecated public android.hardware.Camera.Size getPictureSize(); + method @Deprecated public android.hardware.Camera.Size getPreferredPreviewSizeForVideo(); + method @Deprecated public int getPreviewFormat(); + method @Deprecated public void getPreviewFpsRange(int[]); + method @Deprecated public int getPreviewFrameRate(); + method @Deprecated public android.hardware.Camera.Size getPreviewSize(); + method @Deprecated public String getSceneMode(); + method @Deprecated public java.util.List getSupportedAntibanding(); + method @Deprecated public java.util.List getSupportedColorEffects(); + method @Deprecated public java.util.List getSupportedFlashModes(); + method @Deprecated public java.util.List getSupportedFocusModes(); + method @Deprecated public java.util.List getSupportedJpegThumbnailSizes(); + method @Deprecated public java.util.List getSupportedPictureFormats(); + method @Deprecated public java.util.List getSupportedPictureSizes(); + method @Deprecated public java.util.List getSupportedPreviewFormats(); + method @Deprecated public java.util.List getSupportedPreviewFpsRange(); + method @Deprecated public java.util.List getSupportedPreviewFrameRates(); + method @Deprecated public java.util.List getSupportedPreviewSizes(); + method @Deprecated public java.util.List getSupportedSceneModes(); + method @Deprecated public java.util.List getSupportedVideoSizes(); + method @Deprecated public java.util.List getSupportedWhiteBalance(); + method @Deprecated public float getVerticalViewAngle(); + method @Deprecated public boolean getVideoStabilization(); + method @Deprecated public String getWhiteBalance(); + method @Deprecated public int getZoom(); + method @Deprecated public java.util.List getZoomRatios(); + method @Deprecated public boolean isAutoExposureLockSupported(); + method @Deprecated public boolean isAutoWhiteBalanceLockSupported(); + method @Deprecated public boolean isSmoothZoomSupported(); + method @Deprecated public boolean isVideoSnapshotSupported(); + method @Deprecated public boolean isVideoStabilizationSupported(); + method @Deprecated public boolean isZoomSupported(); + method @Deprecated public void remove(String); + method @Deprecated public void removeGpsData(); + method @Deprecated public void set(String, String); + method @Deprecated public void set(String, int); + method @Deprecated public void setAntibanding(String); + method @Deprecated public void setAutoExposureLock(boolean); + method @Deprecated public void setAutoWhiteBalanceLock(boolean); + method @Deprecated public void setColorEffect(String); + method @Deprecated public void setExposureCompensation(int); + method @Deprecated public void setFlashMode(String); + method @Deprecated public void setFocusAreas(java.util.List); + method @Deprecated public void setFocusMode(String); + method @Deprecated public void setGpsAltitude(double); + method @Deprecated public void setGpsLatitude(double); + method @Deprecated public void setGpsLongitude(double); + method @Deprecated public void setGpsProcessingMethod(String); + method @Deprecated public void setGpsTimestamp(long); + method @Deprecated public void setJpegQuality(int); + method @Deprecated public void setJpegThumbnailQuality(int); + method @Deprecated public void setJpegThumbnailSize(int, int); + method @Deprecated public void setMeteringAreas(java.util.List); + method @Deprecated public void setPictureFormat(int); + method @Deprecated public void setPictureSize(int, int); + method @Deprecated public void setPreviewFormat(int); + method @Deprecated public void setPreviewFpsRange(int, int); + method @Deprecated public void setPreviewFrameRate(int); + method @Deprecated public void setPreviewSize(int, int); + method @Deprecated public void setRecordingHint(boolean); + method @Deprecated public void setRotation(int); + method @Deprecated public void setSceneMode(String); + method @Deprecated public void setVideoStabilization(boolean); + method @Deprecated public void setWhiteBalance(String); + method @Deprecated public void setZoom(int); + method @Deprecated public void unflatten(String); + field @Deprecated public static final String ANTIBANDING_50HZ = "50hz"; + field @Deprecated public static final String ANTIBANDING_60HZ = "60hz"; + field @Deprecated public static final String ANTIBANDING_AUTO = "auto"; + field @Deprecated public static final String ANTIBANDING_OFF = "off"; + field @Deprecated public static final String EFFECT_AQUA = "aqua"; + field @Deprecated public static final String EFFECT_BLACKBOARD = "blackboard"; + field @Deprecated public static final String EFFECT_MONO = "mono"; + field @Deprecated public static final String EFFECT_NEGATIVE = "negative"; + field @Deprecated public static final String EFFECT_NONE = "none"; + field @Deprecated public static final String EFFECT_POSTERIZE = "posterize"; + field @Deprecated public static final String EFFECT_SEPIA = "sepia"; + field @Deprecated public static final String EFFECT_SOLARIZE = "solarize"; + field @Deprecated public static final String EFFECT_WHITEBOARD = "whiteboard"; + field @Deprecated public static final String FLASH_MODE_AUTO = "auto"; + field @Deprecated public static final String FLASH_MODE_OFF = "off"; + field @Deprecated public static final String FLASH_MODE_ON = "on"; + field @Deprecated public static final String FLASH_MODE_RED_EYE = "red-eye"; + field @Deprecated public static final String FLASH_MODE_TORCH = "torch"; + field @Deprecated public static final int FOCUS_DISTANCE_FAR_INDEX = 2; // 0x2 + field @Deprecated public static final int FOCUS_DISTANCE_NEAR_INDEX = 0; // 0x0 + field @Deprecated public static final int FOCUS_DISTANCE_OPTIMAL_INDEX = 1; // 0x1 + field @Deprecated public static final String FOCUS_MODE_AUTO = "auto"; + field @Deprecated public static final String FOCUS_MODE_CONTINUOUS_PICTURE = "continuous-picture"; + field @Deprecated public static final String FOCUS_MODE_CONTINUOUS_VIDEO = "continuous-video"; + field @Deprecated public static final String FOCUS_MODE_EDOF = "edof"; + field @Deprecated public static final String FOCUS_MODE_FIXED = "fixed"; + field @Deprecated public static final String FOCUS_MODE_INFINITY = "infinity"; + field @Deprecated public static final String FOCUS_MODE_MACRO = "macro"; + field @Deprecated public static final int PREVIEW_FPS_MAX_INDEX = 1; // 0x1 + field @Deprecated public static final int PREVIEW_FPS_MIN_INDEX = 0; // 0x0 + field @Deprecated public static final String SCENE_MODE_ACTION = "action"; + field @Deprecated public static final String SCENE_MODE_AUTO = "auto"; + field @Deprecated public static final String SCENE_MODE_BARCODE = "barcode"; + field @Deprecated public static final String SCENE_MODE_BEACH = "beach"; + field @Deprecated public static final String SCENE_MODE_CANDLELIGHT = "candlelight"; + field @Deprecated public static final String SCENE_MODE_FIREWORKS = "fireworks"; + field @Deprecated public static final String SCENE_MODE_HDR = "hdr"; + field @Deprecated public static final String SCENE_MODE_LANDSCAPE = "landscape"; + field @Deprecated public static final String SCENE_MODE_NIGHT = "night"; + field @Deprecated public static final String SCENE_MODE_NIGHT_PORTRAIT = "night-portrait"; + field @Deprecated public static final String SCENE_MODE_PARTY = "party"; + field @Deprecated public static final String SCENE_MODE_PORTRAIT = "portrait"; + field @Deprecated public static final String SCENE_MODE_SNOW = "snow"; + field @Deprecated public static final String SCENE_MODE_SPORTS = "sports"; + field @Deprecated public static final String SCENE_MODE_STEADYPHOTO = "steadyphoto"; + field @Deprecated public static final String SCENE_MODE_SUNSET = "sunset"; + field @Deprecated public static final String SCENE_MODE_THEATRE = "theatre"; + field @Deprecated public static final String WHITE_BALANCE_AUTO = "auto"; + field @Deprecated public static final String WHITE_BALANCE_CLOUDY_DAYLIGHT = "cloudy-daylight"; + field @Deprecated public static final String WHITE_BALANCE_DAYLIGHT = "daylight"; + field @Deprecated public static final String WHITE_BALANCE_FLUORESCENT = "fluorescent"; + field @Deprecated public static final String WHITE_BALANCE_INCANDESCENT = "incandescent"; + field @Deprecated public static final String WHITE_BALANCE_SHADE = "shade"; + field @Deprecated public static final String WHITE_BALANCE_TWILIGHT = "twilight"; + field @Deprecated public static final String WHITE_BALANCE_WARM_FLUORESCENT = "warm-fluorescent"; + } + + @Deprecated public static interface Camera.PictureCallback { + method @Deprecated public void onPictureTaken(byte[], android.hardware.Camera); + } + + @Deprecated public static interface Camera.PreviewCallback { + method @Deprecated public void onPreviewFrame(byte[], android.hardware.Camera); + } + + @Deprecated public static interface Camera.ShutterCallback { + method @Deprecated public void onShutter(); + } + + @Deprecated public class Camera.Size { + ctor @Deprecated public Camera.Size(int, int); + field @Deprecated public int height; + field @Deprecated public int width; + } + + public final class ConsumerIrManager { + method public android.hardware.ConsumerIrManager.CarrierFrequencyRange[] getCarrierFrequencies(); + method public boolean hasIrEmitter(); + method public void transmit(int, int[]); + } + + public final class ConsumerIrManager.CarrierFrequencyRange { + ctor public ConsumerIrManager.CarrierFrequencyRange(int, int); + method public int getMaxFrequency(); + method public int getMinFrequency(); + } + + public final class DataSpace { + method public static int getRange(int); + method public static int getStandard(int); + method public static int getTransfer(int); + method public static int pack(int, int, int); + field public static final int DATASPACE_ADOBE_RGB = 151715840; // 0x90b0000 + field public static final int DATASPACE_BT2020 = 147193856; // 0x8c60000 + field public static final int DATASPACE_BT2020_HLG = 168165376; // 0xa060000 + field public static final int DATASPACE_BT2020_PQ = 163971072; // 0x9c60000 + field public static final int DATASPACE_BT601_525 = 281280512; // 0x10c40000 + field public static final int DATASPACE_BT601_625 = 281149440; // 0x10c20000 + field public static final int DATASPACE_BT709 = 281083904; // 0x10c10000 + field public static final int DATASPACE_DCI_P3 = 155844608; // 0x94a0000 + field public static final int DATASPACE_DEPTH = 4096; // 0x1000 + field @FlaggedApi("com.android.graphics.flags.display_bt2020_colorspace") public static final int DATASPACE_DISPLAY_BT2020 = 142999552; // 0x8860000 + field public static final int DATASPACE_DISPLAY_P3 = 143261696; // 0x88a0000 + field public static final int DATASPACE_DYNAMIC_DEPTH = 4098; // 0x1002 + field public static final int DATASPACE_HEIF = 4100; // 0x1004 + field @FlaggedApi("com.android.internal.camera.flags.camera_heif_gainmap") public static final int DATASPACE_HEIF_ULTRAHDR = 4102; // 0x1006 + field public static final int DATASPACE_JFIF = 146931712; // 0x8c20000 + field public static final int DATASPACE_JPEG_R = 4101; // 0x1005 + field public static final int DATASPACE_SCRGB = 411107328; // 0x18810000 + field public static final int DATASPACE_SCRGB_LINEAR = 406913024; // 0x18410000 + field public static final int DATASPACE_SRGB = 142671872; // 0x8810000 + field public static final int DATASPACE_SRGB_LINEAR = 138477568; // 0x8410000 + field public static final int DATASPACE_UNKNOWN = 0; // 0x0 + field public static final int RANGE_EXTENDED = 402653184; // 0x18000000 + field public static final int RANGE_FULL = 134217728; // 0x8000000 + field public static final int RANGE_LIMITED = 268435456; // 0x10000000 + field public static final int RANGE_UNSPECIFIED = 0; // 0x0 + field public static final int STANDARD_ADOBE_RGB = 720896; // 0xb0000 + field public static final int STANDARD_BT2020 = 393216; // 0x60000 + field public static final int STANDARD_BT2020_CONSTANT_LUMINANCE = 458752; // 0x70000 + field public static final int STANDARD_BT470M = 524288; // 0x80000 + field public static final int STANDARD_BT601_525 = 262144; // 0x40000 + field public static final int STANDARD_BT601_525_UNADJUSTED = 327680; // 0x50000 + field public static final int STANDARD_BT601_625 = 131072; // 0x20000 + field public static final int STANDARD_BT601_625_UNADJUSTED = 196608; // 0x30000 + field public static final int STANDARD_BT709 = 65536; // 0x10000 + field public static final int STANDARD_DCI_P3 = 655360; // 0xa0000 + field public static final int STANDARD_FILM = 589824; // 0x90000 + field public static final int STANDARD_UNSPECIFIED = 0; // 0x0 + field public static final int TRANSFER_GAMMA2_2 = 16777216; // 0x1000000 + field public static final int TRANSFER_GAMMA2_6 = 20971520; // 0x1400000 + field public static final int TRANSFER_GAMMA2_8 = 25165824; // 0x1800000 + field public static final int TRANSFER_HLG = 33554432; // 0x2000000 + field public static final int TRANSFER_LINEAR = 4194304; // 0x400000 + field public static final int TRANSFER_SMPTE_170M = 12582912; // 0xc00000 + field public static final int TRANSFER_SRGB = 8388608; // 0x800000 + field public static final int TRANSFER_ST2084 = 29360128; // 0x1c00000 + field public static final int TRANSFER_UNSPECIFIED = 0; // 0x0 + } + + @FlaggedApi("android.hardware.flags.luts_api") public final class DisplayLuts { + ctor @FlaggedApi("android.hardware.flags.luts_api") public DisplayLuts(); + method @FlaggedApi("android.hardware.flags.luts_api") public void set(@NonNull android.hardware.DisplayLuts.Entry); + method @FlaggedApi("android.hardware.flags.luts_api") public void set(@NonNull android.hardware.DisplayLuts.Entry, @NonNull android.hardware.DisplayLuts.Entry); + } + + @FlaggedApi("android.hardware.flags.luts_api") public static class DisplayLuts.Entry { + ctor @FlaggedApi("android.hardware.flags.luts_api") public DisplayLuts.Entry(@NonNull float[], int, int); + method @FlaggedApi("android.hardware.flags.luts_api") @NonNull public float[] getBuffer(); + method @FlaggedApi("android.hardware.flags.luts_api") public int getDimension(); + method @FlaggedApi("android.hardware.flags.luts_api") public int getSamplingKey(); + } + + public class GeomagneticField { + ctor public GeomagneticField(float, float, float, long); + method public float getDeclination(); + method public float getFieldStrength(); + method public float getHorizontalStrength(); + method public float getInclination(); + method public float getX(); + method public float getY(); + method public float getZ(); + } + + public final class HardwareBuffer implements java.lang.AutoCloseable android.os.Parcelable { + method public void close(); + method @NonNull public static android.hardware.HardwareBuffer create(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int, long); + method public int describeContents(); + method public int getFormat(); + method public int getHeight(); + method public long getId(); + method public int getLayers(); + method public long getUsage(); + method public int getWidth(); + method public boolean isClosed(); + method public static boolean isSupported(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int, long); + method public void writeToParcel(android.os.Parcel, int); + field public static final int BLOB = 33; // 0x21 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DS_24UI8 = 50; // 0x32 + field public static final int DS_FP32UI8 = 52; // 0x34 + field public static final int D_16 = 48; // 0x30 + field public static final int D_24 = 49; // 0x31 + field public static final int D_FP32 = 51; // 0x33 + field @FlaggedApi("com.android.graphics.hwui.flags.requested_formats_v") public static final int RGBA_10101010 = 59; // 0x3b + field public static final int RGBA_1010102 = 43; // 0x2b + field public static final int RGBA_8888 = 1; // 0x1 + field public static final int RGBA_FP16 = 22; // 0x16 + field public static final int RGBX_8888 = 2; // 0x2 + field public static final int RGB_565 = 4; // 0x4 + field public static final int RGB_888 = 3; // 0x3 + field @FlaggedApi("com.android.graphics.hwui.flags.requested_formats_v") public static final int RG_1616 = 58; // 0x3a + field @FlaggedApi("com.android.graphics.hwui.flags.requested_formats_v") public static final int R_16 = 57; // 0x39 + field @FlaggedApi("com.android.graphics.hwui.flags.requested_formats_v") public static final int R_8 = 56; // 0x38 + field public static final int S_UI8 = 53; // 0x35 + field public static final long USAGE_COMPOSER_OVERLAY = 2048L; // 0x800L + field public static final long USAGE_CPU_READ_OFTEN = 3L; // 0x3L + field public static final long USAGE_CPU_READ_RARELY = 2L; // 0x2L + field public static final long USAGE_CPU_WRITE_OFTEN = 48L; // 0x30L + field public static final long USAGE_CPU_WRITE_RARELY = 32L; // 0x20L + field public static final long USAGE_FRONT_BUFFER = 4294967296L; // 0x100000000L + field public static final long USAGE_GPU_COLOR_OUTPUT = 512L; // 0x200L + field public static final long USAGE_GPU_CUBE_MAP = 33554432L; // 0x2000000L + field public static final long USAGE_GPU_DATA_BUFFER = 16777216L; // 0x1000000L + field public static final long USAGE_GPU_MIPMAP_COMPLETE = 67108864L; // 0x4000000L + field public static final long USAGE_GPU_SAMPLED_IMAGE = 256L; // 0x100L + field public static final long USAGE_PROTECTED_CONTENT = 16384L; // 0x4000L + field public static final long USAGE_SENSOR_DIRECT_DATA = 8388608L; // 0x800000L + field public static final long USAGE_VIDEO_ENCODE = 65536L; // 0x10000L + field public static final int YCBCR_420_888 = 35; // 0x23 + field public static final int YCBCR_P010 = 54; // 0x36 + field @FlaggedApi("android.media.codec.p210_format_support") public static final int YCBCR_P210 = 60; // 0x3c + } + + @FlaggedApi("android.hardware.flags.luts_api") public final class LutProperties { + method @FlaggedApi("android.hardware.flags.luts_api") public int getDimension(); + method @FlaggedApi("android.hardware.flags.luts_api") @NonNull public int[] getSamplingKeys(); + method @FlaggedApi("android.hardware.flags.luts_api") public int getSize(); + field @FlaggedApi("android.hardware.flags.luts_api") public static final int ONE_DIMENSION = 1; // 0x1 + field @FlaggedApi("android.hardware.flags.luts_api") public static final int SAMPLING_KEY_CIE_Y = 2; // 0x2 + field @FlaggedApi("android.hardware.flags.luts_api") public static final int SAMPLING_KEY_MAX_RGB = 1; // 0x1 + field @FlaggedApi("android.hardware.flags.luts_api") public static final int SAMPLING_KEY_RGB = 0; // 0x0 + field @FlaggedApi("android.hardware.flags.luts_api") public static final int THREE_DIMENSION = 3; // 0x3 + } + + @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public final class OverlayProperties implements android.os.Parcelable { + method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public int describeContents(); + method @FlaggedApi("android.hardware.flags.luts_api") @NonNull public android.hardware.LutProperties[] getLutProperties(); + method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public boolean isCombinationSupported(int, int); + method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public boolean isMixedColorSpacesSupported(); + method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") public void writeToParcel(@NonNull android.os.Parcel, int); + field @FlaggedApi("android.hardware.flags.overlayproperties_class_api") @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class Sensor { + method public int getFifoMaxEventCount(); + method public int getFifoReservedEventCount(); + method public int getHighestDirectReportRateLevel(); + method public int getId(); + method public int getMaxDelay(); + method public float getMaximumRange(); + method public int getMinDelay(); + method public String getName(); + method public float getPower(); + method public int getReportingMode(); + method public float getResolution(); + method public String getStringType(); + method public int getType(); + method public String getVendor(); + method public int getVersion(); + method public boolean isAdditionalInfoSupported(); + method public boolean isDirectChannelTypeSupported(int); + method public boolean isDynamicSensor(); + method public boolean isWakeUpSensor(); + field public static final int REPORTING_MODE_CONTINUOUS = 0; // 0x0 + field public static final int REPORTING_MODE_ONE_SHOT = 2; // 0x2 + field public static final int REPORTING_MODE_ON_CHANGE = 1; // 0x1 + field public static final int REPORTING_MODE_SPECIAL_TRIGGER = 3; // 0x3 + field public static final String STRING_TYPE_ACCELEROMETER = "android.sensor.accelerometer"; + field public static final String STRING_TYPE_ACCELEROMETER_LIMITED_AXES = "android.sensor.accelerometer_limited_axes"; + field public static final String STRING_TYPE_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED = "android.sensor.accelerometer_limited_axes_uncalibrated"; + field public static final String STRING_TYPE_ACCELEROMETER_UNCALIBRATED = "android.sensor.accelerometer_uncalibrated"; + field public static final String STRING_TYPE_AMBIENT_TEMPERATURE = "android.sensor.ambient_temperature"; + field public static final String STRING_TYPE_GAME_ROTATION_VECTOR = "android.sensor.game_rotation_vector"; + field public static final String STRING_TYPE_GEOMAGNETIC_ROTATION_VECTOR = "android.sensor.geomagnetic_rotation_vector"; + field public static final String STRING_TYPE_GRAVITY = "android.sensor.gravity"; + field public static final String STRING_TYPE_GYROSCOPE = "android.sensor.gyroscope"; + field public static final String STRING_TYPE_GYROSCOPE_LIMITED_AXES = "android.sensor.gyroscope_limited_axes"; + field public static final String STRING_TYPE_GYROSCOPE_LIMITED_AXES_UNCALIBRATED = "android.sensor.gyroscope_limited_axes_uncalibrated"; + field public static final String STRING_TYPE_GYROSCOPE_UNCALIBRATED = "android.sensor.gyroscope_uncalibrated"; + field public static final String STRING_TYPE_HEADING = "android.sensor.heading"; + field public static final String STRING_TYPE_HEAD_TRACKER = "android.sensor.head_tracker"; + field public static final String STRING_TYPE_HEART_BEAT = "android.sensor.heart_beat"; + field public static final String STRING_TYPE_HEART_RATE = "android.sensor.heart_rate"; + field public static final String STRING_TYPE_HINGE_ANGLE = "android.sensor.hinge_angle"; + field public static final String STRING_TYPE_LIGHT = "android.sensor.light"; + field public static final String STRING_TYPE_LINEAR_ACCELERATION = "android.sensor.linear_acceleration"; + field public static final String STRING_TYPE_LOW_LATENCY_OFFBODY_DETECT = "android.sensor.low_latency_offbody_detect"; + field public static final String STRING_TYPE_MAGNETIC_FIELD = "android.sensor.magnetic_field"; + field public static final String STRING_TYPE_MAGNETIC_FIELD_UNCALIBRATED = "android.sensor.magnetic_field_uncalibrated"; + field public static final String STRING_TYPE_MOTION_DETECT = "android.sensor.motion_detect"; + field @Deprecated public static final String STRING_TYPE_ORIENTATION = "android.sensor.orientation"; + field public static final String STRING_TYPE_POSE_6DOF = "android.sensor.pose_6dof"; + field public static final String STRING_TYPE_PRESSURE = "android.sensor.pressure"; + field public static final String STRING_TYPE_PROXIMITY = "android.sensor.proximity"; + field public static final String STRING_TYPE_RELATIVE_HUMIDITY = "android.sensor.relative_humidity"; + field public static final String STRING_TYPE_ROTATION_VECTOR = "android.sensor.rotation_vector"; + field public static final String STRING_TYPE_SIGNIFICANT_MOTION = "android.sensor.significant_motion"; + field public static final String STRING_TYPE_STATIONARY_DETECT = "android.sensor.stationary_detect"; + field public static final String STRING_TYPE_STEP_COUNTER = "android.sensor.step_counter"; + field public static final String STRING_TYPE_STEP_DETECTOR = "android.sensor.step_detector"; + field @Deprecated public static final String STRING_TYPE_TEMPERATURE = "android.sensor.temperature"; + field public static final int TYPE_ACCELEROMETER = 1; // 0x1 + field public static final int TYPE_ACCELEROMETER_LIMITED_AXES = 38; // 0x26 + field public static final int TYPE_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED = 40; // 0x28 + field public static final int TYPE_ACCELEROMETER_UNCALIBRATED = 35; // 0x23 + field public static final int TYPE_ALL = -1; // 0xffffffff + field public static final int TYPE_AMBIENT_TEMPERATURE = 13; // 0xd + field public static final int TYPE_DEVICE_PRIVATE_BASE = 65536; // 0x10000 + field public static final int TYPE_GAME_ROTATION_VECTOR = 15; // 0xf + field public static final int TYPE_GEOMAGNETIC_ROTATION_VECTOR = 20; // 0x14 + field public static final int TYPE_GRAVITY = 9; // 0x9 + field public static final int TYPE_GYROSCOPE = 4; // 0x4 + field public static final int TYPE_GYROSCOPE_LIMITED_AXES = 39; // 0x27 + field public static final int TYPE_GYROSCOPE_LIMITED_AXES_UNCALIBRATED = 41; // 0x29 + field public static final int TYPE_GYROSCOPE_UNCALIBRATED = 16; // 0x10 + field public static final int TYPE_HEADING = 42; // 0x2a + field public static final int TYPE_HEAD_TRACKER = 37; // 0x25 + field public static final int TYPE_HEART_BEAT = 31; // 0x1f + field public static final int TYPE_HEART_RATE = 21; // 0x15 + field public static final int TYPE_HINGE_ANGLE = 36; // 0x24 + field public static final int TYPE_LIGHT = 5; // 0x5 + field public static final int TYPE_LINEAR_ACCELERATION = 10; // 0xa + field public static final int TYPE_LOW_LATENCY_OFFBODY_DETECT = 34; // 0x22 + field public static final int TYPE_MAGNETIC_FIELD = 2; // 0x2 + field public static final int TYPE_MAGNETIC_FIELD_UNCALIBRATED = 14; // 0xe + field public static final int TYPE_MOTION_DETECT = 30; // 0x1e + field @Deprecated public static final int TYPE_ORIENTATION = 3; // 0x3 + field public static final int TYPE_POSE_6DOF = 28; // 0x1c + field public static final int TYPE_PRESSURE = 6; // 0x6 + field public static final int TYPE_PROXIMITY = 8; // 0x8 + field public static final int TYPE_RELATIVE_HUMIDITY = 12; // 0xc + field public static final int TYPE_ROTATION_VECTOR = 11; // 0xb + field public static final int TYPE_SIGNIFICANT_MOTION = 17; // 0x11 + field public static final int TYPE_STATIONARY_DETECT = 29; // 0x1d + field public static final int TYPE_STEP_COUNTER = 19; // 0x13 + field public static final int TYPE_STEP_DETECTOR = 18; // 0x12 + field @Deprecated public static final int TYPE_TEMPERATURE = 7; // 0x7 + } + + public class SensorAdditionalInfo { + field public static final int TYPE_FRAME_BEGIN = 0; // 0x0 + field public static final int TYPE_FRAME_END = 1; // 0x1 + field public static final int TYPE_INTERNAL_TEMPERATURE = 65537; // 0x10001 + field public static final int TYPE_SAMPLING = 65540; // 0x10004 + field public static final int TYPE_SENSOR_PLACEMENT = 65539; // 0x10003 + field public static final int TYPE_UNTRACKED_DELAY = 65536; // 0x10000 + field public static final int TYPE_VEC3_CALIBRATION = 65538; // 0x10002 + field public final float[] floatValues; + field public final int[] intValues; + field public final android.hardware.Sensor sensor; + field public final int serial; + field public final int type; + } + + public final class SensorDirectChannel implements java.nio.channels.Channel { + method public void close(); + method public int configure(android.hardware.Sensor, int); + method public boolean isOpen(); + field public static final int RATE_FAST = 2; // 0x2 + field public static final int RATE_NORMAL = 1; // 0x1 + field public static final int RATE_STOP = 0; // 0x0 + field public static final int RATE_VERY_FAST = 3; // 0x3 + field public static final int TYPE_HARDWARE_BUFFER = 2; // 0x2 + field public static final int TYPE_MEMORY_FILE = 1; // 0x1 + } + + public class SensorEvent { + field public int accuracy; + field public boolean firstEventAfterDiscontinuity; + field public android.hardware.Sensor sensor; + field public long timestamp; + field public final float[] values; + } + + public abstract class SensorEventCallback implements android.hardware.SensorEventListener2 { + ctor public SensorEventCallback(); + method public void onAccuracyChanged(android.hardware.Sensor, int); + method public void onFlushCompleted(android.hardware.Sensor); + method public void onSensorAdditionalInfo(android.hardware.SensorAdditionalInfo); + method public void onSensorChanged(android.hardware.SensorEvent); + } + + public interface SensorEventListener { + method public void onAccuracyChanged(android.hardware.Sensor, int); + method public void onSensorChanged(android.hardware.SensorEvent); + } + + public interface SensorEventListener2 extends android.hardware.SensorEventListener { + method public void onFlushCompleted(android.hardware.Sensor); + } + + @Deprecated public interface SensorListener { + method @Deprecated public void onAccuracyChanged(int, int); + method @Deprecated public void onSensorChanged(int, float[]); + } + + public abstract class SensorManager { + method public boolean cancelTriggerSensor(android.hardware.TriggerEventListener, android.hardware.Sensor); + method public android.hardware.SensorDirectChannel createDirectChannel(android.os.MemoryFile); + method public android.hardware.SensorDirectChannel createDirectChannel(android.hardware.HardwareBuffer); + method public boolean flush(android.hardware.SensorEventListener); + method public static float getAltitude(float, float); + method public static void getAngleChange(float[], float[], float[]); + method @Nullable public android.hardware.Sensor getDefaultSensor(int); + method @Nullable public android.hardware.Sensor getDefaultSensor(int, boolean); + method public java.util.List getDynamicSensorList(int); + method public static float getInclination(float[]); + method public static float[] getOrientation(float[], float[]); + method public static void getQuaternionFromVector(float[], float[]); + method public static boolean getRotationMatrix(float[], float[], float[], float[]); + method public static void getRotationMatrixFromVector(float[], float[]); + method public java.util.List getSensorList(int); + method @Deprecated public int getSensors(); + method public boolean isDynamicSensorDiscoverySupported(); + method public void registerDynamicSensorCallback(android.hardware.SensorManager.DynamicSensorCallback); + method public void registerDynamicSensorCallback(android.hardware.SensorManager.DynamicSensorCallback, android.os.Handler); + method @Deprecated public boolean registerListener(android.hardware.SensorListener, int); + method @Deprecated public boolean registerListener(android.hardware.SensorListener, int, int); + method public boolean registerListener(android.hardware.SensorEventListener, android.hardware.Sensor, int); + method public boolean registerListener(android.hardware.SensorEventListener, android.hardware.Sensor, int, int); + method public boolean registerListener(android.hardware.SensorEventListener, android.hardware.Sensor, int, android.os.Handler); + method public boolean registerListener(android.hardware.SensorEventListener, android.hardware.Sensor, int, int, android.os.Handler); + method public static boolean remapCoordinateSystem(float[], int, int, float[]); + method public boolean requestTriggerSensor(android.hardware.TriggerEventListener, android.hardware.Sensor); + method public void unregisterDynamicSensorCallback(android.hardware.SensorManager.DynamicSensorCallback); + method @Deprecated public void unregisterListener(android.hardware.SensorListener); + method @Deprecated public void unregisterListener(android.hardware.SensorListener, int); + method public void unregisterListener(android.hardware.SensorEventListener, android.hardware.Sensor); + method public void unregisterListener(android.hardware.SensorEventListener); + field public static final int AXIS_MINUS_X = 129; // 0x81 + field public static final int AXIS_MINUS_Y = 130; // 0x82 + field public static final int AXIS_MINUS_Z = 131; // 0x83 + field public static final int AXIS_X = 1; // 0x1 + field public static final int AXIS_Y = 2; // 0x2 + field public static final int AXIS_Z = 3; // 0x3 + field @Deprecated public static final int DATA_X = 0; // 0x0 + field @Deprecated public static final int DATA_Y = 1; // 0x1 + field @Deprecated public static final int DATA_Z = 2; // 0x2 + field public static final float GRAVITY_DEATH_STAR_I = 3.5303614E-7f; + field public static final float GRAVITY_EARTH = 9.80665f; + field public static final float GRAVITY_JUPITER = 23.12f; + field public static final float GRAVITY_MARS = 3.71f; + field public static final float GRAVITY_MERCURY = 3.7f; + field public static final float GRAVITY_MOON = 1.6f; + field public static final float GRAVITY_NEPTUNE = 11.0f; + field public static final float GRAVITY_PLUTO = 0.6f; + field public static final float GRAVITY_SATURN = 8.96f; + field public static final float GRAVITY_SUN = 275.0f; + field public static final float GRAVITY_THE_ISLAND = 4.815162f; + field public static final float GRAVITY_URANUS = 8.69f; + field public static final float GRAVITY_VENUS = 8.87f; + field public static final float LIGHT_CLOUDY = 100.0f; + field public static final float LIGHT_FULLMOON = 0.25f; + field public static final float LIGHT_NO_MOON = 0.001f; + field public static final float LIGHT_OVERCAST = 10000.0f; + field public static final float LIGHT_SHADE = 20000.0f; + field public static final float LIGHT_SUNLIGHT = 110000.0f; + field public static final float LIGHT_SUNLIGHT_MAX = 120000.0f; + field public static final float LIGHT_SUNRISE = 400.0f; + field public static final float MAGNETIC_FIELD_EARTH_MAX = 60.0f; + field public static final float MAGNETIC_FIELD_EARTH_MIN = 30.0f; + field public static final float PRESSURE_STANDARD_ATMOSPHERE = 1013.25f; + field @Deprecated public static final int RAW_DATA_INDEX = 3; // 0x3 + field @Deprecated public static final int RAW_DATA_X = 3; // 0x3 + field @Deprecated public static final int RAW_DATA_Y = 4; // 0x4 + field @Deprecated public static final int RAW_DATA_Z = 5; // 0x5 + field @Deprecated public static final int SENSOR_ACCELEROMETER = 2; // 0x2 + field @Deprecated public static final int SENSOR_ALL = 127; // 0x7f + field public static final int SENSOR_DELAY_FASTEST = 0; // 0x0 + field public static final int SENSOR_DELAY_GAME = 1; // 0x1 + field public static final int SENSOR_DELAY_NORMAL = 3; // 0x3 + field public static final int SENSOR_DELAY_UI = 2; // 0x2 + field @Deprecated public static final int SENSOR_LIGHT = 16; // 0x10 + field @Deprecated public static final int SENSOR_MAGNETIC_FIELD = 8; // 0x8 + field @Deprecated public static final int SENSOR_MAX = 64; // 0x40 + field @Deprecated public static final int SENSOR_MIN = 1; // 0x1 + field @Deprecated public static final int SENSOR_ORIENTATION = 1; // 0x1 + field @Deprecated public static final int SENSOR_ORIENTATION_RAW = 128; // 0x80 + field @Deprecated public static final int SENSOR_PROXIMITY = 32; // 0x20 + field public static final int SENSOR_STATUS_ACCURACY_HIGH = 3; // 0x3 + field public static final int SENSOR_STATUS_ACCURACY_LOW = 1; // 0x1 + field public static final int SENSOR_STATUS_ACCURACY_MEDIUM = 2; // 0x2 + field public static final int SENSOR_STATUS_NO_CONTACT = -1; // 0xffffffff + field public static final int SENSOR_STATUS_UNRELIABLE = 0; // 0x0 + field @Deprecated public static final int SENSOR_TEMPERATURE = 4; // 0x4 + field @Deprecated public static final int SENSOR_TRICORDER = 64; // 0x40 + field public static final float STANDARD_GRAVITY = 9.80665f; + } + + public abstract static class SensorManager.DynamicSensorCallback { + ctor public SensorManager.DynamicSensorCallback(); + method public void onDynamicSensorConnected(android.hardware.Sensor); + method public void onDynamicSensorDisconnected(android.hardware.Sensor); + } + + public final class SensorPrivacyManager { + method public boolean supportsSensorToggle(int); + method public boolean supportsSensorToggle(int, int); + field public static final int TOGGLE_TYPE_HARDWARE = 2; // 0x2 + field public static final int TOGGLE_TYPE_SOFTWARE = 1; // 0x1 + } + + public static class SensorPrivacyManager.Sensors { + field public static final int CAMERA = 2; // 0x2 + field public static final int MICROPHONE = 1; // 0x1 + } + + public final class SyncFence implements java.lang.AutoCloseable android.os.Parcelable { + ctor @FlaggedApi("com.android.window.flags.sdk_desired_present_time") public SyncFence(@NonNull android.hardware.SyncFence); + method public boolean await(@NonNull java.time.Duration); + method public boolean awaitForever(); + method public void close(); + method public int describeContents(); + method public long getSignalTime(); + method public boolean isValid(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final long SIGNAL_TIME_INVALID = -1L; // 0xffffffffffffffffL + field public static final long SIGNAL_TIME_PENDING = 9223372036854775807L; // 0x7fffffffffffffffL + } + + public final class TriggerEvent { + field public android.hardware.Sensor sensor; + field public long timestamp; + field public final float[] values; + } + + public abstract class TriggerEventListener { + ctor public TriggerEventListener(); + method public abstract void onTrigger(android.hardware.TriggerEvent); + } + +} + +package android.hardware.biometrics { + + public class BiometricManager { + method @Deprecated @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public int canAuthenticate(); + method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public int canAuthenticate(int); + method @FlaggedApi("android.hardware.biometrics.last_authentication_time") @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public long getLastAuthenticationTime(int); + method @NonNull @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public android.hardware.biometrics.BiometricManager.Strings getStrings(int); + field public static final int BIOMETRIC_ERROR_HW_UNAVAILABLE = 1; // 0x1 + field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int BIOMETRIC_ERROR_IDENTITY_CHECK_NOT_ACTIVE = 20; // 0x14 + field public static final int BIOMETRIC_ERROR_NONE_ENROLLED = 11; // 0xb + field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int BIOMETRIC_ERROR_NOT_ENABLED_FOR_APPS = 21; // 0x15 + field public static final int BIOMETRIC_ERROR_NO_HARDWARE = 12; // 0xc + field public static final int BIOMETRIC_ERROR_SECURITY_UPDATE_REQUIRED = 15; // 0xf + field @FlaggedApi("android.hardware.biometrics.last_authentication_time") public static final long BIOMETRIC_NO_AUTHENTICATION = -1L; // 0xffffffffffffffffL + field public static final int BIOMETRIC_SUCCESS = 0; // 0x0 + } + + public static interface BiometricManager.Authenticators { + field public static final int BIOMETRIC_STRONG = 15; // 0xf + field public static final int BIOMETRIC_WEAK = 255; // 0xff + field public static final int DEVICE_CREDENTIAL = 32768; // 0x8000 + field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int IDENTITY_CHECK = 65536; // 0x10000 + } + + public static class BiometricManager.Strings { + method @Nullable @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public CharSequence getButtonLabel(); + method @Nullable @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public CharSequence getPromptMessage(); + method @Nullable @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public CharSequence getSettingName(); + } + + public class BiometricPrompt { + method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public void authenticate(@NonNull android.hardware.biometrics.BiometricPrompt.CryptoObject, @NonNull android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.biometrics.BiometricPrompt.AuthenticationCallback); + method @RequiresPermission(android.Manifest.permission.USE_BIOMETRIC) public void authenticate(@NonNull android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.biometrics.BiometricPrompt.AuthenticationCallback); + method @Nullable public int getAllowedAuthenticators(); + method @Nullable public android.hardware.biometrics.PromptContentView getContentView(); + method @Nullable public CharSequence getDescription(); + method @Nullable @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.graphics.Bitmap getLogoBitmap(); + method @Nullable @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public String getLogoDescription(); + method @DrawableRes @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public int getLogoRes(); + method @Nullable public CharSequence getNegativeButtonText(); + method @Nullable public CharSequence getSubtitle(); + method @NonNull public CharSequence getTitle(); + method public boolean isConfirmationRequired(); + field public static final int AUTHENTICATION_RESULT_TYPE_BIOMETRIC = 2; // 0x2 + field public static final int AUTHENTICATION_RESULT_TYPE_DEVICE_CREDENTIAL = 1; // 0x1 + field public static final int BIOMETRIC_ACQUIRED_GOOD = 0; // 0x0 + field public static final int BIOMETRIC_ACQUIRED_IMAGER_DIRTY = 3; // 0x3 + field public static final int BIOMETRIC_ACQUIRED_INSUFFICIENT = 2; // 0x2 + field public static final int BIOMETRIC_ACQUIRED_PARTIAL = 1; // 0x1 + field public static final int BIOMETRIC_ACQUIRED_TOO_FAST = 5; // 0x5 + field public static final int BIOMETRIC_ACQUIRED_TOO_SLOW = 4; // 0x4 + field public static final int BIOMETRIC_ERROR_CANCELED = 5; // 0x5 + field public static final int BIOMETRIC_ERROR_HW_NOT_PRESENT = 12; // 0xc + field public static final int BIOMETRIC_ERROR_HW_UNAVAILABLE = 1; // 0x1 + field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int BIOMETRIC_ERROR_IDENTITY_CHECK_NOT_ACTIVE = 20; // 0x14 + field public static final int BIOMETRIC_ERROR_LOCKOUT = 7; // 0x7 + field public static final int BIOMETRIC_ERROR_LOCKOUT_PERMANENT = 9; // 0x9 + field @FlaggedApi("android.hardware.biometrics.identity_check_api") public static final int BIOMETRIC_ERROR_NOT_ENABLED_FOR_APPS = 21; // 0x15 + field public static final int BIOMETRIC_ERROR_NO_BIOMETRICS = 11; // 0xb + field public static final int BIOMETRIC_ERROR_NO_DEVICE_CREDENTIAL = 14; // 0xe + field public static final int BIOMETRIC_ERROR_NO_SPACE = 4; // 0x4 + field public static final int BIOMETRIC_ERROR_SECURITY_UPDATE_REQUIRED = 15; // 0xf + field public static final int BIOMETRIC_ERROR_TIMEOUT = 3; // 0x3 + field public static final int BIOMETRIC_ERROR_UNABLE_TO_PROCESS = 2; // 0x2 + field public static final int BIOMETRIC_ERROR_USER_CANCELED = 10; // 0xa + field public static final int BIOMETRIC_ERROR_VENDOR = 8; // 0x8 + field @FlaggedApi("android.hardware.biometrics.last_authentication_time") public static final long BIOMETRIC_NO_AUTHENTICATION = -1L; // 0xffffffffffffffffL + } + + public abstract static class BiometricPrompt.AuthenticationCallback { + ctor public BiometricPrompt.AuthenticationCallback(); + method public void onAuthenticationError(int, CharSequence); + method public void onAuthenticationFailed(); + method public void onAuthenticationHelp(int, CharSequence); + method public void onAuthenticationSucceeded(android.hardware.biometrics.BiometricPrompt.AuthenticationResult); + } + + public static class BiometricPrompt.AuthenticationResult { + method public int getAuthenticationType(); + method public android.hardware.biometrics.BiometricPrompt.CryptoObject getCryptoObject(); + } + + public static class BiometricPrompt.Builder { + ctor public BiometricPrompt.Builder(android.content.Context); + method @NonNull public android.hardware.biometrics.BiometricPrompt build(); + method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setAllowedAuthenticators(int); + method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setConfirmationRequired(boolean); + method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setContentView(@NonNull android.hardware.biometrics.PromptContentView); + method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setDescription(@NonNull CharSequence); + method @Deprecated @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setDeviceCredentialAllowed(boolean); + method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.BiometricPrompt.Builder setLogoBitmap(@NonNull android.graphics.Bitmap); + method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.BiometricPrompt.Builder setLogoDescription(@NonNull String); + method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.BiometricPrompt.Builder setLogoRes(@DrawableRes int); + method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setNegativeButton(@NonNull CharSequence, @NonNull java.util.concurrent.Executor, @NonNull android.content.DialogInterface.OnClickListener); + method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setSubtitle(@NonNull CharSequence); + method @NonNull public android.hardware.biometrics.BiometricPrompt.Builder setTitle(@NonNull CharSequence); + } + + public static final class BiometricPrompt.CryptoObject { + ctor public BiometricPrompt.CryptoObject(@NonNull java.security.Signature); + ctor public BiometricPrompt.CryptoObject(@NonNull javax.crypto.Cipher); + ctor public BiometricPrompt.CryptoObject(@NonNull javax.crypto.Mac); + ctor @Deprecated public BiometricPrompt.CryptoObject(@NonNull android.security.identity.IdentityCredential); + ctor public BiometricPrompt.CryptoObject(@NonNull android.security.identity.PresentationSession); + ctor @FlaggedApi("android.hardware.biometrics.add_key_agreement_crypto_object") public BiometricPrompt.CryptoObject(@NonNull javax.crypto.KeyAgreement); + ctor @FlaggedApi("android.hardware.biometrics.get_op_id_crypto_object") public BiometricPrompt.CryptoObject(long); + method @Nullable public javax.crypto.Cipher getCipher(); + method @Deprecated @Nullable public android.security.identity.IdentityCredential getIdentityCredential(); + method @FlaggedApi("android.hardware.biometrics.add_key_agreement_crypto_object") @Nullable public javax.crypto.KeyAgreement getKeyAgreement(); + method @Nullable public javax.crypto.Mac getMac(); + method @FlaggedApi("android.hardware.biometrics.get_op_id_crypto_object") public long getOperationHandle(); + method @Nullable public android.security.identity.PresentationSession getPresentationSession(); + method @Nullable public java.security.Signature getSignature(); + } + + public interface PromptContentItem { + } + + public final class PromptContentItemBulletedText implements android.os.Parcelable android.hardware.biometrics.PromptContentItem { + ctor public PromptContentItemBulletedText(@NonNull String); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class PromptContentItemPlainText implements android.os.Parcelable android.hardware.biometrics.PromptContentItem { + ctor public PromptContentItemPlainText(@NonNull String); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface PromptContentView { + } + + public final class PromptContentViewWithMoreOptionsButton implements android.os.Parcelable android.hardware.biometrics.PromptContentView { + method public int describeContents(); + method @Nullable @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public String getDescription(); + method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.content.DialogInterface.OnClickListener getMoreOptionsButtonListener(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class PromptContentViewWithMoreOptionsButton.Builder { + ctor public PromptContentViewWithMoreOptionsButton.Builder(); + method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.PromptContentViewWithMoreOptionsButton build(); + method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.PromptContentViewWithMoreOptionsButton.Builder setDescription(@NonNull String); + method @NonNull @RequiresPermission(android.Manifest.permission.SET_BIOMETRIC_DIALOG_ADVANCED) public android.hardware.biometrics.PromptContentViewWithMoreOptionsButton.Builder setMoreOptionsButtonListener(@NonNull java.util.concurrent.Executor, @NonNull android.content.DialogInterface.OnClickListener); + } + + public final class PromptVerticalListContentView implements android.os.Parcelable android.hardware.biometrics.PromptContentView { + method public int describeContents(); + method @Nullable public String getDescription(); + method @NonNull public java.util.List getListItems(); + method public static int getMaxEachItemCharacterNumber(); + method public static int getMaxItemCount(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class PromptVerticalListContentView.Builder { + ctor public PromptVerticalListContentView.Builder(); + method @NonNull public android.hardware.biometrics.PromptVerticalListContentView.Builder addListItem(@NonNull android.hardware.biometrics.PromptContentItem); + method @NonNull public android.hardware.biometrics.PromptVerticalListContentView.Builder addListItem(@NonNull android.hardware.biometrics.PromptContentItem, int); + method @NonNull public android.hardware.biometrics.PromptVerticalListContentView build(); + method @NonNull public android.hardware.biometrics.PromptVerticalListContentView.Builder setDescription(@NonNull String); + } + +} + +package android.hardware.camera2 { + + public class CameraAccessException extends android.util.AndroidException { + ctor public CameraAccessException(int); + ctor public CameraAccessException(int, String); + ctor public CameraAccessException(int, String, Throwable); + ctor public CameraAccessException(int, Throwable); + method public final int getReason(); + field public static final int CAMERA_DISABLED = 1; // 0x1 + field public static final int CAMERA_DISCONNECTED = 2; // 0x2 + field public static final int CAMERA_ERROR = 3; // 0x3 + field public static final int CAMERA_IN_USE = 4; // 0x4 + field public static final int MAX_CAMERAS_IN_USE = 5; // 0x5 + } + + public abstract class CameraCaptureSession implements java.lang.AutoCloseable { + ctor public CameraCaptureSession(); + method public abstract void abortCaptures() throws android.hardware.camera2.CameraAccessException; + method public abstract int capture(@NonNull android.hardware.camera2.CaptureRequest, @Nullable android.hardware.camera2.CameraCaptureSession.CaptureCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method public abstract int captureBurst(@NonNull java.util.List, @Nullable android.hardware.camera2.CameraCaptureSession.CaptureCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method public int captureBurstRequests(@NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException; + method public int captureSingleRequest(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException; + method public abstract void close(); + method public abstract void finalizeOutputConfigurations(java.util.List) throws android.hardware.camera2.CameraAccessException; + method @NonNull public abstract android.hardware.camera2.CameraDevice getDevice(); + method @Nullable public abstract android.view.Surface getInputSurface(); + method public abstract boolean isReprocessable(); + method public abstract void prepare(@NonNull android.view.Surface) throws android.hardware.camera2.CameraAccessException; + method public abstract int setRepeatingBurst(@NonNull java.util.List, @Nullable android.hardware.camera2.CameraCaptureSession.CaptureCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method public int setRepeatingBurstRequests(@NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException; + method public abstract int setRepeatingRequest(@NonNull android.hardware.camera2.CaptureRequest, @Nullable android.hardware.camera2.CameraCaptureSession.CaptureCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method public int setSingleRepeatingRequest(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.CaptureCallback) throws android.hardware.camera2.CameraAccessException; + method public abstract void stopRepeating() throws android.hardware.camera2.CameraAccessException; + method public boolean supportsOfflineProcessing(@NonNull android.view.Surface); + method @Nullable public android.hardware.camera2.CameraOfflineSession switchToOffline(@NonNull java.util.Collection, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraOfflineSession.CameraOfflineSessionCallback) throws android.hardware.camera2.CameraAccessException; + method public void updateOutputConfiguration(android.hardware.camera2.params.OutputConfiguration) throws android.hardware.camera2.CameraAccessException; + } + + public abstract static class CameraCaptureSession.CaptureCallback { + ctor public CameraCaptureSession.CaptureCallback(); + method public void onCaptureBufferLost(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.view.Surface, long); + method public void onCaptureCompleted(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.hardware.camera2.TotalCaptureResult); + method public void onCaptureFailed(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.hardware.camera2.CaptureFailure); + method public void onCaptureProgressed(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.hardware.camera2.CaptureResult); + method public void onCaptureSequenceAborted(@NonNull android.hardware.camera2.CameraCaptureSession, int); + method public void onCaptureSequenceCompleted(@NonNull android.hardware.camera2.CameraCaptureSession, int, long); + method public void onCaptureStarted(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, long, long); + method public void onReadoutStarted(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.hardware.camera2.CaptureRequest, long, long); + } + + public abstract static class CameraCaptureSession.StateCallback { + ctor public CameraCaptureSession.StateCallback(); + method public void onActive(@NonNull android.hardware.camera2.CameraCaptureSession); + method public void onCaptureQueueEmpty(@NonNull android.hardware.camera2.CameraCaptureSession); + method public void onClosed(@NonNull android.hardware.camera2.CameraCaptureSession); + method public abstract void onConfigureFailed(@NonNull android.hardware.camera2.CameraCaptureSession); + method public abstract void onConfigured(@NonNull android.hardware.camera2.CameraCaptureSession); + method public void onReady(@NonNull android.hardware.camera2.CameraCaptureSession); + method public void onSurfacePrepared(@NonNull android.hardware.camera2.CameraCaptureSession, @NonNull android.view.Surface); + } + + public final class CameraCharacteristics extends android.hardware.camera2.CameraMetadata> { + method @Nullable public T get(android.hardware.camera2.CameraCharacteristics.Key); + method @NonNull public java.util.List> getAvailableCaptureRequestKeys(); + method @NonNull public java.util.List> getAvailableCaptureResultKeys(); + method public java.util.List> getAvailablePhysicalCameraRequestKeys(); + method @NonNull public java.util.List> getAvailableSessionCharacteristicsKeys(); + method public java.util.List> getAvailableSessionKeys(); + method @NonNull public java.util.List> getKeys(); + method @NonNull public java.util.List> getKeysNeedingPermission(); + method @NonNull public java.util.Set getPhysicalCameraIds(); + method @Nullable public android.hardware.camera2.params.RecommendedStreamConfigurationMap getRecommendedStreamConfigurationMap(int); + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key AUTOMOTIVE_LENS_FACING; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key AUTOMOTIVE_LOCATION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES; + field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key COLOR_CORRECTION_AVAILABLE_MODES; + field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> COLOR_CORRECTION_COLOR_TEMPERATURE_RANGE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_AVAILABLE_ANTIBANDING_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_AVAILABLE_MODES; + field @FlaggedApi("com.android.internal.camera.flags.ae_priority") @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_AVAILABLE_PRIORITY_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key[]> CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> CONTROL_AE_COMPENSATION_RANGE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_COMPENSATION_STEP; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_LOCK_AVAILABLE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AF_AVAILABLE_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AUTOFRAMING_AVAILABLE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_EFFECTS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_CAPABILITIES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_SCENE_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_SETTINGS_OVERRIDES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AWB_AVAILABLE_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AWB_LOCK_AVAILABLE; + field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> CONTROL_LOW_LIGHT_BOOST_INFO_LUMINANCE_RANGE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_MAX_REGIONS_AE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_MAX_REGIONS_AF; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_MAX_REGIONS_AWB; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> CONTROL_POST_RAW_SENSITIVITY_BOOST_RANGE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> CONTROL_ZOOM_RATIO_RANGE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key DEPTH_DEPTH_IS_EXCLUSIVE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key DISTORTION_CORRECTION_AVAILABLE_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key EDGE_AVAILABLE_EDGE_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_INFO_AVAILABLE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_INFO_STRENGTH_DEFAULT_LEVEL; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_INFO_STRENGTH_MAXIMUM_LEVEL; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_SINGLE_STRENGTH_DEFAULT_LEVEL; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_SINGLE_STRENGTH_MAX_LEVEL; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_TORCH_STRENGTH_DEFAULT_LEVEL; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key FLASH_TORCH_STRENGTH_MAX_LEVEL; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key INFO_DEVICE_STATE_SENSOR_ORIENTATION_MAP; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key INFO_SESSION_CONFIGURATION_QUERY_VERSION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key INFO_SUPPORTED_HARDWARE_LEVEL; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key INFO_VERSION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key JPEG_AVAILABLE_THUMBNAIL_SIZES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_DISTORTION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_DISTORTION_MAXIMUM_RESOLUTION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_FACING; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_AVAILABLE_APERTURES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_AVAILABLE_FILTER_DENSITIES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_AVAILABLE_FOCAL_LENGTHS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_FOCUS_DISTANCE_CALIBRATION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_HYPERFOCAL_DISTANCE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INFO_MINIMUM_FOCUS_DISTANCE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INTRINSIC_CALIBRATION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_INTRINSIC_CALIBRATION_MAXIMUM_RESOLUTION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_POSE_REFERENCE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_POSE_ROTATION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_POSE_TRANSLATION; + field @Deprecated @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LENS_RADIAL_DISTORTION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REPROCESS_MAX_CAPTURE_STALL; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_AVAILABLE_CAPABILITIES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_AVAILABLE_COLOR_SPACE_PROFILES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_MAX_NUM_INPUT_STREAMS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_MAX_NUM_OUTPUT_PROC; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_MAX_NUM_OUTPUT_PROC_STALLING; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_MAX_NUM_OUTPUT_RAW; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_PARTIAL_RESULT_COUNT; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_PIPELINE_MAX_DEPTH; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_AVAILABLE_MAX_DIGITAL_ZOOM; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_AVAILABLE_ROTATE_AND_CROP_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_AVAILABLE_STREAM_USE_CASES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_CROPPING_TYPE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_DEFAULT_SECURE_IMAGE_SIZE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_CONCURRENT_STREAM_COMBINATIONS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_MAXIMUM_RESOLUTION_STREAM_COMBINATIONS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_PREVIEW_STABILIZATION_OUTPUT_STREAM_COMBINATIONS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_STREAM_COMBINATIONS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_TEN_BIT_OUTPUT_STREAM_COMBINATIONS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MANDATORY_USE_CASE_STREAM_COMBINATIONS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_MULTI_RESOLUTION_STREAM_CONFIGURATION_MAP; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_STREAM_CONFIGURATION_MAP; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SCALER_STREAM_CONFIGURATION_MAP_MAXIMUM_RESOLUTION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_AVAILABLE_TEST_PATTERN_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_BLACK_LEVEL_PATTERN; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_CALIBRATION_TRANSFORM1; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_CALIBRATION_TRANSFORM2; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_COLOR_TRANSFORM1; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_COLOR_TRANSFORM2; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_FORWARD_MATRIX1; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_FORWARD_MATRIX2; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_ACTIVE_ARRAY_SIZE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_BINNING_FACTOR; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_COLOR_FILTER_ARRANGEMENT; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> SENSOR_INFO_EXPOSURE_TIME_RANGE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_LENS_SHADING_APPLIED; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_MAX_FRAME_DURATION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PHYSICAL_SIZE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PIXEL_ARRAY_SIZE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PIXEL_ARRAY_SIZE_MAXIMUM_RESOLUTION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key> SENSOR_INFO_SENSITIVITY_RANGE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_TIMESTAMP_SOURCE; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_INFO_WHITE_LEVEL; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_MAX_ANALOG_SENSITIVITY; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_OPTICAL_BLACK_REGIONS; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_ORIENTATION; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_READOUT_TIMESTAMP; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_REFERENCE_ILLUMINANT1; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SENSOR_REFERENCE_ILLUMINANT2; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SHADING_AVAILABLE_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_AVAILABLE_OIS_DATA_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key STATISTICS_INFO_MAX_FACE_COUNT; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key SYNC_MAX_LATENCY; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key TONEMAP_AVAILABLE_TONE_MAP_MODES; + field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key TONEMAP_MAX_CURVE_POINTS; + } + + public static final class CameraCharacteristics.Key { + ctor public CameraCharacteristics.Key(@NonNull String, @NonNull Class); + method @NonNull public String getName(); + } + + public abstract class CameraConstrainedHighSpeedCaptureSession extends android.hardware.camera2.CameraCaptureSession { + ctor public CameraConstrainedHighSpeedCaptureSession(); + method @NonNull public abstract java.util.List createHighSpeedRequestList(@NonNull android.hardware.camera2.CaptureRequest) throws android.hardware.camera2.CameraAccessException; + } + + public abstract class CameraDevice implements java.lang.AutoCloseable { + method public abstract void close(); + method @NonNull public abstract android.hardware.camera2.CaptureRequest.Builder createCaptureRequest(int) throws android.hardware.camera2.CameraAccessException; + method @NonNull public android.hardware.camera2.CaptureRequest.Builder createCaptureRequest(int, java.util.Set) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createCaptureSession(@NonNull java.util.List, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method public void createCaptureSession(android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createCaptureSessionByOutputConfigurations(java.util.List, android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createConstrainedHighSpeedCaptureSession(@NonNull java.util.List, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method public void createExtensionSession(@NonNull android.hardware.camera2.params.ExtensionSessionConfiguration) throws android.hardware.camera2.CameraAccessException; + method @NonNull public abstract android.hardware.camera2.CaptureRequest.Builder createReprocessCaptureRequest(@NonNull android.hardware.camera2.TotalCaptureResult) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createReprocessableCaptureSession(@NonNull android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @Deprecated public abstract void createReprocessableCaptureSessionByConfigurations(@NonNull android.hardware.camera2.params.InputConfiguration, @NonNull java.util.List, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method public int getCameraAudioRestriction() throws android.hardware.camera2.CameraAccessException; + method @NonNull public abstract String getId(); + method public boolean isSessionConfigurationSupported(@NonNull android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; + method public void setCameraAudioRestriction(int) throws android.hardware.camera2.CameraAccessException; + field public static final int AUDIO_RESTRICTION_NONE = 0; // 0x0 + field public static final int AUDIO_RESTRICTION_VIBRATION = 1; // 0x1 + field public static final int AUDIO_RESTRICTION_VIBRATION_SOUND = 3; // 0x3 + field public static final int TEMPLATE_MANUAL = 6; // 0x6 + field public static final int TEMPLATE_PREVIEW = 1; // 0x1 + field public static final int TEMPLATE_RECORD = 3; // 0x3 + field public static final int TEMPLATE_STILL_CAPTURE = 2; // 0x2 + field public static final int TEMPLATE_VIDEO_SNAPSHOT = 4; // 0x4 + field public static final int TEMPLATE_ZERO_SHUTTER_LAG = 5; // 0x5 + } + + @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public abstract static class CameraDevice.CameraDeviceSetup { + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public abstract android.hardware.camera2.CaptureRequest.Builder createCaptureRequest(int) throws android.hardware.camera2.CameraAccessException; + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public abstract String getId(); + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public abstract android.hardware.camera2.CameraCharacteristics getSessionCharacteristics(@NonNull android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public abstract boolean isSessionConfigurationSupported(@NonNull android.hardware.camera2.params.SessionConfiguration) throws android.hardware.camera2.CameraAccessException; + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @RequiresPermission(android.Manifest.permission.CAMERA) public abstract void openCamera(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraDevice.StateCallback) throws android.hardware.camera2.CameraAccessException; + } + + public abstract static class CameraDevice.StateCallback { + ctor public CameraDevice.StateCallback(); + method public void onClosed(@NonNull android.hardware.camera2.CameraDevice); + method public abstract void onDisconnected(@NonNull android.hardware.camera2.CameraDevice); + method public abstract void onError(@NonNull android.hardware.camera2.CameraDevice, int); + method public abstract void onOpened(@NonNull android.hardware.camera2.CameraDevice); + field public static final int ERROR_CAMERA_DEVICE = 4; // 0x4 + field public static final int ERROR_CAMERA_DISABLED = 3; // 0x3 + field public static final int ERROR_CAMERA_IN_USE = 1; // 0x1 + field public static final int ERROR_CAMERA_SERVICE = 5; // 0x5 + field public static final int ERROR_MAX_CAMERAS_IN_USE = 2; // 0x2 + } + + public final class CameraExtensionCharacteristics { + method @FlaggedApi("com.android.internal.camera.flags.camera_extensions_characteristics_get") public T get(int, @NonNull android.hardware.camera2.CameraCharacteristics.Key); + method @NonNull public java.util.Set getAvailableCaptureRequestKeys(int); + method @NonNull public java.util.Set getAvailableCaptureResultKeys(int); + method @Nullable public android.util.Range getEstimatedCaptureLatencyRangeMillis(int, @NonNull android.util.Size, int); + method @NonNull public java.util.List getExtensionSupportedSizes(int, @NonNull Class); + method @NonNull public java.util.List getExtensionSupportedSizes(int, int); + method @FlaggedApi("com.android.internal.camera.flags.camera_extensions_characteristics_get") @NonNull public java.util.Set getKeys(int); + method @NonNull public java.util.List getPostviewSupportedSizes(int, @NonNull android.util.Size, int); + method @NonNull public java.util.List getSupportedExtensions(); + method public boolean isCaptureProcessProgressAvailable(int); + method public boolean isPostviewAvailable(int); + field public static final int EXTENSION_AUTOMATIC = 0; // 0x0 + field @Deprecated public static final int EXTENSION_BEAUTY = 1; // 0x1 + field public static final int EXTENSION_BOKEH = 2; // 0x2 + field public static final int EXTENSION_FACE_RETOUCH = 1; // 0x1 + field public static final int EXTENSION_HDR = 3; // 0x3 + field public static final int EXTENSION_NIGHT = 4; // 0x4 + } + + public abstract class CameraExtensionSession implements java.lang.AutoCloseable { + method public int capture(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraExtensionSession.ExtensionCaptureCallback) throws android.hardware.camera2.CameraAccessException; + method public void close() throws android.hardware.camera2.CameraAccessException; + method @NonNull public android.hardware.camera2.CameraDevice getDevice(); + method @Nullable public android.hardware.camera2.CameraExtensionSession.StillCaptureLatency getRealtimeStillCaptureLatency() throws android.hardware.camera2.CameraAccessException; + method public int setRepeatingRequest(@NonNull android.hardware.camera2.CaptureRequest, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraExtensionSession.ExtensionCaptureCallback) throws android.hardware.camera2.CameraAccessException; + method public void stopRepeating() throws android.hardware.camera2.CameraAccessException; + } + + public abstract static class CameraExtensionSession.ExtensionCaptureCallback { + ctor public CameraExtensionSession.ExtensionCaptureCallback(); + method public void onCaptureFailed(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest); + method public void onCaptureFailed(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest, int); + method public void onCaptureProcessProgressed(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest, @IntRange(from=0, to=100) int); + method public void onCaptureProcessStarted(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest); + method public void onCaptureResultAvailable(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest, @NonNull android.hardware.camera2.TotalCaptureResult); + method public void onCaptureSequenceAborted(@NonNull android.hardware.camera2.CameraExtensionSession, int); + method public void onCaptureSequenceCompleted(@NonNull android.hardware.camera2.CameraExtensionSession, int); + method public void onCaptureStarted(@NonNull android.hardware.camera2.CameraExtensionSession, @NonNull android.hardware.camera2.CaptureRequest, long); + } + + public abstract static class CameraExtensionSession.StateCallback { + ctor public CameraExtensionSession.StateCallback(); + method public void onClosed(@NonNull android.hardware.camera2.CameraExtensionSession); + method public abstract void onConfigureFailed(@NonNull android.hardware.camera2.CameraExtensionSession); + method public abstract void onConfigured(@NonNull android.hardware.camera2.CameraExtensionSession); + } + + public static final class CameraExtensionSession.StillCaptureLatency { + ctor public CameraExtensionSession.StillCaptureLatency(long, long); + method public long getCaptureLatency(); + method public long getProcessingLatency(); + } + + public final class CameraManager { + method @NonNull public android.hardware.camera2.CameraCharacteristics getCameraCharacteristics(@NonNull String) throws android.hardware.camera2.CameraAccessException; + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public android.hardware.camera2.CameraDevice.CameraDeviceSetup getCameraDeviceSetup(@NonNull String) throws android.hardware.camera2.CameraAccessException; + method @NonNull public android.hardware.camera2.CameraExtensionCharacteristics getCameraExtensionCharacteristics(@NonNull String) throws android.hardware.camera2.CameraAccessException; + method @NonNull public String[] getCameraIdList() throws android.hardware.camera2.CameraAccessException; + method @NonNull public java.util.Set> getConcurrentCameraIds() throws android.hardware.camera2.CameraAccessException; + method public int getTorchStrengthLevel(@NonNull String) throws android.hardware.camera2.CameraAccessException; + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public boolean isCameraDeviceSetupSupported(@NonNull String) throws android.hardware.camera2.CameraAccessException; + method @RequiresPermission(android.Manifest.permission.CAMERA) public boolean isConcurrentSessionConfigurationSupported(@NonNull java.util.Map) throws android.hardware.camera2.CameraAccessException; + method @RequiresPermission(android.Manifest.permission.CAMERA) public void openCamera(@NonNull String, @NonNull android.hardware.camera2.CameraDevice.StateCallback, @Nullable android.os.Handler) throws android.hardware.camera2.CameraAccessException; + method @RequiresPermission(android.Manifest.permission.CAMERA) public void openCamera(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraDevice.StateCallback) throws android.hardware.camera2.CameraAccessException; + method public void registerAvailabilityCallback(@NonNull android.hardware.camera2.CameraManager.AvailabilityCallback, @Nullable android.os.Handler); + method public void registerAvailabilityCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraManager.AvailabilityCallback); + method public void registerTorchCallback(@NonNull android.hardware.camera2.CameraManager.TorchCallback, @Nullable android.os.Handler); + method public void registerTorchCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraManager.TorchCallback); + method public void setTorchMode(@NonNull String, boolean) throws android.hardware.camera2.CameraAccessException; + method public void turnOnTorchWithStrengthLevel(@NonNull String, int) throws android.hardware.camera2.CameraAccessException; + method public void unregisterAvailabilityCallback(@NonNull android.hardware.camera2.CameraManager.AvailabilityCallback); + method public void unregisterTorchCallback(@NonNull android.hardware.camera2.CameraManager.TorchCallback); + } + + public abstract static class CameraManager.AvailabilityCallback { + ctor public CameraManager.AvailabilityCallback(); + method public void onCameraAccessPrioritiesChanged(); + method public void onCameraAvailable(@NonNull String); + method public void onCameraUnavailable(@NonNull String); + method public void onPhysicalCameraAvailable(@NonNull String, @NonNull String); + method public void onPhysicalCameraUnavailable(@NonNull String, @NonNull String); + } + + public abstract static class CameraManager.TorchCallback { + ctor public CameraManager.TorchCallback(); + method public void onTorchModeChanged(@NonNull String, boolean); + method public void onTorchModeUnavailable(@NonNull String); + method public void onTorchStrengthLevelChanged(@NonNull String, int); + } + + public abstract class CameraMetadata { + method @NonNull public java.util.List getKeys(); + field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_FRONT = 1; // 0x1 + field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_LEFT = 3; // 0x3 + field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_OTHER = 0; // 0x0 + field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_REAR = 2; // 0x2 + field public static final int AUTOMOTIVE_LENS_FACING_EXTERIOR_RIGHT = 4; // 0x4 + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_OTHER = 5; // 0x5 + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_1_CENTER = 7; // 0x7 + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_1_LEFT = 6; // 0x6 + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_1_RIGHT = 8; // 0x8 + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_2_CENTER = 10; // 0xa + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_2_LEFT = 9; // 0x9 + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_2_RIGHT = 11; // 0xb + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_3_CENTER = 13; // 0xd + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_3_LEFT = 12; // 0xc + field public static final int AUTOMOTIVE_LENS_FACING_INTERIOR_SEAT_ROW_3_RIGHT = 14; // 0xe + field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_FRONT = 2; // 0x2 + field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_LEFT = 4; // 0x4 + field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_OTHER = 1; // 0x1 + field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_REAR = 3; // 0x3 + field public static final int AUTOMOTIVE_LOCATION_EXTERIOR_RIGHT = 5; // 0x5 + field public static final int AUTOMOTIVE_LOCATION_EXTRA_FRONT = 7; // 0x7 + field public static final int AUTOMOTIVE_LOCATION_EXTRA_LEFT = 9; // 0x9 + field public static final int AUTOMOTIVE_LOCATION_EXTRA_OTHER = 6; // 0x6 + field public static final int AUTOMOTIVE_LOCATION_EXTRA_REAR = 8; // 0x8 + field public static final int AUTOMOTIVE_LOCATION_EXTRA_RIGHT = 10; // 0xa + field public static final int AUTOMOTIVE_LOCATION_INTERIOR = 0; // 0x0 + field public static final int COLOR_CORRECTION_ABERRATION_MODE_FAST = 1; // 0x1 + field public static final int COLOR_CORRECTION_ABERRATION_MODE_HIGH_QUALITY = 2; // 0x2 + field public static final int COLOR_CORRECTION_ABERRATION_MODE_OFF = 0; // 0x0 + field @FlaggedApi("com.android.internal.camera.flags.color_temperature") public static final int COLOR_CORRECTION_MODE_CCT = 3; // 0x3 + field public static final int COLOR_CORRECTION_MODE_FAST = 1; // 0x1 + field public static final int COLOR_CORRECTION_MODE_HIGH_QUALITY = 2; // 0x2 + field public static final int COLOR_CORRECTION_MODE_TRANSFORM_MATRIX = 0; // 0x0 + field public static final int CONTROL_AE_ANTIBANDING_MODE_50HZ = 1; // 0x1 + field public static final int CONTROL_AE_ANTIBANDING_MODE_60HZ = 2; // 0x2 + field public static final int CONTROL_AE_ANTIBANDING_MODE_AUTO = 3; // 0x3 + field public static final int CONTROL_AE_ANTIBANDING_MODE_OFF = 0; // 0x0 + field public static final int CONTROL_AE_MODE_OFF = 0; // 0x0 + field public static final int CONTROL_AE_MODE_ON = 1; // 0x1 + field public static final int CONTROL_AE_MODE_ON_ALWAYS_FLASH = 3; // 0x3 + field public static final int CONTROL_AE_MODE_ON_AUTO_FLASH = 2; // 0x2 + field public static final int CONTROL_AE_MODE_ON_AUTO_FLASH_REDEYE = 4; // 0x4 + field public static final int CONTROL_AE_MODE_ON_EXTERNAL_FLASH = 5; // 0x5 + field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") public static final int CONTROL_AE_MODE_ON_LOW_LIGHT_BOOST_BRIGHTNESS_PRIORITY = 6; // 0x6 + field public static final int CONTROL_AE_PRECAPTURE_TRIGGER_CANCEL = 2; // 0x2 + field public static final int CONTROL_AE_PRECAPTURE_TRIGGER_IDLE = 0; // 0x0 + field public static final int CONTROL_AE_PRECAPTURE_TRIGGER_START = 1; // 0x1 + field @FlaggedApi("com.android.internal.camera.flags.ae_priority") public static final int CONTROL_AE_PRIORITY_MODE_OFF = 0; // 0x0 + field @FlaggedApi("com.android.internal.camera.flags.ae_priority") public static final int CONTROL_AE_PRIORITY_MODE_SENSOR_EXPOSURE_TIME_PRIORITY = 2; // 0x2 + field @FlaggedApi("com.android.internal.camera.flags.ae_priority") public static final int CONTROL_AE_PRIORITY_MODE_SENSOR_SENSITIVITY_PRIORITY = 1; // 0x1 + field public static final int CONTROL_AE_STATE_CONVERGED = 2; // 0x2 + field public static final int CONTROL_AE_STATE_FLASH_REQUIRED = 4; // 0x4 + field public static final int CONTROL_AE_STATE_INACTIVE = 0; // 0x0 + field public static final int CONTROL_AE_STATE_LOCKED = 3; // 0x3 + field public static final int CONTROL_AE_STATE_PRECAPTURE = 5; // 0x5 + field public static final int CONTROL_AE_STATE_SEARCHING = 1; // 0x1 + field public static final int CONTROL_AF_MODE_AUTO = 1; // 0x1 + field public static final int CONTROL_AF_MODE_CONTINUOUS_PICTURE = 4; // 0x4 + field public static final int CONTROL_AF_MODE_CONTINUOUS_VIDEO = 3; // 0x3 + field public static final int CONTROL_AF_MODE_EDOF = 5; // 0x5 + field public static final int CONTROL_AF_MODE_MACRO = 2; // 0x2 + field public static final int CONTROL_AF_MODE_OFF = 0; // 0x0 + field public static final int CONTROL_AF_SCENE_CHANGE_DETECTED = 1; // 0x1 + field public static final int CONTROL_AF_SCENE_CHANGE_NOT_DETECTED = 0; // 0x0 + field public static final int CONTROL_AF_STATE_ACTIVE_SCAN = 3; // 0x3 + field public static final int CONTROL_AF_STATE_FOCUSED_LOCKED = 4; // 0x4 + field public static final int CONTROL_AF_STATE_INACTIVE = 0; // 0x0 + field public static final int CONTROL_AF_STATE_NOT_FOCUSED_LOCKED = 5; // 0x5 + field public static final int CONTROL_AF_STATE_PASSIVE_FOCUSED = 2; // 0x2 + field public static final int CONTROL_AF_STATE_PASSIVE_SCAN = 1; // 0x1 + field public static final int CONTROL_AF_STATE_PASSIVE_UNFOCUSED = 6; // 0x6 + field public static final int CONTROL_AF_TRIGGER_CANCEL = 2; // 0x2 + field public static final int CONTROL_AF_TRIGGER_IDLE = 0; // 0x0 + field public static final int CONTROL_AF_TRIGGER_START = 1; // 0x1 + field public static final int CONTROL_AUTOFRAMING_OFF = 0; // 0x0 + field public static final int CONTROL_AUTOFRAMING_ON = 1; // 0x1 + field public static final int CONTROL_AUTOFRAMING_STATE_CONVERGED = 2; // 0x2 + field public static final int CONTROL_AUTOFRAMING_STATE_FRAMING = 1; // 0x1 + field public static final int CONTROL_AUTOFRAMING_STATE_INACTIVE = 0; // 0x0 + field public static final int CONTROL_AWB_MODE_AUTO = 1; // 0x1 + field public static final int CONTROL_AWB_MODE_CLOUDY_DAYLIGHT = 6; // 0x6 + field public static final int CONTROL_AWB_MODE_DAYLIGHT = 5; // 0x5 + field public static final int CONTROL_AWB_MODE_FLUORESCENT = 3; // 0x3 + field public static final int CONTROL_AWB_MODE_INCANDESCENT = 2; // 0x2 + field public static final int CONTROL_AWB_MODE_OFF = 0; // 0x0 + field public static final int CONTROL_AWB_MODE_SHADE = 8; // 0x8 + field public static final int CONTROL_AWB_MODE_TWILIGHT = 7; // 0x7 + field public static final int CONTROL_AWB_MODE_WARM_FLUORESCENT = 4; // 0x4 + field public static final int CONTROL_AWB_STATE_CONVERGED = 2; // 0x2 + field public static final int CONTROL_AWB_STATE_INACTIVE = 0; // 0x0 + field public static final int CONTROL_AWB_STATE_LOCKED = 3; // 0x3 + field public static final int CONTROL_AWB_STATE_SEARCHING = 1; // 0x1 + field public static final int CONTROL_CAPTURE_INTENT_CUSTOM = 0; // 0x0 + field public static final int CONTROL_CAPTURE_INTENT_MANUAL = 6; // 0x6 + field public static final int CONTROL_CAPTURE_INTENT_MOTION_TRACKING = 7; // 0x7 + field public static final int CONTROL_CAPTURE_INTENT_PREVIEW = 1; // 0x1 + field public static final int CONTROL_CAPTURE_INTENT_STILL_CAPTURE = 2; // 0x2 + field public static final int CONTROL_CAPTURE_INTENT_VIDEO_RECORD = 3; // 0x3 + field public static final int CONTROL_CAPTURE_INTENT_VIDEO_SNAPSHOT = 4; // 0x4 + field public static final int CONTROL_CAPTURE_INTENT_ZERO_SHUTTER_LAG = 5; // 0x5 + field public static final int CONTROL_EFFECT_MODE_AQUA = 8; // 0x8 + field public static final int CONTROL_EFFECT_MODE_BLACKBOARD = 7; // 0x7 + field public static final int CONTROL_EFFECT_MODE_MONO = 1; // 0x1 + field public static final int CONTROL_EFFECT_MODE_NEGATIVE = 2; // 0x2 + field public static final int CONTROL_EFFECT_MODE_OFF = 0; // 0x0 + field public static final int CONTROL_EFFECT_MODE_POSTERIZE = 5; // 0x5 + field public static final int CONTROL_EFFECT_MODE_SEPIA = 4; // 0x4 + field public static final int CONTROL_EFFECT_MODE_SOLARIZE = 3; // 0x3 + field public static final int CONTROL_EFFECT_MODE_WHITEBOARD = 6; // 0x6 + field public static final int CONTROL_EXTENDED_SCENE_MODE_BOKEH_CONTINUOUS = 2; // 0x2 + field public static final int CONTROL_EXTENDED_SCENE_MODE_BOKEH_STILL_CAPTURE = 1; // 0x1 + field public static final int CONTROL_EXTENDED_SCENE_MODE_DISABLED = 0; // 0x0 + field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") public static final int CONTROL_LOW_LIGHT_BOOST_STATE_ACTIVE = 1; // 0x1 + field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") public static final int CONTROL_LOW_LIGHT_BOOST_STATE_INACTIVE = 0; // 0x0 + field public static final int CONTROL_MODE_AUTO = 1; // 0x1 + field public static final int CONTROL_MODE_OFF = 0; // 0x0 + field public static final int CONTROL_MODE_OFF_KEEP_STATE = 3; // 0x3 + field public static final int CONTROL_MODE_USE_EXTENDED_SCENE_MODE = 4; // 0x4 + field public static final int CONTROL_MODE_USE_SCENE_MODE = 2; // 0x2 + field public static final int CONTROL_SCENE_MODE_ACTION = 2; // 0x2 + field public static final int CONTROL_SCENE_MODE_BARCODE = 16; // 0x10 + field public static final int CONTROL_SCENE_MODE_BEACH = 8; // 0x8 + field public static final int CONTROL_SCENE_MODE_CANDLELIGHT = 15; // 0xf + field public static final int CONTROL_SCENE_MODE_DISABLED = 0; // 0x0 + field public static final int CONTROL_SCENE_MODE_FACE_PRIORITY = 1; // 0x1 + field public static final int CONTROL_SCENE_MODE_FIREWORKS = 12; // 0xc + field public static final int CONTROL_SCENE_MODE_HDR = 18; // 0x12 + field @Deprecated public static final int CONTROL_SCENE_MODE_HIGH_SPEED_VIDEO = 17; // 0x11 + field public static final int CONTROL_SCENE_MODE_LANDSCAPE = 4; // 0x4 + field public static final int CONTROL_SCENE_MODE_NIGHT = 5; // 0x5 + field public static final int CONTROL_SCENE_MODE_NIGHT_PORTRAIT = 6; // 0x6 + field public static final int CONTROL_SCENE_MODE_PARTY = 14; // 0xe + field public static final int CONTROL_SCENE_MODE_PORTRAIT = 3; // 0x3 + field public static final int CONTROL_SCENE_MODE_SNOW = 9; // 0x9 + field public static final int CONTROL_SCENE_MODE_SPORTS = 13; // 0xd + field public static final int CONTROL_SCENE_MODE_STEADYPHOTO = 11; // 0xb + field public static final int CONTROL_SCENE_MODE_SUNSET = 10; // 0xa + field public static final int CONTROL_SCENE_MODE_THEATRE = 7; // 0x7 + field public static final int CONTROL_SETTINGS_OVERRIDE_OFF = 0; // 0x0 + field public static final int CONTROL_SETTINGS_OVERRIDE_ZOOM = 1; // 0x1 + field public static final int CONTROL_VIDEO_STABILIZATION_MODE_OFF = 0; // 0x0 + field public static final int CONTROL_VIDEO_STABILIZATION_MODE_ON = 1; // 0x1 + field public static final int CONTROL_VIDEO_STABILIZATION_MODE_PREVIEW_STABILIZATION = 2; // 0x2 + field @FlaggedApi("com.android.internal.camera.flags.zoom_method") public static final int CONTROL_ZOOM_METHOD_AUTO = 0; // 0x0 + field @FlaggedApi("com.android.internal.camera.flags.zoom_method") public static final int CONTROL_ZOOM_METHOD_ZOOM_RATIO = 1; // 0x1 + field public static final int DISTORTION_CORRECTION_MODE_FAST = 1; // 0x1 + field public static final int DISTORTION_CORRECTION_MODE_HIGH_QUALITY = 2; // 0x2 + field public static final int DISTORTION_CORRECTION_MODE_OFF = 0; // 0x0 + field public static final int EDGE_MODE_FAST = 1; // 0x1 + field public static final int EDGE_MODE_HIGH_QUALITY = 2; // 0x2 + field public static final int EDGE_MODE_OFF = 0; // 0x0 + field public static final int EDGE_MODE_ZERO_SHUTTER_LAG = 3; // 0x3 + field @FlaggedApi("com.android.internal.camera.flags.night_mode_indicator") public static final int EXTENSION_NIGHT_MODE_INDICATOR_OFF = 1; // 0x1 + field @FlaggedApi("com.android.internal.camera.flags.night_mode_indicator") public static final int EXTENSION_NIGHT_MODE_INDICATOR_ON = 2; // 0x2 + field @FlaggedApi("com.android.internal.camera.flags.night_mode_indicator") public static final int EXTENSION_NIGHT_MODE_INDICATOR_UNKNOWN = 0; // 0x0 + field public static final int FLASH_MODE_OFF = 0; // 0x0 + field public static final int FLASH_MODE_SINGLE = 1; // 0x1 + field public static final int FLASH_MODE_TORCH = 2; // 0x2 + field public static final int FLASH_STATE_CHARGING = 1; // 0x1 + field public static final int FLASH_STATE_FIRED = 3; // 0x3 + field public static final int FLASH_STATE_PARTIAL = 4; // 0x4 + field public static final int FLASH_STATE_READY = 2; // 0x2 + field public static final int FLASH_STATE_UNAVAILABLE = 0; // 0x0 + field public static final int HOT_PIXEL_MODE_FAST = 1; // 0x1 + field public static final int HOT_PIXEL_MODE_HIGH_QUALITY = 2; // 0x2 + field public static final int HOT_PIXEL_MODE_OFF = 0; // 0x0 + field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_3 = 3; // 0x3 + field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_EXTERNAL = 4; // 0x4 + field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_FULL = 1; // 0x1 + field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY = 2; // 0x2 + field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED = 0; // 0x0 + field public static final int LENS_FACING_BACK = 1; // 0x1 + field public static final int LENS_FACING_EXTERNAL = 2; // 0x2 + field public static final int LENS_FACING_FRONT = 0; // 0x0 + field public static final int LENS_INFO_FOCUS_DISTANCE_CALIBRATION_APPROXIMATE = 1; // 0x1 + field public static final int LENS_INFO_FOCUS_DISTANCE_CALIBRATION_CALIBRATED = 2; // 0x2 + field public static final int LENS_INFO_FOCUS_DISTANCE_CALIBRATION_UNCALIBRATED = 0; // 0x0 + field public static final int LENS_OPTICAL_STABILIZATION_MODE_OFF = 0; // 0x0 + field public static final int LENS_OPTICAL_STABILIZATION_MODE_ON = 1; // 0x1 + field public static final int LENS_POSE_REFERENCE_AUTOMOTIVE = 3; // 0x3 + field public static final int LENS_POSE_REFERENCE_GYROSCOPE = 1; // 0x1 + field public static final int LENS_POSE_REFERENCE_PRIMARY_CAMERA = 0; // 0x0 + field public static final int LENS_POSE_REFERENCE_UNDEFINED = 2; // 0x2 + field public static final int LENS_STATE_MOVING = 1; // 0x1 + field public static final int LENS_STATE_STATIONARY = 0; // 0x0 + field public static final int LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_APPROXIMATE = 0; // 0x0 + field public static final int LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_CALIBRATED = 1; // 0x1 + field public static final int NOISE_REDUCTION_MODE_FAST = 1; // 0x1 + field public static final int NOISE_REDUCTION_MODE_HIGH_QUALITY = 2; // 0x2 + field public static final int NOISE_REDUCTION_MODE_MINIMAL = 3; // 0x3 + field public static final int NOISE_REDUCTION_MODE_OFF = 0; // 0x0 + field public static final int NOISE_REDUCTION_MODE_ZERO_SHUTTER_LAG = 4; // 0x4 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE = 0; // 0x0 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE = 6; // 0x6 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_COLOR_SPACE_PROFILES = 20; // 0x14 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO = 9; // 0x9 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_DEPTH_OUTPUT = 8; // 0x8 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT = 18; // 0x12 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA = 11; // 0xb + field public static final int REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING = 2; // 0x2 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR = 1; // 0x1 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_MONOCHROME = 12; // 0xc + field public static final int REQUEST_AVAILABLE_CAPABILITIES_MOTION_TRACKING = 10; // 0xa + field public static final int REQUEST_AVAILABLE_CAPABILITIES_OFFLINE_PROCESSING = 15; // 0xf + field public static final int REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING = 4; // 0x4 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_RAW = 3; // 0x3 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS = 5; // 0x5 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_REMOSAIC_REPROCESSING = 17; // 0x11 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_SECURE_IMAGE_DATA = 13; // 0xd + field public static final int REQUEST_AVAILABLE_CAPABILITIES_STREAM_USE_CASE = 19; // 0x13 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA = 14; // 0xe + field public static final int REQUEST_AVAILABLE_CAPABILITIES_ULTRA_HIGH_RESOLUTION_SENSOR = 16; // 0x10 + field public static final int REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING = 7; // 0x7 + field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_CROPPED_RAW = 6; // 0x6 + field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_DEFAULT = 0; // 0x0 + field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_PREVIEW = 1; // 0x1 + field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_PREVIEW_VIDEO_STILL = 4; // 0x4 + field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_STILL_CAPTURE = 2; // 0x2 + field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_VIDEO_CALL = 5; // 0x5 + field public static final int SCALER_AVAILABLE_STREAM_USE_CASES_VIDEO_RECORD = 3; // 0x3 + field public static final int SCALER_CROPPING_TYPE_CENTER_ONLY = 0; // 0x0 + field public static final int SCALER_CROPPING_TYPE_FREEFORM = 1; // 0x1 + field public static final int SCALER_ROTATE_AND_CROP_180 = 2; // 0x2 + field public static final int SCALER_ROTATE_AND_CROP_270 = 3; // 0x3 + field public static final int SCALER_ROTATE_AND_CROP_90 = 1; // 0x1 + field public static final int SCALER_ROTATE_AND_CROP_AUTO = 4; // 0x4 + field public static final int SCALER_ROTATE_AND_CROP_NONE = 0; // 0x0 + field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_BGGR = 3; // 0x3 + field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GBRG = 2; // 0x2 + field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GRBG = 1; // 0x1 + field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO = 5; // 0x5 + field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR = 6; // 0x6 + field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGB = 4; // 0x4 + field public static final int SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGGB = 0; // 0x0 + field public static final int SENSOR_INFO_TIMESTAMP_SOURCE_REALTIME = 1; // 0x1 + field public static final int SENSOR_INFO_TIMESTAMP_SOURCE_UNKNOWN = 0; // 0x0 + field public static final int SENSOR_PIXEL_MODE_DEFAULT = 0; // 0x0 + field public static final int SENSOR_PIXEL_MODE_MAXIMUM_RESOLUTION = 1; // 0x1 + field public static final int SENSOR_READOUT_TIMESTAMP_HARDWARE = 1; // 0x1 + field public static final int SENSOR_READOUT_TIMESTAMP_NOT_SUPPORTED = 0; // 0x0 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_CLOUDY_WEATHER = 10; // 0xa + field public static final int SENSOR_REFERENCE_ILLUMINANT1_COOL_WHITE_FLUORESCENT = 14; // 0xe + field public static final int SENSOR_REFERENCE_ILLUMINANT1_D50 = 23; // 0x17 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_D55 = 20; // 0x14 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_D65 = 21; // 0x15 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_D75 = 22; // 0x16 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT = 1; // 0x1 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT_FLUORESCENT = 12; // 0xc + field public static final int SENSOR_REFERENCE_ILLUMINANT1_DAY_WHITE_FLUORESCENT = 13; // 0xd + field public static final int SENSOR_REFERENCE_ILLUMINANT1_FINE_WEATHER = 9; // 0x9 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_FLASH = 4; // 0x4 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_FLUORESCENT = 2; // 0x2 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_ISO_STUDIO_TUNGSTEN = 24; // 0x18 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_SHADE = 11; // 0xb + field public static final int SENSOR_REFERENCE_ILLUMINANT1_STANDARD_A = 17; // 0x11 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_STANDARD_B = 18; // 0x12 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_STANDARD_C = 19; // 0x13 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_TUNGSTEN = 3; // 0x3 + field public static final int SENSOR_REFERENCE_ILLUMINANT1_WHITE_FLUORESCENT = 15; // 0xf + field public static final int SENSOR_TEST_PATTERN_MODE_COLOR_BARS = 2; // 0x2 + field public static final int SENSOR_TEST_PATTERN_MODE_COLOR_BARS_FADE_TO_GRAY = 3; // 0x3 + field public static final int SENSOR_TEST_PATTERN_MODE_CUSTOM1 = 256; // 0x100 + field public static final int SENSOR_TEST_PATTERN_MODE_OFF = 0; // 0x0 + field public static final int SENSOR_TEST_PATTERN_MODE_PN9 = 4; // 0x4 + field public static final int SENSOR_TEST_PATTERN_MODE_SOLID_COLOR = 1; // 0x1 + field public static final int SHADING_MODE_FAST = 1; // 0x1 + field public static final int SHADING_MODE_HIGH_QUALITY = 2; // 0x2 + field public static final int SHADING_MODE_OFF = 0; // 0x0 + field public static final int STATISTICS_FACE_DETECT_MODE_FULL = 2; // 0x2 + field public static final int STATISTICS_FACE_DETECT_MODE_OFF = 0; // 0x0 + field public static final int STATISTICS_FACE_DETECT_MODE_SIMPLE = 1; // 0x1 + field public static final int STATISTICS_LENS_SHADING_MAP_MODE_OFF = 0; // 0x0 + field public static final int STATISTICS_LENS_SHADING_MAP_MODE_ON = 1; // 0x1 + field public static final int STATISTICS_OIS_DATA_MODE_OFF = 0; // 0x0 + field public static final int STATISTICS_OIS_DATA_MODE_ON = 1; // 0x1 + field public static final int STATISTICS_SCENE_FLICKER_50HZ = 1; // 0x1 + field public static final int STATISTICS_SCENE_FLICKER_60HZ = 2; // 0x2 + field public static final int STATISTICS_SCENE_FLICKER_NONE = 0; // 0x0 + field public static final int SYNC_MAX_LATENCY_PER_FRAME_CONTROL = 0; // 0x0 + field public static final int SYNC_MAX_LATENCY_UNKNOWN = -1; // 0xffffffff + field public static final int TONEMAP_MODE_CONTRAST_CURVE = 0; // 0x0 + field public static final int TONEMAP_MODE_FAST = 1; // 0x1 + field public static final int TONEMAP_MODE_GAMMA_VALUE = 3; // 0x3 + field public static final int TONEMAP_MODE_HIGH_QUALITY = 2; // 0x2 + field public static final int TONEMAP_MODE_PRESET_CURVE = 4; // 0x4 + field public static final int TONEMAP_PRESET_CURVE_REC709 = 1; // 0x1 + field public static final int TONEMAP_PRESET_CURVE_SRGB = 0; // 0x0 + } + + public abstract class CameraOfflineSession extends android.hardware.camera2.CameraCaptureSession { + ctor public CameraOfflineSession(); + } + + public abstract static class CameraOfflineSession.CameraOfflineSessionCallback { + ctor public CameraOfflineSession.CameraOfflineSessionCallback(); + method public abstract void onClosed(@NonNull android.hardware.camera2.CameraOfflineSession); + method public abstract void onError(@NonNull android.hardware.camera2.CameraOfflineSession, int); + method public abstract void onIdle(@NonNull android.hardware.camera2.CameraOfflineSession); + method public abstract void onReady(@NonNull android.hardware.camera2.CameraOfflineSession); + method public abstract void onSwitchFailed(@NonNull android.hardware.camera2.CameraOfflineSession); + field public static final int STATUS_INTERNAL_ERROR = 0; // 0x0 + } + + public class CaptureFailure { + method public long getFrameNumber(); + method @Nullable public String getPhysicalCameraId(); + method public int getReason(); + method @NonNull public android.hardware.camera2.CaptureRequest getRequest(); + method public int getSequenceId(); + method public boolean wasImageCaptured(); + field public static final int REASON_ERROR = 0; // 0x0 + field public static final int REASON_FLUSHED = 1; // 0x1 + } + + public final class CaptureRequest extends android.hardware.camera2.CameraMetadata> implements android.os.Parcelable { + method public int describeContents(); + method protected void finalize(); + method @Nullable public T get(android.hardware.camera2.CaptureRequest.Key); + method @NonNull public java.util.List> getKeys(); + method @Nullable public Object getTag(); + method public boolean isReprocess(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key BLACK_LEVEL_LOCK; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_ABERRATION_MODE; + field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_COLOR_TEMPERATURE; + field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_COLOR_TINT; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_GAINS; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_TRANSFORM; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_ANTIBANDING_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_EXPOSURE_COMPENSATION; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_LOCK; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_PRECAPTURE_TRIGGER; + field @FlaggedApi("com.android.internal.camera.flags.ae_priority") @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_PRIORITY_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AE_REGIONS; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key> CONTROL_AE_TARGET_FPS_RANGE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AF_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AF_REGIONS; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AF_TRIGGER; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AUTOFRAMING; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AWB_LOCK; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AWB_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_AWB_REGIONS; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_CAPTURE_INTENT; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_EFFECT_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_ENABLE_ZSL; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_EXTENDED_SCENE_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_POST_RAW_SENSITIVITY_BOOST; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_SCENE_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_SETTINGS_OVERRIDE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_VIDEO_STABILIZATION_MODE; + field @FlaggedApi("com.android.internal.camera.flags.zoom_method") @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_ZOOM_METHOD; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key CONTROL_ZOOM_RATIO; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key DISTORTION_CORRECTION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key EDGE_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key EXTENSION_STRENGTH; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key FLASH_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key FLASH_STRENGTH_LEVEL; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key HOT_PIXEL_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_GPS_LOCATION; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_ORIENTATION; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_QUALITY; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_THUMBNAIL_QUALITY; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key JPEG_THUMBNAIL_SIZE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_APERTURE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_FILTER_DENSITY; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_FOCAL_LENGTH; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_FOCUS_DISTANCE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key LENS_OPTICAL_STABILIZATION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key NOISE_REDUCTION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key REPROCESS_EFFECTIVE_EXPOSURE_FACTOR; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SCALER_CROP_REGION; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SCALER_ROTATE_AND_CROP; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_EXPOSURE_TIME; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_FRAME_DURATION; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_PIXEL_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_SENSITIVITY; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_TEST_PATTERN_DATA; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SENSOR_TEST_PATTERN_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key SHADING_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key STATISTICS_FACE_DETECT_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key STATISTICS_HOT_PIXEL_MAP_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key STATISTICS_LENS_SHADING_MAP_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key STATISTICS_OIS_DATA_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key TONEMAP_CURVE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key TONEMAP_GAMMA; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key TONEMAP_MODE; + field @NonNull public static final android.hardware.camera2.CaptureRequest.Key TONEMAP_PRESET_CURVE; + } + + public static final class CaptureRequest.Builder { + method public void addTarget(@NonNull android.view.Surface); + method @NonNull public android.hardware.camera2.CaptureRequest build(); + method @Nullable public T get(android.hardware.camera2.CaptureRequest.Key); + method @Nullable public T getPhysicalCameraKey(android.hardware.camera2.CaptureRequest.Key, @NonNull String); + method public void removeTarget(@NonNull android.view.Surface); + method public void set(@NonNull android.hardware.camera2.CaptureRequest.Key, T); + method public android.hardware.camera2.CaptureRequest.Builder setPhysicalCameraKey(@NonNull android.hardware.camera2.CaptureRequest.Key, T, @NonNull String); + method public void setTag(@Nullable Object); + } + + public static final class CaptureRequest.Key { + ctor public CaptureRequest.Key(@NonNull String, @NonNull Class); + method @NonNull public String getName(); + } + + public class CaptureResult extends android.hardware.camera2.CameraMetadata> { + method @Nullable public T get(android.hardware.camera2.CaptureResult.Key); + method @NonNull public String getCameraId(); + method public long getFrameNumber(); + method @NonNull public java.util.List> getKeys(); + method @NonNull public android.hardware.camera2.CaptureRequest getRequest(); + method public int getSequenceId(); + field @NonNull public static final android.hardware.camera2.CaptureResult.Key BLACK_LEVEL_LOCK; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_ABERRATION_MODE; + field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_COLOR_TEMPERATURE; + field @FlaggedApi("com.android.internal.camera.flags.color_temperature") @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_COLOR_TINT; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_GAINS; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_TRANSFORM; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_ANTIBANDING_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_EXPOSURE_COMPENSATION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_LOCK; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_PRECAPTURE_TRIGGER; + field @FlaggedApi("com.android.internal.camera.flags.ae_priority") @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_PRIORITY_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_REGIONS; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AE_STATE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key> CONTROL_AE_TARGET_FPS_RANGE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_REGIONS; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_SCENE_CHANGE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_STATE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AF_TRIGGER; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AUTOFRAMING; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AUTOFRAMING_STATE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AWB_LOCK; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AWB_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AWB_REGIONS; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_AWB_STATE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_CAPTURE_INTENT; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_EFFECT_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_ENABLE_ZSL; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_EXTENDED_SCENE_MODE; + field @FlaggedApi("com.android.internal.camera.flags.camera_ae_mode_low_light_boost") @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_LOW_LIGHT_BOOST_STATE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_POST_RAW_SENSITIVITY_BOOST; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_SCENE_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_SETTINGS_OVERRIDE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_VIDEO_STABILIZATION_MODE; + field @FlaggedApi("com.android.internal.camera.flags.zoom_method") @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_ZOOM_METHOD; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key CONTROL_ZOOM_RATIO; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key DISTORTION_CORRECTION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key EDGE_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key EXTENSION_CURRENT_TYPE; + field @FlaggedApi("com.android.internal.camera.flags.night_mode_indicator") @NonNull public static final android.hardware.camera2.CaptureResult.Key EXTENSION_NIGHT_MODE_INDICATOR; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key EXTENSION_STRENGTH; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key FLASH_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key FLASH_STATE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key FLASH_STRENGTH_LEVEL; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key HOT_PIXEL_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_GPS_LOCATION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_ORIENTATION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_QUALITY; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_THUMBNAIL_QUALITY; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key JPEG_THUMBNAIL_SIZE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_APERTURE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_DISTORTION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_FILTER_DENSITY; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_FOCAL_LENGTH; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_FOCUS_DISTANCE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key> LENS_FOCUS_RANGE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_INTRINSIC_CALIBRATION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_OPTICAL_STABILIZATION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_POSE_ROTATION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_POSE_TRANSLATION; + field @Deprecated @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_RADIAL_DISTORTION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LENS_STATE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_ID; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_SENSOR_CROP_REGION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key NOISE_REDUCTION_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key REPROCESS_EFFECTIVE_EXPOSURE_FACTOR; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key REQUEST_PIPELINE_DEPTH; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SCALER_CROP_REGION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SCALER_RAW_CROP_REGION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SCALER_ROTATE_AND_CROP; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_DYNAMIC_BLACK_LEVEL; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_DYNAMIC_WHITE_LEVEL; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_EXPOSURE_TIME; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_FRAME_DURATION; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_GREEN_SPLIT; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_NEUTRAL_COLOR_POINT; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key[]> SENSOR_NOISE_PROFILE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_PIXEL_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_RAW_BINNING_FACTOR_USED; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_ROLLING_SHUTTER_SKEW; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_SENSITIVITY; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_TEST_PATTERN_DATA; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_TEST_PATTERN_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SENSOR_TIMESTAMP; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key SHADING_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_FACES; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_FACE_DETECT_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_HOT_PIXEL_MAP; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_HOT_PIXEL_MAP_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_LENS_INTRINSICS_SAMPLES; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_LENS_SHADING_CORRECTION_MAP; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_LENS_SHADING_MAP_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_OIS_DATA_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_OIS_SAMPLES; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key STATISTICS_SCENE_FLICKER; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key TONEMAP_CURVE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key TONEMAP_GAMMA; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key TONEMAP_MODE; + field @NonNull public static final android.hardware.camera2.CaptureResult.Key TONEMAP_PRESET_CURVE; + } + + public static final class CaptureResult.Key { + ctor public CaptureResult.Key(@NonNull String, @NonNull Class); + method @NonNull public String getName(); + } + + public final class DngCreator implements java.lang.AutoCloseable { + ctor public DngCreator(@NonNull android.hardware.camera2.CameraCharacteristics, @NonNull android.hardware.camera2.CaptureResult); + method public void close(); + method @NonNull public android.hardware.camera2.DngCreator setDescription(@NonNull String); + method @NonNull public android.hardware.camera2.DngCreator setLocation(@NonNull android.location.Location); + method @NonNull public android.hardware.camera2.DngCreator setOrientation(int); + method @NonNull public android.hardware.camera2.DngCreator setThumbnail(@NonNull android.graphics.Bitmap); + method @NonNull public android.hardware.camera2.DngCreator setThumbnail(@NonNull android.media.Image); + method public void writeByteBuffer(@NonNull java.io.OutputStream, @NonNull android.util.Size, @NonNull java.nio.ByteBuffer, @IntRange(from=0) long) throws java.io.IOException; + method public void writeImage(@NonNull java.io.OutputStream, @NonNull android.media.Image) throws java.io.IOException; + method public void writeInputStream(@NonNull java.io.OutputStream, @NonNull android.util.Size, @NonNull java.io.InputStream, @IntRange(from=0) long) throws java.io.IOException; + field public static final int MAX_THUMBNAIL_DIMENSION = 256; // 0x100 + } + + public class MultiResolutionImageReader implements java.lang.AutoCloseable { + ctor public MultiResolutionImageReader(@NonNull java.util.Collection, int, @IntRange(from=1) int); + ctor @FlaggedApi("com.android.internal.camera.flags.multiresolution_imagereader_usage_public") public MultiResolutionImageReader(@NonNull java.util.Collection, int, @IntRange(from=1) int, long); + method public void close(); + method protected void finalize(); + method public void flush(); + method @NonNull public android.hardware.camera2.params.MultiResolutionStreamInfo getStreamInfoForImageReader(@NonNull android.media.ImageReader); + method @NonNull public android.view.Surface getSurface(); + method public void setOnImageAvailableListener(@Nullable android.media.ImageReader.OnImageAvailableListener, @Nullable java.util.concurrent.Executor); + } + + public final class TotalCaptureResult extends android.hardware.camera2.CaptureResult { + method @NonNull public java.util.List getPartialResults(); + method @Deprecated public java.util.Map getPhysicalCameraResults(); + method @NonNull public java.util.Map getPhysicalCameraTotalResults(); + } + +} + +package android.hardware.camera2.params { + + public final class BlackLevelPattern { + ctor public BlackLevelPattern(@NonNull int[]); + method public void copyTo(int[], int); + method public int getOffsetForIndex(int, int); + field public static final int COUNT = 4; // 0x4 + } + + public final class Capability { + ctor public Capability(int, @NonNull android.util.Size, @NonNull android.util.Range); + method @NonNull public android.util.Size getMaxStreamingSize(); + method public int getMode(); + method @NonNull public android.util.Range getZoomRatioRange(); + } + + public final class ColorSpaceProfiles { + ctor public ColorSpaceProfiles(@NonNull long[]); + method @NonNull public java.util.Set getSupportedColorSpaces(int); + method @NonNull public java.util.Set getSupportedColorSpacesForDynamicRange(int, long); + method @NonNull public java.util.Set getSupportedDynamicRangeProfiles(@NonNull android.graphics.ColorSpace.Named, int); + method @NonNull public java.util.Set getSupportedImageFormatsForColorSpace(@NonNull android.graphics.ColorSpace.Named); + field public static final int UNSPECIFIED = -1; // 0xffffffff + } + + public final class ColorSpaceTransform { + ctor public ColorSpaceTransform(android.util.Rational[]); + ctor public ColorSpaceTransform(int[]); + method public void copyElements(android.util.Rational[], int); + method public void copyElements(int[], int); + method public android.util.Rational getElement(int, int); + } + + public final class DeviceStateSensorOrientationMap { + method public int getSensorOrientation(long); + field public static final long FOLDED = 4L; // 0x4L + field public static final long NORMAL = 0L; // 0x0L + } + + public static final class DeviceStateSensorOrientationMap.Builder { + ctor public DeviceStateSensorOrientationMap.Builder(); + method @NonNull public android.hardware.camera2.params.DeviceStateSensorOrientationMap.Builder addOrientationForState(long, long); + method @NonNull public android.hardware.camera2.params.DeviceStateSensorOrientationMap build(); + } + + public final class DynamicRangeProfiles { + ctor public DynamicRangeProfiles(@NonNull long[]); + method @NonNull public java.util.Set getProfileCaptureRequestConstraints(long); + method @NonNull public java.util.Set getSupportedProfiles(); + method public boolean isExtraLatencyPresent(long); + field public static final long DOLBY_VISION_10B_HDR_OEM = 64L; // 0x40L + field public static final long DOLBY_VISION_10B_HDR_OEM_PO = 128L; // 0x80L + field public static final long DOLBY_VISION_10B_HDR_REF = 16L; // 0x10L + field public static final long DOLBY_VISION_10B_HDR_REF_PO = 32L; // 0x20L + field public static final long DOLBY_VISION_8B_HDR_OEM = 1024L; // 0x400L + field public static final long DOLBY_VISION_8B_HDR_OEM_PO = 2048L; // 0x800L + field public static final long DOLBY_VISION_8B_HDR_REF = 256L; // 0x100L + field public static final long DOLBY_VISION_8B_HDR_REF_PO = 512L; // 0x200L + field public static final long HDR10 = 4L; // 0x4L + field public static final long HDR10_PLUS = 8L; // 0x8L + field public static final long HLG10 = 2L; // 0x2L + field public static final long PUBLIC_MAX = 4096L; // 0x1000L + field public static final long STANDARD = 1L; // 0x1L + } + + public final class ExtensionSessionConfiguration { + ctor public ExtensionSessionConfiguration(int, @NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraExtensionSession.StateCallback); + method public void clearColorSpace(); + method @Nullable public android.graphics.ColorSpace getColorSpace(); + method @NonNull public java.util.concurrent.Executor getExecutor(); + method public int getExtension(); + method @NonNull public java.util.List getOutputConfigurations(); + method @Nullable public android.hardware.camera2.params.OutputConfiguration getPostviewOutputConfiguration(); + method @NonNull public android.hardware.camera2.CameraExtensionSession.StateCallback getStateCallback(); + method public void setColorSpace(@NonNull android.graphics.ColorSpace.Named); + method public void setPostviewOutputConfiguration(@Nullable android.hardware.camera2.params.OutputConfiguration); + } + + public final class Face { + method public android.graphics.Rect getBounds(); + method public int getId(); + method public android.graphics.Point getLeftEyePosition(); + method public android.graphics.Point getMouthPosition(); + method public android.graphics.Point getRightEyePosition(); + method @IntRange(from=android.hardware.camera2.params.Face.SCORE_MIN, to=android.hardware.camera2.params.Face.SCORE_MAX) public int getScore(); + field public static final int ID_UNSUPPORTED = -1; // 0xffffffff + field public static final int SCORE_MAX = 100; // 0x64 + field public static final int SCORE_MIN = 1; // 0x1 + } + + public static final class Face.Builder { + ctor public Face.Builder(); + ctor public Face.Builder(@NonNull android.hardware.camera2.params.Face); + method @NonNull public android.hardware.camera2.params.Face build(); + method @NonNull public android.hardware.camera2.params.Face.Builder setBounds(@NonNull android.graphics.Rect); + method @NonNull public android.hardware.camera2.params.Face.Builder setId(int); + method @NonNull public android.hardware.camera2.params.Face.Builder setLeftEyePosition(@NonNull android.graphics.Point); + method @NonNull public android.hardware.camera2.params.Face.Builder setMouthPosition(@NonNull android.graphics.Point); + method @NonNull public android.hardware.camera2.params.Face.Builder setRightEyePosition(@NonNull android.graphics.Point); + method @NonNull public android.hardware.camera2.params.Face.Builder setScore(@IntRange(from=android.hardware.camera2.params.Face.SCORE_MIN, to=android.hardware.camera2.params.Face.SCORE_MAX) int); + } + + public final class InputConfiguration { + ctor public InputConfiguration(int, int, int); + ctor public InputConfiguration(@NonNull java.util.Collection, int); + method public int getFormat(); + method public int getHeight(); + method public int getWidth(); + method public boolean isMultiResolution(); + } + + public final class LensIntrinsicsSample { + ctor public LensIntrinsicsSample(long, @NonNull float[]); + method @NonNull public float[] getLensIntrinsics(); + method public long getTimestampNanos(); + } + + public final class LensShadingMap { + method public void copyGainFactors(float[], int); + method public int getColumnCount(); + method public float getGainFactor(int, int, int); + method public int getGainFactorCount(); + method public android.hardware.camera2.params.RggbChannelVector getGainFactorVector(int, int); + method public int getRowCount(); + field public static final float MINIMUM_GAIN_FACTOR = 1.0f; + } + + public final class MandatoryStreamCombination { + method @NonNull public CharSequence getDescription(); + method @NonNull public java.util.List getStreamsInformation(); + method public boolean isReprocessable(); + } + + public static final class MandatoryStreamCombination.MandatoryStreamInformation { + method public int get10BitFormat(); + method @NonNull public java.util.List getAvailableSizes(); + method public int getFormat(); + method public long getStreamUseCase(); + method public boolean is10BitCapable(); + method public boolean isInput(); + method public boolean isMaximumSize(); + method public boolean isUltraHighResolution(); + } + + public final class MeteringRectangle { + ctor public MeteringRectangle(int, int, int, int, int); + ctor public MeteringRectangle(android.graphics.Point, android.util.Size, int); + ctor public MeteringRectangle(android.graphics.Rect, int); + method public boolean equals(android.hardware.camera2.params.MeteringRectangle); + method public int getHeight(); + method public int getMeteringWeight(); + method public android.graphics.Rect getRect(); + method public android.util.Size getSize(); + method public android.graphics.Point getUpperLeftPoint(); + method public int getWidth(); + method public int getX(); + method public int getY(); + field public static final int METERING_WEIGHT_DONT_CARE = 0; // 0x0 + field public static final int METERING_WEIGHT_MAX = 1000; // 0x3e8 + field public static final int METERING_WEIGHT_MIN = 0; // 0x0 + } + + public final class MultiResolutionStreamConfigurationMap { + method @NonNull public int[] getInputFormats(); + method @NonNull public java.util.Collection getInputInfo(int); + method @NonNull public int[] getOutputFormats(); + method @NonNull public java.util.Collection getOutputInfo(int); + } + + public class MultiResolutionStreamInfo { + ctor public MultiResolutionStreamInfo(@IntRange(from=1) int, @IntRange(from=1) int, @NonNull String); + method @IntRange(from=1) public int getHeight(); + method @NonNull public String getPhysicalCameraId(); + method @IntRange(from=1) public int getWidth(); + } + + public final class OisSample { + ctor public OisSample(long, float, float); + method public long getTimestamp(); + method public float getXshift(); + method public float getYshift(); + } + + public final class OutputConfiguration implements android.os.Parcelable { + ctor public OutputConfiguration(@NonNull android.view.Surface); + ctor public OutputConfiguration(int, @NonNull android.view.Surface); + ctor public OutputConfiguration(@NonNull android.util.Size, @NonNull Class); + ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public OutputConfiguration(int, @NonNull android.util.Size); + ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public OutputConfiguration(int, int, @NonNull android.util.Size); + ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public OutputConfiguration(int, @NonNull android.util.Size, long); + ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public OutputConfiguration(int, int, @NonNull android.util.Size, long); + method public void addSensorPixelModeUsed(int); + method public void addSurface(@NonNull android.view.Surface); + method @NonNull public static java.util.Collection createInstancesForMultiResolutionOutput(@NonNull android.hardware.camera2.MultiResolutionImageReader); + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") @NonNull public static java.util.List createInstancesForMultiResolutionOutput(@NonNull java.util.Collection, int); + method public int describeContents(); + method public void enableSurfaceSharing(); + method public long getDynamicRangeProfile(); + method public int getMaxSharedSurfaceCount(); + method public int getMirrorMode(); + method @FlaggedApi("com.android.internal.camera.flags.mirror_mode_shared_surfaces") public int getMirrorMode(@NonNull android.view.Surface); + method public long getStreamUseCase(); + method @Nullable public android.view.Surface getSurface(); + method public int getSurfaceGroupId(); + method @NonNull public java.util.List getSurfaces(); + method public int getTimestampBase(); + method public boolean isReadoutTimestampEnabled(); + method public void removeSensorPixelModeUsed(int); + method public void removeSurface(@NonNull android.view.Surface); + method public void setDynamicRangeProfile(long); + method public void setMirrorMode(int); + method @FlaggedApi("com.android.internal.camera.flags.mirror_mode_shared_surfaces") public void setMirrorMode(@NonNull android.view.Surface, int); + method public void setPhysicalCameraId(@Nullable String); + method public void setReadoutTimestampEnabled(boolean); + method public void setStreamUseCase(long); + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public static void setSurfacesForMultiResolutionOutput(@NonNull java.util.Collection, @NonNull android.hardware.camera2.MultiResolutionImageReader); + method public void setTimestampBase(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int MIRROR_MODE_AUTO = 0; // 0x0 + field public static final int MIRROR_MODE_H = 2; // 0x2 + field public static final int MIRROR_MODE_NONE = 1; // 0x1 + field public static final int MIRROR_MODE_V = 3; // 0x3 + field public static final int SURFACE_GROUP_ID_NONE = -1; // 0xffffffff + field public static final int TIMESTAMP_BASE_CHOREOGRAPHER_SYNCED = 4; // 0x4 + field public static final int TIMESTAMP_BASE_DEFAULT = 0; // 0x0 + field public static final int TIMESTAMP_BASE_MONOTONIC = 2; // 0x2 + field public static final int TIMESTAMP_BASE_REALTIME = 3; // 0x3 + field public static final int TIMESTAMP_BASE_SENSOR = 1; // 0x1 + } + + public final class RecommendedStreamConfigurationMap { + method @Nullable public java.util.Set getHighResolutionOutputSizes(int); + method @Nullable public java.util.Set> getHighSpeedVideoFpsRanges(); + method @Nullable public java.util.Set> getHighSpeedVideoFpsRangesFor(@NonNull android.util.Size); + method @Nullable public java.util.Set getHighSpeedVideoSizes(); + method @Nullable public java.util.Set getHighSpeedVideoSizesFor(@NonNull android.util.Range); + method @Nullable public java.util.Set getInputFormats(); + method @Nullable public java.util.Set getInputSizes(int); + method @NonNull public java.util.Set getOutputFormats(); + method @IntRange(from=0) public long getOutputMinFrameDuration(int, @NonNull android.util.Size); + method @IntRange(from=0) public long getOutputMinFrameDuration(@NonNull Class, @NonNull android.util.Size); + method @Nullable public java.util.Set getOutputSizes(int); + method @Nullable public java.util.Set getOutputSizes(@NonNull Class); + method @IntRange(from=0) public long getOutputStallDuration(int, @NonNull android.util.Size); + method @IntRange(from=0) public long getOutputStallDuration(@NonNull Class, @NonNull android.util.Size); + method public int getRecommendedUseCase(); + method @Nullable public java.util.Set getValidOutputFormatsForInput(int); + method public boolean isOutputSupportedFor(int); + method public boolean isOutputSupportedFor(@NonNull android.view.Surface); + field public static final int USECASE_10BIT_OUTPUT = 8; // 0x8 + field public static final int USECASE_LOW_LATENCY_SNAPSHOT = 6; // 0x6 + field public static final int USECASE_PREVIEW = 0; // 0x0 + field public static final int USECASE_RAW = 5; // 0x5 + field public static final int USECASE_RECORD = 1; // 0x1 + field public static final int USECASE_SNAPSHOT = 3; // 0x3 + field public static final int USECASE_VIDEO_SNAPSHOT = 2; // 0x2 + field public static final int USECASE_ZSL = 4; // 0x4 + } + + public final class RggbChannelVector { + ctor public RggbChannelVector(float, float, float, float); + method public void copyTo(float[], int); + method public float getBlue(); + method public float getComponent(int); + method public float getGreenEven(); + method public float getGreenOdd(); + method public float getRed(); + field public static final int BLUE = 3; // 0x3 + field public static final int COUNT = 4; // 0x4 + field public static final int GREEN_EVEN = 1; // 0x1 + field public static final int GREEN_ODD = 2; // 0x2 + field public static final int RED = 0; // 0x0 + } + + public final class SessionConfiguration implements android.os.Parcelable { + ctor public SessionConfiguration(int, @NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback); + ctor @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public SessionConfiguration(int, @NonNull java.util.List); + method public void clearColorSpace(); + method public int describeContents(); + method @Nullable public android.graphics.ColorSpace getColorSpace(); + method public java.util.concurrent.Executor getExecutor(); + method public android.hardware.camera2.params.InputConfiguration getInputConfiguration(); + method public java.util.List getOutputConfigurations(); + method public android.hardware.camera2.CaptureRequest getSessionParameters(); + method public int getSessionType(); + method public android.hardware.camera2.CameraCaptureSession.StateCallback getStateCallback(); + method public void setColorSpace(@NonNull android.graphics.ColorSpace.Named); + method public void setInputConfiguration(@NonNull android.hardware.camera2.params.InputConfiguration); + method public void setSessionParameters(android.hardware.camera2.CaptureRequest); + method @FlaggedApi("com.android.internal.camera.flags.camera_device_setup") public void setStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.camera2.CameraCaptureSession.StateCallback); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SESSION_HIGH_SPEED = 1; // 0x1 + field public static final int SESSION_REGULAR = 0; // 0x0 + } + + public final class StreamConfigurationMap { + method public android.util.Size[] getHighResolutionOutputSizes(int); + method public android.util.Range[] getHighSpeedVideoFpsRanges(); + method public android.util.Range[] getHighSpeedVideoFpsRangesFor(android.util.Size); + method public android.util.Size[] getHighSpeedVideoSizes(); + method public android.util.Size[] getHighSpeedVideoSizesFor(android.util.Range); + method public int[] getInputFormats(); + method public android.util.Size[] getInputSizes(int); + method public int[] getOutputFormats(); + method public long getOutputMinFrameDuration(int, android.util.Size); + method public long getOutputMinFrameDuration(Class, android.util.Size); + method public android.util.Size[] getOutputSizes(Class); + method public android.util.Size[] getOutputSizes(int); + method public long getOutputStallDuration(int, android.util.Size); + method public long getOutputStallDuration(Class, android.util.Size); + method public int[] getValidOutputFormatsForInput(int); + method public boolean isOutputSupportedFor(int); + method public static boolean isOutputSupportedFor(Class); + method public boolean isOutputSupportedFor(android.view.Surface); + } + + public final class TonemapCurve { + ctor public TonemapCurve(float[], float[], float[]); + method public void copyColorCurve(int, float[], int); + method public android.graphics.PointF getPoint(int, int); + method public int getPointCount(int); + field public static final int CHANNEL_BLUE = 2; // 0x2 + field public static final int CHANNEL_GREEN = 1; // 0x1 + field public static final int CHANNEL_RED = 0; // 0x0 + field public static final float LEVEL_BLACK = 0.0f; + field public static final float LEVEL_WHITE = 1.0f; + field public static final int POINT_SIZE = 2; // 0x2 + } + +} + +package android.hardware.display { + + public final class DeviceProductInfo implements android.os.Parcelable { + ctor public DeviceProductInfo(@Nullable String, @NonNull String, @NonNull String, @IntRange(from=1990) int, int); + method public int describeContents(); + method public int getConnectionToSinkType(); + method @IntRange(from=0xffffffff, to=53) public int getManufactureWeek(); + method @IntRange(from=0xffffffff) public int getManufactureYear(); + method @NonNull public String getManufacturerPnpId(); + method @IntRange(from=0xffffffff) public int getModelYear(); + method @Nullable public String getName(); + method @NonNull public String getProductId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CONNECTION_TO_SINK_BUILT_IN = 1; // 0x1 + field public static final int CONNECTION_TO_SINK_DIRECT = 2; // 0x2 + field public static final int CONNECTION_TO_SINK_TRANSITIVE = 3; // 0x3 + field public static final int CONNECTION_TO_SINK_UNKNOWN = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class DisplayManager { + method public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull String, @IntRange(from=1) int, @IntRange(from=1) int, @IntRange(from=1) int, @Nullable android.view.Surface, int); + method public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull String, @IntRange(from=1) int, @IntRange(from=1) int, @IntRange(from=1) int, @Nullable android.view.Surface, int, @Nullable android.hardware.display.VirtualDisplay.Callback, @Nullable android.os.Handler); + method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull android.hardware.display.VirtualDisplayConfig); + method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull android.hardware.display.VirtualDisplayConfig, @Nullable android.os.Handler, @Nullable android.hardware.display.VirtualDisplay.Callback); + method public android.view.Display getDisplay(int); + method public android.view.Display[] getDisplays(); + method public android.view.Display[] getDisplays(String); + method @NonNull public android.hardware.display.HdrConversionMode getHdrConversionMode(); + method public int getMatchContentFrameRateUserPreference(); + method public void registerDisplayListener(android.hardware.display.DisplayManager.DisplayListener, android.os.Handler); + method @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public void registerDisplayListener(@NonNull java.util.concurrent.Executor, long, @NonNull android.hardware.display.DisplayManager.DisplayListener); + method public void unregisterDisplayListener(android.hardware.display.DisplayManager.DisplayListener); + field public static final String DISPLAY_CATEGORY_PRESENTATION = "android.hardware.display.category.PRESENTATION"; + field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_ADDED = 1L; // 0x1L + field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_CHANGED = 4L; // 0x4L + field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_REFRESH_RATE = 8L; // 0x8L + field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_REMOVED = 2L; // 0x2L + field @FlaggedApi("com.android.server.display.feature.flags.display_listener_performance_improvements") public static final long EVENT_FLAG_DISPLAY_STATE = 16L; // 0x10L + field public static final int MATCH_CONTENT_FRAMERATE_ALWAYS = 2; // 0x2 + field public static final int MATCH_CONTENT_FRAMERATE_NEVER = 0; // 0x0 + field public static final int MATCH_CONTENT_FRAMERATE_SEAMLESSS_ONLY = 1; // 0x1 + field public static final int MATCH_CONTENT_FRAMERATE_UNKNOWN = -1; // 0xffffffff + field public static final int VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR = 16; // 0x10 + field public static final int VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY = 8; // 0x8 + field public static final int VIRTUAL_DISPLAY_FLAG_PRESENTATION = 2; // 0x2 + field public static final int VIRTUAL_DISPLAY_FLAG_PUBLIC = 1; // 0x1 + field public static final int VIRTUAL_DISPLAY_FLAG_SECURE = 4; // 0x4 + } + + public static interface DisplayManager.DisplayListener { + method public void onDisplayAdded(int); + method public void onDisplayChanged(int); + method public void onDisplayRemoved(int); + } + + public final class HdrConversionMode implements android.os.Parcelable { + ctor public HdrConversionMode(int, int); + ctor public HdrConversionMode(int); + method public int describeContents(); + method public int getConversionMode(); + method public int getPreferredHdrOutputType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int HDR_CONVERSION_FORCE = 3; // 0x3 + field public static final int HDR_CONVERSION_PASSTHROUGH = 1; // 0x1 + field public static final int HDR_CONVERSION_SYSTEM = 2; // 0x2 + field public static final int HDR_CONVERSION_UNSUPPORTED = 0; // 0x0 + } + + public final class VirtualDisplay { + method public android.view.Display getDisplay(); + method public android.view.Surface getSurface(); + method public void release(); + method public void resize(int, int, int); + method @FlaggedApi("android.companion.virtualdevice.flags.virtual_display_rotation_api") public void setRotation(int); + method public void setSurface(android.view.Surface); + } + + public abstract static class VirtualDisplay.Callback { + ctor public VirtualDisplay.Callback(); + method public void onPaused(); + method public void onResumed(); + method public void onStopped(); + } + + public final class VirtualDisplayConfig implements android.os.Parcelable { + method public int describeContents(); + method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @FloatRange(from=0.0f, to=1.0f) public float getDefaultBrightness(); + method public int getDensityDpi(); + method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @FloatRange(from=0.0f, to=1.0f) public float getDimBrightness(); + method @NonNull public java.util.Set getDisplayCategories(); + method public int getFlags(); + method public int getHeight(); + method @NonNull public String getName(); + method public float getRequestedRefreshRate(); + method @Nullable public android.view.Surface getSurface(); + method public int getWidth(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") public static interface VirtualDisplayConfig.BrightnessListener { + method public void onBrightnessChanged(@FloatRange(from=0.0f, to=1.0f) float); + } + + public static final class VirtualDisplayConfig.Builder { + ctor public VirtualDisplayConfig.Builder(@NonNull String, @IntRange(from=1) int, @IntRange(from=1) int, @IntRange(from=1) int); + method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder addDisplayCategory(@NonNull String); + method @NonNull public android.hardware.display.VirtualDisplayConfig build(); + method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setBrightnessListener(@NonNull java.util.concurrent.Executor, @NonNull android.hardware.display.VirtualDisplayConfig.BrightnessListener); + method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setDefaultBrightness(@FloatRange(from=0.0f, to=1.0f) float); + method @FlaggedApi("android.companion.virtualdevice.flags.device_aware_display_power") @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setDimBrightness(@FloatRange(from=0.0f, to=1.0f) float); + method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setDisplayCategories(@NonNull java.util.Set); + method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setFlags(int); + method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setRequestedRefreshRate(@FloatRange(from=0.0f) float); + method @NonNull public android.hardware.display.VirtualDisplayConfig.Builder setSurface(@Nullable android.view.Surface); + } + +} + +package android.hardware.fingerprint { + + @Deprecated public class FingerprintManager { + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.USE_BIOMETRIC, android.Manifest.permission.USE_FINGERPRINT}) public void authenticate(@Nullable android.hardware.fingerprint.FingerprintManager.CryptoObject, @Nullable android.os.CancellationSignal, int, @NonNull android.hardware.fingerprint.FingerprintManager.AuthenticationCallback, @Nullable android.os.Handler); + method @Deprecated @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) public boolean hasEnrolledFingerprints(); + method @Deprecated @RequiresPermission(android.Manifest.permission.USE_FINGERPRINT) public boolean isHardwareDetected(); + field @Deprecated public static final int FINGERPRINT_ACQUIRED_GOOD = 0; // 0x0 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_IMAGER_DIRTY = 3; // 0x3 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_INSUFFICIENT = 2; // 0x2 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_PARTIAL = 1; // 0x1 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_TOO_FAST = 5; // 0x5 + field @Deprecated public static final int FINGERPRINT_ACQUIRED_TOO_SLOW = 4; // 0x4 + field @Deprecated public static final int FINGERPRINT_ERROR_CANCELED = 5; // 0x5 + field @Deprecated public static final int FINGERPRINT_ERROR_HW_NOT_PRESENT = 12; // 0xc + field @Deprecated public static final int FINGERPRINT_ERROR_HW_UNAVAILABLE = 1; // 0x1 + field @Deprecated public static final int FINGERPRINT_ERROR_LOCKOUT = 7; // 0x7 + field @Deprecated public static final int FINGERPRINT_ERROR_LOCKOUT_PERMANENT = 9; // 0x9 + field @Deprecated public static final int FINGERPRINT_ERROR_NO_FINGERPRINTS = 11; // 0xb + field @Deprecated public static final int FINGERPRINT_ERROR_NO_SPACE = 4; // 0x4 + field @Deprecated public static final int FINGERPRINT_ERROR_TIMEOUT = 3; // 0x3 + field @Deprecated public static final int FINGERPRINT_ERROR_UNABLE_TO_PROCESS = 2; // 0x2 + field @Deprecated public static final int FINGERPRINT_ERROR_USER_CANCELED = 10; // 0xa + field @Deprecated public static final int FINGERPRINT_ERROR_VENDOR = 8; // 0x8 + } + + @Deprecated public abstract static class FingerprintManager.AuthenticationCallback { + ctor @Deprecated public FingerprintManager.AuthenticationCallback(); + method @Deprecated public void onAuthenticationError(int, CharSequence); + method @Deprecated public void onAuthenticationFailed(); + method @Deprecated public void onAuthenticationHelp(int, CharSequence); + method @Deprecated public void onAuthenticationSucceeded(android.hardware.fingerprint.FingerprintManager.AuthenticationResult); + } + + @Deprecated public static class FingerprintManager.AuthenticationResult { + method @Deprecated public android.hardware.fingerprint.FingerprintManager.CryptoObject getCryptoObject(); + } + + @Deprecated public static final class FingerprintManager.CryptoObject { + ctor @Deprecated public FingerprintManager.CryptoObject(@NonNull java.security.Signature); + ctor @Deprecated public FingerprintManager.CryptoObject(@NonNull javax.crypto.Cipher); + ctor @Deprecated public FingerprintManager.CryptoObject(@NonNull javax.crypto.Mac); + method @Deprecated public javax.crypto.Cipher getCipher(); + method @Deprecated public javax.crypto.Mac getMac(); + method @Deprecated public java.security.Signature getSignature(); + } + +} + +package android.hardware.input { + + public final class HostUsiVersion implements android.os.Parcelable { + method public int describeContents(); + method public int getMajorVersion(); + method public int getMinorVersion(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class InputManager { + method @Nullable public android.hardware.input.HostUsiVersion getHostUsiVersion(@NonNull android.view.Display); + method @Nullable public android.view.InputDevice getInputDevice(int); + method public int[] getInputDeviceIds(); + method @FlaggedApi("com.android.input.flags.input_device_view_behavior_api") @Nullable public android.view.InputDevice.ViewBehavior getInputDeviceViewBehavior(int); + method @FloatRange(from=0, to=1) public float getMaximumObscuringOpacityForTouch(); + method public boolean isStylusPointerIconEnabled(); + method public void registerInputDeviceListener(android.hardware.input.InputManager.InputDeviceListener, android.os.Handler); + method public void unregisterInputDeviceListener(android.hardware.input.InputManager.InputDeviceListener); + method @Nullable public android.view.VerifiedInputEvent verifyInputEvent(@NonNull android.view.InputEvent); + field public static final String ACTION_QUERY_KEYBOARD_LAYOUTS = "android.hardware.input.action.QUERY_KEYBOARD_LAYOUTS"; + field public static final String META_DATA_KEYBOARD_LAYOUTS = "android.hardware.input.metadata.KEYBOARD_LAYOUTS"; + } + + public static interface InputManager.InputDeviceListener { + method public void onInputDeviceAdded(int); + method public void onInputDeviceChanged(int); + method public void onInputDeviceRemoved(int); + } + +} + +package android.hardware.lights { + + public final class Light implements android.os.Parcelable { + method public int describeContents(); + method public int getId(); + method @NonNull public String getName(); + method public int getOrdinal(); + method public int getType(); + method public boolean hasBrightnessControl(); + method public boolean hasRgbControl(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int LIGHT_CAPABILITY_BRIGHTNESS = 1; // 0x1 + field public static final int LIGHT_CAPABILITY_COLOR_RGB = 2; // 0x2 + field @Deprecated public static final int LIGHT_CAPABILITY_RGB = 0; // 0x0 + field public static final int LIGHT_TYPE_INPUT = 10001; // 0x2711 + field public static final int LIGHT_TYPE_KEYBOARD_BACKLIGHT = 10003; // 0x2713 + field public static final int LIGHT_TYPE_MICROPHONE = 8; // 0x8 + field public static final int LIGHT_TYPE_PLAYER_ID = 10002; // 0x2712 + } + + public final class LightState implements android.os.Parcelable { + method public int describeContents(); + method @ColorInt public int getColor(); + method public int getPlayerId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class LightState.Builder { + ctor public LightState.Builder(); + method @NonNull public android.hardware.lights.LightState build(); + method @NonNull public android.hardware.lights.LightState.Builder setColor(@ColorInt int); + method @NonNull public android.hardware.lights.LightState.Builder setPlayerId(int); + } + + public abstract class LightsManager { + method @NonNull public abstract android.hardware.lights.LightState getLightState(@NonNull android.hardware.lights.Light); + method @NonNull public abstract java.util.List getLights(); + method @NonNull public abstract android.hardware.lights.LightsManager.LightsSession openSession(); + } + + public abstract static class LightsManager.LightsSession implements java.lang.AutoCloseable { + method public abstract void close(); + method public abstract void requestLights(@NonNull android.hardware.lights.LightsRequest); + } + + public final class LightsRequest { + method @NonNull public java.util.List getLightStates(); + method @NonNull public java.util.List getLights(); + method @NonNull public java.util.Map getLightsAndStates(); + } + + public static final class LightsRequest.Builder { + ctor public LightsRequest.Builder(); + method @NonNull public android.hardware.lights.LightsRequest.Builder addLight(@NonNull android.hardware.lights.Light, @NonNull android.hardware.lights.LightState); + method @NonNull public android.hardware.lights.LightsRequest build(); + method @NonNull public android.hardware.lights.LightsRequest.Builder clearLight(@NonNull android.hardware.lights.Light); + } + +} + +package android.hardware.usb { + + public class UsbAccessory implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getDescription(); + method @NonNull public String getManufacturer(); + method @NonNull public String getModel(); + method @Nullable public String getSerial(); + method @Nullable public String getUri(); + method @Nullable public String getVersion(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class UsbConfiguration implements android.os.Parcelable { + method public int describeContents(); + method public int getId(); + method @NonNull public android.hardware.usb.UsbInterface getInterface(int); + method public int getInterfaceCount(); + method public int getMaxPower(); + method @Nullable public String getName(); + method public boolean isRemoteWakeup(); + method public boolean isSelfPowered(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class UsbConstants { + ctor public UsbConstants(); + field public static final int USB_CLASS_APP_SPEC = 254; // 0xfe + field public static final int USB_CLASS_AUDIO = 1; // 0x1 + field public static final int USB_CLASS_CDC_DATA = 10; // 0xa + field public static final int USB_CLASS_COMM = 2; // 0x2 + field public static final int USB_CLASS_CONTENT_SEC = 13; // 0xd + field public static final int USB_CLASS_CSCID = 11; // 0xb + field public static final int USB_CLASS_HID = 3; // 0x3 + field public static final int USB_CLASS_HUB = 9; // 0x9 + field public static final int USB_CLASS_MASS_STORAGE = 8; // 0x8 + field public static final int USB_CLASS_MISC = 239; // 0xef + field public static final int USB_CLASS_PER_INTERFACE = 0; // 0x0 + field public static final int USB_CLASS_PHYSICA = 5; // 0x5 + field public static final int USB_CLASS_PRINTER = 7; // 0x7 + field public static final int USB_CLASS_STILL_IMAGE = 6; // 0x6 + field public static final int USB_CLASS_VENDOR_SPEC = 255; // 0xff + field public static final int USB_CLASS_VIDEO = 14; // 0xe + field public static final int USB_CLASS_WIRELESS_CONTROLLER = 224; // 0xe0 + field public static final int USB_DIR_IN = 128; // 0x80 + field public static final int USB_DIR_OUT = 0; // 0x0 + field public static final int USB_ENDPOINT_DIR_MASK = 128; // 0x80 + field public static final int USB_ENDPOINT_NUMBER_MASK = 15; // 0xf + field public static final int USB_ENDPOINT_XFERTYPE_MASK = 3; // 0x3 + field public static final int USB_ENDPOINT_XFER_BULK = 2; // 0x2 + field public static final int USB_ENDPOINT_XFER_CONTROL = 0; // 0x0 + field public static final int USB_ENDPOINT_XFER_INT = 3; // 0x3 + field public static final int USB_ENDPOINT_XFER_ISOC = 1; // 0x1 + field public static final int USB_INTERFACE_SUBCLASS_BOOT = 1; // 0x1 + field public static final int USB_SUBCLASS_VENDOR_SPEC = 255; // 0xff + field public static final int USB_TYPE_CLASS = 32; // 0x20 + field public static final int USB_TYPE_MASK = 96; // 0x60 + field public static final int USB_TYPE_RESERVED = 96; // 0x60 + field public static final int USB_TYPE_STANDARD = 0; // 0x0 + field public static final int USB_TYPE_VENDOR = 64; // 0x40 + } + + public class UsbDevice implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.hardware.usb.UsbConfiguration getConfiguration(int); + method public int getConfigurationCount(); + method public int getDeviceClass(); + method public int getDeviceId(); + method public static int getDeviceId(String); + method @NonNull public String getDeviceName(); + method public static String getDeviceName(int); + method public int getDeviceProtocol(); + method public int getDeviceSubclass(); + method @NonNull public android.hardware.usb.UsbInterface getInterface(int); + method public int getInterfaceCount(); + method @Nullable public String getManufacturerName(); + method public int getProductId(); + method @Nullable public String getProductName(); + method @Nullable public String getSerialNumber(); + method public int getVendorId(); + method @NonNull public String getVersion(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class UsbDeviceConnection { + method public int bulkTransfer(android.hardware.usb.UsbEndpoint, byte[], int, int); + method public int bulkTransfer(android.hardware.usb.UsbEndpoint, byte[], int, int, int); + method public boolean claimInterface(android.hardware.usb.UsbInterface, boolean); + method public void close(); + method public int controlTransfer(int, int, int, int, @Nullable byte[], int, int); + method public int controlTransfer(int, int, int, int, @Nullable byte[], int, int, int); + method public int getFileDescriptor(); + method public byte[] getRawDescriptors(); + method public String getSerial(); + method public boolean releaseInterface(android.hardware.usb.UsbInterface); + method public android.hardware.usb.UsbRequest requestWait(); + method public android.hardware.usb.UsbRequest requestWait(long) throws java.util.concurrent.TimeoutException; + method public boolean setConfiguration(android.hardware.usb.UsbConfiguration); + method public boolean setInterface(android.hardware.usb.UsbInterface); + } + + public class UsbEndpoint implements android.os.Parcelable { + method public int describeContents(); + method public int getAddress(); + method public int getAttributes(); + method public int getDirection(); + method public int getEndpointNumber(); + method public int getInterval(); + method public int getMaxPacketSize(); + method public int getType(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class UsbInterface implements android.os.Parcelable { + method public int describeContents(); + method public int getAlternateSetting(); + method public android.hardware.usb.UsbEndpoint getEndpoint(int); + method public int getEndpointCount(); + method public int getId(); + method public int getInterfaceClass(); + method public int getInterfaceProtocol(); + method public int getInterfaceSubclass(); + method @Nullable public String getName(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class UsbManager { + method public android.hardware.usb.UsbAccessory[] getAccessoryList(); + method public java.util.HashMap getDeviceList(); + method public boolean hasPermission(android.hardware.usb.UsbDevice); + method public boolean hasPermission(android.hardware.usb.UsbAccessory); + method public android.os.ParcelFileDescriptor openAccessory(android.hardware.usb.UsbAccessory); + method @FlaggedApi("android.hardware.usb.flags.enable_accessory_stream_api") @NonNull public java.io.InputStream openAccessoryInputStream(@NonNull android.hardware.usb.UsbAccessory); + method @FlaggedApi("android.hardware.usb.flags.enable_accessory_stream_api") @NonNull public java.io.OutputStream openAccessoryOutputStream(@NonNull android.hardware.usb.UsbAccessory); + method public android.hardware.usb.UsbDeviceConnection openDevice(android.hardware.usb.UsbDevice); + method public void requestPermission(android.hardware.usb.UsbDevice, android.app.PendingIntent); + method public void requestPermission(android.hardware.usb.UsbAccessory, android.app.PendingIntent); + field public static final String ACTION_USB_ACCESSORY_ATTACHED = "android.hardware.usb.action.USB_ACCESSORY_ATTACHED"; + field public static final String ACTION_USB_ACCESSORY_DETACHED = "android.hardware.usb.action.USB_ACCESSORY_DETACHED"; + field public static final String ACTION_USB_DEVICE_ATTACHED = "android.hardware.usb.action.USB_DEVICE_ATTACHED"; + field public static final String ACTION_USB_DEVICE_DETACHED = "android.hardware.usb.action.USB_DEVICE_DETACHED"; + field public static final String EXTRA_ACCESSORY = "accessory"; + field public static final String EXTRA_DEVICE = "device"; + field public static final String EXTRA_PERMISSION_GRANTED = "permission"; + } + + public class UsbRequest { + ctor public UsbRequest(); + method public boolean cancel(); + method public void close(); + method public Object getClientData(); + method public android.hardware.usb.UsbEndpoint getEndpoint(); + method public boolean initialize(android.hardware.usb.UsbDeviceConnection, android.hardware.usb.UsbEndpoint); + method @Deprecated public boolean queue(java.nio.ByteBuffer, int); + method public boolean queue(@Nullable java.nio.ByteBuffer); + method public void setClientData(Object); + } + +} + +package android.inputmethodservice { + + public abstract class AbstractInputMethodService extends android.app.Service implements android.view.KeyEvent.Callback { + ctor public AbstractInputMethodService(); + method public android.view.KeyEvent.DispatcherState getKeyDispatcherState(); + method public final android.os.IBinder onBind(android.content.Intent); + method public abstract android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl onCreateInputMethodInterface(); + method public abstract android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl onCreateInputMethodSessionInterface(); + method public boolean onGenericMotionEvent(android.view.MotionEvent); + method @FlaggedApi("android.view.inputmethod.verify_key_event") public boolean onShouldVerifyKeyEvent(@NonNull android.view.KeyEvent); + method public boolean onTrackballEvent(android.view.MotionEvent); + } + + public abstract class AbstractInputMethodService.AbstractInputMethodImpl implements android.view.inputmethod.InputMethod { + ctor public AbstractInputMethodService.AbstractInputMethodImpl(); + method @MainThread public void createSession(android.view.inputmethod.InputMethod.SessionCallback); + method @MainThread public void revokeSession(android.view.inputmethod.InputMethodSession); + method @MainThread public void setSessionEnabled(android.view.inputmethod.InputMethodSession, boolean); + } + + public abstract class AbstractInputMethodService.AbstractInputMethodSessionImpl implements android.view.inputmethod.InputMethodSession { + ctor public AbstractInputMethodService.AbstractInputMethodSessionImpl(); + method public void dispatchGenericMotionEvent(int, android.view.MotionEvent, android.view.inputmethod.InputMethodSession.EventCallback); + method public void dispatchKeyEvent(int, android.view.KeyEvent, android.view.inputmethod.InputMethodSession.EventCallback); + method public void dispatchTrackballEvent(int, android.view.MotionEvent, android.view.inputmethod.InputMethodSession.EventCallback); + method public boolean isEnabled(); + method public boolean isRevoked(); + method @FlaggedApi("android.view.inputmethod.verify_key_event") public boolean onShouldVerifyKeyEvent(@NonNull android.view.KeyEvent); + method public void revokeSelf(); + method public void setEnabled(boolean); + } + + public class ExtractEditText extends android.widget.EditText { + ctor public ExtractEditText(android.content.Context); + ctor public ExtractEditText(android.content.Context, android.util.AttributeSet); + ctor public ExtractEditText(android.content.Context, android.util.AttributeSet, int); + ctor public ExtractEditText(android.content.Context, android.util.AttributeSet, int, int); + method public void finishInternalChanges(); + method public boolean hasVerticalScrollBar(); + method public void startInternalChanges(); + } + + @UiContext public class InputMethodService extends android.inputmethodservice.AbstractInputMethodService { + ctor public InputMethodService(); + method @Deprecated public boolean enableHardwareAcceleration(); + method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public final void finishConnectionlessStylusHandwriting(@Nullable CharSequence); + method public final void finishStylusHandwriting(); + method public int getBackDisposition(); + method public int getCandidatesHiddenVisibility(); + method public android.view.inputmethod.InputBinding getCurrentInputBinding(); + method public android.view.inputmethod.InputConnection getCurrentInputConnection(); + method public android.view.inputmethod.EditorInfo getCurrentInputEditorInfo(); + method public boolean getCurrentInputStarted(); + method @Deprecated public int getInputMethodWindowRecommendedHeight(); + method public android.view.LayoutInflater getLayoutInflater(); + method public int getMaxWidth(); + method @NonNull public static final java.time.Duration getStylusHandwritingIdleTimeoutMax(); + method @NonNull public final java.time.Duration getStylusHandwritingSessionTimeout(); + method @Nullable public final android.view.Window getStylusHandwritingWindow(); + method public CharSequence getTextForImeAction(int); + method public android.app.Dialog getWindow(); + method public void hideStatusIcon(); + method public void hideWindow(); + method public boolean isExtractViewShown(); + method public boolean isFullscreenMode(); + method public boolean isInputViewShown(); + method public boolean isShowInputRequested(); + method public void onAppPrivateCommand(String, android.os.Bundle); + method public void onBindInput(); + method public void onComputeInsets(android.inputmethodservice.InputMethodService.Insets); + method public void onConfigureWindow(android.view.Window, boolean, boolean); + method public android.view.View onCreateCandidatesView(); + method public android.view.View onCreateExtractTextView(); + method @Nullable public android.view.inputmethod.InlineSuggestionsRequest onCreateInlineSuggestionsRequest(@NonNull android.os.Bundle); + method @Deprecated public android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl onCreateInputMethodInterface(); + method @Deprecated public android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl onCreateInputMethodSessionInterface(); + method public android.view.View onCreateInputView(); + method protected void onCurrentInputMethodSubtypeChanged(android.view.inputmethod.InputMethodSubtype); + method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") public void onCustomImeSwitcherButtonRequestedVisible(boolean); + method public void onDisplayCompletions(android.view.inputmethod.CompletionInfo[]); + method public boolean onEvaluateFullscreenMode(); + method @CallSuper public boolean onEvaluateInputViewShown(); + method public boolean onExtractTextContextMenuItem(int); + method public void onExtractedCursorMovement(int, int); + method public void onExtractedSelectionChanged(int, int); + method public void onExtractedTextClicked(); + method public void onExtractingInputChanged(android.view.inputmethod.EditorInfo); + method public void onFinishCandidatesView(boolean); + method public void onFinishInput(); + method public void onFinishInputView(boolean); + method public void onFinishStylusHandwriting(); + method public void onInitializeInterface(); + method public boolean onInlineSuggestionsResponse(@NonNull android.view.inputmethod.InlineSuggestionsResponse); + method public boolean onKeyDown(int, android.view.KeyEvent); + method public boolean onKeyLongPress(int, android.view.KeyEvent); + method public boolean onKeyMultiple(int, int, android.view.KeyEvent); + method public boolean onKeyUp(int, android.view.KeyEvent); + method public void onPrepareStylusHandwriting(); + method public boolean onShowInputRequested(int, boolean); + method public void onStartCandidatesView(android.view.inputmethod.EditorInfo, boolean); + method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public boolean onStartConnectionlessStylusHandwriting(int, @Nullable android.view.inputmethod.CursorAnchorInfo); + method public void onStartInput(android.view.inputmethod.EditorInfo, boolean); + method public void onStartInputView(android.view.inputmethod.EditorInfo, boolean); + method public boolean onStartStylusHandwriting(); + method public void onStylusHandwritingMotionEvent(@NonNull android.view.MotionEvent); + method public void onUnbindInput(); + method @Deprecated public void onUpdateCursor(android.graphics.Rect); + method public void onUpdateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo); + method public void onUpdateEditorToolType(int); + method public void onUpdateExtractedText(int, android.view.inputmethod.ExtractedText); + method public void onUpdateExtractingViews(android.view.inputmethod.EditorInfo); + method public void onUpdateExtractingVisibility(android.view.inputmethod.EditorInfo); + method public void onUpdateSelection(int, int, int, int, int, int); + method @Deprecated public void onViewClicked(boolean); + method public void onWindowHidden(); + method public void onWindowShown(); + method public void requestHideSelf(int); + method public final void requestShowSelf(int); + method public boolean sendDefaultEditorAction(boolean); + method public void sendDownUpKeyEvents(int); + method public void sendKeyChar(char); + method public void setBackDisposition(int); + method public void setCandidatesView(android.view.View); + method public void setCandidatesViewShown(boolean); + method public void setExtractView(android.view.View); + method public void setExtractViewShown(boolean); + method public void setInputView(android.view.View); + method @FlaggedApi("android.view.inputmethod.adaptive_handwriting_bounds") public final void setStylusHandwritingRegion(@NonNull android.graphics.Region); + method public final void setStylusHandwritingSessionTimeout(@NonNull java.time.Duration); + method public final boolean shouldOfferSwitchingToNextInputMethod(); + method public void showStatusIcon(@DrawableRes int); + method public void showWindow(boolean); + method public void switchInputMethod(String); + method public final void switchInputMethod(String, android.view.inputmethod.InputMethodSubtype); + method public final boolean switchToNextInputMethod(boolean); + method public final boolean switchToPreviousInputMethod(); + method public void updateFullscreenMode(); + method public void updateInputViewShown(); + field public static final int BACK_DISPOSITION_ADJUST_NOTHING = 3; // 0x3 + field public static final int BACK_DISPOSITION_DEFAULT = 0; // 0x0 + field @Deprecated public static final int BACK_DISPOSITION_WILL_DISMISS = 2; // 0x2 + field @Deprecated public static final int BACK_DISPOSITION_WILL_NOT_DISMISS = 1; // 0x1 + } + + public class InputMethodService.InputMethodImpl extends android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodImpl { + ctor public InputMethodService.InputMethodImpl(); + method @MainThread public void attachToken(android.os.IBinder); + method @MainThread public void bindInput(android.view.inputmethod.InputBinding); + method @MainThread public void changeInputMethodSubtype(android.view.inputmethod.InputMethodSubtype); + method @MainThread public void hideSoftInput(int, android.os.ResultReceiver); + method @MainThread public void restartInput(android.view.inputmethod.InputConnection, android.view.inputmethod.EditorInfo); + method @MainThread public void showSoftInput(int, android.os.ResultReceiver); + method @MainThread public void startInput(android.view.inputmethod.InputConnection, android.view.inputmethod.EditorInfo); + method @MainThread public void unbindInput(); + } + + public class InputMethodService.InputMethodSessionImpl extends android.inputmethodservice.AbstractInputMethodService.AbstractInputMethodSessionImpl { + ctor public InputMethodService.InputMethodSessionImpl(); + method public void appPrivateCommand(String, android.os.Bundle); + method public void displayCompletions(android.view.inputmethod.CompletionInfo[]); + method public void finishInput(); + method @Deprecated public void toggleSoftInput(int, int); + method public void updateCursor(android.graphics.Rect); + method public void updateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo); + method public void updateExtractedText(int, android.view.inputmethod.ExtractedText); + method public void updateSelection(int, int, int, int, int, int); + method public void viewClicked(boolean); + } + + public static final class InputMethodService.Insets { + ctor public InputMethodService.Insets(); + field public static final int TOUCHABLE_INSETS_CONTENT = 1; // 0x1 + field public static final int TOUCHABLE_INSETS_FRAME = 0; // 0x0 + field public static final int TOUCHABLE_INSETS_REGION = 3; // 0x3 + field public static final int TOUCHABLE_INSETS_VISIBLE = 2; // 0x2 + field public int contentTopInsets; + field public int touchableInsets; + field public final android.graphics.Region touchableRegion; + field public int visibleTopInsets; + } + + @Deprecated public class Keyboard { + ctor @Deprecated public Keyboard(android.content.Context, int); + ctor @Deprecated public Keyboard(android.content.Context, @XmlRes int, int, int, int); + ctor @Deprecated public Keyboard(android.content.Context, @XmlRes int, int); + ctor @Deprecated public Keyboard(android.content.Context, int, CharSequence, int, int); + method @Deprecated protected android.inputmethodservice.Keyboard.Key createKeyFromXml(android.content.res.Resources, android.inputmethodservice.Keyboard.Row, int, int, android.content.res.XmlResourceParser); + method @Deprecated protected android.inputmethodservice.Keyboard.Row createRowFromXml(android.content.res.Resources, android.content.res.XmlResourceParser); + method @Deprecated public int getHeight(); + method @Deprecated protected int getHorizontalGap(); + method @Deprecated protected int getKeyHeight(); + method @Deprecated protected int getKeyWidth(); + method @Deprecated public java.util.List getKeys(); + method @Deprecated public int getMinWidth(); + method @Deprecated public java.util.List getModifierKeys(); + method @Deprecated public int[] getNearestKeys(int, int); + method @Deprecated public int getShiftKeyIndex(); + method @Deprecated protected int getVerticalGap(); + method @Deprecated public boolean isShifted(); + method @Deprecated protected void setHorizontalGap(int); + method @Deprecated protected void setKeyHeight(int); + method @Deprecated protected void setKeyWidth(int); + method @Deprecated public boolean setShifted(boolean); + method @Deprecated protected void setVerticalGap(int); + field @Deprecated public static final int EDGE_BOTTOM = 8; // 0x8 + field @Deprecated public static final int EDGE_LEFT = 1; // 0x1 + field @Deprecated public static final int EDGE_RIGHT = 2; // 0x2 + field @Deprecated public static final int EDGE_TOP = 4; // 0x4 + field @Deprecated public static final int KEYCODE_ALT = -6; // 0xfffffffa + field @Deprecated public static final int KEYCODE_CANCEL = -3; // 0xfffffffd + field @Deprecated public static final int KEYCODE_DELETE = -5; // 0xfffffffb + field @Deprecated public static final int KEYCODE_DONE = -4; // 0xfffffffc + field @Deprecated public static final int KEYCODE_MODE_CHANGE = -2; // 0xfffffffe + field @Deprecated public static final int KEYCODE_SHIFT = -1; // 0xffffffff + } + + @Deprecated public static class Keyboard.Key { + ctor @Deprecated public Keyboard.Key(android.inputmethodservice.Keyboard.Row); + ctor @Deprecated public Keyboard.Key(android.content.res.Resources, android.inputmethodservice.Keyboard.Row, int, int, android.content.res.XmlResourceParser); + method @Deprecated public int[] getCurrentDrawableState(); + method @Deprecated public boolean isInside(int, int); + method @Deprecated public void onPressed(); + method @Deprecated public void onReleased(boolean); + method @Deprecated public int squaredDistanceFrom(int, int); + field @Deprecated public int[] codes; + field @Deprecated public int edgeFlags; + field @Deprecated public int gap; + field @Deprecated public int height; + field @Deprecated public android.graphics.drawable.Drawable icon; + field @Deprecated public android.graphics.drawable.Drawable iconPreview; + field @Deprecated public CharSequence label; + field @Deprecated public boolean modifier; + field @Deprecated public boolean on; + field @Deprecated public CharSequence popupCharacters; + field @Deprecated public int popupResId; + field @Deprecated public boolean pressed; + field @Deprecated public boolean repeatable; + field @Deprecated public boolean sticky; + field @Deprecated public CharSequence text; + field @Deprecated public int width; + field @Deprecated public int x; + field @Deprecated public int y; + } + + @Deprecated public static class Keyboard.Row { + ctor @Deprecated public Keyboard.Row(android.inputmethodservice.Keyboard); + ctor @Deprecated public Keyboard.Row(android.content.res.Resources, android.inputmethodservice.Keyboard, android.content.res.XmlResourceParser); + field @Deprecated public int defaultHeight; + field @Deprecated public int defaultHorizontalGap; + field @Deprecated public int defaultWidth; + field @Deprecated public int mode; + field @Deprecated public int rowEdgeFlags; + field @Deprecated public int verticalGap; + } + + @Deprecated public class KeyboardView extends android.view.View implements android.view.View.OnClickListener { + ctor @Deprecated public KeyboardView(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public KeyboardView(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public KeyboardView(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public void closing(); + method @Deprecated public android.inputmethodservice.Keyboard getKeyboard(); + method @Deprecated protected android.inputmethodservice.KeyboardView.OnKeyboardActionListener getOnKeyboardActionListener(); + method @Deprecated public boolean handleBack(); + method @Deprecated public void invalidateAllKeys(); + method @Deprecated public void invalidateKey(int); + method @Deprecated public boolean isPreviewEnabled(); + method @Deprecated public boolean isProximityCorrectionEnabled(); + method @Deprecated public boolean isShifted(); + method @Deprecated public void onClick(android.view.View); + method @Deprecated public void onDetachedFromWindow(); + method @Deprecated public void onDraw(android.graphics.Canvas); + method @Deprecated protected boolean onLongPress(android.inputmethodservice.Keyboard.Key); + method @Deprecated public void onMeasure(int, int); + method @Deprecated public void onSizeChanged(int, int, int, int); + method @Deprecated public void setKeyboard(android.inputmethodservice.Keyboard); + method @Deprecated public void setOnKeyboardActionListener(android.inputmethodservice.KeyboardView.OnKeyboardActionListener); + method @Deprecated public void setPopupOffset(int, int); + method @Deprecated public void setPopupParent(android.view.View); + method @Deprecated public void setPreviewEnabled(boolean); + method @Deprecated public void setProximityCorrectionEnabled(boolean); + method @Deprecated public boolean setShifted(boolean); + method @Deprecated public void setVerticalCorrection(int); + method @Deprecated protected void swipeDown(); + method @Deprecated protected void swipeLeft(); + method @Deprecated protected void swipeRight(); + method @Deprecated protected void swipeUp(); + } + + @Deprecated public static interface KeyboardView.OnKeyboardActionListener { + method @Deprecated public void onKey(int, int[]); + method @Deprecated public void onPress(int); + method @Deprecated public void onRelease(int); + method @Deprecated public void onText(CharSequence); + method @Deprecated public void swipeDown(); + method @Deprecated public void swipeLeft(); + method @Deprecated public void swipeRight(); + method @Deprecated public void swipeUp(); + } + +} + +package android.location { + + public class Location implements android.os.Parcelable { + ctor public Location(@Nullable String); + ctor public Location(@NonNull android.location.Location); + method public float bearingTo(@NonNull android.location.Location); + method @NonNull public static String convert(@FloatRange double, int); + method @FloatRange public static double convert(@NonNull String); + method public int describeContents(); + method public static void distanceBetween(@FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double, @FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double, float[]); + method @FloatRange(from=0.0) public float distanceTo(@NonNull android.location.Location); + method @Deprecated public void dump(@NonNull android.util.Printer, @Nullable String); + method @FloatRange(from=0.0) public float getAccuracy(); + method @FloatRange public double getAltitude(); + method @FloatRange(from=0.0, to=360.0, toInclusive=false) public float getBearing(); + method @FloatRange(from=0.0) public float getBearingAccuracyDegrees(); + method @IntRange(from=0) public long getElapsedRealtimeAgeMillis(); + method public long getElapsedRealtimeAgeMillis(@IntRange(from=0) long); + method @IntRange(from=0) public long getElapsedRealtimeMillis(); + method @IntRange(from=0) public long getElapsedRealtimeNanos(); + method @FloatRange(from=0.0) public double getElapsedRealtimeUncertaintyNanos(); + method @Nullable public android.os.Bundle getExtras(); + method @FloatRange(from=-90.0, to=90.0) public double getLatitude(); + method @FloatRange(from=-180.0, to=180.0) public double getLongitude(); + method @FloatRange(from=0.0) public float getMslAltitudeAccuracyMeters(); + method @FloatRange public double getMslAltitudeMeters(); + method @Nullable public String getProvider(); + method @FloatRange(from=0.0) public float getSpeed(); + method @FloatRange(from=0.0) public float getSpeedAccuracyMetersPerSecond(); + method @IntRange(from=0) public long getTime(); + method @FloatRange(from=0.0) public float getVerticalAccuracyMeters(); + method public boolean hasAccuracy(); + method public boolean hasAltitude(); + method public boolean hasBearing(); + method public boolean hasBearingAccuracy(); + method public boolean hasElapsedRealtimeUncertaintyNanos(); + method public boolean hasMslAltitude(); + method public boolean hasMslAltitudeAccuracy(); + method public boolean hasSpeed(); + method public boolean hasSpeedAccuracy(); + method public boolean hasVerticalAccuracy(); + method public boolean isComplete(); + method @Deprecated public boolean isFromMockProvider(); + method public boolean isMock(); + method public void removeAccuracy(); + method public void removeAltitude(); + method public void removeBearing(); + method public void removeBearingAccuracy(); + method public void removeElapsedRealtimeUncertaintyNanos(); + method public void removeMslAltitude(); + method public void removeMslAltitudeAccuracy(); + method public void removeSpeed(); + method public void removeSpeedAccuracy(); + method public void removeVerticalAccuracy(); + method public void reset(); + method public void set(@NonNull android.location.Location); + method public void setAccuracy(@FloatRange(from=0.0) float); + method public void setAltitude(@FloatRange double); + method public void setBearing(@FloatRange(fromInclusive=false, toInclusive=false) float); + method public void setBearingAccuracyDegrees(@FloatRange(from=0.0) float); + method public void setElapsedRealtimeNanos(@IntRange(from=0) long); + method public void setElapsedRealtimeUncertaintyNanos(@FloatRange(from=0.0) double); + method public void setExtras(@Nullable android.os.Bundle); + method public void setLatitude(@FloatRange(from=-90.0, to=90.0) double); + method public void setLongitude(@FloatRange(from=-180.0, to=180.0) double); + method public void setMock(boolean); + method public void setMslAltitudeAccuracyMeters(@FloatRange(from=0.0) float); + method public void setMslAltitudeMeters(@FloatRange double); + method public void setProvider(@Nullable String); + method public void setSpeed(@FloatRange(from=0.0) float); + method public void setSpeedAccuracyMetersPerSecond(@FloatRange(from=0.0) float); + method public void setTime(@IntRange(from=0) long); + method public void setVerticalAccuracyMeters(@FloatRange(from=0.0) float); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FORMAT_DEGREES = 0; // 0x0 + field public static final int FORMAT_MINUTES = 1; // 0x1 + field public static final int FORMAT_SECONDS = 2; // 0x2 + } + +} + +package android.media { + + public class AsyncPlayer { + ctor public AsyncPlayer(String); + method @Deprecated public void play(android.content.Context, android.net.Uri, boolean, int); + method public void play(@NonNull android.content.Context, @NonNull android.net.Uri, boolean, @NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException; + method public void stop(); + } + + public final class AudioAttributes implements android.os.Parcelable { + method public boolean areHapticChannelsMuted(); + method public int describeContents(); + method public int getAllowedCapturePolicy(); + method public int getContentType(); + method public int getFlags(); + method public int getSpatializationBehavior(); + method public int getUsage(); + method public int getVolumeControlStream(); + method public boolean isContentSpatialized(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int ALLOW_CAPTURE_BY_ALL = 1; // 0x1 + field public static final int ALLOW_CAPTURE_BY_NONE = 3; // 0x3 + field public static final int ALLOW_CAPTURE_BY_SYSTEM = 2; // 0x2 + field public static final int CONTENT_TYPE_MOVIE = 3; // 0x3 + field public static final int CONTENT_TYPE_MUSIC = 2; // 0x2 + field public static final int CONTENT_TYPE_SONIFICATION = 4; // 0x4 + field public static final int CONTENT_TYPE_SPEECH = 1; // 0x1 + field public static final int CONTENT_TYPE_UNKNOWN = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_AUDIBILITY_ENFORCED = 1; // 0x1 + field public static final int FLAG_HW_AV_SYNC = 16; // 0x10 + field @Deprecated public static final int FLAG_LOW_LATENCY = 256; // 0x100 + field public static final int SPATIALIZATION_BEHAVIOR_AUTO = 0; // 0x0 + field public static final int SPATIALIZATION_BEHAVIOR_NEVER = 1; // 0x1 + field public static final int USAGE_ALARM = 4; // 0x4 + field public static final int USAGE_ASSISTANCE_ACCESSIBILITY = 11; // 0xb + field public static final int USAGE_ASSISTANCE_NAVIGATION_GUIDANCE = 12; // 0xc + field public static final int USAGE_ASSISTANCE_SONIFICATION = 13; // 0xd + field public static final int USAGE_ASSISTANT = 16; // 0x10 + field public static final int USAGE_GAME = 14; // 0xe + field public static final int USAGE_MEDIA = 1; // 0x1 + field public static final int USAGE_NOTIFICATION = 5; // 0x5 + field @Deprecated public static final int USAGE_NOTIFICATION_COMMUNICATION_DELAYED = 9; // 0x9 + field @Deprecated public static final int USAGE_NOTIFICATION_COMMUNICATION_INSTANT = 8; // 0x8 + field @Deprecated public static final int USAGE_NOTIFICATION_COMMUNICATION_REQUEST = 7; // 0x7 + field public static final int USAGE_NOTIFICATION_EVENT = 10; // 0xa + field public static final int USAGE_NOTIFICATION_RINGTONE = 6; // 0x6 + field public static final int USAGE_UNKNOWN = 0; // 0x0 + field public static final int USAGE_VOICE_COMMUNICATION = 2; // 0x2 + field public static final int USAGE_VOICE_COMMUNICATION_SIGNALLING = 3; // 0x3 + } + + public static class AudioAttributes.Builder { + ctor public AudioAttributes.Builder(); + ctor public AudioAttributes.Builder(android.media.AudioAttributes); + method public android.media.AudioAttributes build(); + method @NonNull public android.media.AudioAttributes.Builder setAllowedCapturePolicy(int); + method public android.media.AudioAttributes.Builder setContentType(int); + method public android.media.AudioAttributes.Builder setFlags(int); + method @NonNull public android.media.AudioAttributes.Builder setHapticChannelsMuted(boolean); + method @NonNull public android.media.AudioAttributes.Builder setIsContentSpatialized(boolean); + method public android.media.AudioAttributes.Builder setLegacyStreamType(int); + method @NonNull public android.media.AudioAttributes.Builder setSpatializationBehavior(int); + method public android.media.AudioAttributes.Builder setUsage(int); + } + + public class AudioDescriptor implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public byte[] getDescriptor(); + method public int getEncapsulationType(); + method public int getStandard(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STANDARD_EDID = 1; // 0x1 + field public static final int STANDARD_NONE = 0; // 0x0 + field public static final int STANDARD_SADB = 2; // 0x2 + field public static final int STANDARD_VSADB = 3; // 0x3 + } + + public abstract class AudioDeviceCallback { + ctor public AudioDeviceCallback(); + method public void onAudioDevicesAdded(android.media.AudioDeviceInfo[]); + method public void onAudioDevicesRemoved(android.media.AudioDeviceInfo[]); + } + + public final class AudioDeviceInfo { + method @NonNull public String getAddress(); + method @NonNull public java.util.List getAudioDescriptors(); + method @NonNull public java.util.List getAudioProfiles(); + method @NonNull public int[] getChannelCounts(); + method @NonNull public int[] getChannelIndexMasks(); + method @NonNull public int[] getChannelMasks(); + method @NonNull public int[] getEncapsulationMetadataTypes(); + method @NonNull public int[] getEncapsulationModes(); + method @NonNull public int[] getEncodings(); + method public int getId(); + method public CharSequence getProductName(); + method @NonNull public int[] getSampleRates(); + method @FlaggedApi("android.media.audio.speaker_layout_api") public int getSpeakerLayoutChannelMask(); + method public int getType(); + method public boolean isSink(); + method public boolean isSource(); + field public static final int TYPE_AUX_LINE = 19; // 0x13 + field public static final int TYPE_BLE_BROADCAST = 30; // 0x1e + field public static final int TYPE_BLE_HEADSET = 26; // 0x1a + field public static final int TYPE_BLE_SPEAKER = 27; // 0x1b + field public static final int TYPE_BLUETOOTH_A2DP = 8; // 0x8 + field public static final int TYPE_BLUETOOTH_SCO = 7; // 0x7 + field public static final int TYPE_BUILTIN_EARPIECE = 1; // 0x1 + field public static final int TYPE_BUILTIN_MIC = 15; // 0xf + field public static final int TYPE_BUILTIN_SPEAKER = 2; // 0x2 + field public static final int TYPE_BUILTIN_SPEAKER_SAFE = 24; // 0x18 + field public static final int TYPE_BUS = 21; // 0x15 + field public static final int TYPE_DOCK = 13; // 0xd + field public static final int TYPE_DOCK_ANALOG = 31; // 0x1f + field public static final int TYPE_FM = 14; // 0xe + field public static final int TYPE_FM_TUNER = 16; // 0x10 + field public static final int TYPE_HDMI = 9; // 0x9 + field public static final int TYPE_HDMI_ARC = 10; // 0xa + field public static final int TYPE_HDMI_EARC = 29; // 0x1d + field public static final int TYPE_HEARING_AID = 23; // 0x17 + field public static final int TYPE_IP = 20; // 0x14 + field public static final int TYPE_LINE_ANALOG = 5; // 0x5 + field public static final int TYPE_LINE_DIGITAL = 6; // 0x6 + field @FlaggedApi("android.media.audio.enable_multichannel_group_device") public static final int TYPE_MULTICHANNEL_GROUP = 32; // 0x20 + field public static final int TYPE_REMOTE_SUBMIX = 25; // 0x19 + field public static final int TYPE_TELEPHONY = 18; // 0x12 + field public static final int TYPE_TV_TUNER = 17; // 0x11 + field public static final int TYPE_UNKNOWN = 0; // 0x0 + field public static final int TYPE_USB_ACCESSORY = 12; // 0xc + field public static final int TYPE_USB_DEVICE = 11; // 0xb + field public static final int TYPE_USB_HEADSET = 22; // 0x16 + field public static final int TYPE_WIRED_HEADPHONES = 4; // 0x4 + field public static final int TYPE_WIRED_HEADSET = 3; // 0x3 + } + + public final class AudioFocusRequest { + method public boolean acceptsDelayedFocusGain(); + method @NonNull public android.media.AudioAttributes getAudioAttributes(); + method public int getFocusGain(); + method public boolean willPauseWhenDucked(); + } + + public static final class AudioFocusRequest.Builder { + ctor public AudioFocusRequest.Builder(int); + ctor public AudioFocusRequest.Builder(@NonNull android.media.AudioFocusRequest); + method public android.media.AudioFocusRequest build(); + method @NonNull public android.media.AudioFocusRequest.Builder setAcceptsDelayedFocusGain(boolean); + method @NonNull public android.media.AudioFocusRequest.Builder setAudioAttributes(@NonNull android.media.AudioAttributes); + method @NonNull public android.media.AudioFocusRequest.Builder setFocusGain(int); + method @NonNull public android.media.AudioFocusRequest.Builder setForceDucking(boolean); + method @NonNull public android.media.AudioFocusRequest.Builder setOnAudioFocusChangeListener(@NonNull android.media.AudioManager.OnAudioFocusChangeListener); + method @NonNull public android.media.AudioFocusRequest.Builder setOnAudioFocusChangeListener(@NonNull android.media.AudioManager.OnAudioFocusChangeListener, @NonNull android.os.Handler); + method @NonNull public android.media.AudioFocusRequest.Builder setWillPauseWhenDucked(boolean); + } + + public final class AudioFormat implements android.os.Parcelable { + method public int describeContents(); + method public int getChannelCount(); + method public int getChannelIndexMask(); + method public int getChannelMask(); + method public int getEncoding(); + method @IntRange(from=1) public int getFrameSizeInBytes(); + method public int getSampleRate(); + method public void writeToParcel(android.os.Parcel, int); + field @Deprecated public static final int CHANNEL_CONFIGURATION_DEFAULT = 1; // 0x1 + field @Deprecated public static final int CHANNEL_CONFIGURATION_INVALID = 0; // 0x0 + field @Deprecated public static final int CHANNEL_CONFIGURATION_MONO = 2; // 0x2 + field @Deprecated public static final int CHANNEL_CONFIGURATION_STEREO = 3; // 0x3 + field public static final int CHANNEL_INVALID = 0; // 0x0 + field public static final int CHANNEL_IN_BACK = 32; // 0x20 + field public static final int CHANNEL_IN_BACK_PROCESSED = 512; // 0x200 + field public static final int CHANNEL_IN_DEFAULT = 1; // 0x1 + field public static final int CHANNEL_IN_FRONT = 16; // 0x10 + field public static final int CHANNEL_IN_FRONT_PROCESSED = 256; // 0x100 + field public static final int CHANNEL_IN_LEFT = 4; // 0x4 + field public static final int CHANNEL_IN_LEFT_PROCESSED = 64; // 0x40 + field public static final int CHANNEL_IN_MONO = 16; // 0x10 + field public static final int CHANNEL_IN_PRESSURE = 1024; // 0x400 + field public static final int CHANNEL_IN_RIGHT = 8; // 0x8 + field public static final int CHANNEL_IN_RIGHT_PROCESSED = 128; // 0x80 + field public static final int CHANNEL_IN_STEREO = 12; // 0xc + field public static final int CHANNEL_IN_VOICE_DNLINK = 32768; // 0x8000 + field public static final int CHANNEL_IN_VOICE_UPLINK = 16384; // 0x4000 + field public static final int CHANNEL_IN_X_AXIS = 2048; // 0x800 + field public static final int CHANNEL_IN_Y_AXIS = 4096; // 0x1000 + field public static final int CHANNEL_IN_Z_AXIS = 8192; // 0x2000 + field public static final int CHANNEL_OUT_5POINT1 = 252; // 0xfc + field public static final int CHANNEL_OUT_5POINT1POINT2 = 3145980; // 0x3000fc + field public static final int CHANNEL_OUT_5POINT1POINT4 = 737532; // 0xb40fc + field public static final int CHANNEL_OUT_6POINT1 = 1276; // 0x4fc + field @Deprecated public static final int CHANNEL_OUT_7POINT1 = 1020; // 0x3fc + field public static final int CHANNEL_OUT_7POINT1POINT2 = 3152124; // 0x3018fc + field public static final int CHANNEL_OUT_7POINT1POINT4 = 743676; // 0xb58fc + field public static final int CHANNEL_OUT_7POINT1_SURROUND = 6396; // 0x18fc + field public static final int CHANNEL_OUT_9POINT1POINT4 = 202070268; // 0xc0b58fc + field public static final int CHANNEL_OUT_9POINT1POINT6 = 205215996; // 0xc3b58fc + field public static final int CHANNEL_OUT_BACK_CENTER = 1024; // 0x400 + field public static final int CHANNEL_OUT_BACK_LEFT = 64; // 0x40 + field public static final int CHANNEL_OUT_BACK_RIGHT = 128; // 0x80 + field public static final int CHANNEL_OUT_BOTTOM_FRONT_CENTER = 8388608; // 0x800000 + field public static final int CHANNEL_OUT_BOTTOM_FRONT_LEFT = 4194304; // 0x400000 + field public static final int CHANNEL_OUT_BOTTOM_FRONT_RIGHT = 16777216; // 0x1000000 + field public static final int CHANNEL_OUT_DEFAULT = 1; // 0x1 + field public static final int CHANNEL_OUT_FRONT_CENTER = 16; // 0x10 + field public static final int CHANNEL_OUT_FRONT_LEFT = 4; // 0x4 + field public static final int CHANNEL_OUT_FRONT_LEFT_OF_CENTER = 256; // 0x100 + field public static final int CHANNEL_OUT_FRONT_RIGHT = 8; // 0x8 + field public static final int CHANNEL_OUT_FRONT_RIGHT_OF_CENTER = 512; // 0x200 + field public static final int CHANNEL_OUT_FRONT_WIDE_LEFT = 67108864; // 0x4000000 + field public static final int CHANNEL_OUT_FRONT_WIDE_RIGHT = 134217728; // 0x8000000 + field public static final int CHANNEL_OUT_LOW_FREQUENCY = 32; // 0x20 + field public static final int CHANNEL_OUT_LOW_FREQUENCY_2 = 33554432; // 0x2000000 + field public static final int CHANNEL_OUT_MONO = 4; // 0x4 + field public static final int CHANNEL_OUT_QUAD = 204; // 0xcc + field public static final int CHANNEL_OUT_SIDE_LEFT = 2048; // 0x800 + field public static final int CHANNEL_OUT_SIDE_RIGHT = 4096; // 0x1000 + field public static final int CHANNEL_OUT_STEREO = 12; // 0xc + field public static final int CHANNEL_OUT_SURROUND = 1052; // 0x41c + field public static final int CHANNEL_OUT_TOP_BACK_CENTER = 262144; // 0x40000 + field public static final int CHANNEL_OUT_TOP_BACK_LEFT = 131072; // 0x20000 + field public static final int CHANNEL_OUT_TOP_BACK_RIGHT = 524288; // 0x80000 + field public static final int CHANNEL_OUT_TOP_CENTER = 8192; // 0x2000 + field public static final int CHANNEL_OUT_TOP_FRONT_CENTER = 32768; // 0x8000 + field public static final int CHANNEL_OUT_TOP_FRONT_LEFT = 16384; // 0x4000 + field public static final int CHANNEL_OUT_TOP_FRONT_RIGHT = 65536; // 0x10000 + field public static final int CHANNEL_OUT_TOP_SIDE_LEFT = 1048576; // 0x100000 + field public static final int CHANNEL_OUT_TOP_SIDE_RIGHT = 2097152; // 0x200000 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ENCODING_AAC_ELD = 15; // 0xf + field public static final int ENCODING_AAC_HE_V1 = 11; // 0xb + field public static final int ENCODING_AAC_HE_V2 = 12; // 0xc + field public static final int ENCODING_AAC_LC = 10; // 0xa + field public static final int ENCODING_AAC_XHE = 16; // 0x10 + field public static final int ENCODING_AC3 = 5; // 0x5 + field public static final int ENCODING_AC4 = 17; // 0x11 + field @FlaggedApi("android.media.audio.dolby_ac4_level4_encoding_api") public static final int ENCODING_AC4_L4 = 32; // 0x20 + field public static final int ENCODING_DEFAULT = 1; // 0x1 + field public static final int ENCODING_DOLBY_MAT = 19; // 0x13 + field public static final int ENCODING_DOLBY_TRUEHD = 14; // 0xe + field public static final int ENCODING_DRA = 28; // 0x1c + field public static final int ENCODING_DSD = 31; // 0x1f + field public static final int ENCODING_DTS = 7; // 0x7 + field public static final int ENCODING_DTS_HD = 8; // 0x8 + field public static final int ENCODING_DTS_HD_MA = 29; // 0x1d + field @Deprecated public static final int ENCODING_DTS_UHD = 27; // 0x1b + field public static final int ENCODING_DTS_UHD_P1 = 27; // 0x1b + field public static final int ENCODING_DTS_UHD_P2 = 30; // 0x1e + field public static final int ENCODING_E_AC3 = 6; // 0x6 + field public static final int ENCODING_E_AC3_JOC = 18; // 0x12 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_ENHANCED_PROFILE_AAC = 42; // 0x2a + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_ENHANCED_PROFILE_FLAC = 43; // 0x2b + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_ENHANCED_PROFILE_OPUS = 41; // 0x29 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_ENHANCED_PROFILE_PCM = 44; // 0x2c + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_PROFILE_AAC = 38; // 0x26 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_PROFILE_FLAC = 39; // 0x27 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_PROFILE_OPUS = 37; // 0x25 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_BASE_PROFILE_PCM = 40; // 0x28 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_SIMPLE_PROFILE_AAC = 34; // 0x22 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_SIMPLE_PROFILE_FLAC = 35; // 0x23 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_SIMPLE_PROFILE_OPUS = 33; // 0x21 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int ENCODING_IAMF_SIMPLE_PROFILE_PCM = 36; // 0x24 + field public static final int ENCODING_IEC61937 = 13; // 0xd + field public static final int ENCODING_INVALID = 0; // 0x0 + field public static final int ENCODING_MP3 = 9; // 0x9 + field public static final int ENCODING_MPEGH_BL_L3 = 23; // 0x17 + field public static final int ENCODING_MPEGH_BL_L4 = 24; // 0x18 + field public static final int ENCODING_MPEGH_LC_L3 = 25; // 0x19 + field public static final int ENCODING_MPEGH_LC_L4 = 26; // 0x1a + field public static final int ENCODING_OPUS = 20; // 0x14 + field public static final int ENCODING_PCM_16BIT = 2; // 0x2 + field public static final int ENCODING_PCM_24BIT_PACKED = 21; // 0x15 + field public static final int ENCODING_PCM_32BIT = 22; // 0x16 + field public static final int ENCODING_PCM_8BIT = 3; // 0x3 + field public static final int ENCODING_PCM_FLOAT = 4; // 0x4 + field public static final int SAMPLE_RATE_UNSPECIFIED = 0; // 0x0 + } + + public static class AudioFormat.Builder { + ctor public AudioFormat.Builder(); + ctor public AudioFormat.Builder(android.media.AudioFormat); + method public android.media.AudioFormat build(); + method @NonNull public android.media.AudioFormat.Builder setChannelIndexMask(int); + method @NonNull public android.media.AudioFormat.Builder setChannelMask(int); + method public android.media.AudioFormat.Builder setEncoding(int) throws java.lang.IllegalArgumentException; + method public android.media.AudioFormat.Builder setSampleRate(int) throws java.lang.IllegalArgumentException; + } + + public class AudioManager { + method @Deprecated public int abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener); + method public int abandonAudioFocusRequest(@NonNull android.media.AudioFocusRequest); + method public void addOnCommunicationDeviceChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnCommunicationDeviceChangedListener); + method public void addOnModeChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnModeChangedListener); + method public void addOnPreferredMixerAttributesChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.OnPreferredMixerAttributesChangedListener); + method public void adjustStreamVolume(int, int, int); + method public void adjustSuggestedStreamVolume(int, int, int); + method public void adjustVolume(int, int); + method public void adjustVolumeGroupVolume(int, int, int); + method public void clearCommunicationDevice(); + method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS) public boolean clearPreferredMixerAttributes(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioDeviceInfo); + method public void dispatchMediaKeyEvent(android.view.KeyEvent); + method public int generateAudioSessionId(); + method @NonNull public java.util.List getActivePlaybackConfigurations(); + method @NonNull public java.util.List getActiveRecordingConfigurations(); + method public int getAllowedCapturePolicy(); + method @NonNull public java.util.List getAudioDevicesForAttributes(@NonNull android.media.AudioAttributes); + method public int getAudioHwSyncForSession(int); + method @NonNull public java.util.List getAvailableCommunicationDevices(); + method @Nullable public android.media.AudioDeviceInfo getCommunicationDevice(); + method public android.media.AudioDeviceInfo[] getDevices(int); + method public static int getDirectPlaybackSupport(@NonNull android.media.AudioFormat, @NonNull android.media.AudioAttributes); + method @NonNull public java.util.List getDirectProfilesForAttributes(@NonNull android.media.AudioAttributes); + method public int getEncodedSurroundMode(); + method public java.util.List getMicrophones() throws java.io.IOException; + method public int getMode(); + method public String getParameters(String); + method @Deprecated public static int getPlaybackOffloadSupport(@NonNull android.media.AudioFormat, @NonNull android.media.AudioAttributes); + method @Nullable public android.media.AudioMixerAttributes getPreferredMixerAttributes(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioDeviceInfo); + method public String getProperty(String); + method public int getRingerMode(); + method @Deprecated public int getRouting(int); + method @NonNull public android.media.Spatializer getSpatializer(); + method public int getStreamMaxVolume(int); + method public int getStreamMinVolume(int); + method public int getStreamVolume(int); + method public float getStreamVolumeDb(int, int, int); + method @FlaggedApi("android.media.audio.supported_device_types_api") @NonNull public java.util.Set getSupportedDeviceTypes(int); + method @NonNull public java.util.List getSupportedMixerAttributes(@NonNull android.media.AudioDeviceInfo); + method @Deprecated public int getVibrateSetting(int); + method public int getVolumeGroupIdForAttributes(@NonNull android.media.AudioAttributes); + method @Deprecated public boolean isBluetoothA2dpOn(); + method public boolean isBluetoothScoAvailableOffCall(); + method @Deprecated public boolean isBluetoothScoOn(); + method public boolean isCallScreeningModeSupported(); + method public static boolean isHapticPlaybackSupported(); + method public boolean isMicrophoneMute(); + method public boolean isMusicActive(); + method public static boolean isOffloadedPlaybackSupported(@NonNull android.media.AudioFormat, @NonNull android.media.AudioAttributes); + method public boolean isRampingRingerEnabled(); + method @Deprecated public boolean isSpeakerphoneOn(); + method public boolean isStreamMute(int); + method public boolean isSurroundFormatEnabled(int); + method public boolean isVolumeFixed(); + method public boolean isVolumeGroupMuted(int); + method @Deprecated public boolean isWiredHeadsetOn(); + method public void loadSoundEffects(); + method public void playSoundEffect(int); + method public void playSoundEffect(int, float); + method public void registerAudioDeviceCallback(android.media.AudioDeviceCallback, @Nullable android.os.Handler); + method public void registerAudioPlaybackCallback(@NonNull android.media.AudioManager.AudioPlaybackCallback, @Nullable android.os.Handler); + method public void registerAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback, @Nullable android.os.Handler); + method @Deprecated public void registerMediaButtonEventReceiver(android.content.ComponentName); + method @Deprecated public void registerMediaButtonEventReceiver(android.app.PendingIntent); + method @Deprecated public void registerRemoteControlClient(android.media.RemoteControlClient); + method @Deprecated public boolean registerRemoteController(android.media.RemoteController); + method public void removeOnCommunicationDeviceChangedListener(@NonNull android.media.AudioManager.OnCommunicationDeviceChangedListener); + method public void removeOnModeChangedListener(@NonNull android.media.AudioManager.OnModeChangedListener); + method public void removeOnPreferredMixerAttributesChangedListener(@NonNull android.media.AudioManager.OnPreferredMixerAttributesChangedListener); + method @Deprecated public int requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, int, int); + method public int requestAudioFocus(@NonNull android.media.AudioFocusRequest); + method public void setAllowedCapturePolicy(int); + method @Deprecated public void setBluetoothA2dpOn(boolean); + method public void setBluetoothScoOn(boolean); + method public boolean setCommunicationDevice(@NonNull android.media.AudioDeviceInfo); + method @RequiresPermission(android.Manifest.permission.WRITE_SETTINGS) public boolean setEncodedSurroundMode(int); + method public void setMicrophoneMute(boolean); + method public void setMode(int); + method public void setParameters(String); + method @RequiresPermission(android.Manifest.permission.MODIFY_AUDIO_SETTINGS) public boolean setPreferredMixerAttributes(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioDeviceInfo, @NonNull android.media.AudioMixerAttributes); + method public void setRingerMode(int); + method @Deprecated public void setRouting(int, int, int); + method @Deprecated public void setSpeakerphoneOn(boolean); + method @Deprecated public void setStreamMute(int, boolean); + method @Deprecated public void setStreamSolo(int, boolean); + method public void setStreamVolume(int, int, int); + method @RequiresPermission(android.Manifest.permission.WRITE_SETTINGS) public boolean setSurroundFormatEnabled(int, boolean); + method @Deprecated public void setVibrateSetting(int, int); + method @Deprecated public void setWiredHeadsetOn(boolean); + method @Deprecated public boolean shouldVibrate(int); + method @Deprecated public void startBluetoothSco(); + method @Deprecated public void stopBluetoothSco(); + method public void unloadSoundEffects(); + method public void unregisterAudioDeviceCallback(android.media.AudioDeviceCallback); + method public void unregisterAudioPlaybackCallback(@NonNull android.media.AudioManager.AudioPlaybackCallback); + method public void unregisterAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback); + method @Deprecated public void unregisterMediaButtonEventReceiver(android.content.ComponentName); + method @Deprecated public void unregisterMediaButtonEventReceiver(android.app.PendingIntent); + method @Deprecated public void unregisterRemoteControlClient(android.media.RemoteControlClient); + method @Deprecated public void unregisterRemoteController(android.media.RemoteController); + field public static final String ACTION_AUDIO_BECOMING_NOISY = "android.media.AUDIO_BECOMING_NOISY"; + field public static final String ACTION_HDMI_AUDIO_PLUG = "android.media.action.HDMI_AUDIO_PLUG"; + field public static final String ACTION_HEADSET_PLUG = "android.intent.action.HEADSET_PLUG"; + field public static final String ACTION_MICROPHONE_MUTE_CHANGED = "android.media.action.MICROPHONE_MUTE_CHANGED"; + field @Deprecated public static final String ACTION_SCO_AUDIO_STATE_CHANGED = "android.media.SCO_AUDIO_STATE_CHANGED"; + field public static final String ACTION_SCO_AUDIO_STATE_UPDATED = "android.media.ACTION_SCO_AUDIO_STATE_UPDATED"; + field public static final String ACTION_SPEAKERPHONE_STATE_CHANGED = "android.media.action.SPEAKERPHONE_STATE_CHANGED"; + field public static final int ADJUST_LOWER = -1; // 0xffffffff + field public static final int ADJUST_MUTE = -100; // 0xffffff9c + field public static final int ADJUST_RAISE = 1; // 0x1 + field public static final int ADJUST_SAME = 0; // 0x0 + field public static final int ADJUST_TOGGLE_MUTE = 101; // 0x65 + field public static final int ADJUST_UNMUTE = 100; // 0x64 + field public static final int AUDIOFOCUS_GAIN = 1; // 0x1 + field public static final int AUDIOFOCUS_GAIN_TRANSIENT = 2; // 0x2 + field public static final int AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE = 4; // 0x4 + field public static final int AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK = 3; // 0x3 + field public static final int AUDIOFOCUS_LOSS = -1; // 0xffffffff + field public static final int AUDIOFOCUS_LOSS_TRANSIENT = -2; // 0xfffffffe + field public static final int AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK = -3; // 0xfffffffd + field public static final int AUDIOFOCUS_NONE = 0; // 0x0 + field public static final int AUDIOFOCUS_REQUEST_DELAYED = 2; // 0x2 + field public static final int AUDIOFOCUS_REQUEST_FAILED = 0; // 0x0 + field public static final int AUDIOFOCUS_REQUEST_GRANTED = 1; // 0x1 + field public static final int AUDIO_SESSION_ID_GENERATE = 0; // 0x0 + field public static final int DIRECT_PLAYBACK_BITSTREAM_SUPPORTED = 4; // 0x4 + field public static final int DIRECT_PLAYBACK_NOT_SUPPORTED = 0; // 0x0 + field public static final int DIRECT_PLAYBACK_OFFLOAD_GAPLESS_SUPPORTED = 3; // 0x3 + field public static final int DIRECT_PLAYBACK_OFFLOAD_SUPPORTED = 1; // 0x1 + field public static final int ENCODED_SURROUND_OUTPUT_ALWAYS = 2; // 0x2 + field public static final int ENCODED_SURROUND_OUTPUT_AUTO = 0; // 0x0 + field public static final int ENCODED_SURROUND_OUTPUT_MANUAL = 3; // 0x3 + field public static final int ENCODED_SURROUND_OUTPUT_NEVER = 1; // 0x1 + field public static final int ENCODED_SURROUND_OUTPUT_UNKNOWN = -1; // 0xffffffff + field public static final int ERROR = -1; // 0xffffffff + field public static final int ERROR_DEAD_OBJECT = -6; // 0xfffffffa + field public static final String EXTRA_AUDIO_PLUG_STATE = "android.media.extra.AUDIO_PLUG_STATE"; + field public static final String EXTRA_ENCODINGS = "android.media.extra.ENCODINGS"; + field public static final String EXTRA_MAX_CHANNEL_COUNT = "android.media.extra.MAX_CHANNEL_COUNT"; + field public static final String EXTRA_RINGER_MODE = "android.media.EXTRA_RINGER_MODE"; + field public static final String EXTRA_SCO_AUDIO_PREVIOUS_STATE = "android.media.extra.SCO_AUDIO_PREVIOUS_STATE"; + field public static final String EXTRA_SCO_AUDIO_STATE = "android.media.extra.SCO_AUDIO_STATE"; + field @Deprecated public static final String EXTRA_VIBRATE_SETTING = "android.media.EXTRA_VIBRATE_SETTING"; + field @Deprecated public static final String EXTRA_VIBRATE_TYPE = "android.media.EXTRA_VIBRATE_TYPE"; + field public static final int FLAG_ALLOW_RINGER_MODES = 2; // 0x2 + field public static final int FLAG_PLAY_SOUND = 4; // 0x4 + field public static final int FLAG_REMOVE_SOUND_AND_VIBRATE = 8; // 0x8 + field public static final int FLAG_SHOW_UI = 1; // 0x1 + field public static final int FLAG_VIBRATE = 16; // 0x10 + field public static final int FX_BACK = 10; // 0xa + field public static final int FX_FOCUS_NAVIGATION_DOWN = 2; // 0x2 + field public static final int FX_FOCUS_NAVIGATION_LEFT = 3; // 0x3 + field public static final int FX_FOCUS_NAVIGATION_RIGHT = 4; // 0x4 + field public static final int FX_FOCUS_NAVIGATION_UP = 1; // 0x1 + field public static final int FX_KEYPRESS_DELETE = 7; // 0x7 + field public static final int FX_KEYPRESS_INVALID = 9; // 0x9 + field public static final int FX_KEYPRESS_RETURN = 8; // 0x8 + field public static final int FX_KEYPRESS_SPACEBAR = 6; // 0x6 + field public static final int FX_KEYPRESS_STANDARD = 5; // 0x5 + field public static final int FX_KEY_CLICK = 0; // 0x0 + field public static final int GET_DEVICES_ALL = 3; // 0x3 + field public static final int GET_DEVICES_INPUTS = 1; // 0x1 + field public static final int GET_DEVICES_OUTPUTS = 2; // 0x2 + field public static final int MODE_CALL_REDIRECT = 5; // 0x5 + field public static final int MODE_CALL_SCREENING = 4; // 0x4 + field public static final int MODE_COMMUNICATION_REDIRECT = 6; // 0x6 + field public static final int MODE_CURRENT = -1; // 0xffffffff + field public static final int MODE_INVALID = -2; // 0xfffffffe + field public static final int MODE_IN_CALL = 2; // 0x2 + field public static final int MODE_IN_COMMUNICATION = 3; // 0x3 + field public static final int MODE_NORMAL = 0; // 0x0 + field public static final int MODE_RINGTONE = 1; // 0x1 + field @Deprecated public static final int NUM_STREAMS = 5; // 0x5 + field public static final int PLAYBACK_OFFLOAD_GAPLESS_SUPPORTED = 2; // 0x2 + field public static final int PLAYBACK_OFFLOAD_NOT_SUPPORTED = 0; // 0x0 + field public static final int PLAYBACK_OFFLOAD_SUPPORTED = 1; // 0x1 + field public static final String PROPERTY_OUTPUT_FRAMES_PER_BUFFER = "android.media.property.OUTPUT_FRAMES_PER_BUFFER"; + field public static final String PROPERTY_OUTPUT_SAMPLE_RATE = "android.media.property.OUTPUT_SAMPLE_RATE"; + field public static final String PROPERTY_SUPPORT_AUDIO_SOURCE_UNPROCESSED = "android.media.property.SUPPORT_AUDIO_SOURCE_UNPROCESSED"; + field public static final String PROPERTY_SUPPORT_MIC_NEAR_ULTRASOUND = "android.media.property.SUPPORT_MIC_NEAR_ULTRASOUND"; + field public static final String PROPERTY_SUPPORT_SPEAKER_NEAR_ULTRASOUND = "android.media.property.SUPPORT_SPEAKER_NEAR_ULTRASOUND"; + field public static final String RINGER_MODE_CHANGED_ACTION = "android.media.RINGER_MODE_CHANGED"; + field public static final int RINGER_MODE_NORMAL = 2; // 0x2 + field public static final int RINGER_MODE_SILENT = 0; // 0x0 + field public static final int RINGER_MODE_VIBRATE = 1; // 0x1 + field @Deprecated public static final int ROUTE_ALL = -1; // 0xffffffff + field @Deprecated public static final int ROUTE_BLUETOOTH = 4; // 0x4 + field @Deprecated public static final int ROUTE_BLUETOOTH_A2DP = 16; // 0x10 + field @Deprecated public static final int ROUTE_BLUETOOTH_SCO = 4; // 0x4 + field @Deprecated public static final int ROUTE_EARPIECE = 1; // 0x1 + field @Deprecated public static final int ROUTE_HEADSET = 8; // 0x8 + field @Deprecated public static final int ROUTE_SPEAKER = 2; // 0x2 + field public static final int SCO_AUDIO_STATE_CONNECTED = 1; // 0x1 + field public static final int SCO_AUDIO_STATE_CONNECTING = 2; // 0x2 + field public static final int SCO_AUDIO_STATE_DISCONNECTED = 0; // 0x0 + field public static final int SCO_AUDIO_STATE_ERROR = -1; // 0xffffffff + field public static final int STREAM_ACCESSIBILITY = 10; // 0xa + field public static final int STREAM_ALARM = 4; // 0x4 + field public static final int STREAM_DTMF = 8; // 0x8 + field public static final int STREAM_MUSIC = 3; // 0x3 + field public static final int STREAM_NOTIFICATION = 5; // 0x5 + field public static final int STREAM_RING = 2; // 0x2 + field public static final int STREAM_SYSTEM = 1; // 0x1 + field public static final int STREAM_VOICE_CALL = 0; // 0x0 + field public static final int USE_DEFAULT_STREAM_TYPE = -2147483648; // 0x80000000 + field @Deprecated public static final String VIBRATE_SETTING_CHANGED_ACTION = "android.media.VIBRATE_SETTING_CHANGED"; + field @Deprecated public static final int VIBRATE_SETTING_OFF = 0; // 0x0 + field @Deprecated public static final int VIBRATE_SETTING_ON = 1; // 0x1 + field @Deprecated public static final int VIBRATE_SETTING_ONLY_SILENT = 2; // 0x2 + field @Deprecated public static final int VIBRATE_TYPE_NOTIFICATION = 1; // 0x1 + field @Deprecated public static final int VIBRATE_TYPE_RINGER = 0; // 0x0 + } + + public abstract static class AudioManager.AudioPlaybackCallback { + ctor public AudioManager.AudioPlaybackCallback(); + method public void onPlaybackConfigChanged(java.util.List); + } + + public abstract static class AudioManager.AudioRecordingCallback { + ctor public AudioManager.AudioRecordingCallback(); + method public void onRecordingConfigChanged(java.util.List); + } + + public static interface AudioManager.OnAudioFocusChangeListener { + method public void onAudioFocusChange(int); + } + + public static interface AudioManager.OnCommunicationDeviceChangedListener { + method public void onCommunicationDeviceChanged(@Nullable android.media.AudioDeviceInfo); + } + + public static interface AudioManager.OnModeChangedListener { + method public void onModeChanged(int); + } + + public static interface AudioManager.OnPreferredMixerAttributesChangedListener { + method public void onPreferredMixerAttributesChanged(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioDeviceInfo, @Nullable android.media.AudioMixerAttributes); + } + + public final class AudioMetadata { + method @NonNull public static android.media.AudioMetadataMap createMap(); + } + + public static class AudioMetadata.Format { + field @NonNull public static final android.media.AudioMetadata.Key KEY_ATMOS_PRESENT; + field @NonNull public static final android.media.AudioMetadata.Key KEY_AUDIO_ENCODING; + field @NonNull public static final android.media.AudioMetadata.Key KEY_BIT_RATE; + field @NonNull public static final android.media.AudioMetadata.Key KEY_BIT_WIDTH; + field @NonNull public static final android.media.AudioMetadata.Key KEY_CHANNEL_MASK; + field @NonNull public static final android.media.AudioMetadata.Key KEY_MIME; + field @NonNull public static final android.media.AudioMetadata.Key KEY_PRESENTATION_CONTENT_CLASSIFIER; + field @NonNull public static final android.media.AudioMetadata.Key KEY_PRESENTATION_ID; + field @NonNull public static final android.media.AudioMetadata.Key KEY_PRESENTATION_LANGUAGE; + field @NonNull public static final android.media.AudioMetadata.Key KEY_PROGRAM_ID; + field @NonNull public static final android.media.AudioMetadata.Key KEY_SAMPLE_RATE; + } + + public static interface AudioMetadata.Key { + method @NonNull public String getName(); + method @NonNull public Class getValueClass(); + } + + public interface AudioMetadataMap extends android.media.AudioMetadataReadMap { + method @Nullable public T remove(@NonNull android.media.AudioMetadata.Key); + method @Nullable public T set(@NonNull android.media.AudioMetadata.Key, @NonNull T); + } + + public interface AudioMetadataReadMap { + method public boolean containsKey(@NonNull android.media.AudioMetadata.Key); + method @NonNull public android.media.AudioMetadataMap dup(); + method @Nullable public T get(@NonNull android.media.AudioMetadata.Key); + method @IntRange(from=0) public int size(); + } + + public final class AudioMixerAttributes implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.media.AudioFormat getFormat(); + method public int getMixerBehavior(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int MIXER_BEHAVIOR_BIT_PERFECT = 1; // 0x1 + field public static final int MIXER_BEHAVIOR_DEFAULT = 0; // 0x0 + } + + public static final class AudioMixerAttributes.Builder { + ctor public AudioMixerAttributes.Builder(@NonNull android.media.AudioFormat); + method @NonNull public android.media.AudioMixerAttributes build(); + method @NonNull public android.media.AudioMixerAttributes.Builder setMixerBehavior(int); + } + + public final class AudioPlaybackCaptureConfiguration { + method @NonNull public int[] getExcludeUids(); + method @NonNull public int[] getExcludeUsages(); + method @NonNull public int[] getMatchingUids(); + method @NonNull public int[] getMatchingUsages(); + method @NonNull public android.media.projection.MediaProjection getMediaProjection(); + } + + public static final class AudioPlaybackCaptureConfiguration.Builder { + ctor public AudioPlaybackCaptureConfiguration.Builder(@NonNull android.media.projection.MediaProjection); + method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder addMatchingUid(int); + method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder addMatchingUsage(int); + method @NonNull public android.media.AudioPlaybackCaptureConfiguration build(); + method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder excludeUid(int); + method @NonNull public android.media.AudioPlaybackCaptureConfiguration.Builder excludeUsage(int); + } + + public final class AudioPlaybackConfiguration implements android.os.Parcelable { + method public int describeContents(); + method public android.media.AudioAttributes getAudioAttributes(); + method @Deprecated @FlaggedApi("android.media.audio.routed_device_ids") @Nullable public android.media.AudioDeviceInfo getAudioDeviceInfo(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class AudioPresentation implements android.os.Parcelable { + method public int describeContents(); + method public java.util.Map getLabels(); + method public java.util.Locale getLocale(); + method public int getMasteringIndication(); + method public int getPresentationId(); + method public int getProgramId(); + method public boolean hasAudioDescription(); + method public boolean hasDialogueEnhancement(); + method public boolean hasSpokenSubtitles(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CONTENT_COMMENTARY = 5; // 0x5 + field public static final int CONTENT_DIALOG = 4; // 0x4 + field public static final int CONTENT_EMERGENCY = 6; // 0x6 + field public static final int CONTENT_HEARING_IMPAIRED = 3; // 0x3 + field public static final int CONTENT_MAIN = 0; // 0x0 + field public static final int CONTENT_MUSIC_AND_EFFECTS = 1; // 0x1 + field public static final int CONTENT_UNKNOWN = -1; // 0xffffffff + field public static final int CONTENT_VISUALLY_IMPAIRED = 2; // 0x2 + field public static final int CONTENT_VOICEOVER = 7; // 0x7 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int MASTERED_FOR_3D = 3; // 0x3 + field public static final int MASTERED_FOR_HEADPHONE = 4; // 0x4 + field public static final int MASTERED_FOR_STEREO = 1; // 0x1 + field public static final int MASTERED_FOR_SURROUND = 2; // 0x2 + field public static final int MASTERING_NOT_INDICATED = 0; // 0x0 + field public static final int PRESENTATION_ID_UNKNOWN = -1; // 0xffffffff + field public static final int PROGRAM_ID_UNKNOWN = -1; // 0xffffffff + } + + public static final class AudioPresentation.Builder { + ctor public AudioPresentation.Builder(int); + method @NonNull public android.media.AudioPresentation build(); + method @NonNull public android.media.AudioPresentation.Builder setHasAudioDescription(boolean); + method @NonNull public android.media.AudioPresentation.Builder setHasDialogueEnhancement(boolean); + method @NonNull public android.media.AudioPresentation.Builder setHasSpokenSubtitles(boolean); + method @NonNull public android.media.AudioPresentation.Builder setLabels(@NonNull java.util.Map); + method @NonNull public android.media.AudioPresentation.Builder setLocale(@NonNull android.icu.util.ULocale); + method @NonNull public android.media.AudioPresentation.Builder setMasteringIndication(int); + method @NonNull public android.media.AudioPresentation.Builder setProgramId(int); + } + + public class AudioProfile implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public int[] getChannelIndexMasks(); + method @NonNull public int[] getChannelMasks(); + method public int getEncapsulationType(); + method public int getFormat(); + method @NonNull public int[] getSampleRates(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int AUDIO_ENCAPSULATION_TYPE_IEC61937 = 1; // 0x1 + field public static final int AUDIO_ENCAPSULATION_TYPE_NONE = 0; // 0x0 + field public static final int AUDIO_ENCAPSULATION_TYPE_PCM = 2; // 0x2 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class AudioRecord implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection { + ctor @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public AudioRecord(int, int, int, int, int) throws java.lang.IllegalArgumentException; + method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); + method @Deprecated public void addOnRoutingChangedListener(android.media.AudioRecord.OnRoutingChangedListener, android.os.Handler); + method protected void finalize(); + method public java.util.List getActiveMicrophones() throws java.io.IOException; + method @Nullable public android.media.AudioRecordingConfiguration getActiveRecordingConfiguration(); + method public int getAudioFormat(); + method public int getAudioSessionId(); + method public int getAudioSource(); + method public int getBufferSizeInFrames(); + method public int getChannelConfiguration(); + method public int getChannelCount(); + method @NonNull public android.media.AudioFormat getFormat(); + method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); + method public android.os.PersistableBundle getMetrics(); + method public static int getMinBufferSize(int, int, int); + method public int getNotificationMarkerPosition(); + method public int getPositionNotificationPeriod(); + method public android.media.AudioDeviceInfo getPreferredDevice(); + method public int getRecordingState(); + method public android.media.AudioDeviceInfo getRoutedDevice(); + method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public java.util.List getRoutedDevices(); + method public int getSampleRate(); + method public int getState(); + method public int getTimestamp(@NonNull android.media.AudioTimestamp, int); + method public boolean isPrivacySensitive(); + method public int read(@NonNull byte[], int, int); + method public int read(@NonNull byte[], int, int, int); + method public int read(@NonNull short[], int, int); + method public int read(@NonNull short[], int, int, int); + method public int read(@NonNull float[], int, int, int); + method public int read(@NonNull java.nio.ByteBuffer, int); + method public int read(@NonNull java.nio.ByteBuffer, int, int); + method public void registerAudioRecordingCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioRecordingCallback); + method public void release(); + method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); + method @Deprecated public void removeOnRoutingChangedListener(android.media.AudioRecord.OnRoutingChangedListener); + method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); + method public int setNotificationMarkerPosition(int); + method public int setPositionNotificationPeriod(int); + method public boolean setPreferredDevice(android.media.AudioDeviceInfo); + method public boolean setPreferredMicrophoneDirection(int); + method public boolean setPreferredMicrophoneFieldDimension(@FloatRange(from=-1.0, to=1.0) float); + method public void setRecordPositionUpdateListener(android.media.AudioRecord.OnRecordPositionUpdateListener); + method public void setRecordPositionUpdateListener(android.media.AudioRecord.OnRecordPositionUpdateListener, android.os.Handler); + method public void startRecording() throws java.lang.IllegalStateException; + method public void startRecording(android.media.MediaSyncEvent) throws java.lang.IllegalStateException; + method public void stop() throws java.lang.IllegalStateException; + method public void unregisterAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback); + field public static final int ERROR = -1; // 0xffffffff + field public static final int ERROR_BAD_VALUE = -2; // 0xfffffffe + field public static final int ERROR_DEAD_OBJECT = -6; // 0xfffffffa + field public static final int ERROR_INVALID_OPERATION = -3; // 0xfffffffd + field public static final int READ_BLOCKING = 0; // 0x0 + field public static final int READ_NON_BLOCKING = 1; // 0x1 + field public static final int RECORDSTATE_RECORDING = 3; // 0x3 + field public static final int RECORDSTATE_STOPPED = 1; // 0x1 + field public static final int STATE_INITIALIZED = 1; // 0x1 + field public static final int STATE_UNINITIALIZED = 0; // 0x0 + field public static final int SUCCESS = 0; // 0x0 + } + + public static class AudioRecord.Builder { + ctor public AudioRecord.Builder(); + method @RequiresPermission(android.Manifest.permission.RECORD_AUDIO) public android.media.AudioRecord build() throws java.lang.UnsupportedOperationException; + method public android.media.AudioRecord.Builder setAudioFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException; + method @NonNull public android.media.AudioRecord.Builder setAudioPlaybackCaptureConfig(@NonNull android.media.AudioPlaybackCaptureConfiguration); + method public android.media.AudioRecord.Builder setAudioSource(int) throws java.lang.IllegalArgumentException; + method public android.media.AudioRecord.Builder setBufferSizeInBytes(int) throws java.lang.IllegalArgumentException; + method @NonNull public android.media.AudioRecord.Builder setContext(@NonNull android.content.Context); + method @NonNull public android.media.AudioRecord.Builder setPrivacySensitive(boolean); + } + + public static final class AudioRecord.MetricsConstants { + field public static final String CHANNELS = "android.media.audiorecord.channels"; + field public static final String ENCODING = "android.media.audiorecord.encoding"; + field @Deprecated public static final String LATENCY = "android.media.audiorecord.latency"; + field public static final String SAMPLERATE = "android.media.audiorecord.samplerate"; + field public static final String SOURCE = "android.media.audiorecord.source"; + } + + public static interface AudioRecord.OnRecordPositionUpdateListener { + method public void onMarkerReached(android.media.AudioRecord); + method public void onPeriodicNotification(android.media.AudioRecord); + } + + @Deprecated public static interface AudioRecord.OnRoutingChangedListener extends android.media.AudioRouting.OnRoutingChangedListener { + method @Deprecated public void onRoutingChanged(android.media.AudioRecord); + method @Deprecated public default void onRoutingChanged(android.media.AudioRouting); + } + + public final class AudioRecordingConfiguration implements android.os.Parcelable { + method public int describeContents(); + method public android.media.AudioDeviceInfo getAudioDevice(); + method public int getAudioSource(); + method public int getClientAudioSessionId(); + method public int getClientAudioSource(); + method @NonNull public java.util.List getClientEffects(); + method public android.media.AudioFormat getClientFormat(); + method @NonNull public java.util.List getEffects(); + method public android.media.AudioFormat getFormat(); + method public boolean isClientSilenced(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface AudioRecordingMonitor { + method @Nullable public android.media.AudioRecordingConfiguration getActiveRecordingConfiguration(); + method public void registerAudioRecordingCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioRecordingCallback); + method public void unregisterAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback); + } + + public interface AudioRouting { + method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); + method public android.media.AudioDeviceInfo getPreferredDevice(); + method public android.media.AudioDeviceInfo getRoutedDevice(); + method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public default java.util.List getRoutedDevices(); + method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); + method public boolean setPreferredDevice(android.media.AudioDeviceInfo); + } + + public static interface AudioRouting.OnRoutingChangedListener { + method public void onRoutingChanged(android.media.AudioRouting); + } + + public final class AudioTimestamp implements android.os.Parcelable { + ctor public AudioTimestamp(); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TIMEBASE_BOOTTIME = 1; // 0x1 + field public static final int TIMEBASE_MONOTONIC = 0; // 0x0 + field public long framePosition; + field public long nanoTime; + } + + public class AudioTrack implements android.media.AudioRouting android.media.VolumeAutomation { + ctor @Deprecated public AudioTrack(int, int, int, int, int, int) throws java.lang.IllegalArgumentException; + ctor @Deprecated public AudioTrack(int, int, int, int, int, int, int) throws java.lang.IllegalArgumentException; + ctor public AudioTrack(android.media.AudioAttributes, android.media.AudioFormat, int, int, int) throws java.lang.IllegalArgumentException; + method public void addOnCodecFormatChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioTrack.OnCodecFormatChangedListener); + method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); + method @Deprecated public void addOnRoutingChangedListener(android.media.AudioTrack.OnRoutingChangedListener, android.os.Handler); + method public int attachAuxEffect(int); + method @NonNull public android.media.VolumeShaper createVolumeShaper(@NonNull android.media.VolumeShaper.Configuration); + method protected void finalize(); + method public void flush(); + method @NonNull public android.media.AudioAttributes getAudioAttributes(); + method public float getAudioDescriptionMixLeveldB(); + method public int getAudioFormat(); + method public int getAudioSessionId(); + method @IntRange(from=0) public int getBufferCapacityInFrames(); + method @IntRange(from=0) public int getBufferSizeInFrames(); + method public int getChannelConfiguration(); + method public int getChannelCount(); + method public int getDualMonoMode(); + method @NonNull public android.media.AudioFormat getFormat(); + method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); + method public static float getMaxVolume(); + method public android.os.PersistableBundle getMetrics(); + method public static int getMinBufferSize(int, int, int); + method public static float getMinVolume(); + method @Deprecated protected int getNativeFrameCount(); + method public static int getNativeOutputSampleRate(int); + method public int getNotificationMarkerPosition(); + method @IntRange(from=0) public int getOffloadDelay(); + method @IntRange(from=0) public int getOffloadPadding(); + method public int getPerformanceMode(); + method public int getPlayState(); + method public int getPlaybackHeadPosition(); + method @NonNull public android.media.PlaybackParams getPlaybackParams(); + method public int getPlaybackRate(); + method public int getPositionNotificationPeriod(); + method public android.media.AudioDeviceInfo getPreferredDevice(); + method public android.media.AudioDeviceInfo getRoutedDevice(); + method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public java.util.List getRoutedDevices(); + method public int getSampleRate(); + method @IntRange(from=1) public int getStartThresholdInFrames(); + method public int getState(); + method public int getStreamType(); + method public boolean getTimestamp(android.media.AudioTimestamp); + method public int getUnderrunCount(); + method @Deprecated public static boolean isDirectPlaybackSupported(@NonNull android.media.AudioFormat, @NonNull android.media.AudioAttributes); + method public boolean isOffloadedPlayback(); + method public void pause() throws java.lang.IllegalStateException; + method public void play() throws java.lang.IllegalStateException; + method public void registerStreamEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioTrack.StreamEventCallback); + method public void release(); + method public int reloadStaticData(); + method public void removeOnCodecFormatChangedListener(@NonNull android.media.AudioTrack.OnCodecFormatChangedListener); + method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); + method @Deprecated public void removeOnRoutingChangedListener(android.media.AudioTrack.OnRoutingChangedListener); + method public boolean setAudioDescriptionMixLeveldB(@FloatRange(to=48.0f, toInclusive=true) float); + method public int setAuxEffectSendLevel(@FloatRange(from=0.0) float); + method public int setBufferSizeInFrames(@IntRange(from=0) int); + method public boolean setDualMonoMode(int); + method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); + method public int setLoopPoints(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0xffffffff) int); + method public int setNotificationMarkerPosition(int); + method public void setOffloadDelayPadding(@IntRange(from=0) int, @IntRange(from=0) int); + method public void setOffloadEndOfStream(); + method public int setPlaybackHeadPosition(@IntRange(from=0) int); + method public void setPlaybackParams(@NonNull android.media.PlaybackParams); + method public void setPlaybackPositionUpdateListener(android.media.AudioTrack.OnPlaybackPositionUpdateListener); + method public void setPlaybackPositionUpdateListener(android.media.AudioTrack.OnPlaybackPositionUpdateListener, android.os.Handler); + method public int setPlaybackRate(int); + method public int setPositionNotificationPeriod(int); + method public boolean setPreferredDevice(android.media.AudioDeviceInfo); + method public int setPresentation(@NonNull android.media.AudioPresentation); + method @IntRange(from=1) public int setStartThresholdInFrames(@IntRange(from=1) int); + method @Deprecated protected void setState(int); + method @Deprecated public int setStereoVolume(float, float); + method public int setVolume(float); + method public void stop() throws java.lang.IllegalStateException; + method public void unregisterStreamEventCallback(@NonNull android.media.AudioTrack.StreamEventCallback); + method public int write(@NonNull byte[], int, int); + method public int write(@NonNull byte[], int, int, int); + method public int write(@NonNull short[], int, int); + method public int write(@NonNull short[], int, int, int); + method public int write(@NonNull float[], int, int, int); + method public int write(@NonNull java.nio.ByteBuffer, int, int); + method public int write(@NonNull java.nio.ByteBuffer, int, int, long); + field public static final int DUAL_MONO_MODE_LL = 2; // 0x2 + field public static final int DUAL_MONO_MODE_LR = 1; // 0x1 + field public static final int DUAL_MONO_MODE_OFF = 0; // 0x0 + field public static final int DUAL_MONO_MODE_RR = 3; // 0x3 + field public static final int ENCAPSULATION_METADATA_TYPE_DVB_AD_DESCRIPTOR = 2; // 0x2 + field public static final int ENCAPSULATION_METADATA_TYPE_FRAMEWORK_TUNER = 1; // 0x1 + field public static final int ENCAPSULATION_METADATA_TYPE_SUPPLEMENTARY_AUDIO_PLACEMENT = 3; // 0x3 + field public static final int ENCAPSULATION_MODE_ELEMENTARY_STREAM = 1; // 0x1 + field public static final int ENCAPSULATION_MODE_NONE = 0; // 0x0 + field public static final int ERROR = -1; // 0xffffffff + field public static final int ERROR_BAD_VALUE = -2; // 0xfffffffe + field public static final int ERROR_DEAD_OBJECT = -6; // 0xfffffffa + field public static final int ERROR_INVALID_OPERATION = -3; // 0xfffffffd + field public static final int MODE_STATIC = 0; // 0x0 + field public static final int MODE_STREAM = 1; // 0x1 + field public static final int PERFORMANCE_MODE_LOW_LATENCY = 1; // 0x1 + field public static final int PERFORMANCE_MODE_NONE = 0; // 0x0 + field public static final int PERFORMANCE_MODE_POWER_SAVING = 2; // 0x2 + field public static final int PLAYSTATE_PAUSED = 2; // 0x2 + field public static final int PLAYSTATE_PLAYING = 3; // 0x3 + field public static final int PLAYSTATE_STOPPED = 1; // 0x1 + field public static final int STATE_INITIALIZED = 1; // 0x1 + field public static final int STATE_NO_STATIC_DATA = 2; // 0x2 + field public static final int STATE_UNINITIALIZED = 0; // 0x0 + field public static final int SUCCESS = 0; // 0x0 + field public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_LEFT = 1; // 0x1 + field public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_NORMAL = 0; // 0x0 + field public static final int SUPPLEMENTARY_AUDIO_PLACEMENT_RIGHT = 2; // 0x2 + field public static final int WRITE_BLOCKING = 0; // 0x0 + field public static final int WRITE_NON_BLOCKING = 1; // 0x1 + } + + public static class AudioTrack.Builder { + ctor public AudioTrack.Builder(); + method @NonNull public android.media.AudioTrack build() throws java.lang.UnsupportedOperationException; + method @NonNull public android.media.AudioTrack.Builder setAudioAttributes(@NonNull android.media.AudioAttributes) throws java.lang.IllegalArgumentException; + method @NonNull public android.media.AudioTrack.Builder setAudioFormat(@NonNull android.media.AudioFormat) throws java.lang.IllegalArgumentException; + method @NonNull public android.media.AudioTrack.Builder setBufferSizeInBytes(@IntRange(from=0) int) throws java.lang.IllegalArgumentException; + method @NonNull public android.media.AudioTrack.Builder setContext(@NonNull android.content.Context); + method @NonNull public android.media.AudioTrack.Builder setEncapsulationMode(int); + method @NonNull public android.media.AudioTrack.Builder setOffloadedPlayback(boolean); + method @NonNull public android.media.AudioTrack.Builder setPerformanceMode(int); + method @NonNull public android.media.AudioTrack.Builder setSessionId(@IntRange(from=1) int) throws java.lang.IllegalArgumentException; + method @NonNull public android.media.AudioTrack.Builder setTransferMode(int) throws java.lang.IllegalArgumentException; + } + + public static final class AudioTrack.MetricsConstants { + field @Deprecated public static final String CHANNELMASK = "android.media.audiorecord.channelmask"; + field public static final String CONTENTTYPE = "android.media.audiotrack.type"; + field @Deprecated public static final String SAMPLERATE = "android.media.audiorecord.samplerate"; + field public static final String STREAMTYPE = "android.media.audiotrack.streamtype"; + field public static final String USAGE = "android.media.audiotrack.usage"; + } + + public static interface AudioTrack.OnCodecFormatChangedListener { + method public void onCodecFormatChanged(@NonNull android.media.AudioTrack, @Nullable android.media.AudioMetadataReadMap); + } + + public static interface AudioTrack.OnPlaybackPositionUpdateListener { + method public void onMarkerReached(android.media.AudioTrack); + method public void onPeriodicNotification(android.media.AudioTrack); + } + + @Deprecated public static interface AudioTrack.OnRoutingChangedListener extends android.media.AudioRouting.OnRoutingChangedListener { + method @Deprecated public void onRoutingChanged(android.media.AudioTrack); + method @Deprecated public default void onRoutingChanged(android.media.AudioRouting); + } + + public abstract static class AudioTrack.StreamEventCallback { + ctor public AudioTrack.StreamEventCallback(); + method public void onDataRequest(@NonNull android.media.AudioTrack, @IntRange(from=0) int); + method public void onPresentationEnded(@NonNull android.media.AudioTrack); + method public void onTearDown(@NonNull android.media.AudioTrack); + } + + public class CamcorderProfile { + method @Deprecated public static android.media.CamcorderProfile get(int); + method @Deprecated public static android.media.CamcorderProfile get(int, int); + method @Nullable public static android.media.EncoderProfiles getAll(@NonNull String, int); + method public static boolean hasProfile(int); + method public static boolean hasProfile(int, int); + field public static final int QUALITY_1080P = 6; // 0x6 + field public static final int QUALITY_2160P = 8; // 0x8 + field public static final int QUALITY_2K = 12; // 0xc + field public static final int QUALITY_480P = 4; // 0x4 + field public static final int QUALITY_4KDCI = 10; // 0xa + field public static final int QUALITY_720P = 5; // 0x5 + field public static final int QUALITY_8KUHD = 13; // 0xd + field public static final int QUALITY_CIF = 3; // 0x3 + field public static final int QUALITY_HIGH = 1; // 0x1 + field public static final int QUALITY_HIGH_SPEED_1080P = 2004; // 0x7d4 + field public static final int QUALITY_HIGH_SPEED_2160P = 2005; // 0x7d5 + field public static final int QUALITY_HIGH_SPEED_480P = 2002; // 0x7d2 + field public static final int QUALITY_HIGH_SPEED_4KDCI = 2008; // 0x7d8 + field public static final int QUALITY_HIGH_SPEED_720P = 2003; // 0x7d3 + field public static final int QUALITY_HIGH_SPEED_CIF = 2006; // 0x7d6 + field public static final int QUALITY_HIGH_SPEED_HIGH = 2001; // 0x7d1 + field public static final int QUALITY_HIGH_SPEED_LOW = 2000; // 0x7d0 + field public static final int QUALITY_HIGH_SPEED_VGA = 2007; // 0x7d7 + field public static final int QUALITY_LOW = 0; // 0x0 + field public static final int QUALITY_QCIF = 2; // 0x2 + field public static final int QUALITY_QHD = 11; // 0xb + field public static final int QUALITY_QVGA = 7; // 0x7 + field public static final int QUALITY_TIME_LAPSE_1080P = 1006; // 0x3ee + field public static final int QUALITY_TIME_LAPSE_2160P = 1008; // 0x3f0 + field public static final int QUALITY_TIME_LAPSE_2K = 1012; // 0x3f4 + field public static final int QUALITY_TIME_LAPSE_480P = 1004; // 0x3ec + field public static final int QUALITY_TIME_LAPSE_4KDCI = 1010; // 0x3f2 + field public static final int QUALITY_TIME_LAPSE_720P = 1005; // 0x3ed + field public static final int QUALITY_TIME_LAPSE_8KUHD = 1013; // 0x3f5 + field public static final int QUALITY_TIME_LAPSE_CIF = 1003; // 0x3eb + field public static final int QUALITY_TIME_LAPSE_HIGH = 1001; // 0x3e9 + field public static final int QUALITY_TIME_LAPSE_LOW = 1000; // 0x3e8 + field public static final int QUALITY_TIME_LAPSE_QCIF = 1002; // 0x3ea + field public static final int QUALITY_TIME_LAPSE_QHD = 1011; // 0x3f3 + field public static final int QUALITY_TIME_LAPSE_QVGA = 1007; // 0x3ef + field public static final int QUALITY_TIME_LAPSE_VGA = 1009; // 0x3f1 + field public static final int QUALITY_VGA = 9; // 0x9 + field public int audioBitRate; + field public int audioChannels; + field public int audioCodec; + field public int audioSampleRate; + field public int duration; + field public int fileFormat; + field public int quality; + field public int videoBitRate; + field public int videoCodec; + field public int videoFrameHeight; + field public int videoFrameRate; + field public int videoFrameWidth; + } + + public class CameraProfile { + ctor public CameraProfile(); + method public static int getJpegEncodingQualityParameter(int); + method public static int getJpegEncodingQualityParameter(int, int); + field public static final int QUALITY_HIGH = 2; // 0x2 + field public static final int QUALITY_LOW = 0; // 0x0 + field public static final int QUALITY_MEDIUM = 1; // 0x1 + } + + public final class DeniedByServerException extends android.media.MediaDrmException { + ctor public DeniedByServerException(String); + } + + public abstract class DrmInitData { + method @Deprecated public abstract android.media.DrmInitData.SchemeInitData get(java.util.UUID); + method @NonNull public android.media.DrmInitData.SchemeInitData getSchemeInitDataAt(int); + method public int getSchemeInitDataCount(); + } + + public static final class DrmInitData.SchemeInitData { + ctor public DrmInitData.SchemeInitData(@NonNull java.util.UUID, @NonNull String, @NonNull byte[]); + field @NonNull public static final java.util.UUID UUID_NIL; + field public final byte[] data; + field public final String mimeType; + field @NonNull public final java.util.UUID uuid; + } + + public final class EncoderProfiles { + method @NonNull public java.util.List getAudioProfiles(); + method public int getDefaultDurationSeconds(); + method public int getRecommendedFileFormat(); + method @NonNull public java.util.List getVideoProfiles(); + } + + public static final class EncoderProfiles.AudioProfile { + method public int getBitrate(); + method public int getChannels(); + method public int getCodec(); + method @NonNull public String getMediaType(); + method public int getProfile(); + method public int getSampleRate(); + } + + public static final class EncoderProfiles.VideoProfile { + method public int getBitDepth(); + method public int getBitrate(); + method public int getChromaSubsampling(); + method public int getCodec(); + method public int getFrameRate(); + method public int getHdrFormat(); + method public int getHeight(); + method @NonNull public String getMediaType(); + method public int getProfile(); + method public int getWidth(); + field public static final int HDR_DOLBY_VISION = 4; // 0x4 + field public static final int HDR_HDR10 = 2; // 0x2 + field public static final int HDR_HDR10PLUS = 3; // 0x3 + field public static final int HDR_HLG = 1; // 0x1 + field public static final int HDR_NONE = 0; // 0x0 + field public static final int YUV_420 = 0; // 0x0 + field public static final int YUV_422 = 1; // 0x1 + field public static final int YUV_444 = 2; // 0x2 + } + + public class ExifInterface { + ctor public ExifInterface(@NonNull java.io.File) throws java.io.IOException; + ctor public ExifInterface(@NonNull String) throws java.io.IOException; + ctor public ExifInterface(@NonNull java.io.FileDescriptor) throws java.io.IOException; + ctor public ExifInterface(@NonNull java.io.InputStream) throws java.io.IOException; + ctor public ExifInterface(@NonNull java.io.InputStream, int) throws java.io.IOException; + method public double getAltitude(double); + method @Nullable public String getAttribute(@NonNull String); + method @Nullable public byte[] getAttributeBytes(@NonNull String); + method public double getAttributeDouble(@NonNull String, double); + method public int getAttributeInt(@NonNull String, int); + method @Nullable public long[] getAttributeRange(@NonNull String); + method public long getDateTime(); + method public long getDateTimeDigitized(); + method public long getDateTimeOriginal(); + method public long getGpsDateTime(); + method public boolean getLatLong(float[]); + method public byte[] getThumbnail(); + method public android.graphics.Bitmap getThumbnailBitmap(); + method public byte[] getThumbnailBytes(); + method @Nullable public long[] getThumbnailRange(); + method public boolean hasAttribute(@NonNull String); + method public boolean hasThumbnail(); + method public static boolean isSupportedMimeType(@NonNull String); + method public boolean isThumbnailCompressed(); + method public void saveAttributes() throws java.io.IOException; + method public void setAttribute(@NonNull String, @Nullable String); + field public static final int ORIENTATION_FLIP_HORIZONTAL = 2; // 0x2 + field public static final int ORIENTATION_FLIP_VERTICAL = 4; // 0x4 + field public static final int ORIENTATION_NORMAL = 1; // 0x1 + field public static final int ORIENTATION_ROTATE_180 = 3; // 0x3 + field public static final int ORIENTATION_ROTATE_270 = 8; // 0x8 + field public static final int ORIENTATION_ROTATE_90 = 6; // 0x6 + field public static final int ORIENTATION_TRANSPOSE = 5; // 0x5 + field public static final int ORIENTATION_TRANSVERSE = 7; // 0x7 + field public static final int ORIENTATION_UNDEFINED = 0; // 0x0 + field public static final int STREAM_TYPE_EXIF_DATA_ONLY = 1; // 0x1 + field public static final int STREAM_TYPE_FULL_IMAGE_DATA = 0; // 0x0 + field @Deprecated public static final String TAG_APERTURE = "FNumber"; + field public static final String TAG_APERTURE_VALUE = "ApertureValue"; + field public static final String TAG_ARTIST = "Artist"; + field public static final String TAG_BITS_PER_SAMPLE = "BitsPerSample"; + field public static final String TAG_BRIGHTNESS_VALUE = "BrightnessValue"; + field public static final String TAG_CFA_PATTERN = "CFAPattern"; + field public static final String TAG_COLOR_SPACE = "ColorSpace"; + field public static final String TAG_COMPONENTS_CONFIGURATION = "ComponentsConfiguration"; + field public static final String TAG_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel"; + field public static final String TAG_COMPRESSION = "Compression"; + field public static final String TAG_CONTRAST = "Contrast"; + field public static final String TAG_COPYRIGHT = "Copyright"; + field public static final String TAG_CUSTOM_RENDERED = "CustomRendered"; + field public static final String TAG_DATETIME = "DateTime"; + field public static final String TAG_DATETIME_DIGITIZED = "DateTimeDigitized"; + field public static final String TAG_DATETIME_ORIGINAL = "DateTimeOriginal"; + field public static final String TAG_DEFAULT_CROP_SIZE = "DefaultCropSize"; + field public static final String TAG_DEVICE_SETTING_DESCRIPTION = "DeviceSettingDescription"; + field public static final String TAG_DIGITAL_ZOOM_RATIO = "DigitalZoomRatio"; + field public static final String TAG_DNG_VERSION = "DNGVersion"; + field public static final String TAG_EXIF_VERSION = "ExifVersion"; + field public static final String TAG_EXPOSURE_BIAS_VALUE = "ExposureBiasValue"; + field public static final String TAG_EXPOSURE_INDEX = "ExposureIndex"; + field public static final String TAG_EXPOSURE_MODE = "ExposureMode"; + field public static final String TAG_EXPOSURE_PROGRAM = "ExposureProgram"; + field public static final String TAG_EXPOSURE_TIME = "ExposureTime"; + field public static final String TAG_FILE_SOURCE = "FileSource"; + field public static final String TAG_FLASH = "Flash"; + field public static final String TAG_FLASHPIX_VERSION = "FlashpixVersion"; + field public static final String TAG_FLASH_ENERGY = "FlashEnergy"; + field public static final String TAG_FOCAL_LENGTH = "FocalLength"; + field public static final String TAG_FOCAL_LENGTH_IN_35MM_FILM = "FocalLengthIn35mmFilm"; + field public static final String TAG_FOCAL_PLANE_RESOLUTION_UNIT = "FocalPlaneResolutionUnit"; + field public static final String TAG_FOCAL_PLANE_X_RESOLUTION = "FocalPlaneXResolution"; + field public static final String TAG_FOCAL_PLANE_Y_RESOLUTION = "FocalPlaneYResolution"; + field public static final String TAG_F_NUMBER = "FNumber"; + field public static final String TAG_GAIN_CONTROL = "GainControl"; + field public static final String TAG_GPS_ALTITUDE = "GPSAltitude"; + field public static final String TAG_GPS_ALTITUDE_REF = "GPSAltitudeRef"; + field public static final String TAG_GPS_AREA_INFORMATION = "GPSAreaInformation"; + field public static final String TAG_GPS_DATESTAMP = "GPSDateStamp"; + field public static final String TAG_GPS_DEST_BEARING = "GPSDestBearing"; + field public static final String TAG_GPS_DEST_BEARING_REF = "GPSDestBearingRef"; + field public static final String TAG_GPS_DEST_DISTANCE = "GPSDestDistance"; + field public static final String TAG_GPS_DEST_DISTANCE_REF = "GPSDestDistanceRef"; + field public static final String TAG_GPS_DEST_LATITUDE = "GPSDestLatitude"; + field public static final String TAG_GPS_DEST_LATITUDE_REF = "GPSDestLatitudeRef"; + field public static final String TAG_GPS_DEST_LONGITUDE = "GPSDestLongitude"; + field public static final String TAG_GPS_DEST_LONGITUDE_REF = "GPSDestLongitudeRef"; + field public static final String TAG_GPS_DIFFERENTIAL = "GPSDifferential"; + field public static final String TAG_GPS_DOP = "GPSDOP"; + field public static final String TAG_GPS_IMG_DIRECTION = "GPSImgDirection"; + field public static final String TAG_GPS_IMG_DIRECTION_REF = "GPSImgDirectionRef"; + field public static final String TAG_GPS_LATITUDE = "GPSLatitude"; + field public static final String TAG_GPS_LATITUDE_REF = "GPSLatitudeRef"; + field public static final String TAG_GPS_LONGITUDE = "GPSLongitude"; + field public static final String TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef"; + field public static final String TAG_GPS_MAP_DATUM = "GPSMapDatum"; + field public static final String TAG_GPS_MEASURE_MODE = "GPSMeasureMode"; + field public static final String TAG_GPS_PROCESSING_METHOD = "GPSProcessingMethod"; + field public static final String TAG_GPS_SATELLITES = "GPSSatellites"; + field public static final String TAG_GPS_SPEED = "GPSSpeed"; + field public static final String TAG_GPS_SPEED_REF = "GPSSpeedRef"; + field public static final String TAG_GPS_STATUS = "GPSStatus"; + field public static final String TAG_GPS_TIMESTAMP = "GPSTimeStamp"; + field public static final String TAG_GPS_TRACK = "GPSTrack"; + field public static final String TAG_GPS_TRACK_REF = "GPSTrackRef"; + field public static final String TAG_GPS_VERSION_ID = "GPSVersionID"; + field public static final String TAG_IMAGE_DESCRIPTION = "ImageDescription"; + field public static final String TAG_IMAGE_LENGTH = "ImageLength"; + field public static final String TAG_IMAGE_UNIQUE_ID = "ImageUniqueID"; + field public static final String TAG_IMAGE_WIDTH = "ImageWidth"; + field public static final String TAG_INTEROPERABILITY_INDEX = "InteroperabilityIndex"; + field @Deprecated public static final String TAG_ISO = "ISOSpeedRatings"; + field public static final String TAG_ISO_SPEED_RATINGS = "ISOSpeedRatings"; + field public static final String TAG_JPEG_INTERCHANGE_FORMAT = "JPEGInterchangeFormat"; + field public static final String TAG_JPEG_INTERCHANGE_FORMAT_LENGTH = "JPEGInterchangeFormatLength"; + field public static final String TAG_LIGHT_SOURCE = "LightSource"; + field public static final String TAG_MAKE = "Make"; + field public static final String TAG_MAKER_NOTE = "MakerNote"; + field public static final String TAG_MAX_APERTURE_VALUE = "MaxApertureValue"; + field public static final String TAG_METERING_MODE = "MeteringMode"; + field public static final String TAG_MODEL = "Model"; + field public static final String TAG_NEW_SUBFILE_TYPE = "NewSubfileType"; + field public static final String TAG_OECF = "OECF"; + field public static final String TAG_OFFSET_TIME = "OffsetTime"; + field public static final String TAG_OFFSET_TIME_DIGITIZED = "OffsetTimeDigitized"; + field public static final String TAG_OFFSET_TIME_ORIGINAL = "OffsetTimeOriginal"; + field public static final String TAG_ORF_ASPECT_FRAME = "AspectFrame"; + field public static final String TAG_ORF_PREVIEW_IMAGE_LENGTH = "PreviewImageLength"; + field public static final String TAG_ORF_PREVIEW_IMAGE_START = "PreviewImageStart"; + field public static final String TAG_ORF_THUMBNAIL_IMAGE = "ThumbnailImage"; + field public static final String TAG_ORIENTATION = "Orientation"; + field public static final String TAG_PHOTOMETRIC_INTERPRETATION = "PhotometricInterpretation"; + field public static final String TAG_PIXEL_X_DIMENSION = "PixelXDimension"; + field public static final String TAG_PIXEL_Y_DIMENSION = "PixelYDimension"; + field public static final String TAG_PLANAR_CONFIGURATION = "PlanarConfiguration"; + field public static final String TAG_PRIMARY_CHROMATICITIES = "PrimaryChromaticities"; + field public static final String TAG_REFERENCE_BLACK_WHITE = "ReferenceBlackWhite"; + field public static final String TAG_RELATED_SOUND_FILE = "RelatedSoundFile"; + field public static final String TAG_RESOLUTION_UNIT = "ResolutionUnit"; + field public static final String TAG_ROWS_PER_STRIP = "RowsPerStrip"; + field public static final String TAG_RW2_ISO = "ISO"; + field public static final String TAG_RW2_JPG_FROM_RAW = "JpgFromRaw"; + field public static final String TAG_RW2_SENSOR_BOTTOM_BORDER = "SensorBottomBorder"; + field public static final String TAG_RW2_SENSOR_LEFT_BORDER = "SensorLeftBorder"; + field public static final String TAG_RW2_SENSOR_RIGHT_BORDER = "SensorRightBorder"; + field public static final String TAG_RW2_SENSOR_TOP_BORDER = "SensorTopBorder"; + field public static final String TAG_SAMPLES_PER_PIXEL = "SamplesPerPixel"; + field public static final String TAG_SATURATION = "Saturation"; + field public static final String TAG_SCENE_CAPTURE_TYPE = "SceneCaptureType"; + field public static final String TAG_SCENE_TYPE = "SceneType"; + field public static final String TAG_SENSING_METHOD = "SensingMethod"; + field public static final String TAG_SHARPNESS = "Sharpness"; + field public static final String TAG_SHUTTER_SPEED_VALUE = "ShutterSpeedValue"; + field public static final String TAG_SOFTWARE = "Software"; + field public static final String TAG_SPATIAL_FREQUENCY_RESPONSE = "SpatialFrequencyResponse"; + field public static final String TAG_SPECTRAL_SENSITIVITY = "SpectralSensitivity"; + field public static final String TAG_STRIP_BYTE_COUNTS = "StripByteCounts"; + field public static final String TAG_STRIP_OFFSETS = "StripOffsets"; + field public static final String TAG_SUBFILE_TYPE = "SubfileType"; + field public static final String TAG_SUBJECT_AREA = "SubjectArea"; + field public static final String TAG_SUBJECT_DISTANCE = "SubjectDistance"; + field public static final String TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange"; + field public static final String TAG_SUBJECT_LOCATION = "SubjectLocation"; + field public static final String TAG_SUBSEC_TIME = "SubSecTime"; + field @Deprecated public static final String TAG_SUBSEC_TIME_DIG = "SubSecTimeDigitized"; + field public static final String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized"; + field @Deprecated public static final String TAG_SUBSEC_TIME_ORIG = "SubSecTimeOriginal"; + field public static final String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal"; + field public static final String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength"; + field public static final String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth"; + field public static final String TAG_THUMBNAIL_ORIENTATION = "ThumbnailOrientation"; + field public static final String TAG_TRANSFER_FUNCTION = "TransferFunction"; + field public static final String TAG_USER_COMMENT = "UserComment"; + field public static final String TAG_WHITE_BALANCE = "WhiteBalance"; + field public static final String TAG_WHITE_POINT = "WhitePoint"; + field public static final String TAG_XMP = "Xmp"; + field public static final String TAG_X_RESOLUTION = "XResolution"; + field public static final String TAG_Y_CB_CR_COEFFICIENTS = "YCbCrCoefficients"; + field public static final String TAG_Y_CB_CR_POSITIONING = "YCbCrPositioning"; + field public static final String TAG_Y_CB_CR_SUB_SAMPLING = "YCbCrSubSampling"; + field public static final String TAG_Y_RESOLUTION = "YResolution"; + field public static final int WHITEBALANCE_AUTO = 0; // 0x0 + field public static final int WHITEBALANCE_MANUAL = 1; // 0x1 + } + + public class FaceDetector { + ctor public FaceDetector(int, int, int); + method public int findFaces(android.graphics.Bitmap, android.media.FaceDetector.Face[]); + } + + public class FaceDetector.Face { + method public float confidence(); + method public float eyesDistance(); + method public void getMidPoint(android.graphics.PointF); + method public float pose(int); + field public static final float CONFIDENCE_THRESHOLD = 0.4f; + field public static final int EULER_X = 0; // 0x0 + field public static final int EULER_Y = 1; // 0x1 + field public static final int EULER_Z = 2; // 0x2 + } + + public abstract class Image implements java.lang.AutoCloseable { + method public abstract void close(); + method public android.graphics.Rect getCropRect(); + method public int getDataSpace(); + method @NonNull public android.hardware.SyncFence getFence() throws java.io.IOException; + method public abstract int getFormat(); + method @Nullable public android.hardware.HardwareBuffer getHardwareBuffer(); + method public abstract int getHeight(); + method public abstract android.media.Image.Plane[] getPlanes(); + method public abstract long getTimestamp(); + method public abstract int getWidth(); + method public void setCropRect(android.graphics.Rect); + method public void setDataSpace(int); + method public void setFence(@NonNull android.hardware.SyncFence) throws java.io.IOException; + method public void setTimestamp(long); + } + + public abstract static class Image.Plane { + method public abstract java.nio.ByteBuffer getBuffer(); + method public abstract int getPixelStride(); + method public abstract int getRowStride(); + } + + public class ImageReader implements java.lang.AutoCloseable { + method public android.media.Image acquireLatestImage(); + method public android.media.Image acquireNextImage(); + method public void close(); + method public void discardFreeBuffers(); + method public int getDataSpace(); + method public int getHardwareBufferFormat(); + method public int getHeight(); + method public int getImageFormat(); + method public int getMaxImages(); + method public android.view.Surface getSurface(); + method public long getUsage(); + method public int getWidth(); + method @NonNull public static android.media.ImageReader newInstance(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int); + method @NonNull public static android.media.ImageReader newInstance(@IntRange(from=1) int, @IntRange(from=1) int, int, @IntRange(from=1) int, long); + method public void setOnImageAvailableListener(android.media.ImageReader.OnImageAvailableListener, android.os.Handler); + } + + public static final class ImageReader.Builder { + ctor public ImageReader.Builder(@IntRange(from=1) int, @IntRange(from=1) int); + method @NonNull public android.media.ImageReader build(); + method @NonNull public android.media.ImageReader.Builder setDefaultDataSpace(int); + method @NonNull public android.media.ImageReader.Builder setDefaultHardwareBufferFormat(int); + method @NonNull public android.media.ImageReader.Builder setImageFormat(int); + method @NonNull public android.media.ImageReader.Builder setMaxImages(int); + method @NonNull public android.media.ImageReader.Builder setUsage(long); + } + + public static interface ImageReader.OnImageAvailableListener { + method public void onImageAvailable(android.media.ImageReader); + } + + public class ImageWriter implements java.lang.AutoCloseable { + method public void close(); + method public android.media.Image dequeueInputImage(); + method public int getDataSpace(); + method public int getFormat(); + method public int getHardwareBufferFormat(); + method public int getHeight(); + method public int getMaxImages(); + method public long getUsage(); + method public int getWidth(); + method @NonNull public static android.media.ImageWriter newInstance(@NonNull android.view.Surface, @IntRange(from=1) int); + method @NonNull public static android.media.ImageWriter newInstance(@NonNull android.view.Surface, @IntRange(from=1) int, int); + method public void queueInputImage(android.media.Image); + method public void setOnImageReleasedListener(android.media.ImageWriter.OnImageReleasedListener, android.os.Handler); + } + + public static final class ImageWriter.Builder { + ctor public ImageWriter.Builder(@NonNull android.view.Surface); + method @NonNull public android.media.ImageWriter build(); + method @NonNull public android.media.ImageWriter.Builder setDataSpace(int); + method @NonNull public android.media.ImageWriter.Builder setHardwareBufferFormat(int); + method @NonNull public android.media.ImageWriter.Builder setImageFormat(int); + method @NonNull public android.media.ImageWriter.Builder setMaxImages(@IntRange(from=1) int); + method @NonNull public android.media.ImageWriter.Builder setUsage(long); + method @NonNull public android.media.ImageWriter.Builder setWidthAndHeight(@IntRange(from=1) int, @IntRange(from=1) int); + } + + public static interface ImageWriter.OnImageReleasedListener { + method public void onImageReleased(android.media.ImageWriter); + } + + public class JetPlayer { + method public boolean clearQueue(); + method public Object clone() throws java.lang.CloneNotSupportedException; + method public boolean closeJetFile(); + method protected void finalize(); + method public static android.media.JetPlayer getJetPlayer(); + method public static int getMaxTracks(); + method public boolean loadJetFile(String); + method public boolean loadJetFile(android.content.res.AssetFileDescriptor); + method public boolean pause(); + method public boolean play(); + method public boolean queueJetSegment(int, int, int, int, int, byte); + method public boolean queueJetSegmentMuteArray(int, int, int, int, boolean[], byte); + method public void release(); + method public void setEventListener(android.media.JetPlayer.OnJetEventListener); + method public void setEventListener(android.media.JetPlayer.OnJetEventListener, android.os.Handler); + method public boolean setMuteArray(boolean[], boolean); + method public boolean setMuteFlag(int, boolean, boolean); + method public boolean setMuteFlags(int, boolean); + method public boolean triggerClip(int); + } + + public static interface JetPlayer.OnJetEventListener { + method public void onJetEvent(android.media.JetPlayer, short, byte, byte, byte, byte); + method public void onJetNumQueuedSegmentUpdate(android.media.JetPlayer, int); + method public void onJetPauseUpdate(android.media.JetPlayer, int); + method public void onJetUserIdUpdate(android.media.JetPlayer, int, int); + } + + @FlaggedApi("android.media.audio.loudness_configurator_api") public class LoudnessCodecController implements java.lang.AutoCloseable { + method @FlaggedApi("android.media.audio.loudness_configurator_api") public boolean addMediaCodec(@NonNull android.media.MediaCodec); + method @FlaggedApi("android.media.audio.loudness_configurator_api") public void close(); + method @FlaggedApi("android.media.audio.loudness_configurator_api") @NonNull public static android.media.LoudnessCodecController create(int); + method @FlaggedApi("android.media.audio.loudness_configurator_api") @NonNull public static android.media.LoudnessCodecController create(int, @NonNull java.util.concurrent.Executor, @NonNull android.media.LoudnessCodecController.OnLoudnessCodecUpdateListener); + method @FlaggedApi("android.media.audio.loudness_configurator_api") @NonNull public android.os.Bundle getLoudnessCodecParams(@NonNull android.media.MediaCodec); + method @FlaggedApi("android.media.audio.loudness_configurator_api") public void removeMediaCodec(@NonNull android.media.MediaCodec); + } + + @FlaggedApi("android.media.audio.loudness_configurator_api") public static interface LoudnessCodecController.OnLoudnessCodecUpdateListener { + method @FlaggedApi("android.media.audio.loudness_configurator_api") @NonNull public default android.os.Bundle onLoudnessCodecUpdate(@NonNull android.media.MediaCodec, @NonNull android.os.Bundle); + } + + public class MediaActionSound { + ctor public MediaActionSound(); + method public void load(int); + method public static boolean mustPlayShutterSound(); + method public void play(int); + method public void release(); + field public static final int FOCUS_COMPLETE = 1; // 0x1 + field public static final int SHUTTER_CLICK = 0; // 0x0 + field public static final int START_VIDEO_RECORDING = 2; // 0x2 + field public static final int STOP_VIDEO_RECORDING = 3; // 0x3 + } + + public final class MediaCas implements java.lang.AutoCloseable { + ctor public MediaCas(int) throws android.media.MediaCasException.UnsupportedCasException; + ctor public MediaCas(@NonNull android.content.Context, int, @Nullable String, int) throws android.media.MediaCasException.UnsupportedCasException; + ctor public MediaCas(@NonNull android.content.Context, int, @Nullable String, int, @Nullable android.os.Handler, @Nullable android.media.MediaCas.EventListener) throws android.media.MediaCasException.UnsupportedCasException; + method public void close(); + method public static android.media.MediaCas.PluginDescriptor[] enumeratePlugins(); + method protected void finalize(); + method public static boolean isSystemIdSupported(int); + method public android.media.MediaCas.Session openSession() throws android.media.MediaCasException; + method @Nullable public android.media.MediaCas.Session openSession(int, int) throws android.media.MediaCasException; + method public void processEmm(@NonNull byte[], int, int) throws android.media.MediaCasException; + method public void processEmm(@NonNull byte[]) throws android.media.MediaCasException; + method public void provision(@NonNull String) throws android.media.MediaCasException; + method public void refreshEntitlements(int, @Nullable byte[]) throws android.media.MediaCasException; + method public void sendEvent(int, int, @Nullable byte[]) throws android.media.MediaCasException; + method public void setEventListener(@Nullable android.media.MediaCas.EventListener, @Nullable android.os.Handler); + method public void setPrivateData(@NonNull byte[]) throws android.media.MediaCasException; + field public static final int PLUGIN_STATUS_PHYSICAL_MODULE_CHANGED = 0; // 0x0 + field public static final int PLUGIN_STATUS_SESSION_NUMBER_CHANGED = 1; // 0x1 + field public static final int SCRAMBLING_MODE_AES128 = 9; // 0x9 + field public static final int SCRAMBLING_MODE_AES_CBC = 14; // 0xe + field public static final int SCRAMBLING_MODE_AES_ECB = 10; // 0xa + field public static final int SCRAMBLING_MODE_AES_SCTE52 = 11; // 0xb + field public static final int SCRAMBLING_MODE_DVB_CISSA_V1 = 6; // 0x6 + field public static final int SCRAMBLING_MODE_DVB_CSA1 = 1; // 0x1 + field public static final int SCRAMBLING_MODE_DVB_CSA2 = 2; // 0x2 + field public static final int SCRAMBLING_MODE_DVB_CSA3_ENHANCE = 5; // 0x5 + field public static final int SCRAMBLING_MODE_DVB_CSA3_MINIMAL = 4; // 0x4 + field public static final int SCRAMBLING_MODE_DVB_CSA3_STANDARD = 3; // 0x3 + field public static final int SCRAMBLING_MODE_DVB_IDSA = 7; // 0x7 + field public static final int SCRAMBLING_MODE_MULTI2 = 8; // 0x8 + field public static final int SCRAMBLING_MODE_RESERVED = 0; // 0x0 + field public static final int SCRAMBLING_MODE_TDES_ECB = 12; // 0xc + field public static final int SCRAMBLING_MODE_TDES_SCTE52 = 13; // 0xd + field public static final int SESSION_USAGE_LIVE = 0; // 0x0 + field public static final int SESSION_USAGE_PLAYBACK = 1; // 0x1 + field public static final int SESSION_USAGE_RECORD = 2; // 0x2 + field public static final int SESSION_USAGE_TIMESHIFT = 3; // 0x3 + } + + public static interface MediaCas.EventListener { + method public void onEvent(@NonNull android.media.MediaCas, int, int, @Nullable byte[]); + method public default void onPluginStatusUpdate(@NonNull android.media.MediaCas, int, int); + method public default void onResourceLost(@NonNull android.media.MediaCas); + method public default void onSessionEvent(@NonNull android.media.MediaCas, @NonNull android.media.MediaCas.Session, int, int, @Nullable byte[]); + } + + public static class MediaCas.PluginDescriptor { + method @NonNull public String getName(); + method public int getSystemId(); + } + + public final class MediaCas.Session implements java.lang.AutoCloseable { + method public void close(); + method @NonNull public byte[] getSessionId(); + method public void processEcm(@NonNull byte[], int, int) throws android.media.MediaCasException; + method public void processEcm(@NonNull byte[]) throws android.media.MediaCasException; + method public void sendSessionEvent(int, int, @Nullable byte[]) throws android.media.MediaCasException; + method public void setPrivateData(@NonNull byte[]) throws android.media.MediaCasException; + } + + public class MediaCasException extends java.lang.Exception { + } + + public static final class MediaCasException.DeniedByServerException extends android.media.MediaCasException { + } + + public static final class MediaCasException.InsufficientResourceException extends android.media.MediaCasException { + } + + public static final class MediaCasException.NotProvisionedException extends android.media.MediaCasException { + } + + public static final class MediaCasException.ResourceBusyException extends android.media.MediaCasException { + } + + public static final class MediaCasException.UnsupportedCasException extends android.media.MediaCasException { + } + + public class MediaCasStateException extends java.lang.IllegalStateException { + method @NonNull public String getDiagnosticInfo(); + } + + public final class MediaCodec { + method public void configure(@Nullable android.media.MediaFormat, @Nullable android.view.Surface, @Nullable android.media.MediaCrypto, int); + method public void configure(@Nullable android.media.MediaFormat, @Nullable android.view.Surface, int, @Nullable android.media.MediaDescrambler); + method @NonNull public static android.media.MediaCodec createByCodecName(@NonNull String) throws java.io.IOException; + method @NonNull public static android.media.MediaCodec createDecoderByType(@NonNull String) throws java.io.IOException; + method @NonNull public static android.media.MediaCodec createEncoderByType(@NonNull String) throws java.io.IOException; + method @NonNull public android.view.Surface createInputSurface(); + method @NonNull public static android.view.Surface createPersistentInputSurface(); + method public int dequeueInputBuffer(long); + method public int dequeueOutputBuffer(@NonNull android.media.MediaCodec.BufferInfo, long); + method @FlaggedApi("android.media.codec.null_output_surface") public void detachOutputSurface(); + method protected void finalize(); + method public void flush(); + method @NonNull public String getCanonicalName(); + method @NonNull public android.media.MediaCodecInfo getCodecInfo(); + method @Nullable public java.nio.ByteBuffer getInputBuffer(int); + method @Deprecated @NonNull public java.nio.ByteBuffer[] getInputBuffers(); + method @NonNull public android.media.MediaFormat getInputFormat(); + method @Nullable public android.media.Image getInputImage(int); + method public android.os.PersistableBundle getMetrics(); + method @NonNull public String getName(); + method @Nullable public java.nio.ByteBuffer getOutputBuffer(int); + method @Deprecated @NonNull public java.nio.ByteBuffer[] getOutputBuffers(); + method @NonNull public android.media.MediaFormat getOutputFormat(); + method @NonNull public android.media.MediaFormat getOutputFormat(int); + method @NonNull public android.media.MediaCodec.OutputFrame getOutputFrame(int); + method @Nullable public android.media.Image getOutputImage(int); + method @Nullable public android.media.MediaCodec.ParameterDescriptor getParameterDescriptor(@NonNull String); + method @NonNull public android.media.MediaCodec.QueueRequest getQueueRequest(int); + method @NonNull public java.util.List getSupportedVendorParameters(); + method @Nullable public static android.media.Image mapHardwareBuffer(@NonNull android.hardware.HardwareBuffer); + method public void queueInputBuffer(int, int, int, long, int) throws android.media.MediaCodec.CryptoException; + method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public void queueInputBuffers(int, @NonNull java.util.ArrayDeque); + method public void queueSecureInputBuffer(int, int, @NonNull android.media.MediaCodec.CryptoInfo, long, int) throws android.media.MediaCodec.CryptoException; + method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public void queueSecureInputBuffers(int, @NonNull java.util.ArrayDeque, @NonNull java.util.ArrayDeque); + method public void release(); + method public void releaseOutputBuffer(int, boolean); + method public void releaseOutputBuffer(int, long); + method public void reset(); + method public void setAudioPresentation(@NonNull android.media.AudioPresentation); + method public void setCallback(@Nullable android.media.MediaCodec.Callback, @Nullable android.os.Handler); + method public void setCallback(@Nullable android.media.MediaCodec.Callback); + method public void setInputSurface(@NonNull android.view.Surface); + method public void setOnFirstTunnelFrameReadyListener(@Nullable android.os.Handler, @Nullable android.media.MediaCodec.OnFirstTunnelFrameReadyListener); + method public void setOnFrameRenderedListener(@Nullable android.media.MediaCodec.OnFrameRenderedListener, @Nullable android.os.Handler); + method public void setOutputSurface(@NonNull android.view.Surface); + method public void setParameters(@Nullable android.os.Bundle); + method public void setVideoScalingMode(int); + method public void signalEndOfInputStream(); + method public void start(); + method public void stop(); + method public void subscribeToVendorParameters(@NonNull java.util.List); + method public void unsubscribeFromVendorParameters(@NonNull java.util.List); + field public static final int BUFFER_FLAG_CODEC_CONFIG = 2; // 0x2 + field public static final int BUFFER_FLAG_DECODE_ONLY = 32; // 0x20 + field public static final int BUFFER_FLAG_END_OF_STREAM = 4; // 0x4 + field public static final int BUFFER_FLAG_KEY_FRAME = 1; // 0x1 + field public static final int BUFFER_FLAG_PARTIAL_FRAME = 8; // 0x8 + field @Deprecated public static final int BUFFER_FLAG_SYNC_FRAME = 1; // 0x1 + field @FlaggedApi("android.media.codec.null_output_surface") public static final int CONFIGURE_FLAG_DETACHED_SURFACE = 8; // 0x8 + field public static final int CONFIGURE_FLAG_ENCODE = 1; // 0x1 + field public static final int CONFIGURE_FLAG_USE_BLOCK_MODEL = 2; // 0x2 + field public static final int CONFIGURE_FLAG_USE_CRYPTO_ASYNC = 4; // 0x4 + field public static final int CRYPTO_MODE_AES_CBC = 2; // 0x2 + field public static final int CRYPTO_MODE_AES_CTR = 1; // 0x1 + field public static final int CRYPTO_MODE_UNENCRYPTED = 0; // 0x0 + field @Deprecated public static final int INFO_OUTPUT_BUFFERS_CHANGED = -3; // 0xfffffffd + field public static final int INFO_OUTPUT_FORMAT_CHANGED = -2; // 0xfffffffe + field public static final int INFO_TRY_AGAIN_LATER = -1; // 0xffffffff + field public static final String PARAMETER_KEY_HDR10_PLUS_INFO = "hdr10-plus-info"; + field public static final String PARAMETER_KEY_LOW_LATENCY = "low-latency"; + field public static final String PARAMETER_KEY_OFFSET_TIME = "time-offset-us"; + field @FlaggedApi("android.media.codec.region_of_interest") public static final String PARAMETER_KEY_QP_OFFSET_MAP = "qp-offset-map"; + field @FlaggedApi("android.media.codec.region_of_interest") public static final String PARAMETER_KEY_QP_OFFSET_RECTS = "qp-offset-rects"; + field public static final String PARAMETER_KEY_REQUEST_SYNC_FRAME = "request-sync"; + field public static final String PARAMETER_KEY_SUSPEND = "drop-input-frames"; + field public static final String PARAMETER_KEY_SUSPEND_TIME = "drop-start-time-us"; + field public static final String PARAMETER_KEY_TUNNEL_PEEK = "tunnel-peek"; + field public static final String PARAMETER_KEY_VIDEO_BITRATE = "video-bitrate"; + field public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT = 1; // 0x1 + field public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING = 2; // 0x2 + } + + public static final class MediaCodec.BufferInfo { + ctor public MediaCodec.BufferInfo(); + method public void set(int, int, long, int); + field public int flags; + field public int offset; + field public long presentationTimeUs; + field public int size; + } + + public abstract static class MediaCodec.Callback { + ctor public MediaCodec.Callback(); + method public void onCryptoError(@NonNull android.media.MediaCodec, @NonNull android.media.MediaCodec.CryptoException); + method public abstract void onError(@NonNull android.media.MediaCodec, @NonNull android.media.MediaCodec.CodecException); + method public abstract void onInputBufferAvailable(@NonNull android.media.MediaCodec, int); + method @FlaggedApi("android.media.codec.subsession_metrics") public void onMetricsFlushed(@NonNull android.media.MediaCodec, @NonNull android.os.PersistableBundle); + method public abstract void onOutputBufferAvailable(@NonNull android.media.MediaCodec, int, @NonNull android.media.MediaCodec.BufferInfo); + method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public void onOutputBuffersAvailable(@NonNull android.media.MediaCodec, int, @NonNull java.util.ArrayDeque); + method public abstract void onOutputFormatChanged(@NonNull android.media.MediaCodec, @NonNull android.media.MediaFormat); + } + + public static final class MediaCodec.CodecException extends java.lang.IllegalStateException { + method @NonNull public String getDiagnosticInfo(); + method public int getErrorCode(); + method public boolean isRecoverable(); + method public boolean isTransient(); + field public static final int ERROR_INSUFFICIENT_RESOURCE = 1100; // 0x44c + field public static final int ERROR_RECLAIMED = 1101; // 0x44d + } + + public static final class MediaCodec.CryptoException extends java.lang.RuntimeException implements android.media.MediaDrmThrowable { + ctor public MediaCodec.CryptoException(int, @Nullable String); + method @Nullable public android.media.MediaCodec.CryptoInfo getCryptoInfo(); + method public int getErrorCode(); + method public int getErrorContext(); + method public int getOemError(); + method public int getVendorError(); + field @Deprecated public static final int ERROR_FRAME_TOO_LARGE = 8; // 0x8 + field @Deprecated public static final int ERROR_INSUFFICIENT_OUTPUT_PROTECTION = 4; // 0x4 + field @Deprecated public static final int ERROR_INSUFFICIENT_SECURITY = 7; // 0x7 + field @Deprecated public static final int ERROR_KEY_EXPIRED = 2; // 0x2 + field @Deprecated public static final int ERROR_LOST_STATE = 9; // 0x9 + field @Deprecated public static final int ERROR_NO_KEY = 1; // 0x1 + field @Deprecated public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 + field @Deprecated public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 + field @Deprecated public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 + } + + public static final class MediaCodec.CryptoInfo { + ctor public MediaCodec.CryptoInfo(); + method @NonNull public android.media.MediaCodec.CryptoInfo.Pattern getPattern(); + method public void set(int, @NonNull int[], @NonNull int[], @NonNull byte[], @NonNull byte[], int); + method public void setPattern(android.media.MediaCodec.CryptoInfo.Pattern); + field public byte[] iv; + field public byte[] key; + field public int mode; + field public int[] numBytesOfClearData; + field public int[] numBytesOfEncryptedData; + field public int numSubSamples; + } + + public static final class MediaCodec.CryptoInfo.Pattern { + ctor public MediaCodec.CryptoInfo.Pattern(int, int); + method public int getEncryptBlocks(); + method public int getSkipBlocks(); + method public void set(int, int); + } + + public class MediaCodec.IncompatibleWithBlockModelException extends java.lang.RuntimeException { + } + + public class MediaCodec.InvalidBufferFlagsException extends java.lang.RuntimeException { + } + + public static final class MediaCodec.LinearBlock { + method protected void finalize(); + method public static boolean isCodecCopyFreeCompatible(@NonNull String[]); + method public boolean isMappable(); + method @NonNull public java.nio.ByteBuffer map(); + method @Nullable public static android.media.MediaCodec.LinearBlock obtain(int, @NonNull String[]); + method public void recycle(); + } + + public static final class MediaCodec.MetricsConstants { + field public static final String CODEC = "android.media.mediacodec.codec"; + field public static final String ENCODER = "android.media.mediacodec.encoder"; + field public static final String HEIGHT = "android.media.mediacodec.height"; + field public static final String MIME_TYPE = "android.media.mediacodec.mime"; + field public static final String MODE = "android.media.mediacodec.mode"; + field public static final String MODE_AUDIO = "audio"; + field public static final String MODE_VIDEO = "video"; + field public static final String ROTATION = "android.media.mediacodec.rotation"; + field public static final String SECURE = "android.media.mediacodec.secure"; + field public static final String WIDTH = "android.media.mediacodec.width"; + } + + public static interface MediaCodec.OnFirstTunnelFrameReadyListener { + method public void onFirstTunnelFrameReady(@NonNull android.media.MediaCodec); + } + + public static interface MediaCodec.OnFrameRenderedListener { + method public void onFrameRendered(@NonNull android.media.MediaCodec, long, long); + } + + public static final class MediaCodec.OutputFrame { + method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") @NonNull public java.util.ArrayDeque getBufferInfos(); + method @NonNull public java.util.Set getChangedKeys(); + method public int getFlags(); + method @NonNull public android.media.MediaFormat getFormat(); + method @Nullable public android.hardware.HardwareBuffer getHardwareBuffer(); + method @Nullable public android.media.MediaCodec.LinearBlock getLinearBlock(); + method public long getPresentationTimeUs(); + } + + public static class MediaCodec.ParameterDescriptor { + method @NonNull public String getName(); + method public int getType(); + } + + public final class MediaCodec.QueueRequest { + method public void queue(); + method @NonNull public android.media.MediaCodec.QueueRequest setByteBufferParameter(@NonNull String, @NonNull java.nio.ByteBuffer); + method @NonNull public android.media.MediaCodec.QueueRequest setEncryptedLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, int, int, @NonNull android.media.MediaCodec.CryptoInfo); + method @NonNull public android.media.MediaCodec.QueueRequest setFlags(int); + method @NonNull public android.media.MediaCodec.QueueRequest setFloatParameter(@NonNull String, float); + method @NonNull public android.media.MediaCodec.QueueRequest setHardwareBuffer(@NonNull android.hardware.HardwareBuffer); + method @NonNull public android.media.MediaCodec.QueueRequest setIntegerParameter(@NonNull String, int); + method @NonNull public android.media.MediaCodec.QueueRequest setLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, int, int); + method @NonNull public android.media.MediaCodec.QueueRequest setLongParameter(@NonNull String, long); + method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") @NonNull public android.media.MediaCodec.QueueRequest setMultiFrameEncryptedLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, @NonNull java.util.ArrayDeque, @NonNull java.util.ArrayDeque); + method @FlaggedApi("com.android.media.codec.flags.large_audio_frame") @NonNull public android.media.MediaCodec.QueueRequest setMultiFrameLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, @NonNull java.util.ArrayDeque); + method @NonNull public android.media.MediaCodec.QueueRequest setPresentationTimeUs(long); + method @NonNull public android.media.MediaCodec.QueueRequest setStringParameter(@NonNull String, @NonNull String); + } + + public final class MediaCodecInfo { + method @NonNull public String getCanonicalName(); + method public android.media.MediaCodecInfo.CodecCapabilities getCapabilitiesForType(String); + method @NonNull public String getName(); + method @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public int getSecurityModel(); + method public String[] getSupportedTypes(); + method public boolean isAlias(); + method public boolean isEncoder(); + method public boolean isHardwareAccelerated(); + method public boolean isSoftwareOnly(); + method public boolean isVendor(); + field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final int SECURITY_MODEL_MEMORY_SAFE = 1; // 0x1 + field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final int SECURITY_MODEL_SANDBOXED = 0; // 0x0 + } + + public static final class MediaCodecInfo.AudioCapabilities { + method public android.util.Range getBitrateRange(); + method @NonNull public android.util.Range[] getInputChannelCountRanges(); + method @IntRange(from=1, to=255) public int getMaxInputChannelCount(); + method @IntRange(from=1, to=255) public int getMinInputChannelCount(); + method public android.util.Range[] getSupportedSampleRateRanges(); + method public int[] getSupportedSampleRates(); + method public boolean isSampleRateSupported(int); + } + + public static final class MediaCodecInfo.CodecCapabilities { + ctor public MediaCodecInfo.CodecCapabilities(); + method public static android.media.MediaCodecInfo.CodecCapabilities createFromProfileLevel(String, int, int); + method public android.media.MediaCodecInfo.AudioCapabilities getAudioCapabilities(); + method public android.media.MediaFormat getDefaultFormat(); + method public android.media.MediaCodecInfo.EncoderCapabilities getEncoderCapabilities(); + method public int getMaxSupportedInstances(); + method public String getMimeType(); + method public android.media.MediaCodecInfo.VideoCapabilities getVideoCapabilities(); + method public boolean isFeatureRequired(String); + method public boolean isFeatureSupported(String); + method public boolean isFormatSupported(android.media.MediaFormat); + field @Deprecated public static final int COLOR_Format12bitRGB444 = 3; // 0x3 + field @Deprecated public static final int COLOR_Format16bitARGB1555 = 5; // 0x5 + field @Deprecated public static final int COLOR_Format16bitARGB4444 = 4; // 0x4 + field @Deprecated public static final int COLOR_Format16bitBGR565 = 7; // 0x7 + field public static final int COLOR_Format16bitRGB565 = 6; // 0x6 + field @Deprecated public static final int COLOR_Format18BitBGR666 = 41; // 0x29 + field @Deprecated public static final int COLOR_Format18bitARGB1665 = 9; // 0x9 + field @Deprecated public static final int COLOR_Format18bitRGB666 = 8; // 0x8 + field @Deprecated public static final int COLOR_Format19bitARGB1666 = 10; // 0xa + field @Deprecated public static final int COLOR_Format24BitABGR6666 = 43; // 0x2b + field @Deprecated public static final int COLOR_Format24BitARGB6666 = 42; // 0x2a + field @Deprecated public static final int COLOR_Format24bitARGB1887 = 13; // 0xd + field public static final int COLOR_Format24bitBGR888 = 12; // 0xc + field @Deprecated public static final int COLOR_Format24bitRGB888 = 11; // 0xb + field @Deprecated public static final int COLOR_Format25bitARGB1888 = 14; // 0xe + field public static final int COLOR_Format32bitABGR2101010 = 2130750114; // 0x7f00aaa2 + field public static final int COLOR_Format32bitABGR8888 = 2130747392; // 0x7f00a000 + field @Deprecated public static final int COLOR_Format32bitARGB8888 = 16; // 0x10 + field @Deprecated public static final int COLOR_Format32bitBGRA8888 = 15; // 0xf + field public static final int COLOR_Format64bitABGRFloat = 2130710294; // 0x7f000f16 + field @Deprecated public static final int COLOR_Format8bitRGB332 = 2; // 0x2 + field @Deprecated public static final int COLOR_FormatCbYCrY = 27; // 0x1b + field @Deprecated public static final int COLOR_FormatCrYCbY = 28; // 0x1c + field public static final int COLOR_FormatL16 = 36; // 0x24 + field @Deprecated public static final int COLOR_FormatL2 = 33; // 0x21 + field @Deprecated public static final int COLOR_FormatL24 = 37; // 0x25 + field @Deprecated public static final int COLOR_FormatL32 = 38; // 0x26 + field @Deprecated public static final int COLOR_FormatL4 = 34; // 0x22 + field public static final int COLOR_FormatL8 = 35; // 0x23 + field @Deprecated public static final int COLOR_FormatMonochrome = 1; // 0x1 + field public static final int COLOR_FormatRGBAFlexible = 2134288520; // 0x7f36a888 + field public static final int COLOR_FormatRGBFlexible = 2134292616; // 0x7f36b888 + field public static final int COLOR_FormatRawBayer10bit = 31; // 0x1f + field public static final int COLOR_FormatRawBayer8bit = 30; // 0x1e + field public static final int COLOR_FormatRawBayer8bitcompressed = 32; // 0x20 + field public static final int COLOR_FormatSurface = 2130708361; // 0x7f000789 + field @Deprecated public static final int COLOR_FormatYCbYCr = 25; // 0x19 + field @Deprecated public static final int COLOR_FormatYCrYCb = 26; // 0x1a + field @Deprecated public static final int COLOR_FormatYUV411PackedPlanar = 18; // 0x12 + field @Deprecated public static final int COLOR_FormatYUV411Planar = 17; // 0x11 + field public static final int COLOR_FormatYUV420Flexible = 2135033992; // 0x7f420888 + field @Deprecated public static final int COLOR_FormatYUV420PackedPlanar = 20; // 0x14 + field @Deprecated public static final int COLOR_FormatYUV420PackedSemiPlanar = 39; // 0x27 + field @Deprecated public static final int COLOR_FormatYUV420Planar = 19; // 0x13 + field @Deprecated public static final int COLOR_FormatYUV420SemiPlanar = 21; // 0x15 + field public static final int COLOR_FormatYUV422Flexible = 2135042184; // 0x7f422888 + field @Deprecated public static final int COLOR_FormatYUV422PackedPlanar = 23; // 0x17 + field @Deprecated public static final int COLOR_FormatYUV422PackedSemiPlanar = 40; // 0x28 + field @Deprecated public static final int COLOR_FormatYUV422Planar = 22; // 0x16 + field @Deprecated public static final int COLOR_FormatYUV422SemiPlanar = 24; // 0x18 + field public static final int COLOR_FormatYUV444Flexible = 2135181448; // 0x7f444888 + field @Deprecated public static final int COLOR_FormatYUV444Interleaved = 29; // 0x1d + field public static final int COLOR_FormatYUVP010 = 54; // 0x36 + field @FlaggedApi("android.media.codec.p210_format_support") public static final int COLOR_FormatYUVP210 = 60; // 0x3c + field @Deprecated public static final int COLOR_QCOM_FormatYUV420SemiPlanar = 2141391872; // 0x7fa30c00 + field @Deprecated public static final int COLOR_TI_FormatYUV420PackedSemiPlanar = 2130706688; // 0x7f000100 + field public static final String FEATURE_AdaptivePlayback = "adaptive-playback"; + field @FlaggedApi("android.media.codec.null_output_surface") public static final String FEATURE_DetachedSurface = "detached-surface"; + field @FlaggedApi("android.media.codec.dynamic_color_aspects") public static final String FEATURE_DynamicColorAspects = "dynamic-color-aspects"; + field public static final String FEATURE_DynamicTimestamp = "dynamic-timestamp"; + field public static final String FEATURE_EncodingStatistics = "encoding-statistics"; + field public static final String FEATURE_FrameParsing = "frame-parsing"; + field public static final String FEATURE_HdrEditing = "hdr-editing"; + field @FlaggedApi("android.media.codec.hlg_editing") public static final String FEATURE_HlgEditing = "hlg-editing"; + field public static final String FEATURE_IntraRefresh = "intra-refresh"; + field public static final String FEATURE_LowLatency = "low-latency"; + field public static final String FEATURE_MultipleFrames = "multiple-frames"; + field public static final String FEATURE_PartialFrame = "partial-frame"; + field public static final String FEATURE_QpBounds = "qp-bounds"; + field @FlaggedApi("android.media.codec.region_of_interest") public static final String FEATURE_Roi = "region-of-interest"; + field public static final String FEATURE_SecurePlayback = "secure-playback"; + field public static final String FEATURE_TunneledPlayback = "tunneled-playback"; + field public int[] colorFormats; + field public android.media.MediaCodecInfo.CodecProfileLevel[] profileLevels; + } + + public static final class MediaCodecInfo.CodecProfileLevel { + ctor public MediaCodecInfo.CodecProfileLevel(); + field public static final int AACObjectELD = 39; // 0x27 + field public static final int AACObjectERLC = 17; // 0x11 + field public static final int AACObjectERScalable = 20; // 0x14 + field public static final int AACObjectHE = 5; // 0x5 + field public static final int AACObjectHE_PS = 29; // 0x1d + field public static final int AACObjectLC = 2; // 0x2 + field public static final int AACObjectLD = 23; // 0x17 + field public static final int AACObjectLTP = 4; // 0x4 + field public static final int AACObjectMain = 1; // 0x1 + field public static final int AACObjectSSR = 3; // 0x3 + field public static final int AACObjectScalable = 6; // 0x6 + field public static final int AACObjectXHE = 42; // 0x2a + field public static final int AC4Level0 = 1; // 0x1 + field public static final int AC4Level1 = 2; // 0x2 + field public static final int AC4Level2 = 4; // 0x4 + field public static final int AC4Level3 = 8; // 0x8 + field public static final int AC4Level4 = 16; // 0x10 + field public static final int AC4Profile00 = 257; // 0x101 + field public static final int AC4Profile10 = 513; // 0x201 + field public static final int AC4Profile11 = 514; // 0x202 + field public static final int AC4Profile21 = 1026; // 0x402 + field public static final int AC4Profile22 = 1028; // 0x404 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band0 = 513; // 0x201 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band1 = 514; // 0x202 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band2 = 516; // 0x204 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel11Band3 = 520; // 0x208 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band0 = 257; // 0x101 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band1 = 258; // 0x102 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band2 = 260; // 0x104 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel1Band3 = 264; // 0x108 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band0 = 2049; // 0x801 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band1 = 2050; // 0x802 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band2 = 2052; // 0x804 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel21Band3 = 2056; // 0x808 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band0 = 1025; // 0x401 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band1 = 1026; // 0x402 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band2 = 1028; // 0x404 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel2Band3 = 1032; // 0x408 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band0 = 8193; // 0x2001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band1 = 8194; // 0x2002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band2 = 8196; // 0x2004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel31Band3 = 8200; // 0x2008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band0 = 4097; // 0x1001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band1 = 4098; // 0x1002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band2 = 4100; // 0x1004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel3Band3 = 4104; // 0x1008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band0 = 32769; // 0x8001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band1 = 32770; // 0x8002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band2 = 32772; // 0x8004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel41Band3 = 32776; // 0x8008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band0 = 16385; // 0x4001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band1 = 16386; // 0x4002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band2 = 16388; // 0x4004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel4Band3 = 16392; // 0x4008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band0 = 131073; // 0x20001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band1 = 131074; // 0x20002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band2 = 131076; // 0x20004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel51Band3 = 131080; // 0x20008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band0 = 65537; // 0x10001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band1 = 65538; // 0x10002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band2 = 65540; // 0x10004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel5Band3 = 65544; // 0x10008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band0 = 524289; // 0x80001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band1 = 524290; // 0x80002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band2 = 524292; // 0x80004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel61Band3 = 524296; // 0x80008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band0 = 262145; // 0x40001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band1 = 262146; // 0x40002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band2 = 262148; // 0x40004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel6Band3 = 262152; // 0x40008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band0 = 2097153; // 0x200001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band1 = 2097154; // 0x200002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band2 = 2097156; // 0x200004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel71Band3 = 2097160; // 0x200008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band0 = 1048577; // 0x100001 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band1 = 1048578; // 0x100002 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band2 = 1048580; // 0x100004 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVLevel7Band3 = 1048584; // 0x100008 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVProfile422_10 = 1; // 0x1 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVProfile422_10HDR10 = 4096; // 0x1000 + field @FlaggedApi("android.media.codec.apv_support") public static final int APVProfile422_10HDR10Plus = 8192; // 0x2000 + field public static final int AV1Level2 = 1; // 0x1 + field public static final int AV1Level21 = 2; // 0x2 + field public static final int AV1Level22 = 4; // 0x4 + field public static final int AV1Level23 = 8; // 0x8 + field public static final int AV1Level3 = 16; // 0x10 + field public static final int AV1Level31 = 32; // 0x20 + field public static final int AV1Level32 = 64; // 0x40 + field public static final int AV1Level33 = 128; // 0x80 + field public static final int AV1Level4 = 256; // 0x100 + field public static final int AV1Level41 = 512; // 0x200 + field public static final int AV1Level42 = 1024; // 0x400 + field public static final int AV1Level43 = 2048; // 0x800 + field public static final int AV1Level5 = 4096; // 0x1000 + field public static final int AV1Level51 = 8192; // 0x2000 + field public static final int AV1Level52 = 16384; // 0x4000 + field public static final int AV1Level53 = 32768; // 0x8000 + field public static final int AV1Level6 = 65536; // 0x10000 + field public static final int AV1Level61 = 131072; // 0x20000 + field public static final int AV1Level62 = 262144; // 0x40000 + field public static final int AV1Level63 = 524288; // 0x80000 + field public static final int AV1Level7 = 1048576; // 0x100000 + field public static final int AV1Level71 = 2097152; // 0x200000 + field public static final int AV1Level72 = 4194304; // 0x400000 + field public static final int AV1Level73 = 8388608; // 0x800000 + field public static final int AV1ProfileMain10 = 2; // 0x2 + field public static final int AV1ProfileMain10HDR10 = 4096; // 0x1000 + field public static final int AV1ProfileMain10HDR10Plus = 8192; // 0x2000 + field public static final int AV1ProfileMain8 = 1; // 0x1 + field public static final int AVCLevel1 = 1; // 0x1 + field public static final int AVCLevel11 = 4; // 0x4 + field public static final int AVCLevel12 = 8; // 0x8 + field public static final int AVCLevel13 = 16; // 0x10 + field public static final int AVCLevel1b = 2; // 0x2 + field public static final int AVCLevel2 = 32; // 0x20 + field public static final int AVCLevel21 = 64; // 0x40 + field public static final int AVCLevel22 = 128; // 0x80 + field public static final int AVCLevel3 = 256; // 0x100 + field public static final int AVCLevel31 = 512; // 0x200 + field public static final int AVCLevel32 = 1024; // 0x400 + field public static final int AVCLevel4 = 2048; // 0x800 + field public static final int AVCLevel41 = 4096; // 0x1000 + field public static final int AVCLevel42 = 8192; // 0x2000 + field public static final int AVCLevel5 = 16384; // 0x4000 + field public static final int AVCLevel51 = 32768; // 0x8000 + field public static final int AVCLevel52 = 65536; // 0x10000 + field public static final int AVCLevel6 = 131072; // 0x20000 + field public static final int AVCLevel61 = 262144; // 0x40000 + field public static final int AVCLevel62 = 524288; // 0x80000 + field public static final int AVCProfileBaseline = 1; // 0x1 + field public static final int AVCProfileConstrainedBaseline = 65536; // 0x10000 + field public static final int AVCProfileConstrainedHigh = 524288; // 0x80000 + field public static final int AVCProfileExtended = 4; // 0x4 + field public static final int AVCProfileHigh = 8; // 0x8 + field public static final int AVCProfileHigh10 = 16; // 0x10 + field public static final int AVCProfileHigh422 = 32; // 0x20 + field public static final int AVCProfileHigh444 = 64; // 0x40 + field public static final int AVCProfileMain = 2; // 0x2 + field public static final int DTS_HDProfileHRA = 1; // 0x1 + field public static final int DTS_HDProfileLBR = 2; // 0x2 + field public static final int DTS_HDProfileMA = 4; // 0x4 + field public static final int DTS_UHDProfileP1 = 1; // 0x1 + field public static final int DTS_UHDProfileP2 = 2; // 0x2 + field public static final int DolbyVisionLevel8k30 = 1024; // 0x400 + field public static final int DolbyVisionLevel8k60 = 2048; // 0x800 + field public static final int DolbyVisionLevelFhd24 = 4; // 0x4 + field public static final int DolbyVisionLevelFhd30 = 8; // 0x8 + field public static final int DolbyVisionLevelFhd60 = 16; // 0x10 + field public static final int DolbyVisionLevelHd24 = 1; // 0x1 + field public static final int DolbyVisionLevelHd30 = 2; // 0x2 + field public static final int DolbyVisionLevelUhd120 = 512; // 0x200 + field public static final int DolbyVisionLevelUhd24 = 32; // 0x20 + field public static final int DolbyVisionLevelUhd30 = 64; // 0x40 + field public static final int DolbyVisionLevelUhd48 = 128; // 0x80 + field public static final int DolbyVisionLevelUhd60 = 256; // 0x100 + field public static final int DolbyVisionProfileDvav110 = 1024; // 0x400 + field public static final int DolbyVisionProfileDvavPen = 2; // 0x2 + field public static final int DolbyVisionProfileDvavPer = 1; // 0x1 + field public static final int DolbyVisionProfileDvavSe = 512; // 0x200 + field public static final int DolbyVisionProfileDvheDen = 8; // 0x8 + field public static final int DolbyVisionProfileDvheDer = 4; // 0x4 + field public static final int DolbyVisionProfileDvheDtb = 128; // 0x80 + field public static final int DolbyVisionProfileDvheDth = 64; // 0x40 + field public static final int DolbyVisionProfileDvheDtr = 16; // 0x10 + field public static final int DolbyVisionProfileDvheSt = 256; // 0x100 + field public static final int DolbyVisionProfileDvheStn = 32; // 0x20 + field public static final int H263Level10 = 1; // 0x1 + field public static final int H263Level20 = 2; // 0x2 + field public static final int H263Level30 = 4; // 0x4 + field public static final int H263Level40 = 8; // 0x8 + field public static final int H263Level45 = 16; // 0x10 + field public static final int H263Level50 = 32; // 0x20 + field public static final int H263Level60 = 64; // 0x40 + field public static final int H263Level70 = 128; // 0x80 + field public static final int H263ProfileBackwardCompatible = 4; // 0x4 + field public static final int H263ProfileBaseline = 1; // 0x1 + field public static final int H263ProfileH320Coding = 2; // 0x2 + field public static final int H263ProfileHighCompression = 32; // 0x20 + field public static final int H263ProfileHighLatency = 256; // 0x100 + field public static final int H263ProfileISWV2 = 8; // 0x8 + field public static final int H263ProfileISWV3 = 16; // 0x10 + field public static final int H263ProfileInterlace = 128; // 0x80 + field public static final int H263ProfileInternet = 64; // 0x40 + field public static final int HEVCHighTierLevel1 = 2; // 0x2 + field public static final int HEVCHighTierLevel2 = 8; // 0x8 + field public static final int HEVCHighTierLevel21 = 32; // 0x20 + field public static final int HEVCHighTierLevel3 = 128; // 0x80 + field public static final int HEVCHighTierLevel31 = 512; // 0x200 + field public static final int HEVCHighTierLevel4 = 2048; // 0x800 + field public static final int HEVCHighTierLevel41 = 8192; // 0x2000 + field public static final int HEVCHighTierLevel5 = 32768; // 0x8000 + field public static final int HEVCHighTierLevel51 = 131072; // 0x20000 + field public static final int HEVCHighTierLevel52 = 524288; // 0x80000 + field public static final int HEVCHighTierLevel6 = 2097152; // 0x200000 + field public static final int HEVCHighTierLevel61 = 8388608; // 0x800000 + field public static final int HEVCHighTierLevel62 = 33554432; // 0x2000000 + field public static final int HEVCMainTierLevel1 = 1; // 0x1 + field public static final int HEVCMainTierLevel2 = 4; // 0x4 + field public static final int HEVCMainTierLevel21 = 16; // 0x10 + field public static final int HEVCMainTierLevel3 = 64; // 0x40 + field public static final int HEVCMainTierLevel31 = 256; // 0x100 + field public static final int HEVCMainTierLevel4 = 1024; // 0x400 + field public static final int HEVCMainTierLevel41 = 4096; // 0x1000 + field public static final int HEVCMainTierLevel5 = 16384; // 0x4000 + field public static final int HEVCMainTierLevel51 = 65536; // 0x10000 + field public static final int HEVCMainTierLevel52 = 262144; // 0x40000 + field public static final int HEVCMainTierLevel6 = 1048576; // 0x100000 + field public static final int HEVCMainTierLevel61 = 4194304; // 0x400000 + field public static final int HEVCMainTierLevel62 = 16777216; // 0x1000000 + field public static final int HEVCProfileMain = 1; // 0x1 + field public static final int HEVCProfileMain10 = 2; // 0x2 + field public static final int HEVCProfileMain10HDR10 = 4096; // 0x1000 + field public static final int HEVCProfileMain10HDR10Plus = 8192; // 0x2000 + field public static final int HEVCProfileMainStill = 4; // 0x4 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseAac = 16908290; // 0x1020002 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseEnhancedAac = 17039362; // 0x1040002 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseEnhancedFlac = 17039364; // 0x1040004 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseEnhancedOpus = 17039361; // 0x1040001 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseEnhancedPcm = 17039368; // 0x1040008 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseFlac = 16908292; // 0x1020004 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBaseOpus = 16908289; // 0x1020001 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileBasePcm = 16908296; // 0x1020008 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileSimpleAac = 16842754; // 0x1010002 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileSimpleFlac = 16842756; // 0x1010004 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileSimpleOpus = 16842753; // 0x1010001 + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final int IAMFProfileSimplePcm = 16842760; // 0x1010008 + field public static final int MPEG2LevelH14 = 2; // 0x2 + field public static final int MPEG2LevelHL = 3; // 0x3 + field public static final int MPEG2LevelHP = 4; // 0x4 + field public static final int MPEG2LevelLL = 0; // 0x0 + field public static final int MPEG2LevelML = 1; // 0x1 + field public static final int MPEG2Profile422 = 2; // 0x2 + field public static final int MPEG2ProfileHigh = 5; // 0x5 + field public static final int MPEG2ProfileMain = 1; // 0x1 + field public static final int MPEG2ProfileSNR = 3; // 0x3 + field public static final int MPEG2ProfileSimple = 0; // 0x0 + field public static final int MPEG2ProfileSpatial = 4; // 0x4 + field public static final int MPEG4Level0 = 1; // 0x1 + field public static final int MPEG4Level0b = 2; // 0x2 + field public static final int MPEG4Level1 = 4; // 0x4 + field public static final int MPEG4Level2 = 8; // 0x8 + field public static final int MPEG4Level3 = 16; // 0x10 + field public static final int MPEG4Level3b = 24; // 0x18 + field public static final int MPEG4Level4 = 32; // 0x20 + field public static final int MPEG4Level4a = 64; // 0x40 + field public static final int MPEG4Level5 = 128; // 0x80 + field public static final int MPEG4Level6 = 256; // 0x100 + field public static final int MPEG4ProfileAdvancedCoding = 4096; // 0x1000 + field public static final int MPEG4ProfileAdvancedCore = 8192; // 0x2000 + field public static final int MPEG4ProfileAdvancedRealTime = 1024; // 0x400 + field public static final int MPEG4ProfileAdvancedScalable = 16384; // 0x4000 + field public static final int MPEG4ProfileAdvancedSimple = 32768; // 0x8000 + field public static final int MPEG4ProfileBasicAnimated = 256; // 0x100 + field public static final int MPEG4ProfileCore = 4; // 0x4 + field public static final int MPEG4ProfileCoreScalable = 2048; // 0x800 + field public static final int MPEG4ProfileHybrid = 512; // 0x200 + field public static final int MPEG4ProfileMain = 8; // 0x8 + field public static final int MPEG4ProfileNbit = 16; // 0x10 + field public static final int MPEG4ProfileScalableTexture = 32; // 0x20 + field public static final int MPEG4ProfileSimple = 1; // 0x1 + field public static final int MPEG4ProfileSimpleFBA = 128; // 0x80 + field public static final int MPEG4ProfileSimpleFace = 64; // 0x40 + field public static final int MPEG4ProfileSimpleScalable = 2; // 0x2 + field public static final int VP8Level_Version0 = 1; // 0x1 + field public static final int VP8Level_Version1 = 2; // 0x2 + field public static final int VP8Level_Version2 = 4; // 0x4 + field public static final int VP8Level_Version3 = 8; // 0x8 + field public static final int VP8ProfileMain = 1; // 0x1 + field public static final int VP9Level1 = 1; // 0x1 + field public static final int VP9Level11 = 2; // 0x2 + field public static final int VP9Level2 = 4; // 0x4 + field public static final int VP9Level21 = 8; // 0x8 + field public static final int VP9Level3 = 16; // 0x10 + field public static final int VP9Level31 = 32; // 0x20 + field public static final int VP9Level4 = 64; // 0x40 + field public static final int VP9Level41 = 128; // 0x80 + field public static final int VP9Level5 = 256; // 0x100 + field public static final int VP9Level51 = 512; // 0x200 + field public static final int VP9Level52 = 1024; // 0x400 + field public static final int VP9Level6 = 2048; // 0x800 + field public static final int VP9Level61 = 4096; // 0x1000 + field public static final int VP9Level62 = 8192; // 0x2000 + field public static final int VP9Profile0 = 1; // 0x1 + field public static final int VP9Profile1 = 2; // 0x2 + field public static final int VP9Profile2 = 4; // 0x4 + field public static final int VP9Profile2HDR = 4096; // 0x1000 + field public static final int VP9Profile2HDR10Plus = 16384; // 0x4000 + field public static final int VP9Profile3 = 8; // 0x8 + field public static final int VP9Profile3HDR = 8192; // 0x2000 + field public static final int VP9Profile3HDR10Plus = 32768; // 0x8000 + field public int level; + field public int profile; + } + + public static final class MediaCodecInfo.EncoderCapabilities { + method public android.util.Range getComplexityRange(); + method public android.util.Range getQualityRange(); + method public boolean isBitrateModeSupported(int); + field public static final int BITRATE_MODE_CBR = 2; // 0x2 + field public static final int BITRATE_MODE_CBR_FD = 3; // 0x3 + field public static final int BITRATE_MODE_CQ = 0; // 0x0 + field public static final int BITRATE_MODE_VBR = 1; // 0x1 + } + + public static final class MediaCodecInfo.VideoCapabilities { + method public boolean areSizeAndRateSupported(int, int, double); + method @Nullable public android.util.Range getAchievableFrameRatesFor(int, int); + method public android.util.Range getBitrateRange(); + method public int getHeightAlignment(); + method public android.util.Range getSupportedFrameRates(); + method public android.util.Range getSupportedFrameRatesFor(int, int); + method public android.util.Range getSupportedHeights(); + method public android.util.Range getSupportedHeightsFor(int); + method @Nullable public java.util.List getSupportedPerformancePoints(); + method public android.util.Range getSupportedWidths(); + method public android.util.Range getSupportedWidthsFor(int); + method public int getWidthAlignment(); + method public boolean isSizeSupported(int, int); + } + + public static final class MediaCodecInfo.VideoCapabilities.PerformancePoint { + ctor public MediaCodecInfo.VideoCapabilities.PerformancePoint(int, int, int); + method public boolean covers(@NonNull android.media.MediaFormat); + method public boolean covers(@NonNull android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint); + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_100; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_120; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_200; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_24; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_240; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_25; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_30; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_50; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint FHD_60; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_100; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_120; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_200; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_24; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_240; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_25; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_30; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_50; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint HD_60; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_24; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_25; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_30; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_48; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_50; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint SD_60; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_100; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_120; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_200; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_24; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_240; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_25; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_30; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_50; + field @NonNull public static final android.media.MediaCodecInfo.VideoCapabilities.PerformancePoint UHD_60; + } + + public final class MediaCodecList { + ctor public MediaCodecList(int); + method public String findDecoderForFormat(android.media.MediaFormat); + method public String findEncoderForFormat(android.media.MediaFormat); + method @Deprecated public static int getCodecCount(); + method @Deprecated public static android.media.MediaCodecInfo getCodecInfoAt(int); + method public android.media.MediaCodecInfo[] getCodecInfos(); + field public static final int ALL_CODECS = 1; // 0x1 + field public static final int REGULAR_CODECS = 0; // 0x0 + } + + public final class MediaCrypto { + ctor public MediaCrypto(@NonNull java.util.UUID, @NonNull byte[]) throws android.media.MediaCryptoException; + method protected void finalize(); + method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID); + method public void release(); + method public boolean requiresSecureDecoderComponent(@NonNull String); + method public void setMediaDrmSession(@NonNull byte[]) throws android.media.MediaCryptoException; + } + + public final class MediaCryptoException extends java.lang.Exception implements android.media.MediaDrmThrowable { + ctor public MediaCryptoException(@Nullable String); + method public int getErrorContext(); + method public int getOemError(); + method public int getVendorError(); + } + + public abstract class MediaDataSource implements java.io.Closeable { + ctor public MediaDataSource(); + method public abstract long getSize() throws java.io.IOException; + method public abstract int readAt(long, byte[], int, int) throws java.io.IOException; + } + + public final class MediaDescrambler implements java.lang.AutoCloseable { + ctor public MediaDescrambler(int) throws android.media.MediaCasException.UnsupportedCasException; + method public void close(); + method public int descramble(@NonNull java.nio.ByteBuffer, @NonNull java.nio.ByteBuffer, @NonNull android.media.MediaCodec.CryptoInfo); + method protected void finalize(); + method public boolean requiresSecureDecoderComponent(@NonNull String); + method public void setMediaCasSession(@NonNull android.media.MediaCas.Session); + field public static final byte SCRAMBLE_CONTROL_EVEN_KEY = 2; // 0x2 + field public static final byte SCRAMBLE_CONTROL_ODD_KEY = 3; // 0x3 + field public static final byte SCRAMBLE_CONTROL_RESERVED = 1; // 0x1 + field public static final byte SCRAMBLE_CONTROL_UNSCRAMBLED = 0; // 0x0 + field public static final byte SCRAMBLE_FLAG_PES_HEADER = 1; // 0x1 + } + + public class MediaDescription implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public CharSequence getDescription(); + method @Nullable public android.os.Bundle getExtras(); + method @Nullable public android.graphics.Bitmap getIconBitmap(); + method @Nullable public android.net.Uri getIconUri(); + method @Nullable public String getMediaId(); + method @Nullable public android.net.Uri getMediaUri(); + method @Nullable public CharSequence getSubtitle(); + method @Nullable public CharSequence getTitle(); + method public void writeToParcel(android.os.Parcel, int); + field public static final long BT_FOLDER_TYPE_ALBUMS = 2L; // 0x2L + field public static final long BT_FOLDER_TYPE_ARTISTS = 3L; // 0x3L + field public static final long BT_FOLDER_TYPE_GENRES = 4L; // 0x4L + field public static final long BT_FOLDER_TYPE_MIXED = 0L; // 0x0L + field public static final long BT_FOLDER_TYPE_PLAYLISTS = 5L; // 0x5L + field public static final long BT_FOLDER_TYPE_TITLES = 1L; // 0x1L + field public static final long BT_FOLDER_TYPE_YEARS = 6L; // 0x6L + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String EXTRA_BT_FOLDER_TYPE = "android.media.extra.BT_FOLDER_TYPE"; + } + + public static class MediaDescription.Builder { + ctor public MediaDescription.Builder(); + method public android.media.MediaDescription build(); + method public android.media.MediaDescription.Builder setDescription(@Nullable CharSequence); + method public android.media.MediaDescription.Builder setExtras(@Nullable android.os.Bundle); + method public android.media.MediaDescription.Builder setIconBitmap(@Nullable android.graphics.Bitmap); + method public android.media.MediaDescription.Builder setIconUri(@Nullable android.net.Uri); + method public android.media.MediaDescription.Builder setMediaId(@Nullable String); + method public android.media.MediaDescription.Builder setMediaUri(@Nullable android.net.Uri); + method public android.media.MediaDescription.Builder setSubtitle(@Nullable CharSequence); + method public android.media.MediaDescription.Builder setTitle(@Nullable CharSequence); + } + + public final class MediaDrm implements java.lang.AutoCloseable { + ctor public MediaDrm(@NonNull java.util.UUID) throws android.media.UnsupportedSchemeException; + method public void clearOnEventListener(); + method public void clearOnExpirationUpdateListener(); + method public void clearOnKeyStatusChangeListener(); + method public void clearOnSessionLostStateListener(); + method public void close(); + method public void closeSession(@NonNull byte[]); + method public int getConnectedHdcpLevel(); + method public android.media.MediaDrm.CryptoSession getCryptoSession(@NonNull byte[], @NonNull String, @NonNull String); + method @NonNull public android.media.MediaDrm.KeyRequest getKeyRequest(@NonNull byte[], @Nullable byte[], @Nullable String, int, @Nullable java.util.HashMap) throws android.media.NotProvisionedException; + method @NonNull public java.util.List getLogMessages(); + method public int getMaxHdcpLevel(); + method public static int getMaxSecurityLevel(); + method public int getMaxSessionCount(); + method public android.os.PersistableBundle getMetrics(); + method @NonNull public java.util.List getOfflineLicenseKeySetIds(); + method public int getOfflineLicenseState(@NonNull byte[]); + method public int getOpenSessionCount(); + method @Nullable public android.media.MediaDrm.PlaybackComponent getPlaybackComponent(@NonNull byte[]); + method @NonNull public byte[] getPropertyByteArray(String); + method @NonNull public String getPropertyString(@NonNull String); + method @NonNull public android.media.MediaDrm.ProvisionRequest getProvisionRequest(); + method @Deprecated @NonNull public byte[] getSecureStop(@NonNull byte[]); + method @Deprecated @NonNull public java.util.List getSecureStopIds(); + method @Deprecated @NonNull public java.util.List getSecureStops(); + method public int getSecurityLevel(@NonNull byte[]); + method @NonNull public static java.util.List getSupportedCryptoSchemes(); + method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID); + method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID, @NonNull String); + method public static boolean isCryptoSchemeSupported(@NonNull java.util.UUID, @NonNull String, int); + method @NonNull public byte[] openSession() throws android.media.NotProvisionedException, android.media.ResourceBusyException; + method @NonNull public byte[] openSession(int) throws android.media.NotProvisionedException, android.media.ResourceBusyException; + method @Nullable public byte[] provideKeyResponse(@NonNull byte[], @NonNull byte[]) throws android.media.DeniedByServerException, android.media.NotProvisionedException; + method public void provideProvisionResponse(@NonNull byte[]) throws android.media.DeniedByServerException; + method @NonNull public java.util.HashMap queryKeyStatus(@NonNull byte[]); + method @Deprecated public void release(); + method @Deprecated public void releaseAllSecureStops(); + method @Deprecated public void releaseSecureStops(@NonNull byte[]); + method @Deprecated public void removeAllSecureStops(); + method public void removeKeys(@NonNull byte[]); + method public void removeOfflineLicense(@NonNull byte[]); + method @Deprecated public void removeSecureStop(@NonNull byte[]); + method public boolean requiresSecureDecoder(@NonNull String); + method public boolean requiresSecureDecoder(@NonNull String, int); + method public void restoreKeys(@NonNull byte[], @NonNull byte[]); + method public void setOnEventListener(@Nullable android.media.MediaDrm.OnEventListener); + method public void setOnEventListener(@Nullable android.media.MediaDrm.OnEventListener, @Nullable android.os.Handler); + method public void setOnEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaDrm.OnEventListener); + method public void setOnExpirationUpdateListener(@Nullable android.media.MediaDrm.OnExpirationUpdateListener, @Nullable android.os.Handler); + method public void setOnExpirationUpdateListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaDrm.OnExpirationUpdateListener); + method public void setOnKeyStatusChangeListener(@Nullable android.media.MediaDrm.OnKeyStatusChangeListener, @Nullable android.os.Handler); + method public void setOnKeyStatusChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaDrm.OnKeyStatusChangeListener); + method public void setOnSessionLostStateListener(@Nullable android.media.MediaDrm.OnSessionLostStateListener, @Nullable android.os.Handler); + method public void setOnSessionLostStateListener(@NonNull java.util.concurrent.Executor, @Nullable android.media.MediaDrm.OnSessionLostStateListener); + method public void setPropertyByteArray(@NonNull String, @NonNull byte[]); + method public void setPropertyString(@NonNull String, @NonNull String); + field @Deprecated public static final int EVENT_KEY_EXPIRED = 3; // 0x3 + field public static final int EVENT_KEY_REQUIRED = 2; // 0x2 + field @Deprecated public static final int EVENT_PROVISION_REQUIRED = 1; // 0x1 + field public static final int EVENT_SESSION_RECLAIMED = 5; // 0x5 + field public static final int EVENT_VENDOR_DEFINED = 4; // 0x4 + field public static final int HDCP_LEVEL_UNKNOWN = 0; // 0x0 + field public static final int HDCP_NONE = 1; // 0x1 + field public static final int HDCP_NO_DIGITAL_OUTPUT = 2147483647; // 0x7fffffff + field public static final int HDCP_V1 = 2; // 0x2 + field public static final int HDCP_V2 = 3; // 0x3 + field public static final int HDCP_V2_1 = 4; // 0x4 + field public static final int HDCP_V2_2 = 5; // 0x5 + field public static final int HDCP_V2_3 = 6; // 0x6 + field public static final int KEY_TYPE_OFFLINE = 2; // 0x2 + field public static final int KEY_TYPE_RELEASE = 3; // 0x3 + field public static final int KEY_TYPE_STREAMING = 1; // 0x1 + field public static final int OFFLINE_LICENSE_STATE_RELEASED = 2; // 0x2 + field public static final int OFFLINE_LICENSE_STATE_UNKNOWN = 0; // 0x0 + field public static final int OFFLINE_LICENSE_STATE_USABLE = 1; // 0x1 + field public static final String PROPERTY_ALGORITHMS = "algorithms"; + field public static final String PROPERTY_DESCRIPTION = "description"; + field public static final String PROPERTY_DEVICE_UNIQUE_ID = "deviceUniqueId"; + field public static final String PROPERTY_VENDOR = "vendor"; + field public static final String PROPERTY_VERSION = "version"; + field public static final int SECURITY_LEVEL_HW_SECURE_ALL = 5; // 0x5 + field public static final int SECURITY_LEVEL_HW_SECURE_CRYPTO = 3; // 0x3 + field public static final int SECURITY_LEVEL_HW_SECURE_DECODE = 4; // 0x4 + field public static final int SECURITY_LEVEL_SW_SECURE_CRYPTO = 1; // 0x1 + field public static final int SECURITY_LEVEL_SW_SECURE_DECODE = 2; // 0x2 + field public static final int SECURITY_LEVEL_UNKNOWN = 0; // 0x0 + } + + public final class MediaDrm.CryptoSession { + method @NonNull public byte[] decrypt(@NonNull byte[], @NonNull byte[], @NonNull byte[]); + method @NonNull public byte[] encrypt(@NonNull byte[], @NonNull byte[], @NonNull byte[]); + method @NonNull public byte[] sign(@NonNull byte[], @NonNull byte[]); + method public boolean verify(@NonNull byte[], @NonNull byte[], @NonNull byte[]); + } + + public static final class MediaDrm.ErrorCodes { + field public static final int ERROR_CERTIFICATE_MALFORMED = 10; // 0xa + field public static final int ERROR_CERTIFICATE_MISSING = 11; // 0xb + field public static final int ERROR_CRYPTO_LIBRARY = 12; // 0xc + field public static final int ERROR_FRAME_TOO_LARGE = 8; // 0x8 + field public static final int ERROR_GENERIC_OEM = 13; // 0xd + field public static final int ERROR_GENERIC_PLUGIN = 14; // 0xe + field public static final int ERROR_INIT_DATA = 15; // 0xf + field public static final int ERROR_INSUFFICIENT_OUTPUT_PROTECTION = 4; // 0x4 + field public static final int ERROR_INSUFFICIENT_SECURITY = 7; // 0x7 + field public static final int ERROR_KEY_EXPIRED = 2; // 0x2 + field public static final int ERROR_KEY_NOT_LOADED = 16; // 0x10 + field public static final int ERROR_LICENSE_PARSE = 17; // 0x11 + field public static final int ERROR_LICENSE_POLICY = 18; // 0x12 + field public static final int ERROR_LICENSE_RELEASE = 19; // 0x13 + field public static final int ERROR_LICENSE_REQUEST_REJECTED = 20; // 0x14 + field public static final int ERROR_LICENSE_RESTORE = 21; // 0x15 + field public static final int ERROR_LICENSE_STATE = 22; // 0x16 + field public static final int ERROR_LOST_STATE = 9; // 0x9 + field public static final int ERROR_MEDIA_FRAMEWORK = 23; // 0x17 + field public static final int ERROR_NO_KEY = 1; // 0x1 + field public static final int ERROR_PROVISIONING_CERTIFICATE = 24; // 0x18 + field public static final int ERROR_PROVISIONING_CONFIG = 25; // 0x19 + field public static final int ERROR_PROVISIONING_PARSE = 26; // 0x1a + field public static final int ERROR_PROVISIONING_REQUEST_REJECTED = 27; // 0x1b + field public static final int ERROR_PROVISIONING_RETRY = 28; // 0x1c + field public static final int ERROR_RESOURCE_BUSY = 3; // 0x3 + field public static final int ERROR_RESOURCE_CONTENTION = 29; // 0x1d + field public static final int ERROR_SECURE_STOP_RELEASE = 30; // 0x1e + field public static final int ERROR_SESSION_NOT_OPENED = 5; // 0x5 + field public static final int ERROR_STORAGE_READ = 31; // 0x1f + field public static final int ERROR_STORAGE_WRITE = 32; // 0x20 + field public static final int ERROR_UNKNOWN = 0; // 0x0 + field public static final int ERROR_UNSUPPORTED_OPERATION = 6; // 0x6 + field public static final int ERROR_ZERO_SUBSAMPLES = 33; // 0x21 + } + + public static final class MediaDrm.KeyRequest { + method @NonNull public byte[] getData(); + method @NonNull public String getDefaultUrl(); + method public int getRequestType(); + field public static final int REQUEST_TYPE_INITIAL = 0; // 0x0 + field public static final int REQUEST_TYPE_NONE = 3; // 0x3 + field public static final int REQUEST_TYPE_RELEASE = 2; // 0x2 + field public static final int REQUEST_TYPE_RENEWAL = 1; // 0x1 + field public static final int REQUEST_TYPE_UPDATE = 4; // 0x4 + } + + public static final class MediaDrm.KeyStatus { + method @NonNull public byte[] getKeyId(); + method public int getStatusCode(); + field public static final int STATUS_EXPIRED = 1; // 0x1 + field public static final int STATUS_INTERNAL_ERROR = 4; // 0x4 + field public static final int STATUS_OUTPUT_NOT_ALLOWED = 2; // 0x2 + field public static final int STATUS_PENDING = 3; // 0x3 + field public static final int STATUS_USABLE = 0; // 0x0 + field public static final int STATUS_USABLE_IN_FUTURE = 5; // 0x5 + } + + public static final class MediaDrm.LogMessage { + method @NonNull public String getMessage(); + method public int getPriority(); + method public long getTimestampMillis(); + } + + public static final class MediaDrm.MediaDrmStateException extends java.lang.IllegalStateException implements android.media.MediaDrmThrowable { + method @NonNull public String getDiagnosticInfo(); + method public int getErrorCode(); + method public int getErrorContext(); + method public int getOemError(); + method public int getVendorError(); + method public boolean isTransient(); + } + + public static final class MediaDrm.MetricsConstants { + field public static final String CLOSE_SESSION_ERROR_COUNT = "drm.mediadrm.close_session.error.count"; + field public static final String CLOSE_SESSION_ERROR_LIST = "drm.mediadrm.close_session.error.list"; + field public static final String CLOSE_SESSION_OK_COUNT = "drm.mediadrm.close_session.ok.count"; + field public static final String EVENT_KEY_EXPIRED_COUNT = "drm.mediadrm.event.KEY_EXPIRED.count"; + field public static final String EVENT_KEY_NEEDED_COUNT = "drm.mediadrm.event.KEY_NEEDED.count"; + field public static final String EVENT_PROVISION_REQUIRED_COUNT = "drm.mediadrm.event.PROVISION_REQUIRED.count"; + field public static final String EVENT_SESSION_RECLAIMED_COUNT = "drm.mediadrm.event.SESSION_RECLAIMED.count"; + field public static final String EVENT_VENDOR_DEFINED_COUNT = "drm.mediadrm.event.VENDOR_DEFINED.count"; + field public static final String GET_DEVICE_UNIQUE_ID_ERROR_COUNT = "drm.mediadrm.get_device_unique_id.error.count"; + field public static final String GET_DEVICE_UNIQUE_ID_ERROR_LIST = "drm.mediadrm.get_device_unique_id.error.list"; + field public static final String GET_DEVICE_UNIQUE_ID_OK_COUNT = "drm.mediadrm.get_device_unique_id.ok.count"; + field public static final String GET_KEY_REQUEST_ERROR_COUNT = "drm.mediadrm.get_key_request.error.count"; + field public static final String GET_KEY_REQUEST_ERROR_LIST = "drm.mediadrm.get_key_request.error.list"; + field public static final String GET_KEY_REQUEST_OK_COUNT = "drm.mediadrm.get_key_request.ok.count"; + field public static final String GET_KEY_REQUEST_OK_TIME_MICROS = "drm.mediadrm.get_key_request.ok.average_time_micros"; + field public static final String GET_PROVISION_REQUEST_ERROR_COUNT = "drm.mediadrm.get_provision_request.error.count"; + field public static final String GET_PROVISION_REQUEST_ERROR_LIST = "drm.mediadrm.get_provision_request.error.list"; + field public static final String GET_PROVISION_REQUEST_OK_COUNT = "drm.mediadrm.get_provision_request.ok.count"; + field public static final String KEY_STATUS_EXPIRED_COUNT = "drm.mediadrm.key_status.EXPIRED.count"; + field public static final String KEY_STATUS_INTERNAL_ERROR_COUNT = "drm.mediadrm.key_status.INTERNAL_ERROR.count"; + field public static final String KEY_STATUS_OUTPUT_NOT_ALLOWED_COUNT = "drm.mediadrm.key_status_change.OUTPUT_NOT_ALLOWED.count"; + field public static final String KEY_STATUS_PENDING_COUNT = "drm.mediadrm.key_status_change.PENDING.count"; + field public static final String KEY_STATUS_USABLE_COUNT = "drm.mediadrm.key_status_change.USABLE.count"; + field public static final String OPEN_SESSION_ERROR_COUNT = "drm.mediadrm.open_session.error.count"; + field public static final String OPEN_SESSION_ERROR_LIST = "drm.mediadrm.open_session.error.list"; + field public static final String OPEN_SESSION_OK_COUNT = "drm.mediadrm.open_session.ok.count"; + field public static final String PROVIDE_KEY_RESPONSE_ERROR_COUNT = "drm.mediadrm.provide_key_response.error.count"; + field public static final String PROVIDE_KEY_RESPONSE_ERROR_LIST = "drm.mediadrm.provide_key_response.error.list"; + field public static final String PROVIDE_KEY_RESPONSE_OK_COUNT = "drm.mediadrm.provide_key_response.ok.count"; + field public static final String PROVIDE_KEY_RESPONSE_OK_TIME_MICROS = "drm.mediadrm.provide_key_response.ok.average_time_micros"; + field public static final String PROVIDE_PROVISION_RESPONSE_ERROR_COUNT = "drm.mediadrm.provide_provision_response.error.count"; + field public static final String PROVIDE_PROVISION_RESPONSE_ERROR_LIST = "drm.mediadrm.provide_provision_response.error.list"; + field public static final String PROVIDE_PROVISION_RESPONSE_OK_COUNT = "drm.mediadrm.provide_provision_response.ok.count"; + field public static final String SESSION_END_TIMES_MS = "drm.mediadrm.session_end_times_ms"; + field public static final String SESSION_START_TIMES_MS = "drm.mediadrm.session_start_times_ms"; + } + + public static interface MediaDrm.OnEventListener { + method public void onEvent(@NonNull android.media.MediaDrm, @Nullable byte[], int, int, @Nullable byte[]); + } + + public static interface MediaDrm.OnExpirationUpdateListener { + method public void onExpirationUpdate(@NonNull android.media.MediaDrm, @NonNull byte[], long); + } + + public static interface MediaDrm.OnKeyStatusChangeListener { + method public void onKeyStatusChange(@NonNull android.media.MediaDrm, @NonNull byte[], @NonNull java.util.List, boolean); + } + + public static interface MediaDrm.OnSessionLostStateListener { + method public void onSessionLostState(@NonNull android.media.MediaDrm, @NonNull byte[]); + } + + public final class MediaDrm.PlaybackComponent { + method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); + method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); + } + + public static final class MediaDrm.ProvisionRequest { + method @NonNull public byte[] getData(); + method @NonNull public String getDefaultUrl(); + } + + public static final class MediaDrm.SessionException extends java.lang.RuntimeException implements android.media.MediaDrmThrowable { + ctor public MediaDrm.SessionException(int, @Nullable String); + method @Deprecated public int getErrorCode(); + method public int getErrorContext(); + method public int getOemError(); + method public int getVendorError(); + method public boolean isTransient(); + field @Deprecated public static final int ERROR_RESOURCE_CONTENTION = 1; // 0x1 + field @Deprecated public static final int ERROR_UNKNOWN = 0; // 0x0 + } + + public class MediaDrmException extends java.lang.Exception implements android.media.MediaDrmThrowable { + ctor public MediaDrmException(String); + method public int getErrorContext(); + method public int getOemError(); + method public int getVendorError(); + } + + public class MediaDrmResetException extends java.lang.IllegalStateException implements android.media.MediaDrmThrowable { + ctor public MediaDrmResetException(String); + } + + public interface MediaDrmThrowable { + method public default int getErrorContext(); + method public default int getOemError(); + method public default int getVendorError(); + } + + public final class MediaExtractor { + ctor public MediaExtractor(); + method public boolean advance(); + method protected void finalize(); + method @NonNull public java.util.List getAudioPresentations(int); + method public long getCachedDuration(); + method public android.media.MediaExtractor.CasInfo getCasInfo(int); + method public android.media.DrmInitData getDrmInitData(); + method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); + method public android.os.PersistableBundle getMetrics(); + method @Nullable public java.util.Map getPsshInfo(); + method public boolean getSampleCryptoInfo(@NonNull android.media.MediaCodec.CryptoInfo); + method public int getSampleFlags(); + method public long getSampleSize(); + method public long getSampleTime(); + method public int getSampleTrackIndex(); + method public int getTrackCount(); + method @NonNull public android.media.MediaFormat getTrackFormat(int); + method public boolean hasCacheReachedEndOfStream(); + method public int readSampleData(@NonNull java.nio.ByteBuffer, int); + method public void release(); + method public void seekTo(long, int); + method public void selectTrack(int); + method public void setDataSource(@NonNull android.media.MediaDataSource) throws java.io.IOException; + method public void setDataSource(@NonNull android.content.Context, @NonNull android.net.Uri, @Nullable java.util.Map) throws java.io.IOException; + method public void setDataSource(@NonNull String, @Nullable java.util.Map) throws java.io.IOException; + method public void setDataSource(@NonNull String) throws java.io.IOException; + method public void setDataSource(@NonNull android.content.res.AssetFileDescriptor) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method public void setDataSource(@NonNull java.io.FileDescriptor) throws java.io.IOException; + method public void setDataSource(@NonNull java.io.FileDescriptor, long, long) throws java.io.IOException; + method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); + method @Deprecated public void setMediaCas(@NonNull android.media.MediaCas); + method public void unselectTrack(int); + field public static final int SAMPLE_FLAG_ENCRYPTED = 2; // 0x2 + field public static final int SAMPLE_FLAG_PARTIAL_FRAME = 4; // 0x4 + field public static final int SAMPLE_FLAG_SYNC = 1; // 0x1 + field public static final int SEEK_TO_CLOSEST_SYNC = 2; // 0x2 + field public static final int SEEK_TO_NEXT_SYNC = 1; // 0x1 + field public static final int SEEK_TO_PREVIOUS_SYNC = 0; // 0x0 + } + + public static final class MediaExtractor.CasInfo { + method @Nullable public byte[] getPrivateData(); + method public android.media.MediaCas.Session getSession(); + method public int getSystemId(); + } + + public static final class MediaExtractor.MetricsConstants { + field public static final String FORMAT = "android.media.mediaextractor.fmt"; + field public static final String MIME_TYPE = "android.media.mediaextractor.mime"; + field public static final String TRACKS = "android.media.mediaextractor.ntrk"; + } + + public final class MediaFormat { + ctor public MediaFormat(); + ctor public MediaFormat(@NonNull android.media.MediaFormat); + method public boolean containsFeature(@NonNull String); + method public boolean containsKey(@NonNull String); + method @NonNull public static android.media.MediaFormat createAudioFormat(@NonNull String, int, int); + method @NonNull public static android.media.MediaFormat createSubtitleFormat(@NonNull String, String); + method @NonNull public static android.media.MediaFormat createVideoFormat(@NonNull String, int, int); + method @Nullable public java.nio.ByteBuffer getByteBuffer(@NonNull String); + method @NonNull public java.nio.ByteBuffer getByteBuffer(@NonNull String, @NonNull java.nio.ByteBuffer); + method public boolean getFeatureEnabled(@NonNull String); + method @NonNull public java.util.Set getFeatures(); + method public float getFloat(@NonNull String); + method public float getFloat(@NonNull String, float); + method public int getInteger(@NonNull String); + method public int getInteger(@NonNull String, int); + method @NonNull public java.util.Set getKeys(); + method public long getLong(@NonNull String); + method public long getLong(@NonNull String, long); + method @Nullable public Number getNumber(@NonNull String); + method @NonNull public Number getNumber(@NonNull String, @NonNull Number); + method @Nullable public String getString(@NonNull String); + method @NonNull public String getString(@NonNull String, @NonNull String); + method public int getValueTypeForKey(@NonNull String); + method public void removeFeature(@NonNull String); + method public void removeKey(@NonNull String); + method public void setByteBuffer(@NonNull String, @Nullable java.nio.ByteBuffer); + method public void setFeatureEnabled(@NonNull String, boolean); + method public void setFloat(@NonNull String, float); + method public void setInteger(@NonNull String, int); + method public void setLong(@NonNull String, long); + method public void setString(@NonNull String, @Nullable String); + field public static final int COLOR_RANGE_FULL = 1; // 0x1 + field public static final int COLOR_RANGE_LIMITED = 2; // 0x2 + field public static final int COLOR_STANDARD_BT2020 = 6; // 0x6 + field public static final int COLOR_STANDARD_BT601_NTSC = 4; // 0x4 + field public static final int COLOR_STANDARD_BT601_PAL = 2; // 0x2 + field public static final int COLOR_STANDARD_BT709 = 1; // 0x1 + field public static final int COLOR_TRANSFER_HLG = 7; // 0x7 + field public static final int COLOR_TRANSFER_LINEAR = 1; // 0x1 + field public static final int COLOR_TRANSFER_SDR_VIDEO = 3; // 0x3 + field public static final int COLOR_TRANSFER_ST2084 = 6; // 0x6 + field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final int FLAG_SECURITY_MODEL_MEMORY_SAFE = 2; // 0x2 + field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final int FLAG_SECURITY_MODEL_SANDBOXED = 1; // 0x1 + field public static final String KEY_AAC_DRC_ALBUM_MODE = "aac-drc-album-mode"; + field public static final String KEY_AAC_DRC_ATTENUATION_FACTOR = "aac-drc-cut-level"; + field public static final String KEY_AAC_DRC_BOOST_FACTOR = "aac-drc-boost-level"; + field public static final String KEY_AAC_DRC_EFFECT_TYPE = "aac-drc-effect-type"; + field public static final String KEY_AAC_DRC_HEAVY_COMPRESSION = "aac-drc-heavy-compression"; + field public static final String KEY_AAC_DRC_OUTPUT_LOUDNESS = "aac-drc-output-loudness"; + field public static final String KEY_AAC_DRC_TARGET_REFERENCE_LEVEL = "aac-target-ref-level"; + field public static final String KEY_AAC_ENCODED_TARGET_LEVEL = "aac-encoded-target-level"; + field @Deprecated public static final String KEY_AAC_MAX_OUTPUT_CHANNEL_COUNT = "aac-max-output-channel_count"; + field public static final String KEY_AAC_PROFILE = "aac-profile"; + field public static final String KEY_AAC_SBR_MODE = "aac-sbr-mode"; + field public static final String KEY_ALLOW_FRAME_DROP = "allow-frame-drop"; + field public static final String KEY_AUDIO_SESSION_ID = "audio-session-id"; + field public static final String KEY_BITRATE_MODE = "bitrate-mode"; + field public static final String KEY_BIT_RATE = "bitrate"; + field @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public static final String KEY_BUFFER_BATCH_MAX_OUTPUT_SIZE = "buffer-batch-max-output-size"; + field @FlaggedApi("com.android.media.codec.flags.large_audio_frame") public static final String KEY_BUFFER_BATCH_THRESHOLD_OUTPUT_SIZE = "buffer-batch-threshold-output-size"; + field public static final String KEY_CAPTION_SERVICE_NUMBER = "caption-service-number"; + field public static final String KEY_CAPTURE_RATE = "capture-rate"; + field public static final String KEY_CHANNEL_COUNT = "channel-count"; + field public static final String KEY_CHANNEL_MASK = "channel-mask"; + field public static final String KEY_CODECS_STRING = "codecs-string"; + field public static final String KEY_COLOR_FORMAT = "color-format"; + field public static final String KEY_COLOR_RANGE = "color-range"; + field public static final String KEY_COLOR_STANDARD = "color-standard"; + field public static final String KEY_COLOR_TRANSFER = "color-transfer"; + field public static final String KEY_COLOR_TRANSFER_REQUEST = "color-transfer-request"; + field public static final String KEY_COMPLEXITY = "complexity"; + field public static final String KEY_CREATE_INPUT_SURFACE_SUSPENDED = "create-input-buffers-suspended"; + field public static final String KEY_CROP_BOTTOM = "crop-bottom"; + field public static final String KEY_CROP_LEFT = "crop-left"; + field public static final String KEY_CROP_RIGHT = "crop-right"; + field public static final String KEY_CROP_TOP = "crop-top"; + field public static final String KEY_DURATION = "durationUs"; + field public static final String KEY_ENCODER_DELAY = "encoder-delay"; + field public static final String KEY_ENCODER_PADDING = "encoder-padding"; + field public static final String KEY_FLAC_COMPRESSION_LEVEL = "flac-compression-level"; + field public static final String KEY_FRAME_RATE = "frame-rate"; + field public static final String KEY_GRID_COLUMNS = "grid-cols"; + field public static final String KEY_GRID_ROWS = "grid-rows"; + field public static final String KEY_HAPTIC_CHANNEL_COUNT = "haptic-channel-count"; + field public static final String KEY_HARDWARE_AV_SYNC_ID = "hw-av-sync-id"; + field public static final String KEY_HDR10_PLUS_INFO = "hdr10-plus-info"; + field public static final String KEY_HDR_STATIC_INFO = "hdr-static-info"; + field public static final String KEY_HEIGHT = "height"; + field @FlaggedApi("com.android.media.codec.flags.codec_importance") public static final String KEY_IMPORTANCE = "importance"; + field public static final String KEY_INTRA_REFRESH_PERIOD = "intra-refresh-period"; + field public static final String KEY_IS_ADTS = "is-adts"; + field public static final String KEY_IS_AUTOSELECT = "is-autoselect"; + field public static final String KEY_IS_DEFAULT = "is-default"; + field public static final String KEY_IS_FORCED_SUBTITLE = "is-forced-subtitle"; + field public static final String KEY_I_FRAME_INTERVAL = "i-frame-interval"; + field public static final String KEY_LANGUAGE = "language"; + field public static final String KEY_LATENCY = "latency"; + field public static final String KEY_LEVEL = "level"; + field public static final String KEY_LOW_LATENCY = "low-latency"; + field public static final String KEY_MAX_B_FRAMES = "max-bframes"; + field public static final String KEY_MAX_FPS_TO_ENCODER = "max-fps-to-encoder"; + field public static final String KEY_MAX_HEIGHT = "max-height"; + field public static final String KEY_MAX_INPUT_SIZE = "max-input-size"; + field public static final String KEY_MAX_OUTPUT_CHANNEL_COUNT = "max-output-channel-count"; + field public static final String KEY_MAX_PTS_GAP_TO_ENCODER = "max-pts-gap-to-encoder"; + field public static final String KEY_MAX_WIDTH = "max-width"; + field public static final String KEY_MIME = "mime"; + field public static final String KEY_MPEGH_COMPATIBLE_SETS = "mpegh-compatible-sets"; + field public static final String KEY_MPEGH_PROFILE_LEVEL_INDICATION = "mpegh-profile-level-indication"; + field public static final String KEY_MPEGH_REFERENCE_CHANNEL_LAYOUT = "mpegh-reference-channel-layout"; + field @FlaggedApi("android.media.codec.num_input_slots") public static final String KEY_NUM_SLOTS = "num-slots"; + field public static final String KEY_OPERATING_RATE = "operating-rate"; + field public static final String KEY_OUTPUT_REORDER_DEPTH = "output-reorder-depth"; + field public static final String KEY_PCM_ENCODING = "pcm-encoding"; + field @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public static final String KEY_PICTURE_PROFILE_ID = "picture-profile-id"; + field @FlaggedApi("android.media.tv.flags.apply_picture_profiles") public static final String KEY_PICTURE_PROFILE_INSTANCE = "picture-profile-instance"; + field public static final String KEY_PICTURE_TYPE = "picture-type"; + field public static final String KEY_PIXEL_ASPECT_RATIO_HEIGHT = "sar-height"; + field public static final String KEY_PIXEL_ASPECT_RATIO_WIDTH = "sar-width"; + field public static final String KEY_PREPEND_HEADER_TO_SYNC_FRAMES = "prepend-sps-pps-to-idr-frames"; + field public static final String KEY_PRIORITY = "priority"; + field public static final String KEY_PROFILE = "profile"; + field public static final String KEY_PUSH_BLANK_BUFFERS_ON_STOP = "push-blank-buffers-on-shutdown"; + field public static final String KEY_QUALITY = "quality"; + field public static final String KEY_REPEAT_PREVIOUS_FRAME_AFTER = "repeat-previous-frame-after"; + field public static final String KEY_ROTATION = "rotation-degrees"; + field public static final String KEY_SAMPLE_RATE = "sample-rate"; + field @FlaggedApi("android.media.codec.in_process_sw_audio_codec") public static final String KEY_SECURITY_MODEL = "security-model"; + field public static final String KEY_SLICE_HEIGHT = "slice-height"; + field public static final String KEY_SLOW_MOTION_MARKERS = "slow-motion-markers"; + field public static final String KEY_STRIDE = "stride"; + field public static final String KEY_TEMPORAL_LAYERING = "ts-schema"; + field public static final String KEY_TILE_HEIGHT = "tile-height"; + field public static final String KEY_TILE_WIDTH = "tile-width"; + field public static final String KEY_TRACK_ID = "track-id"; + field public static final String KEY_VIDEO_ENCODING_STATISTICS_LEVEL = "video-encoding-statistics-level"; + field public static final String KEY_VIDEO_QP_AVERAGE = "video-qp-average"; + field public static final String KEY_VIDEO_QP_B_MAX = "video-qp-b-max"; + field public static final String KEY_VIDEO_QP_B_MIN = "video-qp-b-min"; + field public static final String KEY_VIDEO_QP_I_MAX = "video-qp-i-max"; + field public static final String KEY_VIDEO_QP_I_MIN = "video-qp-i-min"; + field public static final String KEY_VIDEO_QP_MAX = "video-qp-max"; + field public static final String KEY_VIDEO_QP_MIN = "video-qp-min"; + field public static final String KEY_VIDEO_QP_P_MAX = "video-qp-p-max"; + field public static final String KEY_VIDEO_QP_P_MIN = "video-qp-p-min"; + field public static final String KEY_WIDTH = "width"; + field public static final String LOG_SESSION_ID = "log-session-id"; + field public static final String MIMETYPE_AUDIO_AAC = "audio/mp4a-latm"; + field public static final String MIMETYPE_AUDIO_AAC_ELD = "audio/mp4a.40.39"; + field public static final String MIMETYPE_AUDIO_AAC_HE_V1 = "audio/mp4a.40.05"; + field public static final String MIMETYPE_AUDIO_AAC_HE_V2 = "audio/mp4a.40.29"; + field public static final String MIMETYPE_AUDIO_AAC_LC = "audio/mp4a.40.02"; + field public static final String MIMETYPE_AUDIO_AAC_XHE = "audio/mp4a.40.42"; + field public static final String MIMETYPE_AUDIO_AC3 = "audio/ac3"; + field public static final String MIMETYPE_AUDIO_AC4 = "audio/ac4"; + field public static final String MIMETYPE_AUDIO_AMR_NB = "audio/3gpp"; + field public static final String MIMETYPE_AUDIO_AMR_WB = "audio/amr-wb"; + field public static final String MIMETYPE_AUDIO_DOLBY_MAT = "audio/vnd.dolby.mat"; + field public static final String MIMETYPE_AUDIO_DOLBY_TRUEHD = "audio/vnd.dolby.mlp"; + field public static final String MIMETYPE_AUDIO_DRA = "audio/vnd.dra"; + field public static final String MIMETYPE_AUDIO_DTS = "audio/vnd.dts"; + field public static final String MIMETYPE_AUDIO_DTS_HD = "audio/vnd.dts.hd"; + field public static final String MIMETYPE_AUDIO_DTS_UHD = "audio/vnd.dts.uhd"; + field public static final String MIMETYPE_AUDIO_EAC3 = "audio/eac3"; + field public static final String MIMETYPE_AUDIO_EAC3_JOC = "audio/eac3-joc"; + field public static final String MIMETYPE_AUDIO_FLAC = "audio/flac"; + field public static final String MIMETYPE_AUDIO_G711_ALAW = "audio/g711-alaw"; + field public static final String MIMETYPE_AUDIO_G711_MLAW = "audio/g711-mlaw"; + field @FlaggedApi("android.media.audio.iamf_definitions_api") public static final String MIMETYPE_AUDIO_IAMF = "audio/iamf"; + field public static final String MIMETYPE_AUDIO_IEC61937 = "audio/x-iec61937"; + field public static final String MIMETYPE_AUDIO_MPEG = "audio/mpeg"; + field public static final String MIMETYPE_AUDIO_MPEGH_BL_L3 = "audio/mhm1.03"; + field public static final String MIMETYPE_AUDIO_MPEGH_BL_L4 = "audio/mhm1.04"; + field public static final String MIMETYPE_AUDIO_MPEGH_LC_L3 = "audio/mhm1.0d"; + field public static final String MIMETYPE_AUDIO_MPEGH_LC_L4 = "audio/mhm1.0e"; + field public static final String MIMETYPE_AUDIO_MPEGH_MHA1 = "audio/mha1"; + field public static final String MIMETYPE_AUDIO_MPEGH_MHM1 = "audio/mhm1"; + field public static final String MIMETYPE_AUDIO_MSGSM = "audio/gsm"; + field public static final String MIMETYPE_AUDIO_OPUS = "audio/opus"; + field public static final String MIMETYPE_AUDIO_QCELP = "audio/qcelp"; + field public static final String MIMETYPE_AUDIO_RAW = "audio/raw"; + field public static final String MIMETYPE_AUDIO_SCRAMBLED = "audio/scrambled"; + field public static final String MIMETYPE_AUDIO_VORBIS = "audio/vorbis"; + field public static final String MIMETYPE_IMAGE_ANDROID_HEIC = "image/vnd.android.heic"; + field public static final String MIMETYPE_IMAGE_AVIF = "image/avif"; + field public static final String MIMETYPE_TEXT_CEA_608 = "text/cea-608"; + field public static final String MIMETYPE_TEXT_CEA_708 = "text/cea-708"; + field public static final String MIMETYPE_TEXT_SUBRIP = "application/x-subrip"; + field public static final String MIMETYPE_TEXT_VTT = "text/vtt"; + field @FlaggedApi("android.media.codec.apv_support") public static final String MIMETYPE_VIDEO_APV = "video/apv"; + field public static final String MIMETYPE_VIDEO_AV1 = "video/av01"; + field public static final String MIMETYPE_VIDEO_AVC = "video/avc"; + field public static final String MIMETYPE_VIDEO_DOLBY_VISION = "video/dolby-vision"; + field public static final String MIMETYPE_VIDEO_H263 = "video/3gpp"; + field public static final String MIMETYPE_VIDEO_HEVC = "video/hevc"; + field public static final String MIMETYPE_VIDEO_MPEG2 = "video/mpeg2"; + field public static final String MIMETYPE_VIDEO_MPEG4 = "video/mp4v-es"; + field public static final String MIMETYPE_VIDEO_RAW = "video/raw"; + field public static final String MIMETYPE_VIDEO_SCRAMBLED = "video/scrambled"; + field public static final String MIMETYPE_VIDEO_VP8 = "video/x-vnd.on2.vp8"; + field public static final String MIMETYPE_VIDEO_VP9 = "video/x-vnd.on2.vp9"; + field public static final int PICTURE_TYPE_B = 3; // 0x3 + field public static final int PICTURE_TYPE_I = 1; // 0x1 + field public static final int PICTURE_TYPE_P = 2; // 0x2 + field public static final int PICTURE_TYPE_UNKNOWN = 0; // 0x0 + field public static final int TYPE_BYTE_BUFFER = 5; // 0x5 + field public static final int TYPE_FLOAT = 3; // 0x3 + field public static final int TYPE_INTEGER = 1; // 0x1 + field public static final int TYPE_LONG = 2; // 0x2 + field public static final int TYPE_NULL = 0; // 0x0 + field public static final int TYPE_STRING = 4; // 0x4 + field public static final int VIDEO_ENCODING_STATISTICS_LEVEL_1 = 1; // 0x1 + field public static final int VIDEO_ENCODING_STATISTICS_LEVEL_NONE = 0; // 0x0 + } + + @FlaggedApi("android.media.codec.region_of_interest") public static final class MediaFormat.QpOffsetRect { + ctor public MediaFormat.QpOffsetRect(@NonNull android.graphics.Rect, int); + method @NonNull public String flattenToString(); + method @NonNull public static String flattenToString(@NonNull java.util.List); + method public void set(@NonNull android.graphics.Rect, int); + } + + public final class MediaMetadata implements android.os.Parcelable { + method public boolean containsKey(String); + method public int describeContents(); + method public android.graphics.Bitmap getBitmap(String); + method @IntRange(from=1) public int getBitmapDimensionLimit(); + method @NonNull public android.media.MediaDescription getDescription(); + method public long getLong(String); + method public android.media.Rating getRating(String); + method public String getString(String); + method public CharSequence getText(String); + method public java.util.Set keySet(); + method public int size(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String METADATA_KEY_ALBUM = "android.media.metadata.ALBUM"; + field public static final String METADATA_KEY_ALBUM_ART = "android.media.metadata.ALBUM_ART"; + field public static final String METADATA_KEY_ALBUM_ARTIST = "android.media.metadata.ALBUM_ARTIST"; + field public static final String METADATA_KEY_ALBUM_ART_URI = "android.media.metadata.ALBUM_ART_URI"; + field public static final String METADATA_KEY_ART = "android.media.metadata.ART"; + field public static final String METADATA_KEY_ARTIST = "android.media.metadata.ARTIST"; + field public static final String METADATA_KEY_ART_URI = "android.media.metadata.ART_URI"; + field public static final String METADATA_KEY_AUTHOR = "android.media.metadata.AUTHOR"; + field public static final String METADATA_KEY_BT_FOLDER_TYPE = "android.media.metadata.BT_FOLDER_TYPE"; + field public static final String METADATA_KEY_COMPILATION = "android.media.metadata.COMPILATION"; + field public static final String METADATA_KEY_COMPOSER = "android.media.metadata.COMPOSER"; + field public static final String METADATA_KEY_DATE = "android.media.metadata.DATE"; + field public static final String METADATA_KEY_DISC_NUMBER = "android.media.metadata.DISC_NUMBER"; + field public static final String METADATA_KEY_DISPLAY_DESCRIPTION = "android.media.metadata.DISPLAY_DESCRIPTION"; + field public static final String METADATA_KEY_DISPLAY_ICON = "android.media.metadata.DISPLAY_ICON"; + field public static final String METADATA_KEY_DISPLAY_ICON_URI = "android.media.metadata.DISPLAY_ICON_URI"; + field public static final String METADATA_KEY_DISPLAY_SUBTITLE = "android.media.metadata.DISPLAY_SUBTITLE"; + field public static final String METADATA_KEY_DISPLAY_TITLE = "android.media.metadata.DISPLAY_TITLE"; + field public static final String METADATA_KEY_DURATION = "android.media.metadata.DURATION"; + field public static final String METADATA_KEY_GENRE = "android.media.metadata.GENRE"; + field public static final String METADATA_KEY_MEDIA_ID = "android.media.metadata.MEDIA_ID"; + field public static final String METADATA_KEY_MEDIA_URI = "android.media.metadata.MEDIA_URI"; + field public static final String METADATA_KEY_NUM_TRACKS = "android.media.metadata.NUM_TRACKS"; + field public static final String METADATA_KEY_RATING = "android.media.metadata.RATING"; + field public static final String METADATA_KEY_TITLE = "android.media.metadata.TITLE"; + field public static final String METADATA_KEY_TRACK_NUMBER = "android.media.metadata.TRACK_NUMBER"; + field public static final String METADATA_KEY_USER_RATING = "android.media.metadata.USER_RATING"; + field public static final String METADATA_KEY_WRITER = "android.media.metadata.WRITER"; + field public static final String METADATA_KEY_YEAR = "android.media.metadata.YEAR"; + } + + public static final class MediaMetadata.Builder { + ctor public MediaMetadata.Builder(); + ctor public MediaMetadata.Builder(android.media.MediaMetadata); + method public android.media.MediaMetadata build(); + method public android.media.MediaMetadata.Builder putBitmap(String, android.graphics.Bitmap); + method public android.media.MediaMetadata.Builder putLong(String, long); + method public android.media.MediaMetadata.Builder putRating(String, android.media.Rating); + method public android.media.MediaMetadata.Builder putString(String, String); + method public android.media.MediaMetadata.Builder putText(String, CharSequence); + method @NonNull public android.media.MediaMetadata.Builder setBitmapDimensionLimit(@IntRange(from=1) int); + } + + @Deprecated public abstract class MediaMetadataEditor { + method @Deprecated public void addEditableKey(int); + method @Deprecated public abstract void apply(); + method @Deprecated public void clear(); + method @Deprecated public android.graphics.Bitmap getBitmap(int, android.graphics.Bitmap) throws java.lang.IllegalArgumentException; + method @Deprecated public int[] getEditableKeys(); + method @Deprecated public long getLong(int, long) throws java.lang.IllegalArgumentException; + method @Deprecated public Object getObject(int, Object) throws java.lang.IllegalArgumentException; + method @Deprecated public String getString(int, String) throws java.lang.IllegalArgumentException; + method @Deprecated public android.media.MediaMetadataEditor putBitmap(int, android.graphics.Bitmap) throws java.lang.IllegalArgumentException; + method @Deprecated public android.media.MediaMetadataEditor putLong(int, long) throws java.lang.IllegalArgumentException; + method @Deprecated public android.media.MediaMetadataEditor putObject(int, Object) throws java.lang.IllegalArgumentException; + method @Deprecated public android.media.MediaMetadataEditor putString(int, String) throws java.lang.IllegalArgumentException; + method @Deprecated public void removeEditableKeys(); + field @Deprecated public static final int BITMAP_KEY_ARTWORK = 100; // 0x64 + field @Deprecated public static final int RATING_KEY_BY_OTHERS = 101; // 0x65 + field @Deprecated public static final int RATING_KEY_BY_USER = 268435457; // 0x10000001 + } + + public class MediaMetadataRetriever implements java.lang.AutoCloseable { + ctor public MediaMetadataRetriever(); + method public void close() throws java.io.IOException; + method @Nullable public String extractMetadata(int); + method @Nullable public byte[] getEmbeddedPicture(); + method @Nullable public android.graphics.Bitmap getFrameAtIndex(int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @Nullable public android.graphics.Bitmap getFrameAtIndex(int); + method @Nullable public android.graphics.Bitmap getFrameAtTime(long, int); + method @Nullable public android.graphics.Bitmap getFrameAtTime(long, int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @Nullable public android.graphics.Bitmap getFrameAtTime(long); + method @Nullable public android.graphics.Bitmap getFrameAtTime(); + method @NonNull public java.util.List getFramesAtIndex(int, int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @NonNull public java.util.List getFramesAtIndex(int, int); + method @Nullable public android.graphics.Bitmap getImageAtIndex(int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @Nullable public android.graphics.Bitmap getImageAtIndex(int); + method @Nullable public android.graphics.Bitmap getPrimaryImage(@NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @Nullable public android.graphics.Bitmap getPrimaryImage(); + method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, @IntRange(from=1) int, @IntRange(from=1) int); + method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, @IntRange(from=1) int, @IntRange(from=1) int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); + method public void release() throws java.io.IOException; + method public void setDataSource(String) throws java.lang.IllegalArgumentException; + method public void setDataSource(String, java.util.Map) throws java.lang.IllegalArgumentException; + method public void setDataSource(java.io.FileDescriptor, long, long) throws java.lang.IllegalArgumentException; + method public void setDataSource(java.io.FileDescriptor) throws java.lang.IllegalArgumentException; + method public void setDataSource(android.content.Context, android.net.Uri) throws java.lang.IllegalArgumentException, java.lang.SecurityException; + method public void setDataSource(android.media.MediaDataSource) throws java.lang.IllegalArgumentException; + field public static final int METADATA_KEY_ALBUM = 1; // 0x1 + field public static final int METADATA_KEY_ALBUMARTIST = 13; // 0xd + field public static final int METADATA_KEY_ARTIST = 2; // 0x2 + field public static final int METADATA_KEY_AUTHOR = 3; // 0x3 + field public static final int METADATA_KEY_BITRATE = 20; // 0x14 + field public static final int METADATA_KEY_BITS_PER_SAMPLE = 39; // 0x27 + field public static final int METADATA_KEY_CAPTURE_FRAMERATE = 25; // 0x19 + field public static final int METADATA_KEY_CD_TRACK_NUMBER = 0; // 0x0 + field public static final int METADATA_KEY_COLOR_RANGE = 37; // 0x25 + field public static final int METADATA_KEY_COLOR_STANDARD = 35; // 0x23 + field public static final int METADATA_KEY_COLOR_TRANSFER = 36; // 0x24 + field public static final int METADATA_KEY_COMPILATION = 15; // 0xf + field public static final int METADATA_KEY_COMPOSER = 4; // 0x4 + field public static final int METADATA_KEY_DATE = 5; // 0x5 + field public static final int METADATA_KEY_DISC_NUMBER = 14; // 0xe + field public static final int METADATA_KEY_DURATION = 9; // 0x9 + field public static final int METADATA_KEY_EXIF_LENGTH = 34; // 0x22 + field public static final int METADATA_KEY_EXIF_OFFSET = 33; // 0x21 + field public static final int METADATA_KEY_GENRE = 6; // 0x6 + field public static final int METADATA_KEY_HAS_AUDIO = 16; // 0x10 + field public static final int METADATA_KEY_HAS_IMAGE = 26; // 0x1a + field public static final int METADATA_KEY_HAS_VIDEO = 17; // 0x11 + field public static final int METADATA_KEY_IMAGE_COUNT = 27; // 0x1b + field public static final int METADATA_KEY_IMAGE_HEIGHT = 30; // 0x1e + field public static final int METADATA_KEY_IMAGE_PRIMARY = 28; // 0x1c + field public static final int METADATA_KEY_IMAGE_ROTATION = 31; // 0x1f + field public static final int METADATA_KEY_IMAGE_WIDTH = 29; // 0x1d + field public static final int METADATA_KEY_LOCATION = 23; // 0x17 + field public static final int METADATA_KEY_MIMETYPE = 12; // 0xc + field public static final int METADATA_KEY_NUM_TRACKS = 10; // 0xa + field public static final int METADATA_KEY_SAMPLERATE = 38; // 0x26 + field public static final int METADATA_KEY_TITLE = 7; // 0x7 + field public static final int METADATA_KEY_VIDEO_FRAME_COUNT = 32; // 0x20 + field public static final int METADATA_KEY_VIDEO_HEIGHT = 19; // 0x13 + field public static final int METADATA_KEY_VIDEO_ROTATION = 24; // 0x18 + field public static final int METADATA_KEY_VIDEO_WIDTH = 18; // 0x12 + field public static final int METADATA_KEY_WRITER = 11; // 0xb + field public static final int METADATA_KEY_XMP_LENGTH = 42; // 0x2a + field public static final int METADATA_KEY_XMP_OFFSET = 41; // 0x29 + field public static final int METADATA_KEY_YEAR = 8; // 0x8 + field public static final int OPTION_CLOSEST = 3; // 0x3 + field public static final int OPTION_CLOSEST_SYNC = 2; // 0x2 + field public static final int OPTION_NEXT_SYNC = 1; // 0x1 + field public static final int OPTION_PREVIOUS_SYNC = 0; // 0x0 + } + + public static final class MediaMetadataRetriever.BitmapParams { + ctor public MediaMetadataRetriever.BitmapParams(); + method @NonNull public android.graphics.Bitmap.Config getActualConfig(); + method @NonNull public android.graphics.Bitmap.Config getPreferredConfig(); + method public void setPreferredConfig(@NonNull android.graphics.Bitmap.Config); + } + + public final class MediaMuxer { + ctor public MediaMuxer(@NonNull String, int) throws java.io.IOException; + ctor public MediaMuxer(@NonNull java.io.FileDescriptor, int) throws java.io.IOException; + method public int addTrack(@NonNull android.media.MediaFormat); + method public void release(); + method public void setLocation(float, float); + method public void setOrientationHint(int); + method public void start(); + method public void stop(); + method public void writeSampleData(int, @NonNull java.nio.ByteBuffer, @NonNull android.media.MediaCodec.BufferInfo); + } + + public static final class MediaMuxer.OutputFormat { + field public static final int MUXER_OUTPUT_3GPP = 2; // 0x2 + field public static final int MUXER_OUTPUT_HEIF = 3; // 0x3 + field public static final int MUXER_OUTPUT_MPEG_4 = 0; // 0x0 + field public static final int MUXER_OUTPUT_OGG = 4; // 0x4 + field public static final int MUXER_OUTPUT_WEBM = 1; // 0x1 + } + + public class MediaPlayer implements android.media.AudioRouting android.media.VolumeAutomation { + ctor public MediaPlayer(); + ctor public MediaPlayer(@NonNull android.content.Context); + method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); + method public void addTimedTextSource(String, String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method public void addTimedTextSource(android.content.Context, android.net.Uri, String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method public void addTimedTextSource(java.io.FileDescriptor, String) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method public void addTimedTextSource(java.io.FileDescriptor, long, long, String) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method public void attachAuxEffect(int); + method public void clearOnMediaTimeDiscontinuityListener(); + method public void clearOnSubtitleDataListener(); + method public static android.media.MediaPlayer create(android.content.Context, android.net.Uri); + method public static android.media.MediaPlayer create(android.content.Context, android.net.Uri, android.view.SurfaceHolder); + method public static android.media.MediaPlayer create(android.content.Context, android.net.Uri, android.view.SurfaceHolder, android.media.AudioAttributes, int); + method public static android.media.MediaPlayer create(android.content.Context, int); + method public static android.media.MediaPlayer create(android.content.Context, int, android.media.AudioAttributes, int); + method @NonNull public android.media.VolumeShaper createVolumeShaper(@NonNull android.media.VolumeShaper.Configuration); + method public void deselectTrack(int) throws java.lang.IllegalStateException; + method protected void finalize(); + method public int getAudioSessionId(); + method public int getCurrentPosition(); + method public android.media.MediaPlayer.DrmInfo getDrmInfo(); + method @NonNull public String getDrmPropertyString(@NonNull String) throws android.media.MediaPlayer.NoDrmSchemeException; + method public int getDuration(); + method @NonNull public android.media.MediaDrm.KeyRequest getKeyRequest(@Nullable byte[], @Nullable byte[], @Nullable String, int, @Nullable java.util.Map) throws android.media.MediaPlayer.NoDrmSchemeException; + method public android.os.PersistableBundle getMetrics(); + method @NonNull public android.media.PlaybackParams getPlaybackParams(); + method public android.media.AudioDeviceInfo getPreferredDevice(); + method public android.media.AudioDeviceInfo getRoutedDevice(); + method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public java.util.List getRoutedDevices(); + method public int getSelectedTrack(int) throws java.lang.IllegalStateException; + method @NonNull public android.media.SyncParams getSyncParams(); + method @Nullable public android.media.MediaTimestamp getTimestamp(); + method public android.media.MediaPlayer.TrackInfo[] getTrackInfo() throws java.lang.IllegalStateException; + method public int getVideoHeight(); + method public int getVideoWidth(); + method public boolean isLooping(); + method public boolean isPlaying(); + method public void pause() throws java.lang.IllegalStateException; + method public void prepare() throws java.io.IOException, java.lang.IllegalStateException; + method public void prepareAsync() throws java.lang.IllegalStateException; + method public void prepareDrm(@NonNull java.util.UUID) throws android.media.MediaPlayer.ProvisioningNetworkErrorException, android.media.MediaPlayer.ProvisioningServerErrorException, android.media.ResourceBusyException, android.media.UnsupportedSchemeException; + method public byte[] provideKeyResponse(@Nullable byte[], @NonNull byte[]) throws android.media.DeniedByServerException, android.media.MediaPlayer.NoDrmSchemeException; + method public void release(); + method public void releaseDrm() throws android.media.MediaPlayer.NoDrmSchemeException; + method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); + method public void reset(); + method public void restoreKeys(@NonNull byte[]) throws android.media.MediaPlayer.NoDrmSchemeException; + method public void seekTo(long, int); + method public void seekTo(int) throws java.lang.IllegalStateException; + method public void selectTrack(int) throws java.lang.IllegalStateException; + method public void setAudioAttributes(android.media.AudioAttributes) throws java.lang.IllegalArgumentException; + method public void setAudioSessionId(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method @Deprecated public void setAudioStreamType(int); + method public void setAuxEffectSendLevel(float); + method public void setDataSource(@NonNull android.content.Context, @NonNull android.net.Uri) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.SecurityException; + method public void setDataSource(@NonNull android.content.Context, @NonNull android.net.Uri, @Nullable java.util.Map, @Nullable java.util.List) throws java.io.IOException; + method public void setDataSource(@NonNull android.content.Context, @NonNull android.net.Uri, @Nullable java.util.Map) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.SecurityException; + method public void setDataSource(String) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.SecurityException; + method public void setDataSource(@NonNull android.content.res.AssetFileDescriptor) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method public void setDataSource(java.io.FileDescriptor) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method public void setDataSource(java.io.FileDescriptor, long, long) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method public void setDataSource(android.media.MediaDataSource) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException; + method public void setDisplay(android.view.SurfaceHolder); + method public void setDrmPropertyString(@NonNull String, @NonNull String) throws android.media.MediaPlayer.NoDrmSchemeException; + method public void setLooping(boolean); + method public void setNextMediaPlayer(android.media.MediaPlayer); + method public void setOnBufferingUpdateListener(android.media.MediaPlayer.OnBufferingUpdateListener); + method public void setOnCompletionListener(android.media.MediaPlayer.OnCompletionListener); + method public void setOnDrmConfigHelper(android.media.MediaPlayer.OnDrmConfigHelper); + method public void setOnDrmInfoListener(android.media.MediaPlayer.OnDrmInfoListener); + method public void setOnDrmInfoListener(android.media.MediaPlayer.OnDrmInfoListener, android.os.Handler); + method public void setOnDrmPreparedListener(android.media.MediaPlayer.OnDrmPreparedListener); + method public void setOnDrmPreparedListener(android.media.MediaPlayer.OnDrmPreparedListener, android.os.Handler); + method public void setOnErrorListener(android.media.MediaPlayer.OnErrorListener); + method public void setOnInfoListener(android.media.MediaPlayer.OnInfoListener); + method public void setOnMediaTimeDiscontinuityListener(@NonNull android.media.MediaPlayer.OnMediaTimeDiscontinuityListener, @NonNull android.os.Handler); + method public void setOnMediaTimeDiscontinuityListener(@NonNull android.media.MediaPlayer.OnMediaTimeDiscontinuityListener); + method public void setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener); + method public void setOnSeekCompleteListener(android.media.MediaPlayer.OnSeekCompleteListener); + method public void setOnSubtitleDataListener(@NonNull android.media.MediaPlayer.OnSubtitleDataListener, @NonNull android.os.Handler); + method public void setOnSubtitleDataListener(@NonNull android.media.MediaPlayer.OnSubtitleDataListener); + method public void setOnTimedMetaDataAvailableListener(android.media.MediaPlayer.OnTimedMetaDataAvailableListener); + method public void setOnTimedTextListener(android.media.MediaPlayer.OnTimedTextListener); + method public void setOnVideoSizeChangedListener(android.media.MediaPlayer.OnVideoSizeChangedListener); + method public void setPlaybackParams(@NonNull android.media.PlaybackParams); + method public boolean setPreferredDevice(android.media.AudioDeviceInfo); + method public void setScreenOnWhilePlaying(boolean); + method public void setSurface(android.view.Surface); + method public void setSyncParams(@NonNull android.media.SyncParams); + method public void setVideoScalingMode(int); + method public void setVolume(float, float); + method public void setWakeMode(android.content.Context, int); + method public void start() throws java.lang.IllegalStateException; + method public void stop() throws java.lang.IllegalStateException; + field public static final int MEDIA_ERROR_IO = -1004; // 0xfffffc14 + field public static final int MEDIA_ERROR_MALFORMED = -1007; // 0xfffffc11 + field public static final int MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK = 200; // 0xc8 + field public static final int MEDIA_ERROR_SERVER_DIED = 100; // 0x64 + field public static final int MEDIA_ERROR_TIMED_OUT = -110; // 0xffffff92 + field public static final int MEDIA_ERROR_UNKNOWN = 1; // 0x1 + field public static final int MEDIA_ERROR_UNSUPPORTED = -1010; // 0xfffffc0e + field public static final int MEDIA_INFO_AUDIO_NOT_PLAYING = 804; // 0x324 + field public static final int MEDIA_INFO_BAD_INTERLEAVING = 800; // 0x320 + field public static final int MEDIA_INFO_BUFFERING_END = 702; // 0x2be + field public static final int MEDIA_INFO_BUFFERING_START = 701; // 0x2bd + field public static final int MEDIA_INFO_METADATA_UPDATE = 802; // 0x322 + field public static final int MEDIA_INFO_NOT_SEEKABLE = 801; // 0x321 + field public static final int MEDIA_INFO_STARTED_AS_NEXT = 2; // 0x2 + field public static final int MEDIA_INFO_SUBTITLE_TIMED_OUT = 902; // 0x386 + field public static final int MEDIA_INFO_UNKNOWN = 1; // 0x1 + field public static final int MEDIA_INFO_UNSUPPORTED_SUBTITLE = 901; // 0x385 + field public static final int MEDIA_INFO_VIDEO_NOT_PLAYING = 805; // 0x325 + field public static final int MEDIA_INFO_VIDEO_RENDERING_START = 3; // 0x3 + field public static final int MEDIA_INFO_VIDEO_TRACK_LAGGING = 700; // 0x2bc + field @Deprecated public static final String MEDIA_MIMETYPE_TEXT_SUBRIP = "application/x-subrip"; + field public static final int PREPARE_DRM_STATUS_PREPARATION_ERROR = 3; // 0x3 + field public static final int PREPARE_DRM_STATUS_PROVISIONING_NETWORK_ERROR = 1; // 0x1 + field public static final int PREPARE_DRM_STATUS_PROVISIONING_SERVER_ERROR = 2; // 0x2 + field public static final int PREPARE_DRM_STATUS_SUCCESS = 0; // 0x0 + field public static final int SEEK_CLOSEST = 3; // 0x3 + field public static final int SEEK_CLOSEST_SYNC = 2; // 0x2 + field public static final int SEEK_NEXT_SYNC = 1; // 0x1 + field public static final int SEEK_PREVIOUS_SYNC = 0; // 0x0 + field public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT = 1; // 0x1 + field public static final int VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING = 2; // 0x2 + } + + public static final class MediaPlayer.DrmInfo { + method public java.util.Map getPssh(); + method public java.util.UUID[] getSupportedSchemes(); + } + + public static final class MediaPlayer.MetricsConstants { + field public static final String CODEC_AUDIO = "android.media.mediaplayer.audio.codec"; + field public static final String CODEC_VIDEO = "android.media.mediaplayer.video.codec"; + field public static final String DURATION = "android.media.mediaplayer.durationMs"; + field public static final String ERRORS = "android.media.mediaplayer.err"; + field public static final String ERROR_CODE = "android.media.mediaplayer.errcode"; + field public static final String FRAMES = "android.media.mediaplayer.frames"; + field public static final String FRAMES_DROPPED = "android.media.mediaplayer.dropped"; + field public static final String HEIGHT = "android.media.mediaplayer.height"; + field public static final String MIME_TYPE_AUDIO = "android.media.mediaplayer.audio.mime"; + field public static final String MIME_TYPE_VIDEO = "android.media.mediaplayer.video.mime"; + field public static final String PLAYING = "android.media.mediaplayer.playingMs"; + field public static final String WIDTH = "android.media.mediaplayer.width"; + } + + public static final class MediaPlayer.NoDrmSchemeException extends android.media.MediaDrmException { + ctor public MediaPlayer.NoDrmSchemeException(String); + } + + public static interface MediaPlayer.OnBufferingUpdateListener { + method public void onBufferingUpdate(android.media.MediaPlayer, int); + } + + public static interface MediaPlayer.OnCompletionListener { + method public void onCompletion(android.media.MediaPlayer); + } + + public static interface MediaPlayer.OnDrmConfigHelper { + method public void onDrmConfig(android.media.MediaPlayer); + } + + public static interface MediaPlayer.OnDrmInfoListener { + method public void onDrmInfo(android.media.MediaPlayer, android.media.MediaPlayer.DrmInfo); + } + + public static interface MediaPlayer.OnDrmPreparedListener { + method public void onDrmPrepared(android.media.MediaPlayer, int); + } + + public static interface MediaPlayer.OnErrorListener { + method public boolean onError(android.media.MediaPlayer, int, int); + } + + public static interface MediaPlayer.OnInfoListener { + method public boolean onInfo(android.media.MediaPlayer, int, int); + } + + public static interface MediaPlayer.OnMediaTimeDiscontinuityListener { + method public void onMediaTimeDiscontinuity(@NonNull android.media.MediaPlayer, @NonNull android.media.MediaTimestamp); + } + + public static interface MediaPlayer.OnPreparedListener { + method public void onPrepared(android.media.MediaPlayer); + } + + public static interface MediaPlayer.OnSeekCompleteListener { + method public void onSeekComplete(android.media.MediaPlayer); + } + + public static interface MediaPlayer.OnSubtitleDataListener { + method public void onSubtitleData(@NonNull android.media.MediaPlayer, @NonNull android.media.SubtitleData); + } + + public static interface MediaPlayer.OnTimedMetaDataAvailableListener { + method public void onTimedMetaDataAvailable(android.media.MediaPlayer, android.media.TimedMetaData); + } + + public static interface MediaPlayer.OnTimedTextListener { + method public void onTimedText(android.media.MediaPlayer, android.media.TimedText); + } + + public static interface MediaPlayer.OnVideoSizeChangedListener { + method public void onVideoSizeChanged(android.media.MediaPlayer, int, int); + } + + public static final class MediaPlayer.ProvisioningNetworkErrorException extends android.media.MediaDrmException { + ctor public MediaPlayer.ProvisioningNetworkErrorException(String); + } + + public static final class MediaPlayer.ProvisioningServerErrorException extends android.media.MediaDrmException { + ctor public MediaPlayer.ProvisioningServerErrorException(String); + } + + public static class MediaPlayer.TrackInfo implements android.os.Parcelable { + method public int describeContents(); + method public android.media.MediaFormat getFormat(); + method public String getLanguage(); + method public int getTrackType(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int MEDIA_TRACK_TYPE_AUDIO = 2; // 0x2 + field public static final int MEDIA_TRACK_TYPE_METADATA = 5; // 0x5 + field public static final int MEDIA_TRACK_TYPE_SUBTITLE = 4; // 0x4 + field public static final int MEDIA_TRACK_TYPE_TIMEDTEXT = 3; // 0x3 + field public static final int MEDIA_TRACK_TYPE_UNKNOWN = 0; // 0x0 + field public static final int MEDIA_TRACK_TYPE_VIDEO = 1; // 0x1 + } + + public class MediaRecorder implements android.media.AudioRecordingMonitor android.media.AudioRouting android.media.MicrophoneDirection { + ctor @Deprecated public MediaRecorder(); + ctor public MediaRecorder(@NonNull android.content.Context); + method public void addOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener, android.os.Handler); + method protected void finalize(); + method public java.util.List getActiveMicrophones() throws java.io.IOException; + method @Nullable public android.media.AudioRecordingConfiguration getActiveRecordingConfiguration(); + method public static final int getAudioSourceMax(); + method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); + method public int getMaxAmplitude() throws java.lang.IllegalStateException; + method public android.os.PersistableBundle getMetrics(); + method public android.media.AudioDeviceInfo getPreferredDevice(); + method public android.media.AudioDeviceInfo getRoutedDevice(); + method @FlaggedApi("android.media.audio.routed_device_ids") @NonNull public java.util.List getRoutedDevices(); + method public android.view.Surface getSurface(); + method public boolean isPrivacySensitive(); + method public void pause() throws java.lang.IllegalStateException; + method public void prepare() throws java.io.IOException, java.lang.IllegalStateException; + method public void registerAudioRecordingCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.AudioManager.AudioRecordingCallback); + method public void release(); + method public void removeOnRoutingChangedListener(android.media.AudioRouting.OnRoutingChangedListener); + method public void reset(); + method public void resume() throws java.lang.IllegalStateException; + method public void setAudioChannels(int); + method public void setAudioEncoder(int) throws java.lang.IllegalStateException; + method public void setAudioEncodingBitRate(int); + method public void setAudioProfile(@NonNull android.media.EncoderProfiles.AudioProfile); + method public void setAudioSamplingRate(int); + method public void setAudioSource(int) throws java.lang.IllegalStateException; + method @Deprecated public void setCamera(android.hardware.Camera); + method public void setCaptureRate(double); + method public void setInputSurface(@NonNull android.view.Surface); + method public void setLocation(float, float); + method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); + method public void setMaxDuration(int) throws java.lang.IllegalArgumentException; + method public void setMaxFileSize(long) throws java.lang.IllegalArgumentException; + method public void setNextOutputFile(java.io.FileDescriptor) throws java.io.IOException; + method public void setNextOutputFile(java.io.File) throws java.io.IOException; + method public void setOnErrorListener(android.media.MediaRecorder.OnErrorListener); + method public void setOnInfoListener(android.media.MediaRecorder.OnInfoListener); + method public void setOrientationHint(int); + method public void setOutputFile(java.io.FileDescriptor) throws java.lang.IllegalStateException; + method public void setOutputFile(java.io.File); + method public void setOutputFile(String) throws java.lang.IllegalStateException; + method public void setOutputFormat(int) throws java.lang.IllegalStateException; + method public boolean setPreferredDevice(android.media.AudioDeviceInfo); + method public boolean setPreferredMicrophoneDirection(int); + method public boolean setPreferredMicrophoneFieldDimension(@FloatRange(from=-1.0, to=1.0) float); + method public void setPreviewDisplay(android.view.Surface); + method public void setPrivacySensitive(boolean); + method public void setProfile(android.media.CamcorderProfile); + method public void setVideoEncoder(int) throws java.lang.IllegalStateException; + method public void setVideoEncodingBitRate(int); + method public void setVideoEncodingProfileLevel(int, int); + method public void setVideoFrameRate(int) throws java.lang.IllegalStateException; + method public void setVideoProfile(@NonNull android.media.EncoderProfiles.VideoProfile); + method public void setVideoSize(int, int) throws java.lang.IllegalStateException; + method public void setVideoSource(int) throws java.lang.IllegalStateException; + method public void start() throws java.lang.IllegalStateException; + method public void stop() throws java.lang.IllegalStateException; + method public void unregisterAudioRecordingCallback(@NonNull android.media.AudioManager.AudioRecordingCallback); + field public static final int MEDIA_ERROR_SERVER_DIED = 100; // 0x64 + field public static final int MEDIA_RECORDER_ERROR_UNKNOWN = 1; // 0x1 + field public static final int MEDIA_RECORDER_INFO_MAX_DURATION_REACHED = 800; // 0x320 + field public static final int MEDIA_RECORDER_INFO_MAX_FILESIZE_APPROACHING = 802; // 0x322 + field public static final int MEDIA_RECORDER_INFO_MAX_FILESIZE_REACHED = 801; // 0x321 + field public static final int MEDIA_RECORDER_INFO_NEXT_OUTPUT_FILE_STARTED = 803; // 0x323 + field public static final int MEDIA_RECORDER_INFO_UNKNOWN = 1; // 0x1 + } + + public final class MediaRecorder.AudioEncoder { + field public static final int AAC = 3; // 0x3 + field public static final int AAC_ELD = 5; // 0x5 + field public static final int AMR_NB = 1; // 0x1 + field public static final int AMR_WB = 2; // 0x2 + field public static final int DEFAULT = 0; // 0x0 + field public static final int HE_AAC = 4; // 0x4 + field public static final int OPUS = 7; // 0x7 + field public static final int VORBIS = 6; // 0x6 + } + + public final class MediaRecorder.AudioSource { + field public static final int CAMCORDER = 5; // 0x5 + field public static final int DEFAULT = 0; // 0x0 + field public static final int MIC = 1; // 0x1 + field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int REMOTE_SUBMIX = 8; // 0x8 + field public static final int UNPROCESSED = 9; // 0x9 + field public static final int VOICE_CALL = 4; // 0x4 + field public static final int VOICE_COMMUNICATION = 7; // 0x7 + field public static final int VOICE_DOWNLINK = 3; // 0x3 + field public static final int VOICE_PERFORMANCE = 10; // 0xa + field public static final int VOICE_RECOGNITION = 6; // 0x6 + field public static final int VOICE_UPLINK = 2; // 0x2 + } + + public static final class MediaRecorder.MetricsConstants { + field public static final String AUDIO_BITRATE = "android.media.mediarecorder.audio-bitrate"; + field public static final String AUDIO_CHANNELS = "android.media.mediarecorder.audio-channels"; + field public static final String AUDIO_SAMPLERATE = "android.media.mediarecorder.audio-samplerate"; + field public static final String AUDIO_TIMESCALE = "android.media.mediarecorder.audio-timescale"; + field public static final String CAPTURE_FPS = "android.media.mediarecorder.capture-fps"; + field public static final String CAPTURE_FPS_ENABLE = "android.media.mediarecorder.capture-fpsenable"; + field public static final String FRAMERATE = "android.media.mediarecorder.frame-rate"; + field public static final String HEIGHT = "android.media.mediarecorder.height"; + field public static final String MOVIE_TIMESCALE = "android.media.mediarecorder.movie-timescale"; + field public static final String ROTATION = "android.media.mediarecorder.rotation"; + field public static final String VIDEO_BITRATE = "android.media.mediarecorder.video-bitrate"; + field public static final String VIDEO_IFRAME_INTERVAL = "android.media.mediarecorder.video-iframe-interval"; + field public static final String VIDEO_LEVEL = "android.media.mediarecorder.video-encoder-level"; + field public static final String VIDEO_PROFILE = "android.media.mediarecorder.video-encoder-profile"; + field public static final String VIDEO_TIMESCALE = "android.media.mediarecorder.video-timescale"; + field public static final String WIDTH = "android.media.mediarecorder.width"; + } + + public static interface MediaRecorder.OnErrorListener { + method public void onError(android.media.MediaRecorder, int, int); + } + + public static interface MediaRecorder.OnInfoListener { + method public void onInfo(android.media.MediaRecorder, int, int); + } + + public final class MediaRecorder.OutputFormat { + field public static final int AAC_ADTS = 6; // 0x6 + field public static final int AMR_NB = 3; // 0x3 + field public static final int AMR_WB = 4; // 0x4 + field public static final int DEFAULT = 0; // 0x0 + field public static final int MPEG_2_TS = 8; // 0x8 + field public static final int MPEG_4 = 2; // 0x2 + field public static final int OGG = 11; // 0xb + field @Deprecated public static final int RAW_AMR = 3; // 0x3 + field public static final int THREE_GPP = 1; // 0x1 + field public static final int WEBM = 9; // 0x9 + } + + public final class MediaRecorder.VideoEncoder { + field public static final int AV1 = 8; // 0x8 + field public static final int DEFAULT = 0; // 0x0 + field public static final int DOLBY_VISION = 7; // 0x7 + field public static final int H263 = 1; // 0x1 + field public static final int H264 = 2; // 0x2 + field public static final int HEVC = 5; // 0x5 + field public static final int MPEG_4_SP = 3; // 0x3 + field public static final int VP8 = 4; // 0x4 + field public static final int VP9 = 6; // 0x6 + } + + public final class MediaRecorder.VideoSource { + field public static final int CAMERA = 1; // 0x1 + field public static final int DEFAULT = 0; // 0x0 + field public static final int SURFACE = 2; // 0x2 + } + + public final class MediaRoute2Info implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getClientPackageName(); + method public int getConnectionState(); + method @NonNull public java.util.Set getDeduplicationIds(); + method @Nullable public CharSequence getDescription(); + method @Nullable public android.os.Bundle getExtras(); + method @NonNull public java.util.List getFeatures(); + method @Nullable public android.net.Uri getIconUri(); + method @NonNull public String getId(); + method @NonNull public CharSequence getName(); + method @FlaggedApi("com.android.media.flags.enable_route_visibility_control_api") @NonNull public java.util.List> getRequiredPermissions(); + method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public int getSuitabilityStatus(); + method @FlaggedApi("com.android.media.flags.enable_mirroring_in_media_router_2") public int getSupportedRoutingTypes(); + method public int getType(); + method public int getVolume(); + method public int getVolumeHandling(); + method public int getVolumeMax(); + method public boolean isSystemRoute(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CONNECTION_STATE_CONNECTED = 2; // 0x2 + field public static final int CONNECTION_STATE_CONNECTING = 1; // 0x1 + field public static final int CONNECTION_STATE_DISCONNECTED = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String FEATURE_LIVE_AUDIO = "android.media.route.feature.LIVE_AUDIO"; + field public static final String FEATURE_LIVE_VIDEO = "android.media.route.feature.LIVE_VIDEO"; + field public static final String FEATURE_REMOTE_AUDIO_PLAYBACK = "android.media.route.feature.REMOTE_AUDIO_PLAYBACK"; + field public static final String FEATURE_REMOTE_PLAYBACK = "android.media.route.feature.REMOTE_PLAYBACK"; + field public static final String FEATURE_REMOTE_VIDEO_PLAYBACK = "android.media.route.feature.REMOTE_VIDEO_PLAYBACK"; + field @FlaggedApi("com.android.media.flags.enable_mirroring_in_media_router_2") public static final int FLAG_ROUTING_TYPE_REMOTE = 4; // 0x4 + field @FlaggedApi("com.android.media.flags.enable_mirroring_in_media_router_2") public static final int FLAG_ROUTING_TYPE_SYSTEM_AUDIO = 1; // 0x1 + field public static final int PLAYBACK_VOLUME_FIXED = 0; // 0x0 + field public static final int PLAYBACK_VOLUME_VARIABLE = 1; // 0x1 + field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int SUITABILITY_STATUS_NOT_SUITABLE_FOR_TRANSFER = 2; // 0x2 + field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int SUITABILITY_STATUS_SUITABLE_FOR_DEFAULT_TRANSFER = 0; // 0x0 + field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int SUITABILITY_STATUS_SUITABLE_FOR_MANUAL_TRANSFER = 1; // 0x1 + field @FlaggedApi("com.android.media.flags.enable_new_wired_media_route_2_info_types") public static final int TYPE_AUX_LINE = 19; // 0x13 + field public static final int TYPE_BLE_HEADSET = 26; // 0x1a + field public static final int TYPE_BLUETOOTH_A2DP = 8; // 0x8 + field public static final int TYPE_BUILTIN_SPEAKER = 2; // 0x2 + field public static final int TYPE_DOCK = 13; // 0xd + field public static final int TYPE_GROUP = 2000; // 0x7d0 + field public static final int TYPE_HDMI = 9; // 0x9 + field @FlaggedApi("com.android.media.flags.enable_audio_policies_device_and_bluetooth_controller") public static final int TYPE_HDMI_ARC = 10; // 0xa + field @FlaggedApi("com.android.media.flags.enable_audio_policies_device_and_bluetooth_controller") public static final int TYPE_HDMI_EARC = 29; // 0x1d + field public static final int TYPE_HEARING_AID = 23; // 0x17 + field @FlaggedApi("com.android.media.flags.enable_new_wired_media_route_2_info_types") public static final int TYPE_LINE_ANALOG = 5; // 0x5 + field @FlaggedApi("com.android.media.flags.enable_new_wired_media_route_2_info_types") public static final int TYPE_LINE_DIGITAL = 6; // 0x6 + field @FlaggedApi("android.media.audio.enable_multichannel_group_device") public static final int TYPE_MULTICHANNEL_SPEAKER_GROUP = 32; // 0x20 + field public static final int TYPE_REMOTE_AUDIO_VIDEO_RECEIVER = 1003; // 0x3eb + field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_CAR = 1008; // 0x3f0 + field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_COMPUTER = 1006; // 0x3ee + field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_GAME_CONSOLE = 1007; // 0x3ef + field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_SMARTPHONE = 1010; // 0x3f2 + field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_SMARTWATCH = 1009; // 0x3f1 + field public static final int TYPE_REMOTE_SPEAKER = 1002; // 0x3ea + field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_TABLET = 1004; // 0x3ec + field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_TABLET_DOCKED = 1005; // 0x3ed + field public static final int TYPE_REMOTE_TV = 1001; // 0x3e9 + field public static final int TYPE_UNKNOWN = 0; // 0x0 + field public static final int TYPE_USB_ACCESSORY = 12; // 0xc + field public static final int TYPE_USB_DEVICE = 11; // 0xb + field public static final int TYPE_USB_HEADSET = 22; // 0x16 + field public static final int TYPE_WIRED_HEADPHONES = 4; // 0x4 + field public static final int TYPE_WIRED_HEADSET = 3; // 0x3 + } + + public static final class MediaRoute2Info.Builder { + ctor public MediaRoute2Info.Builder(@NonNull String, @NonNull CharSequence); + ctor public MediaRoute2Info.Builder(@NonNull android.media.MediaRoute2Info); + method @NonNull public android.media.MediaRoute2Info.Builder addFeature(@NonNull String); + method @NonNull public android.media.MediaRoute2Info.Builder addFeatures(@NonNull java.util.Collection); + method @NonNull public android.media.MediaRoute2Info build(); + method @NonNull public android.media.MediaRoute2Info.Builder clearFeatures(); + method @NonNull public android.media.MediaRoute2Info.Builder setClientPackageName(@Nullable String); + method @NonNull public android.media.MediaRoute2Info.Builder setConnectionState(int); + method @NonNull public android.media.MediaRoute2Info.Builder setDeduplicationIds(@NonNull java.util.Set); + method @NonNull public android.media.MediaRoute2Info.Builder setDescription(@Nullable CharSequence); + method @NonNull public android.media.MediaRoute2Info.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.media.MediaRoute2Info.Builder setIconUri(@Nullable android.net.Uri); + method @FlaggedApi("com.android.media.flags.enable_route_visibility_control_api") @NonNull public android.media.MediaRoute2Info.Builder setRequiredPermissions(@NonNull java.util.Set); + method @FlaggedApi("com.android.media.flags.enable_route_visibility_control_api") @NonNull public android.media.MediaRoute2Info.Builder setRequiredPermissions(@NonNull java.util.List>); + method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") @NonNull public android.media.MediaRoute2Info.Builder setSuitabilityStatus(int); + method @FlaggedApi("com.android.media.flags.enable_mirroring_in_media_router_2") @NonNull public android.media.MediaRoute2Info.Builder setSupportedRoutingTypes(int); + method @NonNull public android.media.MediaRoute2Info.Builder setType(int); + method @NonNull public android.media.MediaRoute2Info.Builder setVisibilityPublic(); + method @NonNull public android.media.MediaRoute2Info.Builder setVisibilityRestricted(@NonNull java.util.Set); + method @NonNull public android.media.MediaRoute2Info.Builder setVolume(int); + method @NonNull public android.media.MediaRoute2Info.Builder setVolumeHandling(int); + method @NonNull public android.media.MediaRoute2Info.Builder setVolumeMax(int); + } + + public abstract class MediaRoute2ProviderService extends android.app.Service { + ctor public MediaRoute2ProviderService(); + method @NonNull public final java.util.List getAllSessionInfo(); + method @Nullable public final android.media.RoutingSessionInfo getSessionInfo(@NonNull String); + method public final void notifyRequestFailed(long, int); + method public final void notifyRoutes(@NonNull java.util.Collection); + method public final void notifySessionCreated(long, @NonNull android.media.RoutingSessionInfo); + method public final void notifySessionReleased(@NonNull String); + method public final void notifySessionUpdated(@NonNull android.media.RoutingSessionInfo); + method @CallSuper @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); + method public abstract void onCreateSession(long, @NonNull String, @NonNull String, @Nullable android.os.Bundle); + method public abstract void onDeselectRoute(long, @NonNull String, @NonNull String); + method public void onDiscoveryPreferenceChanged(@NonNull android.media.RouteDiscoveryPreference); + method public abstract void onReleaseSession(long, @NonNull String); + method public abstract void onSelectRoute(long, @NonNull String, @NonNull String); + method public abstract void onSetRouteVolume(long, @NonNull String, int); + method public abstract void onSetSessionVolume(long, @NonNull String, int); + method public abstract void onTransferToRoute(long, @NonNull String, @NonNull String); + field public static final int REASON_INVALID_COMMAND = 4; // 0x4 + field public static final int REASON_NETWORK_ERROR = 2; // 0x2 + field public static final int REASON_REJECTED = 1; // 0x1 + field public static final int REASON_ROUTE_NOT_AVAILABLE = 3; // 0x3 + field public static final int REASON_UNKNOWN_ERROR = 0; // 0x0 + field public static final long REQUEST_ID_NONE = 0L; // 0x0L + field public static final String SERVICE_INTERFACE = "android.media.MediaRoute2ProviderService"; + } + + public class MediaRouter { + method public void addCallback(int, android.media.MediaRouter.Callback); + method public void addCallback(int, android.media.MediaRouter.Callback, int); + method public void addUserRoute(android.media.MediaRouter.UserRouteInfo); + method public void clearUserRoutes(); + method public android.media.MediaRouter.RouteCategory createRouteCategory(CharSequence, boolean); + method public android.media.MediaRouter.RouteCategory createRouteCategory(int, boolean); + method public android.media.MediaRouter.UserRouteInfo createUserRoute(android.media.MediaRouter.RouteCategory); + method public android.media.MediaRouter.RouteCategory getCategoryAt(int); + method public int getCategoryCount(); + method public android.media.MediaRouter.RouteInfo getDefaultRoute(); + method public android.media.MediaRouter.RouteInfo getRouteAt(int); + method public int getRouteCount(); + method public android.media.MediaRouter.RouteInfo getSelectedRoute(int); + method public void removeCallback(android.media.MediaRouter.Callback); + method public void removeUserRoute(android.media.MediaRouter.UserRouteInfo); + method public void selectRoute(int, @NonNull android.media.MediaRouter.RouteInfo); + field public static final int CALLBACK_FLAG_PERFORM_ACTIVE_SCAN = 1; // 0x1 + field public static final int CALLBACK_FLAG_UNFILTERED_EVENTS = 2; // 0x2 + field public static final int ROUTE_TYPE_LIVE_AUDIO = 1; // 0x1 + field public static final int ROUTE_TYPE_LIVE_VIDEO = 2; // 0x2 + field public static final int ROUTE_TYPE_USER = 8388608; // 0x800000 + } + + public abstract static class MediaRouter.Callback { + ctor public MediaRouter.Callback(); + method public abstract void onRouteAdded(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); + method public abstract void onRouteChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); + method public abstract void onRouteGrouped(android.media.MediaRouter, android.media.MediaRouter.RouteInfo, android.media.MediaRouter.RouteGroup, int); + method public void onRoutePresentationDisplayChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); + method public abstract void onRouteRemoved(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); + method public abstract void onRouteSelected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo); + method public abstract void onRouteUngrouped(android.media.MediaRouter, android.media.MediaRouter.RouteInfo, android.media.MediaRouter.RouteGroup); + method public abstract void onRouteUnselected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo); + method public abstract void onRouteVolumeChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); + } + + public static class MediaRouter.RouteCategory { + method public CharSequence getName(); + method public CharSequence getName(android.content.Context); + method public java.util.List getRoutes(java.util.List); + method public int getSupportedTypes(); + method public boolean isGroupable(); + } + + public static class MediaRouter.RouteGroup extends android.media.MediaRouter.RouteInfo { + method public void addRoute(android.media.MediaRouter.RouteInfo); + method public void addRoute(android.media.MediaRouter.RouteInfo, int); + method public android.media.MediaRouter.RouteInfo getRouteAt(int); + method public int getRouteCount(); + method public void removeRoute(android.media.MediaRouter.RouteInfo); + method public void removeRoute(int); + method public void setIconDrawable(android.graphics.drawable.Drawable); + method public void setIconResource(@DrawableRes int); + } + + public static class MediaRouter.RouteInfo { + method public android.media.MediaRouter.RouteCategory getCategory(); + method public CharSequence getDescription(); + method public int getDeviceType(); + method public android.media.MediaRouter.RouteGroup getGroup(); + method public android.graphics.drawable.Drawable getIconDrawable(); + method public CharSequence getName(); + method public CharSequence getName(android.content.Context); + method public int getPlaybackStream(); + method public int getPlaybackType(); + method public android.view.Display getPresentationDisplay(); + method public CharSequence getStatus(); + method public int getSupportedTypes(); + method public Object getTag(); + method public int getVolume(); + method public int getVolumeHandling(); + method public int getVolumeMax(); + method public boolean isConnecting(); + method public boolean isEnabled(); + method public void requestSetVolume(int); + method public void requestUpdateVolume(int); + method public void setTag(Object); + field public static final int DEVICE_TYPE_BLUETOOTH = 3; // 0x3 + field public static final int DEVICE_TYPE_SPEAKER = 2; // 0x2 + field public static final int DEVICE_TYPE_TV = 1; // 0x1 + field public static final int DEVICE_TYPE_UNKNOWN = 0; // 0x0 + field public static final int PLAYBACK_TYPE_LOCAL = 0; // 0x0 + field public static final int PLAYBACK_TYPE_REMOTE = 1; // 0x1 + field public static final int PLAYBACK_VOLUME_FIXED = 0; // 0x0 + field public static final int PLAYBACK_VOLUME_VARIABLE = 1; // 0x1 + } + + public static class MediaRouter.SimpleCallback extends android.media.MediaRouter.Callback { + ctor public MediaRouter.SimpleCallback(); + method public void onRouteAdded(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); + method public void onRouteChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); + method public void onRouteGrouped(android.media.MediaRouter, android.media.MediaRouter.RouteInfo, android.media.MediaRouter.RouteGroup, int); + method public void onRouteRemoved(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); + method public void onRouteSelected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo); + method public void onRouteUngrouped(android.media.MediaRouter, android.media.MediaRouter.RouteInfo, android.media.MediaRouter.RouteGroup); + method public void onRouteUnselected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo); + method public void onRouteVolumeChanged(android.media.MediaRouter, android.media.MediaRouter.RouteInfo); + } + + public static class MediaRouter.UserRouteInfo extends android.media.MediaRouter.RouteInfo { + method public android.media.RemoteControlClient getRemoteControlClient(); + method public void setDescription(CharSequence); + method public void setIconDrawable(android.graphics.drawable.Drawable); + method public void setIconResource(@DrawableRes int); + method public void setName(CharSequence); + method public void setName(int); + method public void setPlaybackStream(int); + method public void setPlaybackType(int); + method public void setRemoteControlClient(android.media.RemoteControlClient); + method public void setStatus(CharSequence); + method public void setVolume(int); + method public void setVolumeCallback(android.media.MediaRouter.VolumeCallback); + method public void setVolumeHandling(int); + method public void setVolumeMax(int); + } + + public abstract static class MediaRouter.VolumeCallback { + ctor public MediaRouter.VolumeCallback(); + method public abstract void onVolumeSetRequest(android.media.MediaRouter.RouteInfo, int); + method public abstract void onVolumeUpdateRequest(android.media.MediaRouter.RouteInfo, int); + } + + public final class MediaRouter2 { + method @FlaggedApi("com.android.media.flags.enable_screen_off_scanning") public void cancelScanRequest(@NonNull android.media.MediaRouter2.ScanToken); + method @Nullable public android.media.MediaRouter2.RoutingController getController(@NonNull String); + method @NonNull public java.util.List getControllers(); + method @NonNull public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context); + method @FlaggedApi("com.android.media.flags.enable_privileged_routing_for_media_routing_control") @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MEDIA_CONTENT_CONTROL, android.Manifest.permission.MEDIA_ROUTING_CONTROL}) public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull Runnable); + method @FlaggedApi("com.android.media.flags.enable_rlp_callbacks_in_media_router2") @Nullable public android.media.RouteListingPreference getRouteListingPreference(); + method @NonNull public java.util.List getRoutes(); + method @NonNull public android.media.MediaRouter2.RoutingController getSystemController(); + method public void registerControllerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.ControllerCallback); + method public void registerRouteCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.RouteCallback, @NonNull android.media.RouteDiscoveryPreference); + method @FlaggedApi("com.android.media.flags.enable_rlp_callbacks_in_media_router2") public void registerRouteListingPreferenceUpdatedCallback(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public void registerTransferCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.TransferCallback); + method @FlaggedApi("com.android.media.flags.enable_screen_off_scanning") @NonNull public android.media.MediaRouter2.ScanToken requestScan(@NonNull android.media.MediaRouter2.ScanRequest); + method public void setOnGetControllerHintsListener(@Nullable android.media.MediaRouter2.OnGetControllerHintsListener); + method public void setRouteListingPreference(@Nullable android.media.RouteListingPreference); + method @FlaggedApi("com.android.media.flags.enable_privileged_routing_for_media_routing_control") @RequiresPermission(anyOf={android.Manifest.permission.MEDIA_CONTENT_CONTROL, android.Manifest.permission.MEDIA_ROUTING_CONTROL}) public void setRouteVolume(@NonNull android.media.MediaRoute2Info, int); + method public boolean showSystemOutputSwitcher(); + method public void stop(); + method public void transferTo(@NonNull android.media.MediaRoute2Info); + method public void unregisterControllerCallback(@NonNull android.media.MediaRouter2.ControllerCallback); + method public void unregisterRouteCallback(@NonNull android.media.MediaRouter2.RouteCallback); + method @FlaggedApi("com.android.media.flags.enable_rlp_callbacks_in_media_router2") public void unregisterRouteListingPreferenceUpdatedCallback(@NonNull java.util.function.Consumer); + method public void unregisterTransferCallback(@NonNull android.media.MediaRouter2.TransferCallback); + } + + public abstract static class MediaRouter2.ControllerCallback { + ctor public MediaRouter2.ControllerCallback(); + method public void onControllerUpdated(@NonNull android.media.MediaRouter2.RoutingController); + } + + public static interface MediaRouter2.OnGetControllerHintsListener { + method @Nullable public android.os.Bundle onGetControllerHints(@NonNull android.media.MediaRoute2Info); + } + + public abstract static class MediaRouter2.RouteCallback { + ctor public MediaRouter2.RouteCallback(); + method @Deprecated public void onRoutesAdded(@NonNull java.util.List); + method @Deprecated public void onRoutesChanged(@NonNull java.util.List); + method @Deprecated public void onRoutesRemoved(@NonNull java.util.List); + method public void onRoutesUpdated(@NonNull java.util.List); + } + + public class MediaRouter2.RoutingController { + method public void deselectRoute(@NonNull android.media.MediaRoute2Info); + method @Nullable public android.os.Bundle getControlHints(); + method @NonNull public java.util.List getDeselectableRoutes(); + method @NonNull public String getId(); + method @NonNull public android.media.RoutingSessionInfo getRoutingSessionInfo(); + method @NonNull public java.util.List getSelectableRoutes(); + method @NonNull public java.util.List getSelectedRoutes(); + method @FlaggedApi("com.android.media.flags.enable_get_transferable_routes") @NonNull public java.util.List getTransferableRoutes(); + method public int getVolume(); + method public int getVolumeHandling(); + method public int getVolumeMax(); + method public boolean isReleased(); + method public void release(); + method public void selectRoute(@NonNull android.media.MediaRoute2Info); + method public void setVolume(int); + method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public boolean wasTransferInitiatedBySelf(); + } + + @FlaggedApi("com.android.media.flags.enable_screen_off_scanning") public static final class MediaRouter2.ScanRequest { + method public boolean isScreenOffScan(); + } + + public static final class MediaRouter2.ScanRequest.Builder { + ctor public MediaRouter2.ScanRequest.Builder(); + method @NonNull public android.media.MediaRouter2.ScanRequest build(); + method @NonNull public android.media.MediaRouter2.ScanRequest.Builder setScreenOffScan(boolean); + } + + @FlaggedApi("com.android.media.flags.enable_screen_off_scanning") public static final class MediaRouter2.ScanToken { + } + + public abstract static class MediaRouter2.TransferCallback { + ctor public MediaRouter2.TransferCallback(); + method public void onStop(@NonNull android.media.MediaRouter2.RoutingController); + method public void onTransfer(@NonNull android.media.MediaRouter2.RoutingController, @NonNull android.media.MediaRouter2.RoutingController); + method public void onTransferFailure(@NonNull android.media.MediaRoute2Info); + } + + public class MediaScannerConnection implements android.content.ServiceConnection { + ctor public MediaScannerConnection(android.content.Context, android.media.MediaScannerConnection.MediaScannerConnectionClient); + method public void connect(); + method public void disconnect(); + method public boolean isConnected(); + method public void onServiceConnected(android.content.ComponentName, android.os.IBinder); + method public void onServiceDisconnected(android.content.ComponentName); + method public void scanFile(String, String); + method public static void scanFile(android.content.Context, String[], String[], android.media.MediaScannerConnection.OnScanCompletedListener); + } + + public static interface MediaScannerConnection.MediaScannerConnectionClient extends android.media.MediaScannerConnection.OnScanCompletedListener { + method public void onMediaScannerConnected(); + } + + public static interface MediaScannerConnection.OnScanCompletedListener { + method public void onScanCompleted(String, android.net.Uri); + } + + public final class MediaSync { + ctor public MediaSync(); + method @NonNull public android.view.Surface createInputSurface(); + method protected void finalize(); + method public void flush(); + method @NonNull public android.media.PlaybackParams getPlaybackParams(); + method @NonNull public android.media.SyncParams getSyncParams(); + method @Nullable public android.media.MediaTimestamp getTimestamp(); + method public void queueAudio(@NonNull java.nio.ByteBuffer, int, long); + method public void release(); + method public void setAudioTrack(@Nullable android.media.AudioTrack); + method public void setCallback(@Nullable android.media.MediaSync.Callback, @Nullable android.os.Handler); + method public void setOnErrorListener(@Nullable android.media.MediaSync.OnErrorListener, @Nullable android.os.Handler); + method public void setPlaybackParams(@NonNull android.media.PlaybackParams); + method public void setSurface(@Nullable android.view.Surface); + method public void setSyncParams(@NonNull android.media.SyncParams); + field public static final int MEDIASYNC_ERROR_AUDIOTRACK_FAIL = 1; // 0x1 + field public static final int MEDIASYNC_ERROR_SURFACE_FAIL = 2; // 0x2 + } + + public abstract static class MediaSync.Callback { + ctor public MediaSync.Callback(); + method public abstract void onAudioBufferConsumed(@NonNull android.media.MediaSync, @NonNull java.nio.ByteBuffer, int); + } + + public static interface MediaSync.OnErrorListener { + method public void onError(@NonNull android.media.MediaSync, int, int); + } + + public class MediaSyncEvent implements android.os.Parcelable { + method public static android.media.MediaSyncEvent createEvent(int) throws java.lang.IllegalArgumentException; + method public int describeContents(); + method public int getAudioSessionId(); + method public int getType(); + method public android.media.MediaSyncEvent setAudioSessionId(int) throws java.lang.IllegalArgumentException; + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SYNC_EVENT_NONE = 0; // 0x0 + field public static final int SYNC_EVENT_PRESENTATION_COMPLETE = 1; // 0x1 + } + + public final class MediaTimestamp { + ctor public MediaTimestamp(long, long, @FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE) float); + method public long getAnchorMediaTimeUs(); + method public long getAnchorSystemNanoTime(); + method @Deprecated public long getAnchorSytemNanoTime(); + method @FloatRange(from=0.0f, to=java.lang.Float.MAX_VALUE) public float getMediaClockRate(); + field public static final android.media.MediaTimestamp TIMESTAMP_UNKNOWN; + } + + public interface MicrophoneDirection { + method public boolean setPreferredMicrophoneDirection(int); + method public boolean setPreferredMicrophoneFieldDimension(@FloatRange(from=-1.0, to=1.0) float); + field public static final int MIC_DIRECTION_AWAY_FROM_USER = 2; // 0x2 + field public static final int MIC_DIRECTION_EXTERNAL = 3; // 0x3 + field public static final int MIC_DIRECTION_TOWARDS_USER = 1; // 0x1 + field public static final int MIC_DIRECTION_UNSPECIFIED = 0; // 0x0 + } + + public final class MicrophoneInfo { + method @NonNull public String getAddress(); + method public java.util.List> getChannelMapping(); + method public String getDescription(); + method public int getDirectionality(); + method public java.util.List> getFrequencyResponse(); + method public int getGroup(); + method public int getId(); + method public int getIndexInTheGroup(); + method public int getLocation(); + method public float getMaxSpl(); + method public float getMinSpl(); + method public android.media.MicrophoneInfo.Coordinate3F getOrientation(); + method public android.media.MicrophoneInfo.Coordinate3F getPosition(); + method public float getSensitivity(); + method public int getType(); + field public static final int CHANNEL_MAPPING_DIRECT = 1; // 0x1 + field public static final int CHANNEL_MAPPING_PROCESSED = 2; // 0x2 + field public static final int DIRECTIONALITY_BI_DIRECTIONAL = 2; // 0x2 + field public static final int DIRECTIONALITY_CARDIOID = 3; // 0x3 + field public static final int DIRECTIONALITY_HYPER_CARDIOID = 4; // 0x4 + field public static final int DIRECTIONALITY_OMNI = 1; // 0x1 + field public static final int DIRECTIONALITY_SUPER_CARDIOID = 5; // 0x5 + field public static final int DIRECTIONALITY_UNKNOWN = 0; // 0x0 + field public static final int GROUP_UNKNOWN = -1; // 0xffffffff + field public static final int INDEX_IN_THE_GROUP_UNKNOWN = -1; // 0xffffffff + field public static final int LOCATION_MAINBODY = 1; // 0x1 + field public static final int LOCATION_MAINBODY_MOVABLE = 2; // 0x2 + field public static final int LOCATION_PERIPHERAL = 3; // 0x3 + field public static final int LOCATION_UNKNOWN = 0; // 0x0 + field public static final android.media.MicrophoneInfo.Coordinate3F ORIENTATION_UNKNOWN; + field public static final android.media.MicrophoneInfo.Coordinate3F POSITION_UNKNOWN; + field public static final float SENSITIVITY_UNKNOWN = -3.4028235E38f; + field public static final float SPL_UNKNOWN = -3.4028235E38f; + } + + public static final class MicrophoneInfo.Coordinate3F { + field public final float x; + field public final float y; + field public final float z; + } + + public final class NotProvisionedException extends android.media.MediaDrmException { + ctor public NotProvisionedException(String); + } + + public final class PlaybackParams implements android.os.Parcelable { + ctor public PlaybackParams(); + method public android.media.PlaybackParams allowDefaults(); + method public int describeContents(); + method public int getAudioFallbackMode(); + method public float getPitch(); + method public float getSpeed(); + method public android.media.PlaybackParams setAudioFallbackMode(int); + method public android.media.PlaybackParams setPitch(float); + method public android.media.PlaybackParams setSpeed(float); + method public void writeToParcel(android.os.Parcel, int); + field public static final int AUDIO_FALLBACK_MODE_DEFAULT = 0; // 0x0 + field public static final int AUDIO_FALLBACK_MODE_FAIL = 2; // 0x2 + field public static final int AUDIO_FALLBACK_MODE_MUTE = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class Rating implements android.os.Parcelable { + method public int describeContents(); + method public float getPercentRating(); + method public int getRatingStyle(); + method public float getStarRating(); + method public boolean hasHeart(); + method public boolean isRated(); + method public boolean isThumbUp(); + method public static android.media.Rating newHeartRating(boolean); + method public static android.media.Rating newPercentageRating(float); + method public static android.media.Rating newStarRating(int, float); + method public static android.media.Rating newThumbRating(boolean); + method public static android.media.Rating newUnratedRating(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int RATING_3_STARS = 3; // 0x3 + field public static final int RATING_4_STARS = 4; // 0x4 + field public static final int RATING_5_STARS = 5; // 0x5 + field public static final int RATING_HEART = 1; // 0x1 + field public static final int RATING_NONE = 0; // 0x0 + field public static final int RATING_PERCENTAGE = 6; // 0x6 + field public static final int RATING_THUMB_UP_DOWN = 2; // 0x2 + } + + @Deprecated public class RemoteControlClient { + ctor @Deprecated public RemoteControlClient(android.app.PendingIntent); + ctor @Deprecated public RemoteControlClient(android.app.PendingIntent, android.os.Looper); + method @Deprecated public android.media.RemoteControlClient.MetadataEditor editMetadata(boolean); + method @Deprecated public android.media.session.MediaSession getMediaSession(); + method @Deprecated public void setMetadataUpdateListener(android.media.RemoteControlClient.OnMetadataUpdateListener); + method @Deprecated public void setOnGetPlaybackPositionListener(android.media.RemoteControlClient.OnGetPlaybackPositionListener); + method @Deprecated public void setPlaybackPositionUpdateListener(android.media.RemoteControlClient.OnPlaybackPositionUpdateListener); + method @Deprecated public void setPlaybackState(int); + method @Deprecated public void setPlaybackState(int, long, float); + method @Deprecated public void setTransportControlFlags(int); + field @Deprecated public static final int FLAG_KEY_MEDIA_FAST_FORWARD = 64; // 0x40 + field @Deprecated public static final int FLAG_KEY_MEDIA_NEXT = 128; // 0x80 + field @Deprecated public static final int FLAG_KEY_MEDIA_PAUSE = 16; // 0x10 + field @Deprecated public static final int FLAG_KEY_MEDIA_PLAY = 4; // 0x4 + field @Deprecated public static final int FLAG_KEY_MEDIA_PLAY_PAUSE = 8; // 0x8 + field @Deprecated public static final int FLAG_KEY_MEDIA_POSITION_UPDATE = 256; // 0x100 + field @Deprecated public static final int FLAG_KEY_MEDIA_PREVIOUS = 1; // 0x1 + field @Deprecated public static final int FLAG_KEY_MEDIA_RATING = 512; // 0x200 + field @Deprecated public static final int FLAG_KEY_MEDIA_REWIND = 2; // 0x2 + field @Deprecated public static final int FLAG_KEY_MEDIA_STOP = 32; // 0x20 + field @Deprecated public static final int PLAYSTATE_BUFFERING = 8; // 0x8 + field @Deprecated public static final int PLAYSTATE_ERROR = 9; // 0x9 + field @Deprecated public static final int PLAYSTATE_FAST_FORWARDING = 4; // 0x4 + field @Deprecated public static final int PLAYSTATE_PAUSED = 2; // 0x2 + field @Deprecated public static final int PLAYSTATE_PLAYING = 3; // 0x3 + field @Deprecated public static final int PLAYSTATE_REWINDING = 5; // 0x5 + field @Deprecated public static final int PLAYSTATE_SKIPPING_BACKWARDS = 7; // 0x7 + field @Deprecated public static final int PLAYSTATE_SKIPPING_FORWARDS = 6; // 0x6 + field @Deprecated public static final int PLAYSTATE_STOPPED = 1; // 0x1 + } + + @Deprecated public class RemoteControlClient.MetadataEditor extends android.media.MediaMetadataEditor { + method @Deprecated public void apply(); + method @Deprecated public Object clone() throws java.lang.CloneNotSupportedException; + method @Deprecated public android.media.RemoteControlClient.MetadataEditor putBitmap(int, android.graphics.Bitmap) throws java.lang.IllegalArgumentException; + method @Deprecated public android.media.RemoteControlClient.MetadataEditor putLong(int, long) throws java.lang.IllegalArgumentException; + method @Deprecated public android.media.RemoteControlClient.MetadataEditor putObject(int, Object) throws java.lang.IllegalArgumentException; + method @Deprecated public android.media.RemoteControlClient.MetadataEditor putString(int, String) throws java.lang.IllegalArgumentException; + field @Deprecated public static final int BITMAP_KEY_ARTWORK = 100; // 0x64 + } + + @Deprecated public static interface RemoteControlClient.OnGetPlaybackPositionListener { + method @Deprecated public long onGetPlaybackPosition(); + } + + @Deprecated public static interface RemoteControlClient.OnMetadataUpdateListener { + method @Deprecated public void onMetadataUpdate(int, Object); + } + + @Deprecated public static interface RemoteControlClient.OnPlaybackPositionUpdateListener { + method @Deprecated public void onPlaybackPositionUpdate(long); + } + + @Deprecated public final class RemoteController { + ctor @Deprecated public RemoteController(android.content.Context, android.media.RemoteController.OnClientUpdateListener) throws java.lang.IllegalArgumentException; + ctor @Deprecated public RemoteController(android.content.Context, android.media.RemoteController.OnClientUpdateListener, android.os.Looper) throws java.lang.IllegalArgumentException; + method @Deprecated public boolean clearArtworkConfiguration(); + method @Deprecated public android.media.RemoteController.MetadataEditor editMetadata(); + method @Deprecated public long getEstimatedMediaPosition(); + method @Deprecated public boolean seekTo(long) throws java.lang.IllegalArgumentException; + method @Deprecated public boolean sendMediaKeyEvent(android.view.KeyEvent) throws java.lang.IllegalArgumentException; + method @Deprecated public boolean setArtworkConfiguration(int, int) throws java.lang.IllegalArgumentException; + method @Deprecated public boolean setSynchronizationMode(int) throws java.lang.IllegalArgumentException; + field @Deprecated public static final int POSITION_SYNCHRONIZATION_CHECK = 1; // 0x1 + field @Deprecated public static final int POSITION_SYNCHRONIZATION_NONE = 0; // 0x0 + } + + @Deprecated public class RemoteController.MetadataEditor extends android.media.MediaMetadataEditor { + method @Deprecated public void apply(); + } + + @Deprecated public static interface RemoteController.OnClientUpdateListener { + method @Deprecated public void onClientChange(boolean); + method @Deprecated public void onClientMetadataUpdate(android.media.RemoteController.MetadataEditor); + method @Deprecated public void onClientPlaybackStateUpdate(int); + method @Deprecated public void onClientPlaybackStateUpdate(int, long, long, float); + method @Deprecated public void onClientTransportControlUpdate(int); + } + + public final class ResourceBusyException extends android.media.MediaDrmException { + ctor public ResourceBusyException(String); + } + + public class Ringtone { + method protected void finalize(); + method public android.media.AudioAttributes getAudioAttributes(); + method @Deprecated public int getStreamType(); + method public String getTitle(android.content.Context); + method public float getVolume(); + method public boolean isHapticGeneratorEnabled(); + method public boolean isLooping(); + method public boolean isPlaying(); + method public void play(); + method public void setAudioAttributes(android.media.AudioAttributes) throws java.lang.IllegalArgumentException; + method public boolean setHapticGeneratorEnabled(boolean); + method public void setLooping(boolean); + method @Deprecated public void setStreamType(int); + method public void setVolume(float); + method public void stop(); + } + + public class RingtoneManager { + ctor public RingtoneManager(android.app.Activity); + ctor public RingtoneManager(android.content.Context); + method public static android.net.Uri getActualDefaultRingtoneUri(android.content.Context, int); + method public android.database.Cursor getCursor(); + method public static int getDefaultType(android.net.Uri); + method public static android.net.Uri getDefaultUri(int); + method @Deprecated public boolean getIncludeDrm(); + method public android.media.Ringtone getRingtone(int); + method public static android.media.Ringtone getRingtone(android.content.Context, android.net.Uri); + method public int getRingtonePosition(android.net.Uri); + method public android.net.Uri getRingtoneUri(int); + method public boolean getStopPreviousRingtone(); + method public static android.net.Uri getValidRingtoneUri(android.content.Context); + method public boolean hasHapticChannels(int); + method public static boolean hasHapticChannels(@NonNull android.net.Uri); + method public static boolean hasHapticChannels(@NonNull android.content.Context, @NonNull android.net.Uri); + method public int inferStreamType(); + method public static boolean isDefault(android.net.Uri); + method @Nullable public static android.content.res.AssetFileDescriptor openDefaultRingtoneUri(@NonNull android.content.Context, @NonNull android.net.Uri) throws java.io.FileNotFoundException; + method public static void setActualDefaultRingtoneUri(android.content.Context, int, android.net.Uri); + method @Deprecated public void setIncludeDrm(boolean); + method public void setStopPreviousRingtone(boolean); + method public void setType(int); + method public void stopPreviousRingtone(); + field public static final String ACTION_RINGTONE_PICKER = "android.intent.action.RINGTONE_PICKER"; + field public static final String EXTRA_RINGTONE_DEFAULT_URI = "android.intent.extra.ringtone.DEFAULT_URI"; + field public static final String EXTRA_RINGTONE_EXISTING_URI = "android.intent.extra.ringtone.EXISTING_URI"; + field @Deprecated public static final String EXTRA_RINGTONE_INCLUDE_DRM = "android.intent.extra.ringtone.INCLUDE_DRM"; + field public static final String EXTRA_RINGTONE_PICKED_URI = "android.intent.extra.ringtone.PICKED_URI"; + field public static final String EXTRA_RINGTONE_SHOW_DEFAULT = "android.intent.extra.ringtone.SHOW_DEFAULT"; + field public static final String EXTRA_RINGTONE_SHOW_SILENT = "android.intent.extra.ringtone.SHOW_SILENT"; + field public static final String EXTRA_RINGTONE_TITLE = "android.intent.extra.ringtone.TITLE"; + field public static final String EXTRA_RINGTONE_TYPE = "android.intent.extra.ringtone.TYPE"; + field public static final int ID_COLUMN_INDEX = 0; // 0x0 + field public static final int TITLE_COLUMN_INDEX = 1; // 0x1 + field public static final int TYPE_ALARM = 4; // 0x4 + field public static final int TYPE_ALL = 7; // 0x7 + field public static final int TYPE_NOTIFICATION = 2; // 0x2 + field public static final int TYPE_RINGTONE = 1; // 0x1 + field public static final int URI_COLUMN_INDEX = 2; // 0x2 + } + + public final class RouteDiscoveryPreference implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getPreferredFeatures(); + method public boolean shouldPerformActiveScan(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class RouteDiscoveryPreference.Builder { + ctor public RouteDiscoveryPreference.Builder(@NonNull java.util.List, boolean); + ctor public RouteDiscoveryPreference.Builder(@NonNull android.media.RouteDiscoveryPreference); + method @NonNull public android.media.RouteDiscoveryPreference build(); + method @NonNull public android.media.RouteDiscoveryPreference.Builder setPreferredFeatures(@NonNull java.util.List); + method @NonNull public android.media.RouteDiscoveryPreference.Builder setShouldPerformActiveScan(boolean); + } + + public final class RouteListingPreference implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getItems(); + method @Nullable public android.content.ComponentName getLinkedItemComponentName(); + method public boolean getUseSystemOrdering(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final String ACTION_TRANSFER_MEDIA = "android.media.action.TRANSFER_MEDIA"; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String EXTRA_ROUTE_ID = "android.media.extra.ROUTE_ID"; + } + + public static final class RouteListingPreference.Builder { + ctor public RouteListingPreference.Builder(); + method @NonNull public android.media.RouteListingPreference build(); + method @NonNull public android.media.RouteListingPreference.Builder setItems(@NonNull java.util.List); + method @NonNull public android.media.RouteListingPreference.Builder setLinkedItemComponentName(@Nullable android.content.ComponentName); + method @NonNull public android.media.RouteListingPreference.Builder setUseSystemOrdering(boolean); + } + + public static final class RouteListingPreference.Item implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public CharSequence getCustomSubtextMessage(); + method public int getFlags(); + method @NonNull public String getRouteId(); + method public int getSelectionBehavior(); + method public int getSubText(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_ONGOING_SESSION = 1; // 0x1 + field public static final int FLAG_ONGOING_SESSION_MANAGED = 2; // 0x2 + field public static final int FLAG_SUGGESTED = 4; // 0x4 + field public static final int SELECTION_BEHAVIOR_GO_TO_APP = 2; // 0x2 + field public static final int SELECTION_BEHAVIOR_NONE = 0; // 0x0 + field public static final int SELECTION_BEHAVIOR_TRANSFER = 1; // 0x1 + field public static final int SUBTEXT_AD_ROUTING_DISALLOWED = 4; // 0x4 + field public static final int SUBTEXT_CUSTOM = 10000; // 0x2710 + field public static final int SUBTEXT_DEVICE_LOW_POWER = 5; // 0x5 + field public static final int SUBTEXT_DOWNLOADED_CONTENT_ROUTING_DISALLOWED = 3; // 0x3 + field public static final int SUBTEXT_ERROR_UNKNOWN = 1; // 0x1 + field public static final int SUBTEXT_NONE = 0; // 0x0 + field public static final int SUBTEXT_SUBSCRIPTION_REQUIRED = 2; // 0x2 + field public static final int SUBTEXT_TRACK_UNSUPPORTED = 7; // 0x7 + field public static final int SUBTEXT_UNAUTHORIZED = 6; // 0x6 + } + + public static final class RouteListingPreference.Item.Builder { + ctor public RouteListingPreference.Item.Builder(@NonNull String); + method @NonNull public android.media.RouteListingPreference.Item build(); + method @NonNull public android.media.RouteListingPreference.Item.Builder setCustomSubtextMessage(@Nullable CharSequence); + method @NonNull public android.media.RouteListingPreference.Item.Builder setFlags(int); + method @NonNull public android.media.RouteListingPreference.Item.Builder setSelectionBehavior(int); + method @NonNull public android.media.RouteListingPreference.Item.Builder setSubText(int); + } + + public final class RoutingSessionInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getClientPackageName(); + method @Nullable public android.os.Bundle getControlHints(); + method @NonNull public java.util.List getDeselectableRoutes(); + method @NonNull public String getId(); + method @Nullable public CharSequence getName(); + method @NonNull public java.util.List getSelectableRoutes(); + method @NonNull public java.util.List getSelectedRoutes(); + method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public int getTransferReason(); + method @NonNull public java.util.List getTransferableRoutes(); + method public int getVolume(); + method public int getVolumeHandling(); + method public int getVolumeMax(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int TRANSFER_REASON_APP = 2; // 0x2 + field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int TRANSFER_REASON_FALLBACK = 0; // 0x0 + field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int TRANSFER_REASON_SYSTEM_REQUEST = 1; // 0x1 + } + + public static final class RoutingSessionInfo.Builder { + ctor public RoutingSessionInfo.Builder(@NonNull String, @NonNull String); + ctor public RoutingSessionInfo.Builder(@NonNull android.media.RoutingSessionInfo); + method @NonNull public android.media.RoutingSessionInfo.Builder addDeselectableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder addSelectableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder addSelectedRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder addTransferableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo build(); + method @NonNull public android.media.RoutingSessionInfo.Builder clearDeselectableRoutes(); + method @NonNull public android.media.RoutingSessionInfo.Builder clearSelectableRoutes(); + method @NonNull public android.media.RoutingSessionInfo.Builder clearSelectedRoutes(); + method @NonNull public android.media.RoutingSessionInfo.Builder clearTransferableRoutes(); + method @NonNull public android.media.RoutingSessionInfo.Builder removeDeselectableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder removeSelectableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder removeSelectedRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder removeTransferableRoute(@NonNull String); + method @NonNull public android.media.RoutingSessionInfo.Builder setControlHints(@Nullable android.os.Bundle); + method @NonNull public android.media.RoutingSessionInfo.Builder setName(@Nullable CharSequence); + method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") @NonNull public android.media.RoutingSessionInfo.Builder setTransferInitiator(@Nullable android.os.UserHandle, @Nullable String); + method @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") @NonNull public android.media.RoutingSessionInfo.Builder setTransferReason(int); + method @NonNull public android.media.RoutingSessionInfo.Builder setVolume(int); + method @NonNull public android.media.RoutingSessionInfo.Builder setVolumeHandling(int); + method @NonNull public android.media.RoutingSessionInfo.Builder setVolumeMax(int); + } + + public class SoundPool { + ctor @Deprecated public SoundPool(int, int, int); + method public final void autoPause(); + method public final void autoResume(); + method protected void finalize(); + method public int load(String, int); + method public int load(android.content.Context, int, int); + method public int load(android.content.res.AssetFileDescriptor, int); + method public int load(java.io.FileDescriptor, long, long, int); + method public final void pause(int); + method public final int play(int, float, float, int, int, float); + method public final void release(); + method public final void resume(int); + method public final void setLoop(int, int); + method public void setOnLoadCompleteListener(android.media.SoundPool.OnLoadCompleteListener); + method public final void setPriority(int, int); + method public final void setRate(int, float); + method public final void setVolume(int, float, float); + method public final void stop(int); + method public final boolean unload(int); + } + + public static class SoundPool.Builder { + ctor public SoundPool.Builder(); + method public android.media.SoundPool build(); + method public android.media.SoundPool.Builder setAudioAttributes(android.media.AudioAttributes) throws java.lang.IllegalArgumentException; + method @NonNull public android.media.SoundPool.Builder setAudioSessionId(int); + method @NonNull public android.media.SoundPool.Builder setContext(@NonNull android.content.Context); + method public android.media.SoundPool.Builder setMaxStreams(int) throws java.lang.IllegalArgumentException; + } + + public static interface SoundPool.OnLoadCompleteListener { + method public void onLoadComplete(android.media.SoundPool, int, int); + } + + public class Spatializer { + method public void addOnHeadTrackerAvailableListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnHeadTrackerAvailableListener); + method public void addOnSpatializerStateChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.Spatializer.OnSpatializerStateChangedListener); + method public boolean canBeSpatialized(@NonNull android.media.AudioAttributes, @NonNull android.media.AudioFormat); + method public int getImmersiveAudioLevel(); + method @FlaggedApi("android.media.audio.spatializer_capabilities") @NonNull public java.util.List getSpatializedChannelMasks(); + method public boolean isAvailable(); + method public boolean isEnabled(); + method public boolean isHeadTrackerAvailable(); + method public void removeOnHeadTrackerAvailableListener(@NonNull android.media.Spatializer.OnHeadTrackerAvailableListener); + method public void removeOnSpatializerStateChangedListener(@NonNull android.media.Spatializer.OnSpatializerStateChangedListener); + field public static final int SPATIALIZER_IMMERSIVE_LEVEL_MULTICHANNEL = 1; // 0x1 + field public static final int SPATIALIZER_IMMERSIVE_LEVEL_NONE = 0; // 0x0 + field public static final int SPATIALIZER_IMMERSIVE_LEVEL_OTHER = -1; // 0xffffffff + } + + public static interface Spatializer.OnHeadTrackerAvailableListener { + method public void onHeadTrackerAvailableChanged(@NonNull android.media.Spatializer, boolean); + } + + public static interface Spatializer.OnSpatializerStateChangedListener { + method public void onSpatializerAvailableChanged(@NonNull android.media.Spatializer, boolean); + method public void onSpatializerEnabledChanged(@NonNull android.media.Spatializer, boolean); + } + + public final class SubtitleData { + ctor public SubtitleData(int, long, long, @NonNull byte[]); + method @NonNull public byte[] getData(); + method public long getDurationUs(); + method public long getStartTimeUs(); + method public int getTrackIndex(); + } + + public final class SyncParams { + ctor public SyncParams(); + method public android.media.SyncParams allowDefaults(); + method public int getAudioAdjustMode(); + method public float getFrameRate(); + method public int getSyncSource(); + method public float getTolerance(); + method public android.media.SyncParams setAudioAdjustMode(int); + method public android.media.SyncParams setFrameRate(float); + method public android.media.SyncParams setSyncSource(int); + method public android.media.SyncParams setTolerance(float); + field public static final int AUDIO_ADJUST_MODE_DEFAULT = 0; // 0x0 + field public static final int AUDIO_ADJUST_MODE_RESAMPLE = 2; // 0x2 + field public static final int AUDIO_ADJUST_MODE_STRETCH = 1; // 0x1 + field public static final int SYNC_SOURCE_AUDIO = 2; // 0x2 + field public static final int SYNC_SOURCE_DEFAULT = 0; // 0x0 + field public static final int SYNC_SOURCE_SYSTEM_CLOCK = 1; // 0x1 + field public static final int SYNC_SOURCE_VSYNC = 3; // 0x3 + } + + public class ThumbnailUtils { + ctor public ThumbnailUtils(); + method @Deprecated @Nullable public static android.graphics.Bitmap createAudioThumbnail(@NonNull String, int); + method @NonNull public static android.graphics.Bitmap createAudioThumbnail(@NonNull java.io.File, @NonNull android.util.Size, @Nullable android.os.CancellationSignal) throws java.io.IOException; + method @Deprecated @Nullable public static android.graphics.Bitmap createImageThumbnail(@NonNull String, int); + method @NonNull public static android.graphics.Bitmap createImageThumbnail(@NonNull java.io.File, @NonNull android.util.Size, @Nullable android.os.CancellationSignal) throws java.io.IOException; + method @Deprecated @Nullable public static android.graphics.Bitmap createVideoThumbnail(@NonNull String, int); + method @NonNull public static android.graphics.Bitmap createVideoThumbnail(@NonNull java.io.File, @NonNull android.util.Size, @Nullable android.os.CancellationSignal) throws java.io.IOException; + method public static android.graphics.Bitmap extractThumbnail(android.graphics.Bitmap, int, int); + method public static android.graphics.Bitmap extractThumbnail(android.graphics.Bitmap, int, int, int); + field public static final int OPTIONS_RECYCLE_INPUT = 2; // 0x2 + } + + public final class TimedMetaData { + ctor public TimedMetaData(long, @NonNull byte[]); + method public byte[] getMetaData(); + method public long getTimestamp(); + } + + public final class TimedText { + method public android.graphics.Rect getBounds(); + method public String getText(); + } + + public class ToneGenerator { + ctor public ToneGenerator(int, int); + method protected void finalize(); + method public final int getAudioSessionId(); + method public void release(); + method public boolean startTone(int); + method public boolean startTone(int, int); + method public void stopTone(); + field public static final int MAX_VOLUME = 100; // 0x64 + field public static final int MIN_VOLUME = 0; // 0x0 + field public static final int TONE_CDMA_ABBR_ALERT = 97; // 0x61 + field public static final int TONE_CDMA_ABBR_INTERCEPT = 37; // 0x25 + field public static final int TONE_CDMA_ABBR_REORDER = 39; // 0x27 + field public static final int TONE_CDMA_ALERT_AUTOREDIAL_LITE = 87; // 0x57 + field public static final int TONE_CDMA_ALERT_CALL_GUARD = 93; // 0x5d + field public static final int TONE_CDMA_ALERT_INCALL_LITE = 91; // 0x5b + field public static final int TONE_CDMA_ALERT_NETWORK_LITE = 86; // 0x56 + field public static final int TONE_CDMA_ANSWER = 42; // 0x2a + field public static final int TONE_CDMA_CALLDROP_LITE = 95; // 0x5f + field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_INTERGROUP = 46; // 0x2e + field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_NORMAL = 45; // 0x2d + field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PAT3 = 48; // 0x30 + field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PAT5 = 50; // 0x32 + field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PAT6 = 51; // 0x33 + field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PAT7 = 52; // 0x34 + field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_PING_RING = 49; // 0x31 + field public static final int TONE_CDMA_CALL_SIGNAL_ISDN_SP_PRI = 47; // 0x2f + field public static final int TONE_CDMA_CONFIRM = 41; // 0x29 + field public static final int TONE_CDMA_DIAL_TONE_LITE = 34; // 0x22 + field public static final int TONE_CDMA_EMERGENCY_RINGBACK = 92; // 0x5c + field public static final int TONE_CDMA_HIGH_L = 53; // 0x35 + field public static final int TONE_CDMA_HIGH_PBX_L = 71; // 0x47 + field public static final int TONE_CDMA_HIGH_PBX_SLS = 80; // 0x50 + field public static final int TONE_CDMA_HIGH_PBX_SS = 74; // 0x4a + field public static final int TONE_CDMA_HIGH_PBX_SSL = 77; // 0x4d + field public static final int TONE_CDMA_HIGH_PBX_S_X4 = 83; // 0x53 + field public static final int TONE_CDMA_HIGH_SLS = 65; // 0x41 + field public static final int TONE_CDMA_HIGH_SS = 56; // 0x38 + field public static final int TONE_CDMA_HIGH_SSL = 59; // 0x3b + field public static final int TONE_CDMA_HIGH_SS_2 = 62; // 0x3e + field public static final int TONE_CDMA_HIGH_S_X4 = 68; // 0x44 + field public static final int TONE_CDMA_INTERCEPT = 36; // 0x24 + field public static final int TONE_CDMA_KEYPAD_VOLUME_KEY_LITE = 89; // 0x59 + field public static final int TONE_CDMA_LOW_L = 55; // 0x37 + field public static final int TONE_CDMA_LOW_PBX_L = 73; // 0x49 + field public static final int TONE_CDMA_LOW_PBX_SLS = 82; // 0x52 + field public static final int TONE_CDMA_LOW_PBX_SS = 76; // 0x4c + field public static final int TONE_CDMA_LOW_PBX_SSL = 79; // 0x4f + field public static final int TONE_CDMA_LOW_PBX_S_X4 = 85; // 0x55 + field public static final int TONE_CDMA_LOW_SLS = 67; // 0x43 + field public static final int TONE_CDMA_LOW_SS = 58; // 0x3a + field public static final int TONE_CDMA_LOW_SSL = 61; // 0x3d + field public static final int TONE_CDMA_LOW_SS_2 = 64; // 0x40 + field public static final int TONE_CDMA_LOW_S_X4 = 70; // 0x46 + field public static final int TONE_CDMA_MED_L = 54; // 0x36 + field public static final int TONE_CDMA_MED_PBX_L = 72; // 0x48 + field public static final int TONE_CDMA_MED_PBX_SLS = 81; // 0x51 + field public static final int TONE_CDMA_MED_PBX_SS = 75; // 0x4b + field public static final int TONE_CDMA_MED_PBX_SSL = 78; // 0x4e + field public static final int TONE_CDMA_MED_PBX_S_X4 = 84; // 0x54 + field public static final int TONE_CDMA_MED_SLS = 66; // 0x42 + field public static final int TONE_CDMA_MED_SS = 57; // 0x39 + field public static final int TONE_CDMA_MED_SSL = 60; // 0x3c + field public static final int TONE_CDMA_MED_SS_2 = 63; // 0x3f + field public static final int TONE_CDMA_MED_S_X4 = 69; // 0x45 + field public static final int TONE_CDMA_NETWORK_BUSY = 40; // 0x28 + field public static final int TONE_CDMA_NETWORK_BUSY_ONE_SHOT = 96; // 0x60 + field public static final int TONE_CDMA_NETWORK_CALLWAITING = 43; // 0x2b + field public static final int TONE_CDMA_NETWORK_USA_RINGBACK = 35; // 0x23 + field public static final int TONE_CDMA_ONE_MIN_BEEP = 88; // 0x58 + field public static final int TONE_CDMA_PIP = 44; // 0x2c + field public static final int TONE_CDMA_PRESSHOLDKEY_LITE = 90; // 0x5a + field public static final int TONE_CDMA_REORDER = 38; // 0x26 + field public static final int TONE_CDMA_SIGNAL_OFF = 98; // 0x62 + field public static final int TONE_CDMA_SOFT_ERROR_LITE = 94; // 0x5e + field public static final int TONE_DTMF_0 = 0; // 0x0 + field public static final int TONE_DTMF_1 = 1; // 0x1 + field public static final int TONE_DTMF_2 = 2; // 0x2 + field public static final int TONE_DTMF_3 = 3; // 0x3 + field public static final int TONE_DTMF_4 = 4; // 0x4 + field public static final int TONE_DTMF_5 = 5; // 0x5 + field public static final int TONE_DTMF_6 = 6; // 0x6 + field public static final int TONE_DTMF_7 = 7; // 0x7 + field public static final int TONE_DTMF_8 = 8; // 0x8 + field public static final int TONE_DTMF_9 = 9; // 0x9 + field public static final int TONE_DTMF_A = 12; // 0xc + field public static final int TONE_DTMF_B = 13; // 0xd + field public static final int TONE_DTMF_C = 14; // 0xe + field public static final int TONE_DTMF_D = 15; // 0xf + field public static final int TONE_DTMF_P = 11; // 0xb + field public static final int TONE_DTMF_S = 10; // 0xa + field public static final int TONE_PROP_ACK = 25; // 0x19 + field public static final int TONE_PROP_BEEP = 24; // 0x18 + field public static final int TONE_PROP_BEEP2 = 28; // 0x1c + field public static final int TONE_PROP_NACK = 26; // 0x1a + field public static final int TONE_PROP_PROMPT = 27; // 0x1b + field public static final int TONE_SUP_BUSY = 17; // 0x11 + field public static final int TONE_SUP_CALL_WAITING = 22; // 0x16 + field public static final int TONE_SUP_CONFIRM = 32; // 0x20 + field public static final int TONE_SUP_CONGESTION = 18; // 0x12 + field public static final int TONE_SUP_CONGESTION_ABBREV = 31; // 0x1f + field public static final int TONE_SUP_DIAL = 16; // 0x10 + field public static final int TONE_SUP_ERROR = 21; // 0x15 + field public static final int TONE_SUP_INTERCEPT = 29; // 0x1d + field public static final int TONE_SUP_INTERCEPT_ABBREV = 30; // 0x1e + field public static final int TONE_SUP_PIP = 33; // 0x21 + field public static final int TONE_SUP_RADIO_ACK = 19; // 0x13 + field public static final int TONE_SUP_RADIO_NOTAVAIL = 20; // 0x14 + field public static final int TONE_SUP_RINGTONE = 23; // 0x17 + } + + public final class UnsupportedSchemeException extends android.media.MediaDrmException { + ctor public UnsupportedSchemeException(String); + } + + public interface VolumeAutomation { + method @NonNull public android.media.VolumeShaper createVolumeShaper(@NonNull android.media.VolumeShaper.Configuration); + } + + public abstract class VolumeProvider { + ctor public VolumeProvider(int, int, int); + ctor public VolumeProvider(int, int, int, @Nullable String); + method public final int getCurrentVolume(); + method public final int getMaxVolume(); + method public final int getVolumeControl(); + method @Nullable public final String getVolumeControlId(); + method public void onAdjustVolume(int); + method public void onSetVolumeTo(int); + method public final void setCurrentVolume(int); + field public static final int VOLUME_CONTROL_ABSOLUTE = 2; // 0x2 + field public static final int VOLUME_CONTROL_FIXED = 0; // 0x0 + field public static final int VOLUME_CONTROL_RELATIVE = 1; // 0x1 + } + + public final class VolumeShaper implements java.lang.AutoCloseable { + method public void apply(@NonNull android.media.VolumeShaper.Operation); + method public void close(); + method protected void finalize(); + method public float getVolume(); + method public void replace(@NonNull android.media.VolumeShaper.Configuration, @NonNull android.media.VolumeShaper.Operation, boolean); + } + + public static final class VolumeShaper.Configuration implements android.os.Parcelable { + method public int describeContents(); + method public long getDuration(); + method public int getInterpolatorType(); + method public static int getMaximumCurvePoints(); + method public float[] getTimes(); + method public float[] getVolumes(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final android.media.VolumeShaper.Configuration CUBIC_RAMP; + field public static final int INTERPOLATOR_TYPE_CUBIC = 2; // 0x2 + field public static final int INTERPOLATOR_TYPE_CUBIC_MONOTONIC = 3; // 0x3 + field public static final int INTERPOLATOR_TYPE_LINEAR = 1; // 0x1 + field public static final int INTERPOLATOR_TYPE_STEP = 0; // 0x0 + field public static final android.media.VolumeShaper.Configuration LINEAR_RAMP; + field public static final android.media.VolumeShaper.Configuration SCURVE_RAMP; + field public static final android.media.VolumeShaper.Configuration SINE_RAMP; + } + + public static final class VolumeShaper.Configuration.Builder { + ctor public VolumeShaper.Configuration.Builder(); + ctor public VolumeShaper.Configuration.Builder(@NonNull android.media.VolumeShaper.Configuration); + method @NonNull public android.media.VolumeShaper.Configuration build(); + method @NonNull public android.media.VolumeShaper.Configuration.Builder invertVolumes(); + method @NonNull public android.media.VolumeShaper.Configuration.Builder reflectTimes(); + method @NonNull public android.media.VolumeShaper.Configuration.Builder scaleToEndVolume(float); + method @NonNull public android.media.VolumeShaper.Configuration.Builder scaleToStartVolume(float); + method @NonNull public android.media.VolumeShaper.Configuration.Builder setCurve(@NonNull float[], @NonNull float[]); + method @NonNull public android.media.VolumeShaper.Configuration.Builder setDuration(long); + method @NonNull public android.media.VolumeShaper.Configuration.Builder setInterpolatorType(int); + } + + public static final class VolumeShaper.Operation implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final android.media.VolumeShaper.Operation PLAY; + field public static final android.media.VolumeShaper.Operation REVERSE; + } + +} + +package android.media.audiofx { + + public class AcousticEchoCanceler extends android.media.audiofx.AudioEffect { + method public static android.media.audiofx.AcousticEchoCanceler create(int); + method public static boolean isAvailable(); + } + + public class AudioEffect { + method protected void finalize(); + method public android.media.audiofx.AudioEffect.Descriptor getDescriptor() throws java.lang.IllegalStateException; + method public boolean getEnabled() throws java.lang.IllegalStateException; + method public int getId() throws java.lang.IllegalStateException; + method public boolean hasControl() throws java.lang.IllegalStateException; + method public static android.media.audiofx.AudioEffect.Descriptor[] queryEffects(); + method public void release(); + method public void setControlStatusListener(android.media.audiofx.AudioEffect.OnControlStatusChangeListener); + method public void setEnableStatusListener(android.media.audiofx.AudioEffect.OnEnableStatusChangeListener); + method public int setEnabled(boolean) throws java.lang.IllegalStateException; + field public static final String ACTION_CLOSE_AUDIO_EFFECT_CONTROL_SESSION = "android.media.action.CLOSE_AUDIO_EFFECT_CONTROL_SESSION"; + field public static final String ACTION_DISPLAY_AUDIO_EFFECT_CONTROL_PANEL = "android.media.action.DISPLAY_AUDIO_EFFECT_CONTROL_PANEL"; + field public static final String ACTION_OPEN_AUDIO_EFFECT_CONTROL_SESSION = "android.media.action.OPEN_AUDIO_EFFECT_CONTROL_SESSION"; + field public static final int ALREADY_EXISTS = -2; // 0xfffffffe + field public static final int CONTENT_TYPE_GAME = 2; // 0x2 + field public static final int CONTENT_TYPE_MOVIE = 1; // 0x1 + field public static final int CONTENT_TYPE_MUSIC = 0; // 0x0 + field public static final int CONTENT_TYPE_VOICE = 3; // 0x3 + field public static final String EFFECT_AUXILIARY = "Auxiliary"; + field public static final String EFFECT_INSERT = "Insert"; + field public static final String EFFECT_POST_PROCESSING = "Post Processing"; + field public static final String EFFECT_PRE_PROCESSING = "Pre Processing"; + field public static final java.util.UUID EFFECT_TYPE_AEC; + field public static final java.util.UUID EFFECT_TYPE_AGC; + field public static final java.util.UUID EFFECT_TYPE_BASS_BOOST; + field public static final java.util.UUID EFFECT_TYPE_DYNAMICS_PROCESSING; + field public static final java.util.UUID EFFECT_TYPE_ENV_REVERB; + field public static final java.util.UUID EFFECT_TYPE_EQUALIZER; + field @NonNull public static final java.util.UUID EFFECT_TYPE_HAPTIC_GENERATOR; + field public static final java.util.UUID EFFECT_TYPE_LOUDNESS_ENHANCER; + field public static final java.util.UUID EFFECT_TYPE_NS; + field public static final java.util.UUID EFFECT_TYPE_PRESET_REVERB; + field public static final java.util.UUID EFFECT_TYPE_VIRTUALIZER; + field public static final int ERROR = -1; // 0xffffffff + field public static final int ERROR_BAD_VALUE = -4; // 0xfffffffc + field public static final int ERROR_DEAD_OBJECT = -7; // 0xfffffff9 + field public static final int ERROR_INVALID_OPERATION = -5; // 0xfffffffb + field public static final int ERROR_NO_INIT = -3; // 0xfffffffd + field public static final int ERROR_NO_MEMORY = -6; // 0xfffffffa + field public static final String EXTRA_AUDIO_SESSION = "android.media.extra.AUDIO_SESSION"; + field public static final String EXTRA_CONTENT_TYPE = "android.media.extra.CONTENT_TYPE"; + field public static final String EXTRA_PACKAGE_NAME = "android.media.extra.PACKAGE_NAME"; + field public static final int SUCCESS = 0; // 0x0 + } + + public static class AudioEffect.Descriptor { + ctor public AudioEffect.Descriptor(); + ctor public AudioEffect.Descriptor(String, String, String, String, String); + field public String connectMode; + field public String implementor; + field public String name; + field public java.util.UUID type; + field public java.util.UUID uuid; + } + + public static interface AudioEffect.OnControlStatusChangeListener { + method public void onControlStatusChange(android.media.audiofx.AudioEffect, boolean); + } + + public static interface AudioEffect.OnEnableStatusChangeListener { + method public void onEnableStatusChange(android.media.audiofx.AudioEffect, boolean); + } + + public class AutomaticGainControl extends android.media.audiofx.AudioEffect { + method public static android.media.audiofx.AutomaticGainControl create(int); + method public static boolean isAvailable(); + } + + public class BassBoost extends android.media.audiofx.AudioEffect { + ctor public BassBoost(int, int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; + method public android.media.audiofx.BassBoost.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getRoundedStrength() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public boolean getStrengthSupported(); + method public void setParameterListener(android.media.audiofx.BassBoost.OnParameterChangeListener); + method public void setProperties(android.media.audiofx.BassBoost.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setStrength(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + field public static final int PARAM_STRENGTH = 1; // 0x1 + field public static final int PARAM_STRENGTH_SUPPORTED = 0; // 0x0 + } + + public static interface BassBoost.OnParameterChangeListener { + method public void onParameterChange(android.media.audiofx.BassBoost, int, int, short); + } + + public static class BassBoost.Settings { + ctor public BassBoost.Settings(); + ctor public BassBoost.Settings(String); + field public short strength; + } + + public final class DynamicsProcessing extends android.media.audiofx.AudioEffect { + ctor public DynamicsProcessing(int); + ctor public DynamicsProcessing(int, int, @Nullable android.media.audiofx.DynamicsProcessing.Config); + method public android.media.audiofx.DynamicsProcessing.Channel getChannelByChannelIndex(int); + method public int getChannelCount(); + method public android.media.audiofx.DynamicsProcessing.Config getConfig(); + method public float getInputGainByChannelIndex(int); + method public android.media.audiofx.DynamicsProcessing.Limiter getLimiterByChannelIndex(int); + method public android.media.audiofx.DynamicsProcessing.MbcBand getMbcBandByChannelIndex(int, int); + method public android.media.audiofx.DynamicsProcessing.Mbc getMbcByChannelIndex(int); + method public android.media.audiofx.DynamicsProcessing.EqBand getPostEqBandByChannelIndex(int, int); + method public android.media.audiofx.DynamicsProcessing.Eq getPostEqByChannelIndex(int); + method public android.media.audiofx.DynamicsProcessing.EqBand getPreEqBandByChannelIndex(int, int); + method public android.media.audiofx.DynamicsProcessing.Eq getPreEqByChannelIndex(int); + method public void setAllChannelsTo(android.media.audiofx.DynamicsProcessing.Channel); + method public void setChannelTo(int, android.media.audiofx.DynamicsProcessing.Channel); + method public void setInputGainAllChannelsTo(float); + method public void setInputGainbyChannel(int, float); + method public void setLimiterAllChannelsTo(android.media.audiofx.DynamicsProcessing.Limiter); + method public void setLimiterByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Limiter); + method public void setMbcAllChannelsTo(android.media.audiofx.DynamicsProcessing.Mbc); + method public void setMbcBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.MbcBand); + method public void setMbcBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.MbcBand); + method public void setMbcByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Mbc); + method public void setPostEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); + method public void setPostEqBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.EqBand); + method public void setPostEqBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.EqBand); + method public void setPostEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); + method public void setPreEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); + method public void setPreEqBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.EqBand); + method public void setPreEqBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.EqBand); + method public void setPreEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); + field public static final int VARIANT_FAVOR_FREQUENCY_RESOLUTION = 0; // 0x0 + field public static final int VARIANT_FAVOR_TIME_RESOLUTION = 1; // 0x1 + } + + public static class DynamicsProcessing.BandBase { + ctor public DynamicsProcessing.BandBase(boolean, float); + method public float getCutoffFrequency(); + method public boolean isEnabled(); + method public void setCutoffFrequency(float); + method public void setEnabled(boolean); + } + + public static class DynamicsProcessing.BandStage extends android.media.audiofx.DynamicsProcessing.Stage { + ctor public DynamicsProcessing.BandStage(boolean, boolean, int); + method public int getBandCount(); + } + + public static final class DynamicsProcessing.Channel { + ctor public DynamicsProcessing.Channel(float, boolean, int, boolean, int, boolean, int, boolean); + ctor public DynamicsProcessing.Channel(android.media.audiofx.DynamicsProcessing.Channel); + method public float getInputGain(); + method public android.media.audiofx.DynamicsProcessing.Limiter getLimiter(); + method public android.media.audiofx.DynamicsProcessing.Mbc getMbc(); + method public android.media.audiofx.DynamicsProcessing.MbcBand getMbcBand(int); + method public android.media.audiofx.DynamicsProcessing.Eq getPostEq(); + method public android.media.audiofx.DynamicsProcessing.EqBand getPostEqBand(int); + method public android.media.audiofx.DynamicsProcessing.Eq getPreEq(); + method public android.media.audiofx.DynamicsProcessing.EqBand getPreEqBand(int); + method public void setInputGain(float); + method public void setLimiter(android.media.audiofx.DynamicsProcessing.Limiter); + method public void setMbc(android.media.audiofx.DynamicsProcessing.Mbc); + method public void setMbcBand(int, android.media.audiofx.DynamicsProcessing.MbcBand); + method public void setPostEq(android.media.audiofx.DynamicsProcessing.Eq); + method public void setPostEqBand(int, android.media.audiofx.DynamicsProcessing.EqBand); + method public void setPreEq(android.media.audiofx.DynamicsProcessing.Eq); + method public void setPreEqBand(int, android.media.audiofx.DynamicsProcessing.EqBand); + } + + public static final class DynamicsProcessing.Config { + method public android.media.audiofx.DynamicsProcessing.Channel getChannelByChannelIndex(int); + method public float getInputGainByChannelIndex(int); + method public android.media.audiofx.DynamicsProcessing.Limiter getLimiterByChannelIndex(int); + method public android.media.audiofx.DynamicsProcessing.MbcBand getMbcBandByChannelIndex(int, int); + method public int getMbcBandCount(); + method public android.media.audiofx.DynamicsProcessing.Mbc getMbcByChannelIndex(int); + method public android.media.audiofx.DynamicsProcessing.EqBand getPostEqBandByChannelIndex(int, int); + method public int getPostEqBandCount(); + method public android.media.audiofx.DynamicsProcessing.Eq getPostEqByChannelIndex(int); + method public android.media.audiofx.DynamicsProcessing.EqBand getPreEqBandByChannelIndex(int, int); + method public int getPreEqBandCount(); + method public android.media.audiofx.DynamicsProcessing.Eq getPreEqByChannelIndex(int); + method public float getPreferredFrameDuration(); + method public int getVariant(); + method public boolean isLimiterInUse(); + method public boolean isMbcInUse(); + method public boolean isPostEqInUse(); + method public boolean isPreEqInUse(); + method public void setAllChannelsTo(android.media.audiofx.DynamicsProcessing.Channel); + method public void setChannelTo(int, android.media.audiofx.DynamicsProcessing.Channel); + method public void setInputGainAllChannelsTo(float); + method public void setInputGainByChannelIndex(int, float); + method public void setLimiterAllChannelsTo(android.media.audiofx.DynamicsProcessing.Limiter); + method public void setLimiterByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Limiter); + method public void setMbcAllChannelsTo(android.media.audiofx.DynamicsProcessing.Mbc); + method public void setMbcBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.MbcBand); + method public void setMbcBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.MbcBand); + method public void setMbcByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Mbc); + method public void setPostEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); + method public void setPostEqBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.EqBand); + method public void setPostEqBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.EqBand); + method public void setPostEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); + method public void setPreEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); + method public void setPreEqBandAllChannelsTo(int, android.media.audiofx.DynamicsProcessing.EqBand); + method public void setPreEqBandByChannelIndex(int, int, android.media.audiofx.DynamicsProcessing.EqBand); + method public void setPreEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); + } + + public static final class DynamicsProcessing.Config.Builder { + ctor public DynamicsProcessing.Config.Builder(int, int, boolean, int, boolean, int, boolean, int, boolean); + method public android.media.audiofx.DynamicsProcessing.Config build(); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setAllChannelsTo(android.media.audiofx.DynamicsProcessing.Channel); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setChannelTo(int, android.media.audiofx.DynamicsProcessing.Channel); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setInputGainAllChannelsTo(float); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setInputGainByChannelIndex(int, float); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setLimiterAllChannelsTo(android.media.audiofx.DynamicsProcessing.Limiter); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setLimiterByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Limiter); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setMbcAllChannelsTo(android.media.audiofx.DynamicsProcessing.Mbc); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setMbcByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Mbc); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setPostEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setPostEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setPreEqAllChannelsTo(android.media.audiofx.DynamicsProcessing.Eq); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setPreEqByChannelIndex(int, android.media.audiofx.DynamicsProcessing.Eq); + method public android.media.audiofx.DynamicsProcessing.Config.Builder setPreferredFrameDuration(float); + } + + public static final class DynamicsProcessing.Eq extends android.media.audiofx.DynamicsProcessing.BandStage { + ctor public DynamicsProcessing.Eq(boolean, boolean, int); + ctor public DynamicsProcessing.Eq(android.media.audiofx.DynamicsProcessing.Eq); + method public android.media.audiofx.DynamicsProcessing.EqBand getBand(int); + method public void setBand(int, android.media.audiofx.DynamicsProcessing.EqBand); + } + + public static final class DynamicsProcessing.EqBand extends android.media.audiofx.DynamicsProcessing.BandBase { + ctor public DynamicsProcessing.EqBand(boolean, float, float); + ctor public DynamicsProcessing.EqBand(android.media.audiofx.DynamicsProcessing.EqBand); + method public float getGain(); + method public void setGain(float); + } + + public static final class DynamicsProcessing.Limiter extends android.media.audiofx.DynamicsProcessing.Stage { + ctor public DynamicsProcessing.Limiter(boolean, boolean, int, float, float, float, float, float); + ctor public DynamicsProcessing.Limiter(android.media.audiofx.DynamicsProcessing.Limiter); + method public float getAttackTime(); + method public int getLinkGroup(); + method public float getPostGain(); + method public float getRatio(); + method public float getReleaseTime(); + method public float getThreshold(); + method public void setAttackTime(float); + method public void setLinkGroup(int); + method public void setPostGain(float); + method public void setRatio(float); + method public void setReleaseTime(float); + method public void setThreshold(float); + } + + public static final class DynamicsProcessing.Mbc extends android.media.audiofx.DynamicsProcessing.BandStage { + ctor public DynamicsProcessing.Mbc(boolean, boolean, int); + ctor public DynamicsProcessing.Mbc(android.media.audiofx.DynamicsProcessing.Mbc); + method public android.media.audiofx.DynamicsProcessing.MbcBand getBand(int); + method public void setBand(int, android.media.audiofx.DynamicsProcessing.MbcBand); + } + + public static final class DynamicsProcessing.MbcBand extends android.media.audiofx.DynamicsProcessing.BandBase { + ctor public DynamicsProcessing.MbcBand(boolean, float, float, float, float, float, float, float, float, float, float); + ctor public DynamicsProcessing.MbcBand(android.media.audiofx.DynamicsProcessing.MbcBand); + method public float getAttackTime(); + method public float getExpanderRatio(); + method public float getKneeWidth(); + method public float getNoiseGateThreshold(); + method public float getPostGain(); + method public float getPreGain(); + method public float getRatio(); + method public float getReleaseTime(); + method public float getThreshold(); + method public void setAttackTime(float); + method public void setExpanderRatio(float); + method public void setKneeWidth(float); + method public void setNoiseGateThreshold(float); + method public void setPostGain(float); + method public void setPreGain(float); + method public void setRatio(float); + method public void setReleaseTime(float); + method public void setThreshold(float); + } + + public static class DynamicsProcessing.Stage { + ctor public DynamicsProcessing.Stage(boolean, boolean); + method public boolean isEnabled(); + method public boolean isInUse(); + method public void setEnabled(boolean); + } + + public class EnvironmentalReverb extends android.media.audiofx.AudioEffect { + ctor public EnvironmentalReverb(int, int) throws java.lang.IllegalArgumentException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; + method public short getDecayHFRatio() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public int getDecayTime() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getDensity() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getDiffusion() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public android.media.audiofx.EnvironmentalReverb.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public int getReflectionsDelay() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getReflectionsLevel() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public int getReverbDelay() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getReverbLevel() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getRoomHFLevel() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getRoomLevel() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setDecayHFRatio(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setDecayTime(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setDensity(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setDiffusion(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setParameterListener(android.media.audiofx.EnvironmentalReverb.OnParameterChangeListener); + method public void setProperties(android.media.audiofx.EnvironmentalReverb.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setReflectionsDelay(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setReflectionsLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setReverbDelay(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setReverbLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setRoomHFLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setRoomLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + field public static final int PARAM_DECAY_HF_RATIO = 3; // 0x3 + field public static final int PARAM_DECAY_TIME = 2; // 0x2 + field public static final int PARAM_DENSITY = 9; // 0x9 + field public static final int PARAM_DIFFUSION = 8; // 0x8 + field public static final int PARAM_REFLECTIONS_DELAY = 5; // 0x5 + field public static final int PARAM_REFLECTIONS_LEVEL = 4; // 0x4 + field public static final int PARAM_REVERB_DELAY = 7; // 0x7 + field public static final int PARAM_REVERB_LEVEL = 6; // 0x6 + field public static final int PARAM_ROOM_HF_LEVEL = 1; // 0x1 + field public static final int PARAM_ROOM_LEVEL = 0; // 0x0 + } + + public static interface EnvironmentalReverb.OnParameterChangeListener { + method public void onParameterChange(android.media.audiofx.EnvironmentalReverb, int, int, int); + } + + public static class EnvironmentalReverb.Settings { + ctor public EnvironmentalReverb.Settings(); + ctor public EnvironmentalReverb.Settings(String); + field public short decayHFRatio; + field public int decayTime; + field public short density; + field public short diffusion; + field public int reflectionsDelay; + field public short reflectionsLevel; + field public int reverbDelay; + field public short reverbLevel; + field public short roomHFLevel; + field public short roomLevel; + } + + public class Equalizer extends android.media.audiofx.AudioEffect { + ctor public Equalizer(int, int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; + method public short getBand(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public int[] getBandFreqRange(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getBandLevel(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short[] getBandLevelRange() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public int getCenterFreq(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getCurrentPreset() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getNumberOfBands() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public short getNumberOfPresets() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public String getPresetName(short); + method public android.media.audiofx.Equalizer.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setBandLevel(short, short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setParameterListener(android.media.audiofx.Equalizer.OnParameterChangeListener); + method public void setProperties(android.media.audiofx.Equalizer.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void usePreset(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + field public static final int PARAM_BAND_FREQ_RANGE = 4; // 0x4 + field public static final int PARAM_BAND_LEVEL = 2; // 0x2 + field public static final int PARAM_CENTER_FREQ = 3; // 0x3 + field public static final int PARAM_CURRENT_PRESET = 6; // 0x6 + field public static final int PARAM_GET_BAND = 5; // 0x5 + field public static final int PARAM_GET_NUM_OF_PRESETS = 7; // 0x7 + field public static final int PARAM_GET_PRESET_NAME = 8; // 0x8 + field public static final int PARAM_LEVEL_RANGE = 1; // 0x1 + field public static final int PARAM_NUM_BANDS = 0; // 0x0 + field public static final int PARAM_STRING_SIZE_MAX = 32; // 0x20 + } + + public static interface Equalizer.OnParameterChangeListener { + method public void onParameterChange(android.media.audiofx.Equalizer, int, int, int, int); + } + + public static class Equalizer.Settings { + ctor public Equalizer.Settings(); + ctor public Equalizer.Settings(String); + field public short[] bandLevels; + field public short curPreset; + field public short numBands; + } + + public class HapticGenerator extends android.media.audiofx.AudioEffect implements java.lang.AutoCloseable { + method public void close(); + method @NonNull public static android.media.audiofx.HapticGenerator create(int); + method public static boolean isAvailable(); + method public int setEnabled(boolean); + } + + public class LoudnessEnhancer extends android.media.audiofx.AudioEffect { + ctor public LoudnessEnhancer(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; + method public float getTargetGain() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setTargetGain(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + field public static final int PARAM_TARGET_GAIN_MB = 0; // 0x0 + } + + public class NoiseSuppressor extends android.media.audiofx.AudioEffect { + method public static android.media.audiofx.NoiseSuppressor create(int); + method public static boolean isAvailable(); + } + + public class PresetReverb extends android.media.audiofx.AudioEffect { + ctor public PresetReverb(int, int) throws java.lang.IllegalArgumentException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; + method public short getPreset() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public android.media.audiofx.PresetReverb.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setParameterListener(android.media.audiofx.PresetReverb.OnParameterChangeListener); + method public void setPreset(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method public void setProperties(android.media.audiofx.PresetReverb.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + field public static final int PARAM_PRESET = 0; // 0x0 + field public static final short PRESET_LARGEHALL = 5; // 0x5 + field public static final short PRESET_LARGEROOM = 3; // 0x3 + field public static final short PRESET_MEDIUMHALL = 4; // 0x4 + field public static final short PRESET_MEDIUMROOM = 2; // 0x2 + field public static final short PRESET_NONE = 0; // 0x0 + field public static final short PRESET_PLATE = 6; // 0x6 + field public static final short PRESET_SMALLROOM = 1; // 0x1 + } + + public static interface PresetReverb.OnParameterChangeListener { + method public void onParameterChange(android.media.audiofx.PresetReverb, int, int, short); + } + + public static class PresetReverb.Settings { + ctor public PresetReverb.Settings(); + ctor public PresetReverb.Settings(String); + field public short preset; + } + + @Deprecated public class Virtualizer extends android.media.audiofx.AudioEffect { + ctor @Deprecated public Virtualizer(int, int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.RuntimeException, java.lang.UnsupportedOperationException; + method @Deprecated public boolean canVirtualize(int, int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method @Deprecated public boolean forceVirtualizationMode(int) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method @Deprecated public android.media.audiofx.Virtualizer.Settings getProperties() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method @Deprecated public short getRoundedStrength() throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method @Deprecated public boolean getSpeakerAngles(int, int, int[]) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method @Deprecated public boolean getStrengthSupported(); + method @Deprecated public int getVirtualizationMode() throws java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method @Deprecated public void setParameterListener(android.media.audiofx.Virtualizer.OnParameterChangeListener); + method @Deprecated public void setProperties(android.media.audiofx.Virtualizer.Settings) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + method @Deprecated public void setStrength(short) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException, java.lang.UnsupportedOperationException; + field @Deprecated public static final int PARAM_STRENGTH = 1; // 0x1 + field @Deprecated public static final int PARAM_STRENGTH_SUPPORTED = 0; // 0x0 + field @Deprecated public static final int VIRTUALIZATION_MODE_AUTO = 1; // 0x1 + field @Deprecated public static final int VIRTUALIZATION_MODE_BINAURAL = 2; // 0x2 + field @Deprecated public static final int VIRTUALIZATION_MODE_OFF = 0; // 0x0 + field @Deprecated public static final int VIRTUALIZATION_MODE_TRANSAURAL = 3; // 0x3 + } + + @Deprecated public static interface Virtualizer.OnParameterChangeListener { + method @Deprecated public void onParameterChange(android.media.audiofx.Virtualizer, int, int, short); + } + + @Deprecated public static class Virtualizer.Settings { + ctor @Deprecated public Virtualizer.Settings(); + ctor @Deprecated public Virtualizer.Settings(String); + field @Deprecated public short strength; + } + + public class Visualizer { + ctor public Visualizer(int) throws java.lang.RuntimeException, java.lang.UnsupportedOperationException; + method protected void finalize(); + method public int getCaptureSize() throws java.lang.IllegalStateException; + method public static int[] getCaptureSizeRange(); + method public boolean getEnabled(); + method public int getFft(byte[]) throws java.lang.IllegalStateException; + method public static int getMaxCaptureRate(); + method public int getMeasurementMode() throws java.lang.IllegalStateException; + method public int getMeasurementPeakRms(android.media.audiofx.Visualizer.MeasurementPeakRms); + method public int getSamplingRate() throws java.lang.IllegalStateException; + method public int getScalingMode() throws java.lang.IllegalStateException; + method public int getWaveForm(byte[]) throws java.lang.IllegalStateException; + method public void release(); + method public int setCaptureSize(int) throws java.lang.IllegalStateException; + method public int setDataCaptureListener(@Nullable android.media.audiofx.Visualizer.OnDataCaptureListener, int, boolean, boolean); + method public int setEnabled(boolean) throws java.lang.IllegalStateException; + method public int setMeasurementMode(int) throws java.lang.IllegalStateException; + method public int setScalingMode(int) throws java.lang.IllegalStateException; + field public static final int ALREADY_EXISTS = -2; // 0xfffffffe + field public static final int ERROR = -1; // 0xffffffff + field public static final int ERROR_BAD_VALUE = -4; // 0xfffffffc + field public static final int ERROR_DEAD_OBJECT = -7; // 0xfffffff9 + field public static final int ERROR_INVALID_OPERATION = -5; // 0xfffffffb + field public static final int ERROR_NO_INIT = -3; // 0xfffffffd + field public static final int ERROR_NO_MEMORY = -6; // 0xfffffffa + field public static final int MEASUREMENT_MODE_NONE = 0; // 0x0 + field public static final int MEASUREMENT_MODE_PEAK_RMS = 1; // 0x1 + field public static final int SCALING_MODE_AS_PLAYED = 1; // 0x1 + field public static final int SCALING_MODE_NORMALIZED = 0; // 0x0 + field public static final int STATE_ENABLED = 2; // 0x2 + field public static final int STATE_INITIALIZED = 1; // 0x1 + field public static final int STATE_UNINITIALIZED = 0; // 0x0 + field public static final int SUCCESS = 0; // 0x0 + } + + public static final class Visualizer.MeasurementPeakRms { + ctor public Visualizer.MeasurementPeakRms(); + field public int mPeak; + field public int mRms; + } + + public static interface Visualizer.OnDataCaptureListener { + method public void onFftDataCapture(android.media.audiofx.Visualizer, byte[], int); + method public void onWaveFormDataCapture(android.media.audiofx.Visualizer, byte[], int); + } + +} + +package android.media.browse { + + public final class MediaBrowser { + ctor public MediaBrowser(android.content.Context, android.content.ComponentName, android.media.browse.MediaBrowser.ConnectionCallback, android.os.Bundle); + method public void connect(); + method public void disconnect(); + method @Nullable public android.os.Bundle getExtras(); + method public void getItem(@NonNull String, @NonNull android.media.browse.MediaBrowser.ItemCallback); + method @NonNull public String getRoot(); + method @NonNull public android.content.ComponentName getServiceComponent(); + method @NonNull public android.media.session.MediaSession.Token getSessionToken(); + method public boolean isConnected(); + method public void subscribe(@NonNull String, @NonNull android.media.browse.MediaBrowser.SubscriptionCallback); + method public void subscribe(@NonNull String, @NonNull android.os.Bundle, @NonNull android.media.browse.MediaBrowser.SubscriptionCallback); + method public void unsubscribe(@NonNull String); + method public void unsubscribe(@NonNull String, @NonNull android.media.browse.MediaBrowser.SubscriptionCallback); + field public static final String EXTRA_PAGE = "android.media.browse.extra.PAGE"; + field public static final String EXTRA_PAGE_SIZE = "android.media.browse.extra.PAGE_SIZE"; + } + + public static class MediaBrowser.ConnectionCallback { + ctor public MediaBrowser.ConnectionCallback(); + method public void onConnected(); + method public void onConnectionFailed(); + method public void onConnectionSuspended(); + } + + public abstract static class MediaBrowser.ItemCallback { + ctor public MediaBrowser.ItemCallback(); + method public void onError(@NonNull String); + method public void onItemLoaded(android.media.browse.MediaBrowser.MediaItem); + } + + public static class MediaBrowser.MediaItem implements android.os.Parcelable { + ctor public MediaBrowser.MediaItem(@NonNull android.media.MediaDescription, int); + method public int describeContents(); + method @NonNull public android.media.MediaDescription getDescription(); + method public int getFlags(); + method @Nullable public String getMediaId(); + method public boolean isBrowsable(); + method public boolean isPlayable(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_BROWSABLE = 1; // 0x1 + field public static final int FLAG_PLAYABLE = 2; // 0x2 + } + + public abstract static class MediaBrowser.SubscriptionCallback { + ctor public MediaBrowser.SubscriptionCallback(); + method public void onChildrenLoaded(@NonNull String, @NonNull java.util.List); + method public void onChildrenLoaded(@NonNull String, @NonNull java.util.List, @NonNull android.os.Bundle); + method public void onError(@NonNull String); + method public void onError(@NonNull String, @NonNull android.os.Bundle); + } + +} + +package android.media.effect { + + public abstract class Effect { + ctor public Effect(); + method public abstract void apply(int, int, int, int); + method public abstract String getName(); + method public abstract void release(); + method public abstract void setParameter(String, Object); + method public void setUpdateListener(android.media.effect.EffectUpdateListener); + } + + public class EffectContext { + method public static android.media.effect.EffectContext createWithCurrentGlContext(); + method public android.media.effect.EffectFactory getFactory(); + method public void release(); + } + + public class EffectFactory { + method public android.media.effect.Effect createEffect(String); + method public static boolean isEffectSupported(String); + field public static final String EFFECT_AUTOFIX = "android.media.effect.effects.AutoFixEffect"; + field public static final String EFFECT_BACKDROPPER = "android.media.effect.effects.BackDropperEffect"; + field public static final String EFFECT_BITMAPOVERLAY = "android.media.effect.effects.BitmapOverlayEffect"; + field public static final String EFFECT_BLACKWHITE = "android.media.effect.effects.BlackWhiteEffect"; + field public static final String EFFECT_BRIGHTNESS = "android.media.effect.effects.BrightnessEffect"; + field public static final String EFFECT_CONTRAST = "android.media.effect.effects.ContrastEffect"; + field public static final String EFFECT_CROP = "android.media.effect.effects.CropEffect"; + field public static final String EFFECT_CROSSPROCESS = "android.media.effect.effects.CrossProcessEffect"; + field public static final String EFFECT_DOCUMENTARY = "android.media.effect.effects.DocumentaryEffect"; + field public static final String EFFECT_DUOTONE = "android.media.effect.effects.DuotoneEffect"; + field public static final String EFFECT_FILLLIGHT = "android.media.effect.effects.FillLightEffect"; + field public static final String EFFECT_FISHEYE = "android.media.effect.effects.FisheyeEffect"; + field public static final String EFFECT_FLIP = "android.media.effect.effects.FlipEffect"; + field public static final String EFFECT_GRAIN = "android.media.effect.effects.GrainEffect"; + field public static final String EFFECT_GRAYSCALE = "android.media.effect.effects.GrayscaleEffect"; + field public static final String EFFECT_LOMOISH = "android.media.effect.effects.LomoishEffect"; + field public static final String EFFECT_NEGATIVE = "android.media.effect.effects.NegativeEffect"; + field public static final String EFFECT_POSTERIZE = "android.media.effect.effects.PosterizeEffect"; + field public static final String EFFECT_REDEYE = "android.media.effect.effects.RedEyeEffect"; + field public static final String EFFECT_ROTATE = "android.media.effect.effects.RotateEffect"; + field public static final String EFFECT_SATURATE = "android.media.effect.effects.SaturateEffect"; + field public static final String EFFECT_SEPIA = "android.media.effect.effects.SepiaEffect"; + field public static final String EFFECT_SHARPEN = "android.media.effect.effects.SharpenEffect"; + field public static final String EFFECT_STRAIGHTEN = "android.media.effect.effects.StraightenEffect"; + field public static final String EFFECT_TEMPERATURE = "android.media.effect.effects.ColorTemperatureEffect"; + field public static final String EFFECT_TINT = "android.media.effect.effects.TintEffect"; + field public static final String EFFECT_VIGNETTE = "android.media.effect.effects.VignetteEffect"; + } + + public interface EffectUpdateListener { + method public void onEffectUpdated(android.media.effect.Effect, Object); + } + +} + +package android.media.metrics { + + public final class BundleSession implements java.lang.AutoCloseable { + method public void close(); + method @NonNull public android.media.metrics.LogSessionId getSessionId(); + method public void reportBundleMetrics(@NonNull android.os.PersistableBundle); + field public static final String KEY_STATSD_ATOM = "bundlesession-statsd-atom"; + } + + @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public final class EditingEndedEvent extends android.media.metrics.Event implements android.os.Parcelable { + method public int describeContents(); + method public int getErrorCode(); + method @Nullable public String getExporterName(); + method public float getFinalProgressPercent(); + method public int getFinalState(); + method @NonNull public java.util.List getInputMediaItemInfos(); + method @Nullable public String getMuxerName(); + method public long getOperationTypes(); + method @Nullable public android.media.metrics.MediaItemInfo getOutputMediaItemInfo(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ERROR_CODE_AUDIO_PROCESSING_FAILED = 18; // 0x12 + field public static final int ERROR_CODE_DECODER_INIT_FAILED = 11; // 0xb + field public static final int ERROR_CODE_DECODING_FAILED = 12; // 0xc + field public static final int ERROR_CODE_DECODING_FORMAT_UNSUPPORTED = 13; // 0xd + field public static final int ERROR_CODE_ENCODER_INIT_FAILED = 14; // 0xe + field public static final int ERROR_CODE_ENCODING_FAILED = 15; // 0xf + field public static final int ERROR_CODE_ENCODING_FORMAT_UNSUPPORTED = 16; // 0x10 + field public static final int ERROR_CODE_FAILED_RUNTIME_CHECK = 2; // 0x2 + field public static final int ERROR_CODE_IO_BAD_HTTP_STATUS = 6; // 0x6 + field public static final int ERROR_CODE_IO_CLEARTEXT_NOT_PERMITTED = 9; // 0x9 + field public static final int ERROR_CODE_IO_FILE_NOT_FOUND = 7; // 0x7 + field public static final int ERROR_CODE_IO_NETWORK_CONNECTION_FAILED = 4; // 0x4 + field public static final int ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT = 5; // 0x5 + field public static final int ERROR_CODE_IO_NO_PERMISSION = 8; // 0x8 + field public static final int ERROR_CODE_IO_READ_POSITION_OUT_OF_RANGE = 10; // 0xa + field public static final int ERROR_CODE_IO_UNSPECIFIED = 3; // 0x3 + field public static final int ERROR_CODE_MUXING_FAILED = 19; // 0x13 + field public static final int ERROR_CODE_NONE = 1; // 0x1 + field public static final int ERROR_CODE_VIDEO_FRAME_PROCESSING_FAILED = 17; // 0x11 + field public static final int FINAL_STATE_CANCELED = 2; // 0x2 + field public static final int FINAL_STATE_ERROR = 3; // 0x3 + field public static final int FINAL_STATE_SUCCEEDED = 1; // 0x1 + field public static final long OPERATION_TYPE_AUDIO_EDIT = 8L; // 0x8L + field public static final long OPERATION_TYPE_AUDIO_TRANSCODE = 2L; // 0x2L + field public static final long OPERATION_TYPE_AUDIO_TRANSMUX = 32L; // 0x20L + field public static final long OPERATION_TYPE_PAUSED = 64L; // 0x40L + field public static final long OPERATION_TYPE_RESUMED = 128L; // 0x80L + field public static final long OPERATION_TYPE_VIDEO_EDIT = 4L; // 0x4L + field public static final long OPERATION_TYPE_VIDEO_TRANSCODE = 1L; // 0x1L + field public static final long OPERATION_TYPE_VIDEO_TRANSMUX = 16L; // 0x10L + field public static final int PROGRESS_PERCENT_UNKNOWN = -1; // 0xffffffff + field public static final int TIME_SINCE_CREATED_UNKNOWN = -1; // 0xffffffff + } + + @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public static final class EditingEndedEvent.Builder { + ctor public EditingEndedEvent.Builder(int); + method @NonNull public android.media.metrics.EditingEndedEvent.Builder addInputMediaItemInfo(@NonNull android.media.metrics.MediaItemInfo); + method @NonNull public android.media.metrics.EditingEndedEvent.Builder addOperationType(long); + method @NonNull public android.media.metrics.EditingEndedEvent build(); + method @NonNull public android.media.metrics.EditingEndedEvent.Builder setErrorCode(int); + method @NonNull public android.media.metrics.EditingEndedEvent.Builder setExporterName(@NonNull String); + method @NonNull public android.media.metrics.EditingEndedEvent.Builder setFinalProgressPercent(@FloatRange(from=0, to=100) float); + method @NonNull public android.media.metrics.EditingEndedEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); + method @NonNull public android.media.metrics.EditingEndedEvent.Builder setMuxerName(@NonNull String); + method @NonNull public android.media.metrics.EditingEndedEvent.Builder setOutputMediaItemInfo(@NonNull android.media.metrics.MediaItemInfo); + method @NonNull public android.media.metrics.EditingEndedEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=android.media.metrics.EditingEndedEvent.TIME_SINCE_CREATED_UNKNOWN) long); + } + + public final class EditingSession implements java.lang.AutoCloseable { + method public void close(); + method @NonNull public android.media.metrics.LogSessionId getSessionId(); + method @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public void reportEditingEndedEvent(@NonNull android.media.metrics.EditingEndedEvent); + } + + public abstract class Event { + method @NonNull public android.os.Bundle getMetricsBundle(); + method @IntRange(from=0xffffffff) public long getTimeSinceCreatedMillis(); + } + + public final class LogSessionId { + method @NonNull public String getStringId(); + field @NonNull public static final android.media.metrics.LogSessionId LOG_SESSION_ID_NONE; + } + + @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public final class MediaItemInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getAudioChannelCount(); + method public long getAudioSampleCount(); + method public int getAudioSampleRateHz(); + method public long getClipDurationMillis(); + method @NonNull public java.util.List getCodecNames(); + method @Nullable public String getContainerMimeType(); + method public long getDataTypes(); + method public long getDurationMillis(); + method @NonNull public java.util.List getSampleMimeTypes(); + method public int getSourceType(); + method public int getVideoDataSpace(); + method public float getVideoFrameRate(); + method public long getVideoSampleCount(); + method @NonNull public android.util.Size getVideoSize(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final long DATA_TYPE_AUDIO = 4L; // 0x4L + field public static final long DATA_TYPE_DEPTH = 16L; // 0x10L + field public static final long DATA_TYPE_GAIN_MAP = 32L; // 0x20L + field public static final long DATA_TYPE_GAPLESS = 256L; // 0x100L + field public static final long DATA_TYPE_HIGH_DYNAMIC_RANGE_VIDEO = 1024L; // 0x400L + field public static final long DATA_TYPE_HIGH_FRAME_RATE = 64L; // 0x40L + field public static final long DATA_TYPE_IMAGE = 1L; // 0x1L + field public static final long DATA_TYPE_METADATA = 8L; // 0x8L + field public static final long DATA_TYPE_SPATIAL_AUDIO = 512L; // 0x200L + field public static final long DATA_TYPE_SPEED_SETTING_CUE_POINTS = 128L; // 0x80L + field public static final long DATA_TYPE_VIDEO = 2L; // 0x2L + field public static final int SOURCE_TYPE_CAMERA = 2; // 0x2 + field public static final int SOURCE_TYPE_EDITING_SESSION = 3; // 0x3 + field public static final int SOURCE_TYPE_GALLERY = 1; // 0x1 + field public static final int SOURCE_TYPE_GENERATED = 7; // 0x7 + field public static final int SOURCE_TYPE_LOCAL_FILE = 4; // 0x4 + field public static final int SOURCE_TYPE_REMOTE_FILE = 5; // 0x5 + field public static final int SOURCE_TYPE_REMOTE_LIVE_STREAM = 6; // 0x6 + field public static final int SOURCE_TYPE_UNSPECIFIED = 0; // 0x0 + field public static final int VALUE_UNSPECIFIED = -1; // 0xffffffff + } + + @FlaggedApi("com.android.media.editing.flags.add_media_metrics_editing") public static final class MediaItemInfo.Builder { + ctor public MediaItemInfo.Builder(); + method @NonNull public android.media.metrics.MediaItemInfo.Builder addCodecName(@NonNull String); + method @NonNull public android.media.metrics.MediaItemInfo.Builder addDataType(long); + method @NonNull public android.media.metrics.MediaItemInfo.Builder addSampleMimeType(@NonNull String); + method @NonNull public android.media.metrics.MediaItemInfo build(); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setAudioChannelCount(@IntRange(from=0) int); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setAudioSampleCount(@IntRange(from=0) long); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setAudioSampleRateHz(@IntRange(from=0) int); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setClipDurationMillis(long); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setContainerMimeType(@NonNull String); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setDurationMillis(long); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setSourceType(int); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setVideoDataSpace(int); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setVideoFrameRate(@FloatRange(from=0) float); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setVideoSampleCount(@IntRange(from=0) long); + method @NonNull public android.media.metrics.MediaItemInfo.Builder setVideoSize(@NonNull android.util.Size); + } + + public final class MediaMetricsManager { + method @NonNull public android.media.metrics.BundleSession createBundleSession(); + method @NonNull public android.media.metrics.EditingSession createEditingSession(); + method @NonNull public android.media.metrics.PlaybackSession createPlaybackSession(); + method @NonNull public android.media.metrics.RecordingSession createRecordingSession(); + method @NonNull public android.media.metrics.TranscodingSession createTranscodingSession(); + method @NonNull public void releaseSessionId(@NonNull String); + field public static final long INVALID_TIMESTAMP = -1L; // 0xffffffffffffffffL + } + + public final class NetworkEvent extends android.media.metrics.Event implements android.os.Parcelable { + method public int describeContents(); + method public int getNetworkType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int NETWORK_TYPE_2G = 4; // 0x4 + field public static final int NETWORK_TYPE_3G = 5; // 0x5 + field public static final int NETWORK_TYPE_4G = 6; // 0x6 + field public static final int NETWORK_TYPE_5G_NSA = 7; // 0x7 + field public static final int NETWORK_TYPE_5G_SA = 8; // 0x8 + field public static final int NETWORK_TYPE_ETHERNET = 3; // 0x3 + field public static final int NETWORK_TYPE_OFFLINE = 9; // 0x9 + field public static final int NETWORK_TYPE_OTHER = 1; // 0x1 + field public static final int NETWORK_TYPE_UNKNOWN = 0; // 0x0 + field public static final int NETWORK_TYPE_WIFI = 2; // 0x2 + } + + public static final class NetworkEvent.Builder { + ctor public NetworkEvent.Builder(); + method @NonNull public android.media.metrics.NetworkEvent build(); + method @NonNull public android.media.metrics.NetworkEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); + method @NonNull public android.media.metrics.NetworkEvent.Builder setNetworkType(int); + method @NonNull public android.media.metrics.NetworkEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=0xffffffff) long); + } + + public final class PlaybackErrorEvent extends android.media.metrics.Event implements android.os.Parcelable { + method public int describeContents(); + method public int getErrorCode(); + method @IntRange(from=java.lang.Integer.MIN_VALUE, to=java.lang.Integer.MAX_VALUE) public int getSubErrorCode(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ERROR_AUDIO_TRACK_INIT_FAILED = 17; // 0x11 + field public static final int ERROR_AUDIO_TRACK_OTHER = 19; // 0x13 + field public static final int ERROR_AUDIO_TRACK_WRITE_FAILED = 18; // 0x12 + field public static final int ERROR_DECODER_INIT_FAILED = 13; // 0xd + field public static final int ERROR_DECODING_FAILED = 14; // 0xe + field public static final int ERROR_DECODING_FORMAT_EXCEEDS_CAPABILITIES = 15; // 0xf + field public static final int ERROR_DECODING_FORMAT_UNSUPPORTED = 35; // 0x23 + field public static final int ERROR_DECODING_OTHER = 16; // 0x10 + field public static final int ERROR_DRM_CONTENT_ERROR = 28; // 0x1c + field public static final int ERROR_DRM_DEVICE_REVOKED = 29; // 0x1d + field public static final int ERROR_DRM_DISALLOWED_OPERATION = 26; // 0x1a + field public static final int ERROR_DRM_LICENSE_ACQUISITION_FAILED = 25; // 0x19 + field public static final int ERROR_DRM_OTHER = 30; // 0x1e + field public static final int ERROR_DRM_PROVISIONING_FAILED = 24; // 0x18 + field public static final int ERROR_DRM_SCHEME_UNSUPPORTED = 23; // 0x17 + field public static final int ERROR_DRM_SYSTEM_ERROR = 27; // 0x1b + field public static final int ERROR_IO_BAD_HTTP_STATUS = 5; // 0x5 + field public static final int ERROR_IO_CONNECTION_CLOSED = 8; // 0x8 + field public static final int ERROR_IO_CONNECTION_TIMEOUT = 7; // 0x7 + field public static final int ERROR_IO_DNS_FAILED = 6; // 0x6 + field public static final int ERROR_IO_FILE_NOT_FOUND = 31; // 0x1f + field public static final int ERROR_IO_NETWORK_CONNECTION_FAILED = 4; // 0x4 + field public static final int ERROR_IO_NETWORK_UNAVAILABLE = 3; // 0x3 + field public static final int ERROR_IO_NO_PERMISSION = 32; // 0x20 + field public static final int ERROR_IO_OTHER = 9; // 0x9 + field public static final int ERROR_OTHER = 1; // 0x1 + field public static final int ERROR_PARSING_CONTAINER_MALFORMED = 11; // 0xb + field public static final int ERROR_PARSING_CONTAINER_UNSUPPORTED = 34; // 0x22 + field public static final int ERROR_PARSING_MANIFEST_MALFORMED = 10; // 0xa + field public static final int ERROR_PARSING_MANIFEST_UNSUPPORTED = 33; // 0x21 + field public static final int ERROR_PARSING_OTHER = 12; // 0xc + field public static final int ERROR_PLAYER_BEHIND_LIVE_WINDOW = 21; // 0x15 + field public static final int ERROR_PLAYER_OTHER = 22; // 0x16 + field public static final int ERROR_PLAYER_REMOTE = 20; // 0x14 + field public static final int ERROR_RUNTIME = 2; // 0x2 + field public static final int ERROR_UNKNOWN = 0; // 0x0 + } + + public static final class PlaybackErrorEvent.Builder { + ctor public PlaybackErrorEvent.Builder(); + method @NonNull public android.media.metrics.PlaybackErrorEvent build(); + method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setErrorCode(int); + method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setException(@NonNull Exception); + method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); + method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setSubErrorCode(@IntRange(from=java.lang.Integer.MIN_VALUE, to=java.lang.Integer.MAX_VALUE) int); + method @NonNull public android.media.metrics.PlaybackErrorEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=0xffffffff) long); + } + + public final class PlaybackMetrics implements android.os.Parcelable { + method public int describeContents(); + method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getAudioUnderrunCount(); + method public int getContentType(); + method @NonNull public byte[] getDrmSessionId(); + method public int getDrmType(); + method @NonNull public long[] getExperimentIds(); + method @IntRange(from=0xffffffff) public long getLocalBytesRead(); + method @IntRange(from=0xffffffff) public long getMediaDurationMillis(); + method @NonNull public android.os.Bundle getMetricsBundle(); + method @IntRange(from=0xffffffff) public long getNetworkBytesRead(); + method @IntRange(from=0xffffffff) public long getNetworkTransferDurationMillis(); + method public int getPlaybackType(); + method @Nullable public String getPlayerName(); + method @Nullable public String getPlayerVersion(); + method public int getStreamSource(); + method public int getStreamType(); + method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getVideoFramesDropped(); + method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getVideoFramesPlayed(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CONTENT_TYPE_AD = 2; // 0x2 + field public static final int CONTENT_TYPE_MAIN = 1; // 0x1 + field public static final int CONTENT_TYPE_OTHER = 3; // 0x3 + field public static final int CONTENT_TYPE_UNKNOWN = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DRM_TYPE_CLEARKEY = 6; // 0x6 + field public static final int DRM_TYPE_NONE = 0; // 0x0 + field public static final int DRM_TYPE_OTHER = 1; // 0x1 + field public static final int DRM_TYPE_PLAY_READY = 2; // 0x2 + field public static final int DRM_TYPE_WIDEVINE_L1 = 3; // 0x3 + field public static final int DRM_TYPE_WIDEVINE_L3 = 4; // 0x4 + field public static final int DRM_TYPE_WV_L3_FALLBACK = 5; // 0x5 + field public static final int PLAYBACK_TYPE_LIVE = 2; // 0x2 + field public static final int PLAYBACK_TYPE_OTHER = 3; // 0x3 + field public static final int PLAYBACK_TYPE_UNKNOWN = 0; // 0x0 + field public static final int PLAYBACK_TYPE_VOD = 1; // 0x1 + field public static final int STREAM_SOURCE_DEVICE = 2; // 0x2 + field public static final int STREAM_SOURCE_MIXED = 3; // 0x3 + field public static final int STREAM_SOURCE_NETWORK = 1; // 0x1 + field public static final int STREAM_SOURCE_UNKNOWN = 0; // 0x0 + field public static final int STREAM_TYPE_DASH = 3; // 0x3 + field public static final int STREAM_TYPE_HLS = 4; // 0x4 + field public static final int STREAM_TYPE_OTHER = 1; // 0x1 + field public static final int STREAM_TYPE_PROGRESSIVE = 2; // 0x2 + field public static final int STREAM_TYPE_SS = 5; // 0x5 + field public static final int STREAM_TYPE_UNKNOWN = 0; // 0x0 + } + + public static final class PlaybackMetrics.Builder { + ctor public PlaybackMetrics.Builder(); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder addExperimentId(long); + method @NonNull public android.media.metrics.PlaybackMetrics build(); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setAudioUnderrunCount(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setContentType(int); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setDrmSessionId(@NonNull byte[]); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setDrmType(int); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setLocalBytesRead(@IntRange(from=0xffffffff) long); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setMediaDurationMillis(@IntRange(from=0xffffffff) long); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setMetricsBundle(@NonNull android.os.Bundle); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setNetworkBytesRead(@IntRange(from=0xffffffff) long); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setNetworkTransferDurationMillis(@IntRange(from=0xffffffff) long); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setPlaybackType(int); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setPlayerName(@NonNull String); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setPlayerVersion(@NonNull String); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setStreamSource(int); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setStreamType(int); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setVideoFramesDropped(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); + method @NonNull public android.media.metrics.PlaybackMetrics.Builder setVideoFramesPlayed(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); + } + + public final class PlaybackSession implements java.lang.AutoCloseable { + method public void close(); + method @NonNull public android.media.metrics.LogSessionId getSessionId(); + method public void reportNetworkEvent(@NonNull android.media.metrics.NetworkEvent); + method public void reportPlaybackErrorEvent(@NonNull android.media.metrics.PlaybackErrorEvent); + method public void reportPlaybackMetrics(@NonNull android.media.metrics.PlaybackMetrics); + method public void reportPlaybackStateEvent(@NonNull android.media.metrics.PlaybackStateEvent); + method public void reportTrackChangeEvent(@NonNull android.media.metrics.TrackChangeEvent); + } + + public final class PlaybackStateEvent extends android.media.metrics.Event implements android.os.Parcelable { + method public int describeContents(); + method public int getState(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STATE_ABANDONED = 15; // 0xf + field public static final int STATE_BUFFERING = 6; // 0x6 + field public static final int STATE_ENDED = 11; // 0xb + field public static final int STATE_FAILED = 13; // 0xd + field public static final int STATE_INTERRUPTED_BY_AD = 14; // 0xe + field public static final int STATE_JOINING_BACKGROUND = 1; // 0x1 + field public static final int STATE_JOINING_FOREGROUND = 2; // 0x2 + field public static final int STATE_NOT_STARTED = 0; // 0x0 + field public static final int STATE_PAUSED = 4; // 0x4 + field public static final int STATE_PAUSED_BUFFERING = 7; // 0x7 + field public static final int STATE_PLAYING = 3; // 0x3 + field public static final int STATE_SEEKING = 5; // 0x5 + field public static final int STATE_STOPPED = 12; // 0xc + field public static final int STATE_SUPPRESSED = 9; // 0x9 + field public static final int STATE_SUPPRESSED_BUFFERING = 10; // 0xa + } + + public static final class PlaybackStateEvent.Builder { + ctor public PlaybackStateEvent.Builder(); + method @NonNull public android.media.metrics.PlaybackStateEvent build(); + method @NonNull public android.media.metrics.PlaybackStateEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); + method @NonNull public android.media.metrics.PlaybackStateEvent.Builder setState(int); + method @NonNull public android.media.metrics.PlaybackStateEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=0xffffffff) long); + } + + public final class RecordingSession implements java.lang.AutoCloseable { + method public void close(); + method @NonNull public android.media.metrics.LogSessionId getSessionId(); + } + + public final class TrackChangeEvent extends android.media.metrics.Event implements android.os.Parcelable { + method public int describeContents(); + method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getAudioSampleRate(); + method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getBitrate(); + method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getChannelCount(); + method @Nullable public String getCodecName(); + method @Nullable public String getContainerMimeType(); + method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getHeight(); + method @Nullable public String getLanguage(); + method @Nullable public String getLanguageRegion(); + method @Nullable public String getSampleMimeType(); + method public int getTrackChangeReason(); + method public int getTrackState(); + method public int getTrackType(); + method @FloatRange(from=0xffffffff, to=java.lang.Float.MAX_VALUE) public float getVideoFrameRate(); + method @IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) public int getWidth(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TRACK_CHANGE_REASON_ADAPTIVE = 4; // 0x4 + field public static final int TRACK_CHANGE_REASON_INITIAL = 2; // 0x2 + field public static final int TRACK_CHANGE_REASON_MANUAL = 3; // 0x3 + field public static final int TRACK_CHANGE_REASON_OTHER = 1; // 0x1 + field public static final int TRACK_CHANGE_REASON_UNKNOWN = 0; // 0x0 + field public static final int TRACK_STATE_OFF = 0; // 0x0 + field public static final int TRACK_STATE_ON = 1; // 0x1 + field public static final int TRACK_TYPE_AUDIO = 0; // 0x0 + field public static final int TRACK_TYPE_TEXT = 2; // 0x2 + field public static final int TRACK_TYPE_VIDEO = 1; // 0x1 + } + + public static final class TrackChangeEvent.Builder { + ctor public TrackChangeEvent.Builder(int); + method @NonNull public android.media.metrics.TrackChangeEvent build(); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setAudioSampleRate(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setBitrate(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setChannelCount(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setCodecName(@NonNull String); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setContainerMimeType(@NonNull String); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setHeight(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setLanguage(@NonNull String); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setLanguageRegion(@NonNull String); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setMetricsBundle(@NonNull android.os.Bundle); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setSampleMimeType(@NonNull String); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setTimeSinceCreatedMillis(@IntRange(from=0xffffffff) long); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setTrackChangeReason(int); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setTrackState(int); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setVideoFrameRate(@FloatRange(from=0xffffffff, to=java.lang.Float.MAX_VALUE) float); + method @NonNull public android.media.metrics.TrackChangeEvent.Builder setWidth(@IntRange(from=0xffffffff, to=java.lang.Integer.MAX_VALUE) int); + } + + public final class TranscodingSession implements java.lang.AutoCloseable { + method public void close(); + method @NonNull public android.media.metrics.LogSessionId getSessionId(); + } + +} + +package android.media.midi { + + public final class MidiDevice implements java.io.Closeable { + method public void close() throws java.io.IOException; + method public android.media.midi.MidiDevice.MidiConnection connectPorts(android.media.midi.MidiInputPort, int); + method public android.media.midi.MidiDeviceInfo getInfo(); + method public android.media.midi.MidiInputPort openInputPort(int); + method public android.media.midi.MidiOutputPort openOutputPort(int); + } + + public class MidiDevice.MidiConnection implements java.io.Closeable { + method public void close() throws java.io.IOException; + } + + public final class MidiDeviceInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getDefaultProtocol(); + method public int getId(); + method public int getInputPortCount(); + method public int getOutputPortCount(); + method public android.media.midi.MidiDeviceInfo.PortInfo[] getPorts(); + method public android.os.Bundle getProperties(); + method public int getType(); + method public boolean isPrivate(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String PROPERTY_BLUETOOTH_DEVICE = "bluetooth_device"; + field public static final String PROPERTY_MANUFACTURER = "manufacturer"; + field public static final String PROPERTY_NAME = "name"; + field public static final String PROPERTY_PRODUCT = "product"; + field public static final String PROPERTY_SERIAL_NUMBER = "serial_number"; + field public static final String PROPERTY_USB_DEVICE = "usb_device"; + field public static final String PROPERTY_VERSION = "version"; + field public static final int PROTOCOL_UMP_MIDI_1_0_UP_TO_128_BITS = 3; // 0x3 + field public static final int PROTOCOL_UMP_MIDI_1_0_UP_TO_128_BITS_AND_JRTS = 4; // 0x4 + field public static final int PROTOCOL_UMP_MIDI_1_0_UP_TO_64_BITS = 1; // 0x1 + field public static final int PROTOCOL_UMP_MIDI_1_0_UP_TO_64_BITS_AND_JRTS = 2; // 0x2 + field public static final int PROTOCOL_UMP_MIDI_2_0 = 17; // 0x11 + field public static final int PROTOCOL_UMP_MIDI_2_0_AND_JRTS = 18; // 0x12 + field public static final int PROTOCOL_UMP_USE_MIDI_CI = 0; // 0x0 + field public static final int PROTOCOL_UNKNOWN = -1; // 0xffffffff + field public static final int TYPE_BLUETOOTH = 3; // 0x3 + field public static final int TYPE_USB = 1; // 0x1 + field public static final int TYPE_VIRTUAL = 2; // 0x2 + } + + public static final class MidiDeviceInfo.PortInfo { + method public String getName(); + method public int getPortNumber(); + method public int getType(); + field public static final int TYPE_INPUT = 1; // 0x1 + field public static final int TYPE_OUTPUT = 2; // 0x2 + } + + public abstract class MidiDeviceService extends android.app.Service { + ctor public MidiDeviceService(); + method public final android.media.midi.MidiDeviceInfo getDeviceInfo(); + method public final android.media.midi.MidiReceiver[] getOutputPortReceivers(); + method public android.os.IBinder onBind(android.content.Intent); + method public void onClose(); + method public void onDeviceStatusChanged(android.media.midi.MidiDeviceStatus); + method public abstract android.media.midi.MidiReceiver[] onGetInputPortReceivers(); + field public static final String SERVICE_INTERFACE = "android.media.midi.MidiDeviceService"; + } + + public final class MidiDeviceStatus implements android.os.Parcelable { + method public int describeContents(); + method public android.media.midi.MidiDeviceInfo getDeviceInfo(); + method public int getOutputPortOpenCount(int); + method public boolean isInputPortOpen(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class MidiInputPort extends android.media.midi.MidiReceiver implements java.io.Closeable { + method public void close() throws java.io.IOException; + method public int getPortNumber(); + method public void onSend(byte[], int, int, long) throws java.io.IOException; + } + + public final class MidiManager { + method @Deprecated public android.media.midi.MidiDeviceInfo[] getDevices(); + method @NonNull public java.util.Set getDevicesForTransport(int); + method public void openBluetoothDevice(android.bluetooth.BluetoothDevice, android.media.midi.MidiManager.OnDeviceOpenedListener, android.os.Handler); + method public void openDevice(android.media.midi.MidiDeviceInfo, android.media.midi.MidiManager.OnDeviceOpenedListener, android.os.Handler); + method @Deprecated public void registerDeviceCallback(android.media.midi.MidiManager.DeviceCallback, android.os.Handler); + method public void registerDeviceCallback(int, @NonNull java.util.concurrent.Executor, @NonNull android.media.midi.MidiManager.DeviceCallback); + method public void unregisterDeviceCallback(android.media.midi.MidiManager.DeviceCallback); + field public static final int TRANSPORT_MIDI_BYTE_STREAM = 1; // 0x1 + field public static final int TRANSPORT_UNIVERSAL_MIDI_PACKETS = 2; // 0x2 + } + + public static class MidiManager.DeviceCallback { + ctor public MidiManager.DeviceCallback(); + method public void onDeviceAdded(android.media.midi.MidiDeviceInfo); + method public void onDeviceRemoved(android.media.midi.MidiDeviceInfo); + method public void onDeviceStatusChanged(android.media.midi.MidiDeviceStatus); + } + + public static interface MidiManager.OnDeviceOpenedListener { + method public void onDeviceOpened(android.media.midi.MidiDevice); + } + + public final class MidiOutputPort extends android.media.midi.MidiSender implements java.io.Closeable { + method public void close() throws java.io.IOException; + method public int getPortNumber(); + method public void onConnect(android.media.midi.MidiReceiver); + method public void onDisconnect(android.media.midi.MidiReceiver); + } + + public abstract class MidiReceiver { + ctor public MidiReceiver(); + ctor public MidiReceiver(int); + method public void flush() throws java.io.IOException; + method public final int getMaxMessageSize(); + method public void onFlush() throws java.io.IOException; + method public abstract void onSend(byte[], int, int, long) throws java.io.IOException; + method public void send(byte[], int, int) throws java.io.IOException; + method public void send(byte[], int, int, long) throws java.io.IOException; + } + + public abstract class MidiSender { + ctor public MidiSender(); + method public void connect(android.media.midi.MidiReceiver); + method public void disconnect(android.media.midi.MidiReceiver); + method public abstract void onConnect(android.media.midi.MidiReceiver); + method public abstract void onDisconnect(android.media.midi.MidiReceiver); + } + + @FlaggedApi("android.media.midi.virtual_ump") public abstract class MidiUmpDeviceService extends android.app.Service { + ctor public MidiUmpDeviceService(); + method @FlaggedApi("android.media.midi.virtual_ump") @Nullable public final android.media.midi.MidiDeviceInfo getDeviceInfo(); + method @FlaggedApi("android.media.midi.virtual_ump") @NonNull public final java.util.List getOutputPortReceivers(); + method @FlaggedApi("android.media.midi.virtual_ump") @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); + method @FlaggedApi("android.media.midi.virtual_ump") public void onClose(); + method @FlaggedApi("android.media.midi.virtual_ump") public void onDeviceStatusChanged(@NonNull android.media.midi.MidiDeviceStatus); + method @FlaggedApi("android.media.midi.virtual_ump") @NonNull public abstract java.util.List onGetInputPortReceivers(); + field @FlaggedApi("android.media.midi.virtual_ump") public static final String SERVICE_INTERFACE = "android.media.midi.MidiUmpDeviceService"; + } + +} + +package android.media.projection { + + public final class MediaProjection { + method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@NonNull String, int, int, int, int, @Nullable android.view.Surface, @Nullable android.hardware.display.VirtualDisplay.Callback, @Nullable android.os.Handler); + method public void registerCallback(@NonNull android.media.projection.MediaProjection.Callback, @Nullable android.os.Handler); + method public void stop(); + method public void unregisterCallback(@NonNull android.media.projection.MediaProjection.Callback); + } + + public abstract static class MediaProjection.Callback { + ctor public MediaProjection.Callback(); + method public void onCapturedContentResize(int, int); + method public void onCapturedContentVisibilityChanged(boolean); + method public void onStop(); + } + + public final class MediaProjectionConfig implements android.os.Parcelable { + method @NonNull public static android.media.projection.MediaProjectionConfig createConfigForDefaultDisplay(); + method @NonNull public static android.media.projection.MediaProjectionConfig createConfigForUserChoice(); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class MediaProjectionManager { + method @NonNull public android.content.Intent createScreenCaptureIntent(); + method @NonNull public android.content.Intent createScreenCaptureIntent(@NonNull android.media.projection.MediaProjectionConfig); + method @Nullable public android.media.projection.MediaProjection getMediaProjection(int, @NonNull android.content.Intent); + } + +} + +package android.media.quality { + + @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class ActiveProcessingPicture implements android.os.Parcelable { + ctor public ActiveProcessingPicture(int, @NonNull String); + method public int describeContents(); + method public int getId(); + method @NonNull public String getProfileId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class AmbientBacklightEvent implements android.os.Parcelable { + ctor public AmbientBacklightEvent(int, @Nullable android.media.quality.AmbientBacklightMetadata); + method public int describeContents(); + method public int getEventType(); + method @Nullable public android.media.quality.AmbientBacklightMetadata getMetadata(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int AMBIENT_BACKLIGHT_EVENT_DISABLED = 2; // 0x2 + field public static final int AMBIENT_BACKLIGHT_EVENT_ENABLED = 1; // 0x1 + field public static final int AMBIENT_BACKLIGHT_EVENT_INTERRUPTED = 4; // 0x4 + field public static final int AMBIENT_BACKLIGHT_EVENT_METADATA = 3; // 0x3 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class AmbientBacklightMetadata implements android.os.Parcelable { + ctor public AmbientBacklightMetadata(@NonNull String, int, int, int, int, int, @NonNull int[]); + method public int describeContents(); + method public int getColorFormat(); + method public int getCompressAlgorithm(); + method @IntRange(from=0, to=128) public int getHorizontalZonesNumber(); + method @NonNull public String getPackageName(); + method public int getSource(); + method @IntRange(from=0, to=80) public int getVerticalZonesNumber(); + method @NonNull public int[] getZonesColors(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class AmbientBacklightSettings implements android.os.Parcelable { + ctor public AmbientBacklightSettings(int, int, int, int, int, boolean, int); + method public int describeContents(); + method public int getColorFormat(); + method @IntRange(from=0) public int getHorizontalZonesNumber(); + method @IntRange(from=1) public int getMaxFps(); + method public int getSource(); + method public int getThreshold(); + method @IntRange(from=0) public int getVerticalZonesNumber(); + method public boolean isLetterboxOmitted(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int ALGORITHM_NONE = 0; // 0x0 + field public static final int ALGORITHM_RLE = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SOURCE_AUDIO = 1; // 0x1 + field public static final int SOURCE_AUDIO_VIDEO = 3; // 0x3 + field public static final int SOURCE_NONE = 0; // 0x0 + field public static final int SOURCE_VIDEO = 2; // 0x2 + } + + @FlaggedApi("android.media.tv.flags.media_quality_fw") public class MediaQualityContract { + } + + public static final class MediaQualityContract.PictureQuality { + field public static final String PARAMETER_AUTO_PICTURE_QUALITY_ENABLED = "auto_picture_quality_enabled"; + field public static final String PARAMETER_AUTO_SUPER_RESOLUTION_ENABLED = "auto_super_resolution_enabled"; + field public static final String PARAMETER_BLUE_STRETCH = "blue_stretch"; + field public static final String PARAMETER_BRIGHTNESS = "brightness"; + field public static final String PARAMETER_COLOR_TEMPERATURE = "color_temperature"; + field public static final String PARAMETER_COLOR_TUNE = "color_tune"; + field public static final String PARAMETER_COLOR_TUNER_BLUE_GAIN = "color_tuner_blue_gain"; + field public static final String PARAMETER_COLOR_TUNER_BLUE_OFFSET = "color_tuner_blue_offset"; + field public static final String PARAMETER_COLOR_TUNER_BRIGHTNESS = "color_tuner_brightness"; + field public static final String PARAMETER_COLOR_TUNER_GREEN_GAIN = "color_tuner_green_gain"; + field public static final String PARAMETER_COLOR_TUNER_GREEN_OFFSET = "color_tuner_green_offset"; + field public static final String PARAMETER_COLOR_TUNER_HUE = "color_tuner_hue"; + field public static final String PARAMETER_COLOR_TUNER_RED_GAIN = "color_tuner_red_gain"; + field public static final String PARAMETER_COLOR_TUNER_RED_OFFSET = "color_tuner_red_offset"; + field public static final String PARAMETER_COLOR_TUNER_SATURATION = "color_tuner_saturation"; + field public static final String PARAMETER_CONTRAST = "contrast"; + field public static final String PARAMETER_DECONTOUR = "decontour"; + field public static final String PARAMETER_DYNAMIC_LUMA_CONTROL = "dynamic_luma_control"; + field public static final String PARAMETER_FILM_MODE = "film_mode"; + field public static final String PARAMETER_FLESH_TONE = "flesh_tone"; + field public static final String PARAMETER_GLOBAL_DIMMING = "global_dimming"; + field public static final String PARAMETER_HUE = "hue"; + field public static final String PARAMETER_MPEG_NOISE_REDUCTION = "mpeg_noise_reduction"; + field public static final String PARAMETER_NOISE_REDUCTION = "noise_reduction"; + field public static final String PARAMETER_SATURATION = "saturation"; + field public static final String PARAMETER_SHARPNESS = "sharpness"; + } + + public static final class MediaQualityContract.SoundQuality { + field public static final String PARAMETER_BALANCE = "balance"; + field public static final String PARAMETER_BASS = "bass"; + field public static final String PARAMETER_TREBLE = "treble"; + } + + @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class MediaQualityManager { + method public void addActiveProcessingPictureListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.quality.MediaQualityManager.ActiveProcessingPictureListener); + method public void createPictureProfile(@NonNull android.media.quality.PictureProfile); + method public void createSoundProfile(@NonNull android.media.quality.SoundProfile); + method @NonNull public java.util.List getAvailablePictureProfiles(boolean); + method @NonNull public java.util.List getAvailableSoundProfiles(boolean); + method @NonNull public java.util.List getParamCapabilities(@NonNull java.util.List); + method @Nullable public android.media.quality.PictureProfile getPictureProfile(int, @NonNull String, boolean); + method @Nullable public android.media.quality.SoundProfile getSoundProfile(int, @NonNull String, boolean); + method public boolean isAmbientBacklightEnabled(); + method public boolean isAutoPictureQualityEnabled(); + method public boolean isAutoSoundQualityEnabled(); + method public boolean isSuperResolutionEnabled(); + method public void registerAmbientBacklightCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.quality.MediaQualityManager.AmbientBacklightCallback); + method public void registerPictureProfileCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.quality.MediaQualityManager.PictureProfileCallback); + method public void registerSoundProfileCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.quality.MediaQualityManager.SoundProfileCallback); + method public void removeActiveProcessingPictureListener(@NonNull android.media.quality.MediaQualityManager.ActiveProcessingPictureListener); + method public void removePictureProfile(@NonNull String); + method public void removeSoundProfile(@NonNull String); + method public void setAmbientBacklightEnabled(boolean); + method public void setAmbientBacklightSettings(@NonNull android.media.quality.AmbientBacklightSettings); + method public void unregisterAmbientBacklightCallback(@NonNull android.media.quality.MediaQualityManager.AmbientBacklightCallback); + method public void unregisterPictureProfileCallback(@NonNull android.media.quality.MediaQualityManager.PictureProfileCallback); + method public void unregisterSoundProfileCallback(@NonNull android.media.quality.MediaQualityManager.SoundProfileCallback); + method public void updatePictureProfile(@NonNull String, @NonNull android.media.quality.PictureProfile); + method public void updateSoundProfile(@NonNull String, @NonNull android.media.quality.SoundProfile); + } + + public static interface MediaQualityManager.ActiveProcessingPictureListener { + method public void onActiveProcessingPicturesChanged(@NonNull java.util.List); + } + + public abstract static class MediaQualityManager.AmbientBacklightCallback { + ctor public MediaQualityManager.AmbientBacklightCallback(); + method public void onAmbientBacklightEvent(@NonNull android.media.quality.AmbientBacklightEvent); + } + + public abstract static class MediaQualityManager.PictureProfileCallback { + ctor public MediaQualityManager.PictureProfileCallback(); + method public void onError(@Nullable String, int); + method public void onParamCapabilitiesChanged(@Nullable String, @NonNull java.util.List); + method public void onPictureProfileAdded(@NonNull String, @NonNull android.media.quality.PictureProfile); + method public void onPictureProfileRemoved(@NonNull String, @NonNull android.media.quality.PictureProfile); + method public void onPictureProfileUpdated(@NonNull String, @NonNull android.media.quality.PictureProfile); + } + + public abstract static class MediaQualityManager.SoundProfileCallback { + ctor public MediaQualityManager.SoundProfileCallback(); + method public void onError(@Nullable String, int); + method public void onParamCapabilitiesChanged(@Nullable String, @NonNull java.util.List); + method public void onSoundProfileAdded(@NonNull String, @NonNull android.media.quality.SoundProfile); + method public void onSoundProfileRemoved(@NonNull String, @NonNull android.media.quality.SoundProfile); + method public void onSoundProfileUpdated(@NonNull String, @NonNull android.media.quality.SoundProfile); + } + + @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class ParamCapability implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.os.Bundle getCapabilities(); + method @NonNull public String getParamName(); + method public int getParamType(); + method public boolean isSupported(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final String CAPABILITY_DEFAULT = "default"; + field public static final String CAPABILITY_ENUM = "enum"; + field public static final String CAPABILITY_MAX = "max"; + field public static final String CAPABILITY_MIN = "min"; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_DOUBLE = 3; // 0x3 + field public static final int TYPE_INT = 1; // 0x1 + field public static final int TYPE_LONG = 2; // 0x2 + field public static final int TYPE_STRING = 4; // 0x4 + } + + @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class PictureProfile implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getInputId(); + method @NonNull public String getName(); + method @Nullable public String getPackageName(); + method @NonNull public android.os.PersistableBundle getParameters(); + method @Nullable public String getProfileId(); + method public int getProfileType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ERROR_DUPLICATE = 2; // 0x2 + field public static final int ERROR_INVALID_ARGUMENT = 3; // 0x3 + field public static final int ERROR_NOT_ALLOWLISTED = 4; // 0x4 + field public static final int ERROR_NO_PERMISSION = 1; // 0x1 + field public static final int ERROR_UNKNOWN = 0; // 0x0 + field public static final int TYPE_APPLICATION = 2; // 0x2 + field public static final int TYPE_SYSTEM = 1; // 0x1 + } + + public static final class PictureProfile.Builder { + ctor public PictureProfile.Builder(@NonNull String); + ctor public PictureProfile.Builder(@NonNull android.media.quality.PictureProfile); + method @NonNull public android.media.quality.PictureProfile build(); + method @NonNull public android.media.quality.PictureProfile.Builder setParameters(@NonNull android.os.PersistableBundle); + } + + @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class SoundProfile implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getInputId(); + method @NonNull public String getName(); + method @Nullable public String getPackageName(); + method @NonNull public android.os.PersistableBundle getParameters(); + method @Nullable public String getProfileId(); + method public int getProfileType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ERROR_DUPLICATE = 2; // 0x2 + field public static final int ERROR_INVALID_ARGUMENT = 3; // 0x3 + field public static final int ERROR_NOT_ALLOWLISTED = 4; // 0x4 + field public static final int ERROR_NO_PERMISSION = 1; // 0x1 + field public static final int ERROR_UNKNOWN = 0; // 0x0 + field public static final int TYPE_APPLICATION = 2; // 0x2 + field public static final int TYPE_SYSTEM = 1; // 0x1 + } + + public static final class SoundProfile.Builder { + ctor public SoundProfile.Builder(@NonNull String); + ctor public SoundProfile.Builder(@NonNull android.media.quality.SoundProfile); + method @NonNull public android.media.quality.SoundProfile build(); + method @NonNull public android.media.quality.SoundProfile.Builder setParameters(@NonNull android.os.PersistableBundle); + } + +} + +package android.media.session { + + public final class MediaController { + ctor public MediaController(@NonNull android.content.Context, @NonNull android.media.session.MediaSession.Token); + method public void adjustVolume(int, int); + method public boolean dispatchMediaButtonEvent(@NonNull android.view.KeyEvent); + method @Nullable public android.os.Bundle getExtras(); + method public long getFlags(); + method @Nullable public android.media.MediaMetadata getMetadata(); + method public String getPackageName(); + method @NonNull public android.media.session.MediaController.PlaybackInfo getPlaybackInfo(); + method @Nullable public android.media.session.PlaybackState getPlaybackState(); + method @Nullable public java.util.List getQueue(); + method @Nullable public CharSequence getQueueTitle(); + method public int getRatingType(); + method @Nullable public android.app.PendingIntent getSessionActivity(); + method @NonNull public android.os.Bundle getSessionInfo(); + method @NonNull public android.media.session.MediaSession.Token getSessionToken(); + method @NonNull public String getTag(); + method @NonNull public android.media.session.MediaController.TransportControls getTransportControls(); + method public void registerCallback(@NonNull android.media.session.MediaController.Callback); + method public void registerCallback(@NonNull android.media.session.MediaController.Callback, @Nullable android.os.Handler); + method public void sendCommand(@NonNull String, @Nullable android.os.Bundle, @Nullable android.os.ResultReceiver); + method public void setVolumeTo(int, int); + method public void unregisterCallback(@NonNull android.media.session.MediaController.Callback); + } + + public abstract static class MediaController.Callback { + ctor public MediaController.Callback(); + method public void onAudioInfoChanged(@NonNull android.media.session.MediaController.PlaybackInfo); + method public void onExtrasChanged(@Nullable android.os.Bundle); + method public void onMetadataChanged(@Nullable android.media.MediaMetadata); + method public void onPlaybackStateChanged(@Nullable android.media.session.PlaybackState); + method public void onQueueChanged(@Nullable java.util.List); + method public void onQueueTitleChanged(@Nullable CharSequence); + method public void onSessionDestroyed(); + method public void onSessionEvent(@NonNull String, @Nullable android.os.Bundle); + } + + public static final class MediaController.PlaybackInfo implements android.os.Parcelable { + method public int describeContents(); + method public android.media.AudioAttributes getAudioAttributes(); + method public int getCurrentVolume(); + method public int getMaxVolume(); + method public int getPlaybackType(); + method public int getVolumeControl(); + method @Nullable public String getVolumeControlId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int PLAYBACK_TYPE_LOCAL = 1; // 0x1 + field public static final int PLAYBACK_TYPE_REMOTE = 2; // 0x2 + } + + public final class MediaController.TransportControls { + method public void fastForward(); + method public void pause(); + method public void play(); + method public void playFromMediaId(String, android.os.Bundle); + method public void playFromSearch(String, android.os.Bundle); + method public void playFromUri(android.net.Uri, android.os.Bundle); + method public void prepare(); + method public void prepareFromMediaId(String, android.os.Bundle); + method public void prepareFromSearch(String, android.os.Bundle); + method public void prepareFromUri(android.net.Uri, android.os.Bundle); + method public void rewind(); + method public void seekTo(long); + method public void sendCustomAction(@NonNull android.media.session.PlaybackState.CustomAction, @Nullable android.os.Bundle); + method public void sendCustomAction(@NonNull String, @Nullable android.os.Bundle); + method public void setPlaybackSpeed(float); + method public void setRating(android.media.Rating); + method public void skipToNext(); + method public void skipToPrevious(); + method public void skipToQueueItem(long); + method public void stop(); + } + + public final class MediaSession { + ctor public MediaSession(@NonNull android.content.Context, @NonNull String); + ctor public MediaSession(@NonNull android.content.Context, @NonNull String, @Nullable android.os.Bundle); + method @NonNull public android.media.session.MediaController getController(); + method @NonNull public android.media.session.MediaSessionManager.RemoteUserInfo getCurrentControllerInfo(); + method @NonNull public android.media.session.MediaSession.Token getSessionToken(); + method public boolean isActive(); + method public void release(); + method public void sendSessionEvent(@NonNull String, @Nullable android.os.Bundle); + method public void setActive(boolean); + method public void setCallback(@Nullable android.media.session.MediaSession.Callback); + method public void setCallback(@Nullable android.media.session.MediaSession.Callback, @Nullable android.os.Handler); + method public void setExtras(@Nullable android.os.Bundle); + method public void setFlags(int); + method public void setMediaButtonBroadcastReceiver(@Nullable android.content.ComponentName); + method @Deprecated public void setMediaButtonReceiver(@Nullable android.app.PendingIntent); + method public void setMetadata(@Nullable android.media.MediaMetadata); + method public void setPlaybackState(@Nullable android.media.session.PlaybackState); + method public void setPlaybackToLocal(android.media.AudioAttributes); + method public void setPlaybackToRemote(@NonNull android.media.VolumeProvider); + method public void setQueue(@Nullable java.util.List); + method public void setQueueTitle(@Nullable CharSequence); + method public void setRatingType(int); + method public void setSessionActivity(@Nullable android.app.PendingIntent); + field @Deprecated public static final int FLAG_HANDLES_MEDIA_BUTTONS = 1; // 0x1 + field @Deprecated public static final int FLAG_HANDLES_TRANSPORT_CONTROLS = 2; // 0x2 + } + + public abstract static class MediaSession.Callback { + ctor public MediaSession.Callback(); + method public void onCommand(@NonNull String, @Nullable android.os.Bundle, @Nullable android.os.ResultReceiver); + method public void onCustomAction(@NonNull String, @Nullable android.os.Bundle); + method public void onFastForward(); + method public boolean onMediaButtonEvent(@NonNull android.content.Intent); + method public void onPause(); + method public void onPlay(); + method public void onPlayFromMediaId(String, android.os.Bundle); + method public void onPlayFromSearch(String, android.os.Bundle); + method public void onPlayFromUri(android.net.Uri, android.os.Bundle); + method public void onPrepare(); + method public void onPrepareFromMediaId(String, android.os.Bundle); + method public void onPrepareFromSearch(String, android.os.Bundle); + method public void onPrepareFromUri(android.net.Uri, android.os.Bundle); + method public void onRewind(); + method public void onSeekTo(long); + method public void onSetPlaybackSpeed(float); + method public void onSetRating(@NonNull android.media.Rating); + method public void onSkipToNext(); + method public void onSkipToPrevious(); + method public void onSkipToQueueItem(long); + method public void onStop(); + } + + public static final class MediaSession.QueueItem implements android.os.Parcelable { + ctor public MediaSession.QueueItem(android.media.MediaDescription, long); + method public int describeContents(); + method public android.media.MediaDescription getDescription(); + method public long getQueueId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int UNKNOWN_ID = -1; // 0xffffffff + } + + public static final class MediaSession.Token implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class MediaSessionManager { + method public void addOnActiveSessionsChangedListener(@NonNull android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, @Nullable android.content.ComponentName); + method public void addOnActiveSessionsChangedListener(@NonNull android.media.session.MediaSessionManager.OnActiveSessionsChangedListener, @Nullable android.content.ComponentName, @Nullable android.os.Handler); + method public void addOnMediaKeyEventSessionChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.session.MediaSessionManager.OnMediaKeyEventSessionChangedListener); + method public void addOnSession2TokensChangedListener(@NonNull android.media.session.MediaSessionManager.OnSession2TokensChangedListener); + method public void addOnSession2TokensChangedListener(@NonNull android.media.session.MediaSessionManager.OnSession2TokensChangedListener, @NonNull android.os.Handler); + method @NonNull public java.util.List getActiveSessions(@Nullable android.content.ComponentName); + method @Nullable public android.media.session.MediaSession.Token getMediaKeyEventSession(); + method @NonNull public String getMediaKeyEventSessionPackageName(); + method @NonNull public java.util.List getSession2Tokens(); + method public boolean isTrustedForMediaControl(@NonNull android.media.session.MediaSessionManager.RemoteUserInfo); + method @Deprecated public void notifySession2Created(@NonNull android.media.Session2Token); + method public void removeOnActiveSessionsChangedListener(@NonNull android.media.session.MediaSessionManager.OnActiveSessionsChangedListener); + method public void removeOnMediaKeyEventSessionChangedListener(@NonNull android.media.session.MediaSessionManager.OnMediaKeyEventSessionChangedListener); + method public void removeOnSession2TokensChangedListener(@NonNull android.media.session.MediaSessionManager.OnSession2TokensChangedListener); + } + + public static interface MediaSessionManager.OnActiveSessionsChangedListener { + method public void onActiveSessionsChanged(@Nullable java.util.List); + } + + public static interface MediaSessionManager.OnMediaKeyEventSessionChangedListener { + method public void onMediaKeyEventSessionChanged(@NonNull String, @Nullable android.media.session.MediaSession.Token); + } + + public static interface MediaSessionManager.OnSession2TokensChangedListener { + method public void onSession2TokensChanged(@NonNull java.util.List); + } + + public static final class MediaSessionManager.RemoteUserInfo { + ctor public MediaSessionManager.RemoteUserInfo(@NonNull String, int, int); + method public String getPackageName(); + method public int getPid(); + method public int getUid(); + } + + public final class PlaybackState implements android.os.Parcelable { + method public int describeContents(); + method public long getActions(); + method public long getActiveQueueItemId(); + method public long getBufferedPosition(); + method public java.util.List getCustomActions(); + method public CharSequence getErrorMessage(); + method @Nullable public android.os.Bundle getExtras(); + method public long getLastPositionUpdateTime(); + method public float getPlaybackSpeed(); + method public long getPosition(); + method public int getState(); + method public boolean isActive(); + method public void writeToParcel(android.os.Parcel, int); + field public static final long ACTION_FAST_FORWARD = 64L; // 0x40L + field public static final long ACTION_PAUSE = 2L; // 0x2L + field public static final long ACTION_PLAY = 4L; // 0x4L + field public static final long ACTION_PLAY_FROM_MEDIA_ID = 1024L; // 0x400L + field public static final long ACTION_PLAY_FROM_SEARCH = 2048L; // 0x800L + field public static final long ACTION_PLAY_FROM_URI = 8192L; // 0x2000L + field public static final long ACTION_PLAY_PAUSE = 512L; // 0x200L + field public static final long ACTION_PREPARE = 16384L; // 0x4000L + field public static final long ACTION_PREPARE_FROM_MEDIA_ID = 32768L; // 0x8000L + field public static final long ACTION_PREPARE_FROM_SEARCH = 65536L; // 0x10000L + field public static final long ACTION_PREPARE_FROM_URI = 131072L; // 0x20000L + field public static final long ACTION_REWIND = 8L; // 0x8L + field public static final long ACTION_SEEK_TO = 256L; // 0x100L + field public static final long ACTION_SET_PLAYBACK_SPEED = 4194304L; // 0x400000L + field public static final long ACTION_SET_RATING = 128L; // 0x80L + field public static final long ACTION_SKIP_TO_NEXT = 32L; // 0x20L + field public static final long ACTION_SKIP_TO_PREVIOUS = 16L; // 0x10L + field public static final long ACTION_SKIP_TO_QUEUE_ITEM = 4096L; // 0x1000L + field public static final long ACTION_STOP = 1L; // 0x1L + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final long PLAYBACK_POSITION_UNKNOWN = -1L; // 0xffffffffffffffffL + field public static final int STATE_BUFFERING = 6; // 0x6 + field public static final int STATE_CONNECTING = 8; // 0x8 + field public static final int STATE_ERROR = 7; // 0x7 + field public static final int STATE_FAST_FORWARDING = 4; // 0x4 + field public static final int STATE_NONE = 0; // 0x0 + field public static final int STATE_PAUSED = 2; // 0x2 + field public static final int STATE_PLAYING = 3; // 0x3 + field public static final int STATE_REWINDING = 5; // 0x5 + field public static final int STATE_SKIPPING_TO_NEXT = 10; // 0xa + field public static final int STATE_SKIPPING_TO_PREVIOUS = 9; // 0x9 + field public static final int STATE_SKIPPING_TO_QUEUE_ITEM = 11; // 0xb + field public static final int STATE_STOPPED = 1; // 0x1 + } + + public static final class PlaybackState.Builder { + ctor public PlaybackState.Builder(); + ctor public PlaybackState.Builder(android.media.session.PlaybackState); + method public android.media.session.PlaybackState.Builder addCustomAction(String, String, int); + method public android.media.session.PlaybackState.Builder addCustomAction(android.media.session.PlaybackState.CustomAction); + method public android.media.session.PlaybackState build(); + method public android.media.session.PlaybackState.Builder setActions(long); + method public android.media.session.PlaybackState.Builder setActiveQueueItemId(long); + method public android.media.session.PlaybackState.Builder setBufferedPosition(long); + method public android.media.session.PlaybackState.Builder setErrorMessage(CharSequence); + method public android.media.session.PlaybackState.Builder setExtras(android.os.Bundle); + method public android.media.session.PlaybackState.Builder setState(int, long, float, long); + method public android.media.session.PlaybackState.Builder setState(int, long, float); + } + + public static final class PlaybackState.CustomAction implements android.os.Parcelable { + method public int describeContents(); + method public String getAction(); + method public android.os.Bundle getExtras(); + method public int getIcon(); + method public CharSequence getName(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class PlaybackState.CustomAction.Builder { + ctor public PlaybackState.CustomAction.Builder(String, CharSequence, @DrawableRes int); + method public android.media.session.PlaybackState.CustomAction build(); + method public android.media.session.PlaybackState.CustomAction.Builder setExtras(android.os.Bundle); + } + +} + +package android.media.tv { + + public final class AdBuffer implements android.os.Parcelable { + ctor public AdBuffer(int, @NonNull String, @NonNull android.os.SharedMemory, int, int, long, int); + method public int describeContents(); + method public int getFlags(); + method public int getId(); + method public int getLength(); + method @NonNull public String getMimeType(); + method public int getOffset(); + method public long getPresentationTimeUs(); + method @NonNull public android.os.SharedMemory getSharedMemory(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class AdRequest implements android.os.Parcelable { + ctor public AdRequest(int, int, @Nullable android.os.ParcelFileDescriptor, long, long, long, @Nullable String, @NonNull android.os.Bundle); + ctor public AdRequest(int, int, @Nullable android.net.Uri, long, long, long, @NonNull android.os.Bundle); + method public int describeContents(); + method public long getEchoIntervalMillis(); + method @Nullable public android.os.ParcelFileDescriptor getFileDescriptor(); + method public int getId(); + method @Nullable public String getMediaFileType(); + method @NonNull public android.os.Bundle getMetadata(); + method public int getRequestType(); + method public long getStartTimeMillis(); + method public long getStopTimeMillis(); + method @Nullable public android.net.Uri getUri(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int REQUEST_TYPE_START = 1; // 0x1 + field public static final int REQUEST_TYPE_STOP = 2; // 0x2 + } + + public final class AdResponse implements android.os.Parcelable { + ctor public AdResponse(int, int, long); + method public int describeContents(); + method public long getElapsedTimeMillis(); + method public int getId(); + method public int getResponseType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int RESPONSE_TYPE_BUFFERING = 5; // 0x5 + field public static final int RESPONSE_TYPE_ERROR = 4; // 0x4 + field public static final int RESPONSE_TYPE_FINISHED = 2; // 0x2 + field public static final int RESPONSE_TYPE_PLAYING = 1; // 0x1 + field public static final int RESPONSE_TYPE_STOPPED = 3; // 0x3 + } + + public final class AitInfo implements android.os.Parcelable { + ctor public AitInfo(int, int); + method public int describeContents(); + method public int getType(); + method public int getVersion(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class BroadcastInfoRequest implements android.os.Parcelable { + method public int describeContents(); + method public int getOption(); + method public int getRequestId(); + method public int getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int REQUEST_OPTION_AUTO_UPDATE = 1; // 0x1 + field @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public static final int REQUEST_OPTION_ONESHOT = 3; // 0x3 + field @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public static final int REQUEST_OPTION_ONEWAY = 2; // 0x2 + field public static final int REQUEST_OPTION_REPEAT = 0; // 0x0 + } + + public abstract class BroadcastInfoResponse implements android.os.Parcelable { + method public int describeContents(); + method public int getRequestId(); + method public int getResponseResult(); + method public int getSequence(); + method public int getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int RESPONSE_RESULT_CANCEL = 3; // 0x3 + field public static final int RESPONSE_RESULT_ERROR = 1; // 0x1 + field public static final int RESPONSE_RESULT_OK = 2; // 0x2 + } + + public final class CommandRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { + ctor public CommandRequest(int, int, @NonNull String, @NonNull String, @NonNull String, @NonNull String); + method @NonNull public String getArgumentType(); + method @NonNull public String getArguments(); + method @NonNull public String getName(); + method @NonNull public String getNamespace(); + field public static final String ARGUMENT_TYPE_JSON = "json"; + field public static final String ARGUMENT_TYPE_XML = "xml"; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CommandResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { + ctor public CommandResponse(int, int, int, @Nullable String, @NonNull String); + method @Nullable public String getResponse(); + method @NonNull public String getResponseType(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String RESPONSE_TYPE_JSON = "json"; + field public static final String RESPONSE_TYPE_XML = "xml"; + } + + public final class DsmccRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { + ctor public DsmccRequest(int, int, @NonNull android.net.Uri); + method @NonNull public android.net.Uri getUri(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class DsmccResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { + ctor public DsmccResponse(int, int, int, @Nullable android.os.ParcelFileDescriptor); + ctor public DsmccResponse(int, int, int, boolean, @Nullable java.util.List); + ctor public DsmccResponse(int, int, int, @Nullable int[], @Nullable String[]); + method @NonNull public String getBiopMessageType(); + method @NonNull public java.util.List getChildList(); + method @NonNull public android.os.ParcelFileDescriptor getFile(); + method @NonNull public int[] getStreamEventIds(); + method @NonNull public String[] getStreamEventNames(); + field public static final String BIOP_MESSAGE_TYPE_DIRECTORY = "directory"; + field public static final String BIOP_MESSAGE_TYPE_FILE = "file"; + field public static final String BIOP_MESSAGE_TYPE_SERVICE_GATEWAY = "service_gateway"; + field public static final String BIOP_MESSAGE_TYPE_STREAM = "stream"; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class PesRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { + ctor public PesRequest(int, int, int, int); + method public int getStreamId(); + method public int getTsPid(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class PesResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { + ctor public PesResponse(int, int, int, @Nullable String); + method @Nullable public String getSharedFilterToken(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class SectionRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { + ctor public SectionRequest(int, int, int, int, int); + method public int getTableId(); + method public int getTsPid(); + method public int getVersion(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class SectionResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { + ctor public SectionResponse(int, int, int, int, int, @Nullable android.os.Bundle); + method @NonNull public android.os.Bundle getSessionData(); + method public int getSessionId(); + method public int getVersion(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public final class SignalingDataInfo implements android.os.Parcelable { + ctor public SignalingDataInfo(@NonNull String, @NonNull String, int, int); + ctor public SignalingDataInfo(@NonNull String, @NonNull String, int, int, @NonNull String); + method public int describeContents(); + method @NonNull public String getEncoding(); + method public int getGroup(); + method @NonNull public String getSignalingDataType(); + method @NonNull public String getTable(); + method public int getVersion(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final String CONTENT_ENCODING_BASE64 = "Base64"; + field public static final String CONTENT_ENCODING_UTF_8 = "UTF-8"; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int LLS_NO_GROUP_ID = -1; // 0xffffffff + } + + @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public final class SignalingDataRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { + ctor public SignalingDataRequest(int, int, int, @NonNull java.util.List); + method public int getGroup(); + method @NonNull public java.util.List getSignalingDataTypes(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SIGNALING_DATA_NO_GROUP_ID = -1; // 0xffffffff + field public static final String SIGNALING_METADATA_AEAT = "AEAT"; + field public static final String SIGNALING_METADATA_AEI = "AEI"; + field public static final String SIGNALING_METADATA_APD = "APD"; + field public static final String SIGNALING_METADATA_ASD = "ASD"; + field public static final String SIGNALING_METADATA_ASPD = "ASPD"; + field public static final String SIGNALING_METADATA_CAD = "CAD"; + field public static final String SIGNALING_METADATA_CDT = "CDT"; + field public static final String SIGNALING_METADATA_CRIT = "CRIT"; + field public static final String SIGNALING_METADATA_DCIT = "DCIT"; + field public static final String SIGNALING_METADATA_DWD = "DWD"; + field public static final String SIGNALING_METADATA_EMSG = "EMSG"; + field public static final String SIGNALING_METADATA_EVTI = "EVTI"; + field public static final String SIGNALING_METADATA_HELD = "HELD"; + field public static final String SIGNALING_METADATA_IED = "IED"; + field public static final String SIGNALING_METADATA_MPD = "MPD"; + field public static final String SIGNALING_METADATA_MPIT = "MPIT"; + field public static final String SIGNALING_METADATA_MPT = "MPT"; + field public static final String SIGNALING_METADATA_OSN = "OSN"; + field public static final String SIGNALING_METADATA_PAT = "PAT"; + field public static final String SIGNALING_METADATA_RDT = "RDT"; + field public static final String SIGNALING_METADATA_RRT = "RRT"; + field public static final String SIGNALING_METADATA_RSAT = "RSAT"; + field public static final String SIGNALING_METADATA_SLT = "SLT"; + field public static final String SIGNALING_METADATA_SMT = "SMT"; + field public static final String SIGNALING_METADATA_SSD = "SSD"; + field public static final String SIGNALING_METADATA_STSID = "STSID"; + field public static final String SIGNALING_METADATA_STT = "STT"; + field public static final String SIGNALING_METADATA_USBD = "USBD"; + field public static final String SIGNALING_METADATA_USD = "USD"; + field public static final String SIGNALING_METADATA_VSPD = "VSPD"; + } + + @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public final class SignalingDataResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { + ctor public SignalingDataResponse(int, int, int, @NonNull java.util.List, @NonNull java.util.List); + method @NonNull public java.util.List getSignalingDataInfoList(); + method @NonNull public java.util.List getSignalingDataTypes(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class StreamEventRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { + ctor public StreamEventRequest(int, int, @NonNull android.net.Uri, @NonNull String); + method @NonNull public String getEventName(); + method @NonNull public android.net.Uri getTargetUri(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class StreamEventResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { + ctor public StreamEventResponse(int, int, int, int, long, @Nullable byte[]); + method @Nullable public byte[] getData(); + method public int getEventId(); + method public long getNptMillis(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class TableRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { + ctor public TableRequest(int, int, int, int, int); + method public int getTableId(); + method public int getTableName(); + method public int getVersion(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TABLE_NAME_BAT = 4; // 0x4 + field public static final int TABLE_NAME_CAT = 2; // 0x2 + field public static final int TABLE_NAME_EIT = 6; // 0x6 + field public static final int TABLE_NAME_NIT = 3; // 0x3 + field public static final int TABLE_NAME_PAT = 0; // 0x0 + field public static final int TABLE_NAME_PMT = 1; // 0x1 + field public static final int TABLE_NAME_SDT = 5; // 0x5 + field public static final int TABLE_NAME_SIT = 9; // 0x9 + field public static final int TABLE_NAME_TDT = 7; // 0x7 + field public static final int TABLE_NAME_TOT = 8; // 0x8 + } + + public final class TableResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { + ctor @Deprecated public TableResponse(int, int, int, @Nullable android.net.Uri, int, int); + method public int getSize(); + method @Nullable public byte[] getTableByteArray(); + method @Nullable public android.os.SharedMemory getTableSharedMemory(); + method @Nullable public android.net.Uri getTableUri(); + method public int getVersion(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TableResponse.Builder { + ctor public TableResponse.Builder(int, int, int, int, int); + method @NonNull public android.media.tv.TableResponse build(); + method @NonNull public android.media.tv.TableResponse.Builder setTableByteArray(@NonNull byte[]); + method @NonNull public android.media.tv.TableResponse.Builder setTableSharedMemory(@NonNull android.os.SharedMemory); + method @NonNull public android.media.tv.TableResponse.Builder setTableUri(@NonNull android.net.Uri); + } + + public final class TimelineRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { + ctor public TimelineRequest(int, int, int); + ctor public TimelineRequest(int, int, int, @NonNull String); + method public int getIntervalMillis(); + method @Nullable public String getSelector(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class TimelineResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { + ctor public TimelineResponse(int, int, int, @Nullable String, int, int, long, long); + method @Nullable public android.net.Uri getSelector(); + method public long getTicks(); + method public int getUnitsPerSecond(); + method public int getUnitsPerTick(); + method public long getWallClock(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class TsRequest extends android.media.tv.BroadcastInfoRequest implements android.os.Parcelable { + ctor public TsRequest(int, int, int); + method public int getTsPid(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class TsResponse extends android.media.tv.BroadcastInfoResponse implements android.os.Parcelable { + ctor public TsResponse(int, int, int, @Nullable String); + method @Nullable public String getSharedFilterToken(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class TvContentRating { + method public boolean contains(@NonNull android.media.tv.TvContentRating); + method public static android.media.tv.TvContentRating createRating(String, String, String, java.lang.String...); + method public String flattenToString(); + method public String getDomain(); + method public String getMainRating(); + method public String getRatingSystem(); + method public java.util.List getSubRatings(); + method public static android.media.tv.TvContentRating unflattenFromString(String); + field public static final android.media.tv.TvContentRating UNRATED; + } + + public final class TvContract { + method public static android.net.Uri buildChannelLogoUri(long); + method public static android.net.Uri buildChannelLogoUri(android.net.Uri); + method public static android.net.Uri buildChannelUri(long); + method public static android.net.Uri buildChannelUriForPassthroughInput(String); + method public static android.net.Uri buildChannelsUriForInput(@Nullable String); + method public static String buildInputId(android.content.ComponentName); + method public static android.net.Uri buildPreviewProgramUri(long); + method public static android.net.Uri buildPreviewProgramsUriForChannel(long); + method public static android.net.Uri buildPreviewProgramsUriForChannel(android.net.Uri); + method public static android.net.Uri buildProgramUri(long); + method public static android.net.Uri buildProgramsUriForChannel(long); + method public static android.net.Uri buildProgramsUriForChannel(android.net.Uri); + method public static android.net.Uri buildProgramsUriForChannel(long, long, long); + method public static android.net.Uri buildProgramsUriForChannel(android.net.Uri, long, long); + method public static android.net.Uri buildRecordedProgramUri(long); + method public static android.net.Uri buildWatchNextProgramUri(long); + method public static boolean isChannelUri(@NonNull android.net.Uri); + method public static boolean isChannelUriForPassthroughInput(@NonNull android.net.Uri); + method public static boolean isChannelUriForTunerInput(@NonNull android.net.Uri); + method public static boolean isProgramUri(@NonNull android.net.Uri); + method public static boolean isRecordedProgramUri(@NonNull android.net.Uri); + method public static void requestChannelBrowsable(android.content.Context, long); + field public static final String ACTION_INITIALIZE_PROGRAMS = "android.media.tv.action.INITIALIZE_PROGRAMS"; + field public static final String ACTION_PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT = "android.media.tv.action.PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT"; + field public static final String ACTION_PREVIEW_PROGRAM_BROWSABLE_DISABLED = "android.media.tv.action.PREVIEW_PROGRAM_BROWSABLE_DISABLED"; + field public static final String ACTION_REQUEST_CHANNEL_BROWSABLE = "android.media.tv.action.REQUEST_CHANNEL_BROWSABLE"; + field public static final String ACTION_WATCH_NEXT_PROGRAM_BROWSABLE_DISABLED = "android.media.tv.action.WATCH_NEXT_PROGRAM_BROWSABLE_DISABLED"; + field public static final String AUTHORITY = "android.media.tv"; + field public static final String EXTRA_CHANNEL_ID = "android.media.tv.extra.CHANNEL_ID"; + field public static final String EXTRA_PREVIEW_PROGRAM_ID = "android.media.tv.extra.PREVIEW_PROGRAM_ID"; + field public static final String EXTRA_WATCH_NEXT_PROGRAM_ID = "android.media.tv.extra.WATCH_NEXT_PROGRAM_ID"; + } + + public static interface TvContract.BaseTvColumns extends android.provider.BaseColumns { + field public static final String COLUMN_PACKAGE_NAME = "package_name"; + } + + public static final class TvContract.Channels implements android.media.tv.TvContract.BaseTvColumns { + method @Nullable public static String getVideoResolution(String); + field @FlaggedApi("android.media.tv.flags.broadcast_visibility_types") public static final int BROADCAST_VISIBILITY_TYPE_INVISIBLE = 2; // 0x2 + field @FlaggedApi("android.media.tv.flags.broadcast_visibility_types") public static final int BROADCAST_VISIBILITY_TYPE_NUMERIC_SELECTABLE_ONLY = 1; // 0x1 + field @FlaggedApi("android.media.tv.flags.broadcast_visibility_types") public static final int BROADCAST_VISIBILITY_TYPE_VISIBLE = 0; // 0x0 + field public static final String COLUMN_APP_LINK_COLOR = "app_link_color"; + field public static final String COLUMN_APP_LINK_ICON_URI = "app_link_icon_uri"; + field public static final String COLUMN_APP_LINK_INTENT_URI = "app_link_intent_uri"; + field public static final String COLUMN_APP_LINK_POSTER_ART_URI = "app_link_poster_art_uri"; + field public static final String COLUMN_APP_LINK_TEXT = "app_link_text"; + field public static final String COLUMN_BROADCAST_GENRE = "broadcast_genre"; + field @FlaggedApi("android.media.tv.flags.broadcast_visibility_types") public static final String COLUMN_BROADCAST_VISIBILITY_TYPE = "broadcast_visibility_type"; + field public static final String COLUMN_BROWSABLE = "browsable"; + field public static final String COLUMN_CHANNEL_LIST_ID = "channel_list_id"; + field public static final String COLUMN_DESCRIPTION = "description"; + field public static final String COLUMN_DISPLAY_NAME = "display_name"; + field public static final String COLUMN_DISPLAY_NUMBER = "display_number"; + field public static final String COLUMN_GLOBAL_CONTENT_ID = "global_content_id"; + field public static final String COLUMN_INPUT_ID = "input_id"; + field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; + field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; + field public static final String COLUMN_LOCKED = "locked"; + field public static final String COLUMN_NETWORK_AFFILIATION = "network_affiliation"; + field public static final String COLUMN_ORIGINAL_NETWORK_ID = "original_network_id"; + field public static final String COLUMN_REMOTE_CONTROL_KEY_PRESET_NUMBER = "remote_control_key_preset_number"; + field public static final String COLUMN_SCRAMBLED = "scrambled"; + field public static final String COLUMN_SEARCHABLE = "searchable"; + field public static final String COLUMN_SERVICE_ID = "service_id"; + field public static final String COLUMN_SERVICE_TYPE = "service_type"; + field public static final String COLUMN_TRANSIENT = "transient"; + field public static final String COLUMN_TRANSPORT_STREAM_ID = "transport_stream_id"; + field public static final String COLUMN_TYPE = "type"; + field public static final String COLUMN_VERSION_NUMBER = "version_number"; + field public static final String COLUMN_VIDEO_FORMAT = "video_format"; + field public static final String COLUMN_VIDEO_RESOLUTION = "video_resolution"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/channel"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/channel"; + field public static final android.net.Uri CONTENT_URI; + field public static final String SERVICE_TYPE_AUDIO = "SERVICE_TYPE_AUDIO"; + field public static final String SERVICE_TYPE_AUDIO_VIDEO = "SERVICE_TYPE_AUDIO_VIDEO"; + field public static final String SERVICE_TYPE_OTHER = "SERVICE_TYPE_OTHER"; + field public static final String TYPE_1SEG = "TYPE_1SEG"; + field public static final String TYPE_ATSC3_T = "TYPE_ATSC3_T"; + field public static final String TYPE_ATSC_C = "TYPE_ATSC_C"; + field public static final String TYPE_ATSC_M_H = "TYPE_ATSC_M_H"; + field public static final String TYPE_ATSC_T = "TYPE_ATSC_T"; + field public static final String TYPE_CMMB = "TYPE_CMMB"; + field public static final String TYPE_DTMB = "TYPE_DTMB"; + field public static final String TYPE_DVB_C = "TYPE_DVB_C"; + field public static final String TYPE_DVB_C2 = "TYPE_DVB_C2"; + field public static final String TYPE_DVB_H = "TYPE_DVB_H"; + field public static final String TYPE_DVB_S = "TYPE_DVB_S"; + field public static final String TYPE_DVB_S2 = "TYPE_DVB_S2"; + field public static final String TYPE_DVB_SH = "TYPE_DVB_SH"; + field public static final String TYPE_DVB_T = "TYPE_DVB_T"; + field public static final String TYPE_DVB_T2 = "TYPE_DVB_T2"; + field public static final String TYPE_ISDB_C = "TYPE_ISDB_C"; + field public static final String TYPE_ISDB_S = "TYPE_ISDB_S"; + field public static final String TYPE_ISDB_S3 = "TYPE_ISDB_S3"; + field public static final String TYPE_ISDB_T = "TYPE_ISDB_T"; + field public static final String TYPE_ISDB_TB = "TYPE_ISDB_TB"; + field public static final String TYPE_NTSC = "TYPE_NTSC"; + field public static final String TYPE_OTHER = "TYPE_OTHER"; + field public static final String TYPE_PAL = "TYPE_PAL"; + field public static final String TYPE_PREVIEW = "TYPE_PREVIEW"; + field public static final String TYPE_SECAM = "TYPE_SECAM"; + field public static final String TYPE_S_DMB = "TYPE_S_DMB"; + field public static final String TYPE_T_DMB = "TYPE_T_DMB"; + field public static final String VIDEO_FORMAT_1080I = "VIDEO_FORMAT_1080I"; + field public static final String VIDEO_FORMAT_1080P = "VIDEO_FORMAT_1080P"; + field public static final String VIDEO_FORMAT_2160P = "VIDEO_FORMAT_2160P"; + field public static final String VIDEO_FORMAT_240P = "VIDEO_FORMAT_240P"; + field public static final String VIDEO_FORMAT_360P = "VIDEO_FORMAT_360P"; + field public static final String VIDEO_FORMAT_4320P = "VIDEO_FORMAT_4320P"; + field public static final String VIDEO_FORMAT_480I = "VIDEO_FORMAT_480I"; + field public static final String VIDEO_FORMAT_480P = "VIDEO_FORMAT_480P"; + field public static final String VIDEO_FORMAT_576I = "VIDEO_FORMAT_576I"; + field public static final String VIDEO_FORMAT_576P = "VIDEO_FORMAT_576P"; + field public static final String VIDEO_FORMAT_720P = "VIDEO_FORMAT_720P"; + field public static final String VIDEO_RESOLUTION_ED = "VIDEO_RESOLUTION_ED"; + field public static final String VIDEO_RESOLUTION_FHD = "VIDEO_RESOLUTION_FHD"; + field public static final String VIDEO_RESOLUTION_HD = "VIDEO_RESOLUTION_HD"; + field public static final String VIDEO_RESOLUTION_SD = "VIDEO_RESOLUTION_SD"; + field public static final String VIDEO_RESOLUTION_UHD = "VIDEO_RESOLUTION_UHD"; + } + + public static final class TvContract.Channels.Logo { + field public static final String CONTENT_DIRECTORY = "logo"; + } + + public static final class TvContract.PreviewPrograms implements android.media.tv.TvContract.BaseTvColumns { + field public static final int ASPECT_RATIO_16_9 = 0; // 0x0 + field public static final int ASPECT_RATIO_1_1 = 3; // 0x3 + field public static final int ASPECT_RATIO_2_3 = 4; // 0x4 + field public static final int ASPECT_RATIO_3_2 = 1; // 0x1 + field public static final int ASPECT_RATIO_4_3 = 2; // 0x2 + field public static final int AVAILABILITY_AVAILABLE = 0; // 0x0 + field public static final int AVAILABILITY_FREE_WITH_SUBSCRIPTION = 1; // 0x1 + field public static final int AVAILABILITY_PAID_CONTENT = 2; // 0x2 + field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language"; + field public static final String COLUMN_AUTHOR = "author"; + field public static final String COLUMN_AVAILABILITY = "availability"; + field public static final String COLUMN_BROWSABLE = "browsable"; + field public static final String COLUMN_CANONICAL_GENRE = "canonical_genre"; + field public static final String COLUMN_CHANNEL_ID = "channel_id"; + field public static final String COLUMN_CONTENT_ID = "content_id"; + field public static final String COLUMN_CONTENT_RATING = "content_rating"; + field public static final String COLUMN_DURATION_MILLIS = "duration_millis"; + field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis"; + field public static final String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; + field public static final String COLUMN_EPISODE_TITLE = "episode_title"; + field public static final String COLUMN_INTENT_URI = "intent_uri"; + field public static final String COLUMN_INTERACTION_COUNT = "interaction_count"; + field public static final String COLUMN_INTERACTION_TYPE = "interaction_type"; + field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; + field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; + field public static final String COLUMN_ITEM_COUNT = "item_count"; + field public static final String COLUMN_LAST_PLAYBACK_POSITION_MILLIS = "last_playback_position_millis"; + field public static final String COLUMN_LIVE = "live"; + field public static final String COLUMN_LOGO_URI = "logo_uri"; + field public static final String COLUMN_LONG_DESCRIPTION = "long_description"; + field public static final String COLUMN_OFFER_PRICE = "offer_price"; + field public static final String COLUMN_POSTER_ART_ASPECT_RATIO = "poster_art_aspect_ratio"; + field public static final String COLUMN_POSTER_ART_URI = "poster_art_uri"; + field public static final String COLUMN_PREVIEW_VIDEO_URI = "preview_video_uri"; + field public static final String COLUMN_RELEASE_DATE = "release_date"; + field public static final String COLUMN_REVIEW_RATING = "review_rating"; + field public static final String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; + field public static final String COLUMN_SEARCHABLE = "searchable"; + field public static final String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; + field public static final String COLUMN_SEASON_TITLE = "season_title"; + field public static final String COLUMN_SERIES_ID = "series_id"; + field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; + field public static final String COLUMN_SPLIT_ID = "split_id"; + field public static final String COLUMN_STARTING_PRICE = "starting_price"; + field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; + field public static final String COLUMN_THUMBNAIL_ASPECT_RATIO = "poster_thumbnail_aspect_ratio"; + field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; + field public static final String COLUMN_TITLE = "title"; + field public static final String COLUMN_TRANSIENT = "transient"; + field public static final String COLUMN_TYPE = "type"; + field public static final String COLUMN_VERSION_NUMBER = "version_number"; + field public static final String COLUMN_VIDEO_HEIGHT = "video_height"; + field public static final String COLUMN_VIDEO_WIDTH = "video_width"; + field public static final String COLUMN_WEIGHT = "weight"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/preview_program"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/preview_program"; + field public static final android.net.Uri CONTENT_URI; + field public static final int INTERACTION_TYPE_FANS = 3; // 0x3 + field public static final int INTERACTION_TYPE_FOLLOWERS = 2; // 0x2 + field public static final int INTERACTION_TYPE_LIKES = 4; // 0x4 + field public static final int INTERACTION_TYPE_LISTENS = 1; // 0x1 + field public static final int INTERACTION_TYPE_THUMBS = 5; // 0x5 + field public static final int INTERACTION_TYPE_VIEWERS = 6; // 0x6 + field public static final int INTERACTION_TYPE_VIEWS = 0; // 0x0 + field public static final int REVIEW_RATING_STYLE_PERCENTAGE = 2; // 0x2 + field public static final int REVIEW_RATING_STYLE_STARS = 0; // 0x0 + field public static final int REVIEW_RATING_STYLE_THUMBS_UP_DOWN = 1; // 0x1 + field public static final int TYPE_ALBUM = 8; // 0x8 + field public static final int TYPE_ARTIST = 9; // 0x9 + field public static final int TYPE_CHANNEL = 6; // 0x6 + field public static final int TYPE_CLIP = 4; // 0x4 + field public static final int TYPE_EVENT = 5; // 0x5 + field public static final int TYPE_MOVIE = 0; // 0x0 + field public static final int TYPE_PLAYLIST = 10; // 0xa + field public static final int TYPE_STATION = 11; // 0xb + field public static final int TYPE_TRACK = 7; // 0x7 + field public static final int TYPE_TV_EPISODE = 3; // 0x3 + field public static final int TYPE_TV_SEASON = 2; // 0x2 + field public static final int TYPE_TV_SERIES = 1; // 0x1 + } + + public static final class TvContract.Programs implements android.media.tv.TvContract.BaseTvColumns { + field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language"; + field public static final String COLUMN_BROADCAST_GENRE = "broadcast_genre"; + field public static final String COLUMN_CANONICAL_GENRE = "canonical_genre"; + field public static final String COLUMN_CHANNEL_ID = "channel_id"; + field public static final String COLUMN_CONTENT_RATING = "content_rating"; + field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis"; + field public static final String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; + field @Deprecated public static final String COLUMN_EPISODE_NUMBER = "episode_number"; + field public static final String COLUMN_EPISODE_TITLE = "episode_title"; + field public static final String COLUMN_EVENT_ID = "event_id"; + field public static final String COLUMN_GLOBAL_CONTENT_ID = "global_content_id"; + field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; + field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; + field public static final String COLUMN_LONG_DESCRIPTION = "long_description"; + field public static final String COLUMN_MULTI_SERIES_ID = "multi_series_id"; + field public static final String COLUMN_POSTER_ART_URI = "poster_art_uri"; + field public static final String COLUMN_RECORDING_PROHIBITED = "recording_prohibited"; + field public static final String COLUMN_REVIEW_RATING = "review_rating"; + field public static final String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; + field public static final String COLUMN_SCRAMBLED = "scrambled"; + field public static final String COLUMN_SEARCHABLE = "searchable"; + field public static final String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; + field @Deprecated public static final String COLUMN_SEASON_NUMBER = "season_number"; + field public static final String COLUMN_SEASON_TITLE = "season_title"; + field public static final String COLUMN_SERIES_ID = "series_id"; + field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; + field public static final String COLUMN_SPLIT_ID = "split_id"; + field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; + field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; + field public static final String COLUMN_TITLE = "title"; + field public static final String COLUMN_VERSION_NUMBER = "version_number"; + field public static final String COLUMN_VIDEO_HEIGHT = "video_height"; + field public static final String COLUMN_VIDEO_WIDTH = "video_width"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/program"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/program"; + field public static final android.net.Uri CONTENT_URI; + field public static final int REVIEW_RATING_STYLE_PERCENTAGE = 2; // 0x2 + field public static final int REVIEW_RATING_STYLE_STARS = 0; // 0x0 + field public static final int REVIEW_RATING_STYLE_THUMBS_UP_DOWN = 1; // 0x1 + } + + public static final class TvContract.Programs.Genres { + method public static String[] decode(@NonNull String); + method public static String encode(@NonNull java.lang.String...); + method public static boolean isCanonical(String); + field public static final String ANIMAL_WILDLIFE = "ANIMAL_WILDLIFE"; + field public static final String ARTS = "ARTS"; + field public static final String COMEDY = "COMEDY"; + field public static final String DRAMA = "DRAMA"; + field public static final String EDUCATION = "EDUCATION"; + field public static final String ENTERTAINMENT = "ENTERTAINMENT"; + field public static final String FAMILY_KIDS = "FAMILY_KIDS"; + field public static final String GAMING = "GAMING"; + field public static final String LIFE_STYLE = "LIFE_STYLE"; + field public static final String MOVIES = "MOVIES"; + field public static final String MUSIC = "MUSIC"; + field public static final String NEWS = "NEWS"; + field public static final String PREMIER = "PREMIER"; + field public static final String SHOPPING = "SHOPPING"; + field public static final String SPORTS = "SPORTS"; + field public static final String TECH_SCIENCE = "TECH_SCIENCE"; + field public static final String TRAVEL = "TRAVEL"; + } + + public static final class TvContract.RecordedPrograms implements android.media.tv.TvContract.BaseTvColumns { + field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language"; + field public static final String COLUMN_BROADCAST_GENRE = "broadcast_genre"; + field public static final String COLUMN_CANONICAL_GENRE = "canonical_genre"; + field public static final String COLUMN_CHANNEL_ID = "channel_id"; + field public static final String COLUMN_CONTENT_RATING = "content_rating"; + field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis"; + field public static final String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; + field public static final String COLUMN_EPISODE_TITLE = "episode_title"; + field public static final String COLUMN_INPUT_ID = "input_id"; + field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; + field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; + field public static final String COLUMN_LONG_DESCRIPTION = "long_description"; + field public static final String COLUMN_MULTI_SERIES_ID = "multi_series_id"; + field public static final String COLUMN_POSTER_ART_URI = "poster_art_uri"; + field public static final String COLUMN_RECORDING_DATA_BYTES = "recording_data_bytes"; + field public static final String COLUMN_RECORDING_DATA_URI = "recording_data_uri"; + field public static final String COLUMN_RECORDING_DURATION_MILLIS = "recording_duration_millis"; + field public static final String COLUMN_RECORDING_EXPIRE_TIME_UTC_MILLIS = "recording_expire_time_utc_millis"; + field public static final String COLUMN_REVIEW_RATING = "review_rating"; + field public static final String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; + field public static final String COLUMN_SEARCHABLE = "searchable"; + field public static final String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; + field public static final String COLUMN_SEASON_TITLE = "season_title"; + field public static final String COLUMN_SERIES_ID = "series_id"; + field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; + field public static final String COLUMN_SPLIT_ID = "split_id"; + field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; + field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; + field public static final String COLUMN_TITLE = "title"; + field public static final String COLUMN_VERSION_NUMBER = "version_number"; + field public static final String COLUMN_VIDEO_HEIGHT = "video_height"; + field public static final String COLUMN_VIDEO_WIDTH = "video_width"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/recorded_program"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/recorded_program"; + field public static final android.net.Uri CONTENT_URI; + field public static final int REVIEW_RATING_STYLE_PERCENTAGE = 2; // 0x2 + field public static final int REVIEW_RATING_STYLE_STARS = 0; // 0x0 + field public static final int REVIEW_RATING_STYLE_THUMBS_UP_DOWN = 1; // 0x1 + } + + public static final class TvContract.WatchNextPrograms implements android.media.tv.TvContract.BaseTvColumns { + field public static final int ASPECT_RATIO_16_9 = 0; // 0x0 + field public static final int ASPECT_RATIO_1_1 = 3; // 0x3 + field public static final int ASPECT_RATIO_2_3 = 4; // 0x4 + field public static final int ASPECT_RATIO_3_2 = 1; // 0x1 + field public static final int ASPECT_RATIO_4_3 = 2; // 0x2 + field public static final int AVAILABILITY_AVAILABLE = 0; // 0x0 + field public static final int AVAILABILITY_FREE_WITH_SUBSCRIPTION = 1; // 0x1 + field public static final int AVAILABILITY_PAID_CONTENT = 2; // 0x2 + field public static final String COLUMN_AUDIO_LANGUAGE = "audio_language"; + field public static final String COLUMN_AUTHOR = "author"; + field public static final String COLUMN_AVAILABILITY = "availability"; + field public static final String COLUMN_BROWSABLE = "browsable"; + field public static final String COLUMN_CANONICAL_GENRE = "canonical_genre"; + field public static final String COLUMN_CONTENT_ID = "content_id"; + field public static final String COLUMN_CONTENT_RATING = "content_rating"; + field public static final String COLUMN_DURATION_MILLIS = "duration_millis"; + field public static final String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis"; + field public static final String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; + field public static final String COLUMN_EPISODE_TITLE = "episode_title"; + field public static final String COLUMN_INTENT_URI = "intent_uri"; + field public static final String COLUMN_INTERACTION_COUNT = "interaction_count"; + field public static final String COLUMN_INTERACTION_TYPE = "interaction_type"; + field public static final String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG3 = "internal_provider_flag3"; + field public static final String COLUMN_INTERNAL_PROVIDER_FLAG4 = "internal_provider_flag4"; + field public static final String COLUMN_INTERNAL_PROVIDER_ID = "internal_provider_id"; + field public static final String COLUMN_ITEM_COUNT = "item_count"; + field public static final String COLUMN_LAST_ENGAGEMENT_TIME_UTC_MILLIS = "last_engagement_time_utc_millis"; + field public static final String COLUMN_LAST_PLAYBACK_POSITION_MILLIS = "last_playback_position_millis"; + field public static final String COLUMN_LIVE = "live"; + field public static final String COLUMN_LOGO_URI = "logo_uri"; + field public static final String COLUMN_LONG_DESCRIPTION = "long_description"; + field public static final String COLUMN_OFFER_PRICE = "offer_price"; + field public static final String COLUMN_POSTER_ART_ASPECT_RATIO = "poster_art_aspect_ratio"; + field public static final String COLUMN_POSTER_ART_URI = "poster_art_uri"; + field public static final String COLUMN_PREVIEW_VIDEO_URI = "preview_video_uri"; + field public static final String COLUMN_RELEASE_DATE = "release_date"; + field public static final String COLUMN_REVIEW_RATING = "review_rating"; + field public static final String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; + field public static final String COLUMN_SEARCHABLE = "searchable"; + field public static final String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; + field public static final String COLUMN_SEASON_TITLE = "season_title"; + field public static final String COLUMN_SERIES_ID = "series_id"; + field public static final String COLUMN_SHORT_DESCRIPTION = "short_description"; + field public static final String COLUMN_SPLIT_ID = "split_id"; + field public static final String COLUMN_STARTING_PRICE = "starting_price"; + field public static final String COLUMN_START_TIME_UTC_MILLIS = "start_time_utc_millis"; + field public static final String COLUMN_THUMBNAIL_ASPECT_RATIO = "poster_thumbnail_aspect_ratio"; + field public static final String COLUMN_THUMBNAIL_URI = "thumbnail_uri"; + field public static final String COLUMN_TITLE = "title"; + field public static final String COLUMN_TRANSIENT = "transient"; + field public static final String COLUMN_TYPE = "type"; + field public static final String COLUMN_VERSION_NUMBER = "version_number"; + field public static final String COLUMN_VIDEO_HEIGHT = "video_height"; + field public static final String COLUMN_VIDEO_WIDTH = "video_width"; + field public static final String COLUMN_WATCH_NEXT_TYPE = "watch_next_type"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/watch_next_program"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/watch_next_program"; + field public static final android.net.Uri CONTENT_URI; + field public static final int INTERACTION_TYPE_FANS = 3; // 0x3 + field public static final int INTERACTION_TYPE_FOLLOWERS = 2; // 0x2 + field public static final int INTERACTION_TYPE_LIKES = 4; // 0x4 + field public static final int INTERACTION_TYPE_LISTENS = 1; // 0x1 + field public static final int INTERACTION_TYPE_THUMBS = 5; // 0x5 + field public static final int INTERACTION_TYPE_VIEWERS = 6; // 0x6 + field public static final int INTERACTION_TYPE_VIEWS = 0; // 0x0 + field public static final int REVIEW_RATING_STYLE_PERCENTAGE = 2; // 0x2 + field public static final int REVIEW_RATING_STYLE_STARS = 0; // 0x0 + field public static final int REVIEW_RATING_STYLE_THUMBS_UP_DOWN = 1; // 0x1 + field public static final int TYPE_ALBUM = 8; // 0x8 + field public static final int TYPE_ARTIST = 9; // 0x9 + field public static final int TYPE_CHANNEL = 6; // 0x6 + field public static final int TYPE_CLIP = 4; // 0x4 + field public static final int TYPE_EVENT = 5; // 0x5 + field public static final int TYPE_MOVIE = 0; // 0x0 + field public static final int TYPE_PLAYLIST = 10; // 0xa + field public static final int TYPE_STATION = 11; // 0xb + field public static final int TYPE_TRACK = 7; // 0x7 + field public static final int TYPE_TV_EPISODE = 3; // 0x3 + field public static final int TYPE_TV_SEASON = 2; // 0x2 + field public static final int TYPE_TV_SERIES = 1; // 0x1 + field public static final int WATCH_NEXT_TYPE_CONTINUE = 0; // 0x0 + field public static final int WATCH_NEXT_TYPE_NEW = 2; // 0x2 + field public static final int WATCH_NEXT_TYPE_NEXT = 1; // 0x1 + field public static final int WATCH_NEXT_TYPE_WATCHLIST = 3; // 0x3 + } + + public final class TvInputInfo implements android.os.Parcelable { + method public boolean canPauseRecording(); + method public boolean canRecord(); + method @Deprecated public android.content.Intent createSettingsIntent(); + method public android.content.Intent createSetupIntent(); + method public int describeContents(); + method public android.os.Bundle getExtras(); + method public String getId(); + method public String getParentId(); + method public android.content.pm.ServiceInfo getServiceInfo(); + method public int getTunerCount(); + method public int getType(); + method public boolean isHidden(android.content.Context); + method public boolean isPassthroughInput(); + method public CharSequence loadCustomLabel(android.content.Context); + method public android.graphics.drawable.Drawable loadIcon(@NonNull android.content.Context); + method public CharSequence loadLabel(@NonNull android.content.Context); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String EXTRA_INPUT_ID = "android.media.tv.extra.INPUT_ID"; + field public static final int TYPE_COMPONENT = 1004; // 0x3ec + field public static final int TYPE_COMPOSITE = 1001; // 0x3e9 + field public static final int TYPE_DISPLAY_PORT = 1008; // 0x3f0 + field public static final int TYPE_DVI = 1006; // 0x3ee + field public static final int TYPE_HDMI = 1007; // 0x3ef + field public static final int TYPE_OTHER = 1000; // 0x3e8 + field public static final int TYPE_SCART = 1003; // 0x3eb + field public static final int TYPE_SVIDEO = 1002; // 0x3ea + field public static final int TYPE_TUNER = 0; // 0x0 + field public static final int TYPE_VGA = 1005; // 0x3ed + } + + public static final class TvInputInfo.Builder { + ctor public TvInputInfo.Builder(android.content.Context, android.content.ComponentName); + method public android.media.tv.TvInputInfo build(); + method @NonNull public android.media.tv.TvInputInfo.Builder setCanPauseRecording(boolean); + method public android.media.tv.TvInputInfo.Builder setCanRecord(boolean); + method public android.media.tv.TvInputInfo.Builder setExtras(android.os.Bundle); + method public android.media.tv.TvInputInfo.Builder setTunerCount(int); + } + + public final class TvInputManager { + method public java.util.List getBlockedRatings(); + method public int getInputState(@NonNull String); + method @Nullable public android.media.tv.TvInputInfo getTvInputInfo(@NonNull String); + method public java.util.List getTvInputList(); + method public boolean isParentalControlsEnabled(); + method public boolean isRatingBlocked(@NonNull android.media.tv.TvContentRating); + method public void registerCallback(@NonNull android.media.tv.TvInputManager.TvInputCallback, @NonNull android.os.Handler); + method public void unregisterCallback(@NonNull android.media.tv.TvInputManager.TvInputCallback); + method public void updateTvInputInfo(@NonNull android.media.tv.TvInputInfo); + field public static final String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED"; + field public static final String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED"; + field public static final String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS"; + field public static final String ACTION_SETUP_INPUTS = "android.media.tv.action.SETUP_INPUTS"; + field public static final String ACTION_VIEW_RECORDING_SCHEDULES = "android.media.tv.action.VIEW_RECORDING_SCHEDULES"; + field public static final int BROADCAST_INFO_STREAM_EVENT = 5; // 0x5 + field public static final int BROADCAST_INFO_TYPE_COMMAND = 7; // 0x7 + field public static final int BROADCAST_INFO_TYPE_DSMCC = 6; // 0x6 + field public static final int BROADCAST_INFO_TYPE_PES = 4; // 0x4 + field public static final int BROADCAST_INFO_TYPE_SECTION = 3; // 0x3 + field public static final int BROADCAST_INFO_TYPE_TABLE = 2; // 0x2 + field public static final int BROADCAST_INFO_TYPE_TIMELINE = 8; // 0x8 + field public static final int BROADCAST_INFO_TYPE_TS = 1; // 0x1 + field public static final int INPUT_STATE_CONNECTED = 0; // 0x0 + field public static final int INPUT_STATE_CONNECTED_STANDBY = 1; // 0x1 + field public static final int INPUT_STATE_DISCONNECTED = 2; // 0x2 + field public static final String META_DATA_CONTENT_RATING_SYSTEMS = "android.media.tv.metadata.CONTENT_RATING_SYSTEMS"; + field public static final int RECORDING_ERROR_INSUFFICIENT_SPACE = 1; // 0x1 + field public static final int RECORDING_ERROR_RESOURCE_BUSY = 2; // 0x2 + field public static final int RECORDING_ERROR_UNKNOWN = 0; // 0x0 + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_AD_BUFFER = "ad_buffer"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_AD_RESPONSE = "ad_response"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_BROADCAST_INFO_RESPONSE = "broadcast_info_response"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_CHANNEL_URI = "channel_uri"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_TRACKS = "tracks"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_TRACK_ID = "track_id"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_TRACK_TYPE = "track_type"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_TV_MESSAGE_TYPE = "tv_message_type"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_KEY_VIDEO_UNAVAILABLE_REASON = "video_unavailable_reason"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_AD_BUFFER_CONSUMED = "ad_buffer_consumed"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_AD_RESPONSE = "ad_response"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_BROADCAST_INFO_RESPONSE = "broadcast_info_response"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_TRACKS_CHANGED = "tracks_changed"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_TRACK_SELECTED = "track_selected"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_TUNED = "tuned"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_TV_MESSAGE = "tv_message"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_VIDEO_AVAILABLE = "video_available"; + field @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public static final String SESSION_DATA_TYPE_VIDEO_UNAVAILABLE = "video_unavailable"; + field public static final int SIGNAL_STRENGTH_LOST = 1; // 0x1 + field public static final int SIGNAL_STRENGTH_STRONG = 3; // 0x3 + field public static final int SIGNAL_STRENGTH_WEAK = 2; // 0x2 + field public static final long TIME_SHIFT_INVALID_TIME = -9223372036854775808L; // 0x8000000000000000L + field public static final int TIME_SHIFT_MODE_AUTO = 4; // 0x4 + field public static final int TIME_SHIFT_MODE_LOCAL = 2; // 0x2 + field public static final int TIME_SHIFT_MODE_NETWORK = 3; // 0x3 + field public static final int TIME_SHIFT_MODE_OFF = 1; // 0x1 + field public static final int TIME_SHIFT_STATUS_AVAILABLE = 3; // 0x3 + field public static final int TIME_SHIFT_STATUS_UNAVAILABLE = 2; // 0x2 + field public static final int TIME_SHIFT_STATUS_UNKNOWN = 0; // 0x0 + field public static final int TIME_SHIFT_STATUS_UNSUPPORTED = 1; // 0x1 + field public static final long TV_MESSAGE_GROUP_ID_NONE = -1L; // 0xffffffffffffffffL + field public static final String TV_MESSAGE_KEY_GROUP_ID = "android.media.tv.TvInputManager.group_id"; + field public static final String TV_MESSAGE_KEY_RAW_DATA = "android.media.tv.TvInputManager.raw_data"; + field public static final String TV_MESSAGE_KEY_STREAM_ID = "android.media.tv.TvInputManager.stream_id"; + field public static final String TV_MESSAGE_KEY_SUBTYPE = "android.media.tv.TvInputManager.subtype"; + field public static final String TV_MESSAGE_SUBTYPE_CC_608E = "CTA 608-E"; + field public static final String TV_MESSAGE_SUBTYPE_WATERMARKING_A335 = "ATSC A/335"; + field public static final int TV_MESSAGE_TYPE_CLOSED_CAPTION = 2; // 0x2 + field public static final int TV_MESSAGE_TYPE_OTHER = 1000; // 0x3e8 + field public static final int TV_MESSAGE_TYPE_WATERMARK = 1; // 0x1 + field public static final int VIDEO_UNAVAILABLE_REASON_AUDIO_ONLY = 4; // 0x4 + field public static final int VIDEO_UNAVAILABLE_REASON_BUFFERING = 3; // 0x3 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_BLACKOUT = 16; // 0x10 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_CARD_INVALID = 15; // 0xf + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_CARD_MUTE = 14; // 0xe + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_INSUFFICIENT_OUTPUT_PROTECTION = 7; // 0x7 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_LICENSE_EXPIRED = 10; // 0xa + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_NEED_ACTIVATION = 11; // 0xb + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_NEED_PAIRING = 12; // 0xc + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_NO_CARD = 13; // 0xd + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_PVR_RECORDING_NOT_ALLOWED = 8; // 0x8 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_REBOOTING = 17; // 0x11 + field public static final int VIDEO_UNAVAILABLE_REASON_CAS_UNKNOWN = 18; // 0x12 + field public static final int VIDEO_UNAVAILABLE_REASON_INSUFFICIENT_RESOURCE = 6; // 0x6 + field public static final int VIDEO_UNAVAILABLE_REASON_NOT_CONNECTED = 5; // 0x5 + field @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public static final int VIDEO_UNAVAILABLE_REASON_STOPPED = 19; // 0x13 + field public static final int VIDEO_UNAVAILABLE_REASON_TUNING = 1; // 0x1 + field public static final int VIDEO_UNAVAILABLE_REASON_UNKNOWN = 0; // 0x0 + field public static final int VIDEO_UNAVAILABLE_REASON_WEAK_SIGNAL = 2; // 0x2 + } + + public abstract static class TvInputManager.TvInputCallback { + ctor public TvInputManager.TvInputCallback(); + method public void onInputAdded(String); + method public void onInputRemoved(String); + method public void onInputStateChanged(String, int); + method public void onInputUpdated(String); + method public void onTvInputInfoUpdated(android.media.tv.TvInputInfo); + } + + public abstract class TvInputService extends android.app.Service { + ctor public TvInputService(); + method public final android.os.IBinder onBind(android.content.Intent); + method @Nullable public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(@NonNull String); + method @Nullable public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(@NonNull String, @NonNull String); + method @Nullable public abstract android.media.tv.TvInputService.Session onCreateSession(@NonNull String); + method @Nullable public android.media.tv.TvInputService.Session onCreateSession(@NonNull String, @NonNull String); + method @Nullable public android.media.tv.TvInputService.Session onCreateSession(@NonNull String, @NonNull String, @NonNull android.content.AttributionSource); + field public static final int PRIORITY_HINT_USE_CASE_TYPE_BACKGROUND = 100; // 0x64 + field public static final int PRIORITY_HINT_USE_CASE_TYPE_LIVE = 400; // 0x190 + field public static final int PRIORITY_HINT_USE_CASE_TYPE_PLAYBACK = 300; // 0x12c + field public static final int PRIORITY_HINT_USE_CASE_TYPE_RECORD = 500; // 0x1f4 + field public static final int PRIORITY_HINT_USE_CASE_TYPE_SCAN = 200; // 0xc8 + field public static final String SERVICE_INTERFACE = "android.media.tv.TvInputService"; + field public static final String SERVICE_META_DATA = "android.media.tv.input"; + } + + public abstract static class TvInputService.HardwareSession extends android.media.tv.TvInputService.Session { + ctor public TvInputService.HardwareSession(android.content.Context); + method public abstract String getHardwareInputId(); + method public void onHardwareVideoAvailable(); + method public void onHardwareVideoUnavailable(int); + method public final boolean onSetSurface(android.view.Surface); + } + + public abstract static class TvInputService.RecordingSession { + ctor public TvInputService.RecordingSession(android.content.Context); + method public void notifyError(int); + method public void notifyRecordingStopped(android.net.Uri); + method public void notifyTuned(android.net.Uri); + method public void onAppPrivateCommand(@NonNull String, android.os.Bundle); + method public void onPauseRecording(@NonNull android.os.Bundle); + method public abstract void onRelease(); + method public void onResumeRecording(@NonNull android.os.Bundle); + method public abstract void onStartRecording(@Nullable android.net.Uri); + method public void onStartRecording(@Nullable android.net.Uri, @NonNull android.os.Bundle); + method public abstract void onStopRecording(); + method public abstract void onTune(android.net.Uri); + method public void onTune(android.net.Uri, android.os.Bundle); + } + + public abstract static class TvInputService.Session implements android.view.KeyEvent.Callback { + ctor public TvInputService.Session(android.content.Context); + method public void layoutSurface(int, int, int, int); + method public void notifyAdBufferConsumed(@NonNull android.media.tv.AdBuffer); + method public void notifyAdResponse(@NonNull android.media.tv.AdResponse); + method public void notifyAitInfoUpdated(@NonNull android.media.tv.AitInfo); + method public void notifyAudioPresentationChanged(@NonNull java.util.List); + method public void notifyAudioPresentationSelected(int, int); + method public void notifyAvailableSpeeds(@NonNull float[]); + method public void notifyBroadcastInfoResponse(@NonNull android.media.tv.BroadcastInfoResponse); + method public void notifyChannelRetuned(android.net.Uri); + method public void notifyContentAllowed(); + method public void notifyContentBlocked(@NonNull android.media.tv.TvContentRating); + method public void notifyCueingMessageAvailability(boolean); + method public void notifySignalStrength(int); + method public void notifyTimeShiftMode(int); + method public void notifyTimeShiftStatusChanged(int); + method public void notifyTrackSelected(int, String); + method public void notifyTracksChanged(java.util.List); + method public void notifyTuned(@NonNull android.net.Uri); + method public void notifyTvMessage(int, @NonNull android.os.Bundle); + method public void notifyVideoAvailable(); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void notifyVideoFreezeUpdated(boolean); + method public void notifyVideoUnavailable(int); + method public void onAdBufferReady(@NonNull android.media.tv.AdBuffer); + method public void onAppPrivateCommand(@NonNull String, android.os.Bundle); + method public android.view.View onCreateOverlayView(); + method public boolean onGenericMotionEvent(android.view.MotionEvent); + method public boolean onKeyDown(int, android.view.KeyEvent); + method public boolean onKeyLongPress(int, android.view.KeyEvent); + method public boolean onKeyMultiple(int, int, android.view.KeyEvent); + method public boolean onKeyUp(int, android.view.KeyEvent); + method public void onOverlayViewSizeChanged(int, int); + method public abstract void onRelease(); + method public void onRemoveBroadcastInfo(int); + method public void onRequestAd(@NonNull android.media.tv.AdRequest); + method public void onRequestBroadcastInfo(@NonNull android.media.tv.BroadcastInfoRequest); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onResumePlayback(); + method public boolean onSelectAudioPresentation(int, int); + method public boolean onSelectTrack(int, @Nullable String); + method public abstract void onSetCaptionEnabled(boolean); + method public void onSetInteractiveAppNotificationEnabled(boolean); + method public abstract void onSetStreamVolume(@FloatRange(from=0.0, to=1.0) float); + method public abstract boolean onSetSurface(@Nullable android.view.Surface); + method public void onSetTvMessageEnabled(int, boolean); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onStopPlayback(int); + method public void onSurfaceChanged(int, int, int); + method public long onTimeShiftGetCurrentPosition(); + method public long onTimeShiftGetStartPosition(); + method public void onTimeShiftPause(); + method public void onTimeShiftPlay(android.net.Uri); + method public void onTimeShiftResume(); + method public void onTimeShiftSeekTo(long); + method public void onTimeShiftSetMode(int); + method public void onTimeShiftSetPlaybackParams(android.media.PlaybackParams); + method public boolean onTouchEvent(android.view.MotionEvent); + method public boolean onTrackballEvent(android.view.MotionEvent); + method public abstract boolean onTune(android.net.Uri); + method public boolean onTune(android.net.Uri, android.os.Bundle); + method @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public void onTvAdSessionData(@NonNull String, @NonNull android.os.Bundle); + method public void onTvMessage(int, @NonNull android.os.Bundle); + method public void onUnblockContent(android.media.tv.TvContentRating); + method @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public void sendTvInputSessionData(@NonNull String, @NonNull android.os.Bundle); + method public void setOverlayViewEnabled(boolean); + } + + public class TvRecordingClient { + ctor public TvRecordingClient(android.content.Context, String, @NonNull android.media.tv.TvRecordingClient.RecordingCallback, android.os.Handler); + method public void pauseRecording(); + method public void pauseRecording(@NonNull android.os.Bundle); + method public void release(); + method public void resumeRecording(); + method public void resumeRecording(@NonNull android.os.Bundle); + method public void sendAppPrivateCommand(@NonNull String, android.os.Bundle); + method public void setTvInteractiveAppView(@Nullable android.media.tv.interactive.TvInteractiveAppView, @Nullable String); + method public void startRecording(@Nullable android.net.Uri); + method public void startRecording(@Nullable android.net.Uri, @NonNull android.os.Bundle); + method public void stopRecording(); + method public void tune(String, android.net.Uri); + method public void tune(String, android.net.Uri, android.os.Bundle); + } + + public abstract static class TvRecordingClient.RecordingCallback { + ctor public TvRecordingClient.RecordingCallback(); + method public void onConnectionFailed(String); + method public void onDisconnected(String); + method public void onError(int); + method public void onRecordingStopped(android.net.Uri); + method public void onTuned(android.net.Uri); + } + + public final class TvRecordingInfo implements android.os.Parcelable { + ctor public TvRecordingInfo(@NonNull String, long, long, int, @NonNull String, @NonNull String, long, long, @NonNull android.net.Uri, @Nullable android.net.Uri, @NonNull java.util.List, @Nullable android.net.Uri, long, long); + method public int describeContents(); + method @NonNull public android.net.Uri getChannelUri(); + method @NonNull public java.util.List getContentRatings(); + method @NonNull public String getDescription(); + method public long getEndPaddingMillis(); + method @NonNull public String getName(); + method @Nullable public android.net.Uri getProgramUri(); + method @IntRange(from=0xffffffff) public long getRecordingDurationMillis(); + method @NonNull public String getRecordingId(); + method @IntRange(from=0xffffffff) public long getRecordingStartTimeMillis(); + method @Nullable public android.net.Uri getRecordingUri(); + method public int getRepeatDays(); + method @IntRange(from=0) public long getScheduledDurationMillis(); + method @IntRange(from=0) public long getScheduledStartTimeMillis(); + method public long getStartPaddingMillis(); + method public void setDescription(@NonNull String); + method public void setName(@NonNull String); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FRIDAY = 32; // 0x20 + field public static final int MONDAY = 2; // 0x2 + field public static final int RECORDING_ALL = 3; // 0x3 + field public static final int RECORDING_IN_PROGRESS = 2; // 0x2 + field public static final int RECORDING_SCHEDULED = 1; // 0x1 + field public static final int SATURDAY = 64; // 0x40 + field public static final int SUNDAY = 1; // 0x1 + field public static final int THURSDAY = 16; // 0x10 + field public static final int TUESDAY = 4; // 0x4 + field public static final int WEDNESDAY = 8; // 0x8 + } + + public final class TvTrackInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getAudioChannelCount(); + method public int getAudioSampleRate(); + method public CharSequence getDescription(); + method @Nullable public String getEncoding(); + method public android.os.Bundle getExtra(); + method public String getId(); + method public String getLanguage(); + method public int getType(); + method public byte getVideoActiveFormatDescription(); + method public float getVideoFrameRate(); + method public int getVideoHeight(); + method public float getVideoPixelAspectRatio(); + method public int getVideoWidth(); + method public boolean isAudioDescription(); + method public boolean isEncrypted(); + method public boolean isHardOfHearing(); + method public boolean isSpokenSubtitle(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_AUDIO = 0; // 0x0 + field public static final int TYPE_SUBTITLE = 2; // 0x2 + field public static final int TYPE_VIDEO = 1; // 0x1 + } + + public static final class TvTrackInfo.Builder { + ctor public TvTrackInfo.Builder(int, @NonNull String); + method @NonNull public android.media.tv.TvTrackInfo build(); + method @NonNull public android.media.tv.TvTrackInfo.Builder setAudioChannelCount(int); + method @NonNull public android.media.tv.TvTrackInfo.Builder setAudioDescription(boolean); + method @NonNull public android.media.tv.TvTrackInfo.Builder setAudioSampleRate(int); + method @NonNull public android.media.tv.TvTrackInfo.Builder setDescription(@NonNull CharSequence); + method @NonNull public android.media.tv.TvTrackInfo.Builder setEncoding(@Nullable String); + method @NonNull public android.media.tv.TvTrackInfo.Builder setEncrypted(boolean); + method @NonNull public android.media.tv.TvTrackInfo.Builder setExtra(@NonNull android.os.Bundle); + method @NonNull public android.media.tv.TvTrackInfo.Builder setHardOfHearing(boolean); + method @NonNull public android.media.tv.TvTrackInfo.Builder setLanguage(@NonNull String); + method @NonNull public android.media.tv.TvTrackInfo.Builder setSpokenSubtitle(boolean); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoActiveFormatDescription(byte); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoFrameRate(float); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoHeight(int); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoPixelAspectRatio(float); + method @NonNull public android.media.tv.TvTrackInfo.Builder setVideoWidth(int); + } + + public class TvView extends android.view.ViewGroup { + ctor public TvView(android.content.Context); + ctor public TvView(android.content.Context, android.util.AttributeSet); + ctor public TvView(android.content.Context, android.util.AttributeSet, int); + method public boolean dispatchUnhandledInputEvent(android.view.InputEvent); + method @NonNull public java.util.List getAudioPresentations(); + method public String getSelectedTrack(int); + method public java.util.List getTracks(int); + method protected void onLayout(boolean, int, int, int, int); + method public boolean onUnhandledInputEvent(android.view.InputEvent); + method public void overrideTvAppAttributionSource(@NonNull android.content.AttributionSource); + method public void reset(); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void resumePlayback(); + method public void selectAudioPresentation(int, int); + method public void selectTrack(int, String); + method public void sendAppPrivateCommand(@NonNull String, android.os.Bundle); + method public void setCallback(@Nullable android.media.tv.TvView.TvInputCallback); + method public void setCaptionEnabled(boolean); + method public void setInteractiveAppNotificationEnabled(boolean); + method public void setOnUnhandledInputEventListener(android.media.tv.TvView.OnUnhandledInputEventListener); + method public void setStreamVolume(@FloatRange(from=0.0, to=1.0) float); + method public void setTimeShiftPositionCallback(@Nullable android.media.tv.TvView.TimeShiftPositionCallback); + method public void setTvMessageEnabled(int, boolean); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void setVideoFrozen(boolean); + method public void setZOrderMediaOverlay(boolean); + method public void setZOrderOnTop(boolean); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void stopPlayback(int); + method public void timeShiftPause(); + method public void timeShiftPlay(String, android.net.Uri); + method public void timeShiftResume(); + method public void timeShiftSeekTo(long); + method public void timeShiftSetMode(int); + method public void timeShiftSetPlaybackParams(@NonNull android.media.PlaybackParams); + method public void tune(@NonNull String, android.net.Uri); + method public void tune(String, android.net.Uri, android.os.Bundle); + } + + public static interface TvView.OnUnhandledInputEventListener { + method public boolean onUnhandledInputEvent(android.view.InputEvent); + } + + public abstract static class TvView.TimeShiftPositionCallback { + ctor public TvView.TimeShiftPositionCallback(); + method public void onTimeShiftCurrentPositionChanged(String, long); + method public void onTimeShiftStartPositionChanged(String, long); + } + + public abstract static class TvView.TvInputCallback { + ctor public TvView.TvInputCallback(); + method public void onAitInfoUpdated(@NonNull String, @NonNull android.media.tv.AitInfo); + method public void onAudioPresentationSelected(@NonNull String, int, int); + method public void onAudioPresentationsChanged(@NonNull String, @NonNull java.util.List); + method public void onAvailableSpeeds(@NonNull String, @NonNull float[]); + method public void onChannelRetuned(String, android.net.Uri); + method public void onConnectionFailed(String); + method public void onContentAllowed(String); + method public void onContentBlocked(String, android.media.tv.TvContentRating); + method public void onCueingMessageAvailability(@NonNull String, boolean); + method public void onDisconnected(String); + method public void onSignalStrengthUpdated(@NonNull String, int); + method public void onTimeShiftMode(@NonNull String, int); + method public void onTimeShiftStatusChanged(String, int); + method public void onTrackSelected(String, int, String); + method public void onTracksChanged(String, java.util.List); + method public void onTuned(@NonNull String, @NonNull android.net.Uri); + method public void onTvMessage(@NonNull String, int, @NonNull android.os.Bundle); + method public void onVideoAvailable(String); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onVideoFreezeUpdated(@NonNull String, boolean); + method public void onVideoSizeChanged(String, int, int); + method public void onVideoUnavailable(String, int); + } + +} + +package android.media.tv.ad { + + @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public final class TvAdManager { + method @NonNull public java.util.List getTvAdServiceList(); + method public void registerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.ad.TvAdManager.TvAdServiceCallback); + method public void sendAppLinkCommand(@NonNull String, @NonNull android.os.Bundle); + method public void unregisterCallback(@NonNull android.media.tv.ad.TvAdManager.TvAdServiceCallback); + field public static final String ACTION_APP_LINK_COMMAND = "android.media.tv.ad.action.APP_LINK_COMMAND"; + field public static final String APP_LINK_KEY_BACK_URI = "back_uri"; + field public static final String APP_LINK_KEY_CLASS_NAME = "class_name"; + field public static final String APP_LINK_KEY_COMMAND_TYPE = "command_type"; + field public static final String APP_LINK_KEY_PACKAGE_NAME = "package_name"; + field public static final String APP_LINK_KEY_SERVICE_ID = "service_id"; + field public static final int ERROR_BLOCKED = 5; // 0x5 + field public static final int ERROR_ENCRYPTED = 6; // 0x6 + field public static final int ERROR_NONE = 0; // 0x0 + field public static final int ERROR_NOT_SUPPORTED = 2; // 0x2 + field public static final int ERROR_RESOURCE_UNAVAILABLE = 4; // 0x4 + field public static final int ERROR_UNKNOWN = 1; // 0x1 + field public static final int ERROR_UNKNOWN_CHANNEL = 7; // 0x7 + field public static final int ERROR_WEAK_SIGNAL = 3; // 0x3 + field public static final String INTENT_KEY_AD_SERVICE_ID = "ad_service_id"; + field public static final String INTENT_KEY_CHANNEL_URI = "channel_uri"; + field public static final String INTENT_KEY_COMMAND_TYPE = "command_type"; + field public static final String INTENT_KEY_TV_INPUT_ID = "tv_input_id"; + field public static final String SESSION_DATA_KEY_AD_BUFFER = "ad_buffer"; + field public static final String SESSION_DATA_KEY_AD_REQUEST = "ad_request"; + field public static final String SESSION_DATA_KEY_BROADCAST_INFO_REQUEST = "broadcast_info_request"; + field public static final String SESSION_DATA_KEY_REQUEST_ID = "request_id"; + field public static final String SESSION_DATA_TYPE_AD_BUFFER_READY = "ad_buffer_ready"; + field public static final String SESSION_DATA_TYPE_AD_REQUEST = "ad_request"; + field public static final String SESSION_DATA_TYPE_BROADCAST_INFO_REQUEST = "broadcast_info_request"; + field public static final String SESSION_DATA_TYPE_REMOVE_BROADCAST_INFO_REQUEST = "remove_broadcast_info_request"; + field public static final int SESSION_STATE_ERROR = 3; // 0x3 + field public static final int SESSION_STATE_RUNNING = 2; // 0x2 + field public static final int SESSION_STATE_STOPPED = 1; // 0x1 + } + + public abstract static class TvAdManager.TvAdServiceCallback { + ctor public TvAdManager.TvAdServiceCallback(); + method public void onAdServiceAdded(@NonNull String); + method public void onAdServiceRemoved(@NonNull String); + method public void onAdServiceUpdated(@NonNull String); + } + + @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public abstract class TvAdService extends android.app.Service { + ctor public TvAdService(); + method public void onAppLinkCommand(@NonNull android.os.Bundle); + method @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent); + method @Nullable public abstract android.media.tv.ad.TvAdService.Session onCreateSession(@NonNull String, @NonNull String); + field public static final String SERVICE_INTERFACE = "android.media.tv.ad.TvAdService"; + field public static final String SERVICE_META_DATA = "android.media.tv.ad.service"; + } + + public abstract static class TvAdService.Session implements android.view.KeyEvent.Callback { + ctor public TvAdService.Session(@NonNull android.content.Context); + method public boolean isMediaViewEnabled(); + method @CallSuper public void layoutSurface(int, int, int, int); + method @CallSuper public void notifySessionStateChanged(int, int); + method @Nullable public android.view.View onCreateMediaView(); + method public void onCurrentChannelUri(@Nullable android.net.Uri); + method public void onCurrentTvInputId(@Nullable String); + method public void onCurrentVideoBounds(@NonNull android.graphics.Rect); + method public void onError(@NonNull String, @NonNull android.os.Bundle); + method public boolean onGenericMotionEvent(@NonNull android.view.MotionEvent); + method public boolean onKeyDown(int, @Nullable android.view.KeyEvent); + method public boolean onKeyLongPress(int, @Nullable android.view.KeyEvent); + method public boolean onKeyMultiple(int, int, @Nullable android.view.KeyEvent); + method public boolean onKeyUp(int, @Nullable android.view.KeyEvent); + method public void onMediaViewSizeChanged(@Px int, @Px int); + method public abstract void onRelease(); + method public void onResetAdService(); + method public abstract boolean onSetSurface(@Nullable android.view.Surface); + method public void onSigningResult(@NonNull String, @NonNull byte[]); + method public void onStartAdService(); + method public void onStopAdService(); + method public void onSurfaceChanged(int, int, int); + method public boolean onTouchEvent(@NonNull android.view.MotionEvent); + method public void onTrackInfoList(@NonNull java.util.List); + method public boolean onTrackballEvent(@NonNull android.view.MotionEvent); + method public void onTvInputSessionData(@NonNull String, @NonNull android.os.Bundle); + method public void onTvMessage(int, @NonNull android.os.Bundle); + method @CallSuper public void requestCurrentChannelUri(); + method @CallSuper public void requestCurrentTvInputId(); + method @CallSuper public void requestCurrentVideoBounds(); + method @CallSuper public void requestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); + method @CallSuper public void requestTrackInfoList(); + method public void sendTvAdSessionData(@NonNull String, @NonNull android.os.Bundle); + method @CallSuper public void setMediaViewEnabled(boolean); + } + + @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public final class TvAdServiceInfo implements android.os.Parcelable { + ctor public TvAdServiceInfo(@NonNull android.content.Context, @NonNull android.content.ComponentName); + method public int describeContents(); + method @NonNull public String getId(); + method @Nullable public android.content.pm.ServiceInfo getServiceInfo(); + method @NonNull public java.util.List getSupportedTypes(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public class TvAdView extends android.view.ViewGroup { + ctor public TvAdView(@NonNull android.content.Context); + ctor public TvAdView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public TvAdView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); + method public void clearCallback(); + method public void clearOnUnhandledInputEventListener(); + method public boolean dispatchUnhandledInputEvent(@NonNull android.view.InputEvent); + method @Nullable public android.media.tv.ad.TvAdView.OnUnhandledInputEventListener getOnUnhandledInputEventListener(); + method public void notifyError(@NonNull String, @NonNull android.os.Bundle); + method public void notifyTvMessage(@NonNull int, @NonNull android.os.Bundle); + method public void onAttachedToWindow(); + method public void onDetachedFromWindow(); + method public void onLayout(boolean, int, int, int, int); + method public void onMeasure(int, int); + method public boolean onUnhandledInputEvent(@NonNull android.view.InputEvent); + method public void onVisibilityChanged(@NonNull android.view.View, int); + method public void prepareAdService(@NonNull String, @NonNull String); + method public void reset(); + method public void resetAdService(); + method public void sendCurrentChannelUri(@Nullable android.net.Uri); + method public void sendCurrentTvInputId(@Nullable String); + method public void sendCurrentVideoBounds(@NonNull android.graphics.Rect); + method public void sendSigningResult(@NonNull String, @NonNull byte[]); + method public void sendTrackInfoList(@Nullable java.util.List); + method public void setCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.ad.TvAdView.TvAdCallback); + method public void setOnUnhandledInputEventListener(@NonNull android.media.tv.ad.TvAdView.OnUnhandledInputEventListener); + method public boolean setTvView(@Nullable android.media.tv.TvView); + method @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public void setZOrderMediaOverlay(boolean); + method @FlaggedApi("android.media.tv.flags.enable_ad_service_fw") public void setZOrderOnTop(boolean); + method public void startAdService(); + method public void stopAdService(); + field public static final String ERROR_KEY_ERROR_CODE = "error_code"; + field public static final String ERROR_KEY_METHOD_NAME = "method_name"; + } + + public static interface TvAdView.OnUnhandledInputEventListener { + method public boolean onUnhandledInputEvent(@NonNull android.view.InputEvent); + } + + public abstract static class TvAdView.TvAdCallback { + ctor public TvAdView.TvAdCallback(); + method public void onRequestCurrentChannelUri(@NonNull String); + method public void onRequestCurrentTvInputId(@NonNull String); + method public void onRequestCurrentVideoBounds(@NonNull String); + method public void onRequestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); + method public void onRequestTrackInfoList(@NonNull String); + method public void onStateChanged(@NonNull String, int, int); + } + +} + +package android.media.tv.interactive { + + public final class AppLinkInfo implements android.os.Parcelable { + ctor public AppLinkInfo(@NonNull String, @NonNull String, @NonNull String); + method public int describeContents(); + method @NonNull public android.content.ComponentName getComponentName(); + method @NonNull public android.net.Uri getUri(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class TvInteractiveAppManager { + method @NonNull public java.util.List getAppLinkInfoList(); + method @NonNull public java.util.List getTvInteractiveAppServiceList(); + method public void registerAppLinkInfo(@NonNull String, @NonNull android.media.tv.interactive.AppLinkInfo); + method public void registerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.interactive.TvInteractiveAppManager.TvInteractiveAppCallback); + method public void sendAppLinkCommand(@NonNull String, @NonNull android.os.Bundle); + method public void unregisterAppLinkInfo(@NonNull String, @NonNull android.media.tv.interactive.AppLinkInfo); + method public void unregisterCallback(@NonNull android.media.tv.interactive.TvInteractiveAppManager.TvInteractiveAppCallback); + field public static final String ACTION_APP_LINK_COMMAND = "android.media.tv.interactive.action.APP_LINK_COMMAND"; + field public static final String APP_LINK_KEY_BACK_URI = "back_uri"; + field public static final String APP_LINK_KEY_CLASS_NAME = "class_name"; + field public static final String APP_LINK_KEY_COMMAND_TYPE = "command_type"; + field public static final String APP_LINK_KEY_PACKAGE_NAME = "package_name"; + field public static final String APP_LINK_KEY_SERVICE_ID = "service_id"; + field public static final int ERROR_BLOCKED = 5; // 0x5 + field public static final int ERROR_ENCRYPTED = 6; // 0x6 + field public static final int ERROR_NONE = 0; // 0x0 + field public static final int ERROR_NOT_SUPPORTED = 2; // 0x2 + field public static final int ERROR_RESOURCE_UNAVAILABLE = 4; // 0x4 + field public static final int ERROR_UNKNOWN = 1; // 0x1 + field public static final int ERROR_UNKNOWN_CHANNEL = 7; // 0x7 + field public static final int ERROR_WEAK_SIGNAL = 3; // 0x3 + field public static final String INTENT_KEY_BI_INTERACTIVE_APP_TYPE = "bi_interactive_app_type"; + field public static final String INTENT_KEY_BI_INTERACTIVE_APP_URI = "bi_interactive_app_uri"; + field public static final String INTENT_KEY_CHANNEL_URI = "channel_uri"; + field public static final String INTENT_KEY_COMMAND_TYPE = "command_type"; + field public static final String INTENT_KEY_INTERACTIVE_APP_SERVICE_ID = "interactive_app_id"; + field public static final String INTENT_KEY_TV_INPUT_ID = "tv_input_id"; + field public static final int INTERACTIVE_APP_STATE_ERROR = 3; // 0x3 + field public static final int INTERACTIVE_APP_STATE_RUNNING = 2; // 0x2 + field public static final int INTERACTIVE_APP_STATE_STOPPED = 1; // 0x1 + field public static final int SERVICE_STATE_ERROR = 4; // 0x4 + field public static final int SERVICE_STATE_PREPARING = 2; // 0x2 + field public static final int SERVICE_STATE_READY = 3; // 0x3 + field public static final int SERVICE_STATE_UNREALIZED = 1; // 0x1 + field public static final int TELETEXT_APP_STATE_ERROR = 3; // 0x3 + field public static final int TELETEXT_APP_STATE_HIDE = 2; // 0x2 + field public static final int TELETEXT_APP_STATE_SHOW = 1; // 0x1 + } + + public abstract static class TvInteractiveAppManager.TvInteractiveAppCallback { + ctor public TvInteractiveAppManager.TvInteractiveAppCallback(); + method public void onInteractiveAppServiceAdded(@NonNull String); + method public void onInteractiveAppServiceRemoved(@NonNull String); + method public void onInteractiveAppServiceUpdated(@NonNull String); + method public void onTvInteractiveAppServiceStateChanged(@NonNull String, int, int, int); + } + + public abstract class TvInteractiveAppService extends android.app.Service { + ctor public TvInteractiveAppService(); + method public final void notifyStateChanged(int, int, int); + method public void onAppLinkCommand(@NonNull android.os.Bundle); + method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); + method @Nullable public abstract android.media.tv.interactive.TvInteractiveAppService.Session onCreateSession(@NonNull String, int); + method public void onRegisterAppLinkInfo(@NonNull android.media.tv.interactive.AppLinkInfo); + method public void onUnregisterAppLinkInfo(@NonNull android.media.tv.interactive.AppLinkInfo); + field public static final String COMMAND_PARAMETER_KEY_CHANGE_CHANNEL_QUIETLY = "command_change_channel_quietly"; + field public static final String COMMAND_PARAMETER_KEY_CHANNEL_URI = "command_channel_uri"; + field public static final String COMMAND_PARAMETER_KEY_INPUT_ID = "command_input_id"; + field public static final String COMMAND_PARAMETER_KEY_PLAYBACK_PARAMS = "command_playback_params"; + field public static final String COMMAND_PARAMETER_KEY_PROGRAM_URI = "command_program_uri"; + field public static final String COMMAND_PARAMETER_KEY_STOP_MODE = "command_stop_mode"; + field public static final String COMMAND_PARAMETER_KEY_TIME_POSITION = "command_time_position"; + field public static final String COMMAND_PARAMETER_KEY_TIME_SHIFT_MODE = "command_time_shift_mode"; + field public static final String COMMAND_PARAMETER_KEY_TRACK_ID = "command_track_id"; + field public static final String COMMAND_PARAMETER_KEY_TRACK_TYPE = "command_track_type"; + field public static final String COMMAND_PARAMETER_KEY_VOLUME = "command_volume"; + field public static final int COMMAND_PARAMETER_VALUE_STOP_MODE_BLANK = 1; // 0x1 + field public static final int COMMAND_PARAMETER_VALUE_STOP_MODE_FREEZE = 2; // 0x2 + field public static final String PLAYBACK_COMMAND_TYPE_SELECT_TRACK = "select_track"; + field public static final String PLAYBACK_COMMAND_TYPE_SET_STREAM_VOLUME = "set_stream_volume"; + field public static final String PLAYBACK_COMMAND_TYPE_STOP = "stop"; + field public static final String PLAYBACK_COMMAND_TYPE_TUNE = "tune"; + field public static final String PLAYBACK_COMMAND_TYPE_TUNE_NEXT = "tune_next"; + field public static final String PLAYBACK_COMMAND_TYPE_TUNE_PREV = "tune_previous"; + field public static final String SERVICE_INTERFACE = "android.media.tv.interactive.TvInteractiveAppService"; + field public static final String SERVICE_META_DATA = "android.media.tv.interactive.app"; + field public static final String TIME_SHIFT_COMMAND_TYPE_PAUSE = "pause"; + field public static final String TIME_SHIFT_COMMAND_TYPE_PLAY = "play"; + field public static final String TIME_SHIFT_COMMAND_TYPE_RESUME = "resume"; + field public static final String TIME_SHIFT_COMMAND_TYPE_SEEK_TO = "seek_to"; + field public static final String TIME_SHIFT_COMMAND_TYPE_SET_MODE = "set_mode"; + field public static final String TIME_SHIFT_COMMAND_TYPE_SET_PLAYBACK_PARAMS = "set_playback_params"; + } + + public abstract static class TvInteractiveAppService.Session implements android.view.KeyEvent.Callback { + ctor public TvInteractiveAppService.Session(@NonNull android.content.Context); + method public boolean isMediaViewEnabled(); + method @CallSuper public void layoutSurface(int, int, int, int); + method @CallSuper public void notifyAdBufferReady(@NonNull android.media.tv.AdBuffer); + method @CallSuper public final void notifyBiInteractiveAppCreated(@NonNull android.net.Uri, @Nullable String); + method @CallSuper public void notifySessionStateChanged(int, int); + method @CallSuper public final void notifyTeletextAppStateChanged(int); + method public void onAdBufferConsumed(@NonNull android.media.tv.AdBuffer); + method public void onAdResponse(@NonNull android.media.tv.AdResponse); + method public void onAvailableSpeeds(@NonNull float[]); + method public void onBroadcastInfoResponse(@NonNull android.media.tv.BroadcastInfoResponse); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onCertificate(@NonNull String, int, @NonNull android.net.http.SslCertificate); + method public void onContentAllowed(); + method public void onContentBlocked(@NonNull android.media.tv.TvContentRating); + method public void onCreateBiInteractiveAppRequest(@NonNull android.net.Uri, @Nullable android.os.Bundle); + method @Nullable public android.view.View onCreateMediaView(); + method public void onCurrentChannelLcn(int); + method public void onCurrentChannelUri(@Nullable android.net.Uri); + method public void onCurrentTvInputId(@Nullable String); + method public void onCurrentVideoBounds(@NonNull android.graphics.Rect); + method public void onDestroyBiInteractiveAppRequest(@NonNull String); + method public void onError(@NonNull String, @NonNull android.os.Bundle); + method public boolean onGenericMotionEvent(@NonNull android.view.MotionEvent); + method public boolean onKeyDown(int, @NonNull android.view.KeyEvent); + method public boolean onKeyLongPress(int, @NonNull android.view.KeyEvent); + method public boolean onKeyMultiple(int, int, @NonNull android.view.KeyEvent); + method public boolean onKeyUp(int, @NonNull android.view.KeyEvent); + method public void onMediaViewSizeChanged(@Px int, @Px int); + method public void onRecordingConnectionFailed(@NonNull String, @NonNull String); + method public void onRecordingDisconnected(@NonNull String, @NonNull String); + method public void onRecordingError(@NonNull String, int); + method public void onRecordingScheduled(@NonNull String, @Nullable String); + method public void onRecordingStarted(@NonNull String, @Nullable String); + method public void onRecordingStopped(@NonNull String); + method public void onRecordingTuned(@NonNull String, @NonNull android.net.Uri); + method public abstract void onRelease(); + method public void onResetInteractiveApp(); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onSelectedTrackInfo(@NonNull java.util.List); + method public abstract boolean onSetSurface(@Nullable android.view.Surface); + method public void onSetTeletextAppEnabled(boolean); + method public void onSignalStrength(int); + method public void onSigningResult(@NonNull String, @NonNull byte[]); + method public void onStartInteractiveApp(); + method public void onStopInteractiveApp(); + method public void onStreamVolume(float); + method public void onSurfaceChanged(int, int, int); + method public void onTimeShiftCurrentPositionChanged(@NonNull String, long); + method public void onTimeShiftMode(int); + method public void onTimeShiftPlaybackParams(@NonNull android.media.PlaybackParams); + method public void onTimeShiftStartPositionChanged(@NonNull String, long); + method public void onTimeShiftStatusChanged(@NonNull String, int); + method public boolean onTouchEvent(@NonNull android.view.MotionEvent); + method public void onTrackInfoList(@NonNull java.util.List); + method public void onTrackSelected(int, @NonNull String); + method public boolean onTrackballEvent(@NonNull android.view.MotionEvent); + method public void onTracksChanged(@NonNull java.util.List); + method public void onTuned(@NonNull android.net.Uri); + method public void onTvMessage(int, @NonNull android.os.Bundle); + method public void onTvRecordingInfo(@Nullable android.media.tv.TvRecordingInfo); + method public void onTvRecordingInfoList(@NonNull java.util.List); + method public void onVideoAvailable(); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onVideoFreezeUpdated(boolean); + method public void onVideoUnavailable(int); + method @CallSuper public void removeBroadcastInfo(int); + method @CallSuper public void requestAd(@NonNull android.media.tv.AdRequest); + method @CallSuper public void requestAvailableSpeeds(); + method @CallSuper public void requestBroadcastInfo(@NonNull android.media.tv.BroadcastInfoRequest); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") @CallSuper public void requestCertificate(@NonNull String, int); + method @CallSuper public void requestCurrentChannelLcn(); + method @CallSuper public void requestCurrentChannelUri(); + method @CallSuper public void requestCurrentTvInputId(); + method @CallSuper public void requestCurrentVideoBounds(); + method @CallSuper public void requestScheduleRecording(@NonNull String, @NonNull String, @NonNull android.net.Uri, @NonNull android.net.Uri, @NonNull android.os.Bundle); + method @CallSuper public void requestScheduleRecording(@NonNull String, @NonNull String, @NonNull android.net.Uri, long, long, int, @NonNull android.os.Bundle); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") @CallSuper public void requestSelectedTrackInfo(); + method @CallSuper public void requestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") @CallSuper public void requestSigning(@NonNull String, @NonNull String, @NonNull String, int, @NonNull byte[]); + method @CallSuper public void requestStartRecording(@NonNull String, @Nullable android.net.Uri); + method @CallSuper public void requestStopRecording(@NonNull String); + method @CallSuper public void requestStreamVolume(); + method @CallSuper public void requestTimeShiftMode(); + method @CallSuper public void requestTrackInfoList(); + method @CallSuper public void requestTvRecordingInfo(@NonNull String); + method @CallSuper public void requestTvRecordingInfoList(int); + method @CallSuper public void sendPlaybackCommandRequest(@NonNull String, @Nullable android.os.Bundle); + method @CallSuper public void sendTimeShiftCommandRequest(@NonNull String, @Nullable android.os.Bundle); + method @CallSuper public void setMediaViewEnabled(boolean); + method @CallSuper public void setTvRecordingInfo(@NonNull String, @NonNull android.media.tv.TvRecordingInfo); + method @CallSuper public void setVideoBounds(@NonNull android.graphics.Rect); + } + + public final class TvInteractiveAppServiceInfo implements android.os.Parcelable { + ctor public TvInteractiveAppServiceInfo(@NonNull android.content.Context, @NonNull android.content.ComponentName); + method public int describeContents(); + method @NonNull public java.util.List getCustomSupportedTypes(); + method @NonNull public String getId(); + method @Nullable public android.content.pm.ServiceInfo getServiceInfo(); + method @NonNull public int getSupportedTypes(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int INTERACTIVE_APP_TYPE_ATSC = 2; // 0x2 + field public static final int INTERACTIVE_APP_TYPE_GINGA = 4; // 0x4 + field public static final int INTERACTIVE_APP_TYPE_HBBTV = 1; // 0x1 + field public static final int INTERACTIVE_APP_TYPE_OTHER = -2147483648; // 0x80000000 + field public static final int INTERACTIVE_APP_TYPE_TARGETED_AD = 8; // 0x8 + } + + public class TvInteractiveAppView extends android.view.ViewGroup { + ctor public TvInteractiveAppView(@NonNull android.content.Context); + ctor public TvInteractiveAppView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public TvInteractiveAppView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); + method public void clearCallback(); + method public void clearOnUnhandledInputEventListener(); + method public void createBiInteractiveApp(@NonNull android.net.Uri, @Nullable android.os.Bundle); + method public void destroyBiInteractiveApp(@NonNull String); + method public boolean dispatchUnhandledInputEvent(@NonNull android.view.InputEvent); + method @Nullable public android.media.tv.interactive.TvInteractiveAppView.OnUnhandledInputEventListener getOnUnhandledInputEventListener(); + method public void notifyError(@NonNull String, @NonNull android.os.Bundle); + method public void notifyRecordingScheduled(@NonNull String, @Nullable String); + method public void notifyRecordingStarted(@NonNull String, @Nullable String); + method public void notifyRecordingStopped(@NonNull String); + method public void notifyTimeShiftCurrentPositionChanged(@NonNull String, long); + method public void notifyTimeShiftPlaybackParams(@NonNull android.media.PlaybackParams); + method public void notifyTimeShiftStartPositionChanged(@NonNull String, long); + method public void notifyTimeShiftStatusChanged(@NonNull String, int); + method public void notifyTvMessage(@NonNull int, @NonNull android.os.Bundle); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void notifyVideoFreezeUpdated(boolean); + method public void onAttachedToWindow(); + method public void onDetachedFromWindow(); + method public void onLayout(boolean, int, int, int, int); + method public void onMeasure(int, int); + method public boolean onUnhandledInputEvent(@NonNull android.view.InputEvent); + method public void onVisibilityChanged(@NonNull android.view.View, int); + method public void prepareInteractiveApp(@NonNull String, int); + method public void reset(); + method public void resetInteractiveApp(); + method public void sendAvailableSpeeds(@NonNull float[]); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void sendCertificate(@NonNull String, int, @NonNull android.net.http.SslCertificate); + method public void sendCurrentChannelLcn(int); + method public void sendCurrentChannelUri(@Nullable android.net.Uri); + method public void sendCurrentTvInputId(@Nullable String); + method public void sendCurrentVideoBounds(@NonNull android.graphics.Rect); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void sendSelectedTrackInfo(@Nullable java.util.List); + method public void sendSigningResult(@NonNull String, @NonNull byte[]); + method public void sendStreamVolume(float); + method public void sendTimeShiftMode(int); + method public void sendTrackInfoList(@Nullable java.util.List); + method public void sendTvRecordingInfo(@Nullable android.media.tv.TvRecordingInfo); + method public void sendTvRecordingInfoList(@NonNull java.util.List); + method public void setCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.interactive.TvInteractiveAppView.TvInteractiveAppCallback); + method public void setOnUnhandledInputEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.interactive.TvInteractiveAppView.OnUnhandledInputEventListener); + method public void setTeletextAppEnabled(boolean); + method public int setTvView(@Nullable android.media.tv.TvView); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void setZOrderMediaOverlay(boolean); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void setZOrderOnTop(boolean); + method public void startInteractiveApp(); + method public void stopInteractiveApp(); + field public static final String BI_INTERACTIVE_APP_KEY_ALIAS = "alias"; + field public static final String BI_INTERACTIVE_APP_KEY_CERTIFICATE = "certificate"; + field public static final String BI_INTERACTIVE_APP_KEY_HTTP_ADDITIONAL_HEADERS = "http_additional_headers"; + field public static final String BI_INTERACTIVE_APP_KEY_HTTP_USER_AGENT = "http_user_agent"; + field public static final String BI_INTERACTIVE_APP_KEY_PRIVATE_KEY = "private_key"; + field public static final String ERROR_KEY_METHOD_NAME = "method_name"; + } + + public static interface TvInteractiveAppView.OnUnhandledInputEventListener { + method public boolean onUnhandledInputEvent(@NonNull android.view.InputEvent); + } + + public abstract static class TvInteractiveAppView.TvInteractiveAppCallback { + ctor public TvInteractiveAppView.TvInteractiveAppCallback(); + method public void onBiInteractiveAppCreated(@NonNull String, @NonNull android.net.Uri, @Nullable String); + method public void onPlaybackCommandRequest(@NonNull String, @NonNull String, @NonNull android.os.Bundle); + method public void onRequestAvailableSpeeds(@NonNull String); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onRequestCertificate(@NonNull String, @NonNull String, int); + method public void onRequestCurrentChannelLcn(@NonNull String); + method public void onRequestCurrentChannelUri(@NonNull String); + method public void onRequestCurrentTvInputId(@NonNull String); + method public void onRequestCurrentVideoBounds(@NonNull String); + method public void onRequestScheduleRecording(@NonNull String, @NonNull String, @NonNull String, @NonNull android.net.Uri, @NonNull android.net.Uri, @NonNull android.os.Bundle); + method public void onRequestScheduleRecording(@NonNull String, @NonNull String, @NonNull String, @NonNull android.net.Uri, long, long, int, @NonNull android.os.Bundle); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onRequestSelectedTrackInfo(@NonNull String); + method public void onRequestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); + method @FlaggedApi("android.media.tv.flags.tiaf_v_apis") public void onRequestSigning(@NonNull String, @NonNull String, @NonNull String, @NonNull String, int, @NonNull byte[]); + method public void onRequestStartRecording(@NonNull String, @NonNull String, @Nullable android.net.Uri); + method public void onRequestStopRecording(@NonNull String, @NonNull String); + method public void onRequestStreamVolume(@NonNull String); + method public void onRequestTimeShiftMode(@NonNull String); + method public void onRequestTrackInfoList(@NonNull String); + method public void onRequestTvRecordingInfo(@NonNull String, @NonNull String); + method public void onRequestTvRecordingInfoList(@NonNull String, int); + method public void onSetTvRecordingInfo(@NonNull String, @NonNull String, @NonNull android.media.tv.TvRecordingInfo); + method public void onSetVideoBounds(@NonNull String, @NonNull android.graphics.Rect); + method public void onStateChanged(@NonNull String, int, int); + method public void onTeletextAppStateChanged(@NonNull String, int); + method public void onTimeShiftCommandRequest(@NonNull String, @NonNull String, @NonNull android.os.Bundle); + } + +} + +package android.mtp { + + public final class MtpConstants { + ctor public MtpConstants(); + method public static boolean isAbstractObject(int); + field public static final int ASSOCIATION_TYPE_GENERIC_FOLDER = 1; // 0x1 + field public static final int FORMAT_3GP_CONTAINER = 47492; // 0xb984 + field public static final int FORMAT_AAC = 47363; // 0xb903 + field public static final int FORMAT_ABSTRACT_AUDIO_ALBUM = 47619; // 0xba03 + field public static final int FORMAT_ABSTRACT_AUDIO_PLAYLIST = 47625; // 0xba09 + field public static final int FORMAT_ABSTRACT_AV_PLAYLIST = 47621; // 0xba05 + field public static final int FORMAT_ABSTRACT_DOCUMENT = 47745; // 0xba81 + field public static final int FORMAT_ABSTRACT_IMAGE_ALBUM = 47618; // 0xba02 + field public static final int FORMAT_ABSTRACT_MEDIACAST = 47627; // 0xba0b + field public static final int FORMAT_ABSTRACT_MULTIMEDIA_ALBUM = 47617; // 0xba01 + field public static final int FORMAT_ABSTRACT_VIDEO_ALBUM = 47620; // 0xba04 + field public static final int FORMAT_ABSTRACT_VIDEO_PLAYLIST = 47626; // 0xba0a + field public static final int FORMAT_AIFF = 12295; // 0x3007 + field public static final int FORMAT_ASF = 12300; // 0x300c + field public static final int FORMAT_ASSOCIATION = 12289; // 0x3001 + field public static final int FORMAT_ASX_PLAYLIST = 47635; // 0xba13 + field public static final int FORMAT_AUDIBLE = 47364; // 0xb904 + field public static final int FORMAT_AVI = 12298; // 0x300a + field public static final int FORMAT_BMP = 14340; // 0x3804 + field public static final int FORMAT_DEFINED = 14336; // 0x3800 + field public static final int FORMAT_DNG = 14353; // 0x3811 + field public static final int FORMAT_DPOF = 12294; // 0x3006 + field public static final int FORMAT_EXECUTABLE = 12291; // 0x3003 + field public static final int FORMAT_EXIF_JPEG = 14337; // 0x3801 + field public static final int FORMAT_FLAC = 47366; // 0xb906 + field public static final int FORMAT_GIF = 14343; // 0x3807 + field public static final int FORMAT_HTML = 12293; // 0x3005 + field public static final int FORMAT_JFIF = 14344; // 0x3808 + field public static final int FORMAT_JP2 = 14351; // 0x380f + field public static final int FORMAT_JPX = 14352; // 0x3810 + field public static final int FORMAT_M3U_PLAYLIST = 47633; // 0xba11 + field public static final int FORMAT_MP2 = 47491; // 0xb983 + field public static final int FORMAT_MP3 = 12297; // 0x3009 + field public static final int FORMAT_MP4_CONTAINER = 47490; // 0xb982 + field public static final int FORMAT_MPEG = 12299; // 0x300b + field public static final int FORMAT_MPL_PLAYLIST = 47634; // 0xba12 + field public static final int FORMAT_MS_EXCEL_SPREADSHEET = 47749; // 0xba85 + field public static final int FORMAT_MS_POWERPOINT_PRESENTATION = 47750; // 0xba86 + field public static final int FORMAT_MS_WORD_DOCUMENT = 47747; // 0xba83 + field public static final int FORMAT_OGG = 47362; // 0xb902 + field public static final int FORMAT_PICT = 14346; // 0x380a + field public static final int FORMAT_PLS_PLAYLIST = 47636; // 0xba14 + field public static final int FORMAT_PNG = 14347; // 0x380b + field public static final int FORMAT_SCRIPT = 12290; // 0x3002 + field public static final int FORMAT_TEXT = 12292; // 0x3004 + field public static final int FORMAT_TIFF = 14349; // 0x380d + field public static final int FORMAT_TIFF_EP = 14338; // 0x3802 + field public static final int FORMAT_UNDEFINED = 12288; // 0x3000 + field public static final int FORMAT_UNDEFINED_AUDIO = 47360; // 0xb900 + field public static final int FORMAT_UNDEFINED_COLLECTION = 47616; // 0xba00 + field public static final int FORMAT_UNDEFINED_DOCUMENT = 47744; // 0xba80 + field public static final int FORMAT_UNDEFINED_FIRMWARE = 47106; // 0xb802 + field public static final int FORMAT_UNDEFINED_VIDEO = 47488; // 0xb980 + field public static final int FORMAT_WAV = 12296; // 0x3008 + field public static final int FORMAT_WINDOWS_IMAGE_FORMAT = 47233; // 0xb881 + field public static final int FORMAT_WMA = 47361; // 0xb901 + field public static final int FORMAT_WMV = 47489; // 0xb981 + field public static final int FORMAT_WPL_PLAYLIST = 47632; // 0xba10 + field public static final int FORMAT_XML_DOCUMENT = 47746; // 0xba82 + field public static final int OPERATION_CLOSE_SESSION = 4099; // 0x1003 + field public static final int OPERATION_COPY_OBJECT = 4122; // 0x101a + field public static final int OPERATION_DELETE_OBJECT = 4107; // 0x100b + field public static final int OPERATION_FORMAT_STORE = 4111; // 0x100f + field public static final int OPERATION_GET_DEVICE_INFO = 4097; // 0x1001 + field public static final int OPERATION_GET_DEVICE_PROP_DESC = 4116; // 0x1014 + field public static final int OPERATION_GET_DEVICE_PROP_VALUE = 4117; // 0x1015 + field public static final int OPERATION_GET_NUM_OBJECTS = 4102; // 0x1006 + field public static final int OPERATION_GET_OBJECT = 4105; // 0x1009 + field public static final int OPERATION_GET_OBJECT_HANDLES = 4103; // 0x1007 + field public static final int OPERATION_GET_OBJECT_INFO = 4104; // 0x1008 + field public static final int OPERATION_GET_OBJECT_PROPS_SUPPORTED = 38913; // 0x9801 + field public static final int OPERATION_GET_OBJECT_PROP_DESC = 38914; // 0x9802 + field public static final int OPERATION_GET_OBJECT_PROP_VALUE = 38915; // 0x9803 + field public static final int OPERATION_GET_OBJECT_REFERENCES = 38928; // 0x9810 + field public static final int OPERATION_GET_PARTIAL_OBJECT = 4123; // 0x101b + field public static final int OPERATION_GET_PARTIAL_OBJECT_64 = 38337; // 0x95c1 + field public static final int OPERATION_GET_STORAGE_INFO = 4101; // 0x1005 + field public static final int OPERATION_GET_STORAGE_I_DS = 4100; // 0x1004 + field public static final int OPERATION_GET_THUMB = 4106; // 0x100a + field public static final int OPERATION_INITIATE_CAPTURE = 4110; // 0x100e + field public static final int OPERATION_INITIATE_OPEN_CAPTURE = 4124; // 0x101c + field public static final int OPERATION_MOVE_OBJECT = 4121; // 0x1019 + field public static final int OPERATION_OPEN_SESSION = 4098; // 0x1002 + field public static final int OPERATION_POWER_DOWN = 4115; // 0x1013 + field public static final int OPERATION_RESET_DEVICE = 4112; // 0x1010 + field public static final int OPERATION_RESET_DEVICE_PROP_VALUE = 4119; // 0x1017 + field public static final int OPERATION_SELF_TEST = 4113; // 0x1011 + field public static final int OPERATION_SEND_OBJECT = 4109; // 0x100d + field public static final int OPERATION_SEND_OBJECT_INFO = 4108; // 0x100c + field public static final int OPERATION_SET_DEVICE_PROP_VALUE = 4118; // 0x1016 + field public static final int OPERATION_SET_OBJECT_PROP_VALUE = 38916; // 0x9804 + field public static final int OPERATION_SET_OBJECT_PROTECTION = 4114; // 0x1012 + field public static final int OPERATION_SET_OBJECT_REFERENCES = 38929; // 0x9811 + field public static final int OPERATION_SKIP = 38944; // 0x9820 + field public static final int OPERATION_TERMINATE_OPEN_CAPTURE = 4120; // 0x1018 + field public static final int PROTECTION_STATUS_NONE = 0; // 0x0 + field public static final int PROTECTION_STATUS_NON_TRANSFERABLE_DATA = 32771; // 0x8003 + field public static final int PROTECTION_STATUS_READ_ONLY = 32769; // 0x8001 + field public static final int PROTECTION_STATUS_READ_ONLY_DATA = 32770; // 0x8002 + } + + public final class MtpDevice { + ctor public MtpDevice(@NonNull android.hardware.usb.UsbDevice); + method public void close(); + method public boolean deleteObject(int); + method public int getDeviceId(); + method @Nullable public android.mtp.MtpDeviceInfo getDeviceInfo(); + method @NonNull public String getDeviceName(); + method @Nullable public byte[] getObject(int, int); + method @Nullable public int[] getObjectHandles(int, int, int); + method @Nullable public android.mtp.MtpObjectInfo getObjectInfo(int); + method public long getParent(int); + method public long getPartialObject(int, long, long, @NonNull byte[]) throws java.io.IOException; + method public long getPartialObject64(int, long, long, @NonNull byte[]) throws java.io.IOException; + method public long getStorageId(int); + method @Nullable public int[] getStorageIds(); + method @Nullable public android.mtp.MtpStorageInfo getStorageInfo(int); + method @Nullable public byte[] getThumbnail(int); + method public boolean importFile(int, @NonNull String); + method public boolean importFile(int, @NonNull android.os.ParcelFileDescriptor); + method public boolean open(@NonNull android.hardware.usb.UsbDeviceConnection); + method @NonNull public android.mtp.MtpEvent readEvent(@Nullable android.os.CancellationSignal) throws java.io.IOException; + method public boolean sendObject(int, long, @NonNull android.os.ParcelFileDescriptor); + method @Nullable public android.mtp.MtpObjectInfo sendObjectInfo(@NonNull android.mtp.MtpObjectInfo); + } + + public class MtpDeviceInfo { + method @NonNull public final int[] getEventsSupported(); + method @NonNull public final String getManufacturer(); + method @NonNull public final String getModel(); + method @NonNull public final int[] getOperationsSupported(); + method @NonNull public final String getSerialNumber(); + method @NonNull public final String getVersion(); + method public boolean isEventSupported(int); + method public boolean isOperationSupported(int); + } + + public class MtpEvent { + method public int getDevicePropCode(); + method public int getEventCode(); + method public int getObjectFormatCode(); + method public int getObjectHandle(); + method public int getObjectPropCode(); + method public int getParameter1(); + method public int getParameter2(); + method public int getParameter3(); + method public int getStorageId(); + method public int getTransactionId(); + field public static final int EVENT_CANCEL_TRANSACTION = 16385; // 0x4001 + field public static final int EVENT_CAPTURE_COMPLETE = 16397; // 0x400d + field public static final int EVENT_DEVICE_INFO_CHANGED = 16392; // 0x4008 + field public static final int EVENT_DEVICE_PROP_CHANGED = 16390; // 0x4006 + field public static final int EVENT_DEVICE_RESET = 16395; // 0x400b + field public static final int EVENT_OBJECT_ADDED = 16386; // 0x4002 + field public static final int EVENT_OBJECT_INFO_CHANGED = 16391; // 0x4007 + field public static final int EVENT_OBJECT_PROP_CHANGED = 51201; // 0xc801 + field public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 51202; // 0xc802 + field public static final int EVENT_OBJECT_REFERENCES_CHANGED = 51203; // 0xc803 + field public static final int EVENT_OBJECT_REMOVED = 16387; // 0x4003 + field public static final int EVENT_REQUEST_OBJECT_TRANSFER = 16393; // 0x4009 + field public static final int EVENT_STORAGE_INFO_CHANGED = 16396; // 0x400c + field public static final int EVENT_STORE_ADDED = 16388; // 0x4004 + field public static final int EVENT_STORE_FULL = 16394; // 0x400a + field public static final int EVENT_STORE_REMOVED = 16389; // 0x4005 + field public static final int EVENT_UNDEFINED = 16384; // 0x4000 + field public static final int EVENT_UNREPORTED_STATUS = 16398; // 0x400e + } + + public final class MtpObjectInfo { + method public int getAssociationDesc(); + method public int getAssociationType(); + method public int getCompressedSize(); + method public long getCompressedSizeLong(); + method public long getDateCreated(); + method public long getDateModified(); + method public int getFormat(); + method public int getImagePixDepth(); + method public long getImagePixDepthLong(); + method public int getImagePixHeight(); + method public long getImagePixHeightLong(); + method public int getImagePixWidth(); + method public long getImagePixWidthLong(); + method @NonNull public String getKeywords(); + method @NonNull public String getName(); + method public int getObjectHandle(); + method public int getParent(); + method public int getProtectionStatus(); + method public int getSequenceNumber(); + method public long getSequenceNumberLong(); + method public int getStorageId(); + method public int getThumbCompressedSize(); + method public long getThumbCompressedSizeLong(); + method public int getThumbFormat(); + method public int getThumbPixHeight(); + method public long getThumbPixHeightLong(); + method public int getThumbPixWidth(); + method public long getThumbPixWidthLong(); + } + + public static class MtpObjectInfo.Builder { + ctor public MtpObjectInfo.Builder(); + ctor public MtpObjectInfo.Builder(android.mtp.MtpObjectInfo); + method public android.mtp.MtpObjectInfo build(); + method public android.mtp.MtpObjectInfo.Builder setAssociationDesc(int); + method public android.mtp.MtpObjectInfo.Builder setAssociationType(int); + method public android.mtp.MtpObjectInfo.Builder setCompressedSize(long); + method public android.mtp.MtpObjectInfo.Builder setDateCreated(long); + method public android.mtp.MtpObjectInfo.Builder setDateModified(long); + method public android.mtp.MtpObjectInfo.Builder setFormat(int); + method public android.mtp.MtpObjectInfo.Builder setImagePixDepth(long); + method public android.mtp.MtpObjectInfo.Builder setImagePixHeight(long); + method public android.mtp.MtpObjectInfo.Builder setImagePixWidth(long); + method public android.mtp.MtpObjectInfo.Builder setKeywords(@NonNull String); + method public android.mtp.MtpObjectInfo.Builder setName(@NonNull String); + method public android.mtp.MtpObjectInfo.Builder setObjectHandle(int); + method public android.mtp.MtpObjectInfo.Builder setParent(int); + method public android.mtp.MtpObjectInfo.Builder setProtectionStatus(int); + method public android.mtp.MtpObjectInfo.Builder setSequenceNumber(long); + method public android.mtp.MtpObjectInfo.Builder setStorageId(int); + method public android.mtp.MtpObjectInfo.Builder setThumbCompressedSize(long); + method public android.mtp.MtpObjectInfo.Builder setThumbFormat(int); + method public android.mtp.MtpObjectInfo.Builder setThumbPixHeight(long); + method public android.mtp.MtpObjectInfo.Builder setThumbPixWidth(long); + } + + public final class MtpStorageInfo { + method @NonNull public String getDescription(); + method public long getFreeSpace(); + method public long getMaxCapacity(); + method public int getStorageId(); + method @NonNull public String getVolumeIdentifier(); + } + +} + +package android.net { + + public class Credentials { + ctor public Credentials(int, int, int); + method public int getGid(); + method public int getPid(); + method public int getUid(); + } + + public final class Ikev2VpnProfile extends android.net.PlatformVpnProfile { + method @NonNull public java.util.List getAllowedAlgorithms(); + method @Nullable public android.net.ipsec.ike.IkeTunnelConnectionParams getIkeTunnelConnectionParams(); + method public int getMaxMtu(); + method @Nullable public String getPassword(); + method @Nullable public byte[] getPresharedKey(); + method @Nullable public android.net.ProxyInfo getProxyInfo(); + method @Nullable public java.security.PrivateKey getRsaPrivateKey(); + method @NonNull public String getServerAddr(); + method @Nullable public java.security.cert.X509Certificate getServerRootCaCert(); + method @Nullable public java.security.cert.X509Certificate getUserCert(); + method @NonNull public String getUserIdentity(); + method @Nullable public String getUsername(); + method public boolean isAutomaticIpVersionSelectionEnabled(); + method public boolean isAutomaticNattKeepaliveTimerEnabled(); + method public boolean isBypassable(); + method public boolean isMetered(); + } + + public static final class Ikev2VpnProfile.Builder { + ctor public Ikev2VpnProfile.Builder(@NonNull String, @NonNull String); + ctor public Ikev2VpnProfile.Builder(@NonNull android.net.ipsec.ike.IkeTunnelConnectionParams); + method @NonNull public android.net.Ikev2VpnProfile build(); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAllowedAlgorithms(@NonNull java.util.List); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAuthDigitalSignature(@NonNull java.security.cert.X509Certificate, @NonNull java.security.PrivateKey, @Nullable java.security.cert.X509Certificate); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAuthPsk(@NonNull byte[]); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAuthUsernamePassword(@NonNull String, @NonNull String, @Nullable java.security.cert.X509Certificate); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAutomaticIpVersionSelectionEnabled(boolean); + method @NonNull public android.net.Ikev2VpnProfile.Builder setAutomaticNattKeepaliveTimerEnabled(boolean); + method @NonNull public android.net.Ikev2VpnProfile.Builder setBypassable(boolean); + method @NonNull public android.net.Ikev2VpnProfile.Builder setLocalRoutesExcluded(boolean); + method @NonNull public android.net.Ikev2VpnProfile.Builder setMaxMtu(int); + method @NonNull public android.net.Ikev2VpnProfile.Builder setMetered(boolean); + method @NonNull public android.net.Ikev2VpnProfile.Builder setProxy(@Nullable android.net.ProxyInfo); + method @NonNull public android.net.Ikev2VpnProfile.Builder setRequiresInternetValidation(boolean); + } + + public class LocalServerSocket implements java.io.Closeable { + ctor public LocalServerSocket(String) throws java.io.IOException; + ctor public LocalServerSocket(java.io.FileDescriptor) throws java.io.IOException; + method public android.net.LocalSocket accept() throws java.io.IOException; + method public void close() throws java.io.IOException; + method public java.io.FileDescriptor getFileDescriptor(); + method public android.net.LocalSocketAddress getLocalSocketAddress(); + } + + public class LocalSocket implements java.io.Closeable { + ctor public LocalSocket(); + ctor public LocalSocket(int); + method public void bind(android.net.LocalSocketAddress) throws java.io.IOException; + method public void close() throws java.io.IOException; + method public void connect(android.net.LocalSocketAddress) throws java.io.IOException; + method public void connect(android.net.LocalSocketAddress, int) throws java.io.IOException; + method public java.io.FileDescriptor[] getAncillaryFileDescriptors() throws java.io.IOException; + method public java.io.FileDescriptor getFileDescriptor(); + method public java.io.InputStream getInputStream() throws java.io.IOException; + method public android.net.LocalSocketAddress getLocalSocketAddress(); + method public java.io.OutputStream getOutputStream() throws java.io.IOException; + method public android.net.Credentials getPeerCredentials() throws java.io.IOException; + method public int getReceiveBufferSize() throws java.io.IOException; + method public android.net.LocalSocketAddress getRemoteSocketAddress(); + method public int getSendBufferSize() throws java.io.IOException; + method public int getSoTimeout() throws java.io.IOException; + method public boolean isBound(); + method public boolean isClosed(); + method public boolean isConnected(); + method public boolean isInputShutdown(); + method public boolean isOutputShutdown(); + method public void setFileDescriptorsForSend(java.io.FileDescriptor[]); + method public void setReceiveBufferSize(int) throws java.io.IOException; + method public void setSendBufferSize(int) throws java.io.IOException; + method public void setSoTimeout(int) throws java.io.IOException; + method public void shutdownInput() throws java.io.IOException; + method public void shutdownOutput() throws java.io.IOException; + field public static final int SOCKET_DGRAM = 1; // 0x1 + field public static final int SOCKET_SEQPACKET = 3; // 0x3 + field public static final int SOCKET_STREAM = 2; // 0x2 + } + + public class LocalSocketAddress { + ctor public LocalSocketAddress(String, android.net.LocalSocketAddress.Namespace); + ctor public LocalSocketAddress(String); + method public String getName(); + method public android.net.LocalSocketAddress.Namespace getNamespace(); + } + + public enum LocalSocketAddress.Namespace { + enum_constant public static final android.net.LocalSocketAddress.Namespace ABSTRACT; + enum_constant public static final android.net.LocalSocketAddress.Namespace FILESYSTEM; + enum_constant public static final android.net.LocalSocketAddress.Namespace RESERVED; + } + + public class MailTo { + method public String getBody(); + method public String getCc(); + method public java.util.Map getHeaders(); + method public String getSubject(); + method public String getTo(); + method public static boolean isMailTo(String); + method public static android.net.MailTo parse(String) throws android.net.ParseException; + field public static final String MAILTO_SCHEME = "mailto:"; + } + + public abstract class NetworkSpecifier { + ctor public NetworkSpecifier(); + } + + public abstract class PlatformVpnProfile { + method public final boolean areLocalRoutesExcluded(); + method public final int getType(); + method @NonNull public final String getTypeString(); + method public final boolean isInternetValidationRequired(); + field public static final int TYPE_IKEV2_IPSEC_PSK = 7; // 0x7 + field public static final int TYPE_IKEV2_IPSEC_RSA = 8; // 0x8 + field public static final int TYPE_IKEV2_IPSEC_USER_PASS = 6; // 0x6 + } + + public final class Proxy { + ctor public Proxy(); + method @Deprecated public static String getDefaultHost(); + method @Deprecated public static int getDefaultPort(); + method @Deprecated public static String getHost(android.content.Context); + method @Deprecated public static int getPort(android.content.Context); + field public static final String PROXY_CHANGE_ACTION = "android.intent.action.PROXY_CHANGE"; + } + + @Deprecated public class SSLCertificateSocketFactory extends javax.net.ssl.SSLSocketFactory { + ctor @Deprecated public SSLCertificateSocketFactory(int); + method @Deprecated public java.net.Socket createSocket(java.net.Socket, String, int, boolean) throws java.io.IOException; + method @Deprecated public java.net.Socket createSocket(java.net.InetAddress, int, java.net.InetAddress, int) throws java.io.IOException; + method @Deprecated public java.net.Socket createSocket(java.net.InetAddress, int) throws java.io.IOException; + method @Deprecated public java.net.Socket createSocket(String, int, java.net.InetAddress, int) throws java.io.IOException; + method @Deprecated public java.net.Socket createSocket(String, int) throws java.io.IOException; + method @Deprecated public static javax.net.SocketFactory getDefault(int); + method @Deprecated public static javax.net.ssl.SSLSocketFactory getDefault(int, android.net.SSLSessionCache); + method @Deprecated public String[] getDefaultCipherSuites(); + method @Deprecated public static javax.net.ssl.SSLSocketFactory getInsecure(int, android.net.SSLSessionCache); + method @Deprecated public byte[] getNpnSelectedProtocol(java.net.Socket); + method @Deprecated public String[] getSupportedCipherSuites(); + method @Deprecated public void setHostname(java.net.Socket, String); + method @Deprecated public void setKeyManagers(javax.net.ssl.KeyManager[]); + method @Deprecated public void setNpnProtocols(byte[][]); + method @Deprecated public void setTrustManagers(javax.net.ssl.TrustManager[]); + method @Deprecated public void setUseSessionTickets(java.net.Socket, boolean); + } + + public final class SSLSessionCache { + ctor public SSLSessionCache(java.io.File) throws java.io.IOException; + ctor public SSLSessionCache(android.content.Context); + } + + public final class TelephonyNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable { + method public int describeContents(); + method public int getSubscriptionId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TelephonyNetworkSpecifier.Builder { + ctor public TelephonyNetworkSpecifier.Builder(); + method @NonNull public android.net.TelephonyNetworkSpecifier build(); + method @NonNull public android.net.TelephonyNetworkSpecifier.Builder setSubscriptionId(int); + } + + public abstract class Uri implements java.lang.Comparable android.os.Parcelable { + method public abstract android.net.Uri.Builder buildUpon(); + method public int compareTo(android.net.Uri); + method public static String decode(String); + method public static String encode(String); + method public static String encode(String, String); + method public static android.net.Uri fromFile(java.io.File); + method public static android.net.Uri fromParts(String, String, String); + method @Nullable public abstract String getAuthority(); + method public boolean getBooleanQueryParameter(String, boolean); + method @Nullable public abstract String getEncodedAuthority(); + method @Nullable public abstract String getEncodedFragment(); + method @Nullable public abstract String getEncodedPath(); + method @Nullable public abstract String getEncodedQuery(); + method public abstract String getEncodedSchemeSpecificPart(); + method @Nullable public abstract String getEncodedUserInfo(); + method @Nullable public abstract String getFragment(); + method @Nullable public abstract String getHost(); + method @Nullable public abstract String getLastPathSegment(); + method @Nullable public abstract String getPath(); + method public abstract java.util.List getPathSegments(); + method public abstract int getPort(); + method @Nullable public abstract String getQuery(); + method @Nullable public String getQueryParameter(String); + method public java.util.Set getQueryParameterNames(); + method public java.util.List getQueryParameters(String); + method @Nullable public abstract String getScheme(); + method public abstract String getSchemeSpecificPart(); + method @Nullable public abstract String getUserInfo(); + method public boolean isAbsolute(); + method public abstract boolean isHierarchical(); + method public boolean isOpaque(); + method public abstract boolean isRelative(); + method public android.net.Uri normalizeScheme(); + method public static android.net.Uri parse(String); + method public abstract String toString(); + method public static android.net.Uri withAppendedPath(android.net.Uri, String); + method public static void writeToParcel(android.os.Parcel, android.net.Uri); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final android.net.Uri EMPTY; + } + + public static final class Uri.Builder { + ctor public Uri.Builder(); + method public android.net.Uri.Builder appendEncodedPath(String); + method public android.net.Uri.Builder appendPath(String); + method public android.net.Uri.Builder appendQueryParameter(String, String); + method public android.net.Uri.Builder authority(String); + method public android.net.Uri build(); + method public android.net.Uri.Builder clearQuery(); + method public android.net.Uri.Builder encodedAuthority(String); + method public android.net.Uri.Builder encodedFragment(String); + method public android.net.Uri.Builder encodedOpaquePart(String); + method public android.net.Uri.Builder encodedPath(String); + method public android.net.Uri.Builder encodedQuery(String); + method public android.net.Uri.Builder fragment(String); + method public android.net.Uri.Builder opaquePart(String); + method public android.net.Uri.Builder path(String); + method public android.net.Uri.Builder query(String); + method public android.net.Uri.Builder scheme(String); + } + + public class UrlQuerySanitizer { + ctor public UrlQuerySanitizer(); + ctor public UrlQuerySanitizer(String); + method protected void addSanitizedEntry(String, String); + method protected void clear(); + method protected int decodeHexDigit(char); + method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAllButNulAndAngleBracketsLegal(); + method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAllButNulLegal(); + method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAllButWhitespaceLegal(); + method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAllIllegal(); + method public boolean getAllowUnregisteredParamaters(); + method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAmpAndSpaceLegal(); + method public static final android.net.UrlQuerySanitizer.ValueSanitizer getAmpLegal(); + method public android.net.UrlQuerySanitizer.ValueSanitizer getEffectiveValueSanitizer(String); + method public java.util.List getParameterList(); + method public java.util.Set getParameterSet(); + method public boolean getPreferFirstRepeatedParameter(); + method public static final android.net.UrlQuerySanitizer.ValueSanitizer getSpaceLegal(); + method public android.net.UrlQuerySanitizer.ValueSanitizer getUnregisteredParameterValueSanitizer(); + method public static final android.net.UrlQuerySanitizer.ValueSanitizer getUrlAndSpaceLegal(); + method public static final android.net.UrlQuerySanitizer.ValueSanitizer getUrlLegal(); + method public String getValue(String); + method public android.net.UrlQuerySanitizer.ValueSanitizer getValueSanitizer(String); + method public boolean hasParameter(String); + method protected boolean isHexDigit(char); + method protected void parseEntry(String, String); + method public void parseQuery(String); + method public void parseUrl(String); + method public void registerParameter(String, android.net.UrlQuerySanitizer.ValueSanitizer); + method public void registerParameters(String[], android.net.UrlQuerySanitizer.ValueSanitizer); + method public void setAllowUnregisteredParamaters(boolean); + method public void setPreferFirstRepeatedParameter(boolean); + method public void setUnregisteredParameterValueSanitizer(android.net.UrlQuerySanitizer.ValueSanitizer); + method public String unescape(String); + } + + public static class UrlQuerySanitizer.IllegalCharacterValueSanitizer implements android.net.UrlQuerySanitizer.ValueSanitizer { + ctor public UrlQuerySanitizer.IllegalCharacterValueSanitizer(int); + method public String sanitize(String); + field public static final int ALL_BUT_NUL_AND_ANGLE_BRACKETS_LEGAL = 1439; // 0x59f + field public static final int ALL_BUT_NUL_LEGAL = 1535; // 0x5ff + field public static final int ALL_BUT_WHITESPACE_LEGAL = 1532; // 0x5fc + field public static final int ALL_ILLEGAL = 0; // 0x0 + field public static final int ALL_OK = 2047; // 0x7ff + field public static final int ALL_WHITESPACE_OK = 3; // 0x3 + field public static final int AMP_AND_SPACE_LEGAL = 129; // 0x81 + field public static final int AMP_LEGAL = 128; // 0x80 + field public static final int AMP_OK = 128; // 0x80 + field public static final int DQUOTE_OK = 8; // 0x8 + field public static final int GT_OK = 64; // 0x40 + field public static final int LT_OK = 32; // 0x20 + field public static final int NON_7_BIT_ASCII_OK = 4; // 0x4 + field public static final int NUL_OK = 512; // 0x200 + field public static final int OTHER_WHITESPACE_OK = 2; // 0x2 + field public static final int PCT_OK = 256; // 0x100 + field public static final int SCRIPT_URL_OK = 1024; // 0x400 + field public static final int SPACE_LEGAL = 1; // 0x1 + field public static final int SPACE_OK = 1; // 0x1 + field public static final int SQUOTE_OK = 16; // 0x10 + field public static final int URL_AND_SPACE_LEGAL = 405; // 0x195 + field public static final int URL_LEGAL = 404; // 0x194 + } + + public class UrlQuerySanitizer.ParameterValuePair { + ctor public UrlQuerySanitizer.ParameterValuePair(String, String); + field public String mParameter; + field public String mValue; + } + + public static interface UrlQuerySanitizer.ValueSanitizer { + method public String sanitize(String); + } + + public class VpnManager { + method public void deleteProvisionedVpnProfile(); + method @Nullable public android.net.VpnProfileState getProvisionedVpnProfileState(); + method @Nullable public android.content.Intent provisionVpnProfile(@NonNull android.net.PlatformVpnProfile); + method @Deprecated public void startProvisionedVpnProfile(); + method @NonNull public String startProvisionedVpnProfileSession(); + method public void stopProvisionedVpnProfile(); + field public static final String ACTION_VPN_MANAGER_EVENT = "android.net.action.VPN_MANAGER_EVENT"; + field public static final String CATEGORY_EVENT_ALWAYS_ON_STATE_CHANGED = "android.net.category.EVENT_ALWAYS_ON_STATE_CHANGED"; + field public static final String CATEGORY_EVENT_DEACTIVATED_BY_USER = "android.net.category.EVENT_DEACTIVATED_BY_USER"; + field public static final String CATEGORY_EVENT_IKE_ERROR = "android.net.category.EVENT_IKE_ERROR"; + field public static final String CATEGORY_EVENT_NETWORK_ERROR = "android.net.category.EVENT_NETWORK_ERROR"; + field public static final int ERROR_CLASS_NOT_RECOVERABLE = 1; // 0x1 + field public static final int ERROR_CLASS_RECOVERABLE = 2; // 0x2 + field public static final int ERROR_CODE_NETWORK_IO = 3; // 0x3 + field public static final int ERROR_CODE_NETWORK_LOST = 2; // 0x2 + field public static final int ERROR_CODE_NETWORK_PROTOCOL_TIMEOUT = 1; // 0x1 + field public static final int ERROR_CODE_NETWORK_UNKNOWN_HOST = 0; // 0x0 + field public static final String EXTRA_ERROR_CLASS = "android.net.extra.ERROR_CLASS"; + field public static final String EXTRA_ERROR_CODE = "android.net.extra.ERROR_CODE"; + field public static final String EXTRA_SESSION_KEY = "android.net.extra.SESSION_KEY"; + field public static final String EXTRA_TIMESTAMP_MILLIS = "android.net.extra.TIMESTAMP_MILLIS"; + field public static final String EXTRA_UNDERLYING_LINK_PROPERTIES = "android.net.extra.UNDERLYING_LINK_PROPERTIES"; + field public static final String EXTRA_UNDERLYING_NETWORK = "android.net.extra.UNDERLYING_NETWORK"; + field public static final String EXTRA_UNDERLYING_NETWORK_CAPABILITIES = "android.net.extra.UNDERLYING_NETWORK_CAPABILITIES"; + field public static final String EXTRA_VPN_PROFILE_STATE = "android.net.extra.VPN_PROFILE_STATE"; + } + + public final class VpnProfileState implements android.os.Parcelable { + ctor public VpnProfileState(int, @Nullable String, boolean, boolean); + method public int describeContents(); + method @Nullable public String getSessionId(); + method public int getState(); + method public boolean isAlwaysOn(); + method public boolean isLockdownEnabled(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STATE_CONNECTED = 2; // 0x2 + field public static final int STATE_CONNECTING = 1; // 0x1 + field public static final int STATE_DISCONNECTED = 0; // 0x0 + field public static final int STATE_FAILED = 3; // 0x3 + } + + public class VpnService extends android.app.Service { + ctor public VpnService(); + method public final boolean isAlwaysOn(); + method public final boolean isLockdownEnabled(); + method public android.os.IBinder onBind(android.content.Intent); + method public void onRevoke(); + method public static android.content.Intent prepare(android.content.Context); + method public boolean protect(int); + method public boolean protect(java.net.Socket); + method public boolean protect(java.net.DatagramSocket); + method public boolean setUnderlyingNetworks(android.net.Network[]); + field public static final String SERVICE_INTERFACE = "android.net.VpnService"; + field public static final String SERVICE_META_DATA_SUPPORTS_ALWAYS_ON = "android.net.VpnService.SUPPORTS_ALWAYS_ON"; + } + + public class VpnService.Builder { + ctor public VpnService.Builder(); + method @NonNull public android.net.VpnService.Builder addAddress(@NonNull java.net.InetAddress, int); + method @NonNull public android.net.VpnService.Builder addAddress(@NonNull String, int); + method @NonNull public android.net.VpnService.Builder addAllowedApplication(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.net.VpnService.Builder addDisallowedApplication(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; + method @NonNull public android.net.VpnService.Builder addDnsServer(@NonNull java.net.InetAddress); + method @NonNull public android.net.VpnService.Builder addDnsServer(@NonNull String); + method @NonNull public android.net.VpnService.Builder addRoute(@NonNull java.net.InetAddress, int); + method @NonNull public android.net.VpnService.Builder addRoute(@NonNull android.net.IpPrefix); + method @NonNull public android.net.VpnService.Builder addRoute(@NonNull String, int); + method @NonNull public android.net.VpnService.Builder addSearchDomain(@NonNull String); + method @NonNull public android.net.VpnService.Builder allowBypass(); + method @NonNull public android.net.VpnService.Builder allowFamily(int); + method @Nullable public android.os.ParcelFileDescriptor establish(); + method @NonNull public android.net.VpnService.Builder excludeRoute(@NonNull android.net.IpPrefix); + method @NonNull public android.net.VpnService.Builder setBlocking(boolean); + method @NonNull public android.net.VpnService.Builder setConfigureIntent(@NonNull android.app.PendingIntent); + method @NonNull public android.net.VpnService.Builder setHttpProxy(@NonNull android.net.ProxyInfo); + method @NonNull public android.net.VpnService.Builder setMetered(boolean); + method @NonNull public android.net.VpnService.Builder setMtu(int); + method @NonNull public android.net.VpnService.Builder setSession(@NonNull String); + method @NonNull public android.net.VpnService.Builder setUnderlyingNetworks(@Nullable android.net.Network[]); + } + +} + +package android.net.http { + + public final class HttpResponseCache extends java.net.ResponseCache implements java.io.Closeable { + method public void close() throws java.io.IOException; + method public void delete() throws java.io.IOException; + method public void flush(); + method public java.net.CacheResponse get(java.net.URI, String, java.util.Map>) throws java.io.IOException; + method public int getHitCount(); + method public static android.net.http.HttpResponseCache getInstalled(); + method public int getNetworkCount(); + method public int getRequestCount(); + method public static android.net.http.HttpResponseCache install(java.io.File, long) throws java.io.IOException; + method public long maxSize(); + method public java.net.CacheRequest put(java.net.URI, java.net.URLConnection) throws java.io.IOException; + method public long size(); + } + + public class SslCertificate { + ctor @Deprecated public SslCertificate(String, String, String, String); + ctor @Deprecated public SslCertificate(String, String, java.util.Date, java.util.Date); + ctor public SslCertificate(java.security.cert.X509Certificate); + method public android.net.http.SslCertificate.DName getIssuedBy(); + method public android.net.http.SslCertificate.DName getIssuedTo(); + method @Deprecated public String getValidNotAfter(); + method public java.util.Date getValidNotAfterDate(); + method @Deprecated public String getValidNotBefore(); + method public java.util.Date getValidNotBeforeDate(); + method @Nullable public java.security.cert.X509Certificate getX509Certificate(); + method public static android.net.http.SslCertificate restoreState(android.os.Bundle); + method public static android.os.Bundle saveState(android.net.http.SslCertificate); + } + + public class SslCertificate.DName { + ctor public SslCertificate.DName(String); + method public String getCName(); + method public String getDName(); + method public String getOName(); + method public String getUName(); + } + + public class SslError { + ctor @Deprecated public SslError(int, android.net.http.SslCertificate); + ctor @Deprecated public SslError(int, java.security.cert.X509Certificate); + ctor public SslError(int, android.net.http.SslCertificate, String); + ctor public SslError(int, java.security.cert.X509Certificate, String); + method public boolean addError(int); + method public android.net.http.SslCertificate getCertificate(); + method public int getPrimaryError(); + method public String getUrl(); + method public boolean hasError(int); + field public static final int SSL_DATE_INVALID = 4; // 0x4 + field public static final int SSL_EXPIRED = 1; // 0x1 + field public static final int SSL_IDMISMATCH = 2; // 0x2 + field public static final int SSL_INVALID = 5; // 0x5 + field @Deprecated public static final int SSL_MAX_ERROR = 6; // 0x6 + field public static final int SSL_NOTYETVALID = 0; // 0x0 + field public static final int SSL_UNTRUSTED = 3; // 0x3 + } + + public class X509TrustManagerExtensions { + ctor public X509TrustManagerExtensions(javax.net.ssl.X509TrustManager) throws java.lang.IllegalArgumentException; + method public java.util.List checkServerTrusted(java.security.cert.X509Certificate[], String, String) throws java.security.cert.CertificateException; + method @FlaggedApi("android.net.platform.flags.x509_extensions_certificate_transparency") @NonNull public java.util.List checkServerTrusted(@NonNull java.security.cert.X509Certificate[], @Nullable byte[], @Nullable byte[], @NonNull String, @NonNull String) throws java.security.cert.CertificateException; + method public boolean isSameTrustConfiguration(String, String); + method public boolean isUserAddedCertificate(java.security.cert.X509Certificate); + } + +} + +package android.net.rtp { + + @Deprecated public class AudioCodec { + method @Deprecated public static android.net.rtp.AudioCodec getCodec(int, String, String); + method @Deprecated public static android.net.rtp.AudioCodec[] getCodecs(); + field @Deprecated public static final android.net.rtp.AudioCodec AMR; + field @Deprecated public static final android.net.rtp.AudioCodec GSM; + field @Deprecated public static final android.net.rtp.AudioCodec GSM_EFR; + field @Deprecated public static final android.net.rtp.AudioCodec PCMA; + field @Deprecated public static final android.net.rtp.AudioCodec PCMU; + field @Deprecated public final String fmtp; + field @Deprecated public final String rtpmap; + field @Deprecated public final int type; + } + + @Deprecated public class AudioGroup { + ctor @Deprecated public AudioGroup(); + ctor @Deprecated public AudioGroup(@NonNull android.content.Context); + method @Deprecated public void clear(); + method @Deprecated public int getMode(); + method @Deprecated public android.net.rtp.AudioStream[] getStreams(); + method @Deprecated public void sendDtmf(int); + method @Deprecated public void setMode(int); + field @Deprecated public static final int MODE_ECHO_SUPPRESSION = 3; // 0x3 + field @Deprecated public static final int MODE_MUTED = 1; // 0x1 + field @Deprecated public static final int MODE_NORMAL = 2; // 0x2 + field @Deprecated public static final int MODE_ON_HOLD = 0; // 0x0 + } + + @Deprecated public class AudioStream extends android.net.rtp.RtpStream { + ctor @Deprecated public AudioStream(java.net.InetAddress) throws java.net.SocketException; + method @Deprecated public android.net.rtp.AudioCodec getCodec(); + method @Deprecated public int getDtmfType(); + method @Deprecated public android.net.rtp.AudioGroup getGroup(); + method @Deprecated public final boolean isBusy(); + method @Deprecated public void join(android.net.rtp.AudioGroup); + method @Deprecated public void setCodec(android.net.rtp.AudioCodec); + method @Deprecated public void setDtmfType(int); + } + + @Deprecated public class RtpStream { + method @Deprecated public void associate(java.net.InetAddress, int); + method @Deprecated public java.net.InetAddress getLocalAddress(); + method @Deprecated public int getLocalPort(); + method @Deprecated public int getMode(); + method @Deprecated public java.net.InetAddress getRemoteAddress(); + method @Deprecated public int getRemotePort(); + method @Deprecated public boolean isBusy(); + method @Deprecated public void release(); + method @Deprecated public void setMode(int); + field @Deprecated public static final int MODE_NORMAL = 0; // 0x0 + field @Deprecated public static final int MODE_RECEIVE_ONLY = 2; // 0x2 + field @Deprecated public static final int MODE_SEND_ONLY = 1; // 0x1 + } + +} + +package android.net.sip { + + @Deprecated public class SipAudioCall { + ctor @Deprecated public SipAudioCall(android.content.Context, android.net.sip.SipProfile); + method @Deprecated public void answerCall(int) throws android.net.sip.SipException; + method @Deprecated public void attachCall(android.net.sip.SipSession, String) throws android.net.sip.SipException; + method @Deprecated public void close(); + method @Deprecated public void continueCall(int) throws android.net.sip.SipException; + method @Deprecated public void endCall() throws android.net.sip.SipException; + method @Deprecated public android.net.sip.SipProfile getLocalProfile(); + method @Deprecated public android.net.sip.SipProfile getPeerProfile(); + method @Deprecated public int getState(); + method @Deprecated public void holdCall(int) throws android.net.sip.SipException; + method @Deprecated public boolean isInCall(); + method @Deprecated public boolean isMuted(); + method @Deprecated public boolean isOnHold(); + method @Deprecated public void makeCall(android.net.sip.SipProfile, android.net.sip.SipSession, int) throws android.net.sip.SipException; + method @Deprecated public void sendDtmf(int); + method @Deprecated public void sendDtmf(int, android.os.Message); + method @Deprecated public void setListener(android.net.sip.SipAudioCall.Listener); + method @Deprecated public void setListener(android.net.sip.SipAudioCall.Listener, boolean); + method @Deprecated public void setSpeakerMode(boolean); + method @Deprecated public void startAudio(); + method @Deprecated public void toggleMute(); + } + + @Deprecated public static class SipAudioCall.Listener { + ctor @Deprecated public SipAudioCall.Listener(); + method @Deprecated public void onCallBusy(android.net.sip.SipAudioCall); + method @Deprecated public void onCallEnded(android.net.sip.SipAudioCall); + method @Deprecated public void onCallEstablished(android.net.sip.SipAudioCall); + method @Deprecated public void onCallHeld(android.net.sip.SipAudioCall); + method @Deprecated public void onCalling(android.net.sip.SipAudioCall); + method @Deprecated public void onChanged(android.net.sip.SipAudioCall); + method @Deprecated public void onError(android.net.sip.SipAudioCall, int, String); + method @Deprecated public void onReadyToCall(android.net.sip.SipAudioCall); + method @Deprecated public void onRinging(android.net.sip.SipAudioCall, android.net.sip.SipProfile); + method @Deprecated public void onRingingBack(android.net.sip.SipAudioCall); + } + + @Deprecated public class SipErrorCode { + method @Deprecated public static String toString(int); + field @Deprecated public static final int CLIENT_ERROR = -4; // 0xfffffffc + field @Deprecated public static final int CROSS_DOMAIN_AUTHENTICATION = -11; // 0xfffffff5 + field @Deprecated public static final int DATA_CONNECTION_LOST = -10; // 0xfffffff6 + field @Deprecated public static final int INVALID_CREDENTIALS = -8; // 0xfffffff8 + field @Deprecated public static final int INVALID_REMOTE_URI = -6; // 0xfffffffa + field @Deprecated public static final int IN_PROGRESS = -9; // 0xfffffff7 + field @Deprecated public static final int NO_ERROR = 0; // 0x0 + field @Deprecated public static final int PEER_NOT_REACHABLE = -7; // 0xfffffff9 + field @Deprecated public static final int SERVER_ERROR = -2; // 0xfffffffe + field @Deprecated public static final int SERVER_UNREACHABLE = -12; // 0xfffffff4 + field @Deprecated public static final int SOCKET_ERROR = -1; // 0xffffffff + field @Deprecated public static final int TIME_OUT = -5; // 0xfffffffb + field @Deprecated public static final int TRANSACTION_TERMINTED = -3; // 0xfffffffd + } + + @Deprecated public class SipException extends java.lang.Exception { + ctor @Deprecated public SipException(); + ctor @Deprecated public SipException(String); + ctor @Deprecated public SipException(String, Throwable); + } + + @Deprecated public class SipManager { + method @Deprecated public void close(String) throws android.net.sip.SipException; + method @Deprecated public android.net.sip.SipSession createSipSession(android.net.sip.SipProfile, android.net.sip.SipSession.Listener) throws android.net.sip.SipException; + method @Deprecated public static String getCallId(android.content.Intent); + method @Deprecated public static String getOfferSessionDescription(android.content.Intent); + method @Deprecated public android.net.sip.SipSession getSessionFor(android.content.Intent) throws android.net.sip.SipException; + method @Deprecated public static boolean isApiSupported(android.content.Context); + method @Deprecated public static boolean isIncomingCallIntent(android.content.Intent); + method @Deprecated public boolean isOpened(String) throws android.net.sip.SipException; + method @Deprecated public boolean isRegistered(String) throws android.net.sip.SipException; + method @Deprecated public static boolean isSipWifiOnly(android.content.Context); + method @Deprecated public static boolean isVoipSupported(android.content.Context); + method @Deprecated public android.net.sip.SipAudioCall makeAudioCall(android.net.sip.SipProfile, android.net.sip.SipProfile, android.net.sip.SipAudioCall.Listener, int) throws android.net.sip.SipException; + method @Deprecated public android.net.sip.SipAudioCall makeAudioCall(String, String, android.net.sip.SipAudioCall.Listener, int) throws android.net.sip.SipException; + method @Deprecated public static android.net.sip.SipManager newInstance(android.content.Context); + method @Deprecated public void open(android.net.sip.SipProfile) throws android.net.sip.SipException; + method @Deprecated public void open(android.net.sip.SipProfile, android.app.PendingIntent, android.net.sip.SipRegistrationListener) throws android.net.sip.SipException; + method @Deprecated public void register(android.net.sip.SipProfile, int, android.net.sip.SipRegistrationListener) throws android.net.sip.SipException; + method @Deprecated public void setRegistrationListener(String, android.net.sip.SipRegistrationListener) throws android.net.sip.SipException; + method @Deprecated public android.net.sip.SipAudioCall takeAudioCall(android.content.Intent, android.net.sip.SipAudioCall.Listener) throws android.net.sip.SipException; + method @Deprecated public void unregister(android.net.sip.SipProfile, android.net.sip.SipRegistrationListener) throws android.net.sip.SipException; + field @Deprecated public static final String EXTRA_CALL_ID = "android:sipCallID"; + field @Deprecated public static final String EXTRA_OFFER_SD = "android:sipOfferSD"; + field @Deprecated public static final int INCOMING_CALL_RESULT_CODE = 101; // 0x65 + } + + @Deprecated public class SipProfile implements java.lang.Cloneable android.os.Parcelable java.io.Serializable { + method @Deprecated public int describeContents(); + method @Deprecated public String getAuthUserName(); + method @Deprecated public boolean getAutoRegistration(); + method @Deprecated public String getDisplayName(); + method @Deprecated public String getPassword(); + method @Deprecated public int getPort(); + method @Deprecated public String getProfileName(); + method @Deprecated public String getProtocol(); + method @Deprecated public String getProxyAddress(); + method @Deprecated public boolean getSendKeepAlive(); + method @Deprecated public String getSipDomain(); + method @Deprecated public String getUriString(); + method @Deprecated public String getUserName(); + method @Deprecated public void setCallingUid(int); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated public static final android.os.Parcelable.Creator CREATOR; + } + + @Deprecated public static class SipProfile.Builder { + ctor @Deprecated public SipProfile.Builder(android.net.sip.SipProfile); + ctor @Deprecated public SipProfile.Builder(String) throws java.text.ParseException; + ctor @Deprecated public SipProfile.Builder(String, String) throws java.text.ParseException; + method @Deprecated public android.net.sip.SipProfile build(); + method @Deprecated public android.net.sip.SipProfile.Builder setAuthUserName(String); + method @Deprecated public android.net.sip.SipProfile.Builder setAutoRegistration(boolean); + method @Deprecated public android.net.sip.SipProfile.Builder setDisplayName(String); + method @Deprecated public android.net.sip.SipProfile.Builder setOutboundProxy(String); + method @Deprecated public android.net.sip.SipProfile.Builder setPassword(String); + method @Deprecated public android.net.sip.SipProfile.Builder setPort(int) throws java.lang.IllegalArgumentException; + method @Deprecated public android.net.sip.SipProfile.Builder setProfileName(String); + method @Deprecated public android.net.sip.SipProfile.Builder setProtocol(String) throws java.lang.IllegalArgumentException; + method @Deprecated public android.net.sip.SipProfile.Builder setSendKeepAlive(boolean); + } + + @Deprecated public interface SipRegistrationListener { + method @Deprecated public void onRegistering(String); + method @Deprecated public void onRegistrationDone(String, long); + method @Deprecated public void onRegistrationFailed(String, int, String); + } + + @Deprecated public final class SipSession { + method @Deprecated public void answerCall(String, int); + method @Deprecated public void changeCall(String, int); + method @Deprecated public void endCall(); + method @Deprecated public String getCallId(); + method @Deprecated public String getLocalIp(); + method @Deprecated public android.net.sip.SipProfile getLocalProfile(); + method @Deprecated public android.net.sip.SipProfile getPeerProfile(); + method @Deprecated public int getState(); + method @Deprecated public boolean isInCall(); + method @Deprecated public void makeCall(android.net.sip.SipProfile, String, int); + method @Deprecated public void register(int); + method @Deprecated public void setListener(android.net.sip.SipSession.Listener); + method @Deprecated public void unregister(); + } + + @Deprecated public static class SipSession.Listener { + ctor @Deprecated public SipSession.Listener(); + method @Deprecated public void onCallBusy(android.net.sip.SipSession); + method @Deprecated public void onCallChangeFailed(android.net.sip.SipSession, int, String); + method @Deprecated public void onCallEnded(android.net.sip.SipSession); + method @Deprecated public void onCallEstablished(android.net.sip.SipSession, String); + method @Deprecated public void onCalling(android.net.sip.SipSession); + method @Deprecated public void onError(android.net.sip.SipSession, int, String); + method @Deprecated public void onRegistering(android.net.sip.SipSession); + method @Deprecated public void onRegistrationDone(android.net.sip.SipSession, int); + method @Deprecated public void onRegistrationFailed(android.net.sip.SipSession, int, String); + method @Deprecated public void onRegistrationTimeout(android.net.sip.SipSession); + method @Deprecated public void onRinging(android.net.sip.SipSession, android.net.sip.SipProfile, String); + method @Deprecated public void onRingingBack(android.net.sip.SipSession); + } + + @Deprecated public static class SipSession.State { + method @Deprecated public static String toString(int); + field @Deprecated public static final int DEREGISTERING = 2; // 0x2 + field @Deprecated public static final int INCOMING_CALL = 3; // 0x3 + field @Deprecated public static final int INCOMING_CALL_ANSWERING = 4; // 0x4 + field @Deprecated public static final int IN_CALL = 8; // 0x8 + field @Deprecated public static final int NOT_DEFINED = 101; // 0x65 + field @Deprecated public static final int OUTGOING_CALL = 5; // 0x5 + field @Deprecated public static final int OUTGOING_CALL_CANCELING = 7; // 0x7 + field @Deprecated public static final int OUTGOING_CALL_RING_BACK = 6; // 0x6 + field @Deprecated public static final int PINGING = 9; // 0x9 + field @Deprecated public static final int READY_TO_CALL = 0; // 0x0 + field @Deprecated public static final int REGISTERING = 1; // 0x1 + } + +} + +package android.opengl { + + public class EGL14 { + ctor public EGL14(); + method public static boolean eglBindAPI(int); + method public static boolean eglBindTexImage(android.opengl.EGLDisplay, android.opengl.EGLSurface, int); + method public static boolean eglChooseConfig(android.opengl.EGLDisplay, int[], int, android.opengl.EGLConfig[], int, int, int[], int); + method public static boolean eglCopyBuffers(android.opengl.EGLDisplay, android.opengl.EGLSurface, int); + method public static android.opengl.EGLContext eglCreateContext(android.opengl.EGLDisplay, android.opengl.EGLConfig, android.opengl.EGLContext, int[], int); + method public static android.opengl.EGLSurface eglCreatePbufferFromClientBuffer(android.opengl.EGLDisplay, int, int, android.opengl.EGLConfig, int[], int); + method public static android.opengl.EGLSurface eglCreatePbufferSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, int[], int); + method @Deprecated public static android.opengl.EGLSurface eglCreatePixmapSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, int, int[], int); + method public static android.opengl.EGLSurface eglCreateWindowSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, Object, int[], int); + method public static boolean eglDestroyContext(android.opengl.EGLDisplay, android.opengl.EGLContext); + method public static boolean eglDestroySurface(android.opengl.EGLDisplay, android.opengl.EGLSurface); + method public static boolean eglGetConfigAttrib(android.opengl.EGLDisplay, android.opengl.EGLConfig, int, int[], int); + method public static boolean eglGetConfigs(android.opengl.EGLDisplay, android.opengl.EGLConfig[], int, int, int[], int); + method public static android.opengl.EGLContext eglGetCurrentContext(); + method public static android.opengl.EGLDisplay eglGetCurrentDisplay(); + method public static android.opengl.EGLSurface eglGetCurrentSurface(int); + method public static android.opengl.EGLDisplay eglGetDisplay(int); + method public static int eglGetError(); + method public static boolean eglInitialize(android.opengl.EGLDisplay, int[], int, int[], int); + method public static boolean eglMakeCurrent(android.opengl.EGLDisplay, android.opengl.EGLSurface, android.opengl.EGLSurface, android.opengl.EGLContext); + method public static int eglQueryAPI(); + method public static boolean eglQueryContext(android.opengl.EGLDisplay, android.opengl.EGLContext, int, int[], int); + method public static String eglQueryString(android.opengl.EGLDisplay, int); + method public static boolean eglQuerySurface(android.opengl.EGLDisplay, android.opengl.EGLSurface, int, int[], int); + method public static boolean eglReleaseTexImage(android.opengl.EGLDisplay, android.opengl.EGLSurface, int); + method public static boolean eglReleaseThread(); + method public static boolean eglSurfaceAttrib(android.opengl.EGLDisplay, android.opengl.EGLSurface, int, int); + method public static boolean eglSwapBuffers(android.opengl.EGLDisplay, android.opengl.EGLSurface); + method public static boolean eglSwapInterval(android.opengl.EGLDisplay, int); + method public static boolean eglTerminate(android.opengl.EGLDisplay); + method public static boolean eglWaitClient(); + method public static boolean eglWaitGL(); + method public static boolean eglWaitNative(int); + field public static final int EGL_ALPHA_MASK_SIZE = 12350; // 0x303e + field public static final int EGL_ALPHA_SIZE = 12321; // 0x3021 + field public static final int EGL_BACK_BUFFER = 12420; // 0x3084 + field public static final int EGL_BAD_ACCESS = 12290; // 0x3002 + field public static final int EGL_BAD_ALLOC = 12291; // 0x3003 + field public static final int EGL_BAD_ATTRIBUTE = 12292; // 0x3004 + field public static final int EGL_BAD_CONFIG = 12293; // 0x3005 + field public static final int EGL_BAD_CONTEXT = 12294; // 0x3006 + field public static final int EGL_BAD_CURRENT_SURFACE = 12295; // 0x3007 + field public static final int EGL_BAD_DISPLAY = 12296; // 0x3008 + field public static final int EGL_BAD_MATCH = 12297; // 0x3009 + field public static final int EGL_BAD_NATIVE_PIXMAP = 12298; // 0x300a + field public static final int EGL_BAD_NATIVE_WINDOW = 12299; // 0x300b + field public static final int EGL_BAD_PARAMETER = 12300; // 0x300c + field public static final int EGL_BAD_SURFACE = 12301; // 0x300d + field public static final int EGL_BIND_TO_TEXTURE_RGB = 12345; // 0x3039 + field public static final int EGL_BIND_TO_TEXTURE_RGBA = 12346; // 0x303a + field public static final int EGL_BLUE_SIZE = 12322; // 0x3022 + field public static final int EGL_BUFFER_DESTROYED = 12437; // 0x3095 + field public static final int EGL_BUFFER_PRESERVED = 12436; // 0x3094 + field public static final int EGL_BUFFER_SIZE = 12320; // 0x3020 + field public static final int EGL_CLIENT_APIS = 12429; // 0x308d + field public static final int EGL_COLOR_BUFFER_TYPE = 12351; // 0x303f + field public static final int EGL_CONFIG_CAVEAT = 12327; // 0x3027 + field public static final int EGL_CONFIG_ID = 12328; // 0x3028 + field public static final int EGL_CONFORMANT = 12354; // 0x3042 + field public static final int EGL_CONTEXT_CLIENT_TYPE = 12439; // 0x3097 + field public static final int EGL_CONTEXT_CLIENT_VERSION = 12440; // 0x3098 + field public static final int EGL_CONTEXT_LOST = 12302; // 0x300e + field public static final int EGL_CORE_NATIVE_ENGINE = 12379; // 0x305b + field public static final int EGL_DEFAULT_DISPLAY = 0; // 0x0 + field public static final int EGL_DEPTH_SIZE = 12325; // 0x3025 + field public static final int EGL_DISPLAY_SCALING = 10000; // 0x2710 + field public static final int EGL_DRAW = 12377; // 0x3059 + field public static final int EGL_EXTENSIONS = 12373; // 0x3055 + field public static final int EGL_FALSE = 0; // 0x0 + field public static final int EGL_GREEN_SIZE = 12323; // 0x3023 + field public static final int EGL_HEIGHT = 12374; // 0x3056 + field public static final int EGL_HORIZONTAL_RESOLUTION = 12432; // 0x3090 + field public static final int EGL_LARGEST_PBUFFER = 12376; // 0x3058 + field public static final int EGL_LEVEL = 12329; // 0x3029 + field public static final int EGL_LUMINANCE_BUFFER = 12431; // 0x308f + field public static final int EGL_LUMINANCE_SIZE = 12349; // 0x303d + field public static final int EGL_MATCH_NATIVE_PIXMAP = 12353; // 0x3041 + field public static final int EGL_MAX_PBUFFER_HEIGHT = 12330; // 0x302a + field public static final int EGL_MAX_PBUFFER_PIXELS = 12331; // 0x302b + field public static final int EGL_MAX_PBUFFER_WIDTH = 12332; // 0x302c + field public static final int EGL_MAX_SWAP_INTERVAL = 12348; // 0x303c + field public static final int EGL_MIN_SWAP_INTERVAL = 12347; // 0x303b + field public static final int EGL_MIPMAP_LEVEL = 12419; // 0x3083 + field public static final int EGL_MIPMAP_TEXTURE = 12418; // 0x3082 + field public static final int EGL_MULTISAMPLE_RESOLVE = 12441; // 0x3099 + field public static final int EGL_MULTISAMPLE_RESOLVE_BOX = 12443; // 0x309b + field public static final int EGL_MULTISAMPLE_RESOLVE_BOX_BIT = 512; // 0x200 + field public static final int EGL_MULTISAMPLE_RESOLVE_DEFAULT = 12442; // 0x309a + field public static final int EGL_NATIVE_RENDERABLE = 12333; // 0x302d + field public static final int EGL_NATIVE_VISUAL_ID = 12334; // 0x302e + field public static final int EGL_NATIVE_VISUAL_TYPE = 12335; // 0x302f + field public static final int EGL_NONE = 12344; // 0x3038 + field public static final int EGL_NON_CONFORMANT_CONFIG = 12369; // 0x3051 + field public static final int EGL_NOT_INITIALIZED = 12289; // 0x3001 + field public static android.opengl.EGLContext EGL_NO_CONTEXT; + field public static android.opengl.EGLDisplay EGL_NO_DISPLAY; + field public static android.opengl.EGLSurface EGL_NO_SURFACE; + field public static final int EGL_NO_TEXTURE = 12380; // 0x305c + field public static final int EGL_OPENGL_API = 12450; // 0x30a2 + field public static final int EGL_OPENGL_BIT = 8; // 0x8 + field public static final int EGL_OPENGL_ES2_BIT = 4; // 0x4 + field public static final int EGL_OPENGL_ES_API = 12448; // 0x30a0 + field public static final int EGL_OPENGL_ES_BIT = 1; // 0x1 + field public static final int EGL_OPENVG_API = 12449; // 0x30a1 + field public static final int EGL_OPENVG_BIT = 2; // 0x2 + field public static final int EGL_OPENVG_IMAGE = 12438; // 0x3096 + field public static final int EGL_PBUFFER_BIT = 1; // 0x1 + field public static final int EGL_PIXEL_ASPECT_RATIO = 12434; // 0x3092 + field public static final int EGL_PIXMAP_BIT = 2; // 0x2 + field public static final int EGL_READ = 12378; // 0x305a + field public static final int EGL_RED_SIZE = 12324; // 0x3024 + field public static final int EGL_RENDERABLE_TYPE = 12352; // 0x3040 + field public static final int EGL_RENDER_BUFFER = 12422; // 0x3086 + field public static final int EGL_RGB_BUFFER = 12430; // 0x308e + field public static final int EGL_SAMPLES = 12337; // 0x3031 + field public static final int EGL_SAMPLE_BUFFERS = 12338; // 0x3032 + field public static final int EGL_SINGLE_BUFFER = 12421; // 0x3085 + field public static final int EGL_SLOW_CONFIG = 12368; // 0x3050 + field public static final int EGL_STENCIL_SIZE = 12326; // 0x3026 + field public static final int EGL_SUCCESS = 12288; // 0x3000 + field public static final int EGL_SURFACE_TYPE = 12339; // 0x3033 + field public static final int EGL_SWAP_BEHAVIOR = 12435; // 0x3093 + field public static final int EGL_SWAP_BEHAVIOR_PRESERVED_BIT = 1024; // 0x400 + field public static final int EGL_TEXTURE_2D = 12383; // 0x305f + field public static final int EGL_TEXTURE_FORMAT = 12416; // 0x3080 + field public static final int EGL_TEXTURE_RGB = 12381; // 0x305d + field public static final int EGL_TEXTURE_RGBA = 12382; // 0x305e + field public static final int EGL_TEXTURE_TARGET = 12417; // 0x3081 + field public static final int EGL_TRANSPARENT_BLUE_VALUE = 12341; // 0x3035 + field public static final int EGL_TRANSPARENT_GREEN_VALUE = 12342; // 0x3036 + field public static final int EGL_TRANSPARENT_RED_VALUE = 12343; // 0x3037 + field public static final int EGL_TRANSPARENT_RGB = 12370; // 0x3052 + field public static final int EGL_TRANSPARENT_TYPE = 12340; // 0x3034 + field public static final int EGL_TRUE = 1; // 0x1 + field public static final int EGL_VENDOR = 12371; // 0x3053 + field public static final int EGL_VERSION = 12372; // 0x3054 + field public static final int EGL_VERTICAL_RESOLUTION = 12433; // 0x3091 + field public static final int EGL_VG_ALPHA_FORMAT = 12424; // 0x3088 + field public static final int EGL_VG_ALPHA_FORMAT_NONPRE = 12427; // 0x308b + field public static final int EGL_VG_ALPHA_FORMAT_PRE = 12428; // 0x308c + field public static final int EGL_VG_ALPHA_FORMAT_PRE_BIT = 64; // 0x40 + field public static final int EGL_VG_COLORSPACE = 12423; // 0x3087 + field public static final int EGL_VG_COLORSPACE_LINEAR = 12426; // 0x308a + field public static final int EGL_VG_COLORSPACE_LINEAR_BIT = 32; // 0x20 + field public static final int EGL_VG_COLORSPACE_sRGB = 12425; // 0x3089 + field public static final int EGL_WIDTH = 12375; // 0x3057 + field public static final int EGL_WINDOW_BIT = 4; // 0x4 + } + + public final class EGL15 { + method public static int eglClientWaitSync(android.opengl.EGLDisplay, android.opengl.EGLSync, int, long); + method public static android.opengl.EGLImage eglCreateImage(android.opengl.EGLDisplay, android.opengl.EGLContext, int, long, long[], int); + method public static android.opengl.EGLSurface eglCreatePlatformPixmapSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, java.nio.Buffer, long[], int); + method public static android.opengl.EGLSurface eglCreatePlatformWindowSurface(android.opengl.EGLDisplay, android.opengl.EGLConfig, java.nio.Buffer, long[], int); + method public static android.opengl.EGLSync eglCreateSync(android.opengl.EGLDisplay, int, long[], int); + method public static boolean eglDestroyImage(android.opengl.EGLDisplay, android.opengl.EGLImage); + method public static boolean eglDestroySync(android.opengl.EGLDisplay, android.opengl.EGLSync); + method public static android.opengl.EGLDisplay eglGetPlatformDisplay(int, long, long[], int); + method public static boolean eglGetSyncAttrib(android.opengl.EGLDisplay, android.opengl.EGLSync, int, long[], int); + method public static boolean eglWaitSync(android.opengl.EGLDisplay, android.opengl.EGLSync, int); + field public static final int EGL_CL_EVENT_HANDLE = 12444; // 0x309c + field public static final int EGL_CONDITION_SATISFIED = 12534; // 0x30f6 + field public static final int EGL_CONTEXT_MAJOR_VERSION = 12440; // 0x3098 + field public static final int EGL_CONTEXT_MINOR_VERSION = 12539; // 0x30fb + field public static final int EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT = 2; // 0x2 + field public static final int EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT = 1; // 0x1 + field public static final int EGL_CONTEXT_OPENGL_DEBUG = 12720; // 0x31b0 + field public static final int EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE = 12721; // 0x31b1 + field public static final int EGL_CONTEXT_OPENGL_PROFILE_MASK = 12541; // 0x30fd + field public static final int EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY = 12733; // 0x31bd + field public static final int EGL_CONTEXT_OPENGL_ROBUST_ACCESS = 12722; // 0x31b2 + field public static final long EGL_FOREVER = -1L; // 0xffffffffffffffffL + field public static final int EGL_GL_COLORSPACE = 12445; // 0x309d + field public static final int EGL_GL_COLORSPACE_LINEAR = 12426; // 0x308a + field public static final int EGL_GL_COLORSPACE_SRGB = 12425; // 0x3089 + field public static final int EGL_GL_RENDERBUFFER = 12473; // 0x30b9 + field public static final int EGL_GL_TEXTURE_2D = 12465; // 0x30b1 + field public static final int EGL_GL_TEXTURE_3D = 12466; // 0x30b2 + field public static final int EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 12468; // 0x30b4 + field public static final int EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 12470; // 0x30b6 + field public static final int EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 12472; // 0x30b8 + field public static final int EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X = 12467; // 0x30b3 + field public static final int EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 12469; // 0x30b5 + field public static final int EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 12471; // 0x30b7 + field public static final int EGL_GL_TEXTURE_LEVEL = 12476; // 0x30bc + field public static final int EGL_GL_TEXTURE_ZOFFSET = 12477; // 0x30bd + field public static final int EGL_IMAGE_PRESERVED = 12498; // 0x30d2 + field public static final int EGL_LOSE_CONTEXT_ON_RESET = 12735; // 0x31bf + field public static final android.opengl.EGLContext EGL_NO_CONTEXT; + field public static final android.opengl.EGLDisplay EGL_NO_DISPLAY; + field public static final android.opengl.EGLImage EGL_NO_IMAGE; + field public static final int EGL_NO_RESET_NOTIFICATION = 12734; // 0x31be + field public static final android.opengl.EGLSurface EGL_NO_SURFACE; + field public static final android.opengl.EGLSync EGL_NO_SYNC; + field public static final int EGL_OPENGL_ES3_BIT = 64; // 0x40 + field public static final int EGL_PLATFORM_ANDROID_KHR = 12609; // 0x3141 + field public static final int EGL_SIGNALED = 12530; // 0x30f2 + field public static final int EGL_SYNC_CL_EVENT = 12542; // 0x30fe + field public static final int EGL_SYNC_CL_EVENT_COMPLETE = 12543; // 0x30ff + field public static final int EGL_SYNC_CONDITION = 12536; // 0x30f8 + field public static final int EGL_SYNC_FENCE = 12537; // 0x30f9 + field public static final int EGL_SYNC_FLUSH_COMMANDS_BIT = 1; // 0x1 + field public static final int EGL_SYNC_PRIOR_COMMANDS_COMPLETE = 12528; // 0x30f0 + field public static final int EGL_SYNC_STATUS = 12529; // 0x30f1 + field public static final int EGL_SYNC_TYPE = 12535; // 0x30f7 + field public static final int EGL_TIMEOUT_EXPIRED = 12533; // 0x30f5 + field public static final int EGL_UNSIGNALED = 12531; // 0x30f3 + } + + public class EGLConfig extends android.opengl.EGLObjectHandle { + } + + public class EGLContext extends android.opengl.EGLObjectHandle { + } + + public class EGLDisplay extends android.opengl.EGLObjectHandle { + } + + public class EGLExt { + ctor public EGLExt(); + method @NonNull public static android.hardware.SyncFence eglDupNativeFenceFDANDROID(@NonNull android.opengl.EGLDisplay, @NonNull android.opengl.EGLSync); + method public static boolean eglPresentationTimeANDROID(android.opengl.EGLDisplay, android.opengl.EGLSurface, long); + field public static final int EGL_CONTEXT_FLAGS_KHR = 12540; // 0x30fc + field public static final int EGL_CONTEXT_MAJOR_VERSION_KHR = 12440; // 0x3098 + field public static final int EGL_CONTEXT_MINOR_VERSION_KHR = 12539; // 0x30fb + field public static final int EGL_NO_NATIVE_FENCE_FD_ANDROID = -1; // 0xffffffff + field public static final int EGL_OPENGL_ES3_BIT_KHR = 64; // 0x40 + field public static final int EGL_RECORDABLE_ANDROID = 12610; // 0x3142 + field public static final int EGL_SYNC_NATIVE_FENCE_ANDROID = 12612; // 0x3144 + field public static final int EGL_SYNC_NATIVE_FENCE_FD_ANDROID = 12613; // 0x3145 + field public static final int EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID = 12614; // 0x3146 + } + + public class EGLImage extends android.opengl.EGLObjectHandle { + } + + public abstract class EGLObjectHandle { + ctor @Deprecated protected EGLObjectHandle(int); + ctor protected EGLObjectHandle(long); + method @Deprecated public int getHandle(); + method public long getNativeHandle(); + } + + public class EGLSurface extends android.opengl.EGLObjectHandle { + } + + public class EGLSync extends android.opengl.EGLObjectHandle { + } + + public class ETC1 { + ctor public ETC1(); + method public static void decodeBlock(java.nio.Buffer, java.nio.Buffer); + method public static void decodeImage(java.nio.Buffer, java.nio.Buffer, int, int, int, int); + method public static void encodeBlock(java.nio.Buffer, int, java.nio.Buffer); + method public static void encodeImage(java.nio.Buffer, int, int, int, int, java.nio.Buffer); + method public static void formatHeader(java.nio.Buffer, int, int); + method public static int getEncodedDataSize(int, int); + method public static int getHeight(java.nio.Buffer); + method public static int getWidth(java.nio.Buffer); + method public static boolean isValid(java.nio.Buffer); + field public static final int DECODED_BLOCK_SIZE = 48; // 0x30 + field public static final int ENCODED_BLOCK_SIZE = 8; // 0x8 + field public static final int ETC1_RGB8_OES = 36196; // 0x8d64 + field public static final int ETC_PKM_HEADER_SIZE = 16; // 0x10 + } + + public class ETC1Util { + ctor public ETC1Util(); + method public static android.opengl.ETC1Util.ETC1Texture compressTexture(java.nio.Buffer, int, int, int, int); + method public static android.opengl.ETC1Util.ETC1Texture createTexture(java.io.InputStream) throws java.io.IOException; + method public static boolean isETC1Supported(); + method public static void loadTexture(int, int, int, int, int, java.io.InputStream) throws java.io.IOException; + method public static void loadTexture(int, int, int, int, int, android.opengl.ETC1Util.ETC1Texture); + method public static void writeTexture(android.opengl.ETC1Util.ETC1Texture, java.io.OutputStream) throws java.io.IOException; + } + + public static class ETC1Util.ETC1Texture { + ctor public ETC1Util.ETC1Texture(int, int, java.nio.ByteBuffer); + method public java.nio.ByteBuffer getData(); + method public int getHeight(); + method public int getWidth(); + } + + public class GLDebugHelper { + ctor public GLDebugHelper(); + method public static javax.microedition.khronos.opengles.GL wrap(javax.microedition.khronos.opengles.GL, int, java.io.Writer); + method public static javax.microedition.khronos.egl.EGL wrap(javax.microedition.khronos.egl.EGL, int, java.io.Writer); + field public static final int CONFIG_CHECK_GL_ERROR = 1; // 0x1 + field public static final int CONFIG_CHECK_THREAD = 2; // 0x2 + field public static final int CONFIG_LOG_ARGUMENT_NAMES = 4; // 0x4 + field public static final int ERROR_WRONG_THREAD = 28672; // 0x7000 + } + + public class GLES10 { + ctor public GLES10(); + method public static void glActiveTexture(int); + method public static void glAlphaFunc(int, float); + method public static void glAlphaFuncx(int, int); + method public static void glBindTexture(int, int); + method public static void glBlendFunc(int, int); + method public static void glClear(int); + method public static void glClearColor(float, float, float, float); + method public static void glClearColorx(int, int, int, int); + method public static void glClearDepthf(float); + method public static void glClearDepthx(int); + method public static void glClearStencil(int); + method public static void glClientActiveTexture(int); + method public static void glColor4f(float, float, float, float); + method public static void glColor4x(int, int, int, int); + method public static void glColorMask(boolean, boolean, boolean, boolean); + method public static void glColorPointer(int, int, int, java.nio.Buffer); + method public static void glCompressedTexImage2D(int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glCompressedTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glCopyTexImage2D(int, int, int, int, int, int, int, int); + method public static void glCopyTexSubImage2D(int, int, int, int, int, int, int, int); + method public static void glCullFace(int); + method public static void glDeleteTextures(int, int[], int); + method public static void glDeleteTextures(int, java.nio.IntBuffer); + method public static void glDepthFunc(int); + method public static void glDepthMask(boolean); + method public static void glDepthRangef(float, float); + method public static void glDepthRangex(int, int); + method public static void glDisable(int); + method public static void glDisableClientState(int); + method public static void glDrawArrays(int, int, int); + method public static void glDrawElements(int, int, int, java.nio.Buffer); + method public static void glEnable(int); + method public static void glEnableClientState(int); + method public static void glFinish(); + method public static void glFlush(); + method public static void glFogf(int, float); + method public static void glFogfv(int, float[], int); + method public static void glFogfv(int, java.nio.FloatBuffer); + method public static void glFogx(int, int); + method public static void glFogxv(int, int[], int); + method public static void glFogxv(int, java.nio.IntBuffer); + method public static void glFrontFace(int); + method public static void glFrustumf(float, float, float, float, float, float); + method public static void glFrustumx(int, int, int, int, int, int); + method public static void glGenTextures(int, int[], int); + method public static void glGenTextures(int, java.nio.IntBuffer); + method public static int glGetError(); + method public static void glGetIntegerv(int, int[], int); + method public static void glGetIntegerv(int, java.nio.IntBuffer); + method public static String glGetString(int); + method public static void glHint(int, int); + method public static void glLightModelf(int, float); + method public static void glLightModelfv(int, float[], int); + method public static void glLightModelfv(int, java.nio.FloatBuffer); + method public static void glLightModelx(int, int); + method public static void glLightModelxv(int, int[], int); + method public static void glLightModelxv(int, java.nio.IntBuffer); + method public static void glLightf(int, int, float); + method public static void glLightfv(int, int, float[], int); + method public static void glLightfv(int, int, java.nio.FloatBuffer); + method public static void glLightx(int, int, int); + method public static void glLightxv(int, int, int[], int); + method public static void glLightxv(int, int, java.nio.IntBuffer); + method public static void glLineWidth(float); + method public static void glLineWidthx(int); + method public static void glLoadIdentity(); + method public static void glLoadMatrixf(float[], int); + method public static void glLoadMatrixf(java.nio.FloatBuffer); + method public static void glLoadMatrixx(int[], int); + method public static void glLoadMatrixx(java.nio.IntBuffer); + method public static void glLogicOp(int); + method public static void glMaterialf(int, int, float); + method public static void glMaterialfv(int, int, float[], int); + method public static void glMaterialfv(int, int, java.nio.FloatBuffer); + method public static void glMaterialx(int, int, int); + method public static void glMaterialxv(int, int, int[], int); + method public static void glMaterialxv(int, int, java.nio.IntBuffer); + method public static void glMatrixMode(int); + method public static void glMultMatrixf(float[], int); + method public static void glMultMatrixf(java.nio.FloatBuffer); + method public static void glMultMatrixx(int[], int); + method public static void glMultMatrixx(java.nio.IntBuffer); + method public static void glMultiTexCoord4f(int, float, float, float, float); + method public static void glMultiTexCoord4x(int, int, int, int, int); + method public static void glNormal3f(float, float, float); + method public static void glNormal3x(int, int, int); + method public static void glNormalPointer(int, int, java.nio.Buffer); + method public static void glOrthof(float, float, float, float, float, float); + method public static void glOrthox(int, int, int, int, int, int); + method public static void glPixelStorei(int, int); + method public static void glPointSize(float); + method public static void glPointSizex(int); + method public static void glPolygonOffset(float, float); + method public static void glPolygonOffsetx(int, int); + method public static void glPopMatrix(); + method public static void glPushMatrix(); + method public static void glReadPixels(int, int, int, int, int, int, java.nio.Buffer); + method public static void glRotatef(float, float, float, float); + method public static void glRotatex(int, int, int, int); + method public static void glSampleCoverage(float, boolean); + method public static void glSampleCoveragex(int, boolean); + method public static void glScalef(float, float, float); + method public static void glScalex(int, int, int); + method public static void glScissor(int, int, int, int); + method public static void glShadeModel(int); + method public static void glStencilFunc(int, int, int); + method public static void glStencilMask(int); + method public static void glStencilOp(int, int, int); + method public static void glTexCoordPointer(int, int, int, java.nio.Buffer); + method public static void glTexEnvf(int, int, float); + method public static void glTexEnvfv(int, int, float[], int); + method public static void glTexEnvfv(int, int, java.nio.FloatBuffer); + method public static void glTexEnvx(int, int, int); + method public static void glTexEnvxv(int, int, int[], int); + method public static void glTexEnvxv(int, int, java.nio.IntBuffer); + method public static void glTexImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glTexParameterf(int, int, float); + method public static void glTexParameterx(int, int, int); + method public static void glTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glTranslatef(float, float, float); + method public static void glTranslatex(int, int, int); + method public static void glVertexPointer(int, int, int, java.nio.Buffer); + method public static void glViewport(int, int, int, int); + field public static final int GL_ADD = 260; // 0x104 + field public static final int GL_ALIASED_LINE_WIDTH_RANGE = 33902; // 0x846e + field public static final int GL_ALIASED_POINT_SIZE_RANGE = 33901; // 0x846d + field public static final int GL_ALPHA = 6406; // 0x1906 + field public static final int GL_ALPHA_BITS = 3413; // 0xd55 + field public static final int GL_ALPHA_TEST = 3008; // 0xbc0 + field public static final int GL_ALWAYS = 519; // 0x207 + field public static final int GL_AMBIENT = 4608; // 0x1200 + field public static final int GL_AMBIENT_AND_DIFFUSE = 5634; // 0x1602 + field public static final int GL_AND = 5377; // 0x1501 + field public static final int GL_AND_INVERTED = 5380; // 0x1504 + field public static final int GL_AND_REVERSE = 5378; // 0x1502 + field public static final int GL_BACK = 1029; // 0x405 + field public static final int GL_BLEND = 3042; // 0xbe2 + field public static final int GL_BLUE_BITS = 3412; // 0xd54 + field public static final int GL_BYTE = 5120; // 0x1400 + field public static final int GL_CCW = 2305; // 0x901 + field public static final int GL_CLAMP_TO_EDGE = 33071; // 0x812f + field public static final int GL_CLEAR = 5376; // 0x1500 + field public static final int GL_COLOR_ARRAY = 32886; // 0x8076 + field public static final int GL_COLOR_BUFFER_BIT = 16384; // 0x4000 + field public static final int GL_COLOR_LOGIC_OP = 3058; // 0xbf2 + field public static final int GL_COLOR_MATERIAL = 2903; // 0xb57 + field public static final int GL_COMPRESSED_TEXTURE_FORMATS = 34467; // 0x86a3 + field public static final int GL_CONSTANT_ATTENUATION = 4615; // 0x1207 + field public static final int GL_COPY = 5379; // 0x1503 + field public static final int GL_COPY_INVERTED = 5388; // 0x150c + field public static final int GL_CULL_FACE = 2884; // 0xb44 + field public static final int GL_CW = 2304; // 0x900 + field public static final int GL_DECAL = 8449; // 0x2101 + field public static final int GL_DECR = 7683; // 0x1e03 + field public static final int GL_DEPTH_BITS = 3414; // 0xd56 + field public static final int GL_DEPTH_BUFFER_BIT = 256; // 0x100 + field public static final int GL_DEPTH_TEST = 2929; // 0xb71 + field public static final int GL_DIFFUSE = 4609; // 0x1201 + field public static final int GL_DITHER = 3024; // 0xbd0 + field public static final int GL_DONT_CARE = 4352; // 0x1100 + field public static final int GL_DST_ALPHA = 772; // 0x304 + field public static final int GL_DST_COLOR = 774; // 0x306 + field public static final int GL_EMISSION = 5632; // 0x1600 + field public static final int GL_EQUAL = 514; // 0x202 + field public static final int GL_EQUIV = 5385; // 0x1509 + field public static final int GL_EXP = 2048; // 0x800 + field public static final int GL_EXP2 = 2049; // 0x801 + field public static final int GL_EXTENSIONS = 7939; // 0x1f03 + field public static final int GL_FALSE = 0; // 0x0 + field public static final int GL_FASTEST = 4353; // 0x1101 + field public static final int GL_FIXED = 5132; // 0x140c + field public static final int GL_FLAT = 7424; // 0x1d00 + field public static final int GL_FLOAT = 5126; // 0x1406 + field public static final int GL_FOG = 2912; // 0xb60 + field public static final int GL_FOG_COLOR = 2918; // 0xb66 + field public static final int GL_FOG_DENSITY = 2914; // 0xb62 + field public static final int GL_FOG_END = 2916; // 0xb64 + field public static final int GL_FOG_HINT = 3156; // 0xc54 + field public static final int GL_FOG_MODE = 2917; // 0xb65 + field public static final int GL_FOG_START = 2915; // 0xb63 + field public static final int GL_FRONT = 1028; // 0x404 + field public static final int GL_FRONT_AND_BACK = 1032; // 0x408 + field public static final int GL_GEQUAL = 518; // 0x206 + field public static final int GL_GREATER = 516; // 0x204 + field public static final int GL_GREEN_BITS = 3411; // 0xd53 + field public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES = 35739; // 0x8b9b + field public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE_OES = 35738; // 0x8b9a + field public static final int GL_INCR = 7682; // 0x1e02 + field public static final int GL_INVALID_ENUM = 1280; // 0x500 + field public static final int GL_INVALID_OPERATION = 1282; // 0x502 + field public static final int GL_INVALID_VALUE = 1281; // 0x501 + field public static final int GL_INVERT = 5386; // 0x150a + field public static final int GL_KEEP = 7680; // 0x1e00 + field public static final int GL_LEQUAL = 515; // 0x203 + field public static final int GL_LESS = 513; // 0x201 + field public static final int GL_LIGHT0 = 16384; // 0x4000 + field public static final int GL_LIGHT1 = 16385; // 0x4001 + field public static final int GL_LIGHT2 = 16386; // 0x4002 + field public static final int GL_LIGHT3 = 16387; // 0x4003 + field public static final int GL_LIGHT4 = 16388; // 0x4004 + field public static final int GL_LIGHT5 = 16389; // 0x4005 + field public static final int GL_LIGHT6 = 16390; // 0x4006 + field public static final int GL_LIGHT7 = 16391; // 0x4007 + field public static final int GL_LIGHTING = 2896; // 0xb50 + field public static final int GL_LIGHT_MODEL_AMBIENT = 2899; // 0xb53 + field public static final int GL_LIGHT_MODEL_TWO_SIDE = 2898; // 0xb52 + field public static final int GL_LINEAR = 9729; // 0x2601 + field public static final int GL_LINEAR_ATTENUATION = 4616; // 0x1208 + field public static final int GL_LINEAR_MIPMAP_LINEAR = 9987; // 0x2703 + field public static final int GL_LINEAR_MIPMAP_NEAREST = 9985; // 0x2701 + field public static final int GL_LINES = 1; // 0x1 + field public static final int GL_LINE_LOOP = 2; // 0x2 + field public static final int GL_LINE_SMOOTH = 2848; // 0xb20 + field public static final int GL_LINE_SMOOTH_HINT = 3154; // 0xc52 + field public static final int GL_LINE_STRIP = 3; // 0x3 + field public static final int GL_LUMINANCE = 6409; // 0x1909 + field public static final int GL_LUMINANCE_ALPHA = 6410; // 0x190a + field public static final int GL_MAX_ELEMENTS_INDICES = 33001; // 0x80e9 + field public static final int GL_MAX_ELEMENTS_VERTICES = 33000; // 0x80e8 + field public static final int GL_MAX_LIGHTS = 3377; // 0xd31 + field public static final int GL_MAX_MODELVIEW_STACK_DEPTH = 3382; // 0xd36 + field public static final int GL_MAX_PROJECTION_STACK_DEPTH = 3384; // 0xd38 + field public static final int GL_MAX_TEXTURE_SIZE = 3379; // 0xd33 + field public static final int GL_MAX_TEXTURE_STACK_DEPTH = 3385; // 0xd39 + field public static final int GL_MAX_TEXTURE_UNITS = 34018; // 0x84e2 + field public static final int GL_MAX_VIEWPORT_DIMS = 3386; // 0xd3a + field public static final int GL_MODELVIEW = 5888; // 0x1700 + field public static final int GL_MODULATE = 8448; // 0x2100 + field public static final int GL_MULTISAMPLE = 32925; // 0x809d + field public static final int GL_NAND = 5390; // 0x150e + field public static final int GL_NEAREST = 9728; // 0x2600 + field public static final int GL_NEAREST_MIPMAP_LINEAR = 9986; // 0x2702 + field public static final int GL_NEAREST_MIPMAP_NEAREST = 9984; // 0x2700 + field public static final int GL_NEVER = 512; // 0x200 + field public static final int GL_NICEST = 4354; // 0x1102 + field public static final int GL_NOOP = 5381; // 0x1505 + field public static final int GL_NOR = 5384; // 0x1508 + field public static final int GL_NORMALIZE = 2977; // 0xba1 + field public static final int GL_NORMAL_ARRAY = 32885; // 0x8075 + field public static final int GL_NOTEQUAL = 517; // 0x205 + field public static final int GL_NO_ERROR = 0; // 0x0 + field public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 34466; // 0x86a2 + field public static final int GL_ONE = 1; // 0x1 + field public static final int GL_ONE_MINUS_DST_ALPHA = 773; // 0x305 + field public static final int GL_ONE_MINUS_DST_COLOR = 775; // 0x307 + field public static final int GL_ONE_MINUS_SRC_ALPHA = 771; // 0x303 + field public static final int GL_ONE_MINUS_SRC_COLOR = 769; // 0x301 + field public static final int GL_OR = 5383; // 0x1507 + field public static final int GL_OR_INVERTED = 5389; // 0x150d + field public static final int GL_OR_REVERSE = 5387; // 0x150b + field public static final int GL_OUT_OF_MEMORY = 1285; // 0x505 + field public static final int GL_PACK_ALIGNMENT = 3333; // 0xd05 + field public static final int GL_PALETTE4_R5_G6_B5_OES = 35730; // 0x8b92 + field public static final int GL_PALETTE4_RGB5_A1_OES = 35732; // 0x8b94 + field public static final int GL_PALETTE4_RGB8_OES = 35728; // 0x8b90 + field public static final int GL_PALETTE4_RGBA4_OES = 35731; // 0x8b93 + field public static final int GL_PALETTE4_RGBA8_OES = 35729; // 0x8b91 + field public static final int GL_PALETTE8_R5_G6_B5_OES = 35735; // 0x8b97 + field public static final int GL_PALETTE8_RGB5_A1_OES = 35737; // 0x8b99 + field public static final int GL_PALETTE8_RGB8_OES = 35733; // 0x8b95 + field public static final int GL_PALETTE8_RGBA4_OES = 35736; // 0x8b98 + field public static final int GL_PALETTE8_RGBA8_OES = 35734; // 0x8b96 + field public static final int GL_PERSPECTIVE_CORRECTION_HINT = 3152; // 0xc50 + field public static final int GL_POINTS = 0; // 0x0 + field public static final int GL_POINT_FADE_THRESHOLD_SIZE = 33064; // 0x8128 + field public static final int GL_POINT_SIZE = 2833; // 0xb11 + field public static final int GL_POINT_SMOOTH = 2832; // 0xb10 + field public static final int GL_POINT_SMOOTH_HINT = 3153; // 0xc51 + field public static final int GL_POLYGON_OFFSET_FILL = 32823; // 0x8037 + field public static final int GL_POLYGON_SMOOTH_HINT = 3155; // 0xc53 + field public static final int GL_POSITION = 4611; // 0x1203 + field public static final int GL_PROJECTION = 5889; // 0x1701 + field public static final int GL_QUADRATIC_ATTENUATION = 4617; // 0x1209 + field public static final int GL_RED_BITS = 3410; // 0xd52 + field public static final int GL_RENDERER = 7937; // 0x1f01 + field public static final int GL_REPEAT = 10497; // 0x2901 + field public static final int GL_REPLACE = 7681; // 0x1e01 + field public static final int GL_RESCALE_NORMAL = 32826; // 0x803a + field public static final int GL_RGB = 6407; // 0x1907 + field public static final int GL_RGBA = 6408; // 0x1908 + field public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 32926; // 0x809e + field public static final int GL_SAMPLE_ALPHA_TO_ONE = 32927; // 0x809f + field public static final int GL_SAMPLE_COVERAGE = 32928; // 0x80a0 + field public static final int GL_SCISSOR_TEST = 3089; // 0xc11 + field public static final int GL_SET = 5391; // 0x150f + field public static final int GL_SHININESS = 5633; // 0x1601 + field public static final int GL_SHORT = 5122; // 0x1402 + field public static final int GL_SMOOTH = 7425; // 0x1d01 + field public static final int GL_SMOOTH_LINE_WIDTH_RANGE = 2850; // 0xb22 + field public static final int GL_SMOOTH_POINT_SIZE_RANGE = 2834; // 0xb12 + field public static final int GL_SPECULAR = 4610; // 0x1202 + field public static final int GL_SPOT_CUTOFF = 4614; // 0x1206 + field public static final int GL_SPOT_DIRECTION = 4612; // 0x1204 + field public static final int GL_SPOT_EXPONENT = 4613; // 0x1205 + field public static final int GL_SRC_ALPHA = 770; // 0x302 + field public static final int GL_SRC_ALPHA_SATURATE = 776; // 0x308 + field public static final int GL_SRC_COLOR = 768; // 0x300 + field public static final int GL_STACK_OVERFLOW = 1283; // 0x503 + field public static final int GL_STACK_UNDERFLOW = 1284; // 0x504 + field public static final int GL_STENCIL_BITS = 3415; // 0xd57 + field public static final int GL_STENCIL_BUFFER_BIT = 1024; // 0x400 + field public static final int GL_STENCIL_TEST = 2960; // 0xb90 + field public static final int GL_SUBPIXEL_BITS = 3408; // 0xd50 + field public static final int GL_TEXTURE = 5890; // 0x1702 + field public static final int GL_TEXTURE0 = 33984; // 0x84c0 + field public static final int GL_TEXTURE1 = 33985; // 0x84c1 + field public static final int GL_TEXTURE10 = 33994; // 0x84ca + field public static final int GL_TEXTURE11 = 33995; // 0x84cb + field public static final int GL_TEXTURE12 = 33996; // 0x84cc + field public static final int GL_TEXTURE13 = 33997; // 0x84cd + field public static final int GL_TEXTURE14 = 33998; // 0x84ce + field public static final int GL_TEXTURE15 = 33999; // 0x84cf + field public static final int GL_TEXTURE16 = 34000; // 0x84d0 + field public static final int GL_TEXTURE17 = 34001; // 0x84d1 + field public static final int GL_TEXTURE18 = 34002; // 0x84d2 + field public static final int GL_TEXTURE19 = 34003; // 0x84d3 + field public static final int GL_TEXTURE2 = 33986; // 0x84c2 + field public static final int GL_TEXTURE20 = 34004; // 0x84d4 + field public static final int GL_TEXTURE21 = 34005; // 0x84d5 + field public static final int GL_TEXTURE22 = 34006; // 0x84d6 + field public static final int GL_TEXTURE23 = 34007; // 0x84d7 + field public static final int GL_TEXTURE24 = 34008; // 0x84d8 + field public static final int GL_TEXTURE25 = 34009; // 0x84d9 + field public static final int GL_TEXTURE26 = 34010; // 0x84da + field public static final int GL_TEXTURE27 = 34011; // 0x84db + field public static final int GL_TEXTURE28 = 34012; // 0x84dc + field public static final int GL_TEXTURE29 = 34013; // 0x84dd + field public static final int GL_TEXTURE3 = 33987; // 0x84c3 + field public static final int GL_TEXTURE30 = 34014; // 0x84de + field public static final int GL_TEXTURE31 = 34015; // 0x84df + field public static final int GL_TEXTURE4 = 33988; // 0x84c4 + field public static final int GL_TEXTURE5 = 33989; // 0x84c5 + field public static final int GL_TEXTURE6 = 33990; // 0x84c6 + field public static final int GL_TEXTURE7 = 33991; // 0x84c7 + field public static final int GL_TEXTURE8 = 33992; // 0x84c8 + field public static final int GL_TEXTURE9 = 33993; // 0x84c9 + field public static final int GL_TEXTURE_2D = 3553; // 0xde1 + field public static final int GL_TEXTURE_COORD_ARRAY = 32888; // 0x8078 + field public static final int GL_TEXTURE_ENV = 8960; // 0x2300 + field public static final int GL_TEXTURE_ENV_COLOR = 8705; // 0x2201 + field public static final int GL_TEXTURE_ENV_MODE = 8704; // 0x2200 + field public static final int GL_TEXTURE_MAG_FILTER = 10240; // 0x2800 + field public static final int GL_TEXTURE_MIN_FILTER = 10241; // 0x2801 + field public static final int GL_TEXTURE_WRAP_S = 10242; // 0x2802 + field public static final int GL_TEXTURE_WRAP_T = 10243; // 0x2803 + field public static final int GL_TRIANGLES = 4; // 0x4 + field public static final int GL_TRIANGLE_FAN = 6; // 0x6 + field public static final int GL_TRIANGLE_STRIP = 5; // 0x5 + field public static final int GL_TRUE = 1; // 0x1 + field public static final int GL_UNPACK_ALIGNMENT = 3317; // 0xcf5 + field public static final int GL_UNSIGNED_BYTE = 5121; // 0x1401 + field public static final int GL_UNSIGNED_SHORT = 5123; // 0x1403 + field public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 32819; // 0x8033 + field public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 32820; // 0x8034 + field public static final int GL_UNSIGNED_SHORT_5_6_5 = 33635; // 0x8363 + field public static final int GL_VENDOR = 7936; // 0x1f00 + field public static final int GL_VERSION = 7938; // 0x1f02 + field public static final int GL_VERTEX_ARRAY = 32884; // 0x8074 + field public static final int GL_XOR = 5382; // 0x1506 + field public static final int GL_ZERO = 0; // 0x0 + } + + public class GLES10Ext { + ctor public GLES10Ext(); + method public static int glQueryMatrixxOES(int[], int, int[], int); + method public static int glQueryMatrixxOES(java.nio.IntBuffer, java.nio.IntBuffer); + } + + public class GLES11 extends android.opengl.GLES10 { + ctor public GLES11(); + method public static void glBindBuffer(int, int); + method public static void glBufferData(int, int, java.nio.Buffer, int); + method public static void glBufferSubData(int, int, int, java.nio.Buffer); + method public static void glClipPlanef(int, float[], int); + method public static void glClipPlanef(int, java.nio.FloatBuffer); + method public static void glClipPlanex(int, int[], int); + method public static void glClipPlanex(int, java.nio.IntBuffer); + method public static void glColor4ub(byte, byte, byte, byte); + method public static void glColorPointer(int, int, int, int); + method public static void glDeleteBuffers(int, int[], int); + method public static void glDeleteBuffers(int, java.nio.IntBuffer); + method public static void glDrawElements(int, int, int, int); + method public static void glGenBuffers(int, int[], int); + method public static void glGenBuffers(int, java.nio.IntBuffer); + method public static void glGetBooleanv(int, boolean[], int); + method public static void glGetBooleanv(int, java.nio.IntBuffer); + method public static void glGetBufferParameteriv(int, int, int[], int); + method public static void glGetBufferParameteriv(int, int, java.nio.IntBuffer); + method public static void glGetClipPlanef(int, float[], int); + method public static void glGetClipPlanef(int, java.nio.FloatBuffer); + method public static void glGetClipPlanex(int, int[], int); + method public static void glGetClipPlanex(int, java.nio.IntBuffer); + method public static void glGetFixedv(int, int[], int); + method public static void glGetFixedv(int, java.nio.IntBuffer); + method public static void glGetFloatv(int, float[], int); + method public static void glGetFloatv(int, java.nio.FloatBuffer); + method public static void glGetLightfv(int, int, float[], int); + method public static void glGetLightfv(int, int, java.nio.FloatBuffer); + method public static void glGetLightxv(int, int, int[], int); + method public static void glGetLightxv(int, int, java.nio.IntBuffer); + method public static void glGetMaterialfv(int, int, float[], int); + method public static void glGetMaterialfv(int, int, java.nio.FloatBuffer); + method public static void glGetMaterialxv(int, int, int[], int); + method public static void glGetMaterialxv(int, int, java.nio.IntBuffer); + method public static void glGetTexEnvfv(int, int, float[], int); + method public static void glGetTexEnvfv(int, int, java.nio.FloatBuffer); + method public static void glGetTexEnviv(int, int, int[], int); + method public static void glGetTexEnviv(int, int, java.nio.IntBuffer); + method public static void glGetTexEnvxv(int, int, int[], int); + method public static void glGetTexEnvxv(int, int, java.nio.IntBuffer); + method public static void glGetTexParameterfv(int, int, float[], int); + method public static void glGetTexParameterfv(int, int, java.nio.FloatBuffer); + method public static void glGetTexParameteriv(int, int, int[], int); + method public static void glGetTexParameteriv(int, int, java.nio.IntBuffer); + method public static void glGetTexParameterxv(int, int, int[], int); + method public static void glGetTexParameterxv(int, int, java.nio.IntBuffer); + method public static boolean glIsBuffer(int); + method public static boolean glIsEnabled(int); + method public static boolean glIsTexture(int); + method public static void glNormalPointer(int, int, int); + method public static void glPointParameterf(int, float); + method public static void glPointParameterfv(int, float[], int); + method public static void glPointParameterfv(int, java.nio.FloatBuffer); + method public static void glPointParameterx(int, int); + method public static void glPointParameterxv(int, int[], int); + method public static void glPointParameterxv(int, java.nio.IntBuffer); + method public static void glPointSizePointerOES(int, int, java.nio.Buffer); + method public static void glTexCoordPointer(int, int, int, int); + method public static void glTexEnvi(int, int, int); + method public static void glTexEnviv(int, int, int[], int); + method public static void glTexEnviv(int, int, java.nio.IntBuffer); + method public static void glTexParameterfv(int, int, float[], int); + method public static void glTexParameterfv(int, int, java.nio.FloatBuffer); + method public static void glTexParameteri(int, int, int); + method public static void glTexParameteriv(int, int, int[], int); + method public static void glTexParameteriv(int, int, java.nio.IntBuffer); + method public static void glTexParameterxv(int, int, int[], int); + method public static void glTexParameterxv(int, int, java.nio.IntBuffer); + method public static void glVertexPointer(int, int, int, int); + field public static final int GL_ACTIVE_TEXTURE = 34016; // 0x84e0 + field public static final int GL_ADD_SIGNED = 34164; // 0x8574 + field public static final int GL_ALPHA_SCALE = 3356; // 0xd1c + field public static final int GL_ALPHA_TEST_FUNC = 3009; // 0xbc1 + field public static final int GL_ALPHA_TEST_REF = 3010; // 0xbc2 + field public static final int GL_ARRAY_BUFFER = 34962; // 0x8892 + field public static final int GL_ARRAY_BUFFER_BINDING = 34964; // 0x8894 + field public static final int GL_BLEND_DST = 3040; // 0xbe0 + field public static final int GL_BLEND_SRC = 3041; // 0xbe1 + field public static final int GL_BUFFER_ACCESS = 35003; // 0x88bb + field public static final int GL_BUFFER_SIZE = 34660; // 0x8764 + field public static final int GL_BUFFER_USAGE = 34661; // 0x8765 + field public static final int GL_CLIENT_ACTIVE_TEXTURE = 34017; // 0x84e1 + field public static final int GL_CLIP_PLANE0 = 12288; // 0x3000 + field public static final int GL_CLIP_PLANE1 = 12289; // 0x3001 + field public static final int GL_CLIP_PLANE2 = 12290; // 0x3002 + field public static final int GL_CLIP_PLANE3 = 12291; // 0x3003 + field public static final int GL_CLIP_PLANE4 = 12292; // 0x3004 + field public static final int GL_CLIP_PLANE5 = 12293; // 0x3005 + field public static final int GL_COLOR_ARRAY_BUFFER_BINDING = 34968; // 0x8898 + field public static final int GL_COLOR_ARRAY_POINTER = 32912; // 0x8090 + field public static final int GL_COLOR_ARRAY_SIZE = 32897; // 0x8081 + field public static final int GL_COLOR_ARRAY_STRIDE = 32899; // 0x8083 + field public static final int GL_COLOR_ARRAY_TYPE = 32898; // 0x8082 + field public static final int GL_COLOR_CLEAR_VALUE = 3106; // 0xc22 + field public static final int GL_COLOR_WRITEMASK = 3107; // 0xc23 + field public static final int GL_COMBINE = 34160; // 0x8570 + field public static final int GL_COMBINE_ALPHA = 34162; // 0x8572 + field public static final int GL_COMBINE_RGB = 34161; // 0x8571 + field public static final int GL_CONSTANT = 34166; // 0x8576 + field public static final int GL_COORD_REPLACE_OES = 34914; // 0x8862 + field public static final int GL_CULL_FACE_MODE = 2885; // 0xb45 + field public static final int GL_CURRENT_COLOR = 2816; // 0xb00 + field public static final int GL_CURRENT_NORMAL = 2818; // 0xb02 + field public static final int GL_CURRENT_TEXTURE_COORDS = 2819; // 0xb03 + field public static final int GL_DEPTH_CLEAR_VALUE = 2931; // 0xb73 + field public static final int GL_DEPTH_FUNC = 2932; // 0xb74 + field public static final int GL_DEPTH_RANGE = 2928; // 0xb70 + field public static final int GL_DEPTH_WRITEMASK = 2930; // 0xb72 + field public static final int GL_DOT3_RGB = 34478; // 0x86ae + field public static final int GL_DOT3_RGBA = 34479; // 0x86af + field public static final int GL_DYNAMIC_DRAW = 35048; // 0x88e8 + field public static final int GL_ELEMENT_ARRAY_BUFFER = 34963; // 0x8893 + field public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING = 34965; // 0x8895 + field public static final int GL_FRONT_FACE = 2886; // 0xb46 + field public static final int GL_GENERATE_MIPMAP = 33169; // 0x8191 + field public static final int GL_GENERATE_MIPMAP_HINT = 33170; // 0x8192 + field public static final int GL_INTERPOLATE = 34165; // 0x8575 + field public static final int GL_LINE_WIDTH = 2849; // 0xb21 + field public static final int GL_LOGIC_OP_MODE = 3056; // 0xbf0 + field public static final int GL_MATRIX_MODE = 2976; // 0xba0 + field public static final int GL_MAX_CLIP_PLANES = 3378; // 0xd32 + field public static final int GL_MODELVIEW_MATRIX = 2982; // 0xba6 + field public static final int GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES = 35213; // 0x898d + field public static final int GL_MODELVIEW_STACK_DEPTH = 2979; // 0xba3 + field public static final int GL_NORMAL_ARRAY_BUFFER_BINDING = 34967; // 0x8897 + field public static final int GL_NORMAL_ARRAY_POINTER = 32911; // 0x808f + field public static final int GL_NORMAL_ARRAY_STRIDE = 32895; // 0x807f + field public static final int GL_NORMAL_ARRAY_TYPE = 32894; // 0x807e + field public static final int GL_OPERAND0_ALPHA = 34200; // 0x8598 + field public static final int GL_OPERAND0_RGB = 34192; // 0x8590 + field public static final int GL_OPERAND1_ALPHA = 34201; // 0x8599 + field public static final int GL_OPERAND1_RGB = 34193; // 0x8591 + field public static final int GL_OPERAND2_ALPHA = 34202; // 0x859a + field public static final int GL_OPERAND2_RGB = 34194; // 0x8592 + field public static final int GL_POINT_DISTANCE_ATTENUATION = 33065; // 0x8129 + field public static final int GL_POINT_FADE_THRESHOLD_SIZE = 33064; // 0x8128 + field public static final int GL_POINT_SIZE = 2833; // 0xb11 + field public static final int GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES = 35743; // 0x8b9f + field public static final int GL_POINT_SIZE_ARRAY_OES = 35740; // 0x8b9c + field public static final int GL_POINT_SIZE_ARRAY_POINTER_OES = 35212; // 0x898c + field public static final int GL_POINT_SIZE_ARRAY_STRIDE_OES = 35211; // 0x898b + field public static final int GL_POINT_SIZE_ARRAY_TYPE_OES = 35210; // 0x898a + field public static final int GL_POINT_SIZE_MAX = 33063; // 0x8127 + field public static final int GL_POINT_SIZE_MIN = 33062; // 0x8126 + field public static final int GL_POINT_SPRITE_OES = 34913; // 0x8861 + field public static final int GL_POLYGON_OFFSET_FACTOR = 32824; // 0x8038 + field public static final int GL_POLYGON_OFFSET_UNITS = 10752; // 0x2a00 + field public static final int GL_PREVIOUS = 34168; // 0x8578 + field public static final int GL_PRIMARY_COLOR = 34167; // 0x8577 + field public static final int GL_PROJECTION_MATRIX = 2983; // 0xba7 + field public static final int GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES = 35214; // 0x898e + field public static final int GL_PROJECTION_STACK_DEPTH = 2980; // 0xba4 + field public static final int GL_RGB_SCALE = 34163; // 0x8573 + field public static final int GL_SAMPLES = 32937; // 0x80a9 + field public static final int GL_SAMPLE_BUFFERS = 32936; // 0x80a8 + field public static final int GL_SAMPLE_COVERAGE_INVERT = 32939; // 0x80ab + field public static final int GL_SAMPLE_COVERAGE_VALUE = 32938; // 0x80aa + field public static final int GL_SCISSOR_BOX = 3088; // 0xc10 + field public static final int GL_SHADE_MODEL = 2900; // 0xb54 + field public static final int GL_SRC0_ALPHA = 34184; // 0x8588 + field public static final int GL_SRC0_RGB = 34176; // 0x8580 + field public static final int GL_SRC1_ALPHA = 34185; // 0x8589 + field public static final int GL_SRC1_RGB = 34177; // 0x8581 + field public static final int GL_SRC2_ALPHA = 34186; // 0x858a + field public static final int GL_SRC2_RGB = 34178; // 0x8582 + field public static final int GL_STATIC_DRAW = 35044; // 0x88e4 + field public static final int GL_STENCIL_CLEAR_VALUE = 2961; // 0xb91 + field public static final int GL_STENCIL_FAIL = 2964; // 0xb94 + field public static final int GL_STENCIL_FUNC = 2962; // 0xb92 + field public static final int GL_STENCIL_PASS_DEPTH_FAIL = 2965; // 0xb95 + field public static final int GL_STENCIL_PASS_DEPTH_PASS = 2966; // 0xb96 + field public static final int GL_STENCIL_REF = 2967; // 0xb97 + field public static final int GL_STENCIL_VALUE_MASK = 2963; // 0xb93 + field public static final int GL_STENCIL_WRITEMASK = 2968; // 0xb98 + field public static final int GL_SUBTRACT = 34023; // 0x84e7 + field public static final int GL_TEXTURE_BINDING_2D = 32873; // 0x8069 + field public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 34970; // 0x889a + field public static final int GL_TEXTURE_COORD_ARRAY_POINTER = 32914; // 0x8092 + field public static final int GL_TEXTURE_COORD_ARRAY_SIZE = 32904; // 0x8088 + field public static final int GL_TEXTURE_COORD_ARRAY_STRIDE = 32906; // 0x808a + field public static final int GL_TEXTURE_COORD_ARRAY_TYPE = 32905; // 0x8089 + field public static final int GL_TEXTURE_MATRIX = 2984; // 0xba8 + field public static final int GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES = 35215; // 0x898f + field public static final int GL_TEXTURE_STACK_DEPTH = 2981; // 0xba5 + field public static final int GL_VERTEX_ARRAY_BUFFER_BINDING = 34966; // 0x8896 + field public static final int GL_VERTEX_ARRAY_POINTER = 32910; // 0x808e + field public static final int GL_VERTEX_ARRAY_SIZE = 32890; // 0x807a + field public static final int GL_VERTEX_ARRAY_STRIDE = 32892; // 0x807c + field public static final int GL_VERTEX_ARRAY_TYPE = 32891; // 0x807b + field public static final int GL_VIEWPORT = 2978; // 0xba2 + field public static final int GL_WRITE_ONLY = 35001; // 0x88b9 + } + + public class GLES11Ext { + ctor public GLES11Ext(); + method public static void glAlphaFuncxOES(int, int); + method public static void glBindFramebufferOES(int, int); + method public static void glBindRenderbufferOES(int, int); + method public static void glBlendEquationOES(int); + method public static void glBlendEquationSeparateOES(int, int); + method public static void glBlendFuncSeparateOES(int, int, int, int); + method public static int glCheckFramebufferStatusOES(int); + method public static void glClearColorxOES(int, int, int, int); + method public static void glClearDepthfOES(float); + method public static void glClearDepthxOES(int); + method public static void glClipPlanefOES(int, float[], int); + method public static void glClipPlanefOES(int, java.nio.FloatBuffer); + method public static void glClipPlanexOES(int, int[], int); + method public static void glClipPlanexOES(int, java.nio.IntBuffer); + method public static void glColor4xOES(int, int, int, int); + method public static void glCurrentPaletteMatrixOES(int); + method public static void glDeleteFramebuffersOES(int, int[], int); + method public static void glDeleteFramebuffersOES(int, java.nio.IntBuffer); + method public static void glDeleteRenderbuffersOES(int, int[], int); + method public static void glDeleteRenderbuffersOES(int, java.nio.IntBuffer); + method public static void glDepthRangefOES(float, float); + method public static void glDepthRangexOES(int, int); + method public static void glDrawTexfOES(float, float, float, float, float); + method public static void glDrawTexfvOES(float[], int); + method public static void glDrawTexfvOES(java.nio.FloatBuffer); + method public static void glDrawTexiOES(int, int, int, int, int); + method public static void glDrawTexivOES(int[], int); + method public static void glDrawTexivOES(java.nio.IntBuffer); + method public static void glDrawTexsOES(short, short, short, short, short); + method public static void glDrawTexsvOES(short[], int); + method public static void glDrawTexsvOES(java.nio.ShortBuffer); + method public static void glDrawTexxOES(int, int, int, int, int); + method public static void glDrawTexxvOES(int[], int); + method public static void glDrawTexxvOES(java.nio.IntBuffer); + method public static void glEGLImageTargetRenderbufferStorageOES(int, java.nio.Buffer); + method public static void glEGLImageTargetTexture2DOES(int, java.nio.Buffer); + method public static void glFogxOES(int, int); + method public static void glFogxvOES(int, int[], int); + method public static void glFogxvOES(int, java.nio.IntBuffer); + method public static void glFramebufferRenderbufferOES(int, int, int, int); + method public static void glFramebufferTexture2DOES(int, int, int, int, int); + method public static void glFrustumfOES(float, float, float, float, float, float); + method public static void glFrustumxOES(int, int, int, int, int, int); + method public static void glGenFramebuffersOES(int, int[], int); + method public static void glGenFramebuffersOES(int, java.nio.IntBuffer); + method public static void glGenRenderbuffersOES(int, int[], int); + method public static void glGenRenderbuffersOES(int, java.nio.IntBuffer); + method public static void glGenerateMipmapOES(int); + method public static void glGetClipPlanefOES(int, float[], int); + method public static void glGetClipPlanefOES(int, java.nio.FloatBuffer); + method public static void glGetClipPlanexOES(int, int[], int); + method public static void glGetClipPlanexOES(int, java.nio.IntBuffer); + method public static void glGetFixedvOES(int, int[], int); + method public static void glGetFixedvOES(int, java.nio.IntBuffer); + method public static void glGetFramebufferAttachmentParameterivOES(int, int, int, int[], int); + method public static void glGetFramebufferAttachmentParameterivOES(int, int, int, java.nio.IntBuffer); + method public static void glGetLightxvOES(int, int, int[], int); + method public static void glGetLightxvOES(int, int, java.nio.IntBuffer); + method public static void glGetMaterialxvOES(int, int, int[], int); + method public static void glGetMaterialxvOES(int, int, java.nio.IntBuffer); + method public static void glGetRenderbufferParameterivOES(int, int, int[], int); + method public static void glGetRenderbufferParameterivOES(int, int, java.nio.IntBuffer); + method public static void glGetTexEnvxvOES(int, int, int[], int); + method public static void glGetTexEnvxvOES(int, int, java.nio.IntBuffer); + method public static void glGetTexGenfvOES(int, int, float[], int); + method public static void glGetTexGenfvOES(int, int, java.nio.FloatBuffer); + method public static void glGetTexGenivOES(int, int, int[], int); + method public static void glGetTexGenivOES(int, int, java.nio.IntBuffer); + method public static void glGetTexGenxvOES(int, int, int[], int); + method public static void glGetTexGenxvOES(int, int, java.nio.IntBuffer); + method public static void glGetTexParameterxvOES(int, int, int[], int); + method public static void glGetTexParameterxvOES(int, int, java.nio.IntBuffer); + method public static boolean glIsFramebufferOES(int); + method public static boolean glIsRenderbufferOES(int); + method public static void glLightModelxOES(int, int); + method public static void glLightModelxvOES(int, int[], int); + method public static void glLightModelxvOES(int, java.nio.IntBuffer); + method public static void glLightxOES(int, int, int); + method public static void glLightxvOES(int, int, int[], int); + method public static void glLightxvOES(int, int, java.nio.IntBuffer); + method public static void glLineWidthxOES(int); + method public static void glLoadMatrixxOES(int[], int); + method public static void glLoadMatrixxOES(java.nio.IntBuffer); + method public static void glLoadPaletteFromModelViewMatrixOES(); + method public static void glMaterialxOES(int, int, int); + method public static void glMaterialxvOES(int, int, int[], int); + method public static void glMaterialxvOES(int, int, java.nio.IntBuffer); + method public static void glMatrixIndexPointerOES(int, int, int, java.nio.Buffer); + method public static void glMultMatrixxOES(int[], int); + method public static void glMultMatrixxOES(java.nio.IntBuffer); + method public static void glMultiTexCoord4xOES(int, int, int, int, int); + method public static void glNormal3xOES(int, int, int); + method public static void glOrthofOES(float, float, float, float, float, float); + method public static void glOrthoxOES(int, int, int, int, int, int); + method public static void glPointParameterxOES(int, int); + method public static void glPointParameterxvOES(int, int[], int); + method public static void glPointParameterxvOES(int, java.nio.IntBuffer); + method public static void glPointSizexOES(int); + method public static void glPolygonOffsetxOES(int, int); + method public static void glRenderbufferStorageOES(int, int, int, int); + method public static void glRotatexOES(int, int, int, int); + method public static void glSampleCoveragexOES(int, boolean); + method public static void glScalexOES(int, int, int); + method public static void glTexEnvxOES(int, int, int); + method public static void glTexEnvxvOES(int, int, int[], int); + method public static void glTexEnvxvOES(int, int, java.nio.IntBuffer); + method public static void glTexGenfOES(int, int, float); + method public static void glTexGenfvOES(int, int, float[], int); + method public static void glTexGenfvOES(int, int, java.nio.FloatBuffer); + method public static void glTexGeniOES(int, int, int); + method public static void glTexGenivOES(int, int, int[], int); + method public static void glTexGenivOES(int, int, java.nio.IntBuffer); + method public static void glTexGenxOES(int, int, int); + method public static void glTexGenxvOES(int, int, int[], int); + method public static void glTexGenxvOES(int, int, java.nio.IntBuffer); + method public static void glTexParameterxOES(int, int, int); + method public static void glTexParameterxvOES(int, int, int[], int); + method public static void glTexParameterxvOES(int, int, java.nio.IntBuffer); + method public static void glTranslatexOES(int, int, int); + method public static void glWeightPointerOES(int, int, int, java.nio.Buffer); + field public static final int GL_3DC_XY_AMD = 34810; // 0x87fa + field public static final int GL_3DC_X_AMD = 34809; // 0x87f9 + field public static final int GL_ATC_RGBA_EXPLICIT_ALPHA_AMD = 35987; // 0x8c93 + field public static final int GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD = 34798; // 0x87ee + field public static final int GL_ATC_RGB_AMD = 35986; // 0x8c92 + field public static final int GL_BGRA = 32993; // 0x80e1 + field public static final int GL_BLEND_DST_ALPHA_OES = 32970; // 0x80ca + field public static final int GL_BLEND_DST_RGB_OES = 32968; // 0x80c8 + field public static final int GL_BLEND_EQUATION_ALPHA_OES = 34877; // 0x883d + field public static final int GL_BLEND_EQUATION_OES = 32777; // 0x8009 + field public static final int GL_BLEND_EQUATION_RGB_OES = 32777; // 0x8009 + field public static final int GL_BLEND_SRC_ALPHA_OES = 32971; // 0x80cb + field public static final int GL_BLEND_SRC_RGB_OES = 32969; // 0x80c9 + field public static final int GL_BUFFER_ACCESS_OES = 35003; // 0x88bb + field public static final int GL_BUFFER_MAPPED_OES = 35004; // 0x88bc + field public static final int GL_BUFFER_MAP_POINTER_OES = 35005; // 0x88bd + field public static final int GL_COLOR_ATTACHMENT0_OES = 36064; // 0x8ce0 + field public static final int GL_CURRENT_PALETTE_MATRIX_OES = 34883; // 0x8843 + field public static final int GL_DECR_WRAP_OES = 34056; // 0x8508 + field public static final int GL_DEPTH24_STENCIL8_OES = 35056; // 0x88f0 + field public static final int GL_DEPTH_ATTACHMENT_OES = 36096; // 0x8d00 + field public static final int GL_DEPTH_COMPONENT16_OES = 33189; // 0x81a5 + field public static final int GL_DEPTH_COMPONENT24_OES = 33190; // 0x81a6 + field public static final int GL_DEPTH_COMPONENT32_OES = 33191; // 0x81a7 + field public static final int GL_DEPTH_STENCIL_OES = 34041; // 0x84f9 + field public static final int GL_ETC1_RGB8_OES = 36196; // 0x8d64 + field public static final int GL_FIXED_OES = 5132; // 0x140c + field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES = 36049; // 0x8cd1 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES = 36048; // 0x8cd0 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES = 36051; // 0x8cd3 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES = 36050; // 0x8cd2 + field public static final int GL_FRAMEBUFFER_BINDING_OES = 36006; // 0x8ca6 + field public static final int GL_FRAMEBUFFER_COMPLETE_OES = 36053; // 0x8cd5 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES = 36054; // 0x8cd6 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES = 36057; // 0x8cd9 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES = 36058; // 0x8cda + field public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES = 36055; // 0x8cd7 + field public static final int GL_FRAMEBUFFER_OES = 36160; // 0x8d40 + field public static final int GL_FRAMEBUFFER_UNSUPPORTED_OES = 36061; // 0x8cdd + field public static final int GL_FUNC_ADD_OES = 32774; // 0x8006 + field public static final int GL_FUNC_REVERSE_SUBTRACT_OES = 32779; // 0x800b + field public static final int GL_FUNC_SUBTRACT_OES = 32778; // 0x800a + field public static final int GL_INCR_WRAP_OES = 34055; // 0x8507 + field public static final int GL_INVALID_FRAMEBUFFER_OPERATION_OES = 1286; // 0x506 + field public static final int GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES = 35742; // 0x8b9e + field public static final int GL_MATRIX_INDEX_ARRAY_OES = 34884; // 0x8844 + field public static final int GL_MATRIX_INDEX_ARRAY_POINTER_OES = 34889; // 0x8849 + field public static final int GL_MATRIX_INDEX_ARRAY_SIZE_OES = 34886; // 0x8846 + field public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_OES = 34888; // 0x8848 + field public static final int GL_MATRIX_INDEX_ARRAY_TYPE_OES = 34887; // 0x8847 + field public static final int GL_MATRIX_PALETTE_OES = 34880; // 0x8840 + field public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES = 34076; // 0x851c + field public static final int GL_MAX_PALETTE_MATRICES_OES = 34882; // 0x8842 + field public static final int GL_MAX_RENDERBUFFER_SIZE_OES = 34024; // 0x84e8 + field public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 34047; // 0x84ff + field public static final int GL_MAX_VERTEX_UNITS_OES = 34468; // 0x86a4 + field public static final int GL_MIRRORED_REPEAT_OES = 33648; // 0x8370 + field public static final int GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES = 35213; // 0x898d + field public static final int GL_NONE_OES = 0; // 0x0 + field public static final int GL_NORMAL_MAP_OES = 34065; // 0x8511 + field public static final int GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES = 35214; // 0x898e + field public static final int GL_REFLECTION_MAP_OES = 34066; // 0x8512 + field public static final int GL_RENDERBUFFER_ALPHA_SIZE_OES = 36179; // 0x8d53 + field public static final int GL_RENDERBUFFER_BINDING_OES = 36007; // 0x8ca7 + field public static final int GL_RENDERBUFFER_BLUE_SIZE_OES = 36178; // 0x8d52 + field public static final int GL_RENDERBUFFER_DEPTH_SIZE_OES = 36180; // 0x8d54 + field public static final int GL_RENDERBUFFER_GREEN_SIZE_OES = 36177; // 0x8d51 + field public static final int GL_RENDERBUFFER_HEIGHT_OES = 36163; // 0x8d43 + field public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_OES = 36164; // 0x8d44 + field public static final int GL_RENDERBUFFER_OES = 36161; // 0x8d41 + field public static final int GL_RENDERBUFFER_RED_SIZE_OES = 36176; // 0x8d50 + field public static final int GL_RENDERBUFFER_STENCIL_SIZE_OES = 36181; // 0x8d55 + field public static final int GL_RENDERBUFFER_WIDTH_OES = 36162; // 0x8d42 + field public static final int GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES = 36200; // 0x8d68 + field public static final int GL_RGB565_OES = 36194; // 0x8d62 + field public static final int GL_RGB5_A1_OES = 32855; // 0x8057 + field public static final int GL_RGB8_OES = 32849; // 0x8051 + field public static final int GL_RGBA4_OES = 32854; // 0x8056 + field public static final int GL_RGBA8_OES = 32856; // 0x8058 + field public static final int GL_SAMPLER_EXTERNAL_OES = 36198; // 0x8d66 + field public static final int GL_STENCIL_ATTACHMENT_OES = 36128; // 0x8d20 + field public static final int GL_STENCIL_INDEX1_OES = 36166; // 0x8d46 + field public static final int GL_STENCIL_INDEX4_OES = 36167; // 0x8d47 + field public static final int GL_STENCIL_INDEX8_OES = 36168; // 0x8d48 + field public static final int GL_TEXTURE_BINDING_CUBE_MAP_OES = 34068; // 0x8514 + field public static final int GL_TEXTURE_BINDING_EXTERNAL_OES = 36199; // 0x8d67 + field public static final int GL_TEXTURE_CROP_RECT_OES = 35741; // 0x8b9d + field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES = 34070; // 0x8516 + field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES = 34072; // 0x8518 + field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES = 34074; // 0x851a + field public static final int GL_TEXTURE_CUBE_MAP_OES = 34067; // 0x8513 + field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES = 34069; // 0x8515 + field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES = 34071; // 0x8517 + field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES = 34073; // 0x8519 + field public static final int GL_TEXTURE_EXTERNAL_OES = 36197; // 0x8d65 + field public static final int GL_TEXTURE_GEN_MODE_OES = 9472; // 0x2500 + field public static final int GL_TEXTURE_GEN_STR_OES = 36192; // 0x8d60 + field public static final int GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES = 35215; // 0x898f + field public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 34046; // 0x84fe + field public static final int GL_UNSIGNED_INT_24_8_OES = 34042; // 0x84fa + field public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_OES = 34974; // 0x889e + field public static final int GL_WEIGHT_ARRAY_OES = 34477; // 0x86ad + field public static final int GL_WEIGHT_ARRAY_POINTER_OES = 34476; // 0x86ac + field public static final int GL_WEIGHT_ARRAY_SIZE_OES = 34475; // 0x86ab + field public static final int GL_WEIGHT_ARRAY_STRIDE_OES = 34474; // 0x86aa + field public static final int GL_WEIGHT_ARRAY_TYPE_OES = 34473; // 0x86a9 + field public static final int GL_WRITE_ONLY_OES = 35001; // 0x88b9 + } + + public class GLES20 { + ctor public GLES20(); + method public static void glActiveTexture(int); + method public static void glAttachShader(int, int); + method public static void glBindAttribLocation(int, int, String); + method public static void glBindBuffer(int, int); + method public static void glBindFramebuffer(int, int); + method public static void glBindRenderbuffer(int, int); + method public static void glBindTexture(int, int); + method public static void glBlendColor(float, float, float, float); + method public static void glBlendEquation(int); + method public static void glBlendEquationSeparate(int, int); + method public static void glBlendFunc(int, int); + method public static void glBlendFuncSeparate(int, int, int, int); + method public static void glBufferData(int, int, java.nio.Buffer, int); + method public static void glBufferSubData(int, int, int, java.nio.Buffer); + method public static int glCheckFramebufferStatus(int); + method public static void glClear(int); + method public static void glClearColor(float, float, float, float); + method public static void glClearDepthf(float); + method public static void glClearStencil(int); + method public static void glColorMask(boolean, boolean, boolean, boolean); + method public static void glCompileShader(int); + method public static void glCompressedTexImage2D(int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glCompressedTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glCopyTexImage2D(int, int, int, int, int, int, int, int); + method public static void glCopyTexSubImage2D(int, int, int, int, int, int, int, int); + method public static int glCreateProgram(); + method public static int glCreateShader(int); + method public static void glCullFace(int); + method public static void glDeleteBuffers(int, int[], int); + method public static void glDeleteBuffers(int, java.nio.IntBuffer); + method public static void glDeleteFramebuffers(int, int[], int); + method public static void glDeleteFramebuffers(int, java.nio.IntBuffer); + method public static void glDeleteProgram(int); + method public static void glDeleteRenderbuffers(int, int[], int); + method public static void glDeleteRenderbuffers(int, java.nio.IntBuffer); + method public static void glDeleteShader(int); + method public static void glDeleteTextures(int, int[], int); + method public static void glDeleteTextures(int, java.nio.IntBuffer); + method public static void glDepthFunc(int); + method public static void glDepthMask(boolean); + method public static void glDepthRangef(float, float); + method public static void glDetachShader(int, int); + method public static void glDisable(int); + method public static void glDisableVertexAttribArray(int); + method public static void glDrawArrays(int, int, int); + method public static void glDrawElements(int, int, int, int); + method public static void glDrawElements(int, int, int, java.nio.Buffer); + method public static void glEnable(int); + method public static void glEnableVertexAttribArray(int); + method public static void glFinish(); + method public static void glFlush(); + method public static void glFramebufferRenderbuffer(int, int, int, int); + method public static void glFramebufferTexture2D(int, int, int, int, int); + method public static void glFrontFace(int); + method public static void glGenBuffers(int, int[], int); + method public static void glGenBuffers(int, java.nio.IntBuffer); + method public static void glGenFramebuffers(int, int[], int); + method public static void glGenFramebuffers(int, java.nio.IntBuffer); + method public static void glGenRenderbuffers(int, int[], int); + method public static void glGenRenderbuffers(int, java.nio.IntBuffer); + method public static void glGenTextures(int, int[], int); + method public static void glGenTextures(int, java.nio.IntBuffer); + method public static void glGenerateMipmap(int); + method public static void glGetActiveAttrib(int, int, int, int[], int, int[], int, int[], int, byte[], int); + method public static String glGetActiveAttrib(int, int, int[], int, int[], int); + method public static String glGetActiveAttrib(int, int, java.nio.IntBuffer, java.nio.IntBuffer); + method public static void glGetActiveUniform(int, int, int, int[], int, int[], int, int[], int, byte[], int); + method public static String glGetActiveUniform(int, int, int[], int, int[], int); + method public static String glGetActiveUniform(int, int, java.nio.IntBuffer, java.nio.IntBuffer); + method public static void glGetAttachedShaders(int, int, int[], int, int[], int); + method public static void glGetAttachedShaders(int, int, java.nio.IntBuffer, java.nio.IntBuffer); + method public static int glGetAttribLocation(int, String); + method public static void glGetBooleanv(int, boolean[], int); + method public static void glGetBooleanv(int, java.nio.IntBuffer); + method public static void glGetBufferParameteriv(int, int, int[], int); + method public static void glGetBufferParameteriv(int, int, java.nio.IntBuffer); + method public static int glGetError(); + method public static void glGetFloatv(int, float[], int); + method public static void glGetFloatv(int, java.nio.FloatBuffer); + method public static void glGetFramebufferAttachmentParameteriv(int, int, int, int[], int); + method public static void glGetFramebufferAttachmentParameteriv(int, int, int, java.nio.IntBuffer); + method public static void glGetIntegerv(int, int[], int); + method public static void glGetIntegerv(int, java.nio.IntBuffer); + method public static String glGetProgramInfoLog(int); + method public static void glGetProgramiv(int, int, int[], int); + method public static void glGetProgramiv(int, int, java.nio.IntBuffer); + method public static void glGetRenderbufferParameteriv(int, int, int[], int); + method public static void glGetRenderbufferParameteriv(int, int, java.nio.IntBuffer); + method public static String glGetShaderInfoLog(int); + method public static void glGetShaderPrecisionFormat(int, int, int[], int, int[], int); + method public static void glGetShaderPrecisionFormat(int, int, java.nio.IntBuffer, java.nio.IntBuffer); + method public static void glGetShaderSource(int, int, int[], int, byte[], int); + method public static String glGetShaderSource(int); + method public static void glGetShaderiv(int, int, int[], int); + method public static void glGetShaderiv(int, int, java.nio.IntBuffer); + method public static String glGetString(int); + method public static void glGetTexParameterfv(int, int, float[], int); + method public static void glGetTexParameterfv(int, int, java.nio.FloatBuffer); + method public static void glGetTexParameteriv(int, int, int[], int); + method public static void glGetTexParameteriv(int, int, java.nio.IntBuffer); + method public static int glGetUniformLocation(int, String); + method public static void glGetUniformfv(int, int, float[], int); + method public static void glGetUniformfv(int, int, java.nio.FloatBuffer); + method public static void glGetUniformiv(int, int, int[], int); + method public static void glGetUniformiv(int, int, java.nio.IntBuffer); + method public static void glGetVertexAttribfv(int, int, float[], int); + method public static void glGetVertexAttribfv(int, int, java.nio.FloatBuffer); + method public static void glGetVertexAttribiv(int, int, int[], int); + method public static void glGetVertexAttribiv(int, int, java.nio.IntBuffer); + method public static void glHint(int, int); + method public static boolean glIsBuffer(int); + method public static boolean glIsEnabled(int); + method public static boolean glIsFramebuffer(int); + method public static boolean glIsProgram(int); + method public static boolean glIsRenderbuffer(int); + method public static boolean glIsShader(int); + method public static boolean glIsTexture(int); + method public static void glLineWidth(float); + method public static void glLinkProgram(int); + method public static void glPixelStorei(int, int); + method public static void glPolygonOffset(float, float); + method public static void glReadPixels(int, int, int, int, int, int, java.nio.Buffer); + method public static void glReleaseShaderCompiler(); + method public static void glRenderbufferStorage(int, int, int, int); + method public static void glSampleCoverage(float, boolean); + method public static void glScissor(int, int, int, int); + method public static void glShaderBinary(int, int[], int, int, java.nio.Buffer, int); + method public static void glShaderBinary(int, java.nio.IntBuffer, int, java.nio.Buffer, int); + method public static void glShaderSource(int, String); + method public static void glStencilFunc(int, int, int); + method public static void glStencilFuncSeparate(int, int, int, int); + method public static void glStencilMask(int); + method public static void glStencilMaskSeparate(int, int); + method public static void glStencilOp(int, int, int); + method public static void glStencilOpSeparate(int, int, int, int); + method public static void glTexImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glTexParameterf(int, int, float); + method public static void glTexParameterfv(int, int, float[], int); + method public static void glTexParameterfv(int, int, java.nio.FloatBuffer); + method public static void glTexParameteri(int, int, int); + method public static void glTexParameteriv(int, int, int[], int); + method public static void glTexParameteriv(int, int, java.nio.IntBuffer); + method public static void glTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glUniform1f(int, float); + method public static void glUniform1fv(int, int, float[], int); + method public static void glUniform1fv(int, int, java.nio.FloatBuffer); + method public static void glUniform1i(int, int); + method public static void glUniform1iv(int, int, int[], int); + method public static void glUniform1iv(int, int, java.nio.IntBuffer); + method public static void glUniform2f(int, float, float); + method public static void glUniform2fv(int, int, float[], int); + method public static void glUniform2fv(int, int, java.nio.FloatBuffer); + method public static void glUniform2i(int, int, int); + method public static void glUniform2iv(int, int, int[], int); + method public static void glUniform2iv(int, int, java.nio.IntBuffer); + method public static void glUniform3f(int, float, float, float); + method public static void glUniform3fv(int, int, float[], int); + method public static void glUniform3fv(int, int, java.nio.FloatBuffer); + method public static void glUniform3i(int, int, int, int); + method public static void glUniform3iv(int, int, int[], int); + method public static void glUniform3iv(int, int, java.nio.IntBuffer); + method public static void glUniform4f(int, float, float, float, float); + method public static void glUniform4fv(int, int, float[], int); + method public static void glUniform4fv(int, int, java.nio.FloatBuffer); + method public static void glUniform4i(int, int, int, int, int); + method public static void glUniform4iv(int, int, int[], int); + method public static void glUniform4iv(int, int, java.nio.IntBuffer); + method public static void glUniformMatrix2fv(int, int, boolean, float[], int); + method public static void glUniformMatrix2fv(int, int, boolean, java.nio.FloatBuffer); + method public static void glUniformMatrix3fv(int, int, boolean, float[], int); + method public static void glUniformMatrix3fv(int, int, boolean, java.nio.FloatBuffer); + method public static void glUniformMatrix4fv(int, int, boolean, float[], int); + method public static void glUniformMatrix4fv(int, int, boolean, java.nio.FloatBuffer); + method public static void glUseProgram(int); + method public static void glValidateProgram(int); + method public static void glVertexAttrib1f(int, float); + method public static void glVertexAttrib1fv(int, float[], int); + method public static void glVertexAttrib1fv(int, java.nio.FloatBuffer); + method public static void glVertexAttrib2f(int, float, float); + method public static void glVertexAttrib2fv(int, float[], int); + method public static void glVertexAttrib2fv(int, java.nio.FloatBuffer); + method public static void glVertexAttrib3f(int, float, float, float); + method public static void glVertexAttrib3fv(int, float[], int); + method public static void glVertexAttrib3fv(int, java.nio.FloatBuffer); + method public static void glVertexAttrib4f(int, float, float, float, float); + method public static void glVertexAttrib4fv(int, float[], int); + method public static void glVertexAttrib4fv(int, java.nio.FloatBuffer); + method public static void glVertexAttribPointer(int, int, int, boolean, int, int); + method public static void glVertexAttribPointer(int, int, int, boolean, int, java.nio.Buffer); + method public static void glViewport(int, int, int, int); + field public static final int GL_ACTIVE_ATTRIBUTES = 35721; // 0x8b89 + field public static final int GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 35722; // 0x8b8a + field public static final int GL_ACTIVE_TEXTURE = 34016; // 0x84e0 + field public static final int GL_ACTIVE_UNIFORMS = 35718; // 0x8b86 + field public static final int GL_ACTIVE_UNIFORM_MAX_LENGTH = 35719; // 0x8b87 + field public static final int GL_ALIASED_LINE_WIDTH_RANGE = 33902; // 0x846e + field public static final int GL_ALIASED_POINT_SIZE_RANGE = 33901; // 0x846d + field public static final int GL_ALPHA = 6406; // 0x1906 + field public static final int GL_ALPHA_BITS = 3413; // 0xd55 + field public static final int GL_ALWAYS = 519; // 0x207 + field public static final int GL_ARRAY_BUFFER = 34962; // 0x8892 + field public static final int GL_ARRAY_BUFFER_BINDING = 34964; // 0x8894 + field public static final int GL_ATTACHED_SHADERS = 35717; // 0x8b85 + field public static final int GL_BACK = 1029; // 0x405 + field public static final int GL_BLEND = 3042; // 0xbe2 + field public static final int GL_BLEND_COLOR = 32773; // 0x8005 + field public static final int GL_BLEND_DST_ALPHA = 32970; // 0x80ca + field public static final int GL_BLEND_DST_RGB = 32968; // 0x80c8 + field public static final int GL_BLEND_EQUATION = 32777; // 0x8009 + field public static final int GL_BLEND_EQUATION_ALPHA = 34877; // 0x883d + field public static final int GL_BLEND_EQUATION_RGB = 32777; // 0x8009 + field public static final int GL_BLEND_SRC_ALPHA = 32971; // 0x80cb + field public static final int GL_BLEND_SRC_RGB = 32969; // 0x80c9 + field public static final int GL_BLUE_BITS = 3412; // 0xd54 + field public static final int GL_BOOL = 35670; // 0x8b56 + field public static final int GL_BOOL_VEC2 = 35671; // 0x8b57 + field public static final int GL_BOOL_VEC3 = 35672; // 0x8b58 + field public static final int GL_BOOL_VEC4 = 35673; // 0x8b59 + field public static final int GL_BUFFER_SIZE = 34660; // 0x8764 + field public static final int GL_BUFFER_USAGE = 34661; // 0x8765 + field public static final int GL_BYTE = 5120; // 0x1400 + field public static final int GL_CCW = 2305; // 0x901 + field public static final int GL_CLAMP_TO_EDGE = 33071; // 0x812f + field public static final int GL_COLOR_ATTACHMENT0 = 36064; // 0x8ce0 + field public static final int GL_COLOR_BUFFER_BIT = 16384; // 0x4000 + field public static final int GL_COLOR_CLEAR_VALUE = 3106; // 0xc22 + field public static final int GL_COLOR_WRITEMASK = 3107; // 0xc23 + field public static final int GL_COMPILE_STATUS = 35713; // 0x8b81 + field public static final int GL_COMPRESSED_TEXTURE_FORMATS = 34467; // 0x86a3 + field public static final int GL_CONSTANT_ALPHA = 32771; // 0x8003 + field public static final int GL_CONSTANT_COLOR = 32769; // 0x8001 + field public static final int GL_CULL_FACE = 2884; // 0xb44 + field public static final int GL_CULL_FACE_MODE = 2885; // 0xb45 + field public static final int GL_CURRENT_PROGRAM = 35725; // 0x8b8d + field public static final int GL_CURRENT_VERTEX_ATTRIB = 34342; // 0x8626 + field public static final int GL_CW = 2304; // 0x900 + field public static final int GL_DECR = 7683; // 0x1e03 + field public static final int GL_DECR_WRAP = 34056; // 0x8508 + field public static final int GL_DELETE_STATUS = 35712; // 0x8b80 + field public static final int GL_DEPTH_ATTACHMENT = 36096; // 0x8d00 + field public static final int GL_DEPTH_BITS = 3414; // 0xd56 + field public static final int GL_DEPTH_BUFFER_BIT = 256; // 0x100 + field public static final int GL_DEPTH_CLEAR_VALUE = 2931; // 0xb73 + field public static final int GL_DEPTH_COMPONENT = 6402; // 0x1902 + field public static final int GL_DEPTH_COMPONENT16 = 33189; // 0x81a5 + field public static final int GL_DEPTH_FUNC = 2932; // 0xb74 + field public static final int GL_DEPTH_RANGE = 2928; // 0xb70 + field public static final int GL_DEPTH_TEST = 2929; // 0xb71 + field public static final int GL_DEPTH_WRITEMASK = 2930; // 0xb72 + field public static final int GL_DITHER = 3024; // 0xbd0 + field public static final int GL_DONT_CARE = 4352; // 0x1100 + field public static final int GL_DST_ALPHA = 772; // 0x304 + field public static final int GL_DST_COLOR = 774; // 0x306 + field public static final int GL_DYNAMIC_DRAW = 35048; // 0x88e8 + field public static final int GL_ELEMENT_ARRAY_BUFFER = 34963; // 0x8893 + field public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING = 34965; // 0x8895 + field public static final int GL_EQUAL = 514; // 0x202 + field public static final int GL_EXTENSIONS = 7939; // 0x1f03 + field public static final int GL_FALSE = 0; // 0x0 + field public static final int GL_FASTEST = 4353; // 0x1101 + field public static final int GL_FIXED = 5132; // 0x140c + field public static final int GL_FLOAT = 5126; // 0x1406 + field public static final int GL_FLOAT_MAT2 = 35674; // 0x8b5a + field public static final int GL_FLOAT_MAT3 = 35675; // 0x8b5b + field public static final int GL_FLOAT_MAT4 = 35676; // 0x8b5c + field public static final int GL_FLOAT_VEC2 = 35664; // 0x8b50 + field public static final int GL_FLOAT_VEC3 = 35665; // 0x8b51 + field public static final int GL_FLOAT_VEC4 = 35666; // 0x8b52 + field public static final int GL_FRAGMENT_SHADER = 35632; // 0x8b30 + field public static final int GL_FRAMEBUFFER = 36160; // 0x8d40 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 36049; // 0x8cd1 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 36048; // 0x8cd0 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 36051; // 0x8cd3 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 36050; // 0x8cd2 + field public static final int GL_FRAMEBUFFER_BINDING = 36006; // 0x8ca6 + field public static final int GL_FRAMEBUFFER_COMPLETE = 36053; // 0x8cd5 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 36054; // 0x8cd6 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 36057; // 0x8cd9 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 36055; // 0x8cd7 + field public static final int GL_FRAMEBUFFER_UNSUPPORTED = 36061; // 0x8cdd + field public static final int GL_FRONT = 1028; // 0x404 + field public static final int GL_FRONT_AND_BACK = 1032; // 0x408 + field public static final int GL_FRONT_FACE = 2886; // 0xb46 + field public static final int GL_FUNC_ADD = 32774; // 0x8006 + field public static final int GL_FUNC_REVERSE_SUBTRACT = 32779; // 0x800b + field public static final int GL_FUNC_SUBTRACT = 32778; // 0x800a + field public static final int GL_GENERATE_MIPMAP_HINT = 33170; // 0x8192 + field public static final int GL_GEQUAL = 518; // 0x206 + field public static final int GL_GREATER = 516; // 0x204 + field public static final int GL_GREEN_BITS = 3411; // 0xd53 + field public static final int GL_HIGH_FLOAT = 36338; // 0x8df2 + field public static final int GL_HIGH_INT = 36341; // 0x8df5 + field public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT = 35739; // 0x8b9b + field public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE = 35738; // 0x8b9a + field public static final int GL_INCR = 7682; // 0x1e02 + field public static final int GL_INCR_WRAP = 34055; // 0x8507 + field public static final int GL_INFO_LOG_LENGTH = 35716; // 0x8b84 + field public static final int GL_INT = 5124; // 0x1404 + field public static final int GL_INT_VEC2 = 35667; // 0x8b53 + field public static final int GL_INT_VEC3 = 35668; // 0x8b54 + field public static final int GL_INT_VEC4 = 35669; // 0x8b55 + field public static final int GL_INVALID_ENUM = 1280; // 0x500 + field public static final int GL_INVALID_FRAMEBUFFER_OPERATION = 1286; // 0x506 + field public static final int GL_INVALID_OPERATION = 1282; // 0x502 + field public static final int GL_INVALID_VALUE = 1281; // 0x501 + field public static final int GL_INVERT = 5386; // 0x150a + field public static final int GL_KEEP = 7680; // 0x1e00 + field public static final int GL_LEQUAL = 515; // 0x203 + field public static final int GL_LESS = 513; // 0x201 + field public static final int GL_LINEAR = 9729; // 0x2601 + field public static final int GL_LINEAR_MIPMAP_LINEAR = 9987; // 0x2703 + field public static final int GL_LINEAR_MIPMAP_NEAREST = 9985; // 0x2701 + field public static final int GL_LINES = 1; // 0x1 + field public static final int GL_LINE_LOOP = 2; // 0x2 + field public static final int GL_LINE_STRIP = 3; // 0x3 + field public static final int GL_LINE_WIDTH = 2849; // 0xb21 + field public static final int GL_LINK_STATUS = 35714; // 0x8b82 + field public static final int GL_LOW_FLOAT = 36336; // 0x8df0 + field public static final int GL_LOW_INT = 36339; // 0x8df3 + field public static final int GL_LUMINANCE = 6409; // 0x1909 + field public static final int GL_LUMINANCE_ALPHA = 6410; // 0x190a + field public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 35661; // 0x8b4d + field public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 34076; // 0x851c + field public static final int GL_MAX_FRAGMENT_UNIFORM_VECTORS = 36349; // 0x8dfd + field public static final int GL_MAX_RENDERBUFFER_SIZE = 34024; // 0x84e8 + field public static final int GL_MAX_TEXTURE_IMAGE_UNITS = 34930; // 0x8872 + field public static final int GL_MAX_TEXTURE_SIZE = 3379; // 0xd33 + field public static final int GL_MAX_VARYING_VECTORS = 36348; // 0x8dfc + field public static final int GL_MAX_VERTEX_ATTRIBS = 34921; // 0x8869 + field public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 35660; // 0x8b4c + field public static final int GL_MAX_VERTEX_UNIFORM_VECTORS = 36347; // 0x8dfb + field public static final int GL_MAX_VIEWPORT_DIMS = 3386; // 0xd3a + field public static final int GL_MEDIUM_FLOAT = 36337; // 0x8df1 + field public static final int GL_MEDIUM_INT = 36340; // 0x8df4 + field public static final int GL_MIRRORED_REPEAT = 33648; // 0x8370 + field public static final int GL_NEAREST = 9728; // 0x2600 + field public static final int GL_NEAREST_MIPMAP_LINEAR = 9986; // 0x2702 + field public static final int GL_NEAREST_MIPMAP_NEAREST = 9984; // 0x2700 + field public static final int GL_NEVER = 512; // 0x200 + field public static final int GL_NICEST = 4354; // 0x1102 + field public static final int GL_NONE = 0; // 0x0 + field public static final int GL_NOTEQUAL = 517; // 0x205 + field public static final int GL_NO_ERROR = 0; // 0x0 + field public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 34466; // 0x86a2 + field public static final int GL_NUM_SHADER_BINARY_FORMATS = 36345; // 0x8df9 + field public static final int GL_ONE = 1; // 0x1 + field public static final int GL_ONE_MINUS_CONSTANT_ALPHA = 32772; // 0x8004 + field public static final int GL_ONE_MINUS_CONSTANT_COLOR = 32770; // 0x8002 + field public static final int GL_ONE_MINUS_DST_ALPHA = 773; // 0x305 + field public static final int GL_ONE_MINUS_DST_COLOR = 775; // 0x307 + field public static final int GL_ONE_MINUS_SRC_ALPHA = 771; // 0x303 + field public static final int GL_ONE_MINUS_SRC_COLOR = 769; // 0x301 + field public static final int GL_OUT_OF_MEMORY = 1285; // 0x505 + field public static final int GL_PACK_ALIGNMENT = 3333; // 0xd05 + field public static final int GL_POINTS = 0; // 0x0 + field public static final int GL_POLYGON_OFFSET_FACTOR = 32824; // 0x8038 + field public static final int GL_POLYGON_OFFSET_FILL = 32823; // 0x8037 + field public static final int GL_POLYGON_OFFSET_UNITS = 10752; // 0x2a00 + field public static final int GL_RED_BITS = 3410; // 0xd52 + field public static final int GL_RENDERBUFFER = 36161; // 0x8d41 + field public static final int GL_RENDERBUFFER_ALPHA_SIZE = 36179; // 0x8d53 + field public static final int GL_RENDERBUFFER_BINDING = 36007; // 0x8ca7 + field public static final int GL_RENDERBUFFER_BLUE_SIZE = 36178; // 0x8d52 + field public static final int GL_RENDERBUFFER_DEPTH_SIZE = 36180; // 0x8d54 + field public static final int GL_RENDERBUFFER_GREEN_SIZE = 36177; // 0x8d51 + field public static final int GL_RENDERBUFFER_HEIGHT = 36163; // 0x8d43 + field public static final int GL_RENDERBUFFER_INTERNAL_FORMAT = 36164; // 0x8d44 + field public static final int GL_RENDERBUFFER_RED_SIZE = 36176; // 0x8d50 + field public static final int GL_RENDERBUFFER_STENCIL_SIZE = 36181; // 0x8d55 + field public static final int GL_RENDERBUFFER_WIDTH = 36162; // 0x8d42 + field public static final int GL_RENDERER = 7937; // 0x1f01 + field public static final int GL_REPEAT = 10497; // 0x2901 + field public static final int GL_REPLACE = 7681; // 0x1e01 + field public static final int GL_RGB = 6407; // 0x1907 + field public static final int GL_RGB565 = 36194; // 0x8d62 + field public static final int GL_RGB5_A1 = 32855; // 0x8057 + field public static final int GL_RGBA = 6408; // 0x1908 + field public static final int GL_RGBA4 = 32854; // 0x8056 + field public static final int GL_SAMPLER_2D = 35678; // 0x8b5e + field public static final int GL_SAMPLER_CUBE = 35680; // 0x8b60 + field public static final int GL_SAMPLES = 32937; // 0x80a9 + field public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 32926; // 0x809e + field public static final int GL_SAMPLE_BUFFERS = 32936; // 0x80a8 + field public static final int GL_SAMPLE_COVERAGE = 32928; // 0x80a0 + field public static final int GL_SAMPLE_COVERAGE_INVERT = 32939; // 0x80ab + field public static final int GL_SAMPLE_COVERAGE_VALUE = 32938; // 0x80aa + field public static final int GL_SCISSOR_BOX = 3088; // 0xc10 + field public static final int GL_SCISSOR_TEST = 3089; // 0xc11 + field public static final int GL_SHADER_BINARY_FORMATS = 36344; // 0x8df8 + field public static final int GL_SHADER_COMPILER = 36346; // 0x8dfa + field public static final int GL_SHADER_SOURCE_LENGTH = 35720; // 0x8b88 + field public static final int GL_SHADER_TYPE = 35663; // 0x8b4f + field public static final int GL_SHADING_LANGUAGE_VERSION = 35724; // 0x8b8c + field public static final int GL_SHORT = 5122; // 0x1402 + field public static final int GL_SRC_ALPHA = 770; // 0x302 + field public static final int GL_SRC_ALPHA_SATURATE = 776; // 0x308 + field public static final int GL_SRC_COLOR = 768; // 0x300 + field public static final int GL_STATIC_DRAW = 35044; // 0x88e4 + field public static final int GL_STENCIL_ATTACHMENT = 36128; // 0x8d20 + field public static final int GL_STENCIL_BACK_FAIL = 34817; // 0x8801 + field public static final int GL_STENCIL_BACK_FUNC = 34816; // 0x8800 + field public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL = 34818; // 0x8802 + field public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS = 34819; // 0x8803 + field public static final int GL_STENCIL_BACK_REF = 36003; // 0x8ca3 + field public static final int GL_STENCIL_BACK_VALUE_MASK = 36004; // 0x8ca4 + field public static final int GL_STENCIL_BACK_WRITEMASK = 36005; // 0x8ca5 + field public static final int GL_STENCIL_BITS = 3415; // 0xd57 + field public static final int GL_STENCIL_BUFFER_BIT = 1024; // 0x400 + field public static final int GL_STENCIL_CLEAR_VALUE = 2961; // 0xb91 + field public static final int GL_STENCIL_FAIL = 2964; // 0xb94 + field public static final int GL_STENCIL_FUNC = 2962; // 0xb92 + field @Deprecated public static final int GL_STENCIL_INDEX = 6401; // 0x1901 + field public static final int GL_STENCIL_INDEX8 = 36168; // 0x8d48 + field public static final int GL_STENCIL_PASS_DEPTH_FAIL = 2965; // 0xb95 + field public static final int GL_STENCIL_PASS_DEPTH_PASS = 2966; // 0xb96 + field public static final int GL_STENCIL_REF = 2967; // 0xb97 + field public static final int GL_STENCIL_TEST = 2960; // 0xb90 + field public static final int GL_STENCIL_VALUE_MASK = 2963; // 0xb93 + field public static final int GL_STENCIL_WRITEMASK = 2968; // 0xb98 + field public static final int GL_STREAM_DRAW = 35040; // 0x88e0 + field public static final int GL_SUBPIXEL_BITS = 3408; // 0xd50 + field public static final int GL_TEXTURE = 5890; // 0x1702 + field public static final int GL_TEXTURE0 = 33984; // 0x84c0 + field public static final int GL_TEXTURE1 = 33985; // 0x84c1 + field public static final int GL_TEXTURE10 = 33994; // 0x84ca + field public static final int GL_TEXTURE11 = 33995; // 0x84cb + field public static final int GL_TEXTURE12 = 33996; // 0x84cc + field public static final int GL_TEXTURE13 = 33997; // 0x84cd + field public static final int GL_TEXTURE14 = 33998; // 0x84ce + field public static final int GL_TEXTURE15 = 33999; // 0x84cf + field public static final int GL_TEXTURE16 = 34000; // 0x84d0 + field public static final int GL_TEXTURE17 = 34001; // 0x84d1 + field public static final int GL_TEXTURE18 = 34002; // 0x84d2 + field public static final int GL_TEXTURE19 = 34003; // 0x84d3 + field public static final int GL_TEXTURE2 = 33986; // 0x84c2 + field public static final int GL_TEXTURE20 = 34004; // 0x84d4 + field public static final int GL_TEXTURE21 = 34005; // 0x84d5 + field public static final int GL_TEXTURE22 = 34006; // 0x84d6 + field public static final int GL_TEXTURE23 = 34007; // 0x84d7 + field public static final int GL_TEXTURE24 = 34008; // 0x84d8 + field public static final int GL_TEXTURE25 = 34009; // 0x84d9 + field public static final int GL_TEXTURE26 = 34010; // 0x84da + field public static final int GL_TEXTURE27 = 34011; // 0x84db + field public static final int GL_TEXTURE28 = 34012; // 0x84dc + field public static final int GL_TEXTURE29 = 34013; // 0x84dd + field public static final int GL_TEXTURE3 = 33987; // 0x84c3 + field public static final int GL_TEXTURE30 = 34014; // 0x84de + field public static final int GL_TEXTURE31 = 34015; // 0x84df + field public static final int GL_TEXTURE4 = 33988; // 0x84c4 + field public static final int GL_TEXTURE5 = 33989; // 0x84c5 + field public static final int GL_TEXTURE6 = 33990; // 0x84c6 + field public static final int GL_TEXTURE7 = 33991; // 0x84c7 + field public static final int GL_TEXTURE8 = 33992; // 0x84c8 + field public static final int GL_TEXTURE9 = 33993; // 0x84c9 + field public static final int GL_TEXTURE_2D = 3553; // 0xde1 + field public static final int GL_TEXTURE_BINDING_2D = 32873; // 0x8069 + field public static final int GL_TEXTURE_BINDING_CUBE_MAP = 34068; // 0x8514 + field public static final int GL_TEXTURE_CUBE_MAP = 34067; // 0x8513 + field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 34070; // 0x8516 + field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072; // 0x8518 + field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074; // 0x851a + field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 34069; // 0x8515 + field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 34071; // 0x8517 + field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 34073; // 0x8519 + field public static final int GL_TEXTURE_MAG_FILTER = 10240; // 0x2800 + field public static final int GL_TEXTURE_MIN_FILTER = 10241; // 0x2801 + field public static final int GL_TEXTURE_WRAP_S = 10242; // 0x2802 + field public static final int GL_TEXTURE_WRAP_T = 10243; // 0x2803 + field public static final int GL_TRIANGLES = 4; // 0x4 + field public static final int GL_TRIANGLE_FAN = 6; // 0x6 + field public static final int GL_TRIANGLE_STRIP = 5; // 0x5 + field public static final int GL_TRUE = 1; // 0x1 + field public static final int GL_UNPACK_ALIGNMENT = 3317; // 0xcf5 + field public static final int GL_UNSIGNED_BYTE = 5121; // 0x1401 + field public static final int GL_UNSIGNED_INT = 5125; // 0x1405 + field public static final int GL_UNSIGNED_SHORT = 5123; // 0x1403 + field public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 32819; // 0x8033 + field public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 32820; // 0x8034 + field public static final int GL_UNSIGNED_SHORT_5_6_5 = 33635; // 0x8363 + field public static final int GL_VALIDATE_STATUS = 35715; // 0x8b83 + field public static final int GL_VENDOR = 7936; // 0x1f00 + field public static final int GL_VERSION = 7938; // 0x1f02 + field public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 34975; // 0x889f + field public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED = 34338; // 0x8622 + field public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 34922; // 0x886a + field public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER = 34373; // 0x8645 + field public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE = 34339; // 0x8623 + field public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE = 34340; // 0x8624 + field public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE = 34341; // 0x8625 + field public static final int GL_VERTEX_SHADER = 35633; // 0x8b31 + field public static final int GL_VIEWPORT = 2978; // 0xba2 + field public static final int GL_ZERO = 0; // 0x0 + } + + public class GLES30 extends android.opengl.GLES20 { + ctor public GLES30(); + method public static void glBeginQuery(int, int); + method public static void glBeginTransformFeedback(int); + method public static void glBindBufferBase(int, int, int); + method public static void glBindBufferRange(int, int, int, int, int); + method public static void glBindSampler(int, int); + method public static void glBindTransformFeedback(int, int); + method public static void glBindVertexArray(int); + method public static void glBlitFramebuffer(int, int, int, int, int, int, int, int, int, int); + method public static void glClearBufferfi(int, int, float, int); + method public static void glClearBufferfv(int, int, float[], int); + method public static void glClearBufferfv(int, int, java.nio.FloatBuffer); + method public static void glClearBufferiv(int, int, int[], int); + method public static void glClearBufferiv(int, int, java.nio.IntBuffer); + method public static void glClearBufferuiv(int, int, int[], int); + method public static void glClearBufferuiv(int, int, java.nio.IntBuffer); + method public static int glClientWaitSync(long, int, long); + method public static void glCompressedTexImage3D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glCompressedTexImage3D(int, int, int, int, int, int, int, int, int); + method public static void glCompressedTexSubImage3D(int, int, int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glCompressedTexSubImage3D(int, int, int, int, int, int, int, int, int, int, int); + method public static void glCopyBufferSubData(int, int, int, int, int); + method public static void glCopyTexSubImage3D(int, int, int, int, int, int, int, int, int); + method public static void glDeleteQueries(int, int[], int); + method public static void glDeleteQueries(int, java.nio.IntBuffer); + method public static void glDeleteSamplers(int, int[], int); + method public static void glDeleteSamplers(int, java.nio.IntBuffer); + method public static void glDeleteSync(long); + method public static void glDeleteTransformFeedbacks(int, int[], int); + method public static void glDeleteTransformFeedbacks(int, java.nio.IntBuffer); + method public static void glDeleteVertexArrays(int, int[], int); + method public static void glDeleteVertexArrays(int, java.nio.IntBuffer); + method public static void glDrawArraysInstanced(int, int, int, int); + method public static void glDrawBuffers(int, int[], int); + method public static void glDrawBuffers(int, java.nio.IntBuffer); + method public static void glDrawElementsInstanced(int, int, int, java.nio.Buffer, int); + method public static void glDrawElementsInstanced(int, int, int, int, int); + method public static void glDrawRangeElements(int, int, int, int, int, java.nio.Buffer); + method public static void glDrawRangeElements(int, int, int, int, int, int); + method public static void glEndQuery(int); + method public static void glEndTransformFeedback(); + method public static long glFenceSync(int, int); + method public static void glFlushMappedBufferRange(int, int, int); + method public static void glFramebufferTextureLayer(int, int, int, int, int); + method public static void glGenQueries(int, int[], int); + method public static void glGenQueries(int, java.nio.IntBuffer); + method public static void glGenSamplers(int, int[], int); + method public static void glGenSamplers(int, java.nio.IntBuffer); + method public static void glGenTransformFeedbacks(int, int[], int); + method public static void glGenTransformFeedbacks(int, java.nio.IntBuffer); + method public static void glGenVertexArrays(int, int[], int); + method public static void glGenVertexArrays(int, java.nio.IntBuffer); + method public static void glGetActiveUniformBlockName(int, int, int, int[], int, byte[], int); + method public static void glGetActiveUniformBlockName(int, int, java.nio.Buffer, java.nio.Buffer); + method public static String glGetActiveUniformBlockName(int, int); + method public static void glGetActiveUniformBlockiv(int, int, int, int[], int); + method public static void glGetActiveUniformBlockiv(int, int, int, java.nio.IntBuffer); + method public static void glGetActiveUniformsiv(int, int, int[], int, int, int[], int); + method public static void glGetActiveUniformsiv(int, int, java.nio.IntBuffer, int, java.nio.IntBuffer); + method public static void glGetBufferParameteri64v(int, int, long[], int); + method public static void glGetBufferParameteri64v(int, int, java.nio.LongBuffer); + method public static java.nio.Buffer glGetBufferPointerv(int, int); + method public static int glGetFragDataLocation(int, String); + method public static void glGetInteger64i_v(int, int, long[], int); + method public static void glGetInteger64i_v(int, int, java.nio.LongBuffer); + method public static void glGetInteger64v(int, long[], int); + method public static void glGetInteger64v(int, java.nio.LongBuffer); + method public static void glGetIntegeri_v(int, int, int[], int); + method public static void glGetIntegeri_v(int, int, java.nio.IntBuffer); + method public static void glGetInternalformativ(int, int, int, int, int[], int); + method public static void glGetInternalformativ(int, int, int, int, java.nio.IntBuffer); + method public static void glGetProgramBinary(int, int, int[], int, int[], int, java.nio.Buffer); + method public static void glGetProgramBinary(int, int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.Buffer); + method public static void glGetQueryObjectuiv(int, int, int[], int); + method public static void glGetQueryObjectuiv(int, int, java.nio.IntBuffer); + method public static void glGetQueryiv(int, int, int[], int); + method public static void glGetQueryiv(int, int, java.nio.IntBuffer); + method public static void glGetSamplerParameterfv(int, int, float[], int); + method public static void glGetSamplerParameterfv(int, int, java.nio.FloatBuffer); + method public static void glGetSamplerParameteriv(int, int, int[], int); + method public static void glGetSamplerParameteriv(int, int, java.nio.IntBuffer); + method public static String glGetStringi(int, int); + method public static void glGetSynciv(long, int, int, int[], int, int[], int); + method public static void glGetSynciv(long, int, int, java.nio.IntBuffer, java.nio.IntBuffer); + method public static void glGetTransformFeedbackVarying(int, int, int, int[], int, int[], int, int[], int, byte[], int); + method @Deprecated public static void glGetTransformFeedbackVarying(int, int, int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, byte); + method public static void glGetTransformFeedbackVarying(int, int, int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.ByteBuffer); + method public static String glGetTransformFeedbackVarying(int, int, int[], int, int[], int); + method public static String glGetTransformFeedbackVarying(int, int, java.nio.IntBuffer, java.nio.IntBuffer); + method public static int glGetUniformBlockIndex(int, String); + method public static void glGetUniformIndices(int, String[], int[], int); + method public static void glGetUniformIndices(int, String[], java.nio.IntBuffer); + method public static void glGetUniformuiv(int, int, int[], int); + method public static void glGetUniformuiv(int, int, java.nio.IntBuffer); + method public static void glGetVertexAttribIiv(int, int, int[], int); + method public static void glGetVertexAttribIiv(int, int, java.nio.IntBuffer); + method public static void glGetVertexAttribIuiv(int, int, int[], int); + method public static void glGetVertexAttribIuiv(int, int, java.nio.IntBuffer); + method public static void glInvalidateFramebuffer(int, int, int[], int); + method public static void glInvalidateFramebuffer(int, int, java.nio.IntBuffer); + method public static void glInvalidateSubFramebuffer(int, int, int[], int, int, int, int, int); + method public static void glInvalidateSubFramebuffer(int, int, java.nio.IntBuffer, int, int, int, int); + method public static boolean glIsQuery(int); + method public static boolean glIsSampler(int); + method public static boolean glIsSync(long); + method public static boolean glIsTransformFeedback(int); + method public static boolean glIsVertexArray(int); + method public static java.nio.Buffer glMapBufferRange(int, int, int, int); + method public static void glPauseTransformFeedback(); + method public static void glProgramBinary(int, int, java.nio.Buffer, int); + method public static void glProgramParameteri(int, int, int); + method public static void glReadBuffer(int); + method public static void glReadPixels(int, int, int, int, int, int, int); + method public static void glRenderbufferStorageMultisample(int, int, int, int, int); + method public static void glResumeTransformFeedback(); + method public static void glSamplerParameterf(int, int, float); + method public static void glSamplerParameterfv(int, int, float[], int); + method public static void glSamplerParameterfv(int, int, java.nio.FloatBuffer); + method public static void glSamplerParameteri(int, int, int); + method public static void glSamplerParameteriv(int, int, int[], int); + method public static void glSamplerParameteriv(int, int, java.nio.IntBuffer); + method public static void glTexImage3D(int, int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glTexImage3D(int, int, int, int, int, int, int, int, int, int); + method public static void glTexStorage2D(int, int, int, int, int); + method public static void glTexStorage3D(int, int, int, int, int, int); + method public static void glTexSubImage3D(int, int, int, int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glTexSubImage3D(int, int, int, int, int, int, int, int, int, int, int); + method public static void glTransformFeedbackVaryings(int, String[], int); + method public static void glUniform1ui(int, int); + method public static void glUniform1uiv(int, int, int[], int); + method public static void glUniform1uiv(int, int, java.nio.IntBuffer); + method public static void glUniform2ui(int, int, int); + method public static void glUniform2uiv(int, int, int[], int); + method public static void glUniform2uiv(int, int, java.nio.IntBuffer); + method public static void glUniform3ui(int, int, int, int); + method public static void glUniform3uiv(int, int, int[], int); + method public static void glUniform3uiv(int, int, java.nio.IntBuffer); + method public static void glUniform4ui(int, int, int, int, int); + method public static void glUniform4uiv(int, int, int[], int); + method public static void glUniform4uiv(int, int, java.nio.IntBuffer); + method public static void glUniformBlockBinding(int, int, int); + method public static void glUniformMatrix2x3fv(int, int, boolean, float[], int); + method public static void glUniformMatrix2x3fv(int, int, boolean, java.nio.FloatBuffer); + method public static void glUniformMatrix2x4fv(int, int, boolean, float[], int); + method public static void glUniformMatrix2x4fv(int, int, boolean, java.nio.FloatBuffer); + method public static void glUniformMatrix3x2fv(int, int, boolean, float[], int); + method public static void glUniformMatrix3x2fv(int, int, boolean, java.nio.FloatBuffer); + method public static void glUniformMatrix3x4fv(int, int, boolean, float[], int); + method public static void glUniformMatrix3x4fv(int, int, boolean, java.nio.FloatBuffer); + method public static void glUniformMatrix4x2fv(int, int, boolean, float[], int); + method public static void glUniformMatrix4x2fv(int, int, boolean, java.nio.FloatBuffer); + method public static void glUniformMatrix4x3fv(int, int, boolean, float[], int); + method public static void glUniformMatrix4x3fv(int, int, boolean, java.nio.FloatBuffer); + method public static boolean glUnmapBuffer(int); + method public static void glVertexAttribDivisor(int, int); + method public static void glVertexAttribI4i(int, int, int, int, int); + method public static void glVertexAttribI4iv(int, int[], int); + method public static void glVertexAttribI4iv(int, java.nio.IntBuffer); + method public static void glVertexAttribI4ui(int, int, int, int, int); + method public static void glVertexAttribI4uiv(int, int[], int); + method public static void glVertexAttribI4uiv(int, java.nio.IntBuffer); + method public static void glVertexAttribIPointer(int, int, int, int, java.nio.Buffer); + method public static void glVertexAttribIPointer(int, int, int, int, int); + method public static void glWaitSync(long, int, long); + field public static final int GL_ACTIVE_UNIFORM_BLOCKS = 35382; // 0x8a36 + field public static final int GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 35381; // 0x8a35 + field public static final int GL_ALREADY_SIGNALED = 37146; // 0x911a + field public static final int GL_ANY_SAMPLES_PASSED = 35887; // 0x8c2f + field public static final int GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 36202; // 0x8d6a + field public static final int GL_BLUE = 6405; // 0x1905 + field public static final int GL_BUFFER_ACCESS_FLAGS = 37151; // 0x911f + field public static final int GL_BUFFER_MAPPED = 35004; // 0x88bc + field public static final int GL_BUFFER_MAP_LENGTH = 37152; // 0x9120 + field public static final int GL_BUFFER_MAP_OFFSET = 37153; // 0x9121 + field public static final int GL_BUFFER_MAP_POINTER = 35005; // 0x88bd + field public static final int GL_COLOR = 6144; // 0x1800 + field public static final int GL_COLOR_ATTACHMENT1 = 36065; // 0x8ce1 + field public static final int GL_COLOR_ATTACHMENT10 = 36074; // 0x8cea + field public static final int GL_COLOR_ATTACHMENT11 = 36075; // 0x8ceb + field public static final int GL_COLOR_ATTACHMENT12 = 36076; // 0x8cec + field public static final int GL_COLOR_ATTACHMENT13 = 36077; // 0x8ced + field public static final int GL_COLOR_ATTACHMENT14 = 36078; // 0x8cee + field public static final int GL_COLOR_ATTACHMENT15 = 36079; // 0x8cef + field public static final int GL_COLOR_ATTACHMENT2 = 36066; // 0x8ce2 + field public static final int GL_COLOR_ATTACHMENT3 = 36067; // 0x8ce3 + field public static final int GL_COLOR_ATTACHMENT4 = 36068; // 0x8ce4 + field public static final int GL_COLOR_ATTACHMENT5 = 36069; // 0x8ce5 + field public static final int GL_COLOR_ATTACHMENT6 = 36070; // 0x8ce6 + field public static final int GL_COLOR_ATTACHMENT7 = 36071; // 0x8ce7 + field public static final int GL_COLOR_ATTACHMENT8 = 36072; // 0x8ce8 + field public static final int GL_COLOR_ATTACHMENT9 = 36073; // 0x8ce9 + field public static final int GL_COMPARE_REF_TO_TEXTURE = 34894; // 0x884e + field public static final int GL_COMPRESSED_R11_EAC = 37488; // 0x9270 + field public static final int GL_COMPRESSED_RG11_EAC = 37490; // 0x9272 + field public static final int GL_COMPRESSED_RGB8_ETC2 = 37492; // 0x9274 + field public static final int GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37494; // 0x9276 + field public static final int GL_COMPRESSED_RGBA8_ETC2_EAC = 37496; // 0x9278 + field public static final int GL_COMPRESSED_SIGNED_R11_EAC = 37489; // 0x9271 + field public static final int GL_COMPRESSED_SIGNED_RG11_EAC = 37491; // 0x9273 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 37497; // 0x9279 + field public static final int GL_COMPRESSED_SRGB8_ETC2 = 37493; // 0x9275 + field public static final int GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37495; // 0x9277 + field public static final int GL_CONDITION_SATISFIED = 37148; // 0x911c + field public static final int GL_COPY_READ_BUFFER = 36662; // 0x8f36 + field public static final int GL_COPY_READ_BUFFER_BINDING = 36662; // 0x8f36 + field public static final int GL_COPY_WRITE_BUFFER = 36663; // 0x8f37 + field public static final int GL_COPY_WRITE_BUFFER_BINDING = 36663; // 0x8f37 + field public static final int GL_CURRENT_QUERY = 34917; // 0x8865 + field public static final int GL_DEPTH = 6145; // 0x1801 + field public static final int GL_DEPTH24_STENCIL8 = 35056; // 0x88f0 + field public static final int GL_DEPTH32F_STENCIL8 = 36013; // 0x8cad + field public static final int GL_DEPTH_COMPONENT24 = 33190; // 0x81a6 + field public static final int GL_DEPTH_COMPONENT32F = 36012; // 0x8cac + field public static final int GL_DEPTH_STENCIL = 34041; // 0x84f9 + field public static final int GL_DEPTH_STENCIL_ATTACHMENT = 33306; // 0x821a + field public static final int GL_DRAW_BUFFER0 = 34853; // 0x8825 + field public static final int GL_DRAW_BUFFER1 = 34854; // 0x8826 + field public static final int GL_DRAW_BUFFER10 = 34863; // 0x882f + field public static final int GL_DRAW_BUFFER11 = 34864; // 0x8830 + field public static final int GL_DRAW_BUFFER12 = 34865; // 0x8831 + field public static final int GL_DRAW_BUFFER13 = 34866; // 0x8832 + field public static final int GL_DRAW_BUFFER14 = 34867; // 0x8833 + field public static final int GL_DRAW_BUFFER15 = 34868; // 0x8834 + field public static final int GL_DRAW_BUFFER2 = 34855; // 0x8827 + field public static final int GL_DRAW_BUFFER3 = 34856; // 0x8828 + field public static final int GL_DRAW_BUFFER4 = 34857; // 0x8829 + field public static final int GL_DRAW_BUFFER5 = 34858; // 0x882a + field public static final int GL_DRAW_BUFFER6 = 34859; // 0x882b + field public static final int GL_DRAW_BUFFER7 = 34860; // 0x882c + field public static final int GL_DRAW_BUFFER8 = 34861; // 0x882d + field public static final int GL_DRAW_BUFFER9 = 34862; // 0x882e + field public static final int GL_DRAW_FRAMEBUFFER = 36009; // 0x8ca9 + field public static final int GL_DRAW_FRAMEBUFFER_BINDING = 36006; // 0x8ca6 + field public static final int GL_DYNAMIC_COPY = 35050; // 0x88ea + field public static final int GL_DYNAMIC_READ = 35049; // 0x88e9 + field public static final int GL_FLOAT_32_UNSIGNED_INT_24_8_REV = 36269; // 0x8dad + field public static final int GL_FLOAT_MAT2x3 = 35685; // 0x8b65 + field public static final int GL_FLOAT_MAT2x4 = 35686; // 0x8b66 + field public static final int GL_FLOAT_MAT3x2 = 35687; // 0x8b67 + field public static final int GL_FLOAT_MAT3x4 = 35688; // 0x8b68 + field public static final int GL_FLOAT_MAT4x2 = 35689; // 0x8b69 + field public static final int GL_FLOAT_MAT4x3 = 35690; // 0x8b6a + field public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 35723; // 0x8b8b + field public static final int GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 33301; // 0x8215 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 33300; // 0x8214 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 33296; // 0x8210 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 33297; // 0x8211 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 33302; // 0x8216 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 33299; // 0x8213 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = 33298; // 0x8212 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 33303; // 0x8217 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 36052; // 0x8cd4 + field public static final int GL_FRAMEBUFFER_DEFAULT = 33304; // 0x8218 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 36182; // 0x8d56 + field public static final int GL_FRAMEBUFFER_UNDEFINED = 33305; // 0x8219 + field public static final int GL_GREEN = 6404; // 0x1904 + field public static final int GL_HALF_FLOAT = 5131; // 0x140b + field public static final int GL_INTERLEAVED_ATTRIBS = 35980; // 0x8c8c + field public static final int GL_INT_2_10_10_10_REV = 36255; // 0x8d9f + field public static final int GL_INT_SAMPLER_2D = 36298; // 0x8dca + field public static final int GL_INT_SAMPLER_2D_ARRAY = 36303; // 0x8dcf + field public static final int GL_INT_SAMPLER_3D = 36299; // 0x8dcb + field public static final int GL_INT_SAMPLER_CUBE = 36300; // 0x8dcc + field public static final int GL_INVALID_INDEX = -1; // 0xffffffff + field public static final int GL_MAJOR_VERSION = 33307; // 0x821b + field public static final int GL_MAP_FLUSH_EXPLICIT_BIT = 16; // 0x10 + field public static final int GL_MAP_INVALIDATE_BUFFER_BIT = 8; // 0x8 + field public static final int GL_MAP_INVALIDATE_RANGE_BIT = 4; // 0x4 + field public static final int GL_MAP_READ_BIT = 1; // 0x1 + field public static final int GL_MAP_UNSYNCHRONIZED_BIT = 32; // 0x20 + field public static final int GL_MAP_WRITE_BIT = 2; // 0x2 + field public static final int GL_MAX = 32776; // 0x8008 + field public static final int GL_MAX_3D_TEXTURE_SIZE = 32883; // 0x8073 + field public static final int GL_MAX_ARRAY_TEXTURE_LAYERS = 35071; // 0x88ff + field public static final int GL_MAX_COLOR_ATTACHMENTS = 36063; // 0x8cdf + field public static final int GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 35379; // 0x8a33 + field public static final int GL_MAX_COMBINED_UNIFORM_BLOCKS = 35374; // 0x8a2e + field public static final int GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 35377; // 0x8a31 + field public static final int GL_MAX_DRAW_BUFFERS = 34852; // 0x8824 + field public static final int GL_MAX_ELEMENTS_INDICES = 33001; // 0x80e9 + field public static final int GL_MAX_ELEMENTS_VERTICES = 33000; // 0x80e8 + field public static final int GL_MAX_ELEMENT_INDEX = 36203; // 0x8d6b + field public static final int GL_MAX_FRAGMENT_INPUT_COMPONENTS = 37157; // 0x9125 + field public static final int GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 35373; // 0x8a2d + field public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 35657; // 0x8b49 + field public static final int GL_MAX_PROGRAM_TEXEL_OFFSET = 35077; // 0x8905 + field public static final int GL_MAX_SAMPLES = 36183; // 0x8d57 + field public static final int GL_MAX_SERVER_WAIT_TIMEOUT = 37137; // 0x9111 + field public static final int GL_MAX_TEXTURE_LOD_BIAS = 34045; // 0x84fd + field public static final int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 35978; // 0x8c8a + field public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 35979; // 0x8c8b + field public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 35968; // 0x8c80 + field public static final int GL_MAX_UNIFORM_BLOCK_SIZE = 35376; // 0x8a30 + field public static final int GL_MAX_UNIFORM_BUFFER_BINDINGS = 35375; // 0x8a2f + field public static final int GL_MAX_VARYING_COMPONENTS = 35659; // 0x8b4b + field public static final int GL_MAX_VERTEX_OUTPUT_COMPONENTS = 37154; // 0x9122 + field public static final int GL_MAX_VERTEX_UNIFORM_BLOCKS = 35371; // 0x8a2b + field public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS = 35658; // 0x8b4a + field public static final int GL_MIN = 32775; // 0x8007 + field public static final int GL_MINOR_VERSION = 33308; // 0x821c + field public static final int GL_MIN_PROGRAM_TEXEL_OFFSET = 35076; // 0x8904 + field public static final int GL_NUM_EXTENSIONS = 33309; // 0x821d + field public static final int GL_NUM_PROGRAM_BINARY_FORMATS = 34814; // 0x87fe + field public static final int GL_NUM_SAMPLE_COUNTS = 37760; // 0x9380 + field public static final int GL_OBJECT_TYPE = 37138; // 0x9112 + field public static final int GL_PACK_ROW_LENGTH = 3330; // 0xd02 + field public static final int GL_PACK_SKIP_PIXELS = 3332; // 0xd04 + field public static final int GL_PACK_SKIP_ROWS = 3331; // 0xd03 + field public static final int GL_PIXEL_PACK_BUFFER = 35051; // 0x88eb + field public static final int GL_PIXEL_PACK_BUFFER_BINDING = 35053; // 0x88ed + field public static final int GL_PIXEL_UNPACK_BUFFER = 35052; // 0x88ec + field public static final int GL_PIXEL_UNPACK_BUFFER_BINDING = 35055; // 0x88ef + field public static final int GL_PRIMITIVE_RESTART_FIXED_INDEX = 36201; // 0x8d69 + field public static final int GL_PROGRAM_BINARY_FORMATS = 34815; // 0x87ff + field public static final int GL_PROGRAM_BINARY_LENGTH = 34625; // 0x8741 + field public static final int GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 33367; // 0x8257 + field public static final int GL_QUERY_RESULT = 34918; // 0x8866 + field public static final int GL_QUERY_RESULT_AVAILABLE = 34919; // 0x8867 + field public static final int GL_R11F_G11F_B10F = 35898; // 0x8c3a + field public static final int GL_R16F = 33325; // 0x822d + field public static final int GL_R16I = 33331; // 0x8233 + field public static final int GL_R16UI = 33332; // 0x8234 + field public static final int GL_R32F = 33326; // 0x822e + field public static final int GL_R32I = 33333; // 0x8235 + field public static final int GL_R32UI = 33334; // 0x8236 + field public static final int GL_R8 = 33321; // 0x8229 + field public static final int GL_R8I = 33329; // 0x8231 + field public static final int GL_R8UI = 33330; // 0x8232 + field public static final int GL_R8_SNORM = 36756; // 0x8f94 + field public static final int GL_RASTERIZER_DISCARD = 35977; // 0x8c89 + field public static final int GL_READ_BUFFER = 3074; // 0xc02 + field public static final int GL_READ_FRAMEBUFFER = 36008; // 0x8ca8 + field public static final int GL_READ_FRAMEBUFFER_BINDING = 36010; // 0x8caa + field public static final int GL_RED = 6403; // 0x1903 + field public static final int GL_RED_INTEGER = 36244; // 0x8d94 + field public static final int GL_RENDERBUFFER_SAMPLES = 36011; // 0x8cab + field public static final int GL_RG = 33319; // 0x8227 + field public static final int GL_RG16F = 33327; // 0x822f + field public static final int GL_RG16I = 33337; // 0x8239 + field public static final int GL_RG16UI = 33338; // 0x823a + field public static final int GL_RG32F = 33328; // 0x8230 + field public static final int GL_RG32I = 33339; // 0x823b + field public static final int GL_RG32UI = 33340; // 0x823c + field public static final int GL_RG8 = 33323; // 0x822b + field public static final int GL_RG8I = 33335; // 0x8237 + field public static final int GL_RG8UI = 33336; // 0x8238 + field public static final int GL_RG8_SNORM = 36757; // 0x8f95 + field public static final int GL_RGB10_A2 = 32857; // 0x8059 + field public static final int GL_RGB10_A2UI = 36975; // 0x906f + field public static final int GL_RGB16F = 34843; // 0x881b + field public static final int GL_RGB16I = 36233; // 0x8d89 + field public static final int GL_RGB16UI = 36215; // 0x8d77 + field public static final int GL_RGB32F = 34837; // 0x8815 + field public static final int GL_RGB32I = 36227; // 0x8d83 + field public static final int GL_RGB32UI = 36209; // 0x8d71 + field public static final int GL_RGB8 = 32849; // 0x8051 + field public static final int GL_RGB8I = 36239; // 0x8d8f + field public static final int GL_RGB8UI = 36221; // 0x8d7d + field public static final int GL_RGB8_SNORM = 36758; // 0x8f96 + field public static final int GL_RGB9_E5 = 35901; // 0x8c3d + field public static final int GL_RGBA16F = 34842; // 0x881a + field public static final int GL_RGBA16I = 36232; // 0x8d88 + field public static final int GL_RGBA16UI = 36214; // 0x8d76 + field public static final int GL_RGBA32F = 34836; // 0x8814 + field public static final int GL_RGBA32I = 36226; // 0x8d82 + field public static final int GL_RGBA32UI = 36208; // 0x8d70 + field public static final int GL_RGBA8 = 32856; // 0x8058 + field public static final int GL_RGBA8I = 36238; // 0x8d8e + field public static final int GL_RGBA8UI = 36220; // 0x8d7c + field public static final int GL_RGBA8_SNORM = 36759; // 0x8f97 + field public static final int GL_RGBA_INTEGER = 36249; // 0x8d99 + field public static final int GL_RGB_INTEGER = 36248; // 0x8d98 + field public static final int GL_RG_INTEGER = 33320; // 0x8228 + field public static final int GL_SAMPLER_2D_ARRAY = 36289; // 0x8dc1 + field public static final int GL_SAMPLER_2D_ARRAY_SHADOW = 36292; // 0x8dc4 + field public static final int GL_SAMPLER_2D_SHADOW = 35682; // 0x8b62 + field public static final int GL_SAMPLER_3D = 35679; // 0x8b5f + field public static final int GL_SAMPLER_BINDING = 35097; // 0x8919 + field public static final int GL_SAMPLER_CUBE_SHADOW = 36293; // 0x8dc5 + field public static final int GL_SEPARATE_ATTRIBS = 35981; // 0x8c8d + field public static final int GL_SIGNALED = 37145; // 0x9119 + field public static final int GL_SIGNED_NORMALIZED = 36764; // 0x8f9c + field public static final int GL_SRGB = 35904; // 0x8c40 + field public static final int GL_SRGB8 = 35905; // 0x8c41 + field public static final int GL_SRGB8_ALPHA8 = 35907; // 0x8c43 + field public static final int GL_STATIC_COPY = 35046; // 0x88e6 + field public static final int GL_STATIC_READ = 35045; // 0x88e5 + field public static final int GL_STENCIL = 6146; // 0x1802 + field public static final int GL_STREAM_COPY = 35042; // 0x88e2 + field public static final int GL_STREAM_READ = 35041; // 0x88e1 + field public static final int GL_SYNC_CONDITION = 37139; // 0x9113 + field public static final int GL_SYNC_FENCE = 37142; // 0x9116 + field public static final int GL_SYNC_FLAGS = 37141; // 0x9115 + field public static final int GL_SYNC_FLUSH_COMMANDS_BIT = 1; // 0x1 + field public static final int GL_SYNC_GPU_COMMANDS_COMPLETE = 37143; // 0x9117 + field public static final int GL_SYNC_STATUS = 37140; // 0x9114 + field public static final int GL_TEXTURE_2D_ARRAY = 35866; // 0x8c1a + field public static final int GL_TEXTURE_3D = 32879; // 0x806f + field public static final int GL_TEXTURE_BASE_LEVEL = 33084; // 0x813c + field public static final int GL_TEXTURE_BINDING_2D_ARRAY = 35869; // 0x8c1d + field public static final int GL_TEXTURE_BINDING_3D = 32874; // 0x806a + field public static final int GL_TEXTURE_COMPARE_FUNC = 34893; // 0x884d + field public static final int GL_TEXTURE_COMPARE_MODE = 34892; // 0x884c + field public static final int GL_TEXTURE_IMMUTABLE_FORMAT = 37167; // 0x912f + field public static final int GL_TEXTURE_IMMUTABLE_LEVELS = 33503; // 0x82df + field public static final int GL_TEXTURE_MAX_LEVEL = 33085; // 0x813d + field public static final int GL_TEXTURE_MAX_LOD = 33083; // 0x813b + field public static final int GL_TEXTURE_MIN_LOD = 33082; // 0x813a + field public static final int GL_TEXTURE_SWIZZLE_A = 36421; // 0x8e45 + field public static final int GL_TEXTURE_SWIZZLE_B = 36420; // 0x8e44 + field public static final int GL_TEXTURE_SWIZZLE_G = 36419; // 0x8e43 + field public static final int GL_TEXTURE_SWIZZLE_R = 36418; // 0x8e42 + field public static final int GL_TEXTURE_WRAP_R = 32882; // 0x8072 + field public static final int GL_TIMEOUT_EXPIRED = 37147; // 0x911b + field public static final long GL_TIMEOUT_IGNORED = -1L; // 0xffffffffffffffffL + field public static final int GL_TRANSFORM_FEEDBACK = 36386; // 0x8e22 + field public static final int GL_TRANSFORM_FEEDBACK_ACTIVE = 36388; // 0x8e24 + field public static final int GL_TRANSFORM_FEEDBACK_BINDING = 36389; // 0x8e25 + field public static final int GL_TRANSFORM_FEEDBACK_BUFFER = 35982; // 0x8c8e + field public static final int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = 35983; // 0x8c8f + field public static final int GL_TRANSFORM_FEEDBACK_BUFFER_MODE = 35967; // 0x8c7f + field public static final int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = 35973; // 0x8c85 + field public static final int GL_TRANSFORM_FEEDBACK_BUFFER_START = 35972; // 0x8c84 + field public static final int GL_TRANSFORM_FEEDBACK_PAUSED = 36387; // 0x8e23 + field public static final int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 35976; // 0x8c88 + field public static final int GL_TRANSFORM_FEEDBACK_VARYINGS = 35971; // 0x8c83 + field public static final int GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 35958; // 0x8c76 + field public static final int GL_UNIFORM_ARRAY_STRIDE = 35388; // 0x8a3c + field public static final int GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 35394; // 0x8a42 + field public static final int GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 35395; // 0x8a43 + field public static final int GL_UNIFORM_BLOCK_BINDING = 35391; // 0x8a3f + field public static final int GL_UNIFORM_BLOCK_DATA_SIZE = 35392; // 0x8a40 + field public static final int GL_UNIFORM_BLOCK_INDEX = 35386; // 0x8a3a + field public static final int GL_UNIFORM_BLOCK_NAME_LENGTH = 35393; // 0x8a41 + field public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 35398; // 0x8a46 + field public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 35396; // 0x8a44 + field public static final int GL_UNIFORM_BUFFER = 35345; // 0x8a11 + field public static final int GL_UNIFORM_BUFFER_BINDING = 35368; // 0x8a28 + field public static final int GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 35380; // 0x8a34 + field public static final int GL_UNIFORM_BUFFER_SIZE = 35370; // 0x8a2a + field public static final int GL_UNIFORM_BUFFER_START = 35369; // 0x8a29 + field public static final int GL_UNIFORM_IS_ROW_MAJOR = 35390; // 0x8a3e + field public static final int GL_UNIFORM_MATRIX_STRIDE = 35389; // 0x8a3d + field public static final int GL_UNIFORM_NAME_LENGTH = 35385; // 0x8a39 + field public static final int GL_UNIFORM_OFFSET = 35387; // 0x8a3b + field public static final int GL_UNIFORM_SIZE = 35384; // 0x8a38 + field public static final int GL_UNIFORM_TYPE = 35383; // 0x8a37 + field public static final int GL_UNPACK_IMAGE_HEIGHT = 32878; // 0x806e + field public static final int GL_UNPACK_ROW_LENGTH = 3314; // 0xcf2 + field public static final int GL_UNPACK_SKIP_IMAGES = 32877; // 0x806d + field public static final int GL_UNPACK_SKIP_PIXELS = 3316; // 0xcf4 + field public static final int GL_UNPACK_SKIP_ROWS = 3315; // 0xcf3 + field public static final int GL_UNSIGNALED = 37144; // 0x9118 + field public static final int GL_UNSIGNED_INT_10F_11F_11F_REV = 35899; // 0x8c3b + field public static final int GL_UNSIGNED_INT_24_8 = 34042; // 0x84fa + field public static final int GL_UNSIGNED_INT_2_10_10_10_REV = 33640; // 0x8368 + field public static final int GL_UNSIGNED_INT_5_9_9_9_REV = 35902; // 0x8c3e + field public static final int GL_UNSIGNED_INT_SAMPLER_2D = 36306; // 0x8dd2 + field public static final int GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = 36311; // 0x8dd7 + field public static final int GL_UNSIGNED_INT_SAMPLER_3D = 36307; // 0x8dd3 + field public static final int GL_UNSIGNED_INT_SAMPLER_CUBE = 36308; // 0x8dd4 + field public static final int GL_UNSIGNED_INT_VEC2 = 36294; // 0x8dc6 + field public static final int GL_UNSIGNED_INT_VEC3 = 36295; // 0x8dc7 + field public static final int GL_UNSIGNED_INT_VEC4 = 36296; // 0x8dc8 + field public static final int GL_UNSIGNED_NORMALIZED = 35863; // 0x8c17 + field public static final int GL_VERTEX_ARRAY_BINDING = 34229; // 0x85b5 + field public static final int GL_VERTEX_ATTRIB_ARRAY_DIVISOR = 35070; // 0x88fe + field public static final int GL_VERTEX_ATTRIB_ARRAY_INTEGER = 35069; // 0x88fd + field public static final int GL_WAIT_FAILED = 37149; // 0x911d + } + + public class GLES31 extends android.opengl.GLES30 { + method public static void glActiveShaderProgram(int, int); + method public static void glBindImageTexture(int, int, int, boolean, int, int, int); + method public static void glBindProgramPipeline(int); + method public static void glBindVertexBuffer(int, int, long, int); + method public static int glCreateShaderProgramv(int, String[]); + method public static void glDeleteProgramPipelines(int, int[], int); + method public static void glDeleteProgramPipelines(int, java.nio.IntBuffer); + method public static void glDispatchCompute(int, int, int); + method public static void glDispatchComputeIndirect(long); + method public static void glDrawArraysIndirect(int, long); + method public static void glDrawElementsIndirect(int, int, long); + method public static void glFramebufferParameteri(int, int, int); + method public static void glGenProgramPipelines(int, int[], int); + method public static void glGenProgramPipelines(int, java.nio.IntBuffer); + method public static void glGetBooleani_v(int, int, boolean[], int); + method public static void glGetBooleani_v(int, int, java.nio.IntBuffer); + method public static void glGetFramebufferParameteriv(int, int, int[], int); + method public static void glGetFramebufferParameteriv(int, int, java.nio.IntBuffer); + method public static void glGetMultisamplefv(int, int, float[], int); + method public static void glGetMultisamplefv(int, int, java.nio.FloatBuffer); + method public static void glGetProgramInterfaceiv(int, int, int, int[], int); + method public static void glGetProgramInterfaceiv(int, int, int, java.nio.IntBuffer); + method public static String glGetProgramPipelineInfoLog(int); + method public static void glGetProgramPipelineiv(int, int, int[], int); + method public static void glGetProgramPipelineiv(int, int, java.nio.IntBuffer); + method public static int glGetProgramResourceIndex(int, int, String); + method public static int glGetProgramResourceLocation(int, int, String); + method public static String glGetProgramResourceName(int, int, int); + method public static void glGetProgramResourceiv(int, int, int, int, int[], int, int, int[], int, int[], int); + method public static void glGetProgramResourceiv(int, int, int, int, java.nio.IntBuffer, int, java.nio.IntBuffer, java.nio.IntBuffer); + method public static void glGetTexLevelParameterfv(int, int, int, float[], int); + method public static void glGetTexLevelParameterfv(int, int, int, java.nio.FloatBuffer); + method public static void glGetTexLevelParameteriv(int, int, int, int[], int); + method public static void glGetTexLevelParameteriv(int, int, int, java.nio.IntBuffer); + method public static boolean glIsProgramPipeline(int); + method public static void glMemoryBarrier(int); + method public static void glMemoryBarrierByRegion(int); + method public static void glProgramUniform1f(int, int, float); + method public static void glProgramUniform1fv(int, int, int, float[], int); + method public static void glProgramUniform1fv(int, int, int, java.nio.FloatBuffer); + method public static void glProgramUniform1i(int, int, int); + method public static void glProgramUniform1iv(int, int, int, int[], int); + method public static void glProgramUniform1iv(int, int, int, java.nio.IntBuffer); + method public static void glProgramUniform1ui(int, int, int); + method public static void glProgramUniform1uiv(int, int, int, int[], int); + method public static void glProgramUniform1uiv(int, int, int, java.nio.IntBuffer); + method public static void glProgramUniform2f(int, int, float, float); + method public static void glProgramUniform2fv(int, int, int, float[], int); + method public static void glProgramUniform2fv(int, int, int, java.nio.FloatBuffer); + method public static void glProgramUniform2i(int, int, int, int); + method public static void glProgramUniform2iv(int, int, int, int[], int); + method public static void glProgramUniform2iv(int, int, int, java.nio.IntBuffer); + method public static void glProgramUniform2ui(int, int, int, int); + method public static void glProgramUniform2uiv(int, int, int, int[], int); + method public static void glProgramUniform2uiv(int, int, int, java.nio.IntBuffer); + method public static void glProgramUniform3f(int, int, float, float, float); + method public static void glProgramUniform3fv(int, int, int, float[], int); + method public static void glProgramUniform3fv(int, int, int, java.nio.FloatBuffer); + method public static void glProgramUniform3i(int, int, int, int, int); + method public static void glProgramUniform3iv(int, int, int, int[], int); + method public static void glProgramUniform3iv(int, int, int, java.nio.IntBuffer); + method public static void glProgramUniform3ui(int, int, int, int, int); + method public static void glProgramUniform3uiv(int, int, int, int[], int); + method public static void glProgramUniform3uiv(int, int, int, java.nio.IntBuffer); + method public static void glProgramUniform4f(int, int, float, float, float, float); + method public static void glProgramUniform4fv(int, int, int, float[], int); + method public static void glProgramUniform4fv(int, int, int, java.nio.FloatBuffer); + method public static void glProgramUniform4i(int, int, int, int, int, int); + method public static void glProgramUniform4iv(int, int, int, int[], int); + method public static void glProgramUniform4iv(int, int, int, java.nio.IntBuffer); + method public static void glProgramUniform4ui(int, int, int, int, int, int); + method public static void glProgramUniform4uiv(int, int, int, int[], int); + method public static void glProgramUniform4uiv(int, int, int, java.nio.IntBuffer); + method public static void glProgramUniformMatrix2fv(int, int, int, boolean, float[], int); + method public static void glProgramUniformMatrix2fv(int, int, int, boolean, java.nio.FloatBuffer); + method public static void glProgramUniformMatrix2x3fv(int, int, int, boolean, float[], int); + method public static void glProgramUniformMatrix2x3fv(int, int, int, boolean, java.nio.FloatBuffer); + method public static void glProgramUniformMatrix2x4fv(int, int, int, boolean, float[], int); + method public static void glProgramUniformMatrix2x4fv(int, int, int, boolean, java.nio.FloatBuffer); + method public static void glProgramUniformMatrix3fv(int, int, int, boolean, float[], int); + method public static void glProgramUniformMatrix3fv(int, int, int, boolean, java.nio.FloatBuffer); + method public static void glProgramUniformMatrix3x2fv(int, int, int, boolean, float[], int); + method public static void glProgramUniformMatrix3x2fv(int, int, int, boolean, java.nio.FloatBuffer); + method public static void glProgramUniformMatrix3x4fv(int, int, int, boolean, float[], int); + method public static void glProgramUniformMatrix3x4fv(int, int, int, boolean, java.nio.FloatBuffer); + method public static void glProgramUniformMatrix4fv(int, int, int, boolean, float[], int); + method public static void glProgramUniformMatrix4fv(int, int, int, boolean, java.nio.FloatBuffer); + method public static void glProgramUniformMatrix4x2fv(int, int, int, boolean, float[], int); + method public static void glProgramUniformMatrix4x2fv(int, int, int, boolean, java.nio.FloatBuffer); + method public static void glProgramUniformMatrix4x3fv(int, int, int, boolean, float[], int); + method public static void glProgramUniformMatrix4x3fv(int, int, int, boolean, java.nio.FloatBuffer); + method public static void glSampleMaski(int, int); + method public static void glTexStorage2DMultisample(int, int, int, int, int, boolean); + method public static void glUseProgramStages(int, int, int); + method public static void glValidateProgramPipeline(int); + method public static void glVertexAttribBinding(int, int); + method public static void glVertexAttribFormat(int, int, int, boolean, int); + method public static void glVertexAttribIFormat(int, int, int, int); + method public static void glVertexBindingDivisor(int, int); + field public static final int GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = 37593; // 0x92d9 + field public static final int GL_ACTIVE_PROGRAM = 33369; // 0x8259 + field public static final int GL_ACTIVE_RESOURCES = 37621; // 0x92f5 + field public static final int GL_ACTIVE_VARIABLES = 37637; // 0x9305 + field public static final int GL_ALL_BARRIER_BITS = -1; // 0xffffffff + field public static final int GL_ALL_SHADER_BITS = -1; // 0xffffffff + field public static final int GL_ARRAY_SIZE = 37627; // 0x92fb + field public static final int GL_ARRAY_STRIDE = 37630; // 0x92fe + field public static final int GL_ATOMIC_COUNTER_BARRIER_BIT = 4096; // 0x1000 + field public static final int GL_ATOMIC_COUNTER_BUFFER = 37568; // 0x92c0 + field public static final int GL_ATOMIC_COUNTER_BUFFER_BINDING = 37569; // 0x92c1 + field public static final int GL_ATOMIC_COUNTER_BUFFER_INDEX = 37633; // 0x9301 + field public static final int GL_ATOMIC_COUNTER_BUFFER_SIZE = 37571; // 0x92c3 + field public static final int GL_ATOMIC_COUNTER_BUFFER_START = 37570; // 0x92c2 + field public static final int GL_BLOCK_INDEX = 37629; // 0x92fd + field public static final int GL_BUFFER_BINDING = 37634; // 0x9302 + field public static final int GL_BUFFER_DATA_SIZE = 37635; // 0x9303 + field public static final int GL_BUFFER_UPDATE_BARRIER_BIT = 512; // 0x200 + field public static final int GL_BUFFER_VARIABLE = 37605; // 0x92e5 + field public static final int GL_COMMAND_BARRIER_BIT = 64; // 0x40 + field public static final int GL_COMPUTE_SHADER = 37305; // 0x91b9 + field public static final int GL_COMPUTE_SHADER_BIT = 32; // 0x20 + field public static final int GL_COMPUTE_WORK_GROUP_SIZE = 33383; // 0x8267 + field public static final int GL_DEPTH_STENCIL_TEXTURE_MODE = 37098; // 0x90ea + field public static final int GL_DISPATCH_INDIRECT_BUFFER = 37102; // 0x90ee + field public static final int GL_DISPATCH_INDIRECT_BUFFER_BINDING = 37103; // 0x90ef + field public static final int GL_DRAW_INDIRECT_BUFFER = 36671; // 0x8f3f + field public static final int GL_DRAW_INDIRECT_BUFFER_BINDING = 36675; // 0x8f43 + field public static final int GL_ELEMENT_ARRAY_BARRIER_BIT = 2; // 0x2 + field public static final int GL_FRAGMENT_SHADER_BIT = 2; // 0x2 + field public static final int GL_FRAMEBUFFER_BARRIER_BIT = 1024; // 0x400 + field public static final int GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = 37652; // 0x9314 + field public static final int GL_FRAMEBUFFER_DEFAULT_HEIGHT = 37649; // 0x9311 + field public static final int GL_FRAMEBUFFER_DEFAULT_SAMPLES = 37651; // 0x9313 + field public static final int GL_FRAMEBUFFER_DEFAULT_WIDTH = 37648; // 0x9310 + field public static final int GL_IMAGE_2D = 36941; // 0x904d + field public static final int GL_IMAGE_2D_ARRAY = 36947; // 0x9053 + field public static final int GL_IMAGE_3D = 36942; // 0x904e + field public static final int GL_IMAGE_BINDING_ACCESS = 36670; // 0x8f3e + field public static final int GL_IMAGE_BINDING_FORMAT = 36974; // 0x906e + field public static final int GL_IMAGE_BINDING_LAYER = 36669; // 0x8f3d + field public static final int GL_IMAGE_BINDING_LAYERED = 36668; // 0x8f3c + field public static final int GL_IMAGE_BINDING_LEVEL = 36667; // 0x8f3b + field public static final int GL_IMAGE_BINDING_NAME = 36666; // 0x8f3a + field public static final int GL_IMAGE_CUBE = 36944; // 0x9050 + field public static final int GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = 37065; // 0x90c9 + field public static final int GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = 37064; // 0x90c8 + field public static final int GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = 37063; // 0x90c7 + field public static final int GL_INT_IMAGE_2D = 36952; // 0x9058 + field public static final int GL_INT_IMAGE_2D_ARRAY = 36958; // 0x905e + field public static final int GL_INT_IMAGE_3D = 36953; // 0x9059 + field public static final int GL_INT_IMAGE_CUBE = 36955; // 0x905b + field public static final int GL_INT_SAMPLER_2D_MULTISAMPLE = 37129; // 0x9109 + field public static final int GL_IS_ROW_MAJOR = 37632; // 0x9300 + field public static final int GL_LOCATION = 37646; // 0x930e + field public static final int GL_MATRIX_STRIDE = 37631; // 0x92ff + field public static final int GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 37596; // 0x92dc + field public static final int GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = 37592; // 0x92d8 + field public static final int GL_MAX_COLOR_TEXTURE_SAMPLES = 37134; // 0x910e + field public static final int GL_MAX_COMBINED_ATOMIC_COUNTERS = 37591; // 0x92d7 + field public static final int GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = 37585; // 0x92d1 + field public static final int GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = 33382; // 0x8266 + field public static final int GL_MAX_COMBINED_IMAGE_UNIFORMS = 37071; // 0x90cf + field public static final int GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = 36665; // 0x8f39 + field public static final int GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = 37084; // 0x90dc + field public static final int GL_MAX_COMPUTE_ATOMIC_COUNTERS = 33381; // 0x8265 + field public static final int GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = 33380; // 0x8264 + field public static final int GL_MAX_COMPUTE_IMAGE_UNIFORMS = 37309; // 0x91bd + field public static final int GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = 37083; // 0x90db + field public static final int GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = 33378; // 0x8262 + field public static final int GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = 37308; // 0x91bc + field public static final int GL_MAX_COMPUTE_UNIFORM_BLOCKS = 37307; // 0x91bb + field public static final int GL_MAX_COMPUTE_UNIFORM_COMPONENTS = 33379; // 0x8263 + field public static final int GL_MAX_COMPUTE_WORK_GROUP_COUNT = 37310; // 0x91be + field public static final int GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = 37099; // 0x90eb + field public static final int GL_MAX_COMPUTE_WORK_GROUP_SIZE = 37311; // 0x91bf + field public static final int GL_MAX_DEPTH_TEXTURE_SAMPLES = 37135; // 0x910f + field public static final int GL_MAX_FRAGMENT_ATOMIC_COUNTERS = 37590; // 0x92d6 + field public static final int GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = 37584; // 0x92d0 + field public static final int GL_MAX_FRAGMENT_IMAGE_UNIFORMS = 37070; // 0x90ce + field public static final int GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = 37082; // 0x90da + field public static final int GL_MAX_FRAMEBUFFER_HEIGHT = 37654; // 0x9316 + field public static final int GL_MAX_FRAMEBUFFER_SAMPLES = 37656; // 0x9318 + field public static final int GL_MAX_FRAMEBUFFER_WIDTH = 37653; // 0x9315 + field public static final int GL_MAX_IMAGE_UNITS = 36664; // 0x8f38 + field public static final int GL_MAX_INTEGER_SAMPLES = 37136; // 0x9110 + field public static final int GL_MAX_NAME_LENGTH = 37622; // 0x92f6 + field public static final int GL_MAX_NUM_ACTIVE_VARIABLES = 37623; // 0x92f7 + field public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 36447; // 0x8e5f + field public static final int GL_MAX_SAMPLE_MASK_WORDS = 36441; // 0x8e59 + field public static final int GL_MAX_SHADER_STORAGE_BLOCK_SIZE = 37086; // 0x90de + field public static final int GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = 37085; // 0x90dd + field public static final int GL_MAX_UNIFORM_LOCATIONS = 33390; // 0x826e + field public static final int GL_MAX_VERTEX_ATOMIC_COUNTERS = 37586; // 0x92d2 + field public static final int GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = 37580; // 0x92cc + field public static final int GL_MAX_VERTEX_ATTRIB_BINDINGS = 33498; // 0x82da + field public static final int GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = 33497; // 0x82d9 + field public static final int GL_MAX_VERTEX_ATTRIB_STRIDE = 33509; // 0x82e5 + field public static final int GL_MAX_VERTEX_IMAGE_UNIFORMS = 37066; // 0x90ca + field public static final int GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = 37078; // 0x90d6 + field public static final int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 36446; // 0x8e5e + field public static final int GL_NAME_LENGTH = 37625; // 0x92f9 + field public static final int GL_NUM_ACTIVE_VARIABLES = 37636; // 0x9304 + field public static final int GL_OFFSET = 37628; // 0x92fc + field public static final int GL_PIXEL_BUFFER_BARRIER_BIT = 128; // 0x80 + field public static final int GL_PROGRAM_INPUT = 37603; // 0x92e3 + field public static final int GL_PROGRAM_OUTPUT = 37604; // 0x92e4 + field public static final int GL_PROGRAM_PIPELINE_BINDING = 33370; // 0x825a + field public static final int GL_PROGRAM_SEPARABLE = 33368; // 0x8258 + field public static final int GL_READ_ONLY = 35000; // 0x88b8 + field public static final int GL_READ_WRITE = 35002; // 0x88ba + field public static final int GL_REFERENCED_BY_COMPUTE_SHADER = 37643; // 0x930b + field public static final int GL_REFERENCED_BY_FRAGMENT_SHADER = 37642; // 0x930a + field public static final int GL_REFERENCED_BY_VERTEX_SHADER = 37638; // 0x9306 + field public static final int GL_SAMPLER_2D_MULTISAMPLE = 37128; // 0x9108 + field public static final int GL_SAMPLE_MASK = 36433; // 0x8e51 + field public static final int GL_SAMPLE_MASK_VALUE = 36434; // 0x8e52 + field public static final int GL_SAMPLE_POSITION = 36432; // 0x8e50 + field public static final int GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = 32; // 0x20 + field public static final int GL_SHADER_STORAGE_BARRIER_BIT = 8192; // 0x2000 + field public static final int GL_SHADER_STORAGE_BLOCK = 37606; // 0x92e6 + field public static final int GL_SHADER_STORAGE_BUFFER = 37074; // 0x90d2 + field public static final int GL_SHADER_STORAGE_BUFFER_BINDING = 37075; // 0x90d3 + field public static final int GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = 37087; // 0x90df + field public static final int GL_SHADER_STORAGE_BUFFER_SIZE = 37077; // 0x90d5 + field public static final int GL_SHADER_STORAGE_BUFFER_START = 37076; // 0x90d4 + field public static final int GL_STENCIL_INDEX = 6401; // 0x1901 + field public static final int GL_TEXTURE_2D_MULTISAMPLE = 37120; // 0x9100 + field public static final int GL_TEXTURE_ALPHA_SIZE = 32863; // 0x805f + field public static final int GL_TEXTURE_ALPHA_TYPE = 35859; // 0x8c13 + field public static final int GL_TEXTURE_BINDING_2D_MULTISAMPLE = 37124; // 0x9104 + field public static final int GL_TEXTURE_BLUE_SIZE = 32862; // 0x805e + field public static final int GL_TEXTURE_BLUE_TYPE = 35858; // 0x8c12 + field public static final int GL_TEXTURE_COMPRESSED = 34465; // 0x86a1 + field public static final int GL_TEXTURE_DEPTH = 32881; // 0x8071 + field public static final int GL_TEXTURE_DEPTH_SIZE = 34890; // 0x884a + field public static final int GL_TEXTURE_DEPTH_TYPE = 35862; // 0x8c16 + field public static final int GL_TEXTURE_FETCH_BARRIER_BIT = 8; // 0x8 + field public static final int GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 37127; // 0x9107 + field public static final int GL_TEXTURE_GREEN_SIZE = 32861; // 0x805d + field public static final int GL_TEXTURE_GREEN_TYPE = 35857; // 0x8c11 + field public static final int GL_TEXTURE_HEIGHT = 4097; // 0x1001 + field public static final int GL_TEXTURE_INTERNAL_FORMAT = 4099; // 0x1003 + field public static final int GL_TEXTURE_RED_SIZE = 32860; // 0x805c + field public static final int GL_TEXTURE_RED_TYPE = 35856; // 0x8c10 + field public static final int GL_TEXTURE_SAMPLES = 37126; // 0x9106 + field public static final int GL_TEXTURE_SHARED_SIZE = 35903; // 0x8c3f + field public static final int GL_TEXTURE_STENCIL_SIZE = 35057; // 0x88f1 + field public static final int GL_TEXTURE_UPDATE_BARRIER_BIT = 256; // 0x100 + field public static final int GL_TEXTURE_WIDTH = 4096; // 0x1000 + field public static final int GL_TOP_LEVEL_ARRAY_SIZE = 37644; // 0x930c + field public static final int GL_TOP_LEVEL_ARRAY_STRIDE = 37645; // 0x930d + field public static final int GL_TRANSFORM_FEEDBACK_BARRIER_BIT = 2048; // 0x800 + field public static final int GL_TRANSFORM_FEEDBACK_VARYING = 37620; // 0x92f4 + field public static final int GL_TYPE = 37626; // 0x92fa + field public static final int GL_UNIFORM = 37601; // 0x92e1 + field public static final int GL_UNIFORM_BARRIER_BIT = 4; // 0x4 + field public static final int GL_UNIFORM_BLOCK = 37602; // 0x92e2 + field public static final int GL_UNSIGNED_INT_ATOMIC_COUNTER = 37595; // 0x92db + field public static final int GL_UNSIGNED_INT_IMAGE_2D = 36963; // 0x9063 + field public static final int GL_UNSIGNED_INT_IMAGE_2D_ARRAY = 36969; // 0x9069 + field public static final int GL_UNSIGNED_INT_IMAGE_3D = 36964; // 0x9064 + field public static final int GL_UNSIGNED_INT_IMAGE_CUBE = 36966; // 0x9066 + field public static final int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 37130; // 0x910a + field public static final int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = 1; // 0x1 + field public static final int GL_VERTEX_ATTRIB_BINDING = 33492; // 0x82d4 + field public static final int GL_VERTEX_ATTRIB_RELATIVE_OFFSET = 33493; // 0x82d5 + field public static final int GL_VERTEX_BINDING_BUFFER = 36687; // 0x8f4f + field public static final int GL_VERTEX_BINDING_DIVISOR = 33494; // 0x82d6 + field public static final int GL_VERTEX_BINDING_OFFSET = 33495; // 0x82d7 + field public static final int GL_VERTEX_BINDING_STRIDE = 33496; // 0x82d8 + field public static final int GL_VERTEX_SHADER_BIT = 1; // 0x1 + field public static final int GL_WRITE_ONLY = 35001; // 0x88b9 + } + + public class GLES31Ext { + method public static void glBlendBarrierKHR(); + method public static void glBlendEquationSeparateiEXT(int, int, int); + method public static void glBlendEquationiEXT(int, int); + method public static void glBlendFuncSeparateiEXT(int, int, int, int, int); + method public static void glBlendFunciEXT(int, int, int); + method public static void glColorMaskiEXT(int, boolean, boolean, boolean, boolean); + method public static void glCopyImageSubDataEXT(int, int, int, int, int, int, int, int, int, int, int, int, int, int, int); + method public static void glDebugMessageCallbackKHR(android.opengl.GLES31Ext.DebugProcKHR); + method public static void glDebugMessageControlKHR(int, int, int, int, int[], int, boolean); + method public static void glDebugMessageControlKHR(int, int, int, int, java.nio.IntBuffer, boolean); + method public static void glDebugMessageInsertKHR(int, int, int, int, String); + method public static void glDisableiEXT(int, int); + method public static void glEnableiEXT(int, int); + method public static void glFramebufferTextureEXT(int, int, int, int); + method public static android.opengl.GLES31Ext.DebugProcKHR glGetDebugMessageCallbackKHR(); + method public static int glGetDebugMessageLogKHR(int, int, int[], int, int[], int, int[], int, int[], int, int[], int, byte[], int); + method public static int glGetDebugMessageLogKHR(int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.ByteBuffer); + method public static String[] glGetDebugMessageLogKHR(int, int[], int, int[], int, int[], int, int[], int); + method public static String[] glGetDebugMessageLogKHR(int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer); + method public static String glGetObjectLabelKHR(int, int); + method public static String glGetObjectPtrLabelKHR(long); + method public static void glGetSamplerParameterIivEXT(int, int, int[], int); + method public static void glGetSamplerParameterIivEXT(int, int, java.nio.IntBuffer); + method public static void glGetSamplerParameterIuivEXT(int, int, int[], int); + method public static void glGetSamplerParameterIuivEXT(int, int, java.nio.IntBuffer); + method public static void glGetTexParameterIivEXT(int, int, int[], int); + method public static void glGetTexParameterIivEXT(int, int, java.nio.IntBuffer); + method public static void glGetTexParameterIuivEXT(int, int, int[], int); + method public static void glGetTexParameterIuivEXT(int, int, java.nio.IntBuffer); + method public static boolean glIsEnablediEXT(int, int); + method public static void glMinSampleShadingOES(float); + method public static void glObjectLabelKHR(int, int, int, String); + method public static void glObjectPtrLabelKHR(long, String); + method public static void glPatchParameteriEXT(int, int); + method public static void glPopDebugGroupKHR(); + method public static void glPrimitiveBoundingBoxEXT(float, float, float, float, float, float, float, float); + method public static void glPushDebugGroupKHR(int, int, int, String); + method public static void glSamplerParameterIivEXT(int, int, int[], int); + method public static void glSamplerParameterIivEXT(int, int, java.nio.IntBuffer); + method public static void glSamplerParameterIuivEXT(int, int, int[], int); + method public static void glSamplerParameterIuivEXT(int, int, java.nio.IntBuffer); + method public static void glTexBufferEXT(int, int, int); + method public static void glTexBufferRangeEXT(int, int, int, int, int); + method public static void glTexParameterIivEXT(int, int, int[], int); + method public static void glTexParameterIivEXT(int, int, java.nio.IntBuffer); + method public static void glTexParameterIuivEXT(int, int, int[], int); + method public static void glTexParameterIuivEXT(int, int, java.nio.IntBuffer); + method public static void glTexStorage3DMultisampleOES(int, int, int, int, int, int, boolean); + field public static final int GL_BLEND_ADVANCED_COHERENT_KHR = 37509; // 0x9285 + field public static final int GL_BUFFER_KHR = 33504; // 0x82e0 + field public static final int GL_CLAMP_TO_BORDER_EXT = 33069; // 0x812d + field public static final int GL_COLORBURN_KHR = 37530; // 0x929a + field public static final int GL_COLORDODGE_KHR = 37529; // 0x9299 + field public static final int GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 37819; // 0x93bb + field public static final int GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 37816; // 0x93b8 + field public static final int GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 37817; // 0x93b9 + field public static final int GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 37818; // 0x93ba + field public static final int GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 37820; // 0x93bc + field public static final int GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 37821; // 0x93bd + field public static final int GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 37808; // 0x93b0 + field public static final int GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 37809; // 0x93b1 + field public static final int GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 37810; // 0x93b2 + field public static final int GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 37811; // 0x93b3 + field public static final int GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 37812; // 0x93b4 + field public static final int GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 37813; // 0x93b5 + field public static final int GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 37814; // 0x93b6 + field public static final int GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 37815; // 0x93b7 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 37851; // 0x93db + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 37848; // 0x93d8 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 37849; // 0x93d9 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 37850; // 0x93da + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 37852; // 0x93dc + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 37853; // 0x93dd + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 37840; // 0x93d0 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 37841; // 0x93d1 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 37842; // 0x93d2 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 37843; // 0x93d3 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 37844; // 0x93d4 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 37845; // 0x93d5 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 37846; // 0x93d6 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 37847; // 0x93d7 + field public static final int GL_CONTEXT_FLAG_DEBUG_BIT_KHR = 2; // 0x2 + field public static final int GL_DARKEN_KHR = 37527; // 0x9297 + field public static final int GL_DEBUG_CALLBACK_FUNCTION_KHR = 33348; // 0x8244 + field public static final int GL_DEBUG_CALLBACK_USER_PARAM_KHR = 33349; // 0x8245 + field public static final int GL_DEBUG_GROUP_STACK_DEPTH_KHR = 33389; // 0x826d + field public static final int GL_DEBUG_LOGGED_MESSAGES_KHR = 37189; // 0x9145 + field public static final int GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_KHR = 33347; // 0x8243 + field public static final int GL_DEBUG_OUTPUT_KHR = 37600; // 0x92e0 + field public static final int GL_DEBUG_OUTPUT_SYNCHRONOUS_KHR = 33346; // 0x8242 + field public static final int GL_DEBUG_SEVERITY_HIGH_KHR = 37190; // 0x9146 + field public static final int GL_DEBUG_SEVERITY_LOW_KHR = 37192; // 0x9148 + field public static final int GL_DEBUG_SEVERITY_MEDIUM_KHR = 37191; // 0x9147 + field public static final int GL_DEBUG_SEVERITY_NOTIFICATION_KHR = 33387; // 0x826b + field public static final int GL_DEBUG_SOURCE_API_KHR = 33350; // 0x8246 + field public static final int GL_DEBUG_SOURCE_APPLICATION_KHR = 33354; // 0x824a + field public static final int GL_DEBUG_SOURCE_OTHER_KHR = 33355; // 0x824b + field public static final int GL_DEBUG_SOURCE_SHADER_COMPILER_KHR = 33352; // 0x8248 + field public static final int GL_DEBUG_SOURCE_THIRD_PARTY_KHR = 33353; // 0x8249 + field public static final int GL_DEBUG_SOURCE_WINDOW_SYSTEM_KHR = 33351; // 0x8247 + field public static final int GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_KHR = 33357; // 0x824d + field public static final int GL_DEBUG_TYPE_ERROR_KHR = 33356; // 0x824c + field public static final int GL_DEBUG_TYPE_MARKER_KHR = 33384; // 0x8268 + field public static final int GL_DEBUG_TYPE_OTHER_KHR = 33361; // 0x8251 + field public static final int GL_DEBUG_TYPE_PERFORMANCE_KHR = 33360; // 0x8250 + field public static final int GL_DEBUG_TYPE_POP_GROUP_KHR = 33386; // 0x826a + field public static final int GL_DEBUG_TYPE_PORTABILITY_KHR = 33359; // 0x824f + field public static final int GL_DEBUG_TYPE_PUSH_GROUP_KHR = 33385; // 0x8269 + field public static final int GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_KHR = 33358; // 0x824e + field public static final int GL_DECODE_EXT = 35401; // 0x8a49 + field public static final int GL_DIFFERENCE_KHR = 37534; // 0x929e + field public static final int GL_EXCLUSION_KHR = 37536; // 0x92a0 + field public static final int GL_FIRST_VERTEX_CONVENTION_EXT = 36429; // 0x8e4d + field public static final int GL_FRACTIONAL_EVEN_EXT = 36476; // 0x8e7c + field public static final int GL_FRACTIONAL_ODD_EXT = 36475; // 0x8e7b + field public static final int GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES = 36445; // 0x8e5d + field public static final int GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = 36263; // 0x8da7 + field public static final int GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT = 37650; // 0x9312 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = 36264; // 0x8da8 + field public static final int GL_GEOMETRY_LINKED_INPUT_TYPE_EXT = 35095; // 0x8917 + field public static final int GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT = 35096; // 0x8918 + field public static final int GL_GEOMETRY_LINKED_VERTICES_OUT_EXT = 35094; // 0x8916 + field public static final int GL_GEOMETRY_SHADER_BIT_EXT = 4; // 0x4 + field public static final int GL_GEOMETRY_SHADER_EXT = 36313; // 0x8dd9 + field public static final int GL_GEOMETRY_SHADER_INVOCATIONS_EXT = 34943; // 0x887f + field public static final int GL_HARDLIGHT_KHR = 37531; // 0x929b + field public static final int GL_HSL_COLOR_KHR = 37551; // 0x92af + field public static final int GL_HSL_HUE_KHR = 37549; // 0x92ad + field public static final int GL_HSL_LUMINOSITY_KHR = 37552; // 0x92b0 + field public static final int GL_HSL_SATURATION_KHR = 37550; // 0x92ae + field public static final int GL_IMAGE_BUFFER_EXT = 36945; // 0x9051 + field public static final int GL_IMAGE_CUBE_MAP_ARRAY_EXT = 36948; // 0x9054 + field public static final int GL_INT_IMAGE_BUFFER_EXT = 36956; // 0x905c + field public static final int GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 36959; // 0x905f + field public static final int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 37132; // 0x910c + field public static final int GL_INT_SAMPLER_BUFFER_EXT = 36304; // 0x8dd0 + field public static final int GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT = 36878; // 0x900e + field public static final int GL_ISOLINES_EXT = 36474; // 0x8e7a + field public static final int GL_IS_PER_PATCH_EXT = 37607; // 0x92e7 + field public static final int GL_LAST_VERTEX_CONVENTION_EXT = 36430; // 0x8e4e + field public static final int GL_LAYER_PROVOKING_VERTEX_EXT = 33374; // 0x825e + field public static final int GL_LIGHTEN_KHR = 37528; // 0x9298 + field public static final int GL_LINES_ADJACENCY_EXT = 10; // 0xa + field public static final int GL_LINE_STRIP_ADJACENCY_EXT = 11; // 0xb + field public static final int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT = 35378; // 0x8a32 + field public static final int GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT = 36382; // 0x8e1e + field public static final int GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT = 36383; // 0x8e1f + field public static final int GL_MAX_DEBUG_GROUP_STACK_DEPTH_KHR = 33388; // 0x826c + field public static final int GL_MAX_DEBUG_LOGGED_MESSAGES_KHR = 37188; // 0x9144 + field public static final int GL_MAX_DEBUG_MESSAGE_LENGTH_KHR = 37187; // 0x9143 + field public static final int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES = 36444; // 0x8e5c + field public static final int GL_MAX_FRAMEBUFFER_LAYERS_EXT = 37655; // 0x9317 + field public static final int GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT = 37589; // 0x92d5 + field public static final int GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT = 37583; // 0x92cf + field public static final int GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT = 37069; // 0x90cd + field public static final int GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT = 37155; // 0x9123 + field public static final int GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT = 37156; // 0x9124 + field public static final int GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT = 36320; // 0x8de0 + field public static final int GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT = 36442; // 0x8e5a + field public static final int GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT = 37079; // 0x90d7 + field public static final int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = 35881; // 0x8c29 + field public static final int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = 36321; // 0x8de1 + field public static final int GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT = 35372; // 0x8a2c + field public static final int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = 36319; // 0x8ddf + field public static final int GL_MAX_LABEL_LENGTH_KHR = 33512; // 0x82e8 + field public static final int GL_MAX_PATCH_VERTICES_EXT = 36477; // 0x8e7d + field public static final int GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT = 37587; // 0x92d3 + field public static final int GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT = 37581; // 0x92cd + field public static final int GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT = 37067; // 0x90cb + field public static final int GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT = 34924; // 0x886c + field public static final int GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT = 36483; // 0x8e83 + field public static final int GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT = 37080; // 0x90d8 + field public static final int GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT = 36481; // 0x8e81 + field public static final int GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT = 36485; // 0x8e85 + field public static final int GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT = 36489; // 0x8e89 + field public static final int GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT = 36479; // 0x8e7f + field public static final int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT = 37588; // 0x92d4 + field public static final int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT = 37582; // 0x92ce + field public static final int GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT = 37068; // 0x90cc + field public static final int GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT = 34925; // 0x886d + field public static final int GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT = 36486; // 0x8e86 + field public static final int GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT = 37081; // 0x90d9 + field public static final int GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT = 36482; // 0x8e82 + field public static final int GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT = 36490; // 0x8e8a + field public static final int GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT = 36480; // 0x8e80 + field public static final int GL_MAX_TESS_GEN_LEVEL_EXT = 36478; // 0x8e7e + field public static final int GL_MAX_TESS_PATCH_COMPONENTS_EXT = 36484; // 0x8e84 + field public static final int GL_MAX_TEXTURE_BUFFER_SIZE_EXT = 35883; // 0x8c2b + field public static final int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES = 36443; // 0x8e5b + field public static final int GL_MIN_SAMPLE_SHADING_VALUE_OES = 35895; // 0x8c37 + field public static final int GL_MULTIPLY_KHR = 37524; // 0x9294 + field public static final int GL_OVERLAY_KHR = 37526; // 0x9296 + field public static final int GL_PATCHES_EXT = 14; // 0xe + field public static final int GL_PATCH_VERTICES_EXT = 36466; // 0x8e72 + field public static final int GL_PRIMITIVES_GENERATED_EXT = 35975; // 0x8c87 + field public static final int GL_PRIMITIVE_BOUNDING_BOX_EXT = 37566; // 0x92be + field public static final int GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 33313; // 0x8221 + field public static final int GL_PROGRAM_KHR = 33506; // 0x82e2 + field public static final int GL_QUADS_EXT = 7; // 0x7 + field public static final int GL_QUERY_KHR = 33507; // 0x82e3 + field public static final int GL_REFERENCED_BY_GEOMETRY_SHADER_EXT = 37641; // 0x9309 + field public static final int GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT = 37639; // 0x9307 + field public static final int GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT = 37640; // 0x9308 + field public static final int GL_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 37131; // 0x910b + field public static final int GL_SAMPLER_BUFFER_EXT = 36290; // 0x8dc2 + field public static final int GL_SAMPLER_CUBE_MAP_ARRAY_EXT = 36876; // 0x900c + field public static final int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT = 36877; // 0x900d + field public static final int GL_SAMPLER_KHR = 33510; // 0x82e6 + field public static final int GL_SAMPLE_SHADING_OES = 35894; // 0x8c36 + field public static final int GL_SCREEN_KHR = 37525; // 0x9295 + field public static final int GL_SHADER_KHR = 33505; // 0x82e1 + field public static final int GL_SKIP_DECODE_EXT = 35402; // 0x8a4a + field public static final int GL_SOFTLIGHT_KHR = 37532; // 0x929c + field public static final int GL_STACK_OVERFLOW_KHR = 1283; // 0x503 + field public static final int GL_STACK_UNDERFLOW_KHR = 1284; // 0x504 + field public static final int GL_STENCIL_INDEX8_OES = 36168; // 0x8d48 + field public static final int GL_STENCIL_INDEX_OES = 6401; // 0x1901 + field public static final int GL_TESS_CONTROL_OUTPUT_VERTICES_EXT = 36469; // 0x8e75 + field public static final int GL_TESS_CONTROL_SHADER_BIT_EXT = 8; // 0x8 + field public static final int GL_TESS_CONTROL_SHADER_EXT = 36488; // 0x8e88 + field public static final int GL_TESS_EVALUATION_SHADER_BIT_EXT = 16; // 0x10 + field public static final int GL_TESS_EVALUATION_SHADER_EXT = 36487; // 0x8e87 + field public static final int GL_TESS_GEN_MODE_EXT = 36470; // 0x8e76 + field public static final int GL_TESS_GEN_POINT_MODE_EXT = 36473; // 0x8e79 + field public static final int GL_TESS_GEN_SPACING_EXT = 36471; // 0x8e77 + field public static final int GL_TESS_GEN_VERTEX_ORDER_EXT = 36472; // 0x8e78 + field public static final int GL_TEXTURE_2D_MULTISAMPLE_ARRAY_OES = 37122; // 0x9102 + field public static final int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY_OES = 37125; // 0x9105 + field public static final int GL_TEXTURE_BINDING_BUFFER_EXT = 35884; // 0x8c2c + field public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_EXT = 36874; // 0x900a + field public static final int GL_TEXTURE_BORDER_COLOR_EXT = 4100; // 0x1004 + field public static final int GL_TEXTURE_BUFFER_BINDING_EXT = 35882; // 0x8c2a + field public static final int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = 35885; // 0x8c2d + field public static final int GL_TEXTURE_BUFFER_EXT = 35882; // 0x8c2a + field public static final int GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_EXT = 37279; // 0x919f + field public static final int GL_TEXTURE_BUFFER_OFFSET_EXT = 37277; // 0x919d + field public static final int GL_TEXTURE_BUFFER_SIZE_EXT = 37278; // 0x919e + field public static final int GL_TEXTURE_CUBE_MAP_ARRAY_EXT = 36873; // 0x9009 + field public static final int GL_TEXTURE_SRGB_DECODE_EXT = 35400; // 0x8a48 + field public static final int GL_TRIANGLES_ADJACENCY_EXT = 12; // 0xc + field public static final int GL_TRIANGLE_STRIP_ADJACENCY_EXT = 13; // 0xd + field public static final int GL_UNDEFINED_VERTEX_EXT = 33376; // 0x8260 + field public static final int GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = 36967; // 0x9067 + field public static final int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 36970; // 0x906a + field public static final int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 37133; // 0x910d + field public static final int GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT = 36312; // 0x8dd8 + field public static final int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT = 36879; // 0x900f + field public static final int GL_VERTEX_ARRAY_KHR = 32884; // 0x8074 + } + + public static interface GLES31Ext.DebugProcKHR { + method public void onMessage(int, int, int, int, String); + } + + public class GLES32 extends android.opengl.GLES31 { + method public static void glBlendBarrier(); + method public static void glBlendEquationSeparatei(int, int, int); + method public static void glBlendEquationi(int, int); + method public static void glBlendFuncSeparatei(int, int, int, int, int); + method public static void glBlendFunci(int, int, int); + method public static void glColorMaski(int, boolean, boolean, boolean, boolean); + method public static void glCopyImageSubData(int, int, int, int, int, int, int, int, int, int, int, int, int, int, int); + method public static void glDebugMessageCallback(android.opengl.GLES32.DebugProc); + method public static void glDebugMessageControl(int, int, int, int, int[], int, boolean); + method public static void glDebugMessageControl(int, int, int, int, java.nio.IntBuffer, boolean); + method public static void glDebugMessageInsert(int, int, int, int, int, String); + method public static void glDisablei(int, int); + method public static void glDrawElementsBaseVertex(int, int, int, java.nio.Buffer, int); + method public static void glDrawElementsInstancedBaseVertex(int, int, int, java.nio.Buffer, int, int); + method public static void glDrawElementsInstancedBaseVertex(int, int, int, int, int, int); + method public static void glDrawRangeElementsBaseVertex(int, int, int, int, int, java.nio.Buffer, int); + method public static void glEnablei(int, int); + method public static void glFramebufferTexture(int, int, int, int); + method public static int glGetDebugMessageLog(int, int, int[], int, int[], int, int[], int, int[], int, int[], int, byte[], int); + method public static int glGetDebugMessageLog(int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.ByteBuffer); + method public static String[] glGetDebugMessageLog(int, int[], int, int[], int, int[], int, int[], int); + method public static String[] glGetDebugMessageLog(int, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer, java.nio.IntBuffer); + method public static int glGetGraphicsResetStatus(); + method public static String glGetObjectLabel(int, int); + method public static String glGetObjectPtrLabel(long); + method public static long glGetPointerv(int); + method public static void glGetSamplerParameterIiv(int, int, int[], int); + method public static void glGetSamplerParameterIiv(int, int, java.nio.IntBuffer); + method public static void glGetSamplerParameterIuiv(int, int, int[], int); + method public static void glGetSamplerParameterIuiv(int, int, java.nio.IntBuffer); + method public static void glGetTexParameterIiv(int, int, int[], int); + method public static void glGetTexParameterIiv(int, int, java.nio.IntBuffer); + method public static void glGetTexParameterIuiv(int, int, int[], int); + method public static void glGetTexParameterIuiv(int, int, java.nio.IntBuffer); + method public static void glGetnUniformfv(int, int, int, float[], int); + method public static void glGetnUniformfv(int, int, int, java.nio.FloatBuffer); + method public static void glGetnUniformiv(int, int, int, int[], int); + method public static void glGetnUniformiv(int, int, int, java.nio.IntBuffer); + method public static void glGetnUniformuiv(int, int, int, int[], int); + method public static void glGetnUniformuiv(int, int, int, java.nio.IntBuffer); + method public static boolean glIsEnabledi(int, int); + method public static void glMinSampleShading(float); + method public static void glObjectLabel(int, int, int, String); + method public static void glObjectPtrLabel(long, String); + method public static void glPatchParameteri(int, int); + method public static void glPopDebugGroup(); + method public static void glPrimitiveBoundingBox(float, float, float, float, float, float, float, float); + method public static void glPushDebugGroup(int, int, int, String); + method public static void glReadnPixels(int, int, int, int, int, int, int, java.nio.Buffer); + method public static void glSamplerParameterIiv(int, int, int[], int); + method public static void glSamplerParameterIiv(int, int, java.nio.IntBuffer); + method public static void glSamplerParameterIuiv(int, int, int[], int); + method public static void glSamplerParameterIuiv(int, int, java.nio.IntBuffer); + method public static void glTexBuffer(int, int, int); + method public static void glTexBufferRange(int, int, int, int, int); + method public static void glTexParameterIiv(int, int, int[], int); + method public static void glTexParameterIiv(int, int, java.nio.IntBuffer); + method public static void glTexParameterIuiv(int, int, int[], int); + method public static void glTexParameterIuiv(int, int, java.nio.IntBuffer); + method public static void glTexStorage3DMultisample(int, int, int, int, int, int, boolean); + field public static final int GL_BUFFER = 33504; // 0x82e0 + field public static final int GL_CLAMP_TO_BORDER = 33069; // 0x812d + field public static final int GL_COLORBURN = 37530; // 0x929a + field public static final int GL_COLORDODGE = 37529; // 0x9299 + field public static final int GL_COMPRESSED_RGBA_ASTC_10x10 = 37819; // 0x93bb + field public static final int GL_COMPRESSED_RGBA_ASTC_10x5 = 37816; // 0x93b8 + field public static final int GL_COMPRESSED_RGBA_ASTC_10x6 = 37817; // 0x93b9 + field public static final int GL_COMPRESSED_RGBA_ASTC_10x8 = 37818; // 0x93ba + field public static final int GL_COMPRESSED_RGBA_ASTC_12x10 = 37820; // 0x93bc + field public static final int GL_COMPRESSED_RGBA_ASTC_12x12 = 37821; // 0x93bd + field public static final int GL_COMPRESSED_RGBA_ASTC_4x4 = 37808; // 0x93b0 + field public static final int GL_COMPRESSED_RGBA_ASTC_5x4 = 37809; // 0x93b1 + field public static final int GL_COMPRESSED_RGBA_ASTC_5x5 = 37810; // 0x93b2 + field public static final int GL_COMPRESSED_RGBA_ASTC_6x5 = 37811; // 0x93b3 + field public static final int GL_COMPRESSED_RGBA_ASTC_6x6 = 37812; // 0x93b4 + field public static final int GL_COMPRESSED_RGBA_ASTC_8x5 = 37813; // 0x93b5 + field public static final int GL_COMPRESSED_RGBA_ASTC_8x6 = 37814; // 0x93b6 + field public static final int GL_COMPRESSED_RGBA_ASTC_8x8 = 37815; // 0x93b7 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10 = 37851; // 0x93db + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5 = 37848; // 0x93d8 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6 = 37849; // 0x93d9 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8 = 37850; // 0x93da + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10 = 37852; // 0x93dc + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12 = 37853; // 0x93dd + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4 = 37840; // 0x93d0 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4 = 37841; // 0x93d1 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5 = 37842; // 0x93d2 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5 = 37843; // 0x93d3 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6 = 37844; // 0x93d4 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5 = 37845; // 0x93d5 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6 = 37846; // 0x93d6 + field public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8 = 37847; // 0x93d7 + field public static final int GL_CONTEXT_FLAGS = 33310; // 0x821e + field public static final int GL_CONTEXT_FLAG_DEBUG_BIT = 2; // 0x2 + field public static final int GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = 4; // 0x4 + field public static final int GL_CONTEXT_LOST = 1287; // 0x507 + field public static final int GL_DARKEN = 37527; // 0x9297 + field public static final int GL_DEBUG_CALLBACK_FUNCTION = 33348; // 0x8244 + field public static final int GL_DEBUG_CALLBACK_USER_PARAM = 33349; // 0x8245 + field public static final int GL_DEBUG_GROUP_STACK_DEPTH = 33389; // 0x826d + field public static final int GL_DEBUG_LOGGED_MESSAGES = 37189; // 0x9145 + field public static final int GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 33347; // 0x8243 + field public static final int GL_DEBUG_OUTPUT = 37600; // 0x92e0 + field public static final int GL_DEBUG_OUTPUT_SYNCHRONOUS = 33346; // 0x8242 + field public static final int GL_DEBUG_SEVERITY_HIGH = 37190; // 0x9146 + field public static final int GL_DEBUG_SEVERITY_LOW = 37192; // 0x9148 + field public static final int GL_DEBUG_SEVERITY_MEDIUM = 37191; // 0x9147 + field public static final int GL_DEBUG_SEVERITY_NOTIFICATION = 33387; // 0x826b + field public static final int GL_DEBUG_SOURCE_API = 33350; // 0x8246 + field public static final int GL_DEBUG_SOURCE_APPLICATION = 33354; // 0x824a + field public static final int GL_DEBUG_SOURCE_OTHER = 33355; // 0x824b + field public static final int GL_DEBUG_SOURCE_SHADER_COMPILER = 33352; // 0x8248 + field public static final int GL_DEBUG_SOURCE_THIRD_PARTY = 33353; // 0x8249 + field public static final int GL_DEBUG_SOURCE_WINDOW_SYSTEM = 33351; // 0x8247 + field public static final int GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = 33357; // 0x824d + field public static final int GL_DEBUG_TYPE_ERROR = 33356; // 0x824c + field public static final int GL_DEBUG_TYPE_MARKER = 33384; // 0x8268 + field public static final int GL_DEBUG_TYPE_OTHER = 33361; // 0x8251 + field public static final int GL_DEBUG_TYPE_PERFORMANCE = 33360; // 0x8250 + field public static final int GL_DEBUG_TYPE_POP_GROUP = 33386; // 0x826a + field public static final int GL_DEBUG_TYPE_PORTABILITY = 33359; // 0x824f + field public static final int GL_DEBUG_TYPE_PUSH_GROUP = 33385; // 0x8269 + field public static final int GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = 33358; // 0x824e + field public static final int GL_DIFFERENCE = 37534; // 0x929e + field public static final int GL_EXCLUSION = 37536; // 0x92a0 + field public static final int GL_FIRST_VERTEX_CONVENTION = 36429; // 0x8e4d + field public static final int GL_FRACTIONAL_EVEN = 36476; // 0x8e7c + field public static final int GL_FRACTIONAL_ODD = 36475; // 0x8e7b + field public static final int GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 36445; // 0x8e5d + field public static final int GL_FRAMEBUFFER_ATTACHMENT_LAYERED = 36263; // 0x8da7 + field public static final int GL_FRAMEBUFFER_DEFAULT_LAYERS = 37650; // 0x9312 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 36264; // 0x8da8 + field public static final int GL_GEOMETRY_INPUT_TYPE = 35095; // 0x8917 + field public static final int GL_GEOMETRY_OUTPUT_TYPE = 35096; // 0x8918 + field public static final int GL_GEOMETRY_SHADER = 36313; // 0x8dd9 + field public static final int GL_GEOMETRY_SHADER_BIT = 4; // 0x4 + field public static final int GL_GEOMETRY_SHADER_INVOCATIONS = 34943; // 0x887f + field public static final int GL_GEOMETRY_VERTICES_OUT = 35094; // 0x8916 + field public static final int GL_GUILTY_CONTEXT_RESET = 33363; // 0x8253 + field public static final int GL_HARDLIGHT = 37531; // 0x929b + field public static final int GL_HSL_COLOR = 37551; // 0x92af + field public static final int GL_HSL_HUE = 37549; // 0x92ad + field public static final int GL_HSL_LUMINOSITY = 37552; // 0x92b0 + field public static final int GL_HSL_SATURATION = 37550; // 0x92ae + field public static final int GL_IMAGE_BUFFER = 36945; // 0x9051 + field public static final int GL_IMAGE_CUBE_MAP_ARRAY = 36948; // 0x9054 + field public static final int GL_INNOCENT_CONTEXT_RESET = 33364; // 0x8254 + field public static final int GL_INT_IMAGE_BUFFER = 36956; // 0x905c + field public static final int GL_INT_IMAGE_CUBE_MAP_ARRAY = 36959; // 0x905f + field public static final int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 37132; // 0x910c + field public static final int GL_INT_SAMPLER_BUFFER = 36304; // 0x8dd0 + field public static final int GL_INT_SAMPLER_CUBE_MAP_ARRAY = 36878; // 0x900e + field public static final int GL_ISOLINES = 36474; // 0x8e7a + field public static final int GL_IS_PER_PATCH = 37607; // 0x92e7 + field public static final int GL_LAST_VERTEX_CONVENTION = 36430; // 0x8e4e + field public static final int GL_LAYER_PROVOKING_VERTEX = 33374; // 0x825e + field public static final int GL_LIGHTEN = 37528; // 0x9298 + field public static final int GL_LINES_ADJACENCY = 10; // 0xa + field public static final int GL_LINE_STRIP_ADJACENCY = 11; // 0xb + field public static final int GL_LOSE_CONTEXT_ON_RESET = 33362; // 0x8252 + field public static final int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 35378; // 0x8a32 + field public static final int GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 36382; // 0x8e1e + field public static final int GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 36383; // 0x8e1f + field public static final int GL_MAX_DEBUG_GROUP_STACK_DEPTH = 33388; // 0x826c + field public static final int GL_MAX_DEBUG_LOGGED_MESSAGES = 37188; // 0x9144 + field public static final int GL_MAX_DEBUG_MESSAGE_LENGTH = 37187; // 0x9143 + field public static final int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 36444; // 0x8e5c + field public static final int GL_MAX_FRAMEBUFFER_LAYERS = 37655; // 0x9317 + field public static final int GL_MAX_GEOMETRY_ATOMIC_COUNTERS = 37589; // 0x92d5 + field public static final int GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = 37583; // 0x92cf + field public static final int GL_MAX_GEOMETRY_IMAGE_UNIFORMS = 37069; // 0x90cd + field public static final int GL_MAX_GEOMETRY_INPUT_COMPONENTS = 37155; // 0x9123 + field public static final int GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = 37156; // 0x9124 + field public static final int GL_MAX_GEOMETRY_OUTPUT_VERTICES = 36320; // 0x8de0 + field public static final int GL_MAX_GEOMETRY_SHADER_INVOCATIONS = 36442; // 0x8e5a + field public static final int GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = 37079; // 0x90d7 + field public static final int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 35881; // 0x8c29 + field public static final int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 36321; // 0x8de1 + field public static final int GL_MAX_GEOMETRY_UNIFORM_BLOCKS = 35372; // 0x8a2c + field public static final int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = 36319; // 0x8ddf + field public static final int GL_MAX_LABEL_LENGTH = 33512; // 0x82e8 + field public static final int GL_MAX_PATCH_VERTICES = 36477; // 0x8e7d + field public static final int GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = 37587; // 0x92d3 + field public static final int GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = 37581; // 0x92cd + field public static final int GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = 37067; // 0x90cb + field public static final int GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = 34924; // 0x886c + field public static final int GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 36483; // 0x8e83 + field public static final int GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = 37080; // 0x90d8 + field public static final int GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 36481; // 0x8e81 + field public static final int GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 36485; // 0x8e85 + field public static final int GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = 36489; // 0x8e89 + field public static final int GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 36479; // 0x8e7f + field public static final int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = 37588; // 0x92d4 + field public static final int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = 37582; // 0x92ce + field public static final int GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = 37068; // 0x90cc + field public static final int GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = 34925; // 0x886d + field public static final int GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 36486; // 0x8e86 + field public static final int GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = 37081; // 0x90d9 + field public static final int GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 36482; // 0x8e82 + field public static final int GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 36490; // 0x8e8a + field public static final int GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 36480; // 0x8e80 + field public static final int GL_MAX_TESS_GEN_LEVEL = 36478; // 0x8e7e + field public static final int GL_MAX_TESS_PATCH_COMPONENTS = 36484; // 0x8e84 + field public static final int GL_MAX_TEXTURE_BUFFER_SIZE = 35883; // 0x8c2b + field public static final int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = 36443; // 0x8e5b + field public static final int GL_MIN_SAMPLE_SHADING_VALUE = 35895; // 0x8c37 + field public static final int GL_MULTIPLY = 37524; // 0x9294 + field public static final int GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY = 37762; // 0x9382 + field public static final int GL_MULTISAMPLE_LINE_WIDTH_RANGE = 37761; // 0x9381 + field public static final int GL_NO_RESET_NOTIFICATION = 33377; // 0x8261 + field public static final int GL_OVERLAY = 37526; // 0x9296 + field public static final int GL_PATCHES = 14; // 0xe + field public static final int GL_PATCH_VERTICES = 36466; // 0x8e72 + field public static final int GL_PRIMITIVES_GENERATED = 35975; // 0x8c87 + field public static final int GL_PRIMITIVE_BOUNDING_BOX = 37566; // 0x92be + field public static final int GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 33313; // 0x8221 + field public static final int GL_PROGRAM = 33506; // 0x82e2 + field public static final int GL_PROGRAM_PIPELINE = 33508; // 0x82e4 + field public static final int GL_QUADS = 7; // 0x7 + field public static final int GL_QUERY = 33507; // 0x82e3 + field public static final int GL_REFERENCED_BY_GEOMETRY_SHADER = 37641; // 0x9309 + field public static final int GL_REFERENCED_BY_TESS_CONTROL_SHADER = 37639; // 0x9307 + field public static final int GL_REFERENCED_BY_TESS_EVALUATION_SHADER = 37640; // 0x9308 + field public static final int GL_RESET_NOTIFICATION_STRATEGY = 33366; // 0x8256 + field public static final int GL_SAMPLER = 33510; // 0x82e6 + field public static final int GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 37131; // 0x910b + field public static final int GL_SAMPLER_BUFFER = 36290; // 0x8dc2 + field public static final int GL_SAMPLER_CUBE_MAP_ARRAY = 36876; // 0x900c + field public static final int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = 36877; // 0x900d + field public static final int GL_SAMPLE_SHADING = 35894; // 0x8c36 + field public static final int GL_SCREEN = 37525; // 0x9295 + field public static final int GL_SHADER = 33505; // 0x82e1 + field public static final int GL_SOFTLIGHT = 37532; // 0x929c + field public static final int GL_STACK_OVERFLOW = 1283; // 0x503 + field public static final int GL_STACK_UNDERFLOW = 1284; // 0x504 + field public static final int GL_TESS_CONTROL_OUTPUT_VERTICES = 36469; // 0x8e75 + field public static final int GL_TESS_CONTROL_SHADER = 36488; // 0x8e88 + field public static final int GL_TESS_CONTROL_SHADER_BIT = 8; // 0x8 + field public static final int GL_TESS_EVALUATION_SHADER = 36487; // 0x8e87 + field public static final int GL_TESS_EVALUATION_SHADER_BIT = 16; // 0x10 + field public static final int GL_TESS_GEN_MODE = 36470; // 0x8e76 + field public static final int GL_TESS_GEN_POINT_MODE = 36473; // 0x8e79 + field public static final int GL_TESS_GEN_SPACING = 36471; // 0x8e77 + field public static final int GL_TESS_GEN_VERTEX_ORDER = 36472; // 0x8e78 + field public static final int GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 37122; // 0x9102 + field public static final int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 37125; // 0x9105 + field public static final int GL_TEXTURE_BINDING_BUFFER = 35884; // 0x8c2c + field public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY = 36874; // 0x900a + field public static final int GL_TEXTURE_BORDER_COLOR = 4100; // 0x1004 + field public static final int GL_TEXTURE_BUFFER = 35882; // 0x8c2a + field public static final int GL_TEXTURE_BUFFER_BINDING = 35882; // 0x8c2a + field public static final int GL_TEXTURE_BUFFER_DATA_STORE_BINDING = 35885; // 0x8c2d + field public static final int GL_TEXTURE_BUFFER_OFFSET = 37277; // 0x919d + field public static final int GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = 37279; // 0x919f + field public static final int GL_TEXTURE_BUFFER_SIZE = 37278; // 0x919e + field public static final int GL_TEXTURE_CUBE_MAP_ARRAY = 36873; // 0x9009 + field public static final int GL_TRIANGLES_ADJACENCY = 12; // 0xc + field public static final int GL_TRIANGLE_STRIP_ADJACENCY = 13; // 0xd + field public static final int GL_UNDEFINED_VERTEX = 33376; // 0x8260 + field public static final int GL_UNKNOWN_CONTEXT_RESET = 33365; // 0x8255 + field public static final int GL_UNSIGNED_INT_IMAGE_BUFFER = 36967; // 0x9067 + field public static final int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = 36970; // 0x906a + field public static final int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 37133; // 0x910d + field public static final int GL_UNSIGNED_INT_SAMPLER_BUFFER = 36312; // 0x8dd8 + field public static final int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = 36879; // 0x900f + field public static final int GL_VERTEX_ARRAY = 32884; // 0x8074 + } + + public static interface GLES32.DebugProc { + method public void onMessage(int, int, int, int, String); + } + + public class GLException extends java.lang.RuntimeException { + ctor public GLException(int); + ctor public GLException(int, String); + } + + public class GLSurfaceView extends android.view.SurfaceView implements android.view.SurfaceHolder.Callback2 { + ctor public GLSurfaceView(android.content.Context); + ctor public GLSurfaceView(android.content.Context, android.util.AttributeSet); + method public int getDebugFlags(); + method public boolean getPreserveEGLContextOnPause(); + method public int getRenderMode(); + method public void onPause(); + method public void onResume(); + method public void queueEvent(Runnable); + method public void requestRender(); + method public void setDebugFlags(int); + method public void setEGLConfigChooser(android.opengl.GLSurfaceView.EGLConfigChooser); + method public void setEGLConfigChooser(boolean); + method public void setEGLConfigChooser(int, int, int, int, int, int); + method public void setEGLContextClientVersion(int); + method public void setEGLContextFactory(android.opengl.GLSurfaceView.EGLContextFactory); + method public void setEGLWindowSurfaceFactory(android.opengl.GLSurfaceView.EGLWindowSurfaceFactory); + method public void setGLWrapper(android.opengl.GLSurfaceView.GLWrapper); + method public void setPreserveEGLContextOnPause(boolean); + method public void setRenderMode(int); + method public void setRenderer(android.opengl.GLSurfaceView.Renderer); + method public void surfaceChanged(android.view.SurfaceHolder, int, int, int); + method public void surfaceCreated(android.view.SurfaceHolder); + method public void surfaceDestroyed(android.view.SurfaceHolder); + method @Deprecated public void surfaceRedrawNeeded(android.view.SurfaceHolder); + method public void surfaceRedrawNeededAsync(android.view.SurfaceHolder, Runnable); + field public static final int DEBUG_CHECK_GL_ERROR = 1; // 0x1 + field public static final int DEBUG_LOG_GL_CALLS = 2; // 0x2 + field public static final int RENDERMODE_CONTINUOUSLY = 1; // 0x1 + field public static final int RENDERMODE_WHEN_DIRTY = 0; // 0x0 + } + + public static interface GLSurfaceView.EGLConfigChooser { + method public javax.microedition.khronos.egl.EGLConfig chooseConfig(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay); + } + + public static interface GLSurfaceView.EGLContextFactory { + method public javax.microedition.khronos.egl.EGLContext createContext(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig); + method public void destroyContext(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLContext); + } + + public static interface GLSurfaceView.EGLWindowSurfaceFactory { + method public javax.microedition.khronos.egl.EGLSurface createWindowSurface(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, Object); + method public void destroySurface(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface); + } + + public static interface GLSurfaceView.GLWrapper { + method public javax.microedition.khronos.opengles.GL wrap(javax.microedition.khronos.opengles.GL); + } + + public static interface GLSurfaceView.Renderer { + method public void onDrawFrame(javax.microedition.khronos.opengles.GL10); + method public void onSurfaceChanged(javax.microedition.khronos.opengles.GL10, int, int); + method public void onSurfaceCreated(javax.microedition.khronos.opengles.GL10, javax.microedition.khronos.egl.EGLConfig); + } + + public class GLU { + ctor public GLU(); + method public static String gluErrorString(int); + method public static void gluLookAt(javax.microedition.khronos.opengles.GL10, float, float, float, float, float, float, float, float, float); + method public static void gluOrtho2D(javax.microedition.khronos.opengles.GL10, float, float, float, float); + method public static void gluPerspective(javax.microedition.khronos.opengles.GL10, float, float, float, float); + method public static int gluProject(float, float, float, float[], int, float[], int, int[], int, float[], int); + method public static int gluUnProject(float, float, float, float[], int, float[], int, int[], int, float[], int); + } + + public final class GLUtils { + method public static String getEGLErrorString(int); + method public static int getInternalFormat(android.graphics.Bitmap); + method public static int getType(android.graphics.Bitmap); + method public static void texImage2D(int, int, int, android.graphics.Bitmap, int); + method public static void texImage2D(int, int, int, android.graphics.Bitmap, int, int); + method public static void texImage2D(int, int, android.graphics.Bitmap, int); + method public static void texSubImage2D(int, int, int, int, android.graphics.Bitmap); + method public static void texSubImage2D(int, int, int, int, android.graphics.Bitmap, int, int); + } + + public class Matrix { + ctor @Deprecated public Matrix(); + method public static void frustumM(float[], int, float, float, float, float, float, float); + method public static boolean invertM(float[], int, float[], int); + method public static float length(float, float, float); + method public static void multiplyMM(float[], int, float[], int, float[], int); + method public static void multiplyMV(float[], int, float[], int, float[], int); + method public static void orthoM(float[], int, float, float, float, float, float, float); + method public static void perspectiveM(float[], int, float, float, float, float); + method public static void rotateM(float[], int, float[], int, float, float, float, float); + method public static void rotateM(float[], int, float, float, float, float); + method public static void scaleM(float[], int, float[], int, float, float, float); + method public static void scaleM(float[], int, float, float, float); + method public static void setIdentityM(float[], int); + method public static void setLookAtM(float[], int, float, float, float, float, float, float, float, float, float); + method @Deprecated public static void setRotateEulerM(float[], int, float, float, float); + method public static void setRotateEulerM2(@NonNull float[], int, float, float, float); + method public static void setRotateM(float[], int, float, float, float, float); + method public static void translateM(float[], int, float[], int, float, float, float); + method public static void translateM(float[], int, float, float, float); + method public static void transposeM(float[], int, float[], int); + } + + public class Visibility { + ctor public Visibility(); + method public static void computeBoundingSphere(float[], int, int, float[], int); + method public static int frustumCullSpheres(float[], int, float[], int, int, int[], int, int); + method public static int visibilityTest(float[], int, float[], int, char[], int, int); + } + +} + +package android.os { + + @Deprecated public abstract class AsyncTask { + ctor @Deprecated public AsyncTask(); + method @Deprecated public final boolean cancel(boolean); + method @Deprecated @WorkerThread protected abstract Result doInBackground(Params...); + method @Deprecated @MainThread public final android.os.AsyncTask execute(Params...); + method @Deprecated @MainThread public static void execute(Runnable); + method @Deprecated @MainThread public final android.os.AsyncTask executeOnExecutor(java.util.concurrent.Executor, Params...); + method @Deprecated public final Result get() throws java.util.concurrent.ExecutionException, java.lang.InterruptedException; + method @Deprecated public final Result get(long, java.util.concurrent.TimeUnit) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException, java.util.concurrent.TimeoutException; + method @Deprecated public final android.os.AsyncTask.Status getStatus(); + method @Deprecated public final boolean isCancelled(); + method @Deprecated @MainThread protected void onCancelled(Result); + method @Deprecated @MainThread protected void onCancelled(); + method @Deprecated @MainThread protected void onPostExecute(Result); + method @Deprecated @MainThread protected void onPreExecute(); + method @Deprecated @MainThread protected void onProgressUpdate(Progress...); + method @Deprecated @WorkerThread protected final void publishProgress(Progress...); + field @Deprecated public static final java.util.concurrent.Executor SERIAL_EXECUTOR; + field @Deprecated public static final java.util.concurrent.Executor THREAD_POOL_EXECUTOR; + } + + @Deprecated public enum AsyncTask.Status { + enum_constant @Deprecated public static final android.os.AsyncTask.Status FINISHED; + enum_constant @Deprecated public static final android.os.AsyncTask.Status PENDING; + enum_constant @Deprecated public static final android.os.AsyncTask.Status RUNNING; + } + + public class BadParcelableException extends android.util.AndroidRuntimeException { + ctor public BadParcelableException(String); + ctor public BadParcelableException(Exception); + } + + public class BaseBundle { + method public void clear(); + method public boolean containsKey(String); + method @Deprecated @Nullable public Object get(String); + method public boolean getBoolean(String); + method public boolean getBoolean(String, boolean); + method @Nullable public boolean[] getBooleanArray(@Nullable String); + method public double getDouble(String); + method public double getDouble(String, double); + method @Nullable public double[] getDoubleArray(@Nullable String); + method public int getInt(String); + method public int getInt(String, int); + method @Nullable public int[] getIntArray(@Nullable String); + method public long getLong(String); + method public long getLong(String, long); + method @Nullable public long[] getLongArray(@Nullable String); + method @Nullable public String getString(@Nullable String); + method public String getString(@Nullable String, String); + method @Nullable public String[] getStringArray(@Nullable String); + method public boolean isEmpty(); + method public java.util.Set keySet(); + method public void putAll(android.os.PersistableBundle); + method public void putBoolean(@Nullable String, boolean); + method public void putBooleanArray(@Nullable String, @Nullable boolean[]); + method public void putDouble(@Nullable String, double); + method public void putDoubleArray(@Nullable String, @Nullable double[]); + method public void putInt(@Nullable String, int); + method public void putIntArray(@Nullable String, @Nullable int[]); + method public void putLong(@Nullable String, long); + method public void putLongArray(@Nullable String, @Nullable long[]); + method public void putString(@Nullable String, @Nullable String); + method public void putStringArray(@Nullable String, @Nullable String[]); + method public void remove(String); + method public int size(); + } + + public class BatteryManager { + method public long computeChargeTimeRemaining(); + method public int getIntProperty(int); + method public long getLongProperty(int); + method @FlaggedApi("android.os.battery_part_status_api") @Nullable public String getStringProperty(int); + method public boolean isCharging(); + field public static final String ACTION_CHARGING = "android.os.action.CHARGING"; + field public static final String ACTION_DISCHARGING = "android.os.action.DISCHARGING"; + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_CRITICAL = 1; // 0x1 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_FULL = 5; // 0x5 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_HIGH = 4; // 0x4 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_LOW = 2; // 0x2 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_NORMAL = 3; // 0x3 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_UNKNOWN = 0; // 0x0 + field @FlaggedApi("android.os.battery_part_status_api") public static final int BATTERY_CAPACITY_LEVEL_UNSUPPORTED = -1; // 0xffffffff + field public static final int BATTERY_HEALTH_COLD = 7; // 0x7 + field public static final int BATTERY_HEALTH_DEAD = 4; // 0x4 + field public static final int BATTERY_HEALTH_GOOD = 2; // 0x2 + field public static final int BATTERY_HEALTH_OVERHEAT = 3; // 0x3 + field public static final int BATTERY_HEALTH_OVER_VOLTAGE = 5; // 0x5 + field public static final int BATTERY_HEALTH_UNKNOWN = 1; // 0x1 + field public static final int BATTERY_HEALTH_UNSPECIFIED_FAILURE = 6; // 0x6 + field public static final int BATTERY_PLUGGED_AC = 1; // 0x1 + field public static final int BATTERY_PLUGGED_DOCK = 8; // 0x8 + field public static final int BATTERY_PLUGGED_USB = 2; // 0x2 + field public static final int BATTERY_PLUGGED_WIRELESS = 4; // 0x4 + field public static final int BATTERY_PROPERTY_CAPACITY = 4; // 0x4 + field public static final int BATTERY_PROPERTY_CHARGE_COUNTER = 1; // 0x1 + field public static final int BATTERY_PROPERTY_CURRENT_AVERAGE = 3; // 0x3 + field public static final int BATTERY_PROPERTY_CURRENT_NOW = 2; // 0x2 + field public static final int BATTERY_PROPERTY_ENERGY_COUNTER = 5; // 0x5 + field @FlaggedApi("android.os.state_of_health_public") public static final int BATTERY_PROPERTY_STATE_OF_HEALTH = 10; // 0xa + field public static final int BATTERY_PROPERTY_STATUS = 6; // 0x6 + field public static final int BATTERY_STATUS_CHARGING = 2; // 0x2 + field public static final int BATTERY_STATUS_DISCHARGING = 3; // 0x3 + field public static final int BATTERY_STATUS_FULL = 5; // 0x5 + field public static final int BATTERY_STATUS_NOT_CHARGING = 4; // 0x4 + field public static final int BATTERY_STATUS_UNKNOWN = 1; // 0x1 + field public static final String EXTRA_BATTERY_LOW = "battery_low"; + field @FlaggedApi("android.os.battery_part_status_api") public static final String EXTRA_CAPACITY_LEVEL = "android.os.extra.CAPACITY_LEVEL"; + field public static final String EXTRA_CHARGING_STATUS = "android.os.extra.CHARGING_STATUS"; + field public static final String EXTRA_CYCLE_COUNT = "android.os.extra.CYCLE_COUNT"; + field public static final String EXTRA_HEALTH = "health"; + field public static final String EXTRA_ICON_SMALL = "icon-small"; + field public static final String EXTRA_LEVEL = "level"; + field public static final String EXTRA_PLUGGED = "plugged"; + field public static final String EXTRA_PRESENT = "present"; + field public static final String EXTRA_SCALE = "scale"; + field public static final String EXTRA_STATUS = "status"; + field public static final String EXTRA_TECHNOLOGY = "technology"; + field public static final String EXTRA_TEMPERATURE = "temperature"; + field public static final String EXTRA_VOLTAGE = "voltage"; + } + + public class Binder implements android.os.IBinder { + ctor public Binder(); + ctor public Binder(@Nullable String); + method public void attachInterface(@Nullable android.os.IInterface, @Nullable String); + method public static final long clearCallingIdentity(); + method public static final long clearCallingWorkSource(); + method public void dump(@NonNull java.io.FileDescriptor, @Nullable String[]); + method protected void dump(@NonNull java.io.FileDescriptor, @NonNull java.io.PrintWriter, @Nullable String[]); + method public void dumpAsync(@NonNull java.io.FileDescriptor, @Nullable String[]); + method public static final void flushPendingCommands(); + method public static final int getCallingPid(); + method public static final int getCallingUid(); + method public static final int getCallingUidOrThrow(); + method @NonNull public static final android.os.UserHandle getCallingUserHandle(); + method public static final int getCallingWorkSourceUid(); + method @Nullable public String getInterfaceDescriptor(); + method public boolean isBinderAlive(); + method public static final void joinThreadPool(); + method public void linkToDeath(@NonNull android.os.IBinder.DeathRecipient, int); + method protected boolean onTransact(int, @NonNull android.os.Parcel, @Nullable android.os.Parcel, int) throws android.os.RemoteException; + method public boolean pingBinder(); + method @Nullable public android.os.IInterface queryLocalInterface(@NonNull String); + method public static final void restoreCallingIdentity(long); + method public static final void restoreCallingWorkSource(long); + method public static final long setCallingWorkSourceUid(int); + method public final boolean transact(int, @NonNull android.os.Parcel, @Nullable android.os.Parcel, int) throws android.os.RemoteException; + method public boolean unlinkToDeath(@NonNull android.os.IBinder.DeathRecipient, int); + } + + public final class BugreportManager { + method @WorkerThread public void cancelBugreport(); + method @WorkerThread public void startConnectivityBugreport(@NonNull android.os.ParcelFileDescriptor, @NonNull java.util.concurrent.Executor, @NonNull android.os.BugreportManager.BugreportCallback); + } + + public abstract static class BugreportManager.BugreportCallback { + ctor public BugreportManager.BugreportCallback(); + method public void onEarlyReportFinished(); + method public void onError(int); + method public void onFinished(); + method public void onProgress(@FloatRange(from=0.0f, to=100.0f) float); + field public static final int BUGREPORT_ERROR_ANOTHER_REPORT_IN_PROGRESS = 5; // 0x5 + field public static final int BUGREPORT_ERROR_INVALID_INPUT = 1; // 0x1 + field public static final int BUGREPORT_ERROR_NO_BUGREPORT_TO_RETRIEVE = 6; // 0x6 + field public static final int BUGREPORT_ERROR_RUNTIME = 2; // 0x2 + field public static final int BUGREPORT_ERROR_USER_CONSENT_TIMED_OUT = 4; // 0x4 + field public static final int BUGREPORT_ERROR_USER_DENIED_CONSENT = 3; // 0x3 + } + + public class Build { + ctor public Build(); + method @FlaggedApi("android.os.api_for_backported_fixes") public static int getBackportedFixStatus(long); + method @NonNull public static java.util.List getFingerprintedPartitions(); + method @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static int getMajorSdkVersion(int); + method @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static int getMinorSdkVersion(int); + method public static String getRadioVersion(); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public static String getSerial(); + field @FlaggedApi("android.os.api_for_backported_fixes") public static final int BACKPORTED_FIX_STATUS_FIXED = 1; // 0x1 + field @FlaggedApi("android.os.api_for_backported_fixes") public static final int BACKPORTED_FIX_STATUS_NOT_APPLICABLE = 2; // 0x2 + field @FlaggedApi("android.os.api_for_backported_fixes") public static final int BACKPORTED_FIX_STATUS_NOT_FIXED = 3; // 0x3 + field @FlaggedApi("android.os.api_for_backported_fixes") public static final int BACKPORTED_FIX_STATUS_UNKNOWN = 0; // 0x0 + field public static final String BOARD; + field public static final String BOOTLOADER; + field public static final String BRAND; + field @Deprecated public static final String CPU_ABI; + field @Deprecated public static final String CPU_ABI2; + field public static final String DEVICE; + field public static final String DISPLAY; + field public static final String FINGERPRINT; + field public static final String HARDWARE; + field public static final String HOST; + field public static final String ID; + field public static final String MANUFACTURER; + field public static final String MODEL; + field @NonNull public static final String ODM_SKU; + field public static final String PRODUCT; + field @Deprecated public static final String RADIO; + field @Deprecated public static final String SERIAL; + field @NonNull public static final String SKU; + field @NonNull public static final String SOC_MANUFACTURER; + field @NonNull public static final String SOC_MODEL; + field public static final String[] SUPPORTED_32_BIT_ABIS; + field public static final String[] SUPPORTED_64_BIT_ABIS; + field public static final String[] SUPPORTED_ABIS; + field public static final String TAGS; + field public static final long TIME; + field public static final String TYPE; + field public static final String UNKNOWN = "unknown"; + field public static final String USER; + } + + public static class Build.Partition { + method public long getBuildTimeMillis(); + method @NonNull public String getFingerprint(); + method @NonNull public String getName(); + field public static final String PARTITION_NAME_SYSTEM = "system"; + } + + public static class Build.VERSION { + ctor public Build.VERSION(); + field public static final String BASE_OS; + field public static final String CODENAME; + field public static final String INCREMENTAL; + field public static final int MEDIA_PERFORMANCE_CLASS; + field public static final int PREVIEW_SDK_INT; + field public static final String RELEASE; + field @NonNull public static final String RELEASE_OR_CODENAME; + field @NonNull public static final String RELEASE_OR_PREVIEW_DISPLAY; + field @Deprecated public static final String SDK; + field public static final int SDK_INT; + field @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static final int SDK_INT_FULL; + field public static final String SECURITY_PATCH; + } + + public static class Build.VERSION_CODES { + ctor public Build.VERSION_CODES(); + field @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static final int BAKLAVA = 36; // 0x24 + field public static final int BASE = 1; // 0x1 + field public static final int BASE_1_1 = 2; // 0x2 + field public static final int CUPCAKE = 3; // 0x3 + field public static final int CUR_DEVELOPMENT = 10000; // 0x2710 + field public static final int DONUT = 4; // 0x4 + field public static final int ECLAIR = 5; // 0x5 + field public static final int ECLAIR_0_1 = 6; // 0x6 + field public static final int ECLAIR_MR1 = 7; // 0x7 + field public static final int FROYO = 8; // 0x8 + field public static final int GINGERBREAD = 9; // 0x9 + field public static final int GINGERBREAD_MR1 = 10; // 0xa + field public static final int HONEYCOMB = 11; // 0xb + field public static final int HONEYCOMB_MR1 = 12; // 0xc + field public static final int HONEYCOMB_MR2 = 13; // 0xd + field public static final int ICE_CREAM_SANDWICH = 14; // 0xe + field public static final int ICE_CREAM_SANDWICH_MR1 = 15; // 0xf + field public static final int JELLY_BEAN = 16; // 0x10 + field public static final int JELLY_BEAN_MR1 = 17; // 0x11 + field public static final int JELLY_BEAN_MR2 = 18; // 0x12 + field public static final int KITKAT = 19; // 0x13 + field public static final int KITKAT_WATCH = 20; // 0x14 + field public static final int LOLLIPOP = 21; // 0x15 + field public static final int LOLLIPOP_MR1 = 22; // 0x16 + field public static final int M = 23; // 0x17 + field public static final int N = 24; // 0x18 + field public static final int N_MR1 = 25; // 0x19 + field public static final int O = 26; // 0x1a + field public static final int O_MR1 = 27; // 0x1b + field public static final int P = 28; // 0x1c + field public static final int Q = 29; // 0x1d + field public static final int R = 30; // 0x1e + field public static final int S = 31; // 0x1f + field public static final int S_V2 = 32; // 0x20 + field public static final int TIRAMISU = 33; // 0x21 + field public static final int UPSIDE_DOWN_CAKE = 34; // 0x22 + field public static final int VANILLA_ICE_CREAM = 35; // 0x23 + } + + @FlaggedApi("android.sdk.major_minor_versioning_scheme") public static class Build.VERSION_CODES_FULL { + field public static final int BAKLAVA = 3600000; // 0x36ee80 + field public static final int BASE = 100000; // 0x186a0 + field public static final int BASE_1_1 = 200000; // 0x30d40 + field public static final int CUPCAKE = 300000; // 0x493e0 + field public static final int DONUT = 400000; // 0x61a80 + field public static final int ECLAIR = 500000; // 0x7a120 + field public static final int ECLAIR_0_1 = 600000; // 0x927c0 + field public static final int ECLAIR_MR1 = 700000; // 0xaae60 + field public static final int FROYO = 800000; // 0xc3500 + field public static final int GINGERBREAD = 900000; // 0xdbba0 + field public static final int GINGERBREAD_MR1 = 1000000; // 0xf4240 + field public static final int HONEYCOMB = 1100000; // 0x10c8e0 + field public static final int HONEYCOMB_MR1 = 1200000; // 0x124f80 + field public static final int HONEYCOMB_MR2 = 1300000; // 0x13d620 + field public static final int ICE_CREAM_SANDWICH = 1400000; // 0x155cc0 + field public static final int ICE_CREAM_SANDWICH_MR1 = 1500000; // 0x16e360 + field public static final int JELLY_BEAN = 1600000; // 0x186a00 + field public static final int JELLY_BEAN_MR1 = 1700000; // 0x19f0a0 + field public static final int JELLY_BEAN_MR2 = 1800000; // 0x1b7740 + field public static final int KITKAT = 1900000; // 0x1cfde0 + field public static final int KITKAT_WATCH = 2000000; // 0x1e8480 + field public static final int LOLLIPOP = 2100000; // 0x200b20 + field public static final int LOLLIPOP_MR1 = 2200000; // 0x2191c0 + field public static final int M = 2300000; // 0x231860 + field public static final int N = 2400000; // 0x249f00 + field public static final int N_MR1 = 2500000; // 0x2625a0 + field public static final int O = 2600000; // 0x27ac40 + field public static final int O_MR1 = 2700000; // 0x2932e0 + field public static final int P = 2800000; // 0x2ab980 + field public static final int Q = 2900000; // 0x2c4020 + field public static final int R = 3000000; // 0x2dc6c0 + field public static final int S = 3100000; // 0x2f4d60 + field public static final int S_V2 = 3200000; // 0x30d400 + field public static final int TIRAMISU = 3300000; // 0x325aa0 + field public static final int UPSIDE_DOWN_CAKE = 3400000; // 0x33e140 + field public static final int VANILLA_ICE_CREAM = 3500000; // 0x3567e0 + } + + public final class Bundle extends android.os.BaseBundle implements java.lang.Cloneable android.os.Parcelable { + ctor public Bundle(); + ctor public Bundle(ClassLoader); + ctor public Bundle(int); + ctor public Bundle(android.os.Bundle); + ctor public Bundle(android.os.PersistableBundle); + method public Object clone(); + method public android.os.Bundle deepCopy(); + method public int describeContents(); + method @Nullable public android.os.IBinder getBinder(@Nullable String); + method @Nullable public android.os.Bundle getBundle(@Nullable String); + method public byte getByte(String); + method public Byte getByte(String, byte); + method @Nullable public byte[] getByteArray(@Nullable String); + method public char getChar(String); + method public char getChar(String, char); + method @Nullable public char[] getCharArray(@Nullable String); + method @Nullable public CharSequence getCharSequence(@Nullable String); + method public CharSequence getCharSequence(@Nullable String, CharSequence); + method @Nullable public CharSequence[] getCharSequenceArray(@Nullable String); + method @Nullable public java.util.ArrayList getCharSequenceArrayList(@Nullable String); + method public ClassLoader getClassLoader(); + method public float getFloat(String); + method public float getFloat(String, float); + method @Nullable public float[] getFloatArray(@Nullable String); + method @Nullable public java.util.ArrayList getIntegerArrayList(@Nullable String); + method @Deprecated @Nullable public T getParcelable(@Nullable String); + method @Nullable public T getParcelable(@Nullable String, @NonNull Class); + method @Deprecated @Nullable public android.os.Parcelable[] getParcelableArray(@Nullable String); + method @Nullable public T[] getParcelableArray(@Nullable String, @NonNull Class); + method @Deprecated @Nullable public java.util.ArrayList getParcelableArrayList(@Nullable String); + method @Nullable public java.util.ArrayList getParcelableArrayList(@Nullable String, @NonNull Class); + method @Deprecated @Nullable public java.io.Serializable getSerializable(@Nullable String); + method @Nullable public T getSerializable(@Nullable String, @NonNull Class); + method public short getShort(String); + method public short getShort(String, short); + method @Nullable public short[] getShortArray(@Nullable String); + method @Nullable public android.util.Size getSize(@Nullable String); + method @Nullable public android.util.SizeF getSizeF(@Nullable String); + method @Deprecated @Nullable public android.util.SparseArray getSparseParcelableArray(@Nullable String); + method @Nullable public android.util.SparseArray getSparseParcelableArray(@Nullable String, @NonNull Class); + method @Nullable public java.util.ArrayList getStringArrayList(@Nullable String); + method public boolean hasFileDescriptors(); + method public void putAll(android.os.Bundle); + method public void putBinder(@Nullable String, @Nullable android.os.IBinder); + method public void putBundle(@Nullable String, @Nullable android.os.Bundle); + method public void putByte(@Nullable String, byte); + method public void putByteArray(@Nullable String, @Nullable byte[]); + method public void putChar(@Nullable String, char); + method public void putCharArray(@Nullable String, @Nullable char[]); + method public void putCharSequence(@Nullable String, @Nullable CharSequence); + method public void putCharSequenceArray(@Nullable String, @Nullable CharSequence[]); + method public void putCharSequenceArrayList(@Nullable String, @Nullable java.util.ArrayList); + method public void putFloat(@Nullable String, float); + method public void putFloatArray(@Nullable String, @Nullable float[]); + method public void putIntegerArrayList(@Nullable String, @Nullable java.util.ArrayList); + method public void putParcelable(@Nullable String, @Nullable android.os.Parcelable); + method public void putParcelableArray(@Nullable String, @Nullable android.os.Parcelable[]); + method public void putParcelableArrayList(@Nullable String, @Nullable java.util.ArrayList); + method public void putSerializable(@Nullable String, @Nullable java.io.Serializable); + method public void putShort(@Nullable String, short); + method public void putShortArray(@Nullable String, @Nullable short[]); + method public void putSize(@Nullable String, @Nullable android.util.Size); + method public void putSizeF(@Nullable String, @Nullable android.util.SizeF); + method public void putSparseParcelableArray(@Nullable String, @Nullable android.util.SparseArray); + method public void putStringArrayList(@Nullable String, @Nullable java.util.ArrayList); + method public void readFromParcel(android.os.Parcel); + method public void setClassLoader(ClassLoader); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final android.os.Bundle EMPTY; + } + + public final class CancellationSignal { + ctor public CancellationSignal(); + method public void cancel(); + method public boolean isCanceled(); + method public void setOnCancelListener(android.os.CancellationSignal.OnCancelListener); + method public void throwIfCanceled(); + } + + public static interface CancellationSignal.OnCancelListener { + method public void onCancel(); + } + + public abstract class CombinedVibration implements android.os.Parcelable { + method @NonNull public static android.os.CombinedVibration createParallel(@NonNull android.os.VibrationEffect); + method public int describeContents(); + method @NonNull public static android.os.CombinedVibration.ParallelCombination startParallel(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class CombinedVibration.ParallelCombination { + method @NonNull public android.os.CombinedVibration.ParallelCombination addVibrator(int, @NonNull android.os.VibrationEffect); + method @NonNull public android.os.CombinedVibration combine(); + } + + public class ConditionVariable { + ctor public ConditionVariable(); + ctor public ConditionVariable(boolean); + method public void block(); + method public boolean block(long); + method public void close(); + method public void open(); + } + + public abstract class CountDownTimer { + ctor public CountDownTimer(long, long); + method public final void cancel(); + method public abstract void onFinish(); + method public abstract void onTick(long); + method public final android.os.CountDownTimer start(); + } + + @FlaggedApi("android.os.cpu_gpu_headrooms") public final class CpuHeadroomParams { + ctor public CpuHeadroomParams(); + method public int getCalculationType(); + method @IntRange(from=0x32, to=0x2710) public long getCalculationWindowMillis(); + method public void setCalculationType(int); + method public void setCalculationWindowMillis(@IntRange(from=0x32, to=0x2710) int); + method public void setTids(@NonNull int...); + field public static final int CPU_HEADROOM_CALCULATION_TYPE_AVERAGE = 1; // 0x1 + field public static final int CPU_HEADROOM_CALCULATION_TYPE_MIN = 0; // 0x0 + } + + public final class CpuUsageInfo implements android.os.Parcelable { + method public int describeContents(); + method public long getActive(); + method public long getTotal(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class DeadObjectException extends android.os.RemoteException { + ctor public DeadObjectException(); + ctor public DeadObjectException(String); + } + + public class DeadSystemException extends android.os.DeadObjectException { + ctor public DeadSystemException(); + } + + public final class Debug { + method public static void attachJvmtiAgent(@NonNull String, @Nullable String, @Nullable ClassLoader) throws java.io.IOException; + method @Deprecated public static void changeDebugPort(int); + method public static void dumpHprofData(String) throws java.io.IOException; + method public static boolean dumpService(String, java.io.FileDescriptor, String[]); + method @Deprecated public static void enableEmulatorTraceOutput(); + method public static int getBinderDeathObjectCount(); + method public static int getBinderLocalObjectCount(); + method public static int getBinderProxyObjectCount(); + method public static int getBinderReceivedTransactions(); + method public static int getBinderSentTransactions(); + method @Deprecated public static int getGlobalAllocCount(); + method @Deprecated public static int getGlobalAllocSize(); + method @Deprecated public static int getGlobalClassInitCount(); + method @Deprecated public static int getGlobalClassInitTime(); + method @Deprecated public static int getGlobalExternalAllocCount(); + method @Deprecated public static int getGlobalExternalAllocSize(); + method @Deprecated public static int getGlobalExternalFreedCount(); + method @Deprecated public static int getGlobalExternalFreedSize(); + method @Deprecated public static int getGlobalFreedCount(); + method @Deprecated public static int getGlobalFreedSize(); + method @Deprecated public static int getGlobalGcInvocationCount(); + method public static int getLoadedClassCount(); + method public static void getMemoryInfo(android.os.Debug.MemoryInfo); + method public static long getNativeHeapAllocatedSize(); + method public static long getNativeHeapFreeSize(); + method public static long getNativeHeapSize(); + method public static long getPss(); + method @FlaggedApi("android.os.remove_app_profiler_pss_collection") public static long getRss(); + method public static String getRuntimeStat(String); + method public static java.util.Map getRuntimeStats(); + method @Deprecated public static int getThreadAllocCount(); + method @Deprecated public static int getThreadAllocSize(); + method @Deprecated public static int getThreadExternalAllocCount(); + method @Deprecated public static int getThreadExternalAllocSize(); + method @Deprecated public static int getThreadGcInvocationCount(); + method public static boolean isDebuggerConnected(); + method public static void printLoadedClasses(int); + method @Deprecated public static void resetAllCounts(); + method @Deprecated public static void resetGlobalAllocCount(); + method @Deprecated public static void resetGlobalAllocSize(); + method @Deprecated public static void resetGlobalClassInitCount(); + method @Deprecated public static void resetGlobalClassInitTime(); + method @Deprecated public static void resetGlobalExternalAllocCount(); + method @Deprecated public static void resetGlobalExternalAllocSize(); + method @Deprecated public static void resetGlobalExternalFreedCount(); + method @Deprecated public static void resetGlobalExternalFreedSize(); + method @Deprecated public static void resetGlobalFreedCount(); + method @Deprecated public static void resetGlobalFreedSize(); + method @Deprecated public static void resetGlobalGcInvocationCount(); + method @Deprecated public static void resetThreadAllocCount(); + method @Deprecated public static void resetThreadAllocSize(); + method @Deprecated public static void resetThreadExternalAllocCount(); + method @Deprecated public static void resetThreadExternalAllocSize(); + method @Deprecated public static void resetThreadGcInvocationCount(); + method @Deprecated public static int setAllocationLimit(int); + method @Deprecated public static int setGlobalAllocationLimit(int); + method @Deprecated public static void startAllocCounting(); + method public static void startMethodTracing(); + method public static void startMethodTracing(String); + method public static void startMethodTracing(String, int); + method public static void startMethodTracing(String, int, int); + method public static void startMethodTracingSampling(String, int, int); + method public static void startNativeTracing(); + method @Deprecated public static void stopAllocCounting(); + method public static void stopMethodTracing(); + method public static void stopNativeTracing(); + method public static long threadCpuTimeNanos(); + method public static void waitForDebugger(); + method public static boolean waitingForDebugger(); + field public static final int SHOW_CLASSLOADER = 2; // 0x2 + field public static final int SHOW_FULL_DETAIL = 1; // 0x1 + field public static final int SHOW_INITIALIZED = 4; // 0x4 + field @Deprecated public static final int TRACE_COUNT_ALLOCS = 1; // 0x1 + } + + @Deprecated public static class Debug.InstructionCount { + ctor @Deprecated public Debug.InstructionCount(); + method @Deprecated public boolean collect(); + method @Deprecated public int globalMethodInvocations(); + method @Deprecated public int globalTotal(); + method @Deprecated public boolean resetAndStart(); + } + + public static class Debug.MemoryInfo implements android.os.Parcelable { + ctor public Debug.MemoryInfo(); + method public int describeContents(); + method public String getMemoryStat(String); + method public java.util.Map getMemoryStats(); + method public int getTotalPrivateClean(); + method public int getTotalPrivateDirty(); + method public int getTotalPss(); + method public int getTotalSharedClean(); + method public int getTotalSharedDirty(); + method public int getTotalSwappablePss(); + method public void readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public int dalvikPrivateDirty; + field public int dalvikPss; + field public int dalvikSharedDirty; + field public int nativePrivateDirty; + field public int nativePss; + field public int nativeSharedDirty; + field public int otherPrivateDirty; + field public int otherPss; + field public int otherSharedDirty; + } + + public class DropBoxManager { + ctor protected DropBoxManager(); + method public void addData(@NonNull String, @Nullable byte[], int); + method public void addFile(@NonNull String, @NonNull java.io.File, int) throws java.io.IOException; + method public void addText(@NonNull String, @NonNull String); + method @Nullable @RequiresPermission(allOf={android.Manifest.permission.READ_DROPBOX_DATA, android.Manifest.permission.PACKAGE_USAGE_STATS}) public android.os.DropBoxManager.Entry getNextEntry(String, long); + method public boolean isTagEnabled(String); + field public static final String ACTION_DROPBOX_ENTRY_ADDED = "android.intent.action.DROPBOX_ENTRY_ADDED"; + field public static final String EXTRA_DROPPED_COUNT = "android.os.extra.DROPPED_COUNT"; + field public static final String EXTRA_TAG = "tag"; + field public static final String EXTRA_TIME = "time"; + field public static final int IS_EMPTY = 1; // 0x1 + field public static final int IS_GZIPPED = 4; // 0x4 + field public static final int IS_TEXT = 2; // 0x2 + } + + public static class DropBoxManager.Entry implements java.io.Closeable android.os.Parcelable { + ctor public DropBoxManager.Entry(@NonNull String, long); + ctor public DropBoxManager.Entry(@NonNull String, long, @NonNull String); + ctor public DropBoxManager.Entry(@NonNull String, long, @Nullable byte[], int); + ctor public DropBoxManager.Entry(@NonNull String, long, @Nullable android.os.ParcelFileDescriptor, int); + ctor public DropBoxManager.Entry(@NonNull String, long, @NonNull java.io.File, int) throws java.io.IOException; + method public void close(); + method public int describeContents(); + method public int getFlags(); + method @Nullable public java.io.InputStream getInputStream() throws java.io.IOException; + method @NonNull public String getTag(); + method @Nullable public String getText(int); + method public long getTimeMillis(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class Environment { + ctor public Environment(); + method public static java.io.File getDataDirectory(); + method public static java.io.File getDownloadCacheDirectory(); + method public static java.io.File getExternalStorageDirectory(); + method public static java.io.File getExternalStoragePublicDirectory(String); + method public static String getExternalStorageState(); + method public static String getExternalStorageState(java.io.File); + method @NonNull public static java.io.File getRootDirectory(); + method @NonNull public static java.io.File getStorageDirectory(); + method @Deprecated public static String getStorageState(java.io.File); + method public static boolean isExternalStorageEmulated(); + method public static boolean isExternalStorageEmulated(@NonNull java.io.File); + method public static boolean isExternalStorageLegacy(); + method public static boolean isExternalStorageLegacy(@NonNull java.io.File); + method public static boolean isExternalStorageManager(); + method public static boolean isExternalStorageManager(@NonNull java.io.File); + method public static boolean isExternalStorageRemovable(); + method public static boolean isExternalStorageRemovable(@NonNull java.io.File); + field public static String DIRECTORY_ALARMS; + field public static String DIRECTORY_AUDIOBOOKS; + field public static String DIRECTORY_DCIM; + field public static String DIRECTORY_DOCUMENTS; + field public static String DIRECTORY_DOWNLOADS; + field public static String DIRECTORY_MOVIES; + field public static String DIRECTORY_MUSIC; + field public static String DIRECTORY_NOTIFICATIONS; + field public static String DIRECTORY_PICTURES; + field public static String DIRECTORY_PODCASTS; + field @NonNull public static String DIRECTORY_RECORDINGS; + field public static String DIRECTORY_RINGTONES; + field public static String DIRECTORY_SCREENSHOTS; + field public static final String MEDIA_BAD_REMOVAL = "bad_removal"; + field public static final String MEDIA_CHECKING = "checking"; + field public static final String MEDIA_EJECTING = "ejecting"; + field public static final String MEDIA_MOUNTED = "mounted"; + field public static final String MEDIA_MOUNTED_READ_ONLY = "mounted_ro"; + field public static final String MEDIA_NOFS = "nofs"; + field public static final String MEDIA_REMOVED = "removed"; + field public static final String MEDIA_SHARED = "shared"; + field public static final String MEDIA_UNKNOWN = "unknown"; + field public static final String MEDIA_UNMOUNTABLE = "unmountable"; + field public static final String MEDIA_UNMOUNTED = "unmounted"; + } + + public abstract class FileObserver { + ctor @Deprecated public FileObserver(String); + ctor public FileObserver(@NonNull java.io.File); + ctor public FileObserver(@NonNull java.util.List); + ctor @Deprecated public FileObserver(String, int); + ctor public FileObserver(@NonNull java.io.File, int); + ctor public FileObserver(@NonNull java.util.List, int); + method protected void finalize(); + method public abstract void onEvent(int, @Nullable String); + method public void startWatching(); + method public void stopWatching(); + field public static final int ACCESS = 1; // 0x1 + field public static final int ALL_EVENTS = 4095; // 0xfff + field public static final int ATTRIB = 4; // 0x4 + field public static final int CLOSE_NOWRITE = 16; // 0x10 + field public static final int CLOSE_WRITE = 8; // 0x8 + field public static final int CREATE = 256; // 0x100 + field public static final int DELETE = 512; // 0x200 + field public static final int DELETE_SELF = 1024; // 0x400 + field public static final int MODIFY = 2; // 0x2 + field public static final int MOVED_FROM = 64; // 0x40 + field public static final int MOVED_TO = 128; // 0x80 + field public static final int MOVE_SELF = 2048; // 0x800 + field public static final int OPEN = 32; // 0x20 + } + + public class FileUriExposedException extends java.lang.RuntimeException { + ctor public FileUriExposedException(String); + } + + public final class FileUtils { + method @Deprecated public static void closeQuietly(@Nullable AutoCloseable); + method @Deprecated public static void closeQuietly(@Nullable java.io.FileDescriptor); + method public static long copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream) throws java.io.IOException; + method public static long copy(@NonNull java.io.InputStream, @NonNull java.io.OutputStream, @Nullable android.os.CancellationSignal, @Nullable java.util.concurrent.Executor, @Nullable android.os.FileUtils.ProgressListener) throws java.io.IOException; + method public static long copy(@NonNull java.io.FileDescriptor, @NonNull java.io.FileDescriptor) throws java.io.IOException; + method public static long copy(@NonNull java.io.FileDescriptor, @NonNull java.io.FileDescriptor, @Nullable android.os.CancellationSignal, @Nullable java.util.concurrent.Executor, @Nullable android.os.FileUtils.ProgressListener) throws java.io.IOException; + } + + public static interface FileUtils.ProgressListener { + method public void onProgress(long); + } + + @FlaggedApi("android.os.cpu_gpu_headrooms") public final class GpuHeadroomParams { + ctor public GpuHeadroomParams(); + method public int getCalculationType(); + method @IntRange(from=0x32, to=0x2710) public int getCalculationWindowMillis(); + method public void setCalculationType(int); + method public void setCalculationWindowMillis(@IntRange(from=0x32, to=0x2710) int); + field public static final int GPU_HEADROOM_CALCULATION_TYPE_AVERAGE = 1; // 0x1 + field public static final int GPU_HEADROOM_CALCULATION_TYPE_MIN = 0; // 0x0 + } + + public class Handler { + ctor @Deprecated public Handler(); + ctor @Deprecated public Handler(@Nullable android.os.Handler.Callback); + ctor public Handler(@NonNull android.os.Looper); + ctor public Handler(@NonNull android.os.Looper, @Nullable android.os.Handler.Callback); + method @NonNull public static android.os.Handler createAsync(@NonNull android.os.Looper); + method @NonNull public static android.os.Handler createAsync(@NonNull android.os.Looper, @NonNull android.os.Handler.Callback); + method public void dispatchMessage(@NonNull android.os.Message); + method public final void dump(@NonNull android.util.Printer, @NonNull String); + method @NonNull public final android.os.Looper getLooper(); + method @NonNull public String getMessageName(@NonNull android.os.Message); + method public void handleMessage(@NonNull android.os.Message); + method public final boolean hasCallbacks(@NonNull Runnable); + method public final boolean hasMessages(int); + method public final boolean hasMessages(int, @Nullable Object); + method @NonNull public final android.os.Message obtainMessage(); + method @NonNull public final android.os.Message obtainMessage(int); + method @NonNull public final android.os.Message obtainMessage(int, @Nullable Object); + method @NonNull public final android.os.Message obtainMessage(int, int, int); + method @NonNull public final android.os.Message obtainMessage(int, int, int, @Nullable Object); + method public final boolean post(@NonNull Runnable); + method public final boolean postAtFrontOfQueue(@NonNull Runnable); + method public final boolean postAtTime(@NonNull Runnable, long); + method public final boolean postAtTime(@NonNull Runnable, @Nullable Object, long); + method public final boolean postDelayed(@NonNull Runnable, long); + method public final boolean postDelayed(@NonNull Runnable, @Nullable Object, long); + method public final void removeCallbacks(@NonNull Runnable); + method public final void removeCallbacks(@NonNull Runnable, @Nullable Object); + method public final void removeCallbacksAndMessages(@Nullable Object); + method public final void removeMessages(int); + method public final void removeMessages(int, @Nullable Object); + method public final boolean sendEmptyMessage(int); + method public final boolean sendEmptyMessageAtTime(int, long); + method public final boolean sendEmptyMessageDelayed(int, long); + method public final boolean sendMessage(@NonNull android.os.Message); + method public final boolean sendMessageAtFrontOfQueue(@NonNull android.os.Message); + method public boolean sendMessageAtTime(@NonNull android.os.Message, long); + method public final boolean sendMessageDelayed(@NonNull android.os.Message, long); + } + + public static interface Handler.Callback { + method public boolean handleMessage(@NonNull android.os.Message); + } + + public class HandlerThread extends java.lang.Thread { + ctor public HandlerThread(String); + ctor public HandlerThread(String, int); + method public android.os.Looper getLooper(); + method public int getThreadId(); + method protected void onLooperPrepared(); + method public boolean quit(); + method public boolean quitSafely(); + } + + public class HardwarePropertiesManager { + method @NonNull public android.os.CpuUsageInfo[] getCpuUsages(); + method @NonNull public float[] getDeviceTemperatures(int, int); + method @NonNull public float[] getFanSpeeds(); + field public static final int DEVICE_TEMPERATURE_BATTERY = 2; // 0x2 + field public static final int DEVICE_TEMPERATURE_CPU = 0; // 0x0 + field public static final int DEVICE_TEMPERATURE_GPU = 1; // 0x1 + field public static final int DEVICE_TEMPERATURE_SKIN = 3; // 0x3 + field public static final int TEMPERATURE_CURRENT = 0; // 0x0 + field public static final int TEMPERATURE_SHUTDOWN = 2; // 0x2 + field public static final int TEMPERATURE_THROTTLING = 1; // 0x1 + field public static final int TEMPERATURE_THROTTLING_BELOW_VR_MIN = 3; // 0x3 + field public static final float UNDEFINED_TEMPERATURE = -3.4028235E38f; + } + + public interface IBinder { + method @FlaggedApi("android.os.binder_frozen_state_change_callback") public default void addFrozenStateChangeCallback(@NonNull java.util.concurrent.Executor, @NonNull android.os.IBinder.FrozenStateChangeCallback) throws android.os.RemoteException; + method public void dump(@NonNull java.io.FileDescriptor, @Nullable String[]) throws android.os.RemoteException; + method public void dumpAsync(@NonNull java.io.FileDescriptor, @Nullable String[]) throws android.os.RemoteException; + method @Nullable public String getInterfaceDescriptor() throws android.os.RemoteException; + method public static int getSuggestedMaxIpcSizeBytes(); + method public boolean isBinderAlive(); + method public void linkToDeath(@NonNull android.os.IBinder.DeathRecipient, int) throws android.os.RemoteException; + method public boolean pingBinder(); + method @Nullable public android.os.IInterface queryLocalInterface(@NonNull String); + method @FlaggedApi("android.os.binder_frozen_state_change_callback") public default boolean removeFrozenStateChangeCallback(@NonNull android.os.IBinder.FrozenStateChangeCallback); + method public boolean transact(int, @NonNull android.os.Parcel, @Nullable android.os.Parcel, int) throws android.os.RemoteException; + method public boolean unlinkToDeath(@NonNull android.os.IBinder.DeathRecipient, int); + field public static final int DUMP_TRANSACTION = 1598311760; // 0x5f444d50 + field public static final int FIRST_CALL_TRANSACTION = 1; // 0x1 + field public static final int FLAG_ONEWAY = 1; // 0x1 + field public static final int INTERFACE_TRANSACTION = 1598968902; // 0x5f4e5446 + field public static final int LAST_CALL_TRANSACTION = 16777215; // 0xffffff + field public static final int LIKE_TRANSACTION = 1598835019; // 0x5f4c494b + field public static final int PING_TRANSACTION = 1599098439; // 0x5f504e47 + field public static final int TWEET_TRANSACTION = 1599362900; // 0x5f545754 + } + + public static interface IBinder.DeathRecipient { + method public void binderDied(); + method public default void binderDied(@NonNull android.os.IBinder); + } + + @FlaggedApi("android.os.binder_frozen_state_change_callback") public static interface IBinder.FrozenStateChangeCallback { + method public void onFrozenStateChanged(@NonNull android.os.IBinder, int); + field public static final int STATE_FROZEN = 0; // 0x0 + field public static final int STATE_UNFROZEN = 1; // 0x1 + } + + public interface IInterface { + method public android.os.IBinder asBinder(); + } + + public class LimitExceededException extends java.lang.IllegalStateException { + ctor public LimitExceededException(); + ctor public LimitExceededException(@NonNull String); + } + + public final class LocaleList implements android.os.Parcelable { + ctor public LocaleList(@NonNull java.util.Locale...); + method public int describeContents(); + method @NonNull public static android.os.LocaleList forLanguageTags(@Nullable String); + method public java.util.Locale get(int); + method @NonNull @Size(min=1) public static android.os.LocaleList getAdjustedDefault(); + method @NonNull @Size(min=1) public static android.os.LocaleList getDefault(); + method @NonNull public static android.os.LocaleList getEmptyLocaleList(); + method @Nullable public java.util.Locale getFirstMatch(String[]); + method @IntRange(from=0xffffffff) public int indexOf(java.util.Locale); + method public boolean isEmpty(); + method public static boolean isPseudoLocale(@Nullable android.icu.util.ULocale); + method public static boolean matchesLanguageAndScript(@NonNull java.util.Locale, @NonNull java.util.Locale); + method public static void setDefault(@NonNull @Size(min=1) android.os.LocaleList); + method @IntRange(from=0) public int size(); + method @NonNull public String toLanguageTags(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class Looper { + method public void dump(@NonNull android.util.Printer, @NonNull String); + method public static android.os.Looper getMainLooper(); + method @NonNull public android.os.MessageQueue getQueue(); + method @NonNull public Thread getThread(); + method public boolean isCurrentThread(); + method public static void loop(); + method @Nullable public static android.os.Looper myLooper(); + method @NonNull public static android.os.MessageQueue myQueue(); + method public static void prepare(); + method @Deprecated public static void prepareMainLooper(); + method public void quit(); + method public void quitSafely(); + method public void setMessageLogging(@Nullable android.util.Printer); + } + + public class MemoryFile { + ctor public MemoryFile(String, int) throws java.io.IOException; + method @Deprecated public boolean allowPurging(boolean) throws java.io.IOException; + method public void close(); + method public java.io.InputStream getInputStream(); + method public java.io.OutputStream getOutputStream(); + method @Deprecated public boolean isPurgingAllowed(); + method public int length(); + method public int readBytes(byte[], int, int, int) throws java.io.IOException; + method public void writeBytes(byte[], int, int, int) throws java.io.IOException; + } + + public final class Message implements android.os.Parcelable { + ctor public Message(); + method public void copyFrom(android.os.Message); + method public int describeContents(); + method public Runnable getCallback(); + method public android.os.Bundle getData(); + method public android.os.Handler getTarget(); + method public long getWhen(); + method public boolean isAsynchronous(); + method public static android.os.Message obtain(); + method public static android.os.Message obtain(android.os.Message); + method public static android.os.Message obtain(android.os.Handler); + method public static android.os.Message obtain(android.os.Handler, Runnable); + method public static android.os.Message obtain(android.os.Handler, int); + method public static android.os.Message obtain(android.os.Handler, int, Object); + method public static android.os.Message obtain(android.os.Handler, int, int, int); + method public static android.os.Message obtain(android.os.Handler, int, int, int, Object); + method @Nullable public android.os.Bundle peekData(); + method public void recycle(); + method public void sendToTarget(); + method public void setAsynchronous(boolean); + method public void setData(android.os.Bundle); + method public void setTarget(android.os.Handler); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public int arg1; + field public int arg2; + field public Object obj; + field public android.os.Messenger replyTo; + field public int sendingUid; + field public int what; + } + + public final class MessageQueue { + method public void addIdleHandler(@NonNull android.os.MessageQueue.IdleHandler); + method public void addOnFileDescriptorEventListener(@NonNull java.io.FileDescriptor, int, @NonNull android.os.MessageQueue.OnFileDescriptorEventListener); + method public boolean isIdle(); + method public void removeIdleHandler(@NonNull android.os.MessageQueue.IdleHandler); + method public void removeOnFileDescriptorEventListener(@NonNull java.io.FileDescriptor); + } + + public static interface MessageQueue.IdleHandler { + method public boolean queueIdle(); + } + + public static interface MessageQueue.OnFileDescriptorEventListener { + method public int onFileDescriptorEvents(@NonNull java.io.FileDescriptor, int); + field public static final int EVENT_ERROR = 4; // 0x4 + field public static final int EVENT_INPUT = 1; // 0x1 + field public static final int EVENT_OUTPUT = 2; // 0x2 + } + + public final class Messenger implements android.os.Parcelable { + ctor public Messenger(android.os.Handler); + ctor public Messenger(android.os.IBinder); + method public int describeContents(); + method public android.os.IBinder getBinder(); + method public static android.os.Messenger readMessengerOrNullFromParcel(android.os.Parcel); + method public void send(android.os.Message) throws android.os.RemoteException; + method public static void writeMessengerOrNullToParcel(android.os.Messenger, android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class NetworkOnMainThreadException extends java.lang.RuntimeException { + ctor public NetworkOnMainThreadException(); + } + + public class OperationCanceledException extends java.lang.RuntimeException { + ctor public OperationCanceledException(); + ctor public OperationCanceledException(String); + } + + public interface OutcomeReceiver { + method public default void onError(@NonNull E); + method public void onResult(R); + } + + public final class Parcel { + method public void appendFrom(android.os.Parcel, int, int); + method @Nullable public android.os.IBinder[] createBinderArray(); + method @Nullable public java.util.ArrayList createBinderArrayList(); + method @Nullable public boolean[] createBooleanArray(); + method @Nullable public byte[] createByteArray(); + method @Nullable public char[] createCharArray(); + method @Nullable public double[] createDoubleArray(); + method @Nullable public T createFixedArray(@NonNull Class, @NonNull int...); + method @Nullable public T createFixedArray(@NonNull Class, @NonNull java.util.function.Function, @NonNull int...); + method @Nullable public T createFixedArray(@NonNull Class, @NonNull android.os.Parcelable.Creator, @NonNull int...); + method @Nullable public float[] createFloatArray(); + method @Nullable public int[] createIntArray(); + method @Nullable public T[] createInterfaceArray(@NonNull java.util.function.IntFunction, @NonNull java.util.function.Function); + method @Nullable public java.util.ArrayList createInterfaceArrayList(@NonNull java.util.function.Function); + method @Nullable public long[] createLongArray(); + method @Nullable public String[] createStringArray(); + method @Nullable public java.util.ArrayList createStringArrayList(); + method @Nullable public T[] createTypedArray(@NonNull android.os.Parcelable.Creator); + method @Nullable public java.util.ArrayList createTypedArrayList(@NonNull android.os.Parcelable.Creator); + method @Nullable public android.util.ArrayMap createTypedArrayMap(@NonNull android.os.Parcelable.Creator); + method @Nullable public android.util.SparseArray createTypedSparseArray(@NonNull android.os.Parcelable.Creator); + method public int dataAvail(); + method public int dataCapacity(); + method public int dataPosition(); + method public int dataSize(); + method public void enforceInterface(@NonNull String); + method public void enforceNoDataAvail(); + method public boolean hasFileDescriptors(); + method public boolean hasFileDescriptors(int, int); + method public byte[] marshall(); + method @NonNull public static android.os.Parcel obtain(); + method @NonNull public static android.os.Parcel obtain(@NonNull android.os.IBinder); + method @Deprecated @Nullable public Object[] readArray(@Nullable ClassLoader); + method @Nullable public T[] readArray(@Nullable ClassLoader, @NonNull Class); + method @Deprecated @Nullable public java.util.ArrayList readArrayList(@Nullable ClassLoader); + method @Nullable public java.util.ArrayList readArrayList(@Nullable ClassLoader, @NonNull Class); + method public void readBinderArray(@NonNull android.os.IBinder[]); + method public void readBinderList(@NonNull java.util.List); + method @Nullable public byte[] readBlob(); + method public boolean readBoolean(); + method public void readBooleanArray(@NonNull boolean[]); + method @Nullable public android.os.Bundle readBundle(); + method @Nullable public android.os.Bundle readBundle(@Nullable ClassLoader); + method public byte readByte(); + method public void readByteArray(@NonNull byte[]); + method public void readCharArray(@NonNull char[]); + method public double readDouble(); + method public void readDoubleArray(@NonNull double[]); + method public void readException(); + method public void readException(int, String); + method public android.os.ParcelFileDescriptor readFileDescriptor(); + method public void readFixedArray(@NonNull T); + method public void readFixedArray(@NonNull T, @NonNull java.util.function.Function); + method public void readFixedArray(@NonNull T, @NonNull android.os.Parcelable.Creator); + method public float readFloat(); + method public void readFloatArray(@NonNull float[]); + method @Deprecated @Nullable public java.util.HashMap readHashMap(@Nullable ClassLoader); + method @Nullable public java.util.HashMap readHashMap(@Nullable ClassLoader, @NonNull Class, @NonNull Class); + method public int readInt(); + method public void readIntArray(@NonNull int[]); + method public void readInterfaceArray(@NonNull T[], @NonNull java.util.function.Function); + method public void readInterfaceList(@NonNull java.util.List, @NonNull java.util.function.Function); + method @Deprecated public void readList(@NonNull java.util.List, @Nullable ClassLoader); + method public void readList(@NonNull java.util.List, @Nullable ClassLoader, @NonNull Class); + method public long readLong(); + method public void readLongArray(@NonNull long[]); + method @Deprecated public void readMap(@NonNull java.util.Map, @Nullable ClassLoader); + method public void readMap(@NonNull java.util.Map, @Nullable ClassLoader, @NonNull Class, @NonNull Class); + method @Deprecated @Nullable public T readParcelable(@Nullable ClassLoader); + method @Nullable public T readParcelable(@Nullable ClassLoader, @NonNull Class); + method @Deprecated @Nullable public android.os.Parcelable[] readParcelableArray(@Nullable ClassLoader); + method @Nullable public T[] readParcelableArray(@Nullable ClassLoader, @NonNull Class); + method @Deprecated @Nullable public android.os.Parcelable.Creator readParcelableCreator(@Nullable ClassLoader); + method @Nullable public android.os.Parcelable.Creator readParcelableCreator(@Nullable ClassLoader, @NonNull Class); + method @Deprecated @NonNull public java.util.List readParcelableList(@NonNull java.util.List, @Nullable ClassLoader); + method @NonNull public java.util.List readParcelableList(@NonNull java.util.List, @Nullable ClassLoader, @NonNull Class); + method @Nullable public android.os.PersistableBundle readPersistableBundle(); + method @Nullable public android.os.PersistableBundle readPersistableBundle(@Nullable ClassLoader); + method @Deprecated @Nullable public java.io.Serializable readSerializable(); + method @Nullable public T readSerializable(@Nullable ClassLoader, @NonNull Class); + method @NonNull public android.util.Size readSize(); + method @NonNull public android.util.SizeF readSizeF(); + method @Deprecated @Nullable public android.util.SparseArray readSparseArray(@Nullable ClassLoader); + method @Nullable public android.util.SparseArray readSparseArray(@Nullable ClassLoader, @NonNull Class); + method @Nullable public android.util.SparseBooleanArray readSparseBooleanArray(); + method @Nullable public String readString(); + method public void readStringArray(@NonNull String[]); + method public void readStringList(@NonNull java.util.List); + method public android.os.IBinder readStrongBinder(); + method public void readTypedArray(@NonNull T[], @NonNull android.os.Parcelable.Creator); + method public void readTypedList(@NonNull java.util.List, @NonNull android.os.Parcelable.Creator); + method @Nullable public T readTypedObject(@NonNull android.os.Parcelable.Creator); + method @Nullable public Object readValue(@Nullable ClassLoader); + method public void recycle(); + method public void setDataCapacity(int); + method public void setDataPosition(int); + method public void setDataSize(int); + method public void setPropagateAllowBlocking(); + method public void unmarshall(@NonNull byte[], int, int); + method public void writeArray(@Nullable Object[]); + method public void writeBinderArray(@Nullable android.os.IBinder[]); + method public void writeBinderList(@Nullable java.util.List); + method public void writeBlob(@Nullable byte[]); + method public void writeBlob(@Nullable byte[], int, int); + method public void writeBoolean(boolean); + method public void writeBooleanArray(@Nullable boolean[]); + method public void writeBundle(@Nullable android.os.Bundle); + method public void writeByte(byte); + method public void writeByteArray(@Nullable byte[]); + method public void writeByteArray(@Nullable byte[], int, int); + method public void writeCharArray(@Nullable char[]); + method public void writeDouble(double); + method public void writeDoubleArray(@Nullable double[]); + method public void writeException(@NonNull Exception); + method public void writeFileDescriptor(@NonNull java.io.FileDescriptor); + method public void writeFixedArray(@Nullable T, int, @NonNull int...); + method public void writeFloat(float); + method public void writeFloatArray(@Nullable float[]); + method public void writeInt(int); + method public void writeIntArray(@Nullable int[]); + method public void writeInterfaceArray(@Nullable T[]); + method public void writeInterfaceList(@Nullable java.util.List); + method public void writeInterfaceToken(@NonNull String); + method public void writeList(@Nullable java.util.List); + method public void writeLong(long); + method public void writeLongArray(@Nullable long[]); + method public void writeMap(@Nullable java.util.Map); + method public void writeNoException(); + method public void writeParcelable(@Nullable android.os.Parcelable, int); + method public void writeParcelableArray(@Nullable T[], int); + method public void writeParcelableCreator(@NonNull android.os.Parcelable); + method public void writeParcelableList(@Nullable java.util.List, int); + method public void writePersistableBundle(@Nullable android.os.PersistableBundle); + method public void writeSerializable(@Nullable java.io.Serializable); + method public void writeSize(@NonNull android.util.Size); + method public void writeSizeF(@NonNull android.util.SizeF); + method public void writeSparseArray(@Nullable android.util.SparseArray); + method public void writeSparseBooleanArray(@Nullable android.util.SparseBooleanArray); + method public void writeString(@Nullable String); + method public void writeStringArray(@Nullable String[]); + method public void writeStringList(@Nullable java.util.List); + method public void writeStrongBinder(android.os.IBinder); + method public void writeStrongInterface(android.os.IInterface); + method public void writeTypedArray(@Nullable T[], int); + method public void writeTypedArrayMap(@Nullable android.util.ArrayMap, int); + method public void writeTypedList(@Nullable java.util.List); + method public void writeTypedList(@Nullable java.util.List, int); + method public void writeTypedObject(@Nullable T, int); + method public void writeTypedSparseArray(@Nullable android.util.SparseArray, int); + method public void writeValue(@Nullable Object); + field public static final android.os.Parcelable.Creator STRING_CREATOR; + } + + public class ParcelFileDescriptor implements java.io.Closeable android.os.Parcelable { + ctor public ParcelFileDescriptor(android.os.ParcelFileDescriptor); + method public static android.os.ParcelFileDescriptor adoptFd(int); + method public boolean canDetectErrors(); + method public void checkError() throws java.io.IOException; + method public void close() throws java.io.IOException; + method public void closeWithError(String) throws java.io.IOException; + method public static android.os.ParcelFileDescriptor[] createPipe() throws java.io.IOException; + method public static android.os.ParcelFileDescriptor[] createReliablePipe() throws java.io.IOException; + method public static android.os.ParcelFileDescriptor[] createReliableSocketPair() throws java.io.IOException; + method public static android.os.ParcelFileDescriptor[] createSocketPair() throws java.io.IOException; + method public int describeContents(); + method public int detachFd(); + method public static android.os.ParcelFileDescriptor dup(java.io.FileDescriptor) throws java.io.IOException; + method public android.os.ParcelFileDescriptor dup() throws java.io.IOException; + method public static android.os.ParcelFileDescriptor fromDatagramSocket(java.net.DatagramSocket); + method public static android.os.ParcelFileDescriptor fromFd(int) throws java.io.IOException; + method public static android.os.ParcelFileDescriptor fromSocket(java.net.Socket); + method public int getFd(); + method public java.io.FileDescriptor getFileDescriptor(); + method public long getStatSize(); + method public static android.os.ParcelFileDescriptor open(java.io.File, int) throws java.io.FileNotFoundException; + method public static android.os.ParcelFileDescriptor open(java.io.File, int, android.os.Handler, android.os.ParcelFileDescriptor.OnCloseListener) throws java.io.IOException; + method public static int parseMode(String); + method @NonNull public static android.os.ParcelFileDescriptor wrap(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.Handler, @NonNull android.os.ParcelFileDescriptor.OnCloseListener) throws java.io.IOException; + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int MODE_APPEND = 33554432; // 0x2000000 + field public static final int MODE_CREATE = 134217728; // 0x8000000 + field public static final int MODE_READ_ONLY = 268435456; // 0x10000000 + field public static final int MODE_READ_WRITE = 805306368; // 0x30000000 + field public static final int MODE_TRUNCATE = 67108864; // 0x4000000 + field @Deprecated public static final int MODE_WORLD_READABLE = 1; // 0x1 + field @Deprecated public static final int MODE_WORLD_WRITEABLE = 2; // 0x2 + field public static final int MODE_WRITE_ONLY = 536870912; // 0x20000000 + } + + public static class ParcelFileDescriptor.AutoCloseInputStream extends java.io.FileInputStream { + ctor public ParcelFileDescriptor.AutoCloseInputStream(android.os.ParcelFileDescriptor); + } + + public static class ParcelFileDescriptor.AutoCloseOutputStream extends java.io.FileOutputStream { + ctor public ParcelFileDescriptor.AutoCloseOutputStream(android.os.ParcelFileDescriptor); + } + + public static class ParcelFileDescriptor.FileDescriptorDetachedException extends java.io.IOException { + ctor public ParcelFileDescriptor.FileDescriptorDetachedException(); + } + + public static interface ParcelFileDescriptor.OnCloseListener { + method public void onClose(java.io.IOException); + } + + public class ParcelFormatException extends java.lang.RuntimeException { + ctor public ParcelFormatException(); + ctor public ParcelFormatException(String); + } + + public final class ParcelUuid implements android.os.Parcelable { + ctor public ParcelUuid(java.util.UUID); + method public int describeContents(); + method public static android.os.ParcelUuid fromString(String); + method public java.util.UUID getUuid(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface Parcelable { + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CONTENTS_FILE_DESCRIPTOR = 1; // 0x1 + field public static final int PARCELABLE_WRITE_RETURN_VALUE = 1; // 0x1 + } + + public static interface Parcelable.ClassLoaderCreator extends android.os.Parcelable.Creator { + method public T createFromParcel(android.os.Parcel, ClassLoader); + } + + public static interface Parcelable.Creator { + method public T createFromParcel(android.os.Parcel); + method public T[] newArray(int); + } + + public class PatternMatcher implements android.os.Parcelable { + ctor public PatternMatcher(String, int); + ctor public PatternMatcher(android.os.Parcel); + method public int describeContents(); + method public final String getPath(); + method public final int getType(); + method public boolean match(String); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int PATTERN_ADVANCED_GLOB = 3; // 0x3 + field public static final int PATTERN_LITERAL = 0; // 0x0 + field public static final int PATTERN_PREFIX = 1; // 0x1 + field public static final int PATTERN_SIMPLE_GLOB = 2; // 0x2 + field public static final int PATTERN_SUFFIX = 4; // 0x4 + } + + public final class PerformanceHintManager { + method @Nullable public android.os.PerformanceHintManager.Session createHintSession(@NonNull int[], long); + method public long getPreferredUpdateRateNanos(); + } + + public static class PerformanceHintManager.Session implements java.io.Closeable { + method public void close(); + method public void reportActualWorkDuration(long); + method @FlaggedApi("android.os.adpf_gpu_report_actual_work_duration") public void reportActualWorkDuration(@NonNull android.os.WorkDuration); + method @FlaggedApi("android.os.adpf_prefer_power_efficiency") public void setPreferPowerEfficiency(boolean); + method public void setThreads(@NonNull int[]); + method public void updateTargetWorkDuration(long); + } + + public final class PersistableBundle extends android.os.BaseBundle implements java.lang.Cloneable android.os.Parcelable { + ctor public PersistableBundle(); + ctor public PersistableBundle(int); + ctor public PersistableBundle(android.os.PersistableBundle); + method public Object clone(); + method public android.os.PersistableBundle deepCopy(); + method public int describeContents(); + method @Nullable public android.os.PersistableBundle getPersistableBundle(@Nullable String); + method public void putPersistableBundle(@Nullable String, @Nullable android.os.PersistableBundle); + method @NonNull public static android.os.PersistableBundle readFromStream(@NonNull java.io.InputStream) throws java.io.IOException; + method public void writeToParcel(android.os.Parcel, int); + method public void writeToStream(@NonNull java.io.OutputStream) throws java.io.IOException; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final android.os.PersistableBundle EMPTY; + } + + public final class PowerManager { + method @FlaggedApi("android.os.allow_thermal_thresholds_callback") public void addThermalHeadroomListener(@NonNull android.os.PowerManager.OnThermalHeadroomChangedListener); + method @FlaggedApi("android.os.allow_thermal_thresholds_callback") public void addThermalHeadroomListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.PowerManager.OnThermalHeadroomChangedListener); + method public void addThermalStatusListener(@NonNull android.os.PowerManager.OnThermalStatusChangedListener); + method public void addThermalStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.PowerManager.OnThermalStatusChangedListener); + method @Nullable public java.time.Duration getBatteryDischargePrediction(); + method public int getCurrentThermalStatus(); + method public int getLocationPowerSaveMode(); + method @FloatRange(from=0.0f) public float getThermalHeadroom(@IntRange(from=0, to=60) int); + method @FlaggedApi("android.os.allow_thermal_headroom_thresholds") @NonNull public java.util.Map getThermalHeadroomThresholds(); + method public boolean isAllowedInLowPowerStandby(int); + method public boolean isAllowedInLowPowerStandby(@NonNull String); + method public boolean isBatteryDischargePredictionPersonalized(); + method public boolean isDeviceIdleMode(); + method public boolean isDeviceLightIdleMode(); + method public boolean isExemptFromLowPowerStandby(); + method public boolean isIgnoringBatteryOptimizations(String); + method public boolean isInteractive(); + method public boolean isLowPowerStandbyEnabled(); + method public boolean isPowerSaveMode(); + method @Deprecated public boolean isRebootingUserspaceSupported(); + method @Deprecated public boolean isScreenOn(); + method public boolean isSustainedPerformanceModeSupported(); + method public boolean isWakeLockLevelSupported(int); + method public android.os.PowerManager.WakeLock newWakeLock(int, String); + method @RequiresPermission(android.Manifest.permission.REBOOT) public void reboot(@Nullable String); + method @FlaggedApi("android.os.allow_thermal_thresholds_callback") public void removeThermalHeadroomListener(@NonNull android.os.PowerManager.OnThermalHeadroomChangedListener); + method public void removeThermalStatusListener(@NonNull android.os.PowerManager.OnThermalStatusChangedListener); + field @Deprecated @RequiresPermission(value=android.Manifest.permission.TURN_SCREEN_ON, conditional=true) public static final int ACQUIRE_CAUSES_WAKEUP = 268435456; // 0x10000000 + field public static final String ACTION_DEVICE_IDLE_MODE_CHANGED = "android.os.action.DEVICE_IDLE_MODE_CHANGED"; + field public static final String ACTION_DEVICE_LIGHT_IDLE_MODE_CHANGED = "android.os.action.LIGHT_DEVICE_IDLE_MODE_CHANGED"; + field public static final String ACTION_LOW_POWER_STANDBY_ENABLED_CHANGED = "android.os.action.LOW_POWER_STANDBY_ENABLED_CHANGED"; + field public static final String ACTION_LOW_POWER_STANDBY_POLICY_CHANGED = "android.os.action.LOW_POWER_STANDBY_POLICY_CHANGED"; + field public static final String ACTION_POWER_SAVE_MODE_CHANGED = "android.os.action.POWER_SAVE_MODE_CHANGED"; + field public static final String FEATURE_WAKE_ON_LAN_IN_LOW_POWER_STANDBY = "com.android.lowpowerstandby.WAKE_ON_LAN"; + field @Deprecated public static final int FULL_WAKE_LOCK = 26; // 0x1a + field public static final int LOCATION_MODE_ALL_DISABLED_WHEN_SCREEN_OFF = 2; // 0x2 + field public static final int LOCATION_MODE_FOREGROUND_ONLY = 3; // 0x3 + field public static final int LOCATION_MODE_GPS_DISABLED_WHEN_SCREEN_OFF = 1; // 0x1 + field public static final int LOCATION_MODE_NO_CHANGE = 0; // 0x0 + field public static final int LOCATION_MODE_THROTTLE_REQUESTS_WHEN_SCREEN_OFF = 4; // 0x4 + field public static final int LOW_POWER_STANDBY_ALLOWED_REASON_ONGOING_CALL = 4; // 0x4 + field public static final int LOW_POWER_STANDBY_ALLOWED_REASON_TEMP_POWER_SAVE_ALLOWLIST = 2; // 0x2 + field public static final int LOW_POWER_STANDBY_ALLOWED_REASON_VOICE_INTERACTION = 1; // 0x1 + field public static final int ON_AFTER_RELEASE = 536870912; // 0x20000000 + field public static final int PARTIAL_WAKE_LOCK = 1; // 0x1 + field public static final int PROXIMITY_SCREEN_OFF_WAKE_LOCK = 32; // 0x20 + field public static final int RELEASE_FLAG_WAIT_FOR_NO_PROXIMITY = 1; // 0x1 + field @Deprecated public static final int SCREEN_BRIGHT_WAKE_LOCK = 10; // 0xa + field @Deprecated public static final int SCREEN_DIM_WAKE_LOCK = 6; // 0x6 + field public static final int THERMAL_STATUS_CRITICAL = 4; // 0x4 + field public static final int THERMAL_STATUS_EMERGENCY = 5; // 0x5 + field public static final int THERMAL_STATUS_LIGHT = 1; // 0x1 + field public static final int THERMAL_STATUS_MODERATE = 2; // 0x2 + field public static final int THERMAL_STATUS_NONE = 0; // 0x0 + field public static final int THERMAL_STATUS_SEVERE = 3; // 0x3 + field public static final int THERMAL_STATUS_SHUTDOWN = 6; // 0x6 + } + + @FlaggedApi("android.os.allow_thermal_thresholds_callback") public static interface PowerManager.OnThermalHeadroomChangedListener { + method public void onThermalHeadroomChanged(@FloatRange(from=0.0f) float, @FloatRange(from=0.0f) float, @IntRange(from=0) int, @NonNull java.util.Map); + } + + public static interface PowerManager.OnThermalStatusChangedListener { + method public void onThermalStatusChanged(int); + } + + public final class PowerManager.WakeLock { + method public void acquire(); + method public void acquire(long); + method public boolean isHeld(); + method public void release(); + method public void release(int); + method public void setReferenceCounted(boolean); + method public void setStateListener(@NonNull java.util.concurrent.Executor, @Nullable android.os.PowerManager.WakeLockStateListener); + method public void setWorkSource(android.os.WorkSource); + } + + public static interface PowerManager.WakeLockStateListener { + method public void onStateChanged(boolean); + } + + @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public final class PowerMonitor implements android.os.Parcelable { + method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public int describeContents(); + method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") @NonNull public String getName(); + method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public int getType(); + method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public void writeToParcel(@NonNull android.os.Parcel, int); + field @FlaggedApi("com.android.server.power.optimization.power_monitor_api") @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public static final int POWER_MONITOR_TYPE_CONSUMER = 0; // 0x0 + field @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public static final int POWER_MONITOR_TYPE_MEASUREMENT = 1; // 0x1 + } + + @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public final class PowerMonitorReadings { + method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public long getConsumedEnergy(@NonNull android.os.PowerMonitor); + method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public long getTimestampMillis(@NonNull android.os.PowerMonitor); + field @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public static final int ENERGY_UNAVAILABLE = -1; // 0xffffffff + } + + public class Process { + ctor public Process(); + method public static final int getAppUidForSdkSandboxUid(int); + method public static final long getElapsedCpuTime(); + method public static final int[] getExclusiveCores(); + method public static final int getGidForName(String); + method @FlaggedApi("com.android.sdksandbox.flags.sdk_sandbox_uid_to_app_uid_api") public static final int getSdkSandboxUidForAppUid(int); + method public static long getStartElapsedRealtime(); + method public static long getStartRequestedElapsedRealtime(); + method public static long getStartRequestedUptimeMillis(); + method public static long getStartUptimeMillis(); + method @IntRange(from=0xffffffec, to=android.os.Process.THREAD_PRIORITY_LOWEST) public static final int getThreadPriority(int) throws java.lang.IllegalArgumentException; + method public static final int getUidForName(String); + method public static final boolean is64Bit(); + method public static boolean isApplicationUid(int); + method public static final boolean isIsolated(); + method public static final boolean isIsolatedUid(int); + method public static final boolean isSdkSandbox(); + method public static final boolean isSdkSandboxUid(int); + method public static final void killProcess(int); + method public static final int myPid(); + method @NonNull public static String myProcessName(); + method public static final int myTid(); + method public static final int myUid(); + method public static android.os.UserHandle myUserHandle(); + method public static final void sendSignal(int, int); + method public static final void setThreadPriority(int, @IntRange(from=0xffffffec, to=android.os.Process.THREAD_PRIORITY_LOWEST) int) throws java.lang.IllegalArgumentException, java.lang.SecurityException; + method public static final void setThreadPriority(@IntRange(from=0xffffffec, to=android.os.Process.THREAD_PRIORITY_LOWEST) int) throws java.lang.IllegalArgumentException, java.lang.SecurityException; + method @Deprecated public static final boolean supportsProcesses(); + field public static final int BLUETOOTH_UID = 1002; // 0x3ea + field public static final int FIRST_APPLICATION_UID = 10000; // 0x2710 + field public static final int INVALID_PID = -1; // 0xffffffff + field public static final int INVALID_UID = -1; // 0xffffffff + field public static final int LAST_APPLICATION_UID = 19999; // 0x4e1f + field public static final int PHONE_UID = 1001; // 0x3e9 + field public static final int ROOT_UID = 0; // 0x0 + field public static final int SHELL_UID = 2000; // 0x7d0 + field public static final int SIGNAL_KILL = 9; // 0x9 + field public static final int SIGNAL_QUIT = 3; // 0x3 + field public static final int SIGNAL_USR1 = 10; // 0xa + field public static final int SYSTEM_UID = 1000; // 0x3e8 + field public static final int THREAD_PRIORITY_AUDIO = -16; // 0xfffffff0 + field public static final int THREAD_PRIORITY_BACKGROUND = 10; // 0xa + field public static final int THREAD_PRIORITY_DEFAULT = 0; // 0x0 + field public static final int THREAD_PRIORITY_DISPLAY = -4; // 0xfffffffc + field public static final int THREAD_PRIORITY_FOREGROUND = -2; // 0xfffffffe + field public static final int THREAD_PRIORITY_LESS_FAVORABLE = 1; // 0x1 + field public static final int THREAD_PRIORITY_LOWEST = 19; // 0x13 + field public static final int THREAD_PRIORITY_MORE_FAVORABLE = -1; // 0xffffffff + field public static final int THREAD_PRIORITY_URGENT_AUDIO = -19; // 0xffffffed + field public static final int THREAD_PRIORITY_URGENT_DISPLAY = -8; // 0xfffffff8 + field public static final int THREAD_PRIORITY_VIDEO = -10; // 0xfffffff6 + field public static final int WIFI_UID = 1010; // 0x3f2 + } + + public abstract class ProxyFileDescriptorCallback { + ctor public ProxyFileDescriptorCallback(); + method public void onFsync() throws android.system.ErrnoException; + method public long onGetSize() throws android.system.ErrnoException; + method public int onRead(long, int, byte[]) throws android.system.ErrnoException; + method public abstract void onRelease(); + method public int onWrite(long, int, byte[]) throws android.system.ErrnoException; + } + + public class RecoverySystem { + method @RequiresPermission("android.permission.RECOVERY") public static void installPackage(android.content.Context, java.io.File) throws java.io.IOException; + method public static void rebootWipeCache(android.content.Context) throws java.io.IOException; + method public static void rebootWipeUserData(android.content.Context) throws java.io.IOException; + method public static void verifyPackage(java.io.File, android.os.RecoverySystem.ProgressListener, java.io.File) throws java.security.GeneralSecurityException, java.io.IOException; + } + + public static interface RecoverySystem.ProgressListener { + method public void onProgress(int); + } + + public class RemoteCallbackList { + ctor public RemoteCallbackList(); + method public int beginBroadcast(); + method @FlaggedApi("android.os.binder_frozen_state_change_callback") public void broadcast(@NonNull java.util.function.Consumer); + method public void finishBroadcast(); + method public Object getBroadcastCookie(int); + method public E getBroadcastItem(int); + method @FlaggedApi("android.os.binder_frozen_state_change_callback") @Nullable public java.util.concurrent.Executor getExecutor(); + method @FlaggedApi("android.os.binder_frozen_state_change_callback") public int getFrozenCalleePolicy(); + method @FlaggedApi("android.os.binder_frozen_state_change_callback") public int getMaxQueueSize(); + method public Object getRegisteredCallbackCookie(int); + method public int getRegisteredCallbackCount(); + method public E getRegisteredCallbackItem(int); + method public void kill(); + method public void onCallbackDied(E); + method public void onCallbackDied(E, Object); + method public boolean register(E); + method public boolean register(E, Object); + method public boolean unregister(E); + field @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final int FROZEN_CALLEE_POLICY_DROP = 3; // 0x3 + field @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final int FROZEN_CALLEE_POLICY_ENQUEUE_ALL = 1; // 0x1 + field @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final int FROZEN_CALLEE_POLICY_ENQUEUE_MOST_RECENT = 2; // 0x2 + field @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final int FROZEN_CALLEE_POLICY_UNSET = 0; // 0x0 + } + + @FlaggedApi("android.os.binder_frozen_state_change_callback") public static final class RemoteCallbackList.Builder { + ctor public RemoteCallbackList.Builder(int); + method @NonNull public android.os.RemoteCallbackList build(); + method @NonNull public android.os.RemoteCallbackList.Builder setExecutor(@NonNull java.util.concurrent.Executor); + method @NonNull public android.os.RemoteCallbackList.Builder setInterfaceDiedCallback(@NonNull android.os.RemoteCallbackList.Builder.InterfaceDiedCallback); + method @NonNull public android.os.RemoteCallbackList.Builder setMaxQueueSize(int); + } + + @FlaggedApi("android.os.binder_frozen_state_change_callback") public static interface RemoteCallbackList.Builder.InterfaceDiedCallback { + method public void onInterfaceDied(@NonNull android.os.RemoteCallbackList, E, @Nullable Object); + } + + public class RemoteException extends android.util.AndroidException { + ctor public RemoteException(); + ctor public RemoteException(String); + method @NonNull public RuntimeException rethrowAsRuntimeException(); + method @NonNull public RuntimeException rethrowFromSystemServer(); + } + + public class ResultReceiver implements android.os.Parcelable { + ctor public ResultReceiver(android.os.Handler); + method public int describeContents(); + method protected void onReceiveResult(int, android.os.Bundle); + method public void send(int, android.os.Bundle); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.os.security_state_service") public class SecurityStateManager { + method @FlaggedApi("android.os.security_state_service") @NonNull public android.os.Bundle getGlobalSecurityState(); + field public static final String KEY_KERNEL_VERSION = "kernel_version"; + field public static final String KEY_SYSTEM_SPL = "system_spl"; + field public static final String KEY_VENDOR_SPL = "vendor_spl"; + } + + public final class SharedMemory implements java.io.Closeable android.os.Parcelable { + method public void close(); + method @NonNull public static android.os.SharedMemory create(@Nullable String, int) throws android.system.ErrnoException; + method public int describeContents(); + method @NonNull public static android.os.SharedMemory fromFileDescriptor(@NonNull android.os.ParcelFileDescriptor); + method public int getSize(); + method @NonNull public java.nio.ByteBuffer map(int, int, int) throws android.system.ErrnoException; + method @NonNull public java.nio.ByteBuffer mapReadOnly() throws android.system.ErrnoException; + method @NonNull public java.nio.ByteBuffer mapReadWrite() throws android.system.ErrnoException; + method public boolean setProtect(int); + method public static void unmap(@NonNull java.nio.ByteBuffer); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class StatFs { + ctor public StatFs(String); + method @Deprecated public int getAvailableBlocks(); + method public long getAvailableBlocksLong(); + method public long getAvailableBytes(); + method @Deprecated public int getBlockCount(); + method public long getBlockCountLong(); + method @Deprecated public int getBlockSize(); + method public long getBlockSizeLong(); + method @Deprecated public int getFreeBlocks(); + method public long getFreeBlocksLong(); + method public long getFreeBytes(); + method public long getTotalBytes(); + method public void restat(String); + } + + public final class StrictMode { + method public static android.os.StrictMode.ThreadPolicy allowThreadDiskReads(); + method public static android.os.StrictMode.ThreadPolicy allowThreadDiskWrites(); + method public static void enableDefaults(); + method public static android.os.StrictMode.ThreadPolicy getThreadPolicy(); + method public static android.os.StrictMode.VmPolicy getVmPolicy(); + method public static void noteSlowCall(String); + method public static void setThreadPolicy(android.os.StrictMode.ThreadPolicy); + method public static void setVmPolicy(android.os.StrictMode.VmPolicy); + } + + public static interface StrictMode.OnThreadViolationListener { + method public void onThreadViolation(android.os.strictmode.Violation); + } + + public static interface StrictMode.OnVmViolationListener { + method public void onVmViolation(android.os.strictmode.Violation); + } + + public static final class StrictMode.ThreadPolicy { + field public static final android.os.StrictMode.ThreadPolicy LAX; + } + + public static final class StrictMode.ThreadPolicy.Builder { + ctor public StrictMode.ThreadPolicy.Builder(); + ctor public StrictMode.ThreadPolicy.Builder(android.os.StrictMode.ThreadPolicy); + method public android.os.StrictMode.ThreadPolicy build(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectAll(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectCustomSlowCalls(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectDiskReads(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectDiskWrites(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectExplicitGc(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectNetwork(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectResourceMismatches(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder detectUnbufferedIo(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyDeath(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyDeathOnNetwork(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyDialog(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyDropBox(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyFlashScreen(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.StrictMode.OnThreadViolationListener); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder penaltyLog(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitAll(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitCustomSlowCalls(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitDiskReads(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitDiskWrites(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitExplicitGc(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitNetwork(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitResourceMismatches(); + method @NonNull public android.os.StrictMode.ThreadPolicy.Builder permitUnbufferedIo(); + } + + public static final class StrictMode.VmPolicy { + field public static final android.os.StrictMode.VmPolicy LAX; + } + + public static final class StrictMode.VmPolicy.Builder { + ctor public StrictMode.VmPolicy.Builder(); + ctor public StrictMode.VmPolicy.Builder(android.os.StrictMode.VmPolicy); + method public android.os.StrictMode.VmPolicy build(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectActivityLeaks(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectAll(); + method @FlaggedApi("com.android.window.flags.bal_strict_mode_ro") @NonNull public android.os.StrictMode.VmPolicy.Builder detectBlockedBackgroundActivityLaunch(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectCleartextNetwork(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectContentUriWithoutPermission(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectCredentialProtectedWhileLocked(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectFileUriExposure(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectImplicitDirectBoot(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectIncorrectContextUse(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectLeakedClosableObjects(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectLeakedRegistrationObjects(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectLeakedSqlLiteObjects(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectNonSdkApiUsage(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectUnsafeIntentLaunch(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder detectUntaggedSockets(); + method @FlaggedApi("com.android.window.flags.bal_strict_mode_ro") @NonNull public android.os.StrictMode.VmPolicy.Builder ignoreBlockedBackgroundActivityLaunch(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyDeath(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyDeathOnCleartextNetwork(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyDeathOnFileUriExposure(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyDropBox(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.StrictMode.OnVmViolationListener); + method @NonNull public android.os.StrictMode.VmPolicy.Builder penaltyLog(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder permitNonSdkApiUsage(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder permitUnsafeIntentLaunch(); + method @NonNull public android.os.StrictMode.VmPolicy.Builder setClassInstanceLimit(Class, int); + } + + public final class SystemClock { + method @NonNull public static java.time.Clock currentGnssTimeClock(); + method @NonNull public static java.time.Clock currentNetworkTimeClock(); + method public static long currentThreadTimeMillis(); + method public static long elapsedRealtime(); + method public static long elapsedRealtimeNanos(); + method public static boolean setCurrentTimeMillis(long); + method public static void sleep(long); + method public static long uptimeMillis(); + method @FlaggedApi("android.os.adpf_gpu_report_actual_work_duration") public static long uptimeNanos(); + } + + public class TestLooperManager { + method public void execute(android.os.Message); + method public android.os.MessageQueue getMessageQueue(); + method public boolean hasMessages(android.os.Handler, Object, int); + method public boolean hasMessages(android.os.Handler, Object, Runnable); + method @FlaggedApi("android.os.message_queue_testability") public boolean isBlockedOnSyncBarrier(); + method public android.os.Message next(); + method @FlaggedApi("android.os.message_queue_testability") @Nullable public Long peekWhen(); + method @FlaggedApi("android.os.message_queue_testability") @Nullable public android.os.Message poll(); + method public void recycle(android.os.Message); + method public void release(); + } + + public abstract class TokenWatcher { + ctor public TokenWatcher(android.os.Handler, String); + method public void acquire(android.os.IBinder, String); + method public abstract void acquired(); + method public void cleanup(android.os.IBinder, boolean); + method public void dump(); + method public void dump(java.io.PrintWriter); + method public boolean isAcquired(); + method public void release(android.os.IBinder); + method public abstract void released(); + } + + public final class Trace { + method public static void beginAsyncSection(@NonNull String, int); + method public static void beginSection(@NonNull String); + method public static void endAsyncSection(@NonNull String, int); + method public static void endSection(); + method public static boolean isEnabled(); + method public static void setCounter(@NonNull String, long); + } + + public class TransactionTooLargeException extends android.os.RemoteException { + ctor public TransactionTooLargeException(); + ctor public TransactionTooLargeException(String); + } + + public final class UserHandle implements android.os.Parcelable { + ctor public UserHandle(android.os.Parcel); + method public int describeContents(); + method public static android.os.UserHandle getUserHandleForUid(int); + method public static android.os.UserHandle readFromParcel(android.os.Parcel); + method public void writeToParcel(android.os.Parcel, int); + method public static void writeToParcel(android.os.UserHandle, android.os.Parcel); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class UserManager { + method public static android.content.Intent createUserCreationIntent(@Nullable String, @Nullable String, @Nullable String, @Nullable android.os.PersistableBundle); + method @WorkerThread public android.os.Bundle getApplicationRestrictions(String); + method public long getSerialNumberForUser(android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.CREATE_USERS"}) public int getUserCount(); + method public long getUserCreationTime(android.os.UserHandle); + method public android.os.UserHandle getUserForSerialNumber(long); + method @NonNull @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.CREATE_USERS", "android.permission.QUERY_USERS", android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public String getUserName(); + method public java.util.List getUserProfiles(); + method public android.os.Bundle getUserRestrictions(); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public android.os.Bundle getUserRestrictions(android.os.UserHandle); + method public boolean hasUserRestriction(String); + method public boolean isAdminUser(); + method @FlaggedApi("android.multiuser.support_communal_profile") public boolean isCommunalProfile(); + method public boolean isDemoUser(); + method @FlaggedApi("android.multiuser.support_communal_profile_nextgen") public boolean isForegroundUserAdmin(); + method public static boolean isHeadlessSystemUserMode(); + method public boolean isManagedProfile(); + method public boolean isProfile(); + method public boolean isQuietModeEnabled(android.os.UserHandle); + method public boolean isSystemUser(); + method public boolean isUserAGoat(); + method public boolean isUserForeground(); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public boolean isUserRunning(android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public boolean isUserRunningOrStopping(android.os.UserHandle); + method public boolean isUserUnlocked(); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.INTERACT_ACROSS_USERS"}, conditional=true) public boolean isUserUnlocked(android.os.UserHandle); + method @RequiresPermission(anyOf={"android.permission.MANAGE_USERS", "android.permission.MODIFY_QUIET_MODE"}, conditional=true) public boolean requestQuietModeEnabled(boolean, @NonNull android.os.UserHandle); + method public boolean requestQuietModeEnabled(boolean, @NonNull android.os.UserHandle, int); + method @Deprecated public boolean setRestrictionsChallenge(String); + method @Deprecated @RequiresPermission("android.permission.MANAGE_USERS") public void setUserRestriction(String, boolean); + method @Deprecated public void setUserRestrictions(android.os.Bundle); + method @Deprecated public void setUserRestrictions(android.os.Bundle, android.os.UserHandle); + method public static boolean supportsMultipleUsers(); + field public static final String ALLOW_PARENT_PROFILE_APP_LINKING = "allow_parent_profile_app_linking"; + field @Deprecated public static final String DISALLOW_ADD_MANAGED_PROFILE = "no_add_managed_profile"; + field @FlaggedApi("android.os.allow_private_profile") public static final String DISALLOW_ADD_PRIVATE_PROFILE = "no_add_private_profile"; + field public static final String DISALLOW_ADD_USER = "no_add_user"; + field public static final String DISALLOW_ADD_WIFI_CONFIG = "no_add_wifi_config"; + field public static final String DISALLOW_ADJUST_VOLUME = "no_adjust_volume"; + field public static final String DISALLOW_AIRPLANE_MODE = "no_airplane_mode"; + field public static final String DISALLOW_AMBIENT_DISPLAY = "no_ambient_display"; + field public static final String DISALLOW_APPS_CONTROL = "no_control_apps"; + field public static final String DISALLOW_ASSIST_CONTENT = "no_assist_content"; + field public static final String DISALLOW_AUTOFILL = "no_autofill"; + field public static final String DISALLOW_BLOCK_CALLS = "disallow_block_calls"; + field public static final String DISALLOW_BLUETOOTH = "no_bluetooth"; + field public static final String DISALLOW_BLUETOOTH_SHARING = "no_bluetooth_sharing"; + field public static final String DISALLOW_CAMERA_TOGGLE = "disallow_camera_toggle"; + field public static final String DISALLOW_CELLULAR_2G = "no_cellular_2g"; + field @FlaggedApi("android.nfc.enable_nfc_user_restriction") public static final String DISALLOW_CHANGE_NEAR_FIELD_COMMUNICATION_RADIO = "no_change_near_field_communication_radio"; + field public static final String DISALLOW_CHANGE_WIFI_STATE = "no_change_wifi_state"; + field public static final String DISALLOW_CONFIG_BLUETOOTH = "no_config_bluetooth"; + field public static final String DISALLOW_CONFIG_BRIGHTNESS = "no_config_brightness"; + field public static final String DISALLOW_CONFIG_CELL_BROADCASTS = "no_config_cell_broadcasts"; + field public static final String DISALLOW_CONFIG_CREDENTIALS = "no_config_credentials"; + field public static final String DISALLOW_CONFIG_DATE_TIME = "no_config_date_time"; + field public static final String DISALLOW_CONFIG_DEFAULT_APPS = "disallow_config_default_apps"; + field public static final String DISALLOW_CONFIG_LOCALE = "no_config_locale"; + field public static final String DISALLOW_CONFIG_LOCATION = "no_config_location"; + field public static final String DISALLOW_CONFIG_MOBILE_NETWORKS = "no_config_mobile_networks"; + field public static final String DISALLOW_CONFIG_PRIVATE_DNS = "disallow_config_private_dns"; + field public static final String DISALLOW_CONFIG_SCREEN_TIMEOUT = "no_config_screen_timeout"; + field public static final String DISALLOW_CONFIG_TETHERING = "no_config_tethering"; + field public static final String DISALLOW_CONFIG_VPN = "no_config_vpn"; + field public static final String DISALLOW_CONFIG_WIFI = "no_config_wifi"; + field public static final String DISALLOW_CONTENT_CAPTURE = "no_content_capture"; + field public static final String DISALLOW_CONTENT_SUGGESTIONS = "no_content_suggestions"; + field public static final String DISALLOW_CREATE_WINDOWS = "no_create_windows"; + field public static final String DISALLOW_CROSS_PROFILE_COPY_PASTE = "no_cross_profile_copy_paste"; + field public static final String DISALLOW_DATA_ROAMING = "no_data_roaming"; + field public static final String DISALLOW_DEBUGGING_FEATURES = "no_debugging_features"; + field public static final String DISALLOW_FACTORY_RESET = "no_factory_reset"; + field public static final String DISALLOW_FUN = "no_fun"; + field public static final String DISALLOW_GRANT_ADMIN = "no_grant_admin"; + field public static final String DISALLOW_INSTALL_APPS = "no_install_apps"; + field public static final String DISALLOW_INSTALL_UNKNOWN_SOURCES = "no_install_unknown_sources"; + field public static final String DISALLOW_INSTALL_UNKNOWN_SOURCES_GLOBALLY = "no_install_unknown_sources_globally"; + field public static final String DISALLOW_MICROPHONE_TOGGLE = "disallow_microphone_toggle"; + field public static final String DISALLOW_MODIFY_ACCOUNTS = "no_modify_accounts"; + field public static final String DISALLOW_MOUNT_PHYSICAL_MEDIA = "no_physical_media"; + field @FlaggedApi("android.nfc.enable_nfc_user_restriction") public static final String DISALLOW_NEAR_FIELD_COMMUNICATION_RADIO = "no_near_field_communication_radio"; + field public static final String DISALLOW_NETWORK_RESET = "no_network_reset"; + field public static final String DISALLOW_OUTGOING_BEAM = "no_outgoing_beam"; + field public static final String DISALLOW_OUTGOING_CALLS = "no_outgoing_calls"; + field public static final String DISALLOW_PRINTING = "no_printing"; + field @Deprecated public static final String DISALLOW_REMOVE_MANAGED_PROFILE = "no_remove_managed_profile"; + field public static final String DISALLOW_REMOVE_USER = "no_remove_user"; + field public static final String DISALLOW_SAFE_BOOT = "no_safe_boot"; + field public static final String DISALLOW_SET_USER_ICON = "no_set_user_icon"; + field public static final String DISALLOW_SET_WALLPAPER = "no_set_wallpaper"; + field public static final String DISALLOW_SHARE_INTO_MANAGED_PROFILE = "no_sharing_into_profile"; + field public static final String DISALLOW_SHARE_LOCATION = "no_share_location"; + field public static final String DISALLOW_SHARING_ADMIN_CONFIGURED_WIFI = "no_sharing_admin_configured_wifi"; + field public static final String DISALLOW_SIM_GLOBALLY = "no_sim_globally"; + field public static final String DISALLOW_SMS = "no_sms"; + field public static final String DISALLOW_SYSTEM_ERROR_DIALOGS = "no_system_error_dialogs"; + field @FlaggedApi("com.android.net.thread.platform.flags.thread_user_restriction_enabled") public static final String DISALLOW_THREAD_NETWORK = "no_thread_network"; + field public static final String DISALLOW_ULTRA_WIDEBAND_RADIO = "no_ultra_wideband_radio"; + field public static final String DISALLOW_UNIFIED_PASSWORD = "no_unified_password"; + field public static final String DISALLOW_UNINSTALL_APPS = "no_uninstall_apps"; + field public static final String DISALLOW_UNMUTE_MICROPHONE = "no_unmute_microphone"; + field public static final String DISALLOW_USB_FILE_TRANSFER = "no_usb_file_transfer"; + field public static final String DISALLOW_USER_SWITCH = "no_user_switch"; + field public static final String DISALLOW_WIFI_DIRECT = "no_wifi_direct"; + field public static final String DISALLOW_WIFI_TETHERING = "no_wifi_tethering"; + field public static final String ENSURE_VERIFY_APPS = "ensure_verify_apps"; + field public static final String KEY_RESTRICTIONS_PENDING = "restrictions_pending"; + field public static final int QUIET_MODE_DISABLE_ONLY_IF_CREDENTIAL_NOT_REQUIRED = 1; // 0x1 + field public static final int USER_CREATION_FAILED_NOT_PERMITTED = 1; // 0x1 + field public static final int USER_CREATION_FAILED_NO_MORE_USERS = 2; // 0x2 + field public static final int USER_OPERATION_ERROR_CURRENT_USER = 4; // 0x4 + field public static final int USER_OPERATION_ERROR_LOW_STORAGE = 5; // 0x5 + field public static final int USER_OPERATION_ERROR_MANAGED_PROFILE = 2; // 0x2 + field public static final int USER_OPERATION_ERROR_MAX_RUNNING_USERS = 3; // 0x3 + field public static final int USER_OPERATION_ERROR_MAX_USERS = 6; // 0x6 + field public static final int USER_OPERATION_ERROR_UNKNOWN = 1; // 0x1 + field public static final int USER_OPERATION_SUCCESS = 0; // 0x0 + field @FlaggedApi("android.os.allow_private_profile") public static final String USER_TYPE_PROFILE_CLONE = "android.os.usertype.profile.CLONE"; + field @FlaggedApi("android.os.allow_private_profile") public static final String USER_TYPE_PROFILE_MANAGED = "android.os.usertype.profile.MANAGED"; + field @FlaggedApi("android.os.allow_private_profile") public static final String USER_TYPE_PROFILE_PRIVATE = "android.os.usertype.profile.PRIVATE"; + } + + public static class UserManager.UserOperationException extends java.lang.RuntimeException { + method public int getUserOperationResult(); + } + + public final class VibrationAttributes implements android.os.Parcelable { + method @NonNull public static android.os.VibrationAttributes createForUsage(int); + method public int describeContents(); + method public int getFlags(); + method public int getUsage(); + method public int getUsageClass(); + method public boolean isFlagSet(int); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 1; // 0x1 + field public static final int USAGE_ACCESSIBILITY = 66; // 0x42 + field public static final int USAGE_ALARM = 17; // 0x11 + field public static final int USAGE_CLASS_ALARM = 1; // 0x1 + field public static final int USAGE_CLASS_FEEDBACK = 2; // 0x2 + field public static final int USAGE_CLASS_MASK = 15; // 0xf + field public static final int USAGE_CLASS_MEDIA = 3; // 0x3 + field public static final int USAGE_CLASS_UNKNOWN = 0; // 0x0 + field public static final int USAGE_COMMUNICATION_REQUEST = 65; // 0x41 + field public static final int USAGE_HARDWARE_FEEDBACK = 50; // 0x32 + field @FlaggedApi("android.os.vibrator.vibration_attribute_ime_usage_api") public static final int USAGE_IME_FEEDBACK = 82; // 0x52 + field public static final int USAGE_MEDIA = 19; // 0x13 + field public static final int USAGE_NOTIFICATION = 49; // 0x31 + field public static final int USAGE_PHYSICAL_EMULATION = 34; // 0x22 + field public static final int USAGE_RINGTONE = 33; // 0x21 + field public static final int USAGE_TOUCH = 18; // 0x12 + field public static final int USAGE_UNKNOWN = 0; // 0x0 + } + + public static final class VibrationAttributes.Builder { + ctor public VibrationAttributes.Builder(); + ctor public VibrationAttributes.Builder(@Nullable android.os.VibrationAttributes); + ctor public VibrationAttributes.Builder(@NonNull android.media.AudioAttributes); + method @NonNull public android.os.VibrationAttributes build(); + method @NonNull public android.os.VibrationAttributes.Builder setFlags(int, int); + method @NonNull public android.os.VibrationAttributes.Builder setUsage(int); + } + + public abstract class VibrationEffect implements android.os.Parcelable { + method public static android.os.VibrationEffect createOneShot(long, int); + method @NonNull public static android.os.VibrationEffect createPredefined(int); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public static android.os.VibrationEffect createRepeatingEffect(@NonNull android.os.VibrationEffect); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public static android.os.VibrationEffect createRepeatingEffect(@NonNull android.os.VibrationEffect, @NonNull android.os.VibrationEffect); + method public static android.os.VibrationEffect createWaveform(long[], int); + method public static android.os.VibrationEffect createWaveform(long[], int[], int); + method public int describeContents(); + method @NonNull public static android.os.VibrationEffect.Composition startComposition(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DEFAULT_AMPLITUDE = -1; // 0xffffffff + field public static final int EFFECT_CLICK = 0; // 0x0 + field public static final int EFFECT_DOUBLE_CLICK = 1; // 0x1 + field public static final int EFFECT_HEAVY_CLICK = 5; // 0x5 + field public static final int EFFECT_TICK = 2; // 0x2 + } + + @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public static final class VibrationEffect.BasicEnvelopeBuilder { + ctor public VibrationEffect.BasicEnvelopeBuilder(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect.BasicEnvelopeBuilder addControlPoint(@FloatRange(from=0, to=1) float, @FloatRange(from=0, to=1) float, long); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect build(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect.BasicEnvelopeBuilder setInitialSharpness(@FloatRange(from=0, to=1) float); + } + + public static final class VibrationEffect.Composition { + method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int); + method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int, @FloatRange(from=0.0f, to=1.0f) float); + method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int, @FloatRange(from=0.0f, to=1.0f) float, @IntRange(from=0) int); + method @FlaggedApi("android.os.vibrator.primitive_composition_absolute_delay") @NonNull public android.os.VibrationEffect.Composition addPrimitive(int, @FloatRange(from=0.0f, to=1.0f) float, @IntRange(from=0) int, int); + method @NonNull public android.os.VibrationEffect compose(); + field @FlaggedApi("android.os.vibrator.primitive_composition_absolute_delay") public static final int DELAY_TYPE_PAUSE = 0; // 0x0 + field @FlaggedApi("android.os.vibrator.primitive_composition_absolute_delay") public static final int DELAY_TYPE_RELATIVE_START_OFFSET = 1; // 0x1 + field public static final int PRIMITIVE_CLICK = 1; // 0x1 + field public static final int PRIMITIVE_LOW_TICK = 8; // 0x8 + field public static final int PRIMITIVE_QUICK_FALL = 6; // 0x6 + field public static final int PRIMITIVE_QUICK_RISE = 4; // 0x4 + field public static final int PRIMITIVE_SLOW_RISE = 5; // 0x5 + field public static final int PRIMITIVE_SPIN = 3; // 0x3 + field public static final int PRIMITIVE_THUD = 2; // 0x2 + field public static final int PRIMITIVE_TICK = 7; // 0x7 + } + + @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public static final class VibrationEffect.WaveformEnvelopeBuilder { + ctor public VibrationEffect.WaveformEnvelopeBuilder(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect.WaveformEnvelopeBuilder addControlPoint(@FloatRange(from=0, to=1) float, @FloatRange(from=0) float, long); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect build(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.VibrationEffect.WaveformEnvelopeBuilder setInitialFrequencyHz(@FloatRange(from=0) float); + } + + public abstract class Vibrator { + method public final int areAllEffectsSupported(@NonNull int...); + method public final boolean areAllPrimitivesSupported(@NonNull int...); + method @NonNull public int[] areEffectsSupported(@NonNull int...); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public boolean areEnvelopeEffectsSupported(); + method @NonNull public boolean[] arePrimitivesSupported(@NonNull int...); + method @RequiresPermission(android.Manifest.permission.VIBRATE) public abstract void cancel(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.os.vibrator.VibratorEnvelopeEffectInfo getEnvelopeEffectInfo(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @Nullable public android.os.vibrator.VibratorFrequencyProfile getFrequencyProfile(); + method public int getId(); + method @NonNull public int[] getPrimitiveDurations(@NonNull int...); + method public float getQFactor(); + method public float getResonantFrequency(); + method public abstract boolean hasAmplitudeControl(); + method public abstract boolean hasVibrator(); + method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(long); + method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(long, android.media.AudioAttributes); + method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(long[], int); + method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(long[], int, android.media.AudioAttributes); + method @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(android.os.VibrationEffect); + method @Deprecated @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(android.os.VibrationEffect, android.media.AudioAttributes); + method @RequiresPermission(android.Manifest.permission.VIBRATE) public void vibrate(@NonNull android.os.VibrationEffect, @NonNull android.os.VibrationAttributes); + field public static final int VIBRATION_EFFECT_SUPPORT_NO = 2; // 0x2 + field public static final int VIBRATION_EFFECT_SUPPORT_UNKNOWN = 0; // 0x0 + field public static final int VIBRATION_EFFECT_SUPPORT_YES = 1; // 0x1 + } + + public abstract class VibratorManager { + method @RequiresPermission(android.Manifest.permission.VIBRATE) public abstract void cancel(); + method @NonNull public abstract android.os.Vibrator getDefaultVibrator(); + method @NonNull public abstract android.os.Vibrator getVibrator(int); + method @NonNull public abstract int[] getVibratorIds(); + method @RequiresPermission(android.Manifest.permission.VIBRATE) public final void vibrate(@NonNull android.os.CombinedVibration); + method @RequiresPermission(android.Manifest.permission.VIBRATE) public final void vibrate(@NonNull android.os.CombinedVibration, @Nullable android.os.VibrationAttributes); + } + + @FlaggedApi("android.os.adpf_gpu_report_actual_work_duration") public final class WorkDuration { + ctor public WorkDuration(); + method public long getActualCpuDurationNanos(); + method public long getActualGpuDurationNanos(); + method public long getActualTotalDurationNanos(); + method public long getWorkPeriodStartTimestampNanos(); + method public void setActualCpuDurationNanos(long); + method public void setActualGpuDurationNanos(long); + method public void setActualTotalDurationNanos(long); + method public void setWorkPeriodStartTimestampNanos(long); + } + + public class WorkSource implements android.os.Parcelable { + ctor public WorkSource(); + ctor public WorkSource(android.os.WorkSource); + method public boolean add(android.os.WorkSource); + method public void clear(); + method public int describeContents(); + method public boolean diff(android.os.WorkSource); + method public boolean remove(android.os.WorkSource); + method public void set(android.os.WorkSource); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.os.health { + + public class HealthStats { + method public String getDataType(); + method public long getMeasurement(int); + method public int getMeasurementKeyAt(int); + method public int getMeasurementKeyCount(); + method public java.util.Map getMeasurements(int); + method public int getMeasurementsKeyAt(int); + method public int getMeasurementsKeyCount(); + method public java.util.Map getStats(int); + method public int getStatsKeyAt(int); + method public int getStatsKeyCount(); + method public android.os.health.TimerStat getTimer(int); + method public int getTimerCount(int); + method public int getTimerKeyAt(int); + method public int getTimerKeyCount(); + method public long getTimerTime(int); + method public java.util.Map getTimers(int); + method public int getTimersKeyAt(int); + method public int getTimersKeyCount(); + method public boolean hasMeasurement(int); + method public boolean hasMeasurements(int); + method public boolean hasStats(int); + method public boolean hasTimer(int); + method public boolean hasTimers(int); + } + + public final class PackageHealthStats { + field public static final int MEASUREMENTS_WAKEUP_ALARMS_COUNT = 40002; // 0x9c42 + field public static final int STATS_SERVICES = 40001; // 0x9c41 + } + + public final class PidHealthStats { + field public static final int MEASUREMENT_WAKE_NESTING_COUNT = 20001; // 0x4e21 + field public static final int MEASUREMENT_WAKE_START_MS = 20003; // 0x4e23 + field public static final int MEASUREMENT_WAKE_SUM_MS = 20002; // 0x4e22 + } + + public final class ProcessHealthStats { + field public static final int MEASUREMENT_ANR_COUNT = 30005; // 0x7535 + field public static final int MEASUREMENT_CRASHES_COUNT = 30004; // 0x7534 + field public static final int MEASUREMENT_FOREGROUND_MS = 30006; // 0x7536 + field public static final int MEASUREMENT_STARTS_COUNT = 30003; // 0x7533 + field public static final int MEASUREMENT_SYSTEM_TIME_MS = 30002; // 0x7532 + field public static final int MEASUREMENT_USER_TIME_MS = 30001; // 0x7531 + } + + public final class ServiceHealthStats { + field public static final int MEASUREMENT_LAUNCH_COUNT = 50002; // 0xc352 + field public static final int MEASUREMENT_START_SERVICE_COUNT = 50001; // 0xc351 + } + + public class SystemHealthManager { + method @FlaggedApi("android.os.cpu_gpu_headrooms") @FloatRange(from=0.0f, to=100.0f) public float getCpuHeadroom(@Nullable android.os.CpuHeadroomParams); + method @FlaggedApi("android.os.cpu_gpu_headrooms") public long getCpuHeadroomMinIntervalMillis(); + method @FlaggedApi("android.os.cpu_gpu_headrooms") @FloatRange(from=0.0f, to=100.0f) public float getGpuHeadroom(@Nullable android.os.GpuHeadroomParams); + method @FlaggedApi("android.os.cpu_gpu_headrooms") public long getGpuHeadroomMinIntervalMillis(); + method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public void getPowerMonitorReadings(@NonNull java.util.List, @Nullable java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method @FlaggedApi("com.android.server.power.optimization.power_monitor_api") public void getSupportedPowerMonitors(@Nullable java.util.concurrent.Executor, @NonNull java.util.function.Consumer>); + method public android.os.health.HealthStats takeMyUidSnapshot(); + method public android.os.health.HealthStats takeUidSnapshot(int); + method public android.os.health.HealthStats[] takeUidSnapshots(int[]); + } + + public final class TimerStat implements android.os.Parcelable { + ctor public TimerStat(); + ctor public TimerStat(int, long); + ctor public TimerStat(android.os.Parcel); + method public int describeContents(); + method public int getCount(); + method public long getTime(); + method public void setCount(int); + method public void setTime(long); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class UidHealthStats { + field public static final int MEASUREMENT_BLUETOOTH_IDLE_MS = 10020; // 0x2724 + field public static final int MEASUREMENT_BLUETOOTH_POWER_MAMS = 10023; // 0x2727 + field public static final int MEASUREMENT_BLUETOOTH_RX_BYTES = 10052; // 0x2744 + field public static final int MEASUREMENT_BLUETOOTH_RX_MS = 10021; // 0x2725 + field public static final int MEASUREMENT_BLUETOOTH_RX_PACKETS = 10058; // 0x274a + field public static final int MEASUREMENT_BLUETOOTH_TX_BYTES = 10053; // 0x2745 + field public static final int MEASUREMENT_BLUETOOTH_TX_MS = 10022; // 0x2726 + field public static final int MEASUREMENT_BLUETOOTH_TX_PACKETS = 10059; // 0x274b + field public static final int MEASUREMENT_BUTTON_USER_ACTIVITY_COUNT = 10046; // 0x273e + field @Deprecated public static final int MEASUREMENT_CPU_POWER_MAMS = 10064; // 0x2750 + field public static final int MEASUREMENT_MOBILE_IDLE_MS = 10024; // 0x2728 + field public static final int MEASUREMENT_MOBILE_POWER_MAMS = 10027; // 0x272b + field public static final int MEASUREMENT_MOBILE_RX_BYTES = 10048; // 0x2740 + field public static final int MEASUREMENT_MOBILE_RX_MS = 10025; // 0x2729 + field public static final int MEASUREMENT_MOBILE_RX_PACKETS = 10054; // 0x2746 + field public static final int MEASUREMENT_MOBILE_TX_BYTES = 10049; // 0x2741 + field public static final int MEASUREMENT_MOBILE_TX_MS = 10026; // 0x272a + field public static final int MEASUREMENT_MOBILE_TX_PACKETS = 10055; // 0x2747 + field public static final int MEASUREMENT_OTHER_USER_ACTIVITY_COUNT = 10045; // 0x273d + field public static final int MEASUREMENT_REALTIME_BATTERY_MS = 10001; // 0x2711 + field public static final int MEASUREMENT_REALTIME_SCREEN_OFF_BATTERY_MS = 10003; // 0x2713 + field public static final int MEASUREMENT_SYSTEM_CPU_TIME_MS = 10063; // 0x274f + field public static final int MEASUREMENT_TOUCH_USER_ACTIVITY_COUNT = 10047; // 0x273f + field public static final int MEASUREMENT_UPTIME_BATTERY_MS = 10002; // 0x2712 + field public static final int MEASUREMENT_UPTIME_SCREEN_OFF_BATTERY_MS = 10004; // 0x2714 + field public static final int MEASUREMENT_USER_CPU_TIME_MS = 10062; // 0x274e + field public static final int MEASUREMENT_WIFI_FULL_LOCK_MS = 10029; // 0x272d + field public static final int MEASUREMENT_WIFI_IDLE_MS = 10016; // 0x2720 + field public static final int MEASUREMENT_WIFI_MULTICAST_MS = 10031; // 0x272f + field public static final int MEASUREMENT_WIFI_POWER_MAMS = 10019; // 0x2723 + field public static final int MEASUREMENT_WIFI_RUNNING_MS = 10028; // 0x272c + field public static final int MEASUREMENT_WIFI_RX_BYTES = 10050; // 0x2742 + field public static final int MEASUREMENT_WIFI_RX_MS = 10017; // 0x2721 + field public static final int MEASUREMENT_WIFI_RX_PACKETS = 10056; // 0x2748 + field public static final int MEASUREMENT_WIFI_TX_BYTES = 10051; // 0x2743 + field public static final int MEASUREMENT_WIFI_TX_MS = 10018; // 0x2722 + field public static final int MEASUREMENT_WIFI_TX_PACKETS = 10057; // 0x2749 + field public static final int STATS_PACKAGES = 10015; // 0x271f + field public static final int STATS_PIDS = 10013; // 0x271d + field public static final int STATS_PROCESSES = 10014; // 0x271e + field public static final int TIMERS_JOBS = 10010; // 0x271a + field public static final int TIMERS_SENSORS = 10012; // 0x271c + field public static final int TIMERS_SYNCS = 10009; // 0x2719 + field public static final int TIMERS_WAKELOCKS_DRAW = 10008; // 0x2718 + field public static final int TIMERS_WAKELOCKS_FULL = 10005; // 0x2715 + field public static final int TIMERS_WAKELOCKS_PARTIAL = 10006; // 0x2716 + field public static final int TIMERS_WAKELOCKS_WINDOW = 10007; // 0x2717 + field public static final int TIMER_AUDIO = 10032; // 0x2730 + field public static final int TIMER_BLUETOOTH_SCAN = 10037; // 0x2735 + field public static final int TIMER_CAMERA = 10035; // 0x2733 + field public static final int TIMER_FLASHLIGHT = 10034; // 0x2732 + field public static final int TIMER_FOREGROUND_ACTIVITY = 10036; // 0x2734 + field public static final int TIMER_GPS_SENSOR = 10011; // 0x271b + field public static final int TIMER_MOBILE_RADIO_ACTIVE = 10061; // 0x274d + field public static final int TIMER_PROCESS_STATE_BACKGROUND_MS = 10042; // 0x273a + field public static final int TIMER_PROCESS_STATE_CACHED_MS = 10043; // 0x273b + field public static final int TIMER_PROCESS_STATE_FOREGROUND_MS = 10041; // 0x2739 + field public static final int TIMER_PROCESS_STATE_FOREGROUND_SERVICE_MS = 10039; // 0x2737 + field public static final int TIMER_PROCESS_STATE_TOP_MS = 10038; // 0x2736 + field public static final int TIMER_PROCESS_STATE_TOP_SLEEPING_MS = 10040; // 0x2738 + field public static final int TIMER_VIBRATOR = 10044; // 0x273c + field public static final int TIMER_VIDEO = 10033; // 0x2731 + field public static final int TIMER_WIFI_SCAN = 10030; // 0x272e + } + +} + +package android.os.storage { + + public abstract class OnObbStateChangeListener { + ctor public OnObbStateChangeListener(); + method public void onObbStateChange(String, int); + field public static final int ERROR_ALREADY_MOUNTED = 24; // 0x18 + field public static final int ERROR_COULD_NOT_MOUNT = 21; // 0x15 + field public static final int ERROR_COULD_NOT_UNMOUNT = 22; // 0x16 + field public static final int ERROR_INTERNAL = 20; // 0x14 + field public static final int ERROR_NOT_MOUNTED = 23; // 0x17 + field public static final int ERROR_PERMISSION_DENIED = 25; // 0x19 + field public static final int MOUNTED = 1; // 0x1 + field public static final int UNMOUNTED = 2; // 0x2 + } + + public class StorageManager { + method @WorkerThread public void allocateBytes(@NonNull java.util.UUID, long) throws java.io.IOException; + method @WorkerThread public void allocateBytes(java.io.FileDescriptor, long) throws java.io.IOException; + method @WorkerThread public long getAllocatableBytes(@NonNull java.util.UUID) throws java.io.IOException; + method @WorkerThread public long getCacheQuotaBytes(@NonNull java.util.UUID) throws java.io.IOException; + method @WorkerThread public long getCacheSizeBytes(@NonNull java.util.UUID) throws java.io.IOException; + method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_EXTERNAL_STORAGE) public android.app.PendingIntent getManageSpaceActivityIntent(@NonNull String, int); + method public String getMountedObbPath(String); + method @NonNull public android.os.storage.StorageVolume getPrimaryStorageVolume(); + method @NonNull public java.util.List getRecentStorageVolumes(); + method @Nullable public android.os.storage.StorageVolume getStorageVolume(@NonNull java.io.File); + method @NonNull public android.os.storage.StorageVolume getStorageVolume(@NonNull android.net.Uri); + method @NonNull public java.util.List getStorageVolumes(); + method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_EXTERNAL_STORAGE) public java.util.List getStorageVolumesIncludingSharedProfiles(); + method @NonNull public java.util.UUID getUuidForPath(@NonNull java.io.File) throws java.io.IOException; + method public boolean isAllocationSupported(@NonNull java.io.FileDescriptor); + method public boolean isCacheBehaviorGroup(java.io.File) throws java.io.IOException; + method public boolean isCacheBehaviorTombstone(java.io.File) throws java.io.IOException; + method public boolean isCheckpointSupported(); + method public boolean isEncrypted(java.io.File); + method public boolean isObbMounted(String); + method public boolean mountObb(String, String, android.os.storage.OnObbStateChangeListener); + method @NonNull public android.os.ParcelFileDescriptor openProxyFileDescriptor(int, android.os.ProxyFileDescriptorCallback, android.os.Handler) throws java.io.IOException; + method public void registerStorageVolumeCallback(@NonNull java.util.concurrent.Executor, @NonNull android.os.storage.StorageManager.StorageVolumeCallback); + method public void setCacheBehaviorGroup(java.io.File, boolean) throws java.io.IOException; + method public void setCacheBehaviorTombstone(java.io.File, boolean) throws java.io.IOException; + method public boolean unmountObb(String, boolean, android.os.storage.OnObbStateChangeListener); + method public void unregisterStorageVolumeCallback(@NonNull android.os.storage.StorageManager.StorageVolumeCallback); + field @RequiresPermission(android.Manifest.permission.MANAGE_EXTERNAL_STORAGE) public static final String ACTION_CLEAR_APP_CACHE = "android.os.storage.action.CLEAR_APP_CACHE"; + field public static final String ACTION_MANAGE_STORAGE = "android.os.storage.action.MANAGE_STORAGE"; + field public static final String EXTRA_REQUESTED_BYTES = "android.os.storage.extra.REQUESTED_BYTES"; + field public static final String EXTRA_UUID = "android.os.storage.extra.UUID"; + field public static final java.util.UUID UUID_DEFAULT; + } + + public static class StorageManager.StorageVolumeCallback { + ctor public StorageManager.StorageVolumeCallback(); + method public void onStateChanged(@NonNull android.os.storage.StorageVolume); + } + + public final class StorageVolume implements android.os.Parcelable { + method @Deprecated @Nullable public android.content.Intent createAccessIntent(String); + method @NonNull public android.content.Intent createOpenDocumentTreeIntent(); + method public int describeContents(); + method public String getDescription(android.content.Context); + method @Nullable public java.io.File getDirectory(); + method @Nullable public String getMediaStoreVolumeName(); + method @NonNull public android.os.UserHandle getOwner(); + method public String getState(); + method @Nullable public java.util.UUID getStorageUuid(); + method @Nullable public String getUuid(); + method public boolean isEmulated(); + method public boolean isPrimary(); + method public boolean isRemovable(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String EXTRA_STORAGE_VOLUME = "android.os.storage.extra.STORAGE_VOLUME"; + } + +} + +package android.os.strictmode { + + public final class CleartextNetworkViolation extends android.os.strictmode.Violation { + } + + public final class ContentUriWithoutPermissionViolation extends android.os.strictmode.Violation { + } + + public final class CredentialProtectedWhileLockedViolation extends android.os.strictmode.Violation { + } + + public final class CustomViolation extends android.os.strictmode.Violation { + } + + public final class DiskReadViolation extends android.os.strictmode.Violation { + } + + public final class DiskWriteViolation extends android.os.strictmode.Violation { + } + + public final class ExplicitGcViolation extends android.os.strictmode.Violation { + } + + public final class FileUriExposedViolation extends android.os.strictmode.Violation { + } + + public final class ImplicitDirectBootViolation extends android.os.strictmode.Violation { + } + + public final class IncorrectContextUseViolation extends android.os.strictmode.Violation { + ctor public IncorrectContextUseViolation(@NonNull String, @NonNull Throwable); + } + + public class InstanceCountViolation extends android.os.strictmode.Violation { + method public long getNumberOfInstances(); + } + + public final class IntentReceiverLeakedViolation extends android.os.strictmode.Violation { + } + + public final class LeakedClosableViolation extends android.os.strictmode.Violation { + } + + public final class NetworkViolation extends android.os.strictmode.Violation { + } + + public final class NonSdkApiUsedViolation extends android.os.strictmode.Violation { + } + + public final class ResourceMismatchViolation extends android.os.strictmode.Violation { + } + + public final class ServiceConnectionLeakedViolation extends android.os.strictmode.Violation { + } + + public final class SqliteObjectLeakedViolation extends android.os.strictmode.Violation { + } + + public final class UnbufferedIoViolation extends android.os.strictmode.Violation { + } + + public final class UnsafeIntentLaunchViolation extends android.os.strictmode.Violation { + ctor public UnsafeIntentLaunchViolation(@NonNull android.content.Intent); + method @Nullable public android.content.Intent getIntent(); + } + + public final class UntaggedSocketViolation extends android.os.strictmode.Violation { + } + + public abstract class Violation extends java.lang.Throwable { + } + + public final class WebViewMethodCalledOnWrongThreadViolation extends android.os.strictmode.Violation { + } + +} + +package android.os.vibrator { + + @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public final class VibratorEnvelopeEffectInfo implements android.os.Parcelable { + method public int describeContents(); + method public long getMaxControlPointDurationMillis(); + method public long getMaxDurationMillis(); + method public int getMaxSize(); + method public long getMinControlPointDurationMillis(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public final class VibratorFrequencyProfile { + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @NonNull public android.util.SparseArray getFrequenciesOutputAcceleration(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") @Nullable public android.util.Range getFrequencyRange(float); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public float getMaxFrequencyHz(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public float getMaxOutputAccelerationGs(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public float getMinFrequencyHz(); + method @FlaggedApi("android.os.vibrator.normalized_pwle_effects") public float getOutputAccelerationGs(float); + } + +} + +package android.preference { + + @Deprecated public class CheckBoxPreference extends android.preference.TwoStatePreference { + ctor @Deprecated public CheckBoxPreference(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public CheckBoxPreference(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public CheckBoxPreference(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public CheckBoxPreference(android.content.Context); + } + + @Deprecated public abstract class DialogPreference extends android.preference.Preference implements android.content.DialogInterface.OnClickListener android.content.DialogInterface.OnDismissListener android.preference.PreferenceManager.OnActivityDestroyListener { + ctor @Deprecated public DialogPreference(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public DialogPreference(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public DialogPreference(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public DialogPreference(android.content.Context); + method @Deprecated public android.app.Dialog getDialog(); + method @Deprecated public android.graphics.drawable.Drawable getDialogIcon(); + method @Deprecated public int getDialogLayoutResource(); + method @Deprecated public CharSequence getDialogMessage(); + method @Deprecated public CharSequence getDialogTitle(); + method @Deprecated public CharSequence getNegativeButtonText(); + method @Deprecated public CharSequence getPositiveButtonText(); + method @Deprecated public void onActivityDestroy(); + method @Deprecated @CallSuper protected void onBindDialogView(android.view.View); + method @Deprecated public void onClick(android.content.DialogInterface, int); + method @Deprecated protected android.view.View onCreateDialogView(); + method @Deprecated protected void onDialogClosed(boolean); + method @Deprecated public void onDismiss(android.content.DialogInterface); + method @Deprecated protected void onPrepareDialogBuilder(android.app.AlertDialog.Builder); + method @Deprecated public void setDialogIcon(android.graphics.drawable.Drawable); + method @Deprecated public void setDialogIcon(@DrawableRes int); + method @Deprecated public void setDialogLayoutResource(int); + method @Deprecated public void setDialogMessage(CharSequence); + method @Deprecated public void setDialogMessage(int); + method @Deprecated public void setDialogTitle(CharSequence); + method @Deprecated public void setDialogTitle(int); + method @Deprecated public void setNegativeButtonText(CharSequence); + method @Deprecated public void setNegativeButtonText(@StringRes int); + method @Deprecated public void setPositiveButtonText(CharSequence); + method @Deprecated public void setPositiveButtonText(@StringRes int); + method @Deprecated protected void showDialog(android.os.Bundle); + } + + @Deprecated public class EditTextPreference extends android.preference.DialogPreference { + ctor @Deprecated public EditTextPreference(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public EditTextPreference(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public EditTextPreference(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public EditTextPreference(android.content.Context); + method @Deprecated public android.widget.EditText getEditText(); + method @Deprecated public String getText(); + method @Deprecated protected void onAddEditTextToDialogView(android.view.View, android.widget.EditText); + method @Deprecated public void setText(String); + } + + @Deprecated public class ListPreference extends android.preference.DialogPreference { + ctor @Deprecated public ListPreference(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public ListPreference(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public ListPreference(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public ListPreference(android.content.Context); + method @Deprecated public int findIndexOfValue(String); + method @Deprecated public CharSequence[] getEntries(); + method @Deprecated public CharSequence getEntry(); + method @Deprecated public CharSequence[] getEntryValues(); + method @Deprecated public String getValue(); + method @Deprecated public void setEntries(CharSequence[]); + method @Deprecated public void setEntries(@ArrayRes int); + method @Deprecated public void setEntryValues(CharSequence[]); + method @Deprecated public void setEntryValues(@ArrayRes int); + method @Deprecated public void setValue(String); + method @Deprecated public void setValueIndex(int); + } + + @Deprecated public class MultiSelectListPreference extends android.preference.DialogPreference { + ctor @Deprecated public MultiSelectListPreference(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public MultiSelectListPreference(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public MultiSelectListPreference(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public MultiSelectListPreference(android.content.Context); + method @Deprecated public int findIndexOfValue(String); + method @Deprecated public CharSequence[] getEntries(); + method @Deprecated public CharSequence[] getEntryValues(); + method @Deprecated public java.util.Set getValues(); + method @Deprecated public void setEntries(CharSequence[]); + method @Deprecated public void setEntries(@ArrayRes int); + method @Deprecated public void setEntryValues(CharSequence[]); + method @Deprecated public void setEntryValues(@ArrayRes int); + method @Deprecated public void setValues(java.util.Set); + } + + @Deprecated public class Preference implements java.lang.Comparable { + ctor @Deprecated public Preference(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public Preference(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public Preference(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public Preference(android.content.Context); + method @Deprecated protected boolean callChangeListener(Object); + method @Deprecated public int compareTo(android.preference.Preference); + method @Deprecated protected android.preference.Preference findPreferenceInHierarchy(String); + method @Deprecated public android.content.Context getContext(); + method @Deprecated public String getDependency(); + method @Deprecated public android.content.SharedPreferences.Editor getEditor(); + method @Deprecated public android.os.Bundle getExtras(); + method @Deprecated public String getFragment(); + method @Deprecated public android.graphics.drawable.Drawable getIcon(); + method @Deprecated public android.content.Intent getIntent(); + method @Deprecated public String getKey(); + method @Deprecated @LayoutRes public int getLayoutResource(); + method @Deprecated public android.preference.Preference.OnPreferenceChangeListener getOnPreferenceChangeListener(); + method @Deprecated public android.preference.Preference.OnPreferenceClickListener getOnPreferenceClickListener(); + method @Deprecated public int getOrder(); + method @Deprecated @Nullable public android.preference.PreferenceGroup getParent(); + method @Deprecated protected boolean getPersistedBoolean(boolean); + method @Deprecated protected float getPersistedFloat(float); + method @Deprecated protected int getPersistedInt(int); + method @Deprecated protected long getPersistedLong(long); + method @Deprecated protected String getPersistedString(String); + method @Deprecated public java.util.Set getPersistedStringSet(java.util.Set); + method @Deprecated @Nullable public android.preference.PreferenceDataStore getPreferenceDataStore(); + method @Deprecated public android.preference.PreferenceManager getPreferenceManager(); + method @Deprecated public android.content.SharedPreferences getSharedPreferences(); + method @Deprecated public boolean getShouldDisableView(); + method @Deprecated public CharSequence getSummary(); + method @Deprecated public CharSequence getTitle(); + method @Deprecated @StringRes public int getTitleRes(); + method @Deprecated public android.view.View getView(android.view.View, android.view.ViewGroup); + method @Deprecated @LayoutRes public int getWidgetLayoutResource(); + method @Deprecated public boolean hasKey(); + method @Deprecated public boolean isEnabled(); + method @Deprecated public boolean isIconSpaceReserved(); + method @Deprecated public boolean isPersistent(); + method @Deprecated public boolean isRecycleEnabled(); + method @Deprecated public boolean isSelectable(); + method @Deprecated public boolean isSingleLineTitle(); + method @Deprecated protected void notifyChanged(); + method @Deprecated public void notifyDependencyChange(boolean); + method @Deprecated protected void notifyHierarchyChanged(); + method @Deprecated protected void onAttachedToActivity(); + method @Deprecated protected void onAttachedToHierarchy(android.preference.PreferenceManager); + method @Deprecated @CallSuper protected void onBindView(android.view.View); + method @Deprecated protected void onClick(); + method @Deprecated @CallSuper protected android.view.View onCreateView(android.view.ViewGroup); + method @Deprecated public void onDependencyChanged(android.preference.Preference, boolean); + method @Deprecated protected Object onGetDefaultValue(android.content.res.TypedArray, int); + method @Deprecated public void onParentChanged(android.preference.Preference, boolean); + method @Deprecated @CallSuper protected void onPrepareForRemoval(); + method @Deprecated protected void onRestoreInstanceState(android.os.Parcelable); + method @Deprecated protected android.os.Parcelable onSaveInstanceState(); + method @Deprecated protected void onSetInitialValue(boolean, Object); + method @Deprecated public android.os.Bundle peekExtras(); + method @Deprecated protected boolean persistBoolean(boolean); + method @Deprecated protected boolean persistFloat(float); + method @Deprecated protected boolean persistInt(int); + method @Deprecated protected boolean persistLong(long); + method @Deprecated protected boolean persistString(String); + method @Deprecated public boolean persistStringSet(java.util.Set); + method @Deprecated public void restoreHierarchyState(android.os.Bundle); + method @Deprecated public void saveHierarchyState(android.os.Bundle); + method @Deprecated public void setDefaultValue(Object); + method @Deprecated public void setDependency(String); + method @Deprecated public void setEnabled(boolean); + method @Deprecated public void setFragment(String); + method @Deprecated public void setIcon(android.graphics.drawable.Drawable); + method @Deprecated public void setIcon(@DrawableRes int); + method @Deprecated public void setIconSpaceReserved(boolean); + method @Deprecated public void setIntent(android.content.Intent); + method @Deprecated public void setKey(String); + method @Deprecated public void setLayoutResource(@LayoutRes int); + method @Deprecated public void setOnPreferenceChangeListener(android.preference.Preference.OnPreferenceChangeListener); + method @Deprecated public void setOnPreferenceClickListener(android.preference.Preference.OnPreferenceClickListener); + method @Deprecated public void setOrder(int); + method @Deprecated public void setPersistent(boolean); + method @Deprecated public void setPreferenceDataStore(android.preference.PreferenceDataStore); + method @Deprecated @CallSuper public void setRecycleEnabled(boolean); + method @Deprecated public void setSelectable(boolean); + method @Deprecated public void setShouldDisableView(boolean); + method @Deprecated public void setSingleLineTitle(boolean); + method @Deprecated public void setSummary(CharSequence); + method @Deprecated public void setSummary(@StringRes int); + method @Deprecated public void setTitle(CharSequence); + method @Deprecated public void setTitle(@StringRes int); + method @Deprecated public void setWidgetLayoutResource(@LayoutRes int); + method @Deprecated public boolean shouldCommit(); + method @Deprecated public boolean shouldDisableDependents(); + method @Deprecated protected boolean shouldPersist(); + field @Deprecated public static final int DEFAULT_ORDER = 2147483647; // 0x7fffffff + } + + @Deprecated public static class Preference.BaseSavedState extends android.view.AbsSavedState { + ctor @Deprecated public Preference.BaseSavedState(android.os.Parcel); + ctor @Deprecated public Preference.BaseSavedState(android.os.Parcelable); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @Deprecated public static interface Preference.OnPreferenceChangeListener { + method @Deprecated public boolean onPreferenceChange(android.preference.Preference, Object); + } + + @Deprecated public static interface Preference.OnPreferenceClickListener { + method @Deprecated public boolean onPreferenceClick(android.preference.Preference); + } + + @Deprecated public abstract class PreferenceActivity extends android.app.ListActivity implements android.preference.PreferenceFragment.OnPreferenceStartFragmentCallback { + ctor @Deprecated public PreferenceActivity(); + method @Deprecated public void addPreferencesFromIntent(android.content.Intent); + method @Deprecated public void addPreferencesFromResource(int); + method @Deprecated public android.preference.Preference findPreference(CharSequence); + method @Deprecated public void finishPreferencePanel(android.app.Fragment, int, android.content.Intent); + method @Deprecated public android.preference.PreferenceManager getPreferenceManager(); + method @Deprecated public android.preference.PreferenceScreen getPreferenceScreen(); + method @Deprecated public boolean hasHeaders(); + method @Deprecated public void invalidateHeaders(); + method @Deprecated public boolean isMultiPane(); + method @Deprecated protected boolean isValidFragment(String); + method @Deprecated public void loadHeadersFromResource(@XmlRes int, java.util.List); + method @Deprecated public void onBackPressed(); + method @Deprecated public void onBuildHeaders(java.util.List); + method @Deprecated public android.content.Intent onBuildStartFragmentIntent(String, android.os.Bundle, @StringRes int, int); + method @Deprecated public android.preference.PreferenceActivity.Header onGetInitialHeader(); + method @Deprecated public android.preference.PreferenceActivity.Header onGetNewHeader(); + method @Deprecated public void onHeaderClick(android.preference.PreferenceActivity.Header, int); + method @Deprecated public boolean onIsHidingHeaders(); + method @Deprecated public boolean onIsMultiPane(); + method @Deprecated public boolean onPreferenceStartFragment(android.preference.PreferenceFragment, android.preference.Preference); + method @Deprecated public boolean onPreferenceTreeClick(android.preference.PreferenceScreen, android.preference.Preference); + method @Deprecated public void setListFooter(android.view.View); + method @Deprecated public void setParentTitle(CharSequence, CharSequence, android.view.View.OnClickListener); + method @Deprecated public void setPreferenceScreen(android.preference.PreferenceScreen); + method @Deprecated public void showBreadCrumbs(CharSequence, CharSequence); + method @Deprecated public void startPreferenceFragment(android.app.Fragment, boolean); + method @Deprecated public void startPreferencePanel(String, android.os.Bundle, @StringRes int, CharSequence, android.app.Fragment, int); + method @Deprecated public void startWithFragment(String, android.os.Bundle, android.app.Fragment, int); + method @Deprecated public void startWithFragment(String, android.os.Bundle, android.app.Fragment, int, @StringRes int, @StringRes int); + method @Deprecated public void switchToHeader(String, android.os.Bundle); + method @Deprecated public void switchToHeader(android.preference.PreferenceActivity.Header); + field @Deprecated public static final String EXTRA_NO_HEADERS = ":android:no_headers"; + field @Deprecated public static final String EXTRA_SHOW_FRAGMENT = ":android:show_fragment"; + field @Deprecated public static final String EXTRA_SHOW_FRAGMENT_ARGUMENTS = ":android:show_fragment_args"; + field @Deprecated public static final String EXTRA_SHOW_FRAGMENT_SHORT_TITLE = ":android:show_fragment_short_title"; + field @Deprecated public static final String EXTRA_SHOW_FRAGMENT_TITLE = ":android:show_fragment_title"; + field @Deprecated public static final long HEADER_ID_UNDEFINED = -1L; // 0xffffffffffffffffL + } + + @Deprecated public static final class PreferenceActivity.Header implements android.os.Parcelable { + ctor @Deprecated public PreferenceActivity.Header(); + method @Deprecated public int describeContents(); + method @Deprecated public CharSequence getBreadCrumbShortTitle(android.content.res.Resources); + method @Deprecated public CharSequence getBreadCrumbTitle(android.content.res.Resources); + method @Deprecated public CharSequence getSummary(android.content.res.Resources); + method @Deprecated public CharSequence getTitle(android.content.res.Resources); + method @Deprecated public void readFromParcel(android.os.Parcel); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Deprecated public CharSequence breadCrumbShortTitle; + field @Deprecated @StringRes public int breadCrumbShortTitleRes; + field @Deprecated public CharSequence breadCrumbTitle; + field @Deprecated @StringRes public int breadCrumbTitleRes; + field @Deprecated public android.os.Bundle extras; + field @Deprecated public String fragment; + field @Deprecated public android.os.Bundle fragmentArguments; + field @Deprecated public int iconRes; + field @Deprecated public long id; + field @Deprecated public android.content.Intent intent; + field @Deprecated public CharSequence summary; + field @Deprecated @StringRes public int summaryRes; + field @Deprecated public CharSequence title; + field @Deprecated @StringRes public int titleRes; + } + + @Deprecated public class PreferenceCategory extends android.preference.PreferenceGroup { + ctor @Deprecated public PreferenceCategory(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public PreferenceCategory(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public PreferenceCategory(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public PreferenceCategory(android.content.Context); + } + + @Deprecated public interface PreferenceDataStore { + method @Deprecated public default boolean getBoolean(String, boolean); + method @Deprecated public default float getFloat(String, float); + method @Deprecated public default int getInt(String, int); + method @Deprecated public default long getLong(String, long); + method @Deprecated @Nullable public default String getString(String, @Nullable String); + method @Deprecated @Nullable public default java.util.Set getStringSet(String, @Nullable java.util.Set); + method @Deprecated public default void putBoolean(String, boolean); + method @Deprecated public default void putFloat(String, float); + method @Deprecated public default void putInt(String, int); + method @Deprecated public default void putLong(String, long); + method @Deprecated public default void putString(String, @Nullable String); + method @Deprecated public default void putStringSet(String, @Nullable java.util.Set); + } + + @Deprecated public abstract class PreferenceFragment extends android.app.Fragment { + ctor @Deprecated public PreferenceFragment(); + method @Deprecated public void addPreferencesFromIntent(android.content.Intent); + method @Deprecated public void addPreferencesFromResource(@XmlRes int); + method @Deprecated public android.preference.Preference findPreference(CharSequence); + method @Deprecated public android.preference.PreferenceManager getPreferenceManager(); + method @Deprecated public android.preference.PreferenceScreen getPreferenceScreen(); + method @Deprecated public boolean onPreferenceTreeClick(android.preference.PreferenceScreen, android.preference.Preference); + method @Deprecated public void setPreferenceScreen(android.preference.PreferenceScreen); + } + + @Deprecated public static interface PreferenceFragment.OnPreferenceStartFragmentCallback { + method @Deprecated public boolean onPreferenceStartFragment(android.preference.PreferenceFragment, android.preference.Preference); + } + + @Deprecated public abstract class PreferenceGroup extends android.preference.Preference { + ctor @Deprecated public PreferenceGroup(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public PreferenceGroup(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public PreferenceGroup(android.content.Context, android.util.AttributeSet); + method @Deprecated public void addItemFromInflater(android.preference.Preference); + method @Deprecated public boolean addPreference(android.preference.Preference); + method @Deprecated protected void dispatchRestoreInstanceState(android.os.Bundle); + method @Deprecated protected void dispatchSaveInstanceState(android.os.Bundle); + method @Deprecated public android.preference.Preference findPreference(CharSequence); + method @Deprecated public android.preference.Preference getPreference(int); + method @Deprecated public int getPreferenceCount(); + method @Deprecated protected boolean isOnSameScreenAsChildren(); + method @Deprecated public boolean isOrderingAsAdded(); + method @Deprecated protected boolean onPrepareAddPreference(android.preference.Preference); + method @Deprecated public void removeAll(); + method @Deprecated public boolean removePreference(android.preference.Preference); + method @Deprecated public void setOrderingAsAdded(boolean); + } + + @Deprecated public class PreferenceManager { + method @Deprecated public android.preference.PreferenceScreen createPreferenceScreen(android.content.Context); + method @Deprecated @Nullable public android.preference.Preference findPreference(CharSequence); + method @Deprecated public static android.content.SharedPreferences getDefaultSharedPreferences(android.content.Context); + method @Deprecated public static String getDefaultSharedPreferencesName(android.content.Context); + method @Deprecated @Nullable public android.preference.PreferenceDataStore getPreferenceDataStore(); + method @Deprecated public android.content.SharedPreferences getSharedPreferences(); + method @Deprecated public int getSharedPreferencesMode(); + method @Deprecated public String getSharedPreferencesName(); + method @Deprecated public boolean isStorageDefault(); + method @Deprecated public boolean isStorageDeviceProtected(); + method @Deprecated public static void setDefaultValues(android.content.Context, @XmlRes int, boolean); + method @Deprecated public static void setDefaultValues(android.content.Context, String, int, int, boolean); + method @Deprecated public void setPreferenceDataStore(android.preference.PreferenceDataStore); + method @Deprecated public void setSharedPreferencesMode(int); + method @Deprecated public void setSharedPreferencesName(String); + method @Deprecated public void setStorageDefault(); + method @Deprecated public void setStorageDeviceProtected(); + field @Deprecated public static final String KEY_HAS_SET_DEFAULT_VALUES = "_has_set_default_values"; + field @Deprecated public static final String METADATA_KEY_PREFERENCES = "android.preference"; + } + + @Deprecated public static interface PreferenceManager.OnActivityDestroyListener { + method @Deprecated public void onActivityDestroy(); + } + + @Deprecated public static interface PreferenceManager.OnActivityResultListener { + method @Deprecated public boolean onActivityResult(int, int, android.content.Intent); + } + + @Deprecated public static interface PreferenceManager.OnActivityStopListener { + method @Deprecated public void onActivityStop(); + } + + @Deprecated public final class PreferenceScreen extends android.preference.PreferenceGroup implements android.widget.AdapterView.OnItemClickListener android.content.DialogInterface.OnDismissListener { + method @Deprecated public void bind(android.widget.ListView); + method @Deprecated public android.app.Dialog getDialog(); + method @Deprecated public android.widget.ListAdapter getRootAdapter(); + method @Deprecated protected android.widget.ListAdapter onCreateRootAdapter(); + method @Deprecated public void onDismiss(android.content.DialogInterface); + method @Deprecated public void onItemClick(android.widget.AdapterView, android.view.View, int, long); + } + + @Deprecated public class RingtonePreference extends android.preference.Preference implements android.preference.PreferenceManager.OnActivityResultListener { + ctor @Deprecated public RingtonePreference(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public RingtonePreference(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public RingtonePreference(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public RingtonePreference(android.content.Context); + method @Deprecated public int getRingtoneType(); + method @Deprecated public boolean getShowDefault(); + method @Deprecated public boolean getShowSilent(); + method @Deprecated public boolean onActivityResult(int, int, android.content.Intent); + method @Deprecated protected void onPrepareRingtonePickerIntent(android.content.Intent); + method @Deprecated protected android.net.Uri onRestoreRingtone(); + method @Deprecated protected void onSaveRingtone(android.net.Uri); + method @Deprecated public void setRingtoneType(int); + method @Deprecated public void setShowDefault(boolean); + method @Deprecated public void setShowSilent(boolean); + } + + @Deprecated public class SwitchPreference extends android.preference.TwoStatePreference { + ctor @Deprecated public SwitchPreference(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public SwitchPreference(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public SwitchPreference(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public SwitchPreference(android.content.Context); + method @Deprecated public CharSequence getSwitchTextOff(); + method @Deprecated public CharSequence getSwitchTextOn(); + method @Deprecated public void setSwitchTextOff(CharSequence); + method @Deprecated public void setSwitchTextOff(@StringRes int); + method @Deprecated public void setSwitchTextOn(CharSequence); + method @Deprecated public void setSwitchTextOn(@StringRes int); + } + + @Deprecated public abstract class TwoStatePreference extends android.preference.Preference { + ctor @Deprecated public TwoStatePreference(android.content.Context, android.util.AttributeSet, int, int); + ctor @Deprecated public TwoStatePreference(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public TwoStatePreference(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public TwoStatePreference(android.content.Context); + method @Deprecated public boolean getDisableDependentsState(); + method @Deprecated public CharSequence getSummaryOff(); + method @Deprecated public CharSequence getSummaryOn(); + method @Deprecated public boolean isChecked(); + method @Deprecated public void setChecked(boolean); + method @Deprecated public void setDisableDependentsState(boolean); + method @Deprecated public void setSummaryOff(CharSequence); + method @Deprecated public void setSummaryOff(@StringRes int); + method @Deprecated public void setSummaryOn(CharSequence); + method @Deprecated public void setSummaryOn(@StringRes int); + } + +} + +package android.print { + + public final class PageRange implements android.os.Parcelable { + ctor public PageRange(@IntRange(from=0) int, @IntRange(from=0) int); + method public int describeContents(); + method @IntRange(from=0) public int getEnd(); + method @IntRange(from=0) public int getStart(); + method public void writeToParcel(android.os.Parcel, int); + field public static final android.print.PageRange ALL_PAGES; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class PrintAttributes implements android.os.Parcelable { + method public int describeContents(); + method @IntRange(from=0) public int getColorMode(); + method @IntRange(from=0) public int getDuplexMode(); + method @Nullable public android.print.PrintAttributes.MediaSize getMediaSize(); + method @Nullable public android.print.PrintAttributes.Margins getMinMargins(); + method @Nullable public android.print.PrintAttributes.Resolution getResolution(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int COLOR_MODE_COLOR = 2; // 0x2 + field public static final int COLOR_MODE_MONOCHROME = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DUPLEX_MODE_LONG_EDGE = 2; // 0x2 + field public static final int DUPLEX_MODE_NONE = 1; // 0x1 + field public static final int DUPLEX_MODE_SHORT_EDGE = 4; // 0x4 + } + + public static final class PrintAttributes.Builder { + ctor public PrintAttributes.Builder(); + method @NonNull public android.print.PrintAttributes build(); + method @NonNull public android.print.PrintAttributes.Builder setColorMode(int); + method @NonNull public android.print.PrintAttributes.Builder setDuplexMode(int); + method @NonNull public android.print.PrintAttributes.Builder setMediaSize(@NonNull android.print.PrintAttributes.MediaSize); + method @NonNull public android.print.PrintAttributes.Builder setMinMargins(@NonNull android.print.PrintAttributes.Margins); + method @NonNull public android.print.PrintAttributes.Builder setResolution(@NonNull android.print.PrintAttributes.Resolution); + } + + public static final class PrintAttributes.Margins { + ctor public PrintAttributes.Margins(int, int, int, int); + method public int getBottomMils(); + method public int getLeftMils(); + method public int getRightMils(); + method public int getTopMils(); + field public static final android.print.PrintAttributes.Margins NO_MARGINS; + } + + public static final class PrintAttributes.MediaSize { + ctor public PrintAttributes.MediaSize(@NonNull String, @NonNull String, @IntRange(from=1) int, @IntRange(from=1) int); + method @NonNull public android.print.PrintAttributes.MediaSize asLandscape(); + method @NonNull public android.print.PrintAttributes.MediaSize asPortrait(); + method @IntRange(from=1) public int getHeightMils(); + method @NonNull public String getId(); + method @NonNull public String getLabel(@NonNull android.content.pm.PackageManager); + method @IntRange(from=1) public int getWidthMils(); + method public boolean isPortrait(); + field @NonNull public static final android.print.PrintAttributes.MediaSize ANSI_C; + field @NonNull public static final android.print.PrintAttributes.MediaSize ANSI_D; + field @NonNull public static final android.print.PrintAttributes.MediaSize ANSI_E; + field @NonNull public static final android.print.PrintAttributes.MediaSize ANSI_F; + field public static final android.print.PrintAttributes.MediaSize ISO_A0; + field public static final android.print.PrintAttributes.MediaSize ISO_A1; + field public static final android.print.PrintAttributes.MediaSize ISO_A10; + field public static final android.print.PrintAttributes.MediaSize ISO_A2; + field public static final android.print.PrintAttributes.MediaSize ISO_A3; + field public static final android.print.PrintAttributes.MediaSize ISO_A4; + field public static final android.print.PrintAttributes.MediaSize ISO_A5; + field public static final android.print.PrintAttributes.MediaSize ISO_A6; + field public static final android.print.PrintAttributes.MediaSize ISO_A7; + field public static final android.print.PrintAttributes.MediaSize ISO_A8; + field public static final android.print.PrintAttributes.MediaSize ISO_A9; + field public static final android.print.PrintAttributes.MediaSize ISO_B0; + field public static final android.print.PrintAttributes.MediaSize ISO_B1; + field public static final android.print.PrintAttributes.MediaSize ISO_B10; + field public static final android.print.PrintAttributes.MediaSize ISO_B2; + field public static final android.print.PrintAttributes.MediaSize ISO_B3; + field public static final android.print.PrintAttributes.MediaSize ISO_B4; + field public static final android.print.PrintAttributes.MediaSize ISO_B5; + field public static final android.print.PrintAttributes.MediaSize ISO_B6; + field public static final android.print.PrintAttributes.MediaSize ISO_B7; + field public static final android.print.PrintAttributes.MediaSize ISO_B8; + field public static final android.print.PrintAttributes.MediaSize ISO_B9; + field public static final android.print.PrintAttributes.MediaSize ISO_C0; + field public static final android.print.PrintAttributes.MediaSize ISO_C1; + field public static final android.print.PrintAttributes.MediaSize ISO_C10; + field public static final android.print.PrintAttributes.MediaSize ISO_C2; + field public static final android.print.PrintAttributes.MediaSize ISO_C3; + field public static final android.print.PrintAttributes.MediaSize ISO_C4; + field public static final android.print.PrintAttributes.MediaSize ISO_C5; + field public static final android.print.PrintAttributes.MediaSize ISO_C6; + field public static final android.print.PrintAttributes.MediaSize ISO_C7; + field public static final android.print.PrintAttributes.MediaSize ISO_C8; + field public static final android.print.PrintAttributes.MediaSize ISO_C9; + field public static final android.print.PrintAttributes.MediaSize JIS_B0; + field public static final android.print.PrintAttributes.MediaSize JIS_B1; + field public static final android.print.PrintAttributes.MediaSize JIS_B10; + field public static final android.print.PrintAttributes.MediaSize JIS_B2; + field public static final android.print.PrintAttributes.MediaSize JIS_B3; + field public static final android.print.PrintAttributes.MediaSize JIS_B4; + field public static final android.print.PrintAttributes.MediaSize JIS_B5; + field public static final android.print.PrintAttributes.MediaSize JIS_B6; + field public static final android.print.PrintAttributes.MediaSize JIS_B7; + field public static final android.print.PrintAttributes.MediaSize JIS_B8; + field public static final android.print.PrintAttributes.MediaSize JIS_B9; + field public static final android.print.PrintAttributes.MediaSize JIS_EXEC; + field public static final android.print.PrintAttributes.MediaSize JPN_CHOU2; + field public static final android.print.PrintAttributes.MediaSize JPN_CHOU3; + field public static final android.print.PrintAttributes.MediaSize JPN_CHOU4; + field public static final android.print.PrintAttributes.MediaSize JPN_HAGAKI; + field public static final android.print.PrintAttributes.MediaSize JPN_KAHU; + field public static final android.print.PrintAttributes.MediaSize JPN_KAKU2; + field @NonNull public static final android.print.PrintAttributes.MediaSize JPN_OE_PHOTO_L; + field public static final android.print.PrintAttributes.MediaSize JPN_OUFUKU; + field public static final android.print.PrintAttributes.MediaSize JPN_YOU4; + field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_A; + field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_B; + field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_C; + field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_D; + field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_E; + field @NonNull public static final android.print.PrintAttributes.MediaSize NA_ARCH_E1; + field public static final android.print.PrintAttributes.MediaSize NA_FOOLSCAP; + field public static final android.print.PrintAttributes.MediaSize NA_GOVT_LETTER; + field public static final android.print.PrintAttributes.MediaSize NA_INDEX_3X5; + field public static final android.print.PrintAttributes.MediaSize NA_INDEX_4X6; + field public static final android.print.PrintAttributes.MediaSize NA_INDEX_5X8; + field public static final android.print.PrintAttributes.MediaSize NA_JUNIOR_LEGAL; + field public static final android.print.PrintAttributes.MediaSize NA_LEDGER; + field public static final android.print.PrintAttributes.MediaSize NA_LEGAL; + field public static final android.print.PrintAttributes.MediaSize NA_LETTER; + field public static final android.print.PrintAttributes.MediaSize NA_MONARCH; + field public static final android.print.PrintAttributes.MediaSize NA_QUARTO; + field @NonNull public static final android.print.PrintAttributes.MediaSize NA_SUPER_B; + field public static final android.print.PrintAttributes.MediaSize NA_TABLOID; + field public static final android.print.PrintAttributes.MediaSize OM_DAI_PA_KAI; + field public static final android.print.PrintAttributes.MediaSize OM_JUURO_KU_KAI; + field public static final android.print.PrintAttributes.MediaSize OM_PA_KAI; + field public static final android.print.PrintAttributes.MediaSize PRC_1; + field public static final android.print.PrintAttributes.MediaSize PRC_10; + field public static final android.print.PrintAttributes.MediaSize PRC_16K; + field public static final android.print.PrintAttributes.MediaSize PRC_2; + field public static final android.print.PrintAttributes.MediaSize PRC_3; + field public static final android.print.PrintAttributes.MediaSize PRC_4; + field public static final android.print.PrintAttributes.MediaSize PRC_5; + field public static final android.print.PrintAttributes.MediaSize PRC_6; + field public static final android.print.PrintAttributes.MediaSize PRC_7; + field public static final android.print.PrintAttributes.MediaSize PRC_8; + field public static final android.print.PrintAttributes.MediaSize PRC_9; + field public static final android.print.PrintAttributes.MediaSize ROC_16K; + field public static final android.print.PrintAttributes.MediaSize ROC_8K; + field public static final android.print.PrintAttributes.MediaSize UNKNOWN_LANDSCAPE; + field public static final android.print.PrintAttributes.MediaSize UNKNOWN_PORTRAIT; + } + + public static final class PrintAttributes.Resolution { + ctor public PrintAttributes.Resolution(@NonNull String, @NonNull String, @IntRange(from=1) int, @IntRange(from=1) int); + method @IntRange(from=1) public int getHorizontalDpi(); + method @NonNull public String getId(); + method @NonNull public String getLabel(); + method @IntRange(from=1) public int getVerticalDpi(); + } + + public abstract class PrintDocumentAdapter { + ctor public PrintDocumentAdapter(); + method public void onFinish(); + method public abstract void onLayout(android.print.PrintAttributes, android.print.PrintAttributes, android.os.CancellationSignal, android.print.PrintDocumentAdapter.LayoutResultCallback, android.os.Bundle); + method public void onStart(); + method public abstract void onWrite(android.print.PageRange[], android.os.ParcelFileDescriptor, android.os.CancellationSignal, android.print.PrintDocumentAdapter.WriteResultCallback); + field public static final String EXTRA_PRINT_PREVIEW = "EXTRA_PRINT_PREVIEW"; + } + + public abstract static class PrintDocumentAdapter.LayoutResultCallback { + method public void onLayoutCancelled(); + method public void onLayoutFailed(CharSequence); + method public void onLayoutFinished(android.print.PrintDocumentInfo, boolean); + } + + public abstract static class PrintDocumentAdapter.WriteResultCallback { + method public void onWriteCancelled(); + method public void onWriteFailed(CharSequence); + method public void onWriteFinished(android.print.PageRange[]); + } + + public final class PrintDocumentInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getContentType(); + method @IntRange(from=0) public long getDataSize(); + method @NonNull public String getName(); + method @IntRange(from=0xffffffff) public int getPageCount(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CONTENT_TYPE_DOCUMENT = 0; // 0x0 + field public static final int CONTENT_TYPE_PHOTO = 1; // 0x1 + field public static final int CONTENT_TYPE_UNKNOWN = -1; // 0xffffffff + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int PAGE_COUNT_UNKNOWN = -1; // 0xffffffff + } + + public static final class PrintDocumentInfo.Builder { + ctor public PrintDocumentInfo.Builder(@NonNull String); + method @NonNull public android.print.PrintDocumentInfo build(); + method @NonNull public android.print.PrintDocumentInfo.Builder setContentType(int); + method @NonNull public android.print.PrintDocumentInfo.Builder setPageCount(@IntRange(from=0xffffffff) int); + } + + public final class PrintJob { + method public void cancel(); + method @Nullable public android.print.PrintJobId getId(); + method @NonNull public android.print.PrintJobInfo getInfo(); + method public boolean isBlocked(); + method public boolean isCancelled(); + method public boolean isCompleted(); + method public boolean isFailed(); + method public boolean isQueued(); + method public boolean isStarted(); + method public void restart(); + } + + public final class PrintJobId implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class PrintJobInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getAdvancedIntOption(String); + method public String getAdvancedStringOption(String); + method @NonNull public android.print.PrintAttributes getAttributes(); + method @IntRange(from=0) public int getCopies(); + method public long getCreationTime(); + method @Nullable public android.print.PrintJobId getId(); + method @NonNull public String getLabel(); + method @Nullable public android.print.PageRange[] getPages(); + method @Nullable public android.print.PrinterId getPrinterId(); + method public int getState(); + method public boolean hasAdvancedOption(String); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STATE_BLOCKED = 4; // 0x4 + field public static final int STATE_CANCELED = 7; // 0x7 + field public static final int STATE_COMPLETED = 5; // 0x5 + field public static final int STATE_CREATED = 1; // 0x1 + field public static final int STATE_FAILED = 6; // 0x6 + field public static final int STATE_QUEUED = 2; // 0x2 + field public static final int STATE_STARTED = 3; // 0x3 + } + + public static final class PrintJobInfo.Builder { + ctor public PrintJobInfo.Builder(@Nullable android.print.PrintJobInfo); + method @NonNull public android.print.PrintJobInfo build(); + method public void putAdvancedOption(@NonNull String, @Nullable String); + method public void putAdvancedOption(@NonNull String, int); + method public void setAttributes(@NonNull android.print.PrintAttributes); + method public void setCopies(@IntRange(from=1) int); + method public void setPages(@NonNull android.print.PageRange[]); + } + + public final class PrintManager { + method @NonNull public java.util.List getPrintJobs(); + method public boolean isPrintServiceEnabled(@NonNull android.content.ComponentName); + method @NonNull public android.print.PrintJob print(@NonNull String, @NonNull android.print.PrintDocumentAdapter, @Nullable android.print.PrintAttributes); + } + + public final class PrinterCapabilitiesInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getColorModes(); + method @NonNull public android.print.PrintAttributes getDefaults(); + method public int getDuplexModes(); + method @NonNull public java.util.List getMediaSizes(); + method @NonNull public android.print.PrintAttributes.Margins getMinMargins(); + method @NonNull public java.util.List getResolutions(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class PrinterCapabilitiesInfo.Builder { + ctor public PrinterCapabilitiesInfo.Builder(@NonNull android.print.PrinterId); + method @NonNull public android.print.PrinterCapabilitiesInfo.Builder addMediaSize(@NonNull android.print.PrintAttributes.MediaSize, boolean); + method @NonNull public android.print.PrinterCapabilitiesInfo.Builder addResolution(@NonNull android.print.PrintAttributes.Resolution, boolean); + method @NonNull public android.print.PrinterCapabilitiesInfo build(); + method @NonNull public android.print.PrinterCapabilitiesInfo.Builder setColorModes(int, int); + method @NonNull public android.print.PrinterCapabilitiesInfo.Builder setDuplexModes(int, int); + method @NonNull public android.print.PrinterCapabilitiesInfo.Builder setMinMargins(@NonNull android.print.PrintAttributes.Margins); + } + + public final class PrinterId implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getLocalId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class PrinterInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.print.PrinterCapabilitiesInfo getCapabilities(); + method @Nullable public String getDescription(); + method @NonNull public android.print.PrinterId getId(); + method @NonNull public String getName(); + method public int getStatus(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STATUS_BUSY = 2; // 0x2 + field public static final int STATUS_IDLE = 1; // 0x1 + field public static final int STATUS_UNAVAILABLE = 3; // 0x3 + } + + public static final class PrinterInfo.Builder { + ctor public PrinterInfo.Builder(@NonNull android.print.PrinterId, @NonNull String, int); + ctor public PrinterInfo.Builder(@NonNull android.print.PrinterInfo); + method @NonNull public android.print.PrinterInfo build(); + method @NonNull public android.print.PrinterInfo.Builder setCapabilities(@NonNull android.print.PrinterCapabilitiesInfo); + method @NonNull public android.print.PrinterInfo.Builder setDescription(@NonNull String); + method @NonNull public android.print.PrinterInfo.Builder setHasCustomPrinterIcon(boolean); + method @NonNull public android.print.PrinterInfo.Builder setIconResourceId(@DrawableRes int); + method @NonNull public android.print.PrinterInfo.Builder setInfoIntent(@NonNull android.app.PendingIntent); + method @NonNull public android.print.PrinterInfo.Builder setName(@NonNull String); + method @NonNull public android.print.PrinterInfo.Builder setStatus(int); + } + +} + +package android.print.pdf { + + public class PrintedPdfDocument extends android.graphics.pdf.PdfDocument { + ctor public PrintedPdfDocument(@NonNull android.content.Context, @NonNull android.print.PrintAttributes); + method @NonNull public android.graphics.Rect getPageContentRect(); + method @IntRange(from=0) public int getPageHeight(); + method @IntRange(from=0) public int getPageWidth(); + method @NonNull public android.graphics.pdf.PdfDocument.Page startPage(@IntRange(from=0) int); + } + +} + +package android.printservice { + + public final class CustomPrinterIconCallback { + method public boolean onCustomPrinterIconLoaded(@Nullable android.graphics.drawable.Icon); + } + + public final class PrintDocument { + method @Nullable public android.os.ParcelFileDescriptor getData(); + method @NonNull public android.print.PrintDocumentInfo getInfo(); + } + + public final class PrintJob { + method @MainThread public boolean block(@Nullable String); + method @MainThread public boolean cancel(); + method @MainThread public boolean complete(); + method @MainThread public boolean fail(@Nullable String); + method @MainThread public int getAdvancedIntOption(String); + method @MainThread public String getAdvancedStringOption(String); + method @MainThread @NonNull public android.printservice.PrintDocument getDocument(); + method @MainThread public android.print.PrintJobId getId(); + method @MainThread @NonNull public android.print.PrintJobInfo getInfo(); + method @MainThread @Nullable public String getTag(); + method @MainThread public boolean hasAdvancedOption(String); + method @MainThread public boolean isBlocked(); + method @MainThread public boolean isCancelled(); + method @MainThread public boolean isCompleted(); + method @MainThread public boolean isFailed(); + method @MainThread public boolean isQueued(); + method @MainThread public boolean isStarted(); + method @MainThread public void setProgress(@FloatRange(from=0.0, to=1.0) float); + method @MainThread public void setStatus(@Nullable CharSequence); + method @MainThread public void setStatus(@StringRes int); + method @MainThread public boolean setTag(@NonNull String); + method @MainThread public boolean start(); + } + + public abstract class PrintService extends android.app.Service { + ctor public PrintService(); + method protected final void attachBaseContext(android.content.Context); + method @NonNull public final android.print.PrinterId generatePrinterId(String); + method public final java.util.List getActivePrintJobs(); + method public final android.os.IBinder onBind(android.content.Intent); + method protected void onConnected(); + method @Nullable protected abstract android.printservice.PrinterDiscoverySession onCreatePrinterDiscoverySession(); + method protected void onDisconnected(); + method protected abstract void onPrintJobQueued(android.printservice.PrintJob); + method protected abstract void onRequestCancelPrintJob(android.printservice.PrintJob); + field public static final String EXTRA_CAN_SELECT_PRINTER = "android.printservice.extra.CAN_SELECT_PRINTER"; + field public static final String EXTRA_PRINTER_INFO = "android.intent.extra.print.EXTRA_PRINTER_INFO"; + field public static final String EXTRA_PRINT_DOCUMENT_INFO = "android.printservice.extra.PRINT_DOCUMENT_INFO"; + field public static final String EXTRA_PRINT_JOB_INFO = "android.intent.extra.print.PRINT_JOB_INFO"; + field public static final String EXTRA_SELECT_PRINTER = "android.printservice.extra.SELECT_PRINTER"; + field public static final String SERVICE_INTERFACE = "android.printservice.PrintService"; + field public static final String SERVICE_META_DATA = "android.printservice"; + } + + public abstract class PrinterDiscoverySession { + ctor public PrinterDiscoverySession(); + method public final void addPrinters(@NonNull java.util.List); + method @NonNull public final java.util.List getPrinters(); + method @NonNull public final java.util.List getTrackedPrinters(); + method public final boolean isDestroyed(); + method public final boolean isPrinterDiscoveryStarted(); + method public abstract void onDestroy(); + method public void onRequestCustomPrinterIcon(@NonNull android.print.PrinterId, @NonNull android.os.CancellationSignal, @NonNull android.printservice.CustomPrinterIconCallback); + method public abstract void onStartPrinterDiscovery(@NonNull java.util.List); + method public abstract void onStartPrinterStateTracking(@NonNull android.print.PrinterId); + method public abstract void onStopPrinterDiscovery(); + method public abstract void onStopPrinterStateTracking(@NonNull android.print.PrinterId); + method public abstract void onValidatePrinters(@NonNull java.util.List); + method public final void removePrinters(@NonNull java.util.List); + } + +} + +package android.provider { + + public final class AlarmClock { + ctor public AlarmClock(); + field public static final String ACTION_DISMISS_ALARM = "android.intent.action.DISMISS_ALARM"; + field public static final String ACTION_DISMISS_TIMER = "android.intent.action.DISMISS_TIMER"; + field public static final String ACTION_SET_ALARM = "android.intent.action.SET_ALARM"; + field public static final String ACTION_SET_TIMER = "android.intent.action.SET_TIMER"; + field public static final String ACTION_SHOW_ALARMS = "android.intent.action.SHOW_ALARMS"; + field public static final String ACTION_SHOW_TIMERS = "android.intent.action.SHOW_TIMERS"; + field public static final String ACTION_SNOOZE_ALARM = "android.intent.action.SNOOZE_ALARM"; + field public static final String ALARM_SEARCH_MODE_ALL = "android.all"; + field public static final String ALARM_SEARCH_MODE_LABEL = "android.label"; + field public static final String ALARM_SEARCH_MODE_NEXT = "android.next"; + field public static final String ALARM_SEARCH_MODE_TIME = "android.time"; + field public static final String EXTRA_ALARM_SEARCH_MODE = "android.intent.extra.alarm.SEARCH_MODE"; + field public static final String EXTRA_ALARM_SNOOZE_DURATION = "android.intent.extra.alarm.SNOOZE_DURATION"; + field public static final String EXTRA_DAYS = "android.intent.extra.alarm.DAYS"; + field public static final String EXTRA_HOUR = "android.intent.extra.alarm.HOUR"; + field public static final String EXTRA_IS_PM = "android.intent.extra.alarm.IS_PM"; + field public static final String EXTRA_LENGTH = "android.intent.extra.alarm.LENGTH"; + field public static final String EXTRA_MESSAGE = "android.intent.extra.alarm.MESSAGE"; + field public static final String EXTRA_MINUTES = "android.intent.extra.alarm.MINUTES"; + field public static final String EXTRA_RINGTONE = "android.intent.extra.alarm.RINGTONE"; + field public static final String EXTRA_SKIP_UI = "android.intent.extra.alarm.SKIP_UI"; + field public static final String EXTRA_VIBRATE = "android.intent.extra.alarm.VIBRATE"; + field public static final String VALUE_RINGTONE_SILENT = "silent"; + } + + public interface BaseColumns { + field public static final String _COUNT = "_count"; + field public static final String _ID = "_id"; + } + + public class BlockedNumberContract { + method public static boolean canCurrentUserBlockNumbers(android.content.Context); + method @WorkerThread public static boolean isBlocked(android.content.Context, String); + method @WorkerThread public static int unblock(android.content.Context, String); + field public static final String AUTHORITY = "com.android.blockednumber"; + field public static final android.net.Uri AUTHORITY_URI; + } + + public static class BlockedNumberContract.BlockedNumbers { + field public static final String COLUMN_E164_NUMBER = "e164_number"; + field public static final String COLUMN_ID = "_id"; + field public static final String COLUMN_ORIGINAL_NUMBER = "original_number"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/blocked_number"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/blocked_number"; + field public static final android.net.Uri CONTENT_URI; + } + + public class Browser { + ctor public Browser(); + method public static final void sendString(android.content.Context, String); + field public static final String EXTRA_APPLICATION_ID = "com.android.browser.application_id"; + field public static final String EXTRA_CREATE_NEW_TAB = "create_new_tab"; + field public static final String EXTRA_HEADERS = "com.android.browser.headers"; + field public static final String INITIAL_ZOOM_LEVEL = "browser.initialZoomLevel"; + } + + public final class CalendarContract { + method public static boolean startViewCalendarEventInManagedProfile(@NonNull android.content.Context, long, long, long, boolean, int); + field public static final String ACCOUNT_TYPE_LOCAL = "LOCAL"; + field public static final String ACTION_EVENT_REMINDER = "android.intent.action.EVENT_REMINDER"; + field public static final String ACTION_HANDLE_CUSTOM_EVENT = "android.provider.calendar.action.HANDLE_CUSTOM_EVENT"; + field public static final String ACTION_VIEW_MANAGED_PROFILE_CALENDAR_EVENT = "android.provider.calendar.action.VIEW_MANAGED_PROFILE_CALENDAR_EVENT"; + field public static final String AUTHORITY = "com.android.calendar"; + field public static final String CALLER_IS_SYNCADAPTER = "caller_is_syncadapter"; + field public static final android.net.Uri CONTENT_URI; + field public static final String EXTRA_CUSTOM_APP_URI = "customAppUri"; + field public static final String EXTRA_EVENT_ALL_DAY = "allDay"; + field public static final String EXTRA_EVENT_BEGIN_TIME = "beginTime"; + field public static final String EXTRA_EVENT_END_TIME = "endTime"; + field public static final String EXTRA_EVENT_ID = "id"; + } + + public static final class CalendarContract.Attendees implements android.provider.BaseColumns android.provider.CalendarContract.AttendeesColumns android.provider.CalendarContract.EventsColumns { + method public static android.database.Cursor query(android.content.ContentResolver, long, String[]); + field public static final android.net.Uri CONTENT_URI; + } + + protected static interface CalendarContract.AttendeesColumns { + field public static final String ATTENDEE_EMAIL = "attendeeEmail"; + field public static final String ATTENDEE_IDENTITY = "attendeeIdentity"; + field public static final String ATTENDEE_ID_NAMESPACE = "attendeeIdNamespace"; + field public static final String ATTENDEE_NAME = "attendeeName"; + field public static final String ATTENDEE_RELATIONSHIP = "attendeeRelationship"; + field public static final String ATTENDEE_STATUS = "attendeeStatus"; + field public static final int ATTENDEE_STATUS_ACCEPTED = 1; // 0x1 + field public static final int ATTENDEE_STATUS_DECLINED = 2; // 0x2 + field public static final int ATTENDEE_STATUS_INVITED = 3; // 0x3 + field public static final int ATTENDEE_STATUS_NONE = 0; // 0x0 + field public static final int ATTENDEE_STATUS_TENTATIVE = 4; // 0x4 + field public static final String ATTENDEE_TYPE = "attendeeType"; + field public static final String EVENT_ID = "event_id"; + field public static final int RELATIONSHIP_ATTENDEE = 1; // 0x1 + field public static final int RELATIONSHIP_NONE = 0; // 0x0 + field public static final int RELATIONSHIP_ORGANIZER = 2; // 0x2 + field public static final int RELATIONSHIP_PERFORMER = 3; // 0x3 + field public static final int RELATIONSHIP_SPEAKER = 4; // 0x4 + field public static final int TYPE_NONE = 0; // 0x0 + field public static final int TYPE_OPTIONAL = 2; // 0x2 + field public static final int TYPE_REQUIRED = 1; // 0x1 + field public static final int TYPE_RESOURCE = 3; // 0x3 + } + + public static final class CalendarContract.CalendarAlerts implements android.provider.BaseColumns android.provider.CalendarContract.CalendarAlertsColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.EventsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final android.net.Uri CONTENT_URI_BY_INSTANCE; + } + + protected static interface CalendarContract.CalendarAlertsColumns { + field public static final String ALARM_TIME = "alarmTime"; + field public static final String BEGIN = "begin"; + field public static final String CREATION_TIME = "creationTime"; + field public static final String DEFAULT_SORT_ORDER = "begin ASC,title ASC"; + field public static final String END = "end"; + field public static final String EVENT_ID = "event_id"; + field public static final String MINUTES = "minutes"; + field public static final String NOTIFY_TIME = "notifyTime"; + field public static final String RECEIVED_TIME = "receivedTime"; + field public static final String STATE = "state"; + field public static final int STATE_DISMISSED = 2; // 0x2 + field public static final int STATE_FIRED = 1; // 0x1 + field public static final int STATE_SCHEDULED = 0; // 0x0 + } + + public static final class CalendarContract.CalendarCache implements android.provider.CalendarContract.CalendarCacheColumns { + field public static final String KEY_TIMEZONE_INSTANCES = "timezoneInstances"; + field public static final String KEY_TIMEZONE_INSTANCES_PREVIOUS = "timezoneInstancesPrevious"; + field public static final String KEY_TIMEZONE_TYPE = "timezoneType"; + field public static final String TIMEZONE_TYPE_AUTO = "auto"; + field public static final String TIMEZONE_TYPE_HOME = "home"; + field public static final android.net.Uri URI; + } + + protected static interface CalendarContract.CalendarCacheColumns { + field public static final String KEY = "key"; + field public static final String VALUE = "value"; + } + + protected static interface CalendarContract.CalendarColumns { + field public static final String ALLOWED_ATTENDEE_TYPES = "allowedAttendeeTypes"; + field public static final String ALLOWED_AVAILABILITY = "allowedAvailability"; + field public static final String ALLOWED_REMINDERS = "allowedReminders"; + field public static final String CALENDAR_ACCESS_LEVEL = "calendar_access_level"; + field public static final String CALENDAR_COLOR = "calendar_color"; + field public static final String CALENDAR_COLOR_KEY = "calendar_color_index"; + field public static final String CALENDAR_DISPLAY_NAME = "calendar_displayName"; + field public static final String CALENDAR_TIME_ZONE = "calendar_timezone"; + field public static final int CAL_ACCESS_CONTRIBUTOR = 500; // 0x1f4 + field public static final int CAL_ACCESS_EDITOR = 600; // 0x258 + field public static final int CAL_ACCESS_FREEBUSY = 100; // 0x64 + field public static final int CAL_ACCESS_NONE = 0; // 0x0 + field public static final int CAL_ACCESS_OVERRIDE = 400; // 0x190 + field public static final int CAL_ACCESS_OWNER = 700; // 0x2bc + field public static final int CAL_ACCESS_READ = 200; // 0xc8 + field public static final int CAL_ACCESS_RESPOND = 300; // 0x12c + field public static final int CAL_ACCESS_ROOT = 800; // 0x320 + field public static final String CAN_MODIFY_TIME_ZONE = "canModifyTimeZone"; + field public static final String CAN_ORGANIZER_RESPOND = "canOrganizerRespond"; + field public static final String IS_PRIMARY = "isPrimary"; + field public static final String MAX_REMINDERS = "maxReminders"; + field public static final String OWNER_ACCOUNT = "ownerAccount"; + field public static final String SYNC_EVENTS = "sync_events"; + field public static final String VISIBLE = "visible"; + } + + public static final class CalendarContract.CalendarEntity implements android.provider.BaseColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.SyncColumns { + method public static android.content.EntityIterator newEntityIterator(android.database.Cursor); + field public static final android.net.Uri CONTENT_URI; + } + + protected static interface CalendarContract.CalendarSyncColumns { + field public static final String CAL_SYNC1 = "cal_sync1"; + field public static final String CAL_SYNC10 = "cal_sync10"; + field public static final String CAL_SYNC2 = "cal_sync2"; + field public static final String CAL_SYNC3 = "cal_sync3"; + field public static final String CAL_SYNC4 = "cal_sync4"; + field public static final String CAL_SYNC5 = "cal_sync5"; + field public static final String CAL_SYNC6 = "cal_sync6"; + field public static final String CAL_SYNC7 = "cal_sync7"; + field public static final String CAL_SYNC8 = "cal_sync8"; + field public static final String CAL_SYNC9 = "cal_sync9"; + } + + public static final class CalendarContract.Calendars implements android.provider.BaseColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.SyncColumns { + field public static final String CALENDAR_LOCATION = "calendar_location"; + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "calendar_displayName"; + field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; + field public static final String NAME = "name"; + } + + public static final class CalendarContract.Colors implements android.provider.CalendarContract.ColorsColumns { + field public static final android.net.Uri CONTENT_URI; + } + + protected static interface CalendarContract.ColorsColumns extends android.provider.SyncStateContract.Columns { + field public static final String COLOR = "color"; + field public static final String COLOR_KEY = "color_index"; + field public static final String COLOR_TYPE = "color_type"; + field public static final int TYPE_CALENDAR = 0; // 0x0 + field public static final int TYPE_EVENT = 1; // 0x1 + } + + public static final class CalendarContract.EventDays implements android.provider.CalendarContract.EventDaysColumns { + method public static android.database.Cursor query(android.content.ContentResolver, int, int, String[]); + field public static final android.net.Uri CONTENT_URI; + } + + protected static interface CalendarContract.EventDaysColumns { + field public static final String ENDDAY = "endDay"; + field public static final String STARTDAY = "startDay"; + } + + public static final class CalendarContract.Events implements android.provider.BaseColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.EventsColumns android.provider.CalendarContract.SyncColumns { + field public static final android.net.Uri CONTENT_EXCEPTION_URI; + field public static final android.net.Uri CONTENT_URI; + field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; + } + + protected static interface CalendarContract.EventsColumns { + field public static final int ACCESS_CONFIDENTIAL = 1; // 0x1 + field public static final int ACCESS_DEFAULT = 0; // 0x0 + field public static final String ACCESS_LEVEL = "accessLevel"; + field public static final int ACCESS_PRIVATE = 2; // 0x2 + field public static final int ACCESS_PUBLIC = 3; // 0x3 + field public static final String ALL_DAY = "allDay"; + field public static final String AVAILABILITY = "availability"; + field public static final int AVAILABILITY_BUSY = 0; // 0x0 + field public static final int AVAILABILITY_FREE = 1; // 0x1 + field public static final int AVAILABILITY_TENTATIVE = 2; // 0x2 + field public static final String CALENDAR_ID = "calendar_id"; + field public static final String CAN_INVITE_OTHERS = "canInviteOthers"; + field public static final String CUSTOM_APP_PACKAGE = "customAppPackage"; + field public static final String CUSTOM_APP_URI = "customAppUri"; + field public static final String DESCRIPTION = "description"; + field public static final String DISPLAY_COLOR = "displayColor"; + field public static final String DTEND = "dtend"; + field public static final String DTSTART = "dtstart"; + field public static final String DURATION = "duration"; + field public static final String EVENT_COLOR = "eventColor"; + field public static final String EVENT_COLOR_KEY = "eventColor_index"; + field public static final String EVENT_END_TIMEZONE = "eventEndTimezone"; + field public static final String EVENT_LOCATION = "eventLocation"; + field public static final String EVENT_TIMEZONE = "eventTimezone"; + field public static final String EXDATE = "exdate"; + field public static final String EXRULE = "exrule"; + field public static final String GUESTS_CAN_INVITE_OTHERS = "guestsCanInviteOthers"; + field public static final String GUESTS_CAN_MODIFY = "guestsCanModify"; + field public static final String GUESTS_CAN_SEE_GUESTS = "guestsCanSeeGuests"; + field public static final String HAS_ALARM = "hasAlarm"; + field public static final String HAS_ATTENDEE_DATA = "hasAttendeeData"; + field public static final String HAS_EXTENDED_PROPERTIES = "hasExtendedProperties"; + field public static final String IS_ORGANIZER = "isOrganizer"; + field public static final String LAST_DATE = "lastDate"; + field public static final String LAST_SYNCED = "lastSynced"; + field public static final String ORGANIZER = "organizer"; + field public static final String ORIGINAL_ALL_DAY = "originalAllDay"; + field public static final String ORIGINAL_ID = "original_id"; + field public static final String ORIGINAL_INSTANCE_TIME = "originalInstanceTime"; + field public static final String ORIGINAL_SYNC_ID = "original_sync_id"; + field public static final String RDATE = "rdate"; + field public static final String RRULE = "rrule"; + field public static final String SELF_ATTENDEE_STATUS = "selfAttendeeStatus"; + field public static final String STATUS = "eventStatus"; + field public static final int STATUS_CANCELED = 2; // 0x2 + field public static final int STATUS_CONFIRMED = 1; // 0x1 + field public static final int STATUS_TENTATIVE = 0; // 0x0 + field public static final String SYNC_DATA1 = "sync_data1"; + field public static final String SYNC_DATA10 = "sync_data10"; + field public static final String SYNC_DATA2 = "sync_data2"; + field public static final String SYNC_DATA3 = "sync_data3"; + field public static final String SYNC_DATA4 = "sync_data4"; + field public static final String SYNC_DATA5 = "sync_data5"; + field public static final String SYNC_DATA6 = "sync_data6"; + field public static final String SYNC_DATA7 = "sync_data7"; + field public static final String SYNC_DATA8 = "sync_data8"; + field public static final String SYNC_DATA9 = "sync_data9"; + field public static final String TITLE = "title"; + field public static final String UID_2445 = "uid2445"; + } + + public static final class CalendarContract.EventsEntity implements android.provider.BaseColumns android.provider.CalendarContract.EventsColumns android.provider.CalendarContract.SyncColumns { + method public static android.content.EntityIterator newEntityIterator(android.database.Cursor, android.content.ContentResolver); + method public static android.content.EntityIterator newEntityIterator(android.database.Cursor, android.content.ContentProviderClient); + field public static final android.net.Uri CONTENT_URI; + } + + public static final class CalendarContract.ExtendedProperties implements android.provider.BaseColumns android.provider.CalendarContract.EventsColumns android.provider.CalendarContract.ExtendedPropertiesColumns { + field public static final android.net.Uri CONTENT_URI; + } + + protected static interface CalendarContract.ExtendedPropertiesColumns { + field public static final String EVENT_ID = "event_id"; + field public static final String NAME = "name"; + field public static final String VALUE = "value"; + } + + public static final class CalendarContract.Instances implements android.provider.BaseColumns android.provider.CalendarContract.CalendarColumns android.provider.CalendarContract.EventsColumns { + method public static android.database.Cursor query(android.content.ContentResolver, String[], long, long); + method public static android.database.Cursor query(android.content.ContentResolver, String[], long, long, String); + field public static final String BEGIN = "begin"; + field public static final android.net.Uri CONTENT_BY_DAY_URI; + field public static final android.net.Uri CONTENT_SEARCH_BY_DAY_URI; + field public static final android.net.Uri CONTENT_SEARCH_URI; + field public static final android.net.Uri CONTENT_URI; + field public static final String END = "end"; + field public static final String END_DAY = "endDay"; + field public static final String END_MINUTE = "endMinute"; + field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_BY_DAY_URI; + field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_SEARCH_BY_DAY_URI; + field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_SEARCH_URI; + field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; + field public static final String EVENT_ID = "event_id"; + field public static final String START_DAY = "startDay"; + field public static final String START_MINUTE = "startMinute"; + } + + public static final class CalendarContract.Reminders implements android.provider.BaseColumns android.provider.CalendarContract.EventsColumns android.provider.CalendarContract.RemindersColumns { + method public static android.database.Cursor query(android.content.ContentResolver, long, String[]); + field public static final android.net.Uri CONTENT_URI; + } + + protected static interface CalendarContract.RemindersColumns { + field public static final String EVENT_ID = "event_id"; + field public static final String METHOD = "method"; + field public static final int METHOD_ALARM = 4; // 0x4 + field public static final int METHOD_ALERT = 1; // 0x1 + field public static final int METHOD_DEFAULT = 0; // 0x0 + field public static final int METHOD_EMAIL = 2; // 0x2 + field public static final int METHOD_SMS = 3; // 0x3 + field public static final String MINUTES = "minutes"; + field public static final int MINUTES_DEFAULT = -1; // 0xffffffff + } + + protected static interface CalendarContract.SyncColumns extends android.provider.CalendarContract.CalendarSyncColumns { + field public static final String ACCOUNT_NAME = "account_name"; + field public static final String ACCOUNT_TYPE = "account_type"; + field public static final String CAN_PARTIALLY_UPDATE = "canPartiallyUpdate"; + field public static final String DELETED = "deleted"; + field public static final String DIRTY = "dirty"; + field public static final String MUTATORS = "mutators"; + field public static final String _SYNC_ID = "_sync_id"; + } + + public static final class CalendarContract.SyncState implements android.provider.SyncStateContract.Columns { + field public static final android.net.Uri CONTENT_URI; + } + + public class CallLog { + ctor public CallLog(); + field public static final String AUTHORITY = "call_log"; + field public static final android.net.Uri CONTENT_URI; + } + + public static class CallLog.Calls implements android.provider.BaseColumns { + ctor public CallLog.Calls(); + method public static String getLastOutgoingCall(android.content.Context); + field public static final int ANSWERED_EXTERNALLY_TYPE = 7; // 0x7 + field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String ASSERTED_DISPLAY_NAME = "asserted_display_name"; + field public static final long AUTO_MISSED_EMERGENCY_CALL = 1L; // 0x1L + field public static final long AUTO_MISSED_MAXIMUM_DIALING = 4L; // 0x4L + field public static final long AUTO_MISSED_MAXIMUM_RINGING = 2L; // 0x2L + field public static final int BLOCKED_TYPE = 6; // 0x6 + field public static final String BLOCK_REASON = "block_reason"; + field public static final int BLOCK_REASON_BLOCKED_NUMBER = 3; // 0x3 + field public static final int BLOCK_REASON_CALL_SCREENING_SERVICE = 1; // 0x1 + field public static final int BLOCK_REASON_DIRECT_TO_VOICEMAIL = 2; // 0x2 + field public static final int BLOCK_REASON_NOT_BLOCKED = 0; // 0x0 + field public static final int BLOCK_REASON_NOT_IN_CONTACTS = 7; // 0x7 + field public static final int BLOCK_REASON_PAY_PHONE = 6; // 0x6 + field public static final int BLOCK_REASON_RESTRICTED_NUMBER = 5; // 0x5 + field public static final int BLOCK_REASON_UNKNOWN_NUMBER = 4; // 0x4 + field public static final String CACHED_FORMATTED_NUMBER = "formatted_number"; + field public static final String CACHED_LOOKUP_URI = "lookup_uri"; + field public static final String CACHED_MATCHED_NUMBER = "matched_number"; + field public static final String CACHED_NAME = "name"; + field public static final String CACHED_NORMALIZED_NUMBER = "normalized_number"; + field public static final String CACHED_NUMBER_LABEL = "numberlabel"; + field public static final String CACHED_NUMBER_TYPE = "numbertype"; + field public static final String CACHED_PHOTO_ID = "photo_id"; + field public static final String CACHED_PHOTO_URI = "photo_uri"; + field public static final String CALL_SCREENING_APP_NAME = "call_screening_app_name"; + field public static final String CALL_SCREENING_COMPONENT_NAME = "call_screening_component_name"; + field public static final String COMPOSER_PHOTO_URI = "composer_photo_uri"; + field public static final android.net.Uri CONTENT_FILTER_URI; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/calls"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/calls"; + field public static final android.net.Uri CONTENT_URI; + field public static final android.net.Uri CONTENT_URI_WITH_VOICEMAIL; + field public static final String COUNTRY_ISO = "countryiso"; + field public static final String DATA_USAGE = "data_usage"; + field public static final String DATE = "date"; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + field public static final String DURATION = "duration"; + field public static final String EXTRA_CALL_TYPE_FILTER = "android.provider.extra.CALL_TYPE_FILTER"; + field public static final String FEATURES = "features"; + field public static final int FEATURES_ASSISTED_DIALING_USED = 16; // 0x10 + field public static final int FEATURES_HD_CALL = 4; // 0x4 + field public static final int FEATURES_PULLED_EXTERNALLY = 2; // 0x2 + field public static final int FEATURES_RTT = 32; // 0x20 + field public static final int FEATURES_VIDEO = 1; // 0x1 + field public static final int FEATURES_VOLTE = 64; // 0x40 + field public static final int FEATURES_WIFI = 8; // 0x8 + field public static final String GEOCODED_LOCATION = "geocoded_location"; + field public static final int INCOMING_TYPE = 1; // 0x1 + field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String IS_BUSINESS_CALL = "is_business_call"; + field public static final String IS_READ = "is_read"; + field public static final String LAST_MODIFIED = "last_modified"; + field public static final String LIMIT_PARAM_KEY = "limit"; + field public static final String LOCATION = "location"; + field public static final String MISSED_REASON = "missed_reason"; + field public static final long MISSED_REASON_NOT_MISSED = 0L; // 0x0L + field public static final int MISSED_TYPE = 3; // 0x3 + field public static final String NEW = "new"; + field public static final String NUMBER = "number"; + field public static final String NUMBER_PRESENTATION = "presentation"; + field public static final String OFFSET_PARAM_KEY = "offset"; + field public static final int OUTGOING_TYPE = 2; // 0x2 + field public static final String PHONE_ACCOUNT_COMPONENT_NAME = "subscription_component_name"; + field public static final String PHONE_ACCOUNT_ID = "subscription_id"; + field public static final String POST_DIAL_DIGITS = "post_dial_digits"; + field public static final int PRESENTATION_ALLOWED = 1; // 0x1 + field public static final int PRESENTATION_PAYPHONE = 4; // 0x4 + field public static final int PRESENTATION_RESTRICTED = 2; // 0x2 + field public static final int PRESENTATION_UNAVAILABLE = 5; // 0x5 + field public static final int PRESENTATION_UNKNOWN = 3; // 0x3 + field public static final String PRIORITY = "priority"; + field public static final int PRIORITY_NORMAL = 0; // 0x0 + field public static final int PRIORITY_URGENT = 1; // 0x1 + field public static final int REJECTED_TYPE = 5; // 0x5 + field public static final String SUBJECT = "subject"; + field public static final String TRANSCRIPTION = "transcription"; + field public static final String TYPE = "type"; + field public static final long USER_MISSED_CALL_FILTERS_TIMEOUT = 4194304L; // 0x400000L + field public static final long USER_MISSED_CALL_SCREENING_SERVICE_SILENCED = 2097152L; // 0x200000L + field public static final long USER_MISSED_DND_MODE = 262144L; // 0x40000L + field public static final long USER_MISSED_LOW_RING_VOLUME = 524288L; // 0x80000L + field public static final long USER_MISSED_NO_ANSWER = 65536L; // 0x10000L + field public static final long USER_MISSED_NO_VIBRATE = 1048576L; // 0x100000L + field public static final long USER_MISSED_SHORT_RING = 131072L; // 0x20000L + field public static final String VIA_NUMBER = "via_number"; + field public static final int VOICEMAIL_TYPE = 4; // 0x4 + field public static final String VOICEMAIL_URI = "voicemail_uri"; + } + + public static class CallLog.Locations implements android.provider.BaseColumns { + field public static final String AUTHORITY = "call_composer_locations"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/call_composer_location"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/call_composer_location"; + field @NonNull public static final android.net.Uri CONTENT_URI; + field public static final String LATITUDE = "latitude"; + field public static final String LONGITUDE = "longitude"; + } + + @Deprecated public class Contacts { + field @Deprecated public static final String AUTHORITY = "contacts"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final int KIND_EMAIL = 1; // 0x1 + field @Deprecated public static final int KIND_IM = 3; // 0x3 + field @Deprecated public static final int KIND_ORGANIZATION = 4; // 0x4 + field @Deprecated public static final int KIND_PHONE = 5; // 0x5 + field @Deprecated public static final int KIND_POSTAL = 2; // 0x2 + } + + @Deprecated public static final class Contacts.ContactMethods implements android.provider.BaseColumns android.provider.Contacts.ContactMethodsColumns android.provider.Contacts.PeopleColumns { + method @Deprecated public void addPostalLocation(android.content.Context, long, double, double); + method @Deprecated public static Object decodeImProtocol(String); + method @Deprecated public static String encodeCustomImProtocol(String); + method @Deprecated public static String encodePredefinedImProtocol(int); + method @Deprecated public static CharSequence getDisplayLabel(android.content.Context, int, int, CharSequence); + field @Deprecated public static final String CONTENT_EMAIL_ITEM_TYPE = "vnd.android.cursor.item/email"; + field @Deprecated public static final String CONTENT_EMAIL_TYPE = "vnd.android.cursor.dir/email"; + field @Deprecated public static final android.net.Uri CONTENT_EMAIL_URI; + field @Deprecated public static final String CONTENT_IM_ITEM_TYPE = "vnd.android.cursor.item/jabber-im"; + field @Deprecated public static final String CONTENT_POSTAL_ITEM_TYPE = "vnd.android.cursor.item/postal-address"; + field @Deprecated public static final String CONTENT_POSTAL_TYPE = "vnd.android.cursor.dir/postal-address"; + field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact-methods"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; + field @Deprecated public static final String PERSON_ID = "person"; + field @Deprecated public static final String POSTAL_LOCATION_LATITUDE = "data"; + field @Deprecated public static final String POSTAL_LOCATION_LONGITUDE = "aux_data"; + field @Deprecated public static final int PROTOCOL_AIM = 0; // 0x0 + field @Deprecated public static final int PROTOCOL_GOOGLE_TALK = 5; // 0x5 + field @Deprecated public static final int PROTOCOL_ICQ = 6; // 0x6 + field @Deprecated public static final int PROTOCOL_JABBER = 7; // 0x7 + field @Deprecated public static final int PROTOCOL_MSN = 1; // 0x1 + field @Deprecated public static final int PROTOCOL_QQ = 4; // 0x4 + field @Deprecated public static final int PROTOCOL_SKYPE = 3; // 0x3 + field @Deprecated public static final int PROTOCOL_YAHOO = 2; // 0x2 + } + + @Deprecated public static interface Contacts.ContactMethodsColumns { + field @Deprecated public static final String AUX_DATA = "aux_data"; + field @Deprecated public static final String DATA = "data"; + field @Deprecated public static final String ISPRIMARY = "isprimary"; + field @Deprecated public static final String KIND = "kind"; + field @Deprecated public static final String LABEL = "label"; + field @Deprecated public static final String TYPE = "type"; + field @Deprecated public static final int TYPE_CUSTOM = 0; // 0x0 + field @Deprecated public static final int TYPE_HOME = 1; // 0x1 + field @Deprecated public static final int TYPE_OTHER = 3; // 0x3 + field @Deprecated public static final int TYPE_WORK = 2; // 0x2 + } + + @Deprecated public static final class Contacts.Extensions implements android.provider.BaseColumns android.provider.Contacts.ExtensionsColumns { + field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_extensions"; + field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_extensions"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "person, name ASC"; + field @Deprecated public static final String PERSON_ID = "person"; + } + + @Deprecated public static interface Contacts.ExtensionsColumns { + field @Deprecated public static final String NAME = "name"; + field @Deprecated public static final String VALUE = "value"; + } + + @Deprecated public static final class Contacts.GroupMembership implements android.provider.BaseColumns android.provider.Contacts.GroupsColumns { + field @Deprecated public static final String CONTENT_DIRECTORY = "groupmembership"; + field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contactsgroupmembership"; + field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contactsgroupmembership"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "group_id ASC"; + field @Deprecated public static final String GROUP_ID = "group_id"; + field @Deprecated public static final String GROUP_SYNC_ACCOUNT = "group_sync_account"; + field @Deprecated public static final String GROUP_SYNC_ACCOUNT_TYPE = "group_sync_account_type"; + field @Deprecated public static final String GROUP_SYNC_ID = "group_sync_id"; + field @Deprecated public static final String PERSON_ID = "person"; + field @Deprecated public static final android.net.Uri RAW_CONTENT_URI; + } + + @Deprecated public static final class Contacts.Groups implements android.provider.BaseColumns android.provider.Contacts.GroupsColumns { + field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contactsgroup"; + field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contactsgroup"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; + field @Deprecated public static final android.net.Uri DELETED_CONTENT_URI; + field @Deprecated public static final String GROUP_ANDROID_STARRED = "Starred in Android"; + field @Deprecated public static final String GROUP_MY_CONTACTS = "Contacts"; + } + + @Deprecated public static interface Contacts.GroupsColumns { + field @Deprecated public static final String NAME = "name"; + field @Deprecated public static final String NOTES = "notes"; + field @Deprecated public static final String SHOULD_SYNC = "should_sync"; + field @Deprecated public static final String SYSTEM_ID = "system_id"; + } + + @Deprecated public static final class Contacts.Intents { + ctor @Deprecated public Contacts.Intents(); + field @Deprecated public static final String ATTACH_IMAGE = "com.android.contacts.action.ATTACH_IMAGE"; + field @Deprecated public static final String EXTRA_CREATE_DESCRIPTION = "com.android.contacts.action.CREATE_DESCRIPTION"; + field @Deprecated public static final String EXTRA_FORCE_CREATE = "com.android.contacts.action.FORCE_CREATE"; + field @Deprecated public static final String SEARCH_SUGGESTION_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_CLICKED"; + field @Deprecated public static final String SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED"; + field @Deprecated public static final String SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED"; + field @Deprecated public static final String SHOW_OR_CREATE_CONTACT = "com.android.contacts.action.SHOW_OR_CREATE_CONTACT"; + } + + @Deprecated public static final class Contacts.Intents.Insert { + ctor @Deprecated public Contacts.Intents.Insert(); + field @Deprecated public static final String ACTION = "android.intent.action.INSERT"; + field @Deprecated public static final String COMPANY = "company"; + field @Deprecated public static final String EMAIL = "email"; + field @Deprecated public static final String EMAIL_ISPRIMARY = "email_isprimary"; + field @Deprecated public static final String EMAIL_TYPE = "email_type"; + field @Deprecated public static final String FULL_MODE = "full_mode"; + field @Deprecated public static final String IM_HANDLE = "im_handle"; + field @Deprecated public static final String IM_ISPRIMARY = "im_isprimary"; + field @Deprecated public static final String IM_PROTOCOL = "im_protocol"; + field @Deprecated public static final String JOB_TITLE = "job_title"; + field @Deprecated public static final String NAME = "name"; + field @Deprecated public static final String NOTES = "notes"; + field @Deprecated public static final String PHONE = "phone"; + field @Deprecated public static final String PHONETIC_NAME = "phonetic_name"; + field @Deprecated public static final String PHONE_ISPRIMARY = "phone_isprimary"; + field @Deprecated public static final String PHONE_TYPE = "phone_type"; + field @Deprecated public static final String POSTAL = "postal"; + field @Deprecated public static final String POSTAL_ISPRIMARY = "postal_isprimary"; + field @Deprecated public static final String POSTAL_TYPE = "postal_type"; + field @Deprecated public static final String SECONDARY_EMAIL = "secondary_email"; + field @Deprecated public static final String SECONDARY_EMAIL_TYPE = "secondary_email_type"; + field @Deprecated public static final String SECONDARY_PHONE = "secondary_phone"; + field @Deprecated public static final String SECONDARY_PHONE_TYPE = "secondary_phone_type"; + field @Deprecated public static final String TERTIARY_EMAIL = "tertiary_email"; + field @Deprecated public static final String TERTIARY_EMAIL_TYPE = "tertiary_email_type"; + field @Deprecated public static final String TERTIARY_PHONE = "tertiary_phone"; + field @Deprecated public static final String TERTIARY_PHONE_TYPE = "tertiary_phone_type"; + } + + @Deprecated public static final class Contacts.Intents.UI { + ctor @Deprecated public Contacts.Intents.UI(); + field @Deprecated public static final String FILTER_CONTACTS_ACTION = "com.android.contacts.action.FILTER_CONTACTS"; + field @Deprecated public static final String FILTER_TEXT_EXTRA_KEY = "com.android.contacts.extra.FILTER_TEXT"; + field @Deprecated public static final String GROUP_NAME_EXTRA_KEY = "com.android.contacts.extra.GROUP"; + field @Deprecated public static final String LIST_ALL_CONTACTS_ACTION = "com.android.contacts.action.LIST_ALL_CONTACTS"; + field @Deprecated public static final String LIST_CONTACTS_WITH_PHONES_ACTION = "com.android.contacts.action.LIST_CONTACTS_WITH_PHONES"; + field @Deprecated public static final String LIST_DEFAULT = "com.android.contacts.action.LIST_DEFAULT"; + field @Deprecated public static final String LIST_FREQUENT_ACTION = "com.android.contacts.action.LIST_FREQUENT"; + field @Deprecated public static final String LIST_GROUP_ACTION = "com.android.contacts.action.LIST_GROUP"; + field @Deprecated public static final String LIST_STARRED_ACTION = "com.android.contacts.action.LIST_STARRED"; + field @Deprecated public static final String LIST_STREQUENT_ACTION = "com.android.contacts.action.LIST_STREQUENT"; + field @Deprecated public static final String TITLE_EXTRA_KEY = "com.android.contacts.extra.TITLE_EXTRA"; + } + + @Deprecated public static interface Contacts.OrganizationColumns { + field @Deprecated public static final String COMPANY = "company"; + field @Deprecated public static final String ISPRIMARY = "isprimary"; + field @Deprecated public static final String LABEL = "label"; + field @Deprecated public static final String PERSON_ID = "person"; + field @Deprecated public static final String TITLE = "title"; + field @Deprecated public static final String TYPE = "type"; + field @Deprecated public static final int TYPE_CUSTOM = 0; // 0x0 + field @Deprecated public static final int TYPE_OTHER = 2; // 0x2 + field @Deprecated public static final int TYPE_WORK = 1; // 0x1 + } + + @Deprecated public static final class Contacts.Organizations implements android.provider.BaseColumns android.provider.Contacts.OrganizationColumns { + method @Deprecated public static CharSequence getDisplayLabel(android.content.Context, int, CharSequence); + field @Deprecated public static final String CONTENT_DIRECTORY = "organizations"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "company, title, isprimary ASC"; + } + + @Deprecated public static final class Contacts.People implements android.provider.BaseColumns android.provider.Contacts.PeopleColumns android.provider.Contacts.PhonesColumns android.provider.Contacts.PresenceColumns { + method @Deprecated public static android.net.Uri addToGroup(android.content.ContentResolver, long, String); + method @Deprecated public static android.net.Uri addToGroup(android.content.ContentResolver, long, long); + method @Deprecated public static android.net.Uri addToMyContactsGroup(android.content.ContentResolver, long); + method @Deprecated public static android.net.Uri createPersonInMyContactsGroup(android.content.ContentResolver, android.content.ContentValues); + method @Deprecated public static android.graphics.Bitmap loadContactPhoto(android.content.Context, android.net.Uri, int, android.graphics.BitmapFactory.Options); + method @Deprecated public static void markAsContacted(android.content.ContentResolver, long); + method @Deprecated public static java.io.InputStream openContactPhotoInputStream(android.content.ContentResolver, android.net.Uri); + method @Deprecated public static android.database.Cursor queryGroups(android.content.ContentResolver, long); + method @Deprecated public static void setPhotoData(android.content.ContentResolver, android.net.Uri, byte[]); + field @Deprecated public static final android.net.Uri CONTENT_FILTER_URI; + field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/person"; + field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/person"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; + field @Deprecated public static final android.net.Uri DELETED_CONTENT_URI; + field @Deprecated public static final String PRIMARY_EMAIL_ID = "primary_email"; + field @Deprecated public static final String PRIMARY_ORGANIZATION_ID = "primary_organization"; + field @Deprecated public static final String PRIMARY_PHONE_ID = "primary_phone"; + } + + @Deprecated public static final class Contacts.People.ContactMethods implements android.provider.BaseColumns android.provider.Contacts.ContactMethodsColumns android.provider.Contacts.PeopleColumns { + field @Deprecated public static final String CONTENT_DIRECTORY = "contact_methods"; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "data ASC"; + } + + @Deprecated public static class Contacts.People.Extensions implements android.provider.BaseColumns android.provider.Contacts.ExtensionsColumns { + field @Deprecated public static final String CONTENT_DIRECTORY = "extensions"; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; + field @Deprecated public static final String PERSON_ID = "person"; + } + + @Deprecated public static final class Contacts.People.Phones implements android.provider.BaseColumns android.provider.Contacts.PeopleColumns android.provider.Contacts.PhonesColumns { + field @Deprecated public static final String CONTENT_DIRECTORY = "phones"; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "number ASC"; + } + + @Deprecated public static interface Contacts.PeopleColumns { + field @Deprecated public static final String CUSTOM_RINGTONE = "custom_ringtone"; + field @Deprecated public static final String DISPLAY_NAME = "display_name"; + field @Deprecated public static final String LAST_TIME_CONTACTED = "last_time_contacted"; + field @Deprecated public static final String NAME = "name"; + field @Deprecated public static final String NOTES = "notes"; + field @Deprecated public static final String PHONETIC_NAME = "phonetic_name"; + field @Deprecated public static final String PHOTO_VERSION = "photo_version"; + field @Deprecated public static final String SEND_TO_VOICEMAIL = "send_to_voicemail"; + field @Deprecated public static final String STARRED = "starred"; + field @Deprecated public static final String TIMES_CONTACTED = "times_contacted"; + } + + @Deprecated public static final class Contacts.Phones implements android.provider.BaseColumns android.provider.Contacts.PeopleColumns android.provider.Contacts.PhonesColumns { + method @Deprecated public static CharSequence getDisplayLabel(android.content.Context, int, CharSequence, CharSequence[]); + method @Deprecated public static CharSequence getDisplayLabel(android.content.Context, int, CharSequence); + field @Deprecated public static final android.net.Uri CONTENT_FILTER_URL; + field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/phone"; + field @Deprecated public static final String CONTENT_TYPE = "vnd.android.cursor.dir/phone"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "name ASC"; + field @Deprecated public static final String PERSON_ID = "person"; + } + + @Deprecated public static interface Contacts.PhonesColumns { + field @Deprecated public static final String ISPRIMARY = "isprimary"; + field @Deprecated public static final String LABEL = "label"; + field @Deprecated public static final String NUMBER = "number"; + field @Deprecated public static final String NUMBER_KEY = "number_key"; + field @Deprecated public static final String TYPE = "type"; + field @Deprecated public static final int TYPE_CUSTOM = 0; // 0x0 + field @Deprecated public static final int TYPE_FAX_HOME = 5; // 0x5 + field @Deprecated public static final int TYPE_FAX_WORK = 4; // 0x4 + field @Deprecated public static final int TYPE_HOME = 1; // 0x1 + field @Deprecated public static final int TYPE_MOBILE = 2; // 0x2 + field @Deprecated public static final int TYPE_OTHER = 7; // 0x7 + field @Deprecated public static final int TYPE_PAGER = 6; // 0x6 + field @Deprecated public static final int TYPE_WORK = 3; // 0x3 + } + + @Deprecated public static final class Contacts.Photos implements android.provider.BaseColumns android.provider.Contacts.PhotosColumns { + field @Deprecated public static final String CONTENT_DIRECTORY = "photo"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "person ASC"; + } + + @Deprecated public static interface Contacts.PhotosColumns { + field @Deprecated public static final String DATA = "data"; + field @Deprecated public static final String DOWNLOAD_REQUIRED = "download_required"; + field @Deprecated public static final String EXISTS_ON_SERVER = "exists_on_server"; + field @Deprecated public static final String LOCAL_VERSION = "local_version"; + field @Deprecated public static final String PERSON_ID = "person"; + field @Deprecated public static final String SYNC_ERROR = "sync_error"; + } + + @Deprecated public static interface Contacts.PresenceColumns { + field @Deprecated public static final int AVAILABLE = 5; // 0x5 + field @Deprecated public static final int AWAY = 2; // 0x2 + field @Deprecated public static final int DO_NOT_DISTURB = 4; // 0x4 + field @Deprecated public static final int IDLE = 3; // 0x3 + field @Deprecated public static final String IM_ACCOUNT = "im_account"; + field @Deprecated public static final String IM_HANDLE = "im_handle"; + field @Deprecated public static final String IM_PROTOCOL = "im_protocol"; + field @Deprecated public static final int INVISIBLE = 1; // 0x1 + field @Deprecated public static final int OFFLINE = 0; // 0x0 + field @Deprecated public static final String PRESENCE_CUSTOM_STATUS = "status"; + field @Deprecated public static final String PRESENCE_STATUS = "mode"; + field @Deprecated public static final String PRIORITY = "priority"; + } + + @Deprecated public static final class Contacts.Settings implements android.provider.BaseColumns android.provider.Contacts.SettingsColumns { + method @Deprecated public static String getSetting(android.content.ContentResolver, String, String); + method @Deprecated public static void setSetting(android.content.ContentResolver, String, String, String); + field @Deprecated public static final String CONTENT_DIRECTORY = "settings"; + field @Deprecated public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DEFAULT_SORT_ORDER = "key ASC"; + field @Deprecated public static final String SYNC_EVERYTHING = "syncEverything"; + } + + @Deprecated public static interface Contacts.SettingsColumns { + field @Deprecated public static final String KEY = "key"; + field @Deprecated public static final String VALUE = "value"; + field @Deprecated public static final String _SYNC_ACCOUNT = "_sync_account"; + field @Deprecated public static final String _SYNC_ACCOUNT_TYPE = "_sync_account_type"; + } + + public final class ContactsContract { + ctor public ContactsContract(); + method public static boolean isProfileId(long); + field public static final String AUTHORITY = "com.android.contacts"; + field public static final android.net.Uri AUTHORITY_URI; + field public static final String CALLER_IS_SYNCADAPTER = "caller_is_syncadapter"; + field public static final String DEFERRED_SNIPPETING = "deferred_snippeting"; + field public static final String DEFERRED_SNIPPETING_QUERY = "deferred_snippeting_query"; + field public static final String DIRECTORY_PARAM_KEY = "directory"; + field public static final String LIMIT_PARAM_KEY = "limit"; + field public static final String PRIMARY_ACCOUNT_NAME = "name_for_primary_account"; + field public static final String PRIMARY_ACCOUNT_TYPE = "type_for_primary_account"; + field public static final String REMOVE_DUPLICATE_ENTRIES = "remove_duplicate_entries"; + field public static final String STREQUENT_PHONE_ONLY = "strequent_phone_only"; + } + + public static final class ContactsContract.AggregationExceptions implements android.provider.BaseColumns { + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/aggregation_exception"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/aggregation_exception"; + field public static final android.net.Uri CONTENT_URI; + field public static final String RAW_CONTACT_ID1 = "raw_contact_id1"; + field public static final String RAW_CONTACT_ID2 = "raw_contact_id2"; + field public static final String TYPE = "type"; + field public static final int TYPE_AUTOMATIC = 0; // 0x0 + field public static final int TYPE_KEEP_SEPARATE = 2; // 0x2 + field public static final int TYPE_KEEP_TOGETHER = 1; // 0x1 + } + + protected static interface ContactsContract.BaseSyncColumns { + field public static final String SYNC1 = "sync1"; + field public static final String SYNC2 = "sync2"; + field public static final String SYNC3 = "sync3"; + field public static final String SYNC4 = "sync4"; + } + + public static final class ContactsContract.CommonDataKinds { + } + + public static interface ContactsContract.CommonDataKinds.BaseTypes { + field public static final int TYPE_CUSTOM = 0; // 0x0 + } + + public static final class ContactsContract.CommonDataKinds.Callable implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + ctor public ContactsContract.CommonDataKinds.Callable(); + field public static final android.net.Uri CONTENT_FILTER_URI; + field public static final android.net.Uri CONTENT_URI; + field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + } + + protected static interface ContactsContract.CommonDataKinds.CommonColumns extends android.provider.ContactsContract.CommonDataKinds.BaseTypes { + field public static final String DATA = "data1"; + field public static final String LABEL = "data3"; + field public static final String TYPE = "data2"; + } + + public static final class ContactsContract.CommonDataKinds.Contactables implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + ctor public ContactsContract.CommonDataKinds.Contactables(); + field public static final android.net.Uri CONTENT_FILTER_URI; + field public static final android.net.Uri CONTENT_URI; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String VISIBLE_CONTACTS_ONLY = "visible_contacts_only"; + } + + public static final class ContactsContract.CommonDataKinds.Email implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); + method public static int getTypeLabelResource(int); + field public static final String ADDRESS = "data1"; + field public static final android.net.Uri CONTENT_FILTER_URI; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/email_v2"; + field public static final android.net.Uri CONTENT_LOOKUP_URI; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/email_v2"; + field public static final android.net.Uri CONTENT_URI; + field public static final String DISPLAY_NAME = "data4"; + field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; + field public static final android.net.Uri ENTERPRISE_CONTENT_LOOKUP_URI; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final int TYPE_HOME = 1; // 0x1 + field public static final int TYPE_MOBILE = 4; // 0x4 + field public static final int TYPE_OTHER = 3; // 0x3 + field public static final int TYPE_WORK = 2; // 0x2 + } + + public static final class ContactsContract.CommonDataKinds.Event implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); + method public static int getTypeResource(Integer); + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_event"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String START_DATE = "data1"; + field public static final int TYPE_ANNIVERSARY = 1; // 0x1 + field public static final int TYPE_BIRTHDAY = 3; // 0x3 + field public static final int TYPE_OTHER = 2; // 0x2 + } + + public static final class ContactsContract.CommonDataKinds.GroupMembership implements android.provider.ContactsContract.DataColumnsWithJoins { + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/group_membership"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String GROUP_ROW_ID = "data1"; + field public static final String GROUP_SOURCE_ID = "group_sourceid"; + } + + public static final class ContactsContract.CommonDataKinds.Identity implements android.provider.ContactsContract.DataColumnsWithJoins { + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/identity"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String IDENTITY = "data1"; + field public static final String NAMESPACE = "data2"; + } + + @Deprecated public static final class ContactsContract.CommonDataKinds.Im implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + method @Deprecated public static CharSequence getProtocolLabel(android.content.res.Resources, int, CharSequence); + method @Deprecated public static int getProtocolLabelResource(int); + method @Deprecated public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); + method @Deprecated public static int getTypeLabelResource(int); + field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/im"; + field @Deprecated public static final String CUSTOM_PROTOCOL = "data6"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field @Deprecated public static final String PROTOCOL = "data5"; + field @Deprecated public static final int PROTOCOL_AIM = 0; // 0x0 + field @Deprecated public static final int PROTOCOL_CUSTOM = -1; // 0xffffffff + field @Deprecated public static final int PROTOCOL_GOOGLE_TALK = 5; // 0x5 + field @Deprecated public static final int PROTOCOL_ICQ = 6; // 0x6 + field @Deprecated public static final int PROTOCOL_JABBER = 7; // 0x7 + field @Deprecated public static final int PROTOCOL_MSN = 1; // 0x1 + field @Deprecated public static final int PROTOCOL_NETMEETING = 8; // 0x8 + field @Deprecated public static final int PROTOCOL_QQ = 4; // 0x4 + field @Deprecated public static final int PROTOCOL_SKYPE = 3; // 0x3 + field @Deprecated public static final int PROTOCOL_YAHOO = 2; // 0x2 + field @Deprecated public static final int TYPE_HOME = 1; // 0x1 + field @Deprecated public static final int TYPE_OTHER = 3; // 0x3 + field @Deprecated public static final int TYPE_WORK = 2; // 0x2 + } + + public static final class ContactsContract.CommonDataKinds.Nickname implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/nickname"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String NAME = "data1"; + field public static final int TYPE_DEFAULT = 1; // 0x1 + field public static final int TYPE_INITIALS = 5; // 0x5 + field public static final int TYPE_MAIDEN_NAME = 3; // 0x3 + field @Deprecated public static final int TYPE_MAINDEN_NAME = 3; // 0x3 + field public static final int TYPE_OTHER_NAME = 2; // 0x2 + field public static final int TYPE_SHORT_NAME = 4; // 0x4 + } + + public static final class ContactsContract.CommonDataKinds.Note implements android.provider.ContactsContract.DataColumnsWithJoins { + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/note"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String NOTE = "data1"; + } + + public static final class ContactsContract.CommonDataKinds.Organization implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); + method public static int getTypeLabelResource(int); + field public static final String COMPANY = "data1"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/organization"; + field public static final String DEPARTMENT = "data5"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String JOB_DESCRIPTION = "data6"; + field public static final String OFFICE_LOCATION = "data9"; + field public static final String PHONETIC_NAME = "data8"; + field public static final String PHONETIC_NAME_STYLE = "data10"; + field public static final String SYMBOL = "data7"; + field public static final String TITLE = "data4"; + field public static final int TYPE_OTHER = 2; // 0x2 + field public static final int TYPE_WORK = 1; // 0x1 + } + + public static final class ContactsContract.CommonDataKinds.Phone implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); + method public static int getTypeLabelResource(int); + field public static final android.net.Uri CONTENT_FILTER_URI; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/phone_v2"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/phone_v2"; + field public static final android.net.Uri CONTENT_URI; + field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; + field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String NORMALIZED_NUMBER = "data4"; + field public static final String NUMBER = "data1"; + field public static final String SEARCH_DISPLAY_NAME_KEY = "search_display_name"; + field public static final String SEARCH_PHONE_NUMBER_KEY = "search_phone_number"; + field public static final int TYPE_ASSISTANT = 19; // 0x13 + field public static final int TYPE_CALLBACK = 8; // 0x8 + field public static final int TYPE_CAR = 9; // 0x9 + field public static final int TYPE_COMPANY_MAIN = 10; // 0xa + field public static final int TYPE_FAX_HOME = 5; // 0x5 + field public static final int TYPE_FAX_WORK = 4; // 0x4 + field public static final int TYPE_HOME = 1; // 0x1 + field public static final int TYPE_ISDN = 11; // 0xb + field public static final int TYPE_MAIN = 12; // 0xc + field public static final int TYPE_MMS = 20; // 0x14 + field public static final int TYPE_MOBILE = 2; // 0x2 + field public static final int TYPE_OTHER = 7; // 0x7 + field public static final int TYPE_OTHER_FAX = 13; // 0xd + field public static final int TYPE_PAGER = 6; // 0x6 + field public static final int TYPE_RADIO = 14; // 0xe + field public static final int TYPE_TELEX = 15; // 0xf + field public static final int TYPE_TTY_TDD = 16; // 0x10 + field public static final int TYPE_WORK = 3; // 0x3 + field public static final int TYPE_WORK_MOBILE = 17; // 0x11 + field public static final int TYPE_WORK_PAGER = 18; // 0x12 + } + + public static final class ContactsContract.CommonDataKinds.Photo implements android.provider.ContactsContract.DataColumnsWithJoins { + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/photo"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String PHOTO = "data15"; + field public static final String PHOTO_FILE_ID = "data14"; + } + + public static final class ContactsContract.CommonDataKinds.Relation implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); + method public static int getTypeLabelResource(int); + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/relation"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String NAME = "data1"; + field public static final int TYPE_ASSISTANT = 1; // 0x1 + field public static final int TYPE_BROTHER = 2; // 0x2 + field public static final int TYPE_CHILD = 3; // 0x3 + field public static final int TYPE_DOMESTIC_PARTNER = 4; // 0x4 + field public static final int TYPE_FATHER = 5; // 0x5 + field public static final int TYPE_FRIEND = 6; // 0x6 + field public static final int TYPE_MANAGER = 7; // 0x7 + field public static final int TYPE_MOTHER = 8; // 0x8 + field public static final int TYPE_PARENT = 9; // 0x9 + field public static final int TYPE_PARTNER = 10; // 0xa + field public static final int TYPE_REFERRED_BY = 11; // 0xb + field public static final int TYPE_RELATIVE = 12; // 0xc + field public static final int TYPE_SISTER = 13; // 0xd + field public static final int TYPE_SPOUSE = 14; // 0xe + } + + @Deprecated public static final class ContactsContract.CommonDataKinds.SipAddress implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + method @Deprecated public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); + method @Deprecated public static int getTypeLabelResource(int); + field @Deprecated public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/sip_address"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field @Deprecated public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field @Deprecated public static final String SIP_ADDRESS = "data1"; + field @Deprecated public static final int TYPE_HOME = 1; // 0x1 + field @Deprecated public static final int TYPE_OTHER = 3; // 0x3 + field @Deprecated public static final int TYPE_WORK = 2; // 0x2 + } + + public static final class ContactsContract.CommonDataKinds.StructuredName implements android.provider.ContactsContract.DataColumnsWithJoins { + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/name"; + field public static final String DISPLAY_NAME = "data1"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String FAMILY_NAME = "data3"; + field public static final String FULL_NAME_STYLE = "data10"; + field public static final String GIVEN_NAME = "data2"; + field public static final String MIDDLE_NAME = "data5"; + field public static final String PHONETIC_FAMILY_NAME = "data9"; + field public static final String PHONETIC_GIVEN_NAME = "data7"; + field public static final String PHONETIC_MIDDLE_NAME = "data8"; + field public static final String PHONETIC_NAME_STYLE = "data11"; + field public static final String PREFIX = "data4"; + field public static final String SUFFIX = "data6"; + } + + public static final class ContactsContract.CommonDataKinds.StructuredPostal implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + method public static CharSequence getTypeLabel(android.content.res.Resources, int, @Nullable CharSequence); + method public static int getTypeLabelResource(int); + field public static final String CITY = "data7"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/postal-address_v2"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/postal-address_v2"; + field public static final android.net.Uri CONTENT_URI; + field public static final String COUNTRY = "data10"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String FORMATTED_ADDRESS = "data1"; + field public static final String NEIGHBORHOOD = "data6"; + field public static final String POBOX = "data5"; + field public static final String POSTCODE = "data9"; + field public static final String REGION = "data8"; + field public static final String STREET = "data4"; + field public static final int TYPE_HOME = 1; // 0x1 + field public static final int TYPE_OTHER = 3; // 0x3 + field public static final int TYPE_WORK = 2; // 0x2 + } + + public static final class ContactsContract.CommonDataKinds.Website implements android.provider.ContactsContract.CommonDataKinds.CommonColumns android.provider.ContactsContract.DataColumnsWithJoins { + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/website"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final int TYPE_BLOG = 2; // 0x2 + field public static final int TYPE_FTP = 6; // 0x6 + field public static final int TYPE_HOME = 4; // 0x4 + field public static final int TYPE_HOMEPAGE = 1; // 0x1 + field public static final int TYPE_OTHER = 7; // 0x7 + field public static final int TYPE_PROFILE = 3; // 0x3 + field public static final int TYPE_WORK = 5; // 0x5 + field public static final String URL = "data1"; + } + + protected static interface ContactsContract.ContactNameColumns { + field public static final String DISPLAY_NAME_ALTERNATIVE = "display_name_alt"; + field public static final String DISPLAY_NAME_PRIMARY = "display_name"; + field public static final String DISPLAY_NAME_SOURCE = "display_name_source"; + field public static final String PHONETIC_NAME = "phonetic_name"; + field public static final String PHONETIC_NAME_STYLE = "phonetic_name_style"; + field public static final String SORT_KEY_ALTERNATIVE = "sort_key_alt"; + field public static final String SORT_KEY_PRIMARY = "sort_key"; + } + + protected static interface ContactsContract.ContactOptionsColumns { + field public static final String CUSTOM_RINGTONE = "custom_ringtone"; + field @Deprecated public static final String LAST_TIME_CONTACTED = "last_time_contacted"; + field public static final String PINNED = "pinned"; + field public static final String SEND_TO_VOICEMAIL = "send_to_voicemail"; + field public static final String STARRED = "starred"; + field @Deprecated public static final String TIMES_CONTACTED = "times_contacted"; + } + + protected static interface ContactsContract.ContactStatusColumns { + field public static final String CONTACT_CHAT_CAPABILITY = "contact_chat_capability"; + field public static final String CONTACT_PRESENCE = "contact_presence"; + field public static final String CONTACT_STATUS = "contact_status"; + field public static final String CONTACT_STATUS_ICON = "contact_status_icon"; + field public static final String CONTACT_STATUS_LABEL = "contact_status_label"; + field public static final String CONTACT_STATUS_RES_PACKAGE = "contact_status_res_package"; + field public static final String CONTACT_STATUS_TIMESTAMP = "contact_status_ts"; + } + + public static class ContactsContract.Contacts implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns { + method public static android.net.Uri getLookupUri(android.content.ContentResolver, android.net.Uri); + method public static android.net.Uri getLookupUri(long, String); + method public static boolean isEnterpriseContactId(long); + method public static android.net.Uri lookupContact(android.content.ContentResolver, android.net.Uri); + method @Deprecated public static void markAsContacted(android.content.ContentResolver, long); + method public static java.io.InputStream openContactPhotoInputStream(android.content.ContentResolver, android.net.Uri, boolean); + method public static java.io.InputStream openContactPhotoInputStream(android.content.ContentResolver, android.net.Uri); + field public static final android.net.Uri CONTENT_FILTER_URI; + field @Deprecated public static final android.net.Uri CONTENT_FREQUENT_URI; + field public static final android.net.Uri CONTENT_GROUP_URI; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact"; + field public static final android.net.Uri CONTENT_LOOKUP_URI; + field public static final android.net.Uri CONTENT_MULTI_VCARD_URI; + field public static final android.net.Uri CONTENT_STREQUENT_FILTER_URI; + field public static final android.net.Uri CONTENT_STREQUENT_URI; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact"; + field public static final android.net.Uri CONTENT_URI; + field public static final String CONTENT_VCARD_TYPE = "text/x-vcard"; + field public static final android.net.Uri CONTENT_VCARD_URI; + field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; + field @NonNull public static final android.net.Uri ENTERPRISE_CONTENT_URI; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String QUERY_PARAMETER_VCARD_NO_PHOTO = "no_photo"; + } + + public static final class ContactsContract.Contacts.AggregationSuggestions implements android.provider.BaseColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns { + field public static final String CONTENT_DIRECTORY = "suggestions"; + } + + public static final class ContactsContract.Contacts.AggregationSuggestions.Builder { + ctor public ContactsContract.Contacts.AggregationSuggestions.Builder(); + method public android.provider.ContactsContract.Contacts.AggregationSuggestions.Builder addNameParameter(String); + method public android.net.Uri build(); + method public android.provider.ContactsContract.Contacts.AggregationSuggestions.Builder setContactId(long); + method public android.provider.ContactsContract.Contacts.AggregationSuggestions.Builder setLimit(int); + } + + public static final class ContactsContract.Contacts.Data implements android.provider.BaseColumns android.provider.ContactsContract.DataColumns { + field public static final String CONTENT_DIRECTORY = "data"; + } + + public static final class ContactsContract.Contacts.Entity implements android.provider.BaseColumns android.provider.ContactsContract.BaseSyncColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns android.provider.ContactsContract.DataColumns android.provider.ContactsContract.DataUsageStatColumns android.provider.ContactsContract.RawContactsColumns android.provider.ContactsContract.StatusColumns android.provider.ContactsContract.SyncColumns { + field public static final String CONTENT_DIRECTORY = "entities"; + field public static final String DATA_ID = "data_id"; + field public static final String RAW_CONTACT_ID = "raw_contact_id"; + } + + public static final class ContactsContract.Contacts.Photo implements android.provider.BaseColumns android.provider.ContactsContract.DataColumnsWithJoins { + field public static final String CONTENT_DIRECTORY = "photo"; + field public static final String DISPLAY_PHOTO = "display_photo"; + field public static final String PHOTO = "data15"; + field public static final String PHOTO_FILE_ID = "data14"; + } + + protected static interface ContactsContract.ContactsColumns { + field public static final String CONTACT_LAST_UPDATED_TIMESTAMP = "contact_last_updated_timestamp"; + field public static final String DISPLAY_NAME = "display_name"; + field public static final String HAS_PHONE_NUMBER = "has_phone_number"; + field public static final String IN_DEFAULT_DIRECTORY = "in_default_directory"; + field public static final String IN_VISIBLE_GROUP = "in_visible_group"; + field public static final String IS_USER_PROFILE = "is_user_profile"; + field public static final String LOOKUP_KEY = "lookup"; + field public static final String NAME_RAW_CONTACT_ID = "name_raw_contact_id"; + field public static final String PHOTO_FILE_ID = "photo_file_id"; + field public static final String PHOTO_ID = "photo_id"; + field public static final String PHOTO_THUMBNAIL_URI = "photo_thumb_uri"; + field public static final String PHOTO_URI = "photo_uri"; + } + + public static final class ContactsContract.Data implements android.provider.ContactsContract.DataColumnsWithJoins { + method public static android.net.Uri getContactLookupUri(android.content.ContentResolver, android.net.Uri); + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/data"; + field public static final android.net.Uri CONTENT_URI; + field public static final String EXTRA_ADDRESS_BOOK_INDEX = "android.provider.extra.ADDRESS_BOOK_INDEX"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS = "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"; + field public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES = "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"; + field public static final String VISIBLE_CONTACTS_ONLY = "visible_contacts_only"; + } + + protected static interface ContactsContract.DataColumns { + field @Deprecated public static final String CARRIER_PRESENCE = "carrier_presence"; + field @Deprecated public static final int CARRIER_PRESENCE_VT_CAPABLE = 1; // 0x1 + field public static final String DATA1 = "data1"; + field public static final String DATA10 = "data10"; + field public static final String DATA11 = "data11"; + field public static final String DATA12 = "data12"; + field public static final String DATA13 = "data13"; + field public static final String DATA14 = "data14"; + field public static final String DATA15 = "data15"; + field public static final String DATA2 = "data2"; + field public static final String DATA3 = "data3"; + field public static final String DATA4 = "data4"; + field public static final String DATA5 = "data5"; + field public static final String DATA6 = "data6"; + field public static final String DATA7 = "data7"; + field public static final String DATA8 = "data8"; + field public static final String DATA9 = "data9"; + field public static final String DATA_VERSION = "data_version"; + field public static final String IS_PRIMARY = "is_primary"; + field public static final String IS_READ_ONLY = "is_read_only"; + field public static final String IS_SUPER_PRIMARY = "is_super_primary"; + field public static final String MIMETYPE = "mimetype"; + field public static final String PREFERRED_PHONE_ACCOUNT_COMPONENT_NAME = "preferred_phone_account_component_name"; + field public static final String PREFERRED_PHONE_ACCOUNT_ID = "preferred_phone_account_id"; + field public static final String RAW_CONTACT_ID = "raw_contact_id"; + field public static final String RES_PACKAGE = "res_package"; + field public static final String SYNC1 = "data_sync1"; + field public static final String SYNC2 = "data_sync2"; + field public static final String SYNC3 = "data_sync3"; + field public static final String SYNC4 = "data_sync4"; + } + + protected static interface ContactsContract.DataColumnsWithJoins extends android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns android.provider.ContactsContract.DataColumns android.provider.ContactsContract.DataUsageStatColumns android.provider.ContactsContract.RawContactsColumns android.provider.ContactsContract.StatusColumns { + } + + @Deprecated public static final class ContactsContract.DataUsageFeedback { + ctor @Deprecated public ContactsContract.DataUsageFeedback(); + field @Deprecated public static final android.net.Uri DELETE_USAGE_URI; + field @Deprecated public static final android.net.Uri FEEDBACK_URI; + field @Deprecated public static final String USAGE_TYPE = "type"; + field @Deprecated public static final String USAGE_TYPE_CALL = "call"; + field @Deprecated public static final String USAGE_TYPE_LONG_TEXT = "long_text"; + field @Deprecated public static final String USAGE_TYPE_SHORT_TEXT = "short_text"; + } + + protected static interface ContactsContract.DataUsageStatColumns { + field @Deprecated public static final String LAST_TIME_USED = "last_time_used"; + field @Deprecated public static final String TIMES_USED = "times_used"; + } + + public static final class ContactsContract.DeletedContacts implements android.provider.ContactsContract.DeletedContactsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final long DAYS_KEPT_MILLISECONDS = 2592000000L; // 0x9a7ec800L + } + + protected static interface ContactsContract.DeletedContactsColumns { + field public static final String CONTACT_DELETED_TIMESTAMP = "contact_deleted_timestamp"; + field public static final String CONTACT_ID = "contact_id"; + } + + public static final class ContactsContract.Directory implements android.provider.BaseColumns { + method public static boolean isEnterpriseDirectoryId(long); + method public static boolean isRemoteDirectoryId(long); + method public static void notifyDirectoryChange(android.content.ContentResolver); + field public static final String ACCOUNT_NAME = "accountName"; + field public static final String ACCOUNT_TYPE = "accountType"; + field public static final String CALLER_PACKAGE_PARAM_KEY = "callerPackage"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_directory"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/contact_directories"; + field public static final android.net.Uri CONTENT_URI; + field public static final long DEFAULT = 0L; // 0x0L + field public static final String DIRECTORY_AUTHORITY = "authority"; + field public static final String DISPLAY_NAME = "displayName"; + field public static final android.net.Uri ENTERPRISE_CONTENT_URI; + field public static final long ENTERPRISE_DEFAULT = 1000000000L; // 0x3b9aca00L + field public static final long ENTERPRISE_LOCAL_INVISIBLE = 1000000001L; // 0x3b9aca01L + field public static final String EXPORT_SUPPORT = "exportSupport"; + field public static final int EXPORT_SUPPORT_ANY_ACCOUNT = 2; // 0x2 + field public static final int EXPORT_SUPPORT_NONE = 0; // 0x0 + field public static final int EXPORT_SUPPORT_SAME_ACCOUNT_ONLY = 1; // 0x1 + field public static final long LOCAL_INVISIBLE = 1L; // 0x1L + field public static final String PACKAGE_NAME = "packageName"; + field public static final String PHOTO_SUPPORT = "photoSupport"; + field public static final int PHOTO_SUPPORT_FULL = 3; // 0x3 + field public static final int PHOTO_SUPPORT_FULL_SIZE_ONLY = 2; // 0x2 + field public static final int PHOTO_SUPPORT_NONE = 0; // 0x0 + field public static final int PHOTO_SUPPORT_THUMBNAIL_ONLY = 1; // 0x1 + field public static final String SHORTCUT_SUPPORT = "shortcutSupport"; + field public static final int SHORTCUT_SUPPORT_DATA_ITEMS_ONLY = 1; // 0x1 + field public static final int SHORTCUT_SUPPORT_FULL = 2; // 0x2 + field public static final int SHORTCUT_SUPPORT_NONE = 0; // 0x0 + field public static final String TYPE_RESOURCE_ID = "typeResourceId"; + } + + public static interface ContactsContract.DisplayNameSources { + field public static final int EMAIL = 10; // 0xa + field public static final int NICKNAME = 35; // 0x23 + field public static final int ORGANIZATION = 30; // 0x1e + field public static final int PHONE = 20; // 0x14 + field public static final int STRUCTURED_NAME = 40; // 0x28 + field public static final int STRUCTURED_PHONETIC_NAME = 37; // 0x25 + field public static final int UNDEFINED = 0; // 0x0 + } + + public static final class ContactsContract.DisplayPhoto { + field public static final android.net.Uri CONTENT_MAX_DIMENSIONS_URI; + field public static final android.net.Uri CONTENT_URI; + field public static final String DISPLAY_MAX_DIM = "display_max_dim"; + field public static final String THUMBNAIL_MAX_DIM = "thumbnail_max_dim"; + } + + public static interface ContactsContract.FullNameStyle { + field public static final int CHINESE = 3; // 0x3 + field public static final int CJK = 2; // 0x2 + field public static final int JAPANESE = 4; // 0x4 + field public static final int KOREAN = 5; // 0x5 + field public static final int UNDEFINED = 0; // 0x0 + field public static final int WESTERN = 1; // 0x1 + } + + public static final class ContactsContract.Groups implements android.provider.BaseColumns android.provider.ContactsContract.GroupsColumns android.provider.ContactsContract.SyncColumns { + method public static android.content.EntityIterator newEntityIterator(android.database.Cursor); + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/group"; + field public static final android.net.Uri CONTENT_SUMMARY_URI; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/group"; + field public static final android.net.Uri CONTENT_URI; + } + + protected static interface ContactsContract.GroupsColumns { + field public static final String AUTO_ADD = "auto_add"; + field public static final String DATA_SET = "data_set"; + field public static final String DELETED = "deleted"; + field public static final String FAVORITES = "favorites"; + field public static final String GROUP_IS_READ_ONLY = "group_is_read_only"; + field public static final String GROUP_VISIBLE = "group_visible"; + field public static final String NOTES = "notes"; + field public static final String RES_PACKAGE = "res_package"; + field public static final String SHOULD_SYNC = "should_sync"; + field public static final String SUMMARY_COUNT = "summ_count"; + field public static final String SUMMARY_WITH_PHONES = "summ_phones"; + field public static final String SYSTEM_ID = "system_id"; + field public static final String TITLE = "title"; + field public static final String TITLE_RES = "title_res"; + } + + public static final class ContactsContract.Intents { + ctor public ContactsContract.Intents(); + field public static final String ACTION_VOICE_SEND_MESSAGE_TO_CONTACTS = "android.provider.action.VOICE_SEND_MESSAGE_TO_CONTACTS"; + field public static final String ATTACH_IMAGE = "com.android.contacts.action.ATTACH_IMAGE"; + field public static final String CONTACTS_DATABASE_CREATED = "android.provider.Contacts.DATABASE_CREATED"; + field public static final String EXTRA_CREATE_DESCRIPTION = "com.android.contacts.action.CREATE_DESCRIPTION"; + field public static final String EXTRA_FORCE_CREATE = "com.android.contacts.action.FORCE_CREATE"; + field public static final String EXTRA_RECIPIENT_CONTACT_CHAT_ID = "android.provider.extra.RECIPIENT_CONTACT_CHAT_ID"; + field public static final String EXTRA_RECIPIENT_CONTACT_NAME = "android.provider.extra.RECIPIENT_CONTACT_NAME"; + field public static final String EXTRA_RECIPIENT_CONTACT_URI = "android.provider.extra.RECIPIENT_CONTACT_URI"; + field public static final String INVITE_CONTACT = "com.android.contacts.action.INVITE_CONTACT"; + field public static final String METADATA_ACCOUNT_TYPE = "android.provider.account_type"; + field public static final String METADATA_MIMETYPE = "android.provider.mimetype"; + field public static final String SEARCH_SUGGESTION_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_CLICKED"; + field public static final String SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED"; + field public static final String SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED = "android.provider.Contacts.SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED"; + field public static final String SHOW_OR_CREATE_CONTACT = "com.android.contacts.action.SHOW_OR_CREATE_CONTACT"; + } + + public static final class ContactsContract.Intents.Insert { + ctor public ContactsContract.Intents.Insert(); + field public static final String ACTION = "android.intent.action.INSERT"; + field public static final String COMPANY = "company"; + field public static final String DATA = "data"; + field public static final String EMAIL = "email"; + field public static final String EMAIL_ISPRIMARY = "email_isprimary"; + field public static final String EMAIL_TYPE = "email_type"; + field public static final String EXTRA_ACCOUNT = "android.provider.extra.ACCOUNT"; + field public static final String EXTRA_DATA_SET = "android.provider.extra.DATA_SET"; + field public static final String FULL_MODE = "full_mode"; + field public static final String IM_HANDLE = "im_handle"; + field public static final String IM_ISPRIMARY = "im_isprimary"; + field public static final String IM_PROTOCOL = "im_protocol"; + field public static final String JOB_TITLE = "job_title"; + field public static final String NAME = "name"; + field public static final String NOTES = "notes"; + field public static final String PHONE = "phone"; + field public static final String PHONETIC_NAME = "phonetic_name"; + field public static final String PHONE_ISPRIMARY = "phone_isprimary"; + field public static final String PHONE_TYPE = "phone_type"; + field public static final String POSTAL = "postal"; + field public static final String POSTAL_ISPRIMARY = "postal_isprimary"; + field public static final String POSTAL_TYPE = "postal_type"; + field public static final String SECONDARY_EMAIL = "secondary_email"; + field public static final String SECONDARY_EMAIL_TYPE = "secondary_email_type"; + field public static final String SECONDARY_PHONE = "secondary_phone"; + field public static final String SECONDARY_PHONE_TYPE = "secondary_phone_type"; + field public static final String TERTIARY_EMAIL = "tertiary_email"; + field public static final String TERTIARY_EMAIL_TYPE = "tertiary_email_type"; + field public static final String TERTIARY_PHONE = "tertiary_phone"; + field public static final String TERTIARY_PHONE_TYPE = "tertiary_phone_type"; + } + + public static final class ContactsContract.PhoneLookup implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactsColumns android.provider.ContactsContract.PhoneLookupColumns { + field public static final android.net.Uri CONTENT_FILTER_URI; + field public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI; + field public static final String QUERY_PARAMETER_SIP_ADDRESS = "sip"; + } + + protected static interface ContactsContract.PhoneLookupColumns { + field public static final String CONTACT_ID = "contact_id"; + field public static final String DATA_ID = "data_id"; + field public static final String LABEL = "label"; + field public static final String NORMALIZED_NUMBER = "normalized_number"; + field public static final String NUMBER = "number"; + field public static final String TYPE = "type"; + } + + public static interface ContactsContract.PhoneticNameStyle { + field public static final int JAPANESE = 4; // 0x4 + field public static final int KOREAN = 5; // 0x5 + field public static final int PINYIN = 3; // 0x3 + field public static final int UNDEFINED = 0; // 0x0 + } + + public static final class ContactsContract.PinnedPositions { + ctor public ContactsContract.PinnedPositions(); + method public static void pin(android.content.ContentResolver, long, int); + method public static void undemote(android.content.ContentResolver, long); + field public static final int DEMOTED = -1; // 0xffffffff + field public static final int UNPINNED = 0; // 0x0 + } + + @Deprecated public static final class ContactsContract.Presence extends android.provider.ContactsContract.StatusUpdates { + ctor @Deprecated public ContactsContract.Presence(); + } + + protected static interface ContactsContract.PresenceColumns { + field public static final String CUSTOM_PROTOCOL = "custom_protocol"; + field public static final String DATA_ID = "presence_data_id"; + field public static final String IM_ACCOUNT = "im_account"; + field public static final String IM_HANDLE = "im_handle"; + field public static final String PROTOCOL = "protocol"; + } + + public static final class ContactsContract.Profile implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns { + field public static final android.net.Uri CONTENT_RAW_CONTACTS_URI; + field public static final android.net.Uri CONTENT_URI; + field public static final android.net.Uri CONTENT_VCARD_URI; + field public static final long MIN_ID = 9223372034707292160L; // 0x7fffffff80000000L + } + + public static final class ContactsContract.ProfileSyncState implements android.provider.SyncStateContract.Columns { + method public static byte[] get(android.content.ContentProviderClient, android.accounts.Account) throws android.os.RemoteException; + method public static android.util.Pair getWithUri(android.content.ContentProviderClient, android.accounts.Account) throws android.os.RemoteException; + method public static android.content.ContentProviderOperation newSetOperation(android.accounts.Account, byte[]); + method public static void set(android.content.ContentProviderClient, android.accounts.Account, byte[]) throws android.os.RemoteException; + field public static final String CONTENT_DIRECTORY = "syncstate"; + field public static final android.net.Uri CONTENT_URI; + } + + public static final class ContactsContract.ProviderStatus { + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/provider_status"; + field public static final android.net.Uri CONTENT_URI; + field public static final String DATABASE_CREATION_TIMESTAMP = "database_creation_timestamp"; + field public static final String STATUS = "status"; + field public static final int STATUS_BUSY = 1; // 0x1 + field public static final int STATUS_EMPTY = 2; // 0x2 + field public static final int STATUS_NORMAL = 0; // 0x0 + } + + public static final class ContactsContract.QuickContact { + ctor public ContactsContract.QuickContact(); + method public static void showQuickContact(android.content.Context, android.view.View, android.net.Uri, int, String[]); + method public static void showQuickContact(android.content.Context, android.graphics.Rect, android.net.Uri, int, String[]); + method public static void showQuickContact(android.content.Context, android.view.View, android.net.Uri, String[], String); + method public static void showQuickContact(android.content.Context, android.graphics.Rect, android.net.Uri, String[], String); + field public static final String ACTION_QUICK_CONTACT = "android.provider.action.QUICK_CONTACT"; + field public static final String EXTRA_EXCLUDE_MIMES = "android.provider.extra.EXCLUDE_MIMES"; + field public static final String EXTRA_MODE = "android.provider.extra.MODE"; + field public static final String EXTRA_PRIORITIZED_MIMETYPE = "android.provider.extra.PRIORITIZED_MIMETYPE"; + field public static final int MODE_LARGE = 3; // 0x3 + field public static final int MODE_MEDIUM = 2; // 0x2 + field public static final int MODE_SMALL = 1; // 0x1 + } + + public static final class ContactsContract.RawContacts implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.RawContactsColumns android.provider.ContactsContract.SyncColumns { + method public static android.net.Uri getContactLookupUri(android.content.ContentResolver, android.net.Uri); + method @Nullable public static String getLocalAccountName(@NonNull android.content.Context); + method @Nullable public static String getLocalAccountType(@NonNull android.content.Context); + method public static android.content.EntityIterator newEntityIterator(android.database.Cursor); + field public static final int AGGREGATION_MODE_DEFAULT = 0; // 0x0 + field public static final int AGGREGATION_MODE_DISABLED = 3; // 0x3 + field @Deprecated public static final int AGGREGATION_MODE_IMMEDIATE = 1; // 0x1 + field public static final int AGGREGATION_MODE_SUSPENDED = 2; // 0x2 + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/raw_contact"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/raw_contact"; + field public static final android.net.Uri CONTENT_URI; + } + + public static final class ContactsContract.RawContacts.Data implements android.provider.BaseColumns android.provider.ContactsContract.DataColumns { + field public static final String CONTENT_DIRECTORY = "data"; + } + + @FlaggedApi("android.provider.new_default_account_api_enabled") public static final class ContactsContract.RawContacts.DefaultAccount { + method @FlaggedApi("android.provider.new_default_account_api_enabled") @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState getDefaultAccountForNewContacts(@NonNull android.content.ContentResolver); + field public static final String ACTION_MOVE_CONTACTS_TO_DEFAULT_ACCOUNT = "android.provider.action.MOVE_CONTACTS_TO_DEFAULT_ACCOUNT"; + } + + @FlaggedApi("android.provider.new_default_account_api_enabled") public static final class ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState { + method @Nullable public android.accounts.Account getAccount(); + method public int getState(); + method @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState ofCloud(@NonNull android.accounts.Account); + method @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState ofLocal(); + method @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState ofNotSet(); + method @NonNull public static android.provider.ContactsContract.RawContacts.DefaultAccount.DefaultAccountAndState ofSim(@NonNull android.accounts.Account); + field public static final int DEFAULT_ACCOUNT_STATE_CLOUD = 3; // 0x3 + field public static final int DEFAULT_ACCOUNT_STATE_LOCAL = 2; // 0x2 + field public static final int DEFAULT_ACCOUNT_STATE_NOT_SET = 1; // 0x1 + field public static final int DEFAULT_ACCOUNT_STATE_SIM = 4; // 0x4 + } + + public static final class ContactsContract.RawContacts.DisplayPhoto { + field public static final String CONTENT_DIRECTORY = "display_photo"; + } + + public static final class ContactsContract.RawContacts.Entity implements android.provider.BaseColumns android.provider.ContactsContract.DataColumns { + field public static final String CONTENT_DIRECTORY = "entity"; + field public static final String DATA_ID = "data_id"; + } + + protected static interface ContactsContract.RawContactsColumns { + field public static final String ACCOUNT_TYPE_AND_DATA_SET = "account_type_and_data_set"; + field public static final String AGGREGATION_MODE = "aggregation_mode"; + field public static final String BACKUP_ID = "backup_id"; + field public static final String CONTACT_ID = "contact_id"; + field public static final String DATA_SET = "data_set"; + field public static final String DELETED = "deleted"; + field @Deprecated public static final String METADATA_DIRTY = "metadata_dirty"; + field public static final String RAW_CONTACT_IS_READ_ONLY = "raw_contact_is_read_only"; + field public static final String RAW_CONTACT_IS_USER_PROFILE = "raw_contact_is_user_profile"; + } + + public static final class ContactsContract.RawContactsEntity implements android.provider.BaseColumns android.provider.ContactsContract.DataColumns android.provider.ContactsContract.RawContactsColumns { + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/raw_contact_entity"; + field public static final android.net.Uri CONTENT_URI; + field public static final String DATA_ID = "data_id"; + field public static final android.net.Uri PROFILE_CONTENT_URI; + } + + public static class ContactsContract.SearchSnippets { + ctor public ContactsContract.SearchSnippets(); + field public static final String DEFERRED_SNIPPETING_KEY = "deferred_snippeting"; + field public static final String SNIPPET = "snippet"; + } + + public static final class ContactsContract.Settings implements android.provider.ContactsContract.SettingsColumns { + method @Deprecated @FlaggedApi("android.provider.new_default_account_api_enabled") @Nullable public static android.accounts.Account getDefaultAccount(@NonNull android.content.ContentResolver); + field public static final String ACTION_SET_DEFAULT_ACCOUNT = "android.provider.action.SET_DEFAULT_ACCOUNT"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/setting"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/setting"; + field public static final android.net.Uri CONTENT_URI; + } + + protected static interface ContactsContract.SettingsColumns { + field public static final String ACCOUNT_NAME = "account_name"; + field public static final String ACCOUNT_TYPE = "account_type"; + field public static final String ANY_UNSYNCED = "any_unsynced"; + field public static final String DATA_SET = "data_set"; + field public static final String SHOULD_SYNC = "should_sync"; + field public static final String UNGROUPED_COUNT = "summ_count"; + field public static final String UNGROUPED_VISIBLE = "ungrouped_visible"; + field public static final String UNGROUPED_WITH_PHONES = "summ_phones"; + } + + public static final class ContactsContract.SimAccount implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getAccountName(); + method @NonNull public String getAccountType(); + method public int getEfType(); + method public int getSimSlotIndex(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int ADN_EF_TYPE = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FDN_EF_TYPE = 2; // 0x2 + field public static final int SDN_EF_TYPE = 3; // 0x3 + field public static final int UNKNOWN_EF_TYPE = 0; // 0x0 + } + + public static final class ContactsContract.SimContacts { + method @NonNull public static java.util.List getSimAccounts(@NonNull android.content.ContentResolver); + field public static final String ACTION_SIM_ACCOUNTS_CHANGED = "android.provider.action.SIM_ACCOUNTS_CHANGED"; + } + + protected static interface ContactsContract.StatusColumns { + field public static final int AVAILABLE = 5; // 0x5 + field public static final int AWAY = 2; // 0x2 + field public static final int CAPABILITY_HAS_CAMERA = 4; // 0x4 + field public static final int CAPABILITY_HAS_VIDEO = 2; // 0x2 + field public static final int CAPABILITY_HAS_VOICE = 1; // 0x1 + field public static final String CHAT_CAPABILITY = "chat_capability"; + field public static final int DO_NOT_DISTURB = 4; // 0x4 + field public static final int IDLE = 3; // 0x3 + field public static final int INVISIBLE = 1; // 0x1 + field public static final int OFFLINE = 0; // 0x0 + field public static final String PRESENCE = "mode"; + field @Deprecated public static final String PRESENCE_CUSTOM_STATUS = "status"; + field @Deprecated public static final String PRESENCE_STATUS = "mode"; + field public static final String STATUS = "status"; + field public static final String STATUS_ICON = "status_icon"; + field public static final String STATUS_LABEL = "status_label"; + field public static final String STATUS_RES_PACKAGE = "status_res_package"; + field public static final String STATUS_TIMESTAMP = "status_ts"; + } + + public static class ContactsContract.StatusUpdates implements android.provider.ContactsContract.PresenceColumns android.provider.ContactsContract.StatusColumns { + method public static final int getPresenceIconResourceId(int); + method public static final int getPresencePrecedence(int); + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/status-update"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/status-update"; + field public static final android.net.Uri CONTENT_URI; + field public static final android.net.Uri PROFILE_CONTENT_URI; + } + + protected static interface ContactsContract.SyncColumns extends android.provider.ContactsContract.BaseSyncColumns { + field public static final String ACCOUNT_NAME = "account_name"; + field public static final String ACCOUNT_TYPE = "account_type"; + field public static final String DIRTY = "dirty"; + field public static final String SOURCE_ID = "sourceid"; + field public static final String VERSION = "version"; + } + + public static final class ContactsContract.SyncState implements android.provider.SyncStateContract.Columns { + method public static byte[] get(android.content.ContentProviderClient, android.accounts.Account) throws android.os.RemoteException; + method public static android.util.Pair getWithUri(android.content.ContentProviderClient, android.accounts.Account) throws android.os.RemoteException; + method public static android.content.ContentProviderOperation newSetOperation(android.accounts.Account, byte[]); + method public static void set(android.content.ContentProviderClient, android.accounts.Account, byte[]) throws android.os.RemoteException; + field public static final String CONTENT_DIRECTORY = "syncstate"; + field public static final android.net.Uri CONTENT_URI; + } + + public final class DocumentsContract { + method public static android.net.Uri buildChildDocumentsUri(String, String); + method public static android.net.Uri buildChildDocumentsUriUsingTree(android.net.Uri, String); + method public static android.net.Uri buildDocumentUri(String, String); + method public static android.net.Uri buildDocumentUriUsingTree(android.net.Uri, String); + method public static android.net.Uri buildRecentDocumentsUri(String, String); + method public static android.net.Uri buildRootUri(String, String); + method public static android.net.Uri buildRootsUri(String); + method public static android.net.Uri buildSearchDocumentsUri(String, String, String); + method public static android.net.Uri buildTreeDocumentUri(String, String); + method @Nullable public static android.net.Uri copyDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.net.Uri) throws java.io.FileNotFoundException; + method @Nullable public static android.net.Uri createDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull String, @NonNull String) throws java.io.FileNotFoundException; + method @Nullable public static android.content.IntentSender createWebLinkIntent(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @Nullable android.os.Bundle) throws java.io.FileNotFoundException; + method public static boolean deleteDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri) throws java.io.FileNotFoundException; + method public static void ejectRoot(@NonNull android.content.ContentResolver, @NonNull android.net.Uri); + method @Nullable public static android.provider.DocumentsContract.Path findDocumentPath(@NonNull android.content.ContentResolver, @NonNull android.net.Uri) throws java.io.FileNotFoundException; + method public static String getDocumentId(android.net.Uri); + method @Nullable public static android.os.Bundle getDocumentMetadata(@NonNull android.content.ContentResolver, @NonNull android.net.Uri) throws java.io.FileNotFoundException; + method @Nullable public static android.graphics.Bitmap getDocumentThumbnail(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.graphics.Point, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method public static String getRootId(android.net.Uri); + method public static String getSearchDocumentsQuery(android.net.Uri); + method public static String getTreeDocumentId(android.net.Uri); + method public static boolean isChildDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.net.Uri) throws java.io.FileNotFoundException; + method public static boolean isDocumentUri(android.content.Context, @Nullable android.net.Uri); + method public static boolean isRootUri(@NonNull android.content.Context, @Nullable android.net.Uri); + method public static boolean isRootsUri(@NonNull android.content.Context, @Nullable android.net.Uri); + method public static boolean isTreeUri(android.net.Uri); + method @Nullable public static android.net.Uri moveDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.net.Uri, @NonNull android.net.Uri) throws java.io.FileNotFoundException; + method public static boolean removeDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull android.net.Uri) throws java.io.FileNotFoundException; + method @Nullable public static android.net.Uri renameDocument(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @NonNull String) throws java.io.FileNotFoundException; + field public static final String ACTION_DOCUMENT_SETTINGS = "android.provider.action.DOCUMENT_SETTINGS"; + field public static final String EXTRA_ERROR = "error"; + field public static final String EXTRA_EXCLUDE_SELF = "android.provider.extra.EXCLUDE_SELF"; + field public static final String EXTRA_INFO = "info"; + field public static final String EXTRA_INITIAL_URI = "android.provider.extra.INITIAL_URI"; + field public static final String EXTRA_LOADING = "loading"; + field public static final String EXTRA_ORIENTATION = "android.provider.extra.ORIENTATION"; + field public static final String EXTRA_PROMPT = "android.provider.extra.PROMPT"; + field public static final String METADATA_EXIF = "android:documentExif"; + field public static final String METADATA_TREE_COUNT = "android:metadataTreeCount"; + field public static final String METADATA_TREE_SIZE = "android:metadataTreeSize"; + field public static final String METADATA_TYPES = "android:documentMetadataTypes"; + field public static final String PROVIDER_INTERFACE = "android.content.action.DOCUMENTS_PROVIDER"; + field public static final String QUERY_ARG_DISPLAY_NAME = "android:query-arg-display-name"; + field public static final String QUERY_ARG_EXCLUDE_MEDIA = "android:query-arg-exclude-media"; + field public static final String QUERY_ARG_FILE_SIZE_OVER = "android:query-arg-file-size-over"; + field public static final String QUERY_ARG_LAST_MODIFIED_AFTER = "android:query-arg-last-modified-after"; + field public static final String QUERY_ARG_MIME_TYPES = "android:query-arg-mime-types"; + } + + public static final class DocumentsContract.Document { + field public static final String COLUMN_DISPLAY_NAME = "_display_name"; + field public static final String COLUMN_DOCUMENT_ID = "document_id"; + field public static final String COLUMN_FLAGS = "flags"; + field public static final String COLUMN_ICON = "icon"; + field public static final String COLUMN_LAST_MODIFIED = "last_modified"; + field public static final String COLUMN_MIME_TYPE = "mime_type"; + field public static final String COLUMN_SIZE = "_size"; + field public static final String COLUMN_SUMMARY = "summary"; + field public static final int FLAG_DIR_BLOCKS_OPEN_DOCUMENT_TREE = 32768; // 0x8000 + field public static final int FLAG_DIR_PREFERS_GRID = 16; // 0x10 + field public static final int FLAG_DIR_PREFERS_LAST_MODIFIED = 32; // 0x20 + field public static final int FLAG_DIR_SUPPORTS_CREATE = 8; // 0x8 + field public static final int FLAG_PARTIAL = 8192; // 0x2000 + field public static final int FLAG_SUPPORTS_COPY = 128; // 0x80 + field public static final int FLAG_SUPPORTS_DELETE = 4; // 0x4 + field public static final int FLAG_SUPPORTS_METADATA = 16384; // 0x4000 + field public static final int FLAG_SUPPORTS_MOVE = 256; // 0x100 + field public static final int FLAG_SUPPORTS_REMOVE = 1024; // 0x400 + field public static final int FLAG_SUPPORTS_RENAME = 64; // 0x40 + field public static final int FLAG_SUPPORTS_SETTINGS = 2048; // 0x800 + field public static final int FLAG_SUPPORTS_THUMBNAIL = 1; // 0x1 + field public static final int FLAG_SUPPORTS_WRITE = 2; // 0x2 + field public static final int FLAG_VIRTUAL_DOCUMENT = 512; // 0x200 + field public static final int FLAG_WEB_LINKABLE = 4096; // 0x1000 + field public static final String MIME_TYPE_DIR = "vnd.android.document/directory"; + } + + public static final class DocumentsContract.Path implements android.os.Parcelable { + ctor public DocumentsContract.Path(@Nullable String, java.util.List); + method public int describeContents(); + method public java.util.List getPath(); + method @Nullable public String getRootId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class DocumentsContract.Root { + field public static final String COLUMN_AVAILABLE_BYTES = "available_bytes"; + field public static final String COLUMN_CAPACITY_BYTES = "capacity_bytes"; + field public static final String COLUMN_DOCUMENT_ID = "document_id"; + field public static final String COLUMN_FLAGS = "flags"; + field public static final String COLUMN_ICON = "icon"; + field public static final String COLUMN_MIME_TYPES = "mime_types"; + field public static final String COLUMN_QUERY_ARGS = "query_args"; + field public static final String COLUMN_ROOT_ID = "root_id"; + field public static final String COLUMN_SUMMARY = "summary"; + field public static final String COLUMN_TITLE = "title"; + field public static final int FLAG_EMPTY = 64; // 0x40 + field public static final int FLAG_LOCAL_ONLY = 2; // 0x2 + field public static final int FLAG_SUPPORTS_CREATE = 1; // 0x1 + field public static final int FLAG_SUPPORTS_EJECT = 32; // 0x20 + field public static final int FLAG_SUPPORTS_IS_CHILD = 16; // 0x10 + field public static final int FLAG_SUPPORTS_RECENTS = 4; // 0x4 + field public static final int FLAG_SUPPORTS_SEARCH = 8; // 0x8 + field public static final String MIME_TYPE_ITEM = "vnd.android.document/root"; + } + + public abstract class DocumentsProvider extends android.content.ContentProvider { + ctor public DocumentsProvider(); + method public String copyDocument(String, String) throws java.io.FileNotFoundException; + method public String createDocument(String, String, String) throws java.io.FileNotFoundException; + method public android.content.IntentSender createWebLinkIntent(String, @Nullable android.os.Bundle) throws java.io.FileNotFoundException; + method public final int delete(android.net.Uri, String, String[]); + method public void deleteDocument(String) throws java.io.FileNotFoundException; + method public void ejectRoot(String); + method public android.provider.DocumentsContract.Path findDocumentPath(@Nullable String, String) throws java.io.FileNotFoundException; + method @Nullable public android.os.Bundle getDocumentMetadata(@NonNull String) throws java.io.FileNotFoundException; + method public String[] getDocumentStreamTypes(String, String); + method public String getDocumentType(String) throws java.io.FileNotFoundException; + method public final String getType(android.net.Uri); + method @Nullable public final String getTypeAnonymous(@NonNull android.net.Uri); + method public final android.net.Uri insert(android.net.Uri, android.content.ContentValues); + method public boolean isChildDocument(String, String); + method public String moveDocument(String, String, String) throws java.io.FileNotFoundException; + method public final android.content.res.AssetFileDescriptor openAssetFile(android.net.Uri, String) throws java.io.FileNotFoundException; + method public final android.content.res.AssetFileDescriptor openAssetFile(android.net.Uri, String, android.os.CancellationSignal) throws java.io.FileNotFoundException; + method public abstract android.os.ParcelFileDescriptor openDocument(String, String, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method public android.content.res.AssetFileDescriptor openDocumentThumbnail(String, android.graphics.Point, android.os.CancellationSignal) throws java.io.FileNotFoundException; + method public final android.os.ParcelFileDescriptor openFile(android.net.Uri, String) throws java.io.FileNotFoundException; + method public final android.os.ParcelFileDescriptor openFile(android.net.Uri, String, android.os.CancellationSignal) throws java.io.FileNotFoundException; + method public final android.content.res.AssetFileDescriptor openTypedAssetFile(android.net.Uri, String, android.os.Bundle) throws java.io.FileNotFoundException; + method public final android.content.res.AssetFileDescriptor openTypedAssetFile(android.net.Uri, String, android.os.Bundle, android.os.CancellationSignal) throws java.io.FileNotFoundException; + method public android.content.res.AssetFileDescriptor openTypedDocument(String, String, android.os.Bundle, android.os.CancellationSignal) throws java.io.FileNotFoundException; + method public final android.database.Cursor query(android.net.Uri, String[], String, String[], String); + method public final android.database.Cursor query(android.net.Uri, String[], android.os.Bundle, android.os.CancellationSignal); + method public abstract android.database.Cursor queryChildDocuments(String, String[], String) throws java.io.FileNotFoundException; + method public android.database.Cursor queryChildDocuments(String, @Nullable String[], @Nullable android.os.Bundle) throws java.io.FileNotFoundException; + method public abstract android.database.Cursor queryDocument(String, String[]) throws java.io.FileNotFoundException; + method public android.database.Cursor queryRecentDocuments(String, String[]) throws java.io.FileNotFoundException; + method @Nullable public android.database.Cursor queryRecentDocuments(@NonNull String, @Nullable String[], @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal) throws java.io.FileNotFoundException; + method public abstract android.database.Cursor queryRoots(String[]) throws java.io.FileNotFoundException; + method public android.database.Cursor querySearchDocuments(String, String, String[]) throws java.io.FileNotFoundException; + method @Nullable public android.database.Cursor querySearchDocuments(@NonNull String, @Nullable String[], @NonNull android.os.Bundle) throws java.io.FileNotFoundException; + method public void removeDocument(String, String) throws java.io.FileNotFoundException; + method public String renameDocument(String, String) throws java.io.FileNotFoundException; + method public final void revokeDocumentPermission(String); + method public final int update(android.net.Uri, android.content.ContentValues, String, String[]); + } + + @FlaggedApi("android.provider.user_keys") public final class E2eeContactKeysManager { + method @NonNull @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public java.util.List getAllE2eeContactKeys(@NonNull String); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public java.util.List getAllE2eeSelfKeys(); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public android.provider.E2eeContactKeysManager.E2eeContactKey getE2eeContactKey(@NonNull String, @NonNull String, @NonNull String); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public android.provider.E2eeContactKeysManager.E2eeSelfKey getE2eeSelfKey(@NonNull String, @NonNull String); + method public static int getMaxKeySizeBytes(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public java.util.List getOwnerE2eeContactKeys(@NonNull String); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_CONTACTS) public java.util.List getOwnerE2eeSelfKeys(); + method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean removeE2eeContactKey(@NonNull String, @NonNull String, @NonNull String); + method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean removeE2eeSelfKey(@NonNull String, @NonNull String); + method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean updateE2eeContactKeyLocalVerificationState(@NonNull String, @NonNull String, @NonNull String, int); + method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean updateE2eeContactKeyRemoteVerificationState(@NonNull String, @NonNull String, @NonNull String, int); + method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean updateE2eeSelfKeyRemoteVerificationState(@NonNull String, @NonNull String, int); + method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public void updateOrInsertE2eeContactKey(@NonNull String, @NonNull String, @NonNull String, @NonNull byte[]); + method @RequiresPermission(android.Manifest.permission.WRITE_CONTACTS) public boolean updateOrInsertE2eeSelfKey(@NonNull String, @NonNull String, @NonNull byte[]); + field public static final int VERIFICATION_STATE_UNVERIFIED = 0; // 0x0 + field public static final int VERIFICATION_STATE_VERIFICATION_FAILED = 1; // 0x1 + field public static final int VERIFICATION_STATE_VERIFIED = 2; // 0x2 + } + + public static final class E2eeContactKeysManager.E2eeContactKey implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getAccountId(); + method @Nullable public String getDeviceId(); + method @Nullable public String getDisplayName(); + method @Nullable public String getEmailAddress(); + method @Nullable public byte[] getKeyValue(); + method public int getLocalVerificationState(); + method @NonNull public String getOwnerPackageName(); + method @Nullable public String getPhoneNumber(); + method public int getRemoteVerificationState(); + method public long getTimeUpdated(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class E2eeContactKeysManager.E2eeSelfKey implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getAccountId(); + method @Nullable public String getDeviceId(); + method @Nullable public byte[] getKeyValue(); + method @NonNull public String getOwnerPackageName(); + method public int getRemoteVerificationState(); + method public long getTimeUpdated(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @Deprecated public final class FontRequest { + ctor @Deprecated public FontRequest(@NonNull String, @NonNull String, @NonNull String); + ctor @Deprecated public FontRequest(@NonNull String, @NonNull String, @NonNull String, @NonNull java.util.List>); + method @Deprecated public java.util.List> getCertificates(); + method @Deprecated public String getProviderAuthority(); + method @Deprecated public String getProviderPackage(); + method @Deprecated public String getQuery(); + } + + @Deprecated public class FontsContract { + method @Deprecated public static android.graphics.Typeface buildTypeface(@NonNull android.content.Context, @Nullable android.os.CancellationSignal, @NonNull android.provider.FontsContract.FontInfo[]); + method @Deprecated @NonNull public static android.provider.FontsContract.FontFamilyResult fetchFonts(@NonNull android.content.Context, @Nullable android.os.CancellationSignal, @NonNull android.provider.FontRequest) throws android.content.pm.PackageManager.NameNotFoundException; + method @Deprecated public static void requestFonts(@NonNull android.content.Context, @NonNull android.provider.FontRequest, @NonNull android.os.Handler, @Nullable android.os.CancellationSignal, @NonNull android.provider.FontsContract.FontRequestCallback); + } + + @Deprecated public static final class FontsContract.Columns implements android.provider.BaseColumns { + field @Deprecated public static final String FILE_ID = "file_id"; + field @Deprecated public static final String ITALIC = "font_italic"; + field @Deprecated public static final String RESULT_CODE = "result_code"; + field @Deprecated public static final int RESULT_CODE_FONT_NOT_FOUND = 1; // 0x1 + field @Deprecated public static final int RESULT_CODE_FONT_UNAVAILABLE = 2; // 0x2 + field @Deprecated public static final int RESULT_CODE_MALFORMED_QUERY = 3; // 0x3 + field @Deprecated public static final int RESULT_CODE_OK = 0; // 0x0 + field @Deprecated public static final String TTC_INDEX = "font_ttc_index"; + field @Deprecated public static final String VARIATION_SETTINGS = "font_variation_settings"; + field @Deprecated public static final String WEIGHT = "font_weight"; + } + + @Deprecated public static class FontsContract.FontFamilyResult { + method @Deprecated @NonNull public android.provider.FontsContract.FontInfo[] getFonts(); + method @Deprecated public int getStatusCode(); + field @Deprecated public static final int STATUS_OK = 0; // 0x0 + field @Deprecated public static final int STATUS_REJECTED = 3; // 0x3 + field @Deprecated public static final int STATUS_UNEXPECTED_DATA_PROVIDED = 2; // 0x2 + field @Deprecated public static final int STATUS_WRONG_CERTIFICATES = 1; // 0x1 + } + + @Deprecated public static class FontsContract.FontInfo { + method @Deprecated @Nullable public android.graphics.fonts.FontVariationAxis[] getAxes(); + method @Deprecated public int getResultCode(); + method @Deprecated @IntRange(from=0) public int getTtcIndex(); + method @Deprecated @NonNull public android.net.Uri getUri(); + method @Deprecated @IntRange(from=1, to=1000) public int getWeight(); + method @Deprecated public boolean isItalic(); + } + + @Deprecated public static class FontsContract.FontRequestCallback { + ctor @Deprecated public FontsContract.FontRequestCallback(); + method @Deprecated public void onTypefaceRequestFailed(int); + method @Deprecated public void onTypefaceRetrieved(android.graphics.Typeface); + field @Deprecated public static final int FAIL_REASON_FONT_LOAD_ERROR = -3; // 0xfffffffd + field @Deprecated public static final int FAIL_REASON_FONT_NOT_FOUND = 1; // 0x1 + field @Deprecated public static final int FAIL_REASON_FONT_UNAVAILABLE = 2; // 0x2 + field @Deprecated public static final int FAIL_REASON_MALFORMED_QUERY = 3; // 0x3 + field @Deprecated public static final int FAIL_REASON_PROVIDER_NOT_FOUND = -1; // 0xffffffff + field @Deprecated public static final int FAIL_REASON_WRONG_CERTIFICATES = -2; // 0xfffffffe + } + + @Deprecated public final class LiveFolders implements android.provider.BaseColumns { + field @Deprecated public static final String ACTION_CREATE_LIVE_FOLDER = "android.intent.action.CREATE_LIVE_FOLDER"; + field @Deprecated public static final String DESCRIPTION = "description"; + field @Deprecated public static final int DISPLAY_MODE_GRID = 1; // 0x1 + field @Deprecated public static final int DISPLAY_MODE_LIST = 2; // 0x2 + field @Deprecated public static final String EXTRA_LIVE_FOLDER_BASE_INTENT = "android.intent.extra.livefolder.BASE_INTENT"; + field @Deprecated public static final String EXTRA_LIVE_FOLDER_DISPLAY_MODE = "android.intent.extra.livefolder.DISPLAY_MODE"; + field @Deprecated public static final String EXTRA_LIVE_FOLDER_ICON = "android.intent.extra.livefolder.ICON"; + field @Deprecated public static final String EXTRA_LIVE_FOLDER_NAME = "android.intent.extra.livefolder.NAME"; + field @Deprecated public static final String ICON_BITMAP = "icon_bitmap"; + field @Deprecated public static final String ICON_PACKAGE = "icon_package"; + field @Deprecated public static final String ICON_RESOURCE = "icon_resource"; + field @Deprecated public static final String INTENT = "intent"; + field @Deprecated public static final String NAME = "name"; + } + + public interface OpenableColumns { + field public static final String DISPLAY_NAME = "_display_name"; + field public static final String SIZE = "_size"; + } + + public class SearchRecentSuggestions { + ctor public SearchRecentSuggestions(android.content.Context, String, int); + method public void clearHistory(); + method public void saveRecentQuery(String, String); + method protected void truncateHistory(android.content.ContentResolver, int); + field public static final String[] QUERIES_PROJECTION_1LINE; + field public static final String[] QUERIES_PROJECTION_2LINE; + field public static final int QUERIES_PROJECTION_DATE_INDEX = 1; // 0x1 + field public static final int QUERIES_PROJECTION_DISPLAY1_INDEX = 3; // 0x3 + field public static final int QUERIES_PROJECTION_DISPLAY2_INDEX = 4; // 0x4 + field public static final int QUERIES_PROJECTION_QUERY_INDEX = 2; // 0x2 + } + + public final class Settings { + ctor public Settings(); + method public static boolean canDrawOverlays(android.content.Context); + field public static final String ACTION_ACCESSIBILITY_SETTINGS = "android.settings.ACCESSIBILITY_SETTINGS"; + field public static final String ACTION_ADD_ACCOUNT = "android.settings.ADD_ACCOUNT_SETTINGS"; + field public static final String ACTION_ADVANCED_MEMORY_PROTECTION_SETTINGS = "android.settings.ADVANCED_MEMORY_PROTECTION_SETTINGS"; + field public static final String ACTION_AIRPLANE_MODE_SETTINGS = "android.settings.AIRPLANE_MODE_SETTINGS"; + field public static final String ACTION_ALL_APPS_NOTIFICATION_SETTINGS = "android.settings.ALL_APPS_NOTIFICATION_SETTINGS"; + field public static final String ACTION_APN_SETTINGS = "android.settings.APN_SETTINGS"; + field public static final String ACTION_APPLICATION_DETAILS_SETTINGS = "android.settings.APPLICATION_DETAILS_SETTINGS"; + field public static final String ACTION_APPLICATION_DEVELOPMENT_SETTINGS = "android.settings.APPLICATION_DEVELOPMENT_SETTINGS"; + field public static final String ACTION_APPLICATION_SETTINGS = "android.settings.APPLICATION_SETTINGS"; + field public static final String ACTION_APP_LOCALE_SETTINGS = "android.settings.APP_LOCALE_SETTINGS"; + field public static final String ACTION_APP_NOTIFICATION_BUBBLE_SETTINGS = "android.settings.APP_NOTIFICATION_BUBBLE_SETTINGS"; + field @FlaggedApi("android.app.api_rich_ongoing") public static final String ACTION_APP_NOTIFICATION_PROMOTION_SETTINGS = "android.settings.APP_NOTIFICATION_PROMOTION_SETTINGS"; + field public static final String ACTION_APP_NOTIFICATION_SETTINGS = "android.settings.APP_NOTIFICATION_SETTINGS"; + field public static final String ACTION_APP_OPEN_BY_DEFAULT_SETTINGS = "android.settings.APP_OPEN_BY_DEFAULT_SETTINGS"; + field public static final String ACTION_APP_SEARCH_SETTINGS = "android.settings.APP_SEARCH_SETTINGS"; + field public static final String ACTION_APP_USAGE_SETTINGS = "android.settings.action.APP_USAGE_SETTINGS"; + field @FlaggedApi("android.app.modes_api") public static final String ACTION_AUTOMATIC_ZEN_RULE_SETTINGS = "android.settings.AUTOMATIC_ZEN_RULE_SETTINGS"; + field public static final String ACTION_AUTO_ROTATE_SETTINGS = "android.settings.AUTO_ROTATE_SETTINGS"; + field public static final String ACTION_BATTERY_SAVER_SETTINGS = "android.settings.BATTERY_SAVER_SETTINGS"; + field public static final String ACTION_BIOMETRIC_ENROLL = "android.settings.BIOMETRIC_ENROLL"; + field public static final String ACTION_BLUETOOTH_SETTINGS = "android.settings.BLUETOOTH_SETTINGS"; + field public static final String ACTION_CAPTIONING_SETTINGS = "android.settings.CAPTIONING_SETTINGS"; + field public static final String ACTION_CAST_SETTINGS = "android.settings.CAST_SETTINGS"; + field public static final String ACTION_CHANNEL_NOTIFICATION_SETTINGS = "android.settings.CHANNEL_NOTIFICATION_SETTINGS"; + field public static final String ACTION_CONDITION_PROVIDER_SETTINGS = "android.settings.ACTION_CONDITION_PROVIDER_SETTINGS"; + field @FlaggedApi("android.credentials.flags.new_settings_intents") public static final String ACTION_CREDENTIAL_PROVIDER = "android.settings.CREDENTIAL_PROVIDER"; + field public static final String ACTION_DATA_ROAMING_SETTINGS = "android.settings.DATA_ROAMING_SETTINGS"; + field public static final String ACTION_DATA_USAGE_SETTINGS = "android.settings.DATA_USAGE_SETTINGS"; + field public static final String ACTION_DATE_SETTINGS = "android.settings.DATE_SETTINGS"; + field public static final String ACTION_DEVICE_INFO_SETTINGS = "android.settings.DEVICE_INFO_SETTINGS"; + field public static final String ACTION_DISPLAY_SETTINGS = "android.settings.DISPLAY_SETTINGS"; + field public static final String ACTION_DREAM_SETTINGS = "android.settings.DREAM_SETTINGS"; + field @Deprecated public static final String ACTION_FINGERPRINT_ENROLL = "android.settings.FINGERPRINT_ENROLL"; + field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_FIRST_DAY_OF_WEEK_SETTINGS = "android.settings.FIRST_DAY_OF_WEEK_SETTINGS"; + field public static final String ACTION_HARD_KEYBOARD_SETTINGS = "android.settings.HARD_KEYBOARD_SETTINGS"; + field public static final String ACTION_HOME_SETTINGS = "android.settings.HOME_SETTINGS"; + field public static final String ACTION_IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS = "android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS"; + field public static final String ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS = "android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS"; + field public static final String ACTION_INPUT_METHOD_SETTINGS = "android.settings.INPUT_METHOD_SETTINGS"; + field public static final String ACTION_INPUT_METHOD_SUBTYPE_SETTINGS = "android.settings.INPUT_METHOD_SUBTYPE_SETTINGS"; + field public static final String ACTION_INTERNAL_STORAGE_SETTINGS = "android.settings.INTERNAL_STORAGE_SETTINGS"; + field public static final String ACTION_LOCALE_SETTINGS = "android.settings.LOCALE_SETTINGS"; + field public static final String ACTION_LOCATION_SOURCE_SETTINGS = "android.settings.LOCATION_SOURCE_SETTINGS"; + field public static final String ACTION_MANAGE_ALL_APPLICATIONS_SETTINGS = "android.settings.MANAGE_ALL_APPLICATIONS_SETTINGS"; + field public static final String ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION = "android.settings.MANAGE_ALL_FILES_ACCESS_PERMISSION"; + field public static final String ACTION_MANAGE_ALL_SIM_PROFILES_SETTINGS = "android.settings.MANAGE_ALL_SIM_PROFILES_SETTINGS"; + field public static final String ACTION_MANAGE_APPLICATIONS_SETTINGS = "android.settings.MANAGE_APPLICATIONS_SETTINGS"; + field public static final String ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION = "android.settings.MANAGE_APP_ALL_FILES_ACCESS_PERMISSION"; + field public static final String ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT = "android.settings.MANAGE_APP_USE_FULL_SCREEN_INTENT"; + field public static final String ACTION_MANAGE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_DEFAULT_APPS_SETTINGS"; + field public static final String ACTION_MANAGE_OVERLAY_PERMISSION = "android.settings.action.MANAGE_OVERLAY_PERMISSION"; + field public static final String ACTION_MANAGE_SUPERVISOR_RESTRICTED_SETTING = "android.settings.MANAGE_SUPERVISOR_RESTRICTED_SETTING"; + field public static final String ACTION_MANAGE_UNKNOWN_APP_SOURCES = "android.settings.MANAGE_UNKNOWN_APP_SOURCES"; + field public static final String ACTION_MANAGE_WRITE_SETTINGS = "android.settings.action.MANAGE_WRITE_SETTINGS"; + field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_MEASUREMENT_SYSTEM_SETTINGS = "android.settings.MEASUREMENT_SYSTEM_SETTINGS"; + field public static final String ACTION_MEMORY_CARD_SETTINGS = "android.settings.MEMORY_CARD_SETTINGS"; + field public static final String ACTION_NETWORK_OPERATOR_SETTINGS = "android.settings.NETWORK_OPERATOR_SETTINGS"; + field public static final String ACTION_NFCSHARING_SETTINGS = "android.settings.NFCSHARING_SETTINGS"; + field public static final String ACTION_NFC_PAYMENT_SETTINGS = "android.settings.NFC_PAYMENT_SETTINGS"; + field public static final String ACTION_NFC_SETTINGS = "android.settings.NFC_SETTINGS"; + field public static final String ACTION_NIGHT_DISPLAY_SETTINGS = "android.settings.NIGHT_DISPLAY_SETTINGS"; + field public static final String ACTION_NOTIFICATION_ASSISTANT_SETTINGS = "android.settings.NOTIFICATION_ASSISTANT_SETTINGS"; + field public static final String ACTION_NOTIFICATION_LISTENER_DETAIL_SETTINGS = "android.settings.NOTIFICATION_LISTENER_DETAIL_SETTINGS"; + field public static final String ACTION_NOTIFICATION_LISTENER_SETTINGS = "android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"; + field public static final String ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_SETTINGS"; + field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_NUMBERING_SYSTEM_SETTINGS = "android.settings.NUMBERING_SYSTEM_SETTINGS"; + field public static final String ACTION_PRINT_SETTINGS = "android.settings.ACTION_PRINT_SETTINGS"; + field public static final String ACTION_PRIVACY_SETTINGS = "android.settings.PRIVACY_SETTINGS"; + field public static final String ACTION_PROCESS_WIFI_EASY_CONNECT_URI = "android.settings.PROCESS_WIFI_EASY_CONNECT_URI"; + field public static final String ACTION_QUICK_ACCESS_WALLET_SETTINGS = "android.settings.QUICK_ACCESS_WALLET_SETTINGS"; + field public static final String ACTION_QUICK_LAUNCH_SETTINGS = "android.settings.QUICK_LAUNCH_SETTINGS"; + field public static final String ACTION_REGIONAL_PREFERENCES_SETTINGS = "android.settings.REGIONAL_PREFERENCES_SETTINGS"; + field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_REGION_SETTINGS = "android.settings.REGION_SETTINGS"; + field public static final String ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS = "android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"; + field public static final String ACTION_REQUEST_MANAGE_MEDIA = "android.settings.REQUEST_MANAGE_MEDIA"; + field @FlaggedApi("com.android.media.flags.enable_privileged_routing_for_media_routing_control") public static final String ACTION_REQUEST_MEDIA_ROUTING_CONTROL = "android.settings.REQUEST_MEDIA_ROUTING_CONTROL"; + field public static final String ACTION_REQUEST_SCHEDULE_EXACT_ALARM = "android.settings.REQUEST_SCHEDULE_EXACT_ALARM"; + field public static final String ACTION_REQUEST_SET_AUTOFILL_SERVICE = "android.settings.REQUEST_SET_AUTOFILL_SERVICE"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String ACTION_SATELLITE_SETTING = "android.settings.SATELLITE_SETTING"; + field public static final String ACTION_SEARCH_SETTINGS = "android.search.action.SEARCH_SETTINGS"; + field public static final String ACTION_SECURITY_SETTINGS = "android.settings.SECURITY_SETTINGS"; + field public static final String ACTION_SETTINGS = "android.settings.SETTINGS"; + field public static final String ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY = "android.settings.SETTINGS_EMBED_DEEP_LINK_ACTIVITY"; + field public static final String ACTION_SHOW_REGULATORY_INFO = "android.settings.SHOW_REGULATORY_INFO"; + field public static final String ACTION_SHOW_WORK_POLICY_INFO = "android.settings.SHOW_WORK_POLICY_INFO"; + field public static final String ACTION_SOUND_SETTINGS = "android.settings.SOUND_SETTINGS"; + field @Deprecated public static final String ACTION_STORAGE_VOLUME_ACCESS_SETTINGS = "android.settings.STORAGE_VOLUME_ACCESS_SETTINGS"; + field public static final String ACTION_SYNC_SETTINGS = "android.settings.SYNC_SETTINGS"; + field @FlaggedApi("android.provider.system_regional_preferences_api_enabled") public static final String ACTION_TEMPERATURE_UNIT_SETTINGS = "android.settings.TEMPERATURE_UNIT_SETTINGS"; + field public static final String ACTION_USAGE_ACCESS_SETTINGS = "android.settings.USAGE_ACCESS_SETTINGS"; + field public static final String ACTION_USER_DICTIONARY_SETTINGS = "android.settings.USER_DICTIONARY_SETTINGS"; + field public static final String ACTION_VOICE_CONTROL_AIRPLANE_MODE = "android.settings.VOICE_CONTROL_AIRPLANE_MODE"; + field public static final String ACTION_VOICE_CONTROL_BATTERY_SAVER_MODE = "android.settings.VOICE_CONTROL_BATTERY_SAVER_MODE"; + field public static final String ACTION_VOICE_CONTROL_DO_NOT_DISTURB_MODE = "android.settings.VOICE_CONTROL_DO_NOT_DISTURB_MODE"; + field public static final String ACTION_VOICE_INPUT_SETTINGS = "android.settings.VOICE_INPUT_SETTINGS"; + field public static final String ACTION_VPN_SETTINGS = "android.settings.VPN_SETTINGS"; + field public static final String ACTION_VR_LISTENER_SETTINGS = "android.settings.VR_LISTENER_SETTINGS"; + field public static final String ACTION_WEBVIEW_SETTINGS = "android.settings.WEBVIEW_SETTINGS"; + field public static final String ACTION_WIFI_ADD_NETWORKS = "android.settings.WIFI_ADD_NETWORKS"; + field public static final String ACTION_WIFI_IP_SETTINGS = "android.settings.WIFI_IP_SETTINGS"; + field public static final String ACTION_WIFI_SETTINGS = "android.settings.WIFI_SETTINGS"; + field public static final String ACTION_WIRELESS_SETTINGS = "android.settings.WIRELESS_SETTINGS"; + field public static final String ACTION_ZEN_MODE_PRIORITY_SETTINGS = "android.settings.ZEN_MODE_PRIORITY_SETTINGS"; + field public static final int ADD_WIFI_RESULT_ADD_OR_UPDATE_FAILED = 1; // 0x1 + field public static final int ADD_WIFI_RESULT_ALREADY_EXISTS = 2; // 0x2 + field public static final int ADD_WIFI_RESULT_SUCCESS = 0; // 0x0 + field public static final String AUTHORITY = "settings"; + field public static final String EXTRA_ACCOUNT_TYPES = "account_types"; + field public static final String EXTRA_AIRPLANE_MODE_ENABLED = "airplane_mode_enabled"; + field public static final String EXTRA_APP_PACKAGE = "android.provider.extra.APP_PACKAGE"; + field public static final String EXTRA_AUTHORITIES = "authorities"; + field @FlaggedApi("android.app.modes_api") public static final String EXTRA_AUTOMATIC_ZEN_RULE_ID = "android.provider.extra.AUTOMATIC_ZEN_RULE_ID"; + field public static final String EXTRA_BATTERY_SAVER_MODE_ENABLED = "android.settings.extra.battery_saver_mode_enabled"; + field public static final String EXTRA_BIOMETRIC_AUTHENTICATORS_ALLOWED = "android.provider.extra.BIOMETRIC_AUTHENTICATORS_ALLOWED"; + field public static final String EXTRA_CHANNEL_FILTER_LIST = "android.provider.extra.CHANNEL_FILTER_LIST"; + field public static final String EXTRA_CHANNEL_ID = "android.provider.extra.CHANNEL_ID"; + field public static final String EXTRA_CONVERSATION_ID = "android.provider.extra.CONVERSATION_ID"; + field public static final String EXTRA_DO_NOT_DISTURB_MODE_ENABLED = "android.settings.extra.do_not_disturb_mode_enabled"; + field public static final String EXTRA_DO_NOT_DISTURB_MODE_MINUTES = "android.settings.extra.do_not_disturb_mode_minutes"; + field public static final String EXTRA_EASY_CONNECT_ATTEMPTED_SSID = "android.provider.extra.EASY_CONNECT_ATTEMPTED_SSID"; + field public static final String EXTRA_EASY_CONNECT_BAND_LIST = "android.provider.extra.EASY_CONNECT_BAND_LIST"; + field public static final String EXTRA_EASY_CONNECT_CHANNEL_LIST = "android.provider.extra.EASY_CONNECT_CHANNEL_LIST"; + field public static final String EXTRA_EASY_CONNECT_ERROR_CODE = "android.provider.extra.EASY_CONNECT_ERROR_CODE"; + field public static final String EXTRA_INPUT_METHOD_ID = "input_method_id"; + field public static final String EXTRA_NOTIFICATION_LISTENER_COMPONENT_NAME = "android.provider.extra.NOTIFICATION_LISTENER_COMPONENT_NAME"; + field public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY = "android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY"; + field public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI = "android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI"; + field public static final String EXTRA_SUB_ID = "android.provider.extra.SUB_ID"; + field public static final String EXTRA_SUPERVISOR_RESTRICTED_SETTING_KEY = "android.provider.extra.SUPERVISOR_RESTRICTED_SETTING_KEY"; + field public static final String EXTRA_WIFI_NETWORK_LIST = "android.provider.extra.WIFI_NETWORK_LIST"; + field public static final String EXTRA_WIFI_NETWORK_RESULT_LIST = "android.provider.extra.WIFI_NETWORK_RESULT_LIST"; + field public static final String INTENT_CATEGORY_USAGE_ACCESS_CONFIG = "android.intent.category.USAGE_ACCESS_CONFIG"; + field public static final String METADATA_USAGE_ACCESS_REASON = "android.settings.metadata.USAGE_ACCESS_REASON"; + field public static final int SUPERVISOR_VERIFICATION_SETTING_BIOMETRICS = 1; // 0x1 + field public static final int SUPERVISOR_VERIFICATION_SETTING_UNKNOWN = 0; // 0x0 + } + + public static final class Settings.Global extends android.provider.Settings.NameValueTable { + ctor public Settings.Global(); + method public static float getFloat(android.content.ContentResolver, String, float); + method public static float getFloat(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; + method public static int getInt(android.content.ContentResolver, String, int); + method public static int getInt(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; + method public static long getLong(android.content.ContentResolver, String, long); + method public static long getLong(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; + method public static String getString(android.content.ContentResolver, String); + method public static android.net.Uri getUriFor(String); + method public static boolean putFloat(android.content.ContentResolver, String, float); + method public static boolean putInt(android.content.ContentResolver, String, int); + method public static boolean putLong(android.content.ContentResolver, String, long); + method public static boolean putString(android.content.ContentResolver, String, String); + field public static final String ADB_ENABLED = "adb_enabled"; + field public static final String AIRPLANE_MODE_ON = "airplane_mode_on"; + field public static final String AIRPLANE_MODE_RADIOS = "airplane_mode_radios"; + field public static final String ALWAYS_FINISH_ACTIVITIES = "always_finish_activities"; + field public static final String ANIMATOR_DURATION_SCALE = "animator_duration_scale"; + field @Deprecated public static final String APPLY_RAMPING_RINGER = "apply_ramping_ringer"; + field public static final String AUTO_TIME = "auto_time"; + field public static final String AUTO_TIME_ZONE = "auto_time_zone"; + field public static final String BLUETOOTH_ON = "bluetooth_on"; + field public static final String BOOT_COUNT = "boot_count"; + field public static final String CONTACT_METADATA_SYNC_ENABLED = "contact_metadata_sync_enabled"; + field public static final android.net.Uri CONTENT_URI; + field public static final String DATA_ROAMING = "data_roaming"; + field public static final String DEBUG_APP = "debug_app"; + field public static final String DEVELOPMENT_SETTINGS_ENABLED = "development_settings_enabled"; + field public static final String DEVICE_NAME = "device_name"; + field public static final String DEVICE_PROVISIONED = "device_provisioned"; + field public static final String HTTP_PROXY = "http_proxy"; + field @Deprecated public static final String INSTALL_NON_MARKET_APPS = "install_non_market_apps"; + field public static final String MODE_RINGER = "mode_ringer"; + field public static final String NETWORK_PREFERENCE = "network_preference"; + field public static final String RADIO_BLUETOOTH = "bluetooth"; + field public static final String RADIO_CELL = "cell"; + field public static final String RADIO_NFC = "nfc"; + field public static final String RADIO_WIFI = "wifi"; + field public static final String SECURE_FRP_MODE = "secure_frp_mode"; + field @Deprecated public static final String SHOW_PROCESSES = "show_processes"; + field public static final String STAY_ON_WHILE_PLUGGED_IN = "stay_on_while_plugged_in"; + field public static final String TRANSITION_ANIMATION_SCALE = "transition_animation_scale"; + field public static final String USB_MASS_STORAGE_ENABLED = "usb_mass_storage_enabled"; + field public static final String USE_GOOGLE_MAIL = "use_google_mail"; + field public static final String WAIT_FOR_DEBUGGER = "wait_for_debugger"; + field public static final String WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN = "wifi_device_owner_configs_lockdown"; + field public static final String WIFI_MAX_DHCP_RETRY_COUNT = "wifi_max_dhcp_retry_count"; + field public static final String WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS = "wifi_mobile_data_transition_wakelock_timeout_ms"; + field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on"; + field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay"; + field @Deprecated public static final String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept"; + field public static final String WIFI_ON = "wifi_on"; + field @Deprecated public static final String WIFI_SLEEP_POLICY = "wifi_sleep_policy"; + field @Deprecated public static final int WIFI_SLEEP_POLICY_DEFAULT = 0; // 0x0 + field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER = 2; // 0x2 + field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER_WHILE_PLUGGED = 1; // 0x1 + field public static final String WIFI_WATCHDOG_ON = "wifi_watchdog_on"; + field public static final String WINDOW_ANIMATION_SCALE = "window_animation_scale"; + } + + public static class Settings.NameValueTable implements android.provider.BaseColumns { + ctor public Settings.NameValueTable(); + method public static android.net.Uri getUriFor(android.net.Uri, String); + method protected static boolean putString(android.content.ContentResolver, android.net.Uri, String, String); + field public static final String NAME = "name"; + field public static final String VALUE = "value"; + } + + public static final class Settings.Panel { + field public static final String ACTION_INTERNET_CONNECTIVITY = "android.settings.panel.action.INTERNET_CONNECTIVITY"; + field public static final String ACTION_NFC = "android.settings.panel.action.NFC"; + field public static final String ACTION_VOLUME = "android.settings.panel.action.VOLUME"; + field public static final String ACTION_WIFI = "android.settings.panel.action.WIFI"; + } + + public static final class Settings.Secure extends android.provider.Settings.NameValueTable { + ctor public Settings.Secure(); + method public static float getFloat(android.content.ContentResolver, String, float); + method public static float getFloat(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; + method public static int getInt(android.content.ContentResolver, String, int); + method public static int getInt(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; + method public static long getLong(android.content.ContentResolver, String, long); + method public static long getLong(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; + method public static String getString(android.content.ContentResolver, String); + method public static android.net.Uri getUriFor(String); + method @Deprecated public static boolean isLocationProviderEnabled(android.content.ContentResolver, String); + method public static boolean putFloat(android.content.ContentResolver, String, float); + method public static boolean putInt(android.content.ContentResolver, String, int); + method public static boolean putLong(android.content.ContentResolver, String, long); + method public static boolean putString(android.content.ContentResolver, String, String); + method @Deprecated public static void setLocationProviderEnabled(android.content.ContentResolver, String, boolean); + field public static final String ACCESSIBILITY_DISPLAY_INVERSION_ENABLED = "accessibility_display_inversion_enabled"; + field public static final String ACCESSIBILITY_ENABLED = "accessibility_enabled"; + field @Deprecated public static final String ACCESSIBILITY_SPEAK_PASSWORD = "speak_password"; + field @Deprecated public static final String ADB_ENABLED = "adb_enabled"; + field public static final String ALLOWED_GEOLOCATION_ORIGINS = "allowed_geolocation_origins"; + field @Deprecated public static final String ALLOW_MOCK_LOCATION = "mock_location"; + field public static final String ANDROID_ID = "android_id"; + field @Deprecated public static final String BACKGROUND_DATA = "background_data"; + field @Deprecated public static final String BLUETOOTH_ON = "bluetooth_on"; + field public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DATA_ROAMING = "data_roaming"; + field public static final String DEFAULT_INPUT_METHOD = "default_input_method"; + field @Deprecated public static final String DEVELOPMENT_SETTINGS_ENABLED = "development_settings_enabled"; + field @Deprecated public static final String DEVICE_PROVISIONED = "device_provisioned"; + field public static final String ENABLED_ACCESSIBILITY_SERVICES = "enabled_accessibility_services"; + field public static final String ENABLED_INPUT_METHODS = "enabled_input_methods"; + field @Deprecated public static final String HTTP_PROXY = "http_proxy"; + field public static final String INPUT_METHOD_SELECTOR_VISIBILITY = "input_method_selector_visibility"; + field @Deprecated public static final String INSTALL_NON_MARKET_APPS = "install_non_market_apps"; + field @Deprecated public static final String LOCATION_MODE = "location_mode"; + field @Deprecated public static final int LOCATION_MODE_BATTERY_SAVING = 2; // 0x2 + field @Deprecated public static final int LOCATION_MODE_HIGH_ACCURACY = 3; // 0x3 + field public static final int LOCATION_MODE_OFF = 0; // 0x0 + field @Deprecated public static final int LOCATION_MODE_SENSORS_ONLY = 1; // 0x1 + field @Deprecated public static final String LOCATION_PROVIDERS_ALLOWED = "location_providers_allowed"; + field @Deprecated public static final String LOCK_PATTERN_ENABLED = "lock_pattern_autolock"; + field @Deprecated public static final String LOCK_PATTERN_TACTILE_FEEDBACK_ENABLED = "lock_pattern_tactile_feedback_enabled"; + field @Deprecated public static final String LOCK_PATTERN_VISIBLE = "lock_pattern_visible_pattern"; + field @Deprecated public static final String LOGGING_ID = "logging_id"; + field @Deprecated public static final String NETWORK_PREFERENCE = "network_preference"; + field public static final String PARENTAL_CONTROL_ENABLED = "parental_control_enabled"; + field public static final String PARENTAL_CONTROL_LAST_UPDATE = "parental_control_last_update"; + field public static final String PARENTAL_CONTROL_REDIRECT_URL = "parental_control_redirect_url"; + field public static final String RTT_CALLING_MODE = "rtt_calling_mode"; + field @Deprecated public static final String SECURE_FRP_MODE = "secure_frp_mode"; + field public static final String SELECTED_INPUT_METHOD_SUBTYPE = "selected_input_method_subtype"; + field public static final String SETTINGS_CLASSNAME = "settings_classname"; + field public static final String SKIP_FIRST_USE_HINTS = "skip_first_use_hints"; + field public static final String TOUCH_EXPLORATION_ENABLED = "touch_exploration_enabled"; + field @Deprecated public static final String TTS_DEFAULT_COUNTRY = "tts_default_country"; + field @Deprecated public static final String TTS_DEFAULT_LANG = "tts_default_lang"; + field public static final String TTS_DEFAULT_PITCH = "tts_default_pitch"; + field public static final String TTS_DEFAULT_RATE = "tts_default_rate"; + field public static final String TTS_DEFAULT_SYNTH = "tts_default_synth"; + field @Deprecated public static final String TTS_DEFAULT_VARIANT = "tts_default_variant"; + field public static final String TTS_ENABLED_PLUGINS = "tts_enabled_plugins"; + field @Deprecated public static final String TTS_USE_DEFAULTS = "tts_use_defaults"; + field @Deprecated public static final String USB_MASS_STORAGE_ENABLED = "usb_mass_storage_enabled"; + field @Deprecated public static final String USE_GOOGLE_MAIL = "use_google_mail"; + field @Deprecated public static final String WIFI_MAX_DHCP_RETRY_COUNT = "wifi_max_dhcp_retry_count"; + field @Deprecated public static final String WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS = "wifi_mobile_data_transition_wakelock_timeout_ms"; + field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on"; + field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay"; + field @Deprecated public static final String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept"; + field @Deprecated public static final String WIFI_ON = "wifi_on"; + field @Deprecated public static final String WIFI_WATCHDOG_ACCEPTABLE_PACKET_LOSS_PERCENTAGE = "wifi_watchdog_acceptable_packet_loss_percentage"; + field @Deprecated public static final String WIFI_WATCHDOG_AP_COUNT = "wifi_watchdog_ap_count"; + field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_DELAY_MS = "wifi_watchdog_background_check_delay_ms"; + field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_ENABLED = "wifi_watchdog_background_check_enabled"; + field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_TIMEOUT_MS = "wifi_watchdog_background_check_timeout_ms"; + field @Deprecated public static final String WIFI_WATCHDOG_INITIAL_IGNORED_PING_COUNT = "wifi_watchdog_initial_ignored_ping_count"; + field @Deprecated public static final String WIFI_WATCHDOG_MAX_AP_CHECKS = "wifi_watchdog_max_ap_checks"; + field @Deprecated public static final String WIFI_WATCHDOG_ON = "wifi_watchdog_on"; + field @Deprecated public static final String WIFI_WATCHDOG_PING_COUNT = "wifi_watchdog_ping_count"; + field @Deprecated public static final String WIFI_WATCHDOG_PING_DELAY_MS = "wifi_watchdog_ping_delay_ms"; + field @Deprecated public static final String WIFI_WATCHDOG_PING_TIMEOUT_MS = "wifi_watchdog_ping_timeout_ms"; + field @Deprecated public static final String WIFI_WATCHDOG_WATCH_LIST = "wifi_watchdog_watch_list"; + } + + public static class Settings.SettingNotFoundException extends android.util.AndroidException { + ctor public Settings.SettingNotFoundException(String); + } + + public static final class Settings.System extends android.provider.Settings.NameValueTable { + ctor public Settings.System(); + method public static boolean canWrite(android.content.Context); + method public static void getConfiguration(android.content.ContentResolver, android.content.res.Configuration); + method public static float getFloat(android.content.ContentResolver, String, float); + method public static float getFloat(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; + method public static int getInt(android.content.ContentResolver, String, int); + method public static int getInt(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; + method public static long getLong(android.content.ContentResolver, String, long); + method public static long getLong(android.content.ContentResolver, String) throws android.provider.Settings.SettingNotFoundException; + method @Deprecated public static boolean getShowGTalkServiceStatus(android.content.ContentResolver); + method public static String getString(android.content.ContentResolver, String); + method public static android.net.Uri getUriFor(String); + method public static boolean putConfiguration(android.content.ContentResolver, android.content.res.Configuration); + method public static boolean putFloat(android.content.ContentResolver, String, float); + method public static boolean putInt(android.content.ContentResolver, String, int); + method public static boolean putLong(android.content.ContentResolver, String, long); + method public static boolean putString(android.content.ContentResolver, String, String); + method @Deprecated public static void setShowGTalkServiceStatus(android.content.ContentResolver, boolean); + field public static final String ACCELEROMETER_ROTATION = "accelerometer_rotation"; + field @Deprecated public static final String ADB_ENABLED = "adb_enabled"; + field @Deprecated public static final String AIRPLANE_MODE_ON = "airplane_mode_on"; + field @Deprecated public static final String AIRPLANE_MODE_RADIOS = "airplane_mode_radios"; + field public static final String ALARM_ALERT = "alarm_alert"; + field @Deprecated public static final String ALWAYS_FINISH_ACTIVITIES = "always_finish_activities"; + field @Deprecated public static final String ANDROID_ID = "android_id"; + field @Deprecated public static final String ANIMATOR_DURATION_SCALE = "animator_duration_scale"; + field @Deprecated public static final String AUTO_TIME = "auto_time"; + field @Deprecated public static final String AUTO_TIME_ZONE = "auto_time_zone"; + field public static final String BLUETOOTH_DISCOVERABILITY = "bluetooth_discoverability"; + field public static final String BLUETOOTH_DISCOVERABILITY_TIMEOUT = "bluetooth_discoverability_timeout"; + field @Deprecated public static final String BLUETOOTH_ON = "bluetooth_on"; + field public static final android.net.Uri CONTENT_URI; + field @Deprecated public static final String DATA_ROAMING = "data_roaming"; + field @Deprecated public static final String DATE_FORMAT = "date_format"; + field @Deprecated public static final String DEBUG_APP = "debug_app"; + field public static final android.net.Uri DEFAULT_ALARM_ALERT_URI; + field public static final android.net.Uri DEFAULT_NOTIFICATION_URI; + field public static final android.net.Uri DEFAULT_RINGTONE_URI; + field @Deprecated public static final String DEVICE_PROVISIONED = "device_provisioned"; + field @Deprecated public static final String DIM_SCREEN = "dim_screen"; + field public static final String DTMF_TONE_TYPE_WHEN_DIALING = "dtmf_tone_type"; + field public static final String DTMF_TONE_WHEN_DIALING = "dtmf_tone"; + field public static final String END_BUTTON_BEHAVIOR = "end_button_behavior"; + field public static final String FONT_SCALE = "font_scale"; + field @Deprecated public static final String HAPTIC_FEEDBACK_ENABLED = "haptic_feedback_enabled"; + field @Deprecated public static final String HTTP_PROXY = "http_proxy"; + field @Deprecated public static final String INSTALL_NON_MARKET_APPS = "install_non_market_apps"; + field @Deprecated public static final String LOCATION_PROVIDERS_ALLOWED = "location_providers_allowed"; + field @Deprecated public static final String LOCK_PATTERN_ENABLED = "lock_pattern_autolock"; + field @Deprecated public static final String LOCK_PATTERN_TACTILE_FEEDBACK_ENABLED = "lock_pattern_tactile_feedback_enabled"; + field @Deprecated public static final String LOCK_PATTERN_VISIBLE = "lock_pattern_visible_pattern"; + field @Deprecated public static final String LOGGING_ID = "logging_id"; + field @Deprecated public static final String MODE_RINGER = "mode_ringer"; + field public static final String MODE_RINGER_STREAMS_AFFECTED = "mode_ringer_streams_affected"; + field public static final String MUTE_STREAMS_AFFECTED = "mute_streams_affected"; + field @Deprecated public static final String NETWORK_PREFERENCE = "network_preference"; + field @Deprecated public static final String NEXT_ALARM_FORMATTED = "next_alarm_formatted"; + field public static final String NOTIFICATION_SOUND = "notification_sound"; + field @Deprecated public static final String PARENTAL_CONTROL_ENABLED = "parental_control_enabled"; + field @Deprecated public static final String PARENTAL_CONTROL_LAST_UPDATE = "parental_control_last_update"; + field @Deprecated public static final String PARENTAL_CONTROL_REDIRECT_URL = "parental_control_redirect_url"; + field @Deprecated public static final String RADIO_BLUETOOTH = "bluetooth"; + field @Deprecated public static final String RADIO_CELL = "cell"; + field @Deprecated public static final String RADIO_NFC = "nfc"; + field @Deprecated public static final String RADIO_WIFI = "wifi"; + field public static final String RINGTONE = "ringtone"; + field public static final String SCREEN_BRIGHTNESS = "screen_brightness"; + field public static final String SCREEN_BRIGHTNESS_MODE = "screen_brightness_mode"; + field public static final int SCREEN_BRIGHTNESS_MODE_AUTOMATIC = 1; // 0x1 + field public static final int SCREEN_BRIGHTNESS_MODE_MANUAL = 0; // 0x0 + field public static final String SCREEN_OFF_TIMEOUT = "screen_off_timeout"; + field @Deprecated public static final String SETTINGS_CLASSNAME = "settings_classname"; + field public static final String SETUP_WIZARD_HAS_RUN = "setup_wizard_has_run"; + field public static final String SHOW_GTALK_SERVICE_STATUS = "SHOW_GTALK_SERVICE_STATUS"; + field @Deprecated public static final String SHOW_PROCESSES = "show_processes"; + field @Deprecated public static final String SHOW_WEB_SUGGESTIONS = "show_web_suggestions"; + field public static final String SOUND_EFFECTS_ENABLED = "sound_effects_enabled"; + field @Deprecated public static final String STAY_ON_WHILE_PLUGGED_IN = "stay_on_while_plugged_in"; + field public static final String TEXT_AUTO_CAPS = "auto_caps"; + field public static final String TEXT_AUTO_PUNCTUATE = "auto_punctuate"; + field public static final String TEXT_AUTO_REPLACE = "auto_replace"; + field public static final String TEXT_SHOW_PASSWORD = "show_password"; + field public static final String TIME_12_24 = "time_12_24"; + field @Deprecated public static final String TRANSITION_ANIMATION_SCALE = "transition_animation_scale"; + field @Deprecated public static final String USB_MASS_STORAGE_ENABLED = "usb_mass_storage_enabled"; + field public static final String USER_ROTATION = "user_rotation"; + field @Deprecated public static final String USE_GOOGLE_MAIL = "use_google_mail"; + field public static final String VIBRATE_ON = "vibrate_on"; + field @Deprecated public static final String VIBRATE_WHEN_RINGING = "vibrate_when_ringing"; + field @Deprecated public static final String WAIT_FOR_DEBUGGER = "wait_for_debugger"; + field @Deprecated public static final String WALLPAPER_ACTIVITY = "wallpaper_activity"; + field @Deprecated public static final String WIFI_MAX_DHCP_RETRY_COUNT = "wifi_max_dhcp_retry_count"; + field @Deprecated public static final String WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS = "wifi_mobile_data_transition_wakelock_timeout_ms"; + field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on"; + field @Deprecated public static final String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay"; + field @Deprecated public static final String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept"; + field @Deprecated public static final String WIFI_ON = "wifi_on"; + field @Deprecated public static final String WIFI_SLEEP_POLICY = "wifi_sleep_policy"; + field @Deprecated public static final int WIFI_SLEEP_POLICY_DEFAULT = 0; // 0x0 + field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER = 2; // 0x2 + field @Deprecated public static final int WIFI_SLEEP_POLICY_NEVER_WHILE_PLUGGED = 1; // 0x1 + field @Deprecated public static final String WIFI_STATIC_DNS1 = "wifi_static_dns1"; + field @Deprecated public static final String WIFI_STATIC_DNS2 = "wifi_static_dns2"; + field @Deprecated public static final String WIFI_STATIC_GATEWAY = "wifi_static_gateway"; + field @Deprecated public static final String WIFI_STATIC_IP = "wifi_static_ip"; + field @Deprecated public static final String WIFI_STATIC_NETMASK = "wifi_static_netmask"; + field @Deprecated public static final String WIFI_USE_STATIC_IP = "wifi_use_static_ip"; + field @Deprecated public static final String WIFI_WATCHDOG_ACCEPTABLE_PACKET_LOSS_PERCENTAGE = "wifi_watchdog_acceptable_packet_loss_percentage"; + field @Deprecated public static final String WIFI_WATCHDOG_AP_COUNT = "wifi_watchdog_ap_count"; + field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_DELAY_MS = "wifi_watchdog_background_check_delay_ms"; + field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_ENABLED = "wifi_watchdog_background_check_enabled"; + field @Deprecated public static final String WIFI_WATCHDOG_BACKGROUND_CHECK_TIMEOUT_MS = "wifi_watchdog_background_check_timeout_ms"; + field @Deprecated public static final String WIFI_WATCHDOG_INITIAL_IGNORED_PING_COUNT = "wifi_watchdog_initial_ignored_ping_count"; + field @Deprecated public static final String WIFI_WATCHDOG_MAX_AP_CHECKS = "wifi_watchdog_max_ap_checks"; + field @Deprecated public static final String WIFI_WATCHDOG_ON = "wifi_watchdog_on"; + field @Deprecated public static final String WIFI_WATCHDOG_PING_COUNT = "wifi_watchdog_ping_count"; + field @Deprecated public static final String WIFI_WATCHDOG_PING_DELAY_MS = "wifi_watchdog_ping_delay_ms"; + field @Deprecated public static final String WIFI_WATCHDOG_PING_TIMEOUT_MS = "wifi_watchdog_ping_timeout_ms"; + field @Deprecated public static final String WINDOW_ANIMATION_SCALE = "window_animation_scale"; + } + + public class SettingsSlicesContract { + field public static final String AUTHORITY = "android.settings.slices"; + field public static final android.net.Uri BASE_URI; + field public static final String KEY_AIRPLANE_MODE = "airplane_mode"; + field public static final String KEY_BATTERY_SAVER = "battery_saver"; + field public static final String KEY_BLUETOOTH = "bluetooth"; + field public static final String KEY_LOCATION = "location"; + field public static final String KEY_WIFI = "wifi"; + field public static final String PATH_SETTING_ACTION = "action"; + field public static final String PATH_SETTING_INTENT = "intent"; + } + + public final class SimPhonebookContract { + field public static final String AUTHORITY = "com.android.simphonebook"; + field @NonNull public static final android.net.Uri AUTHORITY_URI; + } + + public static final class SimPhonebookContract.ElementaryFiles { + method @NonNull public static android.net.Uri getItemUri(int, int); + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/sim-elementary-file"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/sim-elementary-file"; + field @NonNull public static final android.net.Uri CONTENT_URI; + field public static final int EF_ADN = 1; // 0x1 + field public static final int EF_FDN = 2; // 0x2 + field public static final int EF_SDN = 3; // 0x3 + field public static final String EF_TYPE = "ef_type"; + field public static final int EF_UNKNOWN = 0; // 0x0 + field public static final String MAX_RECORDS = "max_records"; + field public static final String NAME_MAX_LENGTH = "name_max_length"; + field public static final String PHONE_NUMBER_MAX_LENGTH = "phone_number_max_length"; + field public static final String RECORD_COUNT = "record_count"; + field public static final String SLOT_INDEX = "slot_index"; + field public static final String SUBSCRIPTION_ID = "subscription_id"; + } + + public static final class SimPhonebookContract.SimRecords { + method @NonNull public static android.net.Uri getContentUri(int, int); + method @IntRange(from=0) @WorkerThread public static int getEncodedNameLength(@NonNull android.content.ContentResolver, @NonNull String); + method @NonNull public static android.net.Uri getItemUri(int, int, @IntRange(from=1) int); + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/sim-contact_v2"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/sim-contact_v2"; + field public static final String ELEMENTARY_FILE_TYPE = "elementary_file_type"; + field public static final int ERROR_NAME_UNSUPPORTED = -1; // 0xffffffff + field public static final String NAME = "name"; + field public static final String PHONE_NUMBER = "phone_number"; + field public static final String RECORD_NUMBER = "record_number"; + field public static final String SUBSCRIPTION_ID = "subscription_id"; + } + + public class SyncStateContract { + ctor public SyncStateContract(); + } + + public static interface SyncStateContract.Columns extends android.provider.BaseColumns { + field public static final String ACCOUNT_NAME = "account_name"; + field public static final String ACCOUNT_TYPE = "account_type"; + field public static final String DATA = "data"; + } + + public static class SyncStateContract.Constants implements android.provider.SyncStateContract.Columns { + ctor public SyncStateContract.Constants(); + field public static final String CONTENT_DIRECTORY = "syncstate"; + } + + public static final class SyncStateContract.Helpers { + ctor public SyncStateContract.Helpers(); + method public static byte[] get(android.content.ContentProviderClient, android.net.Uri, android.accounts.Account) throws android.os.RemoteException; + method public static android.util.Pair getWithUri(android.content.ContentProviderClient, android.net.Uri, android.accounts.Account) throws android.os.RemoteException; + method public static android.net.Uri insert(android.content.ContentProviderClient, android.net.Uri, android.accounts.Account, byte[]) throws android.os.RemoteException; + method public static android.content.ContentProviderOperation newSetOperation(android.net.Uri, android.accounts.Account, byte[]); + method public static android.content.ContentProviderOperation newUpdateOperation(android.net.Uri, byte[]); + method public static void set(android.content.ContentProviderClient, android.net.Uri, android.accounts.Account, byte[]) throws android.os.RemoteException; + method public static void update(android.content.ContentProviderClient, android.net.Uri, byte[]) throws android.os.RemoteException; + } + + public final class Telephony { + } + + public static interface Telephony.BaseMmsColumns extends android.provider.BaseColumns { + field public static final String CONTENT_CLASS = "ct_cls"; + field public static final String CONTENT_LOCATION = "ct_l"; + field public static final String CONTENT_TYPE = "ct_t"; + field public static final String CREATOR = "creator"; + field public static final String DATE = "date"; + field public static final String DATE_SENT = "date_sent"; + field public static final String DELIVERY_REPORT = "d_rpt"; + field public static final String DELIVERY_TIME = "d_tm"; + field public static final String EXPIRY = "exp"; + field public static final String LOCKED = "locked"; + field public static final String MESSAGE_BOX = "msg_box"; + field public static final int MESSAGE_BOX_ALL = 0; // 0x0 + field public static final int MESSAGE_BOX_DRAFTS = 3; // 0x3 + field public static final int MESSAGE_BOX_FAILED = 5; // 0x5 + field public static final int MESSAGE_BOX_INBOX = 1; // 0x1 + field public static final int MESSAGE_BOX_OUTBOX = 4; // 0x4 + field public static final int MESSAGE_BOX_SENT = 2; // 0x2 + field public static final String MESSAGE_CLASS = "m_cls"; + field public static final String MESSAGE_ID = "m_id"; + field public static final String MESSAGE_SIZE = "m_size"; + field public static final String MESSAGE_TYPE = "m_type"; + field public static final String MMS_VERSION = "v"; + field public static final String PRIORITY = "pri"; + field public static final String READ = "read"; + field public static final String READ_REPORT = "rr"; + field public static final String READ_STATUS = "read_status"; + field public static final String REPORT_ALLOWED = "rpt_a"; + field public static final String RESPONSE_STATUS = "resp_st"; + field public static final String RESPONSE_TEXT = "resp_txt"; + field public static final String RETRIEVE_STATUS = "retr_st"; + field public static final String RETRIEVE_TEXT = "retr_txt"; + field public static final String RETRIEVE_TEXT_CHARSET = "retr_txt_cs"; + field public static final String SEEN = "seen"; + field public static final String STATUS = "st"; + field public static final String SUBJECT = "sub"; + field public static final String SUBJECT_CHARSET = "sub_cs"; + field public static final String SUBSCRIPTION_ID = "sub_id"; + field public static final String TEXT_ONLY = "text_only"; + field public static final String THREAD_ID = "thread_id"; + field public static final String TRANSACTION_ID = "tr_id"; + } + + public static interface Telephony.CanonicalAddressesColumns extends android.provider.BaseColumns { + field public static final String ADDRESS = "address"; + } + + public static final class Telephony.CarrierId implements android.provider.BaseColumns { + method @NonNull public static android.net.Uri getSpecificCarrierIdUriForSubscriptionId(int); + method public static android.net.Uri getUriForSubscriptionId(int); + field public static final String CARRIER_ID = "carrier_id"; + field public static final String CARRIER_NAME = "carrier_name"; + field public static final android.net.Uri CONTENT_URI; + field public static final String SPECIFIC_CARRIER_ID = "specific_carrier_id"; + field public static final String SPECIFIC_CARRIER_ID_NAME = "specific_carrier_id_name"; + } + + public static final class Telephony.Carriers implements android.provider.BaseColumns { + field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String ALWAYS_ON = "always_on"; + field public static final String APN = "apn"; + field public static final String AUTH_TYPE = "authtype"; + field @Deprecated public static final String BEARER = "bearer"; + field public static final String CARRIER_ENABLED = "carrier_enabled"; + field public static final String CARRIER_ID = "carrier_id"; + field @NonNull public static final android.net.Uri CONTENT_URI; + field public static final String CURRENT = "current"; + field public static final String DEFAULT_SORT_ORDER = "name ASC"; + field @Deprecated public static final String MCC = "mcc"; + field public static final String MMSC = "mmsc"; + field public static final String MMSPORT = "mmsport"; + field public static final String MMSPROXY = "mmsproxy"; + field @Deprecated public static final String MNC = "mnc"; + field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String MTU_V4 = "mtu_v4"; + field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String MTU_V6 = "mtu_v6"; + field @Deprecated public static final String MVNO_MATCH_DATA = "mvno_match_data"; + field @Deprecated public static final String MVNO_TYPE = "mvno_type"; + field public static final String NAME = "name"; + field public static final String NETWORK_TYPE_BITMASK = "network_type_bitmask"; + field @Deprecated public static final String NUMERIC = "numeric"; + field public static final String PASSWORD = "password"; + field public static final String PORT = "port"; + field public static final String PROTOCOL = "protocol"; + field public static final String PROXY = "proxy"; + field public static final String ROAMING_PROTOCOL = "roaming_protocol"; + field public static final String SERVER = "server"; + field @NonNull public static final android.net.Uri SIM_APN_URI; + field public static final String SUBSCRIPTION_ID = "sub_id"; + field public static final String TYPE = "type"; + field public static final String USER = "user"; + field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String USER_EDITABLE = "user_editable"; + field @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public static final String USER_VISIBLE = "user_visible"; + } + + public static final class Telephony.Mms implements android.provider.Telephony.BaseMmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + field public static final android.net.Uri REPORT_REQUEST_URI; + field public static final android.net.Uri REPORT_STATUS_URI; + } + + public static final class Telephony.Mms.Addr implements android.provider.BaseColumns { + method @NonNull public static android.net.Uri getAddrUriForMessage(@NonNull String); + field public static final String ADDRESS = "address"; + field public static final String CHARSET = "charset"; + field public static final String CONTACT_ID = "contact_id"; + field public static final String MSG_ID = "msg_id"; + field public static final String TYPE = "type"; + } + + public static final class Telephony.Mms.Draft implements android.provider.Telephony.BaseMmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + } + + public static final class Telephony.Mms.Inbox implements android.provider.Telephony.BaseMmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + } + + public static final class Telephony.Mms.Intents { + field public static final String CONTENT_CHANGED_ACTION = "android.intent.action.CONTENT_CHANGED"; + field public static final String DELETED_CONTENTS = "deleted_contents"; + } + + public static final class Telephony.Mms.Outbox implements android.provider.Telephony.BaseMmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + } + + public static final class Telephony.Mms.Part implements android.provider.BaseColumns { + method @NonNull public static android.net.Uri getPartUriForMessage(@NonNull String); + field public static final String CHARSET = "chset"; + field public static final String CONTENT_DISPOSITION = "cd"; + field public static final String CONTENT_ID = "cid"; + field public static final String CONTENT_LOCATION = "cl"; + field public static final String CONTENT_TYPE = "ct"; + field @NonNull public static final android.net.Uri CONTENT_URI; + field public static final String CT_START = "ctt_s"; + field public static final String CT_TYPE = "ctt_t"; + field public static final String FILENAME = "fn"; + field public static final String MSG_ID = "mid"; + field public static final String NAME = "name"; + field public static final String SEQ = "seq"; + field public static final String TEXT = "text"; + field public static final String _DATA = "_data"; + } + + public static final class Telephony.Mms.Rate { + field public static final android.net.Uri CONTENT_URI; + field public static final String SENT_TIME = "sent_time"; + } + + public static final class Telephony.Mms.Sent implements android.provider.Telephony.BaseMmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + } + + public static final class Telephony.MmsSms implements android.provider.BaseColumns { + field public static final android.net.Uri CONTENT_CONVERSATIONS_URI; + field public static final android.net.Uri CONTENT_DRAFT_URI; + field public static final android.net.Uri CONTENT_FILTER_BYPHONE_URI; + field public static final android.net.Uri CONTENT_LOCKED_URI; + field public static final android.net.Uri CONTENT_UNDELIVERED_URI; + field public static final android.net.Uri CONTENT_URI; + field public static final int ERR_TYPE_GENERIC = 1; // 0x1 + field public static final int ERR_TYPE_GENERIC_PERMANENT = 10; // 0xa + field public static final int ERR_TYPE_MMS_PROTO_PERMANENT = 12; // 0xc + field public static final int ERR_TYPE_MMS_PROTO_TRANSIENT = 3; // 0x3 + field public static final int ERR_TYPE_SMS_PROTO_PERMANENT = 11; // 0xb + field public static final int ERR_TYPE_SMS_PROTO_TRANSIENT = 2; // 0x2 + field public static final int ERR_TYPE_TRANSPORT_FAILURE = 4; // 0x4 + field public static final int MMS_PROTO = 1; // 0x1 + field public static final int NO_ERROR = 0; // 0x0 + field public static final android.net.Uri SEARCH_URI; + field public static final int SMS_PROTO = 0; // 0x0 + field public static final String TYPE_DISCRIMINATOR_COLUMN = "transport_type"; + } + + public static final class Telephony.MmsSms.PendingMessages implements android.provider.BaseColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DUE_TIME = "due_time"; + field public static final String ERROR_CODE = "err_code"; + field public static final String ERROR_TYPE = "err_type"; + field public static final String LAST_TRY = "last_try"; + field public static final String MSG_ID = "msg_id"; + field public static final String MSG_TYPE = "msg_type"; + field public static final String PROTO_TYPE = "proto_type"; + field public static final String RETRY_INDEX = "retry_index"; + field public static final String SUBSCRIPTION_ID = "pending_sub_id"; + } + + public static final class Telephony.ServiceStateTable { + method public static android.net.Uri getUriForSubscriptionId(int); + method public static android.net.Uri getUriForSubscriptionIdAndField(int, String); + field public static final String AUTHORITY = "service-state"; + field public static final android.net.Uri CONTENT_URI; + field public static final String DATA_NETWORK_TYPE = "data_network_type"; + field public static final String DATA_REG_STATE = "data_reg_state"; + field public static final String DUPLEX_MODE = "duplex_mode"; + field public static final String IS_MANUAL_NETWORK_SELECTION = "is_manual_network_selection"; + field public static final String VOICE_OPERATOR_NUMERIC = "voice_operator_numeric"; + field public static final String VOICE_REG_STATE = "voice_reg_state"; + } + + public static final class Telephony.Sms implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { + method public static String getDefaultSmsPackage(android.content.Context); + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + } + + public static final class Telephony.Sms.Conversations implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + field public static final String MESSAGE_COUNT = "msg_count"; + field public static final String SNIPPET = "snippet"; + } + + public static final class Telephony.Sms.Draft implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + } + + public static final class Telephony.Sms.Inbox implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + } + + public static final class Telephony.Sms.Intents { + method public static android.telephony.SmsMessage[] getMessagesFromIntent(android.content.Intent); + field public static final String ACTION_CHANGE_DEFAULT = "android.provider.Telephony.ACTION_CHANGE_DEFAULT"; + field public static final String ACTION_DEFAULT_SMS_PACKAGE_CHANGED = "android.provider.action.DEFAULT_SMS_PACKAGE_CHANGED"; + field public static final String ACTION_EXTERNAL_PROVIDER_CHANGE = "android.provider.action.EXTERNAL_PROVIDER_CHANGE"; + field public static final String DATA_SMS_RECEIVED_ACTION = "android.intent.action.DATA_SMS_RECEIVED"; + field public static final String EXTRA_IS_DEFAULT_SMS_APP = "android.provider.extra.IS_DEFAULT_SMS_APP"; + field public static final String EXTRA_PACKAGE_NAME = "package"; + field public static final int RESULT_SMS_DATABASE_ERROR = 10; // 0xa + field public static final int RESULT_SMS_DISPATCH_FAILURE = 6; // 0x6 + field public static final int RESULT_SMS_DUPLICATED = 5; // 0x5 + field public static final int RESULT_SMS_GENERIC_ERROR = 2; // 0x2 + field public static final int RESULT_SMS_HANDLED = 1; // 0x1 + field public static final int RESULT_SMS_INVALID_URI = 11; // 0xb + field public static final int RESULT_SMS_NULL_MESSAGE = 8; // 0x8 + field public static final int RESULT_SMS_NULL_PDU = 7; // 0x7 + field public static final int RESULT_SMS_OUT_OF_MEMORY = 3; // 0x3 + field public static final int RESULT_SMS_RECEIVED_WHILE_ENCRYPTED = 9; // 0x9 + field public static final int RESULT_SMS_UNSUPPORTED = 4; // 0x4 + field @Deprecated public static final String SECRET_CODE_ACTION = "android.provider.Telephony.SECRET_CODE"; + field public static final String SIM_FULL_ACTION = "android.provider.Telephony.SIM_FULL"; + field public static final String SMS_CB_RECEIVED_ACTION = "android.provider.Telephony.SMS_CB_RECEIVED"; + field public static final String SMS_DELIVER_ACTION = "android.provider.Telephony.SMS_DELIVER"; + field public static final String SMS_RECEIVED_ACTION = "android.provider.Telephony.SMS_RECEIVED"; + field public static final String SMS_REJECTED_ACTION = "android.provider.Telephony.SMS_REJECTED"; + field public static final String SMS_SERVICE_CATEGORY_PROGRAM_DATA_RECEIVED_ACTION = "android.provider.Telephony.SMS_SERVICE_CATEGORY_PROGRAM_DATA_RECEIVED"; + field public static final String WAP_PUSH_DELIVER_ACTION = "android.provider.Telephony.WAP_PUSH_DELIVER"; + field public static final String WAP_PUSH_RECEIVED_ACTION = "android.provider.Telephony.WAP_PUSH_RECEIVED"; + } + + public static final class Telephony.Sms.Outbox implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + } + + public static final class Telephony.Sms.Sent implements android.provider.BaseColumns android.provider.Telephony.TextBasedSmsColumns { + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "date DESC"; + } + + public static interface Telephony.TextBasedSmsColumns { + field public static final String ADDRESS = "address"; + field public static final String BODY = "body"; + field public static final String CREATOR = "creator"; + field public static final String DATE = "date"; + field public static final String DATE_SENT = "date_sent"; + field public static final String ERROR_CODE = "error_code"; + field public static final String LOCKED = "locked"; + field public static final int MESSAGE_TYPE_ALL = 0; // 0x0 + field public static final int MESSAGE_TYPE_DRAFT = 3; // 0x3 + field public static final int MESSAGE_TYPE_FAILED = 5; // 0x5 + field public static final int MESSAGE_TYPE_INBOX = 1; // 0x1 + field public static final int MESSAGE_TYPE_OUTBOX = 4; // 0x4 + field public static final int MESSAGE_TYPE_QUEUED = 6; // 0x6 + field public static final int MESSAGE_TYPE_SENT = 2; // 0x2 + field public static final String PERSON = "person"; + field public static final String PROTOCOL = "protocol"; + field public static final String READ = "read"; + field public static final String REPLY_PATH_PRESENT = "reply_path_present"; + field public static final String SEEN = "seen"; + field public static final String SERVICE_CENTER = "service_center"; + field public static final String STATUS = "status"; + field public static final int STATUS_COMPLETE = 0; // 0x0 + field public static final int STATUS_FAILED = 64; // 0x40 + field public static final int STATUS_NONE = -1; // 0xffffffff + field public static final int STATUS_PENDING = 32; // 0x20 + field public static final String SUBJECT = "subject"; + field public static final String SUBSCRIPTION_ID = "sub_id"; + field public static final String THREAD_ID = "thread_id"; + field public static final String TYPE = "type"; + } + + public static final class Telephony.Threads implements android.provider.Telephony.ThreadsColumns { + method public static long getOrCreateThreadId(android.content.Context, String); + method public static long getOrCreateThreadId(android.content.Context, java.util.Set); + field public static final int BROADCAST_THREAD = 1; // 0x1 + field public static final int COMMON_THREAD = 0; // 0x0 + field public static final android.net.Uri CONTENT_URI; + field public static final android.net.Uri OBSOLETE_THREADS_URI; + } + + public static interface Telephony.ThreadsColumns extends android.provider.BaseColumns { + field public static final String ARCHIVED = "archived"; + field public static final String DATE = "date"; + field public static final String ERROR = "error"; + field public static final String HAS_ATTACHMENT = "has_attachment"; + field public static final String MESSAGE_COUNT = "message_count"; + field public static final String READ = "read"; + field public static final String RECIPIENT_IDS = "recipient_ids"; + field public static final String SNIPPET = "snippet"; + field public static final String SNIPPET_CHARSET = "snippet_cs"; + field public static final String TYPE = "type"; + } + + public class UserDictionary { + ctor public UserDictionary(); + field public static final String AUTHORITY = "user_dictionary"; + field public static final android.net.Uri CONTENT_URI; + } + + public static class UserDictionary.Words implements android.provider.BaseColumns { + ctor public UserDictionary.Words(); + method @Deprecated public static void addWord(android.content.Context, String, int, int); + method public static void addWord(android.content.Context, String, int, String, java.util.Locale); + field public static final String APP_ID = "appid"; + field public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/vnd.google.userword"; + field public static final String CONTENT_TYPE = "vnd.android.cursor.dir/vnd.google.userword"; + field public static final android.net.Uri CONTENT_URI; + field public static final String DEFAULT_SORT_ORDER = "frequency DESC"; + field public static final String FREQUENCY = "frequency"; + field public static final String LOCALE = "locale"; + field @Deprecated public static final int LOCALE_TYPE_ALL = 0; // 0x0 + field @Deprecated public static final int LOCALE_TYPE_CURRENT = 1; // 0x1 + field public static final String SHORTCUT = "shortcut"; + field public static final String WORD = "word"; + field public static final String _ID = "_id"; + } + + public class VoicemailContract { + field public static final String ACTION_FETCH_VOICEMAIL = "android.intent.action.FETCH_VOICEMAIL"; + field public static final String ACTION_NEW_VOICEMAIL = "android.intent.action.NEW_VOICEMAIL"; + field public static final String ACTION_SYNC_VOICEMAIL = "android.provider.action.SYNC_VOICEMAIL"; + field public static final String AUTHORITY = "com.android.voicemail"; + field public static final String EXTRA_PHONE_ACCOUNT_HANDLE = "android.provider.extra.PHONE_ACCOUNT_HANDLE"; + field public static final String EXTRA_SELF_CHANGE = "com.android.voicemail.extra.SELF_CHANGE"; + field public static final String PARAM_KEY_SOURCE_PACKAGE = "source_package"; + } + + public static final class VoicemailContract.Status implements android.provider.BaseColumns { + method public static android.net.Uri buildSourceUri(String); + field public static final String CONFIGURATION_STATE = "configuration_state"; + field public static final int CONFIGURATION_STATE_CAN_BE_CONFIGURED = 2; // 0x2 + field public static final int CONFIGURATION_STATE_CONFIGURING = 3; // 0x3 + field public static final int CONFIGURATION_STATE_DISABLED = 5; // 0x5 + field public static final int CONFIGURATION_STATE_FAILED = 4; // 0x4 + field public static final int CONFIGURATION_STATE_NOT_CONFIGURED = 1; // 0x1 + field public static final int CONFIGURATION_STATE_OK = 0; // 0x0 + field public static final android.net.Uri CONTENT_URI; + field public static final String DATA_CHANNEL_STATE = "data_channel_state"; + field public static final int DATA_CHANNEL_STATE_BAD_CONFIGURATION = 3; // 0x3 + field public static final int DATA_CHANNEL_STATE_COMMUNICATION_ERROR = 4; // 0x4 + field public static final int DATA_CHANNEL_STATE_NO_CONNECTION = 1; // 0x1 + field public static final int DATA_CHANNEL_STATE_NO_CONNECTION_CELLULAR_REQUIRED = 2; // 0x2 + field public static final int DATA_CHANNEL_STATE_OK = 0; // 0x0 + field public static final int DATA_CHANNEL_STATE_SERVER_CONNECTION_ERROR = 6; // 0x6 + field public static final int DATA_CHANNEL_STATE_SERVER_ERROR = 5; // 0x5 + field public static final String DIR_TYPE = "vnd.android.cursor.dir/voicemail.source.status"; + field public static final String ITEM_TYPE = "vnd.android.cursor.item/voicemail.source.status"; + field public static final String NOTIFICATION_CHANNEL_STATE = "notification_channel_state"; + field public static final int NOTIFICATION_CHANNEL_STATE_MESSAGE_WAITING = 2; // 0x2 + field public static final int NOTIFICATION_CHANNEL_STATE_NO_CONNECTION = 1; // 0x1 + field public static final int NOTIFICATION_CHANNEL_STATE_OK = 0; // 0x0 + field public static final String PHONE_ACCOUNT_COMPONENT_NAME = "phone_account_component_name"; + field public static final String PHONE_ACCOUNT_ID = "phone_account_id"; + field public static final String QUOTA_OCCUPIED = "quota_occupied"; + field public static final String QUOTA_TOTAL = "quota_total"; + field public static final int QUOTA_UNAVAILABLE = -1; // 0xffffffff + field public static final String SETTINGS_URI = "settings_uri"; + field public static final String SOURCE_PACKAGE = "source_package"; + field public static final String SOURCE_TYPE = "source_type"; + field public static final String VOICEMAIL_ACCESS_URI = "voicemail_access_uri"; + } + + public static final class VoicemailContract.Voicemails implements android.provider.BaseColumns android.provider.OpenableColumns { + method public static android.net.Uri buildSourceUri(String); + field public static final String ARCHIVED = "archived"; + field public static final String BACKED_UP = "backed_up"; + field public static final android.net.Uri CONTENT_URI; + field public static final String DATE = "date"; + field public static final String DELETED = "deleted"; + field public static final String DIRTY = "dirty"; + field public static final int DIRTY_RETAIN = -1; // 0xffffffff + field public static final String DIR_TYPE = "vnd.android.cursor.dir/voicemails"; + field public static final String DURATION = "duration"; + field public static final String HAS_CONTENT = "has_content"; + field public static final String IS_OMTP_VOICEMAIL = "is_omtp_voicemail"; + field public static final String IS_READ = "is_read"; + field public static final String ITEM_TYPE = "vnd.android.cursor.item/voicemail"; + field public static final String LAST_MODIFIED = "last_modified"; + field public static final String MIME_TYPE = "mime_type"; + field public static final String NEW = "new"; + field public static final String NUMBER = "number"; + field public static final String PHONE_ACCOUNT_COMPONENT_NAME = "subscription_component_name"; + field public static final String PHONE_ACCOUNT_ID = "subscription_id"; + field public static final String RESTORED = "restored"; + field public static final String SOURCE_DATA = "source_data"; + field public static final String SOURCE_PACKAGE = "source_package"; + field public static final String TRANSCRIPTION = "transcription"; + } + +} + +package android.renderscript { + + @Deprecated public class Allocation extends android.renderscript.BaseObj { + method @Deprecated public void copy1DRangeFrom(int, int, Object); + method @Deprecated public void copy1DRangeFrom(int, int, int[]); + method @Deprecated public void copy1DRangeFrom(int, int, short[]); + method @Deprecated public void copy1DRangeFrom(int, int, byte[]); + method @Deprecated public void copy1DRangeFrom(int, int, float[]); + method @Deprecated public void copy1DRangeFrom(int, int, android.renderscript.Allocation, int); + method @Deprecated public void copy1DRangeFromUnchecked(int, int, Object); + method @Deprecated public void copy1DRangeFromUnchecked(int, int, int[]); + method @Deprecated public void copy1DRangeFromUnchecked(int, int, short[]); + method @Deprecated public void copy1DRangeFromUnchecked(int, int, byte[]); + method @Deprecated public void copy1DRangeFromUnchecked(int, int, float[]); + method @Deprecated public void copy1DRangeTo(int, int, Object); + method @Deprecated public void copy1DRangeTo(int, int, int[]); + method @Deprecated public void copy1DRangeTo(int, int, short[]); + method @Deprecated public void copy1DRangeTo(int, int, byte[]); + method @Deprecated public void copy1DRangeTo(int, int, float[]); + method @Deprecated public void copy1DRangeToUnchecked(int, int, Object); + method @Deprecated public void copy1DRangeToUnchecked(int, int, int[]); + method @Deprecated public void copy1DRangeToUnchecked(int, int, short[]); + method @Deprecated public void copy1DRangeToUnchecked(int, int, byte[]); + method @Deprecated public void copy1DRangeToUnchecked(int, int, float[]); + method @Deprecated public void copy2DRangeFrom(int, int, int, int, Object); + method @Deprecated public void copy2DRangeFrom(int, int, int, int, byte[]); + method @Deprecated public void copy2DRangeFrom(int, int, int, int, short[]); + method @Deprecated public void copy2DRangeFrom(int, int, int, int, int[]); + method @Deprecated public void copy2DRangeFrom(int, int, int, int, float[]); + method @Deprecated public void copy2DRangeFrom(int, int, int, int, android.renderscript.Allocation, int, int); + method @Deprecated public void copy2DRangeFrom(int, int, android.graphics.Bitmap); + method @Deprecated public void copy2DRangeTo(int, int, int, int, Object); + method @Deprecated public void copy2DRangeTo(int, int, int, int, byte[]); + method @Deprecated public void copy2DRangeTo(int, int, int, int, short[]); + method @Deprecated public void copy2DRangeTo(int, int, int, int, int[]); + method @Deprecated public void copy2DRangeTo(int, int, int, int, float[]); + method @Deprecated public void copy3DRangeFrom(int, int, int, int, int, int, Object); + method @Deprecated public void copy3DRangeFrom(int, int, int, int, int, int, android.renderscript.Allocation, int, int, int); + method @Deprecated public void copy3DRangeTo(int, int, int, int, int, int, Object); + method @Deprecated public void copyFrom(android.renderscript.BaseObj[]); + method @Deprecated public void copyFrom(Object); + method @Deprecated public void copyFrom(int[]); + method @Deprecated public void copyFrom(short[]); + method @Deprecated public void copyFrom(byte[]); + method @Deprecated public void copyFrom(float[]); + method @Deprecated public void copyFrom(android.graphics.Bitmap); + method @Deprecated public void copyFrom(android.renderscript.Allocation); + method @Deprecated public void copyFromUnchecked(Object); + method @Deprecated public void copyFromUnchecked(int[]); + method @Deprecated public void copyFromUnchecked(short[]); + method @Deprecated public void copyFromUnchecked(byte[]); + method @Deprecated public void copyFromUnchecked(float[]); + method @Deprecated public void copyTo(android.graphics.Bitmap); + method @Deprecated public void copyTo(Object); + method @Deprecated public void copyTo(byte[]); + method @Deprecated public void copyTo(short[]); + method @Deprecated public void copyTo(int[]); + method @Deprecated public void copyTo(float[]); + method @Deprecated public static android.renderscript.Allocation[] createAllocations(android.renderscript.RenderScript, android.renderscript.Type, int, int); + method @Deprecated public static android.renderscript.Allocation createCubemapFromBitmap(android.renderscript.RenderScript, android.graphics.Bitmap, android.renderscript.Allocation.MipmapControl, int); + method @Deprecated public static android.renderscript.Allocation createCubemapFromBitmap(android.renderscript.RenderScript, android.graphics.Bitmap); + method @Deprecated public static android.renderscript.Allocation createCubemapFromCubeFaces(android.renderscript.RenderScript, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.renderscript.Allocation.MipmapControl, int); + method @Deprecated public static android.renderscript.Allocation createCubemapFromCubeFaces(android.renderscript.RenderScript, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap, android.graphics.Bitmap); + method @Deprecated public static android.renderscript.Allocation createFromBitmap(android.renderscript.RenderScript, android.graphics.Bitmap, android.renderscript.Allocation.MipmapControl, int); + method @Deprecated public static android.renderscript.Allocation createFromBitmap(android.renderscript.RenderScript, android.graphics.Bitmap); + method @Deprecated public static android.renderscript.Allocation createFromBitmapResource(android.renderscript.RenderScript, android.content.res.Resources, int, android.renderscript.Allocation.MipmapControl, int); + method @Deprecated public static android.renderscript.Allocation createFromBitmapResource(android.renderscript.RenderScript, android.content.res.Resources, int); + method @Deprecated public static android.renderscript.Allocation createFromString(android.renderscript.RenderScript, String, int); + method @Deprecated public static android.renderscript.Allocation createSized(android.renderscript.RenderScript, android.renderscript.Element, int, int); + method @Deprecated public static android.renderscript.Allocation createSized(android.renderscript.RenderScript, android.renderscript.Element, int); + method @Deprecated public static android.renderscript.Allocation createTyped(android.renderscript.RenderScript, android.renderscript.Type, android.renderscript.Allocation.MipmapControl, int); + method @Deprecated public static android.renderscript.Allocation createTyped(android.renderscript.RenderScript, android.renderscript.Type, int); + method @Deprecated public static android.renderscript.Allocation createTyped(android.renderscript.RenderScript, android.renderscript.Type); + method @Deprecated public void generateMipmaps(); + method @Deprecated public java.nio.ByteBuffer getByteBuffer(); + method @Deprecated public int getBytesSize(); + method @Deprecated public android.renderscript.Element getElement(); + method @Deprecated public long getStride(); + method @Deprecated public android.view.Surface getSurface(); + method @Deprecated public long getTimeStamp(); + method @Deprecated public android.renderscript.Type getType(); + method @Deprecated public int getUsage(); + method @Deprecated public void ioReceive(); + method @Deprecated public void ioSend(); + method @Deprecated public void resize(int); + method @Deprecated public void setAutoPadding(boolean); + method @Deprecated public void setFromFieldPacker(int, android.renderscript.FieldPacker); + method @Deprecated public void setFromFieldPacker(int, int, android.renderscript.FieldPacker); + method @Deprecated public void setFromFieldPacker(int, int, int, int, android.renderscript.FieldPacker); + method @Deprecated public void setOnBufferAvailableListener(android.renderscript.Allocation.OnBufferAvailableListener); + method @Deprecated public void setSurface(android.view.Surface); + method @Deprecated public void syncAll(int); + field @Deprecated public static final int USAGE_GRAPHICS_CONSTANTS = 8; // 0x8 + field @Deprecated public static final int USAGE_GRAPHICS_RENDER_TARGET = 16; // 0x10 + field @Deprecated public static final int USAGE_GRAPHICS_TEXTURE = 2; // 0x2 + field @Deprecated public static final int USAGE_GRAPHICS_VERTEX = 4; // 0x4 + field @Deprecated public static final int USAGE_IO_INPUT = 32; // 0x20 + field @Deprecated public static final int USAGE_IO_OUTPUT = 64; // 0x40 + field @Deprecated public static final int USAGE_SCRIPT = 1; // 0x1 + field @Deprecated public static final int USAGE_SHARED = 128; // 0x80 + } + + @Deprecated public enum Allocation.MipmapControl { + enum_constant @Deprecated public static final android.renderscript.Allocation.MipmapControl MIPMAP_FULL; + enum_constant @Deprecated public static final android.renderscript.Allocation.MipmapControl MIPMAP_NONE; + enum_constant @Deprecated public static final android.renderscript.Allocation.MipmapControl MIPMAP_ON_SYNC_TO_TEXTURE; + } + + @Deprecated public static interface Allocation.OnBufferAvailableListener { + method @Deprecated public void onBufferAvailable(android.renderscript.Allocation); + } + + @Deprecated public class AllocationAdapter extends android.renderscript.Allocation { + method @Deprecated public static android.renderscript.AllocationAdapter create1D(android.renderscript.RenderScript, android.renderscript.Allocation); + method @Deprecated public static android.renderscript.AllocationAdapter create2D(android.renderscript.RenderScript, android.renderscript.Allocation); + method @Deprecated public static android.renderscript.AllocationAdapter createTyped(android.renderscript.RenderScript, android.renderscript.Allocation, android.renderscript.Type); + method @Deprecated public void resize(int); + method @Deprecated public void setFace(android.renderscript.Type.CubemapFace); + method @Deprecated public void setLOD(int); + method @Deprecated public void setX(int); + method @Deprecated public void setY(int); + method @Deprecated public void setZ(int); + } + + @Deprecated public class BaseObj { + method @Deprecated public void destroy(); + method @Deprecated public String getName(); + method @Deprecated public void setName(String); + } + + @Deprecated public class Byte2 { + ctor @Deprecated public Byte2(); + ctor @Deprecated public Byte2(byte, byte); + field @Deprecated public byte x; + field @Deprecated public byte y; + } + + @Deprecated public class Byte3 { + ctor @Deprecated public Byte3(); + ctor @Deprecated public Byte3(byte, byte, byte); + field @Deprecated public byte x; + field @Deprecated public byte y; + field @Deprecated public byte z; + } + + @Deprecated public class Byte4 { + ctor @Deprecated public Byte4(); + ctor @Deprecated public Byte4(byte, byte, byte, byte); + field @Deprecated public byte w; + field @Deprecated public byte x; + field @Deprecated public byte y; + field @Deprecated public byte z; + } + + @Deprecated public class Double2 { + ctor @Deprecated public Double2(); + ctor @Deprecated public Double2(double, double); + field @Deprecated public double x; + field @Deprecated public double y; + } + + @Deprecated public class Double3 { + ctor @Deprecated public Double3(); + ctor @Deprecated public Double3(double, double, double); + field @Deprecated public double x; + field @Deprecated public double y; + field @Deprecated public double z; + } + + @Deprecated public class Double4 { + ctor @Deprecated public Double4(); + ctor @Deprecated public Double4(double, double, double, double); + field @Deprecated public double w; + field @Deprecated public double x; + field @Deprecated public double y; + field @Deprecated public double z; + } + + @Deprecated public class Element extends android.renderscript.BaseObj { + method @Deprecated public static android.renderscript.Element ALLOCATION(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element A_8(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element BOOLEAN(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element ELEMENT(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F16(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F16_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F16_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F16_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F32(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F32_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F32_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F32_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F64(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F64_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F64_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element F64_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element FONT(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I16(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I16_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I16_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I16_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I32(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I32_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I32_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I32_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I64(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I64_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I64_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I64_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I8(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I8_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I8_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element I8_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element MATRIX4X4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element MATRIX_2X2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element MATRIX_3X3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element MATRIX_4X4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element MESH(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element PROGRAM_FRAGMENT(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element PROGRAM_RASTER(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element PROGRAM_STORE(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element PROGRAM_VERTEX(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element RGBA_4444(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element RGBA_5551(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element RGBA_8888(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element RGB_565(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element RGB_888(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element SAMPLER(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element SCRIPT(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element TYPE(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U16(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U16_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U16_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U16_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U32(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U32_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U32_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U32_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U64(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U64_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U64_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U64_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U8(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U8_2(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U8_3(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element U8_4(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element YUV(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Element createPixel(android.renderscript.RenderScript, android.renderscript.Element.DataType, android.renderscript.Element.DataKind); + method @Deprecated public static android.renderscript.Element createVector(android.renderscript.RenderScript, android.renderscript.Element.DataType, int); + method @Deprecated public int getBytesSize(); + method @Deprecated public android.renderscript.Element.DataKind getDataKind(); + method @Deprecated public android.renderscript.Element.DataType getDataType(); + method @Deprecated public android.renderscript.Element getSubElement(int); + method @Deprecated public int getSubElementArraySize(int); + method @Deprecated public int getSubElementCount(); + method @Deprecated public String getSubElementName(int); + method @Deprecated public int getSubElementOffsetBytes(int); + method @Deprecated public int getVectorSize(); + method @Deprecated public boolean isCompatible(android.renderscript.Element); + method @Deprecated public boolean isComplex(); + } + + @Deprecated public static class Element.Builder { + ctor @Deprecated public Element.Builder(android.renderscript.RenderScript); + method @Deprecated public android.renderscript.Element.Builder add(android.renderscript.Element, String, int); + method @Deprecated public android.renderscript.Element.Builder add(android.renderscript.Element, String); + method @Deprecated public android.renderscript.Element create(); + } + + @Deprecated public enum Element.DataKind { + enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_A; + enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_DEPTH; + enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_L; + enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_LA; + enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_RGB; + enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_RGBA; + enum_constant @Deprecated public static final android.renderscript.Element.DataKind PIXEL_YUV; + enum_constant @Deprecated public static final android.renderscript.Element.DataKind USER; + } + + @Deprecated public enum Element.DataType { + enum_constant @Deprecated public static final android.renderscript.Element.DataType BOOLEAN; + enum_constant @Deprecated public static final android.renderscript.Element.DataType FLOAT_16; + enum_constant @Deprecated public static final android.renderscript.Element.DataType FLOAT_32; + enum_constant @Deprecated public static final android.renderscript.Element.DataType FLOAT_64; + enum_constant @Deprecated public static final android.renderscript.Element.DataType MATRIX_2X2; + enum_constant @Deprecated public static final android.renderscript.Element.DataType MATRIX_3X3; + enum_constant @Deprecated public static final android.renderscript.Element.DataType MATRIX_4X4; + enum_constant @Deprecated public static final android.renderscript.Element.DataType NONE; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_ALLOCATION; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_ELEMENT; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_FONT; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_MESH; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_PROGRAM_FRAGMENT; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_PROGRAM_RASTER; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_PROGRAM_STORE; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_PROGRAM_VERTEX; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_SAMPLER; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_SCRIPT; + enum_constant @Deprecated public static final android.renderscript.Element.DataType RS_TYPE; + enum_constant @Deprecated public static final android.renderscript.Element.DataType SIGNED_16; + enum_constant @Deprecated public static final android.renderscript.Element.DataType SIGNED_32; + enum_constant @Deprecated public static final android.renderscript.Element.DataType SIGNED_64; + enum_constant @Deprecated public static final android.renderscript.Element.DataType SIGNED_8; + enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_16; + enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_32; + enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_4_4_4_4; + enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_5_5_5_1; + enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_5_6_5; + enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_64; + enum_constant @Deprecated public static final android.renderscript.Element.DataType UNSIGNED_8; + } + + @Deprecated public class FieldPacker { + ctor @Deprecated public FieldPacker(int); + ctor @Deprecated public FieldPacker(byte[]); + method @Deprecated public void addBoolean(boolean); + method @Deprecated public void addF32(float); + method @Deprecated public void addF32(android.renderscript.Float2); + method @Deprecated public void addF32(android.renderscript.Float3); + method @Deprecated public void addF32(android.renderscript.Float4); + method @Deprecated public void addF64(double); + method @Deprecated public void addF64(android.renderscript.Double2); + method @Deprecated public void addF64(android.renderscript.Double3); + method @Deprecated public void addF64(android.renderscript.Double4); + method @Deprecated public void addI16(short); + method @Deprecated public void addI16(android.renderscript.Short2); + method @Deprecated public void addI16(android.renderscript.Short3); + method @Deprecated public void addI16(android.renderscript.Short4); + method @Deprecated public void addI32(int); + method @Deprecated public void addI32(android.renderscript.Int2); + method @Deprecated public void addI32(android.renderscript.Int3); + method @Deprecated public void addI32(android.renderscript.Int4); + method @Deprecated public void addI64(long); + method @Deprecated public void addI64(android.renderscript.Long2); + method @Deprecated public void addI64(android.renderscript.Long3); + method @Deprecated public void addI64(android.renderscript.Long4); + method @Deprecated public void addI8(byte); + method @Deprecated public void addI8(android.renderscript.Byte2); + method @Deprecated public void addI8(android.renderscript.Byte3); + method @Deprecated public void addI8(android.renderscript.Byte4); + method @Deprecated public void addMatrix(android.renderscript.Matrix4f); + method @Deprecated public void addMatrix(android.renderscript.Matrix3f); + method @Deprecated public void addMatrix(android.renderscript.Matrix2f); + method @Deprecated public void addObj(android.renderscript.BaseObj); + method @Deprecated public void addU16(int); + method @Deprecated public void addU16(android.renderscript.Int2); + method @Deprecated public void addU16(android.renderscript.Int3); + method @Deprecated public void addU16(android.renderscript.Int4); + method @Deprecated public void addU32(long); + method @Deprecated public void addU32(android.renderscript.Long2); + method @Deprecated public void addU32(android.renderscript.Long3); + method @Deprecated public void addU32(android.renderscript.Long4); + method @Deprecated public void addU64(long); + method @Deprecated public void addU64(android.renderscript.Long2); + method @Deprecated public void addU64(android.renderscript.Long3); + method @Deprecated public void addU64(android.renderscript.Long4); + method @Deprecated public void addU8(short); + method @Deprecated public void addU8(android.renderscript.Short2); + method @Deprecated public void addU8(android.renderscript.Short3); + method @Deprecated public void addU8(android.renderscript.Short4); + method @Deprecated public void align(int); + method @Deprecated public final byte[] getData(); + method @Deprecated public void reset(); + method @Deprecated public void reset(int); + method @Deprecated public void skip(int); + method @Deprecated public boolean subBoolean(); + method @Deprecated public android.renderscript.Byte2 subByte2(); + method @Deprecated public android.renderscript.Byte3 subByte3(); + method @Deprecated public android.renderscript.Byte4 subByte4(); + method @Deprecated public android.renderscript.Double2 subDouble2(); + method @Deprecated public android.renderscript.Double3 subDouble3(); + method @Deprecated public android.renderscript.Double4 subDouble4(); + method @Deprecated public float subF32(); + method @Deprecated public double subF64(); + method @Deprecated public android.renderscript.Float2 subFloat2(); + method @Deprecated public android.renderscript.Float3 subFloat3(); + method @Deprecated public android.renderscript.Float4 subFloat4(); + method @Deprecated public short subI16(); + method @Deprecated public int subI32(); + method @Deprecated public long subI64(); + method @Deprecated public byte subI8(); + method @Deprecated public android.renderscript.Int2 subInt2(); + method @Deprecated public android.renderscript.Int3 subInt3(); + method @Deprecated public android.renderscript.Int4 subInt4(); + method @Deprecated public android.renderscript.Long2 subLong2(); + method @Deprecated public android.renderscript.Long3 subLong3(); + method @Deprecated public android.renderscript.Long4 subLong4(); + method @Deprecated public android.renderscript.Matrix2f subMatrix2f(); + method @Deprecated public android.renderscript.Matrix3f subMatrix3f(); + method @Deprecated public android.renderscript.Matrix4f subMatrix4f(); + method @Deprecated public android.renderscript.Short2 subShort2(); + method @Deprecated public android.renderscript.Short3 subShort3(); + method @Deprecated public android.renderscript.Short4 subShort4(); + method @Deprecated public void subalign(int); + } + + @Deprecated public class Float2 { + ctor @Deprecated public Float2(); + ctor @Deprecated public Float2(float, float); + field @Deprecated public float x; + field @Deprecated public float y; + } + + @Deprecated public class Float3 { + ctor @Deprecated public Float3(); + ctor @Deprecated public Float3(float, float, float); + field @Deprecated public float x; + field @Deprecated public float y; + field @Deprecated public float z; + } + + @Deprecated public class Float4 { + ctor @Deprecated public Float4(); + ctor @Deprecated public Float4(float, float, float, float); + field @Deprecated public float w; + field @Deprecated public float x; + field @Deprecated public float y; + field @Deprecated public float z; + } + + @Deprecated public class Int2 { + ctor @Deprecated public Int2(); + ctor @Deprecated public Int2(int, int); + field @Deprecated public int x; + field @Deprecated public int y; + } + + @Deprecated public class Int3 { + ctor @Deprecated public Int3(); + ctor @Deprecated public Int3(int, int, int); + field @Deprecated public int x; + field @Deprecated public int y; + field @Deprecated public int z; + } + + @Deprecated public class Int4 { + ctor @Deprecated public Int4(); + ctor @Deprecated public Int4(int, int, int, int); + field @Deprecated public int w; + field @Deprecated public int x; + field @Deprecated public int y; + field @Deprecated public int z; + } + + @Deprecated public class Long2 { + ctor @Deprecated public Long2(); + ctor @Deprecated public Long2(long, long); + field @Deprecated public long x; + field @Deprecated public long y; + } + + @Deprecated public class Long3 { + ctor @Deprecated public Long3(); + ctor @Deprecated public Long3(long, long, long); + field @Deprecated public long x; + field @Deprecated public long y; + field @Deprecated public long z; + } + + @Deprecated public class Long4 { + ctor @Deprecated public Long4(); + ctor @Deprecated public Long4(long, long, long, long); + field @Deprecated public long w; + field @Deprecated public long x; + field @Deprecated public long y; + field @Deprecated public long z; + } + + @Deprecated public class Matrix2f { + ctor @Deprecated public Matrix2f(); + ctor @Deprecated public Matrix2f(float[]); + method @Deprecated public float get(int, int); + method @Deprecated public float[] getArray(); + method @Deprecated public void load(android.renderscript.Matrix2f); + method @Deprecated public void loadIdentity(); + method @Deprecated public void loadMultiply(android.renderscript.Matrix2f, android.renderscript.Matrix2f); + method @Deprecated public void loadRotate(float); + method @Deprecated public void loadScale(float, float); + method @Deprecated public void multiply(android.renderscript.Matrix2f); + method @Deprecated public void rotate(float); + method @Deprecated public void scale(float, float); + method @Deprecated public void set(int, int, float); + method @Deprecated public void transpose(); + } + + @Deprecated public class Matrix3f { + ctor @Deprecated public Matrix3f(); + ctor @Deprecated public Matrix3f(float[]); + method @Deprecated public float get(int, int); + method @Deprecated public float[] getArray(); + method @Deprecated public void load(android.renderscript.Matrix3f); + method @Deprecated public void loadIdentity(); + method @Deprecated public void loadMultiply(android.renderscript.Matrix3f, android.renderscript.Matrix3f); + method @Deprecated public void loadRotate(float, float, float, float); + method @Deprecated public void loadRotate(float); + method @Deprecated public void loadScale(float, float); + method @Deprecated public void loadScale(float, float, float); + method @Deprecated public void loadTranslate(float, float); + method @Deprecated public void multiply(android.renderscript.Matrix3f); + method @Deprecated public void rotate(float, float, float, float); + method @Deprecated public void rotate(float); + method @Deprecated public void scale(float, float); + method @Deprecated public void scale(float, float, float); + method @Deprecated public void set(int, int, float); + method @Deprecated public void translate(float, float); + method @Deprecated public void transpose(); + } + + @Deprecated public class Matrix4f { + ctor @Deprecated public Matrix4f(); + ctor @Deprecated public Matrix4f(float[]); + method @Deprecated public float get(int, int); + method @Deprecated public float[] getArray(); + method @Deprecated public boolean inverse(); + method @Deprecated public boolean inverseTranspose(); + method @Deprecated public void load(android.renderscript.Matrix4f); + method @Deprecated public void loadFrustum(float, float, float, float, float, float); + method @Deprecated public void loadIdentity(); + method @Deprecated public void loadMultiply(android.renderscript.Matrix4f, android.renderscript.Matrix4f); + method @Deprecated public void loadOrtho(float, float, float, float, float, float); + method @Deprecated public void loadOrthoWindow(int, int); + method @Deprecated public void loadPerspective(float, float, float, float); + method @Deprecated public void loadProjectionNormalized(int, int); + method @Deprecated public void loadRotate(float, float, float, float); + method @Deprecated public void loadScale(float, float, float); + method @Deprecated public void loadTranslate(float, float, float); + method @Deprecated public void multiply(android.renderscript.Matrix4f); + method @Deprecated public void rotate(float, float, float, float); + method @Deprecated public void scale(float, float, float); + method @Deprecated public void set(int, int, float); + method @Deprecated public void translate(float, float, float); + method @Deprecated public void transpose(); + } + + @Deprecated public class RSDriverException extends android.renderscript.RSRuntimeException { + ctor @Deprecated public RSDriverException(String); + } + + @Deprecated public class RSIllegalArgumentException extends android.renderscript.RSRuntimeException { + ctor @Deprecated public RSIllegalArgumentException(String); + } + + @Deprecated public class RSInvalidStateException extends android.renderscript.RSRuntimeException { + ctor @Deprecated public RSInvalidStateException(String); + } + + @Deprecated public class RSRuntimeException extends java.lang.RuntimeException { + ctor @Deprecated public RSRuntimeException(String); + } + + @Deprecated public class RenderScript { + method @Deprecated public void contextDump(); + method @Deprecated public static android.renderscript.RenderScript create(android.content.Context); + method @Deprecated public static android.renderscript.RenderScript create(android.content.Context, android.renderscript.RenderScript.ContextType); + method @Deprecated public static android.renderscript.RenderScript create(android.content.Context, android.renderscript.RenderScript.ContextType, int); + method @Deprecated public static android.renderscript.RenderScript createMultiContext(android.content.Context, android.renderscript.RenderScript.ContextType, int, int); + method @Deprecated public void destroy(); + method @Deprecated public void finish(); + method @Deprecated public final android.content.Context getApplicationContext(); + method @Deprecated public android.renderscript.RenderScript.RSErrorHandler getErrorHandler(); + method @Deprecated public android.renderscript.RenderScript.RSMessageHandler getMessageHandler(); + method @Deprecated public static long getMinorVersion(); + method @Deprecated public static void releaseAllContexts(); + method @Deprecated public void sendMessage(int, int[]); + method @Deprecated public void setErrorHandler(android.renderscript.RenderScript.RSErrorHandler); + method @Deprecated public void setMessageHandler(android.renderscript.RenderScript.RSMessageHandler); + method @Deprecated public void setPriority(android.renderscript.RenderScript.Priority); + field @Deprecated public static final int CREATE_FLAG_LOW_LATENCY = 2; // 0x2 + field @Deprecated public static final int CREATE_FLAG_LOW_POWER = 4; // 0x4 + field @Deprecated public static final int CREATE_FLAG_NONE = 0; // 0x0 + } + + @Deprecated public enum RenderScript.ContextType { + enum_constant @Deprecated public static final android.renderscript.RenderScript.ContextType DEBUG; + enum_constant @Deprecated public static final android.renderscript.RenderScript.ContextType NORMAL; + enum_constant @Deprecated public static final android.renderscript.RenderScript.ContextType PROFILE; + } + + @Deprecated public enum RenderScript.Priority { + enum_constant @Deprecated public static final android.renderscript.RenderScript.Priority LOW; + enum_constant @Deprecated public static final android.renderscript.RenderScript.Priority NORMAL; + } + + @Deprecated public static class RenderScript.RSErrorHandler implements java.lang.Runnable { + ctor @Deprecated public RenderScript.RSErrorHandler(); + method @Deprecated public void run(); + field @Deprecated protected String mErrorMessage; + field @Deprecated protected int mErrorNum; + } + + @Deprecated public static class RenderScript.RSMessageHandler implements java.lang.Runnable { + ctor @Deprecated public RenderScript.RSMessageHandler(); + method @Deprecated public void run(); + field @Deprecated protected int[] mData; + field @Deprecated protected int mID; + field @Deprecated protected int mLength; + } + + @Deprecated public class Sampler extends android.renderscript.BaseObj { + method @Deprecated public static android.renderscript.Sampler CLAMP_LINEAR(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Sampler CLAMP_LINEAR_MIP_LINEAR(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Sampler CLAMP_NEAREST(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Sampler MIRRORED_REPEAT_LINEAR(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Sampler MIRRORED_REPEAT_LINEAR_MIP_LINEAR(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Sampler MIRRORED_REPEAT_NEAREST(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Sampler WRAP_LINEAR(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Sampler WRAP_LINEAR_MIP_LINEAR(android.renderscript.RenderScript); + method @Deprecated public static android.renderscript.Sampler WRAP_NEAREST(android.renderscript.RenderScript); + method @Deprecated public float getAnisotropy(); + method @Deprecated public android.renderscript.Sampler.Value getMagnification(); + method @Deprecated public android.renderscript.Sampler.Value getMinification(); + method @Deprecated public android.renderscript.Sampler.Value getWrapS(); + method @Deprecated public android.renderscript.Sampler.Value getWrapT(); + } + + @Deprecated public static class Sampler.Builder { + ctor @Deprecated public Sampler.Builder(android.renderscript.RenderScript); + method @Deprecated public android.renderscript.Sampler create(); + method @Deprecated public void setAnisotropy(float); + method @Deprecated public void setMagnification(android.renderscript.Sampler.Value); + method @Deprecated public void setMinification(android.renderscript.Sampler.Value); + method @Deprecated public void setWrapS(android.renderscript.Sampler.Value); + method @Deprecated public void setWrapT(android.renderscript.Sampler.Value); + } + + @Deprecated public enum Sampler.Value { + enum_constant @Deprecated public static final android.renderscript.Sampler.Value CLAMP; + enum_constant @Deprecated public static final android.renderscript.Sampler.Value LINEAR; + enum_constant @Deprecated public static final android.renderscript.Sampler.Value LINEAR_MIP_LINEAR; + enum_constant @Deprecated public static final android.renderscript.Sampler.Value LINEAR_MIP_NEAREST; + enum_constant @Deprecated public static final android.renderscript.Sampler.Value MIRRORED_REPEAT; + enum_constant @Deprecated public static final android.renderscript.Sampler.Value NEAREST; + enum_constant @Deprecated public static final android.renderscript.Sampler.Value WRAP; + } + + @Deprecated public class Script extends android.renderscript.BaseObj { + method @Deprecated public void bindAllocation(android.renderscript.Allocation, int); + method @Deprecated protected android.renderscript.Script.FieldID createFieldID(int, android.renderscript.Element); + method @Deprecated protected android.renderscript.Script.InvokeID createInvokeID(int); + method @Deprecated protected android.renderscript.Script.KernelID createKernelID(int, int, android.renderscript.Element, android.renderscript.Element); + method @Deprecated protected void forEach(int, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.FieldPacker); + method @Deprecated protected void forEach(int, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.FieldPacker, android.renderscript.Script.LaunchOptions); + method @Deprecated protected void forEach(int, android.renderscript.Allocation[], android.renderscript.Allocation, android.renderscript.FieldPacker); + method @Deprecated protected void forEach(int, android.renderscript.Allocation[], android.renderscript.Allocation, android.renderscript.FieldPacker, android.renderscript.Script.LaunchOptions); + method @Deprecated public boolean getVarB(int); + method @Deprecated public double getVarD(int); + method @Deprecated public float getVarF(int); + method @Deprecated public int getVarI(int); + method @Deprecated public long getVarJ(int); + method @Deprecated public void getVarV(int, android.renderscript.FieldPacker); + method @Deprecated protected void invoke(int); + method @Deprecated protected void invoke(int, android.renderscript.FieldPacker); + method @Deprecated protected void reduce(int, android.renderscript.Allocation[], android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void setTimeZone(String); + method @Deprecated public void setVar(int, float); + method @Deprecated public void setVar(int, double); + method @Deprecated public void setVar(int, int); + method @Deprecated public void setVar(int, long); + method @Deprecated public void setVar(int, boolean); + method @Deprecated public void setVar(int, android.renderscript.BaseObj); + method @Deprecated public void setVar(int, android.renderscript.FieldPacker); + method @Deprecated public void setVar(int, android.renderscript.FieldPacker, android.renderscript.Element, int[]); + } + + @Deprecated public static class Script.Builder { + } + + @Deprecated public static class Script.FieldBase { + ctor @Deprecated protected Script.FieldBase(); + method @Deprecated public android.renderscript.Allocation getAllocation(); + method @Deprecated public android.renderscript.Element getElement(); + method @Deprecated public android.renderscript.Type getType(); + method @Deprecated protected void init(android.renderscript.RenderScript, int); + method @Deprecated protected void init(android.renderscript.RenderScript, int, int); + method @Deprecated public void updateAllocation(); + field @Deprecated protected android.renderscript.Allocation mAllocation; + field @Deprecated protected android.renderscript.Element mElement; + } + + @Deprecated public static final class Script.FieldID extends android.renderscript.BaseObj { + } + + @Deprecated public static final class Script.InvokeID extends android.renderscript.BaseObj { + } + + @Deprecated public static final class Script.KernelID extends android.renderscript.BaseObj { + } + + @Deprecated public static final class Script.LaunchOptions { + ctor @Deprecated public Script.LaunchOptions(); + method @Deprecated public int getXEnd(); + method @Deprecated public int getXStart(); + method @Deprecated public int getYEnd(); + method @Deprecated public int getYStart(); + method @Deprecated public int getZEnd(); + method @Deprecated public int getZStart(); + method @Deprecated public android.renderscript.Script.LaunchOptions setX(int, int); + method @Deprecated public android.renderscript.Script.LaunchOptions setY(int, int); + method @Deprecated public android.renderscript.Script.LaunchOptions setZ(int, int); + } + + @Deprecated public class ScriptC extends android.renderscript.Script { + ctor @Deprecated protected ScriptC(int, android.renderscript.RenderScript); + ctor @Deprecated protected ScriptC(long, android.renderscript.RenderScript); + ctor @Deprecated protected ScriptC(android.renderscript.RenderScript, android.content.res.Resources, int); + ctor @Deprecated protected ScriptC(android.renderscript.RenderScript, String, byte[], byte[]); + } + + @Deprecated public final class ScriptGroup extends android.renderscript.BaseObj { + method @Deprecated public Object[] execute(java.lang.Object...); + method @Deprecated public void execute(); + method @Deprecated public void setInput(android.renderscript.Script.KernelID, android.renderscript.Allocation); + method @Deprecated public void setOutput(android.renderscript.Script.KernelID, android.renderscript.Allocation); + } + + @Deprecated public static final class ScriptGroup.Binding { + ctor @Deprecated public ScriptGroup.Binding(android.renderscript.Script.FieldID, Object); + } + + @Deprecated public static final class ScriptGroup.Builder { + ctor @Deprecated public ScriptGroup.Builder(android.renderscript.RenderScript); + method @Deprecated public android.renderscript.ScriptGroup.Builder addConnection(android.renderscript.Type, android.renderscript.Script.KernelID, android.renderscript.Script.FieldID); + method @Deprecated public android.renderscript.ScriptGroup.Builder addConnection(android.renderscript.Type, android.renderscript.Script.KernelID, android.renderscript.Script.KernelID); + method @Deprecated public android.renderscript.ScriptGroup.Builder addKernel(android.renderscript.Script.KernelID); + method @Deprecated public android.renderscript.ScriptGroup create(); + } + + @Deprecated public static final class ScriptGroup.Builder2 { + ctor @Deprecated public ScriptGroup.Builder2(android.renderscript.RenderScript); + method @Deprecated public android.renderscript.ScriptGroup.Input addInput(); + method @Deprecated public android.renderscript.ScriptGroup.Closure addInvoke(android.renderscript.Script.InvokeID, java.lang.Object...); + method @Deprecated public android.renderscript.ScriptGroup.Closure addKernel(android.renderscript.Script.KernelID, android.renderscript.Type, java.lang.Object...); + method @Deprecated public android.renderscript.ScriptGroup create(String, android.renderscript.ScriptGroup.Future...); + } + + @Deprecated public static final class ScriptGroup.Closure extends android.renderscript.BaseObj { + method @Deprecated public android.renderscript.ScriptGroup.Future getGlobal(android.renderscript.Script.FieldID); + method @Deprecated public android.renderscript.ScriptGroup.Future getReturn(); + } + + @Deprecated public static final class ScriptGroup.Future { + } + + @Deprecated public static final class ScriptGroup.Input { + } + + @Deprecated public abstract class ScriptIntrinsic extends android.renderscript.Script { + } + + @Deprecated public final class ScriptIntrinsic3DLUT extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsic3DLUT create(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public android.renderscript.Script.KernelID getKernelID(); + method @Deprecated public void setLUT(android.renderscript.Allocation); + } + + @Deprecated public final class ScriptIntrinsicBLAS extends android.renderscript.ScriptIntrinsic { + method @Deprecated public void BNNM(android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation, int, int); + method @Deprecated public void CGBMV(int, int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); + method @Deprecated public void CGEMM(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); + method @Deprecated public void CGEMV(int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); + method @Deprecated public void CGERC(android.renderscript.Float2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void CGERU(android.renderscript.Float2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void CHBMV(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); + method @Deprecated public void CHEMM(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); + method @Deprecated public void CHEMV(int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); + method @Deprecated public void CHER(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void CHER2(int, android.renderscript.Float2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void CHER2K(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, float, android.renderscript.Allocation); + method @Deprecated public void CHERK(int, int, float, android.renderscript.Allocation, float, android.renderscript.Allocation); + method @Deprecated public void CHPMV(int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Float2, android.renderscript.Allocation, int); + method @Deprecated public void CHPR(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void CHPR2(int, android.renderscript.Float2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void CSYMM(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); + method @Deprecated public void CSYR2K(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); + method @Deprecated public void CSYRK(int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Float2, android.renderscript.Allocation); + method @Deprecated public void CTBMV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void CTBSV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void CTPMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void CTPSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void CTRMM(int, int, int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void CTRMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void CTRSM(int, int, int, int, android.renderscript.Float2, android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void CTRSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void DGBMV(int, int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); + method @Deprecated public void DGEMM(int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, double, android.renderscript.Allocation); + method @Deprecated public void DGEMV(int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); + method @Deprecated public void DGER(double, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void DSBMV(int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); + method @Deprecated public void DSPMV(int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); + method @Deprecated public void DSPR(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void DSPR2(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void DSYMM(int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, double, android.renderscript.Allocation); + method @Deprecated public void DSYMV(int, double, android.renderscript.Allocation, android.renderscript.Allocation, int, double, android.renderscript.Allocation, int); + method @Deprecated public void DSYR(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void DSYR2(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void DSYR2K(int, int, double, android.renderscript.Allocation, android.renderscript.Allocation, double, android.renderscript.Allocation); + method @Deprecated public void DSYRK(int, int, double, android.renderscript.Allocation, double, android.renderscript.Allocation); + method @Deprecated public void DTBMV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void DTBSV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void DTPMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void DTPSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void DTRMM(int, int, int, int, double, android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void DTRMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void DTRSM(int, int, int, int, double, android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void DTRSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void SGBMV(int, int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); + method @Deprecated public void SGEMM(int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, float, android.renderscript.Allocation); + method @Deprecated public void SGEMV(int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); + method @Deprecated public void SGER(float, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void SSBMV(int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); + method @Deprecated public void SSPMV(int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); + method @Deprecated public void SSPR(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void SSPR2(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void SSYMM(int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, float, android.renderscript.Allocation); + method @Deprecated public void SSYMV(int, float, android.renderscript.Allocation, android.renderscript.Allocation, int, float, android.renderscript.Allocation, int); + method @Deprecated public void SSYR(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void SSYR2(int, float, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void SSYR2K(int, int, float, android.renderscript.Allocation, android.renderscript.Allocation, float, android.renderscript.Allocation); + method @Deprecated public void SSYRK(int, int, float, android.renderscript.Allocation, float, android.renderscript.Allocation); + method @Deprecated public void STBMV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void STBSV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void STPMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void STPSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void STRMM(int, int, int, int, float, android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void STRMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void STRSM(int, int, int, int, float, android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void STRSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void ZGBMV(int, int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); + method @Deprecated public void ZGEMM(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); + method @Deprecated public void ZGEMV(int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); + method @Deprecated public void ZGERC(android.renderscript.Double2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void ZGERU(android.renderscript.Double2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void ZHBMV(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); + method @Deprecated public void ZHEMM(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); + method @Deprecated public void ZHEMV(int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); + method @Deprecated public void ZHER(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void ZHER2(int, android.renderscript.Double2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void ZHER2K(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, double, android.renderscript.Allocation); + method @Deprecated public void ZHERK(int, int, double, android.renderscript.Allocation, double, android.renderscript.Allocation); + method @Deprecated public void ZHPMV(int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, int, android.renderscript.Double2, android.renderscript.Allocation, int); + method @Deprecated public void ZHPR(int, double, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void ZHPR2(int, android.renderscript.Double2, android.renderscript.Allocation, int, android.renderscript.Allocation, int, android.renderscript.Allocation); + method @Deprecated public void ZSYMM(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); + method @Deprecated public void ZSYR2K(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); + method @Deprecated public void ZSYRK(int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Double2, android.renderscript.Allocation); + method @Deprecated public void ZTBMV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void ZTBSV(int, int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void ZTPMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void ZTPSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void ZTRMM(int, int, int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void ZTRMV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public void ZTRSM(int, int, int, int, android.renderscript.Double2, android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void ZTRSV(int, int, int, android.renderscript.Allocation, android.renderscript.Allocation, int); + method @Deprecated public static android.renderscript.ScriptIntrinsicBLAS create(android.renderscript.RenderScript); + field @Deprecated public static final int CONJ_TRANSPOSE = 113; // 0x71 + field @Deprecated public static final int LEFT = 141; // 0x8d + field @Deprecated public static final int LOWER = 122; // 0x7a + field @Deprecated public static final int NON_UNIT = 131; // 0x83 + field @Deprecated public static final int NO_TRANSPOSE = 111; // 0x6f + field @Deprecated public static final int RIGHT = 142; // 0x8e + field @Deprecated public static final int TRANSPOSE = 112; // 0x70 + field @Deprecated public static final int UNIT = 132; // 0x84 + field @Deprecated public static final int UPPER = 121; // 0x79 + } + + @Deprecated public class ScriptIntrinsicBlend extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsicBlend create(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public void forEachAdd(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachAdd(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachClear(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachClear(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachDst(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachDst(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachDstAtop(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachDstAtop(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachDstIn(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachDstIn(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachDstOut(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachDstOut(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachDstOver(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachDstOver(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachMultiply(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachMultiply(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachSrc(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachSrc(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachSrcAtop(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachSrcAtop(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachSrcIn(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachSrcIn(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachSrcOut(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachSrcOut(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachSrcOver(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachSrcOver(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachSubtract(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachSubtract(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEachXor(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEachXor(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDAdd(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDClear(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDDst(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDDstAtop(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDDstIn(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDDstOut(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDDstOver(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDMultiply(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrc(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrcAtop(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrcIn(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrcOut(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDSrcOver(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDSubtract(); + method @Deprecated public android.renderscript.Script.KernelID getKernelIDXor(); + } + + @Deprecated public final class ScriptIntrinsicBlur extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsicBlur create(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public void forEach(android.renderscript.Allocation); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); + method @Deprecated public android.renderscript.Script.KernelID getKernelID(); + method @Deprecated public void setInput(android.renderscript.Allocation); + method @Deprecated public void setRadius(float); + } + + @Deprecated public final class ScriptIntrinsicColorMatrix extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsicColorMatrix create(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public static android.renderscript.ScriptIntrinsicColorMatrix create(android.renderscript.RenderScript); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public android.renderscript.Script.KernelID getKernelID(); + method @Deprecated public void setAdd(android.renderscript.Float4); + method @Deprecated public void setAdd(float, float, float, float); + method @Deprecated public void setColorMatrix(android.renderscript.Matrix4f); + method @Deprecated public void setColorMatrix(android.renderscript.Matrix3f); + method @Deprecated public void setGreyscale(); + method @Deprecated public void setRGBtoYUV(); + method @Deprecated public void setYUVtoRGB(); + } + + @Deprecated public final class ScriptIntrinsicConvolve3x3 extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsicConvolve3x3 create(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public void forEach(android.renderscript.Allocation); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); + method @Deprecated public android.renderscript.Script.KernelID getKernelID(); + method @Deprecated public void setCoefficients(float[]); + method @Deprecated public void setInput(android.renderscript.Allocation); + } + + @Deprecated public final class ScriptIntrinsicConvolve5x5 extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsicConvolve5x5 create(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public void forEach(android.renderscript.Allocation); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); + method @Deprecated public android.renderscript.Script.KernelID getKernelID(); + method @Deprecated public void setCoefficients(float[]); + method @Deprecated public void setInput(android.renderscript.Allocation); + } + + @Deprecated public final class ScriptIntrinsicHistogram extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsicHistogram create(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public void forEach(android.renderscript.Allocation); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public void forEach_Dot(android.renderscript.Allocation); + method @Deprecated public void forEach_Dot(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); + method @Deprecated public android.renderscript.Script.KernelID getKernelID_Separate(); + method @Deprecated public void setDotCoefficients(float, float, float, float); + method @Deprecated public void setOutput(android.renderscript.Allocation); + } + + @Deprecated public final class ScriptIntrinsicLUT extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsicLUT create(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation); + method @Deprecated public void forEach(android.renderscript.Allocation, android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public android.renderscript.Script.KernelID getKernelID(); + method @Deprecated public void setAlpha(int, int); + method @Deprecated public void setBlue(int, int); + method @Deprecated public void setGreen(int, int); + method @Deprecated public void setRed(int, int); + } + + @Deprecated public final class ScriptIntrinsicResize extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsicResize create(android.renderscript.RenderScript); + method @Deprecated public void forEach_bicubic(android.renderscript.Allocation); + method @Deprecated public void forEach_bicubic(android.renderscript.Allocation, android.renderscript.Script.LaunchOptions); + method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); + method @Deprecated public android.renderscript.Script.KernelID getKernelID_bicubic(); + method @Deprecated public void setInput(android.renderscript.Allocation); + } + + @Deprecated public final class ScriptIntrinsicYuvToRGB extends android.renderscript.ScriptIntrinsic { + method @Deprecated public static android.renderscript.ScriptIntrinsicYuvToRGB create(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public void forEach(android.renderscript.Allocation); + method @Deprecated public android.renderscript.Script.FieldID getFieldID_Input(); + method @Deprecated public android.renderscript.Script.KernelID getKernelID(); + method @Deprecated public void setInput(android.renderscript.Allocation); + } + + @Deprecated public class Short2 { + ctor @Deprecated public Short2(); + ctor @Deprecated public Short2(short, short); + field @Deprecated public short x; + field @Deprecated public short y; + } + + @Deprecated public class Short3 { + ctor @Deprecated public Short3(); + ctor @Deprecated public Short3(short, short, short); + field @Deprecated public short x; + field @Deprecated public short y; + field @Deprecated public short z; + } + + @Deprecated public class Short4 { + ctor @Deprecated public Short4(); + ctor @Deprecated public Short4(short, short, short, short); + field @Deprecated public short w; + field @Deprecated public short x; + field @Deprecated public short y; + field @Deprecated public short z; + } + + @Deprecated public class Type extends android.renderscript.BaseObj { + method @Deprecated public static android.renderscript.Type createX(android.renderscript.RenderScript, android.renderscript.Element, int); + method @Deprecated public static android.renderscript.Type createXY(android.renderscript.RenderScript, android.renderscript.Element, int, int); + method @Deprecated public static android.renderscript.Type createXYZ(android.renderscript.RenderScript, android.renderscript.Element, int, int, int); + method @Deprecated public int getCount(); + method @Deprecated public android.renderscript.Element getElement(); + method @Deprecated public int getX(); + method @Deprecated public int getY(); + method @Deprecated public int getYuv(); + method @Deprecated public int getZ(); + method @Deprecated public boolean hasFaces(); + method @Deprecated public boolean hasMipmaps(); + } + + @Deprecated public static class Type.Builder { + ctor @Deprecated public Type.Builder(android.renderscript.RenderScript, android.renderscript.Element); + method @Deprecated public android.renderscript.Type create(); + method @Deprecated public android.renderscript.Type.Builder setFaces(boolean); + method @Deprecated public android.renderscript.Type.Builder setMipmaps(boolean); + method @Deprecated public android.renderscript.Type.Builder setX(int); + method @Deprecated public android.renderscript.Type.Builder setY(int); + method @Deprecated public android.renderscript.Type.Builder setYuvFormat(int); + method @Deprecated public android.renderscript.Type.Builder setZ(int); + } + + @Deprecated public enum Type.CubemapFace { + enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace NEGATIVE_X; + enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace NEGATIVE_Y; + enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace NEGATIVE_Z; + enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITIVE_X; + enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITIVE_Y; + enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITIVE_Z; + enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITVE_X; + enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITVE_Y; + enum_constant @Deprecated public static final android.renderscript.Type.CubemapFace POSITVE_Z; + } + +} + +package android.sax { + + public class Element { + method public android.sax.Element getChild(String); + method public android.sax.Element getChild(String, String); + method public android.sax.Element requireChild(String); + method public android.sax.Element requireChild(String, String); + method public void setElementListener(android.sax.ElementListener); + method public void setEndElementListener(android.sax.EndElementListener); + method public void setEndTextElementListener(android.sax.EndTextElementListener); + method public void setStartElementListener(android.sax.StartElementListener); + method public void setTextElementListener(android.sax.TextElementListener); + } + + public interface ElementListener extends android.sax.StartElementListener android.sax.EndElementListener { + } + + public interface EndElementListener { + method public void end(); + } + + public interface EndTextElementListener { + method public void end(String); + } + + public class RootElement extends android.sax.Element { + ctor public RootElement(String, String); + ctor public RootElement(String); + method public org.xml.sax.ContentHandler getContentHandler(); + } + + public interface StartElementListener { + method public void start(org.xml.sax.Attributes); + } + + public interface TextElementListener extends android.sax.StartElementListener android.sax.EndTextElementListener { + } + +} + +package android.se.omapi { + + public final class Channel implements java.nio.channels.Channel { + method public void close(); + method @Nullable public byte[] getSelectResponse(); + method @NonNull public android.se.omapi.Session getSession(); + method public boolean isBasicChannel(); + method public boolean isOpen(); + method public boolean selectNext() throws java.io.IOException; + method @NonNull public byte[] transmit(@NonNull byte[]) throws java.io.IOException; + } + + public final class Reader { + method public void closeSessions(); + method @NonNull public String getName(); + method @NonNull public android.se.omapi.SEService getSEService(); + method public boolean isSecureElementPresent(); + method @NonNull public android.se.omapi.Session openSession() throws java.io.IOException; + } + + public final class SEService { + ctor public SEService(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.se.omapi.SEService.OnConnectedListener); + method @NonNull public android.se.omapi.Reader[] getReaders(); + method @NonNull public android.se.omapi.Reader getUiccReader(int); + method @NonNull public String getVersion(); + method public boolean isConnected(); + method public void shutdown(); + field public static final String ACTION_SECURE_ELEMENT_STATE_CHANGED = "android.se.omapi.action.SECURE_ELEMENT_STATE_CHANGED"; + field public static final String EXTRA_READER_NAME = "android.se.omapi.extra.READER_NAME"; + field public static final String EXTRA_READER_STATE = "android.se.omapi.extra.READER_STATE"; + } + + public static interface SEService.OnConnectedListener { + method public void onConnected(); + } + + public final class Session { + method public void close(); + method public void closeChannels(); + method @Nullable public byte[] getATR(); + method @NonNull public android.se.omapi.Reader getReader(); + method public boolean isClosed(); + method @Nullable public android.se.omapi.Channel openBasicChannel(@Nullable byte[], @Nullable byte) throws java.io.IOException; + method @Nullable public android.se.omapi.Channel openBasicChannel(@Nullable byte[]) throws java.io.IOException; + method @Nullable public android.se.omapi.Channel openLogicalChannel(@Nullable byte[], @Nullable byte) throws java.io.IOException; + method @Nullable public android.se.omapi.Channel openLogicalChannel(@Nullable byte[]) throws java.io.IOException; + } + +} + +package android.security { + + public final class AppUriAuthenticationPolicy implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.Map> getAppAndUriMappings(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class AppUriAuthenticationPolicy.Builder { + ctor public AppUriAuthenticationPolicy.Builder(); + method @NonNull public android.security.AppUriAuthenticationPolicy.Builder addAppAndUriMapping(@NonNull String, @NonNull android.net.Uri, @NonNull String); + method @NonNull public android.security.AppUriAuthenticationPolicy build(); + } + + public final class AttestedKeyPair { + ctor public AttestedKeyPair(@Nullable java.security.KeyPair, @NonNull java.util.List); + method @NonNull public java.util.List getAttestationRecord(); + method @Nullable public java.security.KeyPair getKeyPair(); + } + + public class ConfirmationAlreadyPresentingException extends java.lang.Exception { + ctor public ConfirmationAlreadyPresentingException(); + ctor public ConfirmationAlreadyPresentingException(String); + } + + public abstract class ConfirmationCallback { + ctor public ConfirmationCallback(); + method public void onCanceled(); + method public void onConfirmed(@NonNull byte[]); + method public void onDismissed(); + method public void onError(Throwable); + } + + public class ConfirmationNotAvailableException extends java.lang.Exception { + ctor public ConfirmationNotAvailableException(); + ctor public ConfirmationNotAvailableException(String); + } + + public class ConfirmationPrompt { + method public void cancelPrompt(); + method public static boolean isSupported(android.content.Context); + method public void presentPrompt(@NonNull java.util.concurrent.Executor, @NonNull android.security.ConfirmationCallback) throws android.security.ConfirmationAlreadyPresentingException, android.security.ConfirmationNotAvailableException; + } + + public static final class ConfirmationPrompt.Builder { + ctor public ConfirmationPrompt.Builder(android.content.Context); + method public android.security.ConfirmationPrompt build(); + method public android.security.ConfirmationPrompt.Builder setExtraData(byte[]); + method public android.security.ConfirmationPrompt.Builder setPromptText(CharSequence); + } + + public final class FileIntegrityManager { + method public boolean isApkVeritySupported(); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.INSTALL_PACKAGES, android.Manifest.permission.REQUEST_INSTALL_PACKAGES}) public boolean isAppSourceCertificateTrusted(@NonNull java.security.cert.X509Certificate) throws java.security.cert.CertificateEncodingException; + } + + public final class KeyChain { + ctor public KeyChain(); + method public static void choosePrivateKeyAlias(@NonNull android.app.Activity, @NonNull android.security.KeyChainAliasCallback, @Nullable String[], @Nullable java.security.Principal[], @Nullable String, int, @Nullable String); + method public static void choosePrivateKeyAlias(@NonNull android.app.Activity, @NonNull android.security.KeyChainAliasCallback, @Nullable String[], @Nullable java.security.Principal[], @Nullable android.net.Uri, @Nullable String); + method @NonNull public static android.content.Intent createInstallIntent(); + method @NonNull public static android.content.Intent createManageCredentialsIntent(@NonNull android.security.AppUriAuthenticationPolicy); + method @Nullable @WorkerThread public static java.security.cert.X509Certificate[] getCertificateChain(@NonNull android.content.Context, @NonNull String) throws java.lang.InterruptedException, android.security.KeyChainException; + method @NonNull @WorkerThread public static android.security.AppUriAuthenticationPolicy getCredentialManagementAppPolicy(@NonNull android.content.Context) throws java.lang.SecurityException; + method @Nullable @WorkerThread public static java.security.PrivateKey getPrivateKey(@NonNull android.content.Context, @NonNull String) throws java.lang.InterruptedException, android.security.KeyChainException; + method @Deprecated public static boolean isBoundKeyAlgorithm(@NonNull String); + method @WorkerThread public static boolean isCredentialManagementApp(@NonNull android.content.Context); + method public static boolean isKeyAlgorithmSupported(@NonNull String); + method @RequiresPermission(value="android.permission.MANAGE_CREDENTIAL_MANAGEMENT_APP", conditional=true) @WorkerThread public static boolean removeCredentialManagementApp(@NonNull android.content.Context); + field public static final String ACTION_KEYCHAIN_CHANGED = "android.security.action.KEYCHAIN_CHANGED"; + field public static final String ACTION_KEY_ACCESS_CHANGED = "android.security.action.KEY_ACCESS_CHANGED"; + field @Deprecated public static final String ACTION_STORAGE_CHANGED = "android.security.STORAGE_CHANGED"; + field public static final String ACTION_TRUST_STORE_CHANGED = "android.security.action.TRUST_STORE_CHANGED"; + field public static final String EXTRA_CERTIFICATE = "CERT"; + field public static final String EXTRA_KEY_ACCESSIBLE = "android.security.extra.KEY_ACCESSIBLE"; + field public static final String EXTRA_KEY_ALIAS = "android.security.extra.KEY_ALIAS"; + field public static final String EXTRA_NAME = "name"; + field public static final String EXTRA_PKCS12 = "PKCS12"; + field public static final String KEY_ALIAS_SELECTION_DENIED = "android:alias-selection-denied"; + } + + public interface KeyChainAliasCallback { + method public void alias(@Nullable String); + } + + public class KeyChainException extends java.lang.Exception { + ctor public KeyChainException(); + ctor public KeyChainException(String); + ctor public KeyChainException(String, Throwable); + ctor public KeyChainException(Throwable); + } + + @Deprecated public final class KeyPairGeneratorSpec implements java.security.spec.AlgorithmParameterSpec { + method @Deprecated @NonNull public java.security.spec.AlgorithmParameterSpec getAlgorithmParameterSpec(); + method @Deprecated public android.content.Context getContext(); + method @Deprecated @NonNull public java.util.Date getEndDate(); + method @Deprecated public int getKeySize(); + method @Deprecated @Nullable public String getKeyType(); + method @Deprecated public String getKeystoreAlias(); + method @Deprecated @NonNull public java.math.BigInteger getSerialNumber(); + method @Deprecated @NonNull public java.util.Date getStartDate(); + method @Deprecated @NonNull public javax.security.auth.x500.X500Principal getSubjectDN(); + method @Deprecated public boolean isEncryptionRequired(); + } + + @Deprecated public static final class KeyPairGeneratorSpec.Builder { + ctor @Deprecated public KeyPairGeneratorSpec.Builder(@NonNull android.content.Context); + method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec build(); + method @Deprecated public android.security.KeyPairGeneratorSpec.Builder setAlgorithmParameterSpec(@NonNull java.security.spec.AlgorithmParameterSpec); + method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setAlias(@NonNull String); + method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setEncryptionRequired(); + method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setEndDate(@NonNull java.util.Date); + method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setKeySize(int); + method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setKeyType(@NonNull String) throws java.security.NoSuchAlgorithmException; + method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setSerialNumber(@NonNull java.math.BigInteger); + method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setStartDate(@NonNull java.util.Date); + method @Deprecated @NonNull public android.security.KeyPairGeneratorSpec.Builder setSubject(@NonNull javax.security.auth.x500.X500Principal); + } + + public class KeyStoreException extends java.lang.Exception { + method public int getNumericErrorCode(); + method public int getRetryPolicy(); + method public boolean isSystemError(); + method public boolean isTransientFailure(); + method public boolean requiresUserAuthentication(); + field public static final int ERROR_ATTESTATION_CHALLENGE_TOO_LARGE = 9; // 0x9 + field public static final int ERROR_ATTESTATION_KEYS_UNAVAILABLE = 16; // 0x10 + field public static final int ERROR_ID_ATTESTATION_FAILURE = 8; // 0x8 + field public static final int ERROR_INCORRECT_USAGE = 13; // 0xd + field public static final int ERROR_INTERNAL_SYSTEM_ERROR = 4; // 0x4 + field public static final int ERROR_KEYMINT_FAILURE = 10; // 0xa + field public static final int ERROR_KEYSTORE_FAILURE = 11; // 0xb + field public static final int ERROR_KEYSTORE_UNINITIALIZED = 3; // 0x3 + field public static final int ERROR_KEY_CORRUPTED = 7; // 0x7 + field public static final int ERROR_KEY_DOES_NOT_EXIST = 6; // 0x6 + field public static final int ERROR_KEY_NOT_TEMPORALLY_VALID = 14; // 0xe + field public static final int ERROR_KEY_OPERATION_EXPIRED = 15; // 0xf + field public static final int ERROR_OTHER = 1; // 0x1 + field public static final int ERROR_PERMISSION_DENIED = 5; // 0x5 + field public static final int ERROR_UNIMPLEMENTED = 12; // 0xc + field public static final int ERROR_USER_AUTHENTICATION_REQUIRED = 2; // 0x2 + field public static final int RETRY_AFTER_NEXT_REBOOT = 4; // 0x4 + field public static final int RETRY_NEVER = 1; // 0x1 + field public static final int RETRY_WHEN_CONNECTIVITY_AVAILABLE = 3; // 0x3 + field public static final int RETRY_WITH_EXPONENTIAL_BACKOFF = 2; // 0x2 + } + + @Deprecated public final class KeyStoreParameter implements java.security.KeyStore.ProtectionParameter { + method @Deprecated public boolean isEncryptionRequired(); + } + + @Deprecated public static final class KeyStoreParameter.Builder { + ctor @Deprecated public KeyStoreParameter.Builder(@NonNull android.content.Context); + method @Deprecated @NonNull public android.security.KeyStoreParameter build(); + method @Deprecated @NonNull public android.security.KeyStoreParameter.Builder setEncryptionRequired(boolean); + } + + public class NetworkSecurityPolicy { + method public static android.security.NetworkSecurityPolicy getInstance(); + method @FlaggedApi("android.security.certificate_transparency_configuration") public boolean isCertificateTransparencyVerificationRequired(@NonNull String); + method public boolean isCleartextTrafficPermitted(); + method public boolean isCleartextTrafficPermitted(String); + } + +} + +package android.security.advancedprotection { + + @FlaggedApi("android.security.aapm_api") public final class AdvancedProtectionManager { + method @RequiresPermission(android.Manifest.permission.QUERY_ADVANCED_PROTECTION_MODE) public boolean isAdvancedProtectionEnabled(); + method @RequiresPermission(android.Manifest.permission.QUERY_ADVANCED_PROTECTION_MODE) public void registerAdvancedProtectionCallback(@NonNull java.util.concurrent.Executor, @NonNull android.security.advancedprotection.AdvancedProtectionManager.Callback); + method @RequiresPermission(android.Manifest.permission.QUERY_ADVANCED_PROTECTION_MODE) public void unregisterAdvancedProtectionCallback(@NonNull android.security.advancedprotection.AdvancedProtectionManager.Callback); + } + + @FlaggedApi("android.security.aapm_api") public static interface AdvancedProtectionManager.Callback { + method public void onAdvancedProtectionChanged(boolean); + } + +} + +package android.security.identity { + + public class AccessControlProfile { + } + + public static final class AccessControlProfile.Builder { + ctor public AccessControlProfile.Builder(@NonNull android.security.identity.AccessControlProfileId); + method @NonNull public android.security.identity.AccessControlProfile build(); + method @NonNull public android.security.identity.AccessControlProfile.Builder setReaderCertificate(@NonNull java.security.cert.X509Certificate); + method @NonNull public android.security.identity.AccessControlProfile.Builder setUserAuthenticationRequired(boolean); + method @NonNull public android.security.identity.AccessControlProfile.Builder setUserAuthenticationTimeout(long); + } + + public class AccessControlProfileId { + ctor public AccessControlProfileId(int); + method public int getId(); + } + + public class AlreadyPersonalizedException extends android.security.identity.IdentityCredentialException { + ctor public AlreadyPersonalizedException(@NonNull String); + ctor public AlreadyPersonalizedException(@NonNull String, @NonNull Throwable); + } + + public final class AuthenticationKeyMetadata { + method @NonNull public java.time.Instant getExpirationDate(); + method @IntRange(from=0) public int getUsageCount(); + } + + public class CipherSuiteNotSupportedException extends android.security.identity.IdentityCredentialException { + ctor public CipherSuiteNotSupportedException(@NonNull String); + ctor public CipherSuiteNotSupportedException(@NonNull String, @NonNull Throwable); + } + + public class CredentialDataRequest { + method @NonNull public java.util.Map> getDeviceSignedEntriesToRequest(); + method @NonNull public java.util.Map> getIssuerSignedEntriesToRequest(); + method @Nullable public byte[] getReaderSignature(); + method @Nullable public byte[] getRequestMessage(); + method public boolean isAllowUsingExhaustedKeys(); + method public boolean isAllowUsingExpiredKeys(); + method public boolean isIncrementUseCount(); + } + + public static final class CredentialDataRequest.Builder { + ctor public CredentialDataRequest.Builder(); + method @NonNull public android.security.identity.CredentialDataRequest build(); + method @NonNull public android.security.identity.CredentialDataRequest.Builder setAllowUsingExhaustedKeys(boolean); + method @NonNull public android.security.identity.CredentialDataRequest.Builder setAllowUsingExpiredKeys(boolean); + method @NonNull public android.security.identity.CredentialDataRequest.Builder setDeviceSignedEntriesToRequest(@NonNull java.util.Map>); + method @NonNull public android.security.identity.CredentialDataRequest.Builder setIncrementUseCount(boolean); + method @NonNull public android.security.identity.CredentialDataRequest.Builder setIssuerSignedEntriesToRequest(@NonNull java.util.Map>); + method @NonNull public android.security.identity.CredentialDataRequest.Builder setReaderSignature(@NonNull byte[]); + method @NonNull public android.security.identity.CredentialDataRequest.Builder setRequestMessage(@NonNull byte[]); + } + + public abstract class CredentialDataResult { + method @Nullable public abstract byte[] getDeviceMac(); + method @NonNull public abstract byte[] getDeviceNameSpaces(); + method @Nullable public byte[] getDeviceSignature(); + method @NonNull public abstract android.security.identity.CredentialDataResult.Entries getDeviceSignedEntries(); + method @NonNull public abstract android.security.identity.CredentialDataResult.Entries getIssuerSignedEntries(); + method @NonNull public abstract byte[] getStaticAuthenticationData(); + } + + public static interface CredentialDataResult.Entries { + method @Nullable public byte[] getEntry(@NonNull String, @NonNull String); + method @NonNull public java.util.Collection getEntryNames(@NonNull String); + method @NonNull public java.util.Collection getNamespaces(); + method @NonNull public java.util.Collection getRetrievedEntryNames(@NonNull String); + method public int getStatus(@NonNull String, @NonNull String); + field public static final int STATUS_NOT_IN_REQUEST_MESSAGE = 3; // 0x3 + field public static final int STATUS_NOT_REQUESTED = 2; // 0x2 + field public static final int STATUS_NO_ACCESS_CONTROL_PROFILES = 6; // 0x6 + field public static final int STATUS_NO_SUCH_ENTRY = 1; // 0x1 + field public static final int STATUS_OK = 0; // 0x0 + field public static final int STATUS_READER_AUTHENTICATION_FAILED = 5; // 0x5 + field public static final int STATUS_USER_AUTHENTICATION_FAILED = 4; // 0x4 + } + + public class DocTypeNotSupportedException extends android.security.identity.IdentityCredentialException { + ctor public DocTypeNotSupportedException(@NonNull String); + ctor public DocTypeNotSupportedException(@NonNull String, @NonNull Throwable); + } + + public class EphemeralPublicKeyNotFoundException extends android.security.identity.IdentityCredentialException { + ctor public EphemeralPublicKeyNotFoundException(@NonNull String); + ctor public EphemeralPublicKeyNotFoundException(@NonNull String, @NonNull Throwable); + } + + public abstract class IdentityCredential { + method @Deprecated @NonNull public abstract java.security.KeyPair createEphemeralKeyPair(); + method @Deprecated @NonNull public abstract byte[] decryptMessageFromReader(@NonNull byte[]) throws android.security.identity.MessageDecryptionException; + method @NonNull public byte[] delete(@NonNull byte[]); + method @Deprecated @NonNull public abstract byte[] encryptMessageToReader(@NonNull byte[]); + method @NonNull public abstract java.util.Collection getAuthKeysNeedingCertification(); + method @Deprecated @NonNull public abstract int[] getAuthenticationDataUsageCount(); + method @NonNull public java.util.List getAuthenticationKeyMetadata(); + method @NonNull public abstract java.util.Collection getCredentialKeyCertificateChain(); + method @Deprecated @NonNull public abstract android.security.identity.ResultData getEntries(@Nullable byte[], @NonNull java.util.Map>, @Nullable byte[], @Nullable byte[]) throws android.security.identity.EphemeralPublicKeyNotFoundException, android.security.identity.InvalidReaderSignatureException, android.security.identity.InvalidRequestMessageException, android.security.identity.NoAuthenticationKeyAvailableException, android.security.identity.SessionTranscriptMismatchException; + method @NonNull public byte[] proveOwnership(@NonNull byte[]); + method @Deprecated public abstract void setAllowUsingExhaustedKeys(boolean); + method @Deprecated public void setAllowUsingExpiredKeys(boolean); + method @Deprecated public abstract void setAvailableAuthenticationKeys(int, int); + method public void setAvailableAuthenticationKeys(@IntRange(from=0) int, @IntRange(from=1) int, @IntRange(from=0) long); + method @Deprecated public abstract void setReaderEphemeralPublicKey(@NonNull java.security.PublicKey) throws java.security.InvalidKeyException; + method @Deprecated public abstract void storeStaticAuthenticationData(@NonNull java.security.cert.X509Certificate, @NonNull byte[]) throws android.security.identity.UnknownAuthenticationKeyException; + method public void storeStaticAuthenticationData(@NonNull java.security.cert.X509Certificate, @NonNull java.time.Instant, @NonNull byte[]) throws android.security.identity.UnknownAuthenticationKeyException; + method @NonNull public byte[] update(@NonNull android.security.identity.PersonalizationData); + } + + public class IdentityCredentialException extends java.lang.Exception { + ctor public IdentityCredentialException(@NonNull String); + ctor public IdentityCredentialException(@NonNull String, @NonNull Throwable); + } + + public abstract class IdentityCredentialStore { + method @NonNull public abstract android.security.identity.WritableIdentityCredential createCredential(@NonNull String, @NonNull String) throws android.security.identity.AlreadyPersonalizedException, android.security.identity.DocTypeNotSupportedException; + method @NonNull public android.security.identity.PresentationSession createPresentationSession(int) throws android.security.identity.CipherSuiteNotSupportedException; + method @Deprecated @Nullable public abstract byte[] deleteCredentialByName(@NonNull String); + method @Nullable public abstract android.security.identity.IdentityCredential getCredentialByName(@NonNull String, int) throws android.security.identity.CipherSuiteNotSupportedException; + method @Nullable public static android.security.identity.IdentityCredentialStore getDirectAccessInstance(@NonNull android.content.Context); + method @Nullable public static android.security.identity.IdentityCredentialStore getInstance(@NonNull android.content.Context); + method @NonNull public abstract String[] getSupportedDocTypes(); + field public static final int CIPHERSUITE_ECDHE_HKDF_ECDSA_WITH_AES_256_GCM_SHA256 = 1; // 0x1 + } + + public class InvalidReaderSignatureException extends android.security.identity.IdentityCredentialException { + ctor public InvalidReaderSignatureException(@NonNull String); + ctor public InvalidReaderSignatureException(@NonNull String, @NonNull Throwable); + } + + public class InvalidRequestMessageException extends android.security.identity.IdentityCredentialException { + ctor public InvalidRequestMessageException(@NonNull String); + ctor public InvalidRequestMessageException(@NonNull String, @NonNull Throwable); + } + + public class MessageDecryptionException extends android.security.identity.IdentityCredentialException { + ctor public MessageDecryptionException(@NonNull String); + ctor public MessageDecryptionException(@NonNull String, @NonNull Throwable); + } + + public class NoAuthenticationKeyAvailableException extends android.security.identity.IdentityCredentialException { + ctor public NoAuthenticationKeyAvailableException(@NonNull String); + ctor public NoAuthenticationKeyAvailableException(@NonNull String, @NonNull Throwable); + } + + public class PersonalizationData { + } + + public static final class PersonalizationData.Builder { + ctor public PersonalizationData.Builder(); + method @NonNull public android.security.identity.PersonalizationData.Builder addAccessControlProfile(@NonNull android.security.identity.AccessControlProfile); + method @NonNull public android.security.identity.PersonalizationData build(); + method @NonNull public android.security.identity.PersonalizationData.Builder putEntry(@NonNull String, @NonNull String, @NonNull java.util.Collection, @NonNull byte[]); + } + + public abstract class PresentationSession { + method @Nullable public abstract android.security.identity.CredentialDataResult getCredentialData(@NonNull String, @NonNull android.security.identity.CredentialDataRequest) throws android.security.identity.EphemeralPublicKeyNotFoundException, android.security.identity.InvalidReaderSignatureException, android.security.identity.InvalidRequestMessageException, android.security.identity.NoAuthenticationKeyAvailableException; + method @NonNull public abstract java.security.KeyPair getEphemeralKeyPair(); + method public abstract void setReaderEphemeralPublicKey(@NonNull java.security.PublicKey) throws java.security.InvalidKeyException; + method public abstract void setSessionTranscript(@NonNull byte[]); + } + + @Deprecated public abstract class ResultData { + method @Deprecated @NonNull public abstract byte[] getAuthenticatedData(); + method @Deprecated @Nullable public abstract byte[] getEntry(@NonNull String, @NonNull String); + method @Deprecated @Nullable public abstract java.util.Collection getEntryNames(@NonNull String); + method @Deprecated @Nullable public abstract byte[] getMessageAuthenticationCode(); + method @Deprecated @NonNull public abstract java.util.Collection getNamespaces(); + method @Deprecated @Nullable public abstract java.util.Collection getRetrievedEntryNames(@NonNull String); + method @Deprecated @NonNull public abstract byte[] getStaticAuthenticationData(); + method @Deprecated public abstract int getStatus(@NonNull String, @NonNull String); + field @Deprecated public static final int STATUS_NOT_IN_REQUEST_MESSAGE = 3; // 0x3 + field @Deprecated public static final int STATUS_NOT_REQUESTED = 2; // 0x2 + field @Deprecated public static final int STATUS_NO_ACCESS_CONTROL_PROFILES = 6; // 0x6 + field @Deprecated public static final int STATUS_NO_SUCH_ENTRY = 1; // 0x1 + field @Deprecated public static final int STATUS_OK = 0; // 0x0 + field @Deprecated public static final int STATUS_READER_AUTHENTICATION_FAILED = 5; // 0x5 + field @Deprecated public static final int STATUS_USER_AUTHENTICATION_FAILED = 4; // 0x4 + } + + public class SessionTranscriptMismatchException extends android.security.identity.IdentityCredentialException { + ctor public SessionTranscriptMismatchException(@NonNull String); + ctor public SessionTranscriptMismatchException(@NonNull String, @NonNull Throwable); + } + + public class UnknownAuthenticationKeyException extends android.security.identity.IdentityCredentialException { + ctor public UnknownAuthenticationKeyException(@NonNull String); + ctor public UnknownAuthenticationKeyException(@NonNull String, @NonNull Throwable); + } + + public abstract class WritableIdentityCredential { + method @NonNull public abstract java.util.Collection getCredentialKeyCertificateChain(@NonNull byte[]); + method @NonNull public abstract byte[] personalize(@NonNull android.security.identity.PersonalizationData); + } + +} + +package android.security.keystore { + + public class BackendBusyException extends java.security.ProviderException { + ctor public BackendBusyException(long); + ctor public BackendBusyException(long, @NonNull String); + ctor public BackendBusyException(long, @NonNull String, @NonNull Throwable); + method public long getBackOffHintMillis(); + } + + public class KeyExpiredException extends java.security.InvalidKeyException { + ctor public KeyExpiredException(); + ctor public KeyExpiredException(String); + ctor public KeyExpiredException(String, Throwable); + } + + public final class KeyGenParameterSpec implements java.security.spec.AlgorithmParameterSpec { + method @Nullable public java.security.spec.AlgorithmParameterSpec getAlgorithmParameterSpec(); + method @Nullable public String getAttestKeyAlias(); + method public byte[] getAttestationChallenge(); + method @NonNull public String[] getBlockModes(); + method @NonNull public java.util.Date getCertificateNotAfter(); + method @NonNull public java.util.Date getCertificateNotBefore(); + method @NonNull public java.math.BigInteger getCertificateSerialNumber(); + method @NonNull public javax.security.auth.x500.X500Principal getCertificateSubject(); + method @NonNull public String[] getDigests(); + method @NonNull public String[] getEncryptionPaddings(); + method public int getKeySize(); + method @Nullable public java.util.Date getKeyValidityForConsumptionEnd(); + method @Nullable public java.util.Date getKeyValidityForOriginationEnd(); + method @Nullable public java.util.Date getKeyValidityStart(); + method @NonNull public String getKeystoreAlias(); + method public int getMaxUsageCount(); + method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public java.util.Set getMgf1Digests(); + method public int getPurposes(); + method @NonNull public String[] getSignaturePaddings(); + method public int getUserAuthenticationType(); + method public int getUserAuthenticationValidityDurationSeconds(); + method public boolean isDevicePropertiesAttestationIncluded(); + method @NonNull public boolean isDigestsSpecified(); + method public boolean isInvalidatedByBiometricEnrollment(); + method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public boolean isMgf1DigestsSpecified(); + method public boolean isRandomizedEncryptionRequired(); + method public boolean isStrongBoxBacked(); + method public boolean isUnlockedDeviceRequired(); + method public boolean isUserAuthenticationRequired(); + method public boolean isUserAuthenticationValidWhileOnBody(); + method public boolean isUserConfirmationRequired(); + method public boolean isUserPresenceRequired(); + } + + public static final class KeyGenParameterSpec.Builder { + ctor public KeyGenParameterSpec.Builder(@NonNull String, int); + method @NonNull public android.security.keystore.KeyGenParameterSpec build(); + method public android.security.keystore.KeyGenParameterSpec.Builder setAlgorithmParameterSpec(@NonNull java.security.spec.AlgorithmParameterSpec); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setAttestKeyAlias(@Nullable String); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setAttestationChallenge(byte[]); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setBlockModes(java.lang.String...); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setCertificateNotAfter(@NonNull java.util.Date); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setCertificateNotBefore(@NonNull java.util.Date); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setCertificateSerialNumber(@NonNull java.math.BigInteger); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setCertificateSubject(@NonNull javax.security.auth.x500.X500Principal); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setDevicePropertiesAttestationIncluded(boolean); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setDigests(java.lang.String...); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setEncryptionPaddings(java.lang.String...); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setInvalidatedByBiometricEnrollment(boolean); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setIsStrongBoxBacked(boolean); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeySize(int); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeyValidityEnd(java.util.Date); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeyValidityForConsumptionEnd(java.util.Date); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeyValidityForOriginationEnd(java.util.Date); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setKeyValidityStart(java.util.Date); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setMaxUsageCount(int); + method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setMgf1Digests(@NonNull java.lang.String...); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setRandomizedEncryptionRequired(boolean); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setSignaturePaddings(java.lang.String...); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUnlockedDeviceRequired(boolean); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationParameters(@IntRange(from=0) int, int); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationRequired(boolean); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationValidWhileOnBody(boolean); + method @Deprecated @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserAuthenticationValidityDurationSeconds(@IntRange(from=0xffffffff) int); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserConfirmationRequired(boolean); + method @NonNull public android.security.keystore.KeyGenParameterSpec.Builder setUserPresenceRequired(boolean); + } + + public class KeyInfo implements java.security.spec.KeySpec { + method @NonNull public String[] getBlockModes(); + method @NonNull public String[] getDigests(); + method @NonNull public String[] getEncryptionPaddings(); + method public int getKeySize(); + method @Nullable public java.util.Date getKeyValidityForConsumptionEnd(); + method @Nullable public java.util.Date getKeyValidityForOriginationEnd(); + method @Nullable public java.util.Date getKeyValidityStart(); + method public String getKeystoreAlias(); + method public int getOrigin(); + method public int getPurposes(); + method public int getRemainingUsageCount(); + method public int getSecurityLevel(); + method @NonNull public String[] getSignaturePaddings(); + method public int getUserAuthenticationType(); + method public int getUserAuthenticationValidityDurationSeconds(); + method @Deprecated public boolean isInsideSecureHardware(); + method public boolean isInvalidatedByBiometricEnrollment(); + method public boolean isTrustedUserPresenceRequired(); + method @FlaggedApi("android.security.keyinfo_unlocked_device_required") public boolean isUnlockedDeviceRequired(); + method public boolean isUserAuthenticationRequired(); + method public boolean isUserAuthenticationRequirementEnforcedBySecureHardware(); + method public boolean isUserAuthenticationValidWhileOnBody(); + method public boolean isUserConfirmationRequired(); + } + + public class KeyNotYetValidException extends java.security.InvalidKeyException { + ctor public KeyNotYetValidException(); + ctor public KeyNotYetValidException(String); + ctor public KeyNotYetValidException(String, Throwable); + } + + public class KeyPermanentlyInvalidatedException extends java.security.InvalidKeyException { + ctor public KeyPermanentlyInvalidatedException(); + ctor public KeyPermanentlyInvalidatedException(String); + ctor public KeyPermanentlyInvalidatedException(String, Throwable); + } + + public abstract class KeyProperties { + field public static final int AUTH_BIOMETRIC_STRONG = 2; // 0x2 + field public static final int AUTH_DEVICE_CREDENTIAL = 1; // 0x1 + field public static final String BLOCK_MODE_CBC = "CBC"; + field public static final String BLOCK_MODE_CTR = "CTR"; + field public static final String BLOCK_MODE_ECB = "ECB"; + field public static final String BLOCK_MODE_GCM = "GCM"; + field public static final String DIGEST_MD5 = "MD5"; + field public static final String DIGEST_NONE = "NONE"; + field public static final String DIGEST_SHA1 = "SHA-1"; + field public static final String DIGEST_SHA224 = "SHA-224"; + field public static final String DIGEST_SHA256 = "SHA-256"; + field public static final String DIGEST_SHA384 = "SHA-384"; + field public static final String DIGEST_SHA512 = "SHA-512"; + field public static final String ENCRYPTION_PADDING_NONE = "NoPadding"; + field public static final String ENCRYPTION_PADDING_PKCS7 = "PKCS7Padding"; + field public static final String ENCRYPTION_PADDING_RSA_OAEP = "OAEPPadding"; + field public static final String ENCRYPTION_PADDING_RSA_PKCS1 = "PKCS1Padding"; + field @Deprecated public static final String KEY_ALGORITHM_3DES = "DESede"; + field public static final String KEY_ALGORITHM_AES = "AES"; + field public static final String KEY_ALGORITHM_EC = "EC"; + field public static final String KEY_ALGORITHM_HMAC_SHA1 = "HmacSHA1"; + field public static final String KEY_ALGORITHM_HMAC_SHA224 = "HmacSHA224"; + field public static final String KEY_ALGORITHM_HMAC_SHA256 = "HmacSHA256"; + field public static final String KEY_ALGORITHM_HMAC_SHA384 = "HmacSHA384"; + field public static final String KEY_ALGORITHM_HMAC_SHA512 = "HmacSHA512"; + field public static final String KEY_ALGORITHM_RSA = "RSA"; + field public static final int ORIGIN_GENERATED = 1; // 0x1 + field public static final int ORIGIN_IMPORTED = 2; // 0x2 + field public static final int ORIGIN_SECURELY_IMPORTED = 8; // 0x8 + field public static final int ORIGIN_UNKNOWN = 4; // 0x4 + field public static final int PURPOSE_AGREE_KEY = 64; // 0x40 + field public static final int PURPOSE_ATTEST_KEY = 128; // 0x80 + field public static final int PURPOSE_DECRYPT = 2; // 0x2 + field public static final int PURPOSE_ENCRYPT = 1; // 0x1 + field public static final int PURPOSE_SIGN = 4; // 0x4 + field public static final int PURPOSE_VERIFY = 8; // 0x8 + field public static final int PURPOSE_WRAP_KEY = 32; // 0x20 + field public static final int SECURITY_LEVEL_SOFTWARE = 0; // 0x0 + field public static final int SECURITY_LEVEL_STRONGBOX = 2; // 0x2 + field public static final int SECURITY_LEVEL_TRUSTED_ENVIRONMENT = 1; // 0x1 + field public static final int SECURITY_LEVEL_UNKNOWN = -2; // 0xfffffffe + field public static final int SECURITY_LEVEL_UNKNOWN_SECURE = -1; // 0xffffffff + field public static final String SIGNATURE_PADDING_RSA_PKCS1 = "PKCS1"; + field public static final String SIGNATURE_PADDING_RSA_PSS = "PSS"; + field public static final int UNRESTRICTED_USAGE_COUNT = -1; // 0xffffffff + } + + public final class KeyProtection implements java.security.KeyStore.ProtectionParameter { + method @NonNull public String[] getBlockModes(); + method @NonNull public String[] getDigests(); + method @NonNull public String[] getEncryptionPaddings(); + method @Nullable public java.util.Date getKeyValidityForConsumptionEnd(); + method @Nullable public java.util.Date getKeyValidityForOriginationEnd(); + method @Nullable public java.util.Date getKeyValidityStart(); + method public int getMaxUsageCount(); + method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public java.util.Set getMgf1Digests(); + method public int getPurposes(); + method @NonNull public String[] getSignaturePaddings(); + method public int getUserAuthenticationType(); + method public int getUserAuthenticationValidityDurationSeconds(); + method public boolean isDigestsSpecified(); + method public boolean isInvalidatedByBiometricEnrollment(); + method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public boolean isMgf1DigestsSpecified(); + method public boolean isRandomizedEncryptionRequired(); + method public boolean isUnlockedDeviceRequired(); + method public boolean isUserAuthenticationRequired(); + method public boolean isUserAuthenticationValidWhileOnBody(); + method public boolean isUserConfirmationRequired(); + method public boolean isUserPresenceRequired(); + } + + public static final class KeyProtection.Builder { + ctor public KeyProtection.Builder(int); + method @NonNull public android.security.keystore.KeyProtection build(); + method @NonNull public android.security.keystore.KeyProtection.Builder setBlockModes(java.lang.String...); + method @NonNull public android.security.keystore.KeyProtection.Builder setDigests(java.lang.String...); + method @NonNull public android.security.keystore.KeyProtection.Builder setEncryptionPaddings(java.lang.String...); + method @NonNull public android.security.keystore.KeyProtection.Builder setInvalidatedByBiometricEnrollment(boolean); + method @NonNull public android.security.keystore.KeyProtection.Builder setIsStrongBoxBacked(boolean); + method @NonNull public android.security.keystore.KeyProtection.Builder setKeyValidityEnd(java.util.Date); + method @NonNull public android.security.keystore.KeyProtection.Builder setKeyValidityForConsumptionEnd(java.util.Date); + method @NonNull public android.security.keystore.KeyProtection.Builder setKeyValidityForOriginationEnd(java.util.Date); + method @NonNull public android.security.keystore.KeyProtection.Builder setKeyValidityStart(java.util.Date); + method @NonNull public android.security.keystore.KeyProtection.Builder setMaxUsageCount(int); + method @FlaggedApi("android.security.mgf1_digest_setter_v2") @NonNull public android.security.keystore.KeyProtection.Builder setMgf1Digests(@Nullable java.lang.String...); + method @NonNull public android.security.keystore.KeyProtection.Builder setRandomizedEncryptionRequired(boolean); + method @NonNull public android.security.keystore.KeyProtection.Builder setSignaturePaddings(java.lang.String...); + method @NonNull public android.security.keystore.KeyProtection.Builder setUnlockedDeviceRequired(boolean); + method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationParameters(@IntRange(from=0) int, int); + method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationRequired(boolean); + method @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationValidWhileOnBody(boolean); + method @Deprecated @NonNull public android.security.keystore.KeyProtection.Builder setUserAuthenticationValidityDurationSeconds(@IntRange(from=0xffffffff) int); + method @NonNull public android.security.keystore.KeyProtection.Builder setUserConfirmationRequired(boolean); + method @NonNull public android.security.keystore.KeyProtection.Builder setUserPresenceRequired(boolean); + } + + @FlaggedApi("android.security.keystore_grant_api") public final class KeyStoreManager { + method @NonNull public java.util.List getGrantedCertificateChainFromId(long) throws android.security.keystore.KeyPermanentlyInvalidatedException, java.security.UnrecoverableKeyException; + method @NonNull public java.security.Key getGrantedKeyFromId(long) throws android.security.keystore.KeyPermanentlyInvalidatedException, java.security.UnrecoverableKeyException; + method @NonNull public java.security.KeyPair getGrantedKeyPairFromId(long) throws android.security.keystore.KeyPermanentlyInvalidatedException, java.security.UnrecoverableKeyException; + method @FlaggedApi("android.security.keystore2.attest_modules") @NonNull public byte[] getSupplementaryAttestationInfo(int) throws android.security.KeyStoreException; + method public long grantKeyAccess(@NonNull String, int) throws android.security.KeyStoreException, java.security.UnrecoverableKeyException; + method public void revokeKeyAccess(@NonNull String, int) throws android.security.KeyStoreException, java.security.UnrecoverableKeyException; + field public static final int MODULE_HASH = -1879047468; // 0x900002d4 + } + + public class SecureKeyImportUnavailableException extends java.security.ProviderException { + ctor public SecureKeyImportUnavailableException(); + ctor public SecureKeyImportUnavailableException(String); + ctor public SecureKeyImportUnavailableException(String, Throwable); + ctor public SecureKeyImportUnavailableException(Throwable); + } + + public class StrongBoxUnavailableException extends java.security.ProviderException { + ctor public StrongBoxUnavailableException(); + ctor public StrongBoxUnavailableException(String); + ctor public StrongBoxUnavailableException(String, Throwable); + ctor public StrongBoxUnavailableException(Throwable); + } + + public class UserNotAuthenticatedException extends java.security.InvalidKeyException { + ctor public UserNotAuthenticatedException(); + ctor public UserNotAuthenticatedException(String); + ctor public UserNotAuthenticatedException(String, Throwable); + } + + public class UserPresenceUnavailableException extends java.security.InvalidKeyException { + ctor public UserPresenceUnavailableException(); + ctor public UserPresenceUnavailableException(String); + ctor public UserPresenceUnavailableException(String, Throwable); + } + + public class WrappedKeyEntry implements java.security.KeyStore.Entry { + ctor public WrappedKeyEntry(byte[], String, String, java.security.spec.AlgorithmParameterSpec); + method public java.security.spec.AlgorithmParameterSpec getAlgorithmParameterSpec(); + method public String getTransformation(); + method public byte[] getWrappedKeyBytes(); + method public String getWrappingKeyAlias(); + } + +} + +package android.service.assist.classification { + + public final class FieldClassification implements android.os.Parcelable { + ctor public FieldClassification(@NonNull android.view.autofill.AutofillId, @NonNull java.util.Set); + method public int describeContents(); + method @NonNull public android.view.autofill.AutofillId getAutofillId(); + method @NonNull public java.util.Set getHints(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.service.autofill { + + public abstract class AutofillService extends android.app.Service { + ctor public AutofillService(); + method @Deprecated @FlaggedApi("android.service.autofill.autofill_session_destroyed") @Nullable public final android.service.autofill.FillEventHistory getFillEventHistory(); + method public final android.os.IBinder onBind(android.content.Intent); + method public void onConnected(); + method public void onDisconnected(); + method public abstract void onFillRequest(@NonNull android.service.autofill.FillRequest, @NonNull android.os.CancellationSignal, @NonNull android.service.autofill.FillCallback); + method public abstract void onSaveRequest(@NonNull android.service.autofill.SaveRequest, @NonNull android.service.autofill.SaveCallback); + method public void onSavedDatasetsInfoRequest(@NonNull android.service.autofill.SavedDatasetsInfoCallback); + method @FlaggedApi("android.service.autofill.autofill_session_destroyed") public void onSessionDestroyed(@Nullable android.service.autofill.FillEventHistory); + field public static final String EXTRA_FILL_RESPONSE = "android.service.autofill.extra.FILL_RESPONSE"; + field public static final String SERVICE_INTERFACE = "android.service.autofill.AutofillService"; + field public static final String SERVICE_META_DATA = "android.autofill"; + } + + public final class BatchUpdates implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class BatchUpdates.Builder { + ctor public BatchUpdates.Builder(); + method public android.service.autofill.BatchUpdates build(); + method public android.service.autofill.BatchUpdates.Builder transformChild(int, @NonNull android.service.autofill.Transformation); + method public android.service.autofill.BatchUpdates.Builder updateTemplate(@NonNull android.widget.RemoteViews); + } + + public final class CharSequenceTransformation implements android.os.Parcelable android.service.autofill.Transformation { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class CharSequenceTransformation.Builder { + ctor public CharSequenceTransformation.Builder(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern, @NonNull String); + method public android.service.autofill.CharSequenceTransformation.Builder addField(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern, @NonNull String); + method public android.service.autofill.CharSequenceTransformation build(); + } + + public final class CustomDescription implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class CustomDescription.Builder { + ctor public CustomDescription.Builder(@NonNull android.widget.RemoteViews); + method @NonNull public android.service.autofill.CustomDescription.Builder addChild(int, @NonNull android.service.autofill.Transformation); + method @NonNull public android.service.autofill.CustomDescription.Builder addOnClickAction(int, @NonNull android.service.autofill.OnClickAction); + method @NonNull public android.service.autofill.CustomDescription.Builder batchUpdate(@NonNull android.service.autofill.Validator, @NonNull android.service.autofill.BatchUpdates); + method @NonNull public android.service.autofill.CustomDescription build(); + } + + public final class Dataset implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class Dataset.Builder { + ctor @Deprecated public Dataset.Builder(@NonNull android.widget.RemoteViews); + ctor public Dataset.Builder(@NonNull android.service.autofill.Presentations); + ctor public Dataset.Builder(); + method @NonNull public android.service.autofill.Dataset build(); + method @NonNull public android.service.autofill.Dataset.Builder setAuthentication(@Nullable android.content.IntentSender); + method @NonNull public android.service.autofill.Dataset.Builder setField(@NonNull android.view.autofill.AutofillId, @Nullable android.service.autofill.Field); + method @NonNull public android.service.autofill.Dataset.Builder setField(@NonNull String, @NonNull android.service.autofill.Field); + method @NonNull public android.service.autofill.Dataset.Builder setFieldForAllHints(@NonNull android.service.autofill.Field); + method @NonNull public android.service.autofill.Dataset.Builder setId(@Nullable String); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setInlinePresentation(@NonNull android.service.autofill.InlinePresentation); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setInlinePresentation(@NonNull android.service.autofill.InlinePresentation, @NonNull android.service.autofill.InlinePresentation); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @NonNull android.widget.RemoteViews); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.widget.RemoteViews); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation, @NonNull android.service.autofill.InlinePresentation); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation); + method @Deprecated @NonNull public android.service.autofill.Dataset.Builder setValue(@NonNull android.view.autofill.AutofillId, @Nullable android.view.autofill.AutofillValue, @Nullable java.util.regex.Pattern, @NonNull android.widget.RemoteViews, @NonNull android.service.autofill.InlinePresentation, @NonNull android.service.autofill.InlinePresentation); + } + + public final class DateTransformation implements android.os.Parcelable android.service.autofill.Transformation { + ctor public DateTransformation(@NonNull android.view.autofill.AutofillId, @NonNull android.icu.text.DateFormat); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class DateValueSanitizer implements android.os.Parcelable android.service.autofill.Sanitizer { + ctor public DateValueSanitizer(@NonNull android.icu.text.DateFormat); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class Field { + method @Nullable public java.util.regex.Pattern getFilter(); + method @Nullable public android.service.autofill.Presentations getPresentations(); + method @Nullable public android.view.autofill.AutofillValue getValue(); + } + + public static final class Field.Builder { + ctor public Field.Builder(); + method @NonNull public android.service.autofill.Field build(); + method @NonNull public android.service.autofill.Field.Builder setFilter(@Nullable java.util.regex.Pattern); + method @NonNull public android.service.autofill.Field.Builder setPresentations(@NonNull android.service.autofill.Presentations); + method @NonNull public android.service.autofill.Field.Builder setValue(@NonNull android.view.autofill.AutofillValue); + } + + public final class FieldClassification { + method @NonNull public java.util.List getMatches(); + } + + public static final class FieldClassification.Match { + method @NonNull public String getCategoryId(); + method public float getScore(); + } + + public final class FillCallback { + method public void onFailure(@Nullable CharSequence); + method public void onSuccess(@Nullable android.service.autofill.FillResponse); + } + + public final class FillContext implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.view.autofill.AutofillId getFocusedId(); + method public int getRequestId(); + method @NonNull public android.app.assist.AssistStructure getStructure(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class FillEventHistory implements android.os.Parcelable { + method public int describeContents(); + method @Deprecated @Nullable public android.os.Bundle getClientState(); + method @Nullable public java.util.List getEvents(); + method @FlaggedApi("android.service.autofill.autofill_w_metrics") public int getSessionId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class FillEventHistory.Event { + method @NonNull public java.util.Map getChangedFields(); + method @Nullable public android.os.Bundle getClientState(); + method @Nullable public String getDatasetId(); + method @NonNull public java.util.Map getFieldsClassification(); + method @FlaggedApi("android.service.autofill.autofill_w_metrics") @Nullable public android.view.autofill.AutofillId getFocusedId(); + method @NonNull public java.util.Set getIgnoredDatasetIds(); + method @NonNull public java.util.Map> getManuallyEnteredField(); + method public int getNoSaveUiReason(); + method @NonNull public java.util.Set getSelectedDatasetIds(); + method @FlaggedApi("android.service.autofill.autofill_w_metrics") @NonNull public java.util.Set getShownDatasetIds(); + method public int getType(); + method public int getUiType(); + field public static final int NO_SAVE_UI_REASON_DATASET_MATCH = 6; // 0x6 + field public static final int NO_SAVE_UI_REASON_FIELD_VALIDATION_FAILED = 5; // 0x5 + field public static final int NO_SAVE_UI_REASON_HAS_EMPTY_REQUIRED = 3; // 0x3 + field public static final int NO_SAVE_UI_REASON_NONE = 0; // 0x0 + field public static final int NO_SAVE_UI_REASON_NO_SAVE_INFO = 1; // 0x1 + field public static final int NO_SAVE_UI_REASON_NO_VALUE_CHANGED = 4; // 0x4 + field @FlaggedApi("android.service.autofill.autofill_w_metrics") public static final int NO_SAVE_UI_REASON_USING_CREDMAN = 7; // 0x7 + field public static final int NO_SAVE_UI_REASON_WITH_DELAY_SAVE_FLAG = 2; // 0x2 + field public static final int TYPE_AUTHENTICATION_SELECTED = 2; // 0x2 + field public static final int TYPE_CONTEXT_COMMITTED = 4; // 0x4 + field public static final int TYPE_DATASETS_SHOWN = 5; // 0x5 + field public static final int TYPE_DATASET_AUTHENTICATION_SELECTED = 1; // 0x1 + field public static final int TYPE_DATASET_SELECTED = 0; // 0x0 + field public static final int TYPE_SAVE_SHOWN = 3; // 0x3 + field public static final int TYPE_VIEW_REQUESTED_AUTOFILL = 6; // 0x6 + field @FlaggedApi("android.service.autofill.autofill_w_metrics") public static final int UI_TYPE_CREDENTIAL_MANAGER = 4; // 0x4 + field public static final int UI_TYPE_DIALOG = 3; // 0x3 + field public static final int UI_TYPE_INLINE = 2; // 0x2 + field public static final int UI_TYPE_MENU = 1; // 0x1 + field public static final int UI_TYPE_UNKNOWN = 0; // 0x0 + } + + public final class FillRequest implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.os.Bundle getClientState(); + method @Nullable public android.content.IntentSender getDelayedFillIntentSender(); + method @NonNull public java.util.List getFillContexts(); + method public int getFlags(); + method @NonNull public java.util.List getHints(); + method public int getId(); + method @Nullable public android.view.inputmethod.InlineSuggestionsRequest getInlineSuggestionsRequest(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_COMPATIBILITY_MODE_REQUEST = 2; // 0x2 + field public static final int FLAG_MANUAL_REQUEST = 1; // 0x1 + field @Deprecated @FlaggedApi("android.service.autofill.fill_dialog_improvements") public static final int FLAG_SUPPORTS_FILL_DIALOG = 64; // 0x40 + } + + public final class FillResponse implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_DELAY_FILL = 4; // 0x4 + field public static final int FLAG_DISABLE_ACTIVITY_ONLY = 2; // 0x2 + field public static final int FLAG_TRACK_CONTEXT_COMMITED = 1; // 0x1 + } + + public static final class FillResponse.Builder { + ctor public FillResponse.Builder(); + method @NonNull public android.service.autofill.FillResponse.Builder addDataset(@Nullable android.service.autofill.Dataset); + method @NonNull public android.service.autofill.FillResponse build(); + method @NonNull public android.service.autofill.FillResponse.Builder disableAutofill(long); + method @Deprecated @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.widget.RemoteViews); + method @Deprecated @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.widget.RemoteViews, @Nullable android.service.autofill.InlinePresentation); + method @Deprecated @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.widget.RemoteViews, @Nullable android.service.autofill.InlinePresentation, @Nullable android.service.autofill.InlinePresentation); + method @NonNull public android.service.autofill.FillResponse.Builder setAuthentication(@NonNull android.view.autofill.AutofillId[], @Nullable android.content.IntentSender, @Nullable android.service.autofill.Presentations); + method @NonNull public android.service.autofill.FillResponse.Builder setClientState(@Nullable android.os.Bundle); + method @NonNull public android.service.autofill.FillResponse.Builder setDetectedFieldClassifications(@NonNull java.util.Set); + method @NonNull public android.service.autofill.FillResponse.Builder setDialogHeader(@NonNull android.widget.RemoteViews); + method @NonNull public android.service.autofill.FillResponse.Builder setFieldClassificationIds(@NonNull android.view.autofill.AutofillId...); + method @NonNull public android.service.autofill.FillResponse.Builder setFillDialogTriggerIds(@NonNull android.view.autofill.AutofillId...); + method @NonNull public android.service.autofill.FillResponse.Builder setFlags(int); + method @NonNull public android.service.autofill.FillResponse.Builder setFooter(@NonNull android.widget.RemoteViews); + method @NonNull public android.service.autofill.FillResponse.Builder setHeader(@NonNull android.widget.RemoteViews); + method @NonNull public android.service.autofill.FillResponse.Builder setIconResourceId(@DrawableRes int); + method @NonNull public android.service.autofill.FillResponse.Builder setIgnoredIds(android.view.autofill.AutofillId...); + method @NonNull public android.service.autofill.FillResponse.Builder setPresentationCancelIds(@Nullable int[]); + method @NonNull public android.service.autofill.FillResponse.Builder setSaveInfo(@NonNull android.service.autofill.SaveInfo); + method @NonNull public android.service.autofill.FillResponse.Builder setServiceDisplayNameResourceId(@StringRes int); + method @NonNull public android.service.autofill.FillResponse.Builder setShowFillDialogIcon(boolean); + method @NonNull public android.service.autofill.FillResponse.Builder setShowSaveDialogIcon(boolean); + method @NonNull public android.service.autofill.FillResponse.Builder setUserData(@NonNull android.service.autofill.UserData); + } + + public final class ImageTransformation implements android.os.Parcelable android.service.autofill.Transformation { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class ImageTransformation.Builder { + ctor @Deprecated public ImageTransformation.Builder(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern, @DrawableRes int); + ctor public ImageTransformation.Builder(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern, @DrawableRes int, @NonNull CharSequence); + method @Deprecated public android.service.autofill.ImageTransformation.Builder addOption(@NonNull java.util.regex.Pattern, @DrawableRes int); + method public android.service.autofill.ImageTransformation.Builder addOption(@NonNull java.util.regex.Pattern, @DrawableRes int, @NonNull CharSequence); + method public android.service.autofill.ImageTransformation build(); + } + + public final class InlinePresentation implements android.os.Parcelable { + ctor public InlinePresentation(@NonNull android.app.slice.Slice, @NonNull android.widget.inline.InlinePresentationSpec, boolean); + method @NonNull public static android.service.autofill.InlinePresentation createTooltipPresentation(@NonNull android.app.slice.Slice, @NonNull android.widget.inline.InlinePresentationSpec); + method public int describeContents(); + method @NonNull public android.widget.inline.InlinePresentationSpec getInlinePresentationSpec(); + method @NonNull public android.app.slice.Slice getSlice(); + method public boolean isPinned(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class LuhnChecksumValidator implements android.os.Parcelable android.service.autofill.Validator { + ctor public LuhnChecksumValidator(@NonNull android.view.autofill.AutofillId...); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface OnClickAction { + } + + public final class Presentations { + method @Nullable public android.widget.RemoteViews getDialogPresentation(); + method @Nullable public android.service.autofill.InlinePresentation getInlinePresentation(); + method @Nullable public android.service.autofill.InlinePresentation getInlineTooltipPresentation(); + method @Nullable public android.widget.RemoteViews getMenuPresentation(); + } + + public static final class Presentations.Builder { + ctor public Presentations.Builder(); + method @NonNull public android.service.autofill.Presentations build(); + method @NonNull public android.service.autofill.Presentations.Builder setDialogPresentation(@NonNull android.widget.RemoteViews); + method @NonNull public android.service.autofill.Presentations.Builder setInlinePresentation(@NonNull android.service.autofill.InlinePresentation); + method @NonNull public android.service.autofill.Presentations.Builder setInlineTooltipPresentation(@NonNull android.service.autofill.InlinePresentation); + method @NonNull public android.service.autofill.Presentations.Builder setMenuPresentation(@NonNull android.widget.RemoteViews); + } + + public final class RegexValidator implements android.os.Parcelable android.service.autofill.Validator { + ctor public RegexValidator(@NonNull android.view.autofill.AutofillId, @NonNull java.util.regex.Pattern); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface Sanitizer { + } + + public final class SaveCallback { + method public void onFailure(CharSequence); + method public void onSuccess(); + method public void onSuccess(@NonNull android.content.IntentSender); + } + + public final class SaveInfo implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_DELAY_SAVE = 4; // 0x4 + field public static final int FLAG_DONT_SAVE_ON_FINISH = 2; // 0x2 + field public static final int FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE = 1; // 0x1 + field public static final int NEGATIVE_BUTTON_STYLE_CANCEL = 0; // 0x0 + field public static final int NEGATIVE_BUTTON_STYLE_NEVER = 2; // 0x2 + field public static final int NEGATIVE_BUTTON_STYLE_REJECT = 1; // 0x1 + field public static final int POSITIVE_BUTTON_STYLE_CONTINUE = 1; // 0x1 + field public static final int POSITIVE_BUTTON_STYLE_SAVE = 0; // 0x0 + field public static final int SAVE_DATA_TYPE_ADDRESS = 2; // 0x2 + field public static final int SAVE_DATA_TYPE_CREDIT_CARD = 4; // 0x4 + field public static final int SAVE_DATA_TYPE_DEBIT_CARD = 32; // 0x20 + field public static final int SAVE_DATA_TYPE_EMAIL_ADDRESS = 16; // 0x10 + field public static final int SAVE_DATA_TYPE_GENERIC = 0; // 0x0 + field public static final int SAVE_DATA_TYPE_GENERIC_CARD = 128; // 0x80 + field public static final int SAVE_DATA_TYPE_PASSWORD = 1; // 0x1 + field public static final int SAVE_DATA_TYPE_PAYMENT_CARD = 64; // 0x40 + field public static final int SAVE_DATA_TYPE_USERNAME = 8; // 0x8 + } + + public static final class SaveInfo.Builder { + ctor public SaveInfo.Builder(int, @NonNull android.view.autofill.AutofillId[]); + ctor public SaveInfo.Builder(int); + method @NonNull public android.service.autofill.SaveInfo.Builder addSanitizer(@NonNull android.service.autofill.Sanitizer, @NonNull android.view.autofill.AutofillId...); + method public android.service.autofill.SaveInfo build(); + method @NonNull public android.service.autofill.SaveInfo.Builder setCustomDescription(@NonNull android.service.autofill.CustomDescription); + method @NonNull public android.service.autofill.SaveInfo.Builder setDescription(@Nullable CharSequence); + method @NonNull public android.service.autofill.SaveInfo.Builder setFlags(int); + method @NonNull public android.service.autofill.SaveInfo.Builder setNegativeAction(int, @Nullable android.content.IntentSender); + method @NonNull public android.service.autofill.SaveInfo.Builder setOptionalIds(@NonNull android.view.autofill.AutofillId[]); + method @NonNull public android.service.autofill.SaveInfo.Builder setPositiveAction(int); + method @NonNull public android.service.autofill.SaveInfo.Builder setTriggerId(@NonNull android.view.autofill.AutofillId); + method @NonNull public android.service.autofill.SaveInfo.Builder setValidator(@NonNull android.service.autofill.Validator); + } + + public final class SaveRequest implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.os.Bundle getClientState(); + method @Nullable public java.util.List getDatasetIds(); + method @NonNull public java.util.List getFillContexts(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class SavedDatasetsInfo { + ctor public SavedDatasetsInfo(@NonNull String, @IntRange(from=0) int); + method @IntRange(from=0) public int getCount(); + method @NonNull public String getType(); + field public static final String TYPE_OTHER = "other"; + field public static final String TYPE_PASSWORDS = "passwords"; + } + + public interface SavedDatasetsInfoCallback { + method public void onError(int); + method public void onSuccess(@NonNull java.util.Set); + field public static final int ERROR_NEEDS_USER_ACTION = 2; // 0x2 + field public static final int ERROR_OTHER = 0; // 0x0 + field public static final int ERROR_UNSUPPORTED = 1; // 0x1 + } + + public final class TextValueSanitizer implements android.os.Parcelable android.service.autofill.Sanitizer { + ctor public TextValueSanitizer(@NonNull java.util.regex.Pattern, @NonNull String); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface Transformation { + } + + public final class UserData implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getFieldClassificationAlgorithm(); + method @Nullable public String getFieldClassificationAlgorithmForCategory(@NonNull String); + method public String getId(); + method public static int getMaxCategoryCount(); + method public static int getMaxFieldClassificationIdsSize(); + method public static int getMaxUserDataSize(); + method public static int getMaxValueLength(); + method public static int getMinValueLength(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class UserData.Builder { + ctor public UserData.Builder(@NonNull String, @NonNull String, @NonNull String); + method @NonNull public android.service.autofill.UserData.Builder add(@NonNull String, @NonNull String); + method @NonNull public android.service.autofill.UserData build(); + method @NonNull public android.service.autofill.UserData.Builder setFieldClassificationAlgorithm(@Nullable String, @Nullable android.os.Bundle); + method @NonNull public android.service.autofill.UserData.Builder setFieldClassificationAlgorithmForCategory(@NonNull String, @Nullable String, @Nullable android.os.Bundle); + } + + public interface Validator { + } + + public final class Validators { + method @NonNull public static android.service.autofill.Validator and(@NonNull android.service.autofill.Validator...); + method @NonNull public static android.service.autofill.Validator not(@NonNull android.service.autofill.Validator); + method @NonNull public static android.service.autofill.Validator or(@NonNull android.service.autofill.Validator...); + } + + public final class VisibilitySetterAction implements android.service.autofill.OnClickAction android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class VisibilitySetterAction.Builder { + ctor public VisibilitySetterAction.Builder(@IdRes int, int); + method @NonNull public android.service.autofill.VisibilitySetterAction build(); + method @NonNull public android.service.autofill.VisibilitySetterAction.Builder setVisibility(@IdRes int, int); + } + +} + +package android.service.carrier { + + public class CarrierIdentifier implements android.os.Parcelable { + ctor public CarrierIdentifier(String, String, @Nullable String, @Nullable String, @Nullable String, @Nullable String); + ctor public CarrierIdentifier(@NonNull String, @NonNull String, @Nullable String, @Nullable String, @Nullable String, @Nullable String, int, int); + ctor public CarrierIdentifier(byte[], @Nullable String, @Nullable String); + method public int describeContents(); + method public int getCarrierId(); + method @Nullable public String getGid1(); + method @Nullable public String getGid2(); + method @Nullable public String getImsi(); + method public String getMcc(); + method public String getMnc(); + method public int getSpecificCarrierId(); + method @Nullable public String getSpn(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class CarrierMessagingClientService extends android.app.Service { + ctor public CarrierMessagingClientService(); + method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent); + } + + public abstract class CarrierMessagingService extends android.app.Service { + ctor public CarrierMessagingService(); + method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); + method public void onDownloadMms(@NonNull android.net.Uri, int, @NonNull android.net.Uri, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + method @Deprecated public void onFilterSms(@NonNull android.service.carrier.MessagePdu, @NonNull String, int, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + method public void onReceiveTextSms(@NonNull android.service.carrier.MessagePdu, @NonNull String, int, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + method @Deprecated public void onSendDataSms(@NonNull byte[], int, @NonNull String, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + method public void onSendDataSms(@NonNull byte[], int, @NonNull String, int, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + method public void onSendMms(@NonNull android.net.Uri, int, @Nullable android.net.Uri, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + method @Deprecated public void onSendMultipartTextSms(@NonNull java.util.List, int, @NonNull String, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + method public void onSendMultipartTextSms(@NonNull java.util.List, int, @NonNull String, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + method @Deprecated public void onSendTextSms(@NonNull String, int, @NonNull String, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + method public void onSendTextSms(@NonNull String, int, @NonNull String, int, @NonNull android.service.carrier.CarrierMessagingService.ResultCallback); + field public static final int DOWNLOAD_STATUS_ERROR = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_CONFIGURATION_ERROR = 606; // 0x25e + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_DATA_DISABLED = 610; // 0x262 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_HTTP_FAILURE = 603; // 0x25b + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_INACTIVE_SUBSCRIPTION = 609; // 0x261 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_INVALID_APN = 601; // 0x259 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_INVALID_SUBSCRIPTION_ID = 608; // 0x260 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_IO_ERROR = 604; // 0x25c + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_MMS_DISABLED_BY_CARRIER = 611; // 0x263 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_NO_DATA_NETWORK = 607; // 0x25f + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_RETRY = 605; // 0x25d + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_UNABLE_CONNECT_MMS = 602; // 0x25a + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int DOWNLOAD_STATUS_MMS_ERROR_UNSPECIFIED = 600; // 0x258 + field public static final int DOWNLOAD_STATUS_OK = 0; // 0x0 + field public static final int DOWNLOAD_STATUS_RETRY_ON_CARRIER_NETWORK = 1; // 0x1 + field public static final int RECEIVE_OPTIONS_DEFAULT = 0; // 0x0 + field public static final int RECEIVE_OPTIONS_DROP = 1; // 0x1 + field public static final int RECEIVE_OPTIONS_SKIP_NOTIFY_WHEN_CREDENTIAL_PROTECTED_STORAGE_UNAVAILABLE = 2; // 0x2 + field public static final int SEND_FLAG_REQUEST_DELIVERY_STATUS = 1; // 0x1 + field public static final int SEND_STATUS_ERROR = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_CONFIGURATION_ERROR = 406; // 0x196 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_DATA_DISABLED = 410; // 0x19a + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_HTTP_FAILURE = 403; // 0x193 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_INACTIVE_SUBSCRIPTION = 409; // 0x199 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_INVALID_APN = 401; // 0x191 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_INVALID_SUBSCRIPTION_ID = 408; // 0x198 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_IO_ERROR = 404; // 0x194 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_MMS_DISABLED_BY_CARRIER = 411; // 0x19b + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_NO_DATA_NETWORK = 407; // 0x197 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_RETRY = 405; // 0x195 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_UNABLE_CONNECT_MMS = 402; // 0x192 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_MMS_ERROR_UNSPECIFIED = 400; // 0x190 + field public static final int SEND_STATUS_OK = 0; // 0x0 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_CANCELLED = 215; // 0xd7 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ENCODING_ERROR = 212; // 0xd4 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_FDN_CHECK_FAILURE = 204; // 0xcc + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_GENERIC_FAILURE = 200; // 0xc8 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_LIMIT_EXCEEDED = 203; // 0xcb + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_NO_SERVICE = 202; // 0xca + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_NULL_PDU = 201; // 0xc9 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_SHORT_CODE_NEVER_ALLOWED = 206; // 0xce + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_ERROR_SHORT_CODE_NOT_ALLOWED = 205; // 0xcd + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_INVALID_ARGUMENTS = 208; // 0xd0 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_INVALID_SMSC_ADDRESS = 213; // 0xd5 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_INVALID_SMS_FORMAT = 210; // 0xd2 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_INVALID_STATE = 209; // 0xd1 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_NETWORK_ERROR = 211; // 0xd3 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_NETWORK_REJECT = 207; // 0xcf + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_OPERATION_NOT_ALLOWED = 214; // 0xd6 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_REQUEST_NOT_SUPPORTED = 216; // 0xd8 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_SMS_BLOCKED_DURING_EMERGENCY = 217; // 0xd9 + field @FlaggedApi("com.android.internal.telephony.flags.temporary_failures_in_carrier_messaging_service") public static final int SEND_STATUS_RESULT_SMS_SEND_RETRY_FAILED = 218; // 0xda + field public static final int SEND_STATUS_RETRY_ON_CARRIER_NETWORK = 1; // 0x1 + field public static final String SERVICE_INTERFACE = "android.service.carrier.CarrierMessagingService"; + } + + public static interface CarrierMessagingService.ResultCallback { + method public void onReceiveResult(@NonNull T) throws android.os.RemoteException; + } + + public static final class CarrierMessagingService.SendMmsResult { + ctor public CarrierMessagingService.SendMmsResult(int, @Nullable byte[]); + method @Nullable public byte[] getSendConfPdu(); + method public int getSendStatus(); + } + + public static final class CarrierMessagingService.SendMultipartSmsResult { + ctor public CarrierMessagingService.SendMultipartSmsResult(int, @Nullable int[]); + method @Nullable public int[] getMessageRefs(); + method public int getSendStatus(); + } + + public static final class CarrierMessagingService.SendSmsResult { + ctor public CarrierMessagingService.SendSmsResult(int, int); + method public int getMessageRef(); + method public int getSendStatus(); + } + + public abstract class CarrierService extends android.app.Service { + ctor public CarrierService(); + method @Deprecated public final void notifyCarrierNetworkChange(boolean); + method public final void notifyCarrierNetworkChange(int, boolean); + method @CallSuper public android.os.IBinder onBind(android.content.Intent); + method @Deprecated public abstract android.os.PersistableBundle onLoadConfig(android.service.carrier.CarrierIdentifier); + method @Nullable public android.os.PersistableBundle onLoadConfig(int, @Nullable android.service.carrier.CarrierIdentifier); + field public static final String CARRIER_SERVICE_INTERFACE = "android.service.carrier.CarrierService"; + } + + public final class MessagePdu implements android.os.Parcelable { + ctor public MessagePdu(@NonNull java.util.List); + method public int describeContents(); + method @NonNull public java.util.List getPdus(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.service.chooser { + + public interface AdditionalContentContract { + } + + public static interface AdditionalContentContract.Columns { + field public static final String URI = "uri"; + } + + public static interface AdditionalContentContract.CursorExtraKeys { + field public static final String POSITION = "position"; + } + + public static interface AdditionalContentContract.MethodNames { + field public static final String ON_SELECTION_CHANGED = "onSelectionChanged"; + } + + public final class ChooserAction implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.app.PendingIntent getAction(); + method @NonNull public android.graphics.drawable.Icon getIcon(); + method @NonNull public CharSequence getLabel(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class ChooserAction.Builder { + ctor public ChooserAction.Builder(@NonNull android.graphics.drawable.Icon, @NonNull CharSequence, @NonNull android.app.PendingIntent); + method @NonNull public android.service.chooser.ChooserAction build(); + } + + public final class ChooserResult implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.content.ComponentName getSelectedComponent(); + method public int getType(); + method public boolean isShortcut(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CHOOSER_RESULT_COPY = 1; // 0x1 + field public static final int CHOOSER_RESULT_EDIT = 2; // 0x2 + field public static final int CHOOSER_RESULT_SELECTED_COMPONENT = 0; // 0x0 + field public static final int CHOOSER_RESULT_UNKNOWN = -1; // 0xffffffff + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @Deprecated public final class ChooserTarget implements android.os.Parcelable { + ctor @Deprecated public ChooserTarget(CharSequence, android.graphics.drawable.Icon, float, android.content.ComponentName, @Nullable android.os.Bundle); + method @Deprecated public int describeContents(); + method @Deprecated public android.content.ComponentName getComponentName(); + method @Deprecated public android.graphics.drawable.Icon getIcon(); + method @Deprecated public android.os.Bundle getIntentExtras(); + method @Deprecated public float getScore(); + method @Deprecated public CharSequence getTitle(); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @Deprecated public abstract class ChooserTargetService extends android.app.Service { + ctor @Deprecated public ChooserTargetService(); + method @Deprecated public android.os.IBinder onBind(android.content.Intent); + method @Deprecated public abstract java.util.List onGetChooserTargets(android.content.ComponentName, android.content.IntentFilter); + field @Deprecated public static final String BIND_PERMISSION = "android.permission.BIND_CHOOSER_TARGET_SERVICE"; + field @Deprecated public static final String META_DATA_NAME = "android.service.chooser.chooser_target_service"; + field @Deprecated public static final String SERVICE_INTERFACE = "android.service.chooser.ChooserTargetService"; + } + +} + +package android.service.controls { + + public final class Control implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.app.PendingIntent getAppIntent(); + method @NonNull public String getControlId(); + method @NonNull public android.service.controls.templates.ControlTemplate getControlTemplate(); + method @Nullable public android.content.res.ColorStateList getCustomColor(); + method @Nullable public android.graphics.drawable.Icon getCustomIcon(); + method public int getDeviceType(); + method public int getStatus(); + method @NonNull public CharSequence getStatusText(); + method @Nullable public CharSequence getStructure(); + method @NonNull public CharSequence getSubtitle(); + method @NonNull public CharSequence getTitle(); + method @Nullable public CharSequence getZone(); + method public boolean isAuthRequired(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STATUS_DISABLED = 4; // 0x4 + field public static final int STATUS_ERROR = 3; // 0x3 + field public static final int STATUS_NOT_FOUND = 2; // 0x2 + field public static final int STATUS_OK = 1; // 0x1 + field public static final int STATUS_UNKNOWN = 0; // 0x0 + } + + public static final class Control.StatefulBuilder { + ctor public Control.StatefulBuilder(@NonNull String, @NonNull android.app.PendingIntent); + ctor public Control.StatefulBuilder(@NonNull android.service.controls.Control); + method @NonNull public android.service.controls.Control build(); + method @NonNull public android.service.controls.Control.StatefulBuilder setAppIntent(@NonNull android.app.PendingIntent); + method @NonNull public android.service.controls.Control.StatefulBuilder setAuthRequired(boolean); + method @NonNull public android.service.controls.Control.StatefulBuilder setControlId(@NonNull String); + method @NonNull public android.service.controls.Control.StatefulBuilder setControlTemplate(@NonNull android.service.controls.templates.ControlTemplate); + method @NonNull public android.service.controls.Control.StatefulBuilder setCustomColor(@Nullable android.content.res.ColorStateList); + method @NonNull public android.service.controls.Control.StatefulBuilder setCustomIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.service.controls.Control.StatefulBuilder setDeviceType(int); + method @NonNull public android.service.controls.Control.StatefulBuilder setStatus(int); + method @NonNull public android.service.controls.Control.StatefulBuilder setStatusText(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatefulBuilder setStructure(@Nullable CharSequence); + method @NonNull public android.service.controls.Control.StatefulBuilder setSubtitle(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatefulBuilder setTitle(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatefulBuilder setZone(@Nullable CharSequence); + } + + public static final class Control.StatelessBuilder { + ctor public Control.StatelessBuilder(@NonNull String, @NonNull android.app.PendingIntent); + ctor public Control.StatelessBuilder(@NonNull android.service.controls.Control); + method @NonNull public android.service.controls.Control build(); + method @NonNull public android.service.controls.Control.StatelessBuilder setAppIntent(@NonNull android.app.PendingIntent); + method @NonNull public android.service.controls.Control.StatelessBuilder setControlId(@NonNull String); + method @NonNull public android.service.controls.Control.StatelessBuilder setCustomColor(@Nullable android.content.res.ColorStateList); + method @NonNull public android.service.controls.Control.StatelessBuilder setCustomIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.service.controls.Control.StatelessBuilder setDeviceType(int); + method @NonNull public android.service.controls.Control.StatelessBuilder setStructure(@Nullable CharSequence); + method @NonNull public android.service.controls.Control.StatelessBuilder setSubtitle(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatelessBuilder setTitle(@NonNull CharSequence); + method @NonNull public android.service.controls.Control.StatelessBuilder setZone(@Nullable CharSequence); + } + + public abstract class ControlsProviderService extends android.app.Service { + ctor public ControlsProviderService(); + method @NonNull public abstract java.util.concurrent.Flow.Publisher createPublisherFor(@NonNull java.util.List); + method @NonNull public abstract java.util.concurrent.Flow.Publisher createPublisherForAllAvailable(); + method @Nullable public java.util.concurrent.Flow.Publisher createPublisherForSuggested(); + method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent); + method public final boolean onUnbind(@NonNull android.content.Intent); + method public abstract void performControlAction(@NonNull String, @NonNull android.service.controls.actions.ControlAction, @NonNull java.util.function.Consumer); + method public static void requestAddControl(@NonNull android.content.Context, @NonNull android.content.ComponentName, @NonNull android.service.controls.Control); + field @FlaggedApi("android.service.controls.flags.home_panel_dream") public static final int CONTROLS_SURFACE_ACTIVITY_PANEL = 0; // 0x0 + field @FlaggedApi("android.service.controls.flags.home_panel_dream") public static final int CONTROLS_SURFACE_DREAM = 1; // 0x1 + field @FlaggedApi("android.service.controls.flags.home_panel_dream") public static final String EXTRA_CONTROLS_SURFACE = "android.service.controls.extra.CONTROLS_SURFACE"; + field public static final String EXTRA_LOCKSCREEN_ALLOW_TRIVIAL_CONTROLS = "android.service.controls.extra.LOCKSCREEN_ALLOW_TRIVIAL_CONTROLS"; + field public static final String META_DATA_PANEL_ACTIVITY = "android.service.controls.META_DATA_PANEL_ACTIVITY"; + field public static final String SERVICE_CONTROLS = "android.service.controls.ControlsProviderService"; + field @NonNull public static final String TAG = "ControlsProviderService"; + } + + public class DeviceTypes { + method public static boolean validDeviceType(int); + field public static final int TYPE_AC_HEATER = 1; // 0x1 + field public static final int TYPE_AC_UNIT = 2; // 0x2 + field public static final int TYPE_AIR_FRESHENER = 3; // 0x3 + field public static final int TYPE_AIR_PURIFIER = 4; // 0x4 + field public static final int TYPE_AWNING = 33; // 0x21 + field public static final int TYPE_BLINDS = 34; // 0x22 + field public static final int TYPE_CAMERA = 50; // 0x32 + field public static final int TYPE_CLOSET = 35; // 0x23 + field public static final int TYPE_COFFEE_MAKER = 5; // 0x5 + field public static final int TYPE_CURTAIN = 36; // 0x24 + field public static final int TYPE_DEHUMIDIFIER = 6; // 0x6 + field public static final int TYPE_DISHWASHER = 24; // 0x18 + field public static final int TYPE_DISPLAY = 7; // 0x7 + field public static final int TYPE_DOOR = 37; // 0x25 + field public static final int TYPE_DOORBELL = 51; // 0x33 + field public static final int TYPE_DRAWER = 38; // 0x26 + field public static final int TYPE_DRYER = 25; // 0x19 + field public static final int TYPE_FAN = 8; // 0x8 + field public static final int TYPE_GARAGE = 39; // 0x27 + field public static final int TYPE_GATE = 40; // 0x28 + field public static final int TYPE_GENERIC_ARM_DISARM = -5; // 0xfffffffb + field public static final int TYPE_GENERIC_LOCK_UNLOCK = -4; // 0xfffffffc + field public static final int TYPE_GENERIC_ON_OFF = -1; // 0xffffffff + field public static final int TYPE_GENERIC_OPEN_CLOSE = -3; // 0xfffffffd + field public static final int TYPE_GENERIC_START_STOP = -2; // 0xfffffffe + field public static final int TYPE_GENERIC_TEMP_SETTING = -6; // 0xfffffffa + field public static final int TYPE_GENERIC_VIEWSTREAM = -7; // 0xfffffff9 + field public static final int TYPE_HEATER = 47; // 0x2f + field public static final int TYPE_HOOD = 10; // 0xa + field public static final int TYPE_HUMIDIFIER = 11; // 0xb + field public static final int TYPE_KETTLE = 12; // 0xc + field public static final int TYPE_LIGHT = 13; // 0xd + field public static final int TYPE_LOCK = 45; // 0x2d + field public static final int TYPE_MICROWAVE = 14; // 0xe + field public static final int TYPE_MOP = 26; // 0x1a + field public static final int TYPE_MOWER = 27; // 0x1b + field public static final int TYPE_MULTICOOKER = 28; // 0x1c + field public static final int TYPE_OUTLET = 15; // 0xf + field public static final int TYPE_PERGOLA = 41; // 0x29 + field public static final int TYPE_RADIATOR = 16; // 0x10 + field public static final int TYPE_REFRIGERATOR = 48; // 0x30 + field public static final int TYPE_REMOTE_CONTROL = 17; // 0x11 + field public static final int TYPE_ROUTINE = 52; // 0x34 + field public static final int TYPE_SECURITY_SYSTEM = 46; // 0x2e + field public static final int TYPE_SET_TOP = 18; // 0x12 + field public static final int TYPE_SHOWER = 29; // 0x1d + field public static final int TYPE_SHUTTER = 42; // 0x2a + field public static final int TYPE_SPRINKLER = 30; // 0x1e + field public static final int TYPE_STANDMIXER = 19; // 0x13 + field public static final int TYPE_STYLER = 20; // 0x14 + field public static final int TYPE_SWITCH = 21; // 0x15 + field public static final int TYPE_THERMOSTAT = 49; // 0x31 + field public static final int TYPE_TV = 22; // 0x16 + field public static final int TYPE_UNKNOWN = 0; // 0x0 + field public static final int TYPE_VACUUM = 32; // 0x20 + field public static final int TYPE_VALVE = 44; // 0x2c + field public static final int TYPE_WASHER = 31; // 0x1f + field public static final int TYPE_WATER_HEATER = 23; // 0x17 + field public static final int TYPE_WINDOW = 43; // 0x2b + } + +} + +package android.service.controls.actions { + + public final class BooleanAction extends android.service.controls.actions.ControlAction { + ctor public BooleanAction(@NonNull String, boolean); + ctor public BooleanAction(@NonNull String, boolean, @Nullable String); + method public int getActionType(); + method public boolean getNewState(); + } + + public final class CommandAction extends android.service.controls.actions.ControlAction { + ctor public CommandAction(@NonNull String, @Nullable String); + ctor public CommandAction(@NonNull String); + method public int getActionType(); + } + + public abstract class ControlAction { + method public abstract int getActionType(); + method @Nullable public String getChallengeValue(); + method @NonNull public static android.service.controls.actions.ControlAction getErrorAction(); + method @NonNull public String getTemplateId(); + method public static final boolean isValidResponse(int); + field public static final int RESPONSE_CHALLENGE_ACK = 3; // 0x3 + field public static final int RESPONSE_CHALLENGE_PASSPHRASE = 5; // 0x5 + field public static final int RESPONSE_CHALLENGE_PIN = 4; // 0x4 + field public static final int RESPONSE_FAIL = 2; // 0x2 + field public static final int RESPONSE_OK = 1; // 0x1 + field public static final int RESPONSE_UNKNOWN = 0; // 0x0 + field public static final int TYPE_BOOLEAN = 1; // 0x1 + field public static final int TYPE_COMMAND = 5; // 0x5 + field public static final int TYPE_ERROR = -1; // 0xffffffff + field public static final int TYPE_FLOAT = 2; // 0x2 + field public static final int TYPE_MODE = 4; // 0x4 + } + + public final class FloatAction extends android.service.controls.actions.ControlAction { + ctor public FloatAction(@NonNull String, float); + ctor public FloatAction(@NonNull String, float, @Nullable String); + method public int getActionType(); + method public float getNewValue(); + } + + public final class ModeAction extends android.service.controls.actions.ControlAction { + ctor public ModeAction(@NonNull String, int, @Nullable String); + ctor public ModeAction(@NonNull String, int); + method public int getActionType(); + method public int getNewMode(); + } + +} + +package android.service.controls.templates { + + public final class ControlButton implements android.os.Parcelable { + ctor public ControlButton(boolean, @NonNull CharSequence); + method public int describeContents(); + method @NonNull public CharSequence getActionDescription(); + method public boolean isChecked(); + method @NonNull public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class ControlTemplate { + method @NonNull public static android.service.controls.templates.ControlTemplate getErrorTemplate(); + method @NonNull public static android.service.controls.templates.ControlTemplate getNoTemplateObject(); + method @NonNull public String getTemplateId(); + method public abstract int getTemplateType(); + field public static final int TYPE_ERROR = -1; // 0xffffffff + field public static final int TYPE_NO_TEMPLATE = 0; // 0x0 + field public static final int TYPE_RANGE = 2; // 0x2 + field public static final int TYPE_STATELESS = 8; // 0x8 + field public static final int TYPE_TEMPERATURE = 7; // 0x7 + field public static final int TYPE_THUMBNAIL = 3; // 0x3 + field public static final int TYPE_TOGGLE = 1; // 0x1 + field public static final int TYPE_TOGGLE_RANGE = 6; // 0x6 + } + + public final class RangeTemplate extends android.service.controls.templates.ControlTemplate { + ctor public RangeTemplate(@NonNull String, float, float, float, float, @Nullable CharSequence); + method public float getCurrentValue(); + method @NonNull public CharSequence getFormatString(); + method public float getMaxValue(); + method public float getMinValue(); + method public float getStepValue(); + method public int getTemplateType(); + } + + public final class StatelessTemplate extends android.service.controls.templates.ControlTemplate { + ctor public StatelessTemplate(@NonNull String); + method public int getTemplateType(); + } + + public final class TemperatureControlTemplate extends android.service.controls.templates.ControlTemplate { + ctor public TemperatureControlTemplate(@NonNull String, @NonNull android.service.controls.templates.ControlTemplate, int, int, int); + method public int getCurrentActiveMode(); + method public int getCurrentMode(); + method public int getModes(); + method @NonNull public android.service.controls.templates.ControlTemplate getTemplate(); + method public int getTemplateType(); + field public static final int FLAG_MODE_COOL = 8; // 0x8 + field public static final int FLAG_MODE_ECO = 32; // 0x20 + field public static final int FLAG_MODE_HEAT = 4; // 0x4 + field public static final int FLAG_MODE_HEAT_COOL = 16; // 0x10 + field public static final int FLAG_MODE_OFF = 2; // 0x2 + field public static final int MODE_COOL = 3; // 0x3 + field public static final int MODE_ECO = 5; // 0x5 + field public static final int MODE_HEAT = 2; // 0x2 + field public static final int MODE_HEAT_COOL = 4; // 0x4 + field public static final int MODE_OFF = 1; // 0x1 + field public static final int MODE_UNKNOWN = 0; // 0x0 + } + + public final class ThumbnailTemplate extends android.service.controls.templates.ControlTemplate { + ctor public ThumbnailTemplate(@NonNull String, boolean, @NonNull android.graphics.drawable.Icon, @NonNull CharSequence); + method @NonNull public CharSequence getContentDescription(); + method public int getTemplateType(); + method @NonNull public android.graphics.drawable.Icon getThumbnail(); + method public boolean isActive(); + } + + public final class ToggleRangeTemplate extends android.service.controls.templates.ControlTemplate { + ctor public ToggleRangeTemplate(@NonNull String, @NonNull android.service.controls.templates.ControlButton, @NonNull android.service.controls.templates.RangeTemplate); + ctor public ToggleRangeTemplate(@NonNull String, boolean, @NonNull CharSequence, @NonNull android.service.controls.templates.RangeTemplate); + method @NonNull public CharSequence getActionDescription(); + method @NonNull public android.service.controls.templates.RangeTemplate getRange(); + method public int getTemplateType(); + method public boolean isChecked(); + } + + public final class ToggleTemplate extends android.service.controls.templates.ControlTemplate { + ctor public ToggleTemplate(@NonNull String, @NonNull android.service.controls.templates.ControlButton); + method @NonNull public CharSequence getContentDescription(); + method public int getTemplateType(); + method public boolean isChecked(); + } + +} + +package android.service.credentials { + + public final class Action implements android.os.Parcelable { + ctor public Action(@NonNull android.app.slice.Slice); + method public int describeContents(); + method @NonNull public android.app.slice.Slice getSlice(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class BeginCreateCredentialRequest implements android.os.Parcelable { + ctor public BeginCreateCredentialRequest(@NonNull String, @NonNull android.os.Bundle, @Nullable android.service.credentials.CallingAppInfo); + ctor public BeginCreateCredentialRequest(@NonNull String, @NonNull android.os.Bundle); + method public int describeContents(); + method @Nullable public android.service.credentials.CallingAppInfo getCallingAppInfo(); + method @NonNull public android.os.Bundle getData(); + method @NonNull public String getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class BeginCreateCredentialResponse implements android.os.Parcelable { + ctor public BeginCreateCredentialResponse(); + method public int describeContents(); + method @NonNull public java.util.List getCreateEntries(); + method @Nullable public android.service.credentials.RemoteEntry getRemoteCreateEntry(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class BeginCreateCredentialResponse.Builder { + ctor public BeginCreateCredentialResponse.Builder(); + method @NonNull public android.service.credentials.BeginCreateCredentialResponse.Builder addCreateEntry(@NonNull android.service.credentials.CreateEntry); + method @NonNull public android.service.credentials.BeginCreateCredentialResponse build(); + method @NonNull public android.service.credentials.BeginCreateCredentialResponse.Builder setCreateEntries(@NonNull java.util.List); + method @NonNull @RequiresPermission(android.Manifest.permission.PROVIDE_REMOTE_CREDENTIALS) public android.service.credentials.BeginCreateCredentialResponse.Builder setRemoteCreateEntry(@Nullable android.service.credentials.RemoteEntry); + } + + public final class BeginGetCredentialOption implements android.os.Parcelable { + ctor public BeginGetCredentialOption(@NonNull String, @NonNull String, @NonNull android.os.Bundle); + method public int describeContents(); + method @NonNull public android.os.Bundle getCandidateQueryData(); + method @NonNull public String getId(); + method @NonNull public String getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class BeginGetCredentialRequest implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getBeginGetCredentialOptions(); + method @Nullable public android.service.credentials.CallingAppInfo getCallingAppInfo(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class BeginGetCredentialRequest.Builder { + ctor public BeginGetCredentialRequest.Builder(); + method @NonNull public android.service.credentials.BeginGetCredentialRequest.Builder addBeginGetCredentialOption(@NonNull android.service.credentials.BeginGetCredentialOption); + method @NonNull public android.service.credentials.BeginGetCredentialRequest build(); + method @NonNull public android.service.credentials.BeginGetCredentialRequest.Builder setBeginGetCredentialOptions(@NonNull java.util.List); + method @NonNull public android.service.credentials.BeginGetCredentialRequest.Builder setCallingAppInfo(@Nullable android.service.credentials.CallingAppInfo); + } + + public final class BeginGetCredentialResponse implements android.os.Parcelable { + ctor public BeginGetCredentialResponse(); + method public int describeContents(); + method @NonNull public java.util.List getActions(); + method @NonNull public java.util.List getAuthenticationActions(); + method @NonNull public java.util.List getCredentialEntries(); + method @Nullable public android.service.credentials.RemoteEntry getRemoteCredentialEntry(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class BeginGetCredentialResponse.Builder { + ctor public BeginGetCredentialResponse.Builder(); + method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder addAction(@NonNull android.service.credentials.Action); + method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder addAuthenticationAction(@NonNull android.service.credentials.Action); + method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder addCredentialEntry(@NonNull android.service.credentials.CredentialEntry); + method @NonNull public android.service.credentials.BeginGetCredentialResponse build(); + method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder setActions(@NonNull java.util.List); + method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder setAuthenticationActions(@NonNull java.util.List); + method @NonNull public android.service.credentials.BeginGetCredentialResponse.Builder setCredentialEntries(@NonNull java.util.List); + method @NonNull @RequiresPermission(android.Manifest.permission.PROVIDE_REMOTE_CREDENTIALS) public android.service.credentials.BeginGetCredentialResponse.Builder setRemoteCredentialEntry(@Nullable android.service.credentials.RemoteEntry); + } + + public final class CallingAppInfo implements android.os.Parcelable { + ctor public CallingAppInfo(@NonNull String, @NonNull android.content.pm.SigningInfo); + ctor public CallingAppInfo(@NonNull String, @NonNull android.content.pm.SigningInfo, @Nullable String); + method public int describeContents(); + method @Nullable public String getOrigin(); + method @NonNull public String getPackageName(); + method @NonNull public android.content.pm.SigningInfo getSigningInfo(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class ClearCredentialStateRequest implements android.os.Parcelable { + ctor public ClearCredentialStateRequest(@NonNull android.service.credentials.CallingAppInfo, @NonNull android.os.Bundle); + method public int describeContents(); + method @NonNull public android.service.credentials.CallingAppInfo getCallingAppInfo(); + method @NonNull public android.os.Bundle getData(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CreateCredentialRequest implements android.os.Parcelable { + ctor public CreateCredentialRequest(@NonNull android.service.credentials.CallingAppInfo, @NonNull String, @NonNull android.os.Bundle); + method public int describeContents(); + method @NonNull public android.service.credentials.CallingAppInfo getCallingAppInfo(); + method @NonNull public android.os.Bundle getData(); + method @NonNull public String getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CreateEntry implements android.os.Parcelable { + ctor public CreateEntry(@NonNull android.app.slice.Slice); + method public int describeContents(); + method @NonNull public android.app.slice.Slice getSlice(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CredentialEntry implements android.os.Parcelable { + ctor public CredentialEntry(@NonNull String, @NonNull String, @NonNull android.app.slice.Slice); + ctor public CredentialEntry(@NonNull android.service.credentials.BeginGetCredentialOption, @NonNull android.app.slice.Slice); + ctor public CredentialEntry(@NonNull String, @NonNull android.app.slice.Slice); + method public int describeContents(); + method @NonNull public String getBeginGetCredentialOptionId(); + method @NonNull public android.app.slice.Slice getSlice(); + method @NonNull public String getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class CredentialProviderService extends android.app.Service { + ctor public CredentialProviderService(); + method public abstract void onBeginCreateCredential(@NonNull android.service.credentials.BeginCreateCredentialRequest, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); + method public abstract void onBeginGetCredential(@NonNull android.service.credentials.BeginGetCredentialRequest, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); + method @NonNull public final android.os.IBinder onBind(@NonNull android.content.Intent); + method public abstract void onClearCredentialState(@NonNull android.service.credentials.ClearCredentialStateRequest, @NonNull android.os.CancellationSignal, @NonNull android.os.OutcomeReceiver); + field public static final String EXTRA_BEGIN_GET_CREDENTIAL_REQUEST = "android.service.credentials.extra.BEGIN_GET_CREDENTIAL_REQUEST"; + field public static final String EXTRA_BEGIN_GET_CREDENTIAL_RESPONSE = "android.service.credentials.extra.BEGIN_GET_CREDENTIAL_RESPONSE"; + field public static final String EXTRA_CREATE_CREDENTIAL_EXCEPTION = "android.service.credentials.extra.CREATE_CREDENTIAL_EXCEPTION"; + field public static final String EXTRA_CREATE_CREDENTIAL_REQUEST = "android.service.credentials.extra.CREATE_CREDENTIAL_REQUEST"; + field public static final String EXTRA_CREATE_CREDENTIAL_RESPONSE = "android.service.credentials.extra.CREATE_CREDENTIAL_RESPONSE"; + field public static final String EXTRA_GET_CREDENTIAL_EXCEPTION = "android.service.credentials.extra.GET_CREDENTIAL_EXCEPTION"; + field public static final String EXTRA_GET_CREDENTIAL_REQUEST = "android.service.credentials.extra.GET_CREDENTIAL_REQUEST"; + field public static final String EXTRA_GET_CREDENTIAL_RESPONSE = "android.service.credentials.extra.GET_CREDENTIAL_RESPONSE"; + field public static final String SERVICE_INTERFACE = "android.service.credentials.CredentialProviderService"; + field public static final String SERVICE_META_DATA = "android.credentials.provider"; + } + + public final class GetCredentialRequest implements android.os.Parcelable { + ctor public GetCredentialRequest(@NonNull android.service.credentials.CallingAppInfo, @NonNull java.util.List); + method public int describeContents(); + method @NonNull public android.service.credentials.CallingAppInfo getCallingAppInfo(); + method @NonNull public java.util.List getCredentialOptions(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class RemoteEntry implements android.os.Parcelable { + ctor public RemoteEntry(@NonNull android.app.slice.Slice); + method public int describeContents(); + method @NonNull public android.app.slice.Slice getSlice(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.service.dreams { + + public class DreamService extends android.app.Service implements android.view.Window.Callback { + ctor public DreamService(); + method public void addContentView(android.view.View, android.view.ViewGroup.LayoutParams); + method public boolean dispatchGenericMotionEvent(android.view.MotionEvent); + method public boolean dispatchKeyEvent(android.view.KeyEvent); + method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent); + method public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); + method public boolean dispatchTouchEvent(android.view.MotionEvent); + method public boolean dispatchTrackballEvent(android.view.MotionEvent); + method public T findViewById(@IdRes int); + method public final void finish(); + method public android.view.Window getWindow(); + method public android.view.WindowManager getWindowManager(); + method public boolean isFullscreen(); + method public boolean isInteractive(); + method public boolean isScreenBright(); + method public void onActionModeFinished(android.view.ActionMode); + method public void onActionModeStarted(android.view.ActionMode); + method public void onAttachedToWindow(); + method public final android.os.IBinder onBind(android.content.Intent); + method public void onContentChanged(); + method public boolean onCreatePanelMenu(int, android.view.Menu); + method public android.view.View onCreatePanelView(int); + method public void onDetachedFromWindow(); + method public void onDreamingStarted(); + method public void onDreamingStopped(); + method public boolean onMenuItemSelected(int, android.view.MenuItem); + method public boolean onMenuOpened(int, android.view.Menu); + method public void onPanelClosed(int, android.view.Menu); + method public boolean onPreparePanel(int, android.view.View, android.view.Menu); + method public boolean onSearchRequested(android.view.SearchEvent); + method public boolean onSearchRequested(); + method public void onWakeUp(); + method public void onWindowAttributesChanged(android.view.WindowManager.LayoutParams); + method public void onWindowFocusChanged(boolean); + method public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback); + method public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int); + method @NonNull public final T requireViewById(@IdRes int); + method public void setContentView(@LayoutRes int); + method public void setContentView(android.view.View); + method public void setContentView(android.view.View, android.view.ViewGroup.LayoutParams); + method public void setFullscreen(boolean); + method public void setInteractive(boolean); + method public void setScreenBright(boolean); + method public final void wakeUp(); + field public static final String DREAM_META_DATA = "android.service.dream"; + field public static final String SERVICE_INTERFACE = "android.service.dreams.DreamService"; + } + +} + +package android.service.media { + + public abstract class CameraPrewarmService extends android.app.Service { + ctor public CameraPrewarmService(); + method public android.os.IBinder onBind(android.content.Intent); + method public abstract void onCooldown(boolean); + method public abstract void onPrewarm(); + } + + public abstract class MediaBrowserService extends android.app.Service { + ctor public MediaBrowserService(); + method public void dump(java.io.FileDescriptor, java.io.PrintWriter, String[]); + method public final android.os.Bundle getBrowserRootHints(); + method public final android.media.session.MediaSessionManager.RemoteUserInfo getCurrentBrowserInfo(); + method @Nullable public android.media.session.MediaSession.Token getSessionToken(); + method public void notifyChildrenChanged(@NonNull String); + method public void notifyChildrenChanged(@NonNull String, @NonNull android.os.Bundle); + method public android.os.IBinder onBind(android.content.Intent); + method @Nullable public abstract android.service.media.MediaBrowserService.BrowserRoot onGetRoot(@NonNull String, int, @Nullable android.os.Bundle); + method public abstract void onLoadChildren(@NonNull String, @NonNull android.service.media.MediaBrowserService.Result>); + method public void onLoadChildren(@NonNull String, @NonNull android.service.media.MediaBrowserService.Result>, @NonNull android.os.Bundle); + method public void onLoadItem(String, android.service.media.MediaBrowserService.Result); + method public void setSessionToken(android.media.session.MediaSession.Token); + field public static final String SERVICE_INTERFACE = "android.media.browse.MediaBrowserService"; + } + + public static final class MediaBrowserService.BrowserRoot { + ctor public MediaBrowserService.BrowserRoot(@NonNull String, @Nullable android.os.Bundle); + method public android.os.Bundle getExtras(); + method public String getRootId(); + field public static final String EXTRA_OFFLINE = "android.service.media.extra.OFFLINE"; + field public static final String EXTRA_RECENT = "android.service.media.extra.RECENT"; + field public static final String EXTRA_SUGGESTED = "android.service.media.extra.SUGGESTED"; + } + + public class MediaBrowserService.Result { + method public void detach(); + method public void sendResult(T); + } + +} + +package android.service.notification { + + public final class Condition implements android.os.Parcelable { + ctor public Condition(android.net.Uri, String, int); + ctor @FlaggedApi("android.app.modes_api") public Condition(@Nullable android.net.Uri, @Nullable String, int, int); + ctor public Condition(android.net.Uri, String, String, String, int, int, int); + ctor @FlaggedApi("android.app.modes_api") public Condition(@Nullable android.net.Uri, @Nullable String, @Nullable String, @Nullable String, int, int, int, int); + ctor public Condition(android.os.Parcel); + method public android.service.notification.Condition copy(); + method public int describeContents(); + method public static boolean isValidId(android.net.Uri, String); + method public static android.net.Uri.Builder newId(android.content.Context); + method public static String relevanceToString(int); + method public static String stateToString(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_RELEVANT_ALWAYS = 2; // 0x2 + field public static final int FLAG_RELEVANT_NOW = 1; // 0x1 + field public static final String SCHEME = "condition"; + field @FlaggedApi("android.app.modes_api") public static final int SOURCE_CONTEXT = 3; // 0x3 + field @FlaggedApi("android.app.modes_api") public static final int SOURCE_SCHEDULE = 2; // 0x2 + field @FlaggedApi("android.app.modes_api") public static final int SOURCE_UNKNOWN = 0; // 0x0 + field @FlaggedApi("android.app.modes_api") public static final int SOURCE_USER_ACTION = 1; // 0x1 + field public static final int STATE_ERROR = 3; // 0x3 + field public static final int STATE_FALSE = 0; // 0x0 + field public static final int STATE_TRUE = 1; // 0x1 + field public static final int STATE_UNKNOWN = 2; // 0x2 + field public final int flags; + field public final int icon; + field public final android.net.Uri id; + field public final String line1; + field public final String line2; + field @FlaggedApi("android.app.modes_api") public final int source; + field public final int state; + field public final String summary; + } + + @Deprecated public abstract class ConditionProviderService extends android.app.Service { + ctor @Deprecated public ConditionProviderService(); + method @Deprecated public final void notifyCondition(android.service.notification.Condition); + method @Deprecated public final void notifyConditions(android.service.notification.Condition...); + method @Deprecated public android.os.IBinder onBind(android.content.Intent); + method @Deprecated public abstract void onConnected(); + method @Deprecated public void onRequestConditions(int); + method @Deprecated public abstract void onSubscribe(android.net.Uri); + method @Deprecated public abstract void onUnsubscribe(android.net.Uri); + method @Deprecated public static final void requestRebind(android.content.ComponentName); + method @Deprecated public final void requestUnbind(); + field @Deprecated public static final String EXTRA_RULE_ID = "android.service.notification.extra.RULE_ID"; + field @Deprecated public static final String META_DATA_CONFIGURATION_ACTIVITY = "android.service.zen.automatic.configurationActivity"; + field @Deprecated public static final String META_DATA_RULE_INSTANCE_LIMIT = "android.service.zen.automatic.ruleInstanceLimit"; + field @Deprecated public static final String META_DATA_RULE_TYPE = "android.service.zen.automatic.ruleType"; + field @Deprecated public static final String SERVICE_INTERFACE = "android.service.notification.ConditionProviderService"; + } + + public abstract class NotificationListenerService extends android.app.Service { + ctor public NotificationListenerService(); + method public final void cancelAllNotifications(); + method @Deprecated public final void cancelNotification(String, String, int); + method public final void cancelNotification(String); + method public final void cancelNotifications(String[]); + method public final void clearRequestedListenerHints(); + method @FlaggedApi("android.service.notification.notification_conversation_channel_management") @Nullable public final android.app.NotificationChannel createConversationNotificationChannelForPackage(@NonNull String, @NonNull android.os.UserHandle, @NonNull String, @NonNull String); + method public android.service.notification.StatusBarNotification[] getActiveNotifications(); + method public android.service.notification.StatusBarNotification[] getActiveNotifications(String[]); + method public final int getCurrentInterruptionFilter(); + method public final int getCurrentListenerHints(); + method public android.service.notification.NotificationListenerService.RankingMap getCurrentRanking(); + method public final java.util.List getNotificationChannelGroups(@NonNull String, @NonNull android.os.UserHandle); + method public final java.util.List getNotificationChannels(@NonNull String, @NonNull android.os.UserHandle); + method public final android.service.notification.StatusBarNotification[] getSnoozedNotifications(); + method public final void migrateNotificationFilter(int, @Nullable java.util.List); + method public android.os.IBinder onBind(android.content.Intent); + method @UiThread public void onInterruptionFilterChanged(int); + method @UiThread public void onListenerConnected(); + method @UiThread public void onListenerDisconnected(); + method @UiThread public void onListenerHintsChanged(int); + method @UiThread public void onNotificationChannelGroupModified(String, android.os.UserHandle, android.app.NotificationChannelGroup, int); + method @UiThread public void onNotificationChannelModified(String, android.os.UserHandle, android.app.NotificationChannel, int); + method @UiThread public void onNotificationPosted(android.service.notification.StatusBarNotification); + method @UiThread public void onNotificationPosted(android.service.notification.StatusBarNotification, android.service.notification.NotificationListenerService.RankingMap); + method @UiThread public void onNotificationRankingUpdate(android.service.notification.NotificationListenerService.RankingMap); + method @UiThread public void onNotificationRemoved(android.service.notification.StatusBarNotification); + method @UiThread public void onNotificationRemoved(android.service.notification.StatusBarNotification, android.service.notification.NotificationListenerService.RankingMap); + method @UiThread public void onNotificationRemoved(android.service.notification.StatusBarNotification, android.service.notification.NotificationListenerService.RankingMap, int); + method @UiThread public void onSilentStatusBarIconsVisibilityChanged(boolean); + method public final void requestInterruptionFilter(int); + method public final void requestListenerHints(int); + method public static void requestRebind(android.content.ComponentName); + method public static void requestUnbind(@NonNull android.content.ComponentName); + method public final void requestUnbind(); + method public final void setNotificationsShown(String[]); + method public final void snoozeNotification(String, long); + method public final void updateNotificationChannel(@NonNull String, @NonNull android.os.UserHandle, @NonNull android.app.NotificationChannel); + field public static final String ACTION_SETTINGS_HOME = "android.service.notification.action.SETTINGS_HOME"; + field public static final int FLAG_FILTER_TYPE_ALERTING = 2; // 0x2 + field public static final int FLAG_FILTER_TYPE_CONVERSATIONS = 1; // 0x1 + field public static final int FLAG_FILTER_TYPE_ONGOING = 8; // 0x8 + field public static final int FLAG_FILTER_TYPE_SILENT = 4; // 0x4 + field public static final int HINT_HOST_DISABLE_CALL_EFFECTS = 4; // 0x4 + field public static final int HINT_HOST_DISABLE_EFFECTS = 1; // 0x1 + field public static final int HINT_HOST_DISABLE_NOTIFICATION_EFFECTS = 2; // 0x2 + field public static final int INTERRUPTION_FILTER_ALARMS = 4; // 0x4 + field public static final int INTERRUPTION_FILTER_ALL = 1; // 0x1 + field public static final int INTERRUPTION_FILTER_NONE = 3; // 0x3 + field public static final int INTERRUPTION_FILTER_PRIORITY = 2; // 0x2 + field public static final int INTERRUPTION_FILTER_UNKNOWN = 0; // 0x0 + field public static final String META_DATA_DEFAULT_AUTOBIND = "android.service.notification.default_autobind_listenerservice"; + field public static final String META_DATA_DEFAULT_FILTER_TYPES = "android.service.notification.default_filter_types"; + field public static final String META_DATA_DISABLED_FILTER_TYPES = "android.service.notification.disabled_filter_types"; + field public static final int NOTIFICATION_CHANNEL_OR_GROUP_ADDED = 1; // 0x1 + field public static final int NOTIFICATION_CHANNEL_OR_GROUP_DELETED = 3; // 0x3 + field public static final int NOTIFICATION_CHANNEL_OR_GROUP_UPDATED = 2; // 0x2 + field public static final int REASON_APP_CANCEL = 8; // 0x8 + field public static final int REASON_APP_CANCEL_ALL = 9; // 0x9 + field public static final int REASON_ASSISTANT_CANCEL = 22; // 0x16 + field public static final int REASON_CANCEL = 2; // 0x2 + field public static final int REASON_CANCEL_ALL = 3; // 0x3 + field public static final int REASON_CHANNEL_BANNED = 17; // 0x11 + field public static final int REASON_CHANNEL_REMOVED = 20; // 0x14 + field public static final int REASON_CLEAR_DATA = 21; // 0x15 + field public static final int REASON_CLICK = 1; // 0x1 + field public static final int REASON_ERROR = 4; // 0x4 + field public static final int REASON_GROUP_OPTIMIZATION = 13; // 0xd + field public static final int REASON_GROUP_SUMMARY_CANCELED = 12; // 0xc + field public static final int REASON_LISTENER_CANCEL = 10; // 0xa + field public static final int REASON_LISTENER_CANCEL_ALL = 11; // 0xb + field public static final int REASON_LOCKDOWN = 23; // 0x17 + field public static final int REASON_PACKAGE_BANNED = 7; // 0x7 + field public static final int REASON_PACKAGE_CHANGED = 5; // 0x5 + field public static final int REASON_PACKAGE_SUSPENDED = 14; // 0xe + field public static final int REASON_PROFILE_TURNED_OFF = 15; // 0xf + field public static final int REASON_SNOOZED = 18; // 0x12 + field public static final int REASON_TIMEOUT = 19; // 0x13 + field public static final int REASON_UNAUTOBUNDLED = 16; // 0x10 + field public static final int REASON_USER_STOPPED = 6; // 0x6 + field public static final String SERVICE_INTERFACE = "android.service.notification.NotificationListenerService"; + field @Deprecated public static final int SUPPRESSED_EFFECT_SCREEN_OFF = 1; // 0x1 + field @Deprecated public static final int SUPPRESSED_EFFECT_SCREEN_ON = 2; // 0x2 + } + + public static class NotificationListenerService.Ranking { + ctor public NotificationListenerService.Ranking(); + method public boolean canBubble(); + method public boolean canShowBadge(); + method public android.app.NotificationChannel getChannel(); + method @Nullable public android.content.pm.ShortcutInfo getConversationShortcutInfo(); + method public int getImportance(); + method public CharSequence getImportanceExplanation(); + method public String getKey(); + method public long getLastAudiblyAlertedMillis(); + method public int getLockscreenVisibilityOverride(); + method public String getOverrideGroupKey(); + method public int getRank(); + method @NonNull public java.util.List getSmartActions(); + method @NonNull public java.util.List getSmartReplies(); + method public int getSuppressedVisualEffects(); + method public int getUserSentiment(); + method public boolean isAmbient(); + method public boolean isConversation(); + method public boolean isSuspended(); + method public boolean matchesInterruptionFilter(); + field public static final int USER_SENTIMENT_NEGATIVE = -1; // 0xffffffff + field public static final int USER_SENTIMENT_NEUTRAL = 0; // 0x0 + field public static final int USER_SENTIMENT_POSITIVE = 1; // 0x1 + field public static final int VISIBILITY_NO_OVERRIDE = -1000; // 0xfffffc18 + } + + public static class NotificationListenerService.RankingMap implements android.os.Parcelable { + method public int describeContents(); + method public String[] getOrderedKeys(); + method public boolean getRanking(String, android.service.notification.NotificationListenerService.Ranking); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class StatusBarNotification implements android.os.Parcelable { + ctor @Deprecated public StatusBarNotification(String, String, int, String, int, int, int, android.app.Notification, android.os.UserHandle, long); + ctor public StatusBarNotification(android.os.Parcel); + method public android.service.notification.StatusBarNotification clone(); + method public int describeContents(); + method public String getGroupKey(); + method public int getId(); + method public String getKey(); + method public android.app.Notification getNotification(); + method @NonNull public String getOpPkg(); + method public String getOverrideGroupKey(); + method public String getPackageName(); + method public long getPostTime(); + method public String getTag(); + method public int getUid(); + method public android.os.UserHandle getUser(); + method @Deprecated public int getUserId(); + method public boolean isAppGroup(); + method public boolean isClearable(); + method public boolean isGroup(); + method public boolean isOngoing(); + method public void setOverrideGroupKey(String); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.app.modes_api") public final class ZenDeviceEffects implements android.os.Parcelable { + method public int describeContents(); + method public boolean shouldDimWallpaper(); + method public boolean shouldDisplayGrayscale(); + method public boolean shouldSuppressAmbientDisplay(); + method public boolean shouldUseNightMode(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.app.modes_api") public static final class ZenDeviceEffects.Builder { + ctor public ZenDeviceEffects.Builder(); + ctor public ZenDeviceEffects.Builder(@NonNull android.service.notification.ZenDeviceEffects); + method @NonNull public android.service.notification.ZenDeviceEffects build(); + method @NonNull public android.service.notification.ZenDeviceEffects.Builder setShouldDimWallpaper(boolean); + method @NonNull public android.service.notification.ZenDeviceEffects.Builder setShouldDisplayGrayscale(boolean); + method @NonNull public android.service.notification.ZenDeviceEffects.Builder setShouldSuppressAmbientDisplay(boolean); + method @NonNull public android.service.notification.ZenDeviceEffects.Builder setShouldUseNightMode(boolean); + } + + public final class ZenPolicy implements android.os.Parcelable { + method public int describeContents(); + method public int getPriorityCallSenders(); + method public int getPriorityCategoryAlarms(); + method public int getPriorityCategoryCalls(); + method public int getPriorityCategoryConversations(); + method public int getPriorityCategoryEvents(); + method public int getPriorityCategoryMedia(); + method public int getPriorityCategoryMessages(); + method public int getPriorityCategoryReminders(); + method public int getPriorityCategoryRepeatCallers(); + method public int getPriorityCategorySystem(); + method @FlaggedApi("android.app.modes_api") public int getPriorityChannelsAllowed(); + method public int getPriorityConversationSenders(); + method public int getPriorityMessageSenders(); + method public int getVisualEffectAmbient(); + method public int getVisualEffectBadge(); + method public int getVisualEffectFullScreenIntent(); + method public int getVisualEffectLights(); + method public int getVisualEffectNotificationList(); + method public int getVisualEffectPeek(); + method public int getVisualEffectStatusBar(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CONVERSATION_SENDERS_ANYONE = 1; // 0x1 + field public static final int CONVERSATION_SENDERS_IMPORTANT = 2; // 0x2 + field public static final int CONVERSATION_SENDERS_NONE = 3; // 0x3 + field public static final int CONVERSATION_SENDERS_UNSET = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int PEOPLE_TYPE_ANYONE = 1; // 0x1 + field public static final int PEOPLE_TYPE_CONTACTS = 2; // 0x2 + field public static final int PEOPLE_TYPE_NONE = 4; // 0x4 + field public static final int PEOPLE_TYPE_STARRED = 3; // 0x3 + field public static final int PEOPLE_TYPE_UNSET = 0; // 0x0 + field public static final int STATE_ALLOW = 1; // 0x1 + field public static final int STATE_DISALLOW = 2; // 0x2 + field public static final int STATE_UNSET = 0; // 0x0 + } + + public static final class ZenPolicy.Builder { + ctor public ZenPolicy.Builder(); + method @NonNull public android.service.notification.ZenPolicy.Builder allowAlarms(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder allowAllSounds(); + method @NonNull public android.service.notification.ZenPolicy.Builder allowCalls(int); + method @NonNull public android.service.notification.ZenPolicy.Builder allowConversations(int); + method @NonNull public android.service.notification.ZenPolicy.Builder allowEvents(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder allowMedia(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder allowMessages(int); + method @FlaggedApi("android.app.modes_api") @NonNull public android.service.notification.ZenPolicy.Builder allowPriorityChannels(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder allowReminders(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder allowRepeatCallers(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder allowSystem(boolean); + method @NonNull public android.service.notification.ZenPolicy build(); + method @NonNull public android.service.notification.ZenPolicy.Builder disallowAllSounds(); + method @NonNull public android.service.notification.ZenPolicy.Builder hideAllVisualEffects(); + method @NonNull public android.service.notification.ZenPolicy.Builder showAllVisualEffects(); + method @NonNull public android.service.notification.ZenPolicy.Builder showBadges(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder showFullScreenIntent(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder showInAmbientDisplay(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder showInNotificationList(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder showLights(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder showPeeking(boolean); + method @NonNull public android.service.notification.ZenPolicy.Builder showStatusBarIcons(boolean); + } + +} + +package android.service.persistentdata { + + @FlaggedApi("android.security.frp_enforcement") public class PersistentDataBlockManager { + method @FlaggedApi("android.security.frp_enforcement") public boolean isFactoryResetProtectionActive(); + } + +} + +package android.service.quickaccesswallet { + + public interface GetWalletCardsCallback { + method public void onFailure(@NonNull android.service.quickaccesswallet.GetWalletCardsError); + method public void onSuccess(@NonNull android.service.quickaccesswallet.GetWalletCardsResponse); + } + + public final class GetWalletCardsError implements android.os.Parcelable { + ctor public GetWalletCardsError(@Nullable android.graphics.drawable.Icon, @Nullable CharSequence); + method public int describeContents(); + method @Nullable public android.graphics.drawable.Icon getIcon(); + method @Nullable public CharSequence getMessage(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class GetWalletCardsRequest implements android.os.Parcelable { + ctor public GetWalletCardsRequest(int, int, int, int); + method public int describeContents(); + method public int getCardHeightPx(); + method public int getCardWidthPx(); + method public int getIconSizePx(); + method public int getMaxCards(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class GetWalletCardsResponse implements android.os.Parcelable { + ctor public GetWalletCardsResponse(@NonNull java.util.List, int); + method public int describeContents(); + method public int getSelectedIndex(); + method @NonNull public java.util.List getWalletCards(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class QuickAccessWalletService extends android.app.Service { + ctor public QuickAccessWalletService(); + method @FlaggedApi("android.service.quickaccesswallet.launch_wallet_option_on_power_double_tap") @Nullable public android.app.PendingIntent getGestureTargetActivityPendingIntent(); + method @Nullable public android.app.PendingIntent getTargetActivityPendingIntent(); + method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); + method public abstract void onWalletCardSelected(@NonNull android.service.quickaccesswallet.SelectWalletCardRequest); + method public abstract void onWalletCardsRequested(@NonNull android.service.quickaccesswallet.GetWalletCardsRequest, @NonNull android.service.quickaccesswallet.GetWalletCardsCallback); + method public abstract void onWalletDismissed(); + method public final void sendWalletServiceEvent(@NonNull android.service.quickaccesswallet.WalletServiceEvent); + field public static final String ACTION_VIEW_WALLET = "android.service.quickaccesswallet.action.VIEW_WALLET"; + field public static final String ACTION_VIEW_WALLET_SETTINGS = "android.service.quickaccesswallet.action.VIEW_WALLET_SETTINGS"; + field public static final String SERVICE_INTERFACE = "android.service.quickaccesswallet.QuickAccessWalletService"; + field public static final String SERVICE_META_DATA = "android.quickaccesswallet"; + } + + public final class SelectWalletCardRequest implements android.os.Parcelable { + ctor public SelectWalletCardRequest(@NonNull String); + method public int describeContents(); + method @NonNull public String getCardId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class WalletCard implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.graphics.drawable.Icon getCardIcon(); + method @NonNull public String getCardId(); + method @NonNull public android.graphics.drawable.Icon getCardImage(); + method @Nullable public CharSequence getCardLabel(); + method @NonNull public java.util.List getCardLocations(); + method @NonNull public int getCardType(); + method @NonNull public CharSequence getContentDescription(); + method @Nullable public android.graphics.drawable.Icon getNonPaymentCardSecondaryImage(); + method @NonNull public android.app.PendingIntent getPendingIntent(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CARD_TYPE_NON_PAYMENT = 2; // 0x2 + field public static final int CARD_TYPE_PAYMENT = 1; // 0x1 + field public static final int CARD_TYPE_UNKNOWN = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class WalletCard.Builder { + ctor public WalletCard.Builder(@NonNull String, @NonNull int, @NonNull android.graphics.drawable.Icon, @NonNull CharSequence, @NonNull android.app.PendingIntent); + ctor public WalletCard.Builder(@NonNull String, @NonNull android.graphics.drawable.Icon, @NonNull CharSequence, @NonNull android.app.PendingIntent); + method @NonNull public android.service.quickaccesswallet.WalletCard build(); + method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setCardIcon(@Nullable android.graphics.drawable.Icon); + method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setCardLabel(@Nullable CharSequence); + method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setCardLocations(@NonNull java.util.List); + method @NonNull public android.service.quickaccesswallet.WalletCard.Builder setNonPaymentCardSecondaryImage(@Nullable android.graphics.drawable.Icon); + } + + public final class WalletServiceEvent implements android.os.Parcelable { + ctor public WalletServiceEvent(int); + method public int describeContents(); + method public int getEventType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_NFC_PAYMENT_STARTED = 1; // 0x1 + } + +} + +package android.service.quicksettings { + + public final class Tile implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.app.PendingIntent getActivityLaunchForClick(); + method public CharSequence getContentDescription(); + method public android.graphics.drawable.Icon getIcon(); + method public CharSequence getLabel(); + method public int getState(); + method @Nullable public CharSequence getStateDescription(); + method @Nullable public CharSequence getSubtitle(); + method public void setActivityLaunchForClick(@Nullable android.app.PendingIntent); + method public void setContentDescription(CharSequence); + method public void setIcon(android.graphics.drawable.Icon); + method public void setLabel(CharSequence); + method public void setState(int); + method public void setStateDescription(@Nullable CharSequence); + method public void setSubtitle(@Nullable CharSequence); + method public void updateTile(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STATE_ACTIVE = 2; // 0x2 + field public static final int STATE_INACTIVE = 1; // 0x1 + field public static final int STATE_UNAVAILABLE = 0; // 0x0 + } + + public class TileService extends android.app.Service { + ctor public TileService(); + method public final android.service.quicksettings.Tile getQsTile(); + method public final boolean isLocked(); + method public final boolean isSecure(); + method public android.os.IBinder onBind(android.content.Intent); + method public void onClick(); + method public void onStartListening(); + method public void onStopListening(); + method public void onTileAdded(); + method public void onTileRemoved(); + method public static final void requestListeningState(android.content.Context, android.content.ComponentName); + method public final void showDialog(android.app.Dialog); + method @Deprecated public final void startActivityAndCollapse(android.content.Intent); + method public final void startActivityAndCollapse(@NonNull android.app.PendingIntent); + method public final void unlockAndRun(Runnable); + field public static final String ACTION_QS_TILE = "android.service.quicksettings.action.QS_TILE"; + field public static final String ACTION_QS_TILE_PREFERENCES = "android.service.quicksettings.action.QS_TILE_PREFERENCES"; + field public static final String META_DATA_ACTIVE_TILE = "android.service.quicksettings.ACTIVE_TILE"; + field public static final String META_DATA_TOGGLEABLE_TILE = "android.service.quicksettings.TOGGLEABLE_TILE"; + } + +} + +package android.service.restrictions { + + public abstract class RestrictionsReceiver extends android.content.BroadcastReceiver { + ctor public RestrictionsReceiver(); + method public void onReceive(android.content.Context, android.content.Intent); + method public abstract void onRequestPermission(android.content.Context, String, String, String, android.os.PersistableBundle); + } + +} + +package android.service.settings.preferences { + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class GetValueRequest implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getPreferenceKey(); + method @NonNull public String getScreenKey(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class GetValueRequest.Builder { + ctor public GetValueRequest.Builder(@NonNull String, @NonNull String); + method @NonNull public android.service.settings.preferences.GetValueRequest build(); + } + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class GetValueResult implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.service.settings.preferences.SettingsPreferenceMetadata getMetadata(); + method public int getResultCode(); + method @Nullable public android.service.settings.preferences.SettingsPreferenceValue getValue(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int RESULT_DISALLOW = 4; // 0x4 + field public static final int RESULT_INTERNAL_ERROR = 6; // 0x6 + field public static final int RESULT_INVALID_REQUEST = 5; // 0x5 + field public static final int RESULT_OK = 0; // 0x0 + field public static final int RESULT_REQUIRE_APP_PERMISSION = 3; // 0x3 + field public static final int RESULT_UNAVAILABLE = 2; // 0x2 + field public static final int RESULT_UNSUPPORTED = 1; // 0x1 + } + + public static final class GetValueResult.Builder { + ctor public GetValueResult.Builder(int); + method @NonNull public android.service.settings.preferences.GetValueResult build(); + method @NonNull public android.service.settings.preferences.GetValueResult.Builder setMetadata(@Nullable android.service.settings.preferences.SettingsPreferenceMetadata); + method @NonNull public android.service.settings.preferences.GetValueResult.Builder setValue(@Nullable android.service.settings.preferences.SettingsPreferenceValue); + } + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class MetadataRequest implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class MetadataRequest.Builder { + ctor public MetadataRequest.Builder(); + method @NonNull public android.service.settings.preferences.MetadataRequest build(); + } + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class MetadataResult implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getMetadataList(); + method public int getResultCode(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int RESULT_INTERNAL_ERROR = 2; // 0x2 + field public static final int RESULT_OK = 0; // 0x0 + field public static final int RESULT_UNSUPPORTED = 1; // 0x1 + } + + public static final class MetadataResult.Builder { + ctor public MetadataResult.Builder(int); + method @NonNull public android.service.settings.preferences.MetadataResult build(); + method @NonNull public android.service.settings.preferences.MetadataResult.Builder setMetadataList(@NonNull java.util.List); + } + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class SetValueRequest implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getPreferenceKey(); + method @NonNull public android.service.settings.preferences.SettingsPreferenceValue getPreferenceValue(); + method @NonNull public String getScreenKey(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class SetValueRequest.Builder { + ctor public SetValueRequest.Builder(@NonNull String, @NonNull String, @NonNull android.service.settings.preferences.SettingsPreferenceValue); + method @NonNull public android.service.settings.preferences.SetValueRequest build(); + } + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class SetValueResult implements android.os.Parcelable { + method public int describeContents(); + method public int getResultCode(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int RESULT_DISABLED = 2; // 0x2 + field public static final int RESULT_DISALLOW = 7; // 0x7 + field public static final int RESULT_INTERNAL_ERROR = 9; // 0x9 + field public static final int RESULT_INVALID_REQUEST = 8; // 0x8 + field public static final int RESULT_OK = 0; // 0x0 + field public static final int RESULT_REQUIRE_APP_PERMISSION = 5; // 0x5 + field public static final int RESULT_REQUIRE_USER_CONSENT = 6; // 0x6 + field public static final int RESULT_RESTRICTED = 3; // 0x3 + field public static final int RESULT_UNAVAILABLE = 4; // 0x4 + field public static final int RESULT_UNSUPPORTED = 1; // 0x1 + } + + public static final class SetValueResult.Builder { + ctor public SetValueResult.Builder(int); + method @NonNull public android.service.settings.preferences.SetValueResult build(); + } + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class SettingsPreferenceMetadata implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getBreadcrumbs(); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public String getKey(); + method @Nullable public android.content.Intent getLaunchIntent(); + method @NonNull public java.util.List getReadPermissions(); + method @NonNull public String getScreenKey(); + method @Nullable public String getSummary(); + method @Nullable public String getTitle(); + method @NonNull public java.util.List getWritePermissions(); + method public int getWriteSensitivity(); + method public boolean isAvailable(); + method public boolean isEnabled(); + method public boolean isRestricted(); + method public boolean isWritable(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int EXPECT_POST_CONFIRMATION = 1; // 0x1 + field public static final int EXPECT_PRE_CONFIRMATION = 2; // 0x2 + field public static final int NO_DIRECT_ACCESS = 3; // 0x3 + field public static final int NO_SENSITIVITY = 0; // 0x0 + } + + public static final class SettingsPreferenceMetadata.Builder { + ctor public SettingsPreferenceMetadata.Builder(@NonNull String, @NonNull String); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata build(); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setAvailable(boolean); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setBreadcrumbs(@NonNull java.util.List); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setEnabled(boolean); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setExtras(@NonNull android.os.Bundle); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setLaunchIntent(@Nullable android.content.Intent); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setReadPermissions(@NonNull java.util.List); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setRestricted(boolean); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setSummary(@Nullable String); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setTitle(@Nullable String); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setWritable(boolean); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setWritePermissions(@NonNull java.util.List); + method @NonNull public android.service.settings.preferences.SettingsPreferenceMetadata.Builder setWriteSensitivity(int); + } + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public abstract class SettingsPreferenceService extends android.app.Service { + ctor public SettingsPreferenceService(); + method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent); + method public abstract void onGetAllPreferenceMetadata(@NonNull android.service.settings.preferences.MetadataRequest, @NonNull android.os.OutcomeReceiver); + method public abstract void onGetPreferenceValue(@NonNull android.service.settings.preferences.GetValueRequest, @NonNull android.os.OutcomeReceiver); + method public abstract void onSetPreferenceValue(@NonNull android.service.settings.preferences.SetValueRequest, @NonNull android.os.OutcomeReceiver); + field public static final String ACTION_PREFERENCE_SERVICE = "android.service.settings.preferences.action.PREFERENCE_SERVICE"; + } + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public class SettingsPreferenceServiceClient implements java.lang.AutoCloseable { + ctor public SettingsPreferenceServiceClient(@NonNull android.content.Context, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void close(); + method public void getAllPreferenceMetadata(@NonNull android.service.settings.preferences.MetadataRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void getPreferenceValue(@NonNull android.service.settings.preferences.GetValueRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void setPreferenceValue(@NonNull android.service.settings.preferences.SetValueRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + } + + @FlaggedApi("com.android.settingslib.flags.settings_catalyst") public final class SettingsPreferenceValue implements android.os.Parcelable { + method public int describeContents(); + method public boolean getBooleanValue(); + method public double getDoubleValue(); + method public int getIntValue(); + method public long getLongValue(); + method @Nullable public String getStringValue(); + method public int getType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_BOOLEAN = 0; // 0x0 + field public static final int TYPE_DOUBLE = 2; // 0x2 + field public static final int TYPE_INT = 4; // 0x4 + field public static final int TYPE_LONG = 1; // 0x1 + field public static final int TYPE_STRING = 3; // 0x3 + } + + public static final class SettingsPreferenceValue.Builder { + ctor public SettingsPreferenceValue.Builder(int); + method @NonNull public android.service.settings.preferences.SettingsPreferenceValue build(); + method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setBooleanValue(boolean); + method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setDoubleValue(double); + method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setIntValue(int); + method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setLongValue(long); + method @NonNull public android.service.settings.preferences.SettingsPreferenceValue.Builder setStringValue(@Nullable String); + } + +} + +package android.service.textservice { + + public abstract class SpellCheckerService extends android.app.Service { + ctor public SpellCheckerService(); + method public abstract android.service.textservice.SpellCheckerService.Session createSession(); + method public final android.os.IBinder onBind(android.content.Intent); + field public static final String SERVICE_INTERFACE = "android.service.textservice.SpellCheckerService"; + } + + public abstract static class SpellCheckerService.Session { + ctor public SpellCheckerService.Session(); + method public android.os.Bundle getBundle(); + method public String getLocale(); + method public int getSupportedAttributes(); + method public void onCancel(); + method public void onClose(); + method public abstract void onCreate(); + method public android.view.textservice.SentenceSuggestionsInfo[] onGetSentenceSuggestionsMultiple(android.view.textservice.TextInfo[], int); + method public abstract android.view.textservice.SuggestionsInfo onGetSuggestions(android.view.textservice.TextInfo, int); + method public android.view.textservice.SuggestionsInfo[] onGetSuggestionsMultiple(android.view.textservice.TextInfo[], int, boolean); + } + +} + +package android.service.voice { + + public final class VisibleActivityInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.service.voice.VoiceInteractionSession.ActivityId getActivityId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class VoiceInteractionService extends android.app.Service { + ctor public VoiceInteractionService(); + method public int getDisabledShowContext(); + method public static boolean isActiveService(android.content.Context, android.content.ComponentName); + method public android.os.IBinder onBind(android.content.Intent); + method @NonNull public java.util.Set onGetSupportedVoiceActions(@NonNull java.util.Set); + method public void onLaunchVoiceAssistFromKeyguard(); + method public void onPrepareToShowSession(@NonNull android.os.Bundle, int); + method public void onReady(); + method public void onShowSessionFailed(@NonNull android.os.Bundle); + method public void onShutdown(); + method public void setDisabledShowContext(int); + method public final void setUiHints(@NonNull android.os.Bundle); + method public void showSession(android.os.Bundle, int); + field public static final String SERVICE_INTERFACE = "android.service.voice.VoiceInteractionService"; + field public static final String SERVICE_META_DATA = "android.voice_interaction"; + } + + public class VoiceInteractionSession implements android.content.ComponentCallbacks2 android.view.KeyEvent.Callback { + ctor public VoiceInteractionSession(android.content.Context); + ctor public VoiceInteractionSession(android.content.Context, android.os.Handler); + method public void closeSystemDialogs(); + method public void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); + method public void finish(); + method public android.content.Context getContext(); + method public int getDisabledShowContext(); + method public android.view.LayoutInflater getLayoutInflater(); + method public int getUserDisabledShowContext(); + method public android.app.Dialog getWindow(); + method public void hide(); + method public void onAssistStructureFailure(Throwable); + method public void onBackPressed(); + method public void onCancelRequest(android.service.voice.VoiceInteractionSession.Request); + method public void onCloseSystemDialogs(); + method public void onComputeInsets(android.service.voice.VoiceInteractionSession.Insets); + method public void onConfigurationChanged(android.content.res.Configuration); + method public void onCreate(); + method public android.view.View onCreateContentView(); + method public void onDestroy(); + method public void onDirectActionsInvalidated(@NonNull android.service.voice.VoiceInteractionSession.ActivityId); + method public boolean[] onGetSupportedCommands(String[]); + method @Deprecated public void onHandleAssist(@Nullable android.os.Bundle, @Nullable android.app.assist.AssistStructure, @Nullable android.app.assist.AssistContent); + method public void onHandleAssist(@NonNull android.service.voice.VoiceInteractionSession.AssistState); + method @Deprecated public void onHandleAssistSecondary(@Nullable android.os.Bundle, @Nullable android.app.assist.AssistStructure, @Nullable android.app.assist.AssistContent, int, int); + method public void onHandleScreenshot(@Nullable android.graphics.Bitmap); + method public void onHide(); + method public boolean onKeyDown(int, android.view.KeyEvent); + method public boolean onKeyLongPress(int, android.view.KeyEvent); + method public boolean onKeyMultiple(int, int, android.view.KeyEvent); + method public boolean onKeyUp(int, android.view.KeyEvent); + method public void onLockscreenShown(); + method public void onLowMemory(); + method public void onPrepareShow(android.os.Bundle, int); + method public void onRequestAbortVoice(android.service.voice.VoiceInteractionSession.AbortVoiceRequest); + method public void onRequestCommand(android.service.voice.VoiceInteractionSession.CommandRequest); + method public void onRequestCompleteVoice(android.service.voice.VoiceInteractionSession.CompleteVoiceRequest); + method public void onRequestConfirmation(android.service.voice.VoiceInteractionSession.ConfirmationRequest); + method public void onRequestPickOption(android.service.voice.VoiceInteractionSession.PickOptionRequest); + method public void onShow(@Nullable android.os.Bundle, int); + method public void onTaskFinished(android.content.Intent, int); + method public void onTaskStarted(android.content.Intent, int); + method public void onTrimMemory(int); + method public final void performDirectAction(@NonNull android.app.DirectAction, @Nullable android.os.Bundle, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public final void registerVisibleActivityCallback(@NonNull java.util.concurrent.Executor, @NonNull android.service.voice.VoiceInteractionSession.VisibleActivityCallback); + method public final void requestDirectActions(@NonNull android.service.voice.VoiceInteractionSession.ActivityId, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer>); + method public void setContentView(android.view.View); + method public void setDisabledShowContext(int); + method public void setKeepAwake(boolean); + method public void setTheme(int); + method public void setUiEnabled(boolean); + method public void show(android.os.Bundle, int); + method public void startAssistantActivity(android.content.Intent); + method public void startAssistantActivity(@NonNull android.content.Intent, @NonNull android.os.Bundle); + method public void startVoiceActivity(android.content.Intent); + method public final void unregisterVisibleActivityCallback(@NonNull android.service.voice.VoiceInteractionSession.VisibleActivityCallback); + field @FlaggedApi("android.service.voice.flags.allow_foreground_activities_in_on_show") public static final String KEY_FOREGROUND_ACTIVITIES = "android.service.voice.FOREGROUND_ACTIVITIES"; + field public static final String KEY_SHOW_SESSION_ID = "android.service.voice.SHOW_SESSION_ID"; + field public static final int SHOW_SOURCE_ACTIVITY = 16; // 0x10 + field public static final int SHOW_SOURCE_APPLICATION = 8; // 0x8 + field public static final int SHOW_SOURCE_ASSIST_GESTURE = 4; // 0x4 + field public static final int SHOW_SOURCE_AUTOMOTIVE_SYSTEM_UI = 128; // 0x80 + field public static final int SHOW_SOURCE_NOTIFICATION = 64; // 0x40 + field public static final int SHOW_SOURCE_PUSH_TO_TALK = 32; // 0x20 + field public static final int SHOW_WITH_ASSIST = 1; // 0x1 + field public static final int SHOW_WITH_SCREENSHOT = 2; // 0x2 + } + + public static final class VoiceInteractionSession.AbortVoiceRequest extends android.service.voice.VoiceInteractionSession.Request { + method @Deprecated @Nullable public CharSequence getMessage(); + method @Nullable public android.app.VoiceInteractor.Prompt getVoicePrompt(); + method public void sendAbortResult(android.os.Bundle); + } + + public static class VoiceInteractionSession.ActivityId { + } + + public static final class VoiceInteractionSession.AssistState { + method @NonNull public android.service.voice.VoiceInteractionSession.ActivityId getActivityId(); + method @Nullable public android.app.assist.AssistContent getAssistContent(); + method @Nullable public android.os.Bundle getAssistData(); + method @Nullable public android.app.assist.AssistStructure getAssistStructure(); + method @IntRange(from=0) public int getCount(); + method @IntRange(from=0xffffffff) public int getIndex(); + method public boolean isFocused(); + } + + public static final class VoiceInteractionSession.CommandRequest extends android.service.voice.VoiceInteractionSession.Request { + method public String getCommand(); + method public void sendIntermediateResult(android.os.Bundle); + method public void sendResult(android.os.Bundle); + } + + public static final class VoiceInteractionSession.CompleteVoiceRequest extends android.service.voice.VoiceInteractionSession.Request { + method @Deprecated @Nullable public CharSequence getMessage(); + method @Nullable public android.app.VoiceInteractor.Prompt getVoicePrompt(); + method public void sendCompleteResult(android.os.Bundle); + } + + public static final class VoiceInteractionSession.ConfirmationRequest extends android.service.voice.VoiceInteractionSession.Request { + method @Deprecated @Nullable public CharSequence getPrompt(); + method @Nullable public android.app.VoiceInteractor.Prompt getVoicePrompt(); + method public void sendConfirmationResult(boolean, android.os.Bundle); + } + + public static final class VoiceInteractionSession.Insets { + ctor public VoiceInteractionSession.Insets(); + field public static final int TOUCHABLE_INSETS_CONTENT = 1; // 0x1 + field public static final int TOUCHABLE_INSETS_FRAME = 0; // 0x0 + field public static final int TOUCHABLE_INSETS_REGION = 3; // 0x3 + field public final android.graphics.Rect contentInsets; + field public int touchableInsets; + field public final android.graphics.Region touchableRegion; + } + + public static final class VoiceInteractionSession.PickOptionRequest extends android.service.voice.VoiceInteractionSession.Request { + method public android.app.VoiceInteractor.PickOptionRequest.Option[] getOptions(); + method @Deprecated @Nullable public CharSequence getPrompt(); + method @Nullable public android.app.VoiceInteractor.Prompt getVoicePrompt(); + method public void sendIntermediatePickOptionResult(android.app.VoiceInteractor.PickOptionRequest.Option[], android.os.Bundle); + method public void sendPickOptionResult(android.app.VoiceInteractor.PickOptionRequest.Option[], android.os.Bundle); + } + + public static class VoiceInteractionSession.Request { + method public void cancel(); + method public String getCallingPackage(); + method public int getCallingUid(); + method public android.os.Bundle getExtras(); + method public boolean isActive(); + } + + public static interface VoiceInteractionSession.VisibleActivityCallback { + method public default void onInvisible(@NonNull android.service.voice.VoiceInteractionSession.ActivityId); + method public default void onVisible(@NonNull android.service.voice.VisibleActivityInfo); + } + + public abstract class VoiceInteractionSessionService extends android.app.Service { + ctor public VoiceInteractionSessionService(); + method public android.os.IBinder onBind(android.content.Intent); + method public abstract android.service.voice.VoiceInteractionSession onNewSession(android.os.Bundle); + } + +} + +package android.service.vr { + + public abstract class VrListenerService extends android.app.Service { + ctor public VrListenerService(); + method public static final boolean isVrModePackageEnabled(@NonNull android.content.Context, @NonNull android.content.ComponentName); + method public android.os.IBinder onBind(android.content.Intent); + method public void onCurrentVrActivityChanged(android.content.ComponentName); + field public static final String SERVICE_INTERFACE = "android.service.vr.VrListenerService"; + } + +} + +package android.service.wallpaper { + + public abstract class WallpaperService extends android.app.Service { + ctor public WallpaperService(); + method public final android.os.IBinder onBind(android.content.Intent); + method @MainThread public abstract android.service.wallpaper.WallpaperService.Engine onCreateEngine(); + method @FlaggedApi("android.app.live_wallpaper_content_handling") @MainThread @Nullable public android.service.wallpaper.WallpaperService.Engine onCreateEngine(@NonNull android.app.wallpaper.WallpaperDescription); + field public static final String SERVICE_INTERFACE = "android.service.wallpaper.WallpaperService"; + field public static final String SERVICE_META_DATA = "android.service.wallpaper"; + } + + public class WallpaperService.Engine { + ctor public WallpaperService.Engine(); + method protected void dump(String, java.io.FileDescriptor, java.io.PrintWriter, String[]); + method public int getDesiredMinimumHeight(); + method public int getDesiredMinimumWidth(); + method @Nullable public android.content.Context getDisplayContext(); + method public android.view.SurfaceHolder getSurfaceHolder(); + method public int getWallpaperFlags(); + method public boolean isPreview(); + method public boolean isVisible(); + method public void notifyColorsChanged(); + method @FlaggedApi("android.app.live_wallpaper_content_handling") @Nullable public android.app.wallpaper.WallpaperDescription onApplyWallpaper(int); + method @MainThread public void onApplyWindowInsets(android.view.WindowInsets); + method @MainThread public android.os.Bundle onCommand(String, int, int, int, android.os.Bundle, boolean); + method @MainThread @Nullable public android.app.WallpaperColors onComputeColors(); + method @MainThread public void onCreate(android.view.SurfaceHolder); + method @MainThread public void onDesiredSizeChanged(int, int); + method @MainThread public void onDestroy(); + method @MainThread public void onOffsetsChanged(float, float, float, float, int, int); + method @MainThread public void onSurfaceChanged(android.view.SurfaceHolder, int, int, int); + method @MainThread public void onSurfaceCreated(android.view.SurfaceHolder); + method @MainThread public void onSurfaceDestroyed(android.view.SurfaceHolder); + method @MainThread public void onSurfaceRedrawNeeded(android.view.SurfaceHolder); + method @MainThread public void onTouchEvent(android.view.MotionEvent); + method @MainThread public void onVisibilityChanged(boolean); + method @MainThread public void onWallpaperFlagsChanged(int); + method @MainThread public void onZoomChanged(@FloatRange(from=0.0f, to=1.0f) float); + method public void setOffsetNotificationsEnabled(boolean); + method public void setTouchEventsEnabled(boolean); + } + +} + +package android.speech { + + public final class AlternativeSpan implements android.os.Parcelable { + ctor public AlternativeSpan(int, int, @NonNull java.util.List); + method public int describeContents(); + method @NonNull public java.util.List getAlternatives(); + method public int getEndPosition(); + method public int getStartPosition(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class AlternativeSpans implements android.os.Parcelable { + ctor public AlternativeSpans(@NonNull java.util.List); + method public int describeContents(); + method @NonNull public java.util.List getSpans(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface ModelDownloadListener { + method public void onError(int); + method public void onProgress(int); + method public void onScheduled(); + method public void onSuccess(); + } + + public interface RecognitionListener { + method public void onBeginningOfSpeech(); + method public void onBufferReceived(byte[]); + method public default void onEndOfSegmentedSession(); + method public void onEndOfSpeech(); + method public void onError(int); + method public void onEvent(int, android.os.Bundle); + method public default void onLanguageDetection(@NonNull android.os.Bundle); + method public void onPartialResults(android.os.Bundle); + method public void onReadyForSpeech(android.os.Bundle); + method public void onResults(android.os.Bundle); + method public void onRmsChanged(float); + method public default void onSegmentResults(@NonNull android.os.Bundle); + } + + public final class RecognitionPart implements android.os.Parcelable { + method public int describeContents(); + method public int getConfidenceLevel(); + method @Nullable public String getFormattedText(); + method @NonNull public String getRawText(); + method public long getTimestampMillis(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CONFIDENCE_LEVEL_HIGH = 5; // 0x5 + field public static final int CONFIDENCE_LEVEL_LOW = 1; // 0x1 + field public static final int CONFIDENCE_LEVEL_MEDIUM = 3; // 0x3 + field public static final int CONFIDENCE_LEVEL_MEDIUM_HIGH = 4; // 0x4 + field public static final int CONFIDENCE_LEVEL_MEDIUM_LOW = 2; // 0x2 + field public static final int CONFIDENCE_LEVEL_UNKNOWN = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class RecognitionPart.Builder { + ctor public RecognitionPart.Builder(@NonNull String); + method @NonNull public android.speech.RecognitionPart build(); + method @NonNull public android.speech.RecognitionPart.Builder setConfidenceLevel(int); + method @NonNull public android.speech.RecognitionPart.Builder setFormattedText(@NonNull String); + method @NonNull public android.speech.RecognitionPart.Builder setRawText(@NonNull String); + method @NonNull public android.speech.RecognitionPart.Builder setTimestampMillis(long); + } + + public abstract class RecognitionService extends android.app.Service { + ctor public RecognitionService(); + method public int getMaxConcurrentSessionsCount(); + method public final android.os.IBinder onBind(android.content.Intent); + method protected abstract void onCancel(android.speech.RecognitionService.Callback); + method public void onCheckRecognitionSupport(@NonNull android.content.Intent, @NonNull android.speech.RecognitionService.SupportCallback); + method public void onCheckRecognitionSupport(@NonNull android.content.Intent, @NonNull android.content.AttributionSource, @NonNull android.speech.RecognitionService.SupportCallback); + method protected abstract void onStartListening(android.content.Intent, android.speech.RecognitionService.Callback); + method protected abstract void onStopListening(android.speech.RecognitionService.Callback); + method public void onTriggerModelDownload(@NonNull android.content.Intent); + method public void onTriggerModelDownload(@NonNull android.content.Intent, @NonNull android.content.AttributionSource); + method public void onTriggerModelDownload(@NonNull android.content.Intent, @NonNull android.content.AttributionSource, @NonNull android.speech.ModelDownloadListener); + field public static final String SERVICE_INTERFACE = "android.speech.RecognitionService"; + field public static final String SERVICE_META_DATA = "android.speech"; + } + + public class RecognitionService.Callback { + method public void beginningOfSpeech() throws android.os.RemoteException; + method public void bufferReceived(byte[]) throws android.os.RemoteException; + method public void endOfSegmentedSession() throws android.os.RemoteException; + method public void endOfSpeech() throws android.os.RemoteException; + method public void error(int) throws android.os.RemoteException; + method @NonNull public android.content.AttributionSource getCallingAttributionSource(); + method public int getCallingUid(); + method public void languageDetection(@NonNull android.os.Bundle); + method public void partialResults(android.os.Bundle) throws android.os.RemoteException; + method public void readyForSpeech(android.os.Bundle) throws android.os.RemoteException; + method public void results(android.os.Bundle) throws android.os.RemoteException; + method public void rmsChanged(float) throws android.os.RemoteException; + method public void segmentResults(@NonNull android.os.Bundle) throws android.os.RemoteException; + } + + public static class RecognitionService.SupportCallback { + method public void onError(int); + method public void onSupportResult(@NonNull android.speech.RecognitionSupport); + } + + public final class RecognitionSupport implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getInstalledOnDeviceLanguages(); + method @NonNull public java.util.List getOnlineLanguages(); + method @NonNull public java.util.List getPendingOnDeviceLanguages(); + method @NonNull public java.util.List getSupportedOnDeviceLanguages(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class RecognitionSupport.Builder { + ctor public RecognitionSupport.Builder(); + method @NonNull public android.speech.RecognitionSupport.Builder addInstalledOnDeviceLanguage(@NonNull String); + method @NonNull public android.speech.RecognitionSupport.Builder addOnlineLanguage(@NonNull String); + method @NonNull public android.speech.RecognitionSupport.Builder addPendingOnDeviceLanguage(@NonNull String); + method @NonNull public android.speech.RecognitionSupport.Builder addSupportedOnDeviceLanguage(@NonNull String); + method @NonNull public android.speech.RecognitionSupport build(); + method @NonNull public android.speech.RecognitionSupport.Builder setInstalledOnDeviceLanguages(@NonNull java.util.List); + method @NonNull public android.speech.RecognitionSupport.Builder setOnlineLanguages(@NonNull java.util.List); + method @NonNull public android.speech.RecognitionSupport.Builder setPendingOnDeviceLanguages(@NonNull java.util.List); + method @NonNull public android.speech.RecognitionSupport.Builder setSupportedOnDeviceLanguages(@NonNull java.util.List); + } + + public interface RecognitionSupportCallback { + method public void onError(int); + method public void onSupportResult(@NonNull android.speech.RecognitionSupport); + } + + public class RecognizerIntent { + method public static final android.content.Intent getVoiceDetailsIntent(android.content.Context); + field public static final String ACTION_GET_LANGUAGE_DETAILS = "android.speech.action.GET_LANGUAGE_DETAILS"; + field public static final String ACTION_RECOGNIZE_SPEECH = "android.speech.action.RECOGNIZE_SPEECH"; + field public static final String ACTION_VOICE_SEARCH_HANDS_FREE = "android.speech.action.VOICE_SEARCH_HANDS_FREE"; + field public static final String ACTION_WEB_SEARCH = "android.speech.action.WEB_SEARCH"; + field public static final String DETAILS_META_DATA = "android.speech.DETAILS"; + field @Deprecated public static final String EXTRA_AUDIO_INJECT_SOURCE = "android.speech.extra.AUDIO_INJECT_SOURCE"; + field public static final String EXTRA_AUDIO_SOURCE = "android.speech.extra.AUDIO_SOURCE"; + field public static final String EXTRA_AUDIO_SOURCE_CHANNEL_COUNT = "android.speech.extra.AUDIO_SOURCE_CHANNEL_COUNT"; + field public static final String EXTRA_AUDIO_SOURCE_ENCODING = "android.speech.extra.AUDIO_SOURCE_ENCODING"; + field public static final String EXTRA_AUDIO_SOURCE_SAMPLING_RATE = "android.speech.extra.AUDIO_SOURCE_SAMPLING_RATE"; + field public static final String EXTRA_BIASING_STRINGS = "android.speech.extra.BIASING_STRINGS"; + field public static final String EXTRA_CALLING_PACKAGE = "calling_package"; + field public static final String EXTRA_CONFIDENCE_SCORES = "android.speech.extra.CONFIDENCE_SCORES"; + field public static final String EXTRA_ENABLE_BIASING_DEVICE_CONTEXT = "android.speech.extra.ENABLE_BIASING_DEVICE_CONTEXT"; + field public static final String EXTRA_ENABLE_FORMATTING = "android.speech.extra.ENABLE_FORMATTING"; + field public static final String EXTRA_ENABLE_LANGUAGE_DETECTION = "android.speech.extra.ENABLE_LANGUAGE_DETECTION"; + field public static final String EXTRA_ENABLE_LANGUAGE_SWITCH = "android.speech.extra.ENABLE_LANGUAGE_SWITCH"; + field public static final String EXTRA_HIDE_PARTIAL_TRAILING_PUNCTUATION = "android.speech.extra.HIDE_PARTIAL_TRAILING_PUNCTUATION"; + field public static final String EXTRA_LANGUAGE = "android.speech.extra.LANGUAGE"; + field public static final String EXTRA_LANGUAGE_DETECTION_ALLOWED_LANGUAGES = "android.speech.extra.LANGUAGE_DETECTION_ALLOWED_LANGUAGES"; + field public static final String EXTRA_LANGUAGE_MODEL = "android.speech.extra.LANGUAGE_MODEL"; + field public static final String EXTRA_LANGUAGE_PREFERENCE = "android.speech.extra.LANGUAGE_PREFERENCE"; + field public static final String EXTRA_LANGUAGE_SWITCH_ALLOWED_LANGUAGES = "android.speech.extra.LANGUAGE_SWITCH_ALLOWED_LANGUAGES"; + field @FlaggedApi("android.speech.flags.multilang_extra_launch") public static final String EXTRA_LANGUAGE_SWITCH_INITIAL_ACTIVE_DURATION_TIME_MILLIS = "android.speech.extra.LANGUAGE_SWITCH_INITIAL_ACTIVE_DURATION_TIME_MILLIS"; + field @FlaggedApi("android.speech.flags.multilang_extra_launch") public static final String EXTRA_LANGUAGE_SWITCH_MAX_SWITCHES = "android.speech.extra.LANGUAGE_SWITCH_MAX_SWITCHES"; + field public static final String EXTRA_MASK_OFFENSIVE_WORDS = "android.speech.extra.MASK_OFFENSIVE_WORDS"; + field public static final String EXTRA_MAX_RESULTS = "android.speech.extra.MAX_RESULTS"; + field public static final String EXTRA_ONLY_RETURN_LANGUAGE_PREFERENCE = "android.speech.extra.ONLY_RETURN_LANGUAGE_PREFERENCE"; + field public static final String EXTRA_ORIGIN = "android.speech.extra.ORIGIN"; + field public static final String EXTRA_PARTIAL_RESULTS = "android.speech.extra.PARTIAL_RESULTS"; + field public static final String EXTRA_PREFER_OFFLINE = "android.speech.extra.PREFER_OFFLINE"; + field public static final String EXTRA_PROMPT = "android.speech.extra.PROMPT"; + field public static final String EXTRA_REQUEST_WORD_CONFIDENCE = "android.speech.extra.REQUEST_WORD_CONFIDENCE"; + field public static final String EXTRA_REQUEST_WORD_TIMING = "android.speech.extra.REQUEST_WORD_TIMING"; + field public static final String EXTRA_RESULTS = "android.speech.extra.RESULTS"; + field public static final String EXTRA_RESULTS_PENDINGINTENT = "android.speech.extra.RESULTS_PENDINGINTENT"; + field public static final String EXTRA_RESULTS_PENDINGINTENT_BUNDLE = "android.speech.extra.RESULTS_PENDINGINTENT_BUNDLE"; + field public static final String EXTRA_SECURE = "android.speech.extras.EXTRA_SECURE"; + field public static final String EXTRA_SEGMENTED_SESSION = "android.speech.extra.SEGMENTED_SESSION"; + field public static final String EXTRA_SPEECH_INPUT_COMPLETE_SILENCE_LENGTH_MILLIS = "android.speech.extras.SPEECH_INPUT_COMPLETE_SILENCE_LENGTH_MILLIS"; + field public static final String EXTRA_SPEECH_INPUT_MINIMUM_LENGTH_MILLIS = "android.speech.extras.SPEECH_INPUT_MINIMUM_LENGTH_MILLIS"; + field public static final String EXTRA_SPEECH_INPUT_POSSIBLY_COMPLETE_SILENCE_LENGTH_MILLIS = "android.speech.extras.SPEECH_INPUT_POSSIBLY_COMPLETE_SILENCE_LENGTH_MILLIS"; + field public static final String EXTRA_SUPPORTED_LANGUAGES = "android.speech.extra.SUPPORTED_LANGUAGES"; + field public static final String EXTRA_WEB_SEARCH_ONLY = "android.speech.extra.WEB_SEARCH_ONLY"; + field public static final String FORMATTING_OPTIMIZE_LATENCY = "latency"; + field public static final String FORMATTING_OPTIMIZE_QUALITY = "quality"; + field public static final String LANGUAGE_MODEL_FREE_FORM = "free_form"; + field public static final String LANGUAGE_MODEL_WEB_SEARCH = "web_search"; + field public static final String LANGUAGE_SWITCH_BALANCED = "balanced"; + field public static final String LANGUAGE_SWITCH_HIGH_PRECISION = "high_precision"; + field public static final String LANGUAGE_SWITCH_QUICK_RESPONSE = "quick_response"; + field public static final int RESULT_AUDIO_ERROR = 5; // 0x5 + field public static final int RESULT_CLIENT_ERROR = 2; // 0x2 + field public static final int RESULT_NETWORK_ERROR = 4; // 0x4 + field public static final int RESULT_NO_MATCH = 1; // 0x1 + field public static final int RESULT_SERVER_ERROR = 3; // 0x3 + } + + public class RecognizerResultsIntent { + field public static final String ACTION_VOICE_SEARCH_RESULTS = "android.speech.action.VOICE_SEARCH_RESULTS"; + field public static final String EXTRA_VOICE_SEARCH_RESULT_HTML = "android.speech.extras.VOICE_SEARCH_RESULT_HTML"; + field public static final String EXTRA_VOICE_SEARCH_RESULT_HTML_BASE_URLS = "android.speech.extras.VOICE_SEARCH_RESULT_HTML_BASE_URLS"; + field public static final String EXTRA_VOICE_SEARCH_RESULT_HTTP_HEADERS = "android.speech.extras.EXTRA_VOICE_SEARCH_RESULT_HTTP_HEADERS"; + field public static final String EXTRA_VOICE_SEARCH_RESULT_STRINGS = "android.speech.extras.VOICE_SEARCH_RESULT_STRINGS"; + field public static final String EXTRA_VOICE_SEARCH_RESULT_URLS = "android.speech.extras.VOICE_SEARCH_RESULT_URLS"; + field public static final String URI_SCHEME_INLINE = "inline"; + } + + public class SpeechRecognizer { + method @MainThread public void cancel(); + method public void checkRecognitionSupport(@NonNull android.content.Intent, @NonNull java.util.concurrent.Executor, @NonNull android.speech.RecognitionSupportCallback); + method @MainThread @NonNull public static android.speech.SpeechRecognizer createOnDeviceSpeechRecognizer(@NonNull android.content.Context); + method @MainThread public static android.speech.SpeechRecognizer createSpeechRecognizer(android.content.Context); + method @MainThread public static android.speech.SpeechRecognizer createSpeechRecognizer(android.content.Context, android.content.ComponentName); + method public void destroy(); + method public static boolean isOnDeviceRecognitionAvailable(@NonNull android.content.Context); + method public static boolean isRecognitionAvailable(@NonNull android.content.Context); + method @MainThread public void setRecognitionListener(android.speech.RecognitionListener); + method @MainThread public void startListening(android.content.Intent); + method @MainThread public void stopListening(); + method public void triggerModelDownload(@NonNull android.content.Intent); + method public void triggerModelDownload(@NonNull android.content.Intent, @NonNull java.util.concurrent.Executor, @NonNull android.speech.ModelDownloadListener); + field public static final String CONFIDENCE_SCORES = "confidence_scores"; + field public static final String DETECTED_LANGUAGE = "detected_language"; + field public static final int ERROR_AUDIO = 3; // 0x3 + field public static final int ERROR_CANNOT_CHECK_SUPPORT = 14; // 0xe + field public static final int ERROR_CANNOT_LISTEN_TO_DOWNLOAD_EVENTS = 15; // 0xf + field public static final int ERROR_CLIENT = 5; // 0x5 + field public static final int ERROR_INSUFFICIENT_PERMISSIONS = 9; // 0x9 + field public static final int ERROR_LANGUAGE_NOT_SUPPORTED = 12; // 0xc + field public static final int ERROR_LANGUAGE_UNAVAILABLE = 13; // 0xd + field public static final int ERROR_NETWORK = 2; // 0x2 + field public static final int ERROR_NETWORK_TIMEOUT = 1; // 0x1 + field public static final int ERROR_NO_MATCH = 7; // 0x7 + field public static final int ERROR_RECOGNIZER_BUSY = 8; // 0x8 + field public static final int ERROR_SERVER = 4; // 0x4 + field public static final int ERROR_SERVER_DISCONNECTED = 11; // 0xb + field public static final int ERROR_SPEECH_TIMEOUT = 6; // 0x6 + field public static final int ERROR_TOO_MANY_REQUESTS = 10; // 0xa + field public static final String LANGUAGE_DETECTION_CONFIDENCE_LEVEL = "language_detection_confidence_level"; + field public static final int LANGUAGE_DETECTION_CONFIDENCE_LEVEL_CONFIDENT = 2; // 0x2 + field public static final int LANGUAGE_DETECTION_CONFIDENCE_LEVEL_HIGHLY_CONFIDENT = 3; // 0x3 + field public static final int LANGUAGE_DETECTION_CONFIDENCE_LEVEL_NOT_CONFIDENT = 1; // 0x1 + field public static final int LANGUAGE_DETECTION_CONFIDENCE_LEVEL_UNKNOWN = 0; // 0x0 + field public static final String LANGUAGE_SWITCH_RESULT = "language_switch_result"; + field public static final int LANGUAGE_SWITCH_RESULT_FAILED = 2; // 0x2 + field public static final int LANGUAGE_SWITCH_RESULT_NOT_ATTEMPTED = 0; // 0x0 + field public static final int LANGUAGE_SWITCH_RESULT_SKIPPED_NO_MODEL = 3; // 0x3 + field public static final int LANGUAGE_SWITCH_RESULT_SUCCEEDED = 1; // 0x1 + field public static final String RECOGNITION_PARTS = "recognition_parts"; + field public static final String RESULTS_ALTERNATIVES = "results_alternatives"; + field public static final String RESULTS_RECOGNITION = "results_recognition"; + field public static final String TOP_LOCALE_ALTERNATIVES = "top_locale_alternatives"; + } + +} + +package android.speech.tts { + + public interface SynthesisCallback { + method public int audioAvailable(byte[], int, int); + method public int done(); + method public void error(); + method public void error(int); + method public int getMaxBufferSize(); + method public boolean hasFinished(); + method public boolean hasStarted(); + method public default void rangeStart(int, int, int); + method public int start(int, int, @IntRange(from=1, to=2) int); + } + + public final class SynthesisRequest { + ctor public SynthesisRequest(String, android.os.Bundle); + ctor public SynthesisRequest(CharSequence, android.os.Bundle); + method public int getCallerUid(); + method public CharSequence getCharSequenceText(); + method public String getCountry(); + method public String getLanguage(); + method public android.os.Bundle getParams(); + method public int getPitch(); + method public int getSpeechRate(); + method @Deprecated public String getText(); + method public String getVariant(); + method public String getVoiceName(); + } + + public class TextToSpeech { + ctor public TextToSpeech(android.content.Context, android.speech.tts.TextToSpeech.OnInitListener); + ctor public TextToSpeech(android.content.Context, android.speech.tts.TextToSpeech.OnInitListener, String); + method public int addEarcon(String, String, @RawRes int); + method @Deprecated public int addEarcon(String, String); + method public int addEarcon(String, java.io.File); + method public int addEarcon(@NonNull String, @NonNull android.net.Uri); + method public int addSpeech(String, String, @RawRes int); + method public int addSpeech(CharSequence, String, @RawRes int); + method public int addSpeech(String, String); + method public int addSpeech(CharSequence, java.io.File); + method public int addSpeech(@NonNull CharSequence, @NonNull android.net.Uri); + method @Deprecated public boolean areDefaultsEnforced(); + method public java.util.Set getAvailableLanguages(); + method public String getDefaultEngine(); + method @Deprecated public java.util.Locale getDefaultLanguage(); + method public android.speech.tts.Voice getDefaultVoice(); + method public java.util.List getEngines(); + method @Deprecated public java.util.Set getFeatures(java.util.Locale); + method @Deprecated public java.util.Locale getLanguage(); + method public static int getMaxSpeechInputLength(); + method public android.speech.tts.Voice getVoice(); + method public java.util.Set getVoices(); + method public int isLanguageAvailable(java.util.Locale); + method public boolean isSpeaking(); + method public int playEarcon(String, int, android.os.Bundle, String); + method @Deprecated public int playEarcon(String, int, java.util.HashMap); + method @Deprecated public int playSilence(long, int, java.util.HashMap); + method public int playSilentUtterance(long, int, String); + method public int setAudioAttributes(android.media.AudioAttributes); + method @Deprecated public int setEngineByPackageName(String); + method public int setLanguage(java.util.Locale); + method @Deprecated public int setOnUtteranceCompletedListener(android.speech.tts.TextToSpeech.OnUtteranceCompletedListener); + method public int setOnUtteranceProgressListener(android.speech.tts.UtteranceProgressListener); + method public int setPitch(float); + method public int setSpeechRate(float); + method public int setVoice(android.speech.tts.Voice); + method public void shutdown(); + method public int speak(CharSequence, int, android.os.Bundle, String); + method @Deprecated public int speak(String, int, java.util.HashMap); + method public int stop(); + method public int synthesizeToFile(@NonNull CharSequence, @NonNull android.os.Bundle, @NonNull android.os.ParcelFileDescriptor, @NonNull String); + method public int synthesizeToFile(CharSequence, android.os.Bundle, java.io.File, String); + method @Deprecated public int synthesizeToFile(String, java.util.HashMap, String); + field public static final String ACTION_TTS_QUEUE_PROCESSING_COMPLETED = "android.speech.tts.TTS_QUEUE_PROCESSING_COMPLETED"; + field public static final int ERROR = -1; // 0xffffffff + field public static final int ERROR_INVALID_REQUEST = -8; // 0xfffffff8 + field public static final int ERROR_NETWORK = -6; // 0xfffffffa + field public static final int ERROR_NETWORK_TIMEOUT = -7; // 0xfffffff9 + field public static final int ERROR_NOT_INSTALLED_YET = -9; // 0xfffffff7 + field public static final int ERROR_OUTPUT = -5; // 0xfffffffb + field public static final int ERROR_SERVICE = -4; // 0xfffffffc + field public static final int ERROR_SYNTHESIS = -3; // 0xfffffffd + field public static final int LANG_AVAILABLE = 0; // 0x0 + field public static final int LANG_COUNTRY_AVAILABLE = 1; // 0x1 + field public static final int LANG_COUNTRY_VAR_AVAILABLE = 2; // 0x2 + field public static final int LANG_MISSING_DATA = -1; // 0xffffffff + field public static final int LANG_NOT_SUPPORTED = -2; // 0xfffffffe + field public static final int QUEUE_ADD = 1; // 0x1 + field public static final int QUEUE_FLUSH = 0; // 0x0 + field public static final int STOPPED = -2; // 0xfffffffe + field public static final int SUCCESS = 0; // 0x0 + } + + public class TextToSpeech.Engine { + ctor public TextToSpeech.Engine(); + field public static final String ACTION_CHECK_TTS_DATA = "android.speech.tts.engine.CHECK_TTS_DATA"; + field public static final String ACTION_GET_SAMPLE_TEXT = "android.speech.tts.engine.GET_SAMPLE_TEXT"; + field public static final String ACTION_INSTALL_TTS_DATA = "android.speech.tts.engine.INSTALL_TTS_DATA"; + field public static final String ACTION_TTS_DATA_INSTALLED = "android.speech.tts.engine.TTS_DATA_INSTALLED"; + field @Deprecated public static final int CHECK_VOICE_DATA_BAD_DATA = -1; // 0xffffffff + field public static final int CHECK_VOICE_DATA_FAIL = 0; // 0x0 + field @Deprecated public static final int CHECK_VOICE_DATA_MISSING_DATA = -2; // 0xfffffffe + field @Deprecated public static final int CHECK_VOICE_DATA_MISSING_VOLUME = -3; // 0xfffffffd + field public static final int CHECK_VOICE_DATA_PASS = 1; // 0x1 + field public static final int DEFAULT_STREAM = 3; // 0x3 + field public static final String EXTRA_AVAILABLE_VOICES = "availableVoices"; + field @Deprecated public static final String EXTRA_CHECK_VOICE_DATA_FOR = "checkVoiceDataFor"; + field public static final String EXTRA_SAMPLE_TEXT = "sampleText"; + field @Deprecated public static final String EXTRA_TTS_DATA_INSTALLED = "dataInstalled"; + field public static final String EXTRA_UNAVAILABLE_VOICES = "unavailableVoices"; + field @Deprecated public static final String EXTRA_VOICE_DATA_FILES = "dataFiles"; + field @Deprecated public static final String EXTRA_VOICE_DATA_FILES_INFO = "dataFilesInfo"; + field @Deprecated public static final String EXTRA_VOICE_DATA_ROOT_DIRECTORY = "dataRoot"; + field public static final String INTENT_ACTION_TTS_SERVICE = "android.intent.action.TTS_SERVICE"; + field @Deprecated public static final String KEY_FEATURE_EMBEDDED_SYNTHESIS = "embeddedTts"; + field public static final String KEY_FEATURE_NETWORK_RETRIES_COUNT = "networkRetriesCount"; + field @Deprecated public static final String KEY_FEATURE_NETWORK_SYNTHESIS = "networkTts"; + field public static final String KEY_FEATURE_NETWORK_TIMEOUT_MS = "networkTimeoutMs"; + field public static final String KEY_FEATURE_NOT_INSTALLED = "notInstalled"; + field public static final String KEY_PARAM_PAN = "pan"; + field public static final String KEY_PARAM_SESSION_ID = "sessionId"; + field public static final String KEY_PARAM_STREAM = "streamType"; + field public static final String KEY_PARAM_UTTERANCE_ID = "utteranceId"; + field public static final String KEY_PARAM_VOLUME = "volume"; + field public static final String SERVICE_META_DATA = "android.speech.tts"; + } + + public static class TextToSpeech.EngineInfo { + ctor public TextToSpeech.EngineInfo(); + field public int icon; + field public String label; + field public String name; + } + + public static interface TextToSpeech.OnInitListener { + method public void onInit(int); + } + + @Deprecated public static interface TextToSpeech.OnUtteranceCompletedListener { + method @Deprecated public void onUtteranceCompleted(String); + } + + public abstract class TextToSpeechService extends android.app.Service { + ctor public TextToSpeechService(); + method public android.os.IBinder onBind(android.content.Intent); + method public String onGetDefaultVoiceNameFor(String, String, String); + method protected java.util.Set onGetFeaturesForLanguage(String, String, String); + method protected abstract String[] onGetLanguage(); + method public java.util.List onGetVoices(); + method protected abstract int onIsLanguageAvailable(String, String, String); + method public int onIsValidVoiceName(String); + method protected abstract int onLoadLanguage(String, String, String); + method public int onLoadVoice(String); + method protected abstract void onStop(); + method protected abstract void onSynthesizeText(android.speech.tts.SynthesisRequest, android.speech.tts.SynthesisCallback); + } + + public abstract class UtteranceProgressListener { + ctor public UtteranceProgressListener(); + method public void onAudioAvailable(String, byte[]); + method public void onBeginSynthesis(String, int, int, int); + method public abstract void onDone(String); + method @Deprecated public abstract void onError(String); + method public void onError(String, int); + method public void onRangeStart(String, int, int, int); + method public abstract void onStart(String); + method public void onStop(String, boolean); + } + + public class Voice implements android.os.Parcelable { + ctor public Voice(String, java.util.Locale, int, int, boolean, java.util.Set); + method public int describeContents(); + method public java.util.Set getFeatures(); + method public int getLatency(); + method public java.util.Locale getLocale(); + method public String getName(); + method public int getQuality(); + method public boolean isNetworkConnectionRequired(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int LATENCY_HIGH = 400; // 0x190 + field public static final int LATENCY_LOW = 200; // 0xc8 + field public static final int LATENCY_NORMAL = 300; // 0x12c + field public static final int LATENCY_VERY_HIGH = 500; // 0x1f4 + field public static final int LATENCY_VERY_LOW = 100; // 0x64 + field public static final int QUALITY_HIGH = 400; // 0x190 + field public static final int QUALITY_LOW = 200; // 0xc8 + field public static final int QUALITY_NORMAL = 300; // 0x12c + field public static final int QUALITY_VERY_HIGH = 500; // 0x1f4 + field public static final int QUALITY_VERY_LOW = 100; // 0x64 + } + +} + +package android.telecom { + + public final class Call { + method public void addConferenceParticipants(@NonNull java.util.List); + method public void answer(int); + method public void conference(android.telecom.Call); + method public void deflect(android.net.Uri); + method public void disconnect(); + method public java.util.List getCannedTextResponses(); + method public java.util.List getChildren(); + method public java.util.List getConferenceableCalls(); + method public android.telecom.Call.Details getDetails(); + method @Nullable public android.telecom.Call getGenericConferenceActiveChildCall(); + method public android.telecom.Call getParent(); + method public String getRemainingPostDialSequence(); + method @Nullable public android.telecom.Call.RttCall getRttCall(); + method @Deprecated public int getState(); + method public android.telecom.InCallService.VideoCall getVideoCall(); + method public void handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle); + method public void hold(); + method public boolean isRttActive(); + method public void mergeConference(); + method public void phoneAccountSelected(android.telecom.PhoneAccountHandle, boolean); + method public void playDtmfTone(char); + method public void postDialContinue(boolean); + method public void pullExternalCall(); + method public void putExtras(android.os.Bundle); + method public void registerCallback(android.telecom.Call.Callback); + method public void registerCallback(android.telecom.Call.Callback, android.os.Handler); + method public void reject(boolean, String); + method public void reject(int); + method public void removeExtras(java.util.List); + method public void removeExtras(java.lang.String...); + method public void respondToRttRequest(int, boolean); + method public void sendCallEvent(String, android.os.Bundle); + method public void sendRttRequest(); + method public void splitFromConference(); + method public void stopDtmfTone(); + method public void stopRtt(); + method public void swapConference(); + method public void unhold(); + method public void unregisterCallback(android.telecom.Call.Callback); + field @Deprecated public static final String AVAILABLE_PHONE_ACCOUNTS = "selectPhoneAccountAccounts"; + field public static final String EVENT_CLEAR_DIAGNOSTIC_MESSAGE = "android.telecom.event.CLEAR_DIAGNOSTIC_MESSAGE"; + field public static final String EVENT_DISPLAY_DIAGNOSTIC_MESSAGE = "android.telecom.event.DISPLAY_DIAGNOSTIC_MESSAGE"; + field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String EXTRA_ASSERTED_DISPLAY_NAME = "android.telecom.extra.ASSERTED_DISPLAY_NAME"; + field public static final String EXTRA_DIAGNOSTIC_MESSAGE = "android.telecom.extra.DIAGNOSTIC_MESSAGE"; + field public static final String EXTRA_DIAGNOSTIC_MESSAGE_ID = "android.telecom.extra.DIAGNOSTIC_MESSAGE_ID"; + field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String EXTRA_IS_BUSINESS_CALL = "android.telecom.extra.IS_BUSINESS_CALL"; + field public static final String EXTRA_IS_SUPPRESSED_BY_DO_NOT_DISTURB = "android.telecom.extra.IS_SUPPRESSED_BY_DO_NOT_DISTURB"; + field public static final String EXTRA_LAST_EMERGENCY_CALLBACK_TIME_MILLIS = "android.telecom.extra.LAST_EMERGENCY_CALLBACK_TIME_MILLIS"; + field public static final String EXTRA_SILENT_RINGING_REQUESTED = "android.telecom.extra.SILENT_RINGING_REQUESTED"; + field public static final String EXTRA_SUGGESTED_PHONE_ACCOUNTS = "android.telecom.extra.SUGGESTED_PHONE_ACCOUNTS"; + field public static final int REJECT_REASON_DECLINED = 1; // 0x1 + field public static final int REJECT_REASON_UNWANTED = 2; // 0x2 + field public static final int STATE_ACTIVE = 4; // 0x4 + field public static final int STATE_AUDIO_PROCESSING = 12; // 0xc + field public static final int STATE_CONNECTING = 9; // 0x9 + field public static final int STATE_DIALING = 1; // 0x1 + field public static final int STATE_DISCONNECTED = 7; // 0x7 + field public static final int STATE_DISCONNECTING = 10; // 0xa + field public static final int STATE_HOLDING = 3; // 0x3 + field public static final int STATE_NEW = 0; // 0x0 + field public static final int STATE_PULLING_CALL = 11; // 0xb + field public static final int STATE_RINGING = 2; // 0x2 + field public static final int STATE_SELECT_PHONE_ACCOUNT = 8; // 0x8 + field public static final int STATE_SIMULATED_RINGING = 13; // 0xd + } + + public abstract static class Call.Callback { + ctor public Call.Callback(); + method public void onCallDestroyed(android.telecom.Call); + method public void onCannedTextResponsesLoaded(android.telecom.Call, java.util.List); + method public void onChildrenChanged(android.telecom.Call, java.util.List); + method public void onConferenceableCallsChanged(android.telecom.Call, java.util.List); + method public void onConnectionEvent(android.telecom.Call, String, android.os.Bundle); + method public void onDetailsChanged(android.telecom.Call, android.telecom.Call.Details); + method public void onHandoverComplete(android.telecom.Call); + method public void onHandoverFailed(android.telecom.Call, int); + method public void onParentChanged(android.telecom.Call, android.telecom.Call); + method public void onPostDialWait(android.telecom.Call, String); + method public void onRttInitiationFailure(android.telecom.Call, int); + method public void onRttModeChanged(android.telecom.Call, int); + method public void onRttRequest(android.telecom.Call, int); + method public void onRttStatusChanged(android.telecom.Call, boolean, android.telecom.Call.RttCall); + method public void onStateChanged(android.telecom.Call, int); + method public void onVideoCallChanged(android.telecom.Call, android.telecom.InCallService.VideoCall); + field public static final int HANDOVER_FAILURE_DEST_APP_REJECTED = 1; // 0x1 + field public static final int HANDOVER_FAILURE_NOT_SUPPORTED = 2; // 0x2 + field public static final int HANDOVER_FAILURE_ONGOING_EMERGENCY_CALL = 4; // 0x4 + field public static final int HANDOVER_FAILURE_UNKNOWN = 5; // 0x5 + field public static final int HANDOVER_FAILURE_USER_REJECTED = 3; // 0x3 + } + + public static class Call.Details { + method public static boolean can(int, int); + method public boolean can(int); + method public static String capabilitiesToString(int); + method public android.telecom.PhoneAccountHandle getAccountHandle(); + method public int getCallCapabilities(); + method public int getCallDirection(); + method public int getCallProperties(); + method public String getCallerDisplayName(); + method public int getCallerDisplayNamePresentation(); + method public int getCallerNumberVerificationStatus(); + method public final long getConnectTimeMillis(); + method @Nullable public String getContactDisplayName(); + method @Nullable public android.net.Uri getContactPhotoUri(); + method public long getCreationTimeMillis(); + method public android.telecom.DisconnectCause getDisconnectCause(); + method public android.os.Bundle getExtras(); + method public android.telecom.GatewayInfo getGatewayInfo(); + method public android.net.Uri getHandle(); + method public int getHandlePresentation(); + method @FlaggedApi("com.android.server.telecom.flags.call_details_id_changes") @NonNull public String getId(); + method public android.os.Bundle getIntentExtras(); + method public final int getState(); + method public android.telecom.StatusHints getStatusHints(); + method public int getVideoState(); + method public static boolean hasProperty(int, int); + method public boolean hasProperty(int); + method public static String propertiesToString(int); + field public static final int CAPABILITY_ADD_PARTICIPANT = 33554432; // 0x2000000 + field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 4194304; // 0x400000 + field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000 + field public static final int CAPABILITY_CAN_PULL_CALL = 8388608; // 0x800000 + field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000 + field public static final int CAPABILITY_HOLD = 1; // 0x1 + field public static final int CAPABILITY_MANAGE_CONFERENCE = 128; // 0x80 + field public static final int CAPABILITY_MERGE_CONFERENCE = 4; // 0x4 + field public static final int CAPABILITY_MUTE = 64; // 0x40 + field public static final int CAPABILITY_REMOTE_PARTY_SUPPORTS_RTT = 268435456; // 0x10000000 + field public static final int CAPABILITY_RESPOND_VIA_TEXT = 32; // 0x20 + field public static final int CAPABILITY_SEPARATE_FROM_CONFERENCE = 4096; // 0x1000 + field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL = 768; // 0x300 + field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_RX = 256; // 0x100 + field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_TX = 512; // 0x200 + field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL = 3072; // 0xc00 + field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_RX = 1024; // 0x400 + field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_TX = 2048; // 0x800 + field public static final int CAPABILITY_SUPPORT_DEFLECT = 16777216; // 0x1000000 + field public static final int CAPABILITY_SUPPORT_HOLD = 2; // 0x2 + field public static final int CAPABILITY_SWAP_CONFERENCE = 8; // 0x8 + field public static final int DIRECTION_INCOMING = 0; // 0x0 + field public static final int DIRECTION_OUTGOING = 1; // 0x1 + field public static final int DIRECTION_UNKNOWN = -1; // 0xffffffff + field public static final int PROPERTY_ASSISTED_DIALING = 512; // 0x200 + field public static final int PROPERTY_CONFERENCE = 1; // 0x1 + field public static final int PROPERTY_CROSS_SIM = 16384; // 0x4000 + field public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 4; // 0x4 + field public static final int PROPERTY_ENTERPRISE_CALL = 32; // 0x20 + field public static final int PROPERTY_GENERIC_CONFERENCE = 2; // 0x2 + field public static final int PROPERTY_HAS_CDMA_VOICE_PRIVACY = 128; // 0x80 + field public static final int PROPERTY_HIGH_DEF_AUDIO = 16; // 0x10 + field public static final int PROPERTY_IS_ADHOC_CONFERENCE = 8192; // 0x2000 + field public static final int PROPERTY_IS_EXTERNAL_CALL = 64; // 0x40 + field @FlaggedApi("com.android.server.telecom.flags.voip_app_actions_support") public static final int PROPERTY_IS_TRANSACTIONAL = 32768; // 0x8000 + field public static final int PROPERTY_NETWORK_IDENTIFIED_EMERGENCY_CALL = 2048; // 0x800 + field public static final int PROPERTY_RTT = 1024; // 0x400 + field public static final int PROPERTY_SELF_MANAGED = 256; // 0x100 + field public static final int PROPERTY_VOIP_AUDIO_MODE = 4096; // 0x1000 + field public static final int PROPERTY_WIFI = 8; // 0x8 + } + + public static final class Call.RttCall { + method public int getRttAudioMode(); + method public String read(); + method public String readImmediately() throws java.io.IOException; + method public void setRttMode(int); + method public void write(String) throws java.io.IOException; + field public static final int RTT_MODE_FULL = 1; // 0x1 + field public static final int RTT_MODE_HCO = 2; // 0x2 + field public static final int RTT_MODE_VCO = 3; // 0x3 + } + + public final class CallAttributes implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.net.Uri getAddress(); + method public int getCallCapabilities(); + method public int getCallType(); + method public int getDirection(); + method @NonNull public CharSequence getDisplayName(); + method @NonNull public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); + method public void writeToParcel(@Nullable android.os.Parcel, int); + field public static final int AUDIO_CALL = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DIRECTION_INCOMING = 1; // 0x1 + field public static final int DIRECTION_OUTGOING = 2; // 0x2 + field public static final int SUPPORTS_SET_INACTIVE = 2; // 0x2 + field public static final int SUPPORTS_STREAM = 4; // 0x4 + field public static final int SUPPORTS_TRANSFER = 8; // 0x8 + field @FlaggedApi("com.android.server.telecom.flags.transactional_video_state") public static final int SUPPORTS_VIDEO_CALLING = 16; // 0x10 + field public static final int VIDEO_CALL = 2; // 0x2 + } + + public static final class CallAttributes.Builder { + ctor public CallAttributes.Builder(@NonNull android.telecom.PhoneAccountHandle, int, @NonNull CharSequence, @NonNull android.net.Uri); + method @NonNull public android.telecom.CallAttributes build(); + method @NonNull public android.telecom.CallAttributes.Builder setCallCapabilities(int); + method @NonNull public android.telecom.CallAttributes.Builder setCallType(int); + } + + public final class CallAudioState implements android.os.Parcelable { + ctor public CallAudioState(boolean, int, int); + method public static String audioRouteToString(int); + method public int describeContents(); + method public android.bluetooth.BluetoothDevice getActiveBluetoothDevice(); + method public int getRoute(); + method public java.util.Collection getSupportedBluetoothDevices(); + method public int getSupportedRouteMask(); + method public boolean isMuted(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ROUTE_BLUETOOTH = 2; // 0x2 + field public static final int ROUTE_EARPIECE = 1; // 0x1 + field public static final int ROUTE_SPEAKER = 8; // 0x8 + field public static final int ROUTE_STREAMING = 16; // 0x10 + field public static final int ROUTE_WIRED_HEADSET = 4; // 0x4 + field public static final int ROUTE_WIRED_OR_EARPIECE = 5; // 0x5 + } + + public final class CallControl { + method public void answer(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void disconnect(@NonNull android.telecom.DisconnectCause, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method @NonNull public android.os.ParcelUuid getCallId(); + method public void requestCallEndpointChange(@NonNull android.telecom.CallEndpoint, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method @FlaggedApi("com.android.server.telecom.flags.set_mute_state") public void requestMuteState(boolean, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method @FlaggedApi("com.android.server.telecom.flags.transactional_video_state") public void requestVideoState(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void sendEvent(@NonNull String, @NonNull android.os.Bundle); + method public void setActive(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void setInactive(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void startCallStreaming(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + } + + public interface CallControlCallback { + method public void onAnswer(int, @NonNull java.util.function.Consumer); + method public void onCallStreamingStarted(@NonNull java.util.function.Consumer); + method public void onDisconnect(@NonNull android.telecom.DisconnectCause, @NonNull java.util.function.Consumer); + method public void onSetActive(@NonNull java.util.function.Consumer); + method public void onSetInactive(@NonNull java.util.function.Consumer); + } + + public final class CallEndpoint implements android.os.Parcelable { + ctor public CallEndpoint(@NonNull CharSequence, int, @NonNull android.os.ParcelUuid); + method public int describeContents(); + method @NonNull public CharSequence getEndpointName(); + method public int getEndpointType(); + method @NonNull public android.os.ParcelUuid getIdentifier(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_BLUETOOTH = 2; // 0x2 + field public static final int TYPE_EARPIECE = 1; // 0x1 + field public static final int TYPE_SPEAKER = 4; // 0x4 + field public static final int TYPE_STREAMING = 5; // 0x5 + field public static final int TYPE_UNKNOWN = -1; // 0xffffffff + field public static final int TYPE_WIRED_HEADSET = 3; // 0x3 + } + + public final class CallEndpointException extends java.lang.RuntimeException implements android.os.Parcelable { + ctor public CallEndpointException(@Nullable String, int); + method public int describeContents(); + method public int getCode(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ERROR_ANOTHER_REQUEST = 3; // 0x3 + field public static final int ERROR_ENDPOINT_DOES_NOT_EXIST = 1; // 0x1 + field public static final int ERROR_REQUEST_TIME_OUT = 2; // 0x2 + field public static final int ERROR_UNSPECIFIED = 4; // 0x4 + } + + public interface CallEventCallback { + method public void onAvailableCallEndpointsChanged(@NonNull java.util.List); + method public void onCallEndpointChanged(@NonNull android.telecom.CallEndpoint); + method public void onCallStreamingFailed(int); + method public void onEvent(@NonNull String, @NonNull android.os.Bundle); + method public void onMuteStateChanged(boolean); + method @FlaggedApi("com.android.server.telecom.flags.transactional_video_state") public default void onVideoStateChanged(int); + } + + public final class CallException extends java.lang.RuntimeException implements android.os.Parcelable { + ctor public CallException(@Nullable String, int); + method public int describeContents(); + method public int getCode(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CODE_CALL_CANNOT_BE_SET_TO_ACTIVE = 4; // 0x4 + field public static final int CODE_CALL_IS_NOT_BEING_TRACKED = 3; // 0x3 + field public static final int CODE_CALL_NOT_PERMITTED_AT_PRESENT_TIME = 5; // 0x5 + field public static final int CODE_CANNOT_HOLD_CURRENT_ACTIVE_CALL = 2; // 0x2 + field public static final int CODE_ERROR_UNKNOWN = 1; // 0x1 + field public static final int CODE_OPERATION_TIMED_OUT = 6; // 0x6 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class CallRedirectionService extends android.app.Service { + ctor public CallRedirectionService(); + method public final void cancelCall(); + method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); + method public abstract void onPlaceCall(@NonNull android.net.Uri, @NonNull android.telecom.PhoneAccountHandle, boolean); + method public void onRedirectionTimeout(); + method public final boolean onUnbind(@NonNull android.content.Intent); + method public final void placeCallUnmodified(); + method public final void redirectCall(@NonNull android.net.Uri, @NonNull android.telecom.PhoneAccountHandle, boolean); + field public static final String SERVICE_INTERFACE = "android.telecom.CallRedirectionService"; + } + + public abstract class CallScreeningService extends android.app.Service { + ctor public CallScreeningService(); + method public android.os.IBinder onBind(android.content.Intent); + method public abstract void onScreenCall(@NonNull android.telecom.Call.Details); + method public final void respondToCall(@NonNull android.telecom.Call.Details, @NonNull android.telecom.CallScreeningService.CallResponse); + field public static final String SERVICE_INTERFACE = "android.telecom.CallScreeningService"; + } + + public static class CallScreeningService.CallResponse { + method public int getCallComposerAttachmentsToShow(); + method public boolean getDisallowCall(); + method public boolean getRejectCall(); + method public boolean getSilenceCall(); + method public boolean getSkipCallLog(); + method public boolean getSkipNotification(); + field public static final int CALL_COMPOSER_ATTACHMENT_LOCATION = 2; // 0x2 + field public static final int CALL_COMPOSER_ATTACHMENT_PICTURE = 1; // 0x1 + field public static final int CALL_COMPOSER_ATTACHMENT_PRIORITY = 8; // 0x8 + field public static final int CALL_COMPOSER_ATTACHMENT_SUBJECT = 4; // 0x4 + } + + public static class CallScreeningService.CallResponse.Builder { + ctor public CallScreeningService.CallResponse.Builder(); + method public android.telecom.CallScreeningService.CallResponse build(); + method @NonNull public android.telecom.CallScreeningService.CallResponse.Builder setCallComposerAttachmentsToShow(int); + method public android.telecom.CallScreeningService.CallResponse.Builder setDisallowCall(boolean); + method public android.telecom.CallScreeningService.CallResponse.Builder setRejectCall(boolean); + method @NonNull public android.telecom.CallScreeningService.CallResponse.Builder setSilenceCall(boolean); + method public android.telecom.CallScreeningService.CallResponse.Builder setSkipCallLog(boolean); + method public android.telecom.CallScreeningService.CallResponse.Builder setSkipNotification(boolean); + } + + public abstract class Conference extends android.telecom.Conferenceable { + ctor public Conference(android.telecom.PhoneAccountHandle); + method public final boolean addConnection(android.telecom.Connection); + method @NonNull public static android.telecom.Conference createFailedConference(@NonNull android.telecom.DisconnectCause, @NonNull android.telecom.PhoneAccountHandle); + method public final void destroy(); + method @Deprecated public final android.telecom.CallAudioState getCallAudioState(); + method public final java.util.List getConferenceableConnections(); + method public final int getConnectionCapabilities(); + method public final int getConnectionProperties(); + method public final long getConnectionStartElapsedRealtimeMillis(); + method @IntRange(from=0) public final long getConnectionTime(); + method public final java.util.List getConnections(); + method @NonNull public final android.telecom.CallEndpoint getCurrentCallEndpoint(); + method public final android.telecom.DisconnectCause getDisconnectCause(); + method public final android.os.Bundle getExtras(); + method public final android.telecom.PhoneAccountHandle getPhoneAccountHandle(); + method public final int getState(); + method public final android.telecom.StatusHints getStatusHints(); + method public android.telecom.Connection.VideoProvider getVideoProvider(); + method public int getVideoState(); + method public final boolean isRingbackRequested(); + method public void onAddConferenceParticipants(@NonNull java.util.List); + method public void onAnswer(int); + method public void onAvailableCallEndpointsChanged(@NonNull java.util.List); + method @Deprecated public void onCallAudioStateChanged(android.telecom.CallAudioState); + method public void onCallEndpointChanged(@NonNull android.telecom.CallEndpoint); + method public void onConnectionAdded(android.telecom.Connection); + method public void onDisconnect(); + method public void onExtrasChanged(android.os.Bundle); + method public void onHold(); + method public void onMerge(android.telecom.Connection); + method public void onMerge(); + method public void onMuteStateChanged(boolean); + method public void onPlayDtmfTone(char); + method public void onReject(); + method public void onSeparate(android.telecom.Connection); + method public void onStopDtmfTone(); + method public void onSwap(); + method public void onUnhold(); + method public final void putExtras(@NonNull android.os.Bundle); + method public final void removeConnection(android.telecom.Connection); + method public final void removeExtras(java.util.List); + method public final void removeExtras(java.lang.String...); + method public void sendConferenceEvent(@NonNull String, @Nullable android.os.Bundle); + method public final void setActive(); + method public final void setConferenceableConnections(java.util.List); + method public final void setConnectionCapabilities(int); + method public final void setConnectionProperties(int); + method @Deprecated public final void setConnectionStartElapsedRealTime(long); + method public final void setConnectionStartElapsedRealtimeMillis(long); + method public final void setConnectionTime(@IntRange(from=0) long); + method public final void setDialing(); + method public final void setDisconnected(android.telecom.DisconnectCause); + method public final void setExtras(@Nullable android.os.Bundle); + method public final void setOnHold(); + method public final void setRingbackRequested(boolean); + method public final void setRinging(); + method public final void setStatusHints(android.telecom.StatusHints); + method public final void setVideoProvider(android.telecom.Connection, android.telecom.Connection.VideoProvider); + method public final void setVideoState(android.telecom.Connection, int); + field public static final long CONNECT_TIME_NOT_SPECIFIED = 0L; // 0x0L + } + + public abstract class Conferenceable { + } + + public abstract class Connection extends android.telecom.Conferenceable { + ctor public Connection(); + method public static String capabilitiesToString(int); + method public static android.telecom.Connection createCanceledConnection(); + method public static android.telecom.Connection createFailedConnection(android.telecom.DisconnectCause); + method public final void destroy(); + method public final android.net.Uri getAddress(); + method public final int getAddressPresentation(); + method public final boolean getAudioModeIsVoip(); + method @Deprecated public final android.telecom.CallAudioState getCallAudioState(); + method public final String getCallerDisplayName(); + method public final int getCallerDisplayNamePresentation(); + method public final int getCallerNumberVerificationStatus(); + method public final android.telecom.Conference getConference(); + method public final java.util.List getConferenceables(); + method public final int getConnectionCapabilities(); + method public final int getConnectionProperties(); + method @NonNull public final android.telecom.CallEndpoint getCurrentCallEndpoint(); + method public final android.telecom.DisconnectCause getDisconnectCause(); + method public final android.os.Bundle getExtras(); + method public final int getState(); + method public final android.telecom.StatusHints getStatusHints(); + method public final android.telecom.Connection.VideoProvider getVideoProvider(); + method public final int getVideoState(); + method public void handleRttUpgradeResponse(@Nullable android.telecom.Connection.RttTextStream); + method public final boolean isRingbackRequested(); + method public final void notifyConferenceMergeFailed(); + method public void onAbort(); + method public void onAddConferenceParticipants(@NonNull java.util.List); + method public void onAnswer(int); + method public void onAnswer(); + method public void onAvailableCallEndpointsChanged(@NonNull java.util.List); + method @Deprecated public void onCallAudioStateChanged(android.telecom.CallAudioState); + method public void onCallEndpointChanged(@NonNull android.telecom.CallEndpoint); + method public void onCallEvent(String, android.os.Bundle); + method public void onDeflect(android.net.Uri); + method public void onDisconnect(); + method public void onExtrasChanged(android.os.Bundle); + method public void onHandoverComplete(); + method public void onHold(); + method public void onMuteStateChanged(boolean); + method public void onPlayDtmfTone(char); + method public void onPostDialContinue(boolean); + method public void onPullExternalCall(); + method public void onReject(); + method public void onReject(int); + method public void onReject(String); + method public void onSeparate(); + method public void onShowIncomingCallUi(); + method public void onSilence(); + method public void onStartRtt(@NonNull android.telecom.Connection.RttTextStream); + method public void onStateChanged(int); + method public void onStopDtmfTone(); + method public void onStopRtt(); + method public void onTrackedByNonUiService(boolean); + method public void onUnhold(); + method public void onUsingAlternativeUi(boolean); + method public static String propertiesToString(int); + method public final void putExtras(@NonNull android.os.Bundle); + method public final void queryLocationForEmergency(@IntRange(from=100, to=5000) long, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public final void removeExtras(java.util.List); + method public final void removeExtras(java.lang.String...); + method @Deprecated public void requestBluetoothAudio(@NonNull android.bluetooth.BluetoothDevice); + method public final void requestCallEndpointChange(@NonNull android.telecom.CallEndpoint, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void sendConnectionEvent(String, android.os.Bundle); + method public final void sendRemoteRttRequest(); + method public final void sendRttInitiationFailure(int); + method public final void sendRttInitiationSuccess(); + method public final void sendRttSessionRemotelyTerminated(); + method public final void setActive(); + method public final void setAddress(android.net.Uri, int); + method public final void setAudioModeIsVoip(boolean); + method @Deprecated public final void setAudioRoute(int); + method public final void setCallerDisplayName(String, int); + method public final void setCallerNumberVerificationStatus(int); + method public final void setConferenceableConnections(java.util.List); + method public final void setConferenceables(java.util.List); + method public final void setConnectionCapabilities(int); + method public final void setConnectionProperties(int); + method public final void setDialing(); + method public final void setDisconnected(android.telecom.DisconnectCause); + method public final void setExtras(@Nullable android.os.Bundle); + method public final void setInitialized(); + method public final void setInitializing(); + method public final void setNextPostDialChar(char); + method public final void setOnHold(); + method public final void setPostDialWait(String); + method public final void setPulling(); + method public final void setRingbackRequested(boolean); + method public final void setRinging(); + method public final void setStatusHints(android.telecom.StatusHints); + method public final void setVideoProvider(android.telecom.Connection.VideoProvider); + method public final void setVideoState(int); + method public static String stateToString(int); + field public static final int AUDIO_CODEC_AMR = 1; // 0x1 + field public static final int AUDIO_CODEC_AMR_WB = 2; // 0x2 + field public static final int AUDIO_CODEC_EVRC = 4; // 0x4 + field public static final int AUDIO_CODEC_EVRC_B = 5; // 0x5 + field public static final int AUDIO_CODEC_EVRC_NW = 7; // 0x7 + field public static final int AUDIO_CODEC_EVRC_WB = 6; // 0x6 + field public static final int AUDIO_CODEC_EVS_FB = 20; // 0x14 + field public static final int AUDIO_CODEC_EVS_NB = 17; // 0x11 + field public static final int AUDIO_CODEC_EVS_SWB = 19; // 0x13 + field public static final int AUDIO_CODEC_EVS_WB = 18; // 0x12 + field public static final int AUDIO_CODEC_G711A = 13; // 0xd + field public static final int AUDIO_CODEC_G711AB = 15; // 0xf + field public static final int AUDIO_CODEC_G711U = 11; // 0xb + field public static final int AUDIO_CODEC_G722 = 14; // 0xe + field public static final int AUDIO_CODEC_G723 = 12; // 0xc + field public static final int AUDIO_CODEC_G729 = 16; // 0x10 + field public static final int AUDIO_CODEC_GSM_EFR = 8; // 0x8 + field public static final int AUDIO_CODEC_GSM_FR = 9; // 0x9 + field public static final int AUDIO_CODEC_GSM_HR = 10; // 0xa + field public static final int AUDIO_CODEC_NONE = 0; // 0x0 + field public static final int AUDIO_CODEC_QCELP13K = 3; // 0x3 + field public static final int CAPABILITY_ADD_PARTICIPANT = 67108864; // 0x4000000 + field public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO = 8388608; // 0x800000 + field public static final int CAPABILITY_CAN_PAUSE_VIDEO = 1048576; // 0x100000 + field public static final int CAPABILITY_CAN_PULL_CALL = 16777216; // 0x1000000 + field public static final int CAPABILITY_CAN_SEND_RESPONSE_VIA_CONNECTION = 4194304; // 0x400000 + field @Deprecated public static final int CAPABILITY_CAN_UPGRADE_TO_VIDEO = 524288; // 0x80000 + field public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 8192; // 0x2000 + field public static final int CAPABILITY_HOLD = 1; // 0x1 + field public static final int CAPABILITY_MANAGE_CONFERENCE = 128; // 0x80 + field public static final int CAPABILITY_MERGE_CONFERENCE = 4; // 0x4 + field public static final int CAPABILITY_MUTE = 64; // 0x40 + field public static final int CAPABILITY_REMOTE_PARTY_SUPPORTS_RTT = 536870912; // 0x20000000 + field public static final int CAPABILITY_RESPOND_VIA_TEXT = 32; // 0x20 + field public static final int CAPABILITY_SEPARATE_FROM_CONFERENCE = 4096; // 0x1000 + field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL = 768; // 0x300 + field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_RX = 256; // 0x100 + field public static final int CAPABILITY_SUPPORTS_VT_LOCAL_TX = 512; // 0x200 + field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL = 3072; // 0xc00 + field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_RX = 1024; // 0x400 + field public static final int CAPABILITY_SUPPORTS_VT_REMOTE_TX = 2048; // 0x800 + field public static final int CAPABILITY_SUPPORT_DEFLECT = 33554432; // 0x2000000 + field public static final int CAPABILITY_SUPPORT_HOLD = 2; // 0x2 + field public static final int CAPABILITY_SWAP_CONFERENCE = 8; // 0x8 + field public static final String EVENT_CALL_HOLD_FAILED = "android.telecom.event.CALL_HOLD_FAILED"; + field public static final String EVENT_CALL_MERGE_FAILED = "android.telecom.event.CALL_MERGE_FAILED"; + field public static final String EVENT_CALL_PULL_FAILED = "android.telecom.event.CALL_PULL_FAILED"; + field public static final String EVENT_CALL_REMOTELY_HELD = "android.telecom.event.CALL_REMOTELY_HELD"; + field public static final String EVENT_CALL_REMOTELY_UNHELD = "android.telecom.event.CALL_REMOTELY_UNHELD"; + field public static final String EVENT_CALL_SWITCH_FAILED = "android.telecom.event.CALL_SWITCH_FAILED"; + field public static final String EVENT_MERGE_COMPLETE = "android.telecom.event.MERGE_COMPLETE"; + field public static final String EVENT_MERGE_START = "android.telecom.event.MERGE_START"; + field public static final String EVENT_ON_HOLD_TONE_END = "android.telecom.event.ON_HOLD_TONE_END"; + field public static final String EVENT_ON_HOLD_TONE_START = "android.telecom.event.ON_HOLD_TONE_START"; + field public static final String EVENT_RTT_AUDIO_INDICATION_CHANGED = "android.telecom.event.RTT_AUDIO_INDICATION_CHANGED"; + field public static final String EXTRA_ANSWERING_DROPS_FG_CALL = "android.telecom.extra.ANSWERING_DROPS_FG_CALL"; + field public static final String EXTRA_ANSWERING_DROPS_FG_CALL_APP_NAME = "android.telecom.extra.ANSWERING_DROPS_FG_CALL_APP_NAME"; + field public static final String EXTRA_AUDIO_CODEC = "android.telecom.extra.AUDIO_CODEC"; + field public static final String EXTRA_AUDIO_CODEC_BANDWIDTH_KHZ = "android.telecom.extra.AUDIO_CODEC_BANDWIDTH_KHZ"; + field public static final String EXTRA_AUDIO_CODEC_BITRATE_KBPS = "android.telecom.extra.AUDIO_CODEC_BITRATE_KBPS"; + field public static final String EXTRA_CALL_SUBJECT = "android.telecom.extra.CALL_SUBJECT"; + field public static final String EXTRA_CHILD_ADDRESS = "android.telecom.extra.CHILD_ADDRESS"; + field public static final String EXTRA_IS_RTT_AUDIO_PRESENT = "android.telecom.extra.IS_RTT_AUDIO_PRESENT"; + field public static final String EXTRA_LAST_FORWARDED_NUMBER = "android.telecom.extra.LAST_FORWARDED_NUMBER"; + field public static final String EXTRA_LAST_KNOWN_CELL_IDENTITY = "android.telecom.extra.LAST_KNOWN_CELL_IDENTITY"; + field public static final String EXTRA_SIP_INVITE = "android.telecom.extra.SIP_INVITE"; + field public static final int PROPERTY_ASSISTED_DIALING = 512; // 0x200 + field public static final int PROPERTY_CROSS_SIM = 8192; // 0x2000 + field public static final int PROPERTY_HAS_CDMA_VOICE_PRIVACY = 32; // 0x20 + field public static final int PROPERTY_HIGH_DEF_AUDIO = 4; // 0x4 + field public static final int PROPERTY_IS_ADHOC_CONFERENCE = 4096; // 0x1000 + field public static final int PROPERTY_IS_EXTERNAL_CALL = 16; // 0x10 + field public static final int PROPERTY_IS_RTT = 256; // 0x100 + field public static final int PROPERTY_NETWORK_IDENTIFIED_EMERGENCY_CALL = 1024; // 0x400 + field public static final int PROPERTY_SELF_MANAGED = 128; // 0x80 + field public static final int PROPERTY_WIFI = 8; // 0x8 + field public static final int STATE_ACTIVE = 4; // 0x4 + field public static final int STATE_DIALING = 3; // 0x3 + field public static final int STATE_DISCONNECTED = 6; // 0x6 + field public static final int STATE_HOLDING = 5; // 0x5 + field public static final int STATE_INITIALIZING = 0; // 0x0 + field public static final int STATE_NEW = 1; // 0x1 + field public static final int STATE_PULLING_CALL = 7; // 0x7 + field public static final int STATE_RINGING = 2; // 0x2 + field public static final int VERIFICATION_STATUS_FAILED = 2; // 0x2 + field public static final int VERIFICATION_STATUS_NOT_VERIFIED = 0; // 0x0 + field public static final int VERIFICATION_STATUS_PASSED = 1; // 0x1 + } + + public static final class Connection.RttModifyStatus { + field public static final int SESSION_MODIFY_REQUEST_FAIL = 2; // 0x2 + field public static final int SESSION_MODIFY_REQUEST_INVALID = 3; // 0x3 + field public static final int SESSION_MODIFY_REQUEST_REJECTED_BY_REMOTE = 5; // 0x5 + field public static final int SESSION_MODIFY_REQUEST_SUCCESS = 1; // 0x1 + field public static final int SESSION_MODIFY_REQUEST_TIMED_OUT = 4; // 0x4 + } + + public static final class Connection.RttTextStream { + method public String read() throws java.io.IOException; + method public String readImmediately() throws java.io.IOException; + method public void write(String) throws java.io.IOException; + } + + public abstract static class Connection.VideoProvider { + ctor public Connection.VideoProvider(); + method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities); + method public void changePeerDimensions(int, int); + method public void changeVideoQuality(int); + method public void handleCallSessionEvent(int); + method public abstract void onRequestCameraCapabilities(); + method public abstract void onRequestConnectionDataUsage(); + method public abstract void onSendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile); + method public abstract void onSendSessionModifyResponse(android.telecom.VideoProfile); + method public abstract void onSetCamera(String); + method public abstract void onSetDeviceOrientation(int); + method public abstract void onSetDisplaySurface(android.view.Surface); + method public abstract void onSetPauseImage(android.net.Uri); + method public abstract void onSetPreviewSurface(android.view.Surface); + method public abstract void onSetZoom(float); + method public void receiveSessionModifyRequest(android.telecom.VideoProfile); + method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile); + method public void setCallDataUsage(long); + field public static final int SESSION_EVENT_CAMERA_FAILURE = 5; // 0x5 + field public static final int SESSION_EVENT_CAMERA_PERMISSION_ERROR = 7; // 0x7 + field public static final int SESSION_EVENT_CAMERA_READY = 6; // 0x6 + field public static final int SESSION_EVENT_RX_PAUSE = 1; // 0x1 + field public static final int SESSION_EVENT_RX_RESUME = 2; // 0x2 + field public static final int SESSION_EVENT_TX_START = 3; // 0x3 + field public static final int SESSION_EVENT_TX_STOP = 4; // 0x4 + field public static final int SESSION_MODIFY_REQUEST_FAIL = 2; // 0x2 + field public static final int SESSION_MODIFY_REQUEST_INVALID = 3; // 0x3 + field public static final int SESSION_MODIFY_REQUEST_REJECTED_BY_REMOTE = 5; // 0x5 + field public static final int SESSION_MODIFY_REQUEST_SUCCESS = 1; // 0x1 + field public static final int SESSION_MODIFY_REQUEST_TIMED_OUT = 4; // 0x4 + } + + public final class ConnectionRequest implements android.os.Parcelable { + ctor public ConnectionRequest(android.telecom.PhoneAccountHandle, android.net.Uri, android.os.Bundle); + ctor public ConnectionRequest(android.telecom.PhoneAccountHandle, android.net.Uri, android.os.Bundle, int); + method public int describeContents(); + method public android.telecom.PhoneAccountHandle getAccountHandle(); + method public android.net.Uri getAddress(); + method public android.os.Bundle getExtras(); + method @Nullable public java.util.List getParticipants(); + method public android.telecom.Connection.RttTextStream getRttTextStream(); + method public int getVideoState(); + method public boolean isAdhocConferenceCall(); + method public boolean isRequestingRtt(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class ConnectionService extends android.app.Service { + ctor public ConnectionService(); + method public final void addConference(android.telecom.Conference); + method public final void addExistingConnection(android.telecom.PhoneAccountHandle, android.telecom.Connection); + method public final void conferenceRemoteConnections(android.telecom.RemoteConnection, android.telecom.RemoteConnection); + method public final void connectionServiceFocusReleased(); + method @Nullable public final android.telecom.RemoteConference createRemoteIncomingConference(@Nullable android.telecom.PhoneAccountHandle, @Nullable android.telecom.ConnectionRequest); + method @Nullable public final android.telecom.RemoteConnection createRemoteIncomingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); + method @Nullable public final android.telecom.RemoteConference createRemoteOutgoingConference(@Nullable android.telecom.PhoneAccountHandle, @Nullable android.telecom.ConnectionRequest); + method @Nullable public final android.telecom.RemoteConnection createRemoteOutgoingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); + method public final java.util.Collection getAllConferences(); + method public final java.util.Collection getAllConnections(); + method public final android.os.IBinder onBind(android.content.Intent); + method public void onConference(android.telecom.Connection, android.telecom.Connection); + method public void onConnectionServiceFocusGained(); + method public void onConnectionServiceFocusLost(); + method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public void onCreateConferenceComplete(@NonNull android.telecom.Conference); + method @FlaggedApi("com.android.server.telecom.flags.telecom_resolve_hidden_dependencies") public void onCreateConnectionComplete(@NonNull android.telecom.Connection); + method @Nullable public android.telecom.Conference onCreateIncomingConference(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); + method public void onCreateIncomingConferenceFailed(@Nullable android.telecom.PhoneAccountHandle, @Nullable android.telecom.ConnectionRequest); + method public android.telecom.Connection onCreateIncomingConnection(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); + method public void onCreateIncomingConnectionFailed(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); + method public android.telecom.Connection onCreateIncomingHandoverConnection(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); + method @Nullable public android.telecom.Conference onCreateOutgoingConference(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); + method public void onCreateOutgoingConferenceFailed(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.ConnectionRequest); + method public android.telecom.Connection onCreateOutgoingConnection(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); + method public void onCreateOutgoingConnectionFailed(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); + method public android.telecom.Connection onCreateOutgoingHandoverConnection(android.telecom.PhoneAccountHandle, android.telecom.ConnectionRequest); + method public void onHandoverFailed(android.telecom.ConnectionRequest, int); + method public void onRemoteConferenceAdded(android.telecom.RemoteConference); + method public void onRemoteExistingConnectionAdded(android.telecom.RemoteConnection); + field public static final String SERVICE_INTERFACE = "android.telecom.ConnectionService"; + } + + public final class DisconnectCause implements android.os.Parcelable { + ctor public DisconnectCause(int); + ctor public DisconnectCause(int, String); + ctor public DisconnectCause(int, CharSequence, CharSequence, String); + ctor public DisconnectCause(int, CharSequence, CharSequence, String, int); + method public int describeContents(); + method public int getCode(); + method public CharSequence getDescription(); + method public CharSequence getLabel(); + method public String getReason(); + method public int getTone(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int ANSWERED_ELSEWHERE = 11; // 0xb + field public static final int BUSY = 7; // 0x7 + field public static final int CALL_PULLED = 12; // 0xc + field public static final int CANCELED = 4; // 0x4 + field public static final int CONNECTION_MANAGER_NOT_SUPPORTED = 10; // 0xa + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ERROR = 1; // 0x1 + field public static final int LOCAL = 2; // 0x2 + field public static final int MISSED = 5; // 0x5 + field public static final int OTHER = 9; // 0x9 + field public static final String REASON_EMERGENCY_CALL_PLACED = "REASON_EMERGENCY_CALL_PLACED"; + field public static final String REASON_EMULATING_SINGLE_CALL = "EMULATING_SINGLE_CALL"; + field public static final String REASON_IMS_ACCESS_BLOCKED = "REASON_IMS_ACCESS_BLOCKED"; + field public static final String REASON_WIFI_ON_BUT_WFC_OFF = "REASON_WIFI_ON_BUT_WFC_OFF"; + field public static final int REJECTED = 6; // 0x6 + field public static final int REMOTE = 3; // 0x3 + field public static final int RESTRICTED = 8; // 0x8 + field public static final int UNKNOWN = 0; // 0x0 + } + + public class GatewayInfo implements android.os.Parcelable { + ctor public GatewayInfo(String, android.net.Uri, android.net.Uri); + method public int describeContents(); + method public android.net.Uri getGatewayAddress(); + method public String getGatewayProviderPackageName(); + method public android.net.Uri getOriginalAddress(); + method public boolean isEmpty(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class InCallService extends android.app.Service { + ctor public InCallService(); + method public final boolean canAddCall(); + method @Deprecated public final android.telecom.CallAudioState getCallAudioState(); + method public final java.util.List getCalls(); + method @NonNull public final android.telecom.CallEndpoint getCurrentCallEndpoint(); + method public void onAvailableCallEndpointsChanged(@NonNull java.util.List); + method public android.os.IBinder onBind(android.content.Intent); + method public void onBringToForeground(boolean); + method public void onCallAdded(android.telecom.Call); + method @Deprecated public void onCallAudioStateChanged(android.telecom.CallAudioState); + method public void onCallEndpointChanged(@NonNull android.telecom.CallEndpoint); + method public void onCallRemoved(android.telecom.Call); + method public void onCanAddCallChanged(boolean); + method public void onConnectionEvent(android.telecom.Call, String, android.os.Bundle); + method public void onMuteStateChanged(boolean); + method public void onSilenceRinger(); + method @Deprecated public final void requestBluetoothAudio(@NonNull android.bluetooth.BluetoothDevice); + method public final void requestCallEndpointChange(@NonNull android.telecom.CallEndpoint, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method @Deprecated public final void setAudioRoute(int); + method public final void setMuted(boolean); + field public static final String SERVICE_INTERFACE = "android.telecom.InCallService"; + } + + public abstract static class InCallService.VideoCall { + ctor public InCallService.VideoCall(); + method public abstract void registerCallback(android.telecom.InCallService.VideoCall.Callback); + method public abstract void registerCallback(android.telecom.InCallService.VideoCall.Callback, android.os.Handler); + method public abstract void requestCallDataUsage(); + method public abstract void requestCameraCapabilities(); + method public abstract void sendSessionModifyRequest(android.telecom.VideoProfile); + method public abstract void sendSessionModifyResponse(android.telecom.VideoProfile); + method public abstract void setCamera(String); + method public abstract void setDeviceOrientation(int); + method public abstract void setDisplaySurface(android.view.Surface); + method public abstract void setPauseImage(android.net.Uri); + method public abstract void setPreviewSurface(android.view.Surface); + method public abstract void setZoom(float); + method public abstract void unregisterCallback(android.telecom.InCallService.VideoCall.Callback); + } + + public abstract static class InCallService.VideoCall.Callback { + ctor public InCallService.VideoCall.Callback(); + method public abstract void onCallDataUsageChanged(long); + method public abstract void onCallSessionEvent(int); + method public abstract void onCameraCapabilitiesChanged(android.telecom.VideoProfile.CameraCapabilities); + method public abstract void onPeerDimensionsChanged(int, int); + method public abstract void onSessionModifyRequestReceived(android.telecom.VideoProfile); + method public abstract void onSessionModifyResponseReceived(int, android.telecom.VideoProfile, android.telecom.VideoProfile); + method public abstract void onVideoQualityChanged(int); + } + + public final class PhoneAccount implements android.os.Parcelable { + method public static android.telecom.PhoneAccount.Builder builder(android.telecom.PhoneAccountHandle, CharSequence); + method public int describeContents(); + method public android.telecom.PhoneAccountHandle getAccountHandle(); + method public android.net.Uri getAddress(); + method public int getCapabilities(); + method public android.os.Bundle getExtras(); + method public int getHighlightColor(); + method public android.graphics.drawable.Icon getIcon(); + method public CharSequence getLabel(); + method public CharSequence getShortDescription(); + method @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") @NonNull public java.util.Set getSimultaneousCallingRestriction(); + method public android.net.Uri getSubscriptionAddress(); + method public java.util.List getSupportedUriSchemes(); + method public boolean hasCapabilities(int); + method @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") public boolean hasSimultaneousCallingRestriction(); + method public boolean isEnabled(); + method public boolean supportsUriScheme(String); + method public android.telecom.PhoneAccount.Builder toBuilder(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CAPABILITY_ADHOC_CONFERENCE_CALLING = 16384; // 0x4000 + field public static final int CAPABILITY_CALL_COMPOSER = 32768; // 0x8000 + field public static final int CAPABILITY_CALL_PROVIDER = 2; // 0x2 + field public static final int CAPABILITY_CALL_SUBJECT = 64; // 0x40 + field public static final int CAPABILITY_CONNECTION_MANAGER = 1; // 0x1 + field public static final int CAPABILITY_PLACE_EMERGENCY_CALLS = 16; // 0x10 + field public static final int CAPABILITY_RTT = 4096; // 0x1000 + field public static final int CAPABILITY_SELF_MANAGED = 2048; // 0x800 + field public static final int CAPABILITY_SIM_SUBSCRIPTION = 4; // 0x4 + field public static final int CAPABILITY_SUPPORTS_CALL_STREAMING = 524288; // 0x80000 + field public static final int CAPABILITY_SUPPORTS_TRANSACTIONAL_OPERATIONS = 262144; // 0x40000 + field public static final int CAPABILITY_SUPPORTS_VIDEO_CALLING = 1024; // 0x400 + field public static final int CAPABILITY_SUPPORTS_VOICE_CALLING_INDICATIONS = 65536; // 0x10000 + field public static final int CAPABILITY_VIDEO_CALLING = 8; // 0x8 + field public static final int CAPABILITY_VIDEO_CALLING_RELIES_ON_PRESENCE = 256; // 0x100 + field public static final int CAPABILITY_VOICE_CALLING_AVAILABLE = 131072; // 0x20000 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String EXTRA_ADD_SELF_MANAGED_CALLS_TO_INCALLSERVICE = "android.telecom.extra.ADD_SELF_MANAGED_CALLS_TO_INCALLSERVICE"; + field public static final String EXTRA_ALWAYS_USE_VOIP_AUDIO_MODE = "android.telecom.extra.ALWAYS_USE_VOIP_AUDIO_MODE"; + field public static final String EXTRA_CALL_SUBJECT_CHARACTER_ENCODING = "android.telecom.extra.CALL_SUBJECT_CHARACTER_ENCODING"; + field public static final String EXTRA_CALL_SUBJECT_MAX_LENGTH = "android.telecom.extra.CALL_SUBJECT_MAX_LENGTH"; + field public static final String EXTRA_LOG_SELF_MANAGED_CALLS = "android.telecom.extra.LOG_SELF_MANAGED_CALLS"; + field public static final String EXTRA_SUPPORTS_HANDOVER_FROM = "android.telecom.extra.SUPPORTS_HANDOVER_FROM"; + field public static final String EXTRA_SUPPORTS_HANDOVER_TO = "android.telecom.extra.SUPPORTS_HANDOVER_TO"; + field public static final int NO_HIGHLIGHT_COLOR = 0; // 0x0 + field public static final int NO_RESOURCE_ID = -1; // 0xffffffff + field public static final String SCHEME_SIP = "sip"; + field public static final String SCHEME_TEL = "tel"; + field public static final String SCHEME_VOICEMAIL = "voicemail"; + } + + public static class PhoneAccount.Builder { + ctor public PhoneAccount.Builder(android.telecom.PhoneAccountHandle, CharSequence); + ctor public PhoneAccount.Builder(android.telecom.PhoneAccount); + method public android.telecom.PhoneAccount.Builder addSupportedUriScheme(String); + method public android.telecom.PhoneAccount build(); + method @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") @NonNull public android.telecom.PhoneAccount.Builder clearSimultaneousCallingRestriction(); + method public android.telecom.PhoneAccount.Builder setAddress(android.net.Uri); + method public android.telecom.PhoneAccount.Builder setCapabilities(int); + method public android.telecom.PhoneAccount.Builder setExtras(android.os.Bundle); + method public android.telecom.PhoneAccount.Builder setHighlightColor(int); + method public android.telecom.PhoneAccount.Builder setIcon(android.graphics.drawable.Icon); + method public android.telecom.PhoneAccount.Builder setShortDescription(CharSequence); + method @FlaggedApi("com.android.internal.telephony.flags.simultaneous_calling_indications") @NonNull public android.telecom.PhoneAccount.Builder setSimultaneousCallingRestriction(@NonNull java.util.Set); + method public android.telecom.PhoneAccount.Builder setSubscriptionAddress(android.net.Uri); + method public android.telecom.PhoneAccount.Builder setSupportedUriSchemes(java.util.List); + } + + public final class PhoneAccountHandle implements android.os.Parcelable { + ctor public PhoneAccountHandle(@NonNull android.content.ComponentName, @NonNull String); + ctor public PhoneAccountHandle(@NonNull android.content.ComponentName, @NonNull String, @NonNull android.os.UserHandle); + method public int describeContents(); + method public android.content.ComponentName getComponentName(); + method public String getId(); + method public android.os.UserHandle getUserHandle(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class PhoneAccountSuggestion implements android.os.Parcelable { + ctor public PhoneAccountSuggestion(@NonNull android.telecom.PhoneAccountHandle, int, boolean); + method public int describeContents(); + method @NonNull public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); + method public int getReason(); + method public boolean shouldAutoSelect(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int REASON_FREQUENT = 2; // 0x2 + field public static final int REASON_INTRA_CARRIER = 1; // 0x1 + field public static final int REASON_NONE = 0; // 0x0 + field public static final int REASON_OTHER = 4; // 0x4 + field public static final int REASON_USER_SET = 3; // 0x3 + } + + public final class QueryLocationException extends java.lang.RuntimeException implements android.os.Parcelable { + ctor public QueryLocationException(@Nullable String); + ctor public QueryLocationException(@Nullable String, int); + ctor public QueryLocationException(@Nullable String, int, @Nullable Throwable); + method public int describeContents(); + method public int getCode(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ERROR_NOT_ALLOWED_FOR_NON_EMERGENCY_CONNECTIONS = 4; // 0x4 + field public static final int ERROR_NOT_PERMITTED = 3; // 0x3 + field public static final int ERROR_PREVIOUS_REQUEST_EXISTS = 2; // 0x2 + field public static final int ERROR_REQUEST_TIME_OUT = 1; // 0x1 + field public static final int ERROR_SERVICE_UNAVAILABLE = 5; // 0x5 + field public static final int ERROR_UNSPECIFIED = 6; // 0x6 + } + + public final class RemoteConference { + method public void disconnect(); + method public java.util.List getConferenceableConnections(); + method public int getConnectionCapabilities(); + method public int getConnectionProperties(); + method public java.util.List getConnections(); + method public android.telecom.DisconnectCause getDisconnectCause(); + method public android.os.Bundle getExtras(); + method public int getState(); + method public void hold(); + method public void merge(); + method public void playDtmfTone(char); + method public void registerCallback(android.telecom.RemoteConference.Callback); + method public void registerCallback(android.telecom.RemoteConference.Callback, android.os.Handler); + method public void separate(android.telecom.RemoteConnection); + method public void setCallAudioState(android.telecom.CallAudioState); + method public void stopDtmfTone(); + method public void swap(); + method public void unhold(); + method public void unregisterCallback(android.telecom.RemoteConference.Callback); + } + + public abstract static class RemoteConference.Callback { + ctor public RemoteConference.Callback(); + method public void onConferenceableConnectionsChanged(android.telecom.RemoteConference, java.util.List); + method public void onConnectionAdded(android.telecom.RemoteConference, android.telecom.RemoteConnection); + method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConference, int); + method public void onConnectionPropertiesChanged(android.telecom.RemoteConference, int); + method public void onConnectionRemoved(android.telecom.RemoteConference, android.telecom.RemoteConnection); + method public void onDestroyed(android.telecom.RemoteConference); + method public void onDisconnected(android.telecom.RemoteConference, android.telecom.DisconnectCause); + method public void onExtrasChanged(android.telecom.RemoteConference, @Nullable android.os.Bundle); + method public void onStateChanged(android.telecom.RemoteConference, int, int); + } + + public final class RemoteConnection { + method public void abort(); + method public void addConferenceParticipants(@NonNull java.util.List); + method public void answer(); + method public void disconnect(); + method public android.net.Uri getAddress(); + method public int getAddressPresentation(); + method public CharSequence getCallerDisplayName(); + method public int getCallerDisplayNamePresentation(); + method public android.telecom.RemoteConference getConference(); + method public java.util.List getConferenceableConnections(); + method public int getConnectionCapabilities(); + method public int getConnectionProperties(); + method public android.telecom.DisconnectCause getDisconnectCause(); + method public android.os.Bundle getExtras(); + method public int getState(); + method public android.telecom.StatusHints getStatusHints(); + method public android.telecom.RemoteConnection.VideoProvider getVideoProvider(); + method public int getVideoState(); + method public void hold(); + method public boolean isRingbackRequested(); + method public boolean isVoipAudioMode(); + method public void playDtmfTone(char); + method public void postDialContinue(boolean); + method public void pullExternalCall(); + method public void registerCallback(android.telecom.RemoteConnection.Callback); + method public void registerCallback(android.telecom.RemoteConnection.Callback, android.os.Handler); + method public void reject(); + method public void setCallAudioState(android.telecom.CallAudioState); + method public void stopDtmfTone(); + method public void unhold(); + method public void unregisterCallback(android.telecom.RemoteConnection.Callback); + } + + public abstract static class RemoteConnection.Callback { + ctor public RemoteConnection.Callback(); + method public void onAddressChanged(android.telecom.RemoteConnection, android.net.Uri, int); + method public void onCallerDisplayNameChanged(android.telecom.RemoteConnection, String, int); + method public void onConferenceChanged(android.telecom.RemoteConnection, android.telecom.RemoteConference); + method public void onConferenceableConnectionsChanged(android.telecom.RemoteConnection, java.util.List); + method public void onConnectionCapabilitiesChanged(android.telecom.RemoteConnection, int); + method public void onConnectionEvent(android.telecom.RemoteConnection, String, android.os.Bundle); + method public void onConnectionPropertiesChanged(android.telecom.RemoteConnection, int); + method public void onDestroyed(android.telecom.RemoteConnection); + method public void onDisconnected(android.telecom.RemoteConnection, android.telecom.DisconnectCause); + method public void onExtrasChanged(android.telecom.RemoteConnection, @Nullable android.os.Bundle); + method public void onPostDialChar(android.telecom.RemoteConnection, char); + method public void onPostDialWait(android.telecom.RemoteConnection, String); + method public void onRingbackRequested(android.telecom.RemoteConnection, boolean); + method public void onStateChanged(android.telecom.RemoteConnection, int); + method public void onStatusHintsChanged(android.telecom.RemoteConnection, android.telecom.StatusHints); + method public void onVideoProviderChanged(android.telecom.RemoteConnection, android.telecom.RemoteConnection.VideoProvider); + method public void onVideoStateChanged(android.telecom.RemoteConnection, int); + method public void onVoipAudioChanged(android.telecom.RemoteConnection, boolean); + } + + public static class RemoteConnection.VideoProvider { + method public void registerCallback(android.telecom.RemoteConnection.VideoProvider.Callback); + method public void requestCallDataUsage(); + method public void requestCameraCapabilities(); + method public void sendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile); + method public void sendSessionModifyResponse(android.telecom.VideoProfile); + method public void setCamera(String); + method public void setDeviceOrientation(int); + method public void setDisplaySurface(android.view.Surface); + method public void setPauseImage(android.net.Uri); + method public void setPreviewSurface(android.view.Surface); + method public void setZoom(float); + method public void unregisterCallback(android.telecom.RemoteConnection.VideoProvider.Callback); + } + + public abstract static class RemoteConnection.VideoProvider.Callback { + ctor public RemoteConnection.VideoProvider.Callback(); + method public void onCallDataUsageChanged(android.telecom.RemoteConnection.VideoProvider, long); + method public void onCallSessionEvent(android.telecom.RemoteConnection.VideoProvider, int); + method public void onCameraCapabilitiesChanged(android.telecom.RemoteConnection.VideoProvider, android.telecom.VideoProfile.CameraCapabilities); + method public void onPeerDimensionsChanged(android.telecom.RemoteConnection.VideoProvider, int, int); + method public void onSessionModifyRequestReceived(android.telecom.RemoteConnection.VideoProvider, android.telecom.VideoProfile); + method public void onSessionModifyResponseReceived(android.telecom.RemoteConnection.VideoProvider, int, android.telecom.VideoProfile, android.telecom.VideoProfile); + method public void onVideoQualityChanged(android.telecom.RemoteConnection.VideoProvider, int); + } + + public final class StatusHints implements android.os.Parcelable { + ctor public StatusHints(CharSequence, android.graphics.drawable.Icon, android.os.Bundle); + method public int describeContents(); + method public android.os.Bundle getExtras(); + method public android.graphics.drawable.Icon getIcon(); + method public CharSequence getLabel(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class TelecomManager { + method public void acceptHandover(android.net.Uri, int, android.telecom.PhoneAccountHandle); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ANSWER_PHONE_CALLS, android.Manifest.permission.MODIFY_PHONE_STATE}) public void acceptRingingCall(); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ANSWER_PHONE_CALLS, android.Manifest.permission.MODIFY_PHONE_STATE}) public void acceptRingingCall(int); + method @RequiresPermission(android.Manifest.permission.MANAGE_OWN_CALLS) public void addCall(@NonNull android.telecom.CallAttributes, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver, @NonNull android.telecom.CallControlCallback, @NonNull android.telecom.CallEventCallback); + method public void addNewIncomingCall(android.telecom.PhoneAccountHandle, android.os.Bundle); + method public void addNewIncomingConference(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.os.Bundle); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void cancelMissedCallsNotification(); + method public android.content.Intent createManageBlockedNumbersIntent(); + method @Deprecated @RequiresPermission(android.Manifest.permission.ANSWER_PHONE_CALLS) public boolean endCall(); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.net.Uri getAdnUriForPhoneAccount(android.telecom.PhoneAccountHandle); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getCallCapablePhoneAccounts(); + method @FlaggedApi("com.android.internal.telephony.flags.work_profile_api_split") @NonNull @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.INTERACT_ACROSS_PROFILES}) public java.util.List getCallCapablePhoneAccountsAcrossProfiles(); + method public String getDefaultDialerPackage(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telecom.PhoneAccountHandle getDefaultOutgoingPhoneAccount(String); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_SMS, android.Manifest.permission.READ_PHONE_NUMBERS}, conditional=true) public String getLine1Number(android.telecom.PhoneAccountHandle); + method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_OWN_CALLS) public java.util.List getOwnSelfManagedPhoneAccounts(); + method public android.telecom.PhoneAccount getPhoneAccount(android.telecom.PhoneAccountHandle); + method @FlaggedApi("com.android.server.telecom.flags.get_registered_phone_accounts") @NonNull public java.util.List getRegisteredPhoneAccounts(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getSelfManagedPhoneAccounts(); + method public android.telecom.PhoneAccountHandle getSimCallManager(); + method @Nullable public android.telecom.PhoneAccountHandle getSimCallManagerForSubscription(int); + method @Nullable public String getSystemDialerPackage(); + method @Nullable @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", "android.permission.READ_PRIVILEGED_PHONE_STATE_ANDROID_AUTO"}) public android.telecom.PhoneAccountHandle getUserSelectedOutgoingPhoneAccount(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailNumber(android.telecom.PhoneAccountHandle); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handleMmi(String); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean handleMmi(String, android.telecom.PhoneAccountHandle); + method public boolean hasManageOngoingCallsPermission(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isInCall(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isInManagedCall(); + method public boolean isIncomingCallPermitted(android.telecom.PhoneAccountHandle); + method public boolean isOutgoingCallPermitted(android.telecom.PhoneAccountHandle); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PHONE_STATE}) public boolean isTtySupported(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isVoiceMailNumber(android.telecom.PhoneAccountHandle, String); + method @RequiresPermission(anyOf={android.Manifest.permission.CALL_PHONE, android.Manifest.permission.MANAGE_OWN_CALLS}) public void placeCall(android.net.Uri, android.os.Bundle); + method public void registerPhoneAccount(android.telecom.PhoneAccount); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void showInCallScreen(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void silenceRinger(); + method @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void startConference(@NonNull java.util.List, @NonNull android.os.Bundle); + method public void unregisterPhoneAccount(android.telecom.PhoneAccountHandle); + field public static final String ACTION_CHANGE_DEFAULT_DIALER = "android.telecom.action.CHANGE_DEFAULT_DIALER"; + field public static final String ACTION_CHANGE_PHONE_ACCOUNTS = "android.telecom.action.CHANGE_PHONE_ACCOUNTS"; + field public static final String ACTION_CONFIGURE_PHONE_ACCOUNT = "android.telecom.action.CONFIGURE_PHONE_ACCOUNT"; + field public static final String ACTION_DEFAULT_CALL_SCREENING_APP_CHANGED = "android.telecom.action.DEFAULT_CALL_SCREENING_APP_CHANGED"; + field public static final String ACTION_DEFAULT_DIALER_CHANGED = "android.telecom.action.DEFAULT_DIALER_CHANGED"; + field @Deprecated public static final String ACTION_INCOMING_CALL = "android.telecom.action.INCOMING_CALL"; + field public static final String ACTION_PHONE_ACCOUNT_REGISTERED = "android.telecom.action.PHONE_ACCOUNT_REGISTERED"; + field public static final String ACTION_PHONE_ACCOUNT_UNREGISTERED = "android.telecom.action.PHONE_ACCOUNT_UNREGISTERED"; + field public static final String ACTION_POST_CALL = "android.telecom.action.POST_CALL"; + field public static final String ACTION_SHOW_CALL_ACCESSIBILITY_SETTINGS = "android.telecom.action.SHOW_CALL_ACCESSIBILITY_SETTINGS"; + field public static final String ACTION_SHOW_CALL_SETTINGS = "android.telecom.action.SHOW_CALL_SETTINGS"; + field public static final String ACTION_SHOW_MISSED_CALLS_NOTIFICATION = "android.telecom.action.SHOW_MISSED_CALLS_NOTIFICATION"; + field public static final String ACTION_SHOW_RESPOND_VIA_SMS_SETTINGS = "android.telecom.action.SHOW_RESPOND_VIA_SMS_SETTINGS"; + field public static final char DTMF_CHARACTER_PAUSE = 44; // 0x002c ',' + field public static final char DTMF_CHARACTER_WAIT = 59; // 0x003b ';' + field public static final int DURATION_LONG = 3; // 0x3 + field public static final int DURATION_MEDIUM = 2; // 0x2 + field public static final int DURATION_SHORT = 1; // 0x1 + field public static final int DURATION_VERY_SHORT = 0; // 0x0 + field public static final String EXTRA_CALL_BACK_NUMBER = "android.telecom.extra.CALL_BACK_NUMBER"; + field public static final String EXTRA_CALL_DISCONNECT_CAUSE = "android.telecom.extra.CALL_DISCONNECT_CAUSE"; + field public static final String EXTRA_CALL_DISCONNECT_MESSAGE = "android.telecom.extra.CALL_DISCONNECT_MESSAGE"; + field public static final String EXTRA_CALL_DURATION = "android.telecom.extra.CALL_DURATION"; + field @FlaggedApi("com.android.server.telecom.flags.add_call_uri_for_missed_calls") public static final String EXTRA_CALL_LOG_URI = "android.telecom.extra.CALL_LOG_URI"; + field public static final String EXTRA_CALL_NETWORK_TYPE = "android.telecom.extra.CALL_NETWORK_TYPE"; + field public static final String EXTRA_CALL_SUBJECT = "android.telecom.extra.CALL_SUBJECT"; + field public static final String EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME = "android.telecom.extra.CHANGE_DEFAULT_DIALER_PACKAGE_NAME"; + field public static final String EXTRA_DEFAULT_CALL_SCREENING_APP_COMPONENT_NAME = "android.telecom.extra.DEFAULT_CALL_SCREENING_APP_COMPONENT_NAME"; + field public static final String EXTRA_DISCONNECT_CAUSE = "android.telecom.extra.DISCONNECT_CAUSE"; + field public static final String EXTRA_HANDLE = "android.telecom.extra.HANDLE"; + field public static final String EXTRA_HAS_PICTURE = "android.telecom.extra.HAS_PICTURE"; + field public static final String EXTRA_INCOMING_CALL_ADDRESS = "android.telecom.extra.INCOMING_CALL_ADDRESS"; + field public static final String EXTRA_INCOMING_CALL_EXTRAS = "android.telecom.extra.INCOMING_CALL_EXTRAS"; + field public static final String EXTRA_INCOMING_VIDEO_STATE = "android.telecom.extra.INCOMING_VIDEO_STATE"; + field public static final String EXTRA_IS_DEFAULT_CALL_SCREENING_APP = "android.telecom.extra.IS_DEFAULT_CALL_SCREENING_APP"; + field public static final String EXTRA_LOCATION = "android.telecom.extra.LOCATION"; + field public static final String EXTRA_NOTIFICATION_COUNT = "android.telecom.extra.NOTIFICATION_COUNT"; + field public static final String EXTRA_NOTIFICATION_PHONE_NUMBER = "android.telecom.extra.NOTIFICATION_PHONE_NUMBER"; + field public static final String EXTRA_OUTGOING_CALL_EXTRAS = "android.telecom.extra.OUTGOING_CALL_EXTRAS"; + field public static final String EXTRA_OUTGOING_PICTURE = "android.telecom.extra.OUTGOING_PICTURE"; + field public static final String EXTRA_PHONE_ACCOUNT_HANDLE = "android.telecom.extra.PHONE_ACCOUNT_HANDLE"; + field public static final String EXTRA_PICTURE_URI = "android.telecom.extra.PICTURE_URI"; + field public static final String EXTRA_PRIORITY = "android.telecom.extra.PRIORITY"; + field public static final String EXTRA_START_CALL_WITH_RTT = "android.telecom.extra.START_CALL_WITH_RTT"; + field public static final String EXTRA_START_CALL_WITH_SPEAKERPHONE = "android.telecom.extra.START_CALL_WITH_SPEAKERPHONE"; + field public static final String EXTRA_START_CALL_WITH_VIDEO_STATE = "android.telecom.extra.START_CALL_WITH_VIDEO_STATE"; + field public static final String EXTRA_USE_ASSISTED_DIALING = "android.telecom.extra.USE_ASSISTED_DIALING"; + field public static final String GATEWAY_ORIGINAL_ADDRESS = "android.telecom.extra.GATEWAY_ORIGINAL_ADDRESS"; + field public static final String GATEWAY_PROVIDER_PACKAGE = "android.telecom.extra.GATEWAY_PROVIDER_PACKAGE"; + field public static final String METADATA_INCLUDE_EXTERNAL_CALLS = "android.telecom.INCLUDE_EXTERNAL_CALLS"; + field public static final String METADATA_INCLUDE_SELF_MANAGED_CALLS = "android.telecom.INCLUDE_SELF_MANAGED_CALLS"; + field public static final String METADATA_IN_CALL_SERVICE_CAR_MODE_UI = "android.telecom.IN_CALL_SERVICE_CAR_MODE_UI"; + field public static final String METADATA_IN_CALL_SERVICE_RINGING = "android.telecom.IN_CALL_SERVICE_RINGING"; + field public static final String METADATA_IN_CALL_SERVICE_UI = "android.telecom.IN_CALL_SERVICE_UI"; + field public static final int PRESENTATION_ALLOWED = 1; // 0x1 + field public static final int PRESENTATION_PAYPHONE = 4; // 0x4 + field public static final int PRESENTATION_RESTRICTED = 2; // 0x2 + field public static final int PRESENTATION_UNAVAILABLE = 5; // 0x5 + field public static final int PRESENTATION_UNKNOWN = 3; // 0x3 + field public static final int PRIORITY_NORMAL = 0; // 0x0 + field public static final int PRIORITY_URGENT = 1; // 0x1 + } + + public class VideoProfile implements android.os.Parcelable { + ctor public VideoProfile(int); + ctor public VideoProfile(int, int); + method public int describeContents(); + method public int getQuality(); + method public int getVideoState(); + method public static boolean isAudioOnly(int); + method public static boolean isBidirectional(int); + method public static boolean isPaused(int); + method public static boolean isReceptionEnabled(int); + method public static boolean isTransmissionEnabled(int); + method public static boolean isVideo(int); + method public static String videoStateToString(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int QUALITY_DEFAULT = 4; // 0x4 + field public static final int QUALITY_HIGH = 1; // 0x1 + field public static final int QUALITY_LOW = 3; // 0x3 + field public static final int QUALITY_MEDIUM = 2; // 0x2 + field public static final int STATE_AUDIO_ONLY = 0; // 0x0 + field public static final int STATE_BIDIRECTIONAL = 3; // 0x3 + field public static final int STATE_PAUSED = 4; // 0x4 + field public static final int STATE_RX_ENABLED = 2; // 0x2 + field public static final int STATE_TX_ENABLED = 1; // 0x1 + } + + public static final class VideoProfile.CameraCapabilities implements android.os.Parcelable { + ctor public VideoProfile.CameraCapabilities(@IntRange(from=0) int, @IntRange(from=0) int); + ctor public VideoProfile.CameraCapabilities(@IntRange(from=0) int, @IntRange(from=0) int, boolean, @FloatRange(from=1.0f) float); + method public int describeContents(); + method public int getHeight(); + method public float getMaxZoom(); + method public int getWidth(); + method public boolean isZoomSupported(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.telephony { + + public final class AccessNetworkConstants { + field public static final int TRANSPORT_TYPE_WLAN = 2; // 0x2 + field public static final int TRANSPORT_TYPE_WWAN = 1; // 0x1 + } + + public static final class AccessNetworkConstants.AccessNetworkType { + field public static final int CDMA2000 = 4; // 0x4 + field public static final int EUTRAN = 3; // 0x3 + field public static final int GERAN = 1; // 0x1 + field public static final int IWLAN = 5; // 0x5 + field public static final int NGRAN = 6; // 0x6 + field public static final int UNKNOWN = 0; // 0x0 + field public static final int UTRAN = 2; // 0x2 + } + + public static final class AccessNetworkConstants.EutranBand { + field public static final int BAND_1 = 1; // 0x1 + field public static final int BAND_10 = 10; // 0xa + field public static final int BAND_11 = 11; // 0xb + field public static final int BAND_12 = 12; // 0xc + field public static final int BAND_13 = 13; // 0xd + field public static final int BAND_14 = 14; // 0xe + field public static final int BAND_17 = 17; // 0x11 + field public static final int BAND_18 = 18; // 0x12 + field public static final int BAND_19 = 19; // 0x13 + field public static final int BAND_2 = 2; // 0x2 + field public static final int BAND_20 = 20; // 0x14 + field public static final int BAND_21 = 21; // 0x15 + field public static final int BAND_22 = 22; // 0x16 + field public static final int BAND_23 = 23; // 0x17 + field public static final int BAND_24 = 24; // 0x18 + field public static final int BAND_25 = 25; // 0x19 + field public static final int BAND_26 = 26; // 0x1a + field public static final int BAND_27 = 27; // 0x1b + field public static final int BAND_28 = 28; // 0x1c + field public static final int BAND_3 = 3; // 0x3 + field public static final int BAND_30 = 30; // 0x1e + field public static final int BAND_31 = 31; // 0x1f + field public static final int BAND_33 = 33; // 0x21 + field public static final int BAND_34 = 34; // 0x22 + field public static final int BAND_35 = 35; // 0x23 + field public static final int BAND_36 = 36; // 0x24 + field public static final int BAND_37 = 37; // 0x25 + field public static final int BAND_38 = 38; // 0x26 + field public static final int BAND_39 = 39; // 0x27 + field public static final int BAND_4 = 4; // 0x4 + field public static final int BAND_40 = 40; // 0x28 + field public static final int BAND_41 = 41; // 0x29 + field public static final int BAND_42 = 42; // 0x2a + field public static final int BAND_43 = 43; // 0x2b + field public static final int BAND_44 = 44; // 0x2c + field public static final int BAND_45 = 45; // 0x2d + field public static final int BAND_46 = 46; // 0x2e + field public static final int BAND_47 = 47; // 0x2f + field public static final int BAND_48 = 48; // 0x30 + field public static final int BAND_49 = 49; // 0x31 + field public static final int BAND_5 = 5; // 0x5 + field public static final int BAND_50 = 50; // 0x32 + field public static final int BAND_51 = 51; // 0x33 + field public static final int BAND_52 = 52; // 0x34 + field public static final int BAND_53 = 53; // 0x35 + field public static final int BAND_6 = 6; // 0x6 + field public static final int BAND_65 = 65; // 0x41 + field public static final int BAND_66 = 66; // 0x42 + field public static final int BAND_68 = 68; // 0x44 + field public static final int BAND_7 = 7; // 0x7 + field public static final int BAND_70 = 70; // 0x46 + field public static final int BAND_71 = 71; // 0x47 + field public static final int BAND_72 = 72; // 0x48 + field public static final int BAND_73 = 73; // 0x49 + field public static final int BAND_74 = 74; // 0x4a + field public static final int BAND_8 = 8; // 0x8 + field public static final int BAND_85 = 85; // 0x55 + field public static final int BAND_87 = 87; // 0x57 + field public static final int BAND_88 = 88; // 0x58 + field public static final int BAND_9 = 9; // 0x9 + } + + public static final class AccessNetworkConstants.GeranBand { + field public static final int BAND_450 = 3; // 0x3 + field public static final int BAND_480 = 4; // 0x4 + field public static final int BAND_710 = 5; // 0x5 + field public static final int BAND_750 = 6; // 0x6 + field public static final int BAND_850 = 8; // 0x8 + field public static final int BAND_DCS1800 = 12; // 0xc + field public static final int BAND_E900 = 10; // 0xa + field public static final int BAND_ER900 = 14; // 0xe + field public static final int BAND_P900 = 9; // 0x9 + field public static final int BAND_PCS1900 = 13; // 0xd + field public static final int BAND_R900 = 11; // 0xb + field public static final int BAND_T380 = 1; // 0x1 + field public static final int BAND_T410 = 2; // 0x2 + field public static final int BAND_T810 = 7; // 0x7 + } + + public static final class AccessNetworkConstants.NgranBands { + field public static final int BAND_1 = 1; // 0x1 + field public static final int BAND_12 = 12; // 0xc + field public static final int BAND_14 = 14; // 0xe + field public static final int BAND_18 = 18; // 0x12 + field public static final int BAND_2 = 2; // 0x2 + field public static final int BAND_20 = 20; // 0x14 + field public static final int BAND_25 = 25; // 0x19 + field public static final int BAND_257 = 257; // 0x101 + field public static final int BAND_258 = 258; // 0x102 + field public static final int BAND_26 = 26; // 0x1a + field public static final int BAND_260 = 260; // 0x104 + field public static final int BAND_261 = 261; // 0x105 + field public static final int BAND_28 = 28; // 0x1c + field public static final int BAND_29 = 29; // 0x1d + field public static final int BAND_3 = 3; // 0x3 + field public static final int BAND_30 = 30; // 0x1e + field public static final int BAND_34 = 34; // 0x22 + field public static final int BAND_38 = 38; // 0x26 + field public static final int BAND_39 = 39; // 0x27 + field public static final int BAND_40 = 40; // 0x28 + field public static final int BAND_41 = 41; // 0x29 + field public static final int BAND_46 = 46; // 0x2e + field public static final int BAND_48 = 48; // 0x30 + field public static final int BAND_5 = 5; // 0x5 + field public static final int BAND_50 = 50; // 0x32 + field public static final int BAND_51 = 51; // 0x33 + field public static final int BAND_53 = 53; // 0x35 + field public static final int BAND_65 = 65; // 0x41 + field public static final int BAND_66 = 66; // 0x42 + field public static final int BAND_7 = 7; // 0x7 + field public static final int BAND_70 = 70; // 0x46 + field public static final int BAND_71 = 71; // 0x47 + field public static final int BAND_74 = 74; // 0x4a + field public static final int BAND_75 = 75; // 0x4b + field public static final int BAND_76 = 76; // 0x4c + field public static final int BAND_77 = 77; // 0x4d + field public static final int BAND_78 = 78; // 0x4e + field public static final int BAND_79 = 79; // 0x4f + field public static final int BAND_8 = 8; // 0x8 + field public static final int BAND_80 = 80; // 0x50 + field public static final int BAND_81 = 81; // 0x51 + field public static final int BAND_82 = 82; // 0x52 + field public static final int BAND_83 = 83; // 0x53 + field public static final int BAND_84 = 84; // 0x54 + field public static final int BAND_86 = 86; // 0x56 + field public static final int BAND_89 = 89; // 0x59 + field public static final int BAND_90 = 90; // 0x5a + field public static final int BAND_91 = 91; // 0x5b + field public static final int BAND_92 = 92; // 0x5c + field public static final int BAND_93 = 93; // 0x5d + field public static final int BAND_94 = 94; // 0x5e + field public static final int BAND_95 = 95; // 0x5f + field public static final int BAND_96 = 96; // 0x60 + } + + public static final class AccessNetworkConstants.UtranBand { + field public static final int BAND_1 = 1; // 0x1 + field public static final int BAND_10 = 10; // 0xa + field public static final int BAND_11 = 11; // 0xb + field public static final int BAND_12 = 12; // 0xc + field public static final int BAND_13 = 13; // 0xd + field public static final int BAND_14 = 14; // 0xe + field public static final int BAND_19 = 19; // 0x13 + field public static final int BAND_2 = 2; // 0x2 + field public static final int BAND_20 = 20; // 0x14 + field public static final int BAND_21 = 21; // 0x15 + field public static final int BAND_22 = 22; // 0x16 + field public static final int BAND_25 = 25; // 0x19 + field public static final int BAND_26 = 26; // 0x1a + field public static final int BAND_3 = 3; // 0x3 + field public static final int BAND_4 = 4; // 0x4 + field public static final int BAND_5 = 5; // 0x5 + field public static final int BAND_6 = 6; // 0x6 + field public static final int BAND_7 = 7; // 0x7 + field public static final int BAND_8 = 8; // 0x8 + field public static final int BAND_9 = 9; // 0x9 + field public static final int BAND_A = 101; // 0x65 + field public static final int BAND_B = 102; // 0x66 + field public static final int BAND_C = 103; // 0x67 + field public static final int BAND_D = 104; // 0x68 + field public static final int BAND_E = 105; // 0x69 + field public static final int BAND_F = 106; // 0x6a + } + + public final class AvailableNetworkInfo implements android.os.Parcelable { + ctor public AvailableNetworkInfo(int, int, @NonNull java.util.List, @NonNull java.util.List); + method public int describeContents(); + method @NonNull public java.util.List getBands(); + method @NonNull public java.util.List getMccMncs(); + method public int getPriority(); + method @NonNull public java.util.List getRadioAccessSpecifiers(); + method public int getSubId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int PRIORITY_HIGH = 1; // 0x1 + field public static final int PRIORITY_LOW = 3; // 0x3 + field public static final int PRIORITY_MED = 2; // 0x2 + } + + public static final class AvailableNetworkInfo.Builder { + ctor public AvailableNetworkInfo.Builder(int); + method @NonNull public android.telephony.AvailableNetworkInfo build(); + method @NonNull public android.telephony.AvailableNetworkInfo.Builder setMccMncs(@NonNull java.util.List); + method @NonNull public android.telephony.AvailableNetworkInfo.Builder setPriority(int); + method @NonNull public android.telephony.AvailableNetworkInfo.Builder setRadioAccessSpecifiers(@NonNull java.util.List); + } + + public final class BarringInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.telephony.BarringInfo.BarringServiceInfo getBarringServiceInfo(int); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int BARRING_SERVICE_TYPE_CS_FALLBACK = 5; // 0x5 + field public static final int BARRING_SERVICE_TYPE_CS_SERVICE = 0; // 0x0 + field public static final int BARRING_SERVICE_TYPE_CS_VOICE = 2; // 0x2 + field public static final int BARRING_SERVICE_TYPE_EMERGENCY = 8; // 0x8 + field public static final int BARRING_SERVICE_TYPE_MMTEL_VIDEO = 7; // 0x7 + field public static final int BARRING_SERVICE_TYPE_MMTEL_VOICE = 6; // 0x6 + field public static final int BARRING_SERVICE_TYPE_MO_DATA = 4; // 0x4 + field public static final int BARRING_SERVICE_TYPE_MO_SIGNALLING = 3; // 0x3 + field public static final int BARRING_SERVICE_TYPE_PS_SERVICE = 1; // 0x1 + field public static final int BARRING_SERVICE_TYPE_SMS = 9; // 0x9 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class BarringInfo.BarringServiceInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getBarringType(); + method public int getConditionalBarringFactor(); + method public int getConditionalBarringTimeSeconds(); + method public boolean isBarred(); + method public boolean isConditionallyBarred(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int BARRING_TYPE_CONDITIONAL = 1; // 0x1 + field public static final int BARRING_TYPE_NONE = 0; // 0x0 + field public static final int BARRING_TYPE_UNCONDITIONAL = 2; // 0x2 + field public static final int BARRING_TYPE_UNKNOWN = -1; // 0xffffffff + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class CarrierConfigManager { + method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.os.PersistableBundle getConfig(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public android.os.PersistableBundle getConfig(@NonNull java.lang.String...); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.os.PersistableBundle getConfigByComponentForSubId(@NonNull String, int); + method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.os.PersistableBundle getConfigForSubId(int); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public android.os.PersistableBundle getConfigForSubId(int, @NonNull java.lang.String...); + method public static boolean isConfigForIdentifiedCarrier(android.os.PersistableBundle); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void notifyConfigChangedForSubId(int); + method public void registerCarrierConfigChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.CarrierConfigManager.CarrierConfigChangeListener); + method public void unregisterCarrierConfigChangeListener(@NonNull android.telephony.CarrierConfigManager.CarrierConfigChangeListener); + field public static final String ACTION_CARRIER_CONFIG_CHANGED = "android.telephony.action.CARRIER_CONFIG_CHANGED"; + field public static final int CARRIER_NR_AVAILABILITY_NSA = 1; // 0x1 + field public static final int CARRIER_NR_AVAILABILITY_SA = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int CARRIER_ROAMING_NTN_CONNECT_AUTOMATIC = 0; // 0x0 + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int CARRIER_ROAMING_NTN_CONNECT_MANUAL = 1; // 0x1 + field public static final int CROSS_SIM_SPN_FORMAT_CARRIER_NAME_ONLY = 0; // 0x0 + field public static final int CROSS_SIM_SPN_FORMAT_CARRIER_NAME_WITH_BRANDING = 1; // 0x1 + field public static final int DATA_CYCLE_THRESHOLD_DISABLED = -2; // 0xfffffffe + field public static final int DATA_CYCLE_USE_PLATFORM_DEFAULT = -1; // 0xffffffff + field public static final String ENABLE_EAP_METHOD_PREFIX_BOOL = "enable_eap_method_prefix_bool"; + field public static final String EXTRA_REBROADCAST_ON_UNLOCK = "android.telephony.extra.REBROADCAST_ON_UNLOCK"; + field public static final String EXTRA_SLOT_INDEX = "android.telephony.extra.SLOT_INDEX"; + field public static final String EXTRA_SUBSCRIPTION_INDEX = "android.telephony.extra.SUBSCRIPTION_INDEX"; + field public static final String IMSI_KEY_AVAILABILITY_INT = "imsi_key_availability_int"; + field public static final String KEY_5G_NR_SSRSRP_THRESHOLDS_INT_ARRAY = "5g_nr_ssrsrp_thresholds_int_array"; + field public static final String KEY_5G_NR_SSRSRQ_THRESHOLDS_INT_ARRAY = "5g_nr_ssrsrq_thresholds_int_array"; + field public static final String KEY_5G_NR_SSSINR_THRESHOLDS_INT_ARRAY = "5g_nr_sssinr_thresholds_int_array"; + field public static final String KEY_ADDITIONAL_CALL_SETTING_BOOL = "additional_call_setting_bool"; + field public static final String KEY_ADDITIONAL_SETTINGS_CALLER_ID_VISIBILITY_BOOL = "additional_settings_caller_id_visibility_bool"; + field public static final String KEY_ADDITIONAL_SETTINGS_CALL_WAITING_VISIBILITY_BOOL = "additional_settings_call_waiting_visibility_bool"; + field public static final String KEY_ALLOW_ADDING_APNS_BOOL = "allow_adding_apns_bool"; + field public static final String KEY_ALLOW_ADD_CALL_DURING_VIDEO_CALL_BOOL = "allow_add_call_during_video_call"; + field public static final String KEY_ALLOW_EMERGENCY_NUMBERS_IN_CALL_LOG_BOOL = "allow_emergency_numbers_in_call_log_bool"; + field public static final String KEY_ALLOW_EMERGENCY_VIDEO_CALLS_BOOL = "allow_emergency_video_calls_bool"; + field public static final String KEY_ALLOW_HOLD_CALL_DURING_EMERGENCY_BOOL = "allow_hold_call_during_emergency_bool"; + field public static final String KEY_ALLOW_HOLD_VIDEO_CALL_BOOL = "allow_hold_video_call_bool"; + field public static final String KEY_ALLOW_LOCAL_DTMF_TONES_BOOL = "allow_local_dtmf_tones_bool"; + field public static final String KEY_ALLOW_MERGE_WIFI_CALLS_WHEN_VOWIFI_OFF_BOOL = "allow_merge_wifi_calls_when_vowifi_off_bool"; + field public static final String KEY_ALLOW_NON_EMERGENCY_CALLS_IN_ECM_BOOL = "allow_non_emergency_calls_in_ecm_bool"; + field public static final String KEY_ALLOW_VIDEO_CALLING_FALLBACK_BOOL = "allow_video_calling_fallback_bool"; + field public static final String KEY_ALWAYS_SHOW_DATA_RAT_ICON_BOOL = "always_show_data_rat_icon_bool"; + field @Deprecated public static final String KEY_ALWAYS_SHOW_EMERGENCY_ALERT_ONOFF_BOOL = "always_show_emergency_alert_onoff_bool"; + field public static final String KEY_ALWAYS_SHOW_PRIMARY_SIGNAL_BAR_IN_OPPORTUNISTIC_NETWORK_BOOLEAN = "always_show_primary_signal_bar_in_opportunistic_network_boolean"; + field public static final String KEY_APN_EXPAND_BOOL = "apn_expand_bool"; + field public static final String KEY_APN_SETTINGS_DEFAULT_APN_TYPES_STRING_ARRAY = "apn_settings_default_apn_types_string_array"; + field public static final String KEY_AUTO_RETRY_ENABLED_BOOL = "auto_retry_enabled_bool"; + field public static final String KEY_CALL_BARRING_DEFAULT_SERVICE_CLASS_INT = "call_barring_default_service_class_int"; + field public static final String KEY_CALL_BARRING_SUPPORTS_DEACTIVATE_ALL_BOOL = "call_barring_supports_deactivate_all_bool"; + field public static final String KEY_CALL_BARRING_SUPPORTS_PASSWORD_CHANGE_BOOL = "call_barring_supports_password_change_bool"; + field public static final String KEY_CALL_BARRING_VISIBILITY_BOOL = "call_barring_visibility_bool"; + field public static final String KEY_CALL_COMPOSER_PICTURE_SERVER_URL_STRING = "call_composer_picture_server_url_string"; + field public static final String KEY_CALL_FORWARDING_BLOCKS_WHILE_ROAMING_STRING_ARRAY = "call_forwarding_blocks_while_roaming_string_array"; + field public static final String KEY_CALL_REDIRECTION_SERVICE_COMPONENT_NAME_STRING = "call_redirection_service_component_name_string"; + field public static final String KEY_CAPABILITIES_EXEMPT_FROM_SINGLE_DC_CHECK_INT_ARRAY = "capabilities_exempt_from_single_dc_check_int_array"; + field public static final String KEY_CARRIER_ALLOW_DEFLECT_IMS_CALL_BOOL = "carrier_allow_deflect_ims_call_bool"; + field public static final String KEY_CARRIER_ALLOW_TURNOFF_IMS_BOOL = "carrier_allow_turnoff_ims_bool"; + field public static final String KEY_CARRIER_APP_REQUIRED_DURING_SIM_SETUP_BOOL = "carrier_app_required_during_setup_bool"; + field public static final String KEY_CARRIER_CALL_SCREENING_APP_STRING = "call_screening_app"; + field public static final String KEY_CARRIER_CERTIFICATE_STRING_ARRAY = "carrier_certificate_string_array"; + field public static final String KEY_CARRIER_CONFIG_APPLIED_BOOL = "carrier_config_applied_bool"; + field public static final String KEY_CARRIER_CONFIG_VERSION_STRING = "carrier_config_version_string"; + field public static final String KEY_CARRIER_CROSS_SIM_IMS_AVAILABLE_BOOL = "carrier_cross_sim_ims_available_bool"; + field @Deprecated public static final String KEY_CARRIER_DATA_CALL_PERMANENT_FAILURE_STRINGS = "carrier_data_call_permanent_failure_strings"; + field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_DCFAILURE_STRING_ARRAY = "carrier_default_actions_on_dcfailure_string_array"; + field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_DEFAULT_NETWORK_AVAILABLE = "carrier_default_actions_on_default_network_available_string_array"; + field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_REDIRECTION_STRING_ARRAY = "carrier_default_actions_on_redirection_string_array"; + field public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_RESET = "carrier_default_actions_on_reset_string_array"; + field public static final String KEY_CARRIER_DEFAULT_REDIRECTION_URL_STRING_ARRAY = "carrier_default_redirection_url_string_array"; + field public static final String KEY_CARRIER_DEFAULT_WFC_IMS_ENABLED_BOOL = "carrier_default_wfc_ims_enabled_bool"; + field public static final String KEY_CARRIER_DEFAULT_WFC_IMS_MODE_INT = "carrier_default_wfc_ims_mode_int"; + field public static final String KEY_CARRIER_DEFAULT_WFC_IMS_ROAMING_MODE_INT = "carrier_default_wfc_ims_roaming_mode_int"; + field @Deprecated public static final String KEY_CARRIER_FORCE_DISABLE_ETWS_CMAS_TEST_BOOL = "carrier_force_disable_etws_cmas_test_bool"; + field public static final String KEY_CARRIER_IMS_GBA_REQUIRED_BOOL = "carrier_ims_gba_required_bool"; + field public static final String KEY_CARRIER_INSTANT_LETTERING_AVAILABLE_BOOL = "carrier_instant_lettering_available_bool"; + field public static final String KEY_CARRIER_INSTANT_LETTERING_ENCODING_STRING = "carrier_instant_lettering_encoding_string"; + field public static final String KEY_CARRIER_INSTANT_LETTERING_ESCAPED_CHARS_STRING = "carrier_instant_lettering_escaped_chars_string"; + field public static final String KEY_CARRIER_INSTANT_LETTERING_INVALID_CHARS_STRING = "carrier_instant_lettering_invalid_chars_string"; + field public static final String KEY_CARRIER_INSTANT_LETTERING_LENGTH_LIMIT_INT = "carrier_instant_lettering_length_limit_int"; + field public static final String KEY_CARRIER_METERED_APN_TYPES_STRINGS = "carrier_metered_apn_types_strings"; + field public static final String KEY_CARRIER_METERED_ROAMING_APN_TYPES_STRINGS = "carrier_metered_roaming_apn_types_strings"; + field public static final String KEY_CARRIER_NAME_OVERRIDE_BOOL = "carrier_name_override_bool"; + field public static final String KEY_CARRIER_NAME_STRING = "carrier_name_string"; + field public static final String KEY_CARRIER_NR_AVAILABILITIES_INT_ARRAY = "carrier_nr_availabilities_int_array"; + field public static final String KEY_CARRIER_PROVISIONS_WIFI_MERGED_NETWORKS_BOOL = "carrier_provisions_wifi_merged_networks_bool"; + field public static final String KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL = "carrier_rcs_provisioning_required_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_CARRIER_ROAMING_NTN_CONNECT_TYPE_INT = "carrier_roaming_ntn_connect_type_int"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_CARRIER_ROAMING_NTN_EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE_INT = "carrier_roaming_ntn_emergency_call_to_satellite_handover_type_int"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_CARRIER_ROAMING_SATELLITE_DEFAULT_SERVICES_INT_ARRAY = "carrier_roaming_satellite_default_services_int_array"; + field public static final String KEY_CARRIER_SERVICE_NAME_STRING_ARRAY = "carrier_service_name_array"; + field public static final String KEY_CARRIER_SERVICE_NUMBER_STRING_ARRAY = "carrier_service_number_array"; + field public static final String KEY_CARRIER_SETTINGS_ACTIVITY_COMPONENT_NAME_STRING = "carrier_settings_activity_component_name_string"; + field public static final String KEY_CARRIER_SETTINGS_ENABLE_BOOL = "carrier_settings_enable_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_CARRIER_SUPPORTED_SATELLITE_NOTIFICATION_HYSTERESIS_SEC_INT = "carrier_supported_satellite_notification_hysteresis_sec_int"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_CARRIER_SUPPORTED_SATELLITE_SERVICES_PER_PROVIDER_BUNDLE = "carrier_supported_satellite_services_per_provider_bundle"; + field public static final String KEY_CARRIER_SUPPORTS_OPP_DATA_AUTO_PROVISIONING_BOOL = "carrier_supports_opp_data_auto_provisioning_bool"; + field public static final String KEY_CARRIER_SUPPORTS_SS_OVER_UT_BOOL = "carrier_supports_ss_over_ut_bool"; + field public static final String KEY_CARRIER_SUPPORTS_TETHERING_BOOL = "carrier_supports_tethering_bool"; + field public static final String KEY_CARRIER_USE_IMS_FIRST_FOR_EMERGENCY_BOOL = "carrier_use_ims_first_for_emergency_bool"; + field public static final String KEY_CARRIER_USSD_METHOD_INT = "carrier_ussd_method_int"; + field @Deprecated public static final String KEY_CARRIER_UT_PROVISIONING_REQUIRED_BOOL = "carrier_ut_provisioning_required_bool"; + field public static final String KEY_CARRIER_VOLTE_AVAILABLE_BOOL = "carrier_volte_available_bool"; + field public static final String KEY_CARRIER_VOLTE_OVERRIDE_WFC_PROVISIONING_BOOL = "carrier_volte_override_wfc_provisioning_bool"; + field @Deprecated public static final String KEY_CARRIER_VOLTE_PROVISIONED_BOOL = "carrier_volte_provisioned_bool"; + field @Deprecated public static final String KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL = "carrier_volte_provisioning_required_bool"; + field public static final String KEY_CARRIER_VOLTE_TTY_SUPPORTED_BOOL = "carrier_volte_tty_supported_bool"; + field public static final String KEY_CARRIER_VT_AVAILABLE_BOOL = "carrier_vt_available_bool"; + field @Deprecated public static final String KEY_CARRIER_VVM_PACKAGE_NAME_STRING = "carrier_vvm_package_name_string"; + field public static final String KEY_CARRIER_VVM_PACKAGE_NAME_STRING_ARRAY = "carrier_vvm_package_name_string_array"; + field public static final String KEY_CARRIER_WFC_IMS_AVAILABLE_BOOL = "carrier_wfc_ims_available_bool"; + field public static final String KEY_CARRIER_WFC_SUPPORTS_WIFI_ONLY_BOOL = "carrier_wfc_supports_wifi_only_bool"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_3WAYCALL_FLASH_DELAY_INT = "cdma_3waycall_flash_delay_int"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_DTMF_TONE_DELAY_INT = "cdma_dtmf_tone_delay_int"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_NONROAMING_NETWORKS_STRING_ARRAY = "cdma_nonroaming_networks_string_array"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_ROAMING_MODE_INT = "cdma_roaming_mode_int"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_CDMA_ROAMING_NETWORKS_STRING_ARRAY = "cdma_roaming_networks_string_array"; + field public static final String KEY_CELLULAR_SERVICE_CAPABILITIES_INT_ARRAY = "cellular_service_capabilities_int_array"; + field public static final String KEY_CELLULAR_USAGE_SETTING_INT = "cellular_usage_setting_int"; + field public static final String KEY_CHECK_PRICING_WITH_CARRIER_FOR_DATA_ROAMING_BOOL = "check_pricing_with_carrier_data_roaming_bool"; + field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_BOOL = "ci_action_on_sys_update_bool"; + field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_STRING = "ci_action_on_sys_update_extra_string"; + field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_VAL_STRING = "ci_action_on_sys_update_extra_val_string"; + field public static final String KEY_CI_ACTION_ON_SYS_UPDATE_INTENT_STRING = "ci_action_on_sys_update_intent_string"; + field public static final String KEY_CONFIG_IMS_MMTEL_PACKAGE_OVERRIDE_STRING = "config_ims_mmtel_package_override_string"; + field @Deprecated public static final String KEY_CONFIG_IMS_PACKAGE_OVERRIDE_STRING = "config_ims_package_override_string"; + field public static final String KEY_CONFIG_IMS_RCS_PACKAGE_OVERRIDE_STRING = "config_ims_rcs_package_override_string"; + field public static final String KEY_CONFIG_PLANS_PACKAGE_OVERRIDE_STRING = "config_plans_package_override_string"; + field public static final String KEY_CONFIG_TELEPHONY_USE_OWN_NUMBER_FOR_VOICEMAIL_BOOL = "config_telephony_use_own_number_for_voicemail_bool"; + field public static final String KEY_CONFIG_WIFI_DISABLE_IN_ECBM = "config_wifi_disable_in_ecbm"; + field public static final String KEY_CROSS_SIM_SPN_FORMAT_INT = "cross_sim_spn_format_int"; + field public static final String KEY_CSP_ENABLED_BOOL = "csp_enabled_bool"; + field public static final String KEY_DATA_LIMIT_NOTIFICATION_BOOL = "data_limit_notification_bool"; + field public static final String KEY_DATA_LIMIT_THRESHOLD_BYTES_LONG = "data_limit_threshold_bytes_long"; + field public static final String KEY_DATA_RAPID_NOTIFICATION_BOOL = "data_rapid_notification_bool"; + field public static final String KEY_DATA_SWITCH_VALIDATION_MIN_INTERVAL_MILLIS_LONG = "data_switch_validation_min_gap_long"; + field public static final String KEY_DATA_SWITCH_VALIDATION_TIMEOUT_LONG = "data_switch_validation_timeout_long"; + field public static final String KEY_DATA_WARNING_NOTIFICATION_BOOL = "data_warning_notification_bool"; + field public static final String KEY_DATA_WARNING_THRESHOLD_BYTES_LONG = "data_warning_threshold_bytes_long"; + field public static final String KEY_DEFAULT_SIM_CALL_MANAGER_STRING = "default_sim_call_manager_string"; + field public static final String KEY_DEFAULT_VM_NUMBER_ROAMING_AND_IMS_UNREGISTERED_STRING = "default_vm_number_roaming_and_ims_unregistered_string"; + field public static final String KEY_DEFAULT_VM_NUMBER_STRING = "default_vm_number_string"; + field public static final String KEY_DIAL_STRING_REPLACE_STRING_ARRAY = "dial_string_replace_string_array"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_DISABLE_CDMA_ACTIVATION_CODE_BOOL = "disable_cdma_activation_code_bool"; + field public static final String KEY_DISABLE_CHARGE_INDICATION_BOOL = "disable_charge_indication_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_DISABLE_DUN_APN_WHILE_ROAMING_WITH_PRESET_APN_BOOL = "disable_dun_apn_while_roaming_with_preset_apn_bool"; + field public static final String KEY_DISABLE_SUPPLEMENTARY_SERVICES_IN_AIRPLANE_MODE_BOOL = "disable_supplementary_services_in_airplane_mode_bool"; + field public static final String KEY_DISCONNECT_CAUSE_PLAY_BUSYTONE_INT_ARRAY = "disconnect_cause_play_busytone_int_array"; + field public static final String KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL = "display_call_strength_indicator_bool"; + field public static final String KEY_DISPLAY_HD_AUDIO_PROPERTY_BOOL = "display_hd_audio_property_bool"; + field public static final String KEY_DROP_VIDEO_CALL_WHEN_ANSWERING_AUDIO_CALL_BOOL = "drop_video_call_when_answering_audio_call_bool"; + field public static final String KEY_DTMF_TYPE_ENABLED_BOOL = "dtmf_type_enabled_bool"; + field public static final String KEY_DURATION_BLOCKING_DISABLED_AFTER_EMERGENCY_INT = "duration_blocking_disabled_after_emergency_int"; + field public static final String KEY_EDITABLE_ENHANCED_4G_LTE_BOOL = "editable_enhanced_4g_lte_bool"; + field public static final String KEY_EDITABLE_VOICEMAIL_NUMBER_BOOL = "editable_voicemail_number_bool"; + field public static final String KEY_EDITABLE_VOICEMAIL_NUMBER_SETTING_BOOL = "editable_voicemail_number_setting_bool"; + field public static final String KEY_EDITABLE_WFC_MODE_BOOL = "editable_wfc_mode_bool"; + field public static final String KEY_EDITABLE_WFC_ROAMING_MODE_BOOL = "editable_wfc_roaming_mode_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_EMERGENCY_CALL_TO_SATELLITE_T911_HANDOVER_TIMEOUT_MILLIS_INT = "emergency_call_to_satellite_t911_handover_timeout_millis_int"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_EMERGENCY_MESSAGING_SUPPORTED_BOOL = "emergency_messaging_supported_bool"; + field public static final String KEY_EMERGENCY_NOTIFICATION_DELAY_INT = "emergency_notification_delay_int"; + field public static final String KEY_EMERGENCY_NUMBER_PREFIX_STRING_ARRAY = "emergency_number_prefix_string_array"; + field public static final String KEY_ENABLE_CROSS_SIM_CALLING_ON_OPPORTUNISTIC_DATA_BOOL = "enable_cross_sim_calling_on_opportunistic_data_bool"; + field public static final String KEY_ENABLE_DIALER_KEY_VIBRATION_BOOL = "enable_dialer_key_vibration_bool"; + field public static final String KEY_ENHANCED_4G_LTE_ON_BY_DEFAULT_BOOL = "enhanced_4g_lte_on_by_default_bool"; + field public static final String KEY_ENHANCED_4G_LTE_TITLE_VARIANT_INT = "enhanced_4g_lte_title_variant_int"; + field public static final String KEY_ESIM_DOWNLOAD_RETRY_BACKOFF_TIMER_SEC_INT = "esim_download_retry_backoff_timer_sec_int"; + field public static final String KEY_ESIM_MAX_DOWNLOAD_RETRY_ATTEMPTS_INT = "esim_max_download_retry_attempts_int"; + field public static final String KEY_FORCE_HOME_NETWORK_BOOL = "force_home_network_bool"; + field public static final String KEY_GSM_DTMF_TONE_DELAY_INT = "gsm_dtmf_tone_delay_int"; + field public static final String KEY_GSM_NONROAMING_NETWORKS_STRING_ARRAY = "gsm_nonroaming_networks_string_array"; + field public static final String KEY_GSM_ROAMING_NETWORKS_STRING_ARRAY = "gsm_roaming_networks_string_array"; + field public static final String KEY_HAS_IN_CALL_NOISE_SUPPRESSION_BOOL = "has_in_call_noise_suppression_bool"; + field public static final String KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL = "hide_carrier_network_settings_bool"; + field public static final String KEY_HIDE_ENHANCED_4G_LTE_BOOL = "hide_enhanced_4g_lte_bool"; + field public static final String KEY_HIDE_IMS_APN_BOOL = "hide_ims_apn_bool"; + field public static final String KEY_HIDE_LTE_PLUS_DATA_ICON_BOOL = "hide_lte_plus_data_icon_bool"; + field public static final String KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL = "hide_preferred_network_type_bool"; + field public static final String KEY_HIDE_PRESET_APN_DETAILS_BOOL = "hide_preset_apn_details_bool"; + field public static final String KEY_HIDE_SIM_LOCK_SETTINGS_BOOL = "hide_sim_lock_settings_bool"; + field public static final String KEY_HIDE_TTY_HCO_VCO_WITH_RTT_BOOL = "hide_tty_hco_vco_with_rtt"; + field public static final String KEY_IGNORE_DATA_ENABLED_CHANGED_FOR_VIDEO_CALLS = "ignore_data_enabled_changed_for_video_calls"; + field public static final String KEY_IGNORE_RTT_MODE_SETTING_BOOL = "ignore_rtt_mode_setting_bool"; + field public static final String KEY_IGNORE_SIM_NETWORK_LOCKED_EVENTS_BOOL = "ignore_sim_network_locked_events_bool"; + field public static final String KEY_IMS_CONFERENCE_SIZE_LIMIT_INT = "ims_conference_size_limit_int"; + field public static final String KEY_IMS_DTMF_TONE_DELAY_INT = "ims_dtmf_tone_delay_int"; + field public static final String KEY_INCLUDE_LTE_FOR_NR_ADVANCED_THRESHOLD_BANDWIDTH_BOOL = "include_lte_for_nr_advanced_threshold_bandwidth_bool"; + field public static final String KEY_IS_IMS_CONFERENCE_SIZE_ENFORCED_BOOL = "is_ims_conference_size_enforced_bool"; + field public static final String KEY_IS_OPPORTUNISTIC_SUBSCRIPTION_BOOL = "is_opportunistic_subscription_bool"; + field public static final String KEY_LTE_ENABLED_BOOL = "lte_enabled_bool"; + field public static final String KEY_LTE_RSRQ_THRESHOLDS_INT_ARRAY = "lte_rsrq_thresholds_int_array"; + field public static final String KEY_LTE_RSSNR_THRESHOLDS_INT_ARRAY = "lte_rssnr_thresholds_int_array"; + field public static final String KEY_MDN_IS_ADDITIONAL_VOICEMAIL_NUMBER_BOOL = "mdn_is_additional_voicemail_number_bool"; + field public static final String KEY_MMS_ALIAS_ENABLED_BOOL = "aliasEnabled"; + field public static final String KEY_MMS_ALIAS_MAX_CHARS_INT = "aliasMaxChars"; + field public static final String KEY_MMS_ALIAS_MIN_CHARS_INT = "aliasMinChars"; + field public static final String KEY_MMS_ALLOW_ATTACH_AUDIO_BOOL = "allowAttachAudio"; + field public static final String KEY_MMS_APPEND_TRANSACTION_ID_BOOL = "enabledTransID"; + field public static final String KEY_MMS_CLOSE_CONNECTION_BOOL = "mmsCloseConnection"; + field public static final String KEY_MMS_EMAIL_GATEWAY_NUMBER_STRING = "emailGatewayNumber"; + field public static final String KEY_MMS_GROUP_MMS_ENABLED_BOOL = "enableGroupMms"; + field public static final String KEY_MMS_HTTP_PARAMS_STRING = "httpParams"; + field public static final String KEY_MMS_HTTP_SOCKET_TIMEOUT_INT = "httpSocketTimeout"; + field public static final String KEY_MMS_MAX_IMAGE_HEIGHT_INT = "maxImageHeight"; + field public static final String KEY_MMS_MAX_IMAGE_WIDTH_INT = "maxImageWidth"; + field public static final String KEY_MMS_MAX_MESSAGE_SIZE_INT = "maxMessageSize"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_MMS_MAX_NTN_PAYLOAD_SIZE_BYTES_INT = "mms_max_ntn_payload_size_bytes_int"; + field public static final String KEY_MMS_MESSAGE_TEXT_MAX_SIZE_INT = "maxMessageTextSize"; + field public static final String KEY_MMS_MMS_DELIVERY_REPORT_ENABLED_BOOL = "enableMMSDeliveryReports"; + field public static final String KEY_MMS_MMS_ENABLED_BOOL = "enabledMMS"; + field public static final String KEY_MMS_MMS_READ_REPORT_ENABLED_BOOL = "enableMMSReadReports"; + field public static final String KEY_MMS_MULTIPART_SMS_ENABLED_BOOL = "enableMultipartSMS"; + field public static final String KEY_MMS_NAI_SUFFIX_STRING = "naiSuffix"; + field public static final String KEY_MMS_NETWORK_RELEASE_TIMEOUT_MILLIS_INT = "mms_network_release_timeout_millis_int"; + field public static final String KEY_MMS_NOTIFY_WAP_MMSC_ENABLED_BOOL = "enabledNotifyWapMMSC"; + field public static final String KEY_MMS_RECIPIENT_LIMIT_INT = "recipientLimit"; + field public static final String KEY_MMS_SEND_MULTIPART_SMS_AS_SEPARATE_MESSAGES_BOOL = "sendMultipartSmsAsSeparateMessages"; + field public static final String KEY_MMS_SHOW_CELL_BROADCAST_APP_LINKS_BOOL = "config_cellBroadcastAppLinks"; + field public static final String KEY_MMS_SMS_DELIVERY_REPORT_ENABLED_BOOL = "enableSMSDeliveryReports"; + field public static final String KEY_MMS_SMS_TO_MMS_TEXT_LENGTH_THRESHOLD_INT = "smsToMmsTextLengthThreshold"; + field public static final String KEY_MMS_SMS_TO_MMS_TEXT_THRESHOLD_INT = "smsToMmsTextThreshold"; + field public static final String KEY_MMS_SUBJECT_MAX_LENGTH_INT = "maxSubjectLength"; + field public static final String KEY_MMS_SUPPORT_HTTP_CHARSET_HEADER_BOOL = "supportHttpCharsetHeader"; + field public static final String KEY_MMS_SUPPORT_MMS_CONTENT_DISPOSITION_BOOL = "supportMmsContentDisposition"; + field public static final String KEY_MMS_UA_PROF_TAG_NAME_STRING = "uaProfTagName"; + field public static final String KEY_MMS_UA_PROF_URL_STRING = "uaProfUrl"; + field public static final String KEY_MMS_USER_AGENT_STRING = "userAgent"; + field public static final String KEY_MONTHLY_DATA_CYCLE_DAY_INT = "monthly_data_cycle_day_int"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_NTN_LTE_RSRP_THRESHOLDS_INT_ARRAY = "ntn_lte_rsrp_thresholds_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_NTN_LTE_RSRQ_THRESHOLDS_INT_ARRAY = "ntn_lte_rsrq_thresholds_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_NTN_LTE_RSSNR_THRESHOLDS_INT_ARRAY = "ntn_lte_rssnr_thresholds_int_array"; + field public static final String KEY_ONLY_AUTO_SELECT_IN_HOME_NETWORK_BOOL = "only_auto_select_in_home_network"; + field public static final String KEY_ONLY_SINGLE_DC_ALLOWED_INT_ARRAY = "only_single_dc_allowed_int_array"; + field public static final String KEY_OPERATOR_SELECTION_EXPAND_BOOL = "operator_selection_expand_bool"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_BACKOFF_TIME_LONG = "opportunistic_network_backoff_time_long"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_DATA_SWITCH_EXIT_HYSTERESIS_TIME_LONG = "opportunistic_network_data_switch_exit_hysteresis_time_long"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_DATA_SWITCH_HYSTERESIS_TIME_LONG = "opportunistic_network_data_switch_hysteresis_time_long"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_OR_EXIT_HYSTERESIS_TIME_LONG = "opportunistic_network_entry_or_exit_hysteresis_time_long"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_THRESHOLD_BANDWIDTH_INT = "opportunistic_network_entry_threshold_bandwidth_int"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_THRESHOLD_RSRP_INT = "opportunistic_network_entry_threshold_rsrp_int"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_ENTRY_THRESHOLD_RSSNR_INT = "opportunistic_network_entry_threshold_rssnr_int"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_EXIT_THRESHOLD_RSRP_INT = "opportunistic_network_exit_threshold_rsrp_int"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_EXIT_THRESHOLD_RSSNR_INT = "opportunistic_network_exit_threshold_rssnr_int"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_MAX_BACKOFF_TIME_LONG = "opportunistic_network_max_backoff_time_long"; + field public static final String KEY_OPPORTUNISTIC_NETWORK_PING_PONG_TIME_LONG = "opportunistic_network_ping_pong_time_long"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_OVERRIDE_WFC_ROAMING_MODE_WHILE_USING_NTN_BOOL = "override_wfc_roaming_mode_while_using_ntn_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_PARAMETERS_USED_FOR_NTN_LTE_SIGNAL_BAR_INT = "parameters_used_for_ntn_lte_signal_bar_int"; + field public static final String KEY_PING_TEST_BEFORE_DATA_SWITCH_BOOL = "ping_test_before_data_switch_bool"; + field public static final String KEY_PREFER_2G_BOOL = "prefer_2g_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.hide_prefer_3g_item") public static final String KEY_PREFER_3G_VISIBILITY_BOOL = "prefer_3g_visibility_bool"; + field public static final String KEY_PREMIUM_CAPABILITY_MAXIMUM_DAILY_NOTIFICATION_COUNT_INT = "premium_capability_maximum_daily_notification_count_int"; + field public static final String KEY_PREMIUM_CAPABILITY_MAXIMUM_MONTHLY_NOTIFICATION_COUNT_INT = "premium_capability_maximum_monthly_notification_count_int"; + field public static final String KEY_PREMIUM_CAPABILITY_NETWORK_SETUP_TIME_MILLIS_LONG = "premium_capability_network_setup_time_millis_long"; + field public static final String KEY_PREMIUM_CAPABILITY_NOTIFICATION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONG = "premium_capability_notification_backoff_hysteresis_time_millis_long"; + field public static final String KEY_PREMIUM_CAPABILITY_NOTIFICATION_DISPLAY_TIMEOUT_MILLIS_LONG = "premium_capability_notification_display_timeout_millis_long"; + field public static final String KEY_PREMIUM_CAPABILITY_PURCHASE_CONDITION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONG = "premium_capability_purchase_condition_backoff_hysteresis_time_millis_long"; + field public static final String KEY_PREMIUM_CAPABILITY_PURCHASE_URL_STRING = "premium_capability_purchase_url_string"; + field public static final String KEY_PREMIUM_CAPABILITY_SUPPORTED_ON_LTE_BOOL = "premium_capability_supported_on_lte_bool"; + field public static final String KEY_PREVENT_CLIR_ACTIVATION_AND_DEACTIVATION_CODE_BOOL = "prevent_clir_activation_and_deactivation_code_bool"; + field public static final String KEY_RADIO_RESTART_FAILURE_CAUSES_INT_ARRAY = "radio_restart_failure_causes_int_array"; + field public static final String KEY_RATCHET_NR_ADVANCED_BANDWIDTH_IF_RRC_IDLE_BOOL = "ratchet_nr_advanced_bandwidth_if_rrc_idle_bool"; + field public static final String KEY_RCS_CONFIG_SERVER_URL_STRING = "rcs_config_server_url_string"; + field public static final String KEY_READ_ONLY_APN_FIELDS_STRING_ARRAY = "read_only_apn_fields_string_array"; + field public static final String KEY_READ_ONLY_APN_TYPES_STRING_ARRAY = "read_only_apn_types_string_array"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_REGIONAL_SATELLITE_EARFCN_BUNDLE = "regional_satellite_earfcn_bundle"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_REMOVE_SATELLITE_PLMN_IN_MANUAL_NETWORK_SCAN_BOOL = "remove_satellite_plmn_in_manual_network_scan_bool"; + field public static final String KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL = "require_entitlement_checks_bool"; + field @Deprecated public static final String KEY_RESTART_RADIO_ON_PDP_FAIL_REGULAR_DEACTIVATION_BOOL = "restart_radio_on_pdp_fail_regular_deactivation_bool"; + field public static final String KEY_RTT_AUTO_UPGRADE_BOOL = "rtt_auto_upgrade_bool"; + field public static final String KEY_RTT_DOWNGRADE_SUPPORTED_BOOL = "rtt_downgrade_supported_bool"; + field public static final String KEY_RTT_SUPPORTED_BOOL = "rtt_supported_bool"; + field public static final String KEY_RTT_SUPPORTED_FOR_VT_BOOL = "rtt_supported_for_vt_bool"; + field public static final String KEY_RTT_SUPPORTED_WHILE_ROAMING_BOOL = "rtt_supported_while_roaming_bool"; + field public static final String KEY_RTT_UPGRADE_SUPPORTED_BOOL = "rtt_upgrade_supported_bool"; + field public static final String KEY_RTT_UPGRADE_SUPPORTED_FOR_DOWNGRADED_VT_CALL_BOOL = "rtt_upgrade_supported_for_downgraded_vt_call"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_SATELLITE_ATTACH_SUPPORTED_BOOL = "satellite_attach_supported_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_SATELLITE_CONNECTION_HYSTERESIS_SEC_INT = "satellite_connection_hysteresis_sec_int"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_DATA_SUPPORT_MODE_INT = "satellite_data_support_mode_int"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_DISPLAY_NAME_STRING = "satellite_display_name_string"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_ENTITLEMENT_APP_NAME_STRING = "satellite_entitlement_app_name_string"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_SATELLITE_ENTITLEMENT_STATUS_REFRESH_DAYS_INT = "satellite_entitlement_status_refresh_days_int"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final String KEY_SATELLITE_ENTITLEMENT_SUPPORTED_BOOL = "satellite_entitlement_supported_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ESOS_SUPPORTED_BOOL = "satellite_esos_supported_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_INFORMATION_REDIRECT_URL_STRING = "satellite_information_redirect_url_string"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_NIDD_APN_NAME_STRING = "satellite_nidd_apn_name_string"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ROAMING_ESOS_INACTIVITY_TIMEOUT_SEC_INT = "satellite_roaming_esos_inactivity_timeout_sec_int"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ROAMING_P2P_SMS_INACTIVITY_TIMEOUT_SEC_INT = "satellite_roaming_p2p_sms_inactivity_timeout_sec_int"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ROAMING_P2P_SMS_SUPPORTED_BOOL = "satellite_roaming_p2p_sms_supported_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn") public static final String KEY_SATELLITE_ROAMING_SCREEN_OFF_INACTIVITY_TIMEOUT_SEC_INT = "satellite_roaming_screen_off_inactivity_timeout_sec_int"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_ROAMING_TURN_OFF_SESSION_FOR_EMERGENCY_CALL_BOOL = "satellite_roaming_turn_off_session_for_emergency_call_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_SOS_MAX_DATAGRAM_SIZE_BYTES_INT = "satellite_sos_max_datagram_size_bytes_int"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final String KEY_SATELLITE_SUPPORTED_MSG_APPS_STRING_ARRAY = "satellite_supported_msg_apps_string_array"; + field public static final String KEY_SHOW_4G_FOR_3G_DATA_ICON_BOOL = "show_4g_for_3g_data_icon_bool"; + field public static final String KEY_SHOW_4G_FOR_LTE_DATA_ICON_BOOL = "show_4g_for_lte_data_icon_bool"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_SHOW_APN_SETTING_CDMA_BOOL = "show_apn_setting_cdma_bool"; + field public static final String KEY_SHOW_BLOCKING_PAY_PHONE_OPTION_BOOL = "show_blocking_pay_phone_option_bool"; + field public static final String KEY_SHOW_CALL_BLOCKING_DISABLED_NOTIFICATION_ALWAYS_BOOL = "show_call_blocking_disabled_notification_always_bool"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_SHOW_CDMA_CHOICES_BOOL = "show_cdma_choices_bool"; + field public static final String KEY_SHOW_FORWARDED_NUMBER_BOOL = "show_forwarded_number_bool"; + field public static final String KEY_SHOW_ICCID_IN_SIM_STATUS_BOOL = "show_iccid_in_sim_status_bool"; + field public static final String KEY_SHOW_IMS_REGISTRATION_STATUS_BOOL = "show_ims_registration_status_bool"; + field public static final String KEY_SHOW_ONSCREEN_DIAL_BUTTON_BOOL = "show_onscreen_dial_button_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.hide_roaming_icon") public static final String KEY_SHOW_ROAMING_INDICATOR_BOOL = "show_roaming_indicator_bool"; + field public static final String KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL = "show_signal_strength_in_sim_status_bool"; + field public static final String KEY_SHOW_VIDEO_CALL_CHARGES_ALERT_DIALOG_BOOL = "show_video_call_charges_alert_dialog_bool"; + field public static final String KEY_SHOW_WFC_LOCATION_PRIVACY_POLICY_BOOL = "show_wfc_location_privacy_policy_bool"; + field @Deprecated public static final String KEY_SIMPLIFIED_NETWORK_SETTINGS_BOOL = "simplified_network_settings_bool"; + field public static final String KEY_SIM_COUNTRY_ISO_OVERRIDE_STRING = "sim_country_iso_override_string"; + field public static final String KEY_SIM_NETWORK_UNLOCK_ALLOW_DISMISS_BOOL = "sim_network_unlock_allow_dismiss_bool"; + field public static final String KEY_SMDP_SERVER_ADDRESS_STRING = "smdp_server_address_string"; + field public static final String KEY_SMS_REQUIRES_DESTINATION_NUMBER_CONVERSION_BOOL = "sms_requires_destination_number_conversion_bool"; + field public static final String KEY_SUBSCRIPTION_GROUP_UUID_STRING = "subscription_group_uuid_string"; + field public static final String KEY_SUPPORTED_PREMIUM_CAPABILITIES_INT_ARRAY = "supported_premium_capabilities_int_array"; + field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final String KEY_SUPPORTS_BUSINESS_CALL_COMPOSER_BOOL = "supports_business_call_composer_bool"; + field public static final String KEY_SUPPORTS_CALL_COMPOSER_BOOL = "supports_call_composer_bool"; + field public static final String KEY_SUPPORTS_DEVICE_TO_DEVICE_COMMUNICATION_USING_DTMF_BOOL = "supports_device_to_device_communication_using_dtmf_bool"; + field public static final String KEY_SUPPORTS_DEVICE_TO_DEVICE_COMMUNICATION_USING_RTP_BOOL = "supports_device_to_device_communication_using_rtp_bool"; + field public static final String KEY_SUPPORTS_SDP_NEGOTIATION_OF_D2D_RTP_HEADER_EXTENSIONS_BOOL = "supports_sdp_negotiation_of_d2d_rtp_header_extensions_bool"; + field public static final String KEY_SUPPORT_3GPP_CALL_FORWARDING_WHILE_ROAMING_BOOL = "support_3gpp_call_forwarding_while_roaming_bool"; + field public static final String KEY_SUPPORT_ADD_CONFERENCE_PARTICIPANTS_BOOL = "support_add_conference_participants_bool"; + field public static final String KEY_SUPPORT_ADHOC_CONFERENCE_CALLS_BOOL = "support_adhoc_conference_calls_bool"; + field public static final String KEY_SUPPORT_CLIR_NETWORK_DEFAULT_BOOL = "support_clir_network_default_bool"; + field public static final String KEY_SUPPORT_CONFERENCE_CALL_BOOL = "support_conference_call_bool"; + field public static final String KEY_SUPPORT_EMERGENCY_SMS_OVER_IMS_BOOL = "support_emergency_sms_over_ims_bool"; + field public static final String KEY_SUPPORT_ENHANCED_CALL_BLOCKING_BOOL = "support_enhanced_call_blocking_bool"; + field public static final String KEY_SUPPORT_IMS_CONFERENCE_EVENT_PACKAGE_BOOL = "support_ims_conference_event_package_bool"; + field public static final String KEY_SUPPORT_PAUSE_IMS_VIDEO_CALLS_BOOL = "support_pause_ims_video_calls_bool"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_SUPPORT_SWAP_AFTER_MERGE_BOOL = "support_swap_after_merge_bool"; + field public static final String KEY_SUPPORT_TDSCDMA_BOOL = "support_tdscdma_bool"; + field public static final String KEY_SUPPORT_TDSCDMA_ROAMING_NETWORKS_STRING_ARRAY = "support_tdscdma_roaming_networks_string_array"; + field public static final String KEY_SWITCH_DATA_TO_PRIMARY_IF_PRIMARY_IS_OOS_BOOL = "switch_data_to_primary_if_primary_is_oos_bool"; + field public static final String KEY_TREAT_DOWNGRADED_VIDEO_CALLS_AS_VIDEO_CALLS_BOOL = "treat_downgraded_video_calls_as_video_calls_bool"; + field public static final String KEY_TTY_SUPPORTED_BOOL = "tty_supported_bool"; + field public static final String KEY_UNLOGGABLE_NUMBERS_STRING_ARRAY = "unloggable_numbers_string_array"; + field public static final String KEY_USE_ACS_FOR_RCS_BOOL = "use_acs_for_rcs_bool"; + field public static final String KEY_USE_HFA_FOR_PROVISIONING_BOOL = "use_hfa_for_provisioning_bool"; + field public static final String KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL = "use_ip_for_calling_indicator_bool"; + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final String KEY_USE_OTASP_FOR_PROVISIONING_BOOL = "use_otasp_for_provisioning_bool"; + field @Deprecated public static final String KEY_USE_RCS_PRESENCE_BOOL = "use_rcs_presence_bool"; + field public static final String KEY_USE_RCS_SIP_OPTIONS_BOOL = "use_rcs_sip_options_bool"; + field public static final String KEY_USE_WFC_HOME_NETWORK_MODE_IN_ROAMING_NETWORK_BOOL = "use_wfc_home_network_mode_in_roaming_network_bool"; + field public static final String KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL = "voicemail_notification_persistent_bool"; + field public static final String KEY_VOICE_PRIVACY_DISABLE_UI_BOOL = "voice_privacy_disable_ui_bool"; + field public static final String KEY_VOLTE_REPLACEMENT_RAT_INT = "volte_replacement_rat_int"; + field public static final String KEY_VONR_ENABLED_BOOL = "vonr_enabled_bool"; + field public static final String KEY_VONR_ON_BY_DEFAULT_BOOL = "vonr_on_by_default_bool"; + field public static final String KEY_VONR_SETTING_VISIBILITY_BOOL = "vonr_setting_visibility_bool"; + field public static final String KEY_VT_UPGRADE_SUPPORTED_FOR_DOWNGRADED_RTT_CALL_BOOL = "vt_upgrade_supported_for_downgraded_rtt_call"; + field public static final String KEY_VVM_CELLULAR_DATA_REQUIRED_BOOL = "vvm_cellular_data_required_bool"; + field public static final String KEY_VVM_CLIENT_PREFIX_STRING = "vvm_client_prefix_string"; + field public static final String KEY_VVM_DESTINATION_NUMBER_STRING = "vvm_destination_number_string"; + field public static final String KEY_VVM_DISABLED_CAPABILITIES_STRING_ARRAY = "vvm_disabled_capabilities_string_array"; + field public static final String KEY_VVM_LEGACY_MODE_ENABLED_BOOL = "vvm_legacy_mode_enabled_bool"; + field public static final String KEY_VVM_PORT_NUMBER_INT = "vvm_port_number_int"; + field public static final String KEY_VVM_PREFETCH_BOOL = "vvm_prefetch_bool"; + field public static final String KEY_VVM_SSL_ENABLED_BOOL = "vvm_ssl_enabled_bool"; + field public static final String KEY_VVM_TYPE_STRING = "vvm_type_string"; + field public static final String KEY_WFC_EMERGENCY_ADDRESS_CARRIER_APP_STRING = "wfc_emergency_address_carrier_app_string"; + field public static final String KEY_WORLD_MODE_ENABLED_BOOL = "world_mode_enabled_bool"; + field public static final String KEY_WORLD_PHONE_BOOL = "world_phone_bool"; + field public static final String REMOVE_GROUP_UUID_STRING = "00000000-0000-0000-0000-000000000000"; + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_DATA_SUPPORT_ALL = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_DATA_SUPPORT_BANDWIDTH_CONSTRAINED = 1; // 0x1 + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int SATELLITE_DATA_SUPPORT_ONLY_RESTRICTED = 0; // 0x0 + field public static final int SERVICE_CLASS_NONE = 0; // 0x0 + field public static final int SERVICE_CLASS_VOICE = 1; // 0x1 + field public static final int USSD_OVER_CS_ONLY = 2; // 0x2 + field public static final int USSD_OVER_CS_PREFERRED = 0; // 0x0 + field public static final int USSD_OVER_IMS_ONLY = 3; // 0x3 + field public static final int USSD_OVER_IMS_PREFERRED = 1; // 0x1 + } + + public static final class CarrierConfigManager.Apn { + field @Deprecated public static final String KEY_PREFIX = "apn."; + field public static final String KEY_SETTINGS_DEFAULT_PROTOCOL_STRING = "apn.settings_default_protocol_string"; + field public static final String KEY_SETTINGS_DEFAULT_ROAMING_PROTOCOL_STRING = "apn.settings_default_roaming_protocol_string"; + field public static final String PROTOCOL_IPV4 = "IP"; + field public static final String PROTOCOL_IPV4V6 = "IPV4V6"; + field public static final String PROTOCOL_IPV6 = "IPV6"; + } + + public static final class CarrierConfigManager.Bsf { + field public static final String KEY_BSF_SERVER_FQDN_STRING = "bsf.bsf_server_fqdn_string"; + field public static final String KEY_BSF_SERVER_PORT_INT = "bsf.bsf_server_port_int"; + field public static final String KEY_BSF_TRANSPORT_TYPE_INT = "bsf.bsf_transport_type_int"; + field public static final String KEY_PREFIX = "bsf."; + } + + public static interface CarrierConfigManager.CarrierConfigChangeListener { + method public void onCarrierConfigChanged(int, int, int, int); + } + + public static final class CarrierConfigManager.Gps { + field @FlaggedApi("android.location.flags.enable_ni_supl_message_injection_by_carrier_config_bugfix") public static final String KEY_ENABLE_NI_SUPL_MESSAGE_INJECTION_BOOL = "gps.enable_ni_supl_message_injection_bool"; + field public static final String KEY_PERSIST_LPP_MODE_BOOL = "gps.persist_lpp_mode_bool"; + field public static final String KEY_PREFIX = "gps."; + } + + public static final class CarrierConfigManager.Ims { + field public static final int E911_RTCP_INACTIVITY_ON_CONNECTED = 3; // 0x3 + field public static final int E911_RTP_INACTIVITY_ON_CONNECTED = 4; // 0x4 + field public static final int GEOLOCATION_PIDF_FOR_EMERGENCY_ON_CELLULAR = 4; // 0x4 + field public static final int GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI = 2; // 0x2 + field public static final int GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_CELLULAR = 3; // 0x3 + field public static final int GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_WIFI = 1; // 0x1 + field public static final int IPSEC_AUTHENTICATION_ALGORITHM_HMAC_MD5 = 0; // 0x0 + field public static final int IPSEC_AUTHENTICATION_ALGORITHM_HMAC_SHA1 = 1; // 0x1 + field public static final int IPSEC_ENCRYPTION_ALGORITHM_AES_CBC = 2; // 0x2 + field public static final int IPSEC_ENCRYPTION_ALGORITHM_DES_EDE3_CBC = 1; // 0x1 + field public static final int IPSEC_ENCRYPTION_ALGORITHM_NULL = 0; // 0x0 + field public static final String KEY_CAPABILITY_TYPE_CALL_COMPOSER_INT_ARRAY = "ims.capability_type_call_composer_int_array"; + field public static final String KEY_CAPABILITY_TYPE_OPTIONS_UCE_INT_ARRAY = "ims.capability_type_options_uce_int_array"; + field public static final String KEY_CAPABILITY_TYPE_PRESENCE_UCE_INT_ARRAY = "ims.capability_type_presence_uce_int_array"; + field public static final String KEY_CAPABILITY_TYPE_SMS_INT_ARRAY = "ims.capability_type_sms_int_array"; + field public static final String KEY_CAPABILITY_TYPE_UT_INT_ARRAY = "ims.capability_type_ut_int_array"; + field public static final String KEY_CAPABILITY_TYPE_VIDEO_INT_ARRAY = "ims.capability_type_video_int_array"; + field public static final String KEY_CAPABILITY_TYPE_VOICE_INT_ARRAY = "ims.capability_type_voice_int_array"; + field public static final String KEY_ENABLE_PRESENCE_CAPABILITY_EXCHANGE_BOOL = "ims.enable_presence_capability_exchange_bool"; + field public static final String KEY_ENABLE_PRESENCE_GROUP_SUBSCRIBE_BOOL = "ims.enable_presence_group_subscribe_bool"; + field public static final String KEY_ENABLE_PRESENCE_PUBLISH_BOOL = "ims.enable_presence_publish_bool"; + field public static final String KEY_GEOLOCATION_PIDF_IN_SIP_INVITE_SUPPORT_INT_ARRAY = "ims.geolocation_pidf_in_sip_invite_support_int_array"; + field public static final String KEY_GEOLOCATION_PIDF_IN_SIP_REGISTER_SUPPORT_INT_ARRAY = "ims.geolocation_pidf_in_sip_register_support_int_array"; + field public static final String KEY_GRUU_ENABLED_BOOL = "ims.gruu_enabled_bool"; + field public static final String KEY_IMS_PDN_ENABLED_IN_NO_VOPS_SUPPORT_INT_ARRAY = "ims.ims_pdn_enabled_in_no_vops_support_int_array"; + field public static final String KEY_IMS_SINGLE_REGISTRATION_REQUIRED_BOOL = "ims.ims_single_registration_required_bool"; + field public static final String KEY_IMS_USER_AGENT_STRING = "ims.ims_user_agent_string"; + field public static final String KEY_IPSEC_AUTHENTICATION_ALGORITHMS_INT_ARRAY = "ims.ipsec_authentication_algorithms_int_array"; + field public static final String KEY_IPSEC_ENCRYPTION_ALGORITHMS_INT_ARRAY = "ims.ipsec_encryption_algorithms_int_array"; + field public static final String KEY_IPV4_SIP_MTU_SIZE_CELLULAR_INT = "ims.ipv4_sip_mtu_size_cellular_int"; + field public static final String KEY_IPV6_SIP_MTU_SIZE_CELLULAR_INT = "ims.ipv6_sip_mtu_size_cellular_int"; + field public static final String KEY_KEEP_PDN_UP_IN_NO_VOPS_BOOL = "ims.keep_pdn_up_in_no_vops_bool"; + field public static final String KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE = "ims.mmtel_requires_provisioning_bundle"; + field public static final String KEY_NON_RCS_CAPABILITIES_CACHE_EXPIRATION_SEC_INT = "ims.non_rcs_capabilities_cache_expiration_sec_int"; + field public static final String KEY_PHONE_CONTEXT_DOMAIN_NAME_STRING = "ims.phone_context_domain_name_string"; + field public static final String KEY_PREFIX = "ims."; + field public static final String KEY_RCS_BULK_CAPABILITY_EXCHANGE_BOOL = "ims.rcs_bulk_capability_exchange_bool"; + field public static final String KEY_RCS_FEATURE_TAG_ALLOWED_STRING_ARRAY = "ims.rcs_feature_tag_allowed_string_array"; + field public static final String KEY_RCS_REQUIRES_PROVISIONING_BUNDLE = "ims.rcs_requires_provisioning_bundle"; + field public static final String KEY_REGISTRATION_EVENT_PACKAGE_SUPPORTED_BOOL = "ims.registration_event_package_supported_bool"; + field public static final String KEY_REGISTRATION_EXPIRY_TIMER_SEC_INT = "ims.registration_expiry_timer_sec_int"; + field public static final String KEY_REGISTRATION_RETRY_BASE_TIMER_MILLIS_INT = "ims.registration_retry_base_timer_millis_int"; + field public static final String KEY_REGISTRATION_RETRY_MAX_TIMER_MILLIS_INT = "ims.registration_retry_max_timer_millis_int"; + field public static final String KEY_REGISTRATION_SUBSCRIBE_EXPIRY_TIMER_SEC_INT = "ims.registration_subscribe_expiry_timer_sec_int"; + field public static final String KEY_REQUEST_URI_TYPE_INT = "ims.request_uri_type_int"; + field public static final String KEY_SIP_OVER_IPSEC_ENABLED_BOOL = "ims.sip_over_ipsec_enabled_bool"; + field public static final String KEY_SIP_PREFERRED_TRANSPORT_INT = "ims.sip_preferred_transport_int"; + field public static final String KEY_SIP_SERVER_PORT_NUMBER_INT = "ims.sip_server_port_number_int"; + field public static final String KEY_SIP_TIMER_B_MILLIS_INT = "ims.sip_timer_b_millis_int"; + field public static final String KEY_SIP_TIMER_C_MILLIS_INT = "ims.sip_timer_c_millis_int"; + field public static final String KEY_SIP_TIMER_D_MILLIS_INT = "ims.sip_timer_d_millis_int"; + field public static final String KEY_SIP_TIMER_F_MILLIS_INT = "ims.sip_timer_f_millis_int"; + field public static final String KEY_SIP_TIMER_H_MILLIS_INT = "ims.sip_timer_h_millis_int"; + field public static final String KEY_SIP_TIMER_J_MILLIS_INT = "ims.sip_timer_j_millis_int"; + field public static final String KEY_SIP_TIMER_T1_MILLIS_INT = "ims.sip_timer_t1_millis_int"; + field public static final String KEY_SIP_TIMER_T2_MILLIS_INT = "ims.sip_timer_t2_millis_int"; + field public static final String KEY_SIP_TIMER_T4_MILLIS_INT = "ims.sip_timer_t4_millis_int"; + field public static final String KEY_SUPPORTED_RATS_INT_ARRAY = "ims.supported_rats_int_array"; + field public static final String KEY_USE_SIP_URI_FOR_PRESENCE_SUBSCRIBE_BOOL = "ims.use_sip_uri_for_presence_subscribe_bool"; + field public static final String KEY_WIFI_OFF_DEFERRING_TIME_MILLIS_INT = "ims.wifi_off_deferring_time_millis_int"; + field public static final int NETWORK_TYPE_HOME = 0; // 0x0 + field public static final int NETWORK_TYPE_ROAMING = 1; // 0x1 + field public static final int PREFERRED_TRANSPORT_DYNAMIC_UDP_TCP = 2; // 0x2 + field public static final int PREFERRED_TRANSPORT_TCP = 1; // 0x1 + field public static final int PREFERRED_TRANSPORT_TLS = 3; // 0x3 + field public static final int PREFERRED_TRANSPORT_UDP = 0; // 0x0 + field public static final int REQUEST_URI_FORMAT_SIP = 1; // 0x1 + field public static final int REQUEST_URI_FORMAT_TEL = 0; // 0x0 + field public static final int RTCP_INACTIVITY_ON_CONNECTED = 1; // 0x1 + field public static final int RTCP_INACTIVITY_ON_HOLD = 0; // 0x0 + field public static final int RTP_INACTIVITY_ON_CONNECTED = 2; // 0x2 + } + + public static final class CarrierConfigManager.ImsEmergency { + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int DOMAIN_CS = 1; // 0x1 + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int DOMAIN_PS_3GPP = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int DOMAIN_PS_NON_3GPP = 3; // 0x3 + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_CROSS_STACK_REDIAL_TIMER_SEC_INT = "imsemergency.cross_stack_redial_timer_sec_int"; + field public static final String KEY_EMERGENCY_CALLBACK_MODE_SUPPORTED_BOOL = "imsemergency.emergency_callback_mode_supported_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_CALL_SETUP_TIMER_ON_CURRENT_NETWORK_SEC_INT = "imsemergency.emergency_call_setup_timer_on_current_network_sec_int"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_CDMA_PREFERRED_NUMBERS_STRING_ARRAY = "imsemergency.emergency_cdma_preferred_numbers_string_array"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_DOMAIN_PREFERENCE_INT_ARRAY = "imsemergency.emergency_domain_preference_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_DOMAIN_PREFERENCE_ROAMING_INT_ARRAY = "imsemergency.emergency_domain_preference_roaming_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_LTE_PREFERRED_AFTER_NR_FAILED_BOOL = "imsemergency.emergency_lte_preferred_after_nr_failed_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_NETWORK_SCAN_TYPE_INT = "imsemergency.emergency_network_scan_type_int"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_OVER_CS_ROAMING_SUPPORTED_ACCESS_NETWORK_TYPES_INT_ARRAY = "imsemergency.emergency_over_cs_roaming_supported_access_network_types_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_OVER_CS_SUPPORTED_ACCESS_NETWORK_TYPES_INT_ARRAY = "imsemergency.emergency_over_cs_supported_access_network_types_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_OVER_IMS_ROAMING_SUPPORTED_3GPP_NETWORK_TYPES_INT_ARRAY = "imsemergency.emergency_over_ims_roaming_supported_3gpp_network_types_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_OVER_IMS_SUPPORTED_3GPP_NETWORK_TYPES_INT_ARRAY = "imsemergency.emergency_over_ims_supported_3gpp_network_types_int_array"; + field public static final String KEY_EMERGENCY_OVER_IMS_SUPPORTED_RATS_INT_ARRAY = "imsemergency.emergency_over_ims_supported_rats_int_array"; + field public static final String KEY_EMERGENCY_QOS_PRECONDITION_SUPPORTED_BOOL = "imsemergency.emergency_qos_precondition_supported_bool"; + field public static final String KEY_EMERGENCY_REGISTRATION_TIMER_MILLIS_INT = "imsemergency.emergency_registration_timer_millis_int"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_REQUIRES_IMS_REGISTRATION_BOOL = "imsemergency.emergency_requires_ims_registration_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_REQUIRES_VOLTE_ENABLED_BOOL = "imsemergency.emergency_requires_volte_enabled_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_SCAN_TIMER_SEC_INT = "imsemergency.emergency_scan_timer_sec_int"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_EMERGENCY_VOWIFI_REQUIRES_CONDITION_INT = "imsemergency.emergency_vowifi_requires_condition_int"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_MAXIMUM_CELLULAR_SEARCH_TIMER_SEC_INT = "imsemergency.maximum_cellular_search_timer_sec_int"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_MAXIMUM_NUMBER_OF_EMERGENCY_TRIES_OVER_VOWIFI_INT = "imsemergency.maximum_number_of_emergency_tries_over_vowifi_int"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_PREFER_IMS_EMERGENCY_WHEN_VOICE_CALLS_ON_CS_BOOL = "imsemergency.prefer_ims_emergency_when_voice_calls_on_cs_bool"; + field public static final String KEY_PREFIX = "imsemergency."; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_QUICK_CROSS_STACK_REDIAL_TIMER_SEC_INT = "imsemergency.quick_cross_stack_redial_timer_sec_int"; + field public static final String KEY_REFRESH_GEOLOCATION_TIMEOUT_MILLIS_INT = "imsemergency.refresh_geolocation_timeout_millis_int"; + field public static final String KEY_RETRY_EMERGENCY_ON_IMS_PDN_BOOL = "imsemergency.retry_emergency_on_ims_pdn_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_SCAN_LIMITED_SERVICE_AFTER_VOLTE_FAILURE_BOOL = "imsemergency.scan_limited_service_after_volte_failure_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final String KEY_START_QUICK_CROSS_STACK_REDIAL_TIMER_WHEN_REGISTERED_BOOL = "imsemergency.start_quick_cross_stack_redial_timer_when_registered_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int REDIAL_TIMER_DISABLED = 0; // 0x0 + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int SCAN_TYPE_FULL_SERVICE = 1; // 0x1 + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int SCAN_TYPE_FULL_SERVICE_FOLLOWED_BY_LIMITED_SERVICE = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int SCAN_TYPE_NO_PREFERENCE = 0; // 0x0 + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int VOWIFI_REQUIRES_NONE = 0; // 0x0 + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int VOWIFI_REQUIRES_SETTING_ENABLED = 1; // 0x1 + field @FlaggedApi("com.android.internal.telephony.flags.use_oem_domain_selection_service") public static final int VOWIFI_REQUIRES_VALID_EID = 2; // 0x2 + } + + public static final class CarrierConfigManager.ImsRtt { + field public static final String KEY_PREFIX = "imsrtt."; + field public static final String KEY_RED_PAYLOAD_TYPE_INT = "imsrtt.red_payload_type_int"; + field public static final String KEY_T140_PAYLOAD_TYPE_INT = "imsrtt.t140_payload_type_int"; + field public static final String KEY_TEXT_AS_BANDWIDTH_KBPS_INT = "imsrtt.text_as_bandwidth_kbps_int"; + field public static final String KEY_TEXT_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE = "imsrtt.text_codec_capability_payload_types_bundle"; + field public static final String KEY_TEXT_ON_DEFAULT_BEARER_SUPPORTED_BOOL = "imsrtt.text_on_default_bearer_supported_bool"; + field public static final String KEY_TEXT_QOS_PRECONDITION_SUPPORTED_BOOL = "imsrtt.text_qos_precondition_supported_bool"; + field public static final String KEY_TEXT_RR_BANDWIDTH_BPS_INT = "imsrtt.text_rr_bandwidth_bps_int"; + field public static final String KEY_TEXT_RS_BANDWIDTH_BPS_INT = "imsrtt.text_rs_bandwidth_bps_int"; + } + + public static final class CarrierConfigManager.ImsServiceEntitlement { + field public static final String KEY_ENTITLEMENT_SERVER_URL_STRING = "imsserviceentitlement.entitlement_server_url_string"; + field public static final String KEY_FCM_SENDER_ID_STRING = "imsserviceentitlement.fcm_sender_id_string"; + field public static final String KEY_IMS_PROVISIONING_BOOL = "imsserviceentitlement.ims_provisioning_bool"; + field public static final String KEY_PREFIX = "imsserviceentitlement."; + field public static final String KEY_SHOW_VOWIFI_WEBVIEW_BOOL = "imsserviceentitlement.show_vowifi_webview_bool"; + } + + public static final class CarrierConfigManager.ImsSms { + field public static final String KEY_PREFIX = "imssms."; + field public static final String KEY_SMS_CSFB_RETRY_ON_FAILURE_BOOL = "imssms.sms_csfb_retry_on_failure_bool"; + field public static final String KEY_SMS_MAX_RETRY_COUNT_INT = "imssms.sms_max_retry_count_int"; + field public static final String KEY_SMS_MAX_RETRY_OVER_IMS_COUNT_INT = "imssms.sms_max_retry_over_ims_count_int"; + field public static final String KEY_SMS_OVER_IMS_FORMAT_INT = "imssms.sms_over_ims_format_int"; + field public static final String KEY_SMS_OVER_IMS_SEND_RETRY_DELAY_MILLIS_INT = "imssms.sms_over_ims_send_retry_delay_millis_int"; + field public static final String KEY_SMS_OVER_IMS_SUPPORTED_BOOL = "imssms.sms_over_ims_supported_bool"; + field public static final String KEY_SMS_OVER_IMS_SUPPORTED_RATS_INT_ARRAY = "imssms.sms_over_ims_supported_rats_int_array"; + field public static final String KEY_SMS_RP_CAUSE_VALUES_TO_FALLBACK_INT_ARRAY = "imssms.sms_rp_cause_values_to_fallback_int_array"; + field public static final String KEY_SMS_RP_CAUSE_VALUES_TO_RETRY_OVER_IMS_INT_ARRAY = "imssms.sms_rp_cause_values_to_retry_over_ims_int_array"; + field public static final String KEY_SMS_TR1_TIMER_MILLIS_INT = "imssms.sms_tr1_timer_millis_int"; + field public static final String KEY_SMS_TR2_TIMER_MILLIS_INT = "imssms.sms_tr2_timer_millis_int"; + field public static final int SMS_FORMAT_3GPP = 0; // 0x0 + field public static final int SMS_FORMAT_3GPP2 = 1; // 0x1 + } + + public static final class CarrierConfigManager.ImsSs { + field public static final int CALL_WAITING_SYNC_FIRST_CHANGE = 3; // 0x3 + field public static final int CALL_WAITING_SYNC_FIRST_POWER_UP = 2; // 0x2 + field public static final int CALL_WAITING_SYNC_IMS_ONLY = 4; // 0x4 + field public static final int CALL_WAITING_SYNC_NONE = 0; // 0x0 + field public static final int CALL_WAITING_SYNC_USER_CHANGE = 1; // 0x1 + field public static final String KEY_NETWORK_INITIATED_USSD_OVER_IMS_SUPPORTED_BOOL = "imsss.network_initiated_ussd_over_ims_supported_bool"; + field public static final String KEY_PREFIX = "imsss."; + field public static final String KEY_TERMINAL_BASED_CALL_WAITING_DEFAULT_ENABLED_BOOL = "imsss.terminal_based_call_waiting_default_enabled_bool"; + field public static final String KEY_TERMINAL_BASED_CALL_WAITING_SYNC_TYPE_INT = "imsss.terminal_based_call_waiting_sync_type_int"; + field public static final String KEY_USE_CSFB_ON_XCAP_OVER_UT_FAILURE_BOOL = "imsss.use_csfb_on_xcap_over_ut_failure_bool"; + field public static final String KEY_UT_AS_SERVER_FQDN_STRING = "imsss.ut_as_server_fqdn_string"; + field public static final String KEY_UT_AS_SERVER_PORT_INT = "imsss.ut_as_server_port_int"; + field public static final String KEY_UT_IPTYPE_HOME_INT = "imsss.ut_iptype_home_int"; + field public static final String KEY_UT_IPTYPE_ROAMING_INT = "imsss.ut_iptype_roaming_int"; + field public static final String KEY_UT_REQUIRES_IMS_REGISTRATION_BOOL = "imsss.ut_requires_ims_registration_bool"; + field public static final String KEY_UT_SERVER_BASED_SERVICES_INT_ARRAY = "imsss.ut_server_based_services_int_array"; + field public static final String KEY_UT_SUPPORTED_WHEN_PS_DATA_OFF_BOOL = "imsss.ut_supported_when_ps_data_off_bool"; + field public static final String KEY_UT_SUPPORTED_WHEN_ROAMING_BOOL = "imsss.ut_supported_when_roaming_bool"; + field public static final String KEY_UT_TERMINAL_BASED_SERVICES_INT_ARRAY = "imsss.ut_terminal_based_services_int_array"; + field public static final String KEY_UT_TRANSPORT_TYPE_INT = "imsss.ut_transport_type_int"; + field public static final String KEY_XCAP_OVER_UT_SUPPORTED_RATS_INT_ARRAY = "imsss.xcap_over_ut_supported_rats_int_array"; + field public static final int SUPPLEMENTARY_SERVICE_CB_ACR = 20; // 0x14 + field public static final int SUPPLEMENTARY_SERVICE_CB_ALL = 12; // 0xc + field public static final int SUPPLEMENTARY_SERVICE_CB_BAIC = 18; // 0x12 + field public static final int SUPPLEMENTARY_SERVICE_CB_BAOC = 14; // 0xe + field public static final int SUPPLEMENTARY_SERVICE_CB_BIC_ROAM = 19; // 0x13 + field public static final int SUPPLEMENTARY_SERVICE_CB_BIL = 21; // 0x15 + field public static final int SUPPLEMENTARY_SERVICE_CB_BOIC = 15; // 0xf + field public static final int SUPPLEMENTARY_SERVICE_CB_BOIC_EXHC = 16; // 0x10 + field public static final int SUPPLEMENTARY_SERVICE_CB_IBS = 17; // 0x11 + field public static final int SUPPLEMENTARY_SERVICE_CB_OBS = 13; // 0xd + field public static final int SUPPLEMENTARY_SERVICE_CF_ALL = 1; // 0x1 + field public static final int SUPPLEMENTARY_SERVICE_CF_ALL_CONDITONAL_FORWARDING = 3; // 0x3 + field public static final int SUPPLEMENTARY_SERVICE_CF_CFB = 4; // 0x4 + field public static final int SUPPLEMENTARY_SERVICE_CF_CFNL = 7; // 0x7 + field public static final int SUPPLEMENTARY_SERVICE_CF_CFNRC = 6; // 0x6 + field public static final int SUPPLEMENTARY_SERVICE_CF_CFNRY = 5; // 0x5 + field public static final int SUPPLEMENTARY_SERVICE_CF_CFU = 2; // 0x2 + field public static final int SUPPLEMENTARY_SERVICE_CW = 0; // 0x0 + field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIP = 8; // 0x8 + field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIR = 10; // 0xa + field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIP = 9; // 0x9 + field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIR = 11; // 0xb + } + + public static final class CarrierConfigManager.ImsVoice { + field public static final int ALERTING_SRVCC_SUPPORT = 1; // 0x1 + field public static final int BANDWIDTH_EFFICIENT = 0; // 0x0 + field public static final int BASIC_SRVCC_SUPPORT = 0; // 0x0 + field public static final int CONFERENCE_SUBSCRIBE_TYPE_IN_DIALOG = 0; // 0x0 + field public static final int CONFERENCE_SUBSCRIBE_TYPE_OUT_OF_DIALOG = 1; // 0x1 + field public static final int EVS_ENCODED_BW_TYPE_FB = 3; // 0x3 + field public static final int EVS_ENCODED_BW_TYPE_NB = 0; // 0x0 + field public static final int EVS_ENCODED_BW_TYPE_NB_WB = 4; // 0x4 + field public static final int EVS_ENCODED_BW_TYPE_NB_WB_SWB = 5; // 0x5 + field public static final int EVS_ENCODED_BW_TYPE_NB_WB_SWB_FB = 6; // 0x6 + field public static final int EVS_ENCODED_BW_TYPE_SWB = 2; // 0x2 + field public static final int EVS_ENCODED_BW_TYPE_WB = 1; // 0x1 + field public static final int EVS_ENCODED_BW_TYPE_WB_SWB = 7; // 0x7 + field public static final int EVS_ENCODED_BW_TYPE_WB_SWB_FB = 8; // 0x8 + field public static final int EVS_OPERATIONAL_MODE_AMRWB_IO = 1; // 0x1 + field public static final int EVS_OPERATIONAL_MODE_PRIMARY = 0; // 0x0 + field public static final int EVS_PRIMARY_MODE_BITRATE_128_0_KBPS = 11; // 0xb + field public static final int EVS_PRIMARY_MODE_BITRATE_13_2_KBPS = 4; // 0x4 + field public static final int EVS_PRIMARY_MODE_BITRATE_16_4_KBPS = 5; // 0x5 + field public static final int EVS_PRIMARY_MODE_BITRATE_24_4_KBPS = 6; // 0x6 + field public static final int EVS_PRIMARY_MODE_BITRATE_32_0_KBPS = 7; // 0x7 + field public static final int EVS_PRIMARY_MODE_BITRATE_48_0_KBPS = 8; // 0x8 + field public static final int EVS_PRIMARY_MODE_BITRATE_5_9_KBPS = 0; // 0x0 + field public static final int EVS_PRIMARY_MODE_BITRATE_64_0_KBPS = 9; // 0x9 + field public static final int EVS_PRIMARY_MODE_BITRATE_7_2_KBPS = 1; // 0x1 + field public static final int EVS_PRIMARY_MODE_BITRATE_8_0_KBPS = 2; // 0x2 + field public static final int EVS_PRIMARY_MODE_BITRATE_96_0_KBPS = 10; // 0xa + field public static final int EVS_PRIMARY_MODE_BITRATE_9_6_KBPS = 3; // 0x3 + field public static final String KEY_AMRNB_PAYLOAD_DESCRIPTION_BUNDLE = "imsvoice.amrnb_payload_description_bundle"; + field public static final String KEY_AMRNB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.amrnb_payload_type_int_array"; + field public static final String KEY_AMRWB_PAYLOAD_DESCRIPTION_BUNDLE = "imsvoice.amrwb_payload_description_bundle"; + field public static final String KEY_AMRWB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.amrwb_payload_type_int_array"; + field public static final String KEY_AMR_CODEC_ATTRIBUTE_MODESET_INT_ARRAY = "imsvoice.amr_codec_attribute_modeset_int_array"; + field public static final String KEY_AMR_CODEC_ATTRIBUTE_PAYLOAD_FORMAT_INT = "imsvoice.amr_codec_attribute_payload_format_int"; + field public static final String KEY_AUDIO_AS_BANDWIDTH_KBPS_INT = "imsvoice.audio_as_bandwidth_kbps_int"; + field public static final String KEY_AUDIO_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE = "imsvoice.audio_codec_capability_payload_types_bundle"; + field public static final String KEY_AUDIO_INACTIVITY_CALL_END_REASONS_INT_ARRAY = "imsvoice.audio_inactivity_call_end_reasons_int_array"; + field public static final String KEY_AUDIO_RR_BANDWIDTH_BPS_INT = "imsvoice.audio_rr_bandwidth_bps_int"; + field public static final String KEY_AUDIO_RS_BANDWIDTH_BPS_INT = "imsvoice.audio_rs_bandwidth_bps_int"; + field public static final String KEY_AUDIO_RTCP_INACTIVITY_TIMER_MILLIS_INT = "imsvoice.audio_rtcp_inactivity_timer_millis_int"; + field public static final String KEY_AUDIO_RTP_INACTIVITY_TIMER_MILLIS_INT = "imsvoice.audio_rtp_inactivity_timer_millis_int"; + field public static final String KEY_CARRIER_VOLTE_ROAMING_AVAILABLE_BOOL = "imsvoice.carrier_volte_roaming_available_bool"; + field public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_CAPABILITY_INT = "imsvoice.codec_attribute_mode_change_capability_int"; + field public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_NEIGHBOR_INT = "imsvoice.codec_attribute_mode_change_neighbor_int"; + field public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_PERIOD_INT = "imsvoice.codec_attribute_mode_change_period_int"; + field public static final String KEY_CONFERENCE_FACTORY_URI_STRING = "imsvoice.conference_factory_uri_string"; + field public static final String KEY_CONFERENCE_SUBSCRIBE_TYPE_INT = "imsvoice.conference_subscribe_type_int"; + field public static final String KEY_DEDICATED_BEARER_WAIT_TIMER_MILLIS_INT = "imsvoice.dedicated_bearer_wait_timer_millis_int"; + field public static final String KEY_DTMFNB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.dtmfnb_payload_type_int_array"; + field public static final String KEY_DTMFWB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.dtmfwb_payload_type_int_array"; + field public static final String KEY_EVS_CODEC_ATTRIBUTE_BANDWIDTH_INT = "imsvoice.evs_codec_attribute_bandwidth_int"; + field public static final String KEY_EVS_CODEC_ATTRIBUTE_BITRATE_INT_ARRAY = "imsvoice.evs_codec_attribute_bitrate_int_array"; + field public static final String KEY_EVS_CODEC_ATTRIBUTE_CHANNELS_INT = "imsvoice.evs_codec_attribute_channels_int"; + field public static final String KEY_EVS_CODEC_ATTRIBUTE_CH_AW_RECV_INT = "imsvoice.evs_codec_attribute_ch_aw_recv_int"; + field public static final String KEY_EVS_CODEC_ATTRIBUTE_CMR_INT = "imsvoice.codec_attribute_cmr_int"; + field public static final String KEY_EVS_CODEC_ATTRIBUTE_DTX_BOOL = "imsvoice.evs_codec_attribute_dtx_bool"; + field public static final String KEY_EVS_CODEC_ATTRIBUTE_DTX_RECV_BOOL = "imsvoice.evs_codec_attribute_dtx_recv_bool"; + field public static final String KEY_EVS_CODEC_ATTRIBUTE_HF_ONLY_INT = "imsvoice.evs_codec_attribute_hf_only_int"; + field public static final String KEY_EVS_CODEC_ATTRIBUTE_MODE_SWITCH_INT = "imsvoice.evs_codec_attribute_mode_switch_int"; + field public static final String KEY_EVS_PAYLOAD_DESCRIPTION_BUNDLE = "imsvoice.evs_payload_description_bundle"; + field public static final String KEY_EVS_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.evs_payload_type_int_array"; + field public static final String KEY_INCLUDE_CALLER_ID_SERVICE_CODES_IN_SIP_INVITE_BOOL = "imsvoice.include_caller_id_service_codes_in_sip_invite_bool"; + field public static final String KEY_MINIMUM_SESSION_EXPIRES_TIMER_SEC_INT = "imsvoice.minimum_session_expires_timer_sec_int"; + field public static final String KEY_MO_CALL_REQUEST_TIMEOUT_MILLIS_INT = "imsvoice.mo_call_request_timeout_millis_int"; + field public static final String KEY_MULTIENDPOINT_SUPPORTED_BOOL = "imsvoice.multiendpoint_supported_bool"; + field public static final String KEY_OIP_SOURCE_FROM_HEADER_BOOL = "imsvoice.oip_source_from_header_bool"; + field public static final String KEY_PRACK_SUPPORTED_FOR_18X_BOOL = "imsvoice.prack_supported_for_18x_bool"; + field public static final String KEY_PREFIX = "imsvoice."; + field public static final String KEY_RINGBACK_TIMER_MILLIS_INT = "imsvoice.ringback_timer_millis_int"; + field public static final String KEY_RINGING_TIMER_MILLIS_INT = "imsvoice.ringing_timer_millis_int"; + field public static final String KEY_SESSION_EXPIRES_TIMER_SEC_INT = "imsvoice.session_expires_timer_sec_int"; + field public static final String KEY_SESSION_PRIVACY_TYPE_INT = "imsvoice.session_privacy_type_int"; + field public static final String KEY_SESSION_REFRESHER_TYPE_INT = "imsvoice.session_refresher_type_int"; + field public static final String KEY_SESSION_REFRESH_METHOD_INT = "imsvoice.session_refresh_method_int"; + field public static final String KEY_SESSION_TIMER_SUPPORTED_BOOL = "imsvoice.session_timer_supported_bool"; + field public static final String KEY_SRVCC_TYPE_INT_ARRAY = "imsvoice.srvcc_type_int_array"; + field public static final String KEY_VOICE_ON_DEFAULT_BEARER_SUPPORTED_BOOL = "imsvoice.voice_on_default_bearer_supported_bool"; + field public static final String KEY_VOICE_QOS_PRECONDITION_SUPPORTED_BOOL = "imsvoice.voice_qos_precondition_supported_bool"; + field public static final int MIDCALL_SRVCC_SUPPORT = 3; // 0x3 + field public static final int OCTET_ALIGNED = 1; // 0x1 + field public static final int PREALERTING_SRVCC_SUPPORT = 2; // 0x2 + field public static final int SESSION_PRIVACY_TYPE_HEADER = 0; // 0x0 + field public static final int SESSION_PRIVACY_TYPE_ID = 2; // 0x2 + field public static final int SESSION_PRIVACY_TYPE_NONE = 1; // 0x1 + field public static final int SESSION_REFRESHER_TYPE_UAC = 1; // 0x1 + field public static final int SESSION_REFRESHER_TYPE_UAS = 2; // 0x2 + field public static final int SESSION_REFRESHER_TYPE_UNKNOWN = 0; // 0x0 + field public static final int SESSION_REFRESH_METHOD_INVITE = 0; // 0x0 + field public static final int SESSION_REFRESH_METHOD_UPDATE_PREFERRED = 1; // 0x1 + } + + public static final class CarrierConfigManager.ImsVt { + field public static final String KEY_H264_PAYLOAD_DESCRIPTION_BUNDLE = "imsvt.h264_payload_description_bundle"; + field public static final String KEY_H264_PAYLOAD_TYPE_INT_ARRAY = "imsvt.h264_payload_type_int_array"; + field public static final String KEY_H264_VIDEO_CODEC_ATTRIBUTE_PROFILE_LEVEL_ID_STRING = "imsvt.h264_video_codec_attribute_profile_level_id_string"; + field public static final String KEY_PREFIX = "imsvt."; + field public static final String KEY_VIDEO_AS_BANDWIDTH_KBPS_INT = "imsvt.video_as_bandwidth_kbps_int"; + field public static final String KEY_VIDEO_CODEC_ATTRIBUTE_FRAME_RATE_INT = "imsvt.video_codec_attribute_frame_rate_int"; + field public static final String KEY_VIDEO_CODEC_ATTRIBUTE_PACKETIZATION_MODE_INT = "imsvt.video_codec_attribute_packetization_mode_int"; + field public static final String KEY_VIDEO_CODEC_ATTRIBUTE_RESOLUTION_INT_ARRAY = "imsvt.video_codec_attribute_resolution_int_array"; + field public static final String KEY_VIDEO_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE = "imsvt.video_codec_capability_payload_types_bundle"; + field public static final String KEY_VIDEO_ON_DEFAULT_BEARER_SUPPORTED_BOOL = "imsvt.video_on_default_bearer_supported_bool"; + field public static final String KEY_VIDEO_QOS_PRECONDITION_SUPPORTED_BOOL = "imsvt.video_qos_precondition_supported_bool"; + field public static final String KEY_VIDEO_RR_BANDWIDTH_BPS_INT = "imsvt.video_rr_bandwidth_bps_int"; + field public static final String KEY_VIDEO_RS_BANDWIDTH_BPS_INT = "imsvt.video_rs_bandwidth_bps_int"; + field public static final String KEY_VIDEO_RTCP_INACTIVITY_TIMER_MILLIS_INT = "imsvt.video_rtcp_inactivity_timer_millis_int"; + field public static final String KEY_VIDEO_RTP_DSCP_INT = "imsvt.video_rtp_dscp_int"; + field public static final String KEY_VIDEO_RTP_INACTIVITY_TIMER_MILLIS_INT = "imsvt.video_rtp_inactivity_timer_millis_int"; + } + + public static final class CarrierConfigManager.ImsWfc { + field public static final String KEY_EMERGENCY_CALL_OVER_EMERGENCY_PDN_BOOL = "imswfc.emergency_call_over_emergency_pdn_bool"; + field public static final String KEY_PIDF_SHORT_CODE_STRING_ARRAY = "imswfc.pidf_short_code_string_array"; + field public static final String KEY_PREFIX = "imswfc."; + } + + public static final class CarrierConfigManager.Iwlan { + field public static final int AUTHENTICATION_METHOD_CERT = 1; // 0x1 + field public static final int AUTHENTICATION_METHOD_EAP_ONLY = 0; // 0x0 + field public static final int EPDG_ADDRESS_CELLULAR_LOC = 3; // 0x3 + field public static final int EPDG_ADDRESS_IPV4_ONLY = 2; // 0x2 + field public static final int EPDG_ADDRESS_IPV4_PREFERRED = 0; // 0x0 + field public static final int EPDG_ADDRESS_IPV6_PREFERRED = 1; // 0x1 + field public static final int EPDG_ADDRESS_PCO = 2; // 0x2 + field public static final int EPDG_ADDRESS_PLMN = 1; // 0x1 + field public static final int EPDG_ADDRESS_STATIC = 0; // 0x0 + field public static final int EPDG_ADDRESS_VISITED_COUNTRY = 4; // 0x4 + field public static final int ID_TYPE_FQDN = 2; // 0x2 + field public static final int ID_TYPE_KEY_ID = 11; // 0xb + field public static final int ID_TYPE_RFC822_ADDR = 3; // 0x3 + field public static final String KEY_ADD_KE_TO_CHILD_SESSION_REKEY_BOOL = "iwlan.add_ke_to_child_session_rekey_bool"; + field public static final String KEY_CHILD_SA_REKEY_HARD_TIMER_SEC_INT = "iwlan.child_sa_rekey_hard_timer_sec_int"; + field public static final String KEY_CHILD_SA_REKEY_SOFT_TIMER_SEC_INT = "iwlan.child_sa_rekey_soft_timer_sec_int"; + field public static final String KEY_CHILD_SESSION_AES_CBC_KEY_SIZE_INT_ARRAY = "iwlan.child_session_aes_cbc_key_size_int_array"; + field public static final String KEY_CHILD_SESSION_AES_CTR_KEY_SIZE_INT_ARRAY = "iwlan.child_session_aes_ctr_key_size_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.enable_aead_algorithms") public static final String KEY_CHILD_SESSION_AES_GCM_KEY_SIZE_INT_ARRAY = "iwlan.child_session_aes_gcm_key_size_int_array"; + field public static final String KEY_DIFFIE_HELLMAN_GROUPS_INT_ARRAY = "iwlan.diffie_hellman_groups_int_array"; + field public static final String KEY_DPD_TIMER_SEC_INT = "iwlan.dpd_timer_sec_int"; + field public static final String KEY_EPDG_ADDRESS_IP_TYPE_PREFERENCE_INT = "iwlan.epdg_address_ip_type_preference_int"; + field public static final String KEY_EPDG_ADDRESS_PRIORITY_INT_ARRAY = "iwlan.epdg_address_priority_int_array"; + field public static final String KEY_EPDG_AUTHENTICATION_METHOD_INT = "iwlan.epdg_authentication_method_int"; + field public static final String KEY_EPDG_PCO_ID_IPV4_INT = "iwlan.epdg_pco_id_ipv4_int"; + field public static final String KEY_EPDG_PCO_ID_IPV6_INT = "iwlan.epdg_pco_id_ipv6_int"; + field public static final String KEY_EPDG_STATIC_ADDRESS_ROAMING_STRING = "iwlan.epdg_static_address_roaming_string"; + field public static final String KEY_EPDG_STATIC_ADDRESS_STRING = "iwlan.epdg_static_address_string"; + field public static final String KEY_IKE_LOCAL_ID_TYPE_INT = "iwlan.ike_local_id_type_int"; + field public static final String KEY_IKE_REKEY_HARD_TIMER_SEC_INT = "iwlan.ike_rekey_hard_timer_in_sec"; + field public static final String KEY_IKE_REKEY_SOFT_TIMER_SEC_INT = "iwlan.ike_rekey_soft_timer_sec_int"; + field public static final String KEY_IKE_REMOTE_ID_TYPE_INT = "iwlan.ike_remote_id_type_int"; + field public static final String KEY_IKE_SESSION_AES_CBC_KEY_SIZE_INT_ARRAY = "iwlan.ike_session_encryption_aes_cbc_key_size_int_array"; + field public static final String KEY_IKE_SESSION_AES_CTR_KEY_SIZE_INT_ARRAY = "iwlan.ike_session_encryption_aes_ctr_key_size_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.enable_aead_algorithms") public static final String KEY_IKE_SESSION_AES_GCM_KEY_SIZE_INT_ARRAY = "iwlan.ike_session_encryption_aes_gcm_key_size_int_array"; + field public static final String KEY_MAX_RETRIES_INT = "iwlan.max_retries_int"; + field public static final String KEY_MCC_MNCS_STRING_ARRAY = "iwlan.mcc_mncs_string_array"; + field public static final String KEY_NATT_KEEP_ALIVE_TIMER_SEC_INT = "iwlan.natt_keep_alive_timer_sec_int"; + field public static final String KEY_PREFIX = "iwlan."; + field public static final String KEY_RETRANSMIT_TIMER_MSEC_INT_ARRAY = "iwlan.retransmit_timer_sec_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.enable_aead_algorithms") public static final String KEY_SUPPORTED_CHILD_SESSION_AEAD_ALGORITHMS_INT_ARRAY = "iwlan.supported_child_session_aead_algorithms_int_array"; + field public static final String KEY_SUPPORTED_CHILD_SESSION_ENCRYPTION_ALGORITHMS_INT_ARRAY = "iwlan.supported_child_session_encryption_algorithms_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.enable_aead_algorithms") public static final String KEY_SUPPORTED_IKE_SESSION_AEAD_ALGORITHMS_INT_ARRAY = "iwlan.supported_ike_session_aead_algorithms_int_array"; + field public static final String KEY_SUPPORTED_IKE_SESSION_ENCRYPTION_ALGORITHMS_INT_ARRAY = "iwlan.supported_ike_session_encryption_algorithms_int_array"; + field public static final String KEY_SUPPORTED_INTEGRITY_ALGORITHMS_INT_ARRAY = "iwlan.supported_integrity_algorithms_int_array"; + field public static final String KEY_SUPPORTED_PRF_ALGORITHMS_INT_ARRAY = "iwlan.supported_prf_algorithms_int_array"; + field @FlaggedApi("com.android.internal.telephony.flags.enable_multiple_sa_proposals") public static final String KEY_SUPPORTS_CHILD_SESSION_MULTIPLE_SA_PROPOSALS_BOOL = "iwlan.supports_child_session_multiple_sa_proposals_bool"; + field public static final String KEY_SUPPORTS_EAP_AKA_FAST_REAUTH_BOOL = "iwlan.supports_eap_aka_fast_reauth_bool"; + field @FlaggedApi("com.android.internal.telephony.flags.enable_multiple_sa_proposals") public static final String KEY_SUPPORTS_IKE_SESSION_MULTIPLE_SA_PROPOSALS_BOOL = "iwlan.supports_ike_session_multiple_sa_proposals_bool"; + } + + public abstract class CellIdentity implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public CharSequence getOperatorAlphaLong(); + method @Nullable public CharSequence getOperatorAlphaShort(); + method @CallSuper public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public final class CellIdentityCdma extends android.telephony.CellIdentity { + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getBasestationId(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getLatitude(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getLongitude(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getNetworkId(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public int getSystemId(); + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellIdentityGsm extends android.telephony.CellIdentity { + method @NonNull public java.util.Set getAdditionalPlmns(); + method public int getArfcn(); + method public int getBsic(); + method public int getCid(); + method public int getLac(); + method @Deprecated public int getMcc(); + method @Nullable public String getMccString(); + method @Deprecated public int getMnc(); + method @Nullable public String getMncString(); + method @Nullable public String getMobileNetworkOperator(); + method @Deprecated public int getPsc(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellIdentityLte extends android.telephony.CellIdentity { + method @NonNull public java.util.Set getAdditionalPlmns(); + method @NonNull public int[] getBands(); + method public int getBandwidth(); + method public int getCi(); + method @Nullable public android.telephony.ClosedSubscriberGroupInfo getClosedSubscriberGroupInfo(); + method public int getEarfcn(); + method @Deprecated public int getMcc(); + method @Nullable public String getMccString(); + method @Deprecated public int getMnc(); + method @Nullable public String getMncString(); + method @Nullable public String getMobileNetworkOperator(); + method public int getPci(); + method public int getTac(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellIdentityNr extends android.telephony.CellIdentity { + method @NonNull public java.util.Set getAdditionalPlmns(); + method @NonNull public int[] getBands(); + method @Nullable public String getMccString(); + method @Nullable public String getMncString(); + method public long getNci(); + method @IntRange(from=0, to=3279165) public int getNrarfcn(); + method @IntRange(from=0, to=1007) public int getPci(); + method @IntRange(from=0, to=16777215) public int getTac(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellIdentityTdscdma extends android.telephony.CellIdentity { + method @NonNull public java.util.Set getAdditionalPlmns(); + method public int getCid(); + method @Nullable public android.telephony.ClosedSubscriberGroupInfo getClosedSubscriberGroupInfo(); + method public int getCpid(); + method public int getLac(); + method @Nullable public String getMccString(); + method @Nullable public String getMncString(); + method @Nullable public String getMobileNetworkOperator(); + method public int getUarfcn(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellIdentityWcdma extends android.telephony.CellIdentity { + method @NonNull public java.util.Set getAdditionalPlmns(); + method public int getCid(); + method @Nullable public android.telephony.ClosedSubscriberGroupInfo getClosedSubscriberGroupInfo(); + method public int getLac(); + method @Deprecated public int getMcc(); + method @Nullable public String getMccString(); + method @Deprecated public int getMnc(); + method @Nullable public String getMncString(); + method @Nullable public String getMobileNetworkOperator(); + method public int getPsc(); + method public int getUarfcn(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class CellInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getCellConnectionStatus(); + method @NonNull public abstract android.telephony.CellIdentity getCellIdentity(); + method @NonNull public abstract android.telephony.CellSignalStrength getCellSignalStrength(); + method @Deprecated public long getTimeStamp(); + method public long getTimestampMillis(); + method public boolean isRegistered(); + field public static final int CONNECTION_NONE = 0; // 0x0 + field public static final int CONNECTION_PRIMARY_SERVING = 1; // 0x1 + field public static final int CONNECTION_SECONDARY_SERVING = 2; // 0x2 + field public static final int CONNECTION_UNKNOWN = 2147483647; // 0x7fffffff + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int UNAVAILABLE = 2147483647; // 0x7fffffff + field public static final long UNAVAILABLE_LONG = 9223372036854775807L; // 0x7fffffffffffffffL + } + + @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public final class CellInfoCdma extends android.telephony.CellInfo implements android.os.Parcelable { + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public android.telephony.CellIdentityCdma getCellIdentity(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public android.telephony.CellSignalStrengthCdma getCellSignalStrength(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public void writeToParcel(android.os.Parcel, int); + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellInfoGsm extends android.telephony.CellInfo implements android.os.Parcelable { + method @NonNull public android.telephony.CellIdentityGsm getCellIdentity(); + method @NonNull public android.telephony.CellSignalStrengthGsm getCellSignalStrength(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellInfoLte extends android.telephony.CellInfo implements android.os.Parcelable { + method @NonNull public android.telephony.CellIdentityLte getCellIdentity(); + method @NonNull public android.telephony.CellSignalStrengthLte getCellSignalStrength(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellInfoNr extends android.telephony.CellInfo { + method @NonNull public android.telephony.CellIdentity getCellIdentity(); + method @NonNull public android.telephony.CellSignalStrength getCellSignalStrength(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellInfoTdscdma extends android.telephony.CellInfo implements android.os.Parcelable { + method @NonNull public android.telephony.CellIdentityTdscdma getCellIdentity(); + method @NonNull public android.telephony.CellSignalStrengthTdscdma getCellSignalStrength(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellInfoWcdma extends android.telephony.CellInfo implements android.os.Parcelable { + method public android.telephony.CellIdentityWcdma getCellIdentity(); + method public android.telephony.CellSignalStrengthWcdma getCellSignalStrength(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @Deprecated public abstract class CellLocation { + ctor @Deprecated public CellLocation(); + method @Deprecated public static android.telephony.CellLocation getEmpty(); + method @Deprecated public static void requestLocationUpdate(); + } + + public abstract class CellSignalStrength { + method public abstract boolean equals(Object); + method public abstract int getAsuLevel(); + method public abstract int getDbm(); + method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public abstract int getLevel(); + method public abstract int hashCode(); + field public static final int SIGNAL_STRENGTH_GOOD = 3; // 0x3 + field public static final int SIGNAL_STRENGTH_GREAT = 4; // 0x4 + field public static final int SIGNAL_STRENGTH_MODERATE = 2; // 0x2 + field public static final int SIGNAL_STRENGTH_NONE_OR_UNKNOWN = 0; // 0x0 + field public static final int SIGNAL_STRENGTH_POOR = 1; // 0x1 + } + + public final class CellSignalStrengthCdma extends android.telephony.CellSignalStrength implements android.os.Parcelable { + method public int describeContents(); + method public boolean equals(Object); + method public int getAsuLevel(); + method public int getCdmaDbm(); + method public int getCdmaEcio(); + method public int getCdmaLevel(); + method public int getDbm(); + method public int getEvdoDbm(); + method public int getEvdoEcio(); + method public int getEvdoLevel(); + method public int getEvdoSnr(); + method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); + method public int hashCode(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellSignalStrengthGsm extends android.telephony.CellSignalStrength implements android.os.Parcelable { + method public int describeContents(); + method public boolean equals(Object); + method public int getAsuLevel(); + method public int getBitErrorRate(); + method public int getDbm(); + method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); + method public int getRssi(); + method public int getTimingAdvance(); + method public int hashCode(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellSignalStrengthLte extends android.telephony.CellSignalStrength implements android.os.Parcelable { + method public int describeContents(); + method public boolean equals(Object); + method public int getAsuLevel(); + method @IntRange(from=0, to=15) public int getCqi(); + method @IntRange(from=1, to=6) public int getCqiTableIndex(); + method public int getDbm(); + method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); + method public int getRsrp(); + method public int getRsrq(); + method public int getRssi(); + method public int getRssnr(); + method public int getTimingAdvance(); + method public int hashCode(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellSignalStrengthNr extends android.telephony.CellSignalStrength implements android.os.Parcelable { + method public int describeContents(); + method public boolean equals(Object); + method public int getAsuLevel(); + method @IntRange(from=0, to=15) @NonNull public java.util.List getCsiCqiReport(); + method @IntRange(from=1, to=3) public int getCsiCqiTableIndex(); + method public int getCsiRsrp(); + method public int getCsiRsrq(); + method public int getCsiSinr(); + method public int getDbm(); + method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); + method public int getSsRsrp(); + method public int getSsRsrq(); + method public int getSsSinr(); + method @IntRange(from=0, to=1282) public int getTimingAdvanceMicros(); + method public int hashCode(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellSignalStrengthTdscdma extends android.telephony.CellSignalStrength implements android.os.Parcelable { + method public int describeContents(); + method public boolean equals(Object); + method public int getAsuLevel(); + method public int getDbm(); + method @IntRange(from=0, to=4) public int getLevel(); + method public int getRscp(); + method public int hashCode(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CellSignalStrengthWcdma extends android.telephony.CellSignalStrength implements android.os.Parcelable { + method public int describeContents(); + method public boolean equals(Object); + method public int getAsuLevel(); + method public int getDbm(); + method public int getEcNo(); + method @IntRange(from=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN, to=android.telephony.CellSignalStrength.SIGNAL_STRENGTH_GREAT) public int getLevel(); + method public int hashCode(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class ClosedSubscriberGroupInfo implements android.os.Parcelable { + method public int describeContents(); + method @IntRange(from=0, to=134217727) public int getCsgIdentity(); + method public boolean getCsgIndicator(); + method @NonNull public String getHomeNodebName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class DataFailCause { + field public static final int ACCESS_ATTEMPT_ALREADY_IN_PROGRESS = 2219; // 0x8ab + field public static final int ACCESS_BLOCK = 2087; // 0x827 + field public static final int ACCESS_BLOCK_ALL = 2088; // 0x828 + field public static final int ACCESS_CLASS_DSAC_REJECTION = 2108; // 0x83c + field public static final int ACCESS_CONTROL_LIST_CHECK_FAILURE = 2128; // 0x850 + field public static final int ACTIVATION_REJECTED_BCM_VIOLATION = 48; // 0x30 + field public static final int ACTIVATION_REJECT_GGSN = 30; // 0x1e + field public static final int ACTIVATION_REJECT_UNSPECIFIED = 31; // 0x1f + field public static final int ACTIVE_PDP_CONTEXT_MAX_NUMBER_REACHED = 65; // 0x41 + field public static final int ALL_MATCHING_RULES_FAILED = 2254; // 0x8ce + field public static final int APN_DISABLED = 2045; // 0x7fd + field public static final int APN_DISALLOWED_ON_ROAMING = 2059; // 0x80b + field public static final int APN_MISMATCH = 2054; // 0x806 + field public static final int APN_PARAMETERS_CHANGED = 2060; // 0x80c + field public static final int APN_PENDING_HANDOVER = 2041; // 0x7f9 + field public static final int APN_TYPE_CONFLICT = 112; // 0x70 + field public static final int AUTH_FAILURE_ON_EMERGENCY_CALL = 122; // 0x7a + field public static final int BEARER_HANDLING_NOT_SUPPORTED = 60; // 0x3c + field public static final int CALL_DISALLOWED_IN_ROAMING = 2068; // 0x814 + field public static final int CALL_PREEMPT_BY_EMERGENCY_APN = 127; // 0x7f + field public static final int CANNOT_ENCODE_OTA_MESSAGE = 2159; // 0x86f + field public static final int CDMA_ALERT_STOP = 2077; // 0x81d + field public static final int CDMA_INCOMING_CALL = 2076; // 0x81c + field public static final int CDMA_INTERCEPT = 2073; // 0x819 + field public static final int CDMA_LOCK = 2072; // 0x818 + field public static final int CDMA_RELEASE_DUE_TO_SO_REJECTION = 2075; // 0x81b + field public static final int CDMA_REORDER = 2074; // 0x81a + field public static final int CDMA_RETRY_ORDER = 2086; // 0x826 + field public static final int CHANNEL_ACQUISITION_FAILURE = 2078; // 0x81e + field public static final int CLOSE_IN_PROGRESS = 2030; // 0x7ee + field public static final int COLLISION_WITH_NETWORK_INITIATED_REQUEST = 56; // 0x38 + field public static final int COMPANION_IFACE_IN_USE = 118; // 0x76 + field public static final int CONCURRENT_SERVICES_INCOMPATIBLE = 2083; // 0x823 + field public static final int CONCURRENT_SERVICES_NOT_ALLOWED = 2091; // 0x82b + field public static final int CONCURRENT_SERVICE_NOT_SUPPORTED_BY_BASE_STATION = 2080; // 0x820 + field public static final int CONDITIONAL_IE_ERROR = 100; // 0x64 + field public static final int CONGESTION = 2106; // 0x83a + field public static final int CONNECTION_RELEASED = 2113; // 0x841 + field public static final int CS_DOMAIN_NOT_AVAILABLE = 2181; // 0x885 + field public static final int CS_FALLBACK_CALL_ESTABLISHMENT_NOT_ALLOWED = 2188; // 0x88c + field public static final int DATA_PLAN_EXPIRED = 2198; // 0x896 + field public static final int DATA_ROAMING_SETTINGS_DISABLED = 2064; // 0x810 + field public static final int DATA_SETTINGS_DISABLED = 2063; // 0x80f + field public static final int DBM_OR_SMS_IN_PROGRESS = 2211; // 0x8a3 + field public static final int DDS_SWITCHED = 2065; // 0x811 + field public static final int DDS_SWITCH_IN_PROGRESS = 2067; // 0x813 + field public static final int DRB_RELEASED_BY_RRC = 2112; // 0x840 + field public static final int DS_EXPLICIT_DEACTIVATION = 2125; // 0x84d + field public static final int DUAL_SWITCH = 2227; // 0x8b3 + field public static final int DUN_CALL_DISALLOWED = 2056; // 0x808 + field public static final int DUPLICATE_BEARER_ID = 2118; // 0x846 + field public static final int EHRPD_TO_HRPD_FALLBACK = 2049; // 0x801 + field public static final int EMBMS_NOT_ENABLED = 2193; // 0x891 + field public static final int EMBMS_REGULAR_DEACTIVATION = 2195; // 0x893 + field public static final int EMERGENCY_IFACE_ONLY = 116; // 0x74 + field public static final int EMERGENCY_MODE = 2221; // 0x8ad + field public static final int EMM_ACCESS_BARRED = 115; // 0x73 + field public static final int EMM_ACCESS_BARRED_INFINITE_RETRY = 121; // 0x79 + field public static final int EMM_ATTACH_FAILED = 2115; // 0x843 + field public static final int EMM_ATTACH_STARTED = 2116; // 0x844 + field public static final int EMM_DETACHED = 2114; // 0x842 + field public static final int EMM_T3417_EXPIRED = 2130; // 0x852 + field public static final int EMM_T3417_EXT_EXPIRED = 2131; // 0x853 + field public static final int EPS_SERVICES_AND_NON_EPS_SERVICES_NOT_ALLOWED = 2178; // 0x882 + field public static final int EPS_SERVICES_NOT_ALLOWED_IN_PLMN = 2179; // 0x883 + field public static final int ERROR_UNSPECIFIED = 65535; // 0xffff + field public static final int ESM_BAD_OTA_MESSAGE = 2122; // 0x84a + field public static final int ESM_BEARER_DEACTIVATED_TO_SYNC_WITH_NETWORK = 2120; // 0x848 + field public static final int ESM_COLLISION_SCENARIOS = 2119; // 0x847 + field public static final int ESM_CONTEXT_TRANSFERRED_DUE_TO_IRAT = 2124; // 0x84c + field public static final int ESM_DOWNLOAD_SERVER_REJECTED_THE_CALL = 2123; // 0x84b + field public static final int ESM_FAILURE = 2182; // 0x886 + field public static final int ESM_INFO_NOT_RECEIVED = 53; // 0x35 + field public static final int ESM_LOCAL_CAUSE_NONE = 2126; // 0x84e + field public static final int ESM_NW_ACTIVATED_DED_BEARER_WITH_ID_OF_DEF_BEARER = 2121; // 0x849 + field public static final int ESM_PROCEDURE_TIME_OUT = 2155; // 0x86b + field public static final int ESM_UNKNOWN_EPS_BEARER_CONTEXT = 2111; // 0x83f + field public static final int EVDO_CONNECTION_DENY_BY_BILLING_OR_AUTHENTICATION_FAILURE = 2201; // 0x899 + field public static final int EVDO_CONNECTION_DENY_BY_GENERAL_OR_NETWORK_BUSY = 2200; // 0x898 + field public static final int EVDO_HDR_CHANGED = 2202; // 0x89a + field public static final int EVDO_HDR_CONNECTION_SETUP_TIMEOUT = 2206; // 0x89e + field public static final int EVDO_HDR_EXITED = 2203; // 0x89b + field public static final int EVDO_HDR_NO_SESSION = 2204; // 0x89c + field public static final int EVDO_USING_GPS_FIX_INSTEAD_OF_HDR_CALL = 2205; // 0x89d + field public static final int FADE = 2217; // 0x8a9 + field public static final int FAILED_TO_ACQUIRE_COLOCATED_HDR = 2207; // 0x89f + field public static final int FEATURE_NOT_SUPP = 40; // 0x28 + field public static final int FILTER_SEMANTIC_ERROR = 44; // 0x2c + field public static final int FILTER_SYTAX_ERROR = 45; // 0x2d + field public static final int FORBIDDEN_APN_NAME = 2066; // 0x812 + field public static final int GPRS_REGISTRATION_FAIL = -2; // 0xfffffffe + field public static final int GPRS_SERVICES_AND_NON_GPRS_SERVICES_NOT_ALLOWED = 2097; // 0x831 + field public static final int GPRS_SERVICES_NOT_ALLOWED = 2098; // 0x832 + field public static final int GPRS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN = 2103; // 0x837 + field public static final int HANDOFF_PREFERENCE_CHANGED = 2251; // 0x8cb + field public static final int HDR_ACCESS_FAILURE = 2213; // 0x8a5 + field public static final int HDR_FADE = 2212; // 0x8a4 + field public static final int HDR_NO_LOCK_GRANTED = 2210; // 0x8a2 + field public static final int IFACE_AND_POL_FAMILY_MISMATCH = 120; // 0x78 + field public static final int IFACE_MISMATCH = 117; // 0x75 + field public static final int ILLEGAL_ME = 2096; // 0x830 + field public static final int ILLEGAL_MS = 2095; // 0x82f + field public static final int IMEI_NOT_ACCEPTED = 2177; // 0x881 + field public static final int IMPLICITLY_DETACHED = 2100; // 0x834 + field public static final int IMSI_UNKNOWN_IN_HOME_SUBSCRIBER_SERVER = 2176; // 0x880 + field public static final int INCOMING_CALL_REJECTED = 2092; // 0x82c + field public static final int INSUFFICIENT_RESOURCES = 26; // 0x1a + field public static final int INTERFACE_IN_USE = 2058; // 0x80a + field public static final int INTERNAL_CALL_PREEMPT_BY_HIGH_PRIO_APN = 114; // 0x72 + field public static final int INTERNAL_EPC_NONEPC_TRANSITION = 2057; // 0x809 + field public static final int INVALID_CONNECTION_ID = 2156; // 0x86c + field public static final int INVALID_DNS_ADDR = 123; // 0x7b + field public static final int INVALID_EMM_STATE = 2190; // 0x88e + field public static final int INVALID_MANDATORY_INFO = 96; // 0x60 + field public static final int INVALID_MODE = 2223; // 0x8af + field public static final int INVALID_PCSCF_ADDR = 113; // 0x71 + field public static final int INVALID_PCSCF_OR_DNS_ADDRESS = 124; // 0x7c + field public static final int INVALID_PRIMARY_NSAPI = 2158; // 0x86e + field public static final int INVALID_SIM_STATE = 2224; // 0x8b0 + field public static final int INVALID_TRANSACTION_ID = 81; // 0x51 + field public static final int IPV6_ADDRESS_TRANSFER_FAILED = 2047; // 0x7ff + field public static final int IPV6_PREFIX_UNAVAILABLE = 2250; // 0x8ca + field public static final int IP_ADDRESS_MISMATCH = 119; // 0x77 + field public static final int IP_VERSION_MISMATCH = 2055; // 0x807 + field public static final int IRAT_HANDOVER_FAILED = 2194; // 0x892 + field public static final int IS707B_MAX_ACCESS_PROBES = 2089; // 0x829 + field public static final int IWLAN_AUTHORIZATION_REJECTED = 9003; // 0x232b + field public static final int IWLAN_CONGESTION = 15500; // 0x3c8c + field public static final int IWLAN_DNS_RESOLUTION_NAME_FAILURE = 16388; // 0x4004 + field public static final int IWLAN_DNS_RESOLUTION_TIMEOUT = 16389; // 0x4005 + field public static final int IWLAN_IKEV2_AUTH_FAILURE = 16385; // 0x4001 + field public static final int IWLAN_IKEV2_CERT_INVALID = 16387; // 0x4003 + field public static final int IWLAN_IKEV2_CONFIG_FAILURE = 16384; // 0x4000 + field public static final int IWLAN_IKEV2_MSG_TIMEOUT = 16386; // 0x4002 + field public static final int IWLAN_ILLEGAL_ME = 9006; // 0x232e + field public static final int IWLAN_IMEI_NOT_ACCEPTED = 11005; // 0x2afd + field public static final int IWLAN_MAX_CONNECTION_REACHED = 8193; // 0x2001 + field public static final int IWLAN_NETWORK_FAILURE = 10500; // 0x2904 + field public static final int IWLAN_NON_3GPP_ACCESS_TO_EPC_NOT_ALLOWED = 9000; // 0x2328 + field public static final int IWLAN_NO_APN_SUBSCRIPTION = 9002; // 0x232a + field public static final int IWLAN_PDN_CONNECTION_REJECTION = 8192; // 0x2000 + field public static final int IWLAN_PLMN_NOT_ALLOWED = 11011; // 0x2b03 + field public static final int IWLAN_RAT_TYPE_NOT_ALLOWED = 11001; // 0x2af9 + field public static final int IWLAN_SEMANTIC_ERRORS_IN_PACKET_FILTERS = 8244; // 0x2034 + field public static final int IWLAN_SEMANTIC_ERROR_IN_THE_TFT_OPERATION = 8241; // 0x2031 + field public static final int IWLAN_SYNTACTICAL_ERRORS_IN_PACKET_FILTERS = 8245; // 0x2035 + field public static final int IWLAN_SYNTACTICAL_ERROR_IN_THE_TFT_OPERATION = 8242; // 0x2032 + field public static final int IWLAN_TUNNEL_NOT_FOUND = 16390; // 0x4006 + field public static final int IWLAN_UNAUTHENTICATED_EMERGENCY_NOT_SUPPORTED = 11055; // 0x2b2f + field public static final int IWLAN_USER_UNKNOWN = 9001; // 0x2329 + field public static final int LIMITED_TO_IPV4 = 2234; // 0x8ba + field public static final int LIMITED_TO_IPV6 = 2235; // 0x8bb + field public static final int LLC_SNDCP = 25; // 0x19 + field public static final int LOCAL_END = 2215; // 0x8a7 + field public static final int LOCATION_AREA_NOT_ALLOWED = 2102; // 0x836 + field public static final int LOST_CONNECTION = 65540; // 0x10004 + field public static final int LOWER_LAYER_REGISTRATION_FAILURE = 2197; // 0x895 + field public static final int LOW_POWER_MODE_OR_POWERING_DOWN = 2044; // 0x7fc + field public static final int LTE_NAS_SERVICE_REQUEST_FAILED = 2117; // 0x845 + field public static final int LTE_THROTTLING_NOT_REQUIRED = 2127; // 0x84f + field public static final int MAC_FAILURE = 2183; // 0x887 + field public static final int MATCH_ALL_RULE_NOT_ALLOWED = 2253; // 0x8cd + field public static final int MAXIMIUM_NSAPIS_EXCEEDED = 2157; // 0x86d + field public static final int MAXINUM_SIZE_OF_L2_MESSAGE_EXCEEDED = 2166; // 0x876 + field public static final int MAX_ACCESS_PROBE = 2079; // 0x81f + field public static final int MAX_IPV4_CONNECTIONS = 2052; // 0x804 + field public static final int MAX_IPV6_CONNECTIONS = 2053; // 0x805 + field public static final int MAX_PPP_INACTIVITY_TIMER_EXPIRED = 2046; // 0x7fe + field public static final int MESSAGE_INCORRECT_SEMANTIC = 95; // 0x5f + field public static final int MESSAGE_TYPE_UNSUPPORTED = 97; // 0x61 + field public static final int MIP_CONFIG_FAILURE = 2050; // 0x802 + field public static final int MIP_FA_ADMIN_PROHIBITED = 2001; // 0x7d1 + field public static final int MIP_FA_DELIVERY_STYLE_NOT_SUPPORTED = 2012; // 0x7dc + field public static final int MIP_FA_ENCAPSULATION_UNAVAILABLE = 2008; // 0x7d8 + field public static final int MIP_FA_HOME_AGENT_AUTHENTICATION_FAILURE = 2004; // 0x7d4 + field public static final int MIP_FA_INSUFFICIENT_RESOURCES = 2002; // 0x7d2 + field public static final int MIP_FA_MALFORMED_REPLY = 2007; // 0x7d7 + field public static final int MIP_FA_MALFORMED_REQUEST = 2006; // 0x7d6 + field public static final int MIP_FA_MISSING_CHALLENGE = 2017; // 0x7e1 + field public static final int MIP_FA_MISSING_HOME_ADDRESS = 2015; // 0x7df + field public static final int MIP_FA_MISSING_HOME_AGENT = 2014; // 0x7de + field public static final int MIP_FA_MISSING_NAI = 2013; // 0x7dd + field public static final int MIP_FA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2003; // 0x7d3 + field public static final int MIP_FA_REASON_UNSPECIFIED = 2000; // 0x7d0 + field public static final int MIP_FA_REQUESTED_LIFETIME_TOO_LONG = 2005; // 0x7d5 + field public static final int MIP_FA_REVERSE_TUNNEL_IS_MANDATORY = 2011; // 0x7db + field public static final int MIP_FA_REVERSE_TUNNEL_UNAVAILABLE = 2010; // 0x7da + field public static final int MIP_FA_STALE_CHALLENGE = 2018; // 0x7e2 + field public static final int MIP_FA_UNKNOWN_CHALLENGE = 2016; // 0x7e0 + field public static final int MIP_FA_VJ_HEADER_COMPRESSION_UNAVAILABLE = 2009; // 0x7d9 + field public static final int MIP_HA_ADMIN_PROHIBITED = 2020; // 0x7e4 + field public static final int MIP_HA_ENCAPSULATION_UNAVAILABLE = 2029; // 0x7ed + field public static final int MIP_HA_FOREIGN_AGENT_AUTHENTICATION_FAILURE = 2023; // 0x7e7 + field public static final int MIP_HA_INSUFFICIENT_RESOURCES = 2021; // 0x7e5 + field public static final int MIP_HA_MALFORMED_REQUEST = 2025; // 0x7e9 + field public static final int MIP_HA_MOBILE_NODE_AUTHENTICATION_FAILURE = 2022; // 0x7e6 + field public static final int MIP_HA_REASON_UNSPECIFIED = 2019; // 0x7e3 + field public static final int MIP_HA_REGISTRATION_ID_MISMATCH = 2024; // 0x7e8 + field public static final int MIP_HA_REVERSE_TUNNEL_IS_MANDATORY = 2028; // 0x7ec + field public static final int MIP_HA_REVERSE_TUNNEL_UNAVAILABLE = 2027; // 0x7eb + field public static final int MIP_HA_UNKNOWN_HOME_AGENT_ADDRESS = 2026; // 0x7ea + field public static final int MISSING_UNKNOWN_APN = 27; // 0x1b + field public static final int MODEM_APP_PREEMPTED = 2032; // 0x7f0 + field public static final int MODEM_RESTART = 2037; // 0x7f5 + field public static final int MSC_TEMPORARILY_NOT_REACHABLE = 2180; // 0x884 + field public static final int MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE = 101; // 0x65 + field public static final int MSG_TYPE_NONCOMPATIBLE_STATE = 98; // 0x62 + field public static final int MS_IDENTITY_CANNOT_BE_DERIVED_BY_THE_NETWORK = 2099; // 0x833 + field public static final int MULTIPLE_PDP_CALL_NOT_ALLOWED = 2192; // 0x890 + field public static final int MULTI_CONN_TO_SAME_PDN_NOT_ALLOWED = 55; // 0x37 + field public static final int NAS_LAYER_FAILURE = 2191; // 0x88f + field public static final int NAS_REQUEST_REJECTED_BY_NETWORK = 2167; // 0x877 + field public static final int NAS_SIGNALLING = 14; // 0xe + field public static final int NETWORK_FAILURE = 38; // 0x26 + field public static final int NETWORK_INITIATED_DETACH_NO_AUTO_REATTACH = 2154; // 0x86a + field public static final int NETWORK_INITIATED_DETACH_WITH_AUTO_REATTACH = 2153; // 0x869 + field public static final int NETWORK_INITIATED_TERMINATION = 2031; // 0x7ef + field public static final int NONE = 0; // 0x0 + field public static final int NON_IP_NOT_SUPPORTED = 2069; // 0x815 + field public static final int NORMAL_RELEASE = 2218; // 0x8aa + field public static final int NO_CDMA_SERVICE = 2084; // 0x824 + field public static final int NO_COLLOCATED_HDR = 2225; // 0x8b1 + field public static final int NO_EPS_BEARER_CONTEXT_ACTIVATED = 2189; // 0x88d + field public static final int NO_GPRS_CONTEXT = 2094; // 0x82e + field public static final int NO_HYBRID_HDR_SERVICE = 2209; // 0x8a1 + field public static final int NO_PDP_CONTEXT_ACTIVATED = 2107; // 0x83b + field public static final int NO_RESPONSE_FROM_BASE_STATION = 2081; // 0x821 + field public static final int NO_SERVICE = 2216; // 0x8a8 + field public static final int NO_SERVICE_ON_GATEWAY = 2093; // 0x82d + field public static final int NSAPI_IN_USE = 35; // 0x23 + field public static final int NULL_APN_DISALLOWED = 2061; // 0x80d + field public static final int OEM_DCFAILCAUSE_1 = 4097; // 0x1001 + field public static final int OEM_DCFAILCAUSE_10 = 4106; // 0x100a + field public static final int OEM_DCFAILCAUSE_11 = 4107; // 0x100b + field public static final int OEM_DCFAILCAUSE_12 = 4108; // 0x100c + field public static final int OEM_DCFAILCAUSE_13 = 4109; // 0x100d + field public static final int OEM_DCFAILCAUSE_14 = 4110; // 0x100e + field public static final int OEM_DCFAILCAUSE_15 = 4111; // 0x100f + field public static final int OEM_DCFAILCAUSE_2 = 4098; // 0x1002 + field public static final int OEM_DCFAILCAUSE_3 = 4099; // 0x1003 + field public static final int OEM_DCFAILCAUSE_4 = 4100; // 0x1004 + field public static final int OEM_DCFAILCAUSE_5 = 4101; // 0x1005 + field public static final int OEM_DCFAILCAUSE_6 = 4102; // 0x1006 + field public static final int OEM_DCFAILCAUSE_7 = 4103; // 0x1007 + field public static final int OEM_DCFAILCAUSE_8 = 4104; // 0x1008 + field public static final int OEM_DCFAILCAUSE_9 = 4105; // 0x1009 + field public static final int ONLY_IPV4V6_ALLOWED = 57; // 0x39 + field public static final int ONLY_IPV4_ALLOWED = 50; // 0x32 + field public static final int ONLY_IPV6_ALLOWED = 51; // 0x33 + field public static final int ONLY_NON_IP_ALLOWED = 58; // 0x3a + field public static final int ONLY_SINGLE_BEARER_ALLOWED = 52; // 0x34 + field public static final int OPERATOR_BARRED = 8; // 0x8 + field public static final int OTASP_COMMIT_IN_PROGRESS = 2208; // 0x8a0 + field public static final int PDN_CONN_DOES_NOT_EXIST = 54; // 0x36 + field public static final int PDN_INACTIVITY_TIMER_EXPIRED = 2051; // 0x803 + field public static final int PDN_IPV4_CALL_DISALLOWED = 2033; // 0x7f1 + field public static final int PDN_IPV4_CALL_THROTTLED = 2034; // 0x7f2 + field public static final int PDN_IPV6_CALL_DISALLOWED = 2035; // 0x7f3 + field public static final int PDN_IPV6_CALL_THROTTLED = 2036; // 0x7f4 + field public static final int PDN_NON_IP_CALL_DISALLOWED = 2071; // 0x817 + field public static final int PDN_NON_IP_CALL_THROTTLED = 2070; // 0x816 + field public static final int PDP_ACTIVATE_MAX_RETRY_FAILED = 2109; // 0x83d + field public static final int PDP_DUPLICATE = 2104; // 0x838 + field public static final int PDP_ESTABLISH_TIMEOUT_EXPIRED = 2161; // 0x871 + field public static final int PDP_INACTIVE_TIMEOUT_EXPIRED = 2163; // 0x873 + field public static final int PDP_LOWERLAYER_ERROR = 2164; // 0x874 + field public static final int PDP_MODIFY_COLLISION = 2165; // 0x875 + field public static final int PDP_MODIFY_TIMEOUT_EXPIRED = 2162; // 0x872 + field public static final int PDP_PPP_NOT_SUPPORTED = 2038; // 0x7f6 + field public static final int PDP_WITHOUT_ACTIVE_TFT = 46; // 0x2e + field public static final int PHONE_IN_USE = 2222; // 0x8ae + field public static final int PHYSICAL_LINK_CLOSE_IN_PROGRESS = 2040; // 0x7f8 + field public static final int PLMN_NOT_ALLOWED = 2101; // 0x835 + field public static final int PPP_AUTH_FAILURE = 2229; // 0x8b5 + field public static final int PPP_CHAP_FAILURE = 2232; // 0x8b8 + field public static final int PPP_CLOSE_IN_PROGRESS = 2233; // 0x8b9 + field public static final int PPP_OPTION_MISMATCH = 2230; // 0x8b6 + field public static final int PPP_PAP_FAILURE = 2231; // 0x8b7 + field public static final int PPP_TIMEOUT = 2228; // 0x8b4 + field public static final int PREF_RADIO_TECH_CHANGED = -4; // 0xfffffffc + field public static final int PROFILE_BEARER_INCOMPATIBLE = 2042; // 0x7fa + field public static final int PROTOCOL_ERRORS = 111; // 0x6f + field public static final int QOS_NOT_ACCEPTED = 37; // 0x25 + field public static final int RADIO_ACCESS_BEARER_FAILURE = 2110; // 0x83e + field public static final int RADIO_ACCESS_BEARER_SETUP_FAILURE = 2160; // 0x870 + field public static final int RADIO_NOT_AVAILABLE = 65537; // 0x10001 + field public static final int RADIO_POWER_OFF = -5; // 0xfffffffb + field public static final int REDIRECTION_OR_HANDOFF_IN_PROGRESS = 2220; // 0x8ac + field public static final int REGISTRATION_FAIL = -1; // 0xffffffff + field public static final int REGULAR_DEACTIVATION = 36; // 0x24 + field public static final int REJECTED_BY_BASE_STATION = 2082; // 0x822 + field public static final int RRC_CONNECTION_ABORTED_AFTER_HANDOVER = 2173; // 0x87d + field public static final int RRC_CONNECTION_ABORTED_AFTER_IRAT_CELL_CHANGE = 2174; // 0x87e + field public static final int RRC_CONNECTION_ABORTED_DUE_TO_IRAT_CHANGE = 2171; // 0x87b + field public static final int RRC_CONNECTION_ABORTED_DURING_IRAT_CELL_CHANGE = 2175; // 0x87f + field public static final int RRC_CONNECTION_ABORT_REQUEST = 2151; // 0x867 + field public static final int RRC_CONNECTION_ACCESS_BARRED = 2139; // 0x85b + field public static final int RRC_CONNECTION_ACCESS_STRATUM_FAILURE = 2137; // 0x859 + field public static final int RRC_CONNECTION_ANOTHER_PROCEDURE_IN_PROGRESS = 2138; // 0x85a + field public static final int RRC_CONNECTION_CELL_NOT_CAMPED = 2144; // 0x860 + field public static final int RRC_CONNECTION_CELL_RESELECTION = 2140; // 0x85c + field public static final int RRC_CONNECTION_CONFIG_FAILURE = 2141; // 0x85d + field public static final int RRC_CONNECTION_INVALID_REQUEST = 2168; // 0x878 + field public static final int RRC_CONNECTION_LINK_FAILURE = 2143; // 0x85f + field public static final int RRC_CONNECTION_NORMAL_RELEASE = 2147; // 0x863 + field public static final int RRC_CONNECTION_OUT_OF_SERVICE_DURING_CELL_REGISTER = 2150; // 0x866 + field public static final int RRC_CONNECTION_RADIO_LINK_FAILURE = 2148; // 0x864 + field public static final int RRC_CONNECTION_REESTABLISHMENT_FAILURE = 2149; // 0x865 + field public static final int RRC_CONNECTION_REJECT_BY_NETWORK = 2146; // 0x862 + field public static final int RRC_CONNECTION_RELEASED_SECURITY_NOT_ACTIVE = 2172; // 0x87c + field public static final int RRC_CONNECTION_RF_UNAVAILABLE = 2170; // 0x87a + field public static final int RRC_CONNECTION_SYSTEM_INFORMATION_BLOCK_READ_ERROR = 2152; // 0x868 + field public static final int RRC_CONNECTION_SYSTEM_INTERVAL_FAILURE = 2145; // 0x861 + field public static final int RRC_CONNECTION_TIMER_EXPIRED = 2142; // 0x85e + field public static final int RRC_CONNECTION_TRACKING_AREA_ID_CHANGED = 2169; // 0x879 + field public static final int RRC_UPLINK_CONNECTION_RELEASE = 2134; // 0x856 + field public static final int RRC_UPLINK_DATA_TRANSMISSION_FAILURE = 2132; // 0x854 + field public static final int RRC_UPLINK_DELIVERY_FAILED_DUE_TO_HANDOVER = 2133; // 0x855 + field public static final int RRC_UPLINK_ERROR_REQUEST_FROM_NAS = 2136; // 0x858 + field public static final int RRC_UPLINK_RADIO_LINK_FAILURE = 2135; // 0x857 + field public static final int RUIM_NOT_PRESENT = 2085; // 0x825 + field public static final int SECURITY_MODE_REJECTED = 2186; // 0x88a + field public static final int SERVICE_NOT_ALLOWED_ON_PLMN = 2129; // 0x851 + field public static final int SERVICE_OPTION_NOT_SUBSCRIBED = 33; // 0x21 + field public static final int SERVICE_OPTION_NOT_SUPPORTED = 32; // 0x20 + field public static final int SERVICE_OPTION_OUT_OF_ORDER = 34; // 0x22 + field public static final int SIGNAL_LOST = -3; // 0xfffffffd + field public static final int SIM_CARD_CHANGED = 2043; // 0x7fb + field public static final int SLICE_REJECTED = 2252; // 0x8cc + field public static final int SYNCHRONIZATION_FAILURE = 2184; // 0x888 + field public static final int TEST_LOOPBACK_REGULAR_DEACTIVATION = 2196; // 0x894 + field public static final int TETHERED_CALL_ACTIVE = -6; // 0xfffffffa + field public static final int TFT_SEMANTIC_ERROR = 41; // 0x29 + field public static final int TFT_SYTAX_ERROR = 42; // 0x2a + field public static final int THERMAL_EMERGENCY = 2090; // 0x82a + field public static final int THERMAL_MITIGATION = 2062; // 0x80e + field public static final int TRAT_SWAP_FAILED = 2048; // 0x800 + field public static final int UE_INITIATED_DETACH_OR_DISCONNECT = 128; // 0x80 + field public static final int UE_IS_ENTERING_POWERSAVE_MODE = 2226; // 0x8b2 + field public static final int UE_RAT_CHANGE = 2105; // 0x839 + field public static final int UE_SECURITY_CAPABILITIES_MISMATCH = 2185; // 0x889 + field public static final int UMTS_HANDOVER_TO_IWLAN = 2199; // 0x897 + field public static final int UMTS_REACTIVATION_REQ = 39; // 0x27 + field public static final int UNACCEPTABLE_NETWORK_PARAMETER = 65538; // 0x10002 + field public static final int UNACCEPTABLE_NON_EPS_AUTHENTICATION = 2187; // 0x88b + field public static final int UNKNOWN = 65536; // 0x10000 + field public static final int UNKNOWN_INFO_ELEMENT = 99; // 0x63 + field public static final int UNKNOWN_PDP_ADDRESS_TYPE = 28; // 0x1c + field public static final int UNKNOWN_PDP_CONTEXT = 43; // 0x2b + field public static final int UNPREFERRED_RAT = 2039; // 0x7f7 + field public static final int UNSUPPORTED_1X_PREV = 2214; // 0x8a6 + field public static final int UNSUPPORTED_APN_IN_CURRENT_PLMN = 66; // 0x42 + field public static final int UNSUPPORTED_QCI_VALUE = 59; // 0x3b + field public static final int USER_AUTHENTICATION = 29; // 0x1d + field public static final int VSNCP_ADMINISTRATIVELY_PROHIBITED = 2245; // 0x8c5 + field public static final int VSNCP_APN_UNAUTHORIZED = 2238; // 0x8be + field public static final int VSNCP_GEN_ERROR = 2237; // 0x8bd + field public static final int VSNCP_INSUFFICIENT_PARAMETERS = 2243; // 0x8c3 + field public static final int VSNCP_NO_PDN_GATEWAY_ADDRESS = 2240; // 0x8c0 + field public static final int VSNCP_PDN_EXISTS_FOR_THIS_APN = 2248; // 0x8c8 + field public static final int VSNCP_PDN_GATEWAY_REJECT = 2242; // 0x8c2 + field public static final int VSNCP_PDN_GATEWAY_UNREACHABLE = 2241; // 0x8c1 + field public static final int VSNCP_PDN_ID_IN_USE = 2246; // 0x8c6 + field public static final int VSNCP_PDN_LIMIT_EXCEEDED = 2239; // 0x8bf + field public static final int VSNCP_RECONNECT_NOT_ALLOWED = 2249; // 0x8c9 + field public static final int VSNCP_RESOURCE_UNAVAILABLE = 2244; // 0x8c4 + field public static final int VSNCP_SUBSCRIBER_LIMITATION = 2247; // 0x8c7 + field public static final int VSNCP_TIMEOUT = 2236; // 0x8bc + } + + public final class DisconnectCause { + field public static final int ALREADY_DIALING = 72; // 0x48 + field public static final int ANSWERED_ELSEWHERE = 52; // 0x34 + field public static final int BUSY = 4; // 0x4 + field public static final int CALLING_DISABLED = 74; // 0x4a + field public static final int CALL_BARRED = 20; // 0x14 + field public static final int CALL_PULLED = 51; // 0x33 + field public static final int CANT_CALL_WHILE_RINGING = 73; // 0x49 + field public static final int CDMA_ACCESS_BLOCKED = 35; // 0x23 + field public static final int CDMA_ACCESS_FAILURE = 32; // 0x20 + field public static final int CDMA_ALREADY_ACTIVATED = 49; // 0x31 + field public static final int CDMA_DROP = 27; // 0x1b + field public static final int CDMA_INTERCEPT = 28; // 0x1c + field public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 26; // 0x1a + field public static final int CDMA_NOT_EMERGENCY = 34; // 0x22 + field public static final int CDMA_PREEMPTED = 33; // 0x21 + field public static final int CDMA_REORDER = 29; // 0x1d + field public static final int CDMA_RETRY_ORDER = 31; // 0x1f + field public static final int CDMA_SO_REJECT = 30; // 0x1e + field public static final int CONGESTION = 5; // 0x5 + field public static final int CS_RESTRICTED = 22; // 0x16 + field public static final int CS_RESTRICTED_EMERGENCY = 24; // 0x18 + field public static final int CS_RESTRICTED_NORMAL = 23; // 0x17 + field public static final int DATA_DISABLED = 54; // 0x36 + field public static final int DATA_LIMIT_REACHED = 55; // 0x37 + field public static final int DIALED_CALL_FORWARDING_WHILE_ROAMING = 57; // 0x39 + field public static final int DIALED_MMI = 39; // 0x27 + field public static final int DIAL_LOW_BATTERY = 62; // 0x3e + field public static final int DIAL_MODIFIED_TO_DIAL = 48; // 0x30 + field public static final int DIAL_MODIFIED_TO_DIAL_VIDEO = 66; // 0x42 + field public static final int DIAL_MODIFIED_TO_SS = 47; // 0x2f + field public static final int DIAL_MODIFIED_TO_USSD = 46; // 0x2e + field public static final int DIAL_VIDEO_MODIFIED_TO_DIAL = 69; // 0x45 + field public static final int DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 70; // 0x46 + field public static final int DIAL_VIDEO_MODIFIED_TO_SS = 67; // 0x43 + field public static final int DIAL_VIDEO_MODIFIED_TO_USSD = 68; // 0x44 + field public static final int EMERGENCY_CALL_OVER_WFC_NOT_AVAILABLE = 78; // 0x4e + field public static final int EMERGENCY_PERM_FAILURE = 64; // 0x40 + field public static final int EMERGENCY_TEMP_FAILURE = 63; // 0x3f + field public static final int ERROR_UNSPECIFIED = 36; // 0x24 + field public static final int FDN_BLOCKED = 21; // 0x15 + field public static final int ICC_ERROR = 19; // 0x13 + field public static final int IMEI_NOT_ACCEPTED = 58; // 0x3a + field public static final int IMS_ACCESS_BLOCKED = 60; // 0x3c + field public static final int IMS_MERGED_SUCCESSFULLY = 45; // 0x2d + field public static final int IMS_SIP_ALTERNATE_EMERGENCY_CALL = 71; // 0x47 + field public static final int INCOMING_AUTO_REJECTED = 81; // 0x51 + field public static final int INCOMING_MISSED = 1; // 0x1 + field public static final int INCOMING_REJECTED = 16; // 0x10 + field public static final int INVALID_CREDENTIALS = 10; // 0xa + field public static final int INVALID_NUMBER = 7; // 0x7 + field public static final int LIMIT_EXCEEDED = 15; // 0xf + field public static final int LOCAL = 3; // 0x3 + field public static final int LOST_SIGNAL = 14; // 0xe + field public static final int LOW_BATTERY = 61; // 0x3d + field public static final int MAXIMUM_NUMBER_OF_CALLS_REACHED = 53; // 0x35 + field public static final int MEDIA_TIMEOUT = 77; // 0x4d + field public static final int MMI = 6; // 0x6 + field public static final int NORMAL = 2; // 0x2 + field public static final int NORMAL_UNSPECIFIED = 65; // 0x41 + field public static final int NOT_DISCONNECTED = 0; // 0x0 + field public static final int NOT_VALID = -1; // 0xffffffff + field public static final int NO_PHONE_NUMBER_SUPPLIED = 38; // 0x26 + field public static final int NUMBER_UNREACHABLE = 8; // 0x8 + field public static final int OTASP_PROVISIONING_IN_PROCESS = 76; // 0x4c + field public static final int OUTGOING_CANCELED = 44; // 0x2c + field public static final int OUTGOING_EMERGENCY_CALL_PLACED = 80; // 0x50 + field public static final int OUTGOING_FAILURE = 43; // 0x2b + field public static final int OUT_OF_NETWORK = 11; // 0xb + field public static final int OUT_OF_SERVICE = 18; // 0x12 + field public static final int POWER_OFF = 17; // 0x11 + field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final int SATELLITE_ENABLED = 82; // 0x52 + field public static final int SERVER_ERROR = 12; // 0xc + field public static final int SERVER_UNREACHABLE = 9; // 0x9 + field public static final int TIMED_OUT = 13; // 0xd + field public static final int TOO_MANY_ONGOING_CALLS = 75; // 0x4b + field public static final int UNOBTAINABLE_NUMBER = 25; // 0x19 + field public static final int VIDEO_CALL_NOT_ALLOWED_WHILE_TTY_ENABLED = 50; // 0x32 + field public static final int VOICEMAIL_NUMBER_MISSING = 40; // 0x28 + field public static final int WFC_SERVICE_NOT_AVAILABLE_IN_THIS_LOCATION = 79; // 0x4f + field public static final int WIFI_LOST = 59; // 0x3b + } + + public class IccOpenLogicalChannelResponse implements android.os.Parcelable { + method public int describeContents(); + method public int getChannel(); + method public byte[] getSelectResponse(); + method public int getStatus(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int INVALID_CHANNEL = -1; // 0xffffffff + field public static final int STATUS_MISSING_RESOURCE = 2; // 0x2 + field public static final int STATUS_NO_ERROR = 1; // 0x1 + field public static final int STATUS_NO_SUCH_ELEMENT = 3; // 0x3 + field public static final int STATUS_UNKNOWN_ERROR = 4; // 0x4 + } + + public class MbmsDownloadSession implements java.lang.AutoCloseable { + method public void addProgressListener(@NonNull android.telephony.mbms.DownloadRequest, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.DownloadProgressListener); + method public void addServiceAnnouncement(@NonNull byte[]); + method public void addStatusListener(@NonNull android.telephony.mbms.DownloadRequest, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.DownloadStatusListener); + method public void cancelDownload(@NonNull android.telephony.mbms.DownloadRequest); + method public void close(); + method public static android.telephony.MbmsDownloadSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.MbmsDownloadSessionCallback); + method @Nullable public static android.telephony.MbmsDownloadSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, int, @NonNull android.telephony.mbms.MbmsDownloadSessionCallback); + method public void download(@NonNull android.telephony.mbms.DownloadRequest); + method public static int getMaximumServiceAnnouncementSize(); + method @Nullable public java.io.File getTempFileRootDirectory(); + method @NonNull public java.util.List listPendingDownloads(); + method public void removeProgressListener(@NonNull android.telephony.mbms.DownloadRequest, @NonNull android.telephony.mbms.DownloadProgressListener); + method public void removeStatusListener(@NonNull android.telephony.mbms.DownloadRequest, @NonNull android.telephony.mbms.DownloadStatusListener); + method public void requestDownloadState(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo); + method public void requestUpdateFileServices(@NonNull java.util.List); + method public void resetDownloadKnowledge(android.telephony.mbms.DownloadRequest); + method public void setTempFileRootDirectory(@NonNull java.io.File); + field public static final String DEFAULT_TOP_LEVEL_TEMP_DIRECTORY = "androidMbmsTempFileRoot"; + field public static final String EXTRA_MBMS_COMPLETED_FILE_URI = "android.telephony.extra.MBMS_COMPLETED_FILE_URI"; + field public static final String EXTRA_MBMS_DOWNLOAD_REQUEST = "android.telephony.extra.MBMS_DOWNLOAD_REQUEST"; + field public static final String EXTRA_MBMS_DOWNLOAD_RESULT = "android.telephony.extra.MBMS_DOWNLOAD_RESULT"; + field public static final String EXTRA_MBMS_FILE_INFO = "android.telephony.extra.MBMS_FILE_INFO"; + field public static final int RESULT_CANCELLED = 2; // 0x2 + field public static final int RESULT_DOWNLOAD_FAILURE = 6; // 0x6 + field public static final int RESULT_EXPIRED = 3; // 0x3 + field public static final int RESULT_FILE_ROOT_UNREACHABLE = 8; // 0x8 + field public static final int RESULT_IO_ERROR = 4; // 0x4 + field public static final int RESULT_OUT_OF_STORAGE = 7; // 0x7 + field public static final int RESULT_SERVICE_ID_NOT_DEFINED = 5; // 0x5 + field public static final int RESULT_SUCCESSFUL = 1; // 0x1 + field public static final int STATUS_ACTIVELY_DOWNLOADING = 1; // 0x1 + field public static final int STATUS_PENDING_DOWNLOAD = 2; // 0x2 + field public static final int STATUS_PENDING_DOWNLOAD_WINDOW = 4; // 0x4 + field public static final int STATUS_PENDING_REPAIR = 3; // 0x3 + field public static final int STATUS_UNKNOWN = 0; // 0x0 + } + + public class MbmsGroupCallSession implements java.lang.AutoCloseable { + method public void close(); + method @Nullable public static android.telephony.MbmsGroupCallSession create(@NonNull android.content.Context, int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.MbmsGroupCallSessionCallback); + method @Nullable public static android.telephony.MbmsGroupCallSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.MbmsGroupCallSessionCallback); + method @Nullable public android.telephony.mbms.GroupCall startGroupCall(long, @NonNull java.util.List, @NonNull java.util.List, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.GroupCallCallback); + } + + public class MbmsStreamingSession implements java.lang.AutoCloseable { + method public void close(); + method @Nullable public static android.telephony.MbmsStreamingSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, int, @NonNull android.telephony.mbms.MbmsStreamingSessionCallback); + method public static android.telephony.MbmsStreamingSession create(@NonNull android.content.Context, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.mbms.MbmsStreamingSessionCallback); + method public void requestUpdateStreamingServices(java.util.List); + method @Nullable public android.telephony.mbms.StreamingService startStreaming(android.telephony.mbms.StreamingServiceInfo, @NonNull java.util.concurrent.Executor, android.telephony.mbms.StreamingServiceCallback); + } + + @Deprecated public class NeighboringCellInfo implements android.os.Parcelable { + ctor @Deprecated public NeighboringCellInfo(); + ctor @Deprecated public NeighboringCellInfo(int, int); + ctor @Deprecated public NeighboringCellInfo(int, String, int); + ctor @Deprecated public NeighboringCellInfo(android.os.Parcel); + method @Deprecated public int describeContents(); + method @Deprecated public int getCid(); + method @Deprecated public int getLac(); + method @Deprecated public int getNetworkType(); + method @Deprecated public int getPsc(); + method @Deprecated public int getRssi(); + method @Deprecated public void setCid(int); + method @Deprecated public void setRssi(int); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Deprecated public static final int UNKNOWN_CID = -1; // 0xffffffff + field @Deprecated public static final int UNKNOWN_RSSI = 99; // 0x63 + } + + public final class NetworkRegistrationInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getAccessNetworkTechnology(); + method @NonNull public java.util.List getAvailableServices(); + method @Nullable public android.telephony.CellIdentity getCellIdentity(); + method public int getDomain(); + method @Nullable public String getRegisteredPlmn(); + method @FlaggedApi("com.android.internal.telephony.flags.network_registration_info_reject_cause") public int getRejectCause(); + method public int getTransportType(); + method public boolean isNetworkRegistered(); + method public boolean isNetworkRoaming(); + method public boolean isNetworkSearching(); + method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public boolean isNonTerrestrialNetwork(); + method @Deprecated public boolean isRegistered(); + method @Deprecated public boolean isRoaming(); + method @Deprecated public boolean isSearching(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DOMAIN_CS = 1; // 0x1 + field public static final int DOMAIN_CS_PS = 3; // 0x3 + field public static final int DOMAIN_PS = 2; // 0x2 + field public static final int DOMAIN_UNKNOWN = 0; // 0x0 + field public static final int NR_STATE_CONNECTED = 3; // 0x3 + field public static final int NR_STATE_NONE = 0; // 0x0 + field public static final int NR_STATE_NOT_RESTRICTED = 2; // 0x2 + field public static final int NR_STATE_RESTRICTED = 1; // 0x1 + field public static final int SERVICE_TYPE_DATA = 2; // 0x2 + field public static final int SERVICE_TYPE_EMERGENCY = 5; // 0x5 + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final int SERVICE_TYPE_MMS = 6; // 0x6 + field public static final int SERVICE_TYPE_SMS = 3; // 0x3 + field public static final int SERVICE_TYPE_UNKNOWN = 0; // 0x0 + field public static final int SERVICE_TYPE_VIDEO = 4; // 0x4 + field public static final int SERVICE_TYPE_VOICE = 1; // 0x1 + } + + public class NetworkScan { + method public void stopScan(); + field public static final int ERROR_INTERRUPTED = 10002; // 0x2712 + field public static final int ERROR_INVALID_SCAN = 2; // 0x2 + field public static final int ERROR_INVALID_SCANID = 10001; // 0x2711 + field public static final int ERROR_MODEM_ERROR = 1; // 0x1 + field public static final int ERROR_MODEM_UNAVAILABLE = 3; // 0x3 + field public static final int ERROR_RADIO_INTERFACE_ERROR = 10000; // 0x2710 + field public static final int ERROR_UNSUPPORTED = 4; // 0x4 + field public static final int SUCCESS = 0; // 0x0 + } + + public final class NetworkScanRequest implements android.os.Parcelable { + ctor public NetworkScanRequest(int, android.telephony.RadioAccessSpecifier[], int, int, boolean, int, java.util.ArrayList); + method public int describeContents(); + method public boolean getIncrementalResults(); + method public int getIncrementalResultsPeriodicity(); + method public int getMaxSearchTime(); + method public java.util.ArrayList getPlmns(); + method public int getScanType(); + method public int getSearchPeriodicity(); + method public android.telephony.RadioAccessSpecifier[] getSpecifiers(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SCAN_TYPE_ONE_SHOT = 0; // 0x0 + field public static final int SCAN_TYPE_PERIODIC = 1; // 0x1 + } + + @Deprecated public class PhoneNumberFormattingTextWatcher implements android.text.TextWatcher { + ctor @Deprecated public PhoneNumberFormattingTextWatcher(); + ctor @Deprecated @WorkerThread public PhoneNumberFormattingTextWatcher(String); + method @Deprecated public void afterTextChanged(android.text.Editable); + method @Deprecated public void beforeTextChanged(CharSequence, int, int, int); + method @Deprecated public void onTextChanged(CharSequence, int, int, int); + } + + public class PhoneNumberUtils { + ctor public PhoneNumberUtils(); + method public static void addTtsSpan(android.text.Spannable, int, int); + method public static boolean areSamePhoneNumber(@NonNull String, @NonNull String, @NonNull String); + method @Deprecated public static String calledPartyBCDFragmentToString(byte[], int, int); + method public static String calledPartyBCDFragmentToString(byte[], int, int, int); + method @Deprecated public static String calledPartyBCDToString(byte[], int, int); + method public static String calledPartyBCDToString(byte[], int, int, int); + method @Deprecated public static boolean compare(String, String); + method @Deprecated public static boolean compare(android.content.Context, String, String); + method public static String convertKeypadLettersToDigits(String); + method public static android.text.style.TtsSpan createTtsSpan(String); + method public static CharSequence createTtsSpannable(CharSequence); + method public static String extractNetworkPortion(String); + method public static String extractPostDialPortion(String); + method @Deprecated public static void formatJapaneseNumber(android.text.Editable); + method @Deprecated public static void formatNanpNumber(android.text.Editable); + method @Deprecated public static String formatNumber(String); + method @Deprecated public static void formatNumber(android.text.Editable, int); + method public static String formatNumber(String, String); + method public static String formatNumber(String, String, String); + method public static String formatNumberToE164(String, String); + method public static String formatNumberToRFC3966(String, String); + method @Deprecated public static int getFormatTypeForLocale(java.util.Locale); + method public static String getNumberFromIntent(android.content.Intent, android.content.Context); + method public static String getStrippedReversed(String); + method public static final boolean is12Key(char); + method public static final boolean isDialable(char); + method @Deprecated public static boolean isEmergencyNumber(String); + method public static boolean isGlobalPhoneNumber(String); + method public static boolean isISODigit(char); + method @Deprecated public static boolean isLocalEmergencyNumber(android.content.Context, String); + method public static final boolean isNonSeparator(char); + method public static final boolean isReallyDialable(char); + method public static final boolean isStartsPostDial(char); + method public static boolean isVoiceMailNumber(String); + method public static boolean isWellFormedSmsAddress(String); + method @FlaggedApi("com.android.internal.telephony.flags.enable_wps_check_api_flag") public static boolean isWpsCallNumber(@NonNull String); + method public static byte[] networkPortionToCalledPartyBCD(String); + method public static byte[] networkPortionToCalledPartyBCDWithLength(String); + method public static String normalizeNumber(String); + method @Deprecated public static byte[] numberToCalledPartyBCD(String); + method public static byte[] numberToCalledPartyBCD(String, int); + method public static String replaceUnicodeDigits(String); + method public static String stringFromStringAndTOA(String, int); + method public static String stripSeparators(String); + method public static String toCallerIDMinMatch(String); + method public static int toaFromString(String); + field public static final int BCD_EXTENDED_TYPE_CALLED_PARTY = 2; // 0x2 + field public static final int BCD_EXTENDED_TYPE_EF_ADN = 1; // 0x1 + field public static final int FORMAT_JAPAN = 2; // 0x2 + field public static final int FORMAT_NANP = 1; // 0x1 + field public static final int FORMAT_UNKNOWN = 0; // 0x0 + field public static final char PAUSE = 44; // 0x002c ',' + field public static final int TOA_International = 145; // 0x91 + field public static final int TOA_Unknown = 129; // 0x81 + field public static final char WAIT = 59; // 0x003b ';' + field public static final char WILD = 78; // 0x004e 'N' + } + + @Deprecated public class PhoneStateListener { + ctor @Deprecated public PhoneStateListener(); + ctor @Deprecated public PhoneStateListener(@NonNull java.util.concurrent.Executor); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onActiveDataSubscriptionIdChanged(int); + method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onBarringInfoChanged(@NonNull android.telephony.BarringInfo); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onCallDisconnectCauseChanged(int, int); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onCallForwardingIndicatorChanged(boolean); + method @Deprecated @RequiresPermission(value=android.Manifest.permission.READ_PHONE_STATE, conditional=true) public void onCallStateChanged(int, String); + method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onCellInfoChanged(java.util.List); + method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void onCellLocationChanged(android.telephony.CellLocation); + method @Deprecated public void onDataActivity(int); + method @Deprecated public void onDataConnectionStateChanged(int); + method @Deprecated public void onDataConnectionStateChanged(int, int); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onDisplayInfoChanged(@NonNull android.telephony.TelephonyDisplayInfo); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onEmergencyNumberListChanged(@NonNull java.util.Map>); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onImsCallDisconnectCauseChanged(@NonNull android.telephony.ims.ImsReasonInfo); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onMessageWaitingIndicatorChanged(boolean); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseDataConnectionStateChanged(@NonNull android.telephony.PreciseDataConnectionState); + method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onRegistrationFailed(@NonNull android.telephony.CellIdentity, @NonNull String, int, int, int); + method @Deprecated public void onServiceStateChanged(android.telephony.ServiceState); + method @Deprecated public void onSignalStrengthChanged(int); + method @Deprecated public void onSignalStrengthsChanged(android.telephony.SignalStrength); + method @Deprecated public void onUserMobileDataStateChanged(boolean); + field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE = 4194304; // 0x400000 + field @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public static final int LISTEN_BARRING_INFO = -2147483648; // 0x80000000 + field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_CALL_DISCONNECT_CAUSES = 33554432; // 0x2000000 + field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int LISTEN_CALL_FORWARDING_INDICATOR = 8; // 0x8 + field @Deprecated public static final int LISTEN_CALL_STATE = 32; // 0x20 + field @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public static final int LISTEN_CELL_INFO = 1024; // 0x400 + field @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public static final int LISTEN_CELL_LOCATION = 16; // 0x10 + field @Deprecated public static final int LISTEN_DATA_ACTIVITY = 128; // 0x80 + field @Deprecated public static final int LISTEN_DATA_CONNECTION_STATE = 64; // 0x40 + field @Deprecated public static final int LISTEN_DISPLAY_INFO_CHANGED = 1048576; // 0x100000 + field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int LISTEN_EMERGENCY_NUMBER_LIST = 16777216; // 0x1000000 + field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_IMS_CALL_DISCONNECT_CAUSES = 134217728; // 0x8000000 + field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final int LISTEN_MESSAGE_WAITING_INDICATOR = 4; // 0x4 + field @Deprecated public static final int LISTEN_NONE = 0; // 0x0 + field @Deprecated @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public static final int LISTEN_PRECISE_DATA_CONNECTION_STATE = 4096; // 0x1000 + field @Deprecated @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public static final int LISTEN_REGISTRATION_FAILURE = 1073741824; // 0x40000000 + field @Deprecated public static final int LISTEN_SERVICE_STATE = 1; // 0x1 + field @Deprecated public static final int LISTEN_SIGNAL_STRENGTH = 2; // 0x2 + field @Deprecated public static final int LISTEN_SIGNAL_STRENGTHS = 256; // 0x100 + field @Deprecated public static final int LISTEN_USER_MOBILE_DATA_STATE = 524288; // 0x80000 + } + + public final class PhysicalChannelConfig implements android.os.Parcelable { + method public int describeContents(); + method @IntRange(from=1, to=261) public int getBand(); + method @IntRange(from=1) public int getCellBandwidthDownlinkKhz(); + method @IntRange(from=1) public int getCellBandwidthUplinkKhz(); + method public int getConnectionStatus(); + method @IntRange(from=0) public int getDownlinkChannelNumber(); + method @IntRange(from=0) public int getDownlinkFrequencyKhz(); + method public int getNetworkType(); + method @IntRange(from=0, to=1007) public int getPhysicalCellId(); + method @IntRange(from=0) public int getUplinkChannelNumber(); + method @IntRange(from=0) public int getUplinkFrequencyKhz(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int BAND_UNKNOWN = 0; // 0x0 + field public static final int CELL_BANDWIDTH_UNKNOWN = 0; // 0x0 + field public static final int CHANNEL_NUMBER_UNKNOWN = 2147483647; // 0x7fffffff + field @Deprecated public static final int CONNECTION_PRIMARY_SERVING = 1; // 0x1 + field @Deprecated public static final int CONNECTION_SECONDARY_SERVING = 2; // 0x2 + field @Deprecated public static final int CONNECTION_UNKNOWN = -1; // 0xffffffff + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FREQUENCY_UNKNOWN = -1; // 0xffffffff + field public static final int PHYSICAL_CELL_ID_MAXIMUM_VALUE = 1007; // 0x3ef + field public static final int PHYSICAL_CELL_ID_UNKNOWN = -1; // 0xffffffff + } + + public final class PreciseDataConnectionState implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.telephony.data.ApnSetting getApnSetting(); + method public int getId(); + method public int getLastCauseCode(); + method @Nullable public android.net.LinkProperties getLinkProperties(); + method public int getNetworkType(); + method @FlaggedApi("com.android.internal.telephony.flags.network_validation") public int getNetworkValidationStatus(); + method public int getState(); + method public int getTransportType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_FAILURE = 4; // 0x4 + field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_IN_PROGRESS = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_NOT_REQUESTED = 1; // 0x1 + field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_SUCCESS = 3; // 0x3 + field @FlaggedApi("com.android.internal.telephony.flags.network_validation") public static final int NETWORK_VALIDATION_UNSUPPORTED = 0; // 0x0 + } + + public final class RadioAccessSpecifier implements android.os.Parcelable { + ctor public RadioAccessSpecifier(int, int[], int[]); + method public int describeContents(); + method public int[] getBands(); + method public int[] getChannels(); + method public int getRadioAccessNetwork(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class ServiceState implements android.os.Parcelable { + ctor public ServiceState(); + ctor public ServiceState(android.telephony.ServiceState); + ctor @Deprecated public ServiceState(android.os.Parcel); + method protected void copyFrom(android.telephony.ServiceState); + method public int describeContents(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public int getCdmaNetworkId(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public int getCdmaSystemId(); + method public int[] getCellBandwidths(); + method public int getChannelNumber(); + method public int getDuplexMode(); + method public boolean getIsManualSelection(); + method @NonNull public java.util.List getNetworkRegistrationInfoList(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorAlphaLong(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorAlphaShort(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorNumeric(); + method public boolean getRoaming(); + method public int getState(); + method public boolean isSearching(); + method @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public boolean isUsingNonTerrestrialNetwork(); + method public void setIsManualSelection(boolean); + method public void setOperatorName(String, String, String); + method public void setRoaming(boolean); + method public void setState(int); + method public void setStateOff(); + method public void setStateOutOfService(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DUPLEX_MODE_FDD = 1; // 0x1 + field public static final int DUPLEX_MODE_TDD = 2; // 0x2 + field public static final int DUPLEX_MODE_UNKNOWN = 0; // 0x0 + field public static final int STATE_EMERGENCY_ONLY = 2; // 0x2 + field public static final int STATE_IN_SERVICE = 0; // 0x0 + field public static final int STATE_OUT_OF_SERVICE = 1; // 0x1 + field public static final int STATE_POWER_OFF = 3; // 0x3 + field public static final int UNKNOWN_ID = -1; // 0xffffffff + } + + public class SignalStrength implements android.os.Parcelable { + ctor public SignalStrength(@NonNull android.telephony.SignalStrength); + method public int describeContents(); + method @Deprecated public int getCdmaDbm(); + method @Deprecated public int getCdmaEcio(); + method @NonNull public java.util.List getCellSignalStrengths(); + method @NonNull public java.util.List getCellSignalStrengths(@NonNull Class); + method @Deprecated public int getEvdoDbm(); + method @Deprecated public int getEvdoEcio(); + method @Deprecated public int getEvdoSnr(); + method @Deprecated public int getGsmBitErrorRate(); + method @Deprecated public int getGsmSignalStrength(); + method public int getLevel(); + method public long getTimestampMillis(); + method @Deprecated public boolean isGsm(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int INVALID = 2147483647; // 0x7fffffff + } + + public final class SignalStrengthUpdateRequest implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.Collection getSignalThresholdInfos(); + method public boolean isReportingRequestedWhileIdle(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class SignalStrengthUpdateRequest.Builder { + ctor public SignalStrengthUpdateRequest.Builder(); + method @NonNull public android.telephony.SignalStrengthUpdateRequest build(); + method @NonNull public android.telephony.SignalStrengthUpdateRequest.Builder setReportingRequestedWhileIdle(boolean); + method @NonNull public android.telephony.SignalStrengthUpdateRequest.Builder setSignalThresholdInfos(@NonNull java.util.Collection); + } + + public final class SignalThresholdInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getHysteresisDb(); + method public static int getMaximumNumberOfThresholdsAllowed(); + method public static int getMinimumNumberOfThresholdsAllowed(); + method public int getRadioAccessNetworkType(); + method public int getSignalMeasurementType(); + method @NonNull public int[] getThresholds(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SIGNAL_MEASUREMENT_TYPE_ECNO = 9; // 0x9 + field public static final int SIGNAL_MEASUREMENT_TYPE_RSCP = 2; // 0x2 + field public static final int SIGNAL_MEASUREMENT_TYPE_RSRP = 3; // 0x3 + field public static final int SIGNAL_MEASUREMENT_TYPE_RSRQ = 4; // 0x4 + field public static final int SIGNAL_MEASUREMENT_TYPE_RSSI = 1; // 0x1 + field public static final int SIGNAL_MEASUREMENT_TYPE_RSSNR = 5; // 0x5 + field public static final int SIGNAL_MEASUREMENT_TYPE_SSRSRP = 6; // 0x6 + field public static final int SIGNAL_MEASUREMENT_TYPE_SSRSRQ = 7; // 0x7 + field public static final int SIGNAL_MEASUREMENT_TYPE_SSSINR = 8; // 0x8 + field public static final int SIGNAL_MEASUREMENT_TYPE_UNKNOWN = 0; // 0x0 + } + + public static final class SignalThresholdInfo.Builder { + ctor public SignalThresholdInfo.Builder(); + method @NonNull public android.telephony.SignalThresholdInfo build(); + method @NonNull public android.telephony.SignalThresholdInfo.Builder setHysteresisDb(@IntRange(from=0) int); + method @NonNull public android.telephony.SignalThresholdInfo.Builder setRadioAccessNetworkType(int); + method @NonNull public android.telephony.SignalThresholdInfo.Builder setSignalMeasurementType(int); + method @NonNull public android.telephony.SignalThresholdInfo.Builder setThresholds(@NonNull int[]); + } + + public final class SmsManager { + method public String createAppSpecificSmsToken(android.app.PendingIntent); + method @Nullable public String createAppSpecificSmsTokenWithPackageInfo(@Nullable String, @NonNull android.app.PendingIntent); + method @NonNull public android.telephony.SmsManager createForSubscriptionId(int); + method public java.util.ArrayList divideMessage(String); + method public void downloadMultimediaMessage(android.content.Context, String, android.net.Uri, android.os.Bundle, android.app.PendingIntent); + method public void downloadMultimediaMessage(@NonNull android.content.Context, @NonNull String, @NonNull android.net.Uri, @Nullable android.os.Bundle, @Nullable android.app.PendingIntent, long); + method @NonNull public android.os.Bundle getCarrierConfigValues(); + method @Deprecated public static android.telephony.SmsManager getDefault(); + method public static int getDefaultSmsSubscriptionId(); + method @IntRange(from=0) @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public int getSmsCapacityOnIcc(); + method @Deprecated public static android.telephony.SmsManager getSmsManagerForSubscriptionId(int); + method @RequiresPermission(android.Manifest.permission.SMS_FINANCIAL_TRANSACTIONS) public void getSmsMessagesForFinancialApp(android.os.Bundle, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.SmsManager.FinancialSmsCallback); + method @Nullable @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getSmscAddress(); + method public int getSubscriptionId(); + method public void injectSmsPdu(byte[], String, android.app.PendingIntent); + method public void sendDataMessage(String, String, short, byte[], android.app.PendingIntent, android.app.PendingIntent); + method public void sendMultimediaMessage(android.content.Context, android.net.Uri, String, android.os.Bundle, android.app.PendingIntent); + method public void sendMultimediaMessage(@NonNull android.content.Context, @NonNull android.net.Uri, @Nullable String, @Nullable android.os.Bundle, @Nullable android.app.PendingIntent, long); + method public void sendMultipartTextMessage(String, String, java.util.ArrayList, java.util.ArrayList, java.util.ArrayList); + method public void sendMultipartTextMessage(@NonNull String, @Nullable String, @NonNull java.util.List, @Nullable java.util.List, @Nullable java.util.List, long); + method public void sendMultipartTextMessage(@NonNull String, @Nullable String, @NonNull java.util.List, @Nullable java.util.List, @Nullable java.util.List, @NonNull String, @Nullable String); + method public void sendTextMessage(String, String, String, android.app.PendingIntent, android.app.PendingIntent); + method public void sendTextMessage(@NonNull String, @Nullable String, @NonNull String, @Nullable android.app.PendingIntent, @Nullable android.app.PendingIntent, long); + method @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.SEND_SMS}) public void sendTextMessageWithoutPersisting(String, String, String, android.app.PendingIntent, android.app.PendingIntent); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSmscAddress(@NonNull String); + field public static final String EXTRA_MMS_DATA = "android.telephony.extra.MMS_DATA"; + field public static final String EXTRA_MMS_HTTP_STATUS = "android.telephony.extra.MMS_HTTP_STATUS"; + field public static final String MMS_CONFIG_ALIAS_ENABLED = "aliasEnabled"; + field public static final String MMS_CONFIG_ALIAS_MAX_CHARS = "aliasMaxChars"; + field public static final String MMS_CONFIG_ALIAS_MIN_CHARS = "aliasMinChars"; + field public static final String MMS_CONFIG_ALLOW_ATTACH_AUDIO = "allowAttachAudio"; + field public static final String MMS_CONFIG_APPEND_TRANSACTION_ID = "enabledTransID"; + field public static final String MMS_CONFIG_EMAIL_GATEWAY_NUMBER = "emailGatewayNumber"; + field public static final String MMS_CONFIG_GROUP_MMS_ENABLED = "enableGroupMms"; + field public static final String MMS_CONFIG_HTTP_PARAMS = "httpParams"; + field public static final String MMS_CONFIG_HTTP_SOCKET_TIMEOUT = "httpSocketTimeout"; + field public static final String MMS_CONFIG_MAX_IMAGE_HEIGHT = "maxImageHeight"; + field public static final String MMS_CONFIG_MAX_IMAGE_WIDTH = "maxImageWidth"; + field public static final String MMS_CONFIG_MAX_MESSAGE_SIZE = "maxMessageSize"; + field public static final String MMS_CONFIG_MESSAGE_TEXT_MAX_SIZE = "maxMessageTextSize"; + field public static final String MMS_CONFIG_MMS_DELIVERY_REPORT_ENABLED = "enableMMSDeliveryReports"; + field public static final String MMS_CONFIG_MMS_ENABLED = "enabledMMS"; + field public static final String MMS_CONFIG_MMS_READ_REPORT_ENABLED = "enableMMSReadReports"; + field public static final String MMS_CONFIG_MULTIPART_SMS_ENABLED = "enableMultipartSMS"; + field public static final String MMS_CONFIG_NAI_SUFFIX = "naiSuffix"; + field public static final String MMS_CONFIG_NOTIFY_WAP_MMSC_ENABLED = "enabledNotifyWapMMSC"; + field public static final String MMS_CONFIG_RECIPIENT_LIMIT = "recipientLimit"; + field public static final String MMS_CONFIG_SEND_MULTIPART_SMS_AS_SEPARATE_MESSAGES = "sendMultipartSmsAsSeparateMessages"; + field public static final String MMS_CONFIG_SHOW_CELL_BROADCAST_APP_LINKS = "config_cellBroadcastAppLinks"; + field public static final String MMS_CONFIG_SMS_DELIVERY_REPORT_ENABLED = "enableSMSDeliveryReports"; + field public static final String MMS_CONFIG_SMS_TO_MMS_TEXT_LENGTH_THRESHOLD = "smsToMmsTextLengthThreshold"; + field public static final String MMS_CONFIG_SMS_TO_MMS_TEXT_THRESHOLD = "smsToMmsTextThreshold"; + field public static final String MMS_CONFIG_SUBJECT_MAX_LENGTH = "maxSubjectLength"; + field public static final String MMS_CONFIG_SUPPORT_HTTP_CHARSET_HEADER = "supportHttpCharsetHeader"; + field public static final String MMS_CONFIG_SUPPORT_MMS_CONTENT_DISPOSITION = "supportMmsContentDisposition"; + field public static final String MMS_CONFIG_UA_PROF_TAG_NAME = "uaProfTagName"; + field public static final String MMS_CONFIG_UA_PROF_URL = "uaProfUrl"; + field public static final String MMS_CONFIG_USER_AGENT = "userAgent"; + field public static final int MMS_ERROR_CONFIGURATION_ERROR = 7; // 0x7 + field public static final int MMS_ERROR_DATA_DISABLED = 11; // 0xb + field public static final int MMS_ERROR_HTTP_FAILURE = 4; // 0x4 + field public static final int MMS_ERROR_INACTIVE_SUBSCRIPTION = 10; // 0xa + field public static final int MMS_ERROR_INVALID_APN = 2; // 0x2 + field public static final int MMS_ERROR_INVALID_SUBSCRIPTION_ID = 9; // 0x9 + field public static final int MMS_ERROR_IO_ERROR = 5; // 0x5 + field @FlaggedApi("com.android.internal.telephony.flags.mms_disabled_error") public static final int MMS_ERROR_MMS_DISABLED_BY_CARRIER = 12; // 0xc + field public static final int MMS_ERROR_NO_DATA_NETWORK = 8; // 0x8 + field public static final int MMS_ERROR_RETRY = 6; // 0x6 + field public static final int MMS_ERROR_UNABLE_CONNECT_MMS = 3; // 0x3 + field public static final int MMS_ERROR_UNSPECIFIED = 1; // 0x1 + field public static final int RESULT_BLUETOOTH_DISCONNECTED = 27; // 0x1b + field public static final int RESULT_CANCELLED = 23; // 0x17 + field public static final int RESULT_ENCODING_ERROR = 18; // 0x12 + field public static final int RESULT_ERROR_FDN_CHECK_FAILURE = 6; // 0x6 + field public static final int RESULT_ERROR_GENERIC_FAILURE = 1; // 0x1 + field public static final int RESULT_ERROR_LIMIT_EXCEEDED = 5; // 0x5 + field public static final int RESULT_ERROR_NONE = 0; // 0x0 + field public static final int RESULT_ERROR_NO_SERVICE = 4; // 0x4 + field public static final int RESULT_ERROR_NULL_PDU = 3; // 0x3 + field public static final int RESULT_ERROR_RADIO_OFF = 2; // 0x2 + field public static final int RESULT_ERROR_SHORT_CODE_NEVER_ALLOWED = 8; // 0x8 + field public static final int RESULT_ERROR_SHORT_CODE_NOT_ALLOWED = 7; // 0x7 + field public static final int RESULT_INTERNAL_ERROR = 21; // 0x15 + field public static final int RESULT_INVALID_ARGUMENTS = 11; // 0xb + field public static final int RESULT_INVALID_BLUETOOTH_ADDRESS = 26; // 0x1a + field public static final int RESULT_INVALID_SMSC_ADDRESS = 19; // 0x13 + field public static final int RESULT_INVALID_SMS_FORMAT = 14; // 0xe + field public static final int RESULT_INVALID_STATE = 12; // 0xc + field public static final int RESULT_MODEM_ERROR = 16; // 0x10 + field public static final int RESULT_NETWORK_ERROR = 17; // 0x11 + field public static final int RESULT_NETWORK_REJECT = 10; // 0xa + field public static final int RESULT_NO_BLUETOOTH_SERVICE = 25; // 0x19 + field public static final int RESULT_NO_DEFAULT_SMS_APP = 32; // 0x20 + field public static final int RESULT_NO_MEMORY = 13; // 0xd + field public static final int RESULT_NO_RESOURCES = 22; // 0x16 + field public static final int RESULT_OPERATION_NOT_ALLOWED = 20; // 0x14 + field public static final int RESULT_RADIO_NOT_AVAILABLE = 9; // 0x9 + field public static final int RESULT_RECEIVE_DISPATCH_FAILURE = 500; // 0x1f4 + field public static final int RESULT_RECEIVE_INJECTED_NULL_PDU = 501; // 0x1f5 + field public static final int RESULT_RECEIVE_NULL_MESSAGE_FROM_RIL = 503; // 0x1f7 + field public static final int RESULT_RECEIVE_RUNTIME_EXCEPTION = 502; // 0x1f6 + field public static final int RESULT_RECEIVE_SQL_EXCEPTION = 505; // 0x1f9 + field public static final int RESULT_RECEIVE_URI_EXCEPTION = 506; // 0x1fa + field public static final int RESULT_RECEIVE_WHILE_ENCRYPTED = 504; // 0x1f8 + field public static final int RESULT_REMOTE_EXCEPTION = 31; // 0x1f + field public static final int RESULT_REQUEST_NOT_SUPPORTED = 24; // 0x18 + field public static final int RESULT_RIL_ABORTED = 137; // 0x89 + field public static final int RESULT_RIL_ACCESS_BARRED = 122; // 0x7a + field public static final int RESULT_RIL_BLOCKED_DUE_TO_CALL = 123; // 0x7b + field public static final int RESULT_RIL_CANCELLED = 119; // 0x77 + field public static final int RESULT_RIL_DEVICE_IN_USE = 136; // 0x88 + field public static final int RESULT_RIL_ENCODING_ERR = 109; // 0x6d + field public static final int RESULT_RIL_GENERIC_ERROR = 124; // 0x7c + field public static final int RESULT_RIL_INTERNAL_ERR = 113; // 0x71 + field public static final int RESULT_RIL_INVALID_ARGUMENTS = 104; // 0x68 + field public static final int RESULT_RIL_INVALID_MODEM_STATE = 115; // 0x73 + field public static final int RESULT_RIL_INVALID_RESPONSE = 125; // 0x7d + field public static final int RESULT_RIL_INVALID_SIM_STATE = 130; // 0x82 + field public static final int RESULT_RIL_INVALID_SMSC_ADDRESS = 110; // 0x6e + field public static final int RESULT_RIL_INVALID_SMS_FORMAT = 107; // 0x6b + field public static final int RESULT_RIL_INVALID_STATE = 103; // 0x67 + field public static final int RESULT_RIL_MODEM_ERR = 111; // 0x6f + field public static final int RESULT_RIL_NETWORK_ERR = 112; // 0x70 + field public static final int RESULT_RIL_NETWORK_NOT_READY = 116; // 0x74 + field public static final int RESULT_RIL_NETWORK_REJECT = 102; // 0x66 + field public static final int RESULT_RIL_NO_MEMORY = 105; // 0x69 + field public static final int RESULT_RIL_NO_NETWORK_FOUND = 135; // 0x87 + field public static final int RESULT_RIL_NO_RESOURCES = 118; // 0x76 + field public static final int RESULT_RIL_NO_SMS_TO_ACK = 131; // 0x83 + field public static final int RESULT_RIL_NO_SUBSCRIPTION = 134; // 0x86 + field public static final int RESULT_RIL_OPERATION_NOT_ALLOWED = 117; // 0x75 + field public static final int RESULT_RIL_RADIO_NOT_AVAILABLE = 100; // 0x64 + field public static final int RESULT_RIL_REQUEST_NOT_SUPPORTED = 114; // 0x72 + field public static final int RESULT_RIL_REQUEST_RATE_LIMITED = 106; // 0x6a + field public static final int RESULT_RIL_SIMULTANEOUS_SMS_AND_CALL_NOT_ALLOWED = 121; // 0x79 + field public static final int RESULT_RIL_SIM_ABSENT = 120; // 0x78 + field public static final int RESULT_RIL_SIM_BUSY = 132; // 0x84 + field public static final int RESULT_RIL_SIM_ERROR = 129; // 0x81 + field public static final int RESULT_RIL_SIM_FULL = 133; // 0x85 + field public static final int RESULT_RIL_SIM_PIN2 = 126; // 0x7e + field public static final int RESULT_RIL_SIM_PUK2 = 127; // 0x7f + field public static final int RESULT_RIL_SMS_SEND_FAIL_RETRY = 101; // 0x65 + field public static final int RESULT_RIL_SUBSCRIPTION_NOT_AVAILABLE = 128; // 0x80 + field public static final int RESULT_RIL_SYSTEM_ERR = 108; // 0x6c + field public static final int RESULT_SMS_BLOCKED_DURING_EMERGENCY = 29; // 0x1d + field public static final int RESULT_SMS_SEND_RETRY_FAILED = 30; // 0x1e + field public static final int RESULT_SYSTEM_ERROR = 15; // 0xf + field public static final int RESULT_UNEXPECTED_EVENT_STOP_SENDING = 28; // 0x1c + field public static final int RESULT_USER_NOT_ALLOWED = 33; // 0x21 + field public static final int SMS_RP_CAUSE_CALL_BARRING = 10; // 0xa + field public static final int SMS_RP_CAUSE_CONGESTION = 42; // 0x2a + field public static final int SMS_RP_CAUSE_DESTINATION_OUT_OF_ORDER = 27; // 0x1b + field public static final int SMS_RP_CAUSE_FACILITY_NOT_IMPLEMENTED = 69; // 0x45 + field public static final int SMS_RP_CAUSE_FACILITY_NOT_SUBSCRIBED = 50; // 0x32 + field public static final int SMS_RP_CAUSE_FACILITY_REJECTED = 29; // 0x1d + field public static final int SMS_RP_CAUSE_INFORMATION_ELEMENT_NON_EXISTENT = 99; // 0x63 + field public static final int SMS_RP_CAUSE_INTERWORKING_UNSPECIFIED = 127; // 0x7f + field public static final int SMS_RP_CAUSE_INVALID_MANDATORY_INFORMATION = 96; // 0x60 + field public static final int SMS_RP_CAUSE_INVALID_MESSAGE_REFERENCE_VALUE = 81; // 0x51 + field public static final int SMS_RP_CAUSE_MESSAGE_INCOMPATIBLE_WITH_PROTOCOL_STATE = 98; // 0x62 + field public static final int SMS_RP_CAUSE_MESSAGE_TYPE_NON_EXISTENT = 97; // 0x61 + field public static final int SMS_RP_CAUSE_NETWORK_OUT_OF_ORDER = 38; // 0x26 + field public static final int SMS_RP_CAUSE_OPERATOR_DETERMINED_BARRING = 8; // 0x8 + field public static final int SMS_RP_CAUSE_PROTOCOL_ERROR = 111; // 0x6f + field public static final int SMS_RP_CAUSE_RESERVED = 11; // 0xb + field public static final int SMS_RP_CAUSE_RESOURCES_UNAVAILABLE = 47; // 0x2f + field public static final int SMS_RP_CAUSE_SEMANTICALLY_INCORRECT_MESSAGE = 95; // 0x5f + field public static final int SMS_RP_CAUSE_SHORT_MESSAGE_TRANSFER_REJECTED = 21; // 0x15 + field public static final int SMS_RP_CAUSE_TEMPORARY_FAILURE = 41; // 0x29 + field public static final int SMS_RP_CAUSE_UNALLOCATED_NUMBER = 1; // 0x1 + field public static final int SMS_RP_CAUSE_UNIDENTIFIED_SUBSCRIBER = 28; // 0x1c + field public static final int SMS_RP_CAUSE_UNKNOWN_SUBSCRIBER = 30; // 0x1e + field public static final int STATUS_ON_ICC_FREE = 0; // 0x0 + field public static final int STATUS_ON_ICC_READ = 1; // 0x1 + field public static final int STATUS_ON_ICC_SENT = 5; // 0x5 + field public static final int STATUS_ON_ICC_UNREAD = 3; // 0x3 + field public static final int STATUS_ON_ICC_UNSENT = 7; // 0x7 + } + + public abstract static class SmsManager.FinancialSmsCallback { + ctor public SmsManager.FinancialSmsCallback(); + method public abstract void onFinancialSmsMessages(android.database.CursorWindow); + } + + public class SmsMessage { + method public static int[] calculateLength(CharSequence, boolean); + method public static int[] calculateLength(String, boolean); + method @Deprecated public static android.telephony.SmsMessage createFromPdu(byte[]); + method public static android.telephony.SmsMessage createFromPdu(byte[], String); + method public String getDisplayMessageBody(); + method public String getDisplayOriginatingAddress(); + method public String getEmailBody(); + method public String getEmailFrom(); + method public int getIndexOnIcc(); + method @Deprecated public int getIndexOnSim(); + method public String getMessageBody(); + method public android.telephony.SmsMessage.MessageClass getMessageClass(); + method @Nullable public String getOriginatingAddress(); + method public byte[] getPdu(); + method public int getProtocolIdentifier(); + method public String getPseudoSubject(); + method @FlaggedApi("com.android.internal.telephony.flags.support_sms_over_ims_apis") @Nullable public String getRecipientAddress(); + method public String getServiceCenterAddress(); + method public int getStatus(); + method public int getStatusOnIcc(); + method @Deprecated public int getStatusOnSim(); + method public static android.telephony.SmsMessage.SubmitPdu getSubmitPdu(String, String, String, boolean); + method public static android.telephony.SmsMessage.SubmitPdu getSubmitPdu(String, String, short, byte[], boolean); + method public static int getTPLayerLengthForPDU(String); + method public long getTimestampMillis(); + method public byte[] getUserData(); + method public boolean isCphsMwiMessage(); + method public boolean isEmail(); + method public boolean isMWIClearMessage(); + method public boolean isMWISetMessage(); + method public boolean isMwiDontStore(); + method public boolean isReplace(); + method public boolean isReplyPathPresent(); + method public boolean isStatusReportMessage(); + field public static final int ENCODING_16BIT = 3; // 0x3 + field public static final int ENCODING_7BIT = 1; // 0x1 + field public static final int ENCODING_8BIT = 2; // 0x2 + field public static final int ENCODING_KSC5601 = 4; // 0x4 + field public static final int ENCODING_UNKNOWN = 0; // 0x0 + field public static final String FORMAT_3GPP = "3gpp"; + field public static final String FORMAT_3GPP2 = "3gpp2"; + field public static final int MAX_USER_DATA_BYTES = 140; // 0x8c + field public static final int MAX_USER_DATA_BYTES_WITH_HEADER = 134; // 0x86 + field public static final int MAX_USER_DATA_SEPTETS = 160; // 0xa0 + field public static final int MAX_USER_DATA_SEPTETS_WITH_HEADER = 153; // 0x99 + } + + public enum SmsMessage.MessageClass { + enum_constant public static final android.telephony.SmsMessage.MessageClass CLASS_0; + enum_constant public static final android.telephony.SmsMessage.MessageClass CLASS_1; + enum_constant public static final android.telephony.SmsMessage.MessageClass CLASS_2; + enum_constant public static final android.telephony.SmsMessage.MessageClass CLASS_3; + enum_constant public static final android.telephony.SmsMessage.MessageClass UNKNOWN; + } + + public static class SmsMessage.SubmitPdu { + field public byte[] encodedMessage; + field public byte[] encodedScAddress; + } + + public class SubscriptionInfo implements android.os.Parcelable { + method public android.graphics.Bitmap createIconBitmap(android.content.Context); + method public int describeContents(); + method public int getCardId(); + method public int getCarrierId(); + method public CharSequence getCarrierName(); + method public String getCountryIso(); + method public int getDataRoaming(); + method public CharSequence getDisplayName(); + method @Nullable public android.os.ParcelUuid getGroupUuid(); + method public String getIccId(); + method public int getIconTint(); + method @Deprecated public int getMcc(); + method @Nullable public String getMccString(); + method @Deprecated public int getMnc(); + method @Nullable public String getMncString(); + method @Deprecated public String getNumber(); + method public int getPortIndex(); + method @NonNull public java.util.Set getServiceCapabilities(); + method public int getSimSlotIndex(); + method public int getSubscriptionId(); + method public int getSubscriptionType(); + method public int getUsageSetting(); + method public boolean isEmbedded(); + method @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public boolean isOnlyNonTerrestrialNetwork(); + method public boolean isOpportunistic(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class SubscriptionManager { + method public void addOnOpportunisticSubscriptionsChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener); + method @Deprecated public void addOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener); + method public void addOnSubscriptionsChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.SubscriptionManager.OnSubscriptionsChangedListener); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void addSubscriptionsIntoGroup(@NonNull java.util.List, @NonNull android.os.ParcelUuid); + method public boolean canManageSubscription(android.telephony.SubscriptionInfo); + method @FlaggedApi("com.android.internal.telephony.flags.enforce_subscription_user_filter") @NonNull @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_PROFILES) public android.telephony.SubscriptionManager createForAllUserProfiles(); + method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public android.os.ParcelUuid createSubscriptionGroup(@NonNull java.util.List); + method @Deprecated public static android.telephony.SubscriptionManager from(android.content.Context); + method @Nullable public java.util.List getAccessibleSubscriptionInfoList(); + method public static int getActiveDataSubscriptionId(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfo(int); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getActiveSubscriptionInfoCount(); + method public int getActiveSubscriptionInfoCountMax(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfoForSimSlotIndex(int); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getActiveSubscriptionInfoList(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public java.util.List getAllSubscriptionInfoList(); + method @NonNull public java.util.List getCompleteActiveSubscriptionInfoList(); + method public static int getDefaultDataSubscriptionId(); + method public static int getDefaultSmsSubscriptionId(); + method public static int getDefaultSubscriptionId(); + method public static int getDefaultVoiceSubscriptionId(); + method @NonNull public java.util.List getDeviceToDeviceStatusSharingContacts(int); + method public int getDeviceToDeviceStatusSharingPreference(int); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getOpportunisticSubscriptions(); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_NUMBERS, "android.permission.READ_PRIVILEGED_PHONE_STATE", "carrier privileges"}) public String getPhoneNumber(int, int); + method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_NUMBERS, "android.permission.READ_PRIVILEGED_PHONE_STATE", "carrier privileges"}) public String getPhoneNumber(int); + method public static int getSlotIndex(int); + method public static int getSubscriptionId(int); + method @Deprecated @Nullable public int[] getSubscriptionIds(int); + method @NonNull public java.util.List getSubscriptionPlans(int); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getSubscriptionsInGroup(@NonNull android.os.ParcelUuid); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isActiveSubscriptionId(int); + method public boolean isNetworkRoaming(int); + method @FlaggedApi("com.android.internal.telephony.flags.subscription_user_association_query") @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isSubscriptionAssociatedWithUser(int); + method public static boolean isUsableSubscriptionId(int); + method public static boolean isValidSubscriptionId(int); + method public void removeOnOpportunisticSubscriptionsChangedListener(@NonNull android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener); + method public void removeOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void removeSubscriptionsFromGroup(@NonNull java.util.List, @NonNull android.os.ParcelUuid); + method @RequiresPermission("carrier privileges") public void setCarrierPhoneNumber(int, @NonNull String); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDeviceToDeviceStatusSharingContacts(int, @NonNull java.util.List); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDeviceToDeviceStatusSharingPreference(int, int); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setOpportunistic(boolean, int); + method public void setSubscriptionOverrideCongested(int, boolean, long); + method public void setSubscriptionOverrideCongested(int, boolean, @NonNull int[], long); + method public void setSubscriptionOverrideUnmetered(int, boolean, long); + method public void setSubscriptionOverrideUnmetered(int, boolean, @NonNull int[], long); + method @Deprecated public void setSubscriptionPlans(int, @NonNull java.util.List); + method public void setSubscriptionPlans(int, @NonNull java.util.List, long); + method @Deprecated @RequiresPermission("android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS") public void switchToSubscription(int, @NonNull android.app.PendingIntent); + field public static final String ACTION_DEFAULT_SMS_SUBSCRIPTION_CHANGED = "android.telephony.action.DEFAULT_SMS_SUBSCRIPTION_CHANGED"; + field public static final String ACTION_DEFAULT_SUBSCRIPTION_CHANGED = "android.telephony.action.DEFAULT_SUBSCRIPTION_CHANGED"; + field public static final String ACTION_MANAGE_SUBSCRIPTION_PLANS = "android.telephony.action.MANAGE_SUBSCRIPTION_PLANS"; + field public static final String ACTION_REFRESH_SUBSCRIPTION_PLANS = "android.telephony.action.REFRESH_SUBSCRIPTION_PLANS"; + field public static final int D2D_SHARING_ALL = 3; // 0x3 + field public static final int D2D_SHARING_ALL_CONTACTS = 1; // 0x1 + field public static final int D2D_SHARING_DISABLED = 0; // 0x0 + field public static final int D2D_SHARING_SELECTED_CONTACTS = 2; // 0x2 + field public static final String D2D_STATUS_SHARING = "d2d_sharing_status"; + field public static final String D2D_STATUS_SHARING_SELECTED_CONTACTS = "d2d_sharing_contacts"; + field public static final int DATA_ROAMING_DISABLE = 0; // 0x0 + field public static final int DATA_ROAMING_ENABLE = 1; // 0x1 + field public static final int DEFAULT_SUBSCRIPTION_ID = 2147483647; // 0x7fffffff + field public static final String EXTRA_SLOT_INDEX = "android.telephony.extra.SLOT_INDEX"; + field public static final String EXTRA_SUBSCRIPTION_INDEX = "android.telephony.extra.SUBSCRIPTION_INDEX"; + field public static final int INVALID_SIM_SLOT_INDEX = -1; // 0xffffffff + field public static final int INVALID_SUBSCRIPTION_ID = -1; // 0xffffffff + field public static final int PHONE_NUMBER_SOURCE_CARRIER = 2; // 0x2 + field public static final int PHONE_NUMBER_SOURCE_IMS = 3; // 0x3 + field public static final int PHONE_NUMBER_SOURCE_UICC = 1; // 0x1 + field public static final int SERVICE_CAPABILITY_DATA = 3; // 0x3 + field public static final int SERVICE_CAPABILITY_SMS = 2; // 0x2 + field public static final int SERVICE_CAPABILITY_VOICE = 1; // 0x1 + field public static final int SUBSCRIPTION_TYPE_LOCAL_SIM = 0; // 0x0 + field public static final int SUBSCRIPTION_TYPE_REMOTE_SIM = 1; // 0x1 + field public static final int USAGE_SETTING_DATA_CENTRIC = 2; // 0x2 + field public static final int USAGE_SETTING_DEFAULT = 0; // 0x0 + field public static final int USAGE_SETTING_UNKNOWN = -1; // 0xffffffff + field public static final int USAGE_SETTING_VOICE_CENTRIC = 1; // 0x1 + } + + public static class SubscriptionManager.OnOpportunisticSubscriptionsChangedListener { + ctor public SubscriptionManager.OnOpportunisticSubscriptionsChangedListener(); + method public void onOpportunisticSubscriptionsChanged(); + } + + public static class SubscriptionManager.OnSubscriptionsChangedListener { + ctor public SubscriptionManager.OnSubscriptionsChangedListener(); + method public void onSubscriptionsChanged(); + } + + public final class SubscriptionPlan implements android.os.Parcelable { + method public java.util.Iterator> cycleIterator(); + method public int describeContents(); + method public int getDataLimitBehavior(); + method public long getDataLimitBytes(); + method public long getDataUsageBytes(); + method public long getDataUsageTime(); + method @NonNull public int[] getNetworkTypes(); + method @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") @Nullable public java.time.ZonedDateTime getPlanEndDate(); + method @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public int getSubscriptionStatus(); + method @Nullable public CharSequence getSummary(); + method @Nullable public CharSequence getTitle(); + method public void writeToParcel(android.os.Parcel, int); + field public static final long BYTES_UNKNOWN = -1L; // 0xffffffffffffffffL + field public static final long BYTES_UNLIMITED = 9223372036854775807L; // 0x7fffffffffffffffL + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int LIMIT_BEHAVIOR_BILLED = 1; // 0x1 + field public static final int LIMIT_BEHAVIOR_DISABLED = 0; // 0x0 + field public static final int LIMIT_BEHAVIOR_THROTTLED = 2; // 0x2 + field public static final int LIMIT_BEHAVIOR_UNKNOWN = -1; // 0xffffffff + field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_ACTIVE = 1; // 0x1 + field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_INACTIVE = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_SUSPENDED = 4; // 0x4 + field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_TRIAL = 3; // 0x3 + field @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") public static final int SUBSCRIPTION_STATUS_UNKNOWN = 0; // 0x0 + field public static final long TIME_UNKNOWN = -1L; // 0xffffffffffffffffL + } + + public static class SubscriptionPlan.Builder { + method public android.telephony.SubscriptionPlan build(); + method public static android.telephony.SubscriptionPlan.Builder createNonrecurring(java.time.ZonedDateTime, java.time.ZonedDateTime); + method public static android.telephony.SubscriptionPlan.Builder createRecurring(java.time.ZonedDateTime, java.time.Period); + method @NonNull public android.telephony.SubscriptionPlan.Builder resetNetworkTypes(); + method public android.telephony.SubscriptionPlan.Builder setDataLimit(long, int); + method public android.telephony.SubscriptionPlan.Builder setDataUsage(long, long); + method @NonNull public android.telephony.SubscriptionPlan.Builder setNetworkTypes(@NonNull int[]); + method @FlaggedApi("com.android.internal.telephony.flags.subscription_plan_allow_status_and_end_date") @NonNull public android.telephony.SubscriptionPlan.Builder setSubscriptionStatus(int); + method public android.telephony.SubscriptionPlan.Builder setSummary(@Nullable CharSequence); + method public android.telephony.SubscriptionPlan.Builder setTitle(@Nullable CharSequence); + } + + public class TelephonyCallback { + ctor public TelephonyCallback(); + } + + public static interface TelephonyCallback.ActiveDataSubscriptionIdListener { + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onActiveDataSubscriptionIdChanged(int); + } + + public static interface TelephonyCallback.BarringInfoListener { + method @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onBarringInfoChanged(@NonNull android.telephony.BarringInfo); + } + + public static interface TelephonyCallback.CallDisconnectCauseListener { + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onCallDisconnectCauseChanged(int, int); + } + + public static interface TelephonyCallback.CallForwardingIndicatorListener { + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onCallForwardingIndicatorChanged(boolean); + } + + public static interface TelephonyCallback.CallStateListener { + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onCallStateChanged(int); + } + + public static interface TelephonyCallback.CarrierNetworkListener { + method public void onCarrierNetworkChange(boolean); + } + + public static interface TelephonyCallback.CellInfoListener { + method @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onCellInfoChanged(@NonNull java.util.List); + } + + public static interface TelephonyCallback.CellLocationListener { + method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void onCellLocationChanged(@NonNull android.telephony.CellLocation); + } + + public static interface TelephonyCallback.DataActivationStateListener { + method public void onDataActivationStateChanged(int); + } + + public static interface TelephonyCallback.DataActivityListener { + method public void onDataActivity(int); + } + + public static interface TelephonyCallback.DataConnectionStateListener { + method public void onDataConnectionStateChanged(int, int); + } + + public static interface TelephonyCallback.DisplayInfoListener { + method public void onDisplayInfoChanged(@NonNull android.telephony.TelephonyDisplayInfo); + } + + public static interface TelephonyCallback.EmergencyNumberListListener { + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onEmergencyNumberListChanged(@NonNull java.util.Map>); + } + + public static interface TelephonyCallback.ImsCallDisconnectCauseListener { + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onImsCallDisconnectCauseChanged(@NonNull android.telephony.ims.ImsReasonInfo); + } + + public static interface TelephonyCallback.MessageWaitingIndicatorListener { + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public void onMessageWaitingIndicatorChanged(boolean); + } + + public static interface TelephonyCallback.PhysicalChannelConfigListener { + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPhysicalChannelConfigChanged(@NonNull java.util.List); + } + + public static interface TelephonyCallback.PreciseDataConnectionStateListener { + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void onPreciseDataConnectionStateChanged(@NonNull android.telephony.PreciseDataConnectionState); + } + + public static interface TelephonyCallback.RegistrationFailedListener { + method @RequiresPermission(allOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void onRegistrationFailed(@NonNull android.telephony.CellIdentity, @NonNull String, int, int, int); + } + + public static interface TelephonyCallback.ServiceStateListener { + method public void onServiceStateChanged(@NonNull android.telephony.ServiceState); + } + + public static interface TelephonyCallback.SignalStrengthsListener { + method public void onSignalStrengthsChanged(@NonNull android.telephony.SignalStrength); + } + + public static interface TelephonyCallback.UserMobileDataStateListener { + method public void onUserMobileDataStateChanged(boolean); + } + + public final class TelephonyDisplayInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getNetworkType(); + method public int getOverrideNetworkType(); + method public boolean isRoaming(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int OVERRIDE_NETWORK_TYPE_LTE_ADVANCED_PRO = 2; // 0x2 + field public static final int OVERRIDE_NETWORK_TYPE_LTE_CA = 1; // 0x1 + field public static final int OVERRIDE_NETWORK_TYPE_NONE = 0; // 0x0 + field public static final int OVERRIDE_NETWORK_TYPE_NR_ADVANCED = 5; // 0x5 + field public static final int OVERRIDE_NETWORK_TYPE_NR_NSA = 3; // 0x3 + field @Deprecated public static final int OVERRIDE_NETWORK_TYPE_NR_NSA_MMWAVE = 4; // 0x4 + } + + public class TelephonyManager { + method public boolean canChangeDtmfToneLength(); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void clearSignalStrengthUpdateRequest(@NonNull android.telephony.SignalStrengthUpdateRequest); + method @Nullable public android.telephony.TelephonyManager createForPhoneAccountHandle(android.telecom.PhoneAccountHandle); + method public android.telephony.TelephonyManager createForSubscriptionId(int); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean doesSwitchMultiSimConfigTriggerReboot(); + method public int getActiveModemCount(); + method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public java.util.List getAllCellInfo(); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public long getAllowedNetworkTypesForReason(int); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public int getCallComposerStatus(); + method @Deprecated @RequiresPermission(value=android.Manifest.permission.READ_PHONE_STATE, conditional=true) public int getCallState(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getCallStateForSubscription(); + method public int getCardIdForDefaultEuicc(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) @WorkerThread public android.os.PersistableBundle getCarrierConfig(); + method public int getCarrierIdFromSimMccMnc(); + method @RequiresPermission(anyOf={android.Manifest.permission.READ_BASIC_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public void getCarrierRestrictionStatus(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @Deprecated @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public android.telephony.CellLocation getCellLocation(); + method public int getDataActivity(); + method @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public int getDataNetworkType(); + method public int getDataState(); + method @Deprecated @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getDeviceId(); + method @Deprecated @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getDeviceId(int); + method @Nullable @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public String getDeviceSoftwareVersion(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.Map> getEmergencyNumberList(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.Map> getEmergencyNumberList(int); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public java.util.List getEquivalentHomePlmns(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String[] getForbiddenPlmns(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getGroupIdLevel1(); + method public String getIccAuthentication(int, int, String); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getImei(); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getImei(int); + method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_SMS, android.Manifest.permission.READ_PHONE_NUMBERS}) public String getLine1Number(); + method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public String getManualNetworkSelectionPlmn(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @Nullable public String getManufacturerCode(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @Nullable public String getManufacturerCode(int); + method public static long getMaximumCallComposerPictureSize(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getMeid(); + method @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getMeid(int); + method public String getMmsUAProfUrl(); + method public String getMmsUserAgent(); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getNai(); + method public String getNetworkCountryIso(); + method @NonNull public String getNetworkCountryIso(int); + method public String getNetworkOperator(); + method public String getNetworkOperatorName(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public int getNetworkSelectionMode(); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getNetworkSlicingConfiguration(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public String getNetworkSpecifier(); + method @Deprecated @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getNetworkType(); + method @Nullable @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); + method @Deprecated public int getPhoneCount(); + method public int getPhoneType(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PHONE_STATE}) public int getPreferredOpportunisticDataSubscription(); + method @NonNull public String getPrimaryImei(); + method @Nullable @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public android.telephony.ServiceState getServiceState(); + method @Nullable @RequiresPermission(allOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public android.telephony.ServiceState getServiceState(int); + method @Nullable public android.telephony.SignalStrength getSignalStrength(); + method public int getSimCarrierId(); + method @Nullable public CharSequence getSimCarrierIdName(); + method public String getSimCountryIso(); + method public String getSimOperator(); + method public String getSimOperatorName(); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getSimSerialNumber(); + method public int getSimSpecificCarrierId(); + method @Nullable public CharSequence getSimSpecificCarrierIdName(); + method public int getSimState(); + method public int getSimState(int); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public String getSubscriberId(); + method public int getSubscriptionId(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int getSubscriptionId(@NonNull android.telecom.PhoneAccountHandle); + method public int getSupportedModemCount(); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public long getSupportedRadioAccessFamily(); + method @Nullable public String getTypeAllocationCode(); + method @Nullable public String getTypeAllocationCode(int); + method @NonNull @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public java.util.List getUiccCardsInfo(); + method @Nullable @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVisualVoicemailPackageName(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailAlphaTag(); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public String getVoiceMailNumber(); + method @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public int getVoiceNetworkType(); + method @Nullable public android.net.Uri getVoicemailRingtoneUri(android.telecom.PhoneAccountHandle); + method public boolean hasCarrierPrivileges(); + method public boolean hasIccCard(); + method public boolean iccCloseLogicalChannel(int); + method public byte[] iccExchangeSimIO(int, int, int, int, int, String); + method @Deprecated public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannel(String); + method public android.telephony.IccOpenLogicalChannelResponse iccOpenLogicalChannel(String, int); + method public String iccTransmitApduBasicChannel(int, int, int, int, int, String); + method public String iccTransmitApduLogicalChannel(int, int, int, int, int, int, String); + method public boolean isConcurrentVoiceAndDataSupported(); + method public boolean isDataCapable(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_BASIC_PHONE_STATE}) public boolean isDataConnectionAllowed(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public boolean isDataEnabled(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public boolean isDataEnabledForReason(int); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE, android.Manifest.permission.READ_BASIC_PHONE_STATE}) public boolean isDataRoamingEnabled(); + method public boolean isDeviceSmsCapable(); + method public boolean isDeviceVoiceCapable(); + method public boolean isEmergencyNumber(@NonNull String); + method public boolean isHearingAidCompatibilitySupported(); + method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public boolean isManualNetworkSelectionAllowed(); + method @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public boolean isModemEnabledForSlot(int); + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public int isMultiSimSupported(); + method public boolean isNetworkRoaming(); + method @RequiresPermission(android.Manifest.permission.READ_BASIC_PHONE_STATE) public boolean isPremiumCapabilityAvailableForPurchase(int); + method public boolean isRadioInterfaceCapabilitySupported(@NonNull String); + method public boolean isRttSupported(); + method @Deprecated public boolean isSmsCapable(); + method @Deprecated public boolean isTtyModeSupported(); + method @Deprecated public boolean isVoiceCapable(); + method public boolean isVoicemailVibrationEnabled(android.telecom.PhoneAccountHandle); + method public boolean isWorldPhone(); + method @Deprecated public void listen(android.telephony.PhoneStateListener, int); + method @RequiresPermission(allOf={android.Manifest.permission.READ_BASIC_PHONE_STATE, android.Manifest.permission.INTERNET}) public void purchasePremiumCapability(int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void rebootModem(); + method public void registerTelephonyCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyCallback); + method public void registerTelephonyCallback(int, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyCallback); + method @RequiresPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) public void requestCellInfoUpdate(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyManager.CellInfoCallback); + method @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public android.telephony.NetworkScan requestNetworkScan(android.telephony.NetworkScanRequest, java.util.concurrent.Executor, android.telephony.TelephonyScanManager.NetworkScanCallback); + method @Nullable @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE}) public android.telephony.NetworkScan requestNetworkScan(int, @NonNull android.telephony.NetworkScanRequest, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.TelephonyScanManager.NetworkScanCallback); + method public void sendDialerSpecialCode(String); + method public String sendEnvelopeWithStatus(String); + method @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void sendUssdRequest(String, android.telephony.TelephonyManager.UssdResponseCallback, android.os.Handler); + method public void sendVisualVoicemailSms(String, int, String, android.app.PendingIntent); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setAllowedNetworkTypesForReason(int, long); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCallComposerStatus(int); + method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabledForReason(int, boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setForbiddenPlmns(@NonNull java.util.List); + method @Deprecated public boolean setLine1NumberForDisplay(String, String); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setNetworkSelectionModeAutomatic(); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setNetworkSelectionModeManual(String, boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setNetworkSelectionModeManual(@NonNull String, boolean, int); + method public boolean setOperatorBrandOverride(String); + method public boolean setPreferredNetworkTypeToGlobal(); + method public void setPreferredOpportunisticDataSubscription(int, boolean, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setSignalStrengthUpdateRequest(@NonNull android.telephony.SignalStrengthUpdateRequest); + method public void setVisualVoicemailSmsFilterSettings(android.telephony.VisualVoicemailSmsFilterSettings); + method public boolean setVoiceMailNumber(String, String); + method @Deprecated public void setVoicemailRingtoneUri(android.telecom.PhoneAccountHandle, android.net.Uri); + method @Deprecated public void setVoicemailVibrationEnabled(android.telecom.PhoneAccountHandle, boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void switchMultiSimConfig(int); + method public void unregisterTelephonyCallback(@NonNull android.telephony.TelephonyCallback); + method public void updateAvailableNetworks(@NonNull java.util.List, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer); + method public void uploadCallComposerPicture(@NonNull java.nio.file.Path, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + method public void uploadCallComposerPicture(@NonNull java.io.InputStream, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver); + field public static final String ACTION_CARRIER_MESSAGING_CLIENT_SERVICE = "android.telephony.action.CARRIER_MESSAGING_CLIENT_SERVICE"; + field public static final String ACTION_CARRIER_SIGNAL_DEFAULT_NETWORK_AVAILABLE = "android.telephony.action.CARRIER_SIGNAL_DEFAULT_NETWORK_AVAILABLE"; + field public static final String ACTION_CARRIER_SIGNAL_PCO_VALUE = "android.telephony.action.CARRIER_SIGNAL_PCO_VALUE"; + field public static final String ACTION_CARRIER_SIGNAL_REDIRECTED = "android.telephony.action.CARRIER_SIGNAL_REDIRECTED"; + field public static final String ACTION_CARRIER_SIGNAL_REQUEST_NETWORK_FAILED = "android.telephony.action.CARRIER_SIGNAL_REQUEST_NETWORK_FAILED"; + field public static final String ACTION_CARRIER_SIGNAL_RESET = "android.telephony.action.CARRIER_SIGNAL_RESET"; + field public static final String ACTION_CONFIGURE_VOICEMAIL = "android.telephony.action.CONFIGURE_VOICEMAIL"; + field public static final String ACTION_MULTI_SIM_CONFIG_CHANGED = "android.telephony.action.MULTI_SIM_CONFIG_CHANGED"; + field public static final String ACTION_NETWORK_COUNTRY_CHANGED = "android.telephony.action.NETWORK_COUNTRY_CHANGED"; + field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final String ACTION_PHONE_STATE_CHANGED = "android.intent.action.PHONE_STATE"; + field public static final String ACTION_RESET_MOBILE_NETWORK_SETTINGS = "android.telephony.action.RESET_MOBILE_NETWORK_SETTINGS"; + field public static final String ACTION_RESPOND_VIA_MESSAGE = "android.intent.action.RESPOND_VIA_MESSAGE"; + field public static final String ACTION_SECRET_CODE = "android.telephony.action.SECRET_CODE"; + field public static final String ACTION_SHOW_VOICEMAIL_NOTIFICATION = "android.telephony.action.SHOW_VOICEMAIL_NOTIFICATION"; + field public static final String ACTION_SUBSCRIPTION_CARRIER_IDENTITY_CHANGED = "android.telephony.action.SUBSCRIPTION_CARRIER_IDENTITY_CHANGED"; + field public static final String ACTION_SUBSCRIPTION_SPECIFIC_CARRIER_IDENTITY_CHANGED = "android.telephony.action.SUBSCRIPTION_SPECIFIC_CARRIER_IDENTITY_CHANGED"; + field public static final int ALLOWED_NETWORK_TYPES_REASON_CARRIER = 2; // 0x2 + field public static final int ALLOWED_NETWORK_TYPES_REASON_USER = 0; // 0x0 + field public static final int APPTYPE_CSIM = 4; // 0x4 + field public static final int APPTYPE_ISIM = 5; // 0x5 + field public static final int APPTYPE_RUIM = 3; // 0x3 + field public static final int APPTYPE_SIM = 1; // 0x1 + field public static final int APPTYPE_UNKNOWN = 0; // 0x0 + field public static final int APPTYPE_USIM = 2; // 0x2 + field public static final int AUTHTYPE_EAP_AKA = 129; // 0x81 + field public static final int AUTHTYPE_EAP_SIM = 128; // 0x80 + field public static final int AUTHTYPE_GBA_BOOTSTRAP = 132; // 0x84 + field public static final int AUTHTYPE_GBA_NAF_KEY_EXTERNAL = 133; // 0x85 + field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final int CALL_COMPOSER_STATUS_BUSINESS_ONLY = 2; // 0x2 + field public static final int CALL_COMPOSER_STATUS_OFF = 0; // 0x0 + field public static final int CALL_COMPOSER_STATUS_ON = 1; // 0x1 + field public static final int CALL_STATE_IDLE = 0; // 0x0 + field public static final int CALL_STATE_OFFHOOK = 2; // 0x2 + field public static final int CALL_STATE_RINGING = 1; // 0x1 + field public static final String CAPABILITY_SLICING_CONFIG_SUPPORTED = "CAPABILITY_SLICING_CONFIG_SUPPORTED"; + field public static final int CARRIER_RESTRICTION_STATUS_NOT_RESTRICTED = 1; // 0x1 + field public static final int CARRIER_RESTRICTION_STATUS_RESTRICTED = 2; // 0x2 + field public static final int CARRIER_RESTRICTION_STATUS_RESTRICTED_TO_CALLER = 3; // 0x3 + field public static final int CARRIER_RESTRICTION_STATUS_UNKNOWN = 0; // 0x0 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ROAMING_MODE_AFFILIATED = 1; // 0x1 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ROAMING_MODE_ANY = 2; // 0x2 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ROAMING_MODE_HOME = 0; // 0x0 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int CDMA_ROAMING_MODE_RADIO_DEFAULT = -1; // 0xffffffff + field public static final int DATA_ACTIVITY_DORMANT = 4; // 0x4 + field public static final int DATA_ACTIVITY_IN = 1; // 0x1 + field public static final int DATA_ACTIVITY_INOUT = 3; // 0x3 + field public static final int DATA_ACTIVITY_NONE = 0; // 0x0 + field public static final int DATA_ACTIVITY_OUT = 2; // 0x2 + field public static final int DATA_CONNECTED = 2; // 0x2 + field public static final int DATA_CONNECTING = 1; // 0x1 + field public static final int DATA_DISCONNECTED = 0; // 0x0 + field public static final int DATA_DISCONNECTING = 4; // 0x4 + field public static final int DATA_ENABLED_REASON_CARRIER = 2; // 0x2 + field public static final int DATA_ENABLED_REASON_OVERRIDE = 4; // 0x4 + field public static final int DATA_ENABLED_REASON_POLICY = 1; // 0x1 + field public static final int DATA_ENABLED_REASON_THERMAL = 3; // 0x3 + field public static final int DATA_ENABLED_REASON_UNKNOWN = -1; // 0xffffffff + field public static final int DATA_ENABLED_REASON_USER = 0; // 0x0 + field public static final int DATA_HANDOVER_IN_PROGRESS = 5; // 0x5 + field public static final int DATA_SUSPENDED = 3; // 0x3 + field public static final int DATA_UNKNOWN = -1; // 0xffffffff + field public static final int DEFAULT_PORT_INDEX = 0; // 0x0 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int ERI_FLASH = 2; // 0x2 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int ERI_OFF = 1; // 0x1 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int ERI_ON = 0; // 0x0 + field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EVENT_DISPLAY_EMERGENCY_MESSAGE = "android.telephony.event.DISPLAY_EMERGENCY_MESSAGE"; + field public static final String EXTRA_ACTIVE_SIM_SUPPORTED_COUNT = "android.telephony.extra.ACTIVE_SIM_SUPPORTED_COUNT"; + field public static final String EXTRA_APN_PROTOCOL = "android.telephony.extra.APN_PROTOCOL"; + field public static final String EXTRA_APN_TYPE = "android.telephony.extra.APN_TYPE"; + field public static final String EXTRA_CALL_VOICEMAIL_INTENT = "android.telephony.extra.CALL_VOICEMAIL_INTENT"; + field public static final String EXTRA_CARRIER_ID = "android.telephony.extra.CARRIER_ID"; + field public static final String EXTRA_CARRIER_NAME = "android.telephony.extra.CARRIER_NAME"; + field public static final String EXTRA_DATA_FAIL_CAUSE = "android.telephony.extra.DATA_FAIL_CAUSE"; + field public static final String EXTRA_DEFAULT_NETWORK_AVAILABLE = "android.telephony.extra.DEFAULT_NETWORK_AVAILABLE"; + field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE = "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_HANDOVER_TYPE"; + field @FlaggedApi("com.android.internal.telephony.flags.oem_enabled_satellite_flag") public static final String EXTRA_EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT = "android.telephony.extra.EMERGENCY_CALL_TO_SATELLITE_LAUNCH_INTENT"; + field public static final String EXTRA_HIDE_PUBLIC_SETTINGS = "android.telephony.extra.HIDE_PUBLIC_SETTINGS"; + field @Deprecated public static final String EXTRA_INCOMING_NUMBER = "incoming_number"; + field public static final String EXTRA_IS_REFRESH = "android.telephony.extra.IS_REFRESH"; + field public static final String EXTRA_LAST_KNOWN_NETWORK_COUNTRY = "android.telephony.extra.LAST_KNOWN_NETWORK_COUNTRY"; + field public static final String EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT = "android.telephony.extra.LAUNCH_VOICEMAIL_SETTINGS_INTENT"; + field public static final String EXTRA_NETWORK_COUNTRY = "android.telephony.extra.NETWORK_COUNTRY"; + field public static final String EXTRA_NOTIFICATION_COUNT = "android.telephony.extra.NOTIFICATION_COUNT"; + field public static final String EXTRA_PCO_ID = "android.telephony.extra.PCO_ID"; + field public static final String EXTRA_PCO_VALUE = "android.telephony.extra.PCO_VALUE"; + field public static final String EXTRA_PHONE_ACCOUNT_HANDLE = "android.telephony.extra.PHONE_ACCOUNT_HANDLE"; + field public static final String EXTRA_REDIRECTION_URL = "android.telephony.extra.REDIRECTION_URL"; + field public static final String EXTRA_SPECIFIC_CARRIER_ID = "android.telephony.extra.SPECIFIC_CARRIER_ID"; + field public static final String EXTRA_SPECIFIC_CARRIER_NAME = "android.telephony.extra.SPECIFIC_CARRIER_NAME"; + field public static final String EXTRA_STATE = "state"; + field public static final String EXTRA_STATE_IDLE; + field public static final String EXTRA_STATE_OFFHOOK; + field public static final String EXTRA_STATE_RINGING; + field public static final String EXTRA_SUBSCRIPTION_ID = "android.telephony.extra.SUBSCRIPTION_ID"; + field public static final String EXTRA_VOICEMAIL_NUMBER = "android.telephony.extra.VOICEMAIL_NUMBER"; + field public static final int INCLUDE_LOCATION_DATA_COARSE = 1; // 0x1 + field public static final int INCLUDE_LOCATION_DATA_FINE = 2; // 0x2 + field public static final int INCLUDE_LOCATION_DATA_NONE = 0; // 0x0 + field public static final String METADATA_HIDE_VOICEMAIL_SETTINGS_MENU = "android.telephony.HIDE_VOICEMAIL_SETTINGS_MENU"; + field public static final int MULTISIM_ALLOWED = 0; // 0x0 + field public static final int MULTISIM_NOT_SUPPORTED_BY_CARRIER = 2; // 0x2 + field public static final int MULTISIM_NOT_SUPPORTED_BY_HARDWARE = 1; // 0x1 + field public static final int NETWORK_SELECTION_MODE_AUTO = 1; // 0x1 + field public static final int NETWORK_SELECTION_MODE_MANUAL = 2; // 0x2 + field public static final int NETWORK_SELECTION_MODE_UNKNOWN = 0; // 0x0 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_1xRTT = 7; // 0x7 + field public static final long NETWORK_TYPE_BITMASK_1xRTT = 64L; // 0x40L + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final long NETWORK_TYPE_BITMASK_CDMA = 8L; // 0x8L + field public static final long NETWORK_TYPE_BITMASK_EDGE = 2L; // 0x2L + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final long NETWORK_TYPE_BITMASK_EHRPD = 8192L; // 0x2000L + field public static final long NETWORK_TYPE_BITMASK_EVDO_0 = 16L; // 0x10L + field public static final long NETWORK_TYPE_BITMASK_EVDO_A = 32L; // 0x20L + field public static final long NETWORK_TYPE_BITMASK_EVDO_B = 2048L; // 0x800L + field public static final long NETWORK_TYPE_BITMASK_GPRS = 1L; // 0x1L + field public static final long NETWORK_TYPE_BITMASK_GSM = 32768L; // 0x8000L + field public static final long NETWORK_TYPE_BITMASK_HSDPA = 128L; // 0x80L + field public static final long NETWORK_TYPE_BITMASK_HSPA = 512L; // 0x200L + field public static final long NETWORK_TYPE_BITMASK_HSPAP = 16384L; // 0x4000L + field public static final long NETWORK_TYPE_BITMASK_HSUPA = 256L; // 0x100L + field public static final long NETWORK_TYPE_BITMASK_IWLAN = 131072L; // 0x20000L + field public static final long NETWORK_TYPE_BITMASK_LTE = 4096L; // 0x1000L + field @Deprecated public static final long NETWORK_TYPE_BITMASK_LTE_CA = 262144L; // 0x40000L + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final long NETWORK_TYPE_BITMASK_NB_IOT_NTN = 1048576L; // 0x100000L + field public static final long NETWORK_TYPE_BITMASK_NR = 524288L; // 0x80000L + field public static final long NETWORK_TYPE_BITMASK_TD_SCDMA = 65536L; // 0x10000L + field public static final long NETWORK_TYPE_BITMASK_UMTS = 4L; // 0x4L + field public static final long NETWORK_TYPE_BITMASK_UNKNOWN = 0L; // 0x0L + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_CDMA = 4; // 0x4 + field public static final int NETWORK_TYPE_EDGE = 2; // 0x2 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_EHRPD = 14; // 0xe + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_EVDO_0 = 5; // 0x5 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_EVDO_A = 6; // 0x6 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int NETWORK_TYPE_EVDO_B = 12; // 0xc + field public static final int NETWORK_TYPE_GPRS = 1; // 0x1 + field public static final int NETWORK_TYPE_GSM = 16; // 0x10 + field public static final int NETWORK_TYPE_HSDPA = 8; // 0x8 + field public static final int NETWORK_TYPE_HSPA = 10; // 0xa + field public static final int NETWORK_TYPE_HSPAP = 15; // 0xf + field public static final int NETWORK_TYPE_HSUPA = 9; // 0x9 + field @Deprecated public static final int NETWORK_TYPE_IDEN = 11; // 0xb + field public static final int NETWORK_TYPE_IWLAN = 18; // 0x12 + field public static final int NETWORK_TYPE_LTE = 13; // 0xd + field @FlaggedApi("com.android.internal.telephony.flags.satellite_system_apis") public static final int NETWORK_TYPE_NB_IOT_NTN = 21; // 0x15 + field public static final int NETWORK_TYPE_NR = 20; // 0x14 + field public static final int NETWORK_TYPE_TD_SCDMA = 17; // 0x11 + field public static final int NETWORK_TYPE_UMTS = 3; // 0x3 + field public static final int NETWORK_TYPE_UNKNOWN = 0; // 0x0 + field @Deprecated @FlaggedApi("com.android.internal.telephony.flags.deprecate_cdma") public static final int PHONE_TYPE_CDMA = 2; // 0x2 + field public static final int PHONE_TYPE_GSM = 1; // 0x1 + field public static final int PHONE_TYPE_NONE = 0; // 0x0 + field public static final int PHONE_TYPE_SIP = 3; // 0x3 + field public static final int PREMIUM_CAPABILITY_PRIORITIZE_LATENCY = 34; // 0x22 + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_IN_PROGRESS = 4; // 0x4 + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_PURCHASED = 3; // 0x3 + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_DISABLED = 7; // 0x7 + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_ERROR = 8; // 0x8 + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_ENTITLEMENT_CHECK_FAILED = 13; // 0xd + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_FEATURE_NOT_SUPPORTED = 10; // 0xa + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_NETWORK_NOT_AVAILABLE = 12; // 0xc + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_NOT_DEFAULT_DATA_SUBSCRIPTION = 14; // 0xe + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_NOT_FOREGROUND = 5; // 0x5 + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_PENDING_NETWORK_SETUP = 15; // 0xf + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_REQUEST_FAILED = 11; // 0xb + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_SUCCESS = 1; // 0x1 + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED = 2; // 0x2 + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_TIMEOUT = 9; // 0x9 + field public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_USER_CANCELED = 6; // 0x6 + field @FlaggedApi("com.android.internal.telephony.flags.slicing_additional_error_codes") public static final int PURCHASE_PREMIUM_CAPABILITY_RESULT_USER_DISABLED = 16; // 0x10 + field public static final int SET_OPPORTUNISTIC_SUB_INACTIVE_SUBSCRIPTION = 2; // 0x2 + field public static final int SET_OPPORTUNISTIC_SUB_NO_OPPORTUNISTIC_SUB_AVAILABLE = 3; // 0x3 + field public static final int SET_OPPORTUNISTIC_SUB_REMOTE_SERVICE_EXCEPTION = 4; // 0x4 + field public static final int SET_OPPORTUNISTIC_SUB_SUCCESS = 0; // 0x0 + field public static final int SET_OPPORTUNISTIC_SUB_VALIDATION_FAILED = 1; // 0x1 + field public static final int SIM_STATE_ABSENT = 1; // 0x1 + field public static final int SIM_STATE_CARD_IO_ERROR = 8; // 0x8 + field public static final int SIM_STATE_CARD_RESTRICTED = 9; // 0x9 + field public static final int SIM_STATE_NETWORK_LOCKED = 4; // 0x4 + field public static final int SIM_STATE_NOT_READY = 6; // 0x6 + field public static final int SIM_STATE_PERM_DISABLED = 7; // 0x7 + field public static final int SIM_STATE_PIN_REQUIRED = 2; // 0x2 + field public static final int SIM_STATE_PUK_REQUIRED = 3; // 0x3 + field public static final int SIM_STATE_READY = 5; // 0x5 + field public static final int SIM_STATE_UNKNOWN = 0; // 0x0 + field public static final int UNINITIALIZED_CARD_ID = -2; // 0xfffffffe + field public static final int UNKNOWN_CARRIER_ID = -1; // 0xffffffff + field public static final int UNSUPPORTED_CARD_ID = -1; // 0xffffffff + field public static final int UPDATE_AVAILABLE_NETWORKS_ABORTED = 2; // 0x2 + field public static final int UPDATE_AVAILABLE_NETWORKS_DISABLE_MODEM_FAIL = 5; // 0x5 + field public static final int UPDATE_AVAILABLE_NETWORKS_ENABLE_MODEM_FAIL = 6; // 0x6 + field public static final int UPDATE_AVAILABLE_NETWORKS_INVALID_ARGUMENTS = 3; // 0x3 + field public static final int UPDATE_AVAILABLE_NETWORKS_MULTIPLE_NETWORKS_NOT_SUPPORTED = 7; // 0x7 + field public static final int UPDATE_AVAILABLE_NETWORKS_NO_CARRIER_PRIVILEGE = 4; // 0x4 + field public static final int UPDATE_AVAILABLE_NETWORKS_NO_OPPORTUNISTIC_SUB_AVAILABLE = 8; // 0x8 + field public static final int UPDATE_AVAILABLE_NETWORKS_REMOTE_SERVICE_EXCEPTION = 9; // 0x9 + field public static final int UPDATE_AVAILABLE_NETWORKS_SERVICE_IS_DISABLED = 10; // 0xa + field public static final int UPDATE_AVAILABLE_NETWORKS_SUCCESS = 0; // 0x0 + field public static final int UPDATE_AVAILABLE_NETWORKS_UNKNOWN_FAILURE = 1; // 0x1 + field public static final int USSD_ERROR_SERVICE_UNAVAIL = -2; // 0xfffffffe + field public static final int USSD_RETURN_FAILURE = -1; // 0xffffffff + field public static final String VVM_TYPE_CVVM = "vvm_type_cvvm"; + field public static final String VVM_TYPE_OMTP = "vvm_type_omtp"; + } + + public static class TelephonyManager.CallComposerException extends java.lang.Exception { + ctor public TelephonyManager.CallComposerException(int, @Nullable java.io.IOException); + method public int getErrorCode(); + method @Nullable public java.io.IOException getIOException(); + field public static final int ERROR_AUTHENTICATION_FAILED = 3; // 0x3 + field public static final int ERROR_FILE_TOO_LARGE = 2; // 0x2 + field public static final int ERROR_INPUT_CLOSED = 4; // 0x4 + field public static final int ERROR_IO_EXCEPTION = 5; // 0x5 + field public static final int ERROR_NETWORK_UNAVAILABLE = 6; // 0x6 + field public static final int ERROR_REMOTE_END_CLOSED = 1; // 0x1 + field public static final int ERROR_UNKNOWN = 0; // 0x0 + } + + public abstract static class TelephonyManager.CellInfoCallback { + ctor public TelephonyManager.CellInfoCallback(); + method public abstract void onCellInfo(@NonNull java.util.List); + method public void onError(int, @Nullable Throwable); + field public static final int ERROR_MODEM_ERROR = 2; // 0x2 + field public static final int ERROR_TIMEOUT = 1; // 0x1 + } + + public class TelephonyManager.ModemErrorException extends android.telephony.TelephonyManager.NetworkSlicingException { + } + + public static class TelephonyManager.NetworkSlicingException extends java.lang.Exception { + } + + public class TelephonyManager.TimeoutException extends android.telephony.TelephonyManager.NetworkSlicingException { + } + + public abstract static class TelephonyManager.UssdResponseCallback { + ctor public TelephonyManager.UssdResponseCallback(); + method public void onReceiveUssdResponse(android.telephony.TelephonyManager, String, CharSequence); + method public void onReceiveUssdResponseFailed(android.telephony.TelephonyManager, String, int); + } + + public final class TelephonyScanManager { + ctor public TelephonyScanManager(); + } + + public abstract static class TelephonyScanManager.NetworkScanCallback { + ctor public TelephonyScanManager.NetworkScanCallback(); + method public void onComplete(); + method public void onError(int); + method public void onResults(java.util.List); + } + + public final class UiccCardInfo implements android.os.Parcelable { + method public int describeContents(); + method public int getCardId(); + method @Nullable public String getEid(); + method @Deprecated @Nullable public String getIccId(); + method public int getPhysicalSlotIndex(); + method @NonNull public java.util.Collection getPorts(); + method @Deprecated public int getSlotIndex(); + method public boolean isEuicc(); + method public boolean isMultipleEnabledProfilesSupported(); + method public boolean isRemovable(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class UiccPortInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getIccId(); + method @IntRange(from=0) public int getLogicalSlotIndex(); + method @IntRange(from=0) public int getPortIndex(); + method public boolean isActive(); + method public void writeToParcel(@Nullable android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String ICCID_REDACTED = "FFFFFFFFFFFFFFFFFFFF"; + } + + public abstract class VisualVoicemailService extends android.app.Service { + ctor public VisualVoicemailService(); + method public android.os.IBinder onBind(android.content.Intent); + method @MainThread public abstract void onCellServiceConnected(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle); + method @MainThread public abstract void onSimRemoved(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle); + method @MainThread public abstract void onSmsReceived(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telephony.VisualVoicemailSms); + method @MainThread public abstract void onStopped(android.telephony.VisualVoicemailService.VisualVoicemailTask); + field public static final String SERVICE_INTERFACE = "android.telephony.VisualVoicemailService"; + } + + public static class VisualVoicemailService.VisualVoicemailTask { + method public final void finish(); + } + + public final class VisualVoicemailSms implements android.os.Parcelable { + method public int describeContents(); + method public android.os.Bundle getFields(); + method public String getMessageBody(); + method public android.telecom.PhoneAccountHandle getPhoneAccountHandle(); + method public String getPrefix(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class VisualVoicemailSmsFilterSettings implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DESTINATION_PORT_ANY = -1; // 0xffffffff + field public static final int DESTINATION_PORT_DATA_SMS = -2; // 0xfffffffe + field public final String clientPrefix; + field public final int destinationPort; + field public final java.util.List originatingNumbers; + } + + public static class VisualVoicemailSmsFilterSettings.Builder { + ctor public VisualVoicemailSmsFilterSettings.Builder(); + method public android.telephony.VisualVoicemailSmsFilterSettings build(); + method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setClientPrefix(String); + method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setDestinationPort(int); + method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setOriginatingNumbers(java.util.List); + } + +} + +package android.telephony.cdma { + + @Deprecated public class CdmaCellLocation extends android.telephony.CellLocation { + ctor @Deprecated public CdmaCellLocation(); + ctor @Deprecated public CdmaCellLocation(android.os.Bundle); + method @Deprecated public static double convertQuartSecToDecDegrees(int); + method @Deprecated public void fillInNotifierBundle(android.os.Bundle); + method @Deprecated public int getBaseStationId(); + method @Deprecated public int getBaseStationLatitude(); + method @Deprecated public int getBaseStationLongitude(); + method @Deprecated public int getNetworkId(); + method @Deprecated public int getSystemId(); + method @Deprecated public void setCellLocationData(int, int, int); + method @Deprecated public void setCellLocationData(int, int, int, int, int); + method @Deprecated public void setStateInvalid(); + } + +} + +package android.telephony.data { + + public class ApnSetting implements android.os.Parcelable { + method public int describeContents(); + method public String getApnName(); + method public int getApnTypeBitmask(); + method public int getAuthType(); + method public int getCarrierId(); + method public String getEntryName(); + method public int getId(); + method @Deprecated public java.net.InetAddress getMmsProxyAddress(); + method public String getMmsProxyAddressAsString(); + method public int getMmsProxyPort(); + method public android.net.Uri getMmsc(); + method public int getMtuV4(); + method public int getMtuV6(); + method public int getMvnoType(); + method public int getNetworkTypeBitmask(); + method public String getOperatorNumeric(); + method public String getPassword(); + method public int getProfileId(); + method public int getProtocol(); + method @Deprecated public java.net.InetAddress getProxyAddress(); + method public String getProxyAddressAsString(); + method public int getProxyPort(); + method public int getRoamingProtocol(); + method public String getUser(); + method @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") public boolean isAlwaysOn(); + method public boolean isEnabled(); + method public boolean isPersistent(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int AUTH_TYPE_CHAP = 2; // 0x2 + field public static final int AUTH_TYPE_NONE = 0; // 0x0 + field public static final int AUTH_TYPE_PAP = 1; // 0x1 + field public static final int AUTH_TYPE_PAP_OR_CHAP = 3; // 0x3 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int MVNO_TYPE_GID = 2; // 0x2 + field public static final int MVNO_TYPE_ICCID = 3; // 0x3 + field public static final int MVNO_TYPE_IMSI = 1; // 0x1 + field public static final int MVNO_TYPE_SPN = 0; // 0x0 + field public static final int PROTOCOL_IP = 0; // 0x0 + field public static final int PROTOCOL_IPV4V6 = 2; // 0x2 + field public static final int PROTOCOL_IPV6 = 1; // 0x1 + field public static final int PROTOCOL_NON_IP = 4; // 0x4 + field public static final int PROTOCOL_PPP = 3; // 0x3 + field public static final int PROTOCOL_UNSTRUCTURED = 5; // 0x5 + field public static final int TYPE_BIP = 8192; // 0x2000 + field public static final int TYPE_CBS = 128; // 0x80 + field public static final int TYPE_DEFAULT = 17; // 0x11 + field public static final int TYPE_DUN = 8; // 0x8 + field public static final int TYPE_EMERGENCY = 512; // 0x200 + field public static final int TYPE_ENTERPRISE = 16384; // 0x4000 + field public static final int TYPE_FOTA = 32; // 0x20 + field public static final int TYPE_HIPRI = 16; // 0x10 + field public static final int TYPE_IA = 256; // 0x100 + field public static final int TYPE_IMS = 64; // 0x40 + field public static final int TYPE_MCX = 1024; // 0x400 + field public static final int TYPE_MMS = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.oem_paid_private") public static final int TYPE_OEM_PAID = 65536; // 0x10000 + field @FlaggedApi("com.android.internal.telephony.flags.oem_paid_private") public static final int TYPE_OEM_PRIVATE = 131072; // 0x20000 + field @FlaggedApi("com.android.internal.telephony.flags.carrier_enabled_satellite_flag") public static final int TYPE_RCS = 32768; // 0x8000 + field public static final int TYPE_SUPL = 4; // 0x4 + field public static final int TYPE_VSIM = 4096; // 0x1000 + field public static final int TYPE_XCAP = 2048; // 0x800 + } + + public static class ApnSetting.Builder { + ctor public ApnSetting.Builder(); + method public android.telephony.data.ApnSetting build(); + method @FlaggedApi("com.android.internal.telephony.flags.apn_setting_field_support_flag") @NonNull public android.telephony.data.ApnSetting.Builder setAlwaysOn(boolean); + method @NonNull public android.telephony.data.ApnSetting.Builder setApnName(@Nullable String); + method @NonNull public android.telephony.data.ApnSetting.Builder setApnTypeBitmask(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setAuthType(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setCarrierEnabled(boolean); + method @NonNull public android.telephony.data.ApnSetting.Builder setCarrierId(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setEntryName(@Nullable String); + method @Deprecated public android.telephony.data.ApnSetting.Builder setMmsProxyAddress(java.net.InetAddress); + method @NonNull public android.telephony.data.ApnSetting.Builder setMmsProxyAddress(@Nullable String); + method @NonNull public android.telephony.data.ApnSetting.Builder setMmsProxyPort(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setMmsc(@Nullable android.net.Uri); + method @NonNull public android.telephony.data.ApnSetting.Builder setMtuV4(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setMtuV6(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setMvnoType(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setNetworkTypeBitmask(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setOperatorNumeric(@Nullable String); + method @NonNull public android.telephony.data.ApnSetting.Builder setPassword(@Nullable String); + method @NonNull public android.telephony.data.ApnSetting.Builder setPersistent(boolean); + method @NonNull public android.telephony.data.ApnSetting.Builder setProfileId(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setProtocol(int); + method @Deprecated public android.telephony.data.ApnSetting.Builder setProxyAddress(java.net.InetAddress); + method @NonNull public android.telephony.data.ApnSetting.Builder setProxyAddress(@Nullable String); + method @NonNull public android.telephony.data.ApnSetting.Builder setProxyPort(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setRoamingProtocol(int); + method @NonNull public android.telephony.data.ApnSetting.Builder setUser(@Nullable String); + } + + public final class NetworkSliceInfo implements android.os.Parcelable { + method public int describeContents(); + method @IntRange(from=0xffffffff, to=0xfffffe) public int getMappedHplmnSliceDifferentiator(); + method public int getMappedHplmnSliceServiceType(); + method @IntRange(from=0xffffffff, to=0xfffffe) public int getSliceDifferentiator(); + method public int getSliceServiceType(); + method public int getStatus(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SLICE_DIFFERENTIATOR_NO_SLICE = -1; // 0xffffffff + field public static final int SLICE_SERVICE_TYPE_EMBB = 1; // 0x1 + field public static final int SLICE_SERVICE_TYPE_MIOT = 3; // 0x3 + field public static final int SLICE_SERVICE_TYPE_NONE = 0; // 0x0 + field public static final int SLICE_SERVICE_TYPE_URLLC = 2; // 0x2 + field public static final int SLICE_STATUS_ALLOWED = 2; // 0x2 + field public static final int SLICE_STATUS_CONFIGURED = 1; // 0x1 + field public static final int SLICE_STATUS_DEFAULT_CONFIGURED = 5; // 0x5 + field public static final int SLICE_STATUS_REJECTED_NOT_AVAILABLE_IN_PLMN = 3; // 0x3 + field public static final int SLICE_STATUS_REJECTED_NOT_AVAILABLE_IN_REGISTERED_AREA = 4; // 0x4 + field public static final int SLICE_STATUS_UNKNOWN = 0; // 0x0 + } + + public static final class NetworkSliceInfo.Builder { + ctor public NetworkSliceInfo.Builder(); + method @NonNull public android.telephony.data.NetworkSliceInfo build(); + method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setMappedHplmnSliceDifferentiator(@IntRange(from=0xffffffff, to=0xfffffe) int); + method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setMappedHplmnSliceServiceType(int); + method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setSliceDifferentiator(@IntRange(from=0xffffffff, to=0xfffffe) int); + method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setSliceServiceType(int); + method @NonNull public android.telephony.data.NetworkSliceInfo.Builder setStatus(int); + } + + public final class NetworkSlicingConfig implements android.os.Parcelable { + ctor public NetworkSlicingConfig(); + method public int describeContents(); + method @NonNull public java.util.List getSliceInfo(); + method @NonNull public java.util.List getUrspRules(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class RouteSelectionDescriptor implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getDataNetworkName(); + method @IntRange(from=0x0, to=0xff) public int getPrecedence(); + method public int getSessionType(); + method @NonNull public java.util.List getSliceInfo(); + method public int getSscMode(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int ROUTE_SSC_MODE_1 = 1; // 0x1 + field public static final int ROUTE_SSC_MODE_2 = 2; // 0x2 + field public static final int ROUTE_SSC_MODE_3 = 3; // 0x3 + field public static final int SESSION_TYPE_IPV4 = 0; // 0x0 + field public static final int SESSION_TYPE_IPV4V6 = 2; // 0x2 + field public static final int SESSION_TYPE_IPV6 = 1; // 0x1 + } + + public final class TrafficDescriptor implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getDataNetworkName(); + method @Nullable public byte[] getOsAppId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TrafficDescriptor.Builder { + ctor public TrafficDescriptor.Builder(); + method @NonNull public android.telephony.data.TrafficDescriptor build(); + method @NonNull public android.telephony.data.TrafficDescriptor.Builder setDataNetworkName(@NonNull String); + method @NonNull public android.telephony.data.TrafficDescriptor.Builder setOsAppId(@NonNull byte[]); + } + + public final class UrspRule implements android.os.Parcelable { + method public int describeContents(); + method @IntRange(from=0x0, to=0xff) public int getPrecedence(); + method @NonNull public java.util.List getRouteSelectionDescriptor(); + method @NonNull public java.util.List getTrafficDescriptors(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.telephony.emergency { + + public final class EmergencyNumber implements java.lang.Comparable android.os.Parcelable { + method public int compareTo(@NonNull android.telephony.emergency.EmergencyNumber); + method public int describeContents(); + method @NonNull public String getCountryIso(); + method public int getEmergencyCallRouting(); + method @NonNull public java.util.List getEmergencyNumberSources(); + method @NonNull public java.util.List getEmergencyServiceCategories(); + method @NonNull public java.util.List getEmergencyUrns(); + method @NonNull public String getMnc(); + method @NonNull public String getNumber(); + method public boolean isFromSources(int); + method public boolean isInEmergencyServiceCategories(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int EMERGENCY_CALL_ROUTING_EMERGENCY = 1; // 0x1 + field public static final int EMERGENCY_CALL_ROUTING_NORMAL = 2; // 0x2 + field public static final int EMERGENCY_CALL_ROUTING_UNKNOWN = 0; // 0x0 + field public static final int EMERGENCY_NUMBER_SOURCE_DATABASE = 16; // 0x10 + field public static final int EMERGENCY_NUMBER_SOURCE_DEFAULT = 8; // 0x8 + field public static final int EMERGENCY_NUMBER_SOURCE_MODEM_CONFIG = 4; // 0x4 + field public static final int EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING = 1; // 0x1 + field public static final int EMERGENCY_NUMBER_SOURCE_SIM = 2; // 0x2 + field public static final int EMERGENCY_SERVICE_CATEGORY_AIEC = 64; // 0x40 + field public static final int EMERGENCY_SERVICE_CATEGORY_AMBULANCE = 2; // 0x2 + field public static final int EMERGENCY_SERVICE_CATEGORY_FIRE_BRIGADE = 4; // 0x4 + field public static final int EMERGENCY_SERVICE_CATEGORY_MARINE_GUARD = 8; // 0x8 + field public static final int EMERGENCY_SERVICE_CATEGORY_MIEC = 32; // 0x20 + field public static final int EMERGENCY_SERVICE_CATEGORY_MOUNTAIN_RESCUE = 16; // 0x10 + field public static final int EMERGENCY_SERVICE_CATEGORY_POLICE = 1; // 0x1 + field public static final int EMERGENCY_SERVICE_CATEGORY_UNSPECIFIED = 0; // 0x0 + } + +} + +package android.telephony.euicc { + + public final class DownloadableSubscription implements android.os.Parcelable { + method public int describeContents(); + method public static android.telephony.euicc.DownloadableSubscription forActivationCode(String); + method @Nullable public String getConfirmationCode(); + method @Nullable public String getEncodedActivationCode(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class DownloadableSubscription.Builder { + ctor public DownloadableSubscription.Builder(@NonNull android.telephony.euicc.DownloadableSubscription); + ctor public DownloadableSubscription.Builder(@NonNull String); + method @NonNull public android.telephony.euicc.DownloadableSubscription build(); + method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setConfirmationCode(@NonNull String); + method @NonNull public android.telephony.euicc.DownloadableSubscription.Builder setEncodedActivationCode(@NonNull String); + } + + public final class EuiccInfo implements android.os.Parcelable { + ctor public EuiccInfo(@Nullable String); + method public int describeContents(); + method @Nullable public String getOsVersion(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class EuiccManager { + method @NonNull public android.telephony.euicc.EuiccManager createForCardId(int); + method @RequiresPermission(anyOf={"android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS", android.Manifest.permission.MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS}) public void deleteSubscription(int, android.app.PendingIntent); + method @RequiresPermission(anyOf={"android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS", android.Manifest.permission.MANAGE_DEVICE_POLICY_MANAGED_SUBSCRIPTIONS}) public void downloadSubscription(android.telephony.euicc.DownloadableSubscription, boolean, android.app.PendingIntent); + method @FlaggedApi("com.android.internal.telephony.flags.esim_available_memory") @RequiresPermission(anyOf={android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", "carrier privileges"}) public long getAvailableMemoryInBytes(); + method @Nullable public String getEid(); + method @Nullable public android.telephony.euicc.EuiccInfo getEuiccInfo(); + method public boolean isEnabled(); + method public boolean isSimPortAvailable(int); + method public void startResolutionActivity(android.app.Activity, int, android.content.Intent, android.app.PendingIntent) throws android.content.IntentSender.SendIntentException; + method @RequiresPermission("android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS") public void switchToSubscription(int, android.app.PendingIntent); + method @RequiresPermission("android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS") public void switchToSubscription(int, int, @NonNull android.app.PendingIntent); + method @RequiresPermission("android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS") public void updateSubscriptionNickname(int, @Nullable String, @NonNull android.app.PendingIntent); + field public static final String ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS = "android.telephony.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS"; + field public static final String ACTION_NOTIFY_CARRIER_SETUP_INCOMPLETE = "android.telephony.euicc.action.NOTIFY_CARRIER_SETUP_INCOMPLETE"; + field public static final String ACTION_START_EUICC_ACTIVATION = "android.telephony.euicc.action.START_EUICC_ACTIVATION"; + field public static final int EMBEDDED_SUBSCRIPTION_RESULT_ERROR = 2; // 0x2 + field public static final int EMBEDDED_SUBSCRIPTION_RESULT_OK = 0; // 0x0 + field public static final int EMBEDDED_SUBSCRIPTION_RESULT_RESOLVABLE_ERROR = 1; // 0x1 + field public static final int ERROR_ADDRESS_MISSING = 10011; // 0x271b + field public static final int ERROR_CARRIER_LOCKED = 10000; // 0x2710 + field public static final int ERROR_CERTIFICATE_ERROR = 10012; // 0x271c + field public static final int ERROR_CONNECTION_ERROR = 10014; // 0x271e + field public static final int ERROR_DISALLOWED_BY_PPR = 10010; // 0x271a + field public static final int ERROR_EUICC_INSUFFICIENT_MEMORY = 10004; // 0x2714 + field public static final int ERROR_EUICC_MISSING = 10006; // 0x2716 + field public static final int ERROR_INCOMPATIBLE_CARRIER = 10003; // 0x2713 + field public static final int ERROR_INSTALL_PROFILE = 10009; // 0x2719 + field public static final int ERROR_INVALID_ACTIVATION_CODE = 10001; // 0x2711 + field public static final int ERROR_INVALID_CONFIRMATION_CODE = 10002; // 0x2712 + field public static final int ERROR_INVALID_PORT = 10017; // 0x2721 + field public static final int ERROR_INVALID_RESPONSE = 10015; // 0x271f + field public static final int ERROR_NO_PROFILES_AVAILABLE = 10013; // 0x271d + field public static final int ERROR_OPERATION_BUSY = 10016; // 0x2720 + field public static final int ERROR_SIM_MISSING = 10008; // 0x2718 + field public static final int ERROR_TIME_OUT = 10005; // 0x2715 + field public static final int ERROR_UNSUPPORTED_VERSION = 10007; // 0x2717 + field @FlaggedApi("com.android.internal.telephony.flags.esim_available_memory") public static final long EUICC_MEMORY_FIELD_UNAVAILABLE = -1L; // 0xffffffffffffffffL + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DETAILED_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DETAILED_CODE"; + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTION = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_DOWNLOADABLE_SUBSCRIPTION"; + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_ERROR_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_ERROR_CODE"; + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_OPERATION_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_OPERATION_CODE"; + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_REASON_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_SMDX_REASON_CODE"; + field public static final String EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_SUBJECT_CODE = "android.telephony.euicc.extra.EMBEDDED_SUBSCRIPTION_SMDX_SUBJECT_CODE"; + field public static final String EXTRA_USE_QR_SCANNER = "android.telephony.euicc.extra.USE_QR_SCANNER"; + field public static final String META_DATA_CARRIER_ICON = "android.telephony.euicc.carriericon"; + field public static final int OPERATION_APDU = 8; // 0x8 + field public static final int OPERATION_DOWNLOAD = 5; // 0x5 + field public static final int OPERATION_EUICC_CARD = 3; // 0x3 + field public static final int OPERATION_EUICC_GSMA = 7; // 0x7 + field public static final int OPERATION_HTTP = 11; // 0xb + field public static final int OPERATION_METADATA = 6; // 0x6 + field public static final int OPERATION_SIM_SLOT = 2; // 0x2 + field public static final int OPERATION_SMDX = 9; // 0x9 + field public static final int OPERATION_SMDX_SUBJECT_REASON_CODE = 10; // 0xa + field public static final int OPERATION_SWITCH = 4; // 0x4 + field public static final int OPERATION_SYSTEM = 1; // 0x1 + } + +} + +package android.telephony.gsm { + + @Deprecated public class GsmCellLocation extends android.telephony.CellLocation { + ctor @Deprecated public GsmCellLocation(); + ctor @Deprecated public GsmCellLocation(android.os.Bundle); + method @Deprecated public void fillInNotifierBundle(android.os.Bundle); + method @Deprecated public int getCid(); + method @Deprecated public int getLac(); + method @Deprecated public int getPsc(); + method @Deprecated public void setLacAndCid(int, int); + method @Deprecated public void setStateInvalid(); + } + + @Deprecated public final class SmsManager { + method @Deprecated public java.util.ArrayList divideMessage(String); + method @Deprecated public static android.telephony.gsm.SmsManager getDefault(); + method @Deprecated public void sendDataMessage(String, String, short, byte[], android.app.PendingIntent, android.app.PendingIntent); + method @Deprecated public void sendMultipartTextMessage(String, String, java.util.ArrayList, java.util.ArrayList, java.util.ArrayList); + method @Deprecated public void sendTextMessage(String, String, String, android.app.PendingIntent, android.app.PendingIntent); + field @Deprecated public static final int RESULT_ERROR_GENERIC_FAILURE = 1; // 0x1 + field @Deprecated public static final int RESULT_ERROR_NO_SERVICE = 4; // 0x4 + field @Deprecated public static final int RESULT_ERROR_NULL_PDU = 3; // 0x3 + field @Deprecated public static final int RESULT_ERROR_RADIO_OFF = 2; // 0x2 + field @Deprecated public static final int STATUS_ON_SIM_FREE = 0; // 0x0 + field @Deprecated public static final int STATUS_ON_SIM_READ = 1; // 0x1 + field @Deprecated public static final int STATUS_ON_SIM_SENT = 5; // 0x5 + field @Deprecated public static final int STATUS_ON_SIM_UNREAD = 3; // 0x3 + field @Deprecated public static final int STATUS_ON_SIM_UNSENT = 7; // 0x7 + } + + @Deprecated public class SmsMessage { + ctor @Deprecated public SmsMessage(); + method @Deprecated public static int[] calculateLength(CharSequence, boolean); + method @Deprecated public static int[] calculateLength(String, boolean); + method @Deprecated public static android.telephony.gsm.SmsMessage createFromPdu(byte[]); + method @Deprecated public String getDisplayMessageBody(); + method @Deprecated public String getDisplayOriginatingAddress(); + method @Deprecated public String getEmailBody(); + method @Deprecated public String getEmailFrom(); + method @Deprecated public int getIndexOnSim(); + method @Deprecated public String getMessageBody(); + method @Deprecated public android.telephony.gsm.SmsMessage.MessageClass getMessageClass(); + method @Deprecated public String getOriginatingAddress(); + method @Deprecated public byte[] getPdu(); + method @Deprecated public int getProtocolIdentifier(); + method @Deprecated public String getPseudoSubject(); + method @Deprecated public String getServiceCenterAddress(); + method @Deprecated public int getStatus(); + method @Deprecated public int getStatusOnSim(); + method @Deprecated public static android.telephony.gsm.SmsMessage.SubmitPdu getSubmitPdu(String, String, String, boolean); + method @Deprecated public static android.telephony.gsm.SmsMessage.SubmitPdu getSubmitPdu(String, String, short, byte[], boolean); + method @Deprecated public static int getTPLayerLengthForPDU(String); + method @Deprecated public long getTimestampMillis(); + method @Deprecated public byte[] getUserData(); + method @Deprecated public boolean isCphsMwiMessage(); + method @Deprecated public boolean isEmail(); + method @Deprecated public boolean isMWIClearMessage(); + method @Deprecated public boolean isMWISetMessage(); + method @Deprecated public boolean isMwiDontStore(); + method @Deprecated public boolean isReplace(); + method @Deprecated public boolean isReplyPathPresent(); + method @Deprecated public boolean isStatusReportMessage(); + field @Deprecated public static final int ENCODING_16BIT = 3; // 0x3 + field @Deprecated public static final int ENCODING_7BIT = 1; // 0x1 + field @Deprecated public static final int ENCODING_8BIT = 2; // 0x2 + field @Deprecated public static final int ENCODING_UNKNOWN = 0; // 0x0 + field @Deprecated public static final int MAX_USER_DATA_BYTES = 140; // 0x8c + field @Deprecated public static final int MAX_USER_DATA_SEPTETS = 160; // 0xa0 + field @Deprecated public static final int MAX_USER_DATA_SEPTETS_WITH_HEADER = 153; // 0x99 + } + + @Deprecated public enum SmsMessage.MessageClass { + enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass CLASS_0; + enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass CLASS_1; + enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass CLASS_2; + enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass CLASS_3; + enum_constant @Deprecated public static final android.telephony.gsm.SmsMessage.MessageClass UNKNOWN; + } + + @Deprecated public static class SmsMessage.SubmitPdu { + ctor @Deprecated public SmsMessage.SubmitPdu(); + field @Deprecated public byte[] encodedMessage; + field @Deprecated public byte[] encodedScAddress; + } + +} + +package android.telephony.ims { + + public final class ImsException extends java.lang.Exception { + method public int getCode(); + field public static final int CODE_ERROR_INVALID_SUBSCRIPTION = 3; // 0x3 + field public static final int CODE_ERROR_SERVICE_UNAVAILABLE = 1; // 0x1 + field public static final int CODE_ERROR_UNSPECIFIED = 0; // 0x0 + field public static final int CODE_ERROR_UNSUPPORTED_OPERATION = 2; // 0x2 + } + + public class ImsManager { + method @NonNull public android.telephony.ims.ImsMmTelManager getImsMmTelManager(int); + method @NonNull public android.telephony.ims.ImsRcsManager getImsRcsManager(int); + method @NonNull public android.telephony.ims.ProvisioningManager getProvisioningManager(int); + field public static final String ACTION_WFC_IMS_REGISTRATION_ERROR = "android.telephony.ims.action.WFC_IMS_REGISTRATION_ERROR"; + field public static final String EXTRA_WFC_REGISTRATION_FAILURE_MESSAGE = "android.telephony.ims.extra.WFC_REGISTRATION_FAILURE_MESSAGE"; + field public static final String EXTRA_WFC_REGISTRATION_FAILURE_TITLE = "android.telephony.ims.extra.WFC_REGISTRATION_FAILURE_TITLE"; + } + + public class ImsMmTelManager implements android.telephony.ims.RegistrationManager { + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void getRegistrationTransportType(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public int getVoWiFiModeSetting(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isAdvancedCallingSettingEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isCrossSimCallingEnabled() throws android.telephony.ims.ImsException; + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isTtyOverVolteEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isVoWiFiRoamingSettingEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isVoWiFiSettingEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public boolean isVtSettingEnabled(); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RegistrationManager.RegistrationCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public void registerImsStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsStateCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void registerMmTelCapabilityCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback); + method public void unregisterImsStateCallback(@NonNull android.telephony.ims.ImsStateCallback); + method @RequiresPermission(anyOf={"android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PRECISE_PHONE_STATE}) public void unregisterMmTelCapabilityCallback(@NonNull android.telephony.ims.ImsMmTelManager.CapabilityCallback); + field public static final int WIFI_MODE_CELLULAR_PREFERRED = 1; // 0x1 + field public static final int WIFI_MODE_WIFI_ONLY = 0; // 0x0 + field public static final int WIFI_MODE_WIFI_PREFERRED = 2; // 0x2 + } + + public static class ImsMmTelManager.CapabilityCallback { + ctor public ImsMmTelManager.CapabilityCallback(); + method public void onCapabilitiesStatusChanged(@NonNull android.telephony.ims.feature.MmTelFeature.MmTelCapabilities); + } + + public class ImsRcsManager { + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void getRegistrationTransportType(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @NonNull public android.telephony.ims.RcsUceAdapter getUceAdapter(); + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RegistrationManager.RegistrationCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(anyOf={android.Manifest.permission.READ_PRECISE_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", "android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE"}) public void registerImsStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ImsStateCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback); + method public void unregisterImsStateCallback(@NonNull android.telephony.ims.ImsStateCallback); + field public static final String ACTION_SHOW_CAPABILITY_DISCOVERY_OPT_IN = "android.telephony.ims.action.SHOW_CAPABILITY_DISCOVERY_OPT_IN"; + field public static final int CAPABILITY_TYPE_NONE = 0; // 0x0 + field public static final int CAPABILITY_TYPE_OPTIONS_UCE = 1; // 0x1 + field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2 + } + + public final class ImsReasonInfo implements android.os.Parcelable { + ctor public ImsReasonInfo(int, int, @Nullable String); + method public int describeContents(); + method public int getCode(); + method public int getExtraCode(); + method @Nullable public String getExtraMessage(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int CODE_ACCESS_CLASS_BLOCKED = 1512; // 0x5e8 + field public static final int CODE_ANSWERED_ELSEWHERE = 1014; // 0x3f6 + field public static final int CODE_BLACKLISTED_CALL_ID = 506; // 0x1fa + field public static final int CODE_CALL_BARRED = 240; // 0xf0 + field public static final int CODE_CALL_DROP_IWLAN_TO_LTE_UNAVAILABLE = 1100; // 0x44c + field public static final int CODE_CALL_END_CAUSE_CALL_PULL = 1016; // 0x3f8 + field public static final int CODE_CALL_PULL_OUT_OF_SYNC = 1015; // 0x3f7 + field public static final int CODE_DATA_DISABLED = 1406; // 0x57e + field public static final int CODE_DATA_LIMIT_REACHED = 1405; // 0x57d + field public static final int CODE_DIAL_MODIFIED_TO_DIAL = 246; // 0xf6 + field public static final int CODE_DIAL_MODIFIED_TO_DIAL_VIDEO = 247; // 0xf7 + field public static final int CODE_DIAL_MODIFIED_TO_SS = 245; // 0xf5 + field public static final int CODE_DIAL_MODIFIED_TO_USSD = 244; // 0xf4 + field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL = 248; // 0xf8 + field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_DIAL_VIDEO = 249; // 0xf9 + field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_SS = 250; // 0xfa + field public static final int CODE_DIAL_VIDEO_MODIFIED_TO_USSD = 251; // 0xfb + field public static final int CODE_ECBM_NOT_SUPPORTED = 901; // 0x385 + field public static final int CODE_EMERGENCY_PERM_FAILURE = 364; // 0x16c + field public static final int CODE_EMERGENCY_TEMP_FAILURE = 363; // 0x16b + field public static final int CODE_EPDG_TUNNEL_ESTABLISH_FAILURE = 1400; // 0x578 + field public static final int CODE_EPDG_TUNNEL_LOST_CONNECTION = 1402; // 0x57a + field public static final int CODE_EPDG_TUNNEL_REKEY_FAILURE = 1401; // 0x579 + field public static final int CODE_FDN_BLOCKED = 241; // 0xf1 + field public static final int CODE_IKEV2_AUTH_FAILURE = 1408; // 0x580 + field public static final int CODE_IMEI_NOT_ACCEPTED = 243; // 0xf3 + field public static final int CODE_IWLAN_DPD_FAILURE = 1300; // 0x514 + field public static final int CODE_LOCAL_CALL_BUSY = 142; // 0x8e + field public static final int CODE_LOCAL_CALL_CS_RETRY_REQUIRED = 146; // 0x92 + field public static final int CODE_LOCAL_CALL_DECLINE = 143; // 0x8f + field public static final int CODE_LOCAL_CALL_EXCEEDED = 141; // 0x8d + field public static final int CODE_LOCAL_CALL_RESOURCE_RESERVATION_FAILED = 145; // 0x91 + field public static final int CODE_LOCAL_CALL_TERMINATED = 148; // 0x94 + field public static final int CODE_LOCAL_CALL_VCC_ON_PROGRESSING = 144; // 0x90 + field public static final int CODE_LOCAL_CALL_VOLTE_RETRY_REQUIRED = 147; // 0x93 + field public static final int CODE_LOCAL_ENDED_BY_CONFERENCE_MERGE = 108; // 0x6c + field public static final int CODE_LOCAL_HO_NOT_FEASIBLE = 149; // 0x95 + field public static final int CODE_LOCAL_ILLEGAL_ARGUMENT = 101; // 0x65 + field public static final int CODE_LOCAL_ILLEGAL_STATE = 102; // 0x66 + field public static final int CODE_LOCAL_IMS_SERVICE_DOWN = 106; // 0x6a + field public static final int CODE_LOCAL_INTERNAL_ERROR = 103; // 0x67 + field public static final int CODE_LOCAL_LOW_BATTERY = 112; // 0x70 + field public static final int CODE_LOCAL_NETWORK_IP_CHANGED = 124; // 0x7c + field public static final int CODE_LOCAL_NETWORK_NO_LTE_COVERAGE = 122; // 0x7a + field public static final int CODE_LOCAL_NETWORK_NO_SERVICE = 121; // 0x79 + field public static final int CODE_LOCAL_NETWORK_ROAMING = 123; // 0x7b + field public static final int CODE_LOCAL_NOT_REGISTERED = 132; // 0x84 + field public static final int CODE_LOCAL_NO_PENDING_CALL = 107; // 0x6b + field public static final int CODE_LOCAL_POWER_OFF = 111; // 0x6f + field public static final int CODE_LOCAL_SERVICE_UNAVAILABLE = 131; // 0x83 + field public static final int CODE_LOW_BATTERY = 505; // 0x1f9 + field public static final int CODE_MAXIMUM_NUMBER_OF_CALLS_REACHED = 1403; // 0x57b + field public static final int CODE_MEDIA_INIT_FAILED = 401; // 0x191 + field public static final int CODE_MEDIA_NOT_ACCEPTABLE = 403; // 0x193 + field public static final int CODE_MEDIA_NO_DATA = 402; // 0x192 + field public static final int CODE_MEDIA_UNSPECIFIED = 404; // 0x194 + field public static final int CODE_MULTIENDPOINT_NOT_SUPPORTED = 902; // 0x386 + field public static final int CODE_NETWORK_CONGESTION = 1624; // 0x658 + field public static final int CODE_NETWORK_DETACH = 1513; // 0x5e9 + field public static final int CODE_NETWORK_REJECT = 1504; // 0x5e0 + field public static final int CODE_NETWORK_RESP_TIMEOUT = 1503; // 0x5df + field public static final int CODE_NO_CSFB_IN_CS_ROAM = 1516; // 0x5ec + field public static final int CODE_NO_VALID_SIM = 1501; // 0x5dd + field public static final int CODE_OEM_CAUSE_1 = 61441; // 0xf001 + field public static final int CODE_OEM_CAUSE_10 = 61450; // 0xf00a + field public static final int CODE_OEM_CAUSE_11 = 61451; // 0xf00b + field public static final int CODE_OEM_CAUSE_12 = 61452; // 0xf00c + field public static final int CODE_OEM_CAUSE_13 = 61453; // 0xf00d + field public static final int CODE_OEM_CAUSE_14 = 61454; // 0xf00e + field public static final int CODE_OEM_CAUSE_15 = 61455; // 0xf00f + field public static final int CODE_OEM_CAUSE_2 = 61442; // 0xf002 + field public static final int CODE_OEM_CAUSE_3 = 61443; // 0xf003 + field public static final int CODE_OEM_CAUSE_4 = 61444; // 0xf004 + field public static final int CODE_OEM_CAUSE_5 = 61445; // 0xf005 + field public static final int CODE_OEM_CAUSE_6 = 61446; // 0xf006 + field public static final int CODE_OEM_CAUSE_7 = 61447; // 0xf007 + field public static final int CODE_OEM_CAUSE_8 = 61448; // 0xf008 + field public static final int CODE_OEM_CAUSE_9 = 61449; // 0xf009 + field public static final int CODE_RADIO_ACCESS_FAILURE = 1505; // 0x5e1 + field public static final int CODE_RADIO_INTERNAL_ERROR = 1502; // 0x5de + field public static final int CODE_RADIO_LINK_FAILURE = 1506; // 0x5e2 + field public static final int CODE_RADIO_LINK_LOST = 1507; // 0x5e3 + field public static final int CODE_RADIO_OFF = 1500; // 0x5dc + field public static final int CODE_RADIO_RELEASE_ABNORMAL = 1511; // 0x5e7 + field public static final int CODE_RADIO_RELEASE_NORMAL = 1510; // 0x5e6 + field public static final int CODE_RADIO_SETUP_FAILURE = 1509; // 0x5e5 + field public static final int CODE_RADIO_UPLINK_FAILURE = 1508; // 0x5e4 + field public static final int CODE_REGISTRATION_ERROR = 1000; // 0x3e8 + field public static final int CODE_REJECTED_ELSEWHERE = 1017; // 0x3f9 + field public static final int CODE_REJECT_1X_COLLISION = 1603; // 0x643 + field public static final int CODE_REJECT_CALL_ON_OTHER_SUB = 1602; // 0x642 + field public static final int CODE_REJECT_CALL_TYPE_NOT_ALLOWED = 1605; // 0x645 + field public static final int CODE_REJECT_CONFERENCE_TTY_NOT_ALLOWED = 1617; // 0x651 + field public static final int CODE_REJECT_INTERNAL_ERROR = 1612; // 0x64c + field public static final int CODE_REJECT_MAX_CALL_LIMIT_REACHED = 1608; // 0x648 + field public static final int CODE_REJECT_ONGOING_CALL_SETUP = 1607; // 0x647 + field public static final int CODE_REJECT_ONGOING_CALL_TRANSFER = 1611; // 0x64b + field public static final int CODE_REJECT_ONGOING_CALL_UPGRADE = 1616; // 0x650 + field public static final int CODE_REJECT_ONGOING_CALL_WAITING_DISABLED = 1601; // 0x641 + field public static final int CODE_REJECT_ONGOING_CONFERENCE_CALL = 1618; // 0x652 + field public static final int CODE_REJECT_ONGOING_CS_CALL = 1621; // 0x655 + field public static final int CODE_REJECT_ONGOING_E911_CALL = 1606; // 0x646 + field public static final int CODE_REJECT_ONGOING_ENCRYPTED_CALL = 1620; // 0x654 + field public static final int CODE_REJECT_ONGOING_HANDOVER = 1614; // 0x64e + field public static final int CODE_REJECT_QOS_FAILURE = 1613; // 0x64d + field public static final int CODE_REJECT_SERVICE_NOT_REGISTERED = 1604; // 0x644 + field public static final int CODE_REJECT_UNKNOWN = 1600; // 0x640 + field public static final int CODE_REJECT_UNSUPPORTED_SDP_HEADERS = 1610; // 0x64a + field public static final int CODE_REJECT_UNSUPPORTED_SIP_HEADERS = 1609; // 0x649 + field public static final int CODE_REJECT_VT_AVPF_NOT_ALLOWED = 1619; // 0x653 + field public static final int CODE_REJECT_VT_TTY_NOT_ALLOWED = 1615; // 0x64f + field public static final int CODE_REMOTE_CALL_DECLINE = 1404; // 0x57c + field public static final int CODE_SESSION_MODIFICATION_FAILED = 1517; // 0x5ed + field public static final int CODE_SIP_ALTERNATE_EMERGENCY_CALL = 1514; // 0x5ea + field public static final int CODE_SIP_AMBIGUOUS = 376; // 0x178 + field public static final int CODE_SIP_BAD_ADDRESS = 337; // 0x151 + field public static final int CODE_SIP_BAD_REQUEST = 331; // 0x14b + field public static final int CODE_SIP_BUSY = 338; // 0x152 + field public static final int CODE_SIP_CALL_OR_TRANS_DOES_NOT_EXIST = 372; // 0x174 + field public static final int CODE_SIP_CLIENT_ERROR = 342; // 0x156 + field public static final int CODE_SIP_EXTENSION_REQUIRED = 370; // 0x172 + field public static final int CODE_SIP_FORBIDDEN = 332; // 0x14c + field public static final int CODE_SIP_GLOBAL_ERROR = 362; // 0x16a + field public static final int CODE_SIP_INTERVAL_TOO_BRIEF = 371; // 0x173 + field public static final int CODE_SIP_LOOP_DETECTED = 373; // 0x175 + field public static final int CODE_SIP_METHOD_NOT_ALLOWED = 366; // 0x16e + field public static final int CODE_SIP_NOT_ACCEPTABLE = 340; // 0x154 + field public static final int CODE_SIP_NOT_FOUND = 333; // 0x14d + field public static final int CODE_SIP_NOT_REACHABLE = 341; // 0x155 + field public static final int CODE_SIP_NOT_SUPPORTED = 334; // 0x14e + field public static final int CODE_SIP_PROXY_AUTHENTICATION_REQUIRED = 367; // 0x16f + field public static final int CODE_SIP_REDIRECTED = 321; // 0x141 + field public static final int CODE_SIP_REQUEST_CANCELLED = 339; // 0x153 + field public static final int CODE_SIP_REQUEST_ENTITY_TOO_LARGE = 368; // 0x170 + field public static final int CODE_SIP_REQUEST_PENDING = 377; // 0x179 + field public static final int CODE_SIP_REQUEST_TIMEOUT = 335; // 0x14f + field public static final int CODE_SIP_REQUEST_URI_TOO_LARGE = 369; // 0x171 + field public static final int CODE_SIP_SERVER_ERROR = 354; // 0x162 + field public static final int CODE_SIP_SERVER_INTERNAL_ERROR = 351; // 0x15f + field public static final int CODE_SIP_SERVER_TIMEOUT = 353; // 0x161 + field public static final int CODE_SIP_SERVICE_UNAVAILABLE = 352; // 0x160 + field public static final int CODE_SIP_TEMPRARILY_UNAVAILABLE = 336; // 0x150 + field public static final int CODE_SIP_TOO_MANY_HOPS = 374; // 0x176 + field public static final int CODE_SIP_TRANSACTION_DOES_NOT_EXIST = 343; // 0x157 + field public static final int CODE_SIP_UNDECIPHERABLE = 378; // 0x17a + field public static final int CODE_SIP_USER_MARKED_UNWANTED = 365; // 0x16d + field public static final int CODE_SIP_USER_REJECTED = 361; // 0x169 + field public static final int CODE_SUPP_SVC_CANCELLED = 1202; // 0x4b2 + field public static final int CODE_SUPP_SVC_FAILED = 1201; // 0x4b1 + field public static final int CODE_SUPP_SVC_REINVITE_COLLISION = 1203; // 0x4b3 + field public static final int CODE_TIMEOUT_1XX_WAITING = 201; // 0xc9 + field public static final int CODE_TIMEOUT_NO_ANSWER = 202; // 0xca + field public static final int CODE_TIMEOUT_NO_ANSWER_CALL_UPDATE = 203; // 0xcb + field public static final int CODE_UNSPECIFIED = 0; // 0x0 + field public static final int CODE_USER_CANCELLED_SESSION_MODIFICATION = 512; // 0x200 + field public static final int CODE_USER_DECLINE = 504; // 0x1f8 + field public static final int CODE_USER_IGNORE = 503; // 0x1f7 + field public static final int CODE_USER_NOANSWER = 502; // 0x1f6 + field public static final int CODE_USER_REJECTED_SESSION_MODIFICATION = 511; // 0x1ff + field public static final int CODE_USER_TERMINATED = 501; // 0x1f5 + field public static final int CODE_USER_TERMINATED_BY_REMOTE = 510; // 0x1fe + field public static final int CODE_UT_CB_PASSWORD_MISMATCH = 821; // 0x335 + field public static final int CODE_UT_NETWORK_ERROR = 804; // 0x324 + field public static final int CODE_UT_NOT_SUPPORTED = 801; // 0x321 + field public static final int CODE_UT_OPERATION_NOT_ALLOWED = 803; // 0x323 + field public static final int CODE_UT_SERVICE_UNAVAILABLE = 802; // 0x322 + field public static final int CODE_UT_SS_MODIFIED_TO_DIAL = 822; // 0x336 + field public static final int CODE_UT_SS_MODIFIED_TO_DIAL_VIDEO = 825; // 0x339 + field public static final int CODE_UT_SS_MODIFIED_TO_SS = 824; // 0x338 + field public static final int CODE_UT_SS_MODIFIED_TO_USSD = 823; // 0x337 + field public static final int CODE_WIFI_LOST = 1407; // 0x57f + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int EXTRA_CODE_CALL_RETRY_BY_SETTINGS = 3; // 0x3 + field public static final int EXTRA_CODE_CALL_RETRY_EMERGENCY = 4; // 0x4 + field public static final int EXTRA_CODE_CALL_RETRY_NORMAL = 1; // 0x1 + field public static final int EXTRA_CODE_CALL_RETRY_SILENT_REDIAL = 2; // 0x2 + } + + public final class ImsRegistrationAttributes implements android.os.Parcelable { + method public int describeContents(); + method public int getAttributeFlags(); + method @NonNull public java.util.Set getFeatureTags(); + method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public boolean getFlagRegistrationTypeEmergency(); + method @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public boolean getFlagVirtualRegistrationForEmergencyCall(); + method @Nullable public android.telephony.ims.SipDetails getSipDetails(); + method public int getTransportType(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int ATTR_EPDG_OVER_CELL_INTERNET = 1; // 0x1 + field @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public static final int ATTR_REGISTRATION_TYPE_EMERGENCY = 2; // 0x2 + field @FlaggedApi("com.android.internal.telephony.flags.emergency_registration_state") public static final int ATTR_VIRTUAL_FOR_ANONYMOUS_EMERGENCY_CALL = 4; // 0x4 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class ImsStateCallback { + ctor public ImsStateCallback(); + method public abstract void onAvailable(); + method public abstract void onError(); + method public abstract void onUnavailable(int); + field public static final int REASON_IMS_SERVICE_DISCONNECTED = 3; // 0x3 + field public static final int REASON_IMS_SERVICE_NOT_READY = 6; // 0x6 + field public static final int REASON_NO_IMS_SERVICE_CONFIGURED = 4; // 0x4 + field public static final int REASON_SUBSCRIPTION_INACTIVE = 5; // 0x5 + field public static final int REASON_UNKNOWN_PERMANENT_ERROR = 2; // 0x2 + field public static final int REASON_UNKNOWN_TEMPORARY_ERROR = 1; // 0x1 + } + + public class ProvisioningManager { + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) @WorkerThread public boolean getProvisioningStatusForCapability(int, int); + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) @WorkerThread public boolean getRcsProvisioningStatusForCapability(int, int); + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public boolean isProvisioningRequiredForCapability(int, int); + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public boolean isRcsProvisioningRequiredForCapability(int, int); + method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void registerFeatureProvisioningChangedCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ProvisioningManager.FeatureProvisioningCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setProvisioningStatusForCapability(int, int, boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setRcsProvisioningStatusForCapability(int, int, boolean); + method public void unregisterFeatureProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.FeatureProvisioningCallback); + } + + public abstract static class ProvisioningManager.FeatureProvisioningCallback { + ctor public ProvisioningManager.FeatureProvisioningCallback(); + method public abstract void onFeatureProvisioningChanged(int, int, boolean); + method public abstract void onRcsFeatureProvisioningChanged(int, int, boolean); + } + + public class RcsUceAdapter { + method @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public boolean isUceSettingEnabled() throws android.telephony.ims.ImsException; + } + + public interface RegistrationManager { + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationState(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void getRegistrationTransportType(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void registerImsRegistrationCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RegistrationManager.RegistrationCallback) throws android.telephony.ims.ImsException; + method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback); + field public static final int REGISTRATION_STATE_NOT_REGISTERED = 0; // 0x0 + field public static final int REGISTRATION_STATE_REGISTERED = 2; // 0x2 + field public static final int REGISTRATION_STATE_REGISTERING = 1; // 0x1 + } + + public static class RegistrationManager.RegistrationCallback { + ctor public RegistrationManager.RegistrationCallback(); + method @Deprecated public void onRegistered(int); + method public void onRegistered(@NonNull android.telephony.ims.ImsRegistrationAttributes); + method @Deprecated public void onRegistering(int); + method public void onRegistering(@NonNull android.telephony.ims.ImsRegistrationAttributes); + method public void onTechnologyChangeFailed(int, @NonNull android.telephony.ims.ImsReasonInfo); + method public void onUnregistered(@NonNull android.telephony.ims.ImsReasonInfo); + } + + public final class SipDetails implements android.os.Parcelable { + method public int describeContents(); + method public int getCSeq(); + method @Nullable public String getCallId(); + method public int getMethod(); + method public int getReasonHeaderCause(); + method @NonNull public String getReasonHeaderText(); + method public int getResponseCode(); + method @NonNull public String getResponsePhrase(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int METHOD_PUBLISH = 2; // 0x2 + field public static final int METHOD_REGISTER = 1; // 0x1 + field public static final int METHOD_SUBSCRIBE = 3; // 0x3 + field public static final int METHOD_UNKNOWN = 0; // 0x0 + } + +} + +package android.telephony.ims.feature { + + public class MmTelFeature { + } + + public static class MmTelFeature.MmTelCapabilities { + method public final boolean isCapable(int); + field public static final int CAPABILITY_TYPE_CALL_COMPOSER = 16; // 0x10 + field @FlaggedApi("com.android.server.telecom.flags.business_call_composer") public static final int CAPABILITY_TYPE_CALL_COMPOSER_BUSINESS_ONLY = 32; // 0x20 + field public static final int CAPABILITY_TYPE_SMS = 8; // 0x8 + field public static final int CAPABILITY_TYPE_UT = 4; // 0x4 + field public static final int CAPABILITY_TYPE_VIDEO = 2; // 0x2 + field public static final int CAPABILITY_TYPE_VOICE = 1; // 0x1 + } + +} + +package android.telephony.ims.stub { + + public class ImsRegistrationImplBase { + field public static final int REGISTRATION_TECH_3G = 4; // 0x4 + field public static final int REGISTRATION_TECH_CROSS_SIM = 2; // 0x2 + field public static final int REGISTRATION_TECH_IWLAN = 1; // 0x1 + field public static final int REGISTRATION_TECH_LTE = 0; // 0x0 + field public static final int REGISTRATION_TECH_NONE = -1; // 0xffffffff + field public static final int REGISTRATION_TECH_NR = 3; // 0x3 + } + +} + +package android.telephony.mbms { + + public class DownloadProgressListener { + ctor public DownloadProgressListener(); + method public void onProgressUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int, int, int, int); + } + + public final class DownloadRequest implements android.os.Parcelable { + method public int describeContents(); + method public android.net.Uri getDestinationUri(); + method public String getFileServiceId(); + method public static int getMaxAppIntentSize(); + method public static int getMaxDestinationUriSize(); + method public android.net.Uri getSourceUri(); + method public int getSubscriptionId(); + method public byte[] toByteArray(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class DownloadRequest.Builder { + ctor public DownloadRequest.Builder(@NonNull android.net.Uri, @NonNull android.net.Uri); + method public android.telephony.mbms.DownloadRequest build(); + method public static android.telephony.mbms.DownloadRequest.Builder fromDownloadRequest(android.telephony.mbms.DownloadRequest); + method public static android.telephony.mbms.DownloadRequest.Builder fromSerializedRequest(byte[]); + method public android.telephony.mbms.DownloadRequest.Builder setAppIntent(android.content.Intent); + method public android.telephony.mbms.DownloadRequest.Builder setServiceInfo(android.telephony.mbms.FileServiceInfo); + method public android.telephony.mbms.DownloadRequest.Builder setSubscriptionId(int); + } + + public class DownloadStatusListener { + ctor public DownloadStatusListener(); + method public void onStatusUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int); + } + + public final class FileInfo implements android.os.Parcelable { + method public int describeContents(); + method public String getMimeType(); + method public android.net.Uri getUri(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class FileServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable { + method public int describeContents(); + method public java.util.List getFiles(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class GroupCall implements java.lang.AutoCloseable { + method public void close(); + method public long getTmgi(); + method public void updateGroupCall(@NonNull java.util.List, @NonNull java.util.List); + field public static final int REASON_BY_USER_REQUEST = 1; // 0x1 + field public static final int REASON_FREQUENCY_CONFLICT = 3; // 0x3 + field public static final int REASON_LEFT_MBMS_BROADCAST_AREA = 6; // 0x6 + field public static final int REASON_NONE = 0; // 0x0 + field public static final int REASON_NOT_CONNECTED_TO_HOMECARRIER_LTE = 5; // 0x5 + field public static final int REASON_OUT_OF_MEMORY = 4; // 0x4 + field public static final int STATE_STALLED = 3; // 0x3 + field public static final int STATE_STARTED = 2; // 0x2 + field public static final int STATE_STOPPED = 1; // 0x1 + } + + public interface GroupCallCallback { + method public default void onBroadcastSignalStrengthUpdated(@IntRange(from=0xffffffff, to=4) int); + method public default void onError(int, @Nullable String); + method public default void onGroupCallStateChanged(int, int); + field public static final int SIGNAL_STRENGTH_UNAVAILABLE = -1; // 0xffffffff + } + + public class MbmsDownloadReceiver extends android.content.BroadcastReceiver { + ctor public MbmsDownloadReceiver(); + method public void onReceive(android.content.Context, android.content.Intent); + } + + public class MbmsDownloadSessionCallback { + ctor public MbmsDownloadSessionCallback(); + method public void onError(int, String); + method public void onFileServicesUpdated(java.util.List); + method public void onMiddlewareReady(); + } + + public class MbmsErrors { + field public static final int ERROR_MIDDLEWARE_LOST = 3; // 0x3 + field public static final int ERROR_MIDDLEWARE_NOT_BOUND = 2; // 0x2 + field public static final int ERROR_NO_UNIQUE_MIDDLEWARE = 1; // 0x1 + field public static final int SUCCESS = 0; // 0x0 + field public static final int UNKNOWN = -1; // 0xffffffff + } + + public static class MbmsErrors.DownloadErrors { + field public static final int ERROR_CANNOT_CHANGE_TEMP_FILE_ROOT = 401; // 0x191 + field public static final int ERROR_MALFORMED_SERVICE_ANNOUNCEMENT = 404; // 0x194 + field public static final int ERROR_UNKNOWN_DOWNLOAD_REQUEST = 402; // 0x192 + field public static final int ERROR_UNKNOWN_FILE_INFO = 403; // 0x193 + } + + public static class MbmsErrors.GeneralErrors { + field public static final int ERROR_CARRIER_CHANGE_NOT_ALLOWED = 207; // 0xcf + field public static final int ERROR_IN_E911 = 204; // 0xcc + field public static final int ERROR_MIDDLEWARE_NOT_YET_READY = 201; // 0xc9 + field public static final int ERROR_MIDDLEWARE_TEMPORARILY_UNAVAILABLE = 203; // 0xcb + field public static final int ERROR_NOT_CONNECTED_TO_HOME_CARRIER_LTE = 205; // 0xcd + field public static final int ERROR_OUT_OF_MEMORY = 202; // 0xca + field public static final int ERROR_UNABLE_TO_READ_SIM = 206; // 0xce + } + + public static class MbmsErrors.GroupCallErrors { + field public static final int ERROR_DUPLICATE_START_GROUP_CALL = 502; // 0x1f6 + field public static final int ERROR_UNABLE_TO_START_SERVICE = 501; // 0x1f5 + } + + public static class MbmsErrors.InitializationErrors { + field public static final int ERROR_APP_PERMISSIONS_NOT_GRANTED = 102; // 0x66 + field public static final int ERROR_DUPLICATE_INITIALIZE = 101; // 0x65 + field public static final int ERROR_UNABLE_TO_INITIALIZE = 103; // 0x67 + } + + public static class MbmsErrors.StreamingErrors { + field public static final int ERROR_CONCURRENT_SERVICE_LIMIT_REACHED = 301; // 0x12d + field public static final int ERROR_DUPLICATE_START_STREAM = 303; // 0x12f + field public static final int ERROR_UNABLE_TO_START_SERVICE = 302; // 0x12e + } + + public interface MbmsGroupCallSessionCallback { + method public default void onAvailableSaisUpdated(@NonNull java.util.List, @NonNull java.util.List>); + method public default void onError(int, @Nullable String); + method public default void onMiddlewareReady(); + method public default void onServiceInterfaceAvailable(@NonNull String, int); + } + + public class MbmsStreamingSessionCallback { + ctor public MbmsStreamingSessionCallback(); + method public void onError(int, @Nullable String); + method public void onMiddlewareReady(); + method public void onStreamingServicesUpdated(java.util.List); + } + + public class ServiceInfo { + method public java.util.List getLocales(); + method @NonNull public CharSequence getNameForLocale(@NonNull java.util.Locale); + method @NonNull public java.util.Set getNamedContentLocales(); + method public String getServiceClassName(); + method public String getServiceId(); + method public java.util.Date getSessionEndTime(); + method public java.util.Date getSessionStartTime(); + } + + public class StreamingService implements java.lang.AutoCloseable { + method public void close(); + method public android.telephony.mbms.StreamingServiceInfo getInfo(); + method @Nullable public android.net.Uri getPlaybackUri(); + field public static final int BROADCAST_METHOD = 1; // 0x1 + field public static final int REASON_BY_USER_REQUEST = 1; // 0x1 + field public static final int REASON_END_OF_SESSION = 2; // 0x2 + field public static final int REASON_FREQUENCY_CONFLICT = 3; // 0x3 + field public static final int REASON_LEFT_MBMS_BROADCAST_AREA = 6; // 0x6 + field public static final int REASON_NONE = 0; // 0x0 + field public static final int REASON_NOT_CONNECTED_TO_HOMECARRIER_LTE = 5; // 0x5 + field public static final int REASON_OUT_OF_MEMORY = 4; // 0x4 + field public static final int STATE_STALLED = 3; // 0x3 + field public static final int STATE_STARTED = 2; // 0x2 + field public static final int STATE_STOPPED = 1; // 0x1 + field public static final int UNICAST_METHOD = 2; // 0x2 + } + + public class StreamingServiceCallback { + ctor public StreamingServiceCallback(); + method public void onBroadcastSignalStrengthUpdated(int); + method public void onError(int, @Nullable String); + method public void onMediaDescriptionUpdated(); + method public void onStreamMethodUpdated(int); + method public void onStreamStateUpdated(int, int); + field public static final int SIGNAL_STRENGTH_UNAVAILABLE = -1; // 0xffffffff + } + + public final class StreamingServiceInfo extends android.telephony.mbms.ServiceInfo implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.telephony.satellite { + + @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") public final class SatelliteManager { + method @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") @RequiresPermission(anyOf={android.Manifest.permission.READ_BASIC_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public void registerStateChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.satellite.SatelliteStateChangeListener); + method @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") @RequiresPermission(anyOf={android.Manifest.permission.READ_BASIC_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE", android.Manifest.permission.READ_PHONE_STATE, "carrier privileges"}) public void unregisterStateChangeListener(@NonNull android.telephony.satellite.SatelliteStateChangeListener); + } + + @FlaggedApi("com.android.internal.telephony.flags.satellite_state_change_listener") public interface SatelliteStateChangeListener { + method public void onEnabledStateChanged(boolean); + } + +} + +package android.text { + + @Deprecated public class AlteredCharSequence implements java.lang.CharSequence android.text.GetChars { + method @Deprecated public char charAt(int); + method @Deprecated public void getChars(int, int, char[], int); + method @Deprecated public int length(); + method @Deprecated public static android.text.AlteredCharSequence make(CharSequence, char[], int, int); + method @Deprecated public CharSequence subSequence(int, int); + method @Deprecated public String toString(); + } + + @Deprecated public class AndroidCharacter { + ctor @Deprecated public AndroidCharacter(); + method @Deprecated public static void getDirectionalities(char[], byte[], int); + method @Deprecated public static int getEastAsianWidth(char); + method @Deprecated public static void getEastAsianWidths(char[], int, int, byte[]); + method @Deprecated public static char getMirror(char); + method @Deprecated public static boolean mirror(char[], int, int); + field @Deprecated public static final int EAST_ASIAN_WIDTH_AMBIGUOUS = 1; // 0x1 + field @Deprecated public static final int EAST_ASIAN_WIDTH_FULL_WIDTH = 3; // 0x3 + field @Deprecated public static final int EAST_ASIAN_WIDTH_HALF_WIDTH = 2; // 0x2 + field @Deprecated public static final int EAST_ASIAN_WIDTH_NARROW = 4; // 0x4 + field @Deprecated public static final int EAST_ASIAN_WIDTH_NEUTRAL = 0; // 0x0 + field @Deprecated public static final int EAST_ASIAN_WIDTH_WIDE = 5; // 0x5 + } + + public class Annotation implements android.text.ParcelableSpan { + ctor public Annotation(String, String); + ctor public Annotation(android.os.Parcel); + method public int describeContents(); + method public String getKey(); + method public int getSpanTypeId(); + method public String getValue(); + method public void writeToParcel(android.os.Parcel, int); + } + + public class AutoText { + method public static String get(CharSequence, int, int, android.view.View); + method public static int getSize(android.view.View); + } + + public final class BidiFormatter { + method public static android.text.BidiFormatter getInstance(); + method public static android.text.BidiFormatter getInstance(boolean); + method public static android.text.BidiFormatter getInstance(java.util.Locale); + method public boolean getStereoReset(); + method public boolean isRtl(String); + method public boolean isRtl(CharSequence); + method public boolean isRtlContext(); + method @Nullable public String unicodeWrap(@Nullable String, android.text.TextDirectionHeuristic, boolean); + method @Nullable public CharSequence unicodeWrap(@Nullable CharSequence, android.text.TextDirectionHeuristic, boolean); + method public String unicodeWrap(String, android.text.TextDirectionHeuristic); + method public CharSequence unicodeWrap(CharSequence, android.text.TextDirectionHeuristic); + method public String unicodeWrap(String, boolean); + method public CharSequence unicodeWrap(CharSequence, boolean); + method public String unicodeWrap(String); + method public CharSequence unicodeWrap(CharSequence); + } + + public static final class BidiFormatter.Builder { + ctor public BidiFormatter.Builder(); + ctor public BidiFormatter.Builder(boolean); + ctor public BidiFormatter.Builder(java.util.Locale); + method public android.text.BidiFormatter build(); + method public android.text.BidiFormatter.Builder setTextDirectionHeuristic(android.text.TextDirectionHeuristic); + method public android.text.BidiFormatter.Builder stereoReset(boolean); + } + + public class BoringLayout extends android.text.Layout implements android.text.TextUtils.EllipsizeCallback { + ctor public BoringLayout(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean); + ctor public BoringLayout(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean, android.text.TextUtils.TruncateAt, int); + ctor public BoringLayout(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, float, float, @NonNull android.text.BoringLayout.Metrics, boolean, @Nullable android.text.TextUtils.TruncateAt, @IntRange(from=0) int, boolean); + method public void ellipsized(int, int); + method public int getBottomPadding(); + method public int getEllipsisCount(int); + method public int getEllipsisStart(int); + method public boolean getLineContainsTab(int); + method public int getLineCount(); + method public int getLineDescent(int); + method public final android.text.Layout.Directions getLineDirections(int); + method public int getLineStart(int); + method public int getLineTop(int); + method public int getParagraphDirection(int); + method public int getTopPadding(); + method public static android.text.BoringLayout.Metrics isBoring(CharSequence, android.text.TextPaint); + method public static android.text.BoringLayout.Metrics isBoring(CharSequence, android.text.TextPaint, android.text.BoringLayout.Metrics); + method @Nullable public static android.text.BoringLayout.Metrics isBoring(@NonNull CharSequence, @NonNull android.text.TextPaint, @NonNull android.text.TextDirectionHeuristic, boolean, @Nullable android.text.BoringLayout.Metrics); + method public static android.text.BoringLayout make(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean); + method public static android.text.BoringLayout make(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean, android.text.TextUtils.TruncateAt, int); + method @NonNull public static android.text.BoringLayout make(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @NonNull android.text.BoringLayout.Metrics, boolean, @Nullable android.text.TextUtils.TruncateAt, @IntRange(from=0) int, boolean); + method public android.text.BoringLayout replaceOrMake(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean); + method @NonNull public android.text.BoringLayout replaceOrMake(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @NonNull android.text.BoringLayout.Metrics, boolean, @Nullable android.text.TextUtils.TruncateAt, @IntRange(from=0) int, boolean); + method public android.text.BoringLayout replaceOrMake(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, android.text.BoringLayout.Metrics, boolean, android.text.TextUtils.TruncateAt, int); + } + + public static class BoringLayout.Metrics extends android.graphics.Paint.FontMetricsInt { + ctor public BoringLayout.Metrics(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.graphics.RectF getDrawingBoundingBox(); + field public int width; + } + + @Deprecated public abstract class ClipboardManager { + ctor @Deprecated public ClipboardManager(); + method @Deprecated public abstract CharSequence getText(); + method @Deprecated public abstract boolean hasText(); + method @Deprecated public abstract void setText(CharSequence); + } + + public class DynamicLayout extends android.text.Layout { + ctor @Deprecated public DynamicLayout(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @FloatRange(from=0.0) float, float, boolean); + ctor @Deprecated public DynamicLayout(@NonNull CharSequence, @NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @FloatRange(from=0.0) float, float, boolean); + ctor @Deprecated public DynamicLayout(@NonNull CharSequence, @NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int, @NonNull android.text.Layout.Alignment, @FloatRange(from=0.0) float, float, boolean, @Nullable android.text.TextUtils.TruncateAt, @IntRange(from=0) int); + method public int getBottomPadding(); + method public int getEllipsisCount(int); + method public int getEllipsisStart(int); + method public boolean getLineContainsTab(int); + method public int getLineCount(); + method public int getLineDescent(int); + method public final android.text.Layout.Directions getLineDirections(int); + method public int getLineStart(int); + method public int getLineTop(int); + method public int getParagraphDirection(int); + method public int getTopPadding(); + } + + public static final class DynamicLayout.Builder { + method @NonNull public android.text.DynamicLayout build(); + method @NonNull public static android.text.DynamicLayout.Builder obtain(@NonNull CharSequence, @NonNull android.text.TextPaint, @IntRange(from=0) int); + method @NonNull public android.text.DynamicLayout.Builder setAlignment(@NonNull android.text.Layout.Alignment); + method @NonNull public android.text.DynamicLayout.Builder setBreakStrategy(int); + method @NonNull public android.text.DynamicLayout.Builder setDisplayText(@NonNull CharSequence); + method public android.text.DynamicLayout.Builder setEllipsize(@Nullable android.text.TextUtils.TruncateAt); + method @NonNull public android.text.DynamicLayout.Builder setEllipsizedWidth(@IntRange(from=0) int); + method @NonNull public android.text.DynamicLayout.Builder setHyphenationFrequency(int); + method @NonNull public android.text.DynamicLayout.Builder setIncludePad(boolean); + method @NonNull public android.text.DynamicLayout.Builder setJustificationMode(int); + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.text.DynamicLayout.Builder setLineBreakConfig(@NonNull android.graphics.text.LineBreakConfig); + method @NonNull public android.text.DynamicLayout.Builder setLineSpacing(float, @FloatRange(from=0.0) float); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @NonNull public android.text.DynamicLayout.Builder setMinimumFontMetrics(@Nullable android.graphics.Paint.FontMetrics); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.DynamicLayout.Builder setShiftDrawingOffsetForStartOverhang(boolean); + method @NonNull public android.text.DynamicLayout.Builder setTextDirection(@NonNull android.text.TextDirectionHeuristic); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.DynamicLayout.Builder setUseBoundsForWidth(boolean); + method @NonNull public android.text.DynamicLayout.Builder setUseLineSpacingFromFallbacks(boolean); + } + + public interface Editable extends java.lang.CharSequence java.lang.Appendable android.text.GetChars android.text.Spannable { + method public android.text.Editable append(CharSequence); + method public android.text.Editable append(CharSequence, int, int); + method public android.text.Editable append(char); + method public void clear(); + method public void clearSpans(); + method public android.text.Editable delete(int, int); + method public android.text.InputFilter[] getFilters(); + method public android.text.Editable insert(int, CharSequence, int, int); + method public android.text.Editable insert(int, CharSequence); + method public android.text.Editable replace(int, int, CharSequence, int, int); + method public android.text.Editable replace(int, int, CharSequence); + method public void setFilters(android.text.InputFilter[]); + } + + public static class Editable.Factory { + ctor public Editable.Factory(); + method public static android.text.Editable.Factory getInstance(); + method public android.text.Editable newEditable(CharSequence); + } + + public final class EmojiConsistency { + method @NonNull public static java.util.Set getEmojiConsistencySet(); + } + + public interface GetChars extends java.lang.CharSequence { + method public void getChars(int, int, char[], int); + } + + public class GraphemeClusterSegmentFinder extends android.text.SegmentFinder { + ctor public GraphemeClusterSegmentFinder(@NonNull CharSequence, @NonNull android.text.TextPaint); + method public int nextEndBoundary(@IntRange(from=0) int); + method public int nextStartBoundary(@IntRange(from=0) int); + method public int previousEndBoundary(@IntRange(from=0) int); + method public int previousStartBoundary(@IntRange(from=0) int); + } + + public class Highlights { + method @NonNull public android.graphics.Paint getPaint(int); + method @NonNull public int[] getRanges(int); + method public int getSize(); + } + + public static final class Highlights.Builder { + ctor public Highlights.Builder(); + method @NonNull public android.text.Highlights.Builder addRange(@NonNull android.graphics.Paint, int, int); + method @NonNull public android.text.Highlights.Builder addRanges(@NonNull android.graphics.Paint, @NonNull int...); + method @NonNull public android.text.Highlights build(); + } + + public class Html { + method public static String escapeHtml(CharSequence); + method @Deprecated public static android.text.Spanned fromHtml(String); + method public static android.text.Spanned fromHtml(String, int); + method @Deprecated public static android.text.Spanned fromHtml(String, android.text.Html.ImageGetter, android.text.Html.TagHandler); + method public static android.text.Spanned fromHtml(String, int, android.text.Html.ImageGetter, android.text.Html.TagHandler); + method @Deprecated public static String toHtml(android.text.Spanned); + method public static String toHtml(android.text.Spanned, int); + field public static final int FROM_HTML_MODE_COMPACT = 63; // 0x3f + field public static final int FROM_HTML_MODE_LEGACY = 0; // 0x0 + field public static final int FROM_HTML_OPTION_USE_CSS_COLORS = 256; // 0x100 + field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_BLOCKQUOTE = 32; // 0x20 + field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_DIV = 16; // 0x10 + field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_HEADING = 2; // 0x2 + field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_LIST = 8; // 0x8 + field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_LIST_ITEM = 4; // 0x4 + field public static final int FROM_HTML_SEPARATOR_LINE_BREAK_PARAGRAPH = 1; // 0x1 + field public static final int TO_HTML_PARAGRAPH_LINES_CONSECUTIVE = 0; // 0x0 + field public static final int TO_HTML_PARAGRAPH_LINES_INDIVIDUAL = 1; // 0x1 + } + + public static interface Html.ImageGetter { + method public android.graphics.drawable.Drawable getDrawable(String); + } + + public static interface Html.TagHandler { + method public void handleTag(boolean, String, android.text.Editable, org.xml.sax.XMLReader); + } + + public interface InputFilter { + method public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); + } + + public static class InputFilter.AllCaps implements android.text.InputFilter { + ctor public InputFilter.AllCaps(); + ctor public InputFilter.AllCaps(@NonNull java.util.Locale); + method public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); + } + + public static class InputFilter.LengthFilter implements android.text.InputFilter { + ctor public InputFilter.LengthFilter(int); + method public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); + method public int getMax(); + } + + public interface InputType { + field public static final int TYPE_CLASS_DATETIME = 4; // 0x4 + field public static final int TYPE_CLASS_NUMBER = 2; // 0x2 + field public static final int TYPE_CLASS_PHONE = 3; // 0x3 + field public static final int TYPE_CLASS_TEXT = 1; // 0x1 + field public static final int TYPE_DATETIME_VARIATION_DATE = 16; // 0x10 + field public static final int TYPE_DATETIME_VARIATION_NORMAL = 0; // 0x0 + field public static final int TYPE_DATETIME_VARIATION_TIME = 32; // 0x20 + field public static final int TYPE_MASK_CLASS = 15; // 0xf + field public static final int TYPE_MASK_FLAGS = 16773120; // 0xfff000 + field public static final int TYPE_MASK_VARIATION = 4080; // 0xff0 + field public static final int TYPE_NULL = 0; // 0x0 + field public static final int TYPE_NUMBER_FLAG_DECIMAL = 8192; // 0x2000 + field public static final int TYPE_NUMBER_FLAG_SIGNED = 4096; // 0x1000 + field public static final int TYPE_NUMBER_VARIATION_NORMAL = 0; // 0x0 + field public static final int TYPE_NUMBER_VARIATION_PASSWORD = 16; // 0x10 + field public static final int TYPE_TEXT_FLAG_AUTO_COMPLETE = 65536; // 0x10000 + field public static final int TYPE_TEXT_FLAG_AUTO_CORRECT = 32768; // 0x8000 + field public static final int TYPE_TEXT_FLAG_CAP_CHARACTERS = 4096; // 0x1000 + field public static final int TYPE_TEXT_FLAG_CAP_SENTENCES = 16384; // 0x4000 + field public static final int TYPE_TEXT_FLAG_CAP_WORDS = 8192; // 0x2000 + field public static final int TYPE_TEXT_FLAG_ENABLE_TEXT_CONVERSION_SUGGESTIONS = 1048576; // 0x100000 + field public static final int TYPE_TEXT_FLAG_IME_MULTI_LINE = 262144; // 0x40000 + field public static final int TYPE_TEXT_FLAG_MULTI_LINE = 131072; // 0x20000 + field public static final int TYPE_TEXT_FLAG_NO_SUGGESTIONS = 524288; // 0x80000 + field public static final int TYPE_TEXT_VARIATION_EMAIL_ADDRESS = 32; // 0x20 + field public static final int TYPE_TEXT_VARIATION_EMAIL_SUBJECT = 48; // 0x30 + field public static final int TYPE_TEXT_VARIATION_FILTER = 176; // 0xb0 + field public static final int TYPE_TEXT_VARIATION_LONG_MESSAGE = 80; // 0x50 + field public static final int TYPE_TEXT_VARIATION_NORMAL = 0; // 0x0 + field public static final int TYPE_TEXT_VARIATION_PASSWORD = 128; // 0x80 + field public static final int TYPE_TEXT_VARIATION_PERSON_NAME = 96; // 0x60 + field public static final int TYPE_TEXT_VARIATION_PHONETIC = 192; // 0xc0 + field public static final int TYPE_TEXT_VARIATION_POSTAL_ADDRESS = 112; // 0x70 + field public static final int TYPE_TEXT_VARIATION_SHORT_MESSAGE = 64; // 0x40 + field public static final int TYPE_TEXT_VARIATION_URI = 16; // 0x10 + field public static final int TYPE_TEXT_VARIATION_VISIBLE_PASSWORD = 144; // 0x90 + field public static final int TYPE_TEXT_VARIATION_WEB_EDIT_TEXT = 160; // 0xa0 + field public static final int TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS = 208; // 0xd0 + field public static final int TYPE_TEXT_VARIATION_WEB_PASSWORD = 224; // 0xe0 + } + + public abstract class Layout { + ctor protected Layout(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.graphics.RectF computeDrawingBoundingBox(); + method public void draw(android.graphics.Canvas); + method public void draw(android.graphics.Canvas, android.graphics.Path, android.graphics.Paint, int); + method public void draw(@NonNull android.graphics.Canvas, @Nullable java.util.List, @Nullable java.util.List, @Nullable android.graphics.Path, @Nullable android.graphics.Paint, int); + method public void drawBackground(@NonNull android.graphics.Canvas); + method public void drawText(@NonNull android.graphics.Canvas); + method public void fillCharacterBounds(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull float[], @IntRange(from=0) int); + method @NonNull public final android.text.Layout.Alignment getAlignment(); + method public abstract int getBottomPadding(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final int getBreakStrategy(); + method public void getCursorPath(int, android.graphics.Path, CharSequence); + method public static float getDesiredWidth(CharSequence, android.text.TextPaint); + method public static float getDesiredWidth(CharSequence, int, int, android.text.TextPaint); + method public abstract int getEllipsisCount(int); + method public abstract int getEllipsisStart(int); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @Nullable public final android.text.TextUtils.TruncateAt getEllipsize(); + method @IntRange(from=0) public int getEllipsizedWidth(); + method public int getHeight(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final int getHyphenationFrequency(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final int getJustificationMode(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @Nullable public final int[] getLeftIndents(); + method public final int getLineAscent(int); + method public final int getLineBaseline(int); + method public final int getLineBottom(int); + method public int getLineBottom(int, boolean); + method public int getLineBounds(int, android.graphics.Rect); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.graphics.text.LineBreakConfig getLineBreakConfig(); + method public abstract boolean getLineContainsTab(int); + method public abstract int getLineCount(); + method public abstract int getLineDescent(int); + method public abstract android.text.Layout.Directions getLineDirections(int); + method public final int getLineEnd(int); + method public int getLineForOffset(int); + method public int getLineForVertical(int); + method public float getLineLeft(int); + method @FlaggedApi("com.android.text.flags.letter_spacing_justification") @IntRange(from=0) public int getLineLetterSpacingUnitCount(@IntRange(from=0) int, boolean); + method public float getLineMax(int); + method public float getLineRight(int); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final float getLineSpacingAmount(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final float getLineSpacingMultiplier(); + method public abstract int getLineStart(int); + method public abstract int getLineTop(int); + method public int getLineVisibleEnd(int); + method public float getLineWidth(int); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @IntRange(from=1) public final int getMaxLines(); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @Nullable public android.graphics.Paint.FontMetrics getMinimumFontMetrics(); + method public int getOffsetForHorizontal(int, float); + method public int getOffsetToLeftOf(int); + method public int getOffsetToRightOf(int); + method @NonNull public final android.text.TextPaint getPaint(); + method public final android.text.Layout.Alignment getParagraphAlignment(int); + method public abstract int getParagraphDirection(int); + method public final int getParagraphLeft(int); + method public final int getParagraphRight(int); + method public float getPrimaryHorizontal(int); + method @Nullable public int[] getRangeForRect(@NonNull android.graphics.RectF, @NonNull android.text.SegmentFinder, @NonNull android.text.Layout.TextInclusionStrategy); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @Nullable public final int[] getRightIndents(); + method public float getSecondaryHorizontal(int); + method public void getSelectionPath(int, int, android.graphics.Path); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public boolean getShiftDrawingOffsetForStartOverhang(); + method public final float getSpacingAdd(); + method public final float getSpacingMultiplier(); + method @NonNull public final CharSequence getText(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public final android.text.TextDirectionHeuristic getTextDirectionHeuristic(); + method public abstract int getTopPadding(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public boolean getUseBoundsForWidth(); + method @IntRange(from=0) public final int getWidth(); + method public final void increaseWidthTo(int); + method public boolean isFallbackLineSpacingEnabled(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final boolean isFontPaddingIncluded(); + method public boolean isRtlCharAt(int); + method protected final boolean isSpanned(); + field public static final int BREAK_STRATEGY_BALANCED = 2; // 0x2 + field public static final int BREAK_STRATEGY_HIGH_QUALITY = 1; // 0x1 + field public static final int BREAK_STRATEGY_SIMPLE = 0; // 0x0 + field public static final float DEFAULT_LINESPACING_ADDITION = 0.0f; + field public static final float DEFAULT_LINESPACING_MULTIPLIER = 1.0f; + field public static final int DIR_LEFT_TO_RIGHT = 1; // 0x1 + field public static final int DIR_RIGHT_TO_LEFT = -1; // 0xffffffff + field public static final int HYPHENATION_FREQUENCY_FULL = 2; // 0x2 + field public static final int HYPHENATION_FREQUENCY_FULL_FAST = 4; // 0x4 + field public static final int HYPHENATION_FREQUENCY_NONE = 0; // 0x0 + field public static final int HYPHENATION_FREQUENCY_NORMAL = 1; // 0x1 + field public static final int HYPHENATION_FREQUENCY_NORMAL_FAST = 3; // 0x3 + field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_ANY_OVERLAP; + field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_CONTAINS_ALL; + field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_CONTAINS_CENTER; + field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int JUSTIFICATION_MODE_INTER_CHARACTER = 2; // 0x2 + field public static final int JUSTIFICATION_MODE_INTER_WORD = 1; // 0x1 + field public static final int JUSTIFICATION_MODE_NONE = 0; // 0x0 + } + + public enum Layout.Alignment { + enum_constant public static final android.text.Layout.Alignment ALIGN_CENTER; + enum_constant public static final android.text.Layout.Alignment ALIGN_NORMAL; + enum_constant public static final android.text.Layout.Alignment ALIGN_OPPOSITE; + } + + @FlaggedApi("com.android.text.flags.use_bounds_for_width") public static final class Layout.Builder { + ctor public Layout.Builder(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.text.TextPaint, @IntRange(from=0) int); + method @NonNull public android.text.Layout build(); + method @NonNull public android.text.Layout.Builder setAlignment(@NonNull android.text.Layout.Alignment); + method @NonNull public android.text.Layout.Builder setBreakStrategy(int); + method @NonNull public android.text.Layout.Builder setEllipsize(@Nullable android.text.TextUtils.TruncateAt); + method @NonNull public android.text.Layout.Builder setEllipsizedWidth(@IntRange(from=0) int); + method @NonNull public android.text.Layout.Builder setFallbackLineSpacingEnabled(boolean); + method @NonNull public android.text.Layout.Builder setFontPaddingIncluded(boolean); + method @NonNull public android.text.Layout.Builder setHyphenationFrequency(int); + method @NonNull public android.text.Layout.Builder setJustificationMode(int); + method @NonNull public android.text.Layout.Builder setLeftIndents(@Nullable int[]); + method @NonNull public android.text.Layout.Builder setLineBreakConfig(@NonNull android.graphics.text.LineBreakConfig); + method @NonNull public android.text.Layout.Builder setLineSpacingAmount(float); + method @NonNull public android.text.Layout.Builder setLineSpacingMultiplier(@FloatRange(from=0) float); + method @NonNull public android.text.Layout.Builder setMaxLines(@IntRange(from=1) int); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @NonNull public android.text.Layout.Builder setMinimumFontMetrics(@Nullable android.graphics.Paint.FontMetrics); + method @NonNull public android.text.Layout.Builder setRightIndents(@Nullable int[]); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.Layout.Builder setShiftDrawingOffsetForStartOverhang(boolean); + method @NonNull public android.text.Layout.Builder setTextDirectionHeuristic(@NonNull android.text.TextDirectionHeuristic); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.Layout.Builder setUseBoundsForWidth(boolean); + } + + public static class Layout.Directions { + } + + @java.lang.FunctionalInterface public static interface Layout.TextInclusionStrategy { + method public boolean isSegmentInside(@NonNull android.graphics.RectF, @NonNull android.graphics.RectF); + } + + @Deprecated public abstract class LoginFilter implements android.text.InputFilter { + method @Deprecated public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); + method @Deprecated public abstract boolean isAllowed(char); + method @Deprecated public void onInvalidCharacter(char); + method @Deprecated public void onStart(); + method @Deprecated public void onStop(); + } + + @Deprecated public static class LoginFilter.PasswordFilterGMail extends android.text.LoginFilter { + ctor @Deprecated public LoginFilter.PasswordFilterGMail(); + ctor @Deprecated public LoginFilter.PasswordFilterGMail(boolean); + method @Deprecated public boolean isAllowed(char); + } + + @Deprecated public static class LoginFilter.UsernameFilterGMail extends android.text.LoginFilter { + ctor @Deprecated public LoginFilter.UsernameFilterGMail(); + ctor @Deprecated public LoginFilter.UsernameFilterGMail(boolean); + method @Deprecated public boolean isAllowed(char); + } + + @Deprecated public static class LoginFilter.UsernameFilterGeneric extends android.text.LoginFilter { + ctor @Deprecated public LoginFilter.UsernameFilterGeneric(); + ctor @Deprecated public LoginFilter.UsernameFilterGeneric(boolean); + method @Deprecated public boolean isAllowed(char); + } + + public interface NoCopySpan { + } + + public static class NoCopySpan.Concrete implements android.text.NoCopySpan { + ctor public NoCopySpan.Concrete(); + } + + public interface ParcelableSpan extends android.os.Parcelable { + method public int getSpanTypeId(); + } + + public class PrecomputedText implements android.text.Spannable { + method public char charAt(int); + method public static android.text.PrecomputedText create(@NonNull CharSequence, @NonNull android.text.PrecomputedText.Params); + method public void getBounds(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.Rect); + method public void getFontMetricsInt(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.Paint.FontMetricsInt); + method @IntRange(from=0) public int getParagraphCount(); + method @IntRange(from=0) public int getParagraphEnd(@IntRange(from=0) int); + method @IntRange(from=0) public int getParagraphStart(@IntRange(from=0) int); + method @NonNull public android.text.PrecomputedText.Params getParams(); + method public int getSpanEnd(Object); + method public int getSpanFlags(Object); + method public int getSpanStart(Object); + method public T[] getSpans(int, int, Class); + method @FloatRange(from=0) public float getWidth(@IntRange(from=0) int, @IntRange(from=0) int); + method public int length(); + method public int nextSpanTransition(int, int, Class); + method public void removeSpan(Object); + method public void setSpan(Object, int, int, int); + method public CharSequence subSequence(int, int); + method public String toString(); + } + + public static final class PrecomputedText.Params { + method public int getBreakStrategy(); + method public int getHyphenationFrequency(); + method @NonNull public android.graphics.text.LineBreakConfig getLineBreakConfig(); + method @NonNull public android.text.TextDirectionHeuristic getTextDirection(); + method @NonNull public android.text.TextPaint getTextPaint(); + } + + public static class PrecomputedText.Params.Builder { + ctor public PrecomputedText.Params.Builder(@NonNull android.text.TextPaint); + ctor public PrecomputedText.Params.Builder(@NonNull android.text.PrecomputedText.Params); + method @NonNull public android.text.PrecomputedText.Params build(); + method public android.text.PrecomputedText.Params.Builder setBreakStrategy(int); + method public android.text.PrecomputedText.Params.Builder setHyphenationFrequency(int); + method @NonNull public android.text.PrecomputedText.Params.Builder setLineBreakConfig(@NonNull android.graphics.text.LineBreakConfig); + method public android.text.PrecomputedText.Params.Builder setTextDirection(@NonNull android.text.TextDirectionHeuristic); + } + + public abstract class SegmentFinder { + ctor public SegmentFinder(); + method public abstract int nextEndBoundary(@IntRange(from=0) int); + method public abstract int nextStartBoundary(@IntRange(from=0) int); + method public abstract int previousEndBoundary(@IntRange(from=0) int); + method public abstract int previousStartBoundary(@IntRange(from=0) int); + field public static final int DONE = -1; // 0xffffffff + } + + public static class SegmentFinder.PrescribedSegmentFinder extends android.text.SegmentFinder { + ctor public SegmentFinder.PrescribedSegmentFinder(@NonNull int[]); + method public int nextEndBoundary(@IntRange(from=0) int); + method public int nextStartBoundary(@IntRange(from=0) int); + method public int previousEndBoundary(@IntRange(from=0) int); + method public int previousStartBoundary(@IntRange(from=0) int); + } + + public class Selection { + method public static boolean extendDown(android.text.Spannable, android.text.Layout); + method public static boolean extendLeft(android.text.Spannable, android.text.Layout); + method public static boolean extendRight(android.text.Spannable, android.text.Layout); + method public static final void extendSelection(android.text.Spannable, int); + method public static boolean extendToLeftEdge(android.text.Spannable, android.text.Layout); + method public static boolean extendToParagraphEnd(@NonNull android.text.Spannable); + method public static boolean extendToParagraphStart(@NonNull android.text.Spannable); + method public static boolean extendToRightEdge(android.text.Spannable, android.text.Layout); + method public static boolean extendUp(android.text.Spannable, android.text.Layout); + method public static final int getSelectionEnd(CharSequence); + method public static final int getSelectionStart(CharSequence); + method public static boolean moveDown(android.text.Spannable, android.text.Layout); + method public static boolean moveLeft(android.text.Spannable, android.text.Layout); + method public static boolean moveRight(android.text.Spannable, android.text.Layout); + method public static boolean moveToLeftEdge(android.text.Spannable, android.text.Layout); + method public static boolean moveToParagraphEnd(@NonNull android.text.Spannable, @NonNull android.text.Layout); + method public static boolean moveToParagraphStart(@NonNull android.text.Spannable, @NonNull android.text.Layout); + method public static boolean moveToRightEdge(android.text.Spannable, android.text.Layout); + method public static boolean moveUp(android.text.Spannable, android.text.Layout); + method public static final void removeSelection(android.text.Spannable); + method public static final void selectAll(android.text.Spannable); + method public static void setSelection(android.text.Spannable, int, int); + method public static final void setSelection(android.text.Spannable, int); + field public static final Object SELECTION_END; + field public static final Object SELECTION_START; + } + + public interface SpanWatcher extends android.text.NoCopySpan { + method public void onSpanAdded(android.text.Spannable, Object, int, int); + method public void onSpanChanged(android.text.Spannable, Object, int, int, int, int); + method public void onSpanRemoved(android.text.Spannable, Object, int, int); + } + + public interface Spannable extends android.text.Spanned { + method public void removeSpan(Object); + method public void setSpan(Object, int, int, int); + } + + public static class Spannable.Factory { + ctor public Spannable.Factory(); + method public static android.text.Spannable.Factory getInstance(); + method public android.text.Spannable newSpannable(CharSequence); + } + + public class SpannableString implements java.lang.CharSequence android.text.GetChars android.text.Spannable { + ctor public SpannableString(CharSequence); + method public final char charAt(int); + method public final void getChars(int, int, char[], int); + method public int getSpanEnd(Object); + method public int getSpanFlags(Object); + method public int getSpanStart(Object); + method public T[] getSpans(int, int, Class); + method public final int length(); + method public int nextSpanTransition(int, int, Class); + method public void removeSpan(Object); + method public void setSpan(Object, int, int, int); + method public final CharSequence subSequence(int, int); + method public final String toString(); + method public static android.text.SpannableString valueOf(CharSequence); + } + + public class SpannableStringBuilder implements java.lang.Appendable java.lang.CharSequence android.text.Editable android.text.GetChars android.text.Spannable { + ctor public SpannableStringBuilder(); + ctor public SpannableStringBuilder(CharSequence); + ctor public SpannableStringBuilder(CharSequence, int, int); + method public android.text.SpannableStringBuilder append(CharSequence); + method public android.text.SpannableStringBuilder append(CharSequence, Object, int); + method public android.text.SpannableStringBuilder append(CharSequence, int, int); + method public android.text.SpannableStringBuilder append(char); + method public char charAt(int); + method public void clear(); + method public void clearSpans(); + method public android.text.SpannableStringBuilder delete(int, int); + method public void getChars(int, int, char[], int); + method public android.text.InputFilter[] getFilters(); + method public int getSpanEnd(Object); + method public int getSpanFlags(Object); + method public int getSpanStart(Object); + method public T[] getSpans(int, int, @Nullable Class); + method @Deprecated public int getTextRunCursor(int, int, int, int, int, android.graphics.Paint); + method public int getTextWatcherDepth(); + method public android.text.SpannableStringBuilder insert(int, CharSequence, int, int); + method public android.text.SpannableStringBuilder insert(int, CharSequence); + method public int length(); + method public int nextSpanTransition(int, int, Class); + method public void removeSpan(Object); + method public android.text.SpannableStringBuilder replace(int, int, CharSequence); + method public android.text.SpannableStringBuilder replace(int, int, CharSequence, int, int); + method public void setFilters(android.text.InputFilter[]); + method public void setSpan(Object, int, int, int); + method public CharSequence subSequence(int, int); + method public String toString(); + method public static android.text.SpannableStringBuilder valueOf(CharSequence); + } + + public interface Spanned extends java.lang.CharSequence { + method public int getSpanEnd(Object); + method public int getSpanFlags(Object); + method public int getSpanStart(Object); + method public T[] getSpans(int, int, Class); + method public int nextSpanTransition(int, int, Class); + field public static final int SPAN_COMPOSING = 256; // 0x100 + field public static final int SPAN_EXCLUSIVE_EXCLUSIVE = 33; // 0x21 + field public static final int SPAN_EXCLUSIVE_INCLUSIVE = 34; // 0x22 + field public static final int SPAN_INCLUSIVE_EXCLUSIVE = 17; // 0x11 + field public static final int SPAN_INCLUSIVE_INCLUSIVE = 18; // 0x12 + field public static final int SPAN_INTERMEDIATE = 512; // 0x200 + field public static final int SPAN_MARK_MARK = 17; // 0x11 + field public static final int SPAN_MARK_POINT = 18; // 0x12 + field public static final int SPAN_PARAGRAPH = 51; // 0x33 + field public static final int SPAN_POINT_MARK = 33; // 0x21 + field public static final int SPAN_POINT_MARK_MASK = 51; // 0x33 + field public static final int SPAN_POINT_POINT = 34; // 0x22 + field public static final int SPAN_PRIORITY = 16711680; // 0xff0000 + field public static final int SPAN_PRIORITY_SHIFT = 16; // 0x10 + field public static final int SPAN_USER = -16777216; // 0xff000000 + field public static final int SPAN_USER_SHIFT = 24; // 0x18 + } + + public final class SpannedString implements java.lang.CharSequence android.text.GetChars android.text.Spanned { + ctor public SpannedString(CharSequence); + method public final char charAt(int); + method public final void getChars(int, int, char[], int); + method public int getSpanEnd(Object); + method public int getSpanFlags(Object); + method public int getSpanStart(Object); + method public T[] getSpans(int, int, Class); + method public final int length(); + method public int nextSpanTransition(int, int, Class); + method public CharSequence subSequence(int, int); + method public static android.text.SpannedString valueOf(CharSequence); + } + + public class StaticLayout extends android.text.Layout { + ctor @Deprecated public StaticLayout(CharSequence, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, boolean); + ctor @Deprecated public StaticLayout(CharSequence, int, int, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, boolean); + ctor @Deprecated public StaticLayout(CharSequence, int, int, android.text.TextPaint, int, android.text.Layout.Alignment, float, float, boolean, android.text.TextUtils.TruncateAt, int); + method public int getBottomPadding(); + method public int getEllipsisCount(int); + method public int getEllipsisStart(int); + method public boolean getLineContainsTab(int); + method public int getLineCount(); + method public int getLineDescent(int); + method public final android.text.Layout.Directions getLineDirections(int); + method public int getLineStart(int); + method public int getLineTop(int); + method public int getParagraphDirection(int); + method public int getTopPadding(); + } + + public static final class StaticLayout.Builder { + method @NonNull public android.text.StaticLayout build(); + method @NonNull public static android.text.StaticLayout.Builder obtain(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.text.TextPaint, @IntRange(from=0) int); + method @NonNull public android.text.StaticLayout.Builder setAlignment(@NonNull android.text.Layout.Alignment); + method @NonNull public android.text.StaticLayout.Builder setBreakStrategy(int); + method @NonNull public android.text.StaticLayout.Builder setEllipsize(@Nullable android.text.TextUtils.TruncateAt); + method @NonNull public android.text.StaticLayout.Builder setEllipsizedWidth(@IntRange(from=0) int); + method @NonNull public android.text.StaticLayout.Builder setHyphenationFrequency(int); + method @NonNull public android.text.StaticLayout.Builder setIncludePad(boolean); + method @NonNull public android.text.StaticLayout.Builder setIndents(@Nullable int[], @Nullable int[]); + method @NonNull public android.text.StaticLayout.Builder setJustificationMode(int); + method @NonNull public android.text.StaticLayout.Builder setLineBreakConfig(@NonNull android.graphics.text.LineBreakConfig); + method @NonNull public android.text.StaticLayout.Builder setLineSpacing(float, @FloatRange(from=0.0) float); + method @NonNull public android.text.StaticLayout.Builder setMaxLines(@IntRange(from=0) int); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @NonNull public android.text.StaticLayout.Builder setMinimumFontMetrics(@Nullable android.graphics.Paint.FontMetrics); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.StaticLayout.Builder setShiftDrawingOffsetForStartOverhang(boolean); + method public android.text.StaticLayout.Builder setText(CharSequence); + method @NonNull public android.text.StaticLayout.Builder setTextDirection(@NonNull android.text.TextDirectionHeuristic); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") @NonNull public android.text.StaticLayout.Builder setUseBoundsForWidth(boolean); + method @NonNull public android.text.StaticLayout.Builder setUseLineSpacingFromFallbacks(boolean); + } + + public interface TextDirectionHeuristic { + method public boolean isRtl(char[], int, int); + method public boolean isRtl(CharSequence, int, int); + } + + public class TextDirectionHeuristics { + ctor public TextDirectionHeuristics(); + field public static final android.text.TextDirectionHeuristic ANYRTL_LTR; + field public static final android.text.TextDirectionHeuristic FIRSTSTRONG_LTR; + field public static final android.text.TextDirectionHeuristic FIRSTSTRONG_RTL; + field public static final android.text.TextDirectionHeuristic LOCALE; + field public static final android.text.TextDirectionHeuristic LTR; + field public static final android.text.TextDirectionHeuristic RTL; + } + + public class TextPaint extends android.graphics.Paint { + ctor public TextPaint(); + ctor public TextPaint(int); + ctor public TextPaint(android.graphics.Paint); + method public void set(android.text.TextPaint); + field public int baselineShift; + field @ColorInt public int bgColor; + field public float density; + field public int[] drawableState; + field @ColorInt public int linkColor; + field @ColorInt public int underlineColor; + field @Px public float underlineThickness; + } + + public class TextShaper { + method public static void shapeText(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.text.TextDirectionHeuristic, @NonNull android.text.TextPaint, @NonNull android.text.TextShaper.GlyphsConsumer); + } + + public static interface TextShaper.GlyphsConsumer { + method public void accept(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull android.graphics.text.PositionedGlyphs, @NonNull android.text.TextPaint); + } + + public class TextUtils { + method @Deprecated public static CharSequence commaEllipsize(CharSequence, android.text.TextPaint, float, String, String); + method public static CharSequence concat(java.lang.CharSequence...); + method public static void copySpansFrom(android.text.Spanned, int, int, Class, android.text.Spannable, int); + method public static void dumpSpans(CharSequence, android.util.Printer, String); + method public static CharSequence ellipsize(CharSequence, android.text.TextPaint, float, android.text.TextUtils.TruncateAt); + method public static CharSequence ellipsize(CharSequence, android.text.TextPaint, float, android.text.TextUtils.TruncateAt, boolean, @Nullable android.text.TextUtils.EllipsizeCallback); + method public static boolean equals(CharSequence, CharSequence); + method public static CharSequence expandTemplate(CharSequence, java.lang.CharSequence...); + method public static int getCapsMode(CharSequence, int, int); + method public static void getChars(CharSequence, int, int, char[], int); + method public static int getLayoutDirectionFromLocale(java.util.Locale); + method public static int getOffsetAfter(CharSequence, int); + method public static int getOffsetBefore(CharSequence, int); + method @Deprecated public static CharSequence getReverse(CharSequence, int, int); + method public static int getTrimmedLength(CharSequence); + method public static String htmlEncode(String); + method public static int indexOf(CharSequence, char); + method public static int indexOf(CharSequence, char, int); + method public static int indexOf(CharSequence, char, int, int); + method public static int indexOf(CharSequence, CharSequence); + method public static int indexOf(CharSequence, CharSequence, int); + method public static int indexOf(CharSequence, CharSequence, int, int); + method public static boolean isDigitsOnly(CharSequence); + method public static boolean isEmpty(@Nullable CharSequence); + method public static boolean isGraphic(CharSequence); + method @Deprecated public static boolean isGraphic(char); + method public static String join(@NonNull CharSequence, @NonNull Object[]); + method public static String join(@NonNull CharSequence, @NonNull Iterable); + method public static int lastIndexOf(CharSequence, char); + method public static int lastIndexOf(CharSequence, char, int); + method public static int lastIndexOf(CharSequence, char, int, int); + method public static CharSequence listEllipsize(@Nullable android.content.Context, @Nullable java.util.List, @NonNull String, @NonNull android.text.TextPaint, @FloatRange(from=0.0, fromInclusive=false) float, @PluralsRes int); + method @NonNull public static CharSequence makeSafeForPresentation(@NonNull String, @IntRange(from=0) int, @FloatRange(from=0) float, int); + method public static boolean regionMatches(CharSequence, int, CharSequence, int, int); + method public static CharSequence replace(CharSequence, String[], CharSequence[]); + method public static String[] split(String, String); + method public static String[] split(String, java.util.regex.Pattern); + method public static CharSequence stringOrSpannedString(CharSequence); + method public static String substring(CharSequence, int, int); + method public static void writeToParcel(@Nullable CharSequence, @NonNull android.os.Parcel, int); + field public static final int CAP_MODE_CHARACTERS = 4096; // 0x1000 + field public static final int CAP_MODE_SENTENCES = 16384; // 0x4000 + field public static final int CAP_MODE_WORDS = 8192; // 0x2000 + field public static final android.os.Parcelable.Creator CHAR_SEQUENCE_CREATOR; + field public static final int SAFE_STRING_FLAG_FIRST_LINE = 4; // 0x4 + field public static final int SAFE_STRING_FLAG_SINGLE_LINE = 2; // 0x2 + field public static final int SAFE_STRING_FLAG_TRIM = 1; // 0x1 + } + + public static interface TextUtils.EllipsizeCallback { + method public void ellipsized(int, int); + } + + public static class TextUtils.SimpleStringSplitter implements java.util.Iterator android.text.TextUtils.StringSplitter { + ctor public TextUtils.SimpleStringSplitter(char); + method public boolean hasNext(); + method public java.util.Iterator iterator(); + method public String next(); + method public void remove(); + method public void setString(String); + } + + public static interface TextUtils.StringSplitter extends java.lang.Iterable { + method public void setString(String); + } + + public enum TextUtils.TruncateAt { + enum_constant public static final android.text.TextUtils.TruncateAt END; + enum_constant public static final android.text.TextUtils.TruncateAt MARQUEE; + enum_constant public static final android.text.TextUtils.TruncateAt MIDDLE; + enum_constant public static final android.text.TextUtils.TruncateAt START; + } + + public interface TextWatcher extends android.text.NoCopySpan { + method public void afterTextChanged(android.text.Editable); + method public void beforeTextChanged(CharSequence, int, int, int); + method public void onTextChanged(CharSequence, int, int, int); + } + + public class WordSegmentFinder extends android.text.SegmentFinder { + ctor public WordSegmentFinder(@NonNull CharSequence, @NonNull android.icu.util.ULocale); + method public int nextEndBoundary(@IntRange(from=0) int); + method public int nextStartBoundary(@IntRange(from=0) int); + method public int previousEndBoundary(@IntRange(from=0) int); + method public int previousStartBoundary(@IntRange(from=0) int); + } + +} + +package android.text.format { + + public class DateFormat { + ctor public DateFormat(); + method public static CharSequence format(CharSequence, long); + method public static CharSequence format(CharSequence, java.util.Date); + method public static CharSequence format(CharSequence, java.util.Calendar); + method public static String getBestDateTimePattern(java.util.Locale, String); + method public static java.text.DateFormat getDateFormat(android.content.Context); + method public static char[] getDateFormatOrder(android.content.Context); + method public static java.text.DateFormat getLongDateFormat(android.content.Context); + method public static java.text.DateFormat getMediumDateFormat(android.content.Context); + method public static java.text.DateFormat getTimeFormat(android.content.Context); + method public static boolean is24HourFormat(android.content.Context); + } + + public class DateUtils { + ctor public DateUtils(); + method public static String formatDateRange(android.content.Context, long, long, int); + method public static java.util.Formatter formatDateRange(android.content.Context, java.util.Formatter, long, long, int); + method public static java.util.Formatter formatDateRange(android.content.Context, java.util.Formatter, long, long, int, String); + method public static String formatDateTime(android.content.Context, long, int); + method public static String formatElapsedTime(long); + method public static String formatElapsedTime(StringBuilder, long); + method public static final CharSequence formatSameDayTime(long, long, int, int); + method @Deprecated public static String getAMPMString(int); + method @Deprecated public static String getDayOfWeekString(int, int); + method @Deprecated public static String getMonthString(int, int); + method public static CharSequence getRelativeDateTimeString(android.content.Context, long, long, long, int); + method public static CharSequence getRelativeTimeSpanString(long); + method public static CharSequence getRelativeTimeSpanString(long, long, long); + method public static CharSequence getRelativeTimeSpanString(long, long, long, int); + method public static CharSequence getRelativeTimeSpanString(android.content.Context, long, boolean); + method public static CharSequence getRelativeTimeSpanString(android.content.Context, long); + method public static boolean isToday(long); + field @Deprecated public static final String ABBREV_MONTH_FORMAT = "%b"; + field public static final String ABBREV_WEEKDAY_FORMAT = "%a"; + field public static final long DAY_IN_MILLIS = 86400000L; // 0x5265c00L + field @Deprecated public static final int FORMAT_12HOUR = 64; // 0x40 + field @Deprecated public static final int FORMAT_24HOUR = 128; // 0x80 + field public static final int FORMAT_ABBREV_ALL = 524288; // 0x80000 + field public static final int FORMAT_ABBREV_MONTH = 65536; // 0x10000 + field public static final int FORMAT_ABBREV_RELATIVE = 262144; // 0x40000 + field public static final int FORMAT_ABBREV_TIME = 16384; // 0x4000 + field public static final int FORMAT_ABBREV_WEEKDAY = 32768; // 0x8000 + field @Deprecated public static final int FORMAT_CAP_AMPM = 256; // 0x100 + field @Deprecated public static final int FORMAT_CAP_MIDNIGHT = 4096; // 0x1000 + field @Deprecated public static final int FORMAT_CAP_NOON = 1024; // 0x400 + field @Deprecated public static final int FORMAT_CAP_NOON_MIDNIGHT = 5120; // 0x1400 + field public static final int FORMAT_NO_MIDNIGHT = 2048; // 0x800 + field public static final int FORMAT_NO_MONTH_DAY = 32; // 0x20 + field public static final int FORMAT_NO_NOON = 512; // 0x200 + field @Deprecated public static final int FORMAT_NO_NOON_MIDNIGHT = 2560; // 0xa00 + field public static final int FORMAT_NO_YEAR = 8; // 0x8 + field public static final int FORMAT_NUMERIC_DATE = 131072; // 0x20000 + field public static final int FORMAT_SHOW_DATE = 16; // 0x10 + field public static final int FORMAT_SHOW_TIME = 1; // 0x1 + field public static final int FORMAT_SHOW_WEEKDAY = 2; // 0x2 + field public static final int FORMAT_SHOW_YEAR = 4; // 0x4 + field @Deprecated public static final int FORMAT_UTC = 8192; // 0x2000 + field public static final long HOUR_IN_MILLIS = 3600000L; // 0x36ee80L + field @Deprecated public static final String HOUR_MINUTE_24 = "%H:%M"; + field @Deprecated public static final int LENGTH_LONG = 10; // 0xa + field @Deprecated public static final int LENGTH_MEDIUM = 20; // 0x14 + field @Deprecated public static final int LENGTH_SHORT = 30; // 0x1e + field @Deprecated public static final int LENGTH_SHORTER = 40; // 0x28 + field @Deprecated public static final int LENGTH_SHORTEST = 50; // 0x32 + field public static final long MINUTE_IN_MILLIS = 60000L; // 0xea60L + field public static final String MONTH_DAY_FORMAT = "%-d"; + field public static final String MONTH_FORMAT = "%B"; + field public static final String NUMERIC_MONTH_FORMAT = "%m"; + field public static final long SECOND_IN_MILLIS = 1000L; // 0x3e8L + field public static final String WEEKDAY_FORMAT = "%A"; + field public static final long WEEK_IN_MILLIS = 604800000L; // 0x240c8400L + field public static final String YEAR_FORMAT = "%Y"; + field public static final String YEAR_FORMAT_TWO_DIGITS = "%g"; + field @Deprecated public static final long YEAR_IN_MILLIS = 31449600000L; // 0x7528ad000L + field @Deprecated public static final int[] sameMonthTable; + field @Deprecated public static final int[] sameYearTable; + } + + public final class Formatter { + ctor public Formatter(); + method public static String formatFileSize(@Nullable android.content.Context, long); + method @Deprecated public static String formatIpAddress(int); + method public static String formatShortFileSize(@Nullable android.content.Context, long); + } + + @Deprecated public class Time { + ctor @Deprecated public Time(String); + ctor @Deprecated public Time(); + ctor @Deprecated public Time(android.text.format.Time); + method @Deprecated public boolean after(android.text.format.Time); + method @Deprecated public boolean before(android.text.format.Time); + method @Deprecated public void clear(String); + method @Deprecated public static int compare(android.text.format.Time, android.text.format.Time); + method @Deprecated public String format(String); + method @Deprecated public String format2445(); + method @Deprecated public String format3339(boolean); + method @Deprecated public int getActualMaximum(int); + method @Deprecated public static String getCurrentTimezone(); + method @Deprecated public static int getJulianDay(long, long); + method @Deprecated public static int getJulianMondayFromWeeksSinceEpoch(int); + method @Deprecated public int getWeekNumber(); + method @Deprecated public static int getWeeksSinceEpochFromJulianDay(int, int); + method @Deprecated public static boolean isEpoch(android.text.format.Time); + method @Deprecated public long normalize(boolean); + method @Deprecated public boolean parse(String); + method @Deprecated public boolean parse3339(String); + method @Deprecated public void set(long); + method @Deprecated public void set(android.text.format.Time); + method @Deprecated public void set(int, int, int, int, int, int); + method @Deprecated public void set(int, int, int); + method @Deprecated public long setJulianDay(int); + method @Deprecated public void setToNow(); + method @Deprecated public void switchTimezone(String); + method @Deprecated public long toMillis(boolean); + field @Deprecated public static final int EPOCH_JULIAN_DAY = 2440588; // 0x253d8c + field @Deprecated public static final int FRIDAY = 5; // 0x5 + field @Deprecated public static final int HOUR = 3; // 0x3 + field @Deprecated public static final int MINUTE = 2; // 0x2 + field @Deprecated public static final int MONDAY = 1; // 0x1 + field @Deprecated public static final int MONDAY_BEFORE_JULIAN_EPOCH = 2440585; // 0x253d89 + field @Deprecated public static final int MONTH = 5; // 0x5 + field @Deprecated public static final int MONTH_DAY = 4; // 0x4 + field @Deprecated public static final int SATURDAY = 6; // 0x6 + field @Deprecated public static final int SECOND = 1; // 0x1 + field @Deprecated public static final int SUNDAY = 0; // 0x0 + field @Deprecated public static final int THURSDAY = 4; // 0x4 + field @Deprecated public static final String TIMEZONE_UTC = "UTC"; + field @Deprecated public static final int TUESDAY = 2; // 0x2 + field @Deprecated public static final int WEDNESDAY = 3; // 0x3 + field @Deprecated public static final int WEEK_DAY = 7; // 0x7 + field @Deprecated public static final int WEEK_NUM = 9; // 0x9 + field @Deprecated public static final int YEAR = 6; // 0x6 + field @Deprecated public static final int YEAR_DAY = 8; // 0x8 + field @Deprecated public boolean allDay; + field @Deprecated public long gmtoff; + field @Deprecated public int hour; + field @Deprecated public int isDst; + field @Deprecated public int minute; + field @Deprecated public int month; + field @Deprecated public int monthDay; + field @Deprecated public int second; + field @Deprecated public String timezone; + field @Deprecated public int weekDay; + field @Deprecated public int year; + field @Deprecated public int yearDay; + } + +} + +package android.text.method { + + public class ArrowKeyMovementMethod extends android.text.method.BaseMovementMethod implements android.text.method.MovementMethod { + ctor public ArrowKeyMovementMethod(); + method public static android.text.method.MovementMethod getInstance(); + } + + public abstract class BaseKeyListener extends android.text.method.MetaKeyKeyListener implements android.text.method.KeyListener { + ctor public BaseKeyListener(); + method public boolean backspace(android.view.View, android.text.Editable, int, android.view.KeyEvent); + method public boolean forwardDelete(android.view.View, android.text.Editable, int, android.view.KeyEvent); + method public boolean onKeyOther(android.view.View, android.text.Editable, android.view.KeyEvent); + } + + public class BaseMovementMethod implements android.text.method.MovementMethod { + ctor public BaseMovementMethod(); + method protected boolean bottom(android.widget.TextView, android.text.Spannable); + method public boolean canSelectArbitrarily(); + method protected boolean down(android.widget.TextView, android.text.Spannable); + method protected boolean end(android.widget.TextView, android.text.Spannable); + method protected int getMovementMetaState(android.text.Spannable, android.view.KeyEvent); + method protected boolean handleMovementKey(android.widget.TextView, android.text.Spannable, int, int, android.view.KeyEvent); + method protected boolean home(android.widget.TextView, android.text.Spannable); + method public void initialize(android.widget.TextView, android.text.Spannable); + method protected boolean left(android.widget.TextView, android.text.Spannable); + method protected boolean lineEnd(android.widget.TextView, android.text.Spannable); + method protected boolean lineStart(android.widget.TextView, android.text.Spannable); + method public boolean nextParagraph(@NonNull android.widget.TextView, @NonNull android.text.Spannable); + method public boolean onGenericMotionEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); + method public boolean onKeyDown(android.widget.TextView, android.text.Spannable, int, android.view.KeyEvent); + method public boolean onKeyOther(android.widget.TextView, android.text.Spannable, android.view.KeyEvent); + method public boolean onKeyUp(android.widget.TextView, android.text.Spannable, int, android.view.KeyEvent); + method public void onTakeFocus(android.widget.TextView, android.text.Spannable, int); + method public boolean onTouchEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); + method public boolean onTrackballEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); + method protected boolean pageDown(android.widget.TextView, android.text.Spannable); + method protected boolean pageUp(android.widget.TextView, android.text.Spannable); + method public boolean previousParagraph(@NonNull android.widget.TextView, @NonNull android.text.Spannable); + method protected boolean right(android.widget.TextView, android.text.Spannable); + method protected boolean top(android.widget.TextView, android.text.Spannable); + method protected boolean up(android.widget.TextView, android.text.Spannable); + } + + public class CharacterPickerDialog extends android.app.Dialog implements android.widget.AdapterView.OnItemClickListener android.view.View.OnClickListener { + ctor public CharacterPickerDialog(android.content.Context, android.view.View, android.text.Editable, String, boolean); + method public void onClick(android.view.View); + method public void onItemClick(android.widget.AdapterView, android.view.View, int, long); + } + + public class DateKeyListener extends android.text.method.NumberKeyListener { + ctor @Deprecated public DateKeyListener(); + ctor public DateKeyListener(@Nullable java.util.Locale); + method @NonNull protected char[] getAcceptedChars(); + method public int getInputType(); + method @Deprecated @NonNull public static android.text.method.DateKeyListener getInstance(); + method @NonNull public static android.text.method.DateKeyListener getInstance(@Nullable java.util.Locale); + field @Deprecated public static final char[] CHARACTERS; + } + + public class DateTimeKeyListener extends android.text.method.NumberKeyListener { + ctor @Deprecated public DateTimeKeyListener(); + ctor public DateTimeKeyListener(@Nullable java.util.Locale); + method @NonNull protected char[] getAcceptedChars(); + method public int getInputType(); + method @Deprecated @NonNull public static android.text.method.DateTimeKeyListener getInstance(); + method @NonNull public static android.text.method.DateTimeKeyListener getInstance(@Nullable java.util.Locale); + field @Deprecated public static final char[] CHARACTERS; + } + + public class DialerKeyListener extends android.text.method.NumberKeyListener { + ctor public DialerKeyListener(); + method protected char[] getAcceptedChars(); + method public int getInputType(); + method public static android.text.method.DialerKeyListener getInstance(); + field public static final char[] CHARACTERS; + } + + public class DigitsKeyListener extends android.text.method.NumberKeyListener { + ctor @Deprecated public DigitsKeyListener(); + ctor @Deprecated public DigitsKeyListener(boolean, boolean); + ctor public DigitsKeyListener(@Nullable java.util.Locale); + ctor public DigitsKeyListener(@Nullable java.util.Locale, boolean, boolean); + method protected char[] getAcceptedChars(); + method public int getInputType(); + method @Deprecated @NonNull public static android.text.method.DigitsKeyListener getInstance(); + method @Deprecated @NonNull public static android.text.method.DigitsKeyListener getInstance(boolean, boolean); + method @NonNull public static android.text.method.DigitsKeyListener getInstance(@Nullable java.util.Locale); + method @NonNull public static android.text.method.DigitsKeyListener getInstance(@Nullable java.util.Locale, boolean, boolean); + method @NonNull public static android.text.method.DigitsKeyListener getInstance(@NonNull String); + } + + public class HideReturnsTransformationMethod extends android.text.method.ReplacementTransformationMethod { + ctor public HideReturnsTransformationMethod(); + method public static android.text.method.HideReturnsTransformationMethod getInstance(); + method protected char[] getOriginal(); + method protected char[] getReplacement(); + } + + public interface KeyListener { + method public void clearMetaKeyState(android.view.View, android.text.Editable, int); + method public int getInputType(); + method public boolean onKeyDown(android.view.View, android.text.Editable, int, android.view.KeyEvent); + method public boolean onKeyOther(android.view.View, android.text.Editable, android.view.KeyEvent); + method public boolean onKeyUp(android.view.View, android.text.Editable, int, android.view.KeyEvent); + } + + public class LinkMovementMethod extends android.text.method.ScrollingMovementMethod { + ctor public LinkMovementMethod(); + method public static android.text.method.MovementMethod getInstance(); + } + + public abstract class MetaKeyKeyListener { + ctor public MetaKeyKeyListener(); + method public static void adjustMetaAfterKeypress(android.text.Spannable); + method public static long adjustMetaAfterKeypress(long); + method public void clearMetaKeyState(android.view.View, android.text.Editable, int); + method public static void clearMetaKeyState(android.text.Editable, int); + method public long clearMetaKeyState(long, int); + method public static final int getMetaState(CharSequence); + method public static final int getMetaState(CharSequence, android.view.KeyEvent); + method public static final int getMetaState(CharSequence, int); + method public static final int getMetaState(CharSequence, int, android.view.KeyEvent); + method public static final int getMetaState(long); + method public static final int getMetaState(long, int); + method public static long handleKeyDown(long, int, android.view.KeyEvent); + method public static long handleKeyUp(long, int, android.view.KeyEvent); + method public static boolean isMetaTracker(CharSequence, Object); + method public static boolean isSelectingMetaTracker(CharSequence, Object); + method public boolean onKeyDown(android.view.View, android.text.Editable, int, android.view.KeyEvent); + method public boolean onKeyUp(android.view.View, android.text.Editable, int, android.view.KeyEvent); + method protected static void resetLockedMeta(android.text.Spannable); + method public static long resetLockedMeta(long); + method public static void resetMetaState(android.text.Spannable); + field public static final int META_ALT_LOCKED = 512; // 0x200 + field public static final int META_ALT_ON = 2; // 0x2 + field public static final int META_CAP_LOCKED = 256; // 0x100 + field public static final int META_SHIFT_ON = 1; // 0x1 + field public static final int META_SYM_LOCKED = 1024; // 0x400 + field public static final int META_SYM_ON = 4; // 0x4 + } + + public interface MovementMethod { + method public boolean canSelectArbitrarily(); + method public void initialize(android.widget.TextView, android.text.Spannable); + method public boolean onGenericMotionEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); + method public boolean onKeyDown(android.widget.TextView, android.text.Spannable, int, android.view.KeyEvent); + method public boolean onKeyOther(android.widget.TextView, android.text.Spannable, android.view.KeyEvent); + method public boolean onKeyUp(android.widget.TextView, android.text.Spannable, int, android.view.KeyEvent); + method public void onTakeFocus(android.widget.TextView, android.text.Spannable, int); + method public boolean onTouchEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); + method public boolean onTrackballEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); + } + + public class MultiTapKeyListener extends android.text.method.BaseKeyListener implements android.text.SpanWatcher { + ctor public MultiTapKeyListener(android.text.method.TextKeyListener.Capitalize, boolean); + method public int getInputType(); + method public static android.text.method.MultiTapKeyListener getInstance(boolean, android.text.method.TextKeyListener.Capitalize); + method public void onSpanAdded(android.text.Spannable, Object, int, int); + method public void onSpanChanged(android.text.Spannable, Object, int, int, int, int); + method public void onSpanRemoved(android.text.Spannable, Object, int, int); + } + + public abstract class NumberKeyListener extends android.text.method.BaseKeyListener implements android.text.InputFilter { + ctor public NumberKeyListener(); + method public CharSequence filter(CharSequence, int, int, android.text.Spanned, int, int); + method @NonNull protected abstract char[] getAcceptedChars(); + method protected int lookup(android.view.KeyEvent, android.text.Spannable); + method protected static boolean ok(char[], char); + } + + public class PasswordTransformationMethod implements android.text.TextWatcher android.text.method.TransformationMethod { + ctor public PasswordTransformationMethod(); + method public void afterTextChanged(android.text.Editable); + method public void beforeTextChanged(CharSequence, int, int, int); + method public static android.text.method.PasswordTransformationMethod getInstance(); + method public CharSequence getTransformation(CharSequence, android.view.View); + method public void onFocusChanged(android.view.View, CharSequence, boolean, int, android.graphics.Rect); + method public void onTextChanged(CharSequence, int, int, int); + } + + public class QwertyKeyListener extends android.text.method.BaseKeyListener { + ctor public QwertyKeyListener(android.text.method.TextKeyListener.Capitalize, boolean); + method public int getInputType(); + method public static android.text.method.QwertyKeyListener getInstance(boolean, android.text.method.TextKeyListener.Capitalize); + method public static android.text.method.QwertyKeyListener getInstanceForFullKeyboard(); + method public static void markAsReplaced(android.text.Spannable, int, int, String); + } + + public abstract class ReplacementTransformationMethod implements android.text.method.TransformationMethod { + ctor public ReplacementTransformationMethod(); + method protected abstract char[] getOriginal(); + method protected abstract char[] getReplacement(); + method public CharSequence getTransformation(CharSequence, android.view.View); + method public void onFocusChanged(android.view.View, CharSequence, boolean, int, android.graphics.Rect); + } + + public class ScrollingMovementMethod extends android.text.method.BaseMovementMethod implements android.text.method.MovementMethod { + ctor public ScrollingMovementMethod(); + method public static android.text.method.MovementMethod getInstance(); + } + + public class SingleLineTransformationMethod extends android.text.method.ReplacementTransformationMethod { + ctor public SingleLineTransformationMethod(); + method public static android.text.method.SingleLineTransformationMethod getInstance(); + method protected char[] getOriginal(); + method protected char[] getReplacement(); + } + + public class TextKeyListener extends android.text.method.BaseKeyListener implements android.text.SpanWatcher { + ctor public TextKeyListener(android.text.method.TextKeyListener.Capitalize, boolean); + method public static void clear(android.text.Editable); + method public int getInputType(); + method public static android.text.method.TextKeyListener getInstance(boolean, android.text.method.TextKeyListener.Capitalize); + method public static android.text.method.TextKeyListener getInstance(); + method public void onSpanAdded(android.text.Spannable, Object, int, int); + method public void onSpanChanged(android.text.Spannable, Object, int, int, int, int); + method public void onSpanRemoved(android.text.Spannable, Object, int, int); + method public void release(); + method public static boolean shouldCap(android.text.method.TextKeyListener.Capitalize, CharSequence, int); + } + + public enum TextKeyListener.Capitalize { + enum_constant public static final android.text.method.TextKeyListener.Capitalize CHARACTERS; + enum_constant public static final android.text.method.TextKeyListener.Capitalize NONE; + enum_constant public static final android.text.method.TextKeyListener.Capitalize SENTENCES; + enum_constant public static final android.text.method.TextKeyListener.Capitalize WORDS; + } + + public class TimeKeyListener extends android.text.method.NumberKeyListener { + ctor @Deprecated public TimeKeyListener(); + ctor public TimeKeyListener(@Nullable java.util.Locale); + method @NonNull protected char[] getAcceptedChars(); + method public int getInputType(); + method @Deprecated @NonNull public static android.text.method.TimeKeyListener getInstance(); + method @NonNull public static android.text.method.TimeKeyListener getInstance(@Nullable java.util.Locale); + field @Deprecated public static final char[] CHARACTERS; + } + + public class Touch { + method public static int getInitialScrollX(android.widget.TextView, android.text.Spannable); + method public static int getInitialScrollY(android.widget.TextView, android.text.Spannable); + method public static boolean onTouchEvent(android.widget.TextView, android.text.Spannable, android.view.MotionEvent); + method public static void scrollTo(android.widget.TextView, android.text.Layout, int, int); + } + + public interface TransformationMethod { + method public CharSequence getTransformation(CharSequence, android.view.View); + method public void onFocusChanged(android.view.View, CharSequence, boolean, int, android.graphics.Rect); + } + +} + +package android.text.style { + + public class AbsoluteSizeSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { + ctor public AbsoluteSizeSpan(int); + ctor public AbsoluteSizeSpan(int, boolean); + ctor public AbsoluteSizeSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public boolean getDip(); + method public int getSize(); + method public int getSpanTypeId(); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void updateMeasureState(@NonNull android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public interface AlignmentSpan extends android.text.style.ParagraphStyle { + method public android.text.Layout.Alignment getAlignment(); + } + + public static class AlignmentSpan.Standard implements android.text.style.AlignmentSpan android.text.ParcelableSpan { + ctor public AlignmentSpan.Standard(@NonNull android.text.Layout.Alignment); + ctor public AlignmentSpan.Standard(@NonNull android.os.Parcel); + method public int describeContents(); + method public android.text.Layout.Alignment getAlignment(); + method public int getSpanTypeId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public class BackgroundColorSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan android.text.style.UpdateAppearance { + ctor public BackgroundColorSpan(@ColorInt int); + ctor public BackgroundColorSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method @ColorInt public int getBackgroundColor(); + method public int getSpanTypeId(); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public class BulletSpan implements android.text.style.LeadingMarginSpan android.text.ParcelableSpan { + ctor public BulletSpan(); + ctor public BulletSpan(int); + ctor public BulletSpan(int, @ColorInt int); + ctor public BulletSpan(int, @ColorInt int, @IntRange(from=0) int); + ctor public BulletSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public void drawLeadingMargin(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, int, int, int, int, int, @NonNull CharSequence, int, int, boolean, @Nullable android.text.Layout); + method public int getBulletRadius(); + method public int getColor(); + method public int getGapWidth(); + method public int getLeadingMargin(boolean); + method public int getSpanTypeId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final int STANDARD_GAP_WIDTH = 2; // 0x2 + } + + public abstract class CharacterStyle { + ctor public CharacterStyle(); + method public android.text.style.CharacterStyle getUnderlying(); + method public abstract void updateDrawState(android.text.TextPaint); + method public static android.text.style.CharacterStyle wrap(android.text.style.CharacterStyle); + } + + public abstract class ClickableSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance { + ctor public ClickableSpan(); + method public abstract void onClick(@NonNull android.view.View); + method public void updateDrawState(@NonNull android.text.TextPaint); + } + + public class DrawableMarginSpan implements android.text.style.LeadingMarginSpan android.text.style.LineHeightSpan { + ctor public DrawableMarginSpan(@NonNull android.graphics.drawable.Drawable); + ctor public DrawableMarginSpan(@NonNull android.graphics.drawable.Drawable, int); + method public void chooseHeight(@NonNull CharSequence, int, int, int, int, @NonNull android.graphics.Paint.FontMetricsInt); + method public void drawLeadingMargin(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, int, int, int, int, int, @NonNull CharSequence, int, int, boolean, @NonNull android.text.Layout); + method @NonNull public android.graphics.drawable.Drawable getDrawable(); + method public int getLeadingMargin(boolean); + method @Px public int getPadding(); + } + + public abstract class DynamicDrawableSpan extends android.text.style.ReplacementSpan { + ctor public DynamicDrawableSpan(); + ctor protected DynamicDrawableSpan(int); + method public void draw(@NonNull android.graphics.Canvas, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, float, int, int, int, @NonNull android.graphics.Paint); + method public abstract android.graphics.drawable.Drawable getDrawable(); + method public int getSize(@NonNull android.graphics.Paint, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.graphics.Paint.FontMetricsInt); + method public int getVerticalAlignment(); + field public static final int ALIGN_BASELINE = 1; // 0x1 + field public static final int ALIGN_BOTTOM = 0; // 0x0 + field public static final int ALIGN_CENTER = 2; // 0x2 + field protected final int mVerticalAlignment; + } + + public class EasyEditSpan implements android.text.ParcelableSpan { + ctor public EasyEditSpan(); + ctor public EasyEditSpan(android.app.PendingIntent); + ctor public EasyEditSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public int getSpanTypeId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final String EXTRA_TEXT_CHANGED_TYPE = "android.text.style.EXTRA_TEXT_CHANGED_TYPE"; + field public static final int TEXT_DELETED = 1; // 0x1 + field public static final int TEXT_MODIFIED = 2; // 0x2 + } + + public class ForegroundColorSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan android.text.style.UpdateAppearance { + ctor public ForegroundColorSpan(@ColorInt int); + ctor public ForegroundColorSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method @ColorInt public int getForegroundColor(); + method public int getSpanTypeId(); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public class IconMarginSpan implements android.text.style.LeadingMarginSpan android.text.style.LineHeightSpan { + ctor public IconMarginSpan(@NonNull android.graphics.Bitmap); + ctor public IconMarginSpan(@NonNull android.graphics.Bitmap, @IntRange(from=0) int); + method public void chooseHeight(CharSequence, int, int, int, int, android.graphics.Paint.FontMetricsInt); + method public void drawLeadingMargin(android.graphics.Canvas, android.graphics.Paint, int, int, int, int, int, CharSequence, int, int, boolean, android.text.Layout); + method @NonNull public android.graphics.Bitmap getBitmap(); + method public int getLeadingMargin(boolean); + method @Px public int getPadding(); + } + + public class ImageSpan extends android.text.style.DynamicDrawableSpan { + ctor @Deprecated public ImageSpan(@NonNull android.graphics.Bitmap); + ctor @Deprecated public ImageSpan(@NonNull android.graphics.Bitmap, int); + ctor public ImageSpan(@NonNull android.content.Context, @NonNull android.graphics.Bitmap); + ctor public ImageSpan(@NonNull android.content.Context, @NonNull android.graphics.Bitmap, int); + ctor public ImageSpan(@NonNull android.graphics.drawable.Drawable); + ctor public ImageSpan(@NonNull android.graphics.drawable.Drawable, int); + ctor public ImageSpan(@NonNull android.graphics.drawable.Drawable, @NonNull String); + ctor public ImageSpan(@NonNull android.graphics.drawable.Drawable, @NonNull String, int); + ctor public ImageSpan(@NonNull android.content.Context, @NonNull android.net.Uri); + ctor public ImageSpan(@NonNull android.content.Context, @NonNull android.net.Uri, int); + ctor public ImageSpan(@NonNull android.content.Context, @DrawableRes int); + ctor public ImageSpan(@NonNull android.content.Context, @DrawableRes int, int); + method public android.graphics.drawable.Drawable getDrawable(); + method @Nullable public String getSource(); + } + + public interface LeadingMarginSpan extends android.text.style.ParagraphStyle { + method public void drawLeadingMargin(android.graphics.Canvas, android.graphics.Paint, int, int, int, int, int, CharSequence, int, int, boolean, android.text.Layout); + method public int getLeadingMargin(boolean); + } + + public static interface LeadingMarginSpan.LeadingMarginSpan2 extends android.text.style.LeadingMarginSpan android.text.style.WrapTogetherSpan { + method public int getLeadingMarginLineCount(); + } + + public static class LeadingMarginSpan.Standard implements android.text.style.LeadingMarginSpan android.text.ParcelableSpan { + ctor public LeadingMarginSpan.Standard(int, int); + ctor public LeadingMarginSpan.Standard(int); + ctor public LeadingMarginSpan.Standard(android.os.Parcel); + method public int describeContents(); + method public void drawLeadingMargin(android.graphics.Canvas, android.graphics.Paint, int, int, int, int, int, CharSequence, int, int, boolean, android.text.Layout); + method public int getLeadingMargin(boolean); + method public int getSpanTypeId(); + method public void writeToParcel(android.os.Parcel, int); + } + + public interface LineBackgroundSpan extends android.text.style.ParagraphStyle { + method public void drawBackground(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, @Px int, @Px int, @Px int, @Px int, @Px int, @NonNull CharSequence, int, int, int); + } + + public static class LineBackgroundSpan.Standard implements android.text.style.LineBackgroundSpan android.text.ParcelableSpan { + ctor public LineBackgroundSpan.Standard(@ColorInt int); + ctor public LineBackgroundSpan.Standard(@NonNull android.os.Parcel); + method public int describeContents(); + method public void drawBackground(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, @Px int, @Px int, @Px int, @Px int, @Px int, @NonNull CharSequence, int, int, int); + method @ColorInt public final int getColor(); + method public int getSpanTypeId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public final class LineBreakConfigSpan implements android.text.ParcelableSpan { + ctor @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") public LineBreakConfigSpan(@NonNull android.graphics.text.LineBreakConfig); + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public static android.text.style.LineBreakConfigSpan createNoBreakSpan(); + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public static android.text.style.LineBreakConfigSpan createNoHyphenationSpan(); + method public int describeContents(); + method @FlaggedApi("com.android.text.flags.no_break_no_hyphenation_span") @NonNull public android.graphics.text.LineBreakConfig getLineBreakConfig(); + method public int getSpanTypeId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface LineHeightSpan extends android.text.style.ParagraphStyle android.text.style.WrapTogetherSpan { + method public void chooseHeight(CharSequence, int, int, int, int, android.graphics.Paint.FontMetricsInt); + } + + public static class LineHeightSpan.Standard implements android.text.style.LineHeightSpan android.text.ParcelableSpan { + ctor public LineHeightSpan.Standard(@IntRange(from=1) @Px int); + ctor public LineHeightSpan.Standard(@NonNull android.os.Parcel); + method public void chooseHeight(@NonNull CharSequence, int, int, int, int, @NonNull android.graphics.Paint.FontMetricsInt); + method public int describeContents(); + method @Px public int getHeight(); + method public int getSpanTypeId(); + method public void writeToParcel(android.os.Parcel, int); + } + + public static interface LineHeightSpan.WithDensity extends android.text.style.LineHeightSpan { + method public void chooseHeight(CharSequence, int, int, int, int, android.graphics.Paint.FontMetricsInt, android.text.TextPaint); + } + + public class LocaleSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { + ctor public LocaleSpan(@Nullable java.util.Locale); + ctor public LocaleSpan(@NonNull android.os.LocaleList); + ctor public LocaleSpan(android.os.Parcel); + method public int describeContents(); + method @Nullable public java.util.Locale getLocale(); + method @NonNull public android.os.LocaleList getLocales(); + method public int getSpanTypeId(); + method public void updateDrawState(android.text.TextPaint); + method public void updateMeasureState(android.text.TextPaint); + method public void writeToParcel(android.os.Parcel, int); + } + + public class MaskFilterSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateAppearance { + ctor public MaskFilterSpan(android.graphics.MaskFilter); + method public android.graphics.MaskFilter getMaskFilter(); + method public void updateDrawState(android.text.TextPaint); + } + + public abstract class MetricAffectingSpan extends android.text.style.CharacterStyle implements android.text.style.UpdateLayout { + ctor public MetricAffectingSpan(); + method public android.text.style.MetricAffectingSpan getUnderlying(); + method public abstract void updateMeasureState(@NonNull android.text.TextPaint); + } + + @FlaggedApi("android.view.inputmethod.writing_tools") public final class NoWritingToolsSpan implements android.text.ParcelableSpan { + ctor public NoWritingToolsSpan(); + method public int describeContents(); + method public int getSpanTypeId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface ParagraphStyle { + } + + public class QuoteSpan implements android.text.style.LeadingMarginSpan android.text.ParcelableSpan { + ctor public QuoteSpan(); + ctor public QuoteSpan(@ColorInt int); + ctor public QuoteSpan(@ColorInt int, @IntRange(from=0) int, @IntRange(from=0) int); + ctor public QuoteSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public void drawLeadingMargin(@NonNull android.graphics.Canvas, @NonNull android.graphics.Paint, int, int, int, int, int, @NonNull CharSequence, int, int, boolean, @NonNull android.text.Layout); + method @ColorInt public int getColor(); + method public int getGapWidth(); + method public int getLeadingMargin(boolean); + method public int getSpanTypeId(); + method public int getStripeWidth(); + method public void writeToParcel(android.os.Parcel, int); + field @ColorInt public static final int STANDARD_COLOR = -16776961; // 0xff0000ff + field public static final int STANDARD_GAP_WIDTH_PX = 2; // 0x2 + field public static final int STANDARD_STRIPE_WIDTH_PX = 2; // 0x2 + } + + public class RelativeSizeSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { + ctor public RelativeSizeSpan(@FloatRange(from=0) float); + ctor public RelativeSizeSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public float getSizeChange(); + method public int getSpanTypeId(); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void updateMeasureState(@NonNull android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public abstract class ReplacementSpan extends android.text.style.MetricAffectingSpan { + ctor public ReplacementSpan(); + method public abstract void draw(@NonNull android.graphics.Canvas, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, float, int, int, int, @NonNull android.graphics.Paint); + method @Nullable public CharSequence getContentDescription(); + method public abstract int getSize(@NonNull android.graphics.Paint, CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.graphics.Paint.FontMetricsInt); + method public void setContentDescription(@Nullable CharSequence); + method public void updateDrawState(android.text.TextPaint); + method public void updateMeasureState(android.text.TextPaint); + } + + public class ScaleXSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { + ctor public ScaleXSpan(@FloatRange(from=0) float); + ctor public ScaleXSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public float getScaleX(); + method public int getSpanTypeId(); + method public void updateDrawState(android.text.TextPaint); + method public void updateMeasureState(android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public class StrikethroughSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan android.text.style.UpdateAppearance { + ctor public StrikethroughSpan(); + ctor public StrikethroughSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public int getSpanTypeId(); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public class StyleSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { + ctor public StyleSpan(int); + ctor public StyleSpan(int, int); + ctor public StyleSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public int getFontWeightAdjustment(); + method public int getSpanTypeId(); + method public int getStyle(); + method public void updateDrawState(android.text.TextPaint); + method public void updateMeasureState(android.text.TextPaint); + method public void writeToParcel(android.os.Parcel, int); + } + + public class SubscriptSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { + ctor public SubscriptSpan(); + ctor public SubscriptSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public int getSpanTypeId(); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void updateMeasureState(@NonNull android.text.TextPaint); + method public void writeToParcel(android.os.Parcel, int); + } + + public final class SuggestionRangeSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan { + ctor public SuggestionRangeSpan(); + method public int describeContents(); + method public int getBackgroundColor(); + method public int getSpanTypeId(); + method public void setBackgroundColor(int); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class SuggestionSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan { + ctor public SuggestionSpan(android.content.Context, String[], int); + ctor public SuggestionSpan(java.util.Locale, String[], int); + ctor public SuggestionSpan(android.content.Context, java.util.Locale, String[], int, Class); + ctor public SuggestionSpan(android.os.Parcel); + method public int describeContents(); + method public int getFlags(); + method @Deprecated @NonNull public String getLocale(); + method @Nullable public java.util.Locale getLocaleObject(); + method public int getSpanTypeId(); + method public String[] getSuggestions(); + method @ColorInt public int getUnderlineColor(); + method public void setFlags(int); + method public void updateDrawState(android.text.TextPaint); + method public void writeToParcel(android.os.Parcel, int); + field @Deprecated public static final String ACTION_SUGGESTION_PICKED = "android.text.style.SUGGESTION_PICKED"; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_AUTO_CORRECTION = 4; // 0x4 + field public static final int FLAG_EASY_CORRECT = 1; // 0x1 + field public static final int FLAG_GRAMMAR_ERROR = 8; // 0x8 + field public static final int FLAG_MISSPELLED = 2; // 0x2 + field public static final int SUGGESTIONS_MAX_SIZE = 5; // 0x5 + field @Deprecated public static final String SUGGESTION_SPAN_PICKED_AFTER = "after"; + field @Deprecated public static final String SUGGESTION_SPAN_PICKED_BEFORE = "before"; + field @Deprecated public static final String SUGGESTION_SPAN_PICKED_HASHCODE = "hashcode"; + } + + public class SuperscriptSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { + ctor public SuperscriptSpan(); + ctor public SuperscriptSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public int getSpanTypeId(); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void updateMeasureState(@NonNull android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public interface TabStopSpan extends android.text.style.ParagraphStyle { + method public int getTabStop(); + } + + public static class TabStopSpan.Standard implements android.text.style.TabStopSpan { + ctor public TabStopSpan.Standard(@IntRange(from=0) int); + method public int getTabStop(); + } + + public class TextAppearanceSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { + ctor public TextAppearanceSpan(android.content.Context, int); + ctor public TextAppearanceSpan(android.content.Context, int, int); + ctor public TextAppearanceSpan(String, int, int, android.content.res.ColorStateList, android.content.res.ColorStateList); + ctor public TextAppearanceSpan(android.os.Parcel); + method public int describeContents(); + method public String getFamily(); + method @Nullable public String getFontFeatureSettings(); + method @Nullable public String getFontVariationSettings(); + method public float getLetterSpacing(); + method public android.content.res.ColorStateList getLinkTextColor(); + method public int getShadowColor(); + method public float getShadowDx(); + method public float getShadowDy(); + method public float getShadowRadius(); + method public int getSpanTypeId(); + method public android.content.res.ColorStateList getTextColor(); + method public int getTextFontWeight(); + method @Nullable public android.os.LocaleList getTextLocales(); + method public int getTextSize(); + method public int getTextStyle(); + method @Nullable public android.graphics.Typeface getTypeface(); + method public boolean isElegantTextHeight(); + method public void updateDrawState(android.text.TextPaint); + method public void updateMeasureState(android.text.TextPaint); + method public void writeToParcel(android.os.Parcel, int); + } + + public class TtsSpan implements android.text.ParcelableSpan { + ctor public TtsSpan(String, android.os.PersistableBundle); + ctor public TtsSpan(android.os.Parcel); + method public int describeContents(); + method public android.os.PersistableBundle getArgs(); + method public int getSpanTypeId(); + method public String getType(); + method public void writeToParcel(android.os.Parcel, int); + field public static final String ANIMACY_ANIMATE = "android.animate"; + field public static final String ANIMACY_INANIMATE = "android.inanimate"; + field public static final String ARG_ANIMACY = "android.arg.animacy"; + field public static final String ARG_CASE = "android.arg.case"; + field public static final String ARG_COUNTRY_CODE = "android.arg.country_code"; + field public static final String ARG_CURRENCY = "android.arg.money"; + field public static final String ARG_DAY = "android.arg.day"; + field public static final String ARG_DENOMINATOR = "android.arg.denominator"; + field public static final String ARG_DIGITS = "android.arg.digits"; + field public static final String ARG_DOMAIN = "android.arg.domain"; + field public static final String ARG_EXTENSION = "android.arg.extension"; + field public static final String ARG_FRACTIONAL_PART = "android.arg.fractional_part"; + field public static final String ARG_FRAGMENT_ID = "android.arg.fragment_id"; + field public static final String ARG_GENDER = "android.arg.gender"; + field public static final String ARG_HOURS = "android.arg.hours"; + field public static final String ARG_INTEGER_PART = "android.arg.integer_part"; + field public static final String ARG_MINUTES = "android.arg.minutes"; + field public static final String ARG_MONTH = "android.arg.month"; + field public static final String ARG_MULTIPLICITY = "android.arg.multiplicity"; + field public static final String ARG_NUMBER = "android.arg.number"; + field public static final String ARG_NUMBER_PARTS = "android.arg.number_parts"; + field public static final String ARG_NUMERATOR = "android.arg.numerator"; + field public static final String ARG_PASSWORD = "android.arg.password"; + field public static final String ARG_PATH = "android.arg.path"; + field public static final String ARG_PORT = "android.arg.port"; + field public static final String ARG_PROTOCOL = "android.arg.protocol"; + field public static final String ARG_QUANTITY = "android.arg.quantity"; + field public static final String ARG_QUERY_STRING = "android.arg.query_string"; + field @FlaggedApi("com.android.text.flags.tts_span_duration") public static final String ARG_SECONDS = "android.arg.seconds"; + field public static final String ARG_TEXT = "android.arg.text"; + field public static final String ARG_UNIT = "android.arg.unit"; + field public static final String ARG_USERNAME = "android.arg.username"; + field public static final String ARG_VERBATIM = "android.arg.verbatim"; + field public static final String ARG_WEEKDAY = "android.arg.weekday"; + field public static final String ARG_YEAR = "android.arg.year"; + field public static final String CASE_ABLATIVE = "android.ablative"; + field public static final String CASE_ACCUSATIVE = "android.accusative"; + field public static final String CASE_DATIVE = "android.dative"; + field public static final String CASE_GENITIVE = "android.genitive"; + field public static final String CASE_INSTRUMENTAL = "android.instrumental"; + field public static final String CASE_LOCATIVE = "android.locative"; + field public static final String CASE_NOMINATIVE = "android.nominative"; + field public static final String CASE_VOCATIVE = "android.vocative"; + field public static final String GENDER_FEMALE = "android.female"; + field public static final String GENDER_MALE = "android.male"; + field public static final String GENDER_NEUTRAL = "android.neutral"; + field public static final int MONTH_APRIL = 3; // 0x3 + field public static final int MONTH_AUGUST = 7; // 0x7 + field public static final int MONTH_DECEMBER = 11; // 0xb + field public static final int MONTH_FEBRUARY = 1; // 0x1 + field public static final int MONTH_JANUARY = 0; // 0x0 + field public static final int MONTH_JULY = 6; // 0x6 + field public static final int MONTH_JUNE = 5; // 0x5 + field public static final int MONTH_MARCH = 2; // 0x2 + field public static final int MONTH_MAY = 4; // 0x4 + field public static final int MONTH_NOVEMBER = 10; // 0xa + field public static final int MONTH_OCTOBER = 9; // 0x9 + field public static final int MONTH_SEPTEMBER = 8; // 0x8 + field public static final String MULTIPLICITY_DUAL = "android.dual"; + field public static final String MULTIPLICITY_PLURAL = "android.plural"; + field public static final String MULTIPLICITY_SINGLE = "android.single"; + field public static final String TYPE_CARDINAL = "android.type.cardinal"; + field public static final String TYPE_DATE = "android.type.date"; + field public static final String TYPE_DECIMAL = "android.type.decimal"; + field public static final String TYPE_DIGITS = "android.type.digits"; + field @FlaggedApi("com.android.text.flags.tts_span_duration") public static final String TYPE_DURATION = "android.type.duration"; + field public static final String TYPE_ELECTRONIC = "android.type.electronic"; + field public static final String TYPE_FRACTION = "android.type.fraction"; + field public static final String TYPE_MEASURE = "android.type.measure"; + field public static final String TYPE_MONEY = "android.type.money"; + field public static final String TYPE_ORDINAL = "android.type.ordinal"; + field public static final String TYPE_TELEPHONE = "android.type.telephone"; + field public static final String TYPE_TEXT = "android.type.text"; + field public static final String TYPE_TIME = "android.type.time"; + field public static final String TYPE_VERBATIM = "android.type.verbatim"; + field public static final int WEEKDAY_FRIDAY = 6; // 0x6 + field public static final int WEEKDAY_MONDAY = 2; // 0x2 + field public static final int WEEKDAY_SATURDAY = 7; // 0x7 + field public static final int WEEKDAY_SUNDAY = 1; // 0x1 + field public static final int WEEKDAY_THURSDAY = 5; // 0x5 + field public static final int WEEKDAY_TUESDAY = 3; // 0x3 + field public static final int WEEKDAY_WEDNESDAY = 4; // 0x4 + } + + public static class TtsSpan.Builder> { + ctor public TtsSpan.Builder(String); + method public android.text.style.TtsSpan build(); + method public C setIntArgument(String, int); + method public C setLongArgument(String, long); + method public C setStringArgument(String, String); + } + + public static class TtsSpan.CardinalBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.CardinalBuilder(); + ctor public TtsSpan.CardinalBuilder(long); + ctor public TtsSpan.CardinalBuilder(String); + method public android.text.style.TtsSpan.CardinalBuilder setNumber(long); + method public android.text.style.TtsSpan.CardinalBuilder setNumber(String); + } + + public static class TtsSpan.DateBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.DateBuilder(); + ctor public TtsSpan.DateBuilder(Integer, Integer, Integer, Integer); + method public android.text.style.TtsSpan.DateBuilder setDay(int); + method public android.text.style.TtsSpan.DateBuilder setMonth(int); + method public android.text.style.TtsSpan.DateBuilder setWeekday(int); + method public android.text.style.TtsSpan.DateBuilder setYear(int); + } + + public static class TtsSpan.DecimalBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.DecimalBuilder(); + ctor public TtsSpan.DecimalBuilder(double, int, int); + ctor public TtsSpan.DecimalBuilder(String, String); + method public android.text.style.TtsSpan.DecimalBuilder setArgumentsFromDouble(double, int, int); + method public android.text.style.TtsSpan.DecimalBuilder setFractionalPart(String); + method public android.text.style.TtsSpan.DecimalBuilder setIntegerPart(long); + method public android.text.style.TtsSpan.DecimalBuilder setIntegerPart(String); + } + + public static class TtsSpan.DigitsBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.DigitsBuilder(); + ctor public TtsSpan.DigitsBuilder(String); + method public android.text.style.TtsSpan.DigitsBuilder setDigits(String); + } + + @FlaggedApi("com.android.text.flags.tts_span_duration") public static class TtsSpan.DurationBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor @FlaggedApi("com.android.text.flags.tts_span_duration") public TtsSpan.DurationBuilder(); + method @FlaggedApi("com.android.text.flags.tts_span_duration") @NonNull public android.text.style.TtsSpan.DurationBuilder setHours(int); + method @FlaggedApi("com.android.text.flags.tts_span_duration") @NonNull public android.text.style.TtsSpan.DurationBuilder setMinutes(int); + method @FlaggedApi("com.android.text.flags.tts_span_duration") @NonNull public android.text.style.TtsSpan.DurationBuilder setSeconds(int); + } + + public static class TtsSpan.ElectronicBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.ElectronicBuilder(); + method public android.text.style.TtsSpan.ElectronicBuilder setDomain(String); + method public android.text.style.TtsSpan.ElectronicBuilder setEmailArguments(String, String); + method public android.text.style.TtsSpan.ElectronicBuilder setFragmentId(String); + method public android.text.style.TtsSpan.ElectronicBuilder setPassword(String); + method public android.text.style.TtsSpan.ElectronicBuilder setPath(String); + method public android.text.style.TtsSpan.ElectronicBuilder setPort(int); + method public android.text.style.TtsSpan.ElectronicBuilder setProtocol(String); + method public android.text.style.TtsSpan.ElectronicBuilder setQueryString(String); + method public android.text.style.TtsSpan.ElectronicBuilder setUsername(String); + } + + public static class TtsSpan.FractionBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.FractionBuilder(); + ctor public TtsSpan.FractionBuilder(long, long, long); + method public android.text.style.TtsSpan.FractionBuilder setDenominator(long); + method public android.text.style.TtsSpan.FractionBuilder setDenominator(String); + method public android.text.style.TtsSpan.FractionBuilder setIntegerPart(long); + method public android.text.style.TtsSpan.FractionBuilder setIntegerPart(String); + method public android.text.style.TtsSpan.FractionBuilder setNumerator(long); + method public android.text.style.TtsSpan.FractionBuilder setNumerator(String); + } + + public static class TtsSpan.MeasureBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.MeasureBuilder(); + method public android.text.style.TtsSpan.MeasureBuilder setDenominator(long); + method public android.text.style.TtsSpan.MeasureBuilder setDenominator(String); + method public android.text.style.TtsSpan.MeasureBuilder setFractionalPart(String); + method public android.text.style.TtsSpan.MeasureBuilder setIntegerPart(long); + method public android.text.style.TtsSpan.MeasureBuilder setIntegerPart(String); + method public android.text.style.TtsSpan.MeasureBuilder setNumber(long); + method public android.text.style.TtsSpan.MeasureBuilder setNumber(String); + method public android.text.style.TtsSpan.MeasureBuilder setNumerator(long); + method public android.text.style.TtsSpan.MeasureBuilder setNumerator(String); + method public android.text.style.TtsSpan.MeasureBuilder setUnit(String); + } + + public static class TtsSpan.MoneyBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.MoneyBuilder(); + method public android.text.style.TtsSpan.MoneyBuilder setCurrency(String); + method public android.text.style.TtsSpan.MoneyBuilder setFractionalPart(String); + method public android.text.style.TtsSpan.MoneyBuilder setIntegerPart(long); + method public android.text.style.TtsSpan.MoneyBuilder setIntegerPart(String); + method public android.text.style.TtsSpan.MoneyBuilder setQuantity(String); + } + + public static class TtsSpan.OrdinalBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.OrdinalBuilder(); + ctor public TtsSpan.OrdinalBuilder(long); + ctor public TtsSpan.OrdinalBuilder(String); + method public android.text.style.TtsSpan.OrdinalBuilder setNumber(long); + method public android.text.style.TtsSpan.OrdinalBuilder setNumber(String); + } + + public static class TtsSpan.SemioticClassBuilder> extends android.text.style.TtsSpan.Builder { + ctor public TtsSpan.SemioticClassBuilder(String); + method public C setAnimacy(String); + method public C setCase(String); + method public C setGender(String); + method public C setMultiplicity(String); + } + + public static class TtsSpan.TelephoneBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.TelephoneBuilder(); + ctor public TtsSpan.TelephoneBuilder(String); + method public android.text.style.TtsSpan.TelephoneBuilder setCountryCode(String); + method public android.text.style.TtsSpan.TelephoneBuilder setExtension(String); + method public android.text.style.TtsSpan.TelephoneBuilder setNumberParts(String); + } + + public static class TtsSpan.TextBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.TextBuilder(); + ctor public TtsSpan.TextBuilder(String); + method public android.text.style.TtsSpan.TextBuilder setText(String); + } + + public static class TtsSpan.TimeBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.TimeBuilder(); + ctor public TtsSpan.TimeBuilder(int, int); + method public android.text.style.TtsSpan.TimeBuilder setHours(@IntRange(from=0, to=24) int); + method public android.text.style.TtsSpan.TimeBuilder setMinutes(@IntRange(from=0, to=59) int); + method @FlaggedApi("com.android.text.flags.tts_span_duration") @NonNull public android.text.style.TtsSpan.TimeBuilder setSeconds(@IntRange(from=0, to=59) int); + } + + public static class TtsSpan.VerbatimBuilder extends android.text.style.TtsSpan.SemioticClassBuilder { + ctor public TtsSpan.VerbatimBuilder(); + ctor public TtsSpan.VerbatimBuilder(String); + method public android.text.style.TtsSpan.VerbatimBuilder setVerbatim(String); + } + + public class TypefaceSpan extends android.text.style.MetricAffectingSpan implements android.text.ParcelableSpan { + ctor public TypefaceSpan(@Nullable String); + ctor public TypefaceSpan(@NonNull android.graphics.Typeface); + ctor public TypefaceSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method @Nullable public String getFamily(); + method public int getSpanTypeId(); + method @Nullable public android.graphics.Typeface getTypeface(); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void updateMeasureState(@NonNull android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public class URLSpan extends android.text.style.ClickableSpan implements android.text.ParcelableSpan { + ctor public URLSpan(String); + ctor public URLSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public int getSpanTypeId(); + method public String getURL(); + method public void onClick(android.view.View); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public class UnderlineSpan extends android.text.style.CharacterStyle implements android.text.ParcelableSpan android.text.style.UpdateAppearance { + ctor public UnderlineSpan(); + ctor public UnderlineSpan(@NonNull android.os.Parcel); + method public int describeContents(); + method public int getSpanTypeId(); + method public void updateDrawState(@NonNull android.text.TextPaint); + method public void writeToParcel(@NonNull android.os.Parcel, int); + } + + public interface UpdateAppearance { + } + + public interface UpdateLayout extends android.text.style.UpdateAppearance { + } + + public interface WrapTogetherSpan extends android.text.style.ParagraphStyle { + } + +} + +package android.text.util { + + public class Linkify { + ctor public Linkify(); + method public static final boolean addLinks(@NonNull android.text.Spannable, int); + method public static final boolean addLinks(@NonNull android.text.Spannable, int, @Nullable java.util.function.Function); + method public static final boolean addLinks(@NonNull android.widget.TextView, int); + method public static final void addLinks(@NonNull android.widget.TextView, @NonNull java.util.regex.Pattern, @Nullable String); + method public static final void addLinks(@NonNull android.widget.TextView, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter); + method public static final void addLinks(@NonNull android.widget.TextView, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable String[], @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter); + method public static final boolean addLinks(@NonNull android.text.Spannable, @NonNull java.util.regex.Pattern, @Nullable String); + method public static final boolean addLinks(@NonNull android.text.Spannable, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter); + method public static final boolean addLinks(@NonNull android.text.Spannable, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable String[], @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter); + method public static final boolean addLinks(@NonNull android.text.Spannable, @NonNull java.util.regex.Pattern, @Nullable String, @Nullable String[], @Nullable android.text.util.Linkify.MatchFilter, @Nullable android.text.util.Linkify.TransformFilter, @Nullable java.util.function.Function); + field @Deprecated public static final int ALL = 15; // 0xf + field public static final int EMAIL_ADDRESSES = 2; // 0x2 + field @Deprecated public static final int MAP_ADDRESSES = 8; // 0x8 + field public static final int PHONE_NUMBERS = 4; // 0x4 + field public static final int WEB_URLS = 1; // 0x1 + field public static final android.text.util.Linkify.MatchFilter sPhoneNumberMatchFilter; + field public static final android.text.util.Linkify.TransformFilter sPhoneNumberTransformFilter; + field public static final android.text.util.Linkify.MatchFilter sUrlMatchFilter; + } + + public static interface Linkify.MatchFilter { + method public boolean acceptMatch(CharSequence, int, int); + } + + public static interface Linkify.TransformFilter { + method public String transformUrl(java.util.regex.Matcher, String); + } + + public class Rfc822Token { + ctor public Rfc822Token(@Nullable String, @Nullable String, @Nullable String); + method @Nullable public String getAddress(); + method @Nullable public String getComment(); + method @Nullable public String getName(); + method public static String quoteComment(String); + method public static String quoteName(String); + method public static String quoteNameIfNecessary(String); + method public void setAddress(@Nullable String); + method public void setComment(@Nullable String); + method public void setName(@Nullable String); + } + + public class Rfc822Tokenizer implements android.widget.MultiAutoCompleteTextView.Tokenizer { + ctor public Rfc822Tokenizer(); + method public int findTokenEnd(CharSequence, int); + method public int findTokenStart(CharSequence, int); + method public CharSequence terminateToken(CharSequence); + method public static void tokenize(CharSequence, java.util.Collection); + method public static android.text.util.Rfc822Token[] tokenize(CharSequence); + } + +} + +package android.transition { + + public class ArcMotion extends android.transition.PathMotion { + ctor public ArcMotion(); + ctor public ArcMotion(android.content.Context, android.util.AttributeSet); + method public float getMaximumAngle(); + method public float getMinimumHorizontalAngle(); + method public float getMinimumVerticalAngle(); + method public android.graphics.Path getPath(float, float, float, float); + method public void setMaximumAngle(float); + method public void setMinimumHorizontalAngle(float); + method public void setMinimumVerticalAngle(float); + } + + public class AutoTransition extends android.transition.TransitionSet { + ctor public AutoTransition(); + ctor public AutoTransition(android.content.Context, android.util.AttributeSet); + } + + public class ChangeBounds extends android.transition.Transition { + ctor public ChangeBounds(); + ctor public ChangeBounds(android.content.Context, android.util.AttributeSet); + method public void captureEndValues(android.transition.TransitionValues); + method public void captureStartValues(android.transition.TransitionValues); + method public boolean getResizeClip(); + method @Deprecated public void setReparent(boolean); + method public void setResizeClip(boolean); + } + + public class ChangeClipBounds extends android.transition.Transition { + ctor public ChangeClipBounds(); + ctor public ChangeClipBounds(android.content.Context, android.util.AttributeSet); + method public void captureEndValues(android.transition.TransitionValues); + method public void captureStartValues(android.transition.TransitionValues); + } + + public class ChangeImageTransform extends android.transition.Transition { + ctor public ChangeImageTransform(); + ctor public ChangeImageTransform(android.content.Context, android.util.AttributeSet); + method public void captureEndValues(android.transition.TransitionValues); + method public void captureStartValues(android.transition.TransitionValues); + } + + public class ChangeScroll extends android.transition.Transition { + ctor public ChangeScroll(); + ctor public ChangeScroll(android.content.Context, android.util.AttributeSet); + method public void captureEndValues(android.transition.TransitionValues); + method public void captureStartValues(android.transition.TransitionValues); + } + + public class ChangeTransform extends android.transition.Transition { + ctor public ChangeTransform(); + ctor public ChangeTransform(android.content.Context, android.util.AttributeSet); + method public void captureEndValues(android.transition.TransitionValues); + method public void captureStartValues(android.transition.TransitionValues); + method public boolean getReparent(); + method public boolean getReparentWithOverlay(); + method public void setReparent(boolean); + method public void setReparentWithOverlay(boolean); + } + + public class CircularPropagation extends android.transition.VisibilityPropagation { + ctor public CircularPropagation(); + method public long getStartDelay(android.view.ViewGroup, android.transition.Transition, android.transition.TransitionValues, android.transition.TransitionValues); + method public void setPropagationSpeed(float); + } + + public class Explode extends android.transition.Visibility { + ctor public Explode(); + ctor public Explode(android.content.Context, android.util.AttributeSet); + } + + public class Fade extends android.transition.Visibility { + ctor public Fade(); + ctor public Fade(int); + ctor public Fade(android.content.Context, android.util.AttributeSet); + field public static final int IN = 1; // 0x1 + field public static final int OUT = 2; // 0x2 + } + + public abstract class PathMotion { + ctor public PathMotion(); + ctor public PathMotion(android.content.Context, android.util.AttributeSet); + method public abstract android.graphics.Path getPath(float, float, float, float); + } + + public class PatternPathMotion extends android.transition.PathMotion { + ctor public PatternPathMotion(); + ctor public PatternPathMotion(android.content.Context, android.util.AttributeSet); + ctor public PatternPathMotion(android.graphics.Path); + method public android.graphics.Path getPath(float, float, float, float); + method public android.graphics.Path getPatternPath(); + method public void setPatternPath(android.graphics.Path); + } + + public final class Scene { + ctor public Scene(android.view.ViewGroup); + ctor public Scene(android.view.ViewGroup, android.view.View); + ctor @Deprecated public Scene(android.view.ViewGroup, android.view.ViewGroup); + method public void enter(); + method public void exit(); + method @Nullable public static android.transition.Scene getCurrentScene(@NonNull android.view.ViewGroup); + method public static android.transition.Scene getSceneForLayout(android.view.ViewGroup, int, android.content.Context); + method public android.view.ViewGroup getSceneRoot(); + method public void setEnterAction(Runnable); + method public void setExitAction(Runnable); + } + + public class SidePropagation extends android.transition.VisibilityPropagation { + ctor public SidePropagation(); + method public long getStartDelay(android.view.ViewGroup, android.transition.Transition, android.transition.TransitionValues, android.transition.TransitionValues); + method public void setPropagationSpeed(float); + method public void setSide(int); + } + + public class Slide extends android.transition.Visibility { + ctor public Slide(); + ctor public Slide(int); + ctor public Slide(android.content.Context, android.util.AttributeSet); + method public int getSlideEdge(); + method public void setSlideEdge(int); + } + + public abstract class Transition implements java.lang.Cloneable { + ctor public Transition(); + ctor public Transition(android.content.Context, android.util.AttributeSet); + method public android.transition.Transition addListener(android.transition.Transition.TransitionListener); + method public android.transition.Transition addTarget(int); + method public android.transition.Transition addTarget(String); + method public android.transition.Transition addTarget(Class); + method public android.transition.Transition addTarget(android.view.View); + method public boolean canRemoveViews(); + method public abstract void captureEndValues(android.transition.TransitionValues); + method public abstract void captureStartValues(android.transition.TransitionValues); + method public android.transition.Transition clone(); + method @Nullable public android.animation.Animator createAnimator(@NonNull android.view.ViewGroup, @Nullable android.transition.TransitionValues, @Nullable android.transition.TransitionValues); + method public android.transition.Transition excludeChildren(int, boolean); + method public android.transition.Transition excludeChildren(android.view.View, boolean); + method public android.transition.Transition excludeChildren(Class, boolean); + method public android.transition.Transition excludeTarget(int, boolean); + method public android.transition.Transition excludeTarget(String, boolean); + method public android.transition.Transition excludeTarget(android.view.View, boolean); + method public android.transition.Transition excludeTarget(Class, boolean); + method public long getDuration(); + method public android.graphics.Rect getEpicenter(); + method public android.transition.Transition.EpicenterCallback getEpicenterCallback(); + method public android.animation.TimeInterpolator getInterpolator(); + method public String getName(); + method public android.transition.PathMotion getPathMotion(); + method public android.transition.TransitionPropagation getPropagation(); + method public long getStartDelay(); + method public java.util.List getTargetIds(); + method public java.util.List getTargetNames(); + method public java.util.List getTargetTypes(); + method public java.util.List getTargets(); + method public String[] getTransitionProperties(); + method public android.transition.TransitionValues getTransitionValues(android.view.View, boolean); + method public boolean isTransitionRequired(@Nullable android.transition.TransitionValues, @Nullable android.transition.TransitionValues); + method public android.transition.Transition removeListener(android.transition.Transition.TransitionListener); + method public android.transition.Transition removeTarget(int); + method public android.transition.Transition removeTarget(String); + method public android.transition.Transition removeTarget(android.view.View); + method public android.transition.Transition removeTarget(Class); + method public android.transition.Transition setDuration(long); + method public void setEpicenterCallback(android.transition.Transition.EpicenterCallback); + method public android.transition.Transition setInterpolator(android.animation.TimeInterpolator); + method public void setMatchOrder(int...); + method public void setPathMotion(android.transition.PathMotion); + method public void setPropagation(android.transition.TransitionPropagation); + method public android.transition.Transition setStartDelay(long); + field public static final int MATCH_ID = 3; // 0x3 + field public static final int MATCH_INSTANCE = 1; // 0x1 + field public static final int MATCH_ITEM_ID = 4; // 0x4 + field public static final int MATCH_NAME = 2; // 0x2 + } + + public abstract static class Transition.EpicenterCallback { + ctor public Transition.EpicenterCallback(); + method public abstract android.graphics.Rect onGetEpicenter(android.transition.Transition); + } + + public static interface Transition.TransitionListener { + method public void onTransitionCancel(android.transition.Transition); + method public void onTransitionEnd(android.transition.Transition); + method public void onTransitionPause(android.transition.Transition); + method public void onTransitionResume(android.transition.Transition); + method public void onTransitionStart(android.transition.Transition); + } + + public class TransitionInflater { + method public static android.transition.TransitionInflater from(android.content.Context); + method public android.transition.Transition inflateTransition(@TransitionRes int); + method public android.transition.TransitionManager inflateTransitionManager(@TransitionRes int, android.view.ViewGroup); + } + + public abstract class TransitionListenerAdapter implements android.transition.Transition.TransitionListener { + ctor public TransitionListenerAdapter(); + method public void onTransitionCancel(android.transition.Transition); + method public void onTransitionEnd(android.transition.Transition); + method public void onTransitionPause(android.transition.Transition); + method public void onTransitionResume(android.transition.Transition); + method public void onTransitionStart(android.transition.Transition); + } + + public class TransitionManager { + ctor public TransitionManager(); + method public static void beginDelayedTransition(android.view.ViewGroup); + method public static void beginDelayedTransition(android.view.ViewGroup, android.transition.Transition); + method public static void endTransitions(android.view.ViewGroup); + method public static void go(android.transition.Scene); + method public static void go(android.transition.Scene, android.transition.Transition); + method public void setTransition(android.transition.Scene, android.transition.Transition); + method public void setTransition(android.transition.Scene, android.transition.Scene, android.transition.Transition); + method public void transitionTo(android.transition.Scene); + } + + public abstract class TransitionPropagation { + ctor public TransitionPropagation(); + method public abstract void captureValues(android.transition.TransitionValues); + method public abstract String[] getPropagationProperties(); + method public abstract long getStartDelay(android.view.ViewGroup, android.transition.Transition, android.transition.TransitionValues, android.transition.TransitionValues); + } + + public class TransitionSet extends android.transition.Transition { + ctor public TransitionSet(); + ctor public TransitionSet(android.content.Context, android.util.AttributeSet); + method public android.transition.TransitionSet addListener(android.transition.Transition.TransitionListener); + method public android.transition.TransitionSet addTarget(android.view.View); + method public android.transition.TransitionSet addTarget(int); + method public android.transition.TransitionSet addTarget(String); + method public android.transition.TransitionSet addTarget(Class); + method public android.transition.TransitionSet addTransition(android.transition.Transition); + method public void captureEndValues(android.transition.TransitionValues); + method public void captureStartValues(android.transition.TransitionValues); + method public android.transition.TransitionSet clone(); + method public int getOrdering(); + method public android.transition.Transition getTransitionAt(int); + method public int getTransitionCount(); + method public android.transition.TransitionSet removeListener(android.transition.Transition.TransitionListener); + method public android.transition.TransitionSet removeTarget(int); + method public android.transition.TransitionSet removeTarget(android.view.View); + method public android.transition.TransitionSet removeTarget(Class); + method public android.transition.TransitionSet removeTarget(String); + method public android.transition.TransitionSet removeTransition(android.transition.Transition); + method public android.transition.TransitionSet setDuration(long); + method public android.transition.TransitionSet setInterpolator(android.animation.TimeInterpolator); + method public android.transition.TransitionSet setOrdering(int); + method public android.transition.TransitionSet setStartDelay(long); + field public static final int ORDERING_SEQUENTIAL = 1; // 0x1 + field public static final int ORDERING_TOGETHER = 0; // 0x0 + } + + public class TransitionValues { + ctor @Deprecated public TransitionValues(); + ctor public TransitionValues(@NonNull android.view.View); + field @NonNull public final java.util.Map values; + field @NonNull public android.view.View view; + } + + public abstract class Visibility extends android.transition.Transition { + ctor public Visibility(); + ctor public Visibility(android.content.Context, android.util.AttributeSet); + method public void captureEndValues(android.transition.TransitionValues); + method public void captureStartValues(android.transition.TransitionValues); + method public int getMode(); + method public boolean isVisible(android.transition.TransitionValues); + method public android.animation.Animator onAppear(android.view.ViewGroup, android.transition.TransitionValues, int, android.transition.TransitionValues, int); + method public android.animation.Animator onAppear(android.view.ViewGroup, android.view.View, android.transition.TransitionValues, android.transition.TransitionValues); + method public android.animation.Animator onDisappear(android.view.ViewGroup, android.transition.TransitionValues, int, android.transition.TransitionValues, int); + method public android.animation.Animator onDisappear(android.view.ViewGroup, android.view.View, android.transition.TransitionValues, android.transition.TransitionValues); + method public void setMode(int); + field public static final int MODE_IN = 1; // 0x1 + field public static final int MODE_OUT = 2; // 0x2 + } + + public abstract class VisibilityPropagation extends android.transition.TransitionPropagation { + ctor public VisibilityPropagation(); + method public void captureValues(android.transition.TransitionValues); + method public String[] getPropagationProperties(); + method public int getViewVisibility(android.transition.TransitionValues); + method public int getViewX(android.transition.TransitionValues); + method public int getViewY(android.transition.TransitionValues); + } + +} + +package android.util { + + public class AndroidException extends java.lang.Exception { + ctor public AndroidException(); + ctor public AndroidException(String); + ctor public AndroidException(String, Throwable); + ctor public AndroidException(Exception); + } + + public class AndroidRuntimeException extends java.lang.RuntimeException { + ctor public AndroidRuntimeException(); + ctor public AndroidRuntimeException(String); + ctor public AndroidRuntimeException(String, Throwable); + ctor public AndroidRuntimeException(Exception); + } + + public final class ArrayMap implements java.util.Map { + ctor public ArrayMap(); + ctor public ArrayMap(int); + ctor public ArrayMap(android.util.ArrayMap); + method public void clear(); + method public boolean containsAll(java.util.Collection); + method public boolean containsKey(Object); + method public boolean containsValue(Object); + method public void ensureCapacity(int); + method public java.util.Set> entrySet(); + method public boolean equals(@Nullable Object); + method public void forEach(java.util.function.BiConsumer); + method public V get(Object); + method public int hashCode(); + method public int indexOfKey(Object); + method public int indexOfValue(Object); + method public boolean isEmpty(); + method public K keyAt(int); + method public java.util.Set keySet(); + method public V put(K, V); + method public void putAll(android.util.ArrayMap); + method public void putAll(java.util.Map); + method public V remove(Object); + method public boolean removeAll(java.util.Collection); + method public V removeAt(int); + method public void replaceAll(java.util.function.BiFunction); + method public boolean retainAll(java.util.Collection); + method public V setValueAt(int, V); + method public int size(); + method public V valueAt(int); + method public java.util.Collection values(); + } + + public final class ArraySet implements java.util.Collection java.util.Set { + ctor public ArraySet(); + ctor public ArraySet(int); + ctor public ArraySet(android.util.ArraySet); + ctor public ArraySet(java.util.Collection); + ctor public ArraySet(@Nullable E[]); + method public boolean add(E); + method public void addAll(android.util.ArraySet); + method public boolean addAll(java.util.Collection); + method public void clear(); + method public boolean contains(Object); + method public boolean containsAll(java.util.Collection); + method public void ensureCapacity(int); + method public boolean equals(@Nullable Object); + method public void forEach(java.util.function.Consumer); + method public int hashCode(); + method public int indexOf(Object); + method public boolean isEmpty(); + method public java.util.Iterator iterator(); + method public boolean remove(Object); + method public boolean removeAll(android.util.ArraySet); + method public boolean removeAll(java.util.Collection); + method public E removeAt(int); + method public boolean removeIf(java.util.function.Predicate); + method public boolean retainAll(java.util.Collection); + method public int size(); + method public Object[] toArray(); + method public T[] toArray(T[]); + method public E valueAt(int); + } + + public class AtomicFile { + ctor public AtomicFile(java.io.File); + method public void delete(); + method public void failWrite(java.io.FileOutputStream); + method public void finishWrite(java.io.FileOutputStream); + method public java.io.File getBaseFile(); + method public long getLastModifiedTime(); + method public java.io.FileInputStream openRead() throws java.io.FileNotFoundException; + method public byte[] readFully() throws java.io.IOException; + method public java.io.FileOutputStream startWrite() throws java.io.IOException; + } + + public interface AttributeSet { + method public boolean getAttributeBooleanValue(String, String, boolean); + method public boolean getAttributeBooleanValue(int, boolean); + method public int getAttributeCount(); + method public float getAttributeFloatValue(String, String, float); + method public float getAttributeFloatValue(int, float); + method public int getAttributeIntValue(String, String, int); + method public int getAttributeIntValue(int, int); + method public int getAttributeListValue(String, String, String[], int); + method public int getAttributeListValue(int, String[], int); + method public String getAttributeName(int); + method public int getAttributeNameResource(int); + method public default String getAttributeNamespace(int); + method public int getAttributeResourceValue(String, String, int); + method public int getAttributeResourceValue(int, int); + method public int getAttributeUnsignedIntValue(String, String, int); + method public int getAttributeUnsignedIntValue(int, int); + method public String getAttributeValue(int); + method public String getAttributeValue(String, String); + method public String getClassAttribute(); + method public String getIdAttribute(); + method public int getIdAttributeResourceValue(int); + method public String getPositionDescription(); + method public int getStyleAttribute(); + } + + public class Base64 { + method public static byte[] decode(String, int); + method public static byte[] decode(byte[], int); + method public static byte[] decode(byte[], int, int, int); + method public static byte[] encode(byte[], int); + method public static byte[] encode(byte[], int, int, int); + method public static String encodeToString(byte[], int); + method public static String encodeToString(byte[], int, int, int); + field public static final int CRLF = 4; // 0x4 + field public static final int DEFAULT = 0; // 0x0 + field public static final int NO_CLOSE = 16; // 0x10 + field public static final int NO_PADDING = 1; // 0x1 + field public static final int NO_WRAP = 2; // 0x2 + field public static final int URL_SAFE = 8; // 0x8 + } + + public class Base64DataException extends java.io.IOException { + ctor public Base64DataException(String); + } + + public class Base64InputStream extends java.io.FilterInputStream { + ctor public Base64InputStream(java.io.InputStream, int); + method public int available(); + method public void reset(); + } + + public class Base64OutputStream extends java.io.FilterOutputStream { + ctor public Base64OutputStream(java.io.OutputStream, int); + } + + public final class CloseGuard { + ctor public CloseGuard(); + method public void close(); + method public void open(@NonNull String); + method public void warnIfOpen(); + } + + @Deprecated public final class Config { + field @Deprecated public static final boolean DEBUG = false; + field @Deprecated public static final boolean LOGD = true; + field @Deprecated public static final boolean LOGV = false; + field @Deprecated public static final boolean PROFILE = false; + field @Deprecated public static final boolean RELEASE = true; + } + + public class DebugUtils { + method public static boolean isObjectSelected(Object); + } + + public class DisplayMetrics { + ctor public DisplayMetrics(); + method public boolean equals(android.util.DisplayMetrics); + method public void setTo(android.util.DisplayMetrics); + method public void setToDefaults(); + field public static final int DENSITY_140 = 140; // 0x8c + field public static final int DENSITY_180 = 180; // 0xb4 + field public static final int DENSITY_200 = 200; // 0xc8 + field public static final int DENSITY_220 = 220; // 0xdc + field public static final int DENSITY_260 = 260; // 0x104 + field public static final int DENSITY_280 = 280; // 0x118 + field public static final int DENSITY_300 = 300; // 0x12c + field public static final int DENSITY_340 = 340; // 0x154 + field public static final int DENSITY_360 = 360; // 0x168 + field @FlaggedApi("com.android.window.flags.density_390_api") public static final int DENSITY_390 = 390; // 0x186 + field public static final int DENSITY_400 = 400; // 0x190 + field public static final int DENSITY_420 = 420; // 0x1a4 + field public static final int DENSITY_440 = 440; // 0x1b8 + field public static final int DENSITY_450 = 450; // 0x1c2 + field public static final int DENSITY_520 = 520; // 0x208 + field public static final int DENSITY_560 = 560; // 0x230 + field public static final int DENSITY_600 = 600; // 0x258 + field public static final int DENSITY_DEFAULT = 160; // 0xa0 + field public static final int DENSITY_DEVICE_STABLE; + field public static final int DENSITY_HIGH = 240; // 0xf0 + field public static final int DENSITY_LOW = 120; // 0x78 + field public static final int DENSITY_MEDIUM = 160; // 0xa0 + field public static final int DENSITY_TV = 213; // 0xd5 + field public static final int DENSITY_XHIGH = 320; // 0x140 + field public static final int DENSITY_XXHIGH = 480; // 0x1e0 + field public static final int DENSITY_XXXHIGH = 640; // 0x280 + field public float density; + field public int densityDpi; + field public int heightPixels; + field @Deprecated public float scaledDensity; + field public int widthPixels; + field public float xdpi; + field public float ydpi; + } + + public interface Dumpable { + method public void dump(@NonNull java.io.PrintWriter, @Nullable String[]); + method @NonNull public default String getDumpableName(); + } + + public interface DumpableContainer { + method public boolean addDumpable(@NonNull android.util.Dumpable); + method public boolean removeDumpable(@NonNull android.util.Dumpable); + } + + public class EventLog { + method public static int getTagCode(String); + method public static String getTagName(int); + method public static void readEvents(int[], java.util.Collection) throws java.io.IOException; + method public static int writeEvent(int, int); + method public static int writeEvent(int, long); + method public static int writeEvent(int, float); + method public static int writeEvent(int, String); + method public static int writeEvent(int, java.lang.Object...); + } + + public static final class EventLog.Event { + method public Object getData(); + method public int getProcessId(); + method public int getTag(); + method public int getThreadId(); + method public long getTimeNanos(); + } + + @Deprecated public class EventLogTags { + ctor @Deprecated public EventLogTags() throws java.io.IOException; + ctor @Deprecated public EventLogTags(java.io.BufferedReader) throws java.io.IOException; + method @Deprecated public android.util.EventLogTags.Description get(String); + method @Deprecated public android.util.EventLogTags.Description get(int); + } + + @Deprecated public static class EventLogTags.Description { + field @Deprecated public final String mName; + field @Deprecated public final int mTag; + } + + @Deprecated public class FloatMath { + } + + public abstract class FloatProperty extends android.util.Property { + ctor public FloatProperty(String); + method public final void set(T, Float); + method public abstract void setValue(T, float); + } + + public final class Half extends java.lang.Number implements java.lang.Comparable { + ctor public Half(@HalfFloat short); + ctor public Half(float); + ctor public Half(double); + ctor public Half(@NonNull String) throws java.lang.NumberFormatException; + method @HalfFloat public static short abs(@HalfFloat short); + method @HalfFloat public static short ceil(@HalfFloat short); + method public static int compare(@HalfFloat short, @HalfFloat short); + method public int compareTo(@NonNull android.util.Half); + method @HalfFloat public static short copySign(@HalfFloat short, @HalfFloat short); + method public double doubleValue(); + method public static boolean equals(@HalfFloat short, @HalfFloat short); + method public float floatValue(); + method @HalfFloat public static short floor(@HalfFloat short); + method public static int getExponent(@HalfFloat short); + method public static int getSign(@HalfFloat short); + method public static int getSignificand(@HalfFloat short); + method public static boolean greater(@HalfFloat short, @HalfFloat short); + method public static boolean greaterEquals(@HalfFloat short, @HalfFloat short); + method public static int halfToIntBits(@HalfFloat short); + method public static int halfToRawIntBits(@HalfFloat short); + method @HalfFloat public static short halfToShortBits(@HalfFloat short); + method @HalfFloat public short halfValue(); + method public static int hashCode(@HalfFloat short); + method @HalfFloat public static short intBitsToHalf(int); + method public int intValue(); + method public static boolean isInfinite(@HalfFloat short); + method public boolean isNaN(); + method public static boolean isNaN(@HalfFloat short); + method public static boolean isNormalized(@HalfFloat short); + method public static boolean less(@HalfFloat short, @HalfFloat short); + method public static boolean lessEquals(@HalfFloat short, @HalfFloat short); + method public long longValue(); + method @HalfFloat public static short max(@HalfFloat short, @HalfFloat short); + method @HalfFloat public static short min(@HalfFloat short, @HalfFloat short); + method @HalfFloat public static short parseHalf(@NonNull String) throws java.lang.NumberFormatException; + method @HalfFloat public static short round(@HalfFloat short); + method public static float toFloat(@HalfFloat short); + method @HalfFloat public static short toHalf(float); + method @NonNull public static String toHexString(@HalfFloat short); + method @NonNull public static String toString(@HalfFloat short); + method @HalfFloat public static short trunc(@HalfFloat short); + method @NonNull public static android.util.Half valueOf(@HalfFloat short); + method @NonNull public static android.util.Half valueOf(float); + method @NonNull public static android.util.Half valueOf(@NonNull String); + field @HalfFloat public static final short EPSILON = 5120; // 0x1400 + field @HalfFloat public static final short LOWEST_VALUE = -1025; // 0xfffffbff + field public static final int MAX_EXPONENT = 15; // 0xf + field @HalfFloat public static final short MAX_VALUE = 31743; // 0x7bff + field public static final int MIN_EXPONENT = -14; // 0xfffffff2 + field @HalfFloat public static final short MIN_NORMAL = 1024; // 0x400 + field @HalfFloat public static final short MIN_VALUE = 1; // 0x1 + field @HalfFloat public static final short NEGATIVE_INFINITY = -1024; // 0xfffffc00 + field @HalfFloat public static final short NEGATIVE_ZERO = -32768; // 0xffff8000 + field @HalfFloat public static final short NaN = 32256; // 0x7e00 + field @HalfFloat public static final short POSITIVE_INFINITY = 31744; // 0x7c00 + field @HalfFloat public static final short POSITIVE_ZERO = 0; // 0x0 + field public static final int SIZE = 16; // 0x10 + } + + public abstract class IntProperty extends android.util.Property { + ctor public IntProperty(String); + method public final void set(T, Integer); + method public abstract void setValue(T, int); + } + + public final class JsonReader implements java.io.Closeable { + ctor public JsonReader(java.io.Reader); + method public void beginArray() throws java.io.IOException; + method public void beginObject() throws java.io.IOException; + method public void close() throws java.io.IOException; + method public void endArray() throws java.io.IOException; + method public void endObject() throws java.io.IOException; + method public boolean hasNext() throws java.io.IOException; + method public boolean isLenient(); + method public boolean nextBoolean() throws java.io.IOException; + method public double nextDouble() throws java.io.IOException; + method public int nextInt() throws java.io.IOException; + method public long nextLong() throws java.io.IOException; + method public String nextName() throws java.io.IOException; + method public void nextNull() throws java.io.IOException; + method public String nextString() throws java.io.IOException; + method public android.util.JsonToken peek() throws java.io.IOException; + method public void setLenient(boolean); + method public void skipValue() throws java.io.IOException; + } + + public enum JsonToken { + enum_constant public static final android.util.JsonToken BEGIN_ARRAY; + enum_constant public static final android.util.JsonToken BEGIN_OBJECT; + enum_constant public static final android.util.JsonToken BOOLEAN; + enum_constant public static final android.util.JsonToken END_ARRAY; + enum_constant public static final android.util.JsonToken END_DOCUMENT; + enum_constant public static final android.util.JsonToken END_OBJECT; + enum_constant public static final android.util.JsonToken NAME; + enum_constant public static final android.util.JsonToken NULL; + enum_constant public static final android.util.JsonToken NUMBER; + enum_constant public static final android.util.JsonToken STRING; + } + + public final class JsonWriter implements java.io.Closeable { + ctor public JsonWriter(java.io.Writer); + method public android.util.JsonWriter beginArray() throws java.io.IOException; + method public android.util.JsonWriter beginObject() throws java.io.IOException; + method public void close() throws java.io.IOException; + method public android.util.JsonWriter endArray() throws java.io.IOException; + method public android.util.JsonWriter endObject() throws java.io.IOException; + method public void flush() throws java.io.IOException; + method public boolean isLenient(); + method public android.util.JsonWriter name(String) throws java.io.IOException; + method public android.util.JsonWriter nullValue() throws java.io.IOException; + method public void setIndent(String); + method public void setLenient(boolean); + method public android.util.JsonWriter value(String) throws java.io.IOException; + method public android.util.JsonWriter value(boolean) throws java.io.IOException; + method public android.util.JsonWriter value(double) throws java.io.IOException; + method public android.util.JsonWriter value(long) throws java.io.IOException; + method public android.util.JsonWriter value(Number) throws java.io.IOException; + } + + public final class LayoutDirection { + field public static final int INHERIT = 2; // 0x2 + field public static final int LOCALE = 3; // 0x3 + field public static final int LTR = 0; // 0x0 + field public static final int RTL = 1; // 0x1 + } + + public final class Log { + method public static int d(@Nullable String, @NonNull String); + method public static int d(@Nullable String, @Nullable String, @Nullable Throwable); + method public static int e(@Nullable String, @NonNull String); + method public static int e(@Nullable String, @Nullable String, @Nullable Throwable); + method @NonNull public static String getStackTraceString(@Nullable Throwable); + method public static int i(@Nullable String, @NonNull String); + method public static int i(@Nullable String, @Nullable String, @Nullable Throwable); + method public static boolean isLoggable(@Nullable @Size(max=23, apis="..23") String, int); + method public static int println(int, @Nullable String, @NonNull String); + method public static int v(@Nullable String, @NonNull String); + method public static int v(@Nullable String, @Nullable String, @Nullable Throwable); + method public static int w(@Nullable String, @NonNull String); + method public static int w(@Nullable String, @Nullable String, @Nullable Throwable); + method public static int w(@Nullable String, @Nullable Throwable); + method public static int wtf(@Nullable String, @Nullable String); + method public static int wtf(@Nullable String, @NonNull Throwable); + method public static int wtf(@Nullable String, @Nullable String, @Nullable Throwable); + field public static final int ASSERT = 7; // 0x7 + field public static final int DEBUG = 3; // 0x3 + field public static final int ERROR = 6; // 0x6 + field public static final int INFO = 4; // 0x4 + field public static final int VERBOSE = 2; // 0x2 + field public static final int WARN = 5; // 0x5 + } + + public class LogPrinter implements android.util.Printer { + ctor public LogPrinter(int, String); + method public void println(String); + } + + public class LongSparseArray implements java.lang.Cloneable { + ctor public LongSparseArray(); + ctor public LongSparseArray(int); + method public void append(long, E); + method public void clear(); + method public android.util.LongSparseArray clone(); + method public void delete(long); + method public E get(long); + method public E get(long, E); + method public int indexOfKey(long); + method public int indexOfValue(E); + method public long keyAt(int); + method public void put(long, E); + method public void remove(long); + method public void removeAt(int); + method public void setValueAt(int, E); + method public int size(); + method public E valueAt(int); + } + + public class LruCache { + ctor public LruCache(int); + method protected V create(K); + method public final int createCount(); + method protected void entryRemoved(boolean, K, V, V); + method public final void evictAll(); + method public final int evictionCount(); + method public final V get(K); + method public final int hitCount(); + method public final int maxSize(); + method public final int missCount(); + method public final V put(K, V); + method public final int putCount(); + method public final V remove(K); + method public void resize(int); + method public final int size(); + method protected int sizeOf(K, V); + method public final java.util.Map snapshot(); + method public final String toString(); + method public void trimToSize(int); + } + + public final class MalformedJsonException extends java.io.IOException { + ctor public MalformedJsonException(String); + } + + public class MonthDisplayHelper { + ctor public MonthDisplayHelper(int, int, int); + ctor public MonthDisplayHelper(int, int); + method public int getColumnOf(int); + method public int getDayAt(int, int); + method public int[] getDigitsForRow(int); + method public int getFirstDayOfMonth(); + method public int getMonth(); + method public int getNumberOfDaysInMonth(); + method public int getOffset(); + method public int getRowOf(int); + method public int getWeekStartDay(); + method public int getYear(); + method public boolean isWithinCurrentMonth(int, int); + method public void nextMonth(); + method public void previousMonth(); + } + + @Deprecated public final class MutableBoolean { + ctor @Deprecated public MutableBoolean(boolean); + field @Deprecated public boolean value; + } + + @Deprecated public final class MutableByte { + ctor @Deprecated public MutableByte(byte); + field @Deprecated public byte value; + } + + @Deprecated public final class MutableChar { + ctor @Deprecated public MutableChar(char); + field @Deprecated public char value; + } + + @Deprecated public final class MutableDouble { + ctor @Deprecated public MutableDouble(double); + field @Deprecated public double value; + } + + @Deprecated public final class MutableFloat { + ctor @Deprecated public MutableFloat(float); + field @Deprecated public float value; + } + + @Deprecated public final class MutableInt { + ctor @Deprecated public MutableInt(int); + field @Deprecated public int value; + } + + @Deprecated public final class MutableLong { + ctor @Deprecated public MutableLong(long); + field @Deprecated public long value; + } + + @Deprecated public final class MutableShort { + ctor @Deprecated public MutableShort(short); + field @Deprecated public short value; + } + + public class NoSuchPropertyException extends java.lang.RuntimeException { + ctor public NoSuchPropertyException(String); + } + + public class Pair { + ctor public Pair(F, S); + method public static android.util.Pair create(A, B); + field public final F first; + field public final S second; + } + + public class Patterns { + method public static final String concatGroups(java.util.regex.Matcher); + method public static final String digitsAndPlusOnly(java.util.regex.Matcher); + field public static final java.util.regex.Pattern DOMAIN_NAME; + field public static final java.util.regex.Pattern EMAIL_ADDRESS; + field @Deprecated public static final String GOOD_IRI_CHAR = "a-zA-Z0-9\u00a0-\ud7ff\uf900-\ufdcf\ufdf0-\uffef"; + field @Deprecated public static final java.util.regex.Pattern IP_ADDRESS; + field public static final java.util.regex.Pattern PHONE; + field @Deprecated public static final java.util.regex.Pattern TOP_LEVEL_DOMAIN; + field @Deprecated public static final String TOP_LEVEL_DOMAIN_STR = "((aero|arpa|asia|a[cdefgilmnoqrstuwxz])|(biz|b[abdefghijmnorstvwyz])|(cat|com|coop|c[acdfghiklmnoruvxyz])|d[ejkmoz]|(edu|e[cegrstu])|f[ijkmor]|(gov|g[abdefghilmnpqrstuwy])|h[kmnrtu]|(info|int|i[delmnoqrst])|(jobs|j[emop])|k[eghimnprwyz]|l[abcikrstuvy]|(mil|mobi|museum|m[acdeghklmnopqrstuvwxyz])|(name|net|n[acefgilopruz])|(org|om)|(pro|p[aefghklmnrstwy])|qa|r[eosuw]|s[abcdeghijklmnortuvyz]|(tel|travel|t[cdfghjklmnoprtvwz])|u[agksyz]|v[aceginu]|w[fs]|(\u03b4\u03bf\u03ba\u03b9\u03bc\u03ae|\u0438\u0441\u043f\u044b\u0442\u0430\u043d\u0438\u0435|\u0440\u0444|\u0441\u0440\u0431|\u05d8\u05e2\u05e1\u05d8|\u0622\u0632\u0645\u0627\u06cc\u0634\u06cc|\u0625\u062e\u062a\u0628\u0627\u0631|\u0627\u0644\u0627\u0631\u062f\u0646|\u0627\u0644\u062c\u0632\u0627\u0626\u0631|\u0627\u0644\u0633\u0639\u0648\u062f\u064a\u0629|\u0627\u0644\u0645\u063a\u0631\u0628|\u0627\u0645\u0627\u0631\u0627\u062a|\u0628\u06be\u0627\u0631\u062a|\u062a\u0648\u0646\u0633|\u0633\u0648\u0631\u064a\u0629|\u0641\u0644\u0633\u0637\u064a\u0646|\u0642\u0637\u0631|\u0645\u0635\u0631|\u092a\u0930\u0940\u0915\u094d\u0937\u093e|\u092d\u093e\u0930\u0924|\u09ad\u09be\u09b0\u09a4|\u0a2d\u0a3e\u0a30\u0a24|\u0aad\u0abe\u0ab0\u0aa4|\u0b87\u0ba8\u0bcd\u0ba4\u0bbf\u0baf\u0bbe|\u0b87\u0bb2\u0b99\u0bcd\u0b95\u0bc8|\u0b9a\u0bbf\u0b99\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0bc2\u0bb0\u0bcd|\u0baa\u0bb0\u0bbf\u0b9f\u0bcd\u0b9a\u0bc8|\u0c2d\u0c3e\u0c30\u0c24\u0c4d|\u0dbd\u0d82\u0d9a\u0dcf|\u0e44\u0e17\u0e22|\u30c6\u30b9\u30c8|\u4e2d\u56fd|\u4e2d\u570b|\u53f0\u6e7e|\u53f0\u7063|\u65b0\u52a0\u5761|\u6d4b\u8bd5|\u6e2c\u8a66|\u9999\u6e2f|\ud14c\uc2a4\ud2b8|\ud55c\uad6d|xn\\-\\-0zwm56d|xn\\-\\-11b5bs3a9aj6g|xn\\-\\-3e0b707e|xn\\-\\-45brj9c|xn\\-\\-80akhbyknj4f|xn\\-\\-90a3ac|xn\\-\\-9t4b11yi5a|xn\\-\\-clchc0ea0b2g2a9gcd|xn\\-\\-deba0ad|xn\\-\\-fiqs8s|xn\\-\\-fiqz9s|xn\\-\\-fpcrj9c3d|xn\\-\\-fzc2c9e2c|xn\\-\\-g6w251d|xn\\-\\-gecrj9c|xn\\-\\-h2brj9c|xn\\-\\-hgbk6aj7f53bba|xn\\-\\-hlcj6aya9esc7a|xn\\-\\-j6w193g|xn\\-\\-jxalpdlp|xn\\-\\-kgbechtv|xn\\-\\-kprw13d|xn\\-\\-kpry57d|xn\\-\\-lgbbat1ad8j|xn\\-\\-mgbaam7a8h|xn\\-\\-mgbayh7gpa|xn\\-\\-mgbbh1a71e|xn\\-\\-mgbc0a9azcg|xn\\-\\-mgberp4a5d4ar|xn\\-\\-o3cw4h|xn\\-\\-ogbpf8fl|xn\\-\\-p1ai|xn\\-\\-pgbs0dh|xn\\-\\-s9brj9c|xn\\-\\-wgbh1c|xn\\-\\-wgbl6a|xn\\-\\-xkc2al3hye2a|xn\\-\\-xkc2dl3a5ee0h|xn\\-\\-yfro4i67o|xn\\-\\-ygbi2ammx|xn\\-\\-zckzah|xxx)|y[et]|z[amw])"; + field @Deprecated public static final String TOP_LEVEL_DOMAIN_STR_FOR_WEB_URL = "(?:(?:aero|arpa|asia|a[cdefgilmnoqrstuwxz])|(?:biz|b[abdefghijmnorstvwyz])|(?:cat|com|coop|c[acdfghiklmnoruvxyz])|d[ejkmoz]|(?:edu|e[cegrstu])|f[ijkmor]|(?:gov|g[abdefghilmnpqrstuwy])|h[kmnrtu]|(?:info|int|i[delmnoqrst])|(?:jobs|j[emop])|k[eghimnprwyz]|l[abcikrstuvy]|(?:mil|mobi|museum|m[acdeghklmnopqrstuvwxyz])|(?:name|net|n[acefgilopruz])|(?:org|om)|(?:pro|p[aefghklmnrstwy])|qa|r[eosuw]|s[abcdeghijklmnortuvyz]|(?:tel|travel|t[cdfghjklmnoprtvwz])|u[agksyz]|v[aceginu]|w[fs]|(?:\u03b4\u03bf\u03ba\u03b9\u03bc\u03ae|\u0438\u0441\u043f\u044b\u0442\u0430\u043d\u0438\u0435|\u0440\u0444|\u0441\u0440\u0431|\u05d8\u05e2\u05e1\u05d8|\u0622\u0632\u0645\u0627\u06cc\u0634\u06cc|\u0625\u062e\u062a\u0628\u0627\u0631|\u0627\u0644\u0627\u0631\u062f\u0646|\u0627\u0644\u062c\u0632\u0627\u0626\u0631|\u0627\u0644\u0633\u0639\u0648\u062f\u064a\u0629|\u0627\u0644\u0645\u063a\u0631\u0628|\u0627\u0645\u0627\u0631\u0627\u062a|\u0628\u06be\u0627\u0631\u062a|\u062a\u0648\u0646\u0633|\u0633\u0648\u0631\u064a\u0629|\u0641\u0644\u0633\u0637\u064a\u0646|\u0642\u0637\u0631|\u0645\u0635\u0631|\u092a\u0930\u0940\u0915\u094d\u0937\u093e|\u092d\u093e\u0930\u0924|\u09ad\u09be\u09b0\u09a4|\u0a2d\u0a3e\u0a30\u0a24|\u0aad\u0abe\u0ab0\u0aa4|\u0b87\u0ba8\u0bcd\u0ba4\u0bbf\u0baf\u0bbe|\u0b87\u0bb2\u0b99\u0bcd\u0b95\u0bc8|\u0b9a\u0bbf\u0b99\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0bc2\u0bb0\u0bcd|\u0baa\u0bb0\u0bbf\u0b9f\u0bcd\u0b9a\u0bc8|\u0c2d\u0c3e\u0c30\u0c24\u0c4d|\u0dbd\u0d82\u0d9a\u0dcf|\u0e44\u0e17\u0e22|\u30c6\u30b9\u30c8|\u4e2d\u56fd|\u4e2d\u570b|\u53f0\u6e7e|\u53f0\u7063|\u65b0\u52a0\u5761|\u6d4b\u8bd5|\u6e2c\u8a66|\u9999\u6e2f|\ud14c\uc2a4\ud2b8|\ud55c\uad6d|xn\\-\\-0zwm56d|xn\\-\\-11b5bs3a9aj6g|xn\\-\\-3e0b707e|xn\\-\\-45brj9c|xn\\-\\-80akhbyknj4f|xn\\-\\-90a3ac|xn\\-\\-9t4b11yi5a|xn\\-\\-clchc0ea0b2g2a9gcd|xn\\-\\-deba0ad|xn\\-\\-fiqs8s|xn\\-\\-fiqz9s|xn\\-\\-fpcrj9c3d|xn\\-\\-fzc2c9e2c|xn\\-\\-g6w251d|xn\\-\\-gecrj9c|xn\\-\\-h2brj9c|xn\\-\\-hgbk6aj7f53bba|xn\\-\\-hlcj6aya9esc7a|xn\\-\\-j6w193g|xn\\-\\-jxalpdlp|xn\\-\\-kgbechtv|xn\\-\\-kprw13d|xn\\-\\-kpry57d|xn\\-\\-lgbbat1ad8j|xn\\-\\-mgbaam7a8h|xn\\-\\-mgbayh7gpa|xn\\-\\-mgbbh1a71e|xn\\-\\-mgbc0a9azcg|xn\\-\\-mgberp4a5d4ar|xn\\-\\-o3cw4h|xn\\-\\-ogbpf8fl|xn\\-\\-p1ai|xn\\-\\-pgbs0dh|xn\\-\\-s9brj9c|xn\\-\\-wgbh1c|xn\\-\\-wgbl6a|xn\\-\\-xkc2al3hye2a|xn\\-\\-xkc2dl3a5ee0h|xn\\-\\-yfro4i67o|xn\\-\\-ygbi2ammx|xn\\-\\-zckzah|xxx)|y[et]|z[amw]))"; + field public static final java.util.regex.Pattern WEB_URL; + } + + public class PrintStreamPrinter implements android.util.Printer { + ctor public PrintStreamPrinter(java.io.PrintStream); + method public void println(String); + } + + public class PrintWriterPrinter implements android.util.Printer { + ctor public PrintWriterPrinter(java.io.PrintWriter); + method public void println(String); + } + + public interface Printer { + method public void println(String); + } + + public abstract class Property { + ctor public Property(Class, String); + method public abstract V get(T); + method public String getName(); + method public Class getType(); + method public boolean isReadOnly(); + method public static android.util.Property of(Class, Class, String); + method public void set(T, V); + } + + public final class Range> { + ctor public Range(T, T); + method public T clamp(T); + method public boolean contains(T); + method public boolean contains(android.util.Range); + method public static > android.util.Range create(T, T); + method public android.util.Range extend(android.util.Range); + method public android.util.Range extend(T, T); + method public android.util.Range extend(T); + method public T getLower(); + method public T getUpper(); + method public android.util.Range intersect(android.util.Range); + method public android.util.Range intersect(T, T); + } + + public final class Rational extends java.lang.Number implements java.lang.Comparable { + ctor public Rational(int, int); + method public int compareTo(android.util.Rational); + method public double doubleValue(); + method public float floatValue(); + method public int getDenominator(); + method public int getNumerator(); + method public int intValue(); + method public boolean isFinite(); + method public boolean isInfinite(); + method public boolean isNaN(); + method public boolean isZero(); + method public long longValue(); + method public static android.util.Rational parseRational(String) throws java.lang.NumberFormatException; + field public static final android.util.Rational NEGATIVE_INFINITY; + field public static final android.util.Rational NaN; + field public static final android.util.Rational POSITIVE_INFINITY; + field public static final android.util.Rational ZERO; + } + + public final class Size { + ctor public Size(int, int); + method public int getHeight(); + method public int getWidth(); + method public static android.util.Size parseSize(String) throws java.lang.NumberFormatException; + } + + public final class SizeF implements android.os.Parcelable { + ctor public SizeF(float, float); + method public int describeContents(); + method public float getHeight(); + method public float getWidth(); + method public static android.util.SizeF parseSizeF(String) throws java.lang.NumberFormatException; + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class SparseArray implements java.lang.Cloneable { + ctor public SparseArray(); + ctor public SparseArray(int); + method public void append(int, E); + method public void clear(); + method public android.util.SparseArray clone(); + method public boolean contains(int); + method public boolean contentEquals(@Nullable android.util.SparseArray); + method public int contentHashCode(); + method public void delete(int); + method public E get(int); + method public E get(int, E); + method public int indexOfKey(int); + method public int indexOfValue(E); + method public int keyAt(int); + method public void put(int, E); + method public void remove(int); + method public void removeAt(int); + method public void removeAtRange(int, int); + method public void set(int, E); + method public void setValueAt(int, E); + method public int size(); + method public E valueAt(int); + } + + public class SparseBooleanArray implements java.lang.Cloneable { + ctor public SparseBooleanArray(); + ctor public SparseBooleanArray(int); + method public void append(int, boolean); + method public void clear(); + method public android.util.SparseBooleanArray clone(); + method public void delete(int); + method public boolean get(int); + method public boolean get(int, boolean); + method public int indexOfKey(int); + method public int indexOfValue(boolean); + method public int keyAt(int); + method public void put(int, boolean); + method public void removeAt(int); + method public void setValueAt(int, boolean); + method public int size(); + method public boolean valueAt(int); + } + + public class SparseIntArray implements java.lang.Cloneable { + ctor public SparseIntArray(); + ctor public SparseIntArray(int); + method public void append(int, int); + method public void clear(); + method public android.util.SparseIntArray clone(); + method public void delete(int); + method public int get(int); + method public int get(int, int); + method public int indexOfKey(int); + method public int indexOfValue(int); + method public int keyAt(int); + method public void put(int, int); + method public void removeAt(int); + method public void setValueAt(int, int); + method public int size(); + method public int valueAt(int); + } + + public class SparseLongArray implements java.lang.Cloneable { + ctor public SparseLongArray(); + ctor public SparseLongArray(int); + method public void append(int, long); + method public void clear(); + method public android.util.SparseLongArray clone(); + method public void delete(int); + method public long get(int); + method public long get(int, long); + method public int indexOfKey(int); + method public int indexOfValue(long); + method public int keyAt(int); + method public void put(int, long); + method public void removeAt(int); + method public int size(); + method public long valueAt(int); + } + + public class StateSet { + method public static String dump(int[]); + method public static boolean isWildCard(int[]); + method public static boolean stateSetMatches(int[], int[]); + method public static boolean stateSetMatches(int[], int); + method public static int[] trimStateSet(int[], int); + field public static final int[] NOTHING; + field public static final int[] WILD_CARD; + } + + public class StringBuilderPrinter implements android.util.Printer { + ctor public StringBuilderPrinter(StringBuilder); + method public void println(String); + } + + public class TimeFormatException extends java.lang.RuntimeException { + } + + public class TimeUtils { + method public static java.util.TimeZone getTimeZone(int, boolean, long, String); + method public static String getTimeZoneDatabaseVersion(); + method @Nullable public static java.util.List getTimeZoneIdsForCountryCode(@NonNull String); + method public static boolean isTimeBetween(@NonNull java.time.LocalTime, @NonNull java.time.LocalTime, @NonNull java.time.LocalTime); + } + + @Deprecated public class TimingLogger { + ctor @Deprecated public TimingLogger(String, String); + method @Deprecated public void addSplit(String); + method @Deprecated public void dumpToLog(); + method @Deprecated public void reset(String, String); + method @Deprecated public void reset(); + } + + public class TypedValue { + ctor public TypedValue(); + method public static float applyDimension(int, float, android.util.DisplayMetrics); + method public final CharSequence coerceToString(); + method public static final String coerceToString(int, int); + method public static float complexToDimension(int, android.util.DisplayMetrics); + method public static int complexToDimensionPixelOffset(int, android.util.DisplayMetrics); + method public static int complexToDimensionPixelSize(int, android.util.DisplayMetrics); + method public static float complexToFloat(int); + method public static float complexToFraction(int, float, float); + method public static float convertDimensionToPixels(int, float, @NonNull android.util.DisplayMetrics); + method public static float convertPixelsToDimension(int, float, @NonNull android.util.DisplayMetrics); + method public static float deriveDimension(int, float, @NonNull android.util.DisplayMetrics); + method public int getComplexUnit(); + method public float getDimension(android.util.DisplayMetrics); + method public final float getFloat(); + method public float getFraction(float, float); + method public boolean isColorType(); + method public void setTo(android.util.TypedValue); + field public static final int COMPLEX_MANTISSA_MASK = 16777215; // 0xffffff + field public static final int COMPLEX_MANTISSA_SHIFT = 8; // 0x8 + field public static final int COMPLEX_RADIX_0p23 = 3; // 0x3 + field public static final int COMPLEX_RADIX_16p7 = 1; // 0x1 + field public static final int COMPLEX_RADIX_23p0 = 0; // 0x0 + field public static final int COMPLEX_RADIX_8p15 = 2; // 0x2 + field public static final int COMPLEX_RADIX_MASK = 3; // 0x3 + field public static final int COMPLEX_RADIX_SHIFT = 4; // 0x4 + field public static final int COMPLEX_UNIT_DIP = 1; // 0x1 + field public static final int COMPLEX_UNIT_FRACTION = 0; // 0x0 + field public static final int COMPLEX_UNIT_FRACTION_PARENT = 1; // 0x1 + field public static final int COMPLEX_UNIT_IN = 4; // 0x4 + field public static final int COMPLEX_UNIT_MASK = 15; // 0xf + field public static final int COMPLEX_UNIT_MM = 5; // 0x5 + field public static final int COMPLEX_UNIT_PT = 3; // 0x3 + field public static final int COMPLEX_UNIT_PX = 0; // 0x0 + field public static final int COMPLEX_UNIT_SHIFT = 0; // 0x0 + field public static final int COMPLEX_UNIT_SP = 2; // 0x2 + field public static final int DATA_NULL_EMPTY = 1; // 0x1 + field public static final int DATA_NULL_UNDEFINED = 0; // 0x0 + field public static final int DENSITY_DEFAULT = 0; // 0x0 + field public static final int DENSITY_NONE = 65535; // 0xffff + field public static final int TYPE_ATTRIBUTE = 2; // 0x2 + field public static final int TYPE_DIMENSION = 5; // 0x5 + field public static final int TYPE_FIRST_COLOR_INT = 28; // 0x1c + field public static final int TYPE_FIRST_INT = 16; // 0x10 + field public static final int TYPE_FLOAT = 4; // 0x4 + field public static final int TYPE_FRACTION = 6; // 0x6 + field public static final int TYPE_INT_BOOLEAN = 18; // 0x12 + field public static final int TYPE_INT_COLOR_ARGB4 = 30; // 0x1e + field public static final int TYPE_INT_COLOR_ARGB8 = 28; // 0x1c + field public static final int TYPE_INT_COLOR_RGB4 = 31; // 0x1f + field public static final int TYPE_INT_COLOR_RGB8 = 29; // 0x1d + field public static final int TYPE_INT_DEC = 16; // 0x10 + field public static final int TYPE_INT_HEX = 17; // 0x11 + field public static final int TYPE_LAST_COLOR_INT = 31; // 0x1f + field public static final int TYPE_LAST_INT = 31; // 0x1f + field public static final int TYPE_NULL = 0; // 0x0 + field public static final int TYPE_REFERENCE = 1; // 0x1 + field public static final int TYPE_STRING = 3; // 0x3 + field public int assetCookie; + field public int changingConfigurations; + field public int data; + field public int density; + field @AnyRes public int resourceId; + field public int sourceResourceId; + field public CharSequence string; + field public int type; + } + + public class Xml { + method public static android.util.AttributeSet asAttributeSet(org.xmlpull.v1.XmlPullParser); + method public static android.util.Xml.Encoding findEncodingByName(String) throws java.io.UnsupportedEncodingException; + method public static org.xmlpull.v1.XmlPullParser newPullParser(); + method public static org.xmlpull.v1.XmlSerializer newSerializer(); + method public static void parse(String, org.xml.sax.ContentHandler) throws org.xml.sax.SAXException; + method public static void parse(java.io.Reader, org.xml.sax.ContentHandler) throws java.io.IOException, org.xml.sax.SAXException; + method public static void parse(java.io.InputStream, android.util.Xml.Encoding, org.xml.sax.ContentHandler) throws java.io.IOException, org.xml.sax.SAXException; + field public static String FEATURE_RELAXED; + } + + public enum Xml.Encoding { + enum_constant public static final android.util.Xml.Encoding ISO_8859_1; + enum_constant public static final android.util.Xml.Encoding US_ASCII; + enum_constant public static final android.util.Xml.Encoding UTF_16; + enum_constant public static final android.util.Xml.Encoding UTF_8; + } + +} + +package android.util.proto { + + public final class ProtoOutputStream { + ctor public ProtoOutputStream(); + ctor public ProtoOutputStream(int); + ctor public ProtoOutputStream(@NonNull java.io.OutputStream); + method public static int checkFieldId(long, long); + method public void dump(@NonNull String); + method public void end(long); + method public void flush(); + method @NonNull public byte[] getBytes(); + method @Nullable public static String getFieldCountString(long); + method @NonNull public static String getFieldIdString(long); + method @Nullable public static String getFieldTypeString(long); + method public int getRawSize(); + method @Nullable public static String getWireTypeString(int); + method public static long makeFieldId(int, long); + method public static long makeToken(int, boolean, int, int, int); + method public long start(long); + method @NonNull public static String token2String(long); + method public void write(long, double); + method public void write(long, float); + method public void write(long, int); + method public void write(long, long); + method public void write(long, boolean); + method public void write(long, @Nullable String); + method public void write(long, @Nullable byte[]); + method public void writeTag(int, int); + field public static final long FIELD_COUNT_MASK = 16492674416640L; // 0xf0000000000L + field public static final long FIELD_COUNT_PACKED = 5497558138880L; // 0x50000000000L + field public static final long FIELD_COUNT_REPEATED = 2199023255552L; // 0x20000000000L + field public static final int FIELD_COUNT_SHIFT = 40; // 0x28 + field public static final long FIELD_COUNT_SINGLE = 1099511627776L; // 0x10000000000L + field public static final long FIELD_COUNT_UNKNOWN = 0L; // 0x0L + field public static final int FIELD_ID_SHIFT = 3; // 0x3 + field public static final long FIELD_TYPE_BOOL = 34359738368L; // 0x800000000L + field public static final long FIELD_TYPE_BYTES = 51539607552L; // 0xc00000000L + field public static final long FIELD_TYPE_DOUBLE = 4294967296L; // 0x100000000L + field public static final long FIELD_TYPE_ENUM = 60129542144L; // 0xe00000000L + field public static final long FIELD_TYPE_FIXED32 = 30064771072L; // 0x700000000L + field public static final long FIELD_TYPE_FIXED64 = 25769803776L; // 0x600000000L + field public static final long FIELD_TYPE_FLOAT = 8589934592L; // 0x200000000L + field public static final long FIELD_TYPE_INT32 = 21474836480L; // 0x500000000L + field public static final long FIELD_TYPE_INT64 = 12884901888L; // 0x300000000L + field public static final long FIELD_TYPE_MASK = 1095216660480L; // 0xff00000000L + field public static final long FIELD_TYPE_MESSAGE = 47244640256L; // 0xb00000000L + field public static final long FIELD_TYPE_SFIXED32 = 64424509440L; // 0xf00000000L + field public static final long FIELD_TYPE_SFIXED64 = 68719476736L; // 0x1000000000L + field public static final int FIELD_TYPE_SHIFT = 32; // 0x20 + field public static final long FIELD_TYPE_SINT32 = 73014444032L; // 0x1100000000L + field public static final long FIELD_TYPE_SINT64 = 77309411328L; // 0x1200000000L + field public static final long FIELD_TYPE_STRING = 38654705664L; // 0x900000000L + field public static final long FIELD_TYPE_UINT32 = 55834574848L; // 0xd00000000L + field public static final long FIELD_TYPE_UINT64 = 17179869184L; // 0x400000000L + field public static final int WIRE_TYPE_END_GROUP = 4; // 0x4 + field public static final int WIRE_TYPE_FIXED32 = 5; // 0x5 + field public static final int WIRE_TYPE_FIXED64 = 1; // 0x1 + field public static final int WIRE_TYPE_LENGTH_DELIMITED = 2; // 0x2 + field public static final int WIRE_TYPE_MASK = 7; // 0x7 + field public static final int WIRE_TYPE_START_GROUP = 3; // 0x3 + field public static final int WIRE_TYPE_VARINT = 0; // 0x0 + } + +} + +package android.view { + + public abstract class AbsSavedState implements android.os.Parcelable { + ctor protected AbsSavedState(android.os.Parcelable); + ctor protected AbsSavedState(android.os.Parcel); + ctor protected AbsSavedState(android.os.Parcel, ClassLoader); + method public int describeContents(); + method public final android.os.Parcelable getSuperState(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final android.view.AbsSavedState EMPTY_STATE; + } + + public abstract class ActionMode { + ctor public ActionMode(); + method public abstract void finish(); + method public abstract android.view.View getCustomView(); + method public abstract android.view.Menu getMenu(); + method public abstract android.view.MenuInflater getMenuInflater(); + method public abstract CharSequence getSubtitle(); + method public Object getTag(); + method public abstract CharSequence getTitle(); + method public boolean getTitleOptionalHint(); + method public int getType(); + method public void hide(long); + method public abstract void invalidate(); + method public void invalidateContentRect(); + method public boolean isTitleOptional(); + method public void onWindowFocusChanged(boolean); + method public abstract void setCustomView(android.view.View); + method public abstract void setSubtitle(CharSequence); + method public abstract void setSubtitle(@StringRes int); + method public void setTag(Object); + method public abstract void setTitle(CharSequence); + method public abstract void setTitle(@StringRes int); + method public void setTitleOptionalHint(boolean); + method public void setType(int); + field public static final int DEFAULT_HIDE_DURATION = -1; // 0xffffffff + field public static final int TYPE_FLOATING = 1; // 0x1 + field public static final int TYPE_PRIMARY = 0; // 0x0 + } + + public static interface ActionMode.Callback { + method public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem); + method public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu); + method public void onDestroyActionMode(android.view.ActionMode); + method public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu); + } + + public abstract static class ActionMode.Callback2 implements android.view.ActionMode.Callback { + ctor public ActionMode.Callback2(); + method public void onGetContentRect(android.view.ActionMode, android.view.View, android.graphics.Rect); + } + + public abstract class ActionProvider { + ctor public ActionProvider(@NonNull android.content.Context); + method public boolean hasSubMenu(); + method public boolean isVisible(); + method @Deprecated @NonNull public abstract android.view.View onCreateActionView(); + method @NonNull public android.view.View onCreateActionView(@NonNull android.view.MenuItem); + method public boolean onPerformDefaultAction(); + method public void onPrepareSubMenu(@NonNull android.view.SubMenu); + method public boolean overridesItemVisibility(); + method public void refreshVisibility(); + method public void setVisibilityListener(@Nullable android.view.ActionProvider.VisibilityListener); + } + + public static interface ActionProvider.VisibilityListener { + method public void onActionProviderVisibilityChanged(boolean); + } + + @UiThread public interface AttachedSurfaceControl { + method public default void addOnBufferTransformHintChangedListener(@NonNull android.view.AttachedSurfaceControl.OnBufferTransformHintChangedListener); + method public boolean applyTransactionOnDraw(@NonNull android.view.SurfaceControl.Transaction); + method @Nullable public android.view.SurfaceControl.Transaction buildReparentTransaction(@NonNull android.view.SurfaceControl); + method public default int getBufferTransformHint(); + method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") @NonNull public default android.window.InputTransferToken getInputTransferToken(); + method @FlaggedApi("com.android.window.flags.jank_api") @NonNull public default android.view.SurfaceControl.OnJankDataListenerRegistration registerOnJankDataListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.SurfaceControl.OnJankDataListener); + method public default void removeOnBufferTransformHintChangedListener(@NonNull android.view.AttachedSurfaceControl.OnBufferTransformHintChangedListener); + method public default void setChildBoundingInsets(@NonNull android.graphics.Rect); + method public default void setTouchableRegion(@Nullable android.graphics.Region); + } + + @UiThread public static interface AttachedSurfaceControl.OnBufferTransformHintChangedListener { + method public void onBufferTransformHintChanged(int); + } + + public final class Choreographer { + method public static android.view.Choreographer getInstance(); + method public void postFrameCallback(android.view.Choreographer.FrameCallback); + method public void postFrameCallbackDelayed(android.view.Choreographer.FrameCallback, long); + method public void postVsyncCallback(@NonNull android.view.Choreographer.VsyncCallback); + method public void removeFrameCallback(android.view.Choreographer.FrameCallback); + method public void removeVsyncCallback(@Nullable android.view.Choreographer.VsyncCallback); + } + + public static interface Choreographer.FrameCallback { + method public void doFrame(long); + } + + public static class Choreographer.FrameData { + method public long getFrameTimeNanos(); + method @NonNull public android.view.Choreographer.FrameTimeline[] getFrameTimelines(); + method @NonNull public android.view.Choreographer.FrameTimeline getPreferredFrameTimeline(); + } + + public static class Choreographer.FrameTimeline { + method public long getDeadlineNanos(); + method public long getExpectedPresentationTimeNanos(); + method public long getVsyncId(); + } + + public static interface Choreographer.VsyncCallback { + method public void onVsync(@NonNull android.view.Choreographer.FrameData); + } + + public interface CollapsibleActionView { + method public void onActionViewCollapsed(); + method public void onActionViewExpanded(); + } + + public final class ContentInfo implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.content.ClipData getClip(); + method @Nullable public android.os.Bundle getExtras(); + method public int getFlags(); + method @Nullable public android.net.Uri getLinkUri(); + method public int getSource(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_CONVERT_TO_PLAIN_TEXT = 1; // 0x1 + field public static final int SOURCE_APP = 0; // 0x0 + field public static final int SOURCE_AUTOFILL = 4; // 0x4 + field public static final int SOURCE_CLIPBOARD = 1; // 0x1 + field public static final int SOURCE_DRAG_AND_DROP = 3; // 0x3 + field public static final int SOURCE_INPUT_METHOD = 2; // 0x2 + field public static final int SOURCE_PROCESS_TEXT = 5; // 0x5 + } + + public static final class ContentInfo.Builder { + ctor public ContentInfo.Builder(@NonNull android.view.ContentInfo); + ctor public ContentInfo.Builder(@NonNull android.content.ClipData, int); + method @NonNull public android.view.ContentInfo build(); + method @NonNull public android.view.ContentInfo.Builder setClip(@NonNull android.content.ClipData); + method @NonNull public android.view.ContentInfo.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.view.ContentInfo.Builder setFlags(int); + method @NonNull public android.view.ContentInfo.Builder setLinkUri(@Nullable android.net.Uri); + method @NonNull public android.view.ContentInfo.Builder setSource(int); + } + + public interface ContextMenu extends android.view.Menu { + method public void clearHeader(); + method public android.view.ContextMenu setHeaderIcon(@DrawableRes int); + method public android.view.ContextMenu setHeaderIcon(android.graphics.drawable.Drawable); + method public android.view.ContextMenu setHeaderTitle(@StringRes int); + method public android.view.ContextMenu setHeaderTitle(CharSequence); + method public android.view.ContextMenu setHeaderView(android.view.View); + } + + public static interface ContextMenu.ContextMenuInfo { + } + + public class ContextThemeWrapper extends android.content.ContextWrapper { + ctor public ContextThemeWrapper(); + ctor public ContextThemeWrapper(android.content.Context, @StyleRes int); + ctor public ContextThemeWrapper(android.content.Context, android.content.res.Resources.Theme); + method public void applyOverrideConfiguration(android.content.res.Configuration); + method protected void onApplyThemeResource(android.content.res.Resources.Theme, int, boolean); + method public void setTheme(@Nullable android.content.res.Resources.Theme); + } + + public final class Display { + method public long getAppVsyncOffsetNanos(); + method public void getCurrentSizeRange(android.graphics.Point, android.graphics.Point); + method @Nullable public android.view.DisplayCutout getCutout(); + method @Nullable public android.hardware.display.DeviceProductInfo getDeviceProductInfo(); + method public int getDisplayId(); + method public int getFlags(); + method public android.view.Display.HdrCapabilities getHdrCapabilities(); + method public float getHdrSdrRatio(); + method @Deprecated public int getHeight(); + method @FlaggedApi("com.android.server.display.feature.flags.highest_hdr_sdr_ratio_api") public float getHighestHdrSdrRatio(); + method @Deprecated public void getMetrics(android.util.DisplayMetrics); + method public android.view.Display.Mode getMode(); + method public String getName(); + method @Deprecated public int getOrientation(); + method @FlaggedApi("android.hardware.flags.overlayproperties_class_api") @NonNull public android.hardware.OverlayProperties getOverlaySupport(); + method @Deprecated public int getPixelFormat(); + method @Nullable public android.graphics.ColorSpace getPreferredWideGamutColorSpace(); + method public long getPresentationDeadlineNanos(); + method @Deprecated public void getRealMetrics(android.util.DisplayMetrics); + method @Deprecated public void getRealSize(android.graphics.Point); + method @Deprecated public void getRectSize(android.graphics.Rect); + method public float getRefreshRate(); + method public int getRotation(); + method @Nullable public android.view.RoundedCorner getRoundedCorner(int); + method @NonNull public android.view.DisplayShape getShape(); + method @Deprecated public void getSize(android.graphics.Point); + method public int getState(); + method @FlaggedApi("com.android.server.display.feature.flags.enable_get_suggested_frame_rate") public float getSuggestedFrameRate(int); + method public android.view.Display.Mode[] getSupportedModes(); + method @FlaggedApi("com.android.server.display.feature.flags.enable_get_supported_refresh_rates") @NonNull public float[] getSupportedRefreshRates(); + method @Deprecated public int getWidth(); + method @FlaggedApi("com.android.server.display.feature.flags.enable_has_arr_support") public boolean hasArrSupport(); + method public boolean isHdr(); + method public boolean isHdrSdrRatioAvailable(); + method public boolean isMinimalPostProcessingSupported(); + method public boolean isValid(); + method public boolean isWideColorGamut(); + method public void registerHdrSdrRatioChangedListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public void unregisterHdrSdrRatioChangedListener(@NonNull java.util.function.Consumer); + field public static final int DEFAULT_DISPLAY = 0; // 0x0 + field public static final int FLAG_PRESENTATION = 8; // 0x8 + field public static final int FLAG_PRIVATE = 4; // 0x4 + field public static final int FLAG_ROUND = 16; // 0x10 + field public static final int FLAG_SECURE = 2; // 0x2 + field public static final int FLAG_SUPPORTS_PROTECTED_BUFFERS = 1; // 0x1 + field @FlaggedApi("com.android.server.display.feature.flags.enable_get_suggested_frame_rate") public static final int FRAME_RATE_CATEGORY_HIGH = 1; // 0x1 + field @FlaggedApi("com.android.server.display.feature.flags.enable_get_suggested_frame_rate") public static final int FRAME_RATE_CATEGORY_NORMAL = 0; // 0x0 + field public static final int INVALID_DISPLAY = -1; // 0xffffffff + field public static final int STATE_DOZE = 3; // 0x3 + field public static final int STATE_DOZE_SUSPEND = 4; // 0x4 + field public static final int STATE_OFF = 1; // 0x1 + field public static final int STATE_ON = 2; // 0x2 + field public static final int STATE_ON_SUSPEND = 6; // 0x6 + field public static final int STATE_UNKNOWN = 0; // 0x0 + field public static final int STATE_VR = 5; // 0x5 + } + + public static final class Display.HdrCapabilities implements android.os.Parcelable { + method public int describeContents(); + method public float getDesiredMaxAverageLuminance(); + method public float getDesiredMaxLuminance(); + method public float getDesiredMinLuminance(); + method @Deprecated public int[] getSupportedHdrTypes(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int HDR_TYPE_DOLBY_VISION = 1; // 0x1 + field public static final int HDR_TYPE_HDR10 = 2; // 0x2 + field public static final int HDR_TYPE_HDR10_PLUS = 4; // 0x4 + field public static final int HDR_TYPE_HLG = 3; // 0x3 + field public static final int HDR_TYPE_INVALID = -1; // 0xffffffff + field public static final float INVALID_LUMINANCE = -1.0f; + } + + public static final class Display.Mode implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public float[] getAlternativeRefreshRates(); + method public int getModeId(); + method public int getPhysicalHeight(); + method public int getPhysicalWidth(); + method public float getRefreshRate(); + method @NonNull public int[] getSupportedHdrTypes(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class DisplayCutout { + ctor public DisplayCutout(@NonNull android.graphics.Insets, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect); + ctor public DisplayCutout(@NonNull android.graphics.Insets, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, @NonNull android.graphics.Insets); + ctor @Deprecated public DisplayCutout(@Nullable android.graphics.Rect, @Nullable java.util.List); + method @NonNull public android.graphics.Rect getBoundingRectBottom(); + method @NonNull public android.graphics.Rect getBoundingRectLeft(); + method @NonNull public android.graphics.Rect getBoundingRectRight(); + method @NonNull public android.graphics.Rect getBoundingRectTop(); + method @NonNull public java.util.List getBoundingRects(); + method @Nullable public android.graphics.Path getCutoutPath(); + method public int getSafeInsetBottom(); + method public int getSafeInsetLeft(); + method public int getSafeInsetRight(); + method public int getSafeInsetTop(); + method @NonNull public android.graphics.Insets getWaterfallInsets(); + } + + public static final class DisplayCutout.Builder { + ctor public DisplayCutout.Builder(); + method @NonNull public android.view.DisplayCutout build(); + method @NonNull public android.view.DisplayCutout.Builder setBoundingRectBottom(@NonNull android.graphics.Rect); + method @NonNull public android.view.DisplayCutout.Builder setBoundingRectLeft(@NonNull android.graphics.Rect); + method @NonNull public android.view.DisplayCutout.Builder setBoundingRectRight(@NonNull android.graphics.Rect); + method @NonNull public android.view.DisplayCutout.Builder setBoundingRectTop(@NonNull android.graphics.Rect); + method @NonNull public android.view.DisplayCutout.Builder setCutoutPath(@NonNull android.graphics.Path); + method @NonNull public android.view.DisplayCutout.Builder setSafeInsets(@NonNull android.graphics.Insets); + method @NonNull public android.view.DisplayCutout.Builder setWaterfallInsets(@NonNull android.graphics.Insets); + } + + public final class DisplayShape implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.graphics.Path getPath(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class DragAndDropPermissions implements android.os.Parcelable { + method public int describeContents(); + method public void release(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class DragEvent implements android.os.Parcelable { + method public int describeContents(); + method public int getAction(); + method public android.content.ClipData getClipData(); + method public android.content.ClipDescription getClipDescription(); + method public Object getLocalState(); + method public boolean getResult(); + method public float getX(); + method public float getY(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int ACTION_DRAG_ENDED = 4; // 0x4 + field public static final int ACTION_DRAG_ENTERED = 5; // 0x5 + field public static final int ACTION_DRAG_EXITED = 6; // 0x6 + field public static final int ACTION_DRAG_LOCATION = 2; // 0x2 + field public static final int ACTION_DRAG_STARTED = 1; // 0x1 + field public static final int ACTION_DROP = 3; // 0x3 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class FocusFinder { + method public android.view.View findNearestTouchable(android.view.ViewGroup, int, int, int, int[]); + method public final android.view.View findNextFocus(android.view.ViewGroup, android.view.View, int); + method public android.view.View findNextFocusFromRect(android.view.ViewGroup, android.graphics.Rect, int); + method public android.view.View findNextKeyboardNavigationCluster(@NonNull android.view.View, @Nullable android.view.View, int); + method public static android.view.FocusFinder getInstance(); + } + + public final class FrameMetrics { + ctor public FrameMetrics(android.view.FrameMetrics); + method public long getMetric(int); + field public static final int ANIMATION_DURATION = 2; // 0x2 + field public static final int COMMAND_ISSUE_DURATION = 6; // 0x6 + field public static final int DEADLINE = 13; // 0xd + field public static final int DRAW_DURATION = 4; // 0x4 + field public static final int FIRST_DRAW_FRAME = 9; // 0x9 + field @FlaggedApi("com.android.window.flags.jank_api") public static final int FRAME_TIMELINE_VSYNC_ID = 14; // 0xe + field public static final int GPU_DURATION = 12; // 0xc + field public static final int INPUT_HANDLING_DURATION = 1; // 0x1 + field public static final int INTENDED_VSYNC_TIMESTAMP = 10; // 0xa + field public static final int LAYOUT_MEASURE_DURATION = 3; // 0x3 + field public static final int SWAP_BUFFERS_DURATION = 7; // 0x7 + field public static final int SYNC_DURATION = 5; // 0x5 + field public static final int TOTAL_DURATION = 8; // 0x8 + field public static final int UNKNOWN_DELAY_DURATION = 0; // 0x0 + field public static final int VSYNC_TIMESTAMP = 11; // 0xb + } + + public abstract class FrameStats { + ctor public FrameStats(); + method public final long getEndTimeNano(); + method public final int getFrameCount(); + method public final long getFramePresentedTimeNano(int); + method public final long getRefreshPeriodNano(); + method public final long getStartTimeNano(); + field public static final long UNDEFINED_TIME_NANO = -1L; // 0xffffffffffffffffL + } + + public class GestureDetector { + ctor @Deprecated public GestureDetector(@NonNull android.view.GestureDetector.OnGestureListener, @Nullable android.os.Handler); + ctor @Deprecated public GestureDetector(@NonNull android.view.GestureDetector.OnGestureListener); + ctor public GestureDetector(@Nullable @UiContext android.content.Context, @NonNull android.view.GestureDetector.OnGestureListener); + ctor public GestureDetector(@Nullable @UiContext android.content.Context, @NonNull android.view.GestureDetector.OnGestureListener, @Nullable android.os.Handler); + ctor public GestureDetector(@Nullable @UiContext android.content.Context, @NonNull android.view.GestureDetector.OnGestureListener, @Nullable android.os.Handler, boolean); + method public boolean isLongpressEnabled(); + method public boolean onGenericMotionEvent(@NonNull android.view.MotionEvent); + method public boolean onTouchEvent(@NonNull android.view.MotionEvent); + method public void setContextClickListener(@Nullable android.view.GestureDetector.OnContextClickListener); + method public void setIsLongpressEnabled(boolean); + method public void setOnDoubleTapListener(@Nullable android.view.GestureDetector.OnDoubleTapListener); + } + + public static interface GestureDetector.OnContextClickListener { + method public boolean onContextClick(@NonNull android.view.MotionEvent); + } + + public static interface GestureDetector.OnDoubleTapListener { + method public boolean onDoubleTap(@NonNull android.view.MotionEvent); + method public boolean onDoubleTapEvent(@NonNull android.view.MotionEvent); + method public boolean onSingleTapConfirmed(@NonNull android.view.MotionEvent); + } + + public static interface GestureDetector.OnGestureListener { + method public boolean onDown(@NonNull android.view.MotionEvent); + method public boolean onFling(@Nullable android.view.MotionEvent, @NonNull android.view.MotionEvent, float, float); + method public void onLongPress(@NonNull android.view.MotionEvent); + method public boolean onScroll(@Nullable android.view.MotionEvent, @NonNull android.view.MotionEvent, float, float); + method public void onShowPress(@NonNull android.view.MotionEvent); + method public boolean onSingleTapUp(@NonNull android.view.MotionEvent); + } + + public static class GestureDetector.SimpleOnGestureListener implements android.view.GestureDetector.OnContextClickListener android.view.GestureDetector.OnDoubleTapListener android.view.GestureDetector.OnGestureListener { + ctor public GestureDetector.SimpleOnGestureListener(); + method public boolean onContextClick(@NonNull android.view.MotionEvent); + method public boolean onDoubleTap(@NonNull android.view.MotionEvent); + method public boolean onDoubleTapEvent(@NonNull android.view.MotionEvent); + method public boolean onDown(@NonNull android.view.MotionEvent); + method public boolean onFling(@Nullable android.view.MotionEvent, @NonNull android.view.MotionEvent, float, float); + method public void onLongPress(@NonNull android.view.MotionEvent); + method public boolean onScroll(@Nullable android.view.MotionEvent, @NonNull android.view.MotionEvent, float, float); + method public void onShowPress(@NonNull android.view.MotionEvent); + method public boolean onSingleTapConfirmed(@NonNull android.view.MotionEvent); + method public boolean onSingleTapUp(@NonNull android.view.MotionEvent); + } + + public class Gravity { + ctor public Gravity(); + method public static void apply(int, int, int, android.graphics.Rect, android.graphics.Rect); + method public static void apply(int, int, int, @NonNull android.graphics.Rect, @NonNull android.graphics.Rect, int); + method public static void apply(int, int, int, @NonNull android.graphics.Rect, int, int, @NonNull android.graphics.Rect); + method public static void apply(int, int, int, @NonNull android.graphics.Rect, int, int, @NonNull android.graphics.Rect, int); + method public static void applyDisplay(int, @NonNull android.graphics.Rect, @NonNull android.graphics.Rect); + method public static void applyDisplay(int, @NonNull android.graphics.Rect, @NonNull android.graphics.Rect, int); + method public static int getAbsoluteGravity(int, int); + method public static boolean isHorizontal(int); + method public static boolean isVertical(int); + field public static final int AXIS_CLIP = 8; // 0x8 + field public static final int AXIS_PULL_AFTER = 4; // 0x4 + field public static final int AXIS_PULL_BEFORE = 2; // 0x2 + field public static final int AXIS_SPECIFIED = 1; // 0x1 + field public static final int AXIS_X_SHIFT = 0; // 0x0 + field public static final int AXIS_Y_SHIFT = 4; // 0x4 + field public static final int BOTTOM = 80; // 0x50 + field public static final int CENTER = 17; // 0x11 + field public static final int CENTER_HORIZONTAL = 1; // 0x1 + field public static final int CENTER_VERTICAL = 16; // 0x10 + field public static final int CLIP_HORIZONTAL = 8; // 0x8 + field public static final int CLIP_VERTICAL = 128; // 0x80 + field public static final int DISPLAY_CLIP_HORIZONTAL = 16777216; // 0x1000000 + field public static final int DISPLAY_CLIP_VERTICAL = 268435456; // 0x10000000 + field public static final int END = 8388613; // 0x800005 + field public static final int FILL = 119; // 0x77 + field public static final int FILL_HORIZONTAL = 7; // 0x7 + field public static final int FILL_VERTICAL = 112; // 0x70 + field public static final int HORIZONTAL_GRAVITY_MASK = 7; // 0x7 + field public static final int LEFT = 3; // 0x3 + field public static final int NO_GRAVITY = 0; // 0x0 + field public static final int RELATIVE_HORIZONTAL_GRAVITY_MASK = 8388615; // 0x800007 + field public static final int RELATIVE_LAYOUT_DIRECTION = 8388608; // 0x800000 + field public static final int RIGHT = 5; // 0x5 + field public static final int START = 8388611; // 0x800003 + field public static final int TOP = 48; // 0x30 + field public static final int VERTICAL_GRAVITY_MASK = 112; // 0x70 + } + + public class HapticFeedbackConstants { + field public static final int CLOCK_TICK = 4; // 0x4 + field public static final int CONFIRM = 16; // 0x10 + field public static final int CONTEXT_CLICK = 6; // 0x6 + field public static final int DRAG_START = 25; // 0x19 + field @Deprecated public static final int FLAG_IGNORE_GLOBAL_SETTING = 2; // 0x2 + field public static final int FLAG_IGNORE_VIEW_SETTING = 1; // 0x1 + field public static final int GESTURE_END = 13; // 0xd + field public static final int GESTURE_START = 12; // 0xc + field public static final int GESTURE_THRESHOLD_ACTIVATE = 23; // 0x17 + field public static final int GESTURE_THRESHOLD_DEACTIVATE = 24; // 0x18 + field public static final int KEYBOARD_PRESS = 3; // 0x3 + field public static final int KEYBOARD_RELEASE = 7; // 0x7 + field public static final int KEYBOARD_TAP = 3; // 0x3 + field public static final int LONG_PRESS = 0; // 0x0 + field public static final int NO_HAPTICS = -1; // 0xffffffff + field public static final int REJECT = 17; // 0x11 + field public static final int SEGMENT_FREQUENT_TICK = 27; // 0x1b + field public static final int SEGMENT_TICK = 26; // 0x1a + field public static final int TEXT_HANDLE_MOVE = 9; // 0x9 + field public static final int TOGGLE_OFF = 22; // 0x16 + field public static final int TOGGLE_ON = 21; // 0x15 + field public static final int VIRTUAL_KEY = 1; // 0x1 + field public static final int VIRTUAL_KEY_RELEASE = 8; // 0x8 + } + + public class InflateException extends java.lang.RuntimeException { + ctor public InflateException(); + ctor public InflateException(String, Throwable); + ctor public InflateException(String); + ctor public InflateException(Throwable); + } + + public final class InputDevice implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.hardware.BatteryState getBatteryState(); + method public int getControllerNumber(); + method public String getDescriptor(); + method @Nullable public static android.view.InputDevice getDevice(int); + method public static int[] getDeviceIds(); + method public int getId(); + method public android.view.KeyCharacterMap getKeyCharacterMap(); + method public int getKeyCodeForKeyLocation(int); + method public int getKeyboardType(); + method @NonNull public android.hardware.lights.LightsManager getLightsManager(); + method public android.view.InputDevice.MotionRange getMotionRange(int); + method public android.view.InputDevice.MotionRange getMotionRange(int, int); + method public java.util.List getMotionRanges(); + method public String getName(); + method public int getProductId(); + method @NonNull public android.hardware.SensorManager getSensorManager(); + method public int getSources(); + method public int getVendorId(); + method @Deprecated public android.os.Vibrator getVibrator(); + method @NonNull public android.os.VibratorManager getVibratorManager(); + method public boolean[] hasKeys(int...); + method public boolean hasMicrophone(); + method public boolean isEnabled(); + method public boolean isExternal(); + method public boolean isVirtual(); + method public boolean supportsSource(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int KEYBOARD_TYPE_ALPHABETIC = 2; // 0x2 + field public static final int KEYBOARD_TYPE_NONE = 0; // 0x0 + field public static final int KEYBOARD_TYPE_NON_ALPHABETIC = 1; // 0x1 + field @Deprecated public static final int MOTION_RANGE_ORIENTATION = 8; // 0x8 + field @Deprecated public static final int MOTION_RANGE_PRESSURE = 2; // 0x2 + field @Deprecated public static final int MOTION_RANGE_SIZE = 3; // 0x3 + field @Deprecated public static final int MOTION_RANGE_TOOL_MAJOR = 6; // 0x6 + field @Deprecated public static final int MOTION_RANGE_TOOL_MINOR = 7; // 0x7 + field @Deprecated public static final int MOTION_RANGE_TOUCH_MAJOR = 4; // 0x4 + field @Deprecated public static final int MOTION_RANGE_TOUCH_MINOR = 5; // 0x5 + field @Deprecated public static final int MOTION_RANGE_X = 0; // 0x0 + field @Deprecated public static final int MOTION_RANGE_Y = 1; // 0x1 + field public static final int SOURCE_ANY = -256; // 0xffffff00 + field public static final int SOURCE_BLUETOOTH_STYLUS = 49154; // 0xc002 + field public static final int SOURCE_CLASS_BUTTON = 1; // 0x1 + field public static final int SOURCE_CLASS_JOYSTICK = 16; // 0x10 + field public static final int SOURCE_CLASS_MASK = 255; // 0xff + field public static final int SOURCE_CLASS_NONE = 0; // 0x0 + field public static final int SOURCE_CLASS_POINTER = 2; // 0x2 + field public static final int SOURCE_CLASS_POSITION = 8; // 0x8 + field public static final int SOURCE_CLASS_TRACKBALL = 4; // 0x4 + field public static final int SOURCE_DPAD = 513; // 0x201 + field public static final int SOURCE_GAMEPAD = 1025; // 0x401 + field public static final int SOURCE_HDMI = 33554433; // 0x2000001 + field public static final int SOURCE_JOYSTICK = 16777232; // 0x1000010 + field public static final int SOURCE_KEYBOARD = 257; // 0x101 + field public static final int SOURCE_MOUSE = 8194; // 0x2002 + field public static final int SOURCE_MOUSE_RELATIVE = 131076; // 0x20004 + field public static final int SOURCE_ROTARY_ENCODER = 4194304; // 0x400000 + field public static final int SOURCE_SENSOR = 67108864; // 0x4000000 + field public static final int SOURCE_STYLUS = 16386; // 0x4002 + field public static final int SOURCE_TOUCHPAD = 1048584; // 0x100008 + field public static final int SOURCE_TOUCHSCREEN = 4098; // 0x1002 + field public static final int SOURCE_TOUCH_NAVIGATION = 2097152; // 0x200000 + field public static final int SOURCE_TRACKBALL = 65540; // 0x10004 + field public static final int SOURCE_UNKNOWN = 0; // 0x0 + } + + public static final class InputDevice.MotionRange { + method public int getAxis(); + method public float getFlat(); + method public float getFuzz(); + method public float getMax(); + method public float getMin(); + method public float getRange(); + method public float getResolution(); + method public int getSource(); + method public boolean isFromSource(int); + } + + @FlaggedApi("com.android.input.flags.input_device_view_behavior_api") public static final class InputDevice.ViewBehavior { + method @FlaggedApi("com.android.input.flags.input_device_view_behavior_api") public boolean shouldSmoothScroll(int, int); + } + + public abstract class InputEvent implements android.os.Parcelable { + method public int describeContents(); + method public final android.view.InputDevice getDevice(); + method public abstract int getDeviceId(); + method public abstract long getEventTime(); + method public abstract int getSource(); + method public boolean isFromSource(int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class InputQueue { + } + + public static interface InputQueue.Callback { + method public void onInputQueueCreated(android.view.InputQueue); + method public void onInputQueueDestroyed(android.view.InputQueue); + } + + public class KeyCharacterMap implements android.os.Parcelable { + method public int describeContents(); + method public static boolean deviceHasKey(int); + method public static boolean[] deviceHasKeys(int[]); + method public int get(int, int); + method public static int getDeadChar(int, int); + method public char getDisplayLabel(int); + method public android.view.KeyEvent[] getEvents(char[]); + method @Deprecated public boolean getKeyData(int, android.view.KeyCharacterMap.KeyData); + method public int getKeyboardType(); + method public char getMatch(int, char[]); + method public char getMatch(int, char[], int); + method public int getModifierBehavior(); + method public char getNumber(int); + method public boolean isPrintingKey(int); + method public static android.view.KeyCharacterMap load(int); + method public void writeToParcel(android.os.Parcel, int); + field public static final int ALPHA = 3; // 0x3 + field @Deprecated public static final int BUILT_IN_KEYBOARD = 0; // 0x0 + field public static final int COMBINING_ACCENT = -2147483648; // 0x80000000 + field public static final int COMBINING_ACCENT_MASK = 2147483647; // 0x7fffffff + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FULL = 4; // 0x4 + field public static final char HEX_INPUT = 61184; // 0xef00 '\uef00' + field public static final int MODIFIER_BEHAVIOR_CHORDED = 0; // 0x0 + field public static final int MODIFIER_BEHAVIOR_CHORDED_OR_TOGGLED = 1; // 0x1 + field public static final int NUMERIC = 1; // 0x1 + field public static final char PICKER_DIALOG_INPUT = 61185; // 0xef01 '\uef01' + field public static final int PREDICTIVE = 2; // 0x2 + field public static final int SPECIAL_FUNCTION = 5; // 0x5 + field public static final int VIRTUAL_KEYBOARD = -1; // 0xffffffff + } + + @Deprecated public static class KeyCharacterMap.KeyData { + ctor @Deprecated public KeyCharacterMap.KeyData(); + field @Deprecated public static final int META_LENGTH = 4; // 0x4 + field @Deprecated public char displayLabel; + field @Deprecated public char[] meta; + field @Deprecated public char number; + } + + public static class KeyCharacterMap.UnavailableException extends android.util.AndroidRuntimeException { + ctor public KeyCharacterMap.UnavailableException(String); + } + + public class KeyEvent extends android.view.InputEvent implements android.os.Parcelable { + ctor public KeyEvent(int, int); + ctor public KeyEvent(long, long, int, int, int); + ctor public KeyEvent(long, long, int, int, int, int); + ctor public KeyEvent(long, long, int, int, int, int, int, int); + ctor public KeyEvent(long, long, int, int, int, int, int, int, int); + ctor public KeyEvent(long, long, int, int, int, int, int, int, int, int); + ctor public KeyEvent(long, String, int, int); + ctor public KeyEvent(android.view.KeyEvent); + ctor @Deprecated public KeyEvent(android.view.KeyEvent, long, int); + method public static android.view.KeyEvent changeAction(android.view.KeyEvent, int); + method public static android.view.KeyEvent changeFlags(android.view.KeyEvent, int); + method public static android.view.KeyEvent changeTimeRepeat(android.view.KeyEvent, long, int); + method public static android.view.KeyEvent changeTimeRepeat(android.view.KeyEvent, long, int, int); + method @Deprecated public final boolean dispatch(android.view.KeyEvent.Callback); + method public final boolean dispatch(android.view.KeyEvent.Callback, android.view.KeyEvent.DispatcherState, Object); + method public final int getAction(); + method @Deprecated public final String getCharacters(); + method public static int getDeadChar(int, int); + method public final int getDeviceId(); + method public char getDisplayLabel(); + method public final long getDownTime(); + method public final long getEventTime(); + method public final int getFlags(); + method public final android.view.KeyCharacterMap getKeyCharacterMap(); + method public final int getKeyCode(); + method @Deprecated public boolean getKeyData(android.view.KeyCharacterMap.KeyData); + method public char getMatch(char[]); + method public char getMatch(char[], int); + method public static int getMaxKeyCode(); + method public final int getMetaState(); + method public static int getModifierMetaStateMask(); + method public final int getModifiers(); + method public char getNumber(); + method public final int getRepeatCount(); + method public final int getScanCode(); + method public final int getSource(); + method public int getUnicodeChar(); + method public int getUnicodeChar(int); + method public final boolean hasModifiers(int); + method public final boolean hasNoModifiers(); + method public final boolean isAltPressed(); + method public final boolean isCanceled(); + method public final boolean isCapsLockOn(); + method public final boolean isCtrlPressed(); + method public final boolean isFunctionPressed(); + method public static final boolean isGamepadButton(int); + method public final boolean isLongPress(); + method public static final boolean isMediaSessionKey(int); + method public final boolean isMetaPressed(); + method public static boolean isModifierKey(int); + method public final boolean isNumLockOn(); + method public boolean isPrintingKey(); + method public final boolean isScrollLockOn(); + method public final boolean isShiftPressed(); + method public final boolean isSymPressed(); + method public final boolean isSystem(); + method public final boolean isTracking(); + method public static int keyCodeFromString(@NonNull String); + method public static String keyCodeToString(int); + method public static boolean metaStateHasModifiers(int, int); + method public static boolean metaStateHasNoModifiers(int); + method public static int normalizeMetaState(int); + method public final void setSource(int); + method public final void startTracking(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int ACTION_DOWN = 0; // 0x0 + field @Deprecated public static final int ACTION_MULTIPLE = 2; // 0x2 + field public static final int ACTION_UP = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_CANCELED = 32; // 0x20 + field public static final int FLAG_CANCELED_LONG_PRESS = 256; // 0x100 + field public static final int FLAG_EDITOR_ACTION = 16; // 0x10 + field public static final int FLAG_FALLBACK = 1024; // 0x400 + field public static final int FLAG_FROM_SYSTEM = 8; // 0x8 + field public static final int FLAG_KEEP_TOUCH_MODE = 4; // 0x4 + field public static final int FLAG_LONG_PRESS = 128; // 0x80 + field public static final int FLAG_SOFT_KEYBOARD = 2; // 0x2 + field public static final int FLAG_TRACKING = 512; // 0x200 + field public static final int FLAG_VIRTUAL_HARD_KEY = 64; // 0x40 + field @Deprecated public static final int FLAG_WOKE_HERE = 1; // 0x1 + field public static final int KEYCODE_0 = 7; // 0x7 + field public static final int KEYCODE_1 = 8; // 0x8 + field public static final int KEYCODE_11 = 227; // 0xe3 + field public static final int KEYCODE_12 = 228; // 0xe4 + field public static final int KEYCODE_2 = 9; // 0x9 + field public static final int KEYCODE_3 = 10; // 0xa + field public static final int KEYCODE_3D_MODE = 206; // 0xce + field public static final int KEYCODE_4 = 11; // 0xb + field public static final int KEYCODE_5 = 12; // 0xc + field public static final int KEYCODE_6 = 13; // 0xd + field public static final int KEYCODE_7 = 14; // 0xe + field public static final int KEYCODE_8 = 15; // 0xf + field public static final int KEYCODE_9 = 16; // 0x10 + field public static final int KEYCODE_A = 29; // 0x1d + field public static final int KEYCODE_ALL_APPS = 284; // 0x11c + field public static final int KEYCODE_ALT_LEFT = 57; // 0x39 + field public static final int KEYCODE_ALT_RIGHT = 58; // 0x3a + field public static final int KEYCODE_APOSTROPHE = 75; // 0x4b + field public static final int KEYCODE_APP_SWITCH = 187; // 0xbb + field public static final int KEYCODE_ASSIST = 219; // 0xdb + field public static final int KEYCODE_AT = 77; // 0x4d + field public static final int KEYCODE_AVR_INPUT = 182; // 0xb6 + field public static final int KEYCODE_AVR_POWER = 181; // 0xb5 + field public static final int KEYCODE_B = 30; // 0x1e + field public static final int KEYCODE_BACK = 4; // 0x4 + field public static final int KEYCODE_BACKSLASH = 73; // 0x49 + field public static final int KEYCODE_BOOKMARK = 174; // 0xae + field public static final int KEYCODE_BREAK = 121; // 0x79 + field public static final int KEYCODE_BRIGHTNESS_DOWN = 220; // 0xdc + field public static final int KEYCODE_BRIGHTNESS_UP = 221; // 0xdd + field public static final int KEYCODE_BUTTON_1 = 188; // 0xbc + field public static final int KEYCODE_BUTTON_10 = 197; // 0xc5 + field public static final int KEYCODE_BUTTON_11 = 198; // 0xc6 + field public static final int KEYCODE_BUTTON_12 = 199; // 0xc7 + field public static final int KEYCODE_BUTTON_13 = 200; // 0xc8 + field public static final int KEYCODE_BUTTON_14 = 201; // 0xc9 + field public static final int KEYCODE_BUTTON_15 = 202; // 0xca + field public static final int KEYCODE_BUTTON_16 = 203; // 0xcb + field public static final int KEYCODE_BUTTON_2 = 189; // 0xbd + field public static final int KEYCODE_BUTTON_3 = 190; // 0xbe + field public static final int KEYCODE_BUTTON_4 = 191; // 0xbf + field public static final int KEYCODE_BUTTON_5 = 192; // 0xc0 + field public static final int KEYCODE_BUTTON_6 = 193; // 0xc1 + field public static final int KEYCODE_BUTTON_7 = 194; // 0xc2 + field public static final int KEYCODE_BUTTON_8 = 195; // 0xc3 + field public static final int KEYCODE_BUTTON_9 = 196; // 0xc4 + field public static final int KEYCODE_BUTTON_A = 96; // 0x60 + field public static final int KEYCODE_BUTTON_B = 97; // 0x61 + field public static final int KEYCODE_BUTTON_C = 98; // 0x62 + field public static final int KEYCODE_BUTTON_L1 = 102; // 0x66 + field public static final int KEYCODE_BUTTON_L2 = 104; // 0x68 + field public static final int KEYCODE_BUTTON_MODE = 110; // 0x6e + field public static final int KEYCODE_BUTTON_R1 = 103; // 0x67 + field public static final int KEYCODE_BUTTON_R2 = 105; // 0x69 + field public static final int KEYCODE_BUTTON_SELECT = 109; // 0x6d + field public static final int KEYCODE_BUTTON_START = 108; // 0x6c + field public static final int KEYCODE_BUTTON_THUMBL = 106; // 0x6a + field public static final int KEYCODE_BUTTON_THUMBR = 107; // 0x6b + field public static final int KEYCODE_BUTTON_X = 99; // 0x63 + field public static final int KEYCODE_BUTTON_Y = 100; // 0x64 + field public static final int KEYCODE_BUTTON_Z = 101; // 0x65 + field public static final int KEYCODE_C = 31; // 0x1f + field public static final int KEYCODE_CALCULATOR = 210; // 0xd2 + field public static final int KEYCODE_CALENDAR = 208; // 0xd0 + field public static final int KEYCODE_CALL = 5; // 0x5 + field public static final int KEYCODE_CAMERA = 27; // 0x1b + field public static final int KEYCODE_CAPS_LOCK = 115; // 0x73 + field public static final int KEYCODE_CAPTIONS = 175; // 0xaf + field public static final int KEYCODE_CHANNEL_DOWN = 167; // 0xa7 + field public static final int KEYCODE_CHANNEL_UP = 166; // 0xa6 + field public static final int KEYCODE_CLEAR = 28; // 0x1c + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_CLOSE = 321; // 0x141 + field public static final int KEYCODE_COMMA = 55; // 0x37 + field public static final int KEYCODE_CONTACTS = 207; // 0xcf + field public static final int KEYCODE_COPY = 278; // 0x116 + field public static final int KEYCODE_CTRL_LEFT = 113; // 0x71 + field public static final int KEYCODE_CTRL_RIGHT = 114; // 0x72 + field public static final int KEYCODE_CUT = 277; // 0x115 + field public static final int KEYCODE_D = 32; // 0x20 + field public static final int KEYCODE_DEL = 67; // 0x43 + field public static final int KEYCODE_DEMO_APP_1 = 301; // 0x12d + field public static final int KEYCODE_DEMO_APP_2 = 302; // 0x12e + field public static final int KEYCODE_DEMO_APP_3 = 303; // 0x12f + field public static final int KEYCODE_DEMO_APP_4 = 304; // 0x130 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_DICTATE = 319; // 0x13f + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_DO_NOT_DISTURB = 322; // 0x142 + field public static final int KEYCODE_DPAD_CENTER = 23; // 0x17 + field public static final int KEYCODE_DPAD_DOWN = 20; // 0x14 + field public static final int KEYCODE_DPAD_DOWN_LEFT = 269; // 0x10d + field public static final int KEYCODE_DPAD_DOWN_RIGHT = 271; // 0x10f + field public static final int KEYCODE_DPAD_LEFT = 21; // 0x15 + field public static final int KEYCODE_DPAD_RIGHT = 22; // 0x16 + field public static final int KEYCODE_DPAD_UP = 19; // 0x13 + field public static final int KEYCODE_DPAD_UP_LEFT = 268; // 0x10c + field public static final int KEYCODE_DPAD_UP_RIGHT = 270; // 0x10e + field public static final int KEYCODE_DVR = 173; // 0xad + field public static final int KEYCODE_E = 33; // 0x21 + field public static final int KEYCODE_EISU = 212; // 0xd4 + field public static final int KEYCODE_EMOJI_PICKER = 317; // 0x13d + field public static final int KEYCODE_ENDCALL = 6; // 0x6 + field public static final int KEYCODE_ENTER = 66; // 0x42 + field public static final int KEYCODE_ENVELOPE = 65; // 0x41 + field public static final int KEYCODE_EQUALS = 70; // 0x46 + field public static final int KEYCODE_ESCAPE = 111; // 0x6f + field public static final int KEYCODE_EXPLORER = 64; // 0x40 + field public static final int KEYCODE_F = 34; // 0x22 + field public static final int KEYCODE_F1 = 131; // 0x83 + field public static final int KEYCODE_F10 = 140; // 0x8c + field public static final int KEYCODE_F11 = 141; // 0x8d + field public static final int KEYCODE_F12 = 142; // 0x8e + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F13 = 326; // 0x146 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F14 = 327; // 0x147 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F15 = 328; // 0x148 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F16 = 329; // 0x149 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F17 = 330; // 0x14a + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F18 = 331; // 0x14b + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F19 = 332; // 0x14c + field public static final int KEYCODE_F2 = 132; // 0x84 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F20 = 333; // 0x14d + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F21 = 334; // 0x14e + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F22 = 335; // 0x14f + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F23 = 336; // 0x150 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_F24 = 337; // 0x151 + field public static final int KEYCODE_F3 = 133; // 0x85 + field public static final int KEYCODE_F4 = 134; // 0x86 + field public static final int KEYCODE_F5 = 135; // 0x87 + field public static final int KEYCODE_F6 = 136; // 0x88 + field public static final int KEYCODE_F7 = 137; // 0x89 + field public static final int KEYCODE_F8 = 138; // 0x8a + field public static final int KEYCODE_F9 = 139; // 0x8b + field public static final int KEYCODE_FEATURED_APP_1 = 297; // 0x129 + field public static final int KEYCODE_FEATURED_APP_2 = 298; // 0x12a + field public static final int KEYCODE_FEATURED_APP_3 = 299; // 0x12b + field public static final int KEYCODE_FEATURED_APP_4 = 300; // 0x12c + field public static final int KEYCODE_FOCUS = 80; // 0x50 + field public static final int KEYCODE_FORWARD = 125; // 0x7d + field public static final int KEYCODE_FORWARD_DEL = 112; // 0x70 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_FULLSCREEN = 325; // 0x145 + field public static final int KEYCODE_FUNCTION = 119; // 0x77 + field public static final int KEYCODE_G = 35; // 0x23 + field public static final int KEYCODE_GRAVE = 68; // 0x44 + field public static final int KEYCODE_GUIDE = 172; // 0xac + field public static final int KEYCODE_H = 36; // 0x24 + field public static final int KEYCODE_HEADSETHOOK = 79; // 0x4f + field public static final int KEYCODE_HELP = 259; // 0x103 + field public static final int KEYCODE_HENKAN = 214; // 0xd6 + field public static final int KEYCODE_HOME = 3; // 0x3 + field public static final int KEYCODE_I = 37; // 0x25 + field public static final int KEYCODE_INFO = 165; // 0xa5 + field public static final int KEYCODE_INSERT = 124; // 0x7c + field public static final int KEYCODE_J = 38; // 0x26 + field public static final int KEYCODE_K = 39; // 0x27 + field public static final int KEYCODE_KANA = 218; // 0xda + field public static final int KEYCODE_KATAKANA_HIRAGANA = 215; // 0xd7 + field public static final int KEYCODE_KEYBOARD_BACKLIGHT_DOWN = 305; // 0x131 + field public static final int KEYCODE_KEYBOARD_BACKLIGHT_TOGGLE = 307; // 0x133 + field public static final int KEYCODE_KEYBOARD_BACKLIGHT_UP = 306; // 0x132 + field public static final int KEYCODE_L = 40; // 0x28 + field public static final int KEYCODE_LANGUAGE_SWITCH = 204; // 0xcc + field public static final int KEYCODE_LAST_CHANNEL = 229; // 0xe5 + field public static final int KEYCODE_LEFT_BRACKET = 71; // 0x47 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_LOCK = 324; // 0x144 + field public static final int KEYCODE_M = 41; // 0x29 + field public static final int KEYCODE_MACRO_1 = 313; // 0x139 + field public static final int KEYCODE_MACRO_2 = 314; // 0x13a + field public static final int KEYCODE_MACRO_3 = 315; // 0x13b + field public static final int KEYCODE_MACRO_4 = 316; // 0x13c + field public static final int KEYCODE_MANNER_MODE = 205; // 0xcd + field public static final int KEYCODE_MEDIA_AUDIO_TRACK = 222; // 0xde + field public static final int KEYCODE_MEDIA_CLOSE = 128; // 0x80 + field public static final int KEYCODE_MEDIA_EJECT = 129; // 0x81 + field public static final int KEYCODE_MEDIA_FAST_FORWARD = 90; // 0x5a + field public static final int KEYCODE_MEDIA_NEXT = 87; // 0x57 + field public static final int KEYCODE_MEDIA_PAUSE = 127; // 0x7f + field public static final int KEYCODE_MEDIA_PLAY = 126; // 0x7e + field public static final int KEYCODE_MEDIA_PLAY_PAUSE = 85; // 0x55 + field public static final int KEYCODE_MEDIA_PREVIOUS = 88; // 0x58 + field public static final int KEYCODE_MEDIA_RECORD = 130; // 0x82 + field public static final int KEYCODE_MEDIA_REWIND = 89; // 0x59 + field public static final int KEYCODE_MEDIA_SKIP_BACKWARD = 273; // 0x111 + field public static final int KEYCODE_MEDIA_SKIP_FORWARD = 272; // 0x110 + field public static final int KEYCODE_MEDIA_STEP_BACKWARD = 275; // 0x113 + field public static final int KEYCODE_MEDIA_STEP_FORWARD = 274; // 0x112 + field public static final int KEYCODE_MEDIA_STOP = 86; // 0x56 + field public static final int KEYCODE_MEDIA_TOP_MENU = 226; // 0xe2 + field public static final int KEYCODE_MENU = 82; // 0x52 + field public static final int KEYCODE_META_LEFT = 117; // 0x75 + field public static final int KEYCODE_META_RIGHT = 118; // 0x76 + field public static final int KEYCODE_MINUS = 69; // 0x45 + field public static final int KEYCODE_MOVE_END = 123; // 0x7b + field public static final int KEYCODE_MOVE_HOME = 122; // 0x7a + field public static final int KEYCODE_MUHENKAN = 213; // 0xd5 + field public static final int KEYCODE_MUSIC = 209; // 0xd1 + field public static final int KEYCODE_MUTE = 91; // 0x5b + field public static final int KEYCODE_N = 42; // 0x2a + field public static final int KEYCODE_NAVIGATE_IN = 262; // 0x106 + field public static final int KEYCODE_NAVIGATE_NEXT = 261; // 0x105 + field public static final int KEYCODE_NAVIGATE_OUT = 263; // 0x107 + field public static final int KEYCODE_NAVIGATE_PREVIOUS = 260; // 0x104 + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_NEW = 320; // 0x140 + field public static final int KEYCODE_NOTIFICATION = 83; // 0x53 + field public static final int KEYCODE_NUM = 78; // 0x4e + field public static final int KEYCODE_NUMPAD_0 = 144; // 0x90 + field public static final int KEYCODE_NUMPAD_1 = 145; // 0x91 + field public static final int KEYCODE_NUMPAD_2 = 146; // 0x92 + field public static final int KEYCODE_NUMPAD_3 = 147; // 0x93 + field public static final int KEYCODE_NUMPAD_4 = 148; // 0x94 + field public static final int KEYCODE_NUMPAD_5 = 149; // 0x95 + field public static final int KEYCODE_NUMPAD_6 = 150; // 0x96 + field public static final int KEYCODE_NUMPAD_7 = 151; // 0x97 + field public static final int KEYCODE_NUMPAD_8 = 152; // 0x98 + field public static final int KEYCODE_NUMPAD_9 = 153; // 0x99 + field public static final int KEYCODE_NUMPAD_ADD = 157; // 0x9d + field public static final int KEYCODE_NUMPAD_COMMA = 159; // 0x9f + field public static final int KEYCODE_NUMPAD_DIVIDE = 154; // 0x9a + field public static final int KEYCODE_NUMPAD_DOT = 158; // 0x9e + field public static final int KEYCODE_NUMPAD_ENTER = 160; // 0xa0 + field public static final int KEYCODE_NUMPAD_EQUALS = 161; // 0xa1 + field public static final int KEYCODE_NUMPAD_LEFT_PAREN = 162; // 0xa2 + field public static final int KEYCODE_NUMPAD_MULTIPLY = 155; // 0x9b + field public static final int KEYCODE_NUMPAD_RIGHT_PAREN = 163; // 0xa3 + field public static final int KEYCODE_NUMPAD_SUBTRACT = 156; // 0x9c + field public static final int KEYCODE_NUM_LOCK = 143; // 0x8f + field public static final int KEYCODE_O = 43; // 0x2b + field public static final int KEYCODE_P = 44; // 0x2c + field public static final int KEYCODE_PAGE_DOWN = 93; // 0x5d + field public static final int KEYCODE_PAGE_UP = 92; // 0x5c + field public static final int KEYCODE_PAIRING = 225; // 0xe1 + field public static final int KEYCODE_PASTE = 279; // 0x117 + field public static final int KEYCODE_PERIOD = 56; // 0x38 + field public static final int KEYCODE_PICTSYMBOLS = 94; // 0x5e + field public static final int KEYCODE_PLUS = 81; // 0x51 + field public static final int KEYCODE_POUND = 18; // 0x12 + field public static final int KEYCODE_POWER = 26; // 0x1a + field @FlaggedApi("com.android.hardware.input.enable_new_25q2_keycodes") public static final int KEYCODE_PRINT = 323; // 0x143 + field public static final int KEYCODE_PROFILE_SWITCH = 288; // 0x120 + field public static final int KEYCODE_PROG_BLUE = 186; // 0xba + field public static final int KEYCODE_PROG_GREEN = 184; // 0xb8 + field public static final int KEYCODE_PROG_RED = 183; // 0xb7 + field public static final int KEYCODE_PROG_YELLOW = 185; // 0xb9 + field public static final int KEYCODE_Q = 45; // 0x2d + field public static final int KEYCODE_R = 46; // 0x2e + field public static final int KEYCODE_RECENT_APPS = 312; // 0x138 + field public static final int KEYCODE_REFRESH = 285; // 0x11d + field public static final int KEYCODE_RIGHT_BRACKET = 72; // 0x48 + field public static final int KEYCODE_RO = 217; // 0xd9 + field public static final int KEYCODE_S = 47; // 0x2f + field public static final int KEYCODE_SCREENSHOT = 318; // 0x13e + field public static final int KEYCODE_SCROLL_LOCK = 116; // 0x74 + field public static final int KEYCODE_SEARCH = 84; // 0x54 + field public static final int KEYCODE_SEMICOLON = 74; // 0x4a + field public static final int KEYCODE_SETTINGS = 176; // 0xb0 + field public static final int KEYCODE_SHIFT_LEFT = 59; // 0x3b + field public static final int KEYCODE_SHIFT_RIGHT = 60; // 0x3c + field public static final int KEYCODE_SLASH = 76; // 0x4c + field public static final int KEYCODE_SLEEP = 223; // 0xdf + field public static final int KEYCODE_SOFT_LEFT = 1; // 0x1 + field public static final int KEYCODE_SOFT_RIGHT = 2; // 0x2 + field public static final int KEYCODE_SOFT_SLEEP = 276; // 0x114 + field public static final int KEYCODE_SPACE = 62; // 0x3e + field public static final int KEYCODE_STAR = 17; // 0x11 + field public static final int KEYCODE_STB_INPUT = 180; // 0xb4 + field public static final int KEYCODE_STB_POWER = 179; // 0xb3 + field public static final int KEYCODE_STEM_1 = 265; // 0x109 + field public static final int KEYCODE_STEM_2 = 266; // 0x10a + field public static final int KEYCODE_STEM_3 = 267; // 0x10b + field public static final int KEYCODE_STEM_PRIMARY = 264; // 0x108 + field public static final int KEYCODE_STYLUS_BUTTON_PRIMARY = 308; // 0x134 + field public static final int KEYCODE_STYLUS_BUTTON_SECONDARY = 309; // 0x135 + field public static final int KEYCODE_STYLUS_BUTTON_TAIL = 311; // 0x137 + field public static final int KEYCODE_STYLUS_BUTTON_TERTIARY = 310; // 0x136 + field public static final int KEYCODE_SWITCH_CHARSET = 95; // 0x5f + field public static final int KEYCODE_SYM = 63; // 0x3f + field public static final int KEYCODE_SYSRQ = 120; // 0x78 + field public static final int KEYCODE_SYSTEM_NAVIGATION_DOWN = 281; // 0x119 + field public static final int KEYCODE_SYSTEM_NAVIGATION_LEFT = 282; // 0x11a + field public static final int KEYCODE_SYSTEM_NAVIGATION_RIGHT = 283; // 0x11b + field public static final int KEYCODE_SYSTEM_NAVIGATION_UP = 280; // 0x118 + field public static final int KEYCODE_T = 48; // 0x30 + field public static final int KEYCODE_TAB = 61; // 0x3d + field public static final int KEYCODE_THUMBS_DOWN = 287; // 0x11f + field public static final int KEYCODE_THUMBS_UP = 286; // 0x11e + field public static final int KEYCODE_TV = 170; // 0xaa + field public static final int KEYCODE_TV_ANTENNA_CABLE = 242; // 0xf2 + field public static final int KEYCODE_TV_AUDIO_DESCRIPTION = 252; // 0xfc + field public static final int KEYCODE_TV_AUDIO_DESCRIPTION_MIX_DOWN = 254; // 0xfe + field public static final int KEYCODE_TV_AUDIO_DESCRIPTION_MIX_UP = 253; // 0xfd + field public static final int KEYCODE_TV_CONTENTS_MENU = 256; // 0x100 + field public static final int KEYCODE_TV_DATA_SERVICE = 230; // 0xe6 + field public static final int KEYCODE_TV_INPUT = 178; // 0xb2 + field public static final int KEYCODE_TV_INPUT_COMPONENT_1 = 249; // 0xf9 + field public static final int KEYCODE_TV_INPUT_COMPONENT_2 = 250; // 0xfa + field public static final int KEYCODE_TV_INPUT_COMPOSITE_1 = 247; // 0xf7 + field public static final int KEYCODE_TV_INPUT_COMPOSITE_2 = 248; // 0xf8 + field public static final int KEYCODE_TV_INPUT_HDMI_1 = 243; // 0xf3 + field public static final int KEYCODE_TV_INPUT_HDMI_2 = 244; // 0xf4 + field public static final int KEYCODE_TV_INPUT_HDMI_3 = 245; // 0xf5 + field public static final int KEYCODE_TV_INPUT_HDMI_4 = 246; // 0xf6 + field public static final int KEYCODE_TV_INPUT_VGA_1 = 251; // 0xfb + field public static final int KEYCODE_TV_MEDIA_CONTEXT_MENU = 257; // 0x101 + field public static final int KEYCODE_TV_NETWORK = 241; // 0xf1 + field public static final int KEYCODE_TV_NUMBER_ENTRY = 234; // 0xea + field public static final int KEYCODE_TV_POWER = 177; // 0xb1 + field public static final int KEYCODE_TV_RADIO_SERVICE = 232; // 0xe8 + field public static final int KEYCODE_TV_SATELLITE = 237; // 0xed + field public static final int KEYCODE_TV_SATELLITE_BS = 238; // 0xee + field public static final int KEYCODE_TV_SATELLITE_CS = 239; // 0xef + field public static final int KEYCODE_TV_SATELLITE_SERVICE = 240; // 0xf0 + field public static final int KEYCODE_TV_TELETEXT = 233; // 0xe9 + field public static final int KEYCODE_TV_TERRESTRIAL_ANALOG = 235; // 0xeb + field public static final int KEYCODE_TV_TERRESTRIAL_DIGITAL = 236; // 0xec + field public static final int KEYCODE_TV_TIMER_PROGRAMMING = 258; // 0x102 + field public static final int KEYCODE_TV_ZOOM_MODE = 255; // 0xff + field public static final int KEYCODE_U = 49; // 0x31 + field public static final int KEYCODE_UNKNOWN = 0; // 0x0 + field public static final int KEYCODE_V = 50; // 0x32 + field public static final int KEYCODE_VIDEO_APP_1 = 289; // 0x121 + field public static final int KEYCODE_VIDEO_APP_2 = 290; // 0x122 + field public static final int KEYCODE_VIDEO_APP_3 = 291; // 0x123 + field public static final int KEYCODE_VIDEO_APP_4 = 292; // 0x124 + field public static final int KEYCODE_VIDEO_APP_5 = 293; // 0x125 + field public static final int KEYCODE_VIDEO_APP_6 = 294; // 0x126 + field public static final int KEYCODE_VIDEO_APP_7 = 295; // 0x127 + field public static final int KEYCODE_VIDEO_APP_8 = 296; // 0x128 + field public static final int KEYCODE_VOICE_ASSIST = 231; // 0xe7 + field public static final int KEYCODE_VOLUME_DOWN = 25; // 0x19 + field public static final int KEYCODE_VOLUME_MUTE = 164; // 0xa4 + field public static final int KEYCODE_VOLUME_UP = 24; // 0x18 + field public static final int KEYCODE_W = 51; // 0x33 + field public static final int KEYCODE_WAKEUP = 224; // 0xe0 + field public static final int KEYCODE_WINDOW = 171; // 0xab + field public static final int KEYCODE_X = 52; // 0x34 + field public static final int KEYCODE_Y = 53; // 0x35 + field public static final int KEYCODE_YEN = 216; // 0xd8 + field public static final int KEYCODE_Z = 54; // 0x36 + field public static final int KEYCODE_ZENKAKU_HANKAKU = 211; // 0xd3 + field public static final int KEYCODE_ZOOM_IN = 168; // 0xa8 + field public static final int KEYCODE_ZOOM_OUT = 169; // 0xa9 + field @Deprecated public static final int MAX_KEYCODE = 84; // 0x54 + field public static final int META_ALT_LEFT_ON = 16; // 0x10 + field public static final int META_ALT_MASK = 50; // 0x32 + field public static final int META_ALT_ON = 2; // 0x2 + field public static final int META_ALT_RIGHT_ON = 32; // 0x20 + field public static final int META_CAPS_LOCK_ON = 1048576; // 0x100000 + field public static final int META_CTRL_LEFT_ON = 8192; // 0x2000 + field public static final int META_CTRL_MASK = 28672; // 0x7000 + field public static final int META_CTRL_ON = 4096; // 0x1000 + field public static final int META_CTRL_RIGHT_ON = 16384; // 0x4000 + field public static final int META_FUNCTION_ON = 8; // 0x8 + field public static final int META_META_LEFT_ON = 131072; // 0x20000 + field public static final int META_META_MASK = 458752; // 0x70000 + field public static final int META_META_ON = 65536; // 0x10000 + field public static final int META_META_RIGHT_ON = 262144; // 0x40000 + field public static final int META_NUM_LOCK_ON = 2097152; // 0x200000 + field public static final int META_SCROLL_LOCK_ON = 4194304; // 0x400000 + field public static final int META_SHIFT_LEFT_ON = 64; // 0x40 + field public static final int META_SHIFT_MASK = 193; // 0xc1 + field public static final int META_SHIFT_ON = 1; // 0x1 + field public static final int META_SHIFT_RIGHT_ON = 128; // 0x80 + field public static final int META_SYM_ON = 4; // 0x4 + } + + public static interface KeyEvent.Callback { + method public boolean onKeyDown(int, android.view.KeyEvent); + method public boolean onKeyLongPress(int, android.view.KeyEvent); + method public boolean onKeyMultiple(int, int, android.view.KeyEvent); + method public boolean onKeyUp(int, android.view.KeyEvent); + } + + public static class KeyEvent.DispatcherState { + ctor public KeyEvent.DispatcherState(); + method public void handleUpEvent(android.view.KeyEvent); + method public boolean isTracking(android.view.KeyEvent); + method public void performedLongPress(android.view.KeyEvent); + method public void reset(); + method public void reset(Object); + method public void startTracking(android.view.KeyEvent, Object); + } + + public final class KeyboardShortcutGroup implements android.os.Parcelable { + ctor public KeyboardShortcutGroup(@Nullable CharSequence, @NonNull java.util.List); + ctor public KeyboardShortcutGroup(@Nullable CharSequence); + method public void addItem(android.view.KeyboardShortcutInfo); + method public int describeContents(); + method public java.util.List getItems(); + method public CharSequence getLabel(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class KeyboardShortcutInfo implements android.os.Parcelable { + ctor public KeyboardShortcutInfo(CharSequence, int, int); + ctor public KeyboardShortcutInfo(CharSequence, char, int); + method public int describeContents(); + method public char getBaseCharacter(); + method public int getKeycode(); + method @Nullable public CharSequence getLabel(); + method public int getModifiers(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class LayoutInflater { + ctor protected LayoutInflater(android.content.Context); + ctor protected LayoutInflater(android.view.LayoutInflater, android.content.Context); + method public abstract android.view.LayoutInflater cloneInContext(android.content.Context); + method public final android.view.View createView(String, String, android.util.AttributeSet) throws java.lang.ClassNotFoundException, android.view.InflateException; + method @Nullable public final android.view.View createView(@NonNull android.content.Context, @NonNull String, @Nullable String, @Nullable android.util.AttributeSet) throws java.lang.ClassNotFoundException, android.view.InflateException; + method public static android.view.LayoutInflater from(@UiContext android.content.Context); + method public android.content.Context getContext(); + method public final android.view.LayoutInflater.Factory getFactory(); + method public final android.view.LayoutInflater.Factory2 getFactory2(); + method public android.view.LayoutInflater.Filter getFilter(); + method public android.view.View inflate(@LayoutRes int, @Nullable android.view.ViewGroup); + method public android.view.View inflate(org.xmlpull.v1.XmlPullParser, @Nullable android.view.ViewGroup); + method public android.view.View inflate(@LayoutRes int, @Nullable android.view.ViewGroup, boolean); + method public android.view.View inflate(org.xmlpull.v1.XmlPullParser, @Nullable android.view.ViewGroup, boolean); + method protected android.view.View onCreateView(String, android.util.AttributeSet) throws java.lang.ClassNotFoundException; + method protected android.view.View onCreateView(android.view.View, String, android.util.AttributeSet) throws java.lang.ClassNotFoundException; + method @Nullable public android.view.View onCreateView(@NonNull android.content.Context, @Nullable android.view.View, @NonNull String, @Nullable android.util.AttributeSet) throws java.lang.ClassNotFoundException; + method public void setFactory(android.view.LayoutInflater.Factory); + method public void setFactory2(android.view.LayoutInflater.Factory2); + method public void setFilter(android.view.LayoutInflater.Filter); + } + + public static interface LayoutInflater.Factory { + method @Nullable public android.view.View onCreateView(@NonNull String, @NonNull android.content.Context, @NonNull android.util.AttributeSet); + } + + public static interface LayoutInflater.Factory2 extends android.view.LayoutInflater.Factory { + method @Nullable public android.view.View onCreateView(@Nullable android.view.View, @NonNull String, @NonNull android.content.Context, @NonNull android.util.AttributeSet); + } + + public static interface LayoutInflater.Filter { + method public boolean onLoadClass(Class); + } + + public interface Menu { + method public android.view.MenuItem add(CharSequence); + method public android.view.MenuItem add(@StringRes int); + method public android.view.MenuItem add(int, int, int, CharSequence); + method public android.view.MenuItem add(int, int, int, @StringRes int); + method public int addIntentOptions(int, int, int, android.content.ComponentName, android.content.Intent[], android.content.Intent, int, android.view.MenuItem[]); + method public android.view.SubMenu addSubMenu(CharSequence); + method public android.view.SubMenu addSubMenu(@StringRes int); + method public android.view.SubMenu addSubMenu(int, int, int, CharSequence); + method public android.view.SubMenu addSubMenu(int, int, int, @StringRes int); + method public void clear(); + method public void close(); + method public android.view.MenuItem findItem(int); + method public android.view.MenuItem getItem(int); + method public boolean hasVisibleItems(); + method public boolean isShortcutKey(int, android.view.KeyEvent); + method public boolean performIdentifierAction(int, int); + method public boolean performShortcut(int, android.view.KeyEvent, int); + method public void removeGroup(int); + method public void removeItem(int); + method public void setGroupCheckable(int, boolean, boolean); + method public default void setGroupDividerEnabled(boolean); + method public void setGroupEnabled(int, boolean); + method public void setGroupVisible(int, boolean); + method public void setQwertyMode(boolean); + method public int size(); + field public static final int CATEGORY_ALTERNATIVE = 262144; // 0x40000 + field public static final int CATEGORY_CONTAINER = 65536; // 0x10000 + field public static final int CATEGORY_SECONDARY = 196608; // 0x30000 + field public static final int CATEGORY_SYSTEM = 131072; // 0x20000 + field public static final int FIRST = 1; // 0x1 + field public static final int FLAG_ALWAYS_PERFORM_CLOSE = 2; // 0x2 + field public static final int FLAG_APPEND_TO_GROUP = 1; // 0x1 + field public static final int FLAG_PERFORM_NO_CLOSE = 1; // 0x1 + field public static final int NONE = 0; // 0x0 + field public static final int SUPPORTED_MODIFIERS_MASK = 69647; // 0x1100f + } + + public class MenuInflater { + ctor public MenuInflater(android.content.Context); + method public void inflate(@MenuRes int, android.view.Menu); + } + + public interface MenuItem { + method public boolean collapseActionView(); + method public boolean expandActionView(); + method @Nullable public android.view.ActionProvider getActionProvider(); + method @Nullable public android.view.View getActionView(); + method public default int getAlphabeticModifiers(); + method public char getAlphabeticShortcut(); + method @Nullable public default CharSequence getContentDescription(); + method public int getGroupId(); + method @Nullable public android.graphics.drawable.Drawable getIcon(); + method @Nullable public default android.graphics.BlendMode getIconTintBlendMode(); + method @Nullable public default android.content.res.ColorStateList getIconTintList(); + method @Nullable public default android.graphics.PorterDuff.Mode getIconTintMode(); + method @Nullable public android.content.Intent getIntent(); + method public int getItemId(); + method @Nullable public android.view.ContextMenu.ContextMenuInfo getMenuInfo(); + method public default int getNumericModifiers(); + method public char getNumericShortcut(); + method public int getOrder(); + method @Nullable public android.view.SubMenu getSubMenu(); + method @Nullable public CharSequence getTitle(); + method @Nullable public CharSequence getTitleCondensed(); + method @Nullable public default CharSequence getTooltipText(); + method public boolean hasSubMenu(); + method public boolean isActionViewExpanded(); + method public boolean isCheckable(); + method public boolean isChecked(); + method public boolean isEnabled(); + method public boolean isVisible(); + method @NonNull public android.view.MenuItem setActionProvider(@Nullable android.view.ActionProvider); + method @NonNull public android.view.MenuItem setActionView(@Nullable android.view.View); + method @NonNull public android.view.MenuItem setActionView(@LayoutRes int); + method @NonNull public android.view.MenuItem setAlphabeticShortcut(char); + method @NonNull public default android.view.MenuItem setAlphabeticShortcut(char, int); + method @NonNull public android.view.MenuItem setCheckable(boolean); + method @NonNull public android.view.MenuItem setChecked(boolean); + method @NonNull public default android.view.MenuItem setContentDescription(@Nullable CharSequence); + method @NonNull public android.view.MenuItem setEnabled(boolean); + method @NonNull public android.view.MenuItem setIcon(@Nullable android.graphics.drawable.Drawable); + method @NonNull public android.view.MenuItem setIcon(@DrawableRes int); + method @NonNull public default android.view.MenuItem setIconTintBlendMode(@Nullable android.graphics.BlendMode); + method @NonNull public default android.view.MenuItem setIconTintList(@Nullable android.content.res.ColorStateList); + method @NonNull public default android.view.MenuItem setIconTintMode(@Nullable android.graphics.PorterDuff.Mode); + method @NonNull public android.view.MenuItem setIntent(@Nullable android.content.Intent); + method @NonNull public android.view.MenuItem setNumericShortcut(char); + method @NonNull public default android.view.MenuItem setNumericShortcut(char, int); + method @NonNull public android.view.MenuItem setOnActionExpandListener(@Nullable android.view.MenuItem.OnActionExpandListener); + method @NonNull public android.view.MenuItem setOnMenuItemClickListener(@Nullable android.view.MenuItem.OnMenuItemClickListener); + method @NonNull public android.view.MenuItem setShortcut(char, char); + method @NonNull public default android.view.MenuItem setShortcut(char, char, int, int); + method public void setShowAsAction(int); + method @NonNull public android.view.MenuItem setShowAsActionFlags(int); + method @NonNull public android.view.MenuItem setTitle(@Nullable CharSequence); + method @NonNull public android.view.MenuItem setTitle(@StringRes int); + method @NonNull public android.view.MenuItem setTitleCondensed(@Nullable CharSequence); + method @NonNull public default android.view.MenuItem setTooltipText(@Nullable CharSequence); + method @NonNull public android.view.MenuItem setVisible(boolean); + field public static final int SHOW_AS_ACTION_ALWAYS = 2; // 0x2 + field public static final int SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW = 8; // 0x8 + field public static final int SHOW_AS_ACTION_IF_ROOM = 1; // 0x1 + field public static final int SHOW_AS_ACTION_NEVER = 0; // 0x0 + field public static final int SHOW_AS_ACTION_WITH_TEXT = 4; // 0x4 + } + + public static interface MenuItem.OnActionExpandListener { + method public boolean onMenuItemActionCollapse(@NonNull android.view.MenuItem); + method public boolean onMenuItemActionExpand(@NonNull android.view.MenuItem); + } + + public static interface MenuItem.OnMenuItemClickListener { + method public boolean onMenuItemClick(@NonNull android.view.MenuItem); + } + + public final class MotionEvent extends android.view.InputEvent implements android.os.Parcelable { + method public static String actionToString(int); + method public void addBatch(long, float, float, float, float, int); + method public void addBatch(long, android.view.MotionEvent.PointerCoords[], int); + method public static int axisFromString(String); + method public static String axisToString(int); + method public int findPointerIndex(int); + method public int getAction(); + method public int getActionButton(); + method public int getActionIndex(); + method public int getActionMasked(); + method public float getAxisValue(int); + method public float getAxisValue(int, int); + method public int getButtonState(); + method public int getClassification(); + method public int getDeviceId(); + method public long getDownTime(); + method public int getEdgeFlags(); + method public long getEventTime(); + method public long getEventTimeNanos(); + method public int getFlags(); + method public float getHistoricalAxisValue(int, int); + method public float getHistoricalAxisValue(int, int, int); + method public long getHistoricalEventTime(int); + method public long getHistoricalEventTimeNanos(int); + method public float getHistoricalOrientation(int); + method public float getHistoricalOrientation(int, int); + method public void getHistoricalPointerCoords(int, int, android.view.MotionEvent.PointerCoords); + method public float getHistoricalPressure(int); + method public float getHistoricalPressure(int, int); + method public float getHistoricalSize(int); + method public float getHistoricalSize(int, int); + method public float getHistoricalToolMajor(int); + method public float getHistoricalToolMajor(int, int); + method public float getHistoricalToolMinor(int); + method public float getHistoricalToolMinor(int, int); + method public float getHistoricalTouchMajor(int); + method public float getHistoricalTouchMajor(int, int); + method public float getHistoricalTouchMinor(int); + method public float getHistoricalTouchMinor(int, int); + method public float getHistoricalX(int); + method public float getHistoricalX(int, int); + method public float getHistoricalY(int); + method public float getHistoricalY(int, int); + method public int getHistorySize(); + method public int getMetaState(); + method public float getOrientation(); + method public float getOrientation(int); + method public void getPointerCoords(int, android.view.MotionEvent.PointerCoords); + method public int getPointerCount(); + method public int getPointerId(int); + method public void getPointerProperties(int, android.view.MotionEvent.PointerProperties); + method public float getPressure(); + method public float getPressure(int); + method public float getRawX(); + method public float getRawX(int); + method public float getRawY(); + method public float getRawY(int); + method public float getSize(); + method public float getSize(int); + method public int getSource(); + method public float getToolMajor(); + method public float getToolMajor(int); + method public float getToolMinor(); + method public float getToolMinor(int); + method public int getToolType(int); + method public float getTouchMajor(); + method public float getTouchMajor(int); + method public float getTouchMinor(); + method public float getTouchMinor(int); + method public float getX(); + method public float getX(int); + method public float getXPrecision(); + method public float getY(); + method public float getY(int); + method public float getYPrecision(); + method public boolean isButtonPressed(int); + method @Nullable public static android.view.MotionEvent obtain(long, long, int, int, @NonNull android.view.MotionEvent.PointerProperties[], @NonNull android.view.MotionEvent.PointerCoords[], int, int, float, float, int, int, int, int, int, int); + method public static android.view.MotionEvent obtain(long, long, int, int, android.view.MotionEvent.PointerProperties[], android.view.MotionEvent.PointerCoords[], int, int, float, float, int, int, int, int); + method @Deprecated public static android.view.MotionEvent obtain(long, long, int, int, int[], android.view.MotionEvent.PointerCoords[], int, float, float, int, int, int, int); + method public static android.view.MotionEvent obtain(long, long, int, float, float, float, float, int, float, float, int, int); + method @Deprecated public static android.view.MotionEvent obtain(long, long, int, int, float, float, float, float, int, float, float, int, int); + method public static android.view.MotionEvent obtain(long, long, int, float, float, int); + method public static android.view.MotionEvent obtain(android.view.MotionEvent); + method public static android.view.MotionEvent obtainNoHistory(android.view.MotionEvent); + method public void offsetLocation(float, float); + method public void recycle(); + method public void setAction(int); + method public void setEdgeFlags(int); + method public void setLocation(float, float); + method public void setSource(int); + method public void transform(android.graphics.Matrix); + method public void writeToParcel(android.os.Parcel, int); + field public static final int ACTION_BUTTON_PRESS = 11; // 0xb + field public static final int ACTION_BUTTON_RELEASE = 12; // 0xc + field public static final int ACTION_CANCEL = 3; // 0x3 + field public static final int ACTION_DOWN = 0; // 0x0 + field public static final int ACTION_HOVER_ENTER = 9; // 0x9 + field public static final int ACTION_HOVER_EXIT = 10; // 0xa + field public static final int ACTION_HOVER_MOVE = 7; // 0x7 + field public static final int ACTION_MASK = 255; // 0xff + field public static final int ACTION_MOVE = 2; // 0x2 + field public static final int ACTION_OUTSIDE = 4; // 0x4 + field @Deprecated public static final int ACTION_POINTER_1_DOWN = 5; // 0x5 + field @Deprecated public static final int ACTION_POINTER_1_UP = 6; // 0x6 + field @Deprecated public static final int ACTION_POINTER_2_DOWN = 261; // 0x105 + field @Deprecated public static final int ACTION_POINTER_2_UP = 262; // 0x106 + field @Deprecated public static final int ACTION_POINTER_3_DOWN = 517; // 0x205 + field @Deprecated public static final int ACTION_POINTER_3_UP = 518; // 0x206 + field public static final int ACTION_POINTER_DOWN = 5; // 0x5 + field @Deprecated public static final int ACTION_POINTER_ID_MASK = 65280; // 0xff00 + field @Deprecated public static final int ACTION_POINTER_ID_SHIFT = 8; // 0x8 + field public static final int ACTION_POINTER_INDEX_MASK = 65280; // 0xff00 + field public static final int ACTION_POINTER_INDEX_SHIFT = 8; // 0x8 + field public static final int ACTION_POINTER_UP = 6; // 0x6 + field public static final int ACTION_SCROLL = 8; // 0x8 + field public static final int ACTION_UP = 1; // 0x1 + field public static final int AXIS_BRAKE = 23; // 0x17 + field public static final int AXIS_DISTANCE = 24; // 0x18 + field public static final int AXIS_GAS = 22; // 0x16 + field public static final int AXIS_GENERIC_1 = 32; // 0x20 + field public static final int AXIS_GENERIC_10 = 41; // 0x29 + field public static final int AXIS_GENERIC_11 = 42; // 0x2a + field public static final int AXIS_GENERIC_12 = 43; // 0x2b + field public static final int AXIS_GENERIC_13 = 44; // 0x2c + field public static final int AXIS_GENERIC_14 = 45; // 0x2d + field public static final int AXIS_GENERIC_15 = 46; // 0x2e + field public static final int AXIS_GENERIC_16 = 47; // 0x2f + field public static final int AXIS_GENERIC_2 = 33; // 0x21 + field public static final int AXIS_GENERIC_3 = 34; // 0x22 + field public static final int AXIS_GENERIC_4 = 35; // 0x23 + field public static final int AXIS_GENERIC_5 = 36; // 0x24 + field public static final int AXIS_GENERIC_6 = 37; // 0x25 + field public static final int AXIS_GENERIC_7 = 38; // 0x26 + field public static final int AXIS_GENERIC_8 = 39; // 0x27 + field public static final int AXIS_GENERIC_9 = 40; // 0x28 + field public static final int AXIS_GESTURE_PINCH_SCALE_FACTOR = 52; // 0x34 + field public static final int AXIS_GESTURE_SCROLL_X_DISTANCE = 50; // 0x32 + field public static final int AXIS_GESTURE_SCROLL_Y_DISTANCE = 51; // 0x33 + field public static final int AXIS_GESTURE_X_OFFSET = 48; // 0x30 + field public static final int AXIS_GESTURE_Y_OFFSET = 49; // 0x31 + field public static final int AXIS_HAT_X = 15; // 0xf + field public static final int AXIS_HAT_Y = 16; // 0x10 + field public static final int AXIS_HSCROLL = 10; // 0xa + field public static final int AXIS_LTRIGGER = 17; // 0x11 + field public static final int AXIS_ORIENTATION = 8; // 0x8 + field public static final int AXIS_PRESSURE = 2; // 0x2 + field public static final int AXIS_RELATIVE_X = 27; // 0x1b + field public static final int AXIS_RELATIVE_Y = 28; // 0x1c + field public static final int AXIS_RTRIGGER = 18; // 0x12 + field public static final int AXIS_RUDDER = 20; // 0x14 + field public static final int AXIS_RX = 12; // 0xc + field public static final int AXIS_RY = 13; // 0xd + field public static final int AXIS_RZ = 14; // 0xe + field public static final int AXIS_SCROLL = 26; // 0x1a + field public static final int AXIS_SIZE = 3; // 0x3 + field public static final int AXIS_THROTTLE = 19; // 0x13 + field public static final int AXIS_TILT = 25; // 0x19 + field public static final int AXIS_TOOL_MAJOR = 6; // 0x6 + field public static final int AXIS_TOOL_MINOR = 7; // 0x7 + field public static final int AXIS_TOUCH_MAJOR = 4; // 0x4 + field public static final int AXIS_TOUCH_MINOR = 5; // 0x5 + field public static final int AXIS_VSCROLL = 9; // 0x9 + field public static final int AXIS_WHEEL = 21; // 0x15 + field public static final int AXIS_X = 0; // 0x0 + field public static final int AXIS_Y = 1; // 0x1 + field public static final int AXIS_Z = 11; // 0xb + field public static final int BUTTON_BACK = 8; // 0x8 + field public static final int BUTTON_FORWARD = 16; // 0x10 + field public static final int BUTTON_PRIMARY = 1; // 0x1 + field public static final int BUTTON_SECONDARY = 2; // 0x2 + field public static final int BUTTON_STYLUS_PRIMARY = 32; // 0x20 + field public static final int BUTTON_STYLUS_SECONDARY = 64; // 0x40 + field public static final int BUTTON_TERTIARY = 4; // 0x4 + field public static final int CLASSIFICATION_AMBIGUOUS_GESTURE = 1; // 0x1 + field public static final int CLASSIFICATION_DEEP_PRESS = 2; // 0x2 + field public static final int CLASSIFICATION_NONE = 0; // 0x0 + field public static final int CLASSIFICATION_PINCH = 5; // 0x5 + field public static final int CLASSIFICATION_TWO_FINGER_SWIPE = 3; // 0x3 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int EDGE_BOTTOM = 2; // 0x2 + field public static final int EDGE_LEFT = 4; // 0x4 + field public static final int EDGE_RIGHT = 8; // 0x8 + field public static final int EDGE_TOP = 1; // 0x1 + field public static final int FLAG_CANCELED = 32; // 0x20 + field public static final int FLAG_WINDOW_IS_OBSCURED = 1; // 0x1 + field public static final int FLAG_WINDOW_IS_PARTIALLY_OBSCURED = 2; // 0x2 + field public static final int INVALID_POINTER_ID = -1; // 0xffffffff + field public static final int TOOL_TYPE_ERASER = 4; // 0x4 + field public static final int TOOL_TYPE_FINGER = 1; // 0x1 + field public static final int TOOL_TYPE_MOUSE = 3; // 0x3 + field public static final int TOOL_TYPE_STYLUS = 2; // 0x2 + field public static final int TOOL_TYPE_UNKNOWN = 0; // 0x0 + } + + public static final class MotionEvent.PointerCoords { + ctor public MotionEvent.PointerCoords(); + ctor public MotionEvent.PointerCoords(android.view.MotionEvent.PointerCoords); + method public void clear(); + method public void copyFrom(android.view.MotionEvent.PointerCoords); + method public float getAxisValue(int); + method public boolean isResampled(); + method public void setAxisValue(int, float); + field public float orientation; + field public float pressure; + field public float size; + field public float toolMajor; + field public float toolMinor; + field public float touchMajor; + field public float touchMinor; + field public float x; + field public float y; + } + + public static final class MotionEvent.PointerProperties { + ctor public MotionEvent.PointerProperties(); + ctor public MotionEvent.PointerProperties(android.view.MotionEvent.PointerProperties); + method public void clear(); + method public void copyFrom(android.view.MotionEvent.PointerProperties); + field public int id; + field public int toolType; + } + + public final class MotionPredictor { + ctor public MotionPredictor(@NonNull android.content.Context); + method public boolean isPredictionAvailable(int, int); + method @Nullable public android.view.MotionEvent predict(long); + method public void record(@NonNull android.view.MotionEvent); + } + + public interface OnReceiveContentListener { + method @Nullable public android.view.ContentInfo onReceiveContent(@NonNull android.view.View, @NonNull android.view.ContentInfo); + } + + public abstract class OrientationEventListener { + ctor public OrientationEventListener(android.content.Context); + ctor public OrientationEventListener(android.content.Context, int); + method public boolean canDetectOrientation(); + method public void disable(); + method public void enable(); + method public abstract void onOrientationChanged(int); + field public static final int ORIENTATION_UNKNOWN = -1; // 0xffffffff + } + + @Deprecated public abstract class OrientationListener implements android.hardware.SensorListener { + ctor @Deprecated public OrientationListener(android.content.Context); + ctor @Deprecated public OrientationListener(android.content.Context, int); + method @Deprecated public void disable(); + method @Deprecated public void enable(); + method @Deprecated public void onAccuracyChanged(int, int); + method @Deprecated public abstract void onOrientationChanged(int); + method @Deprecated public void onSensorChanged(int, float[]); + field @Deprecated public static final int ORIENTATION_UNKNOWN = -1; // 0xffffffff + } + + public final class PixelCopy { + method public static void request(@NonNull android.view.SurfaceView, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); + method public static void request(@NonNull android.view.SurfaceView, @Nullable android.graphics.Rect, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); + method public static void request(@NonNull android.view.Surface, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); + method public static void request(@NonNull android.view.Surface, @Nullable android.graphics.Rect, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); + method public static void request(@NonNull android.view.Window, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); + method public static void request(@NonNull android.view.Window, @Nullable android.graphics.Rect, @NonNull android.graphics.Bitmap, @NonNull android.view.PixelCopy.OnPixelCopyFinishedListener, @NonNull android.os.Handler); + method public static void request(@NonNull android.view.PixelCopy.Request, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + field public static final int ERROR_DESTINATION_INVALID = 5; // 0x5 + field public static final int ERROR_SOURCE_INVALID = 4; // 0x4 + field public static final int ERROR_SOURCE_NO_DATA = 3; // 0x3 + field public static final int ERROR_TIMEOUT = 2; // 0x2 + field public static final int ERROR_UNKNOWN = 1; // 0x1 + field public static final int SUCCESS = 0; // 0x0 + } + + public static interface PixelCopy.OnPixelCopyFinishedListener { + method public void onPixelCopyFinished(int); + } + + public static final class PixelCopy.Request { + method @Nullable public android.graphics.Bitmap getDestinationBitmap(); + method @Nullable public android.graphics.Rect getSourceRect(); + } + + public static final class PixelCopy.Request.Builder { + method @NonNull public android.view.PixelCopy.Request build(); + method @NonNull public static android.view.PixelCopy.Request.Builder ofSurface(@NonNull android.view.Surface); + method @NonNull public static android.view.PixelCopy.Request.Builder ofSurface(@NonNull android.view.SurfaceView); + method @NonNull public static android.view.PixelCopy.Request.Builder ofWindow(@NonNull android.view.Window); + method @NonNull public static android.view.PixelCopy.Request.Builder ofWindow(@NonNull android.view.View); + method @NonNull public android.view.PixelCopy.Request.Builder setDestinationBitmap(@Nullable android.graphics.Bitmap); + method @NonNull public android.view.PixelCopy.Request.Builder setSourceRect(@Nullable android.graphics.Rect); + } + + public static final class PixelCopy.Result { + method @NonNull public android.graphics.Bitmap getBitmap(); + method public int getStatus(); + } + + public final class PointerIcon implements android.os.Parcelable { + method @NonNull public static android.view.PointerIcon create(@NonNull android.graphics.Bitmap, float, float); + method public int describeContents(); + method @NonNull public static android.view.PointerIcon getSystemIcon(@NonNull android.content.Context, int); + method @NonNull public static android.view.PointerIcon load(@NonNull android.content.res.Resources, @XmlRes int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_ALIAS = 1010; // 0x3f2 + field public static final int TYPE_ALL_SCROLL = 1013; // 0x3f5 + field public static final int TYPE_ARROW = 1000; // 0x3e8 + field public static final int TYPE_CELL = 1006; // 0x3ee + field public static final int TYPE_CONTEXT_MENU = 1001; // 0x3e9 + field public static final int TYPE_COPY = 1011; // 0x3f3 + field public static final int TYPE_CROSSHAIR = 1007; // 0x3ef + field @Deprecated public static final int TYPE_DEFAULT = 1000; // 0x3e8 + field public static final int TYPE_GRAB = 1020; // 0x3fc + field public static final int TYPE_GRABBING = 1021; // 0x3fd + field public static final int TYPE_HAND = 1002; // 0x3ea + field public static final int TYPE_HANDWRITING = 1022; // 0x3fe + field public static final int TYPE_HELP = 1003; // 0x3eb + field public static final int TYPE_HORIZONTAL_DOUBLE_ARROW = 1014; // 0x3f6 + field public static final int TYPE_NO_DROP = 1012; // 0x3f4 + field public static final int TYPE_NULL = 0; // 0x0 + field public static final int TYPE_TEXT = 1008; // 0x3f0 + field public static final int TYPE_TOP_LEFT_DIAGONAL_DOUBLE_ARROW = 1017; // 0x3f9 + field public static final int TYPE_TOP_RIGHT_DIAGONAL_DOUBLE_ARROW = 1016; // 0x3f8 + field public static final int TYPE_VERTICAL_DOUBLE_ARROW = 1015; // 0x3f7 + field public static final int TYPE_VERTICAL_TEXT = 1009; // 0x3f1 + field public static final int TYPE_WAIT = 1004; // 0x3ec + field public static final int TYPE_ZOOM_IN = 1018; // 0x3fa + field public static final int TYPE_ZOOM_OUT = 1019; // 0x3fb + } + + public final class RoundedCorner implements android.os.Parcelable { + ctor public RoundedCorner(int, int, int, int); + method public int describeContents(); + method @NonNull public android.graphics.Point getCenter(); + method public int getPosition(); + method public int getRadius(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int POSITION_BOTTOM_LEFT = 3; // 0x3 + field public static final int POSITION_BOTTOM_RIGHT = 2; // 0x2 + field public static final int POSITION_TOP_LEFT = 0; // 0x0 + field public static final int POSITION_TOP_RIGHT = 1; // 0x1 + } + + public class ScaleGestureDetector { + ctor public ScaleGestureDetector(@NonNull android.content.Context, @NonNull android.view.ScaleGestureDetector.OnScaleGestureListener); + ctor public ScaleGestureDetector(@NonNull android.content.Context, @NonNull android.view.ScaleGestureDetector.OnScaleGestureListener, @Nullable android.os.Handler); + method public float getCurrentSpan(); + method public float getCurrentSpanX(); + method public float getCurrentSpanY(); + method public long getEventTime(); + method public float getFocusX(); + method public float getFocusY(); + method public float getPreviousSpan(); + method public float getPreviousSpanX(); + method public float getPreviousSpanY(); + method public float getScaleFactor(); + method public long getTimeDelta(); + method public boolean isInProgress(); + method public boolean isQuickScaleEnabled(); + method public boolean isStylusScaleEnabled(); + method public boolean onTouchEvent(@NonNull android.view.MotionEvent); + method public void setQuickScaleEnabled(boolean); + method public void setStylusScaleEnabled(boolean); + } + + public static interface ScaleGestureDetector.OnScaleGestureListener { + method public boolean onScale(@NonNull android.view.ScaleGestureDetector); + method public boolean onScaleBegin(@NonNull android.view.ScaleGestureDetector); + method public void onScaleEnd(@NonNull android.view.ScaleGestureDetector); + } + + public static class ScaleGestureDetector.SimpleOnScaleGestureListener implements android.view.ScaleGestureDetector.OnScaleGestureListener { + ctor public ScaleGestureDetector.SimpleOnScaleGestureListener(); + method public boolean onScale(@NonNull android.view.ScaleGestureDetector); + method public boolean onScaleBegin(@NonNull android.view.ScaleGestureDetector); + method public void onScaleEnd(@NonNull android.view.ScaleGestureDetector); + } + + @UiThread public interface ScrollCaptureCallback { + method public void onScrollCaptureEnd(@NonNull Runnable); + method public void onScrollCaptureImageRequest(@NonNull android.view.ScrollCaptureSession, @NonNull android.os.CancellationSignal, @NonNull android.graphics.Rect, @NonNull java.util.function.Consumer); + method public void onScrollCaptureSearch(@NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer); + method public void onScrollCaptureStart(@NonNull android.view.ScrollCaptureSession, @NonNull android.os.CancellationSignal, @NonNull Runnable); + } + + public class ScrollCaptureSession { + ctor public ScrollCaptureSession(@NonNull android.view.Surface, @NonNull android.graphics.Rect, @NonNull android.graphics.Point); + method @NonNull public android.graphics.Point getPositionInWindow(); + method @NonNull public android.graphics.Rect getScrollBounds(); + method @NonNull public android.view.Surface getSurface(); + } + + public final class ScrollCaptureTarget { + ctor public ScrollCaptureTarget(@NonNull android.view.View, @NonNull android.graphics.Rect, @NonNull android.graphics.Point, @NonNull android.view.ScrollCaptureCallback); + method @NonNull public android.view.ScrollCaptureCallback getCallback(); + method @NonNull public android.view.View getContainingView(); + method public int getHint(); + method @NonNull public android.graphics.Rect getLocalVisibleRect(); + method @NonNull public android.graphics.Point getPositionInWindow(); + method @Nullable public android.graphics.Rect getScrollBounds(); + method public void setScrollBounds(@Nullable android.graphics.Rect); + method @UiThread public void updatePositionInWindow(); + } + + @FlaggedApi("android.view.flags.scroll_feedback_api") public interface ScrollFeedbackProvider { + method @FlaggedApi("android.view.flags.scroll_feedback_api") @NonNull public static android.view.ScrollFeedbackProvider createProvider(@NonNull android.view.View); + method @FlaggedApi("android.view.flags.scroll_feedback_api") public void onScrollLimit(int, int, int, boolean); + method @FlaggedApi("android.view.flags.scroll_feedback_api") public void onScrollProgress(int, int, int, int); + method @FlaggedApi("android.view.flags.scroll_feedback_api") public void onSnapToItem(int, int, int); + } + + public class SearchEvent { + ctor public SearchEvent(android.view.InputDevice); + method public android.view.InputDevice getInputDevice(); + } + + public class SoundEffectConstants { + method public static int getConstantForFocusDirection(int, boolean); + method public static int getContantForFocusDirection(int); + field public static final int CLICK = 0; // 0x0 + field public static final int NAVIGATION_DOWN = 4; // 0x4 + field public static final int NAVIGATION_LEFT = 1; // 0x1 + field public static final int NAVIGATION_REPEAT_DOWN = 8; // 0x8 + field public static final int NAVIGATION_REPEAT_LEFT = 5; // 0x5 + field public static final int NAVIGATION_REPEAT_RIGHT = 7; // 0x7 + field public static final int NAVIGATION_REPEAT_UP = 6; // 0x6 + field public static final int NAVIGATION_RIGHT = 3; // 0x3 + field public static final int NAVIGATION_UP = 2; // 0x2 + } + + public interface SubMenu extends android.view.Menu { + method public void clearHeader(); + method public android.view.MenuItem getItem(); + method public android.view.SubMenu setHeaderIcon(@DrawableRes int); + method public android.view.SubMenu setHeaderIcon(android.graphics.drawable.Drawable); + method public android.view.SubMenu setHeaderTitle(@StringRes int); + method public android.view.SubMenu setHeaderTitle(CharSequence); + method public android.view.SubMenu setHeaderView(android.view.View); + method public android.view.SubMenu setIcon(@DrawableRes int); + method public android.view.SubMenu setIcon(android.graphics.drawable.Drawable); + } + + public class Surface implements android.os.Parcelable { + ctor public Surface(@NonNull android.view.SurfaceControl); + ctor public Surface(android.graphics.SurfaceTexture); + method public void clearFrameRate(); + method public int describeContents(); + method public boolean isValid(); + method public android.graphics.Canvas lockCanvas(android.graphics.Rect) throws java.lang.IllegalArgumentException, android.view.Surface.OutOfResourcesException; + method public android.graphics.Canvas lockHardwareCanvas(); + method public void readFromParcel(android.os.Parcel); + method public void release(); + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public void setFrameRate(@NonNull android.view.Surface.FrameRateParams); + method public void setFrameRate(@FloatRange(from=0.0) float, int, int); + method public void setFrameRate(@FloatRange(from=0.0) float, int); + method @Deprecated public void unlockCanvas(android.graphics.Canvas); + method public void unlockCanvasAndPost(android.graphics.Canvas); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CHANGE_FRAME_RATE_ALWAYS = 1; // 0x1 + field public static final int CHANGE_FRAME_RATE_ONLY_IF_SEAMLESS = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FRAME_RATE_COMPATIBILITY_DEFAULT = 0; // 0x0 + field public static final int FRAME_RATE_COMPATIBILITY_FIXED_SOURCE = 1; // 0x1 + field @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_gte_enum") public static final int FRAME_RATE_COMPATIBILITY_GTE = 2; // 0x2 + field public static final int ROTATION_0 = 0; // 0x0 + field public static final int ROTATION_180 = 2; // 0x2 + field public static final int ROTATION_270 = 3; // 0x3 + field public static final int ROTATION_90 = 1; // 0x1 + } + + @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public static class Surface.FrameRateParams { + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public int getChangeFrameRateStrategy(); + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public float getDesiredMaxRate(); + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public float getDesiredMinRate(); + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public float getFixedSourceRate(); + field @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public static final android.view.Surface.FrameRateParams IGNORE; + } + + @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") public static final class Surface.FrameRateParams.Builder { + ctor public Surface.FrameRateParams.Builder(); + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") @NonNull public android.view.Surface.FrameRateParams build(); + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") @NonNull public android.view.Surface.FrameRateParams.Builder setChangeFrameRateStrategy(int); + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") @NonNull public android.view.Surface.FrameRateParams.Builder setDesiredRateRange(@FloatRange(from=0.0) float, @FloatRange(from=0.0) float); + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_api") @NonNull public android.view.Surface.FrameRateParams.Builder setFixedSourceRate(@FloatRange(from=0.0) float); + } + + public static class Surface.OutOfResourcesException extends java.lang.RuntimeException { + ctor public Surface.OutOfResourcesException(); + ctor public Surface.OutOfResourcesException(String); + } + + public final class SurfaceControl implements android.os.Parcelable { + method public int describeContents(); + method public boolean isValid(); + method public void readFromParcel(android.os.Parcel); + method public void release(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int BUFFER_TRANSFORM_IDENTITY = 0; // 0x0 + field public static final int BUFFER_TRANSFORM_MIRROR_HORIZONTAL = 1; // 0x1 + field public static final int BUFFER_TRANSFORM_MIRROR_VERTICAL = 2; // 0x2 + field public static final int BUFFER_TRANSFORM_ROTATE_180 = 3; // 0x3 + field public static final int BUFFER_TRANSFORM_ROTATE_270 = 7; // 0x7 + field public static final int BUFFER_TRANSFORM_ROTATE_90 = 4; // 0x4 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class SurfaceControl.Builder { + ctor public SurfaceControl.Builder(); + method @NonNull public android.view.SurfaceControl build(); + method @NonNull public android.view.SurfaceControl.Builder setBufferSize(@IntRange(from=0) int, @IntRange(from=0) int); + method @NonNull public android.view.SurfaceControl.Builder setFormat(int); + method @NonNull public android.view.SurfaceControl.Builder setHidden(boolean); + method @NonNull public android.view.SurfaceControl.Builder setName(@NonNull String); + method @NonNull public android.view.SurfaceControl.Builder setOpaque(boolean); + method @NonNull public android.view.SurfaceControl.Builder setParent(@Nullable android.view.SurfaceControl); + } + + @FlaggedApi("com.android.window.flags.jank_api") public static class SurfaceControl.JankData { + method public long getActualAppFrameTimeNanos(); + method public int getJankType(); + method public long getScheduledAppFrameTimeNanos(); + method public long getVsyncId(); + field public static final int JANK_APPLICATION = 2; // 0x2 + field public static final int JANK_COMPOSER = 1; // 0x1 + field public static final int JANK_NONE = 0; // 0x0 + field public static final int JANK_OTHER = 4; // 0x4 + } + + @FlaggedApi("com.android.window.flags.jank_api") public static interface SurfaceControl.OnJankDataListener { + method public void onJankDataAvailable(@NonNull java.util.List); + } + + @FlaggedApi("com.android.window.flags.jank_api") public static class SurfaceControl.OnJankDataListenerRegistration { + method public void flush(); + method public void removeAfter(long); + } + + public static class SurfaceControl.Transaction implements java.io.Closeable android.os.Parcelable { + ctor public SurfaceControl.Transaction(); + method @NonNull public android.view.SurfaceControl.Transaction addTransactionCommittedListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.SurfaceControl.TransactionCommittedListener); + method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") @NonNull public android.view.SurfaceControl.Transaction addTransactionCompletedListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public void apply(); + method @NonNull public android.view.SurfaceControl.Transaction clearFrameRate(@NonNull android.view.SurfaceControl); + method @Deprecated @NonNull public android.view.SurfaceControl.Transaction clearTrustedPresentationCallback(@NonNull android.view.SurfaceControl); + method public void close(); + method public int describeContents(); + method @NonNull public android.view.SurfaceControl.Transaction merge(@NonNull android.view.SurfaceControl.Transaction); + method @NonNull public android.view.SurfaceControl.Transaction reparent(@NonNull android.view.SurfaceControl, @Nullable android.view.SurfaceControl); + method @NonNull public android.view.SurfaceControl.Transaction setAlpha(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0, to=1.0) float); + method @NonNull public android.view.SurfaceControl.Transaction setBuffer(@NonNull android.view.SurfaceControl, @Nullable android.hardware.HardwareBuffer); + method @NonNull public android.view.SurfaceControl.Transaction setBuffer(@NonNull android.view.SurfaceControl, @Nullable android.hardware.HardwareBuffer, @Nullable android.hardware.SyncFence); + method @NonNull public android.view.SurfaceControl.Transaction setBuffer(@NonNull android.view.SurfaceControl, @Nullable android.hardware.HardwareBuffer, @Nullable android.hardware.SyncFence, @Nullable java.util.function.Consumer); + method @NonNull public android.view.SurfaceControl.Transaction setBufferSize(@NonNull android.view.SurfaceControl, @IntRange(from=0) int, @IntRange(from=0) int); + method @NonNull public android.view.SurfaceControl.Transaction setBufferTransform(@NonNull android.view.SurfaceControl, int); + method @FlaggedApi("android.media.tv.flags.apply_picture_profiles") @NonNull public android.view.SurfaceControl.Transaction setContentPriority(@NonNull android.view.SurfaceControl, int); + method @NonNull public android.view.SurfaceControl.Transaction setCrop(@NonNull android.view.SurfaceControl, @Nullable android.graphics.Rect); + method @NonNull public android.view.SurfaceControl.Transaction setDamageRegion(@NonNull android.view.SurfaceControl, @Nullable android.graphics.Region); + method @NonNull public android.view.SurfaceControl.Transaction setDataSpace(@NonNull android.view.SurfaceControl, int); + method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") @NonNull public android.view.SurfaceControl.Transaction setDesiredHdrHeadroom(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0f) float); + method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") @NonNull public android.view.SurfaceControl.Transaction setDesiredPresentTimeNanos(long); + method @NonNull public android.view.SurfaceControl.Transaction setExtendedRangeBrightness(@NonNull android.view.SurfaceControl, float, float); + method @NonNull public android.view.SurfaceControl.Transaction setFrameRate(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0) float, int); + method @NonNull public android.view.SurfaceControl.Transaction setFrameRate(@NonNull android.view.SurfaceControl, @FloatRange(from=0.0) float, int, int); + method @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_surfacecontrol_setframerate_api") @NonNull public android.view.SurfaceControl.Transaction setFrameRate(@NonNull android.view.SurfaceControl, @NonNull android.view.Surface.FrameRateParams); + method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") @NonNull public android.view.SurfaceControl.Transaction setFrameTimeline(long); + method @Deprecated @NonNull public android.view.SurfaceControl.Transaction setGeometry(@NonNull android.view.SurfaceControl, @Nullable android.graphics.Rect, @Nullable android.graphics.Rect, int); + method @NonNull public android.view.SurfaceControl.Transaction setLayer(@NonNull android.view.SurfaceControl, @IntRange(from=java.lang.Integer.MIN_VALUE, to=java.lang.Integer.MAX_VALUE) int); + method @FlaggedApi("android.hardware.flags.luts_api") @NonNull public android.view.SurfaceControl.Transaction setLuts(@NonNull android.view.SurfaceControl, @Nullable android.hardware.DisplayLuts); + method @NonNull public android.view.SurfaceControl.Transaction setOpaque(@NonNull android.view.SurfaceControl, boolean); + method @NonNull public android.view.SurfaceControl.Transaction setPosition(@NonNull android.view.SurfaceControl, float, float); + method @NonNull public android.view.SurfaceControl.Transaction setScale(@NonNull android.view.SurfaceControl, float, float); + method @Deprecated @NonNull public android.view.SurfaceControl.Transaction setTrustedPresentationCallback(@NonNull android.view.SurfaceControl, @NonNull android.view.SurfaceControl.TrustedPresentationThresholds, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @NonNull public android.view.SurfaceControl.Transaction setVisibility(@NonNull android.view.SurfaceControl, boolean); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static interface SurfaceControl.TransactionCommittedListener { + method public void onTransactionCommitted(); + } + + @FlaggedApi("com.android.window.flags.sdk_desired_present_time") public static final class SurfaceControl.TransactionStats { + method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") public long getLatchTimeNanos(); + method @FlaggedApi("com.android.window.flags.sdk_desired_present_time") @NonNull public android.hardware.SyncFence getPresentFence(); + } + + @Deprecated public static final class SurfaceControl.TrustedPresentationThresholds { + ctor @Deprecated public SurfaceControl.TrustedPresentationThresholds(@FloatRange(from=0.0f, fromInclusive=false, to=1.0f) float, @FloatRange(from=0.0f, fromInclusive=false, to=1.0f) float, @IntRange(from=1) int); + } + + @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public interface SurfaceControlInputReceiver { + method public boolean onInputEvent(@NonNull android.view.InputEvent); + } + + public class SurfaceControlViewHost { + ctor public SurfaceControlViewHost(@NonNull android.content.Context, @NonNull android.view.Display, @Nullable android.os.IBinder); + ctor @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public SurfaceControlViewHost(@NonNull android.content.Context, @NonNull android.view.Display, @Nullable android.window.InputTransferToken); + method @Nullable public android.view.SurfaceControlViewHost.SurfacePackage getSurfacePackage(); + method @Nullable public android.view.View getView(); + method public void relayout(int, int); + method public void release(); + method public void setView(@NonNull android.view.View, int, int); + method @Deprecated public boolean transferTouchGestureToHost(); + } + + public static final class SurfaceControlViewHost.SurfacePackage implements android.os.Parcelable { + ctor public SurfaceControlViewHost.SurfacePackage(@NonNull android.view.SurfaceControlViewHost.SurfacePackage); + method public int describeContents(); + method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") @Nullable public android.window.InputTransferToken getInputTransferToken(); + method @NonNull public android.view.SurfaceControl getSurfaceControl(); + method public void notifyConfigurationChanged(@NonNull android.content.res.Configuration); + method public void notifyDetachedFromWindow(); + method public void release(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface SurfaceHolder { + method public void addCallback(android.view.SurfaceHolder.Callback); + method public android.view.Surface getSurface(); + method public android.graphics.Rect getSurfaceFrame(); + method public boolean isCreating(); + method public android.graphics.Canvas lockCanvas(); + method public android.graphics.Canvas lockCanvas(android.graphics.Rect); + method public default android.graphics.Canvas lockHardwareCanvas(); + method public void removeCallback(android.view.SurfaceHolder.Callback); + method public void setFixedSize(int, int); + method public void setFormat(int); + method public void setKeepScreenOn(boolean); + method public void setSizeFromLayout(); + method @Deprecated public void setType(int); + method public void unlockCanvasAndPost(android.graphics.Canvas); + field @Deprecated public static final int SURFACE_TYPE_GPU = 2; // 0x2 + field @Deprecated public static final int SURFACE_TYPE_HARDWARE = 1; // 0x1 + field @Deprecated public static final int SURFACE_TYPE_NORMAL = 0; // 0x0 + field @Deprecated public static final int SURFACE_TYPE_PUSH_BUFFERS = 3; // 0x3 + } + + public static class SurfaceHolder.BadSurfaceTypeException extends java.lang.RuntimeException { + ctor public SurfaceHolder.BadSurfaceTypeException(); + ctor public SurfaceHolder.BadSurfaceTypeException(String); + } + + public static interface SurfaceHolder.Callback { + method public void surfaceChanged(@NonNull android.view.SurfaceHolder, int, @IntRange(from=0) int, @IntRange(from=0) int); + method public void surfaceCreated(@NonNull android.view.SurfaceHolder); + method public void surfaceDestroyed(@NonNull android.view.SurfaceHolder); + } + + public static interface SurfaceHolder.Callback2 extends android.view.SurfaceHolder.Callback { + method public void surfaceRedrawNeeded(@NonNull android.view.SurfaceHolder); + method public default void surfaceRedrawNeededAsync(@NonNull android.view.SurfaceHolder, @NonNull Runnable); + } + + public class SurfaceView extends android.view.View { + ctor public SurfaceView(android.content.Context); + ctor public SurfaceView(android.content.Context, android.util.AttributeSet); + ctor public SurfaceView(android.content.Context, android.util.AttributeSet, int); + ctor public SurfaceView(android.content.Context, android.util.AttributeSet, int, int); + method public void applyTransactionToFrame(@NonNull android.view.SurfaceControl.Transaction); + method @FlaggedApi("android.view.flags.surface_view_get_surface_package") public void clearChildSurfacePackage(); + method @FlaggedApi("android.view.flags.surface_view_get_surface_package") @Nullable public android.view.SurfaceControlViewHost.SurfacePackage getChildSurfacePackage(); + method @FlaggedApi("android.view.flags.surface_view_set_composition_order") public int getCompositionOrder(); + method public android.view.SurfaceHolder getHolder(); + method @Deprecated @Nullable public android.os.IBinder getHostToken(); + method public android.view.SurfaceControl getSurfaceControl(); + method public void setChildSurfacePackage(@NonNull android.view.SurfaceControlViewHost.SurfacePackage); + method @FlaggedApi("android.view.flags.surface_view_set_composition_order") public void setCompositionOrder(int); + method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public void setDesiredHdrHeadroom(@FloatRange(from=0.0f, to=10000.0) float); + method public void setSecure(boolean); + method public void setSurfaceLifecycle(int); + method public void setZOrderMediaOverlay(boolean); + method public void setZOrderOnTop(boolean); + field public static final int SURFACE_LIFECYCLE_DEFAULT = 0; // 0x0 + field public static final int SURFACE_LIFECYCLE_FOLLOWS_ATTACHMENT = 2; // 0x2 + field public static final int SURFACE_LIFECYCLE_FOLLOWS_VISIBILITY = 1; // 0x1 + } + + public class TextureView extends android.view.View { + ctor public TextureView(@NonNull android.content.Context); + ctor public TextureView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public TextureView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); + ctor public TextureView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, int); + method public final void draw(android.graphics.Canvas); + method @Nullable public android.graphics.Bitmap getBitmap(); + method @Nullable public android.graphics.Bitmap getBitmap(int, int); + method @NonNull public android.graphics.Bitmap getBitmap(@NonNull android.graphics.Bitmap); + method @Nullable public android.graphics.SurfaceTexture getSurfaceTexture(); + method @Nullable public android.view.TextureView.SurfaceTextureListener getSurfaceTextureListener(); + method @NonNull public android.graphics.Matrix getTransform(@Nullable android.graphics.Matrix); + method public boolean isAvailable(); + method @Nullable public android.graphics.Canvas lockCanvas(); + method @Nullable public android.graphics.Canvas lockCanvas(@Nullable android.graphics.Rect); + method protected final void onDraw(android.graphics.Canvas); + method public void setBackgroundDrawable(android.graphics.drawable.Drawable); + method public void setOpaque(boolean); + method public void setSurfaceTexture(@NonNull android.graphics.SurfaceTexture); + method public void setSurfaceTextureListener(@Nullable android.view.TextureView.SurfaceTextureListener); + method public void setTransform(@Nullable android.graphics.Matrix); + method public void unlockCanvasAndPost(@NonNull android.graphics.Canvas); + } + + public static interface TextureView.SurfaceTextureListener { + method public void onSurfaceTextureAvailable(@NonNull android.graphics.SurfaceTexture, int, int); + method public boolean onSurfaceTextureDestroyed(@NonNull android.graphics.SurfaceTexture); + method public void onSurfaceTextureSizeChanged(@NonNull android.graphics.SurfaceTexture, int, int); + method public void onSurfaceTextureUpdated(@NonNull android.graphics.SurfaceTexture); + } + + public class TouchDelegate { + ctor public TouchDelegate(android.graphics.Rect, android.view.View); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.TouchDelegateInfo getTouchDelegateInfo(); + method public boolean onTouchEvent(@NonNull android.view.MotionEvent); + method public boolean onTouchExplorationHoverEvent(@NonNull android.view.MotionEvent); + field public static final int ABOVE = 1; // 0x1 + field public static final int BELOW = 2; // 0x2 + field public static final int TO_LEFT = 4; // 0x4 + field public static final int TO_RIGHT = 8; // 0x8 + } + + public final class VelocityTracker { + method public void addMovement(android.view.MotionEvent); + method public void clear(); + method public void computeCurrentVelocity(int); + method public void computeCurrentVelocity(int, float); + method public float getAxisVelocity(int, int); + method public float getAxisVelocity(int); + method public float getXVelocity(); + method public float getXVelocity(int); + method public float getYVelocity(); + method public float getYVelocity(int); + method public boolean isAxisSupported(int); + method public static android.view.VelocityTracker obtain(); + method public void recycle(); + } + + public abstract class VerifiedInputEvent implements android.os.Parcelable { + method public int describeContents(); + method public int getDeviceId(); + method public int getDisplayId(); + method public long getEventTimeNanos(); + method public int getSource(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class VerifiedKeyEvent extends android.view.VerifiedInputEvent implements android.os.Parcelable { + method public int getAction(); + method public long getDownTimeNanos(); + method @Nullable public Boolean getFlag(int); + method public int getKeyCode(); + method public int getMetaState(); + method public int getRepeatCount(); + method public int getScanCode(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class VerifiedMotionEvent extends android.view.VerifiedInputEvent implements android.os.Parcelable { + method public int getActionMasked(); + method public int getButtonState(); + method public long getDownTimeNanos(); + method @Nullable public Boolean getFlag(int); + method public int getMetaState(); + method public float getRawX(); + method public float getRawY(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @UiThread public class View implements android.view.accessibility.AccessibilityEventSource android.graphics.drawable.Drawable.Callback android.view.KeyEvent.Callback { + ctor public View(android.content.Context); + ctor public View(android.content.Context, @Nullable android.util.AttributeSet); + ctor public View(android.content.Context, @Nullable android.util.AttributeSet, int); + ctor public View(android.content.Context, @Nullable android.util.AttributeSet, int, int); + method public void addChildrenForAccessibility(java.util.ArrayList); + method public void addExtraDataToAccessibilityNodeInfo(@NonNull android.view.accessibility.AccessibilityNodeInfo, @NonNull String, @Nullable android.os.Bundle); + method public void addFocusables(java.util.ArrayList, int); + method public void addFocusables(java.util.ArrayList, int, int); + method public void addKeyboardNavigationClusters(@NonNull java.util.Collection, int); + method public void addOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener); + method public void addOnLayoutChangeListener(android.view.View.OnLayoutChangeListener); + method public void addOnUnhandledKeyEventListener(android.view.View.OnUnhandledKeyEventListener); + method public void addTouchables(java.util.ArrayList); + method public android.view.ViewPropertyAnimator animate(); + method @Deprecated @FlaggedApi("android.view.accessibility.deprecate_accessibility_announcement_apis") public void announceForAccessibility(CharSequence); + method public void autofill(android.view.autofill.AutofillValue); + method public void autofill(@NonNull android.util.SparseArray); + method protected boolean awakenScrollBars(); + method protected boolean awakenScrollBars(int); + method protected boolean awakenScrollBars(int, boolean); + method public void bringToFront(); + method @Deprecated public void buildDrawingCache(); + method @Deprecated public void buildDrawingCache(boolean); + method public void buildLayer(); + method public boolean callOnClick(); + method public boolean canResolveLayoutDirection(); + method public boolean canResolveTextAlignment(); + method public boolean canResolveTextDirection(); + method public boolean canScrollHorizontally(int); + method public boolean canScrollVertically(int); + method public final void cancelDragAndDrop(); + method public void cancelLongPress(); + method public final void cancelPendingInputEvents(); + method public boolean checkInputConnectionProxy(android.view.View); + method public void clearAnimation(); + method public void clearFocus(); + method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") public void clearPendingCredentialRequest(); + method public void clearViewTranslationCallback(); + method public static int combineMeasuredStates(int, int); + method protected int computeHorizontalScrollExtent(); + method protected int computeHorizontalScrollOffset(); + method protected int computeHorizontalScrollRange(); + method public void computeScroll(); + method public android.view.WindowInsets computeSystemWindowInsets(android.view.WindowInsets, android.graphics.Rect); + method protected int computeVerticalScrollExtent(); + method protected int computeVerticalScrollOffset(); + method protected int computeVerticalScrollRange(); + method public android.view.accessibility.AccessibilityNodeInfo createAccessibilityNodeInfo(); + method public void createContextMenu(android.view.ContextMenu); + method @Deprecated public void destroyDrawingCache(); + method public android.view.WindowInsets dispatchApplyWindowInsets(android.view.WindowInsets); + method public boolean dispatchCapturedPointerEvent(android.view.MotionEvent); + method public void dispatchConfigurationChanged(android.content.res.Configuration); + method public void dispatchCreateViewTranslationRequest(@NonNull java.util.Map, @NonNull int[], @NonNull android.view.translation.TranslationCapability, @NonNull java.util.List); + method public void dispatchDisplayHint(int); + method public boolean dispatchDragEvent(android.view.DragEvent); + method protected void dispatchDraw(@NonNull android.graphics.Canvas); + method public void dispatchDrawableHotspotChanged(float, float); + method @CallSuper public void dispatchFinishTemporaryDetach(); + method protected boolean dispatchGenericFocusedEvent(android.view.MotionEvent); + method public boolean dispatchGenericMotionEvent(android.view.MotionEvent); + method protected boolean dispatchGenericPointerEvent(android.view.MotionEvent); + method protected boolean dispatchHoverEvent(android.view.MotionEvent); + method public boolean dispatchKeyEvent(android.view.KeyEvent); + method public boolean dispatchKeyEventPreIme(android.view.KeyEvent); + method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent); + method public boolean dispatchNestedFling(float, float, boolean); + method public boolean dispatchNestedPreFling(float, float); + method public boolean dispatchNestedPrePerformAccessibilityAction(int, @Nullable android.os.Bundle); + method public boolean dispatchNestedPreScroll(int, int, @Nullable @Size(2) int[], @Nullable @Size(2) int[]); + method public boolean dispatchNestedScroll(int, int, int, int, @Nullable @Size(2) int[]); + method public void dispatchPointerCaptureChanged(boolean); + method public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); + method public void dispatchProvideAutofillStructure(@NonNull android.view.ViewStructure, int); + method public void dispatchProvideStructure(android.view.ViewStructure); + method protected void dispatchRestoreInstanceState(android.util.SparseArray); + method protected void dispatchSaveInstanceState(android.util.SparseArray); + method public void dispatchScrollCaptureSearch(@NonNull android.graphics.Rect, @NonNull android.graphics.Point, @NonNull java.util.function.Consumer); + method protected void dispatchSetActivated(boolean); + method protected void dispatchSetPressed(boolean); + method protected void dispatchSetSelected(boolean); + method @CallSuper public void dispatchStartTemporaryDetach(); + method @Deprecated public void dispatchSystemUiVisibilityChanged(int); + method public boolean dispatchTouchEvent(android.view.MotionEvent); + method public boolean dispatchTrackballEvent(android.view.MotionEvent); + method public boolean dispatchUnhandledMove(android.view.View, int); + method protected void dispatchVisibilityChanged(@NonNull android.view.View, int); + method public void dispatchWindowFocusChanged(boolean); + method public void dispatchWindowInsetsAnimationEnd(@NonNull android.view.WindowInsetsAnimation); + method public void dispatchWindowInsetsAnimationPrepare(@NonNull android.view.WindowInsetsAnimation); + method @NonNull public android.view.WindowInsets dispatchWindowInsetsAnimationProgress(@NonNull android.view.WindowInsets, @NonNull java.util.List); + method @NonNull public android.view.WindowInsetsAnimation.Bounds dispatchWindowInsetsAnimationStart(@NonNull android.view.WindowInsetsAnimation, @NonNull android.view.WindowInsetsAnimation.Bounds); + method @Deprecated public void dispatchWindowSystemUiVisiblityChanged(int); + method public void dispatchWindowVisibilityChanged(int); + method @CallSuper public void draw(@NonNull android.graphics.Canvas); + method @CallSuper public void drawableHotspotChanged(float, float); + method @CallSuper protected void drawableStateChanged(); + method public android.view.View findFocus(); + method @Nullable public final android.window.OnBackInvokedDispatcher findOnBackInvokedDispatcher(); + method public final T findViewById(@IdRes int); + method public final T findViewWithTag(Object); + method public void findViewsWithText(java.util.ArrayList, CharSequence, int); + method @Deprecated protected boolean fitSystemWindows(android.graphics.Rect); + method public android.view.View focusSearch(int); + method public void forceHasOverlappingRendering(boolean); + method public void forceLayout(); + method public boolean gatherTransparentRegion(@Nullable android.graphics.Region); + method public void generateDisplayHash(@NonNull String, @Nullable android.graphics.Rect, @NonNull java.util.concurrent.Executor, @NonNull android.view.displayhash.DisplayHashResultCallback); + method public static int generateViewId(); + method public CharSequence getAccessibilityClassName(); + method public android.view.View.AccessibilityDelegate getAccessibilityDelegate(); + method public int getAccessibilityLiveRegion(); + method public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider(); + method @Nullable public CharSequence getAccessibilityPaneTitle(); + method @IdRes public int getAccessibilityTraversalAfter(); + method @IdRes public int getAccessibilityTraversalBefore(); + method @Nullable public String getAllowedHandwritingDelegatePackageName(); + method @Nullable public String getAllowedHandwritingDelegatorPackageName(); + method public float getAlpha(); + method public android.view.animation.Animation getAnimation(); + method @Nullable public android.graphics.Matrix getAnimationMatrix(); + method public android.os.IBinder getApplicationWindowToken(); + method @NonNull public int[] getAttributeResolutionStack(@AttrRes int); + method @NonNull public java.util.Map getAttributeSourceResourceMap(); + method @Nullable public String[] getAutofillHints(); + method public final android.view.autofill.AutofillId getAutofillId(); + method public int getAutofillType(); + method @Nullable public android.view.autofill.AutofillValue getAutofillValue(); + method public android.graphics.drawable.Drawable getBackground(); + method @Nullable public android.graphics.BlendMode getBackgroundTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getBackgroundTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getBackgroundTintMode(); + method public int getBaseline(); + method public final int getBottom(); + method protected float getBottomFadingEdgeStrength(); + method protected int getBottomPaddingOffset(); + method public float getCameraDistance(); + method public android.graphics.Rect getClipBounds(); + method public boolean getClipBounds(android.graphics.Rect); + method public final boolean getClipToOutline(); + method @Nullable public final android.view.contentcapture.ContentCaptureSession getContentCaptureSession(); + method public CharSequence getContentDescription(); + method @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public final int getContentSensitivity(); + method @UiContext public final android.content.Context getContext(); + method protected android.view.ContextMenu.ContextMenuInfo getContextMenuInfo(); + method public final boolean getDefaultFocusHighlightEnabled(); + method public static int getDefaultSize(int, int); + method public android.view.Display getDisplay(); + method public final int[] getDrawableState(); + method @Deprecated public android.graphics.Bitmap getDrawingCache(); + method @Deprecated public android.graphics.Bitmap getDrawingCache(boolean); + method @Deprecated @ColorInt public int getDrawingCacheBackgroundColor(); + method @Deprecated public int getDrawingCacheQuality(); + method public void getDrawingRect(android.graphics.Rect); + method public long getDrawingTime(); + method public float getElevation(); + method @StyleRes public int getExplicitStyle(); + method public boolean getFilterTouchesWhenObscured(); + method public boolean getFitsSystemWindows(); + method public int getFocusable(); + method public java.util.ArrayList getFocusables(int); + method public void getFocusedRect(android.graphics.Rect); + method public android.graphics.drawable.Drawable getForeground(); + method public int getForegroundGravity(); + method @Nullable public android.graphics.BlendMode getForegroundTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getForegroundTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getForegroundTintMode(); + method @FlaggedApi("android.view.flags.view_velocity_api") public float getFrameContentVelocity(); + method public boolean getGlobalVisibleRect(android.graphics.Rect, android.graphics.Point); + method public final boolean getGlobalVisibleRect(android.graphics.Rect); + method public android.os.Handler getHandler(); + method public float getHandwritingBoundsOffsetBottom(); + method public float getHandwritingBoundsOffsetLeft(); + method public float getHandwritingBoundsOffsetRight(); + method public float getHandwritingBoundsOffsetTop(); + method @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public int getHandwritingDelegateFlags(); + method @Nullable public Runnable getHandwritingDelegatorCallback(); + method public final boolean getHasOverlappingRendering(); + method public final int getHeight(); + method public void getHitRect(android.graphics.Rect); + method public int getHorizontalFadingEdgeLength(); + method protected int getHorizontalScrollbarHeight(); + method @Nullable public android.graphics.drawable.Drawable getHorizontalScrollbarThumbDrawable(); + method @Nullable public android.graphics.drawable.Drawable getHorizontalScrollbarTrackDrawable(); + method @IdRes public int getId(); + method public int getImportantForAccessibility(); + method public int getImportantForAutofill(); + method public int getImportantForContentCapture(); + method public boolean getKeepScreenOn(); + method public android.view.KeyEvent.DispatcherState getKeyDispatcherState(); + method @IdRes public int getLabelFor(); + method public int getLayerType(); + method public int getLayoutDirection(); + method public android.view.ViewGroup.LayoutParams getLayoutParams(); + method public final int getLeft(); + method protected float getLeftFadingEdgeStrength(); + method protected int getLeftPaddingOffset(); + method public final boolean getLocalVisibleRect(android.graphics.Rect); + method public void getLocationInSurface(@NonNull @Size(2) int[]); + method public void getLocationInWindow(@Size(2) int[]); + method public void getLocationOnScreen(@Size(2) int[]); + method public android.graphics.Matrix getMatrix(); + method public final int getMeasuredHeight(); + method public final int getMeasuredHeightAndState(); + method public final int getMeasuredState(); + method public final int getMeasuredWidth(); + method public final int getMeasuredWidthAndState(); + method public int getMinimumHeight(); + method public int getMinimumWidth(); + method @IdRes public int getNextClusterForwardId(); + method @IdRes public int getNextFocusDownId(); + method @IdRes public int getNextFocusForwardId(); + method @IdRes public int getNextFocusLeftId(); + method @IdRes public int getNextFocusRightId(); + method @IdRes public int getNextFocusUpId(); + method public android.view.View.OnFocusChangeListener getOnFocusChangeListener(); + method @ColorInt public int getOutlineAmbientShadowColor(); + method public android.view.ViewOutlineProvider getOutlineProvider(); + method @ColorInt public int getOutlineSpotShadowColor(); + method public int getOverScrollMode(); + method public android.view.ViewOverlay getOverlay(); + method public int getPaddingBottom(); + method public int getPaddingEnd(); + method public int getPaddingLeft(); + method public int getPaddingRight(); + method public int getPaddingStart(); + method public int getPaddingTop(); + method public final android.view.ViewParent getParent(); + method public android.view.ViewParent getParentForAccessibility(); + method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") @Nullable public final android.os.OutcomeReceiver getPendingCredentialCallback(); + method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") @Nullable public final android.credentials.GetCredentialRequest getPendingCredentialRequest(); + method public float getPivotX(); + method public float getPivotY(); + method public android.view.PointerIcon getPointerIcon(); + method @NonNull public final java.util.List getPreferKeepClearRects(); + method @Nullable public String[] getReceiveContentMimeTypes(); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public float getRequestedFrameRate(); + method public android.content.res.Resources getResources(); + method public final boolean getRevealOnFocusHint(); + method public final int getRight(); + method protected float getRightFadingEdgeStrength(); + method protected int getRightPaddingOffset(); + method @Nullable public android.view.AttachedSurfaceControl getRootSurfaceControl(); + method public android.view.View getRootView(); + method public android.view.WindowInsets getRootWindowInsets(); + method public float getRotation(); + method public float getRotationX(); + method public float getRotationY(); + method public float getScaleX(); + method public float getScaleY(); + method public int getScrollBarDefaultDelayBeforeFade(); + method public int getScrollBarFadeDuration(); + method public int getScrollBarSize(); + method public int getScrollBarStyle(); + method public int getScrollCaptureHint(); + method public int getScrollIndicators(); + method public final int getScrollX(); + method public final int getScrollY(); + method @ColorInt public int getSolidColor(); + method @LayoutRes public int getSourceLayoutResId(); + method @Nullable public final CharSequence getStateDescription(); + method public android.animation.StateListAnimator getStateListAnimator(); + method protected int getSuggestedMinimumHeight(); + method protected int getSuggestedMinimumWidth(); + method @FlaggedApi("android.view.accessibility.supplemental_description") @Nullable public CharSequence getSupplementalDescription(); + method @NonNull public java.util.List getSystemGestureExclusionRects(); + method @Deprecated public int getSystemUiVisibility(); + method public Object getTag(); + method public Object getTag(int); + method public int getTextAlignment(); + method public int getTextDirection(); + method @Nullable public CharSequence getTooltipText(); + method public final int getTop(); + method protected float getTopFadingEdgeStrength(); + method protected int getTopPaddingOffset(); + method public android.view.TouchDelegate getTouchDelegate(); + method public java.util.ArrayList getTouchables(); + method public float getTransitionAlpha(); + method public String getTransitionName(); + method public float getTranslationX(); + method public float getTranslationY(); + method public float getTranslationZ(); + method public long getUniqueDrawingId(); + method public int getVerticalFadingEdgeLength(); + method public int getVerticalScrollbarPosition(); + method @Nullable public android.graphics.drawable.Drawable getVerticalScrollbarThumbDrawable(); + method @Nullable public android.graphics.drawable.Drawable getVerticalScrollbarTrackDrawable(); + method public int getVerticalScrollbarWidth(); + method @Nullable public android.view.translation.ViewTranslationResponse getViewTranslationResponse(); + method public android.view.ViewTreeObserver getViewTreeObserver(); + method public int getVisibility(); + method public final int getWidth(); + method protected int getWindowAttachCount(); + method public android.view.WindowId getWindowId(); + method @Nullable public android.view.WindowInsetsController getWindowInsetsController(); + method @Deprecated public int getWindowSystemUiVisibility(); + method public android.os.IBinder getWindowToken(); + method public int getWindowVisibility(); + method public void getWindowVisibleDisplayFrame(android.graphics.Rect); + method public float getX(); + method public float getY(); + method public float getZ(); + method public boolean hasExplicitFocusable(); + method public boolean hasFocus(); + method public boolean hasFocusable(); + method public boolean hasNestedScrollingParent(); + method public boolean hasOnClickListeners(); + method public boolean hasOnLongClickListeners(); + method public boolean hasOverlappingRendering(); + method public boolean hasPointerCapture(); + method public boolean hasTransientState(); + method public boolean hasWindowFocus(); + method public static android.view.View inflate(android.content.Context, @LayoutRes int, android.view.ViewGroup); + method @Deprecated public void invalidate(android.graphics.Rect); + method @Deprecated public void invalidate(int, int, int, int); + method public void invalidate(); + method public void invalidateDrawable(@NonNull android.graphics.drawable.Drawable); + method public void invalidateOutline(); + method public boolean isAccessibilityDataSensitive(); + method public boolean isAccessibilityFocused(); + method public boolean isAccessibilityHeading(); + method public boolean isActivated(); + method public boolean isAttachedToWindow(); + method public boolean isAutoHandwritingEnabled(); + method public boolean isClickable(); + method @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public final boolean isContentSensitive(); + method public boolean isContextClickable(); + method public boolean isCredential(); + method public boolean isDirty(); + method @Deprecated public boolean isDrawingCacheEnabled(); + method public boolean isDuplicateParentStateEnabled(); + method public boolean isEnabled(); + method public final boolean isFocusable(); + method public final boolean isFocusableInTouchMode(); + method public boolean isFocused(); + method public final boolean isFocusedByDefault(); + method public boolean isForceDarkAllowed(); + method public boolean isHandwritingDelegate(); + method public boolean isHapticFeedbackEnabled(); + method public boolean isHardwareAccelerated(); + method public boolean isHorizontalFadingEdgeEnabled(); + method public boolean isHorizontalScrollBarEnabled(); + method public boolean isHovered(); + method public boolean isImportantForAccessibility(); + method public final boolean isImportantForAutofill(); + method public final boolean isImportantForContentCapture(); + method public boolean isInEditMode(); + method public boolean isInLayout(); + method public boolean isInTouchMode(); + method public final boolean isKeyboardNavigationCluster(); + method public boolean isLaidOut(); + method public boolean isLayoutDirectionResolved(); + method public boolean isLayoutRequested(); + method public boolean isLongClickable(); + method public boolean isNestedScrollingEnabled(); + method public boolean isOpaque(); + method protected boolean isPaddingOffsetRequired(); + method public boolean isPaddingRelative(); + method public boolean isPivotSet(); + method public final boolean isPreferKeepClear(); + method public boolean isPressed(); + method public boolean isSaveEnabled(); + method public boolean isSaveFromParentEnabled(); + method public boolean isScreenReaderFocusable(); + method public boolean isScrollContainer(); + method public boolean isScrollbarFadingEnabled(); + method public boolean isSelected(); + method public final boolean isShowingLayoutBounds(); + method public boolean isShown(); + method public boolean isSoundEffectsEnabled(); + method public final boolean isTemporarilyDetached(); + method public boolean isTextAlignmentResolved(); + method public boolean isTextDirectionResolved(); + method public boolean isVerticalFadingEdgeEnabled(); + method public boolean isVerticalScrollBarEnabled(); + method public boolean isVisibleToUserForAutofill(int); + method @CallSuper public void jumpDrawablesToCurrentState(); + method public android.view.View keyboardNavigationClusterSearch(android.view.View, int); + method public void layout(int, int, int, int); + method public final void measure(int, int); + method protected static int[] mergeDrawableStates(int[], int[]); + method public void offsetLeftAndRight(int); + method public void offsetTopAndBottom(int); + method @CallSuper protected void onAnimationEnd(); + method @CallSuper protected void onAnimationStart(); + method public android.view.WindowInsets onApplyWindowInsets(android.view.WindowInsets); + method @CallSuper protected void onAttachedToWindow(); + method public void onCancelPendingInputEvents(); + method public boolean onCapturedPointerEvent(android.view.MotionEvent); + method public boolean onCheckIsTextEditor(); + method protected void onConfigurationChanged(android.content.res.Configuration); + method protected void onCreateContextMenu(android.view.ContextMenu); + method protected int[] onCreateDrawableState(int); + method public android.view.inputmethod.InputConnection onCreateInputConnection(android.view.inputmethod.EditorInfo); + method public void onCreateViewTranslationRequest(@NonNull int[], @NonNull java.util.function.Consumer); + method public void onCreateVirtualViewTranslationRequests(@NonNull long[], @NonNull int[], @NonNull java.util.function.Consumer); + method @CallSuper protected void onDetachedFromWindow(); + method protected void onDisplayHint(int); + method public boolean onDragEvent(android.view.DragEvent); + method protected void onDraw(@NonNull android.graphics.Canvas); + method public void onDrawForeground(@NonNull android.graphics.Canvas); + method protected final void onDrawScrollBars(@NonNull android.graphics.Canvas); + method public boolean onFilterTouchEventForSecurity(android.view.MotionEvent); + method @CallSuper protected void onFinishInflate(); + method public void onFinishTemporaryDetach(); + method @CallSuper protected void onFocusChanged(boolean, int, @Nullable android.graphics.Rect); + method public boolean onGenericMotionEvent(android.view.MotionEvent); + method public void onHoverChanged(boolean); + method public boolean onHoverEvent(android.view.MotionEvent); + method @CallSuper public void onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent); + method @CallSuper public void onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo); + method public boolean onKeyDown(int, android.view.KeyEvent); + method public boolean onKeyLongPress(int, android.view.KeyEvent); + method public boolean onKeyMultiple(int, int, android.view.KeyEvent); + method public boolean onKeyPreIme(int, android.view.KeyEvent); + method public boolean onKeyShortcut(int, android.view.KeyEvent); + method public boolean onKeyUp(int, android.view.KeyEvent); + method protected void onLayout(boolean, int, int, int, int); + method protected void onMeasure(int, int); + method protected void onOverScrolled(int, int, boolean, boolean); + method @CallSuper public void onPointerCaptureChange(boolean); + method @CallSuper public void onPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); + method public void onProvideAutofillStructure(android.view.ViewStructure, int); + method public void onProvideAutofillVirtualStructure(android.view.ViewStructure, int); + method public void onProvideContentCaptureStructure(@NonNull android.view.ViewStructure, int); + method public void onProvideStructure(android.view.ViewStructure); + method public void onProvideVirtualStructure(android.view.ViewStructure); + method @Nullable public android.view.ContentInfo onReceiveContent(@NonNull android.view.ContentInfo); + method public android.view.PointerIcon onResolvePointerIcon(android.view.MotionEvent, int); + method @CallSuper protected void onRestoreInstanceState(android.os.Parcelable); + method public void onRtlPropertiesChanged(int); + method @CallSuper @Nullable protected android.os.Parcelable onSaveInstanceState(); + method public void onScreenStateChanged(int); + method public void onScrollCaptureSearch(@NonNull android.graphics.Rect, @NonNull android.graphics.Point, @NonNull java.util.function.Consumer); + method protected void onScrollChanged(int, int, int, int); + method protected boolean onSetAlpha(int); + method protected void onSizeChanged(int, int, int, int); + method public void onStartTemporaryDetach(); + method public boolean onTouchEvent(android.view.MotionEvent); + method public boolean onTrackballEvent(android.view.MotionEvent); + method public void onViewTranslationResponse(@NonNull android.view.translation.ViewTranslationResponse); + method public void onVirtualViewTranslationResponses(@NonNull android.util.LongSparseArray); + method @CallSuper public void onVisibilityAggregated(boolean); + method protected void onVisibilityChanged(@NonNull android.view.View, int); + method public void onWindowFocusChanged(boolean); + method @Deprecated public void onWindowSystemUiVisibilityChanged(int); + method protected void onWindowVisibilityChanged(int); + method protected boolean overScrollBy(int, int, int, int, int, int, int, int, boolean); + method public boolean performAccessibilityAction(int, @Nullable android.os.Bundle); + method public boolean performClick(); + method public boolean performContextClick(float, float); + method public boolean performContextClick(); + method public boolean performHapticFeedback(int); + method public boolean performHapticFeedback(int, int); + method public boolean performLongClick(); + method public boolean performLongClick(float, float); + method @Nullable public android.view.ContentInfo performReceiveContent(@NonNull android.view.ContentInfo); + method public void playSoundEffect(int); + method public boolean post(Runnable); + method public boolean postDelayed(Runnable, long); + method public void postInvalidate(); + method public void postInvalidate(int, int, int, int); + method public void postInvalidateDelayed(long); + method public void postInvalidateDelayed(long, int, int, int, int); + method public void postInvalidateOnAnimation(); + method public void postInvalidateOnAnimation(int, int, int, int); + method public void postOnAnimation(Runnable); + method public void postOnAnimationDelayed(Runnable, long); + method public void refreshDrawableState(); + method public void releasePointerCapture(); + method public boolean removeCallbacks(Runnable); + method public void removeOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener); + method public void removeOnLayoutChangeListener(android.view.View.OnLayoutChangeListener); + method public void removeOnUnhandledKeyEventListener(android.view.View.OnUnhandledKeyEventListener); + method @FlaggedApi("android.app.jank.detailed_app_jank_metrics_api") public void reportAppJankStats(@NonNull android.app.jank.AppJankStats); + method public void requestApplyInsets(); + method @Deprecated public void requestFitSystemWindows(); + method public final boolean requestFocus(); + method public final boolean requestFocus(int); + method public boolean requestFocus(int, android.graphics.Rect); + method public final boolean requestFocusFromTouch(); + method @CallSuper public void requestLayout(); + method public void requestPointerCapture(); + method public boolean requestRectangleOnScreen(android.graphics.Rect); + method public boolean requestRectangleOnScreen(android.graphics.Rect, boolean); + method public final void requestUnbufferedDispatch(android.view.MotionEvent); + method public final void requestUnbufferedDispatch(int); + method @NonNull public final T requireViewById(@IdRes int); + method public void resetPivot(); + method public static int resolveSize(int, int); + method public static int resolveSizeAndState(int, int, int); + method public boolean restoreDefaultFocus(); + method public void restoreHierarchyState(android.util.SparseArray); + method public final void saveAttributeDataForStyleable(@NonNull android.content.Context, @NonNull int[], @Nullable android.util.AttributeSet, @NonNull android.content.res.TypedArray, int, int); + method public void saveHierarchyState(android.util.SparseArray); + method public void scheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable, long); + method public void scrollBy(int, int); + method public void scrollTo(int, int); + method public void sendAccessibilityEvent(int); + method public void sendAccessibilityEventUnchecked(android.view.accessibility.AccessibilityEvent); + method public void setAccessibilityDataSensitive(int); + method public void setAccessibilityDelegate(@Nullable android.view.View.AccessibilityDelegate); + method public void setAccessibilityHeading(boolean); + method public void setAccessibilityLiveRegion(int); + method public void setAccessibilityPaneTitle(@Nullable CharSequence); + method public void setAccessibilityTraversalAfter(@IdRes int); + method public void setAccessibilityTraversalBefore(@IdRes int); + method public void setActivated(boolean); + method public void setAllowClickWhenDisabled(boolean); + method public void setAllowedHandwritingDelegatePackage(@Nullable String); + method public void setAllowedHandwritingDelegatorPackage(@Nullable String); + method public void setAlpha(@FloatRange(from=0.0, to=1.0) float); + method public void setAnimation(android.view.animation.Animation); + method public void setAnimationMatrix(@Nullable android.graphics.Matrix); + method public void setAutoHandwritingEnabled(boolean); + method public void setAutofillHints(@Nullable java.lang.String...); + method public void setAutofillId(@Nullable android.view.autofill.AutofillId); + method public void setBackground(android.graphics.drawable.Drawable); + method public void setBackgroundColor(@ColorInt int); + method @Deprecated public void setBackgroundDrawable(android.graphics.drawable.Drawable); + method public void setBackgroundResource(@DrawableRes int); + method public void setBackgroundTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setBackgroundTintList(@Nullable android.content.res.ColorStateList); + method public void setBackgroundTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public final void setBottom(int); + method public void setCameraDistance(float); + method public void setClickable(boolean); + method public void setClipBounds(android.graphics.Rect); + method public void setClipToOutline(boolean); + method public void setContentCaptureSession(@Nullable android.view.contentcapture.ContentCaptureSession); + method public void setContentDescription(CharSequence); + method @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public final void setContentSensitivity(int); + method public void setContextClickable(boolean); + method public void setDefaultFocusHighlightEnabled(boolean); + method @Deprecated public void setDrawingCacheBackgroundColor(@ColorInt int); + method @Deprecated public void setDrawingCacheEnabled(boolean); + method @Deprecated public void setDrawingCacheQuality(int); + method public void setDuplicateParentStateEnabled(boolean); + method public void setElevation(float); + method public void setEnabled(boolean); + method public void setFadingEdgeLength(int); + method public void setFilterTouchesWhenObscured(boolean); + method public void setFitsSystemWindows(boolean); + method public void setFocusable(boolean); + method public void setFocusable(int); + method public void setFocusableInTouchMode(boolean); + method public void setFocusedByDefault(boolean); + method public void setForceDarkAllowed(boolean); + method public void setForeground(android.graphics.drawable.Drawable); + method public void setForegroundGravity(int); + method public void setForegroundTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setForegroundTintList(@Nullable android.content.res.ColorStateList); + method public void setForegroundTintMode(@Nullable android.graphics.PorterDuff.Mode); + method @FlaggedApi("android.view.flags.view_velocity_api") public void setFrameContentVelocity(float); + method public void setHandwritingBoundsOffsets(float, float, float, float); + method @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public void setHandwritingDelegateFlags(int); + method public void setHandwritingDelegatorCallback(@Nullable Runnable); + method public void setHapticFeedbackEnabled(boolean); + method public void setHasTransientState(boolean); + method public void setHorizontalFadingEdgeEnabled(boolean); + method public void setHorizontalScrollBarEnabled(boolean); + method public void setHorizontalScrollbarThumbDrawable(@Nullable android.graphics.drawable.Drawable); + method public void setHorizontalScrollbarTrackDrawable(@Nullable android.graphics.drawable.Drawable); + method public void setHovered(boolean); + method public void setId(@IdRes int); + method public void setImportantForAccessibility(int); + method public void setImportantForAutofill(int); + method public void setImportantForContentCapture(int); + method public void setIsCredential(boolean); + method public void setIsHandwritingDelegate(boolean); + method public void setKeepScreenOn(boolean); + method public void setKeyboardNavigationCluster(boolean); + method public void setLabelFor(@IdRes int); + method public void setLayerPaint(@Nullable android.graphics.Paint); + method public void setLayerType(int, @Nullable android.graphics.Paint); + method public void setLayoutDirection(int); + method public void setLayoutParams(android.view.ViewGroup.LayoutParams); + method public final void setLeft(int); + method public final void setLeftTopRightBottom(int, int, int, int); + method public void setLongClickable(boolean); + method protected final void setMeasuredDimension(int, int); + method public void setMinimumHeight(int); + method public void setMinimumWidth(int); + method public void setNestedScrollingEnabled(boolean); + method public void setNextClusterForwardId(@IdRes int); + method public void setNextFocusDownId(@IdRes int); + method public void setNextFocusForwardId(@IdRes int); + method public void setNextFocusLeftId(@IdRes int); + method public void setNextFocusRightId(@IdRes int); + method public void setNextFocusUpId(@IdRes int); + method public void setOnApplyWindowInsetsListener(android.view.View.OnApplyWindowInsetsListener); + method public void setOnCapturedPointerListener(android.view.View.OnCapturedPointerListener); + method public void setOnClickListener(@Nullable android.view.View.OnClickListener); + method public void setOnContextClickListener(@Nullable android.view.View.OnContextClickListener); + method public void setOnCreateContextMenuListener(android.view.View.OnCreateContextMenuListener); + method public void setOnDragListener(android.view.View.OnDragListener); + method public void setOnFocusChangeListener(android.view.View.OnFocusChangeListener); + method public void setOnGenericMotionListener(android.view.View.OnGenericMotionListener); + method public void setOnHoverListener(android.view.View.OnHoverListener); + method public void setOnKeyListener(android.view.View.OnKeyListener); + method public void setOnLongClickListener(@Nullable android.view.View.OnLongClickListener); + method public void setOnReceiveContentListener(@Nullable String[], @Nullable android.view.OnReceiveContentListener); + method public void setOnScrollChangeListener(android.view.View.OnScrollChangeListener); + method @Deprecated public void setOnSystemUiVisibilityChangeListener(android.view.View.OnSystemUiVisibilityChangeListener); + method public void setOnTouchListener(android.view.View.OnTouchListener); + method public void setOutlineAmbientShadowColor(@ColorInt int); + method public void setOutlineProvider(android.view.ViewOutlineProvider); + method public void setOutlineSpotShadowColor(@ColorInt int); + method public void setOverScrollMode(int); + method public void setPadding(int, int, int, int); + method public void setPaddingRelative(int, int, int, int); + method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") public void setPendingCredentialRequest(@NonNull android.credentials.GetCredentialRequest, @NonNull android.os.OutcomeReceiver); + method public void setPivotX(float); + method public void setPivotY(float); + method public void setPointerIcon(android.view.PointerIcon); + method public final void setPreferKeepClear(boolean); + method public final void setPreferKeepClearRects(@NonNull java.util.List); + method public void setPressed(boolean); + method public void setRenderEffect(@Nullable android.graphics.RenderEffect); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setRequestedFrameRate(float); + method public final void setRevealOnFocusHint(boolean); + method public final void setRight(int); + method public void setRotation(float); + method public void setRotationX(float); + method public void setRotationY(float); + method public void setSaveEnabled(boolean); + method public void setSaveFromParentEnabled(boolean); + method public void setScaleX(float); + method public void setScaleY(float); + method public void setScreenReaderFocusable(boolean); + method public void setScrollBarDefaultDelayBeforeFade(int); + method public void setScrollBarFadeDuration(int); + method public void setScrollBarSize(int); + method public void setScrollBarStyle(int); + method public final void setScrollCaptureCallback(@Nullable android.view.ScrollCaptureCallback); + method public void setScrollCaptureHint(int); + method public void setScrollContainer(boolean); + method public void setScrollIndicators(int); + method public void setScrollIndicators(int, int); + method public void setScrollX(int); + method public void setScrollY(int); + method public void setScrollbarFadingEnabled(boolean); + method public void setSelected(boolean); + method public void setSoundEffectsEnabled(boolean); + method public void setStateDescription(@Nullable CharSequence); + method public void setStateListAnimator(android.animation.StateListAnimator); + method @FlaggedApi("android.view.accessibility.supplemental_description") public void setSupplementalDescription(@Nullable CharSequence); + method public void setSystemGestureExclusionRects(@NonNull java.util.List); + method @Deprecated public void setSystemUiVisibility(int); + method public void setTag(Object); + method public void setTag(int, Object); + method public void setTextAlignment(int); + method public void setTextDirection(int); + method public void setTooltipText(@Nullable CharSequence); + method public final void setTop(int); + method public void setTouchDelegate(android.view.TouchDelegate); + method public void setTransitionAlpha(float); + method public final void setTransitionName(String); + method public void setTransitionVisibility(int); + method public void setTranslationX(float); + method public void setTranslationY(float); + method public void setTranslationZ(float); + method public void setVerticalFadingEdgeEnabled(boolean); + method public void setVerticalScrollBarEnabled(boolean); + method public void setVerticalScrollbarPosition(int); + method public void setVerticalScrollbarThumbDrawable(@Nullable android.graphics.drawable.Drawable); + method public void setVerticalScrollbarTrackDrawable(@Nullable android.graphics.drawable.Drawable); + method public void setViewTranslationCallback(@NonNull android.view.translation.ViewTranslationCallback); + method public void setVisibility(int); + method @Deprecated public void setWillNotCacheDrawing(boolean); + method public void setWillNotDraw(boolean); + method public void setWindowInsetsAnimationCallback(@Nullable android.view.WindowInsetsAnimation.Callback); + method public void setX(float); + method public void setY(float); + method public void setZ(float); + method public boolean showContextMenu(); + method public boolean showContextMenu(float, float); + method public android.view.ActionMode startActionMode(android.view.ActionMode.Callback); + method public android.view.ActionMode startActionMode(android.view.ActionMode.Callback, int); + method public void startAnimation(android.view.animation.Animation); + method @Deprecated public final boolean startDrag(android.content.ClipData, android.view.View.DragShadowBuilder, Object, int); + method public final boolean startDragAndDrop(android.content.ClipData, android.view.View.DragShadowBuilder, Object, int); + method public boolean startNestedScroll(int); + method public void stopNestedScroll(); + method public void transformMatrixToGlobal(@NonNull android.graphics.Matrix); + method public void transformMatrixToLocal(@NonNull android.graphics.Matrix); + method public void unscheduleDrawable(@NonNull android.graphics.drawable.Drawable, @NonNull Runnable); + method public void unscheduleDrawable(android.graphics.drawable.Drawable); + method public final void updateDragShadow(android.view.View.DragShadowBuilder); + method @CallSuper protected boolean verifyDrawable(@NonNull android.graphics.drawable.Drawable); + method @Deprecated public boolean willNotCacheDrawing(); + method public boolean willNotDraw(); + field public static final int ACCESSIBILITY_DATA_SENSITIVE_AUTO = 0; // 0x0 + field public static final int ACCESSIBILITY_DATA_SENSITIVE_NO = 2; // 0x2 + field public static final int ACCESSIBILITY_DATA_SENSITIVE_YES = 1; // 0x1 + field public static final int ACCESSIBILITY_LIVE_REGION_ASSERTIVE = 2; // 0x2 + field public static final int ACCESSIBILITY_LIVE_REGION_NONE = 0; // 0x0 + field public static final int ACCESSIBILITY_LIVE_REGION_POLITE = 1; // 0x1 + field public static final android.util.Property ALPHA; + field public static final int AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS = 1; // 0x1 + field public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE = "creditCardExpirationDate"; + field public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY = "creditCardExpirationDay"; + field public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH = "creditCardExpirationMonth"; + field public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR = "creditCardExpirationYear"; + field public static final String AUTOFILL_HINT_CREDIT_CARD_NUMBER = "creditCardNumber"; + field public static final String AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE = "creditCardSecurityCode"; + field public static final String AUTOFILL_HINT_EMAIL_ADDRESS = "emailAddress"; + field public static final String AUTOFILL_HINT_NAME = "name"; + field public static final String AUTOFILL_HINT_PASSWORD = "password"; + field public static final String AUTOFILL_HINT_PHONE = "phone"; + field public static final String AUTOFILL_HINT_POSTAL_ADDRESS = "postalAddress"; + field public static final String AUTOFILL_HINT_POSTAL_CODE = "postalCode"; + field public static final String AUTOFILL_HINT_USERNAME = "username"; + field public static final int AUTOFILL_TYPE_DATE = 4; // 0x4 + field public static final int AUTOFILL_TYPE_LIST = 3; // 0x3 + field public static final int AUTOFILL_TYPE_NONE = 0; // 0x0 + field public static final int AUTOFILL_TYPE_TEXT = 1; // 0x1 + field public static final int AUTOFILL_TYPE_TOGGLE = 2; // 0x2 + field @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public static final int CONTENT_SENSITIVITY_AUTO = 0; // 0x0 + field @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public static final int CONTENT_SENSITIVITY_NOT_SENSITIVE = 2; // 0x2 + field @FlaggedApi("android.view.flags.sensitive_content_app_protection_api") public static final int CONTENT_SENSITIVITY_SENSITIVE = 1; // 0x1 + field public static final int DRAG_FLAG_ACCESSIBILITY_ACTION = 1024; // 0x400 + field public static final int DRAG_FLAG_GLOBAL = 256; // 0x100 + field public static final int DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION = 64; // 0x40 + field public static final int DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION = 128; // 0x80 + field @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") public static final int DRAG_FLAG_GLOBAL_SAME_APPLICATION = 4096; // 0x1000 + field public static final int DRAG_FLAG_GLOBAL_URI_READ = 1; // 0x1 + field public static final int DRAG_FLAG_GLOBAL_URI_WRITE = 2; // 0x2 + field @FlaggedApi("com.android.window.flags.supports_drag_assistant_to_multiwindow") public static final int DRAG_FLAG_HIDE_CALLING_TASK_ON_DRAG_START = 16384; // 0x4000 + field public static final int DRAG_FLAG_OPAQUE = 512; // 0x200 + field @FlaggedApi("com.android.window.flags.delegate_unhandled_drags") public static final int DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG = 8192; // 0x2000 + field @Deprecated public static final int DRAWING_CACHE_QUALITY_AUTO = 0; // 0x0 + field @Deprecated public static final int DRAWING_CACHE_QUALITY_HIGH = 1048576; // 0x100000 + field @Deprecated public static final int DRAWING_CACHE_QUALITY_LOW = 524288; // 0x80000 + field protected static final int[] EMPTY_STATE_SET; + field protected static final int[] ENABLED_FOCUSED_SELECTED_STATE_SET; + field protected static final int[] ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] ENABLED_FOCUSED_STATE_SET; + field protected static final int[] ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] ENABLED_SELECTED_STATE_SET; + field protected static final int[] ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] ENABLED_STATE_SET; + field protected static final int[] ENABLED_WINDOW_FOCUSED_STATE_SET; + field public static final int FIND_VIEWS_WITH_CONTENT_DESCRIPTION = 2; // 0x2 + field public static final int FIND_VIEWS_WITH_TEXT = 1; // 0x1 + field public static final int FOCUSABLE = 1; // 0x1 + field public static final int FOCUSABLES_ALL = 0; // 0x0 + field public static final int FOCUSABLES_TOUCH_MODE = 1; // 0x1 + field public static final int FOCUSABLE_AUTO = 16; // 0x10 + field protected static final int[] FOCUSED_SELECTED_STATE_SET; + field protected static final int[] FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] FOCUSED_STATE_SET; + field protected static final int[] FOCUSED_WINDOW_FOCUSED_STATE_SET; + field public static final int FOCUS_BACKWARD = 1; // 0x1 + field public static final int FOCUS_DOWN = 130; // 0x82 + field public static final int FOCUS_FORWARD = 2; // 0x2 + field public static final int FOCUS_LEFT = 17; // 0x11 + field public static final int FOCUS_RIGHT = 66; // 0x42 + field public static final int FOCUS_UP = 33; // 0x21 + field public static final int GONE = 8; // 0x8 + field public static final int HAPTIC_FEEDBACK_ENABLED = 268435456; // 0x10000000 + field public static final int IMPORTANT_FOR_ACCESSIBILITY_AUTO = 0; // 0x0 + field public static final int IMPORTANT_FOR_ACCESSIBILITY_NO = 2; // 0x2 + field public static final int IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS = 4; // 0x4 + field public static final int IMPORTANT_FOR_ACCESSIBILITY_YES = 1; // 0x1 + field public static final int IMPORTANT_FOR_AUTOFILL_AUTO = 0; // 0x0 + field public static final int IMPORTANT_FOR_AUTOFILL_NO = 2; // 0x2 + field public static final int IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS = 8; // 0x8 + field public static final int IMPORTANT_FOR_AUTOFILL_YES = 1; // 0x1 + field public static final int IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS = 4; // 0x4 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_AUTO = 0; // 0x0 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO = 2; // 0x2 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS = 8; // 0x8 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES = 1; // 0x1 + field public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS = 4; // 0x4 + field public static final int INVISIBLE = 4; // 0x4 + field public static final int KEEP_SCREEN_ON = 67108864; // 0x4000000 + field public static final int LAYER_TYPE_HARDWARE = 2; // 0x2 + field public static final int LAYER_TYPE_NONE = 0; // 0x0 + field public static final int LAYER_TYPE_SOFTWARE = 1; // 0x1 + field public static final int LAYOUT_DIRECTION_INHERIT = 2; // 0x2 + field public static final int LAYOUT_DIRECTION_LOCALE = 3; // 0x3 + field public static final int LAYOUT_DIRECTION_LTR = 0; // 0x0 + field public static final int LAYOUT_DIRECTION_RTL = 1; // 0x1 + field public static final int MEASURED_HEIGHT_STATE_SHIFT = 16; // 0x10 + field public static final int MEASURED_SIZE_MASK = 16777215; // 0xffffff + field public static final int MEASURED_STATE_MASK = -16777216; // 0xff000000 + field public static final int MEASURED_STATE_TOO_SMALL = 16777216; // 0x1000000 + field public static final int NOT_FOCUSABLE = 0; // 0x0 + field public static final int NO_ID = -1; // 0xffffffff + field public static final int OVER_SCROLL_ALWAYS = 0; // 0x0 + field public static final int OVER_SCROLL_IF_CONTENT_SCROLLS = 1; // 0x1 + field public static final int OVER_SCROLL_NEVER = 2; // 0x2 + field protected static final int[] PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET; + field protected static final int[] PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] PRESSED_ENABLED_FOCUSED_STATE_SET; + field protected static final int[] PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] PRESSED_ENABLED_SELECTED_STATE_SET; + field protected static final int[] PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] PRESSED_ENABLED_STATE_SET; + field protected static final int[] PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] PRESSED_FOCUSED_SELECTED_STATE_SET; + field protected static final int[] PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] PRESSED_FOCUSED_STATE_SET; + field protected static final int[] PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] PRESSED_SELECTED_STATE_SET; + field protected static final int[] PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET; + field protected static final int[] PRESSED_STATE_SET; + field protected static final int[] PRESSED_WINDOW_FOCUSED_STATE_SET; + field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_DEFAULT = (0.0f/0.0f); + field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_HIGH = -4.0f; + field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_LOW = -2.0f; + field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_NORMAL = -3.0f; + field @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public static final float REQUESTED_FRAME_RATE_CATEGORY_NO_PREFERENCE = -1.0f; + field public static final android.util.Property ROTATION; + field public static final android.util.Property ROTATION_X; + field public static final android.util.Property ROTATION_Y; + field public static final android.util.Property SCALE_X; + field public static final android.util.Property SCALE_Y; + field public static final int SCREEN_STATE_OFF = 0; // 0x0 + field public static final int SCREEN_STATE_ON = 1; // 0x1 + field public static final int SCROLLBARS_INSIDE_INSET = 16777216; // 0x1000000 + field public static final int SCROLLBARS_INSIDE_OVERLAY = 0; // 0x0 + field public static final int SCROLLBARS_OUTSIDE_INSET = 50331648; // 0x3000000 + field public static final int SCROLLBARS_OUTSIDE_OVERLAY = 33554432; // 0x2000000 + field public static final int SCROLLBAR_POSITION_DEFAULT = 0; // 0x0 + field public static final int SCROLLBAR_POSITION_LEFT = 1; // 0x1 + field public static final int SCROLLBAR_POSITION_RIGHT = 2; // 0x2 + field public static final int SCROLL_AXIS_HORIZONTAL = 1; // 0x1 + field public static final int SCROLL_AXIS_NONE = 0; // 0x0 + field public static final int SCROLL_AXIS_VERTICAL = 2; // 0x2 + field public static final int SCROLL_CAPTURE_HINT_AUTO = 0; // 0x0 + field public static final int SCROLL_CAPTURE_HINT_EXCLUDE = 1; // 0x1 + field public static final int SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS = 4; // 0x4 + field public static final int SCROLL_CAPTURE_HINT_INCLUDE = 2; // 0x2 + field public static final int SCROLL_INDICATOR_BOTTOM = 2; // 0x2 + field public static final int SCROLL_INDICATOR_END = 32; // 0x20 + field public static final int SCROLL_INDICATOR_LEFT = 4; // 0x4 + field public static final int SCROLL_INDICATOR_RIGHT = 8; // 0x8 + field public static final int SCROLL_INDICATOR_START = 16; // 0x10 + field public static final int SCROLL_INDICATOR_TOP = 1; // 0x1 + field protected static final int[] SELECTED_STATE_SET; + field protected static final int[] SELECTED_WINDOW_FOCUSED_STATE_SET; + field public static final int SOUND_EFFECTS_ENABLED = 134217728; // 0x8000000 + field @Deprecated public static final int STATUS_BAR_HIDDEN = 1; // 0x1 + field @Deprecated public static final int STATUS_BAR_VISIBLE = 0; // 0x0 + field @Deprecated public static final int SYSTEM_UI_FLAG_FULLSCREEN = 4; // 0x4 + field @Deprecated public static final int SYSTEM_UI_FLAG_HIDE_NAVIGATION = 2; // 0x2 + field @Deprecated public static final int SYSTEM_UI_FLAG_IMMERSIVE = 2048; // 0x800 + field @Deprecated public static final int SYSTEM_UI_FLAG_IMMERSIVE_STICKY = 4096; // 0x1000 + field @Deprecated public static final int SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN = 1024; // 0x400 + field @Deprecated public static final int SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION = 512; // 0x200 + field @Deprecated public static final int SYSTEM_UI_FLAG_LAYOUT_STABLE = 256; // 0x100 + field @Deprecated public static final int SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR = 16; // 0x10 + field @Deprecated public static final int SYSTEM_UI_FLAG_LIGHT_STATUS_BAR = 8192; // 0x2000 + field @Deprecated public static final int SYSTEM_UI_FLAG_LOW_PROFILE = 1; // 0x1 + field @Deprecated public static final int SYSTEM_UI_FLAG_VISIBLE = 0; // 0x0 + field @Deprecated public static final int SYSTEM_UI_LAYOUT_FLAGS = 1536; // 0x600 + field public static final int TEXT_ALIGNMENT_CENTER = 4; // 0x4 + field public static final int TEXT_ALIGNMENT_GRAVITY = 1; // 0x1 + field public static final int TEXT_ALIGNMENT_INHERIT = 0; // 0x0 + field public static final int TEXT_ALIGNMENT_TEXT_END = 3; // 0x3 + field public static final int TEXT_ALIGNMENT_TEXT_START = 2; // 0x2 + field public static final int TEXT_ALIGNMENT_VIEW_END = 6; // 0x6 + field public static final int TEXT_ALIGNMENT_VIEW_START = 5; // 0x5 + field public static final int TEXT_DIRECTION_ANY_RTL = 2; // 0x2 + field public static final int TEXT_DIRECTION_FIRST_STRONG = 1; // 0x1 + field public static final int TEXT_DIRECTION_FIRST_STRONG_LTR = 6; // 0x6 + field public static final int TEXT_DIRECTION_FIRST_STRONG_RTL = 7; // 0x7 + field public static final int TEXT_DIRECTION_INHERIT = 0; // 0x0 + field public static final int TEXT_DIRECTION_LOCALE = 5; // 0x5 + field public static final int TEXT_DIRECTION_LTR = 3; // 0x3 + field public static final int TEXT_DIRECTION_RTL = 4; // 0x4 + field public static final android.util.Property TRANSLATION_X; + field public static final android.util.Property TRANSLATION_Y; + field public static final android.util.Property TRANSLATION_Z; + field protected static final String VIEW_LOG_TAG = "View"; + field public static final int VISIBLE = 0; // 0x0 + field protected static final int[] WINDOW_FOCUSED_STATE_SET; + field public static final android.util.Property X; + field public static final android.util.Property Y; + field public static final android.util.Property Z; + } + + public static class View.AccessibilityDelegate { + ctor public View.AccessibilityDelegate(); + method public void addExtraDataToAccessibilityNodeInfo(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityNodeInfo, @NonNull String, @Nullable android.os.Bundle); + method public boolean dispatchPopulateAccessibilityEvent(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); + method @Nullable public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider(@NonNull android.view.View); + method public void onInitializeAccessibilityEvent(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); + method public void onInitializeAccessibilityNodeInfo(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityNodeInfo); + method public void onPopulateAccessibilityEvent(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); + method public boolean onRequestSendAccessibilityEvent(@NonNull android.view.ViewGroup, @NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); + method public boolean performAccessibilityAction(@NonNull android.view.View, int, @Nullable android.os.Bundle); + method public void sendAccessibilityEvent(@NonNull android.view.View, int); + method public void sendAccessibilityEventUnchecked(@NonNull android.view.View, @NonNull android.view.accessibility.AccessibilityEvent); + } + + public static class View.BaseSavedState extends android.view.AbsSavedState { + ctor public View.BaseSavedState(android.os.Parcel); + ctor public View.BaseSavedState(android.os.Parcel, ClassLoader); + ctor public View.BaseSavedState(android.os.Parcelable); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class View.DragShadowBuilder { + ctor public View.DragShadowBuilder(android.view.View); + ctor public View.DragShadowBuilder(); + method public final android.view.View getView(); + method public void onDrawShadow(@NonNull android.graphics.Canvas); + method public void onProvideShadowMetrics(android.graphics.Point, android.graphics.Point); + } + + public static class View.MeasureSpec { + ctor public View.MeasureSpec(); + method public static int getMode(int); + method public static int getSize(int); + method public static int makeMeasureSpec(@IntRange(from=0, to=0x40000000 - 1) int, int); + method public static String toString(int); + field public static final int AT_MOST = -2147483648; // 0x80000000 + field public static final int EXACTLY = 1073741824; // 0x40000000 + field public static final int UNSPECIFIED = 0; // 0x0 + } + + public static interface View.OnApplyWindowInsetsListener { + method @NonNull public android.view.WindowInsets onApplyWindowInsets(@NonNull android.view.View, @NonNull android.view.WindowInsets); + } + + public static interface View.OnAttachStateChangeListener { + method public void onViewAttachedToWindow(@NonNull android.view.View); + method public void onViewDetachedFromWindow(@NonNull android.view.View); + } + + public static interface View.OnCapturedPointerListener { + method public boolean onCapturedPointer(android.view.View, android.view.MotionEvent); + } + + public static interface View.OnClickListener { + method public void onClick(android.view.View); + } + + public static interface View.OnContextClickListener { + method public boolean onContextClick(android.view.View); + } + + public static interface View.OnCreateContextMenuListener { + method public void onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo); + } + + public static interface View.OnDragListener { + method public boolean onDrag(android.view.View, android.view.DragEvent); + } + + public static interface View.OnFocusChangeListener { + method public void onFocusChange(android.view.View, boolean); + } + + public static interface View.OnGenericMotionListener { + method public boolean onGenericMotion(android.view.View, android.view.MotionEvent); + } + + public static interface View.OnHoverListener { + method public boolean onHover(android.view.View, android.view.MotionEvent); + } + + public static interface View.OnKeyListener { + method public boolean onKey(android.view.View, int, android.view.KeyEvent); + } + + public static interface View.OnLayoutChangeListener { + method public void onLayoutChange(android.view.View, int, int, int, int, int, int, int, int); + } + + public static interface View.OnLongClickListener { + method public boolean onLongClick(android.view.View); + method public default boolean onLongClickUseDefaultHapticFeedback(@NonNull android.view.View); + } + + public static interface View.OnScrollChangeListener { + method public void onScrollChange(android.view.View, int, int, int, int); + } + + @Deprecated public static interface View.OnSystemUiVisibilityChangeListener { + method @Deprecated public void onSystemUiVisibilityChange(int); + } + + public static interface View.OnTouchListener { + method public boolean onTouch(android.view.View, android.view.MotionEvent); + } + + public static interface View.OnUnhandledKeyEventListener { + method public boolean onUnhandledKeyEvent(android.view.View, android.view.KeyEvent); + } + + public final class ViewAnimationUtils { + method public static android.animation.Animator createCircularReveal(android.view.View, int, int, float, float); + } + + public class ViewConfiguration { + ctor @Deprecated public ViewConfiguration(); + method public static android.view.ViewConfiguration get(@NonNull @UiContext android.content.Context); + method @Deprecated @FloatRange(from=1.0) public static float getAmbiguousGestureMultiplier(); + method public static long getDefaultActionModeHideDuration(); + method public static int getDoubleTapTimeout(); + method @Deprecated public static int getEdgeSlop(); + method @Deprecated public static int getFadingEdgeLength(); + method @Deprecated public static long getGlobalActionKeyTimeout(); + method public static int getJumpTapTimeout(); + method public static int getKeyRepeatDelay(); + method public static int getKeyRepeatTimeout(); + method public static int getLongPressTimeout(); + method @Deprecated public static int getMaximumDrawingCacheSize(); + method @Deprecated public static int getMaximumFlingVelocity(); + method @Deprecated public static int getMinimumFlingVelocity(); + method public static int getMultiPressTimeout(); + method public static int getPressedStateDuration(); + method @FloatRange(from=1.0) public float getScaledAmbiguousGestureMultiplier(); + method public int getScaledDoubleTapSlop(); + method public int getScaledEdgeSlop(); + method public int getScaledFadingEdgeLength(); + method public int getScaledHandwritingGestureLineMargin(); + method public int getScaledHandwritingSlop(); + method public float getScaledHorizontalScrollFactor(); + method public int getScaledHoverSlop(); + method public int getScaledMaximumDrawingCacheSize(); + method public int getScaledMaximumFlingVelocity(); + method public int getScaledMaximumFlingVelocity(int, int, int); + method public int getScaledMinimumFlingVelocity(); + method public int getScaledMinimumFlingVelocity(int, int, int); + method public int getScaledMinimumScalingSpan(); + method public int getScaledOverflingDistance(); + method public int getScaledOverscrollDistance(); + method public int getScaledPagingTouchSlop(); + method public int getScaledScrollBarSize(); + method public int getScaledTouchSlop(); + method public float getScaledVerticalScrollFactor(); + method public int getScaledWindowTouchSlop(); + method public static int getScrollBarFadeDuration(); + method @Deprecated public static int getScrollBarSize(); + method public static int getScrollDefaultDelay(); + method public static float getScrollFriction(); + method public static int getTapTimeout(); + method @Deprecated public static int getTouchSlop(); + method @Deprecated public static int getWindowTouchSlop(); + method public static long getZoomControlsTimeout(); + method public boolean hasPermanentMenuKey(); + method public boolean shouldShowMenuShortcutsWhenKeyboardPresent(); + } + + public class ViewDebug { + ctor public ViewDebug(); + method public static void dumpCapturedView(String, Object); + method @Deprecated public static void startHierarchyTracing(String, android.view.View); + method @Deprecated public static void startRecyclerTracing(String, android.view.View); + method @Deprecated public static void stopHierarchyTracing(); + method @Deprecated public static void stopRecyclerTracing(); + method @Deprecated public static void trace(android.view.View, android.view.ViewDebug.RecyclerTraceType, int...); + method @Deprecated public static void trace(android.view.View, android.view.ViewDebug.HierarchyTraceType); + field @Deprecated public static final boolean TRACE_HIERARCHY = false; + field @Deprecated public static final boolean TRACE_RECYCLER = false; + } + + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public static @interface ViewDebug.CapturedViewProperty { + method public abstract boolean retrieveReturn() default false; + } + + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public static @interface ViewDebug.ExportedProperty { + method public abstract String category() default ""; + method public abstract boolean deepExport() default false; + method public abstract android.view.ViewDebug.FlagToString[] flagMapping() default {}; + method public abstract boolean formatToHexString() default false; + method public abstract boolean hasAdjacentMapping() default false; + method public abstract android.view.ViewDebug.IntToString[] indexMapping() default {}; + method public abstract android.view.ViewDebug.IntToString[] mapping() default {}; + method public abstract String prefix() default ""; + method public abstract boolean resolveId() default false; + } + + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface ViewDebug.FlagToString { + method public abstract int equals(); + method public abstract int mask(); + method public abstract String name(); + method public abstract boolean outputIf() default true; + } + + @Deprecated public enum ViewDebug.HierarchyTraceType { + enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType BUILD_CACHE; + enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType DRAW; + enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType INVALIDATE; + enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType INVALIDATE_CHILD; + enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType INVALIDATE_CHILD_IN_PARENT; + enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType ON_LAYOUT; + enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType ON_MEASURE; + enum_constant @Deprecated public static final android.view.ViewDebug.HierarchyTraceType REQUEST_LAYOUT; + } + + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface ViewDebug.IntToString { + method public abstract int from(); + method public abstract String to(); + } + + @Deprecated public enum ViewDebug.RecyclerTraceType { + enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType BIND_VIEW; + enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType MOVE_FROM_ACTIVE_TO_SCRAP_HEAP; + enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType MOVE_TO_SCRAP_HEAP; + enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType NEW_VIEW; + enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType RECYCLE_FROM_ACTIVE_HEAP; + enum_constant @Deprecated public static final android.view.ViewDebug.RecyclerTraceType RECYCLE_FROM_SCRAP_HEAP; + } + + @UiThread public abstract class ViewGroup extends android.view.View implements android.view.ViewManager android.view.ViewParent { + ctor public ViewGroup(android.content.Context); + ctor public ViewGroup(android.content.Context, android.util.AttributeSet); + ctor public ViewGroup(android.content.Context, android.util.AttributeSet, int); + ctor public ViewGroup(android.content.Context, android.util.AttributeSet, int, int); + method public boolean addStatesFromChildren(); + method public void addView(android.view.View); + method public void addView(android.view.View, int); + method public void addView(android.view.View, int, int); + method public void addView(android.view.View, android.view.ViewGroup.LayoutParams); + method public void addView(android.view.View, int, android.view.ViewGroup.LayoutParams); + method protected boolean addViewInLayout(android.view.View, int, android.view.ViewGroup.LayoutParams); + method protected boolean addViewInLayout(android.view.View, int, android.view.ViewGroup.LayoutParams, boolean); + method protected void attachLayoutAnimationParameters(android.view.View, android.view.ViewGroup.LayoutParams, int, int); + method protected void attachViewToParent(android.view.View, int, android.view.ViewGroup.LayoutParams); + method public void bringChildToFront(android.view.View); + method protected boolean canAnimate(); + method protected boolean checkLayoutParams(android.view.ViewGroup.LayoutParams); + method public void childDrawableStateChanged(android.view.View); + method public void childHasTransientStateChanged(android.view.View, boolean); + method protected void cleanupLayoutState(android.view.View); + method public void clearChildFocus(android.view.View); + method public void clearDisappearingChildren(); + method protected void debug(int); + method protected void detachAllViewsFromParent(); + method protected void detachViewFromParent(android.view.View); + method protected void detachViewFromParent(int); + method protected void detachViewsFromParent(int, int); + method protected void dispatchFreezeSelfOnly(android.util.SparseArray); + method public void dispatchSetActivated(boolean); + method public void dispatchSetSelected(boolean); + method protected void dispatchThawSelfOnly(android.util.SparseArray); + method protected boolean drawChild(@NonNull android.graphics.Canvas, android.view.View, long); + method public void endViewTransition(android.view.View); + method @Nullable public android.window.OnBackInvokedDispatcher findOnBackInvokedDispatcherForChild(@NonNull android.view.View, @NonNull android.view.View); + method public android.view.View focusSearch(android.view.View, int); + method public void focusableViewAvailable(android.view.View); + method protected android.view.ViewGroup.LayoutParams generateDefaultLayoutParams(); + method public android.view.ViewGroup.LayoutParams generateLayoutParams(android.util.AttributeSet); + method protected android.view.ViewGroup.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); + method public android.view.View getChildAt(int); + method public int getChildCount(); + method protected int getChildDrawingOrder(int, int); + method public final int getChildDrawingOrder(int); + method public static int getChildMeasureSpec(int, int, int); + method protected boolean getChildStaticTransformation(android.view.View, android.view.animation.Transformation); + method public boolean getChildVisibleRect(android.view.View, android.graphics.Rect, android.graphics.Point); + method public boolean getClipChildren(); + method public boolean getClipToPadding(); + method public int getDescendantFocusability(); + method public android.view.View getFocusedChild(); + method public android.view.animation.LayoutAnimationController getLayoutAnimation(); + method public android.view.animation.Animation.AnimationListener getLayoutAnimationListener(); + method public int getLayoutMode(); + method public android.animation.LayoutTransition getLayoutTransition(); + method public int getNestedScrollAxes(); + method public android.view.ViewGroupOverlay getOverlay(); + method @Deprecated public int getPersistentDrawingCache(); + method public boolean getTouchscreenBlocksFocus(); + method public int indexOfChild(android.view.View); + method @Deprecated public final void invalidateChild(android.view.View, android.graphics.Rect); + method @Deprecated public android.view.ViewParent invalidateChildInParent(int[], android.graphics.Rect); + method @Deprecated public boolean isAlwaysDrawnWithCacheEnabled(); + method @Deprecated public boolean isAnimationCacheEnabled(); + method protected boolean isChildrenDrawingOrderEnabled(); + method @Deprecated protected boolean isChildrenDrawnWithCacheEnabled(); + method public boolean isLayoutSuppressed(); + method public boolean isMotionEventSplittingEnabled(); + method public boolean isTransitionGroup(); + method public final void layout(int, int, int, int); + method protected void measureChild(android.view.View, int, int); + method protected void measureChildWithMargins(android.view.View, int, int, int, int); + method protected void measureChildren(int, int); + method public void notifySubtreeAccessibilityStateChanged(android.view.View, android.view.View, int); + method public final void offsetDescendantRectToMyCoords(android.view.View, android.graphics.Rect); + method public final void offsetRectIntoDescendantCoords(android.view.View, android.graphics.Rect); + method @CallSuper public void onDescendantInvalidated(@NonNull android.view.View, @NonNull android.view.View); + method public boolean onInterceptHoverEvent(android.view.MotionEvent); + method public boolean onInterceptTouchEvent(android.view.MotionEvent); + method protected abstract void onLayout(boolean, int, int, int, int); + method public boolean onNestedFling(android.view.View, float, float, boolean); + method public boolean onNestedPreFling(android.view.View, float, float); + method public boolean onNestedPrePerformAccessibilityAction(android.view.View, int, android.os.Bundle); + method public void onNestedPreScroll(android.view.View, int, int, int[]); + method public void onNestedScroll(android.view.View, int, int, int, int); + method public void onNestedScrollAccepted(android.view.View, android.view.View, int); + method protected boolean onRequestFocusInDescendants(int, android.graphics.Rect); + method public boolean onRequestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent); + method public boolean onStartNestedScroll(android.view.View, android.view.View, int); + method public void onStopNestedScroll(android.view.View); + method public void onViewAdded(android.view.View); + method public void onViewRemoved(android.view.View); + method @FlaggedApi("android.view.flags.toolkit_viewgroup_set_requested_frame_rate_api") public void propagateRequestedFrameRate(float, boolean); + method public void recomputeViewAttributes(android.view.View); + method public void removeAllViews(); + method public void removeAllViewsInLayout(); + method protected void removeDetachedView(android.view.View, boolean); + method public void removeView(android.view.View); + method public void removeViewAt(int); + method public void removeViewInLayout(android.view.View); + method public void removeViews(int, int); + method public void removeViewsInLayout(int, int); + method public void requestChildFocus(android.view.View, android.view.View); + method public boolean requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean); + method public void requestDisallowInterceptTouchEvent(boolean); + method public boolean requestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent); + method public void requestTransparentRegion(android.view.View); + method public void scheduleLayoutAnimation(); + method public void setAddStatesFromChildren(boolean); + method @Deprecated public void setAlwaysDrawnWithCacheEnabled(boolean); + method @Deprecated public void setAnimationCacheEnabled(boolean); + method @Deprecated protected void setChildrenDrawingCacheEnabled(boolean); + method protected void setChildrenDrawingOrderEnabled(boolean); + method @Deprecated protected void setChildrenDrawnWithCacheEnabled(boolean); + method public void setClipChildren(boolean); + method public void setClipToPadding(boolean); + method public void setDescendantFocusability(int); + method public void setLayoutAnimation(android.view.animation.LayoutAnimationController); + method public void setLayoutAnimationListener(android.view.animation.Animation.AnimationListener); + method public void setLayoutMode(int); + method public void setLayoutTransition(android.animation.LayoutTransition); + method public void setMotionEventSplittingEnabled(boolean); + method public void setOnHierarchyChangeListener(android.view.ViewGroup.OnHierarchyChangeListener); + method @Deprecated public void setPersistentDrawingCache(int); + method protected void setStaticTransformationsEnabled(boolean); + method public void setTouchscreenBlocksFocus(boolean); + method public void setTransitionGroup(boolean); + method public boolean shouldDelayChildPressedState(); + method public boolean showContextMenuForChild(android.view.View); + method public boolean showContextMenuForChild(android.view.View, float, float); + method public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode.Callback); + method public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode.Callback, int); + method public void startLayoutAnimation(); + method public void startViewTransition(android.view.View); + method public void suppressLayout(boolean); + method public void updateViewLayout(android.view.View, android.view.ViewGroup.LayoutParams); + field protected static final int CLIP_TO_PADDING_MASK = 34; // 0x22 + field public static final int FOCUS_AFTER_DESCENDANTS = 262144; // 0x40000 + field public static final int FOCUS_BEFORE_DESCENDANTS = 131072; // 0x20000 + field public static final int FOCUS_BLOCK_DESCENDANTS = 393216; // 0x60000 + field public static final int LAYOUT_MODE_CLIP_BOUNDS = 0; // 0x0 + field public static final int LAYOUT_MODE_OPTICAL_BOUNDS = 1; // 0x1 + field @Deprecated public static final int PERSISTENT_ALL_CACHES = 3; // 0x3 + field @Deprecated public static final int PERSISTENT_ANIMATION_CACHE = 1; // 0x1 + field @Deprecated public static final int PERSISTENT_NO_CACHE = 0; // 0x0 + field @Deprecated public static final int PERSISTENT_SCROLLING_CACHE = 2; // 0x2 + } + + public static class ViewGroup.LayoutParams { + ctor public ViewGroup.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor public ViewGroup.LayoutParams(int, int); + ctor public ViewGroup.LayoutParams(android.view.ViewGroup.LayoutParams); + method public void resolveLayoutDirection(int); + method protected void setBaseAttributes(android.content.res.TypedArray, int, int); + field @Deprecated public static final int FILL_PARENT = -1; // 0xffffffff + field public static final int MATCH_PARENT = -1; // 0xffffffff + field public static final int WRAP_CONTENT = -2; // 0xfffffffe + field public int height; + field public android.view.animation.LayoutAnimationController.AnimationParameters layoutAnimationParameters; + field public int width; + } + + public static class ViewGroup.MarginLayoutParams extends android.view.ViewGroup.LayoutParams { + ctor public ViewGroup.MarginLayoutParams(android.content.Context, android.util.AttributeSet); + ctor public ViewGroup.MarginLayoutParams(int, int); + ctor public ViewGroup.MarginLayoutParams(android.view.ViewGroup.MarginLayoutParams); + ctor public ViewGroup.MarginLayoutParams(android.view.ViewGroup.LayoutParams); + method public int getLayoutDirection(); + method public int getMarginEnd(); + method public int getMarginStart(); + method public boolean isMarginRelative(); + method public void setLayoutDirection(int); + method public void setMarginEnd(int); + method public void setMarginStart(int); + method public void setMargins(int, int, int, int); + field public int bottomMargin; + field public int leftMargin; + field public int rightMargin; + field public int topMargin; + } + + public static interface ViewGroup.OnHierarchyChangeListener { + method public void onChildViewAdded(android.view.View, android.view.View); + method public void onChildViewRemoved(android.view.View, android.view.View); + } + + public class ViewGroupOverlay extends android.view.ViewOverlay { + method public void add(@NonNull android.view.View); + method public void remove(@NonNull android.view.View); + } + + public interface ViewManager { + method public void addView(android.view.View, android.view.ViewGroup.LayoutParams); + method public void removeView(android.view.View); + method public void updateViewLayout(android.view.View, android.view.ViewGroup.LayoutParams); + } + + public abstract class ViewOutlineProvider { + ctor public ViewOutlineProvider(); + method public abstract void getOutline(android.view.View, android.graphics.Outline); + field public static final android.view.ViewOutlineProvider BACKGROUND; + field public static final android.view.ViewOutlineProvider BOUNDS; + field public static final android.view.ViewOutlineProvider PADDED_BOUNDS; + } + + public class ViewOverlay { + method public void add(@NonNull android.graphics.drawable.Drawable); + method public void clear(); + method public void remove(@NonNull android.graphics.drawable.Drawable); + } + + public interface ViewParent { + method public void bringChildToFront(android.view.View); + method public boolean canResolveLayoutDirection(); + method public boolean canResolveTextAlignment(); + method public boolean canResolveTextDirection(); + method public void childDrawableStateChanged(@NonNull android.view.View); + method public void childHasTransientStateChanged(@NonNull android.view.View, boolean); + method public void clearChildFocus(android.view.View); + method public void createContextMenu(android.view.ContextMenu); + method @Nullable public default android.window.OnBackInvokedDispatcher findOnBackInvokedDispatcherForChild(@NonNull android.view.View, @NonNull android.view.View); + method public android.view.View focusSearch(android.view.View, int); + method public void focusableViewAvailable(android.view.View); + method public boolean getChildVisibleRect(android.view.View, android.graphics.Rect, android.graphics.Point); + method public int getLayoutDirection(); + method public android.view.ViewParent getParent(); + method public android.view.ViewParent getParentForAccessibility(); + method public int getTextAlignment(); + method public int getTextDirection(); + method @Deprecated public void invalidateChild(android.view.View, android.graphics.Rect); + method @Deprecated public android.view.ViewParent invalidateChildInParent(int[], android.graphics.Rect); + method public boolean isLayoutDirectionResolved(); + method public boolean isLayoutRequested(); + method public boolean isTextAlignmentResolved(); + method public boolean isTextDirectionResolved(); + method public android.view.View keyboardNavigationClusterSearch(android.view.View, int); + method public void notifySubtreeAccessibilityStateChanged(@NonNull android.view.View, @NonNull android.view.View, int); + method public default void onDescendantInvalidated(@NonNull android.view.View, @NonNull android.view.View); + method public boolean onNestedFling(@NonNull android.view.View, float, float, boolean); + method public boolean onNestedPreFling(@NonNull android.view.View, float, float); + method public boolean onNestedPrePerformAccessibilityAction(@NonNull android.view.View, int, @Nullable android.os.Bundle); + method public void onNestedPreScroll(@NonNull android.view.View, int, int, @NonNull int[]); + method public void onNestedScroll(@NonNull android.view.View, int, int, int, int); + method public void onNestedScrollAccepted(@NonNull android.view.View, @NonNull android.view.View, int); + method public boolean onStartNestedScroll(@NonNull android.view.View, @NonNull android.view.View, int); + method public void onStopNestedScroll(@NonNull android.view.View); + method public void recomputeViewAttributes(android.view.View); + method public void requestChildFocus(android.view.View, android.view.View); + method public boolean requestChildRectangleOnScreen(@NonNull android.view.View, android.graphics.Rect, boolean); + method public void requestDisallowInterceptTouchEvent(boolean); + method public void requestFitSystemWindows(); + method public void requestLayout(); + method public boolean requestSendAccessibilityEvent(@NonNull android.view.View, android.view.accessibility.AccessibilityEvent); + method public void requestTransparentRegion(android.view.View); + method public boolean showContextMenuForChild(android.view.View); + method public boolean showContextMenuForChild(android.view.View, float, float); + method public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode.Callback); + method public android.view.ActionMode startActionModeForChild(android.view.View, android.view.ActionMode.Callback, int); + } + + public class ViewPropertyAnimator { + method @NonNull public android.view.ViewPropertyAnimator alpha(@FloatRange(from=0.0f, to=1.0f) float); + method @NonNull public android.view.ViewPropertyAnimator alphaBy(float); + method public void cancel(); + method public long getDuration(); + method @Nullable public android.animation.TimeInterpolator getInterpolator(); + method public long getStartDelay(); + method @NonNull public android.view.ViewPropertyAnimator rotation(float); + method @NonNull public android.view.ViewPropertyAnimator rotationBy(float); + method @NonNull public android.view.ViewPropertyAnimator rotationX(float); + method @NonNull public android.view.ViewPropertyAnimator rotationXBy(float); + method @NonNull public android.view.ViewPropertyAnimator rotationY(float); + method @NonNull public android.view.ViewPropertyAnimator rotationYBy(float); + method @NonNull public android.view.ViewPropertyAnimator scaleX(float); + method @NonNull public android.view.ViewPropertyAnimator scaleXBy(float); + method @NonNull public android.view.ViewPropertyAnimator scaleY(float); + method @NonNull public android.view.ViewPropertyAnimator scaleYBy(float); + method @NonNull public android.view.ViewPropertyAnimator setDuration(long); + method @NonNull public android.view.ViewPropertyAnimator setInterpolator(android.animation.TimeInterpolator); + method @NonNull public android.view.ViewPropertyAnimator setListener(@Nullable android.animation.Animator.AnimatorListener); + method @NonNull public android.view.ViewPropertyAnimator setStartDelay(long); + method @NonNull public android.view.ViewPropertyAnimator setUpdateListener(@Nullable android.animation.ValueAnimator.AnimatorUpdateListener); + method public void start(); + method @NonNull public android.view.ViewPropertyAnimator translationX(float); + method @NonNull public android.view.ViewPropertyAnimator translationXBy(float); + method @NonNull public android.view.ViewPropertyAnimator translationY(float); + method @NonNull public android.view.ViewPropertyAnimator translationYBy(float); + method @NonNull public android.view.ViewPropertyAnimator translationZ(float); + method @NonNull public android.view.ViewPropertyAnimator translationZBy(float); + method @NonNull public android.view.ViewPropertyAnimator withEndAction(Runnable); + method @NonNull public android.view.ViewPropertyAnimator withLayer(); + method @NonNull public android.view.ViewPropertyAnimator withStartAction(Runnable); + method @NonNull public android.view.ViewPropertyAnimator x(float); + method @NonNull public android.view.ViewPropertyAnimator xBy(float); + method @NonNull public android.view.ViewPropertyAnimator y(float); + method @NonNull public android.view.ViewPropertyAnimator yBy(float); + method @NonNull public android.view.ViewPropertyAnimator z(float); + method @NonNull public android.view.ViewPropertyAnimator zBy(float); + } + + public abstract class ViewStructure { + ctor public ViewStructure(); + method public abstract int addChildCount(int); + method public abstract void asyncCommit(); + method public abstract android.view.ViewStructure asyncNewChild(int); + method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") public void clearCredentialManagerRequest(); + method @Nullable public abstract android.view.autofill.AutofillId getAutofillId(); + method public abstract int getChildCount(); + method public abstract android.os.Bundle getExtras(); + method public abstract CharSequence getHint(); + method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") @Nullable public android.os.OutcomeReceiver getPendingCredentialCallback(); + method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") @Nullable public android.credentials.GetCredentialRequest getPendingCredentialRequest(); + method public abstract CharSequence getText(); + method public abstract int getTextSelectionEnd(); + method public abstract int getTextSelectionStart(); + method public abstract boolean hasExtras(); + method public abstract android.view.ViewStructure newChild(int); + method public abstract android.view.ViewStructure.HtmlInfo.Builder newHtmlInfoBuilder(@NonNull String); + method public abstract void setAccessibilityFocused(boolean); + method public abstract void setActivated(boolean); + method public abstract void setAlpha(float); + method public abstract void setAutofillHints(@Nullable String[]); + method public abstract void setAutofillId(@NonNull android.view.autofill.AutofillId); + method public abstract void setAutofillId(@NonNull android.view.autofill.AutofillId, int); + method public abstract void setAutofillOptions(CharSequence[]); + method public abstract void setAutofillType(int); + method public abstract void setAutofillValue(android.view.autofill.AutofillValue); + method public abstract void setCheckable(boolean); + method public abstract void setChecked(boolean); + method public abstract void setChildCount(int); + method public abstract void setClassName(String); + method public abstract void setClickable(boolean); + method public abstract void setContentDescription(CharSequence); + method public abstract void setContextClickable(boolean); + method public abstract void setDataIsSensitive(boolean); + method public abstract void setDimens(int, int, int, int, int, int); + method public abstract void setElevation(float); + method public abstract void setEnabled(boolean); + method public abstract void setFocusable(boolean); + method public abstract void setFocused(boolean); + method public abstract void setHint(CharSequence); + method public void setHintIdEntry(@NonNull String); + method public abstract void setHtmlInfo(@NonNull android.view.ViewStructure.HtmlInfo); + method public abstract void setId(int, String, String, String); + method public void setImportantForAutofill(int); + method public abstract void setInputType(int); + method public abstract void setLocaleList(android.os.LocaleList); + method public abstract void setLongClickable(boolean); + method public void setMaxTextEms(int); + method public void setMaxTextLength(int); + method public void setMinTextEms(int); + method public abstract void setOpaque(boolean); + method @FlaggedApi("android.service.autofill.autofill_credman_dev_integration") public void setPendingCredentialRequest(@NonNull android.credentials.GetCredentialRequest, @NonNull android.os.OutcomeReceiver); + method public void setReceiveContentMimeTypes(@Nullable String[]); + method public abstract void setSelected(boolean); + method public abstract void setText(CharSequence); + method public abstract void setText(CharSequence, int, int); + method public void setTextIdEntry(@NonNull String); + method public abstract void setTextLines(int[], int[]); + method public abstract void setTextStyle(float, int, int, int); + method public abstract void setTransformation(android.graphics.Matrix); + method public abstract void setVisibility(int); + method public abstract void setWebDomain(@Nullable String); + field @FlaggedApi("android.service.autofill.autofill_w_metrics") public static final String EXTRA_VIRTUAL_STRUCTURE_TYPE = "android.view.extra.VIRTUAL_STRUCTURE_TYPE"; + field @FlaggedApi("android.service.autofill.autofill_w_metrics") public static final String EXTRA_VIRTUAL_STRUCTURE_VERSION_NUMBER = "android.view.extra.VIRTUAL_STRUCTURE_VERSION_NUMBER"; + } + + public abstract static class ViewStructure.HtmlInfo { + ctor public ViewStructure.HtmlInfo(); + method @Nullable public abstract java.util.List> getAttributes(); + method @NonNull public abstract String getTag(); + } + + public abstract static class ViewStructure.HtmlInfo.Builder { + ctor public ViewStructure.HtmlInfo.Builder(); + method public abstract android.view.ViewStructure.HtmlInfo.Builder addAttribute(@NonNull String, @NonNull String); + method public abstract android.view.ViewStructure.HtmlInfo build(); + } + + @android.widget.RemoteViews.RemoteView public final class ViewStub extends android.view.View { + ctor public ViewStub(android.content.Context); + ctor public ViewStub(android.content.Context, @LayoutRes int); + ctor public ViewStub(android.content.Context, android.util.AttributeSet); + ctor public ViewStub(android.content.Context, android.util.AttributeSet, int); + ctor public ViewStub(android.content.Context, android.util.AttributeSet, int, int); + method @IdRes public int getInflatedId(); + method public android.view.LayoutInflater getLayoutInflater(); + method @LayoutRes public int getLayoutResource(); + method public android.view.View inflate(); + method public void setInflatedId(@IdRes int); + method public void setLayoutInflater(android.view.LayoutInflater); + method public void setLayoutResource(@LayoutRes int); + method public void setOnInflateListener(android.view.ViewStub.OnInflateListener); + } + + public static interface ViewStub.OnInflateListener { + method public void onInflate(android.view.ViewStub, android.view.View); + } + + public final class ViewTreeObserver { + method public void addOnDrawListener(android.view.ViewTreeObserver.OnDrawListener); + method public void addOnGlobalFocusChangeListener(android.view.ViewTreeObserver.OnGlobalFocusChangeListener); + method public void addOnGlobalLayoutListener(android.view.ViewTreeObserver.OnGlobalLayoutListener); + method public void addOnPreDrawListener(android.view.ViewTreeObserver.OnPreDrawListener); + method public void addOnScrollChangedListener(android.view.ViewTreeObserver.OnScrollChangedListener); + method public void addOnSystemGestureExclusionRectsChangedListener(@NonNull java.util.function.Consumer>); + method public void addOnTouchModeChangeListener(android.view.ViewTreeObserver.OnTouchModeChangeListener); + method public void addOnWindowAttachListener(android.view.ViewTreeObserver.OnWindowAttachListener); + method public void addOnWindowFocusChangeListener(android.view.ViewTreeObserver.OnWindowFocusChangeListener); + method public void addOnWindowVisibilityChangeListener(@NonNull android.view.ViewTreeObserver.OnWindowVisibilityChangeListener); + method public void dispatchOnDraw(); + method public void dispatchOnGlobalLayout(); + method public boolean dispatchOnPreDraw(); + method public boolean isAlive(); + method public void registerFrameCommitCallback(@NonNull Runnable); + method @Deprecated public void removeGlobalOnLayoutListener(android.view.ViewTreeObserver.OnGlobalLayoutListener); + method public void removeOnDrawListener(android.view.ViewTreeObserver.OnDrawListener); + method public void removeOnGlobalFocusChangeListener(android.view.ViewTreeObserver.OnGlobalFocusChangeListener); + method public void removeOnGlobalLayoutListener(android.view.ViewTreeObserver.OnGlobalLayoutListener); + method public void removeOnPreDrawListener(android.view.ViewTreeObserver.OnPreDrawListener); + method public void removeOnScrollChangedListener(android.view.ViewTreeObserver.OnScrollChangedListener); + method public void removeOnSystemGestureExclusionRectsChangedListener(@NonNull java.util.function.Consumer>); + method public void removeOnTouchModeChangeListener(android.view.ViewTreeObserver.OnTouchModeChangeListener); + method public void removeOnWindowAttachListener(android.view.ViewTreeObserver.OnWindowAttachListener); + method public void removeOnWindowFocusChangeListener(android.view.ViewTreeObserver.OnWindowFocusChangeListener); + method public void removeOnWindowVisibilityChangeListener(@NonNull android.view.ViewTreeObserver.OnWindowVisibilityChangeListener); + method public boolean unregisterFrameCommitCallback(@NonNull Runnable); + } + + public static interface ViewTreeObserver.OnDrawListener { + method public void onDraw(); + } + + public static interface ViewTreeObserver.OnGlobalFocusChangeListener { + method public void onGlobalFocusChanged(android.view.View, android.view.View); + } + + public static interface ViewTreeObserver.OnGlobalLayoutListener { + method public void onGlobalLayout(); + } + + public static interface ViewTreeObserver.OnPreDrawListener { + method public boolean onPreDraw(); + } + + public static interface ViewTreeObserver.OnScrollChangedListener { + method public void onScrollChanged(); + } + + public static interface ViewTreeObserver.OnTouchModeChangeListener { + method public void onTouchModeChanged(boolean); + } + + public static interface ViewTreeObserver.OnWindowAttachListener { + method public void onWindowAttached(); + method public void onWindowDetached(); + } + + public static interface ViewTreeObserver.OnWindowFocusChangeListener { + method public void onWindowFocusChanged(boolean); + } + + public static interface ViewTreeObserver.OnWindowVisibilityChangeListener { + method public void onWindowVisibilityChanged(int); + } + + public abstract class Window { + ctor public Window(@UiContext android.content.Context); + method public abstract void addContentView(android.view.View, android.view.ViewGroup.LayoutParams); + method public void addFlags(int); + method public final void addOnFrameMetricsAvailableListener(@NonNull android.view.Window.OnFrameMetricsAvailableListener, android.os.Handler); + method public void clearFlags(int); + method public abstract void closeAllPanels(); + method public abstract void closePanel(int); + method public T findViewById(@IdRes int); + method public boolean getAllowEnterTransitionOverlap(); + method public boolean getAllowReturnTransitionOverlap(); + method public final android.view.WindowManager.LayoutParams getAttributes(); + method public final android.view.Window.Callback getCallback(); + method public int getColorMode(); + method public final android.view.Window getContainer(); + method public android.transition.Scene getContentScene(); + method @UiContext public final android.content.Context getContext(); + method @Nullable public abstract android.view.View getCurrentFocus(); + method @NonNull public abstract android.view.View getDecorView(); + method public static int getDefaultFeatures(android.content.Context); + method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public float getDesiredHdrHeadroom(); + method public android.transition.Transition getEnterTransition(); + method public android.transition.Transition getExitTransition(); + method protected final int getFeatures(); + method protected final int getForcedWindowFlags(); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public boolean getFrameRateBoostOnTouchEnabled(); + method @Nullable public android.view.WindowInsetsController getInsetsController(); + method @NonNull public abstract android.view.LayoutInflater getLayoutInflater(); + method protected final int getLocalFeatures(); + method public android.media.session.MediaController getMediaController(); + method @Deprecated @ColorInt public abstract int getNavigationBarColor(); + method @Deprecated @ColorInt public int getNavigationBarDividerColor(); + method @NonNull public android.window.OnBackInvokedDispatcher getOnBackInvokedDispatcher(); + method public android.transition.Transition getReenterTransition(); + method public android.transition.Transition getReturnTransition(); + method @Nullable public android.view.AttachedSurfaceControl getRootSurfaceControl(); + method public android.transition.Transition getSharedElementEnterTransition(); + method public android.transition.Transition getSharedElementExitTransition(); + method public android.transition.Transition getSharedElementReenterTransition(); + method public android.transition.Transition getSharedElementReturnTransition(); + method public boolean getSharedElementsUseOverlay(); + method @Deprecated @ColorInt public abstract int getStatusBarColor(); + method @NonNull public java.util.List getSystemGestureExclusionRects(); + method public long getTransitionBackgroundFadeDuration(); + method public android.transition.TransitionManager getTransitionManager(); + method public abstract int getVolumeControlStream(); + method public android.view.WindowManager getWindowManager(); + method public final android.content.res.TypedArray getWindowStyle(); + method public final boolean hasChildren(); + method public boolean hasFeature(int); + method protected final boolean hasSoftInputMode(); + method public void injectInputEvent(android.view.InputEvent); + method public abstract void invalidatePanelMenu(int); + method public final boolean isActive(); + method public abstract boolean isFloating(); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public boolean isFrameRatePowerSavingsBalanced(); + method public boolean isNavigationBarContrastEnforced(); + method public abstract boolean isShortcutKey(int, android.view.KeyEvent); + method @Deprecated public boolean isStatusBarContrastEnforced(); + method public boolean isWideColorGamut(); + method public final void makeActive(); + method protected abstract void onActive(); + method public abstract void onConfigurationChanged(android.content.res.Configuration); + method public abstract void openPanel(int, android.view.KeyEvent); + method public abstract android.view.View peekDecorView(); + method public abstract boolean performContextMenuIdentifierAction(int, int); + method public abstract boolean performPanelIdentifierAction(int, int, int); + method public abstract boolean performPanelShortcut(int, int, android.view.KeyEvent, int); + method public void registerScrollCaptureCallback(@NonNull android.view.ScrollCaptureCallback); + method public final void removeOnFrameMetricsAvailableListener(android.view.Window.OnFrameMetricsAvailableListener); + method public boolean requestFeature(int); + method @NonNull public final T requireViewById(@IdRes int); + method public abstract void restoreHierarchyState(android.os.Bundle); + method public abstract android.os.Bundle saveHierarchyState(); + method public void setAllowEnterTransitionOverlap(boolean); + method public void setAllowReturnTransitionOverlap(boolean); + method public void setAttributes(android.view.WindowManager.LayoutParams); + method public void setBackgroundBlurRadius(int); + method public abstract void setBackgroundDrawable(android.graphics.drawable.Drawable); + method public void setBackgroundDrawableResource(@DrawableRes int); + method public void setCallback(android.view.Window.Callback); + method public abstract void setChildDrawable(int, android.graphics.drawable.Drawable); + method public abstract void setChildInt(int, int); + method public void setClipToOutline(boolean); + method public void setColorMode(int); + method public void setContainer(android.view.Window); + method public abstract void setContentView(@LayoutRes int); + method public abstract void setContentView(android.view.View); + method public abstract void setContentView(android.view.View, android.view.ViewGroup.LayoutParams); + method public abstract void setDecorCaptionShade(int); + method @Deprecated public void setDecorFitsSystemWindows(boolean); + method protected void setDefaultWindowFormat(int); + method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public void setDesiredHdrHeadroom(@FloatRange(from=0.0f, to=10000.0) float); + method public void setDimAmount(float); + method public void setElevation(float); + method public void setEnterTransition(android.transition.Transition); + method public void setExitTransition(android.transition.Transition); + method public abstract void setFeatureDrawable(int, android.graphics.drawable.Drawable); + method public abstract void setFeatureDrawableAlpha(int, int); + method public abstract void setFeatureDrawableResource(int, @DrawableRes int); + method public abstract void setFeatureDrawableUri(int, android.net.Uri); + method public abstract void setFeatureInt(int, int); + method public void setFlags(int, int); + method public void setFormat(int); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setFrameRateBoostOnTouchEnabled(boolean); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setFrameRatePowerSavingsBalanced(boolean); + method public void setGravity(int); + method @RequiresPermission(android.Manifest.permission.HIDE_OVERLAY_WINDOWS) public final void setHideOverlayWindows(boolean); + method public void setIcon(@DrawableRes int); + method public void setLayout(int, int); + method public void setLocalFocus(boolean, boolean); + method public void setLogo(@DrawableRes int); + method public void setMediaController(android.media.session.MediaController); + method @Deprecated public abstract void setNavigationBarColor(@ColorInt int); + method public void setNavigationBarContrastEnforced(boolean); + method @Deprecated public void setNavigationBarDividerColor(@ColorInt int); + method public void setPreferMinimalPostProcessing(boolean); + method public void setReenterTransition(android.transition.Transition); + method public abstract void setResizingCaptionDrawable(android.graphics.drawable.Drawable); + method public final void setRestrictedCaptionAreaListener(android.view.Window.OnRestrictedCaptionAreaChangedListener); + method public void setReturnTransition(android.transition.Transition); + method public void setSharedElementEnterTransition(android.transition.Transition); + method public void setSharedElementExitTransition(android.transition.Transition); + method public void setSharedElementReenterTransition(android.transition.Transition); + method public void setSharedElementReturnTransition(android.transition.Transition); + method public void setSharedElementsUseOverlay(boolean); + method public void setSoftInputMode(int); + method @Deprecated public abstract void setStatusBarColor(@ColorInt int); + method @Deprecated public void setStatusBarContrastEnforced(boolean); + method public void setSustainedPerformanceMode(boolean); + method public void setSystemGestureExclusionRects(@NonNull java.util.List); + method public abstract void setTitle(CharSequence); + method @Deprecated public abstract void setTitleColor(@ColorInt int); + method public void setTransitionBackgroundFadeDuration(long); + method public void setTransitionManager(android.transition.TransitionManager); + method public void setType(int); + method public void setUiOptions(int); + method public void setUiOptions(int, int); + method public abstract void setVolumeControlStream(int); + method public void setWindowAnimations(@StyleRes int); + method public void setWindowManager(android.view.WindowManager, android.os.IBinder, String); + method public void setWindowManager(android.view.WindowManager, android.os.IBinder, String, boolean); + method public abstract boolean superDispatchGenericMotionEvent(android.view.MotionEvent); + method public abstract boolean superDispatchKeyEvent(android.view.KeyEvent); + method public abstract boolean superDispatchKeyShortcutEvent(android.view.KeyEvent); + method public abstract boolean superDispatchTouchEvent(android.view.MotionEvent); + method public abstract boolean superDispatchTrackballEvent(android.view.MotionEvent); + method public abstract void takeInputQueue(android.view.InputQueue.Callback); + method public abstract void takeKeyEvents(boolean); + method public abstract void takeSurface(android.view.SurfaceHolder.Callback2); + method public abstract void togglePanel(int, android.view.KeyEvent); + method public void unregisterScrollCaptureCallback(@NonNull android.view.ScrollCaptureCallback); + field public static final int DECOR_CAPTION_SHADE_AUTO = 0; // 0x0 + field public static final int DECOR_CAPTION_SHADE_DARK = 2; // 0x2 + field public static final int DECOR_CAPTION_SHADE_LIGHT = 1; // 0x1 + field @Deprecated protected static final int DEFAULT_FEATURES = 65; // 0x41 + field public static final int FEATURE_ACTION_BAR = 8; // 0x8 + field public static final int FEATURE_ACTION_BAR_OVERLAY = 9; // 0x9 + field public static final int FEATURE_ACTION_MODE_OVERLAY = 10; // 0xa + field public static final int FEATURE_ACTIVITY_TRANSITIONS = 13; // 0xd + field public static final int FEATURE_CONTENT_TRANSITIONS = 12; // 0xc + field public static final int FEATURE_CONTEXT_MENU = 6; // 0x6 + field public static final int FEATURE_CUSTOM_TITLE = 7; // 0x7 + field @Deprecated public static final int FEATURE_INDETERMINATE_PROGRESS = 5; // 0x5 + field public static final int FEATURE_LEFT_ICON = 3; // 0x3 + field public static final int FEATURE_NO_TITLE = 1; // 0x1 + field public static final int FEATURE_OPTIONS_PANEL = 0; // 0x0 + field @Deprecated public static final int FEATURE_PROGRESS = 2; // 0x2 + field public static final int FEATURE_RIGHT_ICON = 4; // 0x4 + field @Deprecated public static final int FEATURE_SWIPE_TO_DISMISS = 11; // 0xb + field public static final int ID_ANDROID_CONTENT = 16908290; // 0x1020002 + field public static final String NAVIGATION_BAR_BACKGROUND_TRANSITION_NAME = "android:navigation:background"; + field @Deprecated public static final int PROGRESS_END = 10000; // 0x2710 + field @Deprecated public static final int PROGRESS_INDETERMINATE_OFF = -4; // 0xfffffffc + field @Deprecated public static final int PROGRESS_INDETERMINATE_ON = -3; // 0xfffffffd + field @Deprecated public static final int PROGRESS_SECONDARY_END = 30000; // 0x7530 + field @Deprecated public static final int PROGRESS_SECONDARY_START = 20000; // 0x4e20 + field @Deprecated public static final int PROGRESS_START = 0; // 0x0 + field @Deprecated public static final int PROGRESS_VISIBILITY_OFF = -2; // 0xfffffffe + field @Deprecated public static final int PROGRESS_VISIBILITY_ON = -1; // 0xffffffff + field public static final String STATUS_BAR_BACKGROUND_TRANSITION_NAME = "android:status:background"; + } + + public static interface Window.Callback { + method public boolean dispatchGenericMotionEvent(android.view.MotionEvent); + method public boolean dispatchKeyEvent(android.view.KeyEvent); + method public boolean dispatchKeyShortcutEvent(android.view.KeyEvent); + method public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent); + method public boolean dispatchTouchEvent(android.view.MotionEvent); + method public boolean dispatchTrackballEvent(android.view.MotionEvent); + method public void onActionModeFinished(android.view.ActionMode); + method public void onActionModeStarted(android.view.ActionMode); + method public void onAttachedToWindow(); + method public void onContentChanged(); + method public boolean onCreatePanelMenu(int, @NonNull android.view.Menu); + method @Nullable public android.view.View onCreatePanelView(int); + method public void onDetachedFromWindow(); + method public boolean onMenuItemSelected(int, @NonNull android.view.MenuItem); + method public boolean onMenuOpened(int, @NonNull android.view.Menu); + method public void onPanelClosed(int, @NonNull android.view.Menu); + method public default void onPointerCaptureChanged(boolean); + method public boolean onPreparePanel(int, @Nullable android.view.View, @NonNull android.view.Menu); + method public default void onProvideKeyboardShortcuts(java.util.List, @Nullable android.view.Menu, int); + method public boolean onSearchRequested(); + method public boolean onSearchRequested(android.view.SearchEvent); + method public void onWindowAttributesChanged(android.view.WindowManager.LayoutParams); + method public void onWindowFocusChanged(boolean); + method @Nullable public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback); + method @Nullable public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode.Callback, int); + } + + public static interface Window.OnFrameMetricsAvailableListener { + method public void onFrameMetricsAvailable(android.view.Window, android.view.FrameMetrics, int); + } + + public static interface Window.OnRestrictedCaptionAreaChangedListener { + method public void onRestrictedCaptionAreaChanged(android.graphics.Rect); + } + + @Deprecated public final class WindowAnimationFrameStats extends android.view.FrameStats implements android.os.Parcelable { + method @Deprecated public int describeContents(); + method @Deprecated public void writeToParcel(android.os.Parcel, int); + field @Deprecated @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class WindowContentFrameStats extends android.view.FrameStats implements android.os.Parcelable { + method public int describeContents(); + method public long getFramePostedTimeNano(int); + method public long getFrameReadyTimeNano(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class WindowId implements android.os.Parcelable { + method public int describeContents(); + method public boolean isFocused(); + method public void registerFocusObserver(android.view.WindowId.FocusObserver); + method public void unregisterFocusObserver(android.view.WindowId.FocusObserver); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract static class WindowId.FocusObserver { + ctor public WindowId.FocusObserver(); + method public abstract void onFocusGained(android.view.WindowId); + method public abstract void onFocusLost(android.view.WindowId); + } + + public final class WindowInsets { + ctor public WindowInsets(android.view.WindowInsets); + method @Deprecated @NonNull public android.view.WindowInsets consumeDisplayCutout(); + method @Deprecated @NonNull public android.view.WindowInsets consumeStableInsets(); + method @Deprecated @NonNull public android.view.WindowInsets consumeSystemWindowInsets(); + method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public java.util.List getBoundingRects(int); + method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public java.util.List getBoundingRectsIgnoringVisibility(int); + method @Nullable public android.view.DisplayCutout getDisplayCutout(); + method @Nullable public android.view.DisplayShape getDisplayShape(); + method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public android.util.Size getFrame(); + method @NonNull public android.graphics.Insets getInsets(int); + method @NonNull public android.graphics.Insets getInsetsIgnoringVisibility(int); + method @Deprecated @NonNull public android.graphics.Insets getMandatorySystemGestureInsets(); + method @Nullable public android.graphics.Rect getPrivacyIndicatorBounds(); + method @Nullable public android.view.RoundedCorner getRoundedCorner(int); + method @Deprecated public int getStableInsetBottom(); + method @Deprecated public int getStableInsetLeft(); + method @Deprecated public int getStableInsetRight(); + method @Deprecated public int getStableInsetTop(); + method @Deprecated @NonNull public android.graphics.Insets getStableInsets(); + method @Deprecated @NonNull public android.graphics.Insets getSystemGestureInsets(); + method @Deprecated public int getSystemWindowInsetBottom(); + method @Deprecated public int getSystemWindowInsetLeft(); + method @Deprecated public int getSystemWindowInsetRight(); + method @Deprecated public int getSystemWindowInsetTop(); + method @Deprecated @NonNull public android.graphics.Insets getSystemWindowInsets(); + method @Deprecated @NonNull public android.graphics.Insets getTappableElementInsets(); + method public boolean hasInsets(); + method @Deprecated public boolean hasStableInsets(); + method @Deprecated public boolean hasSystemWindowInsets(); + method @NonNull public android.view.WindowInsets inset(@NonNull android.graphics.Insets); + method @NonNull public android.view.WindowInsets inset(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int); + method public boolean isConsumed(); + method public boolean isRound(); + method public boolean isVisible(int); + method @Deprecated @NonNull public android.view.WindowInsets replaceSystemWindowInsets(int, int, int, int); + method @Deprecated @NonNull public android.view.WindowInsets replaceSystemWindowInsets(android.graphics.Rect); + field @NonNull public static final android.view.WindowInsets CONSUMED; + } + + public static final class WindowInsets.Builder { + ctor public WindowInsets.Builder(); + ctor public WindowInsets.Builder(@NonNull android.view.WindowInsets); + method @NonNull public android.view.WindowInsets build(); + method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public android.view.WindowInsets.Builder setBoundingRects(int, @NonNull java.util.List); + method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public android.view.WindowInsets.Builder setBoundingRectsIgnoringVisibility(int, @NonNull java.util.List); + method @NonNull public android.view.WindowInsets.Builder setDisplayCutout(@Nullable android.view.DisplayCutout); + method @NonNull public android.view.WindowInsets.Builder setDisplayShape(@NonNull android.view.DisplayShape); + method @FlaggedApi("android.view.flags.customizable_window_headers") @NonNull public android.view.WindowInsets.Builder setFrame(int, int); + method @NonNull public android.view.WindowInsets.Builder setInsets(int, @NonNull android.graphics.Insets); + method @NonNull public android.view.WindowInsets.Builder setInsetsIgnoringVisibility(int, @NonNull android.graphics.Insets) throws java.lang.IllegalArgumentException; + method @Deprecated @NonNull public android.view.WindowInsets.Builder setMandatorySystemGestureInsets(@NonNull android.graphics.Insets); + method @NonNull public android.view.WindowInsets.Builder setPrivacyIndicatorBounds(@Nullable android.graphics.Rect); + method @NonNull public android.view.WindowInsets.Builder setRoundedCorner(int, @Nullable android.view.RoundedCorner); + method @Deprecated @NonNull public android.view.WindowInsets.Builder setStableInsets(@NonNull android.graphics.Insets); + method @Deprecated @NonNull public android.view.WindowInsets.Builder setSystemGestureInsets(@NonNull android.graphics.Insets); + method @Deprecated @NonNull public android.view.WindowInsets.Builder setSystemWindowInsets(@NonNull android.graphics.Insets); + method @Deprecated @NonNull public android.view.WindowInsets.Builder setTappableElementInsets(@NonNull android.graphics.Insets); + method @NonNull public android.view.WindowInsets.Builder setVisible(int, boolean); + } + + public static final class WindowInsets.Side { + method public static int all(); + field public static final int BOTTOM = 8; // 0x8 + field public static final int LEFT = 1; // 0x1 + field public static final int RIGHT = 4; // 0x4 + field public static final int TOP = 2; // 0x2 + } + + public static final class WindowInsets.Type { + method public static int captionBar(); + method public static int displayCutout(); + method public static int ime(); + method public static int mandatorySystemGestures(); + method public static int navigationBars(); + method public static int statusBars(); + method public static int systemBars(); + method public static int systemGestures(); + method public static int systemOverlays(); + method public static int tappableElement(); + } + + public final class WindowInsetsAnimation { + ctor public WindowInsetsAnimation(int, @Nullable android.view.animation.Interpolator, long); + method @FloatRange(from=0.0f, to=1.0f) public float getAlpha(); + method public long getDurationMillis(); + method @FloatRange(from=0.0f, to=1.0f) public float getFraction(); + method public float getInterpolatedFraction(); + method @Nullable public android.view.animation.Interpolator getInterpolator(); + method public int getTypeMask(); + method public void setAlpha(@FloatRange(from=0.0f, to=1.0f) float); + method public void setFraction(@FloatRange(from=0.0f, to=1.0f) float); + } + + public static final class WindowInsetsAnimation.Bounds { + ctor public WindowInsetsAnimation.Bounds(@NonNull android.graphics.Insets, @NonNull android.graphics.Insets); + method @NonNull public android.graphics.Insets getLowerBound(); + method @NonNull public android.graphics.Insets getUpperBound(); + method @NonNull public android.view.WindowInsetsAnimation.Bounds inset(@NonNull android.graphics.Insets); + } + + public abstract static class WindowInsetsAnimation.Callback { + ctor public WindowInsetsAnimation.Callback(int); + method public final int getDispatchMode(); + method public void onEnd(@NonNull android.view.WindowInsetsAnimation); + method public void onPrepare(@NonNull android.view.WindowInsetsAnimation); + method @NonNull public abstract android.view.WindowInsets onProgress(@NonNull android.view.WindowInsets, @NonNull java.util.List); + method @NonNull public android.view.WindowInsetsAnimation.Bounds onStart(@NonNull android.view.WindowInsetsAnimation, @NonNull android.view.WindowInsetsAnimation.Bounds); + field public static final int DISPATCH_MODE_CONTINUE_ON_SUBTREE = 1; // 0x1 + field public static final int DISPATCH_MODE_STOP = 0; // 0x0 + } + + public interface WindowInsetsAnimationControlListener { + method public void onCancelled(@Nullable android.view.WindowInsetsAnimationController); + method public void onFinished(@NonNull android.view.WindowInsetsAnimationController); + method public void onReady(@NonNull android.view.WindowInsetsAnimationController, int); + } + + public interface WindowInsetsAnimationController { + method public void finish(boolean); + method public float getCurrentAlpha(); + method @FloatRange(from=0.0f, to=1.0f) public float getCurrentFraction(); + method @NonNull public android.graphics.Insets getCurrentInsets(); + method @NonNull public android.graphics.Insets getHiddenStateInsets(); + method @NonNull public android.graphics.Insets getShownStateInsets(); + method public int getTypes(); + method public boolean isCancelled(); + method public boolean isFinished(); + method public default boolean isReady(); + method public void setInsetsAndAlpha(@Nullable android.graphics.Insets, @FloatRange(from=0.0f, to=1.0f) float, @FloatRange(from=0.0f, to=1.0f) float); + } + + public interface WindowInsetsController { + method public void addOnControllableInsetsChangedListener(@NonNull android.view.WindowInsetsController.OnControllableInsetsChangedListener); + method public void controlWindowInsetsAnimation(int, long, @Nullable android.view.animation.Interpolator, @Nullable android.os.CancellationSignal, @NonNull android.view.WindowInsetsAnimationControlListener); + method public int getSystemBarsAppearance(); + method public int getSystemBarsBehavior(); + method public void hide(int); + method public void removeOnControllableInsetsChangedListener(@NonNull android.view.WindowInsetsController.OnControllableInsetsChangedListener); + method public void setSystemBarsAppearance(int, int); + method public void setSystemBarsBehavior(int); + method public void show(int); + field @FlaggedApi("android.view.flags.customizable_window_headers") public static final int APPEARANCE_LIGHT_CAPTION_BARS = 256; // 0x100 + field public static final int APPEARANCE_LIGHT_NAVIGATION_BARS = 16; // 0x10 + field public static final int APPEARANCE_LIGHT_STATUS_BARS = 8; // 0x8 + field @FlaggedApi("android.view.flags.customizable_window_headers") public static final int APPEARANCE_TRANSPARENT_CAPTION_BAR_BACKGROUND = 128; // 0x80 + field public static final int BEHAVIOR_DEFAULT = 1; // 0x1 + field @Deprecated public static final int BEHAVIOR_SHOW_BARS_BY_SWIPE = 1; // 0x1 + field @Deprecated public static final int BEHAVIOR_SHOW_BARS_BY_TOUCH = 0; // 0x0 + field public static final int BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE = 2; // 0x2 + } + + public static interface WindowInsetsController.OnControllableInsetsChangedListener { + method public void onControllableInsetsChanged(@NonNull android.view.WindowInsetsController, int); + } + + public interface WindowManager extends android.view.ViewManager { + method public default void addCrossWindowBlurEnabledListener(@NonNull java.util.function.Consumer); + method public default void addCrossWindowBlurEnabledListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public default void addProposedRotationListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer); + method @FlaggedApi("com.android.window.flags.screen_recording_callbacks") @RequiresPermission(android.Manifest.permission.DETECT_SCREEN_RECORDING) public default int addScreenRecordingCallback(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @NonNull public default android.view.WindowMetrics getCurrentWindowMetrics(); + method @Deprecated public android.view.Display getDefaultDisplay(); + method @NonNull public default android.view.WindowMetrics getMaximumWindowMetrics(); + method public default boolean isCrossWindowBlurEnabled(); + method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") @NonNull public default android.window.InputTransferToken registerBatchedSurfaceControlInputReceiver(@NonNull android.window.InputTransferToken, @NonNull android.view.SurfaceControl, @NonNull android.view.Choreographer, @NonNull android.view.SurfaceControlInputReceiver); + method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public default void registerTrustedPresentationListener(@NonNull android.os.IBinder, @NonNull android.window.TrustedPresentationThresholds, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") @NonNull public default android.window.InputTransferToken registerUnbatchedSurfaceControlInputReceiver(@NonNull android.window.InputTransferToken, @NonNull android.view.SurfaceControl, @NonNull android.os.Looper, @NonNull android.view.SurfaceControlInputReceiver); + method public default void removeCrossWindowBlurEnabledListener(@NonNull java.util.function.Consumer); + method public default void removeProposedRotationListener(@NonNull java.util.function.IntConsumer); + method @FlaggedApi("com.android.window.flags.screen_recording_callbacks") @RequiresPermission(android.Manifest.permission.DETECT_SCREEN_RECORDING) public default void removeScreenRecordingCallback(@NonNull java.util.function.Consumer); + method public void removeViewImmediate(android.view.View); + method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public default boolean transferTouchGesture(@NonNull android.window.InputTransferToken, @NonNull android.window.InputTransferToken); + method @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public default void unregisterSurfaceControlInputReceiver(@NonNull android.view.SurfaceControl); + method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public default void unregisterTrustedPresentationListener(@NonNull java.util.function.Consumer); + field @FlaggedApi("com.android.window.flags.cover_display_opt_in") public static final int COMPAT_SMALL_COVER_SCREEN_OPT_IN = 1; // 0x1 + field public static final String PROPERTY_ACTIVITY_EMBEDDING_ALLOW_SYSTEM_OVERRIDE = "android.window.PROPERTY_ACTIVITY_EMBEDDING_ALLOW_SYSTEM_OVERRIDE"; + field public static final String PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED = "android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED"; + field public static final String PROPERTY_CAMERA_COMPAT_ALLOW_FORCE_ROTATION = "android.window.PROPERTY_CAMERA_COMPAT_ALLOW_FORCE_ROTATION"; + field public static final String PROPERTY_CAMERA_COMPAT_ALLOW_REFRESH = "android.window.PROPERTY_CAMERA_COMPAT_ALLOW_REFRESH"; + field public static final String PROPERTY_CAMERA_COMPAT_ENABLE_REFRESH_VIA_PAUSE = "android.window.PROPERTY_CAMERA_COMPAT_ENABLE_REFRESH_VIA_PAUSE"; + field public static final String PROPERTY_COMPAT_ALLOW_DISPLAY_ORIENTATION_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_DISPLAY_ORIENTATION_OVERRIDE"; + field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_IGNORING_ORIENTATION_REQUEST_WHEN_LOOP_DETECTED = "android.window.PROPERTY_COMPAT_ALLOW_IGNORING_ORIENTATION_REQUEST_WHEN_LOOP_DETECTED"; + field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_MIN_ASPECT_RATIO_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_MIN_ASPECT_RATIO_OVERRIDE"; + field public static final String PROPERTY_COMPAT_ALLOW_ORIENTATION_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_ORIENTATION_OVERRIDE"; + field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_RESIZEABLE_ACTIVITY_OVERRIDES = "android.window.PROPERTY_COMPAT_ALLOW_RESIZEABLE_ACTIVITY_OVERRIDES"; + field public static final String PROPERTY_COMPAT_ALLOW_SANDBOXING_VIEW_BOUNDS_APIS = "android.window.PROPERTY_COMPAT_ALLOW_SANDBOXING_VIEW_BOUNDS_APIS"; + field @FlaggedApi("com.android.window.flags.cover_display_opt_in") public static final String PROPERTY_COMPAT_ALLOW_SMALL_COVER_SCREEN = "android.window.PROPERTY_COMPAT_ALLOW_SMALL_COVER_SCREEN"; + field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_FULLSCREEN_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_FULLSCREEN_OVERRIDE"; + field @FlaggedApi("com.android.window.flags.app_compat_properties_api") public static final String PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_OVERRIDE = "android.window.PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_OVERRIDE"; + field public static final String PROPERTY_COMPAT_ENABLE_FAKE_FOCUS = "android.window.PROPERTY_COMPAT_ENABLE_FAKE_FOCUS"; + field public static final String PROPERTY_COMPAT_IGNORE_REQUESTED_ORIENTATION = "android.window.PROPERTY_COMPAT_IGNORE_REQUESTED_ORIENTATION"; + field @FlaggedApi("com.android.window.flags.supports_multi_instance_system_ui") public static final String PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI = "android.window.PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI"; + field @FlaggedApi("com.android.window.flags.screen_recording_callbacks") public static final int SCREEN_RECORDING_STATE_NOT_VISIBLE = 0; // 0x0 + field @FlaggedApi("com.android.window.flags.screen_recording_callbacks") public static final int SCREEN_RECORDING_STATE_VISIBLE = 1; // 0x1 + } + + public static class WindowManager.BadTokenException extends java.lang.RuntimeException { + ctor public WindowManager.BadTokenException(); + ctor public WindowManager.BadTokenException(String); + } + + public static class WindowManager.InvalidDisplayException extends java.lang.RuntimeException { + ctor public WindowManager.InvalidDisplayException(); + ctor public WindowManager.InvalidDisplayException(String); + } + + public static class WindowManager.LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable { + ctor public WindowManager.LayoutParams(); + ctor public WindowManager.LayoutParams(int); + ctor public WindowManager.LayoutParams(int, int); + ctor public WindowManager.LayoutParams(int, int, int); + ctor public WindowManager.LayoutParams(int, int, int, int, int); + ctor public WindowManager.LayoutParams(int, int, int, int, int, int, int); + ctor public WindowManager.LayoutParams(android.os.Parcel); + method public boolean areWallpaperTouchEventsEnabled(); + method public boolean canPlayMoveAnimation(); + method public final int copyFrom(android.view.WindowManager.LayoutParams); + method public String debug(String); + method public int describeContents(); + method public int getBlurBehindRadius(); + method public int getColorMode(); + method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public float getDesiredHdrHeadroom(); + method public int getFitInsetsSides(); + method public int getFitInsetsTypes(); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public boolean getFrameRateBoostOnTouchEnabled(); + method public final CharSequence getTitle(); + method public boolean isFitInsetsIgnoringVisibility(); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public boolean isFrameRatePowerSavingsBalanced(); + method public boolean isHdrConversionEnabled(); + method public static boolean mayUseInputMethod(int); + method public void setBlurBehindRadius(@IntRange(from=0) int); + method public void setCanPlayMoveAnimation(boolean); + method public void setColorMode(int); + method @FlaggedApi("com.android.graphics.hwui.flags.limited_hdr") public void setDesiredHdrHeadroom(@FloatRange(from=0.0f, to=10000.0f) float); + method public void setFitInsetsIgnoringVisibility(boolean); + method public void setFitInsetsSides(int); + method public void setFitInsetsTypes(int); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setFrameRateBoostOnTouchEnabled(boolean); + method @FlaggedApi("android.view.flags.toolkit_set_frame_rate_read_only") public void setFrameRatePowerSavingsBalanced(boolean); + method public void setHdrConversionEnabled(boolean); + method public final void setTitle(CharSequence); + method public void setWallpaperTouchEventsEnabled(boolean); + method public void writeToParcel(android.os.Parcel, int); + field public static final int ALPHA_CHANGED = 128; // 0x80 + field public static final int ANIMATION_CHANGED = 16; // 0x10 + field public static final float BRIGHTNESS_OVERRIDE_FULL = 1.0f; + field public static final float BRIGHTNESS_OVERRIDE_NONE = -1.0f; + field public static final float BRIGHTNESS_OVERRIDE_OFF = 0.0f; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DIM_AMOUNT_CHANGED = 32; // 0x20 + field public static final int DISPLAY_FLAG_DISABLE_HDR_CONVERSION = 1; // 0x1 + field public static final int FIRST_APPLICATION_WINDOW = 1; // 0x1 + field public static final int FIRST_SUB_WINDOW = 1000; // 0x3e8 + field public static final int FIRST_SYSTEM_WINDOW = 2000; // 0x7d0 + field public static final int FLAGS_CHANGED = 4; // 0x4 + field public static final int FLAG_ALLOW_LOCK_WHILE_SCREEN_ON = 1; // 0x1 + field public static final int FLAG_ALT_FOCUSABLE_IM = 131072; // 0x20000 + field public static final int FLAG_BLUR_BEHIND = 4; // 0x4 + field public static final int FLAG_DIM_BEHIND = 2; // 0x2 + field @Deprecated public static final int FLAG_DISMISS_KEYGUARD = 4194304; // 0x400000 + field @Deprecated public static final int FLAG_DITHER = 4096; // 0x1000 + field public static final int FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS = -2147483648; // 0x80000000 + field @Deprecated public static final int FLAG_FORCE_NOT_FULLSCREEN = 2048; // 0x800 + field @Deprecated public static final int FLAG_FULLSCREEN = 1024; // 0x400 + field public static final int FLAG_HARDWARE_ACCELERATED = 16777216; // 0x1000000 + field public static final int FLAG_IGNORE_CHEEK_PRESSES = 32768; // 0x8000 + field public static final int FLAG_KEEP_SCREEN_ON = 128; // 0x80 + field @Deprecated public static final int FLAG_LAYOUT_ATTACHED_IN_DECOR = 1073741824; // 0x40000000 + field @Deprecated public static final int FLAG_LAYOUT_INSET_DECOR = 65536; // 0x10000 + field @Deprecated public static final int FLAG_LAYOUT_IN_OVERSCAN = 33554432; // 0x2000000 + field public static final int FLAG_LAYOUT_IN_SCREEN = 256; // 0x100 + field public static final int FLAG_LAYOUT_NO_LIMITS = 512; // 0x200 + field public static final int FLAG_LOCAL_FOCUS_MODE = 268435456; // 0x10000000 + field public static final int FLAG_NOT_FOCUSABLE = 8; // 0x8 + field public static final int FLAG_NOT_TOUCHABLE = 16; // 0x10 + field public static final int FLAG_NOT_TOUCH_MODAL = 32; // 0x20 + field public static final int FLAG_SCALED = 16384; // 0x4000 + field public static final int FLAG_SECURE = 8192; // 0x2000 + field public static final int FLAG_SHOW_WALLPAPER = 1048576; // 0x100000 + field @Deprecated public static final int FLAG_SHOW_WHEN_LOCKED = 524288; // 0x80000 + field public static final int FLAG_SPLIT_TOUCH = 8388608; // 0x800000 + field @Deprecated public static final int FLAG_TOUCHABLE_WHEN_WAKING = 64; // 0x40 + field @Deprecated public static final int FLAG_TRANSLUCENT_NAVIGATION = 134217728; // 0x8000000 + field @Deprecated public static final int FLAG_TRANSLUCENT_STATUS = 67108864; // 0x4000000 + field @Deprecated public static final int FLAG_TURN_SCREEN_ON = 2097152; // 0x200000 + field public static final int FLAG_WATCH_OUTSIDE_TOUCH = 262144; // 0x40000 + field public static final int FORMAT_CHANGED = 8; // 0x8 + field public static final int LAST_APPLICATION_WINDOW = 99; // 0x63 + field public static final int LAST_SUB_WINDOW = 1999; // 0x7cf + field public static final int LAST_SYSTEM_WINDOW = 2999; // 0xbb7 + field public static final int LAYOUT_CHANGED = 1; // 0x1 + field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS = 3; // 0x3 + field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT = 0; // 0x0 + field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER = 2; // 0x2 + field public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES = 1; // 0x1 + field public static final int MEMORY_TYPE_CHANGED = 256; // 0x100 + field @Deprecated public static final int MEMORY_TYPE_GPU = 2; // 0x2 + field @Deprecated public static final int MEMORY_TYPE_HARDWARE = 1; // 0x1 + field @Deprecated public static final int MEMORY_TYPE_NORMAL = 0; // 0x0 + field @Deprecated public static final int MEMORY_TYPE_PUSH_BUFFERS = 3; // 0x3 + field public static final int ROTATION_ANIMATION_CHANGED = 4096; // 0x1000 + field public static final int ROTATION_ANIMATION_CROSSFADE = 1; // 0x1 + field public static final int ROTATION_ANIMATION_JUMPCUT = 2; // 0x2 + field public static final int ROTATION_ANIMATION_ROTATE = 0; // 0x0 + field public static final int ROTATION_ANIMATION_SEAMLESS = 3; // 0x3 + field public static final int SCREEN_BRIGHTNESS_CHANGED = 2048; // 0x800 + field public static final int SCREEN_ORIENTATION_CHANGED = 1024; // 0x400 + field public static final int SOFT_INPUT_ADJUST_NOTHING = 48; // 0x30 + field public static final int SOFT_INPUT_ADJUST_PAN = 32; // 0x20 + field @Deprecated public static final int SOFT_INPUT_ADJUST_RESIZE = 16; // 0x10 + field public static final int SOFT_INPUT_ADJUST_UNSPECIFIED = 0; // 0x0 + field public static final int SOFT_INPUT_IS_FORWARD_NAVIGATION = 256; // 0x100 + field public static final int SOFT_INPUT_MASK_ADJUST = 240; // 0xf0 + field public static final int SOFT_INPUT_MASK_STATE = 15; // 0xf + field public static final int SOFT_INPUT_MODE_CHANGED = 512; // 0x200 + field public static final int SOFT_INPUT_STATE_ALWAYS_HIDDEN = 3; // 0x3 + field public static final int SOFT_INPUT_STATE_ALWAYS_VISIBLE = 5; // 0x5 + field public static final int SOFT_INPUT_STATE_HIDDEN = 2; // 0x2 + field public static final int SOFT_INPUT_STATE_UNCHANGED = 1; // 0x1 + field public static final int SOFT_INPUT_STATE_UNSPECIFIED = 0; // 0x0 + field public static final int SOFT_INPUT_STATE_VISIBLE = 4; // 0x4 + field public static final int TITLE_CHANGED = 64; // 0x40 + field public static final int TYPE_ACCESSIBILITY_OVERLAY = 2032; // 0x7f0 + field public static final int TYPE_APPLICATION = 2; // 0x2 + field public static final int TYPE_APPLICATION_ATTACHED_DIALOG = 1003; // 0x3eb + field public static final int TYPE_APPLICATION_MEDIA = 1001; // 0x3e9 + field public static final int TYPE_APPLICATION_OVERLAY = 2038; // 0x7f6 + field public static final int TYPE_APPLICATION_PANEL = 1000; // 0x3e8 + field public static final int TYPE_APPLICATION_STARTING = 3; // 0x3 + field public static final int TYPE_APPLICATION_SUB_PANEL = 1002; // 0x3ea + field public static final int TYPE_BASE_APPLICATION = 1; // 0x1 + field public static final int TYPE_CHANGED = 2; // 0x2 + field public static final int TYPE_DRAWN_APPLICATION = 4; // 0x4 + field public static final int TYPE_INPUT_METHOD = 2011; // 0x7db + field public static final int TYPE_INPUT_METHOD_DIALOG = 2012; // 0x7dc + field public static final int TYPE_KEYGUARD_DIALOG = 2009; // 0x7d9 + field @Deprecated public static final int TYPE_PHONE = 2002; // 0x7d2 + field @Deprecated public static final int TYPE_PRIORITY_PHONE = 2007; // 0x7d7 + field public static final int TYPE_PRIVATE_PRESENTATION = 2030; // 0x7ee + field public static final int TYPE_SEARCH_BAR = 2001; // 0x7d1 + field public static final int TYPE_STATUS_BAR = 2000; // 0x7d0 + field @Deprecated public static final int TYPE_SYSTEM_ALERT = 2003; // 0x7d3 + field public static final int TYPE_SYSTEM_DIALOG = 2008; // 0x7d8 + field @Deprecated public static final int TYPE_SYSTEM_ERROR = 2010; // 0x7da + field @Deprecated public static final int TYPE_SYSTEM_OVERLAY = 2006; // 0x7d6 + field @Deprecated public static final int TYPE_TOAST = 2005; // 0x7d5 + field public static final int TYPE_WALLPAPER = 2013; // 0x7dd + field public float alpha; + field public float buttonBrightness; + field public float dimAmount; + field public int flags; + field public int format; + field public int gravity; + field public float horizontalMargin; + field public float horizontalWeight; + field public int layoutInDisplayCutoutMode; + field @Deprecated public int memoryType; + field public String packageName; + field public boolean preferMinimalPostProcessing; + field public int preferredDisplayModeId; + field public float preferredRefreshRate; + field public int rotationAnimation; + field public float screenBrightness; + field public int screenOrientation; + field public int softInputMode; + field @Deprecated public int systemUiVisibility; + field public android.os.IBinder token; + field public int type; + field public float verticalMargin; + field public float verticalWeight; + field public int windowAnimations; + field public int x; + field public int y; + } + + public final class WindowMetrics { + ctor @Deprecated public WindowMetrics(@NonNull android.graphics.Rect, @NonNull android.view.WindowInsets); + ctor public WindowMetrics(@NonNull android.graphics.Rect, @NonNull android.view.WindowInsets, float); + method @NonNull public android.graphics.Rect getBounds(); + method public float getDensity(); + method @NonNull public android.view.WindowInsets getWindowInsets(); + } + +} + +package android.view.accessibility { + + public final class AccessibilityEvent extends android.view.accessibility.AccessibilityRecord implements android.os.Parcelable { + ctor public AccessibilityEvent(); + ctor public AccessibilityEvent(int); + ctor public AccessibilityEvent(@NonNull android.view.accessibility.AccessibilityEvent); + method public void appendRecord(android.view.accessibility.AccessibilityRecord); + method public int describeContents(); + method public static String eventTypeToString(int); + method public int getAction(); + method public int getContentChangeTypes(); + method public long getEventTime(); + method public int getEventType(); + method public int getMovementGranularity(); + method public CharSequence getPackageName(); + method public android.view.accessibility.AccessibilityRecord getRecord(int); + method public int getRecordCount(); + method public int getSpeechStateChangeTypes(); + method public int getWindowChanges(); + method public void initFromParcel(android.os.Parcel); + method public boolean isAccessibilityDataSensitive(); + method @Deprecated public static android.view.accessibility.AccessibilityEvent obtain(int); + method @Deprecated public static android.view.accessibility.AccessibilityEvent obtain(android.view.accessibility.AccessibilityEvent); + method @Deprecated public static android.view.accessibility.AccessibilityEvent obtain(); + method public void setAccessibilityDataSensitive(boolean); + method public void setAction(int); + method public void setContentChangeTypes(int); + method public void setEventTime(long); + method public void setEventType(int); + method public void setMovementGranularity(int); + method public void setPackageName(CharSequence); + method public void setSpeechStateChangeTypes(int); + method public void writeToParcel(android.os.Parcel, int); + field @FlaggedApi("android.view.accessibility.tri_state_checked") public static final int CONTENT_CHANGE_TYPE_CHECKED = 8192; // 0x2000 + field public static final int CONTENT_CHANGE_TYPE_CONTENT_DESCRIPTION = 4; // 0x4 + field public static final int CONTENT_CHANGE_TYPE_CONTENT_INVALID = 1024; // 0x400 + field public static final int CONTENT_CHANGE_TYPE_DRAG_CANCELLED = 512; // 0x200 + field public static final int CONTENT_CHANGE_TYPE_DRAG_DROPPED = 256; // 0x100 + field public static final int CONTENT_CHANGE_TYPE_DRAG_STARTED = 128; // 0x80 + field public static final int CONTENT_CHANGE_TYPE_ENABLED = 4096; // 0x1000 + field public static final int CONTENT_CHANGE_TYPE_ERROR = 2048; // 0x800 + field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int CONTENT_CHANGE_TYPE_EXPANDED = 16384; // 0x4000 + field public static final int CONTENT_CHANGE_TYPE_PANE_APPEARED = 16; // 0x10 + field public static final int CONTENT_CHANGE_TYPE_PANE_DISAPPEARED = 32; // 0x20 + field public static final int CONTENT_CHANGE_TYPE_PANE_TITLE = 8; // 0x8 + field public static final int CONTENT_CHANGE_TYPE_STATE_DESCRIPTION = 64; // 0x40 + field public static final int CONTENT_CHANGE_TYPE_SUBTREE = 1; // 0x1 + field @FlaggedApi("android.view.accessibility.supplemental_description") public static final int CONTENT_CHANGE_TYPE_SUPPLEMENTAL_DESCRIPTION = 32768; // 0x8000 + field public static final int CONTENT_CHANGE_TYPE_TEXT = 2; // 0x2 + field public static final int CONTENT_CHANGE_TYPE_UNDEFINED = 0; // 0x0 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int INVALID_POSITION = -1; // 0xffffffff + field @Deprecated public static final int MAX_TEXT_LENGTH = 500; // 0x1f4 + field public static final int SPEECH_STATE_LISTENING_END = 8; // 0x8 + field public static final int SPEECH_STATE_LISTENING_START = 4; // 0x4 + field public static final int SPEECH_STATE_SPEAKING_END = 2; // 0x2 + field public static final int SPEECH_STATE_SPEAKING_START = 1; // 0x1 + field public static final int TYPES_ALL_MASK = -1; // 0xffffffff + field @Deprecated @FlaggedApi("android.view.accessibility.deprecate_accessibility_announcement_apis") public static final int TYPE_ANNOUNCEMENT = 16384; // 0x4000 + field public static final int TYPE_ASSIST_READING_CONTEXT = 16777216; // 0x1000000 + field public static final int TYPE_GESTURE_DETECTION_END = 524288; // 0x80000 + field public static final int TYPE_GESTURE_DETECTION_START = 262144; // 0x40000 + field public static final int TYPE_NOTIFICATION_STATE_CHANGED = 64; // 0x40 + field public static final int TYPE_SPEECH_STATE_CHANGE = 33554432; // 0x2000000 + field public static final int TYPE_TOUCH_EXPLORATION_GESTURE_END = 1024; // 0x400 + field public static final int TYPE_TOUCH_EXPLORATION_GESTURE_START = 512; // 0x200 + field public static final int TYPE_TOUCH_INTERACTION_END = 2097152; // 0x200000 + field public static final int TYPE_TOUCH_INTERACTION_START = 1048576; // 0x100000 + field public static final int TYPE_VIEW_ACCESSIBILITY_FOCUSED = 32768; // 0x8000 + field public static final int TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED = 65536; // 0x10000 + field public static final int TYPE_VIEW_CLICKED = 1; // 0x1 + field public static final int TYPE_VIEW_CONTEXT_CLICKED = 8388608; // 0x800000 + field public static final int TYPE_VIEW_FOCUSED = 8; // 0x8 + field public static final int TYPE_VIEW_HOVER_ENTER = 128; // 0x80 + field public static final int TYPE_VIEW_HOVER_EXIT = 256; // 0x100 + field public static final int TYPE_VIEW_LONG_CLICKED = 2; // 0x2 + field public static final int TYPE_VIEW_SCROLLED = 4096; // 0x1000 + field public static final int TYPE_VIEW_SELECTED = 4; // 0x4 + field public static final int TYPE_VIEW_TARGETED_BY_SCROLL = 67108864; // 0x4000000 + field public static final int TYPE_VIEW_TEXT_CHANGED = 16; // 0x10 + field public static final int TYPE_VIEW_TEXT_SELECTION_CHANGED = 8192; // 0x2000 + field public static final int TYPE_VIEW_TEXT_TRAVERSED_AT_MOVEMENT_GRANULARITY = 131072; // 0x20000 + field public static final int TYPE_WINDOWS_CHANGED = 4194304; // 0x400000 + field public static final int TYPE_WINDOW_CONTENT_CHANGED = 2048; // 0x800 + field public static final int TYPE_WINDOW_STATE_CHANGED = 32; // 0x20 + field public static final int WINDOWS_CHANGE_ACCESSIBILITY_FOCUSED = 128; // 0x80 + field public static final int WINDOWS_CHANGE_ACTIVE = 32; // 0x20 + field public static final int WINDOWS_CHANGE_ADDED = 1; // 0x1 + field public static final int WINDOWS_CHANGE_BOUNDS = 8; // 0x8 + field public static final int WINDOWS_CHANGE_CHILDREN = 512; // 0x200 + field public static final int WINDOWS_CHANGE_FOCUSED = 64; // 0x40 + field public static final int WINDOWS_CHANGE_LAYER = 16; // 0x10 + field public static final int WINDOWS_CHANGE_PARENT = 256; // 0x100 + field public static final int WINDOWS_CHANGE_PIP = 1024; // 0x400 + field public static final int WINDOWS_CHANGE_REMOVED = 2; // 0x2 + field public static final int WINDOWS_CHANGE_TITLE = 4; // 0x4 + } + + public interface AccessibilityEventSource { + method public void sendAccessibilityEvent(int); + method public void sendAccessibilityEventUnchecked(android.view.accessibility.AccessibilityEvent); + } + + public final class AccessibilityManager { + method public void addAccessibilityRequestPreparer(android.view.accessibility.AccessibilityRequestPreparer); + method public void addAccessibilityServicesStateChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener); + method public void addAccessibilityServicesStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener); + method public boolean addAccessibilityStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener); + method public void addAccessibilityStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener, @Nullable android.os.Handler); + method public void addAudioDescriptionRequestedChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.accessibility.AccessibilityManager.AudioDescriptionRequestedChangeListener); + method @FlaggedApi("com.android.graphics.hwui.flags.high_contrast_text_small_text_rect") public void addHighContrastTextStateChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.accessibility.AccessibilityManager.HighContrastTextStateChangeListener); + method public boolean addTouchExplorationStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener); + method public void addTouchExplorationStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener, @Nullable android.os.Handler); + method @ColorInt public int getAccessibilityFocusColor(); + method public int getAccessibilityFocusStrokeWidth(); + method @Deprecated public java.util.List getAccessibilityServiceList(); + method public java.util.List getEnabledAccessibilityServiceList(int); + method public java.util.List getInstalledAccessibilityServiceList(); + method public int getRecommendedTimeoutMillis(int, int); + method public void interrupt(); + method public static boolean isAccessibilityButtonSupported(); + method public boolean isAudioDescriptionRequested(); + method public boolean isEnabled(); + method @FlaggedApi("com.android.graphics.hwui.flags.high_contrast_text_small_text_rect") public boolean isHighContrastTextEnabled(); + method public boolean isRequestFromAccessibilityTool(); + method public boolean isTouchExplorationEnabled(); + method public void removeAccessibilityRequestPreparer(android.view.accessibility.AccessibilityRequestPreparer); + method public boolean removeAccessibilityServicesStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityServicesStateChangeListener); + method public boolean removeAccessibilityStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AccessibilityStateChangeListener); + method public boolean removeAudioDescriptionRequestedChangeListener(@NonNull android.view.accessibility.AccessibilityManager.AudioDescriptionRequestedChangeListener); + method @FlaggedApi("com.android.graphics.hwui.flags.high_contrast_text_small_text_rect") public void removeHighContrastTextStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.HighContrastTextStateChangeListener); + method public boolean removeTouchExplorationStateChangeListener(@NonNull android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener); + method public void sendAccessibilityEvent(android.view.accessibility.AccessibilityEvent); + field public static final int FLAG_CONTENT_CONTROLS = 4; // 0x4 + field public static final int FLAG_CONTENT_ICONS = 1; // 0x1 + field public static final int FLAG_CONTENT_TEXT = 2; // 0x2 + } + + public static interface AccessibilityManager.AccessibilityServicesStateChangeListener { + method public void onAccessibilityServicesStateChanged(@NonNull android.view.accessibility.AccessibilityManager); + } + + public static interface AccessibilityManager.AccessibilityStateChangeListener { + method public void onAccessibilityStateChanged(boolean); + } + + public static interface AccessibilityManager.AudioDescriptionRequestedChangeListener { + method public void onAudioDescriptionRequestedChanged(boolean); + } + + @FlaggedApi("com.android.graphics.hwui.flags.high_contrast_text_small_text_rect") public static interface AccessibilityManager.HighContrastTextStateChangeListener { + method public void onHighContrastTextStateChanged(boolean); + } + + public static interface AccessibilityManager.TouchExplorationStateChangeListener { + method public void onTouchExplorationStateChanged(boolean); + } + + public class AccessibilityNodeInfo implements android.os.Parcelable { + ctor public AccessibilityNodeInfo(); + ctor public AccessibilityNodeInfo(@NonNull android.view.View); + ctor public AccessibilityNodeInfo(@NonNull android.view.View, int); + ctor public AccessibilityNodeInfo(@NonNull android.view.accessibility.AccessibilityNodeInfo); + method public void addAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction); + method @Deprecated public void addAction(int); + method public void addChild(android.view.View); + method public void addChild(android.view.View, int); + method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public void addLabeledBy(@NonNull android.view.View); + method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public void addLabeledBy(@NonNull android.view.View, int); + method public boolean canOpenPopup(); + method public int describeContents(); + method public java.util.List findAccessibilityNodeInfosByText(String); + method public java.util.List findAccessibilityNodeInfosByViewId(@NonNull String); + method public android.view.accessibility.AccessibilityNodeInfo findFocus(int); + method public android.view.accessibility.AccessibilityNodeInfo focusSearch(int); + method public java.util.List getActionList(); + method @Deprecated public int getActions(); + method public java.util.List getAvailableExtraData(); + method @Deprecated public void getBoundsInParent(android.graphics.Rect); + method public void getBoundsInScreen(android.graphics.Rect); + method public void getBoundsInWindow(@NonNull android.graphics.Rect); + method @FlaggedApi("android.view.accessibility.tri_state_checked") public int getChecked(); + method public android.view.accessibility.AccessibilityNodeInfo getChild(int); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo getChild(int, int); + method public int getChildCount(); + method public CharSequence getClassName(); + method public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo getCollectionInfo(); + method public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo getCollectionItemInfo(); + method @Nullable public CharSequence getContainerTitle(); + method public CharSequence getContentDescription(); + method public int getDrawingOrder(); + method public CharSequence getError(); + method @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public int getExpandedState(); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo.ExtraRenderingInfo getExtraRenderingInfo(); + method public android.os.Bundle getExtras(); + method public CharSequence getHintText(); + method public int getInputType(); + method @Deprecated @FlaggedApi("android.view.accessibility.deprecate_ani_label_for_apis") public android.view.accessibility.AccessibilityNodeInfo getLabelFor(); + method @Deprecated @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public android.view.accessibility.AccessibilityNodeInfo getLabeledBy(); + method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") @NonNull public java.util.List getLabeledByList(); + method public int getLiveRegion(); + method public int getMaxTextLength(); + method @NonNull public java.time.Duration getMinDurationBetweenContentChanges(); + method public int getMovementGranularities(); + method public CharSequence getPackageName(); + method @Nullable public CharSequence getPaneTitle(); + method public android.view.accessibility.AccessibilityNodeInfo getParent(); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo getParent(int); + method public android.view.accessibility.AccessibilityNodeInfo.RangeInfo getRangeInfo(); + method @Nullable public CharSequence getStateDescription(); + method @FlaggedApi("android.view.accessibility.supplemental_description") @Nullable public CharSequence getSupplementalDescription(); + method public CharSequence getText(); + method public int getTextSelectionEnd(); + method public int getTextSelectionStart(); + method @Nullable public CharSequence getTooltipText(); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo.TouchDelegateInfo getTouchDelegateInfo(); + method public android.view.accessibility.AccessibilityNodeInfo getTraversalAfter(); + method public android.view.accessibility.AccessibilityNodeInfo getTraversalBefore(); + method @Nullable public String getUniqueId(); + method public String getViewIdResourceName(); + method public android.view.accessibility.AccessibilityWindowInfo getWindow(); + method public int getWindowId(); + method public boolean hasRequestInitialAccessibilityFocus(); + method public boolean isAccessibilityDataSensitive(); + method public boolean isAccessibilityFocused(); + method public boolean isCheckable(); + method @Deprecated @FlaggedApi("android.view.accessibility.tri_state_checked") public boolean isChecked(); + method public boolean isClickable(); + method public boolean isContentInvalid(); + method public boolean isContextClickable(); + method public boolean isDismissable(); + method public boolean isEditable(); + method public boolean isEnabled(); + method @FlaggedApi("android.view.accessibility.a11y_is_required_api") public boolean isFieldRequired(); + method public boolean isFocusable(); + method public boolean isFocused(); + method @FlaggedApi("android.view.accessibility.granular_scrolling") public boolean isGranularScrollingSupported(); + method public boolean isHeading(); + method public boolean isImportantForAccessibility(); + method public boolean isLongClickable(); + method public boolean isMultiLine(); + method public boolean isPassword(); + method public boolean isScreenReaderFocusable(); + method public boolean isScrollable(); + method public boolean isSelected(); + method public boolean isShowingHintText(); + method public boolean isTextEntryKey(); + method public boolean isTextSelectable(); + method public boolean isVisibleToUser(); + method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View); + method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.View, int); + method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(); + method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo obtain(android.view.accessibility.AccessibilityNodeInfo); + method public boolean performAction(int); + method public boolean performAction(int, android.os.Bundle); + method @Deprecated public void recycle(); + method public boolean refresh(); + method public boolean refreshWithExtraData(String, android.os.Bundle); + method @Deprecated public void removeAction(int); + method public boolean removeAction(android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction); + method public boolean removeChild(android.view.View); + method public boolean removeChild(android.view.View, int); + method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public boolean removeLabeledBy(@NonNull android.view.View); + method @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public boolean removeLabeledBy(@NonNull android.view.View, int); + method public void setAccessibilityDataSensitive(boolean); + method public void setAccessibilityFocused(boolean); + method public void setAvailableExtraData(java.util.List); + method @Deprecated public void setBoundsInParent(android.graphics.Rect); + method public void setBoundsInScreen(android.graphics.Rect); + method public void setBoundsInWindow(@NonNull android.graphics.Rect); + method public void setCanOpenPopup(boolean); + method public void setCheckable(boolean); + method @Deprecated @FlaggedApi("android.view.accessibility.tri_state_checked") public void setChecked(boolean); + method @FlaggedApi("android.view.accessibility.tri_state_checked") public void setChecked(int); + method public void setClassName(CharSequence); + method public void setClickable(boolean); + method public void setCollectionInfo(android.view.accessibility.AccessibilityNodeInfo.CollectionInfo); + method public void setCollectionItemInfo(android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo); + method public void setContainerTitle(@Nullable CharSequence); + method public void setContentDescription(CharSequence); + method public void setContentInvalid(boolean); + method public void setContextClickable(boolean); + method public void setDismissable(boolean); + method public void setDrawingOrder(int); + method public void setEditable(boolean); + method public void setEnabled(boolean); + method public void setError(CharSequence); + method @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public void setExpandedState(int); + method @FlaggedApi("android.view.accessibility.a11y_is_required_api") public void setFieldRequired(boolean); + method public void setFocusable(boolean); + method public void setFocused(boolean); + method @FlaggedApi("android.view.accessibility.granular_scrolling") public void setGranularScrollingSupported(boolean); + method public void setHeading(boolean); + method public void setHintText(CharSequence); + method public void setImportantForAccessibility(boolean); + method public void setInputType(int); + method @Deprecated @FlaggedApi("android.view.accessibility.deprecate_ani_label_for_apis") public void setLabelFor(android.view.View); + method @Deprecated @FlaggedApi("android.view.accessibility.deprecate_ani_label_for_apis") public void setLabelFor(android.view.View, int); + method @Deprecated @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public void setLabeledBy(android.view.View); + method @Deprecated @FlaggedApi("android.view.accessibility.support_multiple_labeledby") public void setLabeledBy(android.view.View, int); + method public void setLiveRegion(int); + method public void setLongClickable(boolean); + method public void setMaxTextLength(int); + method public void setMinDurationBetweenContentChanges(@NonNull java.time.Duration); + method public void setMovementGranularities(int); + method public void setMultiLine(boolean); + method public void setPackageName(CharSequence); + method public void setPaneTitle(@Nullable CharSequence); + method public void setParent(android.view.View); + method public void setParent(android.view.View, int); + method public void setPassword(boolean); + method public void setQueryFromAppProcessEnabled(@NonNull android.view.View, boolean); + method public void setRangeInfo(android.view.accessibility.AccessibilityNodeInfo.RangeInfo); + method public void setRequestInitialAccessibilityFocus(boolean); + method public void setScreenReaderFocusable(boolean); + method public void setScrollable(boolean); + method public void setSelected(boolean); + method public void setShowingHintText(boolean); + method public void setSource(android.view.View); + method public void setSource(android.view.View, int); + method public void setStateDescription(@Nullable CharSequence); + method @FlaggedApi("android.view.accessibility.supplemental_description") public void setSupplementalDescription(@Nullable CharSequence); + method public void setText(CharSequence); + method public void setTextEntryKey(boolean); + method public void setTextSelectable(boolean); + method public void setTextSelection(int, int); + method public void setTooltipText(@Nullable CharSequence); + method public void setTouchDelegateInfo(@NonNull android.view.accessibility.AccessibilityNodeInfo.TouchDelegateInfo); + method public void setTraversalAfter(android.view.View); + method public void setTraversalAfter(android.view.View, int); + method public void setTraversalBefore(android.view.View); + method public void setTraversalBefore(android.view.View, int); + method public void setUniqueId(@Nullable String); + method public void setViewIdResourceName(String); + method public void setVisibleToUser(boolean); + method public void writeToParcel(android.os.Parcel, int); + field public static final int ACTION_ACCESSIBILITY_FOCUS = 64; // 0x40 + field public static final String ACTION_ARGUMENT_COLUMN_INT = "android.view.accessibility.action.ARGUMENT_COLUMN_INT"; + field public static final String ACTION_ARGUMENT_DIRECTION_INT = "android.view.accessibility.action.ARGUMENT_DIRECTION_INT"; + field public static final String ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN = "ACTION_ARGUMENT_EXTEND_SELECTION_BOOLEAN"; + field public static final String ACTION_ARGUMENT_HTML_ELEMENT_STRING = "ACTION_ARGUMENT_HTML_ELEMENT_STRING"; + field public static final String ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT = "ACTION_ARGUMENT_MOVEMENT_GRANULARITY_INT"; + field public static final String ACTION_ARGUMENT_MOVE_WINDOW_X = "ACTION_ARGUMENT_MOVE_WINDOW_X"; + field public static final String ACTION_ARGUMENT_MOVE_WINDOW_Y = "ACTION_ARGUMENT_MOVE_WINDOW_Y"; + field public static final String ACTION_ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT = "android.view.accessibility.action.ARGUMENT_PRESS_AND_HOLD_DURATION_MILLIS_INT"; + field public static final String ACTION_ARGUMENT_PROGRESS_VALUE = "android.view.accessibility.action.ARGUMENT_PROGRESS_VALUE"; + field public static final String ACTION_ARGUMENT_ROW_INT = "android.view.accessibility.action.ARGUMENT_ROW_INT"; + field @FlaggedApi("android.view.accessibility.granular_scrolling") public static final String ACTION_ARGUMENT_SCROLL_AMOUNT_FLOAT = "android.view.accessibility.action.ARGUMENT_SCROLL_AMOUNT_FLOAT"; + field public static final String ACTION_ARGUMENT_SELECTION_END_INT = "ACTION_ARGUMENT_SELECTION_END_INT"; + field public static final String ACTION_ARGUMENT_SELECTION_START_INT = "ACTION_ARGUMENT_SELECTION_START_INT"; + field public static final String ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE = "ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE"; + field public static final int ACTION_CLEAR_ACCESSIBILITY_FOCUS = 128; // 0x80 + field public static final int ACTION_CLEAR_FOCUS = 2; // 0x2 + field public static final int ACTION_CLEAR_SELECTION = 8; // 0x8 + field public static final int ACTION_CLICK = 16; // 0x10 + field public static final int ACTION_COLLAPSE = 524288; // 0x80000 + field public static final int ACTION_COPY = 16384; // 0x4000 + field public static final int ACTION_CUT = 65536; // 0x10000 + field public static final int ACTION_DISMISS = 1048576; // 0x100000 + field public static final int ACTION_EXPAND = 262144; // 0x40000 + field public static final int ACTION_FOCUS = 1; // 0x1 + field public static final int ACTION_LONG_CLICK = 32; // 0x20 + field public static final int ACTION_NEXT_AT_MOVEMENT_GRANULARITY = 256; // 0x100 + field public static final int ACTION_NEXT_HTML_ELEMENT = 1024; // 0x400 + field public static final int ACTION_PASTE = 32768; // 0x8000 + field public static final int ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY = 512; // 0x200 + field public static final int ACTION_PREVIOUS_HTML_ELEMENT = 2048; // 0x800 + field public static final int ACTION_SCROLL_BACKWARD = 8192; // 0x2000 + field public static final int ACTION_SCROLL_FORWARD = 4096; // 0x1000 + field public static final int ACTION_SELECT = 4; // 0x4 + field public static final int ACTION_SET_SELECTION = 131072; // 0x20000 + field public static final int ACTION_SET_TEXT = 2097152; // 0x200000 + field @FlaggedApi("android.view.accessibility.tri_state_checked") public static final int CHECKED_STATE_FALSE = 0; // 0x0 + field @FlaggedApi("android.view.accessibility.tri_state_checked") public static final int CHECKED_STATE_PARTIAL = 2; // 0x2 + field @FlaggedApi("android.view.accessibility.tri_state_checked") public static final int CHECKED_STATE_TRUE = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int EXPANDED_STATE_COLLAPSED = 1; // 0x1 + field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int EXPANDED_STATE_FULL = 3; // 0x3 + field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int EXPANDED_STATE_PARTIAL = 2; // 0x2 + field @FlaggedApi("android.view.accessibility.a11y_expansion_state_api") public static final int EXPANDED_STATE_UNDEFINED = 0; // 0x0 + field public static final String EXTRA_DATA_RENDERING_INFO_KEY = "android.view.accessibility.extra.DATA_RENDERING_INFO_KEY"; + field public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_LENGTH"; + field public static final int EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_MAX_LENGTH = 20000; // 0x4e20 + field public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_ARG_START_INDEX"; + field @FlaggedApi("android.view.accessibility.a11y_character_in_window_api") public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_IN_WINDOW_KEY = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_IN_WINDOW_KEY"; + field public static final String EXTRA_DATA_TEXT_CHARACTER_LOCATION_KEY = "android.view.accessibility.extra.DATA_TEXT_CHARACTER_LOCATION_KEY"; + field public static final int FLAG_PREFETCH_ANCESTORS = 1; // 0x1 + field public static final int FLAG_PREFETCH_DESCENDANTS_BREADTH_FIRST = 16; // 0x10 + field public static final int FLAG_PREFETCH_DESCENDANTS_DEPTH_FIRST = 8; // 0x8 + field public static final int FLAG_PREFETCH_DESCENDANTS_HYBRID = 4; // 0x4 + field public static final int FLAG_PREFETCH_SIBLINGS = 2; // 0x2 + field public static final int FLAG_PREFETCH_UNINTERRUPTIBLE = 32; // 0x20 + field public static final int FOCUS_ACCESSIBILITY = 2; // 0x2 + field public static final int FOCUS_INPUT = 1; // 0x1 + field public static final int MAX_NUMBER_OF_PREFETCHED_NODES = 50; // 0x32 + field public static final int MOVEMENT_GRANULARITY_CHARACTER = 1; // 0x1 + field public static final int MOVEMENT_GRANULARITY_LINE = 4; // 0x4 + field public static final int MOVEMENT_GRANULARITY_PAGE = 16; // 0x10 + field public static final int MOVEMENT_GRANULARITY_PARAGRAPH = 8; // 0x8 + field public static final int MOVEMENT_GRANULARITY_WORD = 2; // 0x2 + } + + public static final class AccessibilityNodeInfo.AccessibilityAction implements android.os.Parcelable { + ctor public AccessibilityNodeInfo.AccessibilityAction(int, @Nullable CharSequence); + method public int describeContents(); + method public int getId(); + method public CharSequence getLabel(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_ACCESSIBILITY_FOCUS; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_ACCESSIBILITY_FOCUS; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_FOCUS; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLEAR_SELECTION; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CLICK; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_COLLAPSE; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CONTEXT_CLICK; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_COPY; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_CUT; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_DISMISS; + field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_DRAG_CANCEL; + field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_DRAG_DROP; + field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_DRAG_START; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_EXPAND; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_FOCUS; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_HIDE_TOOLTIP; + field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_IME_ENTER; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_LONG_CLICK; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_MOVE_WINDOW; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_NEXT_AT_MOVEMENT_GRANULARITY; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_NEXT_HTML_ELEMENT; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_DOWN; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_LEFT; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_RIGHT; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PAGE_UP; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PASTE; + field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PRESS_AND_HOLD; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_PREVIOUS_HTML_ELEMENT; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_BACKWARD; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_DOWN; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_FORWARD; + field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_IN_DIRECTION; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_LEFT; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_RIGHT; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_TO_POSITION; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SCROLL_UP; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SELECT; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SET_PROGRESS; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SET_SELECTION; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SET_TEXT; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_ON_SCREEN; + field @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_TEXT_SUGGESTIONS; + field public static final android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction ACTION_SHOW_TOOLTIP; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class AccessibilityNodeInfo.CollectionInfo { + ctor public AccessibilityNodeInfo.CollectionInfo(int, int, boolean); + ctor public AccessibilityNodeInfo.CollectionInfo(int, int, boolean, int); + method public int getColumnCount(); + method @FlaggedApi("android.view.accessibility.collection_info_item_counts") public int getImportantForAccessibilityItemCount(); + method @FlaggedApi("android.view.accessibility.collection_info_item_counts") public int getItemCount(); + method public int getRowCount(); + method public int getSelectionMode(); + method public boolean isHierarchical(); + method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.CollectionInfo obtain(int, int, boolean); + method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.CollectionInfo obtain(int, int, boolean, int); + field public static final int SELECTION_MODE_MULTIPLE = 2; // 0x2 + field public static final int SELECTION_MODE_NONE = 0; // 0x0 + field public static final int SELECTION_MODE_SINGLE = 1; // 0x1 + field @FlaggedApi("android.view.accessibility.collection_info_item_counts") public static final int UNDEFINED = -1; // 0xffffffff + } + + @FlaggedApi("android.view.accessibility.collection_info_item_counts") public static final class AccessibilityNodeInfo.CollectionInfo.Builder { + ctor @FlaggedApi("android.view.accessibility.collection_info_item_counts") public AccessibilityNodeInfo.CollectionInfo.Builder(); + method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo build(); + method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setColumnCount(int); + method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setHierarchical(boolean); + method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setImportantForAccessibilityItemCount(int); + method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setItemCount(int); + method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setRowCount(int); + method @FlaggedApi("android.view.accessibility.collection_info_item_counts") @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionInfo.Builder setSelectionMode(int); + } + + public static final class AccessibilityNodeInfo.CollectionItemInfo { + ctor public AccessibilityNodeInfo.CollectionItemInfo(int, int, int, int, boolean); + ctor public AccessibilityNodeInfo.CollectionItemInfo(int, int, int, int, boolean, boolean); + method public int getColumnIndex(); + method public int getColumnSpan(); + method @Nullable public String getColumnTitle(); + method public int getRowIndex(); + method public int getRowSpan(); + method @Nullable public String getRowTitle(); + method @Deprecated public boolean isHeading(); + method public boolean isSelected(); + method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo obtain(int, int, int, int, boolean); + method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo obtain(int, int, int, int, boolean, boolean); + } + + public static final class AccessibilityNodeInfo.CollectionItemInfo.Builder { + ctor public AccessibilityNodeInfo.CollectionItemInfo.Builder(); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo build(); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setColumnIndex(int); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setColumnSpan(int); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setColumnTitle(@Nullable String); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setHeading(boolean); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setRowIndex(int); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setRowSpan(int); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setRowTitle(@Nullable String); + method @NonNull public android.view.accessibility.AccessibilityNodeInfo.CollectionItemInfo.Builder setSelected(boolean); + } + + public static final class AccessibilityNodeInfo.ExtraRenderingInfo { + method @Nullable public android.util.Size getLayoutSize(); + method public float getTextSizeInPx(); + method public int getTextSizeUnit(); + } + + public static final class AccessibilityNodeInfo.RangeInfo { + ctor public AccessibilityNodeInfo.RangeInfo(int, float, float, float); + method public float getCurrent(); + method public float getMax(); + method public float getMin(); + method public int getType(); + method @Deprecated public static android.view.accessibility.AccessibilityNodeInfo.RangeInfo obtain(int, float, float, float); + field @FlaggedApi("android.view.accessibility.indeterminate_range_info") @NonNull public static final android.view.accessibility.AccessibilityNodeInfo.RangeInfo INDETERMINATE; + field public static final int RANGE_TYPE_FLOAT = 1; // 0x1 + field @FlaggedApi("android.view.accessibility.indeterminate_range_info") public static final int RANGE_TYPE_INDETERMINATE = 3; // 0x3 + field public static final int RANGE_TYPE_INT = 0; // 0x0 + field public static final int RANGE_TYPE_PERCENT = 2; // 0x2 + } + + public static final class AccessibilityNodeInfo.TouchDelegateInfo implements android.os.Parcelable { + ctor public AccessibilityNodeInfo.TouchDelegateInfo(@NonNull java.util.Map); + method public int describeContents(); + method @NonNull public android.graphics.Region getRegionAt(int); + method public int getRegionCount(); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo getTargetForRegion(@NonNull android.graphics.Region); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public abstract class AccessibilityNodeProvider { + ctor public AccessibilityNodeProvider(); + method public void addExtraDataToAccessibilityNodeInfo(int, android.view.accessibility.AccessibilityNodeInfo, String, android.os.Bundle); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo createAccessibilityNodeInfo(int); + method @Nullable public java.util.List findAccessibilityNodeInfosByText(String, int); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo findFocus(int); + method public boolean performAction(int, int, @Nullable android.os.Bundle); + field public static final int HOST_VIEW_ID = -1; // 0xffffffff + } + + public class AccessibilityRecord { + ctor public AccessibilityRecord(); + ctor public AccessibilityRecord(@NonNull android.view.accessibility.AccessibilityRecord); + method public int getAddedCount(); + method @Nullable public CharSequence getBeforeText(); + method @Nullable public CharSequence getClassName(); + method @Nullable public CharSequence getContentDescription(); + method public int getCurrentItemIndex(); + method public int getDisplayId(); + method public int getFromIndex(); + method public int getItemCount(); + method public int getMaxScrollX(); + method public int getMaxScrollY(); + method @Nullable public android.os.Parcelable getParcelableData(); + method public int getRemovedCount(); + method public int getScrollDeltaX(); + method public int getScrollDeltaY(); + method public int getScrollX(); + method public int getScrollY(); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo getSource(); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo getSource(int); + method @NonNull public java.util.List getText(); + method public int getToIndex(); + method public int getWindowId(); + method public boolean isChecked(); + method public boolean isEnabled(); + method public boolean isFullScreen(); + method public boolean isPassword(); + method public boolean isScrollable(); + method @Deprecated @NonNull public static android.view.accessibility.AccessibilityRecord obtain(@NonNull android.view.accessibility.AccessibilityRecord); + method @Deprecated @NonNull public static android.view.accessibility.AccessibilityRecord obtain(); + method @Deprecated public void recycle(); + method public void setAddedCount(int); + method public void setBeforeText(@Nullable CharSequence); + method public void setChecked(boolean); + method public void setClassName(@Nullable CharSequence); + method public void setContentDescription(@Nullable CharSequence); + method public void setCurrentItemIndex(int); + method public void setEnabled(boolean); + method public void setFromIndex(int); + method public void setFullScreen(boolean); + method public void setItemCount(int); + method public void setMaxScrollX(int); + method public void setMaxScrollY(int); + method public void setParcelableData(@Nullable android.os.Parcelable); + method public void setPassword(boolean); + method public void setRemovedCount(int); + method public void setScrollDeltaX(int); + method public void setScrollDeltaY(int); + method public void setScrollX(int); + method public void setScrollY(int); + method public void setScrollable(boolean); + method public void setSource(@Nullable android.view.View); + method public void setSource(@Nullable android.view.View, int); + method public void setToIndex(int); + } + + public abstract class AccessibilityRequestPreparer { + ctor public AccessibilityRequestPreparer(android.view.View, int); + method @Nullable public android.view.View getView(); + method public abstract void onPrepareExtraData(int, String, android.os.Bundle, android.os.Message); + field public static final int REQUEST_TYPE_EXTRA_DATA = 1; // 0x1 + } + + public final class AccessibilityWindowInfo implements android.os.Parcelable { + ctor public AccessibilityWindowInfo(); + ctor public AccessibilityWindowInfo(@NonNull android.view.accessibility.AccessibilityWindowInfo); + method public int describeContents(); + method public android.view.accessibility.AccessibilityNodeInfo getAnchor(); + method public void getBoundsInScreen(android.graphics.Rect); + method public android.view.accessibility.AccessibilityWindowInfo getChild(int); + method public int getChildCount(); + method public int getDisplayId(); + method public int getId(); + method public int getLayer(); + method @NonNull public android.os.LocaleList getLocales(); + method public android.view.accessibility.AccessibilityWindowInfo getParent(); + method public void getRegionInScreen(@NonNull android.graphics.Region); + method public android.view.accessibility.AccessibilityNodeInfo getRoot(); + method @Nullable public android.view.accessibility.AccessibilityNodeInfo getRoot(int); + method @Nullable public CharSequence getTitle(); + method public long getTransitionTimeMillis(); + method public int getType(); + method public boolean isAccessibilityFocused(); + method public boolean isActive(); + method public boolean isFocused(); + method public boolean isInPictureInPictureMode(); + method public static android.view.accessibility.AccessibilityWindowInfo obtain(); + method public static android.view.accessibility.AccessibilityWindowInfo obtain(android.view.accessibility.AccessibilityWindowInfo); + method public void recycle(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_ACCESSIBILITY_OVERLAY = 4; // 0x4 + field public static final int TYPE_APPLICATION = 1; // 0x1 + field public static final int TYPE_INPUT_METHOD = 2; // 0x2 + field public static final int TYPE_MAGNIFICATION_OVERLAY = 6; // 0x6 + field public static final int TYPE_SPLIT_SCREEN_DIVIDER = 5; // 0x5 + field public static final int TYPE_SYSTEM = 3; // 0x3 + field @FlaggedApi("android.view.accessibility.enable_type_window_control") public static final int TYPE_WINDOW_CONTROL = 7; // 0x7 + } + + public class CaptioningManager { + method public void addCaptioningChangeListener(@NonNull android.view.accessibility.CaptioningManager.CaptioningChangeListener); + method public final float getFontScale(); + method @Nullable public final java.util.Locale getLocale(); + method @NonNull public android.view.accessibility.CaptioningManager.CaptionStyle getUserStyle(); + method public boolean isCallCaptioningEnabled(); + method public final boolean isEnabled(); + method public final boolean isSystemAudioCaptioningEnabled(); + method public final boolean isSystemAudioCaptioningUiEnabled(); + method public void removeCaptioningChangeListener(@NonNull android.view.accessibility.CaptioningManager.CaptioningChangeListener); + } + + public static final class CaptioningManager.CaptionStyle { + method @Nullable public android.graphics.Typeface getTypeface(); + method public boolean hasBackgroundColor(); + method public boolean hasEdgeColor(); + method public boolean hasEdgeType(); + method public boolean hasForegroundColor(); + method public boolean hasWindowColor(); + field public static final int EDGE_TYPE_DEPRESSED = 4; // 0x4 + field public static final int EDGE_TYPE_DROP_SHADOW = 2; // 0x2 + field public static final int EDGE_TYPE_NONE = 0; // 0x0 + field public static final int EDGE_TYPE_OUTLINE = 1; // 0x1 + field public static final int EDGE_TYPE_RAISED = 3; // 0x3 + field public static final int EDGE_TYPE_UNSPECIFIED = -1; // 0xffffffff + field public final int backgroundColor; + field public final int edgeColor; + field public final int edgeType; + field public final int foregroundColor; + field public final int windowColor; + } + + public abstract static class CaptioningManager.CaptioningChangeListener { + ctor public CaptioningManager.CaptioningChangeListener(); + method public void onEnabledChanged(boolean); + method public void onFontScaleChanged(float); + method public void onLocaleChanged(@Nullable java.util.Locale); + method public void onSystemAudioCaptioningChanged(boolean); + method public void onSystemAudioCaptioningUiChanged(boolean); + method public void onUserStyleChanged(@NonNull android.view.accessibility.CaptioningManager.CaptionStyle); + } + +} + +package android.view.animation { + + public class AccelerateDecelerateInterpolator extends android.view.animation.BaseInterpolator { + ctor public AccelerateDecelerateInterpolator(); + ctor public AccelerateDecelerateInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public class AccelerateInterpolator extends android.view.animation.BaseInterpolator { + ctor public AccelerateInterpolator(); + ctor public AccelerateInterpolator(float); + ctor public AccelerateInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public class AlphaAnimation extends android.view.animation.Animation { + ctor public AlphaAnimation(android.content.Context, android.util.AttributeSet); + ctor public AlphaAnimation(float, float); + } + + public abstract class Animation implements java.lang.Cloneable { + ctor public Animation(); + ctor public Animation(android.content.Context, android.util.AttributeSet); + method protected void applyTransformation(float, android.view.animation.Transformation); + method public void cancel(); + method protected android.view.animation.Animation clone() throws java.lang.CloneNotSupportedException; + method public long computeDurationHint(); + method protected void ensureInterpolator(); + method @ColorInt public int getBackdropColor(); + method @Deprecated @ColorInt public int getBackgroundColor(); + method @Deprecated public boolean getDetachWallpaper(); + method public long getDuration(); + method public boolean getFillAfter(); + method public boolean getFillBefore(); + method public android.view.animation.Interpolator getInterpolator(); + method public int getRepeatCount(); + method public int getRepeatMode(); + method protected float getScaleFactor(); + method public boolean getShowBackdrop(); + method public long getStartOffset(); + method public long getStartTime(); + method public boolean getTransformation(long, android.view.animation.Transformation); + method public boolean getTransformation(long, android.view.animation.Transformation, float); + method public int getZAdjustment(); + method public boolean hasEnded(); + method public boolean hasStarted(); + method public void initialize(int, int, int, int); + method public boolean isFillEnabled(); + method public boolean isInitialized(); + method public void reset(); + method protected float resolveSize(int, float, int, int); + method public void restrictDuration(long); + method public void scaleCurrentDuration(float); + method public void setAnimationListener(android.view.animation.Animation.AnimationListener); + method public void setBackdropColor(@ColorInt int); + method @Deprecated public void setBackgroundColor(@ColorInt int); + method @Deprecated public void setDetachWallpaper(boolean); + method public void setDuration(long); + method public void setFillAfter(boolean); + method public void setFillBefore(boolean); + method public void setFillEnabled(boolean); + method public void setInterpolator(android.content.Context, @AnimRes @InterpolatorRes int); + method public void setInterpolator(android.view.animation.Interpolator); + method public void setRepeatCount(int); + method public void setRepeatMode(int); + method public void setShowBackdrop(boolean); + method public void setStartOffset(long); + method public void setStartTime(long); + method public void setZAdjustment(int); + method public void start(); + method public void startNow(); + method public boolean willChangeBounds(); + method public boolean willChangeTransformationMatrix(); + field public static final int ABSOLUTE = 0; // 0x0 + field public static final int INFINITE = -1; // 0xffffffff + field public static final int RELATIVE_TO_PARENT = 2; // 0x2 + field public static final int RELATIVE_TO_SELF = 1; // 0x1 + field public static final int RESTART = 1; // 0x1 + field public static final int REVERSE = 2; // 0x2 + field public static final int START_ON_FIRST_FRAME = -1; // 0xffffffff + field public static final int ZORDER_BOTTOM = -1; // 0xffffffff + field public static final int ZORDER_NORMAL = 0; // 0x0 + field public static final int ZORDER_TOP = 1; // 0x1 + } + + public static interface Animation.AnimationListener { + method public void onAnimationEnd(android.view.animation.Animation); + method public void onAnimationRepeat(android.view.animation.Animation); + method public void onAnimationStart(android.view.animation.Animation); + } + + protected static class Animation.Description { + ctor protected Animation.Description(); + field public int type; + field public float value; + } + + public class AnimationSet extends android.view.animation.Animation { + ctor public AnimationSet(android.content.Context, android.util.AttributeSet); + ctor public AnimationSet(boolean); + method public void addAnimation(android.view.animation.Animation); + method protected android.view.animation.AnimationSet clone() throws java.lang.CloneNotSupportedException; + method public java.util.List getAnimations(); + } + + public class AnimationUtils { + ctor public AnimationUtils(); + method public static long currentAnimationTimeMillis(); + method @FlaggedApi("android.view.flags.expected_presentation_time_read_only") public static long getExpectedPresentationTimeMillis(); + method @FlaggedApi("android.view.flags.expected_presentation_time_read_only") public static long getExpectedPresentationTimeNanos(); + method public static android.view.animation.Animation loadAnimation(android.content.Context, @AnimRes int) throws android.content.res.Resources.NotFoundException; + method public static android.view.animation.Interpolator loadInterpolator(android.content.Context, @AnimRes @InterpolatorRes int) throws android.content.res.Resources.NotFoundException; + method public static android.view.animation.LayoutAnimationController loadLayoutAnimation(android.content.Context, @AnimRes int) throws android.content.res.Resources.NotFoundException; + method public static android.view.animation.Animation makeInAnimation(android.content.Context, boolean); + method public static android.view.animation.Animation makeInChildBottomAnimation(android.content.Context); + method public static android.view.animation.Animation makeOutAnimation(android.content.Context, boolean); + } + + public class AnticipateInterpolator extends android.view.animation.BaseInterpolator { + ctor public AnticipateInterpolator(); + ctor public AnticipateInterpolator(float); + ctor public AnticipateInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public class AnticipateOvershootInterpolator extends android.view.animation.BaseInterpolator { + ctor public AnticipateOvershootInterpolator(); + ctor public AnticipateOvershootInterpolator(float); + ctor public AnticipateOvershootInterpolator(float, float); + ctor public AnticipateOvershootInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public abstract class BaseInterpolator implements android.view.animation.Interpolator { + ctor public BaseInterpolator(); + } + + public class BounceInterpolator extends android.view.animation.BaseInterpolator { + ctor public BounceInterpolator(); + ctor public BounceInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public class CycleInterpolator extends android.view.animation.BaseInterpolator { + ctor public CycleInterpolator(float); + ctor public CycleInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public class DecelerateInterpolator extends android.view.animation.BaseInterpolator { + ctor public DecelerateInterpolator(); + ctor public DecelerateInterpolator(float); + ctor public DecelerateInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public class GridLayoutAnimationController extends android.view.animation.LayoutAnimationController { + ctor public GridLayoutAnimationController(android.content.Context, android.util.AttributeSet); + ctor public GridLayoutAnimationController(android.view.animation.Animation); + ctor public GridLayoutAnimationController(android.view.animation.Animation, float, float); + method public float getColumnDelay(); + method public int getDirection(); + method public int getDirectionPriority(); + method public float getRowDelay(); + method public void setColumnDelay(float); + method public void setDirection(int); + method public void setDirectionPriority(int); + method public void setRowDelay(float); + field public static final int DIRECTION_BOTTOM_TO_TOP = 2; // 0x2 + field public static final int DIRECTION_HORIZONTAL_MASK = 1; // 0x1 + field public static final int DIRECTION_LEFT_TO_RIGHT = 0; // 0x0 + field public static final int DIRECTION_RIGHT_TO_LEFT = 1; // 0x1 + field public static final int DIRECTION_TOP_TO_BOTTOM = 0; // 0x0 + field public static final int DIRECTION_VERTICAL_MASK = 2; // 0x2 + field public static final int PRIORITY_COLUMN = 1; // 0x1 + field public static final int PRIORITY_NONE = 0; // 0x0 + field public static final int PRIORITY_ROW = 2; // 0x2 + } + + public static class GridLayoutAnimationController.AnimationParameters extends android.view.animation.LayoutAnimationController.AnimationParameters { + ctor public GridLayoutAnimationController.AnimationParameters(); + field public int column; + field public int columnsCount; + field public int row; + field public int rowsCount; + } + + public interface Interpolator extends android.animation.TimeInterpolator { + } + + public class LayoutAnimationController { + ctor public LayoutAnimationController(android.content.Context, android.util.AttributeSet); + ctor public LayoutAnimationController(android.view.animation.Animation); + ctor public LayoutAnimationController(android.view.animation.Animation, float); + method public android.view.animation.Animation getAnimation(); + method public final android.view.animation.Animation getAnimationForView(android.view.View); + method public float getDelay(); + method protected long getDelayForView(android.view.View); + method public android.view.animation.Interpolator getInterpolator(); + method public int getOrder(); + method protected int getTransformedIndex(android.view.animation.LayoutAnimationController.AnimationParameters); + method public boolean isDone(); + method public void setAnimation(android.content.Context, @AnimRes int); + method public void setAnimation(android.view.animation.Animation); + method public void setDelay(float); + method public void setInterpolator(android.content.Context, @InterpolatorRes int); + method public void setInterpolator(android.view.animation.Interpolator); + method public void setOrder(int); + method public void start(); + method public boolean willOverlap(); + field public static final int ORDER_NORMAL = 0; // 0x0 + field public static final int ORDER_RANDOM = 2; // 0x2 + field public static final int ORDER_REVERSE = 1; // 0x1 + field protected android.view.animation.Animation mAnimation; + field protected android.view.animation.Interpolator mInterpolator; + field protected java.util.Random mRandomizer; + } + + public static class LayoutAnimationController.AnimationParameters { + ctor public LayoutAnimationController.AnimationParameters(); + field public int count; + field public int index; + } + + public class LinearInterpolator extends android.view.animation.BaseInterpolator { + ctor public LinearInterpolator(); + ctor public LinearInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public class OvershootInterpolator extends android.view.animation.BaseInterpolator { + ctor public OvershootInterpolator(); + ctor public OvershootInterpolator(float); + ctor public OvershootInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public class PathInterpolator extends android.view.animation.BaseInterpolator { + ctor public PathInterpolator(@NonNull android.graphics.Path); + ctor public PathInterpolator(float, float); + ctor public PathInterpolator(float, float, float, float); + ctor public PathInterpolator(android.content.Context, android.util.AttributeSet); + method public float getInterpolation(float); + } + + public class RotateAnimation extends android.view.animation.Animation { + ctor public RotateAnimation(android.content.Context, android.util.AttributeSet); + ctor public RotateAnimation(float, float); + ctor public RotateAnimation(float, float, float, float); + ctor public RotateAnimation(float, float, int, float, int, float); + } + + public class ScaleAnimation extends android.view.animation.Animation { + ctor public ScaleAnimation(android.content.Context, android.util.AttributeSet); + ctor public ScaleAnimation(float, float, float, float); + ctor public ScaleAnimation(float, float, float, float, float, float); + ctor public ScaleAnimation(float, float, float, float, int, float, int, float); + } + + public class Transformation { + ctor public Transformation(); + method public void clear(); + method public void compose(android.view.animation.Transformation); + method public float getAlpha(); + method public android.graphics.Matrix getMatrix(); + method public int getTransformationType(); + method public void set(android.view.animation.Transformation); + method public void setAlpha(@FloatRange(from=0.0, to=1.0) float); + method public void setTransformationType(int); + method public String toShortString(); + field public static final int TYPE_ALPHA = 1; // 0x1 + field public static final int TYPE_BOTH = 3; // 0x3 + field public static final int TYPE_IDENTITY = 0; // 0x0 + field public static final int TYPE_MATRIX = 2; // 0x2 + field protected float mAlpha; + field protected android.graphics.Matrix mMatrix; + field protected int mTransformationType; + } + + public class TranslateAnimation extends android.view.animation.Animation { + ctor public TranslateAnimation(android.content.Context, android.util.AttributeSet); + ctor public TranslateAnimation(float, float, float, float); + ctor public TranslateAnimation(int, float, int, float, int, float, int, float); + } + +} + +package android.view.autofill { + + public final class AutofillId implements android.os.Parcelable { + method @NonNull public static android.view.autofill.AutofillId create(@NonNull android.view.View, int); + method public int describeContents(); + method @FlaggedApi("android.service.autofill.autofill_w_metrics") public int getAutofillVirtualId(); + method @FlaggedApi("android.service.autofill.autofill_w_metrics") public int getSessionId(); + method @FlaggedApi("android.service.autofill.autofill_w_metrics") public int getViewId(); + method @FlaggedApi("android.service.autofill.autofill_w_metrics") public boolean isInAutofillSession(); + method @FlaggedApi("android.service.autofill.autofill_w_metrics") public boolean isVirtual(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class AutofillManager { + method public void cancel(); + method public void commit(); + method public void disableAutofillServices(); + method @Nullable public android.content.ComponentName getAutofillServiceComponentName(); + method @NonNull public java.util.List getAvailableFieldClassificationAlgorithms(); + method @Nullable public String getDefaultFieldClassificationAlgorithm(); + method @Nullable public android.view.autofill.AutofillId getNextAutofillId(); + method @Nullable public android.service.autofill.UserData getUserData(); + method @Nullable public String getUserDataId(); + method public boolean hasEnabledAutofillServices(); + method public boolean isAutofillSupported(); + method public boolean isEnabled(); + method public boolean isFieldClassificationEnabled(); + method public void notifyValueChanged(android.view.View); + method public void notifyValueChanged(android.view.View, int, android.view.autofill.AutofillValue); + method public void notifyViewClicked(@NonNull android.view.View); + method public void notifyViewClicked(@NonNull android.view.View, int); + method public void notifyViewEntered(@NonNull android.view.View); + method public void notifyViewEntered(@NonNull android.view.View, int, @NonNull android.graphics.Rect); + method public void notifyViewExited(@NonNull android.view.View); + method public void notifyViewExited(@NonNull android.view.View, int); + method public void notifyViewVisibilityChanged(@NonNull android.view.View, boolean); + method public void notifyViewVisibilityChanged(@NonNull android.view.View, int, boolean); + method @Deprecated @FlaggedApi("android.service.autofill.fill_dialog_improvements") public void notifyVirtualViewsReady(@NonNull android.view.View, @NonNull android.util.SparseArray); + method public void registerCallback(@Nullable android.view.autofill.AutofillManager.AutofillCallback); + method public void requestAutofill(@NonNull android.view.View); + method public void requestAutofill(@NonNull android.view.View, int, @NonNull android.graphics.Rect); + method public void setUserData(@Nullable android.service.autofill.UserData); + method @Deprecated @FlaggedApi("android.service.autofill.fill_dialog_improvements") public boolean showAutofillDialog(@NonNull android.view.View); + method @Deprecated @FlaggedApi("android.service.autofill.fill_dialog_improvements") public boolean showAutofillDialog(@NonNull android.view.View, int); + method public void unregisterCallback(@Nullable android.view.autofill.AutofillManager.AutofillCallback); + field public static final String EXTRA_ASSIST_STRUCTURE = "android.view.autofill.extra.ASSIST_STRUCTURE"; + field public static final String EXTRA_AUTHENTICATION_RESULT = "android.view.autofill.extra.AUTHENTICATION_RESULT"; + field public static final String EXTRA_AUTHENTICATION_RESULT_EPHEMERAL_DATASET = "android.view.autofill.extra.AUTHENTICATION_RESULT_EPHEMERAL_DATASET"; + field public static final String EXTRA_CLIENT_STATE = "android.view.autofill.extra.CLIENT_STATE"; + field public static final String EXTRA_INLINE_SUGGESTIONS_REQUEST = "android.view.autofill.extra.INLINE_SUGGESTIONS_REQUEST"; + } + + public abstract static class AutofillManager.AutofillCallback { + ctor public AutofillManager.AutofillCallback(); + method public void onAutofillEvent(@NonNull android.view.View, int); + method public void onAutofillEvent(@NonNull android.view.View, int, int); + field public static final int EVENT_INPUT_HIDDEN = 2; // 0x2 + field public static final int EVENT_INPUT_SHOWN = 1; // 0x1 + field public static final int EVENT_INPUT_UNAVAILABLE = 3; // 0x3 + } + + public final class AutofillValue implements android.os.Parcelable { + method public int describeContents(); + method public static android.view.autofill.AutofillValue forDate(long); + method public static android.view.autofill.AutofillValue forList(int); + method public static android.view.autofill.AutofillValue forText(@Nullable CharSequence); + method public static android.view.autofill.AutofillValue forToggle(boolean); + method public long getDateValue(); + method public int getListValue(); + method @NonNull public CharSequence getTextValue(); + method public boolean getToggleValue(); + method public boolean isDate(); + method public boolean isList(); + method public boolean isText(); + method public boolean isToggle(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class VirtualViewFillInfo { + method @Nullable public String[] getAutofillHints(); + } + + public static final class VirtualViewFillInfo.Builder { + ctor public VirtualViewFillInfo.Builder(); + method @NonNull public android.view.autofill.VirtualViewFillInfo build(); + method @NonNull public android.view.autofill.VirtualViewFillInfo.Builder setAutofillHints(@NonNull java.lang.String...); + } + +} + +package android.view.contentcapture { + + public final class ContentCaptureCondition implements android.os.Parcelable { + ctor public ContentCaptureCondition(@NonNull android.content.LocusId, int); + method public int describeContents(); + method public int getFlags(); + method @NonNull public android.content.LocusId getLocusId(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_IS_REGEX = 2; // 0x2 + } + + public final class ContentCaptureContext implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public static android.view.contentcapture.ContentCaptureContext forLocusId(@NonNull String); + method @Nullable public android.os.Bundle getExtras(); + method @Nullable public android.content.LocusId getLocusId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class ContentCaptureContext.Builder { + ctor public ContentCaptureContext.Builder(@NonNull android.content.LocusId); + method @NonNull public android.view.contentcapture.ContentCaptureContext build(); + method @NonNull public android.view.contentcapture.ContentCaptureContext.Builder setExtras(@NonNull android.os.Bundle); + } + + public final class ContentCaptureManager { + method @Nullable public java.util.Set getContentCaptureConditions(); + method @Nullable public android.content.ComponentName getServiceComponentName(); + method public boolean isContentCaptureEnabled(); + method public void removeData(@NonNull android.view.contentcapture.DataRemovalRequest); + method public void setContentCaptureEnabled(boolean); + method public void shareData(@NonNull android.view.contentcapture.DataShareRequest, @NonNull java.util.concurrent.Executor, @NonNull android.view.contentcapture.DataShareWriteAdapter); + field public static final int DATA_SHARE_ERROR_CONCURRENT_REQUEST = 2; // 0x2 + field public static final int DATA_SHARE_ERROR_TIMEOUT_INTERRUPTED = 3; // 0x3 + field public static final int DATA_SHARE_ERROR_UNKNOWN = 1; // 0x1 + } + + public abstract class ContentCaptureSession implements java.lang.AutoCloseable { + method public void close(); + method @NonNull public final android.view.contentcapture.ContentCaptureSession createContentCaptureSession(@NonNull android.view.contentcapture.ContentCaptureContext); + method public final void destroy(); + method @Nullable public final android.view.contentcapture.ContentCaptureContext getContentCaptureContext(); + method @NonNull public final android.view.contentcapture.ContentCaptureSessionId getContentCaptureSessionId(); + method @NonNull public android.view.autofill.AutofillId newAutofillId(@NonNull android.view.autofill.AutofillId, long); + method @NonNull public final android.view.ViewStructure newViewStructure(@NonNull android.view.View); + method @NonNull public final android.view.ViewStructure newVirtualViewStructure(@NonNull android.view.autofill.AutofillId, long); + method public final void notifySessionPaused(); + method public final void notifySessionResumed(); + method public final void notifyViewAppeared(@NonNull android.view.ViewStructure); + method public final void notifyViewDisappeared(@NonNull android.view.autofill.AutofillId); + method public final void notifyViewInsetsChanged(@NonNull android.graphics.Insets); + method public final void notifyViewTextChanged(@NonNull android.view.autofill.AutofillId, @Nullable CharSequence); + method public final void notifyViewsAppeared(@NonNull java.util.List); + method public final void notifyViewsDisappeared(@NonNull android.view.autofill.AutofillId, @NonNull long[]); + method public final void setContentCaptureContext(@Nullable android.view.contentcapture.ContentCaptureContext); + } + + public final class ContentCaptureSessionId implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class DataRemovalRequest implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getLocusIdRequests(); + method @NonNull public String getPackageName(); + method public boolean isForEverything(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_IS_PREFIX = 1; // 0x1 + } + + public static final class DataRemovalRequest.Builder { + ctor public DataRemovalRequest.Builder(); + method @NonNull public android.view.contentcapture.DataRemovalRequest.Builder addLocusId(@NonNull android.content.LocusId, int); + method @NonNull public android.view.contentcapture.DataRemovalRequest build(); + method @NonNull public android.view.contentcapture.DataRemovalRequest.Builder forEverything(); + } + + public final class DataRemovalRequest.LocusIdRequest { + method @NonNull public int getFlags(); + method @NonNull public android.content.LocusId getLocusId(); + } + + public final class DataShareRequest implements android.os.Parcelable { + ctor public DataShareRequest(@Nullable android.content.LocusId, @NonNull String); + method public int describeContents(); + method @Nullable public android.content.LocusId getLocusId(); + method @NonNull public String getMimeType(); + method @NonNull public String getPackageName(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface DataShareWriteAdapter { + method public default void onError(int); + method public void onRejected(); + method public void onWrite(@NonNull android.os.ParcelFileDescriptor); + } + +} + +package android.view.displayhash { + + public final class DisplayHash implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class DisplayHashManager { + method @NonNull public java.util.Set getSupportedHashAlgorithms(); + method @Nullable public android.view.displayhash.VerifiedDisplayHash verifyDisplayHash(@NonNull android.view.displayhash.DisplayHash); + } + + public interface DisplayHashResultCallback { + method public void onDisplayHashError(int); + method public void onDisplayHashResult(@NonNull android.view.displayhash.DisplayHash); + field public static final int DISPLAY_HASH_ERROR_INVALID_BOUNDS = -2; // 0xfffffffe + field public static final int DISPLAY_HASH_ERROR_INVALID_HASH_ALGORITHM = -5; // 0xfffffffb + field public static final int DISPLAY_HASH_ERROR_MISSING_WINDOW = -3; // 0xfffffffd + field public static final int DISPLAY_HASH_ERROR_NOT_VISIBLE_ON_SCREEN = -4; // 0xfffffffc + field public static final int DISPLAY_HASH_ERROR_TOO_MANY_REQUESTS = -6; // 0xfffffffa + field public static final int DISPLAY_HASH_ERROR_UNKNOWN = -1; // 0xffffffff + } + + public final class VerifiedDisplayHash implements android.os.Parcelable { + ctor public VerifiedDisplayHash(long, @NonNull android.graphics.Rect, @NonNull String, @NonNull byte[]); + method public int describeContents(); + method @NonNull public android.graphics.Rect getBoundsInWindow(); + method @NonNull public String getHashAlgorithm(); + method @NonNull public byte[] getImageHash(); + method public long getTimeMillis(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package android.view.inputmethod { + + public class BaseInputConnection implements android.view.inputmethod.InputConnection { + ctor public BaseInputConnection(@NonNull android.view.View, boolean); + method public boolean beginBatchEdit(); + method public boolean clearMetaKeyStates(int); + method @CallSuper public void closeConnection(); + method public boolean commitCompletion(android.view.inputmethod.CompletionInfo); + method public boolean commitContent(android.view.inputmethod.InputContentInfo, int, android.os.Bundle); + method public boolean commitCorrection(android.view.inputmethod.CorrectionInfo); + method public boolean commitText(CharSequence, int); + method public boolean deleteSurroundingText(int, int); + method public boolean deleteSurroundingTextInCodePoints(int, int); + method public boolean endBatchEdit(); + method public boolean finishComposingText(); + method public static int getComposingSpanEnd(@NonNull android.text.Spannable); + method public static int getComposingSpanStart(@NonNull android.text.Spannable); + method public int getCursorCapsMode(int); + method @Nullable public android.text.Editable getEditable(); + method @Nullable public android.view.inputmethod.ExtractedText getExtractedText(android.view.inputmethod.ExtractedTextRequest, int); + method @Nullable public android.os.Handler getHandler(); + method @Nullable public CharSequence getSelectedText(int); + method @Nullable public android.view.inputmethod.SurroundingText getSurroundingText(@IntRange(from=0) int, @IntRange(from=0) int, int); + method @Nullable public CharSequence getTextAfterCursor(@IntRange(from=0) int, int); + method @Nullable public CharSequence getTextBeforeCursor(@IntRange(from=0) int, int); + method public boolean performContextMenuAction(int); + method public boolean performEditorAction(int); + method public boolean performPrivateCommand(String, android.os.Bundle); + method public static final void removeComposingSpans(@NonNull android.text.Spannable); + method public boolean replaceText(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); + method public boolean reportFullscreenMode(boolean); + method public boolean requestCursorUpdates(int); + method public boolean sendKeyEvent(android.view.KeyEvent); + method public boolean setComposingRegion(int, int); + method public static void setComposingSpans(@NonNull android.text.Spannable); + method public boolean setComposingText(CharSequence, int); + method public boolean setSelection(int, int); + method @Nullable public android.view.inputmethod.TextSnapshot takeSnapshot(); + } + + public final class CompletionInfo implements android.os.Parcelable { + ctor public CompletionInfo(long, int, CharSequence); + ctor public CompletionInfo(long, int, CharSequence, CharSequence); + method public int describeContents(); + method public long getId(); + method public CharSequence getLabel(); + method public int getPosition(); + method public CharSequence getText(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public interface ConnectionlessHandwritingCallback { + method public void onError(int); + method public void onResult(@NonNull CharSequence); + field public static final int CONNECTIONLESS_HANDWRITING_ERROR_NO_TEXT_RECOGNIZED = 0; // 0x0 + field public static final int CONNECTIONLESS_HANDWRITING_ERROR_OTHER = 2; // 0x2 + field public static final int CONNECTIONLESS_HANDWRITING_ERROR_UNSUPPORTED = 1; // 0x1 + } + + public final class CorrectionInfo implements android.os.Parcelable { + ctor public CorrectionInfo(int, CharSequence, CharSequence); + method public int describeContents(); + method public CharSequence getNewText(); + method public int getOffset(); + method public CharSequence getOldText(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class CursorAnchorInfo implements android.os.Parcelable { + ctor public CursorAnchorInfo(android.os.Parcel); + method public int describeContents(); + method public android.graphics.RectF getCharacterBounds(int); + method public int getCharacterBoundsFlags(int); + method public CharSequence getComposingText(); + method public int getComposingTextStart(); + method @Nullable public android.view.inputmethod.EditorBoundsInfo getEditorBoundsInfo(); + method public float getInsertionMarkerBaseline(); + method public float getInsertionMarkerBottom(); + method public int getInsertionMarkerFlags(); + method public float getInsertionMarkerHorizontal(); + method public float getInsertionMarkerTop(); + method public android.graphics.Matrix getMatrix(); + method public int getSelectionEnd(); + method public int getSelectionStart(); + method @Nullable public android.view.inputmethod.TextAppearanceInfo getTextAppearanceInfo(); + method @NonNull public java.util.List getVisibleLineBounds(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_HAS_INVISIBLE_REGION = 2; // 0x2 + field public static final int FLAG_HAS_VISIBLE_REGION = 1; // 0x1 + field public static final int FLAG_IS_RTL = 4; // 0x4 + } + + public static final class CursorAnchorInfo.Builder { + ctor public CursorAnchorInfo.Builder(); + method public android.view.inputmethod.CursorAnchorInfo.Builder addCharacterBounds(int, float, float, float, float, int); + method @NonNull public android.view.inputmethod.CursorAnchorInfo.Builder addVisibleLineBounds(float, float, float, float); + method public android.view.inputmethod.CursorAnchorInfo build(); + method @NonNull public android.view.inputmethod.CursorAnchorInfo.Builder clearVisibleLineBounds(); + method public void reset(); + method public android.view.inputmethod.CursorAnchorInfo.Builder setComposingText(int, CharSequence); + method @NonNull public android.view.inputmethod.CursorAnchorInfo.Builder setEditorBoundsInfo(@Nullable android.view.inputmethod.EditorBoundsInfo); + method public android.view.inputmethod.CursorAnchorInfo.Builder setInsertionMarkerLocation(float, float, float, float, int); + method public android.view.inputmethod.CursorAnchorInfo.Builder setMatrix(android.graphics.Matrix); + method public android.view.inputmethod.CursorAnchorInfo.Builder setSelectionRange(int, int); + method @NonNull public android.view.inputmethod.CursorAnchorInfo.Builder setTextAppearanceInfo(@Nullable android.view.inputmethod.TextAppearanceInfo); + } + + public final class DeleteGesture extends android.view.inputmethod.PreviewableHandwritingGesture implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.graphics.RectF getDeletionArea(); + method public int getGranularity(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class DeleteGesture.Builder { + ctor public DeleteGesture.Builder(); + method @NonNull public android.view.inputmethod.DeleteGesture build(); + method @NonNull public android.view.inputmethod.DeleteGesture.Builder setDeletionArea(@NonNull android.graphics.RectF); + method @NonNull public android.view.inputmethod.DeleteGesture.Builder setFallbackText(@Nullable String); + method @NonNull public android.view.inputmethod.DeleteGesture.Builder setGranularity(int); + } + + public final class DeleteRangeGesture extends android.view.inputmethod.PreviewableHandwritingGesture implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.graphics.RectF getDeletionEndArea(); + method @NonNull public android.graphics.RectF getDeletionStartArea(); + method public int getGranularity(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class DeleteRangeGesture.Builder { + ctor public DeleteRangeGesture.Builder(); + method @NonNull public android.view.inputmethod.DeleteRangeGesture build(); + method @NonNull public android.view.inputmethod.DeleteRangeGesture.Builder setDeletionEndArea(@NonNull android.graphics.RectF); + method @NonNull public android.view.inputmethod.DeleteRangeGesture.Builder setDeletionStartArea(@NonNull android.graphics.RectF); + method @NonNull public android.view.inputmethod.DeleteRangeGesture.Builder setFallbackText(@Nullable String); + method @NonNull public android.view.inputmethod.DeleteRangeGesture.Builder setGranularity(int); + } + + public final class EditorBoundsInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.graphics.RectF getEditorBounds(); + method @Nullable public android.graphics.RectF getHandwritingBounds(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class EditorBoundsInfo.Builder { + ctor public EditorBoundsInfo.Builder(); + method @NonNull public android.view.inputmethod.EditorBoundsInfo build(); + method @NonNull public android.view.inputmethod.EditorBoundsInfo.Builder setEditorBounds(@Nullable android.graphics.RectF); + method @NonNull public android.view.inputmethod.EditorBoundsInfo.Builder setHandwritingBounds(@Nullable android.graphics.RectF); + } + + public class EditorInfo implements android.text.InputType android.os.Parcelable { + ctor public EditorInfo(); + method public int describeContents(); + method public void dump(android.util.Printer, String); + method @FlaggedApi("android.view.inputmethod.public_autofill_id_in_editorinfo") @Nullable public android.view.autofill.AutofillId getAutofillId(); + method @Nullable public CharSequence getInitialSelectedText(int); + method @Nullable public android.view.inputmethod.SurroundingText getInitialSurroundingText(@IntRange(from=0) int, @IntRange(from=0) int, int); + method @Nullable public CharSequence getInitialTextAfterCursor(@IntRange(from=0) int, int); + method @Nullable public CharSequence getInitialTextBeforeCursor(@IntRange(from=0) int, int); + method public int getInitialToolType(); + method @NonNull public java.util.Set> getSupportedHandwritingGesturePreviews(); + method @NonNull public java.util.List> getSupportedHandwritingGestures(); + method @FlaggedApi("android.view.inputmethod.editorinfo_handwriting_enabled") public boolean isStylusHandwritingEnabled(); + method @FlaggedApi("android.view.inputmethod.writing_tools") public boolean isWritingToolsEnabled(); + method public final void makeCompatible(int); + method @FlaggedApi("android.view.inputmethod.public_autofill_id_in_editorinfo") public void setAutofillId(@Nullable android.view.autofill.AutofillId); + method public void setInitialSurroundingSubText(@NonNull CharSequence, int); + method public void setInitialSurroundingText(@NonNull CharSequence); + method public void setInitialToolType(int); + method @FlaggedApi("android.view.inputmethod.editorinfo_handwriting_enabled") public void setStylusHandwritingEnabled(boolean); + method public void setSupportedHandwritingGesturePreviews(@NonNull java.util.Set>); + method public void setSupportedHandwritingGestures(@NonNull java.util.List>); + method @FlaggedApi("android.view.inputmethod.writing_tools") public void setWritingToolsEnabled(boolean); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int IME_ACTION_DONE = 6; // 0x6 + field public static final int IME_ACTION_GO = 2; // 0x2 + field public static final int IME_ACTION_NEXT = 5; // 0x5 + field public static final int IME_ACTION_NONE = 1; // 0x1 + field public static final int IME_ACTION_PREVIOUS = 7; // 0x7 + field public static final int IME_ACTION_SEARCH = 3; // 0x3 + field public static final int IME_ACTION_SEND = 4; // 0x4 + field public static final int IME_ACTION_UNSPECIFIED = 0; // 0x0 + field public static final int IME_FLAG_FORCE_ASCII = -2147483648; // 0x80000000 + field public static final int IME_FLAG_NAVIGATE_NEXT = 134217728; // 0x8000000 + field public static final int IME_FLAG_NAVIGATE_PREVIOUS = 67108864; // 0x4000000 + field public static final int IME_FLAG_NO_ACCESSORY_ACTION = 536870912; // 0x20000000 + field public static final int IME_FLAG_NO_ENTER_ACTION = 1073741824; // 0x40000000 + field public static final int IME_FLAG_NO_EXTRACT_UI = 268435456; // 0x10000000 + field public static final int IME_FLAG_NO_FULLSCREEN = 33554432; // 0x2000000 + field public static final int IME_FLAG_NO_PERSONALIZED_LEARNING = 16777216; // 0x1000000 + field public static final int IME_MASK_ACTION = 255; // 0xff + field public static final int IME_NULL = 0; // 0x0 + field public int actionId; + field public CharSequence actionLabel; + field @Nullable public String[] contentMimeTypes; + field public android.os.Bundle extras; + field public int fieldId; + field public String fieldName; + field @Nullable public android.os.LocaleList hintLocales; + field public CharSequence hintText; + field public int imeOptions; + field public int initialCapsMode; + field public int initialSelEnd; + field public int initialSelStart; + field public int inputType; + field public CharSequence label; + field public String packageName; + field public String privateImeOptions; + } + + public class ExtractedText implements android.os.Parcelable { + ctor public ExtractedText(); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_SELECTING = 2; // 0x2 + field public static final int FLAG_SINGLE_LINE = 1; // 0x1 + field public int flags; + field public CharSequence hint; + field public int partialEndOffset; + field public int partialStartOffset; + field public int selectionEnd; + field public int selectionStart; + field public int startOffset; + field public CharSequence text; + } + + public class ExtractedTextRequest implements android.os.Parcelable { + ctor public ExtractedTextRequest(); + method public int describeContents(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public int flags; + field public int hintMaxChars; + field public int hintMaxLines; + field public int token; + } + + public abstract class HandwritingGesture { + method @Nullable public final String getFallbackText(); + field public static final int GRANULARITY_CHARACTER = 2; // 0x2 + field public static final int GRANULARITY_WORD = 1; // 0x1 + } + + public final class InlineSuggestion implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.view.inputmethod.InlineSuggestionInfo getInfo(); + method public void inflate(@NonNull android.content.Context, @NonNull android.util.Size, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class InlineSuggestionInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String[] getAutofillHints(); + method @NonNull public android.widget.inline.InlinePresentationSpec getInlinePresentationSpec(); + method @NonNull public String getSource(); + method @NonNull public String getType(); + method public boolean isPinned(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String SOURCE_AUTOFILL = "android:autofill"; + field public static final String SOURCE_PLATFORM = "android:platform"; + field public static final String TYPE_ACTION = "android:autofill:action"; + field public static final String TYPE_SUGGESTION = "android:autofill:suggestion"; + } + + public final class InlineSuggestionsRequest implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public String getHostPackageName(); + method @NonNull public java.util.List getInlinePresentationSpecs(); + method @Nullable public android.widget.inline.InlinePresentationSpec getInlineTooltipPresentationSpec(); + method public int getMaxSuggestionCount(); + method @NonNull public android.os.LocaleList getSupportedLocales(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int SUGGESTION_COUNT_UNLIMITED = 2147483647; // 0x7fffffff + } + + public static final class InlineSuggestionsRequest.Builder { + ctor public InlineSuggestionsRequest.Builder(@NonNull java.util.List); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder addInlinePresentationSpecs(@NonNull android.widget.inline.InlinePresentationSpec); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest build(); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setExtras(@NonNull android.os.Bundle); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setInlinePresentationSpecs(@NonNull java.util.List); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setInlineTooltipPresentationSpec(@NonNull android.widget.inline.InlinePresentationSpec); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setMaxSuggestionCount(int); + method @NonNull public android.view.inputmethod.InlineSuggestionsRequest.Builder setSupportedLocales(@NonNull android.os.LocaleList); + } + + public final class InlineSuggestionsResponse implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public java.util.List getInlineSuggestions(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class InputBinding implements android.os.Parcelable { + ctor public InputBinding(android.view.inputmethod.InputConnection, android.os.IBinder, int, int); + ctor public InputBinding(android.view.inputmethod.InputConnection, android.view.inputmethod.InputBinding); + method public int describeContents(); + method public android.view.inputmethod.InputConnection getConnection(); + method public android.os.IBinder getConnectionToken(); + method public int getPid(); + method public int getUid(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface InputConnection { + method public boolean beginBatchEdit(); + method public boolean clearMetaKeyStates(int); + method public void closeConnection(); + method public boolean commitCompletion(android.view.inputmethod.CompletionInfo); + method public boolean commitContent(@NonNull android.view.inputmethod.InputContentInfo, int, @Nullable android.os.Bundle); + method public boolean commitCorrection(android.view.inputmethod.CorrectionInfo); + method public boolean commitText(CharSequence, int); + method public default boolean commitText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); + method public boolean deleteSurroundingText(int, int); + method public boolean deleteSurroundingTextInCodePoints(int, int); + method public boolean endBatchEdit(); + method public boolean finishComposingText(); + method public int getCursorCapsMode(int); + method public android.view.inputmethod.ExtractedText getExtractedText(android.view.inputmethod.ExtractedTextRequest, int); + method @Nullable public android.os.Handler getHandler(); + method public CharSequence getSelectedText(int); + method @Nullable public default android.view.inputmethod.SurroundingText getSurroundingText(@IntRange(from=0) int, @IntRange(from=0) int, int); + method @Nullable public CharSequence getTextAfterCursor(@IntRange(from=0) int, int); + method @Nullable public CharSequence getTextBeforeCursor(@IntRange(from=0) int, int); + method public boolean performContextMenuAction(int); + method public boolean performEditorAction(int); + method public default void performHandwritingGesture(@NonNull android.view.inputmethod.HandwritingGesture, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.IntConsumer); + method public boolean performPrivateCommand(String, android.os.Bundle); + method public default boolean performSpellCheck(); + method public default boolean previewHandwritingGesture(@NonNull android.view.inputmethod.PreviewableHandwritingGesture, @Nullable android.os.CancellationSignal); + method public default boolean replaceText(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); + method public boolean reportFullscreenMode(boolean); + method public boolean requestCursorUpdates(int); + method public default boolean requestCursorUpdates(int, int); + method public default void requestTextBoundsInfo(@NonNull android.graphics.RectF, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public boolean sendKeyEvent(android.view.KeyEvent); + method public boolean setComposingRegion(int, int); + method public default boolean setComposingRegion(int, int, @Nullable android.view.inputmethod.TextAttribute); + method public boolean setComposingText(CharSequence, int); + method public default boolean setComposingText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); + method public default boolean setImeConsumesInput(boolean); + method public boolean setSelection(int, int); + method @Nullable public default android.view.inputmethod.TextSnapshot takeSnapshot(); + field public static final int CURSOR_UPDATE_FILTER_CHARACTER_BOUNDS = 8; // 0x8 + field public static final int CURSOR_UPDATE_FILTER_EDITOR_BOUNDS = 4; // 0x4 + field public static final int CURSOR_UPDATE_FILTER_INSERTION_MARKER = 16; // 0x10 + field public static final int CURSOR_UPDATE_FILTER_TEXT_APPEARANCE = 64; // 0x40 + field public static final int CURSOR_UPDATE_FILTER_VISIBLE_LINE_BOUNDS = 32; // 0x20 + field public static final int CURSOR_UPDATE_IMMEDIATE = 1; // 0x1 + field public static final int CURSOR_UPDATE_MONITOR = 2; // 0x2 + field public static final int GET_EXTRACTED_TEXT_MONITOR = 1; // 0x1 + field public static final int GET_TEXT_WITH_STYLES = 1; // 0x1 + field public static final int HANDWRITING_GESTURE_RESULT_CANCELLED = 4; // 0x4 + field public static final int HANDWRITING_GESTURE_RESULT_FAILED = 3; // 0x3 + field public static final int HANDWRITING_GESTURE_RESULT_FALLBACK = 5; // 0x5 + field public static final int HANDWRITING_GESTURE_RESULT_SUCCESS = 1; // 0x1 + field public static final int HANDWRITING_GESTURE_RESULT_UNKNOWN = 0; // 0x0 + field public static final int HANDWRITING_GESTURE_RESULT_UNSUPPORTED = 2; // 0x2 + field public static final int INPUT_CONTENT_GRANT_READ_URI_PERMISSION = 1; // 0x1 + } + + public class InputConnectionWrapper implements android.view.inputmethod.InputConnection { + ctor public InputConnectionWrapper(android.view.inputmethod.InputConnection, boolean); + method public boolean beginBatchEdit(); + method public boolean clearMetaKeyStates(int); + method public void closeConnection(); + method public boolean commitCompletion(android.view.inputmethod.CompletionInfo); + method public boolean commitContent(android.view.inputmethod.InputContentInfo, int, android.os.Bundle); + method public boolean commitCorrection(android.view.inputmethod.CorrectionInfo); + method public boolean commitText(CharSequence, int); + method public boolean commitText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); + method public boolean deleteSurroundingText(int, int); + method public boolean deleteSurroundingTextInCodePoints(int, int); + method public boolean endBatchEdit(); + method public boolean finishComposingText(); + method public int getCursorCapsMode(int); + method public android.view.inputmethod.ExtractedText getExtractedText(android.view.inputmethod.ExtractedTextRequest, int); + method public android.os.Handler getHandler(); + method public CharSequence getSelectedText(int); + method @Nullable public android.view.inputmethod.SurroundingText getSurroundingText(int, int, int); + method @Nullable public CharSequence getTextAfterCursor(@IntRange(from=0) int, int); + method @Nullable public CharSequence getTextBeforeCursor(@IntRange(from=0) int, int); + method public boolean performContextMenuAction(int); + method public boolean performEditorAction(int); + method public void performHandwritingGesture(@NonNull android.view.inputmethod.HandwritingGesture, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.IntConsumer); + method public boolean performPrivateCommand(String, android.os.Bundle); + method public boolean performSpellCheck(); + method public boolean previewHandwritingGesture(@NonNull android.view.inputmethod.PreviewableHandwritingGesture, @Nullable android.os.CancellationSignal); + method public boolean replaceText(@IntRange(from=0) int, @IntRange(from=0) int, @NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); + method public boolean reportFullscreenMode(boolean); + method public boolean requestCursorUpdates(int); + method public boolean requestCursorUpdates(int, int); + method public void requestTextBoundsInfo(@NonNull android.graphics.RectF, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public boolean sendKeyEvent(android.view.KeyEvent); + method public boolean setComposingRegion(int, int); + method public boolean setComposingRegion(int, int, @Nullable android.view.inputmethod.TextAttribute); + method public boolean setComposingText(CharSequence, int); + method public boolean setComposingText(@NonNull CharSequence, int, @Nullable android.view.inputmethod.TextAttribute); + method public boolean setImeConsumesInput(boolean); + method public boolean setSelection(int, int); + method public void setTarget(android.view.inputmethod.InputConnection); + method @Nullable public android.view.inputmethod.TextSnapshot takeSnapshot(); + } + + public final class InputContentInfo implements android.os.Parcelable { + ctor public InputContentInfo(@NonNull android.net.Uri, @NonNull android.content.ClipDescription); + ctor public InputContentInfo(@NonNull android.net.Uri, @NonNull android.content.ClipDescription, @Nullable android.net.Uri); + method public int describeContents(); + method @NonNull public android.net.Uri getContentUri(); + method @NonNull public android.content.ClipDescription getDescription(); + method @Nullable public android.net.Uri getLinkUri(); + method public void releasePermission(); + method public void requestPermission(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface InputMethod { + method @MainThread public void attachToken(android.os.IBinder); + method @MainThread public void bindInput(android.view.inputmethod.InputBinding); + method @MainThread public void changeInputMethodSubtype(android.view.inputmethod.InputMethodSubtype); + method @MainThread public void createSession(android.view.inputmethod.InputMethod.SessionCallback); + method @MainThread public void hideSoftInput(int, android.os.ResultReceiver); + method @MainThread public void restartInput(android.view.inputmethod.InputConnection, android.view.inputmethod.EditorInfo); + method @MainThread public void revokeSession(android.view.inputmethod.InputMethodSession); + method @MainThread public void setSessionEnabled(android.view.inputmethod.InputMethodSession, boolean); + method @MainThread public void showSoftInput(int, android.os.ResultReceiver); + method @MainThread public void startInput(android.view.inputmethod.InputConnection, android.view.inputmethod.EditorInfo); + method @MainThread public void unbindInput(); + field public static final String SERVICE_INTERFACE = "android.view.InputMethod"; + field public static final String SERVICE_META_DATA = "android.view.im"; + field public static final int SHOW_EXPLICIT = 1; // 0x1 + field @Deprecated public static final int SHOW_FORCED = 2; // 0x2 + } + + public static interface InputMethod.SessionCallback { + method public void sessionCreated(android.view.inputmethod.InputMethodSession); + } + + public final class InputMethodInfo implements android.os.Parcelable { + ctor public InputMethodInfo(android.content.Context, android.content.pm.ResolveInfo) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + ctor public InputMethodInfo(String, String, CharSequence, String); + method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @Nullable public android.content.Intent createImeLanguageSettingsActivityIntent(); + method @Nullable public android.content.Intent createStylusHandwritingSettingsActivityIntent(); + method public int describeContents(); + method public void dump(android.util.Printer, String); + method public android.content.ComponentName getComponent(); + method public int getConfigChanges(); + method public String getId(); + method public int getIsDefaultResourceId(); + method public String getPackageName(); + method public android.content.pm.ServiceInfo getServiceInfo(); + method public String getServiceName(); + method public String getSettingsActivity(); + method public android.view.inputmethod.InputMethodSubtype getSubtypeAt(int); + method public int getSubtypeCount(); + method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); + method public CharSequence loadLabel(android.content.pm.PackageManager); + method public boolean shouldShowInInputMethodPicker(); + method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public boolean supportsConnectionlessStylusHandwriting(); + method public boolean supportsStylusHandwriting(); + method public boolean suppressesSpellChecker(); + method public void writeToParcel(android.os.Parcel, int); + field @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") public static final String ACTION_IME_LANGUAGE_SETTINGS = "android.view.inputmethod.action.IME_LANGUAGE_SETTINGS"; + field public static final String ACTION_STYLUS_HANDWRITING_SETTINGS = "android.view.inputmethod.action.STYLUS_HANDWRITING_SETTINGS"; + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class InputMethodManager { + method public boolean acceptStylusHandwritingDelegation(@NonNull android.view.View); + method public boolean acceptStylusHandwritingDelegation(@NonNull android.view.View, @NonNull String); + method @FlaggedApi("android.view.inputmethod.use_zero_jank_proxy") public void acceptStylusHandwritingDelegation(@NonNull android.view.View, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public void acceptStylusHandwritingDelegation(@NonNull android.view.View, @NonNull String, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public void dispatchKeyEventFromInputMethod(@Nullable android.view.View, @NonNull android.view.KeyEvent); + method public void displayCompletions(android.view.View, android.view.inputmethod.CompletionInfo[]); + method @Nullable public android.view.inputmethod.InputMethodInfo getCurrentInputMethodInfo(); + method @Nullable public android.view.inputmethod.InputMethodSubtype getCurrentInputMethodSubtype(); + method @NonNull public java.util.List getEnabledInputMethodList(); + method @NonNull public java.util.List getEnabledInputMethodSubtypeList(@Nullable android.view.inputmethod.InputMethodInfo, boolean); + method @NonNull public java.util.List getInputMethodList(); + method @Nullable public android.view.inputmethod.InputMethodSubtype getLastInputMethodSubtype(); + method public java.util.Map> getShortcutInputMethodsAndSubtypes(); + method @Deprecated public void hideSoftInputFromInputMethod(android.os.IBinder, int); + method public boolean hideSoftInputFromWindow(android.os.IBinder, int); + method @Deprecated public boolean hideSoftInputFromWindow(android.os.IBinder, int, android.os.ResultReceiver); + method @Deprecated public void hideStatusIcon(android.os.IBinder); + method public void invalidateInput(@NonNull android.view.View); + method public boolean isAcceptingText(); + method public boolean isActive(android.view.View); + method public boolean isActive(); + method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public boolean isConnectionlessStylusHandwritingAvailable(); + method public boolean isFullscreenMode(); + method public boolean isInputMethodSuppressingSpellChecker(); + method public boolean isStylusHandwritingAvailable(); + method @Deprecated public boolean isWatchingCursor(android.view.View); + method public void prepareStylusHandwritingDelegation(@NonNull android.view.View); + method public void prepareStylusHandwritingDelegation(@NonNull android.view.View, @NonNull String); + method public void restartInput(android.view.View); + method public void sendAppPrivateCommand(android.view.View, String, android.os.Bundle); + method @Deprecated public void setAdditionalInputMethodSubtypes(@NonNull String, @NonNull android.view.inputmethod.InputMethodSubtype[]); + method @Deprecated @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean setCurrentInputMethodSubtype(android.view.inputmethod.InputMethodSubtype); + method public void setExplicitlyEnabledInputMethodSubtypes(@NonNull String, @NonNull int[]); + method @Deprecated public void setInputMethod(android.os.IBinder, String); + method @Deprecated public void setInputMethodAndSubtype(@NonNull android.os.IBinder, String, android.view.inputmethod.InputMethodSubtype); + method @Deprecated public boolean shouldOfferSwitchingToNextInputMethod(android.os.IBinder); + method public void showInputMethodAndSubtypeEnabler(@Nullable String); + method public void showInputMethodPicker(); + method public boolean showSoftInput(android.view.View, int); + method @Deprecated public boolean showSoftInput(android.view.View, int, android.os.ResultReceiver); + method @Deprecated public void showSoftInputFromInputMethod(android.os.IBinder, int); + method @Deprecated public void showStatusIcon(android.os.IBinder, String, @DrawableRes int); + method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public void startConnectionlessStylusHandwriting(@NonNull android.view.View, @Nullable android.view.inputmethod.CursorAnchorInfo, @NonNull java.util.concurrent.Executor, @NonNull android.view.inputmethod.ConnectionlessHandwritingCallback); + method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public void startConnectionlessStylusHandwritingForDelegation(@NonNull android.view.View, @Nullable android.view.inputmethod.CursorAnchorInfo, @NonNull java.util.concurrent.Executor, @NonNull android.view.inputmethod.ConnectionlessHandwritingCallback); + method @FlaggedApi("android.view.inputmethod.connectionless_handwriting") public void startConnectionlessStylusHandwritingForDelegation(@NonNull android.view.View, @Nullable android.view.inputmethod.CursorAnchorInfo, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.view.inputmethod.ConnectionlessHandwritingCallback); + method public void startStylusHandwriting(@NonNull android.view.View); + method @Deprecated public boolean switchToLastInputMethod(android.os.IBinder); + method @Deprecated public boolean switchToNextInputMethod(android.os.IBinder, boolean); + method @Deprecated public void toggleSoftInput(int, int); + method @Deprecated public void toggleSoftInputFromWindow(android.os.IBinder, int, int); + method @Deprecated public void updateCursor(android.view.View, int, int, int, int); + method public void updateCursorAnchorInfo(android.view.View, android.view.inputmethod.CursorAnchorInfo); + method public void updateExtractedText(android.view.View, int, android.view.inputmethod.ExtractedText); + method public void updateSelection(android.view.View, int, int, int, int); + method @Deprecated public void viewClicked(android.view.View); + field @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public static final int HANDWRITING_DELEGATE_FLAG_HOME_DELEGATOR_ALLOWED = 1; // 0x1 + field public static final int HIDE_IMPLICIT_ONLY = 1; // 0x1 + field public static final int HIDE_NOT_ALWAYS = 2; // 0x2 + field public static final int RESULT_HIDDEN = 3; // 0x3 + field public static final int RESULT_SHOWN = 2; // 0x2 + field public static final int RESULT_UNCHANGED_HIDDEN = 1; // 0x1 + field public static final int RESULT_UNCHANGED_SHOWN = 0; // 0x0 + field @Deprecated public static final int SHOW_FORCED = 2; // 0x2 + field public static final int SHOW_IMPLICIT = 1; // 0x1 + } + + public interface InputMethodSession { + method public void appPrivateCommand(String, android.os.Bundle); + method public void dispatchGenericMotionEvent(int, android.view.MotionEvent, android.view.inputmethod.InputMethodSession.EventCallback); + method public void dispatchKeyEvent(int, android.view.KeyEvent, android.view.inputmethod.InputMethodSession.EventCallback); + method public void dispatchTrackballEvent(int, android.view.MotionEvent, android.view.inputmethod.InputMethodSession.EventCallback); + method public void displayCompletions(android.view.inputmethod.CompletionInfo[]); + method public void finishInput(); + method @Deprecated public void toggleSoftInput(int, int); + method public void updateCursor(android.graphics.Rect); + method public void updateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo); + method public void updateExtractedText(int, android.view.inputmethod.ExtractedText); + method public void updateSelection(int, int, int, int, int, int); + method public void viewClicked(boolean); + } + + public static interface InputMethodSession.EventCallback { + method public void finishedEvent(int, boolean); + } + + public final class InputMethodSubtype implements android.os.Parcelable { + ctor @Deprecated public InputMethodSubtype(int, int, String, String, String, boolean, boolean); + ctor @Deprecated public InputMethodSubtype(int, int, String, String, String, boolean, boolean, int); + method public boolean containsExtraValueKey(String); + method public int describeContents(); + method @NonNull public CharSequence getDisplayName(android.content.Context, String, android.content.pm.ApplicationInfo); + method public String getExtraValue(); + method public String getExtraValueOf(String); + method public int getIconResId(); + method @NonNull public String getLanguageTag(); + method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @NonNull public CharSequence getLayoutDisplayName(@NonNull android.content.Context, @NonNull android.content.pm.ApplicationInfo); + method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @NonNull public CharSequence getLayoutLabelNonLocalized(); + method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @StringRes public int getLayoutLabelResource(); + method @Deprecated @NonNull public String getLocale(); + method public String getMode(); + method @NonNull public CharSequence getNameOverride(); + method public int getNameResId(); + method @Nullable public android.icu.util.ULocale getPhysicalKeyboardHintLanguageTag(); + method @NonNull public String getPhysicalKeyboardHintLayoutType(); + method public boolean isAsciiCapable(); + method public boolean isAuxiliary(); + method public boolean overridesImplicitlyEnabledSubtype(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class InputMethodSubtype.InputMethodSubtypeBuilder { + ctor public InputMethodSubtype.InputMethodSubtypeBuilder(); + method public android.view.inputmethod.InputMethodSubtype build(); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setIsAsciiCapable(boolean); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setIsAuxiliary(boolean); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setLanguageTag(String); + method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @NonNull public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setLayoutLabelNonLocalized(@NonNull CharSequence); + method @FlaggedApi("android.view.inputmethod.ime_switcher_revamp_api") @NonNull public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setLayoutLabelResource(@StringRes int); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setOverridesImplicitlyEnabledSubtype(boolean); + method @NonNull public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setPhysicalKeyboardHint(@Nullable android.icu.util.ULocale, @NonNull String); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeExtraValue(String); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeIconResId(int); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeId(int); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeLocale(String); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeMode(String); + method @NonNull public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeNameOverride(@NonNull CharSequence); + method public android.view.inputmethod.InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeNameResId(int); + } + + public final class InsertGesture extends android.view.inputmethod.HandwritingGesture implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.graphics.PointF getInsertionPoint(); + method @NonNull public String getTextToInsert(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class InsertGesture.Builder { + ctor public InsertGesture.Builder(); + method @NonNull public android.view.inputmethod.InsertGesture build(); + method @NonNull public android.view.inputmethod.InsertGesture.Builder setFallbackText(@Nullable String); + method @NonNull public android.view.inputmethod.InsertGesture.Builder setInsertionPoint(@NonNull android.graphics.PointF); + method @NonNull public android.view.inputmethod.InsertGesture.Builder setTextToInsert(@NonNull String); + } + + public final class InsertModeGesture extends android.view.inputmethod.HandwritingGesture implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.os.CancellationSignal getCancellationSignal(); + method @NonNull public android.graphics.PointF getInsertionPoint(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class InsertModeGesture.Builder { + ctor public InsertModeGesture.Builder(); + method @NonNull public android.view.inputmethod.InsertModeGesture build(); + method @NonNull public android.view.inputmethod.InsertModeGesture.Builder setCancellationSignal(@NonNull android.os.CancellationSignal); + method @NonNull public android.view.inputmethod.InsertModeGesture.Builder setFallbackText(@Nullable String); + method @NonNull public android.view.inputmethod.InsertModeGesture.Builder setInsertionPoint(@NonNull android.graphics.PointF); + } + + public final class JoinOrSplitGesture extends android.view.inputmethod.HandwritingGesture implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.graphics.PointF getJoinOrSplitPoint(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class JoinOrSplitGesture.Builder { + ctor public JoinOrSplitGesture.Builder(); + method @NonNull public android.view.inputmethod.JoinOrSplitGesture build(); + method @NonNull public android.view.inputmethod.JoinOrSplitGesture.Builder setFallbackText(@Nullable String); + method @NonNull public android.view.inputmethod.JoinOrSplitGesture.Builder setJoinOrSplitPoint(@NonNull android.graphics.PointF); + } + + public abstract class PreviewableHandwritingGesture extends android.view.inputmethod.HandwritingGesture { + } + + public final class RemoveSpaceGesture extends android.view.inputmethod.HandwritingGesture implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.graphics.PointF getEndPoint(); + method @NonNull public android.graphics.PointF getStartPoint(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class RemoveSpaceGesture.Builder { + ctor public RemoveSpaceGesture.Builder(); + method @NonNull public android.view.inputmethod.RemoveSpaceGesture build(); + method @NonNull public android.view.inputmethod.RemoveSpaceGesture.Builder setFallbackText(@Nullable String); + method @NonNull public android.view.inputmethod.RemoveSpaceGesture.Builder setPoints(@NonNull android.graphics.PointF, @NonNull android.graphics.PointF); + } + + public final class SelectGesture extends android.view.inputmethod.PreviewableHandwritingGesture implements android.os.Parcelable { + method public int describeContents(); + method public int getGranularity(); + method @NonNull public android.graphics.RectF getSelectionArea(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class SelectGesture.Builder { + ctor public SelectGesture.Builder(); + method @NonNull public android.view.inputmethod.SelectGesture build(); + method @NonNull public android.view.inputmethod.SelectGesture.Builder setFallbackText(@Nullable String); + method @NonNull public android.view.inputmethod.SelectGesture.Builder setGranularity(int); + method @NonNull public android.view.inputmethod.SelectGesture.Builder setSelectionArea(@NonNull android.graphics.RectF); + } + + public final class SelectRangeGesture extends android.view.inputmethod.PreviewableHandwritingGesture implements android.os.Parcelable { + method public int describeContents(); + method public int getGranularity(); + method @NonNull public android.graphics.RectF getSelectionEndArea(); + method @NonNull public android.graphics.RectF getSelectionStartArea(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class SelectRangeGesture.Builder { + ctor public SelectRangeGesture.Builder(); + method @NonNull public android.view.inputmethod.SelectRangeGesture build(); + method @NonNull public android.view.inputmethod.SelectRangeGesture.Builder setFallbackText(@Nullable String); + method @NonNull public android.view.inputmethod.SelectRangeGesture.Builder setGranularity(int); + method @NonNull public android.view.inputmethod.SelectRangeGesture.Builder setSelectionEndArea(@NonNull android.graphics.RectF); + method @NonNull public android.view.inputmethod.SelectRangeGesture.Builder setSelectionStartArea(@NonNull android.graphics.RectF); + } + + public final class SurroundingText implements android.os.Parcelable { + ctor public SurroundingText(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0xffffffff) int); + method public int describeContents(); + method @IntRange(from=0xffffffff) public int getOffset(); + method @IntRange(from=0) public int getSelectionEnd(); + method @IntRange(from=0) public int getSelectionStart(); + method @NonNull public CharSequence getText(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class TextAppearanceInfo implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getFontFeatureSettings(); + method @Nullable public String getFontVariationSettings(); + method @ColorInt public int getHighlightTextColor(); + method @ColorInt public int getHintTextColor(); + method public float getLetterSpacing(); + method public int getLineBreakStyle(); + method public int getLineBreakWordStyle(); + method @ColorInt public int getLinkTextColor(); + method @ColorInt public int getShadowColor(); + method @Px public float getShadowDx(); + method @Px public float getShadowDy(); + method @Px public float getShadowRadius(); + method @Nullable public String getSystemFontFamilyName(); + method @ColorInt public int getTextColor(); + method @IntRange(from=android.graphics.fonts.FontStyle.FONT_WEIGHT_UNSPECIFIED, to=android.graphics.fonts.FontStyle.FONT_WEIGHT_MAX) public int getTextFontWeight(); + method @NonNull public android.os.LocaleList getTextLocales(); + method public float getTextScaleX(); + method @Px public float getTextSize(); + method public int getTextStyle(); + method public boolean isAllCaps(); + method public boolean isElegantTextHeight(); + method public boolean isFallbackLineSpacing(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextAppearanceInfo.Builder { + ctor public TextAppearanceInfo.Builder(); + method @NonNull public android.view.inputmethod.TextAppearanceInfo build(); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setAllCaps(boolean); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setElegantTextHeight(boolean); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setFallbackLineSpacing(boolean); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setFontFeatureSettings(@Nullable String); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setFontVariationSettings(@Nullable String); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setHighlightTextColor(@ColorInt int); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setHintTextColor(@ColorInt int); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setLetterSpacing(float); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setLineBreakStyle(int); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setLineBreakWordStyle(int); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setLinkTextColor(@ColorInt int); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setShadowColor(@ColorInt int); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setShadowDx(@Px float); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setShadowDy(@Px float); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setShadowRadius(@Px float); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setSystemFontFamilyName(@Nullable String); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextColor(@ColorInt int); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextFontWeight(@IntRange(from=android.graphics.fonts.FontStyle.FONT_WEIGHT_UNSPECIFIED, to=android.graphics.fonts.FontStyle.FONT_WEIGHT_MAX) int); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextLocales(@NonNull android.os.LocaleList); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextScaleX(float); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextSize(@Px float); + method @NonNull public android.view.inputmethod.TextAppearanceInfo.Builder setTextStyle(int); + } + + public final class TextAttribute implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.os.PersistableBundle getExtras(); + method @NonNull public java.util.List getTextConversionSuggestions(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextAttribute.Builder { + ctor public TextAttribute.Builder(); + method @NonNull public android.view.inputmethod.TextAttribute build(); + method @NonNull public android.view.inputmethod.TextAttribute.Builder setExtras(@NonNull android.os.PersistableBundle); + method @NonNull public android.view.inputmethod.TextAttribute.Builder setTextConversionSuggestions(@NonNull java.util.List); + } + + public final class TextBoundsInfo implements android.os.Parcelable { + method public int describeContents(); + method @IntRange(from=0, to=125) public int getCharacterBidiLevel(int); + method @NonNull public void getCharacterBounds(int, @NonNull android.graphics.RectF); + method public int getCharacterFlags(int); + method public int getEndIndex(); + method @NonNull public android.text.SegmentFinder getGraphemeSegmentFinder(); + method @NonNull public android.text.SegmentFinder getLineSegmentFinder(); + method @NonNull public void getMatrix(@NonNull android.graphics.Matrix); + method public int getOffsetForPosition(float, float); + method @Nullable public int[] getRangeForRect(@NonNull android.graphics.RectF, @NonNull android.text.SegmentFinder, @NonNull android.text.Layout.TextInclusionStrategy); + method public int getStartIndex(); + method @NonNull public android.text.SegmentFinder getWordSegmentFinder(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_CHARACTER_LINEFEED = 2; // 0x2 + field public static final int FLAG_CHARACTER_PUNCTUATION = 4; // 0x4 + field public static final int FLAG_CHARACTER_WHITESPACE = 1; // 0x1 + field public static final int FLAG_LINE_IS_RTL = 8; // 0x8 + } + + public static final class TextBoundsInfo.Builder { + ctor public TextBoundsInfo.Builder(int, int); + method @NonNull public android.view.inputmethod.TextBoundsInfo build(); + method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder clear(); + method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setCharacterBidiLevel(@NonNull int[]); + method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setCharacterBounds(@NonNull float[]); + method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setCharacterFlags(@NonNull int[]); + method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setGraphemeSegmentFinder(@NonNull android.text.SegmentFinder); + method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setLineSegmentFinder(@NonNull android.text.SegmentFinder); + method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setMatrix(@NonNull android.graphics.Matrix); + method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setStartAndEnd(@IntRange(from=0) int, @IntRange(from=0) int); + method @NonNull public android.view.inputmethod.TextBoundsInfo.Builder setWordSegmentFinder(@NonNull android.text.SegmentFinder); + } + + public final class TextBoundsInfoResult { + ctor public TextBoundsInfoResult(int); + ctor public TextBoundsInfoResult(int, @Nullable android.view.inputmethod.TextBoundsInfo); + method public int getResultCode(); + method @Nullable public android.view.inputmethod.TextBoundsInfo getTextBoundsInfo(); + field public static final int CODE_CANCELLED = 3; // 0x3 + field public static final int CODE_FAILED = 2; // 0x2 + field public static final int CODE_SUCCESS = 1; // 0x1 + field public static final int CODE_UNSUPPORTED = 0; // 0x0 + } + + public final class TextSnapshot { + ctor public TextSnapshot(@NonNull android.view.inputmethod.SurroundingText, @IntRange(from=0xffffffff) int, @IntRange(from=0xffffffff) int, int); + method @IntRange(from=0xffffffff) public int getCompositionEnd(); + method @IntRange(from=0xffffffff) public int getCompositionStart(); + method public int getCursorCapsMode(); + method @IntRange(from=0xffffffff) public int getSelectionEnd(); + method @IntRange(from=0xffffffff) public int getSelectionStart(); + method @NonNull public android.view.inputmethod.SurroundingText getSurroundingText(); + } + +} + +package android.view.inspector { + + public interface InspectionCompanion { + method public void mapProperties(@NonNull android.view.inspector.PropertyMapper); + method public void readProperties(@NonNull T, @NonNull android.view.inspector.PropertyReader); + } + + public static class InspectionCompanion.UninitializedPropertyMapException extends java.lang.RuntimeException { + ctor public InspectionCompanion.UninitializedPropertyMapException(); + } + + public interface InspectionCompanionProvider { + method @Nullable public android.view.inspector.InspectionCompanion provide(@NonNull Class); + } + + public final class IntFlagMapping { + ctor public IntFlagMapping(); + method public void add(int, int, @NonNull String); + method @NonNull public java.util.Set get(int); + } + + public interface PropertyMapper { + method public int mapBoolean(@NonNull String, @AttrRes int); + method public int mapByte(@NonNull String, @AttrRes int); + method public int mapChar(@NonNull String, @AttrRes int); + method public int mapColor(@NonNull String, @AttrRes int); + method public int mapDouble(@NonNull String, @AttrRes int); + method public int mapFloat(@NonNull String, @AttrRes int); + method public int mapGravity(@NonNull String, @AttrRes int); + method public int mapInt(@NonNull String, @AttrRes int); + method public int mapIntEnum(@NonNull String, @AttrRes int, @NonNull java.util.function.IntFunction); + method public int mapIntFlag(@NonNull String, @AttrRes int, @NonNull java.util.function.IntFunction>); + method public int mapLong(@NonNull String, @AttrRes int); + method public int mapObject(@NonNull String, @AttrRes int); + method public int mapResourceId(@NonNull String, @AttrRes int); + method public int mapShort(@NonNull String, @AttrRes int); + } + + public static class PropertyMapper.PropertyConflictException extends java.lang.RuntimeException { + ctor public PropertyMapper.PropertyConflictException(@NonNull String, @NonNull String, @NonNull String); + } + + public interface PropertyReader { + method public void readBoolean(int, boolean); + method public void readByte(int, byte); + method public void readChar(int, char); + method public void readColor(int, @ColorInt int); + method public void readColor(int, @ColorLong long); + method public void readColor(int, @Nullable android.graphics.Color); + method public void readDouble(int, double); + method public void readFloat(int, float); + method public void readGravity(int, int); + method public void readInt(int, int); + method public void readIntEnum(int, int); + method public void readIntFlag(int, int); + method public void readLong(int, long); + method public void readObject(int, @Nullable Object); + method public void readResourceId(int, @AnyRes int); + method public void readShort(int, short); + } + + public static class PropertyReader.PropertyTypeMismatchException extends java.lang.RuntimeException { + ctor public PropertyReader.PropertyTypeMismatchException(int, @NonNull String, @NonNull String, @Nullable String); + ctor public PropertyReader.PropertyTypeMismatchException(int, @NonNull String, @NonNull String); + } + + public class StaticInspectionCompanionProvider implements android.view.inspector.InspectionCompanionProvider { + ctor public StaticInspectionCompanionProvider(); + method @Nullable public android.view.inspector.InspectionCompanion provide(@NonNull Class); + } + + public final class WindowInspector { + method @NonNull public static java.util.List getGlobalWindowViews(); + } + +} + +package android.view.textclassifier { + + public final class ConversationAction implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public android.app.RemoteAction getAction(); + method @FloatRange(from=0, to=1) public float getConfidenceScore(); + method @NonNull public android.os.Bundle getExtras(); + method @Nullable public CharSequence getTextReply(); + method @NonNull public String getType(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String TYPE_CALL_PHONE = "call_phone"; + field public static final String TYPE_CREATE_REMINDER = "create_reminder"; + field public static final String TYPE_OPEN_URL = "open_url"; + field public static final String TYPE_SEND_EMAIL = "send_email"; + field public static final String TYPE_SEND_SMS = "send_sms"; + field public static final String TYPE_SHARE_LOCATION = "share_location"; + field public static final String TYPE_TEXT_REPLY = "text_reply"; + field public static final String TYPE_TRACK_FLIGHT = "track_flight"; + field public static final String TYPE_VIEW_CALENDAR = "view_calendar"; + field public static final String TYPE_VIEW_MAP = "view_map"; + } + + public static final class ConversationAction.Builder { + ctor public ConversationAction.Builder(@NonNull String); + method @NonNull public android.view.textclassifier.ConversationAction build(); + method @NonNull public android.view.textclassifier.ConversationAction.Builder setAction(@Nullable android.app.RemoteAction); + method @NonNull public android.view.textclassifier.ConversationAction.Builder setConfidenceScore(@FloatRange(from=0, to=1) float); + method @NonNull public android.view.textclassifier.ConversationAction.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.view.textclassifier.ConversationAction.Builder setTextReply(@Nullable CharSequence); + } + + public final class ConversationActions implements android.os.Parcelable { + ctor public ConversationActions(@NonNull java.util.List, @Nullable String); + method public int describeContents(); + method @NonNull public java.util.List getConversationActions(); + method @Nullable public String getId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class ConversationActions.Message implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.app.Person getAuthor(); + method @NonNull public android.os.Bundle getExtras(); + method @Nullable public java.time.ZonedDateTime getReferenceTime(); + method @Nullable public CharSequence getText(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @NonNull public static final android.app.Person PERSON_USER_OTHERS; + field @NonNull public static final android.app.Person PERSON_USER_SELF; + } + + public static final class ConversationActions.Message.Builder { + ctor public ConversationActions.Message.Builder(@NonNull android.app.Person); + method @NonNull public android.view.textclassifier.ConversationActions.Message build(); + method @NonNull public android.view.textclassifier.ConversationActions.Message.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.view.textclassifier.ConversationActions.Message.Builder setReferenceTime(@Nullable java.time.ZonedDateTime); + method @NonNull public android.view.textclassifier.ConversationActions.Message.Builder setText(@Nullable CharSequence); + } + + public static final class ConversationActions.Request implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getCallingPackageName(); + method @NonNull public java.util.List getConversation(); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public java.util.List getHints(); + method @IntRange(from=0xffffffff) public int getMaxSuggestions(); + method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig getTypeConfig(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String HINT_FOR_IN_APP = "in_app"; + field public static final String HINT_FOR_NOTIFICATION = "notification"; + } + + public static final class ConversationActions.Request.Builder { + ctor public ConversationActions.Request.Builder(@NonNull java.util.List); + method @NonNull public android.view.textclassifier.ConversationActions.Request build(); + method @NonNull public android.view.textclassifier.ConversationActions.Request.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.view.textclassifier.ConversationActions.Request.Builder setHints(@Nullable java.util.List); + method @NonNull public android.view.textclassifier.ConversationActions.Request.Builder setMaxSuggestions(@IntRange(from=0xffffffff) int); + method @NonNull public android.view.textclassifier.ConversationActions.Request.Builder setTypeConfig(@Nullable android.view.textclassifier.TextClassifier.EntityConfig); + } + + public final class SelectionEvent implements android.os.Parcelable { + method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionActionEvent(int, int, int); + method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionActionEvent(int, int, int, @NonNull android.view.textclassifier.TextClassification); + method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int); + method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int, @NonNull android.view.textclassifier.TextClassification); + method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionModifiedEvent(int, int, @NonNull android.view.textclassifier.TextSelection); + method @NonNull public static android.view.textclassifier.SelectionEvent createSelectionStartedEvent(int, int); + method public int describeContents(); + method public long getDurationSincePreviousEvent(); + method public long getDurationSinceSessionStart(); + method public int getEnd(); + method @NonNull public String getEntityType(); + method public int getEventIndex(); + method public long getEventTime(); + method public int getEventType(); + method public int getInvocationMethod(); + method @NonNull public String getPackageName(); + method @Nullable public String getResultId(); + method @Nullable public android.view.textclassifier.TextClassificationSessionId getSessionId(); + method public int getSmartEnd(); + method public int getSmartStart(); + method public int getStart(); + method @NonNull public String getWidgetType(); + method @Nullable public String getWidgetVersion(); + method public static boolean isTerminal(int); + method public void writeToParcel(android.os.Parcel, int); + field public static final int ACTION_ABANDON = 107; // 0x6b + field public static final int ACTION_COPY = 101; // 0x65 + field public static final int ACTION_CUT = 103; // 0x67 + field public static final int ACTION_DRAG = 106; // 0x6a + field public static final int ACTION_OTHER = 108; // 0x6c + field public static final int ACTION_OVERTYPE = 100; // 0x64 + field public static final int ACTION_PASTE = 102; // 0x66 + field public static final int ACTION_RESET = 201; // 0xc9 + field public static final int ACTION_SELECT_ALL = 200; // 0xc8 + field public static final int ACTION_SHARE = 104; // 0x68 + field public static final int ACTION_SMART_SHARE = 105; // 0x69 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int EVENT_AUTO_SELECTION = 5; // 0x5 + field public static final int EVENT_SELECTION_MODIFIED = 2; // 0x2 + field public static final int EVENT_SELECTION_STARTED = 1; // 0x1 + field public static final int EVENT_SMART_SELECTION_MULTI = 4; // 0x4 + field public static final int EVENT_SMART_SELECTION_SINGLE = 3; // 0x3 + field public static final int INVOCATION_LINK = 2; // 0x2 + field public static final int INVOCATION_MANUAL = 1; // 0x1 + field public static final int INVOCATION_UNKNOWN = 0; // 0x0 + } + + public final class TextClassification implements android.os.Parcelable { + method public int describeContents(); + method public java.util.List getActions(); + method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(String); + method @NonNull public String getEntity(int); + method @IntRange(from=0) public int getEntityCount(); + method @NonNull public android.os.Bundle getExtras(); + method @Deprecated @Nullable public android.graphics.drawable.Drawable getIcon(); + method @Nullable public String getId(); + method @Deprecated @Nullable public android.content.Intent getIntent(); + method @Deprecated @Nullable public CharSequence getLabel(); + method @Deprecated @Nullable public android.view.View.OnClickListener getOnClickListener(); + method @Nullable public String getText(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextClassification.Builder { + ctor public TextClassification.Builder(); + method @NonNull public android.view.textclassifier.TextClassification.Builder addAction(@NonNull android.app.RemoteAction); + method @NonNull public android.view.textclassifier.TextClassification build(); + method @NonNull public android.view.textclassifier.TextClassification.Builder setEntityType(@NonNull String, @FloatRange(from=0.0, to=1.0) float); + method @NonNull public android.view.textclassifier.TextClassification.Builder setExtras(@Nullable android.os.Bundle); + method @Deprecated @NonNull public android.view.textclassifier.TextClassification.Builder setIcon(@Nullable android.graphics.drawable.Drawable); + method @NonNull public android.view.textclassifier.TextClassification.Builder setId(@Nullable String); + method @Deprecated @NonNull public android.view.textclassifier.TextClassification.Builder setIntent(@Nullable android.content.Intent); + method @Deprecated @NonNull public android.view.textclassifier.TextClassification.Builder setLabel(@Nullable String); + method @Deprecated @NonNull public android.view.textclassifier.TextClassification.Builder setOnClickListener(@Nullable android.view.View.OnClickListener); + method @NonNull public android.view.textclassifier.TextClassification.Builder setText(@Nullable String); + } + + public static final class TextClassification.Request implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getCallingPackageName(); + method @Nullable public android.os.LocaleList getDefaultLocales(); + method @IntRange(from=0) public int getEndIndex(); + method @NonNull public android.os.Bundle getExtras(); + method @Nullable public java.time.ZonedDateTime getReferenceTime(); + method @IntRange(from=0) public int getStartIndex(); + method @NonNull public CharSequence getText(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextClassification.Request.Builder { + ctor public TextClassification.Request.Builder(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int); + method @NonNull public android.view.textclassifier.TextClassification.Request build(); + method @NonNull public android.view.textclassifier.TextClassification.Request.Builder setDefaultLocales(@Nullable android.os.LocaleList); + method @NonNull public android.view.textclassifier.TextClassification.Request.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.view.textclassifier.TextClassification.Request.Builder setReferenceTime(@Nullable java.time.ZonedDateTime); + } + + public final class TextClassificationContext implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getPackageName(); + method @NonNull public String getWidgetType(); + method @Nullable public String getWidgetVersion(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextClassificationContext.Builder { + ctor public TextClassificationContext.Builder(@NonNull String, @NonNull String); + method @NonNull public android.view.textclassifier.TextClassificationContext build(); + method public android.view.textclassifier.TextClassificationContext.Builder setWidgetVersion(@Nullable String); + } + + public final class TextClassificationManager { + method @NonNull public android.view.textclassifier.TextClassifier createTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext); + method @NonNull public android.view.textclassifier.TextClassifier getTextClassifier(); + method public void setTextClassificationSessionFactory(@Nullable android.view.textclassifier.TextClassificationSessionFactory); + method public void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier); + } + + public interface TextClassificationSessionFactory { + method @NonNull public android.view.textclassifier.TextClassifier createTextClassificationSession(@NonNull android.view.textclassifier.TextClassificationContext); + } + + public final class TextClassificationSessionId implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public String getValue(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface TextClassifier { + method @NonNull @WorkerThread public default android.view.textclassifier.TextClassification classifyText(@NonNull android.view.textclassifier.TextClassification.Request); + method @NonNull @WorkerThread public default android.view.textclassifier.TextClassification classifyText(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.os.LocaleList); + method public default void destroy(); + method @NonNull @WorkerThread public default android.view.textclassifier.TextLanguage detectLanguage(@NonNull android.view.textclassifier.TextLanguage.Request); + method @NonNull @WorkerThread public default android.view.textclassifier.TextLinks generateLinks(@NonNull android.view.textclassifier.TextLinks.Request); + method @WorkerThread public default int getMaxGenerateLinksTextLength(); + method public default boolean isDestroyed(); + method public default void onSelectionEvent(@NonNull android.view.textclassifier.SelectionEvent); + method public default void onTextClassifierEvent(@NonNull android.view.textclassifier.TextClassifierEvent); + method @NonNull @WorkerThread public default android.view.textclassifier.ConversationActions suggestConversationActions(@NonNull android.view.textclassifier.ConversationActions.Request); + method @NonNull @WorkerThread public default android.view.textclassifier.TextSelection suggestSelection(@NonNull android.view.textclassifier.TextSelection.Request); + method @NonNull @WorkerThread public default android.view.textclassifier.TextSelection suggestSelection(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int, @Nullable android.os.LocaleList); + field public static final String EXTRA_FROM_TEXT_CLASSIFIER = "android.view.textclassifier.extra.FROM_TEXT_CLASSIFIER"; + field @FlaggedApi("android.permission.flags.text_classifier_choice_api_enabled") public static final String EXTRA_TEXT_ORIGIN_PACKAGE = "android.view.textclassifier.extra.TEXT_ORIGIN_PACKAGE"; + field public static final String HINT_TEXT_IS_EDITABLE = "android.text_is_editable"; + field public static final String HINT_TEXT_IS_NOT_EDITABLE = "android.text_is_not_editable"; + field public static final android.view.textclassifier.TextClassifier NO_OP; + field public static final String TYPE_ADDRESS = "address"; + field public static final String TYPE_DATE = "date"; + field public static final String TYPE_DATE_TIME = "datetime"; + field public static final String TYPE_EMAIL = "email"; + field public static final String TYPE_FLIGHT_NUMBER = "flight"; + field public static final String TYPE_OTHER = "other"; + field @FlaggedApi("android.permission.flags.text_classifier_choice_api_enabled") public static final String TYPE_OTP = "otp"; + field public static final String TYPE_PHONE = "phone"; + field public static final String TYPE_UNKNOWN = ""; + field public static final String TYPE_URL = "url"; + field public static final String WIDGET_TYPE_CLIPBOARD = "clipboard"; + field public static final String WIDGET_TYPE_CUSTOM_EDITTEXT = "customedit"; + field public static final String WIDGET_TYPE_CUSTOM_TEXTVIEW = "customview"; + field public static final String WIDGET_TYPE_CUSTOM_UNSELECTABLE_TEXTVIEW = "nosel-customview"; + field public static final String WIDGET_TYPE_EDITTEXT = "edittext"; + field public static final String WIDGET_TYPE_EDIT_WEBVIEW = "edit-webview"; + field public static final String WIDGET_TYPE_NOTIFICATION = "notification"; + field public static final String WIDGET_TYPE_TEXTVIEW = "textview"; + field public static final String WIDGET_TYPE_UNKNOWN = "unknown"; + field public static final String WIDGET_TYPE_UNSELECTABLE_TEXTVIEW = "nosel-textview"; + field public static final String WIDGET_TYPE_WEBVIEW = "webview"; + } + + public static final class TextClassifier.EntityConfig implements android.os.Parcelable { + method @Deprecated public static android.view.textclassifier.TextClassifier.EntityConfig create(@Nullable java.util.Collection, @Nullable java.util.Collection, @Nullable java.util.Collection); + method @Deprecated public static android.view.textclassifier.TextClassifier.EntityConfig createWithExplicitEntityList(@Nullable java.util.Collection); + method @Deprecated public static android.view.textclassifier.TextClassifier.EntityConfig createWithHints(@Nullable java.util.Collection); + method public int describeContents(); + method public java.util.Collection getHints(); + method public java.util.Collection resolveEntityListModifications(@NonNull java.util.Collection); + method public boolean shouldIncludeTypesFromTextClassifier(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextClassifier.EntityConfig.Builder { + ctor public TextClassifier.EntityConfig.Builder(); + method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig build(); + method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig.Builder includeTypesFromTextClassifier(boolean); + method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig.Builder setExcludedTypes(@Nullable java.util.Collection); + method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig.Builder setHints(@Nullable java.util.Collection); + method @NonNull public android.view.textclassifier.TextClassifier.EntityConfig.Builder setIncludedTypes(@Nullable java.util.Collection); + } + + public abstract class TextClassifierEvent implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public int[] getActionIndices(); + method @NonNull public String[] getEntityTypes(); + method public int getEventCategory(); + method @Nullable public android.view.textclassifier.TextClassificationContext getEventContext(); + method public int getEventIndex(); + method public int getEventType(); + method @NonNull public android.os.Bundle getExtras(); + method @Nullable public android.icu.util.ULocale getLocale(); + method @Nullable public String getModelName(); + method @Nullable public String getResultId(); + method @NonNull public float[] getScores(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int CATEGORY_CONVERSATION_ACTIONS = 3; // 0x3 + field public static final int CATEGORY_LANGUAGE_DETECTION = 4; // 0x4 + field public static final int CATEGORY_LINKIFY = 2; // 0x2 + field public static final int CATEGORY_SELECTION = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_ACTIONS_GENERATED = 20; // 0x14 + field public static final int TYPE_ACTIONS_SHOWN = 6; // 0x6 + field public static final int TYPE_AUTO_SELECTION = 5; // 0x5 + field public static final int TYPE_COPY_ACTION = 9; // 0x9 + field public static final int TYPE_CUT_ACTION = 11; // 0xb + field public static final int TYPE_LINKS_GENERATED = 21; // 0x15 + field public static final int TYPE_LINK_CLICKED = 7; // 0x7 + field public static final int TYPE_MANUAL_REPLY = 19; // 0x13 + field public static final int TYPE_OTHER_ACTION = 16; // 0x10 + field public static final int TYPE_OVERTYPE = 8; // 0x8 + field public static final int TYPE_PASTE_ACTION = 10; // 0xa + field public static final int TYPE_SELECTION_DESTROYED = 15; // 0xf + field public static final int TYPE_SELECTION_DRAG = 14; // 0xe + field public static final int TYPE_SELECTION_MODIFIED = 2; // 0x2 + field public static final int TYPE_SELECTION_RESET = 18; // 0x12 + field public static final int TYPE_SELECTION_STARTED = 1; // 0x1 + field public static final int TYPE_SELECT_ALL = 17; // 0x11 + field public static final int TYPE_SHARE_ACTION = 12; // 0xc + field public static final int TYPE_SMART_ACTION = 13; // 0xd + field public static final int TYPE_SMART_SELECTION_MULTI = 4; // 0x4 + field public static final int TYPE_SMART_SELECTION_SINGLE = 3; // 0x3 + } + + public abstract static class TextClassifierEvent.Builder> { + method @NonNull public T setActionIndices(@NonNull int...); + method @NonNull public T setEntityTypes(@NonNull java.lang.String...); + method @NonNull public T setEventContext(@Nullable android.view.textclassifier.TextClassificationContext); + method @NonNull public T setEventIndex(int); + method @NonNull public T setExtras(@NonNull android.os.Bundle); + method @NonNull public T setLocale(@Nullable android.icu.util.ULocale); + method @NonNull public T setModelName(@Nullable String); + method @NonNull public T setResultId(@Nullable String); + method @NonNull public T setScores(@NonNull float...); + } + + public static final class TextClassifierEvent.ConversationActionsEvent extends android.view.textclassifier.TextClassifierEvent implements android.os.Parcelable { + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextClassifierEvent.ConversationActionsEvent.Builder extends android.view.textclassifier.TextClassifierEvent.Builder { + ctor public TextClassifierEvent.ConversationActionsEvent.Builder(int); + method @NonNull public android.view.textclassifier.TextClassifierEvent.ConversationActionsEvent build(); + } + + public static final class TextClassifierEvent.LanguageDetectionEvent extends android.view.textclassifier.TextClassifierEvent implements android.os.Parcelable { + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextClassifierEvent.LanguageDetectionEvent.Builder extends android.view.textclassifier.TextClassifierEvent.Builder { + ctor public TextClassifierEvent.LanguageDetectionEvent.Builder(int); + method @NonNull public android.view.textclassifier.TextClassifierEvent.LanguageDetectionEvent build(); + } + + public static final class TextClassifierEvent.TextLinkifyEvent extends android.view.textclassifier.TextClassifierEvent implements android.os.Parcelable { + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextClassifierEvent.TextLinkifyEvent.Builder extends android.view.textclassifier.TextClassifierEvent.Builder { + ctor public TextClassifierEvent.TextLinkifyEvent.Builder(int); + method @NonNull public android.view.textclassifier.TextClassifierEvent.TextLinkifyEvent build(); + } + + public static final class TextClassifierEvent.TextSelectionEvent extends android.view.textclassifier.TextClassifierEvent implements android.os.Parcelable { + method public int getRelativeSuggestedWordEndIndex(); + method public int getRelativeSuggestedWordStartIndex(); + method public int getRelativeWordEndIndex(); + method public int getRelativeWordStartIndex(); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextClassifierEvent.TextSelectionEvent.Builder extends android.view.textclassifier.TextClassifierEvent.Builder { + ctor public TextClassifierEvent.TextSelectionEvent.Builder(int); + method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent build(); + method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent.Builder setRelativeSuggestedWordEndIndex(int); + method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent.Builder setRelativeSuggestedWordStartIndex(int); + method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent.Builder setRelativeWordEndIndex(int); + method @NonNull public android.view.textclassifier.TextClassifierEvent.TextSelectionEvent.Builder setRelativeWordStartIndex(int); + } + + public final class TextLanguage implements android.os.Parcelable { + method public int describeContents(); + method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(@NonNull android.icu.util.ULocale); + method @NonNull public android.os.Bundle getExtras(); + method @Nullable public String getId(); + method @NonNull public android.icu.util.ULocale getLocale(int); + method @IntRange(from=0) public int getLocaleHypothesisCount(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextLanguage.Builder { + ctor public TextLanguage.Builder(); + method @NonNull public android.view.textclassifier.TextLanguage build(); + method @NonNull public android.view.textclassifier.TextLanguage.Builder putLocale(@NonNull android.icu.util.ULocale, @FloatRange(from=0.0, to=1.0) float); + method @NonNull public android.view.textclassifier.TextLanguage.Builder setExtras(@NonNull android.os.Bundle); + method @NonNull public android.view.textclassifier.TextLanguage.Builder setId(@Nullable String); + } + + public static final class TextLanguage.Request implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getCallingPackageName(); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public CharSequence getText(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextLanguage.Request.Builder { + ctor public TextLanguage.Request.Builder(@NonNull CharSequence); + method @NonNull public android.view.textclassifier.TextLanguage.Request build(); + method @NonNull public android.view.textclassifier.TextLanguage.Request.Builder setExtras(@NonNull android.os.Bundle); + } + + public final class TextLinks implements android.os.Parcelable { + method public int apply(@NonNull android.text.Spannable, int, @Nullable java.util.function.Function); + method public int describeContents(); + method @NonNull public android.os.Bundle getExtras(); + method @NonNull public java.util.Collection getLinks(); + method @NonNull public CharSequence getText(); + method public void writeToParcel(android.os.Parcel, int); + field public static final int APPLY_STRATEGY_IGNORE = 0; // 0x0 + field public static final int APPLY_STRATEGY_REPLACE = 1; // 0x1 + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STATUS_DIFFERENT_TEXT = 3; // 0x3 + field public static final int STATUS_LINKS_APPLIED = 0; // 0x0 + field public static final int STATUS_NO_LINKS_APPLIED = 2; // 0x2 + field public static final int STATUS_NO_LINKS_FOUND = 1; // 0x1 + field public static final int STATUS_UNSUPPORTED_CHARACTER = 4; // 0x4 + } + + public static final class TextLinks.Builder { + ctor public TextLinks.Builder(@NonNull String); + method @NonNull public android.view.textclassifier.TextLinks.Builder addLink(int, int, @NonNull java.util.Map); + method @NonNull public android.view.textclassifier.TextLinks.Builder addLink(int, int, @NonNull java.util.Map, @NonNull android.os.Bundle); + method @NonNull public android.view.textclassifier.TextLinks build(); + method @NonNull public android.view.textclassifier.TextLinks.Builder clearTextLinks(); + method @NonNull public android.view.textclassifier.TextLinks.Builder setExtras(@Nullable android.os.Bundle); + } + + public static final class TextLinks.Request implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getCallingPackageName(); + method @Nullable public android.os.LocaleList getDefaultLocales(); + method @Nullable public android.view.textclassifier.TextClassifier.EntityConfig getEntityConfig(); + method @NonNull public android.os.Bundle getExtras(); + method @Nullable public java.time.ZonedDateTime getReferenceTime(); + method @NonNull public CharSequence getText(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextLinks.Request.Builder { + ctor public TextLinks.Request.Builder(@NonNull CharSequence); + method @NonNull public android.view.textclassifier.TextLinks.Request build(); + method @NonNull public android.view.textclassifier.TextLinks.Request.Builder setDefaultLocales(@Nullable android.os.LocaleList); + method @NonNull public android.view.textclassifier.TextLinks.Request.Builder setEntityConfig(@Nullable android.view.textclassifier.TextClassifier.EntityConfig); + method public android.view.textclassifier.TextLinks.Request.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.view.textclassifier.TextLinks.Request.Builder setReferenceTime(@Nullable java.time.ZonedDateTime); + } + + public static final class TextLinks.TextLink implements android.os.Parcelable { + method public int describeContents(); + method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(String); + method public int getEnd(); + method @NonNull public String getEntity(int); + method public int getEntityCount(); + method @NonNull public android.os.Bundle getExtras(); + method public int getStart(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static class TextLinks.TextLinkSpan extends android.text.style.ClickableSpan { + ctor public TextLinks.TextLinkSpan(@NonNull android.view.textclassifier.TextLinks.TextLink); + method public final android.view.textclassifier.TextLinks.TextLink getTextLink(); + method public void onClick(android.view.View); + } + + public final class TextSelection implements android.os.Parcelable { + method public int describeContents(); + method @FloatRange(from=0.0, to=1.0) public float getConfidenceScore(String); + method @NonNull public String getEntity(int); + method @IntRange(from=0) public int getEntityCount(); + method @NonNull public android.os.Bundle getExtras(); + method @Nullable public String getId(); + method public int getSelectionEndIndex(); + method public int getSelectionStartIndex(); + method @Nullable public android.view.textclassifier.TextClassification getTextClassification(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextSelection.Builder { + ctor public TextSelection.Builder(@IntRange(from=0) int, @IntRange(from=0) int); + method @NonNull public android.view.textclassifier.TextSelection build(); + method @NonNull public android.view.textclassifier.TextSelection.Builder setEntityType(@NonNull String, @FloatRange(from=0.0, to=1.0) float); + method @NonNull public android.view.textclassifier.TextSelection.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.view.textclassifier.TextSelection.Builder setId(@Nullable String); + method @NonNull public android.view.textclassifier.TextSelection.Builder setTextClassification(@Nullable android.view.textclassifier.TextClassification); + } + + public static final class TextSelection.Request implements android.os.Parcelable { + method public int describeContents(); + method @Nullable public String getCallingPackageName(); + method @Nullable public android.os.LocaleList getDefaultLocales(); + method @IntRange(from=0) public int getEndIndex(); + method @NonNull public android.os.Bundle getExtras(); + method @IntRange(from=0) public int getStartIndex(); + method @NonNull public CharSequence getText(); + method public boolean shouldIncludeTextClassification(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class TextSelection.Request.Builder { + ctor public TextSelection.Request.Builder(@NonNull CharSequence, @IntRange(from=0) int, @IntRange(from=0) int); + method @NonNull public android.view.textclassifier.TextSelection.Request build(); + method @NonNull public android.view.textclassifier.TextSelection.Request.Builder setDefaultLocales(@Nullable android.os.LocaleList); + method @NonNull public android.view.textclassifier.TextSelection.Request.Builder setExtras(@Nullable android.os.Bundle); + method @NonNull public android.view.textclassifier.TextSelection.Request.Builder setIncludeTextClassification(boolean); + } + +} + +package android.view.textservice { + + public final class SentenceSuggestionsInfo implements android.os.Parcelable { + ctor public SentenceSuggestionsInfo(android.view.textservice.SuggestionsInfo[], int[], int[]); + ctor public SentenceSuggestionsInfo(android.os.Parcel); + method public int describeContents(); + method public int getLengthAt(int); + method public int getOffsetAt(int); + method public int getSuggestionsCount(); + method public android.view.textservice.SuggestionsInfo getSuggestionsInfoAt(int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class SpellCheckerInfo implements android.os.Parcelable { + method public int describeContents(); + method public android.content.ComponentName getComponent(); + method public String getId(); + method public String getPackageName(); + method public android.content.pm.ServiceInfo getServiceInfo(); + method public String getSettingsActivity(); + method public android.view.textservice.SpellCheckerSubtype getSubtypeAt(int); + method public int getSubtypeCount(); + method public android.graphics.drawable.Drawable loadIcon(android.content.pm.PackageManager); + method public CharSequence loadLabel(android.content.pm.PackageManager); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public class SpellCheckerSession { + method public void cancel(); + method public void close(); + method public void getSentenceSuggestions(android.view.textservice.TextInfo[], int); + method public android.view.textservice.SpellCheckerInfo getSpellChecker(); + method @Deprecated public void getSuggestions(android.view.textservice.TextInfo, int); + method @Deprecated public void getSuggestions(android.view.textservice.TextInfo[], int, boolean); + method public boolean isSessionDisconnected(); + field public static final String SERVICE_META_DATA = "android.view.textservice.scs"; + } + + public static interface SpellCheckerSession.SpellCheckerSessionListener { + method public void onGetSentenceSuggestions(android.view.textservice.SentenceSuggestionsInfo[]); + method public void onGetSuggestions(android.view.textservice.SuggestionsInfo[]); + } + + public static class SpellCheckerSession.SpellCheckerSessionParams { + method @NonNull public android.os.Bundle getExtras(); + method @Nullable public java.util.Locale getLocale(); + method public int getSupportedAttributes(); + method public boolean shouldReferToSpellCheckerLanguageSettings(); + } + + public static final class SpellCheckerSession.SpellCheckerSessionParams.Builder { + ctor public SpellCheckerSession.SpellCheckerSessionParams.Builder(); + method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams build(); + method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams.Builder setExtras(@NonNull android.os.Bundle); + method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams.Builder setLocale(@Nullable java.util.Locale); + method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams.Builder setShouldReferToSpellCheckerLanguageSettings(boolean); + method @NonNull public android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams.Builder setSupportedAttributes(int); + } + + public final class SpellCheckerSubtype implements android.os.Parcelable { + ctor @Deprecated public SpellCheckerSubtype(int, String, String); + method public boolean containsExtraValueKey(String); + method public int describeContents(); + method public CharSequence getDisplayName(android.content.Context, String, android.content.pm.ApplicationInfo); + method public String getExtraValue(); + method public String getExtraValueOf(String); + method @NonNull public String getLanguageTag(); + method @Deprecated @NonNull public String getLocale(); + method public int getNameResId(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class SuggestionsInfo implements android.os.Parcelable { + ctor public SuggestionsInfo(int, String[]); + ctor public SuggestionsInfo(int, String[], int, int); + ctor public SuggestionsInfo(android.os.Parcel); + method public int describeContents(); + method public int getCookie(); + method public int getSequence(); + method public String getSuggestionAt(int); + method public int getSuggestionsAttributes(); + method public int getSuggestionsCount(); + method public void setCookieAndSequence(int, int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int RESULT_ATTR_DONT_SHOW_UI_FOR_SUGGESTIONS = 16; // 0x10 + field public static final int RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS = 4; // 0x4 + field public static final int RESULT_ATTR_IN_THE_DICTIONARY = 1; // 0x1 + field public static final int RESULT_ATTR_LOOKS_LIKE_GRAMMAR_ERROR = 8; // 0x8 + field public static final int RESULT_ATTR_LOOKS_LIKE_TYPO = 2; // 0x2 + } + + public final class TextInfo implements android.os.Parcelable { + ctor public TextInfo(String); + ctor public TextInfo(String, int, int); + ctor public TextInfo(CharSequence, int, int, int, int); + ctor public TextInfo(android.os.Parcel); + method public int describeContents(); + method public CharSequence getCharSequence(); + method public int getCookie(); + method public int getSequence(); + method public String getText(); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class TextServicesManager { + method @Nullable public android.view.textservice.SpellCheckerInfo getCurrentSpellCheckerInfo(); + method @NonNull public java.util.List getEnabledSpellCheckerInfos(); + method public boolean isSpellCheckerEnabled(); + method @Nullable public android.view.textservice.SpellCheckerSession newSpellCheckerSession(@Nullable android.os.Bundle, @Nullable java.util.Locale, @NonNull android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener, boolean); + method @Nullable public android.view.textservice.SpellCheckerSession newSpellCheckerSession(@NonNull android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams, @NonNull java.util.concurrent.Executor, @NonNull android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener); + } + +} + +package android.view.translation { + + public final class TranslationCapability implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.view.translation.TranslationSpec getSourceSpec(); + method public int getState(); + method public int getSupportedTranslationFlags(); + method @NonNull public android.view.translation.TranslationSpec getTargetSpec(); + method public boolean isUiTranslationEnabled(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int STATE_AVAILABLE_TO_DOWNLOAD = 1; // 0x1 + field public static final int STATE_DOWNLOADING = 2; // 0x2 + field public static final int STATE_NOT_AVAILABLE = 4; // 0x4 + field public static final int STATE_ON_DEVICE = 3; // 0x3 + } + + public final class TranslationContext implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.view.translation.TranslationSpec getSourceSpec(); + method @NonNull public android.view.translation.TranslationSpec getTargetSpec(); + method public int getTranslationFlags(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_DEFINITIONS = 4; // 0x4 + field public static final int FLAG_LOW_LATENCY = 1; // 0x1 + field public static final int FLAG_TRANSLITERATION = 2; // 0x2 + } + + public static final class TranslationContext.Builder { + ctor public TranslationContext.Builder(@NonNull android.view.translation.TranslationSpec, @NonNull android.view.translation.TranslationSpec); + method @NonNull public android.view.translation.TranslationContext build(); + method @NonNull public android.view.translation.TranslationContext.Builder setTranslationFlags(int); + } + + public final class TranslationManager { + method public void addOnDeviceTranslationCapabilityUpdateListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method public void createOnDeviceTranslator(@NonNull android.view.translation.TranslationContext, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + method @NonNull @WorkerThread public java.util.Set getOnDeviceTranslationCapabilities(int, int); + method @Nullable public android.app.PendingIntent getOnDeviceTranslationSettingsActivityIntent(); + method public void removeOnDeviceTranslationCapabilityUpdateListener(@NonNull java.util.function.Consumer); + } + + public final class TranslationRequest implements android.os.Parcelable { + method public int describeContents(); + method public int getFlags(); + method @NonNull public java.util.List getTranslationRequestValues(); + method @NonNull public java.util.List getViewTranslationRequests(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int FLAG_DICTIONARY_RESULT = 2; // 0x2 + field public static final int FLAG_PARTIAL_RESPONSES = 8; // 0x8 + field public static final int FLAG_TRANSLATION_RESULT = 1; // 0x1 + field public static final int FLAG_TRANSLITERATION_RESULT = 4; // 0x4 + } + + public static final class TranslationRequest.Builder { + ctor public TranslationRequest.Builder(); + method @NonNull public android.view.translation.TranslationRequest build(); + method @NonNull public android.view.translation.TranslationRequest.Builder setFlags(int); + method @NonNull public android.view.translation.TranslationRequest.Builder setTranslationRequestValues(@NonNull java.util.List); + method @NonNull public android.view.translation.TranslationRequest.Builder setViewTranslationRequests(@NonNull java.util.List); + } + + public final class TranslationRequestValue implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public static android.view.translation.TranslationRequestValue forText(@NonNull CharSequence); + method @Nullable public CharSequence getText(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public final class TranslationResponse implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.util.SparseArray getTranslationResponseValues(); + method public int getTranslationStatus(); + method @NonNull public android.util.SparseArray getViewTranslationResponses(); + method public boolean isFinalResponse(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TRANSLATION_STATUS_CONTEXT_UNSUPPORTED = 2; // 0x2 + field public static final int TRANSLATION_STATUS_SUCCESS = 0; // 0x0 + field public static final int TRANSLATION_STATUS_UNKNOWN_ERROR = 1; // 0x1 + } + + public static final class TranslationResponse.Builder { + ctor public TranslationResponse.Builder(int); + method @NonNull public android.view.translation.TranslationResponse build(); + method @NonNull public android.view.translation.TranslationResponse.Builder setFinalResponse(boolean); + method @NonNull public android.view.translation.TranslationResponse.Builder setTranslationResponseValue(int, @NonNull android.view.translation.TranslationResponseValue); + method @NonNull public android.view.translation.TranslationResponse.Builder setTranslationResponseValues(@NonNull android.util.SparseArray); + method @NonNull public android.view.translation.TranslationResponse.Builder setViewTranslationResponse(int, @NonNull android.view.translation.ViewTranslationResponse); + method @NonNull public android.view.translation.TranslationResponse.Builder setViewTranslationResponses(@NonNull android.util.SparseArray); + } + + public final class TranslationResponseValue implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public static android.view.translation.TranslationResponseValue forError(); + method @NonNull public android.os.Bundle getExtras(); + method public int getStatusCode(); + method @Nullable public CharSequence getText(); + method @Nullable public CharSequence getTransliteration(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String EXTRA_DEFINITIONS = "android.view.translation.extra.DEFINITIONS"; + field public static final int STATUS_ERROR = 1; // 0x1 + field public static final int STATUS_SUCCESS = 0; // 0x0 + } + + public static final class TranslationResponseValue.Builder { + ctor public TranslationResponseValue.Builder(int); + method @NonNull public android.view.translation.TranslationResponseValue build(); + method @NonNull public android.view.translation.TranslationResponseValue.Builder setExtras(@NonNull android.os.Bundle); + method @NonNull public android.view.translation.TranslationResponseValue.Builder setText(@NonNull CharSequence); + method @NonNull public android.view.translation.TranslationResponseValue.Builder setTransliteration(@NonNull CharSequence); + } + + public final class TranslationSpec implements android.os.Parcelable { + ctor public TranslationSpec(@NonNull android.icu.util.ULocale, int); + method public int describeContents(); + method public int getDataFormat(); + method @NonNull public android.icu.util.ULocale getLocale(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int DATA_FORMAT_TEXT = 1; // 0x1 + } + + public class Translator { + method public void destroy(); + method public boolean isDestroyed(); + method @Nullable public void translate(@NonNull android.view.translation.TranslationRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); + } + + public final class UiTranslationManager { + method public void registerUiTranslationStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.view.translation.UiTranslationStateCallback); + method public void unregisterUiTranslationStateCallback(@NonNull android.view.translation.UiTranslationStateCallback); + } + + public interface UiTranslationStateCallback { + method public void onFinished(); + method public default void onFinished(@NonNull String); + method public void onPaused(); + method public default void onPaused(@NonNull String); + method public default void onResumed(@NonNull android.icu.util.ULocale, @NonNull android.icu.util.ULocale); + method public default void onResumed(@NonNull android.icu.util.ULocale, @NonNull android.icu.util.ULocale, @NonNull String); + method public default void onStarted(@NonNull android.icu.util.ULocale, @NonNull android.icu.util.ULocale); + method public default void onStarted(@NonNull android.icu.util.ULocale, @NonNull android.icu.util.ULocale, @NonNull String); + } + + @UiThread public interface ViewTranslationCallback { + method public boolean onClearTranslation(@NonNull android.view.View); + method public boolean onHideTranslation(@NonNull android.view.View); + method public boolean onShowTranslation(@NonNull android.view.View); + } + + public final class ViewTranslationRequest implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.view.autofill.AutofillId getAutofillId(); + method @NonNull public java.util.Set getKeys(); + method @NonNull public android.view.translation.TranslationRequestValue getValue(@NonNull String); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String ID_TEXT = "android:text"; + } + + public static final class ViewTranslationRequest.Builder { + ctor public ViewTranslationRequest.Builder(@NonNull android.view.autofill.AutofillId); + ctor public ViewTranslationRequest.Builder(@NonNull android.view.autofill.AutofillId, long); + method @NonNull public android.view.translation.ViewTranslationRequest build(); + method @NonNull public android.view.translation.ViewTranslationRequest.Builder setValue(@NonNull String, @NonNull android.view.translation.TranslationRequestValue); + } + + public final class ViewTranslationResponse implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.view.autofill.AutofillId getAutofillId(); + method @NonNull public java.util.Set getKeys(); + method @NonNull public android.view.translation.TranslationResponseValue getValue(@NonNull String); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class ViewTranslationResponse.Builder { + ctor public ViewTranslationResponse.Builder(@NonNull android.view.autofill.AutofillId); + method @NonNull public android.view.translation.ViewTranslationResponse build(); + method public android.view.translation.ViewTranslationResponse.Builder setValue(String, android.view.translation.TranslationResponseValue); + } + +} + +package android.webkit { + + public abstract class ClientCertRequest { + ctor public ClientCertRequest(); + method public abstract void cancel(); + method public abstract String getHost(); + method @Nullable public abstract String[] getKeyTypes(); + method public abstract int getPort(); + method @Nullable public abstract java.security.Principal[] getPrincipals(); + method public abstract void ignore(); + method public abstract void proceed(java.security.PrivateKey, java.security.cert.X509Certificate[]); + } + + public class ConsoleMessage { + ctor public ConsoleMessage(String, String, int, android.webkit.ConsoleMessage.MessageLevel); + method public int lineNumber(); + method public String message(); + method public android.webkit.ConsoleMessage.MessageLevel messageLevel(); + method public String sourceId(); + } + + public enum ConsoleMessage.MessageLevel { + enum_constant public static final android.webkit.ConsoleMessage.MessageLevel DEBUG; + enum_constant public static final android.webkit.ConsoleMessage.MessageLevel ERROR; + enum_constant public static final android.webkit.ConsoleMessage.MessageLevel LOG; + enum_constant public static final android.webkit.ConsoleMessage.MessageLevel TIP; + enum_constant public static final android.webkit.ConsoleMessage.MessageLevel WARNING; + } + + public abstract class CookieManager { + ctor @Deprecated public CookieManager(); + method public abstract boolean acceptCookie(); + method public abstract boolean acceptThirdPartyCookies(android.webkit.WebView); + method public static boolean allowFileSchemeCookies(); + method public abstract void flush(); + method public abstract String getCookie(String); + method public static android.webkit.CookieManager getInstance(); + method public abstract boolean hasCookies(); + method @Deprecated public abstract void removeAllCookie(); + method public abstract void removeAllCookies(@Nullable android.webkit.ValueCallback); + method @Deprecated public abstract void removeExpiredCookie(); + method @Deprecated public abstract void removeSessionCookie(); + method public abstract void removeSessionCookies(@Nullable android.webkit.ValueCallback); + method public abstract void setAcceptCookie(boolean); + method @Deprecated public static void setAcceptFileSchemeCookies(boolean); + method public abstract void setAcceptThirdPartyCookies(android.webkit.WebView, boolean); + method public abstract void setCookie(String, String); + method public abstract void setCookie(String, String, @Nullable android.webkit.ValueCallback); + } + + @Deprecated public final class CookieSyncManager implements java.lang.Runnable { + method @Deprecated public static android.webkit.CookieSyncManager createInstance(android.content.Context); + method @Deprecated public static android.webkit.CookieSyncManager getInstance(); + method @Deprecated public void resetSync(); + method @Deprecated public void run(); + method @Deprecated public void startSync(); + method @Deprecated public void stopSync(); + method @Deprecated public void sync(); + method @Deprecated protected void syncFromRamToFlash(); + } + + public class DateSorter { + ctor public DateSorter(android.content.Context); + method public long getBoundary(int); + method public int getIndex(long); + method public String getLabel(int); + field public static final int DAY_COUNT = 5; // 0x5 + } + + public interface DownloadListener { + method public void onDownloadStart(String, String, String, String, long); + } + + public class GeolocationPermissions { + method public void allow(String); + method public void clear(String); + method public void clearAll(); + method public void getAllowed(String, android.webkit.ValueCallback); + method public static android.webkit.GeolocationPermissions getInstance(); + method public void getOrigins(android.webkit.ValueCallback>); + } + + public static interface GeolocationPermissions.Callback { + method public void invoke(String, boolean, boolean); + } + + public class HttpAuthHandler extends android.os.Handler { + method public void cancel(); + method public void proceed(String, String); + method public boolean useHttpAuthUsernamePassword(); + } + + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface JavascriptInterface { + } + + public class JsPromptResult extends android.webkit.JsResult { + method public void confirm(String); + } + + public class JsResult { + method public final void cancel(); + method public final void confirm(); + } + + public class MimeTypeMap { + method @Nullable public String getExtensionFromMimeType(String); + method public static String getFileExtensionFromUrl(String); + method @Nullable public String getMimeTypeFromExtension(String); + method public static android.webkit.MimeTypeMap getSingleton(); + method public boolean hasExtension(String); + method public boolean hasMimeType(String); + } + + public abstract class PermissionRequest { + ctor public PermissionRequest(); + method public abstract void deny(); + method public abstract android.net.Uri getOrigin(); + method public abstract String[] getResources(); + method public abstract void grant(String[]); + field public static final String RESOURCE_AUDIO_CAPTURE = "android.webkit.resource.AUDIO_CAPTURE"; + field public static final String RESOURCE_MIDI_SYSEX = "android.webkit.resource.MIDI_SYSEX"; + field public static final String RESOURCE_PROTECTED_MEDIA_ID = "android.webkit.resource.PROTECTED_MEDIA_ID"; + field public static final String RESOURCE_VIDEO_CAPTURE = "android.webkit.resource.VIDEO_CAPTURE"; + } + + public interface PluginStub { + method public android.view.View getEmbeddedView(int, android.content.Context); + method public android.view.View getFullScreenView(int, android.content.Context); + } + + public abstract class RenderProcessGoneDetail { + ctor @Deprecated public RenderProcessGoneDetail(); + method public abstract boolean didCrash(); + method public abstract int rendererPriorityAtExit(); + } + + public abstract class SafeBrowsingResponse { + ctor @Deprecated public SafeBrowsingResponse(); + method public abstract void backToSafety(boolean); + method public abstract void proceed(boolean); + method public abstract void showInterstitial(boolean); + } + + public class ServiceWorkerClient { + ctor public ServiceWorkerClient(); + method @Nullable public android.webkit.WebResourceResponse shouldInterceptRequest(android.webkit.WebResourceRequest); + } + + public abstract class ServiceWorkerController { + ctor @Deprecated public ServiceWorkerController(); + method @NonNull public static android.webkit.ServiceWorkerController getInstance(); + method @NonNull public abstract android.webkit.ServiceWorkerWebSettings getServiceWorkerWebSettings(); + method public abstract void setServiceWorkerClient(@Nullable android.webkit.ServiceWorkerClient); + } + + public abstract class ServiceWorkerWebSettings { + ctor public ServiceWorkerWebSettings(); + method public abstract boolean getAllowContentAccess(); + method public abstract boolean getAllowFileAccess(); + method public abstract boolean getBlockNetworkLoads(); + method public abstract int getCacheMode(); + method public abstract void setAllowContentAccess(boolean); + method public abstract void setAllowFileAccess(boolean); + method public abstract void setBlockNetworkLoads(boolean); + method public abstract void setCacheMode(int); + } + + public class SslErrorHandler extends android.os.Handler { + method public void cancel(); + method public void proceed(); + } + + public class TracingConfig { + method @NonNull public java.util.List getCustomIncludedCategories(); + method public int getPredefinedCategories(); + method public int getTracingMode(); + field public static final int CATEGORIES_ALL = 1; // 0x1 + field public static final int CATEGORIES_ANDROID_WEBVIEW = 2; // 0x2 + field public static final int CATEGORIES_FRAME_VIEWER = 64; // 0x40 + field public static final int CATEGORIES_INPUT_LATENCY = 8; // 0x8 + field public static final int CATEGORIES_JAVASCRIPT_AND_RENDERING = 32; // 0x20 + field public static final int CATEGORIES_NONE = 0; // 0x0 + field public static final int CATEGORIES_RENDERING = 16; // 0x10 + field public static final int CATEGORIES_WEB_DEVELOPER = 4; // 0x4 + field public static final int RECORD_CONTINUOUSLY = 1; // 0x1 + field public static final int RECORD_UNTIL_FULL = 0; // 0x0 + } + + public static class TracingConfig.Builder { + ctor public TracingConfig.Builder(); + method public android.webkit.TracingConfig.Builder addCategories(int...); + method public android.webkit.TracingConfig.Builder addCategories(java.lang.String...); + method public android.webkit.TracingConfig.Builder addCategories(java.util.Collection); + method public android.webkit.TracingConfig build(); + method public android.webkit.TracingConfig.Builder setTracingMode(int); + } + + public abstract class TracingController { + ctor @Deprecated public TracingController(); + method @NonNull public static android.webkit.TracingController getInstance(); + method public abstract boolean isTracing(); + method public abstract void start(@NonNull android.webkit.TracingConfig); + method public abstract boolean stop(@Nullable java.io.OutputStream, @NonNull java.util.concurrent.Executor); + } + + public final class URLUtil { + ctor public URLUtil(); + method public static String composeSearchUrl(String, String, String); + method public static byte[] decode(byte[]) throws java.lang.IllegalArgumentException; + method public static String guessFileName(String, @Nullable String, @Nullable String); + method public static String guessUrl(String); + method public static boolean isAboutUrl(String); + method public static boolean isAssetUrl(String); + method public static boolean isContentUrl(String); + method @Deprecated public static boolean isCookielessProxyUrl(String); + method public static boolean isDataUrl(String); + method public static boolean isFileUrl(String); + method public static boolean isHttpUrl(String); + method public static boolean isHttpsUrl(String); + method public static boolean isJavaScriptUrl(String); + method public static boolean isNetworkUrl(String); + method public static boolean isValidUrl(String); + method public static String stripAnchor(String); + } + + public interface ValueCallback { + method public void onReceiveValue(T); + } + + public abstract class WebBackForwardList implements java.lang.Cloneable java.io.Serializable { + ctor public WebBackForwardList(); + method protected abstract android.webkit.WebBackForwardList clone(); + method public abstract int getCurrentIndex(); + method @Nullable public abstract android.webkit.WebHistoryItem getCurrentItem(); + method public abstract android.webkit.WebHistoryItem getItemAtIndex(int); + method public abstract int getSize(); + } + + public class WebChromeClient { + ctor public WebChromeClient(); + method @Nullable public android.graphics.Bitmap getDefaultVideoPoster(); + method @Nullable public android.view.View getVideoLoadingProgressView(); + method public void getVisitedHistory(android.webkit.ValueCallback); + method public void onCloseWindow(android.webkit.WebView); + method @Deprecated public void onConsoleMessage(String, int, String); + method public boolean onConsoleMessage(android.webkit.ConsoleMessage); + method public boolean onCreateWindow(android.webkit.WebView, boolean, boolean, android.os.Message); + method @Deprecated public void onExceededDatabaseQuota(String, String, long, long, long, android.webkit.WebStorage.QuotaUpdater); + method public void onGeolocationPermissionsHidePrompt(); + method public void onGeolocationPermissionsShowPrompt(String, android.webkit.GeolocationPermissions.Callback); + method public void onHideCustomView(); + method public boolean onJsAlert(android.webkit.WebView, String, String, android.webkit.JsResult); + method public boolean onJsBeforeUnload(android.webkit.WebView, String, String, android.webkit.JsResult); + method public boolean onJsConfirm(android.webkit.WebView, String, String, android.webkit.JsResult); + method public boolean onJsPrompt(android.webkit.WebView, String, String, String, android.webkit.JsPromptResult); + method @Deprecated public boolean onJsTimeout(); + method public void onPermissionRequest(android.webkit.PermissionRequest); + method public void onPermissionRequestCanceled(android.webkit.PermissionRequest); + method public void onProgressChanged(android.webkit.WebView, int); + method public void onReceivedIcon(android.webkit.WebView, android.graphics.Bitmap); + method public void onReceivedTitle(android.webkit.WebView, String); + method public void onReceivedTouchIconUrl(android.webkit.WebView, String, boolean); + method public void onRequestFocus(android.webkit.WebView); + method public void onShowCustomView(android.view.View, android.webkit.WebChromeClient.CustomViewCallback); + method @Deprecated public void onShowCustomView(android.view.View, int, android.webkit.WebChromeClient.CustomViewCallback); + method public boolean onShowFileChooser(android.webkit.WebView, android.webkit.ValueCallback, android.webkit.WebChromeClient.FileChooserParams); + } + + public static interface WebChromeClient.CustomViewCallback { + method public void onCustomViewHidden(); + } + + public abstract static class WebChromeClient.FileChooserParams { + ctor public WebChromeClient.FileChooserParams(); + method public abstract android.content.Intent createIntent(); + method public abstract String[] getAcceptTypes(); + method @Nullable public abstract String getFilenameHint(); + method public abstract int getMode(); + method @FlaggedApi("android.webkit.file_system_access") public int getPermissionMode(); + method @Nullable public abstract CharSequence getTitle(); + method public abstract boolean isCaptureEnabled(); + method @Nullable public static android.net.Uri[] parseResult(int, android.content.Intent); + field public static final int MODE_OPEN = 0; // 0x0 + field @FlaggedApi("android.webkit.file_system_access") public static final int MODE_OPEN_FOLDER = 2; // 0x2 + field public static final int MODE_OPEN_MULTIPLE = 1; // 0x1 + field public static final int MODE_SAVE = 3; // 0x3 + field @FlaggedApi("android.webkit.file_system_access") public static final int PERMISSION_MODE_READ = 0; // 0x0 + field @FlaggedApi("android.webkit.file_system_access") public static final int PERMISSION_MODE_READ_WRITE = 1; // 0x1 + } + + public abstract class WebHistoryItem implements java.lang.Cloneable { + ctor public WebHistoryItem(); + method protected abstract android.webkit.WebHistoryItem clone(); + method @Nullable public abstract android.graphics.Bitmap getFavicon(); + method public abstract String getOriginalUrl(); + method public abstract String getTitle(); + method public abstract String getUrl(); + } + + @Deprecated public abstract class WebIconDatabase { + ctor @Deprecated public WebIconDatabase(); + method @Deprecated public abstract void close(); + method @Deprecated public static android.webkit.WebIconDatabase getInstance(); + method @Deprecated public abstract void open(String); + method @Deprecated public abstract void releaseIconForPageUrl(String); + method @Deprecated public abstract void removeAllIcons(); + method @Deprecated public abstract void requestIconForPageUrl(String, android.webkit.WebIconDatabase.IconListener); + method @Deprecated public abstract void retainIconForPageUrl(String); + } + + @Deprecated public static interface WebIconDatabase.IconListener { + method @Deprecated public void onReceivedIcon(String, android.graphics.Bitmap); + } + + public class WebMessage { + ctor public WebMessage(String); + ctor public WebMessage(String, android.webkit.WebMessagePort[]); + method public String getData(); + method @Nullable public android.webkit.WebMessagePort[] getPorts(); + } + + public abstract class WebMessagePort { + method public abstract void close(); + method public abstract void postMessage(android.webkit.WebMessage); + method public abstract void setWebMessageCallback(android.webkit.WebMessagePort.WebMessageCallback); + method public abstract void setWebMessageCallback(android.webkit.WebMessagePort.WebMessageCallback, android.os.Handler); + } + + public abstract static class WebMessagePort.WebMessageCallback { + ctor public WebMessagePort.WebMessageCallback(); + method public void onMessage(android.webkit.WebMessagePort, android.webkit.WebMessage); + } + + public abstract class WebResourceError { + method public abstract CharSequence getDescription(); + method public abstract int getErrorCode(); + } + + public interface WebResourceRequest { + method public String getMethod(); + method public java.util.Map getRequestHeaders(); + method public android.net.Uri getUrl(); + method public boolean hasGesture(); + method public boolean isForMainFrame(); + method public boolean isRedirect(); + } + + public class WebResourceResponse { + ctor public WebResourceResponse(String, String, java.io.InputStream); + ctor public WebResourceResponse(String, String, int, @NonNull String, java.util.Map, java.io.InputStream); + method public java.io.InputStream getData(); + method public String getEncoding(); + method public String getMimeType(); + method public String getReasonPhrase(); + method public java.util.Map getResponseHeaders(); + method public int getStatusCode(); + method public void setData(java.io.InputStream); + method public void setEncoding(String); + method public void setMimeType(String); + method public void setResponseHeaders(java.util.Map); + method public void setStatusCodeAndReasonPhrase(int, @NonNull String); + } + + public abstract class WebSettings { + ctor public WebSettings(); + method @Deprecated public abstract boolean enableSmoothTransition(); + method public abstract boolean getAllowContentAccess(); + method public abstract boolean getAllowFileAccess(); + method public abstract boolean getAllowFileAccessFromFileURLs(); + method public abstract boolean getAllowUniversalAccessFromFileURLs(); + method public abstract boolean getBlockNetworkImage(); + method public abstract boolean getBlockNetworkLoads(); + method public abstract boolean getBuiltInZoomControls(); + method public abstract int getCacheMode(); + method public abstract String getCursiveFontFamily(); + method @Deprecated public abstract boolean getDatabaseEnabled(); + method @Deprecated public abstract String getDatabasePath(); + method public abstract int getDefaultFixedFontSize(); + method public abstract int getDefaultFontSize(); + method public abstract String getDefaultTextEncodingName(); + method public static String getDefaultUserAgent(android.content.Context); + method @Deprecated public abstract android.webkit.WebSettings.ZoomDensity getDefaultZoom(); + method public abstract int getDisabledActionModeMenuItems(); + method public abstract boolean getDisplayZoomControls(); + method public abstract boolean getDomStorageEnabled(); + method public abstract String getFantasyFontFamily(); + method public abstract String getFixedFontFamily(); + method @Deprecated public int getForceDark(); + method public abstract boolean getJavaScriptCanOpenWindowsAutomatically(); + method public abstract boolean getJavaScriptEnabled(); + method public abstract android.webkit.WebSettings.LayoutAlgorithm getLayoutAlgorithm(); + method @Deprecated public abstract boolean getLightTouchEnabled(); + method public abstract boolean getLoadWithOverviewMode(); + method public abstract boolean getLoadsImagesAutomatically(); + method public abstract boolean getMediaPlaybackRequiresUserGesture(); + method public abstract int getMinimumFontSize(); + method public abstract int getMinimumLogicalFontSize(); + method public abstract int getMixedContentMode(); + method public abstract boolean getOffscreenPreRaster(); + method @Deprecated public abstract android.webkit.WebSettings.PluginState getPluginState(); + method public abstract boolean getSafeBrowsingEnabled(); + method public abstract String getSansSerifFontFamily(); + method @Deprecated public abstract boolean getSaveFormData(); + method @Deprecated public abstract boolean getSavePassword(); + method public abstract String getSerifFontFamily(); + method public abstract String getStandardFontFamily(); + method @Deprecated public android.webkit.WebSettings.TextSize getTextSize(); + method public abstract int getTextZoom(); + method public abstract boolean getUseWideViewPort(); + method public abstract String getUserAgentString(); + method public boolean isAlgorithmicDarkeningAllowed(); + method public void setAlgorithmicDarkeningAllowed(boolean); + method public abstract void setAllowContentAccess(boolean); + method public abstract void setAllowFileAccess(boolean); + method @Deprecated public abstract void setAllowFileAccessFromFileURLs(boolean); + method @Deprecated public abstract void setAllowUniversalAccessFromFileURLs(boolean); + method public abstract void setBlockNetworkImage(boolean); + method public abstract void setBlockNetworkLoads(boolean); + method public abstract void setBuiltInZoomControls(boolean); + method public abstract void setCacheMode(int); + method public abstract void setCursiveFontFamily(String); + method @Deprecated public abstract void setDatabaseEnabled(boolean); + method @Deprecated public abstract void setDatabasePath(String); + method public abstract void setDefaultFixedFontSize(int); + method public abstract void setDefaultFontSize(int); + method public abstract void setDefaultTextEncodingName(String); + method @Deprecated public abstract void setDefaultZoom(android.webkit.WebSettings.ZoomDensity); + method public abstract void setDisabledActionModeMenuItems(int); + method public abstract void setDisplayZoomControls(boolean); + method public abstract void setDomStorageEnabled(boolean); + method @Deprecated public abstract void setEnableSmoothTransition(boolean); + method public abstract void setFantasyFontFamily(String); + method public abstract void setFixedFontFamily(String); + method @Deprecated public void setForceDark(int); + method @Deprecated public abstract void setGeolocationDatabasePath(String); + method public abstract void setGeolocationEnabled(boolean); + method public abstract void setJavaScriptCanOpenWindowsAutomatically(boolean); + method public abstract void setJavaScriptEnabled(boolean); + method public abstract void setLayoutAlgorithm(android.webkit.WebSettings.LayoutAlgorithm); + method @Deprecated public abstract void setLightTouchEnabled(boolean); + method public abstract void setLoadWithOverviewMode(boolean); + method public abstract void setLoadsImagesAutomatically(boolean); + method public abstract void setMediaPlaybackRequiresUserGesture(boolean); + method public abstract void setMinimumFontSize(int); + method public abstract void setMinimumLogicalFontSize(int); + method public abstract void setMixedContentMode(int); + method public abstract void setNeedInitialFocus(boolean); + method public abstract void setOffscreenPreRaster(boolean); + method @Deprecated public abstract void setPluginState(android.webkit.WebSettings.PluginState); + method @Deprecated public abstract void setRenderPriority(android.webkit.WebSettings.RenderPriority); + method public abstract void setSafeBrowsingEnabled(boolean); + method public abstract void setSansSerifFontFamily(String); + method @Deprecated public abstract void setSaveFormData(boolean); + method @Deprecated public abstract void setSavePassword(boolean); + method public abstract void setSerifFontFamily(String); + method public abstract void setStandardFontFamily(String); + method public abstract void setSupportMultipleWindows(boolean); + method public abstract void setSupportZoom(boolean); + method @Deprecated public void setTextSize(android.webkit.WebSettings.TextSize); + method public abstract void setTextZoom(int); + method public abstract void setUseWideViewPort(boolean); + method public abstract void setUserAgentString(@Nullable String); + method public abstract boolean supportMultipleWindows(); + method public abstract boolean supportZoom(); + field @Deprecated public static final int FORCE_DARK_AUTO = 1; // 0x1 + field @Deprecated public static final int FORCE_DARK_OFF = 0; // 0x0 + field @Deprecated public static final int FORCE_DARK_ON = 2; // 0x2 + field public static final int LOAD_CACHE_ELSE_NETWORK = 1; // 0x1 + field public static final int LOAD_CACHE_ONLY = 3; // 0x3 + field public static final int LOAD_DEFAULT = -1; // 0xffffffff + field @Deprecated public static final int LOAD_NORMAL = 0; // 0x0 + field public static final int LOAD_NO_CACHE = 2; // 0x2 + field public static final int MENU_ITEM_NONE = 0; // 0x0 + field public static final int MENU_ITEM_PROCESS_TEXT = 4; // 0x4 + field public static final int MENU_ITEM_SHARE = 1; // 0x1 + field public static final int MENU_ITEM_WEB_SEARCH = 2; // 0x2 + field public static final int MIXED_CONTENT_ALWAYS_ALLOW = 0; // 0x0 + field public static final int MIXED_CONTENT_COMPATIBILITY_MODE = 2; // 0x2 + field public static final int MIXED_CONTENT_NEVER_ALLOW = 1; // 0x1 + } + + public enum WebSettings.LayoutAlgorithm { + enum_constant @Deprecated public static final android.webkit.WebSettings.LayoutAlgorithm NARROW_COLUMNS; + enum_constant public static final android.webkit.WebSettings.LayoutAlgorithm NORMAL; + enum_constant @Deprecated public static final android.webkit.WebSettings.LayoutAlgorithm SINGLE_COLUMN; + enum_constant public static final android.webkit.WebSettings.LayoutAlgorithm TEXT_AUTOSIZING; + } + + public enum WebSettings.PluginState { + enum_constant public static final android.webkit.WebSettings.PluginState OFF; + enum_constant public static final android.webkit.WebSettings.PluginState ON; + enum_constant public static final android.webkit.WebSettings.PluginState ON_DEMAND; + } + + public enum WebSettings.RenderPriority { + enum_constant public static final android.webkit.WebSettings.RenderPriority HIGH; + enum_constant public static final android.webkit.WebSettings.RenderPriority LOW; + enum_constant public static final android.webkit.WebSettings.RenderPriority NORMAL; + } + + @Deprecated public enum WebSettings.TextSize { + enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize LARGER; + enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize LARGEST; + enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize NORMAL; + enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize SMALLER; + enum_constant @Deprecated public static final android.webkit.WebSettings.TextSize SMALLEST; + } + + public enum WebSettings.ZoomDensity { + enum_constant public static final android.webkit.WebSettings.ZoomDensity CLOSE; + enum_constant public static final android.webkit.WebSettings.ZoomDensity FAR; + enum_constant public static final android.webkit.WebSettings.ZoomDensity MEDIUM; + } + + public class WebStorage { + method public void deleteAllData(); + method public void deleteOrigin(String); + method public static android.webkit.WebStorage getInstance(); + method public void getOrigins(android.webkit.ValueCallback); + method public void getQuotaForOrigin(String, android.webkit.ValueCallback); + method public void getUsageForOrigin(String, android.webkit.ValueCallback); + method @Deprecated public void setQuotaForOrigin(String, long); + } + + public static class WebStorage.Origin { + method public String getOrigin(); + method public long getQuota(); + method public long getUsage(); + } + + @Deprecated public static interface WebStorage.QuotaUpdater { + method @Deprecated public void updateQuota(long); + } + + public class WebView extends android.widget.AbsoluteLayout implements android.view.ViewGroup.OnHierarchyChangeListener android.view.ViewTreeObserver.OnGlobalFocusChangeListener { + ctor public WebView(@NonNull android.content.Context); + ctor public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); + ctor public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, int); + ctor @Deprecated public WebView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, boolean); + method public void addJavascriptInterface(@NonNull Object, @NonNull String); + method public boolean canGoBack(); + method public boolean canGoBackOrForward(int); + method public boolean canGoForward(); + method @Deprecated public boolean canZoomIn(); + method @Deprecated public boolean canZoomOut(); + method @Deprecated public android.graphics.Picture capturePicture(); + method public void clearCache(boolean); + method public static void clearClientCertPreferences(@Nullable Runnable); + method public void clearFormData(); + method public void clearHistory(); + method public void clearMatches(); + method public void clearSslPreferences(); + method @Deprecated public void clearView(); + method @NonNull public android.webkit.WebBackForwardList copyBackForwardList(); + method @Deprecated public android.print.PrintDocumentAdapter createPrintDocumentAdapter(); + method @NonNull public android.print.PrintDocumentAdapter createPrintDocumentAdapter(@NonNull String); + method @NonNull public android.webkit.WebMessagePort[] createWebMessageChannel(); + method public void destroy(); + method public static void disableWebView(); + method public void documentHasImages(@NonNull android.os.Message); + method public static void enableSlowWholeDocumentDraw(); + method public void evaluateJavascript(@NonNull String, @Nullable android.webkit.ValueCallback); + method @Deprecated @Nullable public static String findAddress(String); + method @Deprecated public int findAll(String); + method public void findAllAsync(@NonNull String); + method public void findNext(boolean); + method public void flingScroll(int, int); + method @Deprecated public void freeMemory(); + method @Nullable public android.net.http.SslCertificate getCertificate(); + method public int getContentHeight(); + method @Nullable public static android.content.pm.PackageInfo getCurrentWebViewPackage(); + method @Nullable public android.graphics.Bitmap getFavicon(); + method @NonNull public android.webkit.WebView.HitTestResult getHitTestResult(); + method @Deprecated @Nullable public String[] getHttpAuthUsernamePassword(String, String); + method @Nullable public String getOriginalUrl(); + method public int getProgress(); + method public boolean getRendererPriorityWaivedWhenNotVisible(); + method public int getRendererRequestedPriority(); + method @NonNull public static android.net.Uri getSafeBrowsingPrivacyPolicyUrl(); + method @Deprecated public float getScale(); + method @NonNull public android.webkit.WebSettings getSettings(); + method @NonNull public android.view.textclassifier.TextClassifier getTextClassifier(); + method @Nullable public String getTitle(); + method @Nullable public String getUrl(); + method @Nullable public android.webkit.WebChromeClient getWebChromeClient(); + method @NonNull public static ClassLoader getWebViewClassLoader(); + method @NonNull public android.webkit.WebViewClient getWebViewClient(); + method @NonNull public android.os.Looper getWebViewLooper(); + method @Nullable public android.webkit.WebViewRenderProcess getWebViewRenderProcess(); + method @Nullable public android.webkit.WebViewRenderProcessClient getWebViewRenderProcessClient(); + method public void goBack(); + method public void goBackOrForward(int); + method public void goForward(); + method public void invokeZoomPicker(); + method public boolean isPrivateBrowsingEnabled(); + method public void loadData(@NonNull String, @Nullable String, @Nullable String); + method public void loadDataWithBaseURL(@Nullable String, @NonNull String, @Nullable String, @Nullable String, @Nullable String); + method public void loadUrl(@NonNull String, @NonNull java.util.Map); + method public void loadUrl(@NonNull String); + method @Deprecated public void onChildViewAdded(android.view.View, android.view.View); + method @Deprecated public void onChildViewRemoved(android.view.View, android.view.View); + method @Deprecated public void onGlobalFocusChanged(android.view.View, android.view.View); + method public void onPause(); + method public void onResume(); + method @Deprecated public boolean overlayHorizontalScrollbar(); + method @Deprecated public boolean overlayVerticalScrollbar(); + method public boolean pageDown(boolean); + method public boolean pageUp(boolean); + method public void pauseTimers(); + method public void postUrl(@NonNull String, @NonNull byte[]); + method public void postVisualStateCallback(long, @NonNull android.webkit.WebView.VisualStateCallback); + method public void postWebMessage(@NonNull android.webkit.WebMessage, @NonNull android.net.Uri); + method public void reload(); + method public void removeJavascriptInterface(@NonNull String); + method public void requestFocusNodeHref(@Nullable android.os.Message); + method public void requestImageRef(@NonNull android.os.Message); + method @Nullable public android.webkit.WebBackForwardList restoreState(@NonNull android.os.Bundle); + method public void resumeTimers(); + method @Deprecated public void savePassword(String, String, String); + method @Nullable public android.webkit.WebBackForwardList saveState(@NonNull android.os.Bundle); + method public void saveWebArchive(@NonNull String); + method public void saveWebArchive(@NonNull String, boolean, @Nullable android.webkit.ValueCallback); + method @Deprecated public void setCertificate(android.net.http.SslCertificate); + method public static void setDataDirectorySuffix(@NonNull String); + method public void setDownloadListener(@Nullable android.webkit.DownloadListener); + method public void setFindListener(@Nullable android.webkit.WebView.FindListener); + method @Deprecated public void setHorizontalScrollbarOverlay(boolean); + method @Deprecated public void setHttpAuthUsernamePassword(String, String, String, String); + method public void setInitialScale(int); + method @Deprecated public void setMapTrackballToArrowKeys(boolean); + method public void setNetworkAvailable(boolean); + method @Deprecated public void setPictureListener(android.webkit.WebView.PictureListener); + method public void setRendererPriorityPolicy(int, boolean); + method public static void setSafeBrowsingWhitelist(@NonNull java.util.List, @Nullable android.webkit.ValueCallback); + method public void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier); + method @Deprecated public void setVerticalScrollbarOverlay(boolean); + method public void setWebChromeClient(@Nullable android.webkit.WebChromeClient); + method public static void setWebContentsDebuggingEnabled(boolean); + method public void setWebViewClient(@NonNull android.webkit.WebViewClient); + method public void setWebViewRenderProcessClient(@NonNull java.util.concurrent.Executor, @NonNull android.webkit.WebViewRenderProcessClient); + method public void setWebViewRenderProcessClient(@Nullable android.webkit.WebViewRenderProcessClient); + method @Deprecated public boolean shouldDelayChildPressedState(); + method @Deprecated public boolean showFindDialog(@Nullable String, boolean); + method @Deprecated @FlaggedApi("android.webkit.deprecate_start_safe_browsing") public static void startSafeBrowsing(@NonNull android.content.Context, @Nullable android.webkit.ValueCallback); + method public void stopLoading(); + method public void zoomBy(float); + method public boolean zoomIn(); + method public boolean zoomOut(); + field public static final int RENDERER_PRIORITY_BOUND = 1; // 0x1 + field public static final int RENDERER_PRIORITY_IMPORTANT = 2; // 0x2 + field public static final int RENDERER_PRIORITY_WAIVED = 0; // 0x0 + field public static final String SCHEME_GEO = "geo:0,0?q="; + field public static final String SCHEME_MAILTO = "mailto:"; + field public static final String SCHEME_TEL = "tel:"; + } + + public static interface WebView.FindListener { + method public void onFindResultReceived(int, int, boolean); + } + + public static class WebView.HitTestResult { + method @Nullable public String getExtra(); + method public int getType(); + field @Deprecated public static final int ANCHOR_TYPE = 1; // 0x1 + field public static final int EDIT_TEXT_TYPE = 9; // 0x9 + field public static final int EMAIL_TYPE = 4; // 0x4 + field public static final int GEO_TYPE = 3; // 0x3 + field @Deprecated public static final int IMAGE_ANCHOR_TYPE = 6; // 0x6 + field public static final int IMAGE_TYPE = 5; // 0x5 + field public static final int PHONE_TYPE = 2; // 0x2 + field public static final int SRC_ANCHOR_TYPE = 7; // 0x7 + field public static final int SRC_IMAGE_ANCHOR_TYPE = 8; // 0x8 + field public static final int UNKNOWN_TYPE = 0; // 0x0 + } + + @Deprecated public static interface WebView.PictureListener { + method @Deprecated public void onNewPicture(android.webkit.WebView, @Nullable android.graphics.Picture); + } + + public abstract static class WebView.VisualStateCallback { + ctor public WebView.VisualStateCallback(); + method public abstract void onComplete(long); + } + + public class WebView.WebViewTransport { + ctor public WebView.WebViewTransport(); + method @Nullable public android.webkit.WebView getWebView(); + method public void setWebView(@Nullable android.webkit.WebView); + } + + public class WebViewClient { + ctor public WebViewClient(); + method public void doUpdateVisitedHistory(android.webkit.WebView, String, boolean); + method public void onFormResubmission(android.webkit.WebView, android.os.Message, android.os.Message); + method public void onLoadResource(android.webkit.WebView, String); + method public void onPageCommitVisible(android.webkit.WebView, String); + method public void onPageFinished(android.webkit.WebView, String); + method public void onPageStarted(android.webkit.WebView, String, android.graphics.Bitmap); + method public void onReceivedClientCertRequest(android.webkit.WebView, android.webkit.ClientCertRequest); + method @Deprecated public void onReceivedError(android.webkit.WebView, int, String, String); + method public void onReceivedError(android.webkit.WebView, android.webkit.WebResourceRequest, android.webkit.WebResourceError); + method public void onReceivedHttpAuthRequest(android.webkit.WebView, android.webkit.HttpAuthHandler, String, String); + method public void onReceivedHttpError(android.webkit.WebView, android.webkit.WebResourceRequest, android.webkit.WebResourceResponse); + method public void onReceivedLoginRequest(android.webkit.WebView, String, @Nullable String, String); + method public void onReceivedSslError(android.webkit.WebView, android.webkit.SslErrorHandler, android.net.http.SslError); + method public boolean onRenderProcessGone(android.webkit.WebView, android.webkit.RenderProcessGoneDetail); + method public void onSafeBrowsingHit(android.webkit.WebView, android.webkit.WebResourceRequest, int, android.webkit.SafeBrowsingResponse); + method public void onScaleChanged(android.webkit.WebView, float, float); + method @Deprecated public void onTooManyRedirects(android.webkit.WebView, android.os.Message, android.os.Message); + method public void onUnhandledKeyEvent(android.webkit.WebView, android.view.KeyEvent); + method @Deprecated @Nullable public android.webkit.WebResourceResponse shouldInterceptRequest(android.webkit.WebView, String); + method @Nullable public android.webkit.WebResourceResponse shouldInterceptRequest(android.webkit.WebView, android.webkit.WebResourceRequest); + method public boolean shouldOverrideKeyEvent(android.webkit.WebView, android.view.KeyEvent); + method @Deprecated public boolean shouldOverrideUrlLoading(android.webkit.WebView, String); + method public boolean shouldOverrideUrlLoading(android.webkit.WebView, android.webkit.WebResourceRequest); + field public static final int ERROR_AUTHENTICATION = -4; // 0xfffffffc + field public static final int ERROR_BAD_URL = -12; // 0xfffffff4 + field public static final int ERROR_CONNECT = -6; // 0xfffffffa + field public static final int ERROR_FAILED_SSL_HANDSHAKE = -11; // 0xfffffff5 + field public static final int ERROR_FILE = -13; // 0xfffffff3 + field public static final int ERROR_FILE_NOT_FOUND = -14; // 0xfffffff2 + field public static final int ERROR_HOST_LOOKUP = -2; // 0xfffffffe + field public static final int ERROR_IO = -7; // 0xfffffff9 + field public static final int ERROR_PROXY_AUTHENTICATION = -5; // 0xfffffffb + field public static final int ERROR_REDIRECT_LOOP = -9; // 0xfffffff7 + field public static final int ERROR_TIMEOUT = -8; // 0xfffffff8 + field public static final int ERROR_TOO_MANY_REQUESTS = -15; // 0xfffffff1 + field public static final int ERROR_UNKNOWN = -1; // 0xffffffff + field public static final int ERROR_UNSAFE_RESOURCE = -16; // 0xfffffff0 + field public static final int ERROR_UNSUPPORTED_AUTH_SCHEME = -3; // 0xfffffffd + field public static final int ERROR_UNSUPPORTED_SCHEME = -10; // 0xfffffff6 + field public static final int SAFE_BROWSING_THREAT_BILLING = 4; // 0x4 + field public static final int SAFE_BROWSING_THREAT_MALWARE = 1; // 0x1 + field public static final int SAFE_BROWSING_THREAT_PHISHING = 2; // 0x2 + field public static final int SAFE_BROWSING_THREAT_UNKNOWN = 0; // 0x0 + field public static final int SAFE_BROWSING_THREAT_UNWANTED_SOFTWARE = 3; // 0x3 + } + + public abstract class WebViewDatabase { + ctor @Deprecated public WebViewDatabase(); + method @Deprecated public abstract void clearFormData(); + method public abstract void clearHttpAuthUsernamePassword(); + method @Deprecated public abstract void clearUsernamePassword(); + method @Nullable public abstract String[] getHttpAuthUsernamePassword(String, String); + method public static android.webkit.WebViewDatabase getInstance(android.content.Context); + method @Deprecated public abstract boolean hasFormData(); + method public abstract boolean hasHttpAuthUsernamePassword(); + method @Deprecated public abstract boolean hasUsernamePassword(); + method public abstract void setHttpAuthUsernamePassword(String, String, String, String); + } + + @Deprecated public class WebViewFragment extends android.app.Fragment { + ctor @Deprecated public WebViewFragment(); + method @Deprecated public android.webkit.WebView getWebView(); + } + + public abstract class WebViewRenderProcess { + ctor public WebViewRenderProcess(); + method public abstract boolean terminate(); + } + + public abstract class WebViewRenderProcessClient { + ctor public WebViewRenderProcessClient(); + method public abstract void onRenderProcessResponsive(@NonNull android.webkit.WebView, @Nullable android.webkit.WebViewRenderProcess); + method public abstract void onRenderProcessUnresponsive(@NonNull android.webkit.WebView, @Nullable android.webkit.WebViewRenderProcess); + } + +} + +package android.widget { + + public abstract class AbsListView extends android.widget.AdapterView implements android.widget.Filter.FilterListener android.text.TextWatcher android.view.ViewTreeObserver.OnGlobalLayoutListener android.view.ViewTreeObserver.OnTouchModeChangeListener { + ctor public AbsListView(android.content.Context); + ctor public AbsListView(android.content.Context, android.util.AttributeSet); + ctor public AbsListView(android.content.Context, android.util.AttributeSet, int); + ctor public AbsListView(android.content.Context, android.util.AttributeSet, int, int); + method public void afterTextChanged(android.text.Editable); + method public void beforeTextChanged(CharSequence, int, int, int); + method public boolean canScrollList(int); + method public void clearChoices(); + method public void clearTextFilter(); + method public void deferNotifyDataSetChanged(); + method public void fling(int); + method public android.widget.AbsListView.LayoutParams generateLayoutParams(android.util.AttributeSet); + method @ColorInt public int getBottomEdgeEffectColor(); + method @ColorInt public int getCacheColorHint(); + method public int getCheckedItemCount(); + method public long[] getCheckedItemIds(); + method public int getCheckedItemPosition(); + method public android.util.SparseBooleanArray getCheckedItemPositions(); + method public int getChoiceMode(); + method public int getListPaddingBottom(); + method public int getListPaddingLeft(); + method public int getListPaddingRight(); + method public int getListPaddingTop(); + method public android.view.View getSelectedView(); + method public android.graphics.drawable.Drawable getSelector(); + method public CharSequence getTextFilter(); + method @ColorInt public int getTopEdgeEffectColor(); + method public int getTranscriptMode(); + method protected void handleDataChanged(); + method public boolean hasTextFilter(); + method public void invalidateViews(); + method public boolean isDrawSelectorOnTop(); + method public boolean isFastScrollAlwaysVisible(); + method public boolean isFastScrollEnabled(); + method protected boolean isInFilterMode(); + method public boolean isItemChecked(int); + method public boolean isScrollingCacheEnabled(); + method public boolean isSelectedChildViewEnabled(); + method public boolean isSmoothScrollbarEnabled(); + method public boolean isStackFromBottom(); + method public boolean isTextFilterEnabled(); + method protected void layoutChildren(); + method public void onFilterComplete(int); + method public void onGlobalLayout(); + method public void onInitializeAccessibilityNodeInfoForItem(android.view.View, int, android.view.accessibility.AccessibilityNodeInfo); + method public boolean onRemoteAdapterConnected(); + method public void onRemoteAdapterDisconnected(); + method public void onRestoreInstanceState(android.os.Parcelable); + method public android.os.Parcelable onSaveInstanceState(); + method public void onTextChanged(CharSequence, int, int, int); + method public void onTouchModeChanged(boolean); + method public int pointToPosition(int, int); + method public long pointToRowId(int, int); + method public void reclaimViews(java.util.List); + method public void scrollListBy(int); + method public void setAdapter(android.widget.ListAdapter); + method public void setBottomEdgeEffectColor(@ColorInt int); + method public void setCacheColorHint(@ColorInt int); + method public void setChoiceMode(int); + method public void setDrawSelectorOnTop(boolean); + method public void setEdgeEffectColor(@ColorInt int); + method public void setFastScrollAlwaysVisible(boolean); + method public void setFastScrollEnabled(boolean); + method public void setFastScrollStyle(int); + method public void setFilterText(String); + method public void setFriction(float); + method public void setItemChecked(int, boolean); + method public void setMultiChoiceModeListener(android.widget.AbsListView.MultiChoiceModeListener); + method public void setOnScrollListener(android.widget.AbsListView.OnScrollListener); + method public void setRecyclerListener(android.widget.AbsListView.RecyclerListener); + method public void setRemoteViewsAdapter(android.content.Intent); + method public void setScrollIndicators(android.view.View, android.view.View); + method public void setScrollingCacheEnabled(boolean); + method public void setSelectedChildViewEnabled(boolean); + method public void setSelectionFromTop(int, int); + method public void setSelector(@DrawableRes int); + method public void setSelector(android.graphics.drawable.Drawable); + method public void setSmoothScrollbarEnabled(boolean); + method public void setStackFromBottom(boolean); + method public void setTextFilterEnabled(boolean); + method public void setTopEdgeEffectColor(@ColorInt int); + method public void setTranscriptMode(int); + method public void setVelocityScale(float); + method public void smoothScrollBy(int, int); + method public void smoothScrollToPosition(int); + method public void smoothScrollToPosition(int, int); + method public void smoothScrollToPositionFromTop(int, int, int); + method public void smoothScrollToPositionFromTop(int, int); + method public boolean verifyDrawable(@NonNull android.graphics.drawable.Drawable); + field public static final int CHOICE_MODE_MULTIPLE = 2; // 0x2 + field public static final int CHOICE_MODE_MULTIPLE_MODAL = 3; // 0x3 + field public static final int CHOICE_MODE_NONE = 0; // 0x0 + field public static final int CHOICE_MODE_SINGLE = 1; // 0x1 + field public static final int TRANSCRIPT_MODE_ALWAYS_SCROLL = 2; // 0x2 + field public static final int TRANSCRIPT_MODE_DISABLED = 0; // 0x0 + field public static final int TRANSCRIPT_MODE_NORMAL = 1; // 0x1 + } + + public static class AbsListView.LayoutParams extends android.view.ViewGroup.LayoutParams { + ctor public AbsListView.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor public AbsListView.LayoutParams(int, int); + ctor public AbsListView.LayoutParams(int, int, int); + ctor public AbsListView.LayoutParams(android.view.ViewGroup.LayoutParams); + } + + public static interface AbsListView.MultiChoiceModeListener extends android.view.ActionMode.Callback { + method public void onItemCheckedStateChanged(android.view.ActionMode, int, long, boolean); + } + + public static interface AbsListView.OnScrollListener { + method public void onScroll(android.widget.AbsListView, int, int, int); + method public void onScrollStateChanged(android.widget.AbsListView, int); + field public static final int SCROLL_STATE_FLING = 2; // 0x2 + field public static final int SCROLL_STATE_IDLE = 0; // 0x0 + field public static final int SCROLL_STATE_TOUCH_SCROLL = 1; // 0x1 + } + + public static interface AbsListView.RecyclerListener { + method public void onMovedToScrapHeap(android.view.View); + } + + public static interface AbsListView.SelectionBoundsAdjuster { + method public void adjustListItemSelectionBounds(android.graphics.Rect); + } + + public abstract class AbsSeekBar extends android.widget.ProgressBar { + ctor public AbsSeekBar(android.content.Context); + ctor public AbsSeekBar(android.content.Context, android.util.AttributeSet); + ctor public AbsSeekBar(android.content.Context, android.util.AttributeSet, int); + ctor public AbsSeekBar(android.content.Context, android.util.AttributeSet, int, int); + method public int getKeyProgressIncrement(); + method public boolean getSplitTrack(); + method public android.graphics.drawable.Drawable getThumb(); + method public int getThumbOffset(); + method @Nullable public android.graphics.BlendMode getThumbTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getThumbTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getThumbTintMode(); + method public android.graphics.drawable.Drawable getTickMark(); + method @Nullable public android.graphics.BlendMode getTickMarkTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getTickMarkTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getTickMarkTintMode(); + method public void setKeyProgressIncrement(int); + method public void setSplitTrack(boolean); + method public void setThumb(android.graphics.drawable.Drawable); + method public void setThumbOffset(int); + method public void setThumbTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setThumbTintList(@Nullable android.content.res.ColorStateList); + method public void setThumbTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public void setTickMark(android.graphics.drawable.Drawable); + method public void setTickMarkTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setTickMarkTintList(@Nullable android.content.res.ColorStateList); + method public void setTickMarkTintMode(@Nullable android.graphics.PorterDuff.Mode); + } + + public abstract class AbsSpinner extends android.widget.AdapterView { + ctor public AbsSpinner(android.content.Context); + ctor public AbsSpinner(android.content.Context, android.util.AttributeSet); + ctor public AbsSpinner(android.content.Context, android.util.AttributeSet, int); + ctor public AbsSpinner(android.content.Context, android.util.AttributeSet, int, int); + method public android.widget.SpinnerAdapter getAdapter(); + method public android.view.View getSelectedView(); + method public void onRestoreInstanceState(android.os.Parcelable); + method public android.os.Parcelable onSaveInstanceState(); + method public int pointToPosition(int, int); + method public void setAdapter(android.widget.SpinnerAdapter); + method public void setSelection(int, boolean); + method public void setSelection(int); + } + + @Deprecated @android.widget.RemoteViews.RemoteView public class AbsoluteLayout extends android.view.ViewGroup { + ctor @Deprecated public AbsoluteLayout(android.content.Context); + ctor @Deprecated public AbsoluteLayout(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public AbsoluteLayout(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public AbsoluteLayout(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated protected void onLayout(boolean, int, int, int, int); + } + + @Deprecated public static class AbsoluteLayout.LayoutParams extends android.view.ViewGroup.LayoutParams { + ctor @Deprecated public AbsoluteLayout.LayoutParams(int, int, int, int); + ctor @Deprecated public AbsoluteLayout.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public AbsoluteLayout.LayoutParams(android.view.ViewGroup.LayoutParams); + method @Deprecated public String debug(String); + field @Deprecated public int x; + field @Deprecated public int y; + } + + public class ActionMenuView extends android.widget.LinearLayout { + ctor public ActionMenuView(android.content.Context); + ctor public ActionMenuView(android.content.Context, android.util.AttributeSet); + method public void dismissPopupMenus(); + method protected android.widget.ActionMenuView.LayoutParams generateDefaultLayoutParams(); + method public android.widget.ActionMenuView.LayoutParams generateLayoutParams(android.util.AttributeSet); + method protected android.widget.ActionMenuView.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); + method public android.view.Menu getMenu(); + method @Nullable public android.graphics.drawable.Drawable getOverflowIcon(); + method public int getPopupTheme(); + method public boolean hideOverflowMenu(); + method public boolean isOverflowMenuShowing(); + method public void onConfigurationChanged(android.content.res.Configuration); + method public void onDetachedFromWindow(); + method public void setOnMenuItemClickListener(android.widget.ActionMenuView.OnMenuItemClickListener); + method public void setOverflowIcon(@Nullable android.graphics.drawable.Drawable); + method public void setPopupTheme(@StyleRes int); + method public boolean showOverflowMenu(); + } + + public static class ActionMenuView.LayoutParams extends android.widget.LinearLayout.LayoutParams { + ctor public ActionMenuView.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor public ActionMenuView.LayoutParams(android.view.ViewGroup.LayoutParams); + ctor public ActionMenuView.LayoutParams(android.widget.ActionMenuView.LayoutParams); + ctor public ActionMenuView.LayoutParams(int, int); + } + + public static interface ActionMenuView.OnMenuItemClickListener { + method public boolean onMenuItemClick(android.view.MenuItem); + } + + public interface Adapter { + method @Nullable public default CharSequence[] getAutofillOptions(); + method public int getCount(); + method public Object getItem(int); + method public long getItemId(int); + method public int getItemViewType(int); + method public android.view.View getView(int, android.view.View, android.view.ViewGroup); + method public int getViewTypeCount(); + method public boolean hasStableIds(); + method public boolean isEmpty(); + method public void registerDataSetObserver(android.database.DataSetObserver); + method public void unregisterDataSetObserver(android.database.DataSetObserver); + field public static final int IGNORE_ITEM_VIEW_TYPE = -1; // 0xffffffff + field public static final int NO_SELECTION = -2147483648; // 0x80000000 + } + + public abstract class AdapterView extends android.view.ViewGroup { + ctor public AdapterView(android.content.Context); + ctor public AdapterView(android.content.Context, android.util.AttributeSet); + ctor public AdapterView(android.content.Context, android.util.AttributeSet, int); + ctor public AdapterView(android.content.Context, android.util.AttributeSet, int, int); + method public abstract T getAdapter(); + method public int getCount(); + method public android.view.View getEmptyView(); + method public int getFirstVisiblePosition(); + method public Object getItemAtPosition(int); + method public long getItemIdAtPosition(int); + method public int getLastVisiblePosition(); + method @Nullable public final android.widget.AdapterView.OnItemClickListener getOnItemClickListener(); + method public final android.widget.AdapterView.OnItemLongClickListener getOnItemLongClickListener(); + method @Nullable public final android.widget.AdapterView.OnItemSelectedListener getOnItemSelectedListener(); + method public int getPositionForView(android.view.View); + method public Object getSelectedItem(); + method public long getSelectedItemId(); + method public int getSelectedItemPosition(); + method public abstract android.view.View getSelectedView(); + method protected void onLayout(boolean, int, int, int, int); + method public boolean performItemClick(android.view.View, int, long); + method public abstract void setAdapter(T); + method public void setEmptyView(android.view.View); + method public void setOnItemClickListener(@Nullable android.widget.AdapterView.OnItemClickListener); + method public void setOnItemLongClickListener(android.widget.AdapterView.OnItemLongClickListener); + method public void setOnItemSelectedListener(@Nullable android.widget.AdapterView.OnItemSelectedListener); + method public abstract void setSelection(int); + field public static final int INVALID_POSITION = -1; // 0xffffffff + field public static final long INVALID_ROW_ID = -9223372036854775808L; // 0x8000000000000000L + field public static final int ITEM_VIEW_TYPE_HEADER_OR_FOOTER = -2; // 0xfffffffe + field public static final int ITEM_VIEW_TYPE_IGNORE = -1; // 0xffffffff + } + + public static class AdapterView.AdapterContextMenuInfo implements android.view.ContextMenu.ContextMenuInfo { + ctor public AdapterView.AdapterContextMenuInfo(android.view.View, int, long); + field public long id; + field public int position; + field public android.view.View targetView; + } + + public static interface AdapterView.OnItemClickListener { + method public void onItemClick(android.widget.AdapterView, android.view.View, int, long); + } + + public static interface AdapterView.OnItemLongClickListener { + method public boolean onItemLongClick(android.widget.AdapterView, android.view.View, int, long); + } + + public static interface AdapterView.OnItemSelectedListener { + method public void onItemSelected(android.widget.AdapterView, android.view.View, int, long); + method public void onNothingSelected(android.widget.AdapterView); + } + + public abstract class AdapterViewAnimator extends android.widget.AdapterView implements android.widget.Advanceable { + ctor public AdapterViewAnimator(android.content.Context); + ctor public AdapterViewAnimator(android.content.Context, android.util.AttributeSet); + ctor public AdapterViewAnimator(android.content.Context, android.util.AttributeSet, int); + ctor public AdapterViewAnimator(android.content.Context, android.util.AttributeSet, int, int); + method public void advance(); + method public void deferNotifyDataSetChanged(); + method public void fyiWillBeAdvancedByHostKThx(); + method public android.widget.Adapter getAdapter(); + method public android.view.View getCurrentView(); + method public int getDisplayedChild(); + method public android.animation.ObjectAnimator getInAnimation(); + method public android.animation.ObjectAnimator getOutAnimation(); + method public android.view.View getSelectedView(); + method public boolean onRemoteAdapterConnected(); + method public void onRemoteAdapterDisconnected(); + method public void onRestoreInstanceState(android.os.Parcelable); + method public android.os.Parcelable onSaveInstanceState(); + method public void setAdapter(android.widget.Adapter); + method public void setAnimateFirstView(boolean); + method public void setDisplayedChild(int); + method public void setInAnimation(android.animation.ObjectAnimator); + method public void setInAnimation(android.content.Context, int); + method public void setOutAnimation(android.animation.ObjectAnimator); + method public void setOutAnimation(android.content.Context, int); + method public void setRemoteViewsAdapter(android.content.Intent); + method public void setSelection(int); + method public void showNext(); + method public void showPrevious(); + } + + @android.widget.RemoteViews.RemoteView public class AdapterViewFlipper extends android.widget.AdapterViewAnimator { + ctor public AdapterViewFlipper(android.content.Context); + ctor public AdapterViewFlipper(android.content.Context, android.util.AttributeSet); + ctor public AdapterViewFlipper(android.content.Context, android.util.AttributeSet, int); + ctor public AdapterViewFlipper(android.content.Context, android.util.AttributeSet, int, int); + method public int getFlipInterval(); + method public boolean isAutoStart(); + method public boolean isFlipping(); + method public void setAutoStart(boolean); + method public void setFlipInterval(int); + method public void startFlipping(); + method public void stopFlipping(); + } + + public interface Advanceable { + method public void advance(); + method public void fyiWillBeAdvancedByHostKThx(); + } + + public class AlphabetIndexer extends android.database.DataSetObserver implements android.widget.SectionIndexer { + ctor public AlphabetIndexer(android.database.Cursor, int, CharSequence); + method protected int compare(String, String); + method public int getPositionForSection(int); + method public int getSectionForPosition(int); + method public Object[] getSections(); + method public void setCursor(android.database.Cursor); + field protected CharSequence mAlphabet; + field protected int mColumnIndex; + field protected android.database.Cursor mDataCursor; + } + + @Deprecated @android.widget.RemoteViews.RemoteView public class AnalogClock extends android.view.View { + ctor @Deprecated public AnalogClock(android.content.Context); + ctor @Deprecated public AnalogClock(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public AnalogClock(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public AnalogClock(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated @Nullable public android.graphics.BlendMode getDialTintBlendMode(); + method @Deprecated @Nullable public android.content.res.ColorStateList getDialTintList(); + method @Deprecated @Nullable public android.graphics.BlendMode getHourHandTintBlendMode(); + method @Deprecated @Nullable public android.content.res.ColorStateList getHourHandTintList(); + method @Deprecated @Nullable public android.graphics.BlendMode getMinuteHandTintBlendMode(); + method @Deprecated @Nullable public android.content.res.ColorStateList getMinuteHandTintList(); + method @Deprecated @Nullable public android.graphics.BlendMode getSecondHandTintBlendMode(); + method @Deprecated @Nullable public android.content.res.ColorStateList getSecondHandTintList(); + method @Deprecated @Nullable public String getTimeZone(); + method @Deprecated public void setDial(@NonNull android.graphics.drawable.Icon); + method @Deprecated public void setDialTintBlendMode(@Nullable android.graphics.BlendMode); + method @Deprecated public void setDialTintList(@Nullable android.content.res.ColorStateList); + method @Deprecated public void setHourHand(@NonNull android.graphics.drawable.Icon); + method @Deprecated public void setHourHandTintBlendMode(@Nullable android.graphics.BlendMode); + method @Deprecated public void setHourHandTintList(@Nullable android.content.res.ColorStateList); + method @Deprecated public void setMinuteHand(@NonNull android.graphics.drawable.Icon); + method @Deprecated public void setMinuteHandTintBlendMode(@Nullable android.graphics.BlendMode); + method @Deprecated public void setMinuteHandTintList(@Nullable android.content.res.ColorStateList); + method @Deprecated public void setSecondHand(@Nullable android.graphics.drawable.Icon); + method @Deprecated public void setSecondHandTintBlendMode(@Nullable android.graphics.BlendMode); + method @Deprecated public void setSecondHandTintList(@Nullable android.content.res.ColorStateList); + method @Deprecated public void setTimeZone(@Nullable String); + } + + public class ArrayAdapter extends android.widget.BaseAdapter implements android.widget.Filterable android.widget.ThemedSpinnerAdapter { + ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int); + ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @IdRes int); + ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @NonNull T[]); + ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @IdRes int, @NonNull T[]); + ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @NonNull java.util.List); + ctor public ArrayAdapter(@NonNull android.content.Context, @LayoutRes int, @IdRes int, @NonNull java.util.List); + method public void add(@Nullable T); + method public void addAll(@NonNull java.util.Collection); + method public void addAll(T...); + method public void clear(); + method @NonNull public static android.widget.ArrayAdapter createFromResource(@NonNull android.content.Context, @ArrayRes int, @LayoutRes int); + method @NonNull public android.content.Context getContext(); + method public int getCount(); + method @Nullable public android.content.res.Resources.Theme getDropDownViewTheme(); + method @NonNull public android.widget.Filter getFilter(); + method @Nullable public T getItem(int); + method public long getItemId(int); + method public int getPosition(@Nullable T); + method @NonNull public android.view.View getView(int, @Nullable android.view.View, @NonNull android.view.ViewGroup); + method public void insert(@Nullable T, int); + method public void remove(@Nullable T); + method public void setDropDownViewResource(@LayoutRes int); + method public void setDropDownViewTheme(@Nullable android.content.res.Resources.Theme); + method public void setNotifyOnChange(boolean); + method public void sort(@NonNull java.util.Comparator); + } + + public class AutoCompleteTextView extends android.widget.EditText implements android.widget.Filter.FilterListener { + ctor public AutoCompleteTextView(android.content.Context); + ctor public AutoCompleteTextView(android.content.Context, android.util.AttributeSet); + ctor public AutoCompleteTextView(android.content.Context, android.util.AttributeSet, int); + ctor public AutoCompleteTextView(android.content.Context, android.util.AttributeSet, int, int); + ctor public AutoCompleteTextView(android.content.Context, android.util.AttributeSet, int, int, android.content.res.Resources.Theme); + method public void clearListSelection(); + method protected CharSequence convertSelectionToString(Object); + method public void dismissDropDown(); + method public boolean enoughToFilter(); + method public android.widget.ListAdapter getAdapter(); + method public CharSequence getCompletionHint(); + method public int getDropDownAnchor(); + method public android.graphics.drawable.Drawable getDropDownBackground(); + method public int getDropDownHeight(); + method public int getDropDownHorizontalOffset(); + method public int getDropDownVerticalOffset(); + method public int getDropDownWidth(); + method protected android.widget.Filter getFilter(); + method public int getInputMethodMode(); + method @Deprecated public android.widget.AdapterView.OnItemClickListener getItemClickListener(); + method @Deprecated public android.widget.AdapterView.OnItemSelectedListener getItemSelectedListener(); + method public int getListSelection(); + method public android.widget.AdapterView.OnItemClickListener getOnItemClickListener(); + method public android.widget.AdapterView.OnItemSelectedListener getOnItemSelectedListener(); + method public int getThreshold(); + method public android.widget.AutoCompleteTextView.Validator getValidator(); + method public boolean isPerformingCompletion(); + method public boolean isPopupShowing(); + method public void onFilterComplete(int); + method public void performCompletion(); + method protected void performFiltering(CharSequence, int); + method public void performValidation(); + method public final void refreshAutoCompleteResults(); + method protected void replaceText(CharSequence); + method public void setAdapter(T); + method public void setCompletionHint(CharSequence); + method public void setDropDownAnchor(int); + method public void setDropDownBackgroundDrawable(android.graphics.drawable.Drawable); + method public void setDropDownBackgroundResource(@DrawableRes int); + method public void setDropDownHeight(int); + method public void setDropDownHorizontalOffset(int); + method public void setDropDownVerticalOffset(int); + method public void setDropDownWidth(int); + method public void setInputMethodMode(int); + method public void setListSelection(int); + method public void setOnDismissListener(android.widget.AutoCompleteTextView.OnDismissListener); + method public void setOnItemClickListener(android.widget.AdapterView.OnItemClickListener); + method public void setOnItemSelectedListener(android.widget.AdapterView.OnItemSelectedListener); + method public void setText(CharSequence, boolean); + method public void setThreshold(int); + method public void setValidator(android.widget.AutoCompleteTextView.Validator); + method public void showDropDown(); + } + + public static interface AutoCompleteTextView.OnDismissListener { + method public void onDismiss(); + } + + public static interface AutoCompleteTextView.Validator { + method public CharSequence fixText(CharSequence); + method public boolean isValid(CharSequence); + } + + public abstract class BaseAdapter implements android.widget.ListAdapter android.widget.SpinnerAdapter { + ctor public BaseAdapter(); + method public boolean areAllItemsEnabled(); + method public CharSequence[] getAutofillOptions(); + method public android.view.View getDropDownView(int, android.view.View, android.view.ViewGroup); + method public int getItemViewType(int); + method public int getViewTypeCount(); + method public boolean hasStableIds(); + method public boolean isEmpty(); + method public boolean isEnabled(int); + method public void notifyDataSetChanged(); + method public void notifyDataSetInvalidated(); + method public void registerDataSetObserver(android.database.DataSetObserver); + method public void setAutofillOptions(@Nullable java.lang.CharSequence...); + method public void unregisterDataSetObserver(android.database.DataSetObserver); + } + + public abstract class BaseExpandableListAdapter implements android.widget.ExpandableListAdapter android.widget.HeterogeneousExpandableList { + ctor public BaseExpandableListAdapter(); + method public boolean areAllItemsEnabled(); + method public int getChildType(int, int); + method public int getChildTypeCount(); + method public long getCombinedChildId(long, long); + method public long getCombinedGroupId(long); + method public int getGroupType(int); + method public int getGroupTypeCount(); + method public boolean isEmpty(); + method public void notifyDataSetChanged(); + method public void notifyDataSetInvalidated(); + method public void onGroupCollapsed(int); + method public void onGroupExpanded(int); + method public void registerDataSetObserver(android.database.DataSetObserver); + method public void unregisterDataSetObserver(android.database.DataSetObserver); + } + + @android.widget.RemoteViews.RemoteView public class Button extends android.widget.TextView { + ctor public Button(android.content.Context); + ctor public Button(android.content.Context, android.util.AttributeSet); + ctor public Button(android.content.Context, android.util.AttributeSet, int); + ctor public Button(android.content.Context, android.util.AttributeSet, int, int); + } + + public class CalendarView extends android.widget.FrameLayout { + ctor public CalendarView(@NonNull android.content.Context); + ctor public CalendarView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public CalendarView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int); + ctor public CalendarView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int, @StyleRes int); + method public long getDate(); + method @StyleRes public int getDateTextAppearance(); + method public int getFirstDayOfWeek(); + method @Deprecated @ColorInt public int getFocusedMonthDateColor(); + method public long getMaxDate(); + method public long getMinDate(); + method @Deprecated public android.graphics.drawable.Drawable getSelectedDateVerticalBar(); + method @Deprecated @ColorInt public int getSelectedWeekBackgroundColor(); + method @Deprecated public boolean getShowWeekNumber(); + method @Deprecated public int getShownWeekCount(); + method @Deprecated @ColorInt public int getUnfocusedMonthDateColor(); + method @StyleRes public int getWeekDayTextAppearance(); + method @Deprecated @ColorInt public int getWeekNumberColor(); + method @Deprecated @ColorInt public int getWeekSeparatorLineColor(); + method public void setDate(long); + method public void setDate(long, boolean, boolean); + method public void setDateTextAppearance(@StyleRes int); + method public void setFirstDayOfWeek(int); + method @Deprecated public void setFocusedMonthDateColor(@ColorInt int); + method public void setMaxDate(long); + method public void setMinDate(long); + method public void setOnDateChangeListener(android.widget.CalendarView.OnDateChangeListener); + method @Deprecated public void setSelectedDateVerticalBar(@DrawableRes int); + method @Deprecated public void setSelectedDateVerticalBar(android.graphics.drawable.Drawable); + method @Deprecated public void setSelectedWeekBackgroundColor(@ColorInt int); + method @Deprecated public void setShowWeekNumber(boolean); + method @Deprecated public void setShownWeekCount(int); + method @Deprecated public void setUnfocusedMonthDateColor(@ColorInt int); + method public void setWeekDayTextAppearance(@StyleRes int); + method @Deprecated public void setWeekNumberColor(@ColorInt int); + method @Deprecated public void setWeekSeparatorLineColor(@ColorInt int); + } + + public static interface CalendarView.OnDateChangeListener { + method public void onSelectedDayChange(@NonNull android.widget.CalendarView, int, int, int); + } + + @android.widget.RemoteViews.RemoteView public class CheckBox extends android.widget.CompoundButton { + ctor public CheckBox(android.content.Context); + ctor public CheckBox(android.content.Context, android.util.AttributeSet); + ctor public CheckBox(android.content.Context, android.util.AttributeSet, int); + ctor public CheckBox(android.content.Context, android.util.AttributeSet, int, int); + } + + public interface Checkable { + method public boolean isChecked(); + method public void setChecked(boolean); + method public void toggle(); + } + + public class CheckedTextView extends android.widget.TextView implements android.widget.Checkable { + ctor public CheckedTextView(android.content.Context); + ctor public CheckedTextView(android.content.Context, android.util.AttributeSet); + ctor public CheckedTextView(android.content.Context, android.util.AttributeSet, int); + ctor public CheckedTextView(android.content.Context, android.util.AttributeSet, int, int); + method public android.graphics.drawable.Drawable getCheckMarkDrawable(); + method @Nullable public android.graphics.BlendMode getCheckMarkTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getCheckMarkTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getCheckMarkTintMode(); + method public boolean isChecked(); + method public void setCheckMarkDrawable(@DrawableRes int); + method public void setCheckMarkDrawable(@Nullable android.graphics.drawable.Drawable); + method public void setCheckMarkTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setCheckMarkTintList(@Nullable android.content.res.ColorStateList); + method public void setCheckMarkTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public void setChecked(boolean); + method public void toggle(); + } + + @android.widget.RemoteViews.RemoteView public class Chronometer extends android.widget.TextView { + ctor public Chronometer(android.content.Context); + ctor public Chronometer(android.content.Context, android.util.AttributeSet); + ctor public Chronometer(android.content.Context, android.util.AttributeSet, int); + ctor public Chronometer(android.content.Context, android.util.AttributeSet, int, int); + method public long getBase(); + method public String getFormat(); + method public android.widget.Chronometer.OnChronometerTickListener getOnChronometerTickListener(); + method public boolean isCountDown(); + method public boolean isTheFinalCountDown(); + method public void setBase(long); + method public void setCountDown(boolean); + method public void setFormat(String); + method public void setOnChronometerTickListener(android.widget.Chronometer.OnChronometerTickListener); + method public void start(); + method public void stop(); + } + + public static interface Chronometer.OnChronometerTickListener { + method public void onChronometerTick(android.widget.Chronometer); + } + + public abstract class CompoundButton extends android.widget.Button implements android.widget.Checkable { + ctor public CompoundButton(android.content.Context); + ctor public CompoundButton(android.content.Context, android.util.AttributeSet); + ctor public CompoundButton(android.content.Context, android.util.AttributeSet, int); + ctor public CompoundButton(android.content.Context, android.util.AttributeSet, int, int); + method @Nullable public android.graphics.drawable.Drawable getButtonDrawable(); + method @Nullable public android.graphics.BlendMode getButtonTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getButtonTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getButtonTintMode(); + method public boolean isChecked(); + method public void setButtonDrawable(@DrawableRes int); + method public void setButtonDrawable(@Nullable android.graphics.drawable.Drawable); + method public void setButtonIcon(@Nullable android.graphics.drawable.Icon); + method public void setButtonTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setButtonTintList(@Nullable android.content.res.ColorStateList); + method public void setButtonTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public void setChecked(boolean); + method public void setOnCheckedChangeListener(@Nullable android.widget.CompoundButton.OnCheckedChangeListener); + method public void toggle(); + } + + public static interface CompoundButton.OnCheckedChangeListener { + method public void onCheckedChanged(@NonNull android.widget.CompoundButton, boolean); + } + + public abstract class CursorAdapter extends android.widget.BaseAdapter implements android.widget.Filterable android.widget.ThemedSpinnerAdapter { + ctor @Deprecated public CursorAdapter(android.content.Context, android.database.Cursor); + ctor public CursorAdapter(android.content.Context, android.database.Cursor, boolean); + ctor public CursorAdapter(android.content.Context, android.database.Cursor, int); + method public abstract void bindView(android.view.View, android.content.Context, android.database.Cursor); + method public void changeCursor(android.database.Cursor); + method public CharSequence convertToString(android.database.Cursor); + method public int getCount(); + method public android.database.Cursor getCursor(); + method public android.content.res.Resources.Theme getDropDownViewTheme(); + method public android.widget.Filter getFilter(); + method public android.widget.FilterQueryProvider getFilterQueryProvider(); + method public Object getItem(int); + method public long getItemId(int); + method public android.view.View getView(int, android.view.View, android.view.ViewGroup); + method @Deprecated protected void init(android.content.Context, android.database.Cursor, boolean); + method public android.view.View newDropDownView(android.content.Context, android.database.Cursor, android.view.ViewGroup); + method public abstract android.view.View newView(android.content.Context, android.database.Cursor, android.view.ViewGroup); + method protected void onContentChanged(); + method @WorkerThread public android.database.Cursor runQueryOnBackgroundThread(CharSequence); + method public void setDropDownViewTheme(android.content.res.Resources.Theme); + method public void setFilterQueryProvider(android.widget.FilterQueryProvider); + method public android.database.Cursor swapCursor(android.database.Cursor); + field @Deprecated public static final int FLAG_AUTO_REQUERY = 1; // 0x1 + field public static final int FLAG_REGISTER_CONTENT_OBSERVER = 2; // 0x2 + } + + public abstract class CursorTreeAdapter extends android.widget.BaseExpandableListAdapter implements android.widget.Filterable { + ctor public CursorTreeAdapter(android.database.Cursor, android.content.Context); + ctor public CursorTreeAdapter(android.database.Cursor, android.content.Context, boolean); + method protected abstract void bindChildView(android.view.View, android.content.Context, android.database.Cursor, boolean); + method protected abstract void bindGroupView(android.view.View, android.content.Context, android.database.Cursor, boolean); + method public void changeCursor(android.database.Cursor); + method public String convertToString(android.database.Cursor); + method public android.database.Cursor getChild(int, int); + method public long getChildId(int, int); + method public android.view.View getChildView(int, int, boolean, android.view.View, android.view.ViewGroup); + method public int getChildrenCount(int); + method protected abstract android.database.Cursor getChildrenCursor(android.database.Cursor); + method public android.database.Cursor getCursor(); + method public android.widget.Filter getFilter(); + method public android.widget.FilterQueryProvider getFilterQueryProvider(); + method public android.database.Cursor getGroup(int); + method public int getGroupCount(); + method public long getGroupId(int); + method public android.view.View getGroupView(int, boolean, android.view.View, android.view.ViewGroup); + method public boolean hasStableIds(); + method public boolean isChildSelectable(int, int); + method protected abstract android.view.View newChildView(android.content.Context, android.database.Cursor, boolean, android.view.ViewGroup); + method protected abstract android.view.View newGroupView(android.content.Context, android.database.Cursor, boolean, android.view.ViewGroup); + method public void notifyDataSetChanged(boolean); + method public android.database.Cursor runQueryOnBackgroundThread(CharSequence); + method public void setChildrenCursor(int, android.database.Cursor); + method public void setFilterQueryProvider(android.widget.FilterQueryProvider); + method public void setGroupCursor(android.database.Cursor); + } + + public class DatePicker extends android.widget.FrameLayout { + ctor public DatePicker(android.content.Context); + ctor public DatePicker(android.content.Context, android.util.AttributeSet); + ctor public DatePicker(android.content.Context, android.util.AttributeSet, int); + ctor public DatePicker(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public android.widget.CalendarView getCalendarView(); + method @Deprecated public boolean getCalendarViewShown(); + method public int getDayOfMonth(); + method public int getFirstDayOfWeek(); + method public long getMaxDate(); + method public long getMinDate(); + method public int getMonth(); + method @Deprecated public boolean getSpinnersShown(); + method public int getYear(); + method public void init(int, int, int, android.widget.DatePicker.OnDateChangedListener); + method @Deprecated public void setCalendarViewShown(boolean); + method public void setFirstDayOfWeek(int); + method public void setMaxDate(long); + method public void setMinDate(long); + method public void setOnDateChangedListener(android.widget.DatePicker.OnDateChangedListener); + method @Deprecated public void setSpinnersShown(boolean); + method public void updateDate(int, int, int); + } + + public static interface DatePicker.OnDateChangedListener { + method public void onDateChanged(android.widget.DatePicker, int, int, int); + } + + @Deprecated public class DialerFilter extends android.widget.RelativeLayout { + ctor @Deprecated public DialerFilter(android.content.Context); + ctor @Deprecated public DialerFilter(android.content.Context, android.util.AttributeSet); + method @Deprecated public void append(String); + method @Deprecated public void clearText(); + method @Deprecated public CharSequence getDigits(); + method @Deprecated public CharSequence getFilterText(); + method @Deprecated public CharSequence getLetters(); + method @Deprecated public int getMode(); + method @Deprecated public boolean isQwertyKeyboard(); + method @Deprecated protected void onModeChange(int, int); + method @Deprecated public void removeFilterWatcher(android.text.TextWatcher); + method @Deprecated public void setDigitsWatcher(android.text.TextWatcher); + method @Deprecated public void setFilterWatcher(android.text.TextWatcher); + method @Deprecated public void setLettersWatcher(android.text.TextWatcher); + method @Deprecated public void setMode(int); + field @Deprecated public static final int DIGITS_AND_LETTERS = 1; // 0x1 + field @Deprecated public static final int DIGITS_AND_LETTERS_NO_DIGITS = 2; // 0x2 + field @Deprecated public static final int DIGITS_AND_LETTERS_NO_LETTERS = 3; // 0x3 + field @Deprecated public static final int DIGITS_ONLY = 4; // 0x4 + field @Deprecated public static final int LETTERS_ONLY = 5; // 0x5 + } + + @Deprecated public class DigitalClock extends android.widget.TextView { + ctor @Deprecated public DigitalClock(android.content.Context); + ctor @Deprecated public DigitalClock(android.content.Context, android.util.AttributeSet); + } + + public class EdgeEffect { + ctor public EdgeEffect(android.content.Context); + ctor public EdgeEffect(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + method public boolean draw(android.graphics.Canvas); + method public void finish(); + method @Nullable public android.graphics.BlendMode getBlendMode(); + method @ColorInt public int getColor(); + method public float getDistance(); + method public int getMaxHeight(); + method public boolean isFinished(); + method public void onAbsorb(int); + method public void onPull(float); + method public void onPull(float, float); + method public float onPullDistance(float, float); + method public void onRelease(); + method public void setBlendMode(@Nullable android.graphics.BlendMode); + method public void setColor(@ColorInt int); + method public void setSize(int, int); + field public static final android.graphics.BlendMode DEFAULT_BLEND_MODE; + } + + public class EditText extends android.widget.TextView { + ctor public EditText(android.content.Context); + ctor public EditText(android.content.Context, android.util.AttributeSet); + ctor public EditText(android.content.Context, android.util.AttributeSet, int); + ctor public EditText(android.content.Context, android.util.AttributeSet, int, int); + method public void extendSelection(int); + method public android.text.Editable getText(); + method public boolean isStyleShortcutEnabled(); + method public void selectAll(); + method public void setSelection(int, int); + method public void setSelection(int); + method public void setStyleShortcutsEnabled(boolean); + } + + public interface ExpandableListAdapter { + method public boolean areAllItemsEnabled(); + method public Object getChild(int, int); + method public long getChildId(int, int); + method public android.view.View getChildView(int, int, boolean, android.view.View, android.view.ViewGroup); + method public int getChildrenCount(int); + method public long getCombinedChildId(long, long); + method public long getCombinedGroupId(long); + method public Object getGroup(int); + method public int getGroupCount(); + method public long getGroupId(int); + method public android.view.View getGroupView(int, boolean, android.view.View, android.view.ViewGroup); + method public boolean hasStableIds(); + method public boolean isChildSelectable(int, int); + method public boolean isEmpty(); + method public void onGroupCollapsed(int); + method public void onGroupExpanded(int); + method public void registerDataSetObserver(android.database.DataSetObserver); + method public void unregisterDataSetObserver(android.database.DataSetObserver); + } + + public class ExpandableListView extends android.widget.ListView { + ctor public ExpandableListView(android.content.Context); + ctor public ExpandableListView(android.content.Context, android.util.AttributeSet); + ctor public ExpandableListView(android.content.Context, android.util.AttributeSet, int); + ctor public ExpandableListView(android.content.Context, android.util.AttributeSet, int, int); + method public boolean collapseGroup(int); + method public boolean expandGroup(int); + method public boolean expandGroup(int, boolean); + method public android.widget.ExpandableListAdapter getExpandableListAdapter(); + method public long getExpandableListPosition(int); + method public int getFlatListPosition(long); + method public static int getPackedPositionChild(long); + method public static long getPackedPositionForChild(int, int); + method public static long getPackedPositionForGroup(int); + method public static int getPackedPositionGroup(long); + method public static int getPackedPositionType(long); + method public long getSelectedId(); + method public long getSelectedPosition(); + method public boolean isGroupExpanded(int); + method public void setAdapter(android.widget.ExpandableListAdapter); + method public void setChildDivider(android.graphics.drawable.Drawable); + method public void setChildIndicator(android.graphics.drawable.Drawable); + method public void setChildIndicatorBounds(int, int); + method public void setChildIndicatorBoundsRelative(int, int); + method public void setGroupIndicator(android.graphics.drawable.Drawable); + method public void setIndicatorBounds(int, int); + method public void setIndicatorBoundsRelative(int, int); + method public void setOnChildClickListener(android.widget.ExpandableListView.OnChildClickListener); + method public void setOnGroupClickListener(android.widget.ExpandableListView.OnGroupClickListener); + method public void setOnGroupCollapseListener(android.widget.ExpandableListView.OnGroupCollapseListener); + method public void setOnGroupExpandListener(android.widget.ExpandableListView.OnGroupExpandListener); + method public boolean setSelectedChild(int, int, boolean); + method public void setSelectedGroup(int); + field public static final int CHILD_INDICATOR_INHERIT = -1; // 0xffffffff + field public static final int PACKED_POSITION_TYPE_CHILD = 1; // 0x1 + field public static final int PACKED_POSITION_TYPE_GROUP = 0; // 0x0 + field public static final int PACKED_POSITION_TYPE_NULL = 2; // 0x2 + field public static final long PACKED_POSITION_VALUE_NULL = 4294967295L; // 0xffffffffL + } + + public static class ExpandableListView.ExpandableListContextMenuInfo implements android.view.ContextMenu.ContextMenuInfo { + ctor public ExpandableListView.ExpandableListContextMenuInfo(android.view.View, long, long); + field public long id; + field public long packedPosition; + field public android.view.View targetView; + } + + public static interface ExpandableListView.OnChildClickListener { + method public boolean onChildClick(android.widget.ExpandableListView, android.view.View, int, int, long); + } + + public static interface ExpandableListView.OnGroupClickListener { + method public boolean onGroupClick(android.widget.ExpandableListView, android.view.View, int, long); + } + + public static interface ExpandableListView.OnGroupCollapseListener { + method public void onGroupCollapse(int); + } + + public static interface ExpandableListView.OnGroupExpandListener { + method public void onGroupExpand(int); + } + + public abstract class Filter { + ctor public Filter(); + method public CharSequence convertResultToString(Object); + method public final void filter(CharSequence); + method public final void filter(CharSequence, android.widget.Filter.FilterListener); + method protected abstract android.widget.Filter.FilterResults performFiltering(CharSequence); + method protected abstract void publishResults(CharSequence, android.widget.Filter.FilterResults); + } + + public static interface Filter.FilterListener { + method public void onFilterComplete(int); + } + + protected static class Filter.FilterResults { + ctor public Filter.FilterResults(); + field public int count; + field public Object values; + } + + public interface FilterQueryProvider { + method public android.database.Cursor runQuery(CharSequence); + } + + public interface Filterable { + method public android.widget.Filter getFilter(); + } + + @android.widget.RemoteViews.RemoteView public class FrameLayout extends android.view.ViewGroup { + ctor public FrameLayout(@NonNull android.content.Context); + ctor public FrameLayout(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public FrameLayout(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int); + ctor public FrameLayout(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int, @StyleRes int); + method protected android.widget.FrameLayout.LayoutParams generateDefaultLayoutParams(); + method public android.widget.FrameLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); + method @Deprecated public boolean getConsiderGoneChildrenWhenMeasuring(); + method public boolean getMeasureAllChildren(); + method protected void onLayout(boolean, int, int, int, int); + method public void setMeasureAllChildren(boolean); + } + + public static class FrameLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { + ctor public FrameLayout.LayoutParams(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public FrameLayout.LayoutParams(int, int); + ctor public FrameLayout.LayoutParams(int, int, int); + ctor public FrameLayout.LayoutParams(@NonNull android.view.ViewGroup.LayoutParams); + ctor public FrameLayout.LayoutParams(@NonNull android.view.ViewGroup.MarginLayoutParams); + ctor public FrameLayout.LayoutParams(@NonNull android.widget.FrameLayout.LayoutParams); + field public static final int UNSPECIFIED_GRAVITY = -1; // 0xffffffff + field public int gravity; + } + + @Deprecated public class Gallery extends android.widget.AbsSpinner implements android.view.GestureDetector.OnGestureListener { + ctor @Deprecated public Gallery(android.content.Context); + ctor @Deprecated public Gallery(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public Gallery(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public Gallery(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public boolean onDown(android.view.MotionEvent); + method @Deprecated public boolean onFling(android.view.MotionEvent, android.view.MotionEvent, float, float); + method @Deprecated public void onLongPress(@NonNull android.view.MotionEvent); + method @Deprecated public boolean onScroll(android.view.MotionEvent, android.view.MotionEvent, float, float); + method @Deprecated public void onShowPress(android.view.MotionEvent); + method @Deprecated public boolean onSingleTapUp(android.view.MotionEvent); + method @Deprecated public void setAnimationDuration(int); + method @Deprecated public void setCallbackDuringFling(boolean); + method @Deprecated public void setGravity(int); + method @Deprecated public void setSpacing(int); + method @Deprecated public void setUnselectedAlpha(float); + } + + @Deprecated public static class Gallery.LayoutParams extends android.view.ViewGroup.LayoutParams { + ctor @Deprecated public Gallery.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public Gallery.LayoutParams(int, int); + ctor @Deprecated public Gallery.LayoutParams(android.view.ViewGroup.LayoutParams); + } + + @android.widget.RemoteViews.RemoteView public class GridLayout extends android.view.ViewGroup { + ctor public GridLayout(android.content.Context); + ctor public GridLayout(android.content.Context, android.util.AttributeSet); + ctor public GridLayout(android.content.Context, android.util.AttributeSet, int); + ctor public GridLayout(android.content.Context, android.util.AttributeSet, int, int); + method protected android.widget.GridLayout.LayoutParams generateDefaultLayoutParams(); + method public android.widget.GridLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); + method protected android.widget.GridLayout.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); + method public int getAlignmentMode(); + method public int getColumnCount(); + method public int getOrientation(); + method public int getRowCount(); + method public boolean getUseDefaultMargins(); + method public boolean isColumnOrderPreserved(); + method public boolean isRowOrderPreserved(); + method protected void onLayout(boolean, int, int, int, int); + method public void setAlignmentMode(int); + method public void setColumnCount(int); + method public void setColumnOrderPreserved(boolean); + method public void setOrientation(int); + method public void setRowCount(int); + method public void setRowOrderPreserved(boolean); + method public void setUseDefaultMargins(boolean); + method public static android.widget.GridLayout.Spec spec(int, int, android.widget.GridLayout.Alignment, float); + method public static android.widget.GridLayout.Spec spec(int, android.widget.GridLayout.Alignment, float); + method public static android.widget.GridLayout.Spec spec(int, int, float); + method public static android.widget.GridLayout.Spec spec(int, float); + method public static android.widget.GridLayout.Spec spec(int, int, android.widget.GridLayout.Alignment); + method public static android.widget.GridLayout.Spec spec(int, android.widget.GridLayout.Alignment); + method public static android.widget.GridLayout.Spec spec(int, int); + method public static android.widget.GridLayout.Spec spec(int); + field public static final int ALIGN_BOUNDS = 0; // 0x0 + field public static final int ALIGN_MARGINS = 1; // 0x1 + field public static final android.widget.GridLayout.Alignment BASELINE; + field public static final android.widget.GridLayout.Alignment BOTTOM; + field public static final android.widget.GridLayout.Alignment CENTER; + field public static final android.widget.GridLayout.Alignment END; + field public static final android.widget.GridLayout.Alignment FILL; + field public static final int HORIZONTAL = 0; // 0x0 + field public static final android.widget.GridLayout.Alignment LEFT; + field public static final android.widget.GridLayout.Alignment RIGHT; + field public static final android.widget.GridLayout.Alignment START; + field public static final android.widget.GridLayout.Alignment TOP; + field public static final int UNDEFINED = -2147483648; // 0x80000000 + field public static final int VERTICAL = 1; // 0x1 + } + + public abstract static class GridLayout.Alignment { + } + + public static class GridLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { + ctor public GridLayout.LayoutParams(android.widget.GridLayout.Spec, android.widget.GridLayout.Spec); + ctor public GridLayout.LayoutParams(); + ctor public GridLayout.LayoutParams(android.view.ViewGroup.LayoutParams); + ctor public GridLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams); + ctor public GridLayout.LayoutParams(android.widget.GridLayout.LayoutParams); + ctor public GridLayout.LayoutParams(android.content.Context, android.util.AttributeSet); + method public void setGravity(int); + field public android.widget.GridLayout.Spec columnSpec; + field public android.widget.GridLayout.Spec rowSpec; + } + + public static class GridLayout.Spec { + } + + @android.widget.RemoteViews.RemoteView public class GridView extends android.widget.AbsListView { + ctor public GridView(android.content.Context); + ctor public GridView(android.content.Context, android.util.AttributeSet); + ctor public GridView(android.content.Context, android.util.AttributeSet, int); + ctor public GridView(android.content.Context, android.util.AttributeSet, int, int); + method public android.widget.ListAdapter getAdapter(); + method public int getColumnWidth(); + method public int getGravity(); + method public int getHorizontalSpacing(); + method public int getNumColumns(); + method public int getRequestedColumnWidth(); + method public int getRequestedHorizontalSpacing(); + method public int getStretchMode(); + method public int getVerticalSpacing(); + method public void setColumnWidth(int); + method public void setGravity(int); + method public void setHorizontalSpacing(int); + method public void setNumColumns(int); + method public void setSelection(int); + method public void setStretchMode(int); + method public void setVerticalSpacing(int); + method public void smoothScrollByOffset(int); + field public static final int AUTO_FIT = -1; // 0xffffffff + field public static final int NO_STRETCH = 0; // 0x0 + field public static final int STRETCH_COLUMN_WIDTH = 2; // 0x2 + field public static final int STRETCH_SPACING = 1; // 0x1 + field public static final int STRETCH_SPACING_UNIFORM = 3; // 0x3 + } + + public class HeaderViewListAdapter implements android.widget.Filterable android.widget.WrapperListAdapter { + ctor public HeaderViewListAdapter(java.util.ArrayList, java.util.ArrayList, android.widget.ListAdapter); + method public boolean areAllItemsEnabled(); + method public int getCount(); + method public android.widget.Filter getFilter(); + method public int getFootersCount(); + method public int getHeadersCount(); + method public Object getItem(int); + method public long getItemId(int); + method public int getItemViewType(int); + method public android.view.View getView(int, android.view.View, android.view.ViewGroup); + method public int getViewTypeCount(); + method public android.widget.ListAdapter getWrappedAdapter(); + method public boolean hasStableIds(); + method public boolean isEmpty(); + method public boolean isEnabled(int); + method public void registerDataSetObserver(android.database.DataSetObserver); + method public boolean removeFooter(android.view.View); + method public boolean removeHeader(android.view.View); + method public void unregisterDataSetObserver(android.database.DataSetObserver); + } + + public interface HeterogeneousExpandableList { + method public int getChildType(int, int); + method public int getChildTypeCount(); + method public int getGroupType(int); + method public int getGroupTypeCount(); + } + + public class HorizontalScrollView extends android.widget.FrameLayout { + ctor public HorizontalScrollView(android.content.Context); + ctor public HorizontalScrollView(android.content.Context, android.util.AttributeSet); + ctor public HorizontalScrollView(android.content.Context, android.util.AttributeSet, int); + ctor public HorizontalScrollView(android.content.Context, android.util.AttributeSet, int, int); + method public boolean arrowScroll(int); + method protected int computeScrollDeltaToGetChildRectOnScreen(android.graphics.Rect); + method public boolean executeKeyEvent(android.view.KeyEvent); + method public void fling(int); + method public boolean fullScroll(int); + method @ColorInt public int getLeftEdgeEffectColor(); + method public int getMaxScrollAmount(); + method @ColorInt public int getRightEdgeEffectColor(); + method public boolean isFillViewport(); + method public boolean isSmoothScrollingEnabled(); + method public boolean pageScroll(int); + method public void setEdgeEffectColor(@ColorInt int); + method public void setFillViewport(boolean); + method public void setLeftEdgeEffectColor(@ColorInt int); + method public void setRightEdgeEffectColor(@ColorInt int); + method public void setSmoothScrollingEnabled(boolean); + method public final void smoothScrollBy(int, int); + method public final void smoothScrollTo(int, int); + } + + @android.widget.RemoteViews.RemoteView public class ImageButton extends android.widget.ImageView { + ctor public ImageButton(android.content.Context); + ctor public ImageButton(android.content.Context, android.util.AttributeSet); + ctor public ImageButton(android.content.Context, android.util.AttributeSet, int); + ctor public ImageButton(android.content.Context, android.util.AttributeSet, int, int); + } + + public class ImageSwitcher extends android.widget.ViewSwitcher { + ctor public ImageSwitcher(android.content.Context); + ctor public ImageSwitcher(android.content.Context, android.util.AttributeSet); + method public void setImageDrawable(android.graphics.drawable.Drawable); + method public void setImageResource(@DrawableRes int); + method public void setImageURI(android.net.Uri); + } + + @android.widget.RemoteViews.RemoteView public class ImageView extends android.view.View { + ctor public ImageView(android.content.Context); + ctor public ImageView(android.content.Context, @Nullable android.util.AttributeSet); + ctor public ImageView(android.content.Context, @Nullable android.util.AttributeSet, int); + ctor public ImageView(android.content.Context, @Nullable android.util.AttributeSet, int, int); + method public void animateTransform(@Nullable android.graphics.Matrix); + method public final void clearColorFilter(); + method public boolean getAdjustViewBounds(); + method public boolean getBaselineAlignBottom(); + method public android.graphics.ColorFilter getColorFilter(); + method public boolean getCropToPadding(); + method public android.graphics.drawable.Drawable getDrawable(); + method public int getImageAlpha(); + method public android.graphics.Matrix getImageMatrix(); + method @Nullable public android.graphics.BlendMode getImageTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getImageTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getImageTintMode(); + method public int getMaxHeight(); + method public int getMaxWidth(); + method public android.widget.ImageView.ScaleType getScaleType(); + method public int[] onCreateDrawableState(int); + method public void setAdjustViewBounds(boolean); + method @Deprecated public void setAlpha(int); + method public void setBaseline(int); + method public void setBaselineAlignBottom(boolean); + method public final void setColorFilter(int, android.graphics.PorterDuff.Mode); + method public final void setColorFilter(int); + method public void setColorFilter(android.graphics.ColorFilter); + method public void setCropToPadding(boolean); + method protected boolean setFrame(int, int, int, int); + method public void setImageAlpha(int); + method public void setImageBitmap(android.graphics.Bitmap); + method public void setImageDrawable(@Nullable android.graphics.drawable.Drawable); + method public void setImageIcon(@Nullable android.graphics.drawable.Icon); + method public void setImageLevel(int); + method public void setImageMatrix(android.graphics.Matrix); + method public void setImageResource(@DrawableRes int); + method public void setImageState(int[], boolean); + method public void setImageTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setImageTintList(@Nullable android.content.res.ColorStateList); + method public void setImageTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public void setImageURI(@Nullable android.net.Uri); + method public void setMaxHeight(int); + method public void setMaxWidth(int); + method public void setScaleType(android.widget.ImageView.ScaleType); + } + + public enum ImageView.ScaleType { + enum_constant public static final android.widget.ImageView.ScaleType CENTER; + enum_constant public static final android.widget.ImageView.ScaleType CENTER_CROP; + enum_constant public static final android.widget.ImageView.ScaleType CENTER_INSIDE; + enum_constant public static final android.widget.ImageView.ScaleType FIT_CENTER; + enum_constant public static final android.widget.ImageView.ScaleType FIT_END; + enum_constant public static final android.widget.ImageView.ScaleType FIT_START; + enum_constant public static final android.widget.ImageView.ScaleType FIT_XY; + enum_constant public static final android.widget.ImageView.ScaleType MATRIX; + } + + @android.widget.RemoteViews.RemoteView public class LinearLayout extends android.view.ViewGroup { + ctor public LinearLayout(android.content.Context); + ctor public LinearLayout(android.content.Context, @Nullable android.util.AttributeSet); + ctor public LinearLayout(android.content.Context, @Nullable android.util.AttributeSet, int); + ctor public LinearLayout(android.content.Context, android.util.AttributeSet, int, int); + method protected android.widget.LinearLayout.LayoutParams generateDefaultLayoutParams(); + method public android.widget.LinearLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); + method protected android.widget.LinearLayout.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); + method public int getBaselineAlignedChildIndex(); + method public android.graphics.drawable.Drawable getDividerDrawable(); + method public int getDividerPadding(); + method public int getGravity(); + method public int getOrientation(); + method public int getShowDividers(); + method public float getWeightSum(); + method public boolean isBaselineAligned(); + method public boolean isMeasureWithLargestChildEnabled(); + method protected void onLayout(boolean, int, int, int, int); + method public void setBaselineAligned(boolean); + method public void setBaselineAlignedChildIndex(int); + method public void setDividerDrawable(android.graphics.drawable.Drawable); + method public void setDividerPadding(int); + method public void setGravity(int); + method public void setHorizontalGravity(int); + method public void setMeasureWithLargestChildEnabled(boolean); + method public void setOrientation(int); + method public void setShowDividers(int); + method public void setVerticalGravity(int); + method public void setWeightSum(float); + field public static final int HORIZONTAL = 0; // 0x0 + field public static final int SHOW_DIVIDER_BEGINNING = 1; // 0x1 + field public static final int SHOW_DIVIDER_END = 4; // 0x4 + field public static final int SHOW_DIVIDER_MIDDLE = 2; // 0x2 + field public static final int SHOW_DIVIDER_NONE = 0; // 0x0 + field public static final int VERTICAL = 1; // 0x1 + } + + public static class LinearLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { + ctor public LinearLayout.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor public LinearLayout.LayoutParams(int, int); + ctor public LinearLayout.LayoutParams(int, int, float); + ctor public LinearLayout.LayoutParams(android.view.ViewGroup.LayoutParams); + ctor public LinearLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams); + ctor public LinearLayout.LayoutParams(android.widget.LinearLayout.LayoutParams); + method public String debug(String); + field public int gravity; + field public float weight; + } + + public interface ListAdapter extends android.widget.Adapter { + method public boolean areAllItemsEnabled(); + method public boolean isEnabled(int); + } + + public class ListPopupWindow { + ctor public ListPopupWindow(@NonNull android.content.Context); + ctor public ListPopupWindow(@NonNull android.content.Context, @Nullable android.util.AttributeSet); + ctor public ListPopupWindow(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int); + ctor public ListPopupWindow(@NonNull android.content.Context, @Nullable android.util.AttributeSet, @AttrRes int, @StyleRes int); + method public void clearListSelection(); + method public android.view.View.OnTouchListener createDragToOpenListener(android.view.View); + method public void dismiss(); + method @Nullable public android.view.View getAnchorView(); + method @StyleRes public int getAnimationStyle(); + method @Nullable public android.graphics.drawable.Drawable getBackground(); + method @Nullable public android.graphics.Rect getEpicenterBounds(); + method public int getHeight(); + method public int getHorizontalOffset(); + method public int getInputMethodMode(); + method @Nullable public android.widget.ListView getListView(); + method public int getPromptPosition(); + method @Nullable public Object getSelectedItem(); + method public long getSelectedItemId(); + method public int getSelectedItemPosition(); + method @Nullable public android.view.View getSelectedView(); + method public int getSoftInputMode(); + method public int getVerticalOffset(); + method public int getWidth(); + method public boolean isInputMethodNotNeeded(); + method public boolean isModal(); + method public boolean isShowing(); + method public boolean onKeyDown(int, @NonNull android.view.KeyEvent); + method public boolean onKeyPreIme(int, @NonNull android.view.KeyEvent); + method public boolean onKeyUp(int, @NonNull android.view.KeyEvent); + method public boolean performItemClick(int); + method public void postShow(); + method public void setAdapter(@Nullable android.widget.ListAdapter); + method public void setAnchorView(@Nullable android.view.View); + method public void setAnimationStyle(@StyleRes int); + method public void setBackgroundDrawable(@Nullable android.graphics.drawable.Drawable); + method public void setContentWidth(int); + method public void setDropDownGravity(int); + method public void setEpicenterBounds(@Nullable android.graphics.Rect); + method public void setHeight(int); + method public void setHorizontalOffset(int); + method public void setInputMethodMode(int); + method public void setListSelector(android.graphics.drawable.Drawable); + method public void setModal(boolean); + method public void setOnDismissListener(@Nullable android.widget.PopupWindow.OnDismissListener); + method public void setOnItemClickListener(@Nullable android.widget.AdapterView.OnItemClickListener); + method public void setOnItemSelectedListener(@Nullable android.widget.AdapterView.OnItemSelectedListener); + method public void setPromptPosition(int); + method public void setPromptView(@Nullable android.view.View); + method public void setSelection(int); + method public void setSoftInputMode(int); + method public void setVerticalOffset(int); + method public void setWidth(int); + method public void setWindowLayoutType(int); + method public void show(); + field public static final int INPUT_METHOD_FROM_FOCUSABLE = 0; // 0x0 + field public static final int INPUT_METHOD_NEEDED = 1; // 0x1 + field public static final int INPUT_METHOD_NOT_NEEDED = 2; // 0x2 + field public static final int MATCH_PARENT = -1; // 0xffffffff + field public static final int POSITION_PROMPT_ABOVE = 0; // 0x0 + field public static final int POSITION_PROMPT_BELOW = 1; // 0x1 + field public static final int WRAP_CONTENT = -2; // 0xfffffffe + } + + @android.widget.RemoteViews.RemoteView public class ListView extends android.widget.AbsListView { + ctor public ListView(android.content.Context); + ctor public ListView(android.content.Context, android.util.AttributeSet); + ctor public ListView(android.content.Context, android.util.AttributeSet, int); + ctor public ListView(android.content.Context, android.util.AttributeSet, int, int); + method public void addFooterView(android.view.View, Object, boolean); + method public void addFooterView(android.view.View); + method public void addHeaderView(android.view.View, Object, boolean); + method public void addHeaderView(android.view.View); + method public boolean areFooterDividersEnabled(); + method public boolean areHeaderDividersEnabled(); + method public android.widget.ListAdapter getAdapter(); + method @Deprecated public long[] getCheckItemIds(); + method @Nullable public android.graphics.drawable.Drawable getDivider(); + method public int getDividerHeight(); + method public int getFooterViewsCount(); + method public int getHeaderViewsCount(); + method public boolean getItemsCanFocus(); + method public int getMaxScrollAmount(); + method public android.graphics.drawable.Drawable getOverscrollFooter(); + method public android.graphics.drawable.Drawable getOverscrollHeader(); + method public boolean removeFooterView(android.view.View); + method public boolean removeHeaderView(android.view.View); + method public void setDivider(@Nullable android.graphics.drawable.Drawable); + method public void setDividerHeight(int); + method public void setFooterDividersEnabled(boolean); + method public void setHeaderDividersEnabled(boolean); + method public void setItemsCanFocus(boolean); + method public void setOverscrollFooter(android.graphics.drawable.Drawable); + method public void setOverscrollHeader(android.graphics.drawable.Drawable); + method public void setSelection(int); + method public void setSelectionAfterHeaderView(); + method public void smoothScrollByOffset(int); + } + + public class ListView.FixedViewInfo { + ctor public ListView.FixedViewInfo(); + field public Object data; + field public boolean isSelectable; + field public android.view.View view; + } + + @UiThread public final class Magnifier { + ctor @Deprecated public Magnifier(@NonNull android.view.View); + method public void dismiss(); + method @Px public float getCornerRadius(); + method @Px public int getDefaultHorizontalSourceToMagnifierOffset(); + method @Px public int getDefaultVerticalSourceToMagnifierOffset(); + method @Px public float getElevation(); + method @Px public int getHeight(); + method @Nullable public android.graphics.drawable.Drawable getOverlay(); + method @Nullable public android.graphics.Point getPosition(); + method @Px public int getSourceHeight(); + method @Nullable public android.graphics.Point getSourcePosition(); + method @Px public int getSourceWidth(); + method @Px public int getWidth(); + method public float getZoom(); + method public boolean isClippingEnabled(); + method public void setZoom(@FloatRange(from=0.0f) float); + method public void show(@FloatRange(from=0) float, @FloatRange(from=0) float); + method public void show(@FloatRange(from=0) float, @FloatRange(from=0) float, float, float); + method public void update(); + field public static final int SOURCE_BOUND_MAX_IN_SURFACE = 0; // 0x0 + field public static final int SOURCE_BOUND_MAX_VISIBLE = 1; // 0x1 + } + + public static final class Magnifier.Builder { + ctor public Magnifier.Builder(@NonNull android.view.View); + method @NonNull public android.widget.Magnifier build(); + method @NonNull public android.widget.Magnifier.Builder setClippingEnabled(boolean); + method @NonNull public android.widget.Magnifier.Builder setCornerRadius(@FloatRange(from=0) @Px float); + method @NonNull public android.widget.Magnifier.Builder setDefaultSourceToMagnifierOffset(@Px int, @Px int); + method @NonNull public android.widget.Magnifier.Builder setElevation(@FloatRange(from=0) @Px float); + method @NonNull public android.widget.Magnifier.Builder setInitialZoom(@FloatRange(from=0.0f) float); + method @NonNull public android.widget.Magnifier.Builder setOverlay(@Nullable android.graphics.drawable.Drawable); + method @NonNull public android.widget.Magnifier.Builder setSize(@IntRange(from=0) @Px int, @IntRange(from=0) @Px int); + method @NonNull public android.widget.Magnifier.Builder setSourceBounds(int, int, int, int); + } + + public class MediaController extends android.widget.FrameLayout { + ctor public MediaController(android.content.Context, android.util.AttributeSet); + ctor public MediaController(android.content.Context, boolean); + ctor public MediaController(android.content.Context); + method public void hide(); + method public boolean isShowing(); + method public void onFinishInflate(); + method public void setAnchorView(android.view.View); + method public void setMediaPlayer(android.widget.MediaController.MediaPlayerControl); + method public void setPrevNextListeners(android.view.View.OnClickListener, android.view.View.OnClickListener); + method public void show(); + method public void show(int); + } + + public static interface MediaController.MediaPlayerControl { + method public boolean canPause(); + method public boolean canSeekBackward(); + method public boolean canSeekForward(); + method public int getAudioSessionId(); + method public int getBufferPercentage(); + method public int getCurrentPosition(); + method public int getDuration(); + method public boolean isPlaying(); + method public void pause(); + method public void seekTo(int); + method public void start(); + } + + public class MultiAutoCompleteTextView extends android.widget.AutoCompleteTextView { + ctor public MultiAutoCompleteTextView(android.content.Context); + ctor public MultiAutoCompleteTextView(android.content.Context, android.util.AttributeSet); + ctor public MultiAutoCompleteTextView(android.content.Context, android.util.AttributeSet, int); + ctor public MultiAutoCompleteTextView(android.content.Context, android.util.AttributeSet, int, int); + method protected void performFiltering(CharSequence, int, int, int); + method public void setTokenizer(android.widget.MultiAutoCompleteTextView.Tokenizer); + } + + public static class MultiAutoCompleteTextView.CommaTokenizer implements android.widget.MultiAutoCompleteTextView.Tokenizer { + ctor public MultiAutoCompleteTextView.CommaTokenizer(); + method public int findTokenEnd(CharSequence, int); + method public int findTokenStart(CharSequence, int); + method public CharSequence terminateToken(CharSequence); + } + + public static interface MultiAutoCompleteTextView.Tokenizer { + method public int findTokenEnd(CharSequence, int); + method public int findTokenStart(CharSequence, int); + method public CharSequence terminateToken(CharSequence); + } + + public class NumberPicker extends android.widget.LinearLayout { + ctor public NumberPicker(android.content.Context); + ctor public NumberPicker(android.content.Context, android.util.AttributeSet); + ctor public NumberPicker(android.content.Context, android.util.AttributeSet, int); + ctor public NumberPicker(android.content.Context, android.util.AttributeSet, int, int); + method public String[] getDisplayedValues(); + method public int getMaxValue(); + method public int getMinValue(); + method @Px public int getSelectionDividerHeight(); + method @ColorInt public int getTextColor(); + method @FloatRange(from=0.0, fromInclusive=false) public float getTextSize(); + method public int getValue(); + method public boolean getWrapSelectorWheel(); + method public void setDisplayedValues(String[]); + method public void setFormatter(android.widget.NumberPicker.Formatter); + method public void setMaxValue(int); + method public void setMinValue(int); + method public void setOnLongPressUpdateInterval(long); + method public void setOnScrollListener(android.widget.NumberPicker.OnScrollListener); + method public void setOnValueChangedListener(android.widget.NumberPicker.OnValueChangeListener); + method public void setSelectionDividerHeight(@IntRange(from=0) @Px int); + method public void setTextColor(@ColorInt int); + method public void setTextSize(@FloatRange(from=0.0, fromInclusive=false) float); + method public void setValue(int); + method public void setWrapSelectorWheel(boolean); + } + + public static interface NumberPicker.Formatter { + method public String format(int); + } + + public static interface NumberPicker.OnScrollListener { + method public void onScrollStateChange(android.widget.NumberPicker, int); + field public static final int SCROLL_STATE_FLING = 2; // 0x2 + field public static final int SCROLL_STATE_IDLE = 0; // 0x0 + field public static final int SCROLL_STATE_TOUCH_SCROLL = 1; // 0x1 + } + + public static interface NumberPicker.OnValueChangeListener { + method public void onValueChange(android.widget.NumberPicker, int, int); + } + + public class OverScroller { + ctor public OverScroller(android.content.Context); + ctor public OverScroller(android.content.Context, android.view.animation.Interpolator); + ctor @Deprecated public OverScroller(android.content.Context, android.view.animation.Interpolator, float, float); + ctor @Deprecated public OverScroller(android.content.Context, android.view.animation.Interpolator, float, float, boolean); + method public void abortAnimation(); + method public boolean computeScrollOffset(); + method public void fling(int, int, int, int, int, int, int, int); + method public void fling(int, int, int, int, int, int, int, int, int, int); + method public final void forceFinished(boolean); + method public float getCurrVelocity(); + method public final int getCurrX(); + method public final int getCurrY(); + method public final int getFinalX(); + method public final int getFinalY(); + method public final int getStartX(); + method public final int getStartY(); + method public final boolean isFinished(); + method public boolean isOverScrolled(); + method public void notifyHorizontalEdgeReached(int, int, int); + method public void notifyVerticalEdgeReached(int, int, int); + method public final void setFriction(float); + method public boolean springBack(int, int, int, int, int, int); + method public void startScroll(int, int, int, int); + method public void startScroll(int, int, int, int, int); + } + + public class PopupMenu { + ctor public PopupMenu(android.content.Context, android.view.View); + ctor public PopupMenu(android.content.Context, android.view.View, int); + ctor public PopupMenu(android.content.Context, android.view.View, int, int, int); + method public void dismiss(); + method public android.view.View.OnTouchListener getDragToOpenListener(); + method public int getGravity(); + method public android.view.Menu getMenu(); + method public android.view.MenuInflater getMenuInflater(); + method public void inflate(@MenuRes int); + method public void setForceShowIcon(boolean); + method public void setGravity(int); + method public void setOnDismissListener(android.widget.PopupMenu.OnDismissListener); + method public void setOnMenuItemClickListener(android.widget.PopupMenu.OnMenuItemClickListener); + method public void show(); + } + + public static interface PopupMenu.OnDismissListener { + method public void onDismiss(android.widget.PopupMenu); + } + + public static interface PopupMenu.OnMenuItemClickListener { + method public boolean onMenuItemClick(android.view.MenuItem); + } + + public class PopupWindow { + ctor public PopupWindow(android.content.Context); + ctor public PopupWindow(android.content.Context, android.util.AttributeSet); + ctor public PopupWindow(android.content.Context, android.util.AttributeSet, int); + ctor public PopupWindow(android.content.Context, android.util.AttributeSet, int, int); + ctor public PopupWindow(); + ctor public PopupWindow(android.view.View); + ctor public PopupWindow(int, int); + ctor public PopupWindow(android.view.View, int, int); + ctor public PopupWindow(android.view.View, int, int, boolean); + method public void dismiss(); + method public int getAnimationStyle(); + method public android.graphics.drawable.Drawable getBackground(); + method public android.view.View getContentView(); + method public float getElevation(); + method @Nullable public android.transition.Transition getEnterTransition(); + method @Nullable public android.graphics.Rect getEpicenterBounds(); + method @Nullable public android.transition.Transition getExitTransition(); + method public int getHeight(); + method public int getInputMethodMode(); + method public int getMaxAvailableHeight(@NonNull android.view.View); + method public int getMaxAvailableHeight(@NonNull android.view.View, int); + method public int getMaxAvailableHeight(@NonNull android.view.View, int, boolean); + method public boolean getOverlapAnchor(); + method public int getSoftInputMode(); + method public int getWidth(); + method public int getWindowLayoutType(); + method public boolean isAboveAnchor(); + method public boolean isAttachedInDecor(); + method public boolean isClippedToScreen(); + method public boolean isClippingEnabled(); + method public boolean isFocusable(); + method public boolean isLaidOutInScreen(); + method public boolean isOutsideTouchable(); + method public boolean isShowing(); + method public boolean isSplitTouchEnabled(); + method public boolean isTouchModal(); + method public boolean isTouchable(); + method public void setAnimationStyle(int); + method public void setAttachedInDecor(boolean); + method public void setBackgroundDrawable(android.graphics.drawable.Drawable); + method public void setClippingEnabled(boolean); + method public void setContentView(android.view.View); + method public void setElevation(float); + method public void setEnterTransition(@Nullable android.transition.Transition); + method public void setEpicenterBounds(@Nullable android.graphics.Rect); + method public void setExitTransition(@Nullable android.transition.Transition); + method public void setFocusable(boolean); + method public void setHeight(int); + method public void setIgnoreCheekPress(); + method public void setInputMethodMode(int); + method public void setIsClippedToScreen(boolean); + method public void setIsLaidOutInScreen(boolean); + method public void setOnDismissListener(android.widget.PopupWindow.OnDismissListener); + method public void setOutsideTouchable(boolean); + method public void setOverlapAnchor(boolean); + method public void setSoftInputMode(int); + method public void setSplitTouchEnabled(boolean); + method public void setTouchInterceptor(android.view.View.OnTouchListener); + method public void setTouchModal(boolean); + method public void setTouchable(boolean); + method public void setWidth(int); + method @Deprecated public void setWindowLayoutMode(int, int); + method public void setWindowLayoutType(int); + method public void showAsDropDown(android.view.View); + method public void showAsDropDown(android.view.View, int, int); + method public void showAsDropDown(android.view.View, int, int, int); + method public void showAtLocation(android.view.View, int, int, int); + method public void update(); + method public void update(int, int); + method public void update(int, int, int, int); + method public void update(int, int, int, int, boolean); + method public void update(android.view.View, int, int); + method public void update(android.view.View, int, int, int, int); + field public static final int INPUT_METHOD_FROM_FOCUSABLE = 0; // 0x0 + field public static final int INPUT_METHOD_NEEDED = 1; // 0x1 + field public static final int INPUT_METHOD_NOT_NEEDED = 2; // 0x2 + } + + public static interface PopupWindow.OnDismissListener { + method public void onDismiss(); + } + + @android.widget.RemoteViews.RemoteView public class ProgressBar extends android.view.View { + ctor public ProgressBar(android.content.Context); + ctor public ProgressBar(android.content.Context, android.util.AttributeSet); + ctor public ProgressBar(android.content.Context, android.util.AttributeSet, int); + ctor public ProgressBar(android.content.Context, android.util.AttributeSet, int, int); + method @Nullable public android.graphics.drawable.Drawable getCurrentDrawable(); + method public android.graphics.drawable.Drawable getIndeterminateDrawable(); + method @Nullable public android.graphics.BlendMode getIndeterminateTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getIndeterminateTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getIndeterminateTintMode(); + method public android.view.animation.Interpolator getInterpolator(); + method public int getMax(); + method @Px public int getMaxHeight(); + method @Px public int getMaxWidth(); + method public int getMin(); + method @Px public int getMinHeight(); + method @Px public int getMinWidth(); + method public int getProgress(); + method @Nullable public android.graphics.BlendMode getProgressBackgroundTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getProgressBackgroundTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getProgressBackgroundTintMode(); + method public android.graphics.drawable.Drawable getProgressDrawable(); + method @Nullable public android.graphics.BlendMode getProgressTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getProgressTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getProgressTintMode(); + method public int getSecondaryProgress(); + method @Nullable public android.graphics.BlendMode getSecondaryProgressTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getSecondaryProgressTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getSecondaryProgressTintMode(); + method public final void incrementProgressBy(int); + method public final void incrementSecondaryProgressBy(int); + method public boolean isAnimating(); + method public boolean isIndeterminate(); + method public void onRestoreInstanceState(android.os.Parcelable); + method public android.os.Parcelable onSaveInstanceState(); + method public void setIndeterminate(boolean); + method public void setIndeterminateDrawable(android.graphics.drawable.Drawable); + method public void setIndeterminateDrawableTiled(android.graphics.drawable.Drawable); + method public void setIndeterminateTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setIndeterminateTintList(@Nullable android.content.res.ColorStateList); + method public void setIndeterminateTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public void setInterpolator(android.content.Context, @InterpolatorRes int); + method public void setInterpolator(android.view.animation.Interpolator); + method public void setMax(int); + method public void setMaxHeight(@Px int); + method public void setMaxWidth(@Px int); + method public void setMin(int); + method public void setMinHeight(@Px int); + method public void setMinWidth(@Px int); + method public void setProgress(int); + method public void setProgress(int, boolean); + method public void setProgressBackgroundTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setProgressBackgroundTintList(@Nullable android.content.res.ColorStateList); + method public void setProgressBackgroundTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public void setProgressDrawable(android.graphics.drawable.Drawable); + method public void setProgressDrawableTiled(android.graphics.drawable.Drawable); + method public void setProgressTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setProgressTintList(@Nullable android.content.res.ColorStateList); + method public void setProgressTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public void setSecondaryProgress(int); + method public void setSecondaryProgressTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setSecondaryProgressTintList(@Nullable android.content.res.ColorStateList); + method public void setSecondaryProgressTintMode(@Nullable android.graphics.PorterDuff.Mode); + } + + public class QuickContactBadge extends android.widget.ImageView implements android.view.View.OnClickListener { + ctor public QuickContactBadge(android.content.Context); + ctor public QuickContactBadge(android.content.Context, android.util.AttributeSet); + ctor public QuickContactBadge(android.content.Context, android.util.AttributeSet, int); + ctor public QuickContactBadge(android.content.Context, android.util.AttributeSet, int, int); + method public void assignContactFromEmail(String, boolean); + method public void assignContactFromEmail(String, boolean, android.os.Bundle); + method public void assignContactFromPhone(String, boolean); + method public void assignContactFromPhone(String, boolean, android.os.Bundle); + method public void assignContactUri(android.net.Uri); + method public void onClick(android.view.View); + method public void setExcludeMimes(String[]); + method public void setImageToDefault(); + method public void setMode(int); + method public void setOverlay(android.graphics.drawable.Drawable); + method public void setPrioritizedMimeType(String); + field protected String[] mExcludeMimes; + } + + @android.widget.RemoteViews.RemoteView public class RadioButton extends android.widget.CompoundButton { + ctor public RadioButton(android.content.Context); + ctor public RadioButton(android.content.Context, android.util.AttributeSet); + ctor public RadioButton(android.content.Context, android.util.AttributeSet, int); + ctor public RadioButton(android.content.Context, android.util.AttributeSet, int, int); + } + + @android.widget.RemoteViews.RemoteView public class RadioGroup extends android.widget.LinearLayout { + ctor public RadioGroup(android.content.Context); + ctor public RadioGroup(android.content.Context, android.util.AttributeSet); + method public void check(@IdRes int); + method public void clearCheck(); + method public android.widget.RadioGroup.LayoutParams generateLayoutParams(android.util.AttributeSet); + method @IdRes public int getCheckedRadioButtonId(); + method public void setOnCheckedChangeListener(android.widget.RadioGroup.OnCheckedChangeListener); + } + + public static class RadioGroup.LayoutParams extends android.widget.LinearLayout.LayoutParams { + ctor public RadioGroup.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor public RadioGroup.LayoutParams(int, int); + ctor public RadioGroup.LayoutParams(int, int, float); + ctor public RadioGroup.LayoutParams(android.view.ViewGroup.LayoutParams); + ctor public RadioGroup.LayoutParams(android.view.ViewGroup.MarginLayoutParams); + } + + public static interface RadioGroup.OnCheckedChangeListener { + method public void onCheckedChanged(@NonNull android.widget.RadioGroup, @IdRes int); + } + + public class RatingBar extends android.widget.AbsSeekBar { + ctor public RatingBar(android.content.Context, android.util.AttributeSet, int); + ctor public RatingBar(android.content.Context, android.util.AttributeSet, int, int); + ctor public RatingBar(android.content.Context, android.util.AttributeSet); + ctor public RatingBar(android.content.Context); + method public int getNumStars(); + method public android.widget.RatingBar.OnRatingBarChangeListener getOnRatingBarChangeListener(); + method public float getRating(); + method public float getStepSize(); + method public boolean isIndicator(); + method public void setIsIndicator(boolean); + method public void setNumStars(int); + method public void setOnRatingBarChangeListener(android.widget.RatingBar.OnRatingBarChangeListener); + method public void setRating(float); + method public void setStepSize(float); + } + + public static interface RatingBar.OnRatingBarChangeListener { + method public void onRatingChanged(android.widget.RatingBar, float, boolean); + } + + @android.widget.RemoteViews.RemoteView public class RelativeLayout extends android.view.ViewGroup { + ctor public RelativeLayout(android.content.Context); + ctor public RelativeLayout(android.content.Context, android.util.AttributeSet); + ctor public RelativeLayout(android.content.Context, android.util.AttributeSet, int); + ctor public RelativeLayout(android.content.Context, android.util.AttributeSet, int, int); + method public android.widget.RelativeLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); + method public int getGravity(); + method public int getIgnoreGravity(); + method protected void onLayout(boolean, int, int, int, int); + method public void setGravity(int); + method public void setHorizontalGravity(int); + method public void setIgnoreGravity(int); + method public void setVerticalGravity(int); + field public static final int ABOVE = 2; // 0x2 + field public static final int ALIGN_BASELINE = 4; // 0x4 + field public static final int ALIGN_BOTTOM = 8; // 0x8 + field public static final int ALIGN_END = 19; // 0x13 + field public static final int ALIGN_LEFT = 5; // 0x5 + field public static final int ALIGN_PARENT_BOTTOM = 12; // 0xc + field public static final int ALIGN_PARENT_END = 21; // 0x15 + field public static final int ALIGN_PARENT_LEFT = 9; // 0x9 + field public static final int ALIGN_PARENT_RIGHT = 11; // 0xb + field public static final int ALIGN_PARENT_START = 20; // 0x14 + field public static final int ALIGN_PARENT_TOP = 10; // 0xa + field public static final int ALIGN_RIGHT = 7; // 0x7 + field public static final int ALIGN_START = 18; // 0x12 + field public static final int ALIGN_TOP = 6; // 0x6 + field public static final int BELOW = 3; // 0x3 + field public static final int CENTER_HORIZONTAL = 14; // 0xe + field public static final int CENTER_IN_PARENT = 13; // 0xd + field public static final int CENTER_VERTICAL = 15; // 0xf + field public static final int END_OF = 17; // 0x11 + field public static final int LEFT_OF = 0; // 0x0 + field public static final int RIGHT_OF = 1; // 0x1 + field public static final int START_OF = 16; // 0x10 + field public static final int TRUE = -1; // 0xffffffff + } + + public static class RelativeLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams { + ctor public RelativeLayout.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor public RelativeLayout.LayoutParams(int, int); + ctor public RelativeLayout.LayoutParams(android.view.ViewGroup.LayoutParams); + ctor public RelativeLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams); + ctor public RelativeLayout.LayoutParams(android.widget.RelativeLayout.LayoutParams); + method public void addRule(int); + method public void addRule(int, int); + method public String debug(String); + method public int getRule(int); + method public int[] getRules(); + method public void removeRule(int); + field public boolean alignWithParent; + } + + public class RemoteViews implements android.view.LayoutInflater.Filter android.os.Parcelable { + ctor public RemoteViews(String, int); + ctor public RemoteViews(@NonNull String, @LayoutRes int, @IdRes int); + ctor public RemoteViews(android.widget.RemoteViews, android.widget.RemoteViews); + ctor public RemoteViews(@NonNull java.util.Map); + ctor public RemoteViews(android.widget.RemoteViews); + ctor public RemoteViews(android.os.Parcel); + ctor @FlaggedApi("android.appwidget.flags.draw_data_parcel") public RemoteViews(@NonNull android.widget.RemoteViews.DrawInstructions); + method public void addStableView(@IdRes int, @NonNull android.widget.RemoteViews, int); + method public void addView(@IdRes int, android.widget.RemoteViews); + method public android.view.View apply(android.content.Context, android.view.ViewGroup); + method @Deprecated public android.widget.RemoteViews clone(); + method public int describeContents(); + method public int getLayoutId(); + method public String getPackage(); + method @IdRes public int getViewId(); + method @Deprecated public boolean onLoadClass(Class); + method public void reapply(android.content.Context, android.view.View); + method public void removeAllViews(@IdRes int); + method public void setAccessibilityTraversalAfter(@IdRes int, @IdRes int); + method public void setAccessibilityTraversalBefore(@IdRes int, @IdRes int); + method public void setBitmap(@IdRes int, String, android.graphics.Bitmap); + method public void setBlendMode(@IdRes int, @NonNull String, @Nullable android.graphics.BlendMode); + method public void setBoolean(@IdRes int, String, boolean); + method public void setBundle(@IdRes int, String, android.os.Bundle); + method public void setByte(@IdRes int, String, byte); + method public void setChar(@IdRes int, String, char); + method public void setCharSequence(@IdRes int, String, CharSequence); + method public void setCharSequence(@IdRes int, @NonNull String, @StringRes int); + method public void setCharSequenceAttr(@IdRes int, @NonNull String, @AttrRes int); + method public void setChronometer(@IdRes int, long, String, boolean); + method public void setChronometerCountDown(@IdRes int, boolean); + method public void setColor(@IdRes int, @NonNull String, @ColorRes int); + method public void setColorAttr(@IdRes int, @NonNull String, @AttrRes int); + method public void setColorInt(@IdRes int, @NonNull String, @ColorInt int, @ColorInt int); + method public void setColorStateList(@IdRes int, @NonNull String, @Nullable android.content.res.ColorStateList); + method public void setColorStateList(@IdRes int, @NonNull String, @Nullable android.content.res.ColorStateList, @Nullable android.content.res.ColorStateList); + method public void setColorStateList(@IdRes int, @NonNull String, @ColorRes int); + method public void setColorStateListAttr(@IdRes int, @NonNull String, @AttrRes int); + method public void setCompoundButtonChecked(@IdRes int, boolean); + method public void setContentDescription(@IdRes int, CharSequence); + method public void setDisplayedChild(@IdRes int, int); + method public void setDouble(@IdRes int, String, double); + method public void setEmptyView(@IdRes int, @IdRes int); + method public void setFloat(@IdRes int, String, float); + method public void setFloatDimen(@IdRes int, @NonNull String, @DimenRes int); + method public void setFloatDimen(@IdRes int, @NonNull String, float, int); + method public void setFloatDimenAttr(@IdRes int, @NonNull String, @AttrRes int); + method public void setIcon(@IdRes int, String, android.graphics.drawable.Icon); + method public void setIcon(@IdRes int, @NonNull String, @Nullable android.graphics.drawable.Icon, @Nullable android.graphics.drawable.Icon); + method public void setImageViewBitmap(@IdRes int, android.graphics.Bitmap); + method public void setImageViewIcon(@IdRes int, android.graphics.drawable.Icon); + method public void setImageViewResource(@IdRes int, @DrawableRes int); + method public void setImageViewUri(@IdRes int, android.net.Uri); + method public void setInt(@IdRes int, String, int); + method public void setIntDimen(@IdRes int, @NonNull String, @DimenRes int); + method public void setIntDimen(@IdRes int, @NonNull String, float, int); + method public void setIntDimenAttr(@IdRes int, @NonNull String, @AttrRes int); + method public void setIntent(@IdRes int, String, android.content.Intent); + method public void setLabelFor(@IdRes int, @IdRes int); + method public void setLightBackgroundLayoutId(@LayoutRes int); + method public void setLong(@IdRes int, String, long); + method public void setOnCheckedChangeResponse(@IdRes int, @NonNull android.widget.RemoteViews.RemoteResponse); + method public void setOnClickFillInIntent(@IdRes int, android.content.Intent); + method public void setOnClickPendingIntent(@IdRes int, android.app.PendingIntent); + method public void setOnClickResponse(@IdRes int, @NonNull android.widget.RemoteViews.RemoteResponse); + method @FlaggedApi("android.view.inputmethod.home_screen_handwriting_delegator") public void setOnStylusHandwritingPendingIntent(@IdRes int, @Nullable android.app.PendingIntent); + method public void setPendingIntentTemplate(@IdRes int, android.app.PendingIntent); + method public void setProgressBar(@IdRes int, int, int, boolean); + method public void setRadioGroupChecked(@IdRes int, @IdRes int); + method public void setRelativeScrollPosition(@IdRes int, int); + method @Deprecated public void setRemoteAdapter(int, @IdRes int, android.content.Intent); + method @Deprecated public void setRemoteAdapter(@IdRes int, android.content.Intent); + method public void setRemoteAdapter(@IdRes int, @NonNull android.widget.RemoteViews.RemoteCollectionItems); + method public void setScrollPosition(@IdRes int, int); + method public void setShort(@IdRes int, String, short); + method public void setString(@IdRes int, String, String); + method public void setTextColor(@IdRes int, @ColorInt int); + method public void setTextViewCompoundDrawables(@IdRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int); + method public void setTextViewCompoundDrawablesRelative(@IdRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int); + method public void setTextViewText(@IdRes int, CharSequence); + method public void setTextViewTextSize(@IdRes int, int, float); + method public void setUri(@IdRes int, String, android.net.Uri); + method public void setViewLayoutHeight(@IdRes int, float, int); + method public void setViewLayoutHeightAttr(@IdRes int, @AttrRes int); + method public void setViewLayoutHeightDimen(@IdRes int, @DimenRes int); + method public void setViewLayoutMargin(@IdRes int, int, float, int); + method public void setViewLayoutMarginAttr(@IdRes int, int, @AttrRes int); + method public void setViewLayoutMarginDimen(@IdRes int, int, @DimenRes int); + method public void setViewLayoutWidth(@IdRes int, float, int); + method public void setViewLayoutWidthAttr(@IdRes int, @AttrRes int); + method public void setViewLayoutWidthDimen(@IdRes int, @DimenRes int); + method public void setViewOutlinePreferredRadius(@IdRes int, float, int); + method public void setViewOutlinePreferredRadiusAttr(@IdRes int, @AttrRes int); + method public void setViewOutlinePreferredRadiusDimen(@IdRes int, @DimenRes int); + method public void setViewPadding(@IdRes int, @Px int, @Px int, @Px int, @Px int); + method public void setViewVisibility(@IdRes int, int); + method @Deprecated public void showNext(@IdRes int); + method @Deprecated public void showPrevious(@IdRes int); + method public void writeToParcel(android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final String EXTRA_CHECKED = "android.widget.extra.CHECKED"; + field public static final String EXTRA_SHARED_ELEMENT_BOUNDS = "android.widget.extra.SHARED_ELEMENT_BOUNDS"; + field public static final int MARGIN_BOTTOM = 3; // 0x3 + field public static final int MARGIN_END = 5; // 0x5 + field public static final int MARGIN_LEFT = 0; // 0x0 + field public static final int MARGIN_RIGHT = 2; // 0x2 + field public static final int MARGIN_START = 4; // 0x4 + field public static final int MARGIN_TOP = 1; // 0x1 + } + + public static class RemoteViews.ActionException extends java.lang.RuntimeException { + ctor public RemoteViews.ActionException(Exception); + ctor public RemoteViews.ActionException(String); + } + + @FlaggedApi("android.appwidget.flags.draw_data_parcel") public static final class RemoteViews.DrawInstructions { + method @FlaggedApi("android.appwidget.flags.draw_data_parcel") public static long getSupportedVersion(); + } + + @FlaggedApi("android.appwidget.flags.draw_data_parcel") public static final class RemoteViews.DrawInstructions.Builder { + ctor @FlaggedApi("android.appwidget.flags.draw_data_parcel") public RemoteViews.DrawInstructions.Builder(@NonNull java.util.List); + method @FlaggedApi("android.appwidget.flags.draw_data_parcel") @NonNull public android.widget.RemoteViews.DrawInstructions build(); + } + + public static final class RemoteViews.RemoteCollectionItems implements android.os.Parcelable { + method public int describeContents(); + method public int getItemCount(); + method public long getItemId(int); + method @NonNull public android.widget.RemoteViews getItemView(int); + method public int getViewTypeCount(); + method public boolean hasStableIds(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class RemoteViews.RemoteCollectionItems.Builder { + ctor public RemoteViews.RemoteCollectionItems.Builder(); + method @NonNull public android.widget.RemoteViews.RemoteCollectionItems.Builder addItem(long, @NonNull android.widget.RemoteViews); + method @NonNull public android.widget.RemoteViews.RemoteCollectionItems build(); + method @NonNull public android.widget.RemoteViews.RemoteCollectionItems.Builder setHasStableIds(boolean); + method @NonNull public android.widget.RemoteViews.RemoteCollectionItems.Builder setViewTypeCount(int); + } + + public static class RemoteViews.RemoteResponse { + ctor public RemoteViews.RemoteResponse(); + method @NonNull public android.widget.RemoteViews.RemoteResponse addSharedElement(@IdRes int, @NonNull String); + method @NonNull public static android.widget.RemoteViews.RemoteResponse fromFillInIntent(@NonNull android.content.Intent); + method @NonNull public static android.widget.RemoteViews.RemoteResponse fromPendingIntent(@NonNull android.app.PendingIntent); + } + + @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface RemoteViews.RemoteView { + } + + public static final class RemoteViews.RemoteViewOutlineProvider extends android.view.ViewOutlineProvider { + ctor public RemoteViews.RemoteViewOutlineProvider(float); + method public void getOutline(@NonNull android.view.View, @NonNull android.graphics.Outline); + method public float getRadius(); + } + + public abstract class RemoteViewsService extends android.app.Service { + ctor public RemoteViewsService(); + method public android.os.IBinder onBind(android.content.Intent); + method public abstract android.widget.RemoteViewsService.RemoteViewsFactory onGetViewFactory(android.content.Intent); + } + + public static interface RemoteViewsService.RemoteViewsFactory { + method public int getCount(); + method public long getItemId(int); + method public android.widget.RemoteViews getLoadingView(); + method public android.widget.RemoteViews getViewAt(int); + method public int getViewTypeCount(); + method public boolean hasStableIds(); + method public void onCreate(); + method public void onDataSetChanged(); + method public void onDestroy(); + } + + public abstract class ResourceCursorAdapter extends android.widget.CursorAdapter { + ctor @Deprecated public ResourceCursorAdapter(android.content.Context, int, android.database.Cursor); + ctor public ResourceCursorAdapter(android.content.Context, int, android.database.Cursor, boolean); + ctor public ResourceCursorAdapter(android.content.Context, int, android.database.Cursor, int); + method public android.view.View newView(android.content.Context, android.database.Cursor, android.view.ViewGroup); + method public void setDropDownViewResource(int); + method public void setViewResource(int); + } + + public abstract class ResourceCursorTreeAdapter extends android.widget.CursorTreeAdapter { + ctor public ResourceCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int, int, int); + ctor public ResourceCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int, int); + ctor public ResourceCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int); + method public android.view.View newChildView(android.content.Context, android.database.Cursor, boolean, android.view.ViewGroup); + method public android.view.View newGroupView(android.content.Context, android.database.Cursor, boolean, android.view.ViewGroup); + } + + public class ScrollView extends android.widget.FrameLayout { + ctor public ScrollView(android.content.Context); + ctor public ScrollView(android.content.Context, android.util.AttributeSet); + ctor public ScrollView(android.content.Context, android.util.AttributeSet, int); + ctor public ScrollView(android.content.Context, android.util.AttributeSet, int, int); + method public boolean arrowScroll(int); + method protected int computeScrollDeltaToGetChildRectOnScreen(android.graphics.Rect); + method public boolean executeKeyEvent(android.view.KeyEvent); + method public void fling(int); + method public boolean fullScroll(int); + method @ColorInt public int getBottomEdgeEffectColor(); + method public int getMaxScrollAmount(); + method @ColorInt public int getTopEdgeEffectColor(); + method public boolean isFillViewport(); + method public boolean isSmoothScrollingEnabled(); + method public boolean pageScroll(int); + method public void scrollToDescendant(@NonNull android.view.View); + method public void setBottomEdgeEffectColor(@ColorInt int); + method public void setEdgeEffectColor(@ColorInt int); + method public void setFillViewport(boolean); + method public void setSmoothScrollingEnabled(boolean); + method public void setTopEdgeEffectColor(@ColorInt int); + method public final void smoothScrollBy(int, int); + method public final void smoothScrollTo(int, int); + } + + public class Scroller { + ctor public Scroller(android.content.Context); + ctor public Scroller(android.content.Context, android.view.animation.Interpolator); + ctor public Scroller(android.content.Context, android.view.animation.Interpolator, boolean); + method public void abortAnimation(); + method public boolean computeScrollOffset(); + method public void extendDuration(int); + method public void fling(int, int, int, int, int, int, int, int); + method public final void forceFinished(boolean); + method public float getCurrVelocity(); + method public final int getCurrX(); + method public final int getCurrY(); + method public final int getDuration(); + method public final int getFinalX(); + method public final int getFinalY(); + method public final int getStartX(); + method public final int getStartY(); + method public final boolean isFinished(); + method public void setFinalX(int); + method public void setFinalY(int); + method public final void setFriction(float); + method public void startScroll(int, int, int, int); + method public void startScroll(int, int, int, int, int); + method public int timePassed(); + } + + public class SearchView extends android.widget.LinearLayout implements android.view.CollapsibleActionView { + ctor public SearchView(android.content.Context); + ctor public SearchView(android.content.Context, android.util.AttributeSet); + ctor public SearchView(android.content.Context, android.util.AttributeSet, int); + ctor public SearchView(android.content.Context, android.util.AttributeSet, int, int); + method public int getImeOptions(); + method public int getInputType(); + method public int getMaxWidth(); + method public CharSequence getQuery(); + method @Nullable public CharSequence getQueryHint(); + method public android.widget.CursorAdapter getSuggestionsAdapter(); + method @Deprecated public boolean isIconfiedByDefault(); + method public boolean isIconified(); + method public boolean isIconifiedByDefault(); + method public boolean isQueryRefinementEnabled(); + method public boolean isSubmitButtonEnabled(); + method public void onActionViewCollapsed(); + method public void onActionViewExpanded(); + method public void setIconified(boolean); + method public void setIconifiedByDefault(boolean); + method public void setImeOptions(int); + method public void setInputType(int); + method public void setMaxWidth(int); + method public void setOnCloseListener(android.widget.SearchView.OnCloseListener); + method public void setOnQueryTextFocusChangeListener(android.view.View.OnFocusChangeListener); + method public void setOnQueryTextListener(android.widget.SearchView.OnQueryTextListener); + method public void setOnSearchClickListener(android.view.View.OnClickListener); + method public void setOnSuggestionListener(android.widget.SearchView.OnSuggestionListener); + method public void setQuery(CharSequence, boolean); + method public void setQueryHint(@Nullable CharSequence); + method public void setQueryRefinementEnabled(boolean); + method public void setSearchableInfo(android.app.SearchableInfo); + method public void setSubmitButtonEnabled(boolean); + method public void setSuggestionsAdapter(android.widget.CursorAdapter); + } + + public static interface SearchView.OnCloseListener { + method public boolean onClose(); + } + + public static interface SearchView.OnQueryTextListener { + method public boolean onQueryTextChange(String); + method public boolean onQueryTextSubmit(String); + } + + public static interface SearchView.OnSuggestionListener { + method public boolean onSuggestionClick(int); + method public boolean onSuggestionSelect(int); + } + + public interface SectionIndexer { + method public int getPositionForSection(int); + method public int getSectionForPosition(int); + method public Object[] getSections(); + } + + public class SeekBar extends android.widget.AbsSeekBar { + ctor public SeekBar(android.content.Context); + ctor public SeekBar(android.content.Context, android.util.AttributeSet); + ctor public SeekBar(android.content.Context, android.util.AttributeSet, int); + ctor public SeekBar(android.content.Context, android.util.AttributeSet, int, int); + method public void setOnSeekBarChangeListener(android.widget.SeekBar.OnSeekBarChangeListener); + } + + public static interface SeekBar.OnSeekBarChangeListener { + method public void onProgressChanged(android.widget.SeekBar, int, boolean); + method public void onStartTrackingTouch(android.widget.SeekBar); + method public void onStopTrackingTouch(android.widget.SeekBar); + } + + public class ShareActionProvider extends android.view.ActionProvider { + ctor public ShareActionProvider(android.content.Context); + method public android.view.View onCreateActionView(); + method public void setOnShareTargetSelectedListener(android.widget.ShareActionProvider.OnShareTargetSelectedListener); + method public void setShareHistoryFileName(String); + method public void setShareIntent(android.content.Intent); + field public static final String DEFAULT_SHARE_HISTORY_FILE_NAME = "share_history.xml"; + } + + public static interface ShareActionProvider.OnShareTargetSelectedListener { + method public boolean onShareTargetSelected(android.widget.ShareActionProvider, android.content.Intent); + } + + public class SimpleAdapter extends android.widget.BaseAdapter implements android.widget.Filterable android.widget.ThemedSpinnerAdapter { + ctor public SimpleAdapter(android.content.Context, java.util.List>, @LayoutRes int, String[], @IdRes int[]); + method public int getCount(); + method public android.content.res.Resources.Theme getDropDownViewTheme(); + method public android.widget.Filter getFilter(); + method public Object getItem(int); + method public long getItemId(int); + method public android.view.View getView(int, android.view.View, android.view.ViewGroup); + method public android.widget.SimpleAdapter.ViewBinder getViewBinder(); + method public void setDropDownViewResource(int); + method public void setDropDownViewTheme(android.content.res.Resources.Theme); + method public void setViewBinder(android.widget.SimpleAdapter.ViewBinder); + method public void setViewImage(android.widget.ImageView, int); + method public void setViewImage(android.widget.ImageView, String); + method public void setViewText(android.widget.TextView, String); + } + + public static interface SimpleAdapter.ViewBinder { + method public boolean setViewValue(android.view.View, Object, String); + } + + public class SimpleCursorAdapter extends android.widget.ResourceCursorAdapter { + ctor @Deprecated public SimpleCursorAdapter(android.content.Context, int, android.database.Cursor, String[], int[]); + ctor public SimpleCursorAdapter(android.content.Context, int, android.database.Cursor, String[], int[], int); + method public void bindView(android.view.View, android.content.Context, android.database.Cursor); + method public void changeCursorAndColumns(android.database.Cursor, String[], int[]); + method public android.widget.SimpleCursorAdapter.CursorToStringConverter getCursorToStringConverter(); + method public int getStringConversionColumn(); + method public android.widget.SimpleCursorAdapter.ViewBinder getViewBinder(); + method public void setCursorToStringConverter(android.widget.SimpleCursorAdapter.CursorToStringConverter); + method public void setStringConversionColumn(int); + method public void setViewBinder(android.widget.SimpleCursorAdapter.ViewBinder); + method public void setViewImage(android.widget.ImageView, String); + method public void setViewText(android.widget.TextView, String); + } + + public static interface SimpleCursorAdapter.CursorToStringConverter { + method public CharSequence convertToString(android.database.Cursor); + } + + public static interface SimpleCursorAdapter.ViewBinder { + method public boolean setViewValue(android.view.View, android.database.Cursor, int); + } + + public abstract class SimpleCursorTreeAdapter extends android.widget.ResourceCursorTreeAdapter { + ctor public SimpleCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int, String[], int[], int, int, String[], int[]); + ctor public SimpleCursorTreeAdapter(android.content.Context, android.database.Cursor, int, int, String[], int[], int, String[], int[]); + ctor public SimpleCursorTreeAdapter(android.content.Context, android.database.Cursor, int, String[], int[], int, String[], int[]); + method protected void bindChildView(android.view.View, android.content.Context, android.database.Cursor, boolean); + method protected void bindGroupView(android.view.View, android.content.Context, android.database.Cursor, boolean); + method public android.widget.SimpleCursorTreeAdapter.ViewBinder getViewBinder(); + method public void setViewBinder(android.widget.SimpleCursorTreeAdapter.ViewBinder); + method protected void setViewImage(android.widget.ImageView, String); + method public void setViewText(android.widget.TextView, String); + } + + public static interface SimpleCursorTreeAdapter.ViewBinder { + method public boolean setViewValue(android.view.View, android.database.Cursor, int); + } + + public class SimpleExpandableListAdapter extends android.widget.BaseExpandableListAdapter { + ctor public SimpleExpandableListAdapter(android.content.Context, java.util.List>, int, String[], int[], java.util.List>>, int, String[], int[]); + ctor public SimpleExpandableListAdapter(android.content.Context, java.util.List>, int, int, String[], int[], java.util.List>>, int, String[], int[]); + ctor public SimpleExpandableListAdapter(android.content.Context, java.util.List>, int, int, String[], int[], java.util.List>>, int, int, String[], int[]); + method public Object getChild(int, int); + method public long getChildId(int, int); + method public android.view.View getChildView(int, int, boolean, android.view.View, android.view.ViewGroup); + method public int getChildrenCount(int); + method public Object getGroup(int); + method public int getGroupCount(); + method public long getGroupId(int); + method public android.view.View getGroupView(int, boolean, android.view.View, android.view.ViewGroup); + method public boolean hasStableIds(); + method public boolean isChildSelectable(int, int); + method public android.view.View newChildView(boolean, android.view.ViewGroup); + method public android.view.View newGroupView(boolean, android.view.ViewGroup); + } + + @Deprecated public class SlidingDrawer extends android.view.ViewGroup { + ctor @Deprecated public SlidingDrawer(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public SlidingDrawer(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public SlidingDrawer(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public void animateClose(); + method @Deprecated public void animateOpen(); + method @Deprecated public void animateToggle(); + method @Deprecated public void close(); + method @Deprecated public android.view.View getContent(); + method @Deprecated public android.view.View getHandle(); + method @Deprecated public boolean isMoving(); + method @Deprecated public boolean isOpened(); + method @Deprecated public void lock(); + method @Deprecated protected void onLayout(boolean, int, int, int, int); + method @Deprecated public void open(); + method @Deprecated public void setOnDrawerCloseListener(android.widget.SlidingDrawer.OnDrawerCloseListener); + method @Deprecated public void setOnDrawerOpenListener(android.widget.SlidingDrawer.OnDrawerOpenListener); + method @Deprecated public void setOnDrawerScrollListener(android.widget.SlidingDrawer.OnDrawerScrollListener); + method @Deprecated public void toggle(); + method @Deprecated public void unlock(); + field @Deprecated public static final int ORIENTATION_HORIZONTAL = 0; // 0x0 + field @Deprecated public static final int ORIENTATION_VERTICAL = 1; // 0x1 + } + + @Deprecated public static interface SlidingDrawer.OnDrawerCloseListener { + method @Deprecated public void onDrawerClosed(); + } + + @Deprecated public static interface SlidingDrawer.OnDrawerOpenListener { + method @Deprecated public void onDrawerOpened(); + } + + @Deprecated public static interface SlidingDrawer.OnDrawerScrollListener { + method @Deprecated public void onScrollEnded(); + method @Deprecated public void onScrollStarted(); + } + + public final class Space extends android.view.View { + ctor public Space(android.content.Context, android.util.AttributeSet, int, int); + ctor public Space(android.content.Context, android.util.AttributeSet, int); + ctor public Space(android.content.Context, android.util.AttributeSet); + ctor public Space(android.content.Context); + } + + public class Spinner extends android.widget.AbsSpinner implements android.content.DialogInterface.OnClickListener { + ctor public Spinner(android.content.Context); + ctor public Spinner(android.content.Context, int); + ctor public Spinner(android.content.Context, android.util.AttributeSet); + ctor public Spinner(android.content.Context, android.util.AttributeSet, int); + ctor public Spinner(android.content.Context, android.util.AttributeSet, int, int); + ctor public Spinner(android.content.Context, android.util.AttributeSet, int, int, int); + ctor public Spinner(android.content.Context, android.util.AttributeSet, int, int, int, android.content.res.Resources.Theme); + method public int getDropDownHorizontalOffset(); + method public int getDropDownVerticalOffset(); + method public int getDropDownWidth(); + method public int getGravity(); + method public android.graphics.drawable.Drawable getPopupBackground(); + method public android.content.Context getPopupContext(); + method public CharSequence getPrompt(); + method public void onClick(android.content.DialogInterface, int); + method public void setDropDownHorizontalOffset(int); + method public void setDropDownVerticalOffset(int); + method public void setDropDownWidth(int); + method public void setGravity(int); + method public void setPopupBackgroundDrawable(android.graphics.drawable.Drawable); + method public void setPopupBackgroundResource(@DrawableRes int); + method public void setPrompt(CharSequence); + method public void setPromptId(int); + field public static final int MODE_DIALOG = 0; // 0x0 + field public static final int MODE_DROPDOWN = 1; // 0x1 + } + + public interface SpinnerAdapter extends android.widget.Adapter { + method public android.view.View getDropDownView(int, android.view.View, android.view.ViewGroup); + } + + @android.widget.RemoteViews.RemoteView public class StackView extends android.widget.AdapterViewAnimator { + ctor public StackView(android.content.Context); + ctor public StackView(android.content.Context, android.util.AttributeSet); + ctor public StackView(android.content.Context, android.util.AttributeSet, int); + ctor public StackView(android.content.Context, android.util.AttributeSet, int, int); + } + + @android.widget.RemoteViews.RemoteView public class Switch extends android.widget.CompoundButton { + ctor public Switch(android.content.Context); + ctor public Switch(android.content.Context, android.util.AttributeSet); + ctor public Switch(android.content.Context, android.util.AttributeSet, int); + ctor public Switch(android.content.Context, android.util.AttributeSet, int, int); + method public boolean getShowText(); + method public boolean getSplitTrack(); + method public int getSwitchMinWidth(); + method public int getSwitchPadding(); + method public CharSequence getTextOff(); + method public CharSequence getTextOn(); + method public android.graphics.drawable.Drawable getThumbDrawable(); + method public int getThumbTextPadding(); + method @Nullable public android.graphics.BlendMode getThumbTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getThumbTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getThumbTintMode(); + method public android.graphics.drawable.Drawable getTrackDrawable(); + method @Nullable public android.graphics.BlendMode getTrackTintBlendMode(); + method @Nullable public android.content.res.ColorStateList getTrackTintList(); + method @Nullable public android.graphics.PorterDuff.Mode getTrackTintMode(); + method public void onMeasure(int, int); + method public void setShowText(boolean); + method public void setSplitTrack(boolean); + method public void setSwitchMinWidth(int); + method public void setSwitchPadding(int); + method public void setSwitchTextAppearance(android.content.Context, @StyleRes int); + method public void setSwitchTypeface(android.graphics.Typeface, int); + method public void setSwitchTypeface(android.graphics.Typeface); + method public void setTextOff(CharSequence); + method public void setTextOn(CharSequence); + method public void setThumbDrawable(android.graphics.drawable.Drawable); + method public void setThumbIcon(@Nullable android.graphics.drawable.Icon); + method public void setThumbResource(@DrawableRes int); + method public void setThumbTextPadding(int); + method public void setThumbTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setThumbTintList(@Nullable android.content.res.ColorStateList); + method public void setThumbTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public void setTrackDrawable(android.graphics.drawable.Drawable); + method public void setTrackIcon(@Nullable android.graphics.drawable.Icon); + method public void setTrackResource(@DrawableRes int); + method public void setTrackTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setTrackTintList(@Nullable android.content.res.ColorStateList); + method public void setTrackTintMode(@Nullable android.graphics.PorterDuff.Mode); + } + + @Deprecated public class TabHost extends android.widget.FrameLayout implements android.view.ViewTreeObserver.OnTouchModeChangeListener { + ctor @Deprecated public TabHost(android.content.Context); + ctor @Deprecated public TabHost(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public TabHost(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public TabHost(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public void addTab(android.widget.TabHost.TabSpec); + method @Deprecated public void clearAllTabs(); + method @Deprecated @Nullable public int getCurrentTab(); + method @Deprecated @Nullable public String getCurrentTabTag(); + method @Deprecated @Nullable public android.view.View getCurrentTabView(); + method @Deprecated public android.view.View getCurrentView(); + method @Deprecated public android.widget.FrameLayout getTabContentView(); + method @Deprecated public android.widget.TabWidget getTabWidget(); + method @Deprecated @NonNull public android.widget.TabHost.TabSpec newTabSpec(@NonNull String); + method @Deprecated public void onTouchModeChanged(boolean); + method @Deprecated public void setCurrentTab(int); + method @Deprecated public void setCurrentTabByTag(String); + method @Deprecated public void setOnTabChangedListener(android.widget.TabHost.OnTabChangeListener); + method @Deprecated public void setup(); + method @Deprecated public void setup(android.app.LocalActivityManager); + } + + @Deprecated public static interface TabHost.OnTabChangeListener { + method @Deprecated public void onTabChanged(String); + } + + @Deprecated public static interface TabHost.TabContentFactory { + method @Deprecated public android.view.View createTabContent(String); + } + + @Deprecated public class TabHost.TabSpec { + method @Deprecated @NonNull public String getTag(); + method @Deprecated public android.widget.TabHost.TabSpec setContent(int); + method @Deprecated public android.widget.TabHost.TabSpec setContent(android.widget.TabHost.TabContentFactory); + method @Deprecated public android.widget.TabHost.TabSpec setContent(android.content.Intent); + method @Deprecated public android.widget.TabHost.TabSpec setIndicator(CharSequence); + method @Deprecated public android.widget.TabHost.TabSpec setIndicator(CharSequence, android.graphics.drawable.Drawable); + method @Deprecated public android.widget.TabHost.TabSpec setIndicator(android.view.View); + } + + @Deprecated public class TabWidget extends android.widget.LinearLayout implements android.view.View.OnFocusChangeListener { + ctor @Deprecated public TabWidget(android.content.Context); + ctor @Deprecated public TabWidget(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public TabWidget(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public TabWidget(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public void dispatchDraw(android.graphics.Canvas); + method @Deprecated public void focusCurrentTab(int); + method @Deprecated public android.view.View getChildTabViewAt(int); + method @Deprecated @Nullable public android.graphics.drawable.Drawable getLeftStripDrawable(); + method @Deprecated @Nullable public android.graphics.drawable.Drawable getRightStripDrawable(); + method @Deprecated public int getTabCount(); + method @Deprecated public boolean isStripEnabled(); + method @Deprecated public void onFocusChange(android.view.View, boolean); + method @Deprecated public void setCurrentTab(int); + method @Deprecated public void setDividerDrawable(@DrawableRes int); + method @Deprecated public void setLeftStripDrawable(@Nullable android.graphics.drawable.Drawable); + method @Deprecated public void setLeftStripDrawable(@DrawableRes int); + method @Deprecated public void setRightStripDrawable(@Nullable android.graphics.drawable.Drawable); + method @Deprecated public void setRightStripDrawable(@DrawableRes int); + method @Deprecated public void setStripEnabled(boolean); + } + + public class TableLayout extends android.widget.LinearLayout { + ctor public TableLayout(android.content.Context); + ctor public TableLayout(android.content.Context, android.util.AttributeSet); + method public android.widget.TableLayout.LayoutParams generateLayoutParams(android.util.AttributeSet); + method public boolean isColumnCollapsed(int); + method public boolean isColumnShrinkable(int); + method public boolean isColumnStretchable(int); + method public boolean isShrinkAllColumns(); + method public boolean isStretchAllColumns(); + method public void setColumnCollapsed(int, boolean); + method public void setColumnShrinkable(int, boolean); + method public void setColumnStretchable(int, boolean); + method public void setShrinkAllColumns(boolean); + method public void setStretchAllColumns(boolean); + } + + public static class TableLayout.LayoutParams extends android.widget.LinearLayout.LayoutParams { + ctor public TableLayout.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor public TableLayout.LayoutParams(int, int); + ctor public TableLayout.LayoutParams(int, int, float); + ctor public TableLayout.LayoutParams(); + ctor public TableLayout.LayoutParams(android.view.ViewGroup.LayoutParams); + ctor public TableLayout.LayoutParams(android.view.ViewGroup.MarginLayoutParams); + } + + public class TableRow extends android.widget.LinearLayout { + ctor public TableRow(android.content.Context); + ctor public TableRow(android.content.Context, android.util.AttributeSet); + method public android.widget.TableRow.LayoutParams generateLayoutParams(android.util.AttributeSet); + method public android.view.View getVirtualChildAt(int); + method public int getVirtualChildCount(); + } + + public static class TableRow.LayoutParams extends android.widget.LinearLayout.LayoutParams { + ctor public TableRow.LayoutParams(android.content.Context, android.util.AttributeSet); + ctor public TableRow.LayoutParams(int, int); + ctor public TableRow.LayoutParams(int, int, float); + ctor public TableRow.LayoutParams(); + ctor public TableRow.LayoutParams(int); + ctor public TableRow.LayoutParams(android.view.ViewGroup.LayoutParams); + ctor public TableRow.LayoutParams(android.view.ViewGroup.MarginLayoutParams); + field public int column; + field public int span; + } + + @android.widget.RemoteViews.RemoteView public class TextClock extends android.widget.TextView { + ctor public TextClock(android.content.Context); + ctor public TextClock(android.content.Context, android.util.AttributeSet); + ctor public TextClock(android.content.Context, android.util.AttributeSet, int); + ctor public TextClock(android.content.Context, android.util.AttributeSet, int, int); + method public CharSequence getFormat12Hour(); + method public CharSequence getFormat24Hour(); + method public String getTimeZone(); + method public boolean is24HourModeEnabled(); + method public void refreshTime(); + method public void setFormat12Hour(CharSequence); + method public void setFormat24Hour(CharSequence); + method public void setTimeZone(String); + field @Deprecated public static final CharSequence DEFAULT_FORMAT_12_HOUR; + field @Deprecated public static final CharSequence DEFAULT_FORMAT_24_HOUR; + } + + public class TextSwitcher extends android.widget.ViewSwitcher { + ctor public TextSwitcher(android.content.Context); + ctor public TextSwitcher(android.content.Context, android.util.AttributeSet); + method public void setCurrentText(CharSequence); + method public void setText(CharSequence); + } + + @android.widget.RemoteViews.RemoteView public class TextView extends android.view.View implements android.view.ViewTreeObserver.OnPreDrawListener { + ctor public TextView(android.content.Context); + ctor public TextView(android.content.Context, @Nullable android.util.AttributeSet); + ctor public TextView(android.content.Context, @Nullable android.util.AttributeSet, int); + ctor public TextView(android.content.Context, @Nullable android.util.AttributeSet, int, int); + method public void addTextChangedListener(android.text.TextWatcher); + method public final void append(CharSequence); + method public void append(CharSequence, int, int); + method public void beginBatchEdit(); + method public boolean bringPointIntoView(int); + method public boolean bringPointIntoView(@IntRange(from=0) int, boolean); + method public void clearComposingText(); + method public void debug(int); + method public boolean didTouchFocusSelect(); + method public void endBatchEdit(); + method public boolean extractText(android.view.inputmethod.ExtractedTextRequest, android.view.inputmethod.ExtractedText); + method public final int getAutoLinkMask(); + method public int getAutoSizeMaxTextSize(); + method public int getAutoSizeMinTextSize(); + method public int getAutoSizeStepGranularity(); + method public int[] getAutoSizeTextAvailableSizes(); + method public int getAutoSizeTextType(); + method public int getBreakStrategy(); + method public int getCompoundDrawablePadding(); + method @Nullable public android.graphics.BlendMode getCompoundDrawableTintBlendMode(); + method public android.content.res.ColorStateList getCompoundDrawableTintList(); + method public android.graphics.PorterDuff.Mode getCompoundDrawableTintMode(); + method @NonNull public android.graphics.drawable.Drawable[] getCompoundDrawables(); + method @NonNull public android.graphics.drawable.Drawable[] getCompoundDrawablesRelative(); + method public int getCompoundPaddingBottom(); + method public int getCompoundPaddingEnd(); + method public int getCompoundPaddingLeft(); + method public int getCompoundPaddingRight(); + method public int getCompoundPaddingStart(); + method public int getCompoundPaddingTop(); + method @ColorInt public final int getCurrentHintTextColor(); + method @ColorInt public final int getCurrentTextColor(); + method public android.view.ActionMode.Callback getCustomInsertionActionModeCallback(); + method public android.view.ActionMode.Callback getCustomSelectionActionModeCallback(); + method protected boolean getDefaultEditable(); + method protected android.text.method.MovementMethod getDefaultMovementMethod(); + method public android.text.Editable getEditableText(); + method public android.text.TextUtils.TruncateAt getEllipsize(); + method public CharSequence getError(); + method public int getExtendedPaddingBottom(); + method public int getExtendedPaddingTop(); + method public android.text.InputFilter[] getFilters(); + method public int getFirstBaselineToTopHeight(); + method @ColorInt public int getFocusedSearchResultHighlightColor(); + method public int getFocusedSearchResultIndex(); + method @Nullable public String getFontFeatureSettings(); + method @Nullable public String getFontVariationSettings(); + method public boolean getFreezesText(); + method public int getGravity(); + method @ColorInt public int getHighlightColor(); + method @Nullable public android.text.Highlights getHighlights(); + method public CharSequence getHint(); + method public final android.content.res.ColorStateList getHintTextColors(); + method public int getHyphenationFrequency(); + method public int getImeActionId(); + method public CharSequence getImeActionLabel(); + method @Nullable public android.os.LocaleList getImeHintLocales(); + method public int getImeOptions(); + method public boolean getIncludeFontPadding(); + method public android.os.Bundle getInputExtras(boolean); + method public int getInputType(); + method public int getJustificationMode(); + method public final android.text.method.KeyListener getKeyListener(); + method public int getLastBaselineToBottomHeight(); + method public final android.text.Layout getLayout(); + method public float getLetterSpacing(); + method public int getLineBounds(int, android.graphics.Rect); + method public int getLineBreakStyle(); + method public int getLineBreakWordStyle(); + method public int getLineCount(); + method public int getLineHeight(); + method public float getLineSpacingExtra(); + method public float getLineSpacingMultiplier(); + method public final android.content.res.ColorStateList getLinkTextColors(); + method public final boolean getLinksClickable(); + method public int getMarqueeRepeatLimit(); + method public int getMaxEms(); + method public int getMaxHeight(); + method public int getMaxLines(); + method public int getMaxWidth(); + method public int getMinEms(); + method public int getMinHeight(); + method public int getMinLines(); + method public int getMinWidth(); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") @Nullable public android.graphics.Paint.FontMetrics getMinimumFontMetrics(); + method public final android.text.method.MovementMethod getMovementMethod(); + method public int getOffsetForPosition(float, float); + method public android.text.TextPaint getPaint(); + method public int getPaintFlags(); + method public String getPrivateImeOptions(); + method @ColorInt public int getSearchResultHighlightColor(); + method @Nullable public int[] getSearchResultHighlights(); + method public int getSelectionEnd(); + method public int getSelectionStart(); + method @ColorInt public int getShadowColor(); + method public float getShadowDx(); + method public float getShadowDy(); + method public float getShadowRadius(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public boolean getShiftDrawingOffsetForStartOverhang(); + method public final boolean getShowSoftInputOnFocus(); + method public CharSequence getText(); + method @NonNull public android.view.textclassifier.TextClassifier getTextClassifier(); + method public final android.content.res.ColorStateList getTextColors(); + method @Nullable public android.graphics.drawable.Drawable getTextCursorDrawable(); + method @NonNull public android.text.TextDirectionHeuristic getTextDirectionHeuristic(); + method @NonNull public java.util.Locale getTextLocale(); + method @NonNull @Size(min=1) public android.os.LocaleList getTextLocales(); + method @NonNull public android.text.PrecomputedText.Params getTextMetricsParams(); + method public float getTextScaleX(); + method @Nullable public android.graphics.drawable.Drawable getTextSelectHandle(); + method @Nullable public android.graphics.drawable.Drawable getTextSelectHandleLeft(); + method @Nullable public android.graphics.drawable.Drawable getTextSelectHandleRight(); + method public float getTextSize(); + method public int getTextSizeUnit(); + method public int getTotalPaddingBottom(); + method public int getTotalPaddingEnd(); + method public int getTotalPaddingLeft(); + method public int getTotalPaddingRight(); + method public int getTotalPaddingStart(); + method public int getTotalPaddingTop(); + method public final android.text.method.TransformationMethod getTransformationMethod(); + method public android.graphics.Typeface getTypeface(); + method public android.text.style.URLSpan[] getUrls(); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public boolean getUseBoundsForWidth(); + method public boolean hasSelection(); + method public boolean isAllCaps(); + method public boolean isCursorVisible(); + method public boolean isElegantTextHeight(); + method public boolean isFallbackLineSpacing(); + method public final boolean isHorizontallyScrollable(); + method public boolean isInputMethodTarget(); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public boolean isLocalePreferredLineHeightForMinimumUsed(); + method public boolean isSingleLine(); + method public boolean isSuggestionsEnabled(); + method public boolean isTextSelectable(); + method public int length(); + method public boolean moveCursorToVisibleOffset(); + method public void onBeginBatchEdit(); + method public void onCommitCompletion(android.view.inputmethod.CompletionInfo); + method public void onCommitCorrection(android.view.inputmethod.CorrectionInfo); + method public void onEditorAction(int); + method public void onEndBatchEdit(); + method public boolean onPreDraw(); + method public boolean onPrivateIMECommand(String, android.os.Bundle); + method public void onRestoreInstanceState(android.os.Parcelable); + method public android.os.Parcelable onSaveInstanceState(); + method @CallSuper protected void onSelectionChanged(int, int); + method protected void onTextChanged(CharSequence, int, int, int); + method public boolean onTextContextMenuItem(int); + method public void removeTextChangedListener(android.text.TextWatcher); + method public void setAllCaps(boolean); + method public final void setAutoLinkMask(int); + method public void setAutoSizeTextTypeUniformWithConfiguration(int, int, int, int); + method public void setAutoSizeTextTypeUniformWithPresetSizes(@NonNull int[], int); + method public void setAutoSizeTextTypeWithDefaults(int); + method public void setBreakStrategy(int); + method public void setCompoundDrawablePadding(int); + method public void setCompoundDrawableTintBlendMode(@Nullable android.graphics.BlendMode); + method public void setCompoundDrawableTintList(@Nullable android.content.res.ColorStateList); + method public void setCompoundDrawableTintMode(@Nullable android.graphics.PorterDuff.Mode); + method public void setCompoundDrawables(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); + method public void setCompoundDrawablesRelative(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); + method public void setCompoundDrawablesRelativeWithIntrinsicBounds(@DrawableRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int); + method public void setCompoundDrawablesRelativeWithIntrinsicBounds(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); + method public void setCompoundDrawablesWithIntrinsicBounds(@DrawableRes int, @DrawableRes int, @DrawableRes int, @DrawableRes int); + method public void setCompoundDrawablesWithIntrinsicBounds(@Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable, @Nullable android.graphics.drawable.Drawable); + method public void setCursorVisible(boolean); + method public void setCustomInsertionActionModeCallback(android.view.ActionMode.Callback); + method public void setCustomSelectionActionModeCallback(android.view.ActionMode.Callback); + method public final void setEditableFactory(android.text.Editable.Factory); + method public void setElegantTextHeight(boolean); + method public void setEllipsize(android.text.TextUtils.TruncateAt); + method public void setEms(int); + method public void setError(CharSequence); + method public void setError(CharSequence, android.graphics.drawable.Drawable); + method public void setExtractedText(android.view.inputmethod.ExtractedText); + method public void setFallbackLineSpacing(boolean); + method public void setFilters(android.text.InputFilter[]); + method public void setFirstBaselineToTopHeight(@IntRange(from=0) @Px int); + method public void setFocusedSearchResultHighlightColor(@ColorInt int); + method public void setFocusedSearchResultIndex(int); + method public void setFontFeatureSettings(@Nullable String); + method public boolean setFontVariationSettings(@Nullable String); + method protected boolean setFrame(int, int, int, int); + method public void setFreezesText(boolean); + method public void setGravity(int); + method public void setHeight(int); + method public void setHighlightColor(@ColorInt int); + method public void setHighlights(@Nullable android.text.Highlights); + method public final void setHint(CharSequence); + method public final void setHint(@StringRes int); + method public final void setHintTextColor(@ColorInt int); + method public final void setHintTextColor(android.content.res.ColorStateList); + method public void setHorizontallyScrolling(boolean); + method public void setHyphenationFrequency(int); + method public void setImeActionLabel(CharSequence, int); + method public void setImeHintLocales(@Nullable android.os.LocaleList); + method public void setImeOptions(int); + method public void setIncludeFontPadding(boolean); + method public void setInputExtras(@XmlRes int) throws java.io.IOException, org.xmlpull.v1.XmlPullParserException; + method public void setInputType(int); + method public void setJustificationMode(int); + method public void setKeyListener(android.text.method.KeyListener); + method public void setLastBaselineToBottomHeight(@IntRange(from=0) @Px int); + method public void setLetterSpacing(float); + method public void setLineBreakStyle(int); + method public void setLineBreakWordStyle(int); + method public void setLineHeight(@IntRange(from=0) @Px int); + method public void setLineHeight(int, @FloatRange(from=0) float); + method public void setLineSpacing(float, float); + method public void setLines(int); + method public final void setLinkTextColor(@ColorInt int); + method public final void setLinkTextColor(android.content.res.ColorStateList); + method public final void setLinksClickable(boolean); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void setLocalePreferredLineHeightForMinimumUsed(boolean); + method public void setMarqueeRepeatLimit(int); + method public void setMaxEms(int); + method public void setMaxHeight(int); + method public void setMaxLines(int); + method public void setMaxWidth(int); + method public void setMinEms(int); + method public void setMinHeight(int); + method public void setMinLines(int); + method public void setMinWidth(int); + method @FlaggedApi("com.android.text.flags.fix_line_height_for_locale") public void setMinimumFontMetrics(@Nullable android.graphics.Paint.FontMetrics); + method public final void setMovementMethod(android.text.method.MovementMethod); + method public void setOnEditorActionListener(android.widget.TextView.OnEditorActionListener); + method public void setPaintFlags(int); + method public void setPrivateImeOptions(String); + method public void setRawInputType(int); + method public void setScroller(android.widget.Scroller); + method public void setSearchResultHighlightColor(@ColorInt int); + method public void setSearchResultHighlights(@Nullable int...); + method public void setSelectAllOnFocus(boolean); + method public void setShadowLayer(float, float, float, int); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public void setShiftDrawingOffsetForStartOverhang(boolean); + method public final void setShowSoftInputOnFocus(boolean); + method public void setSingleLine(); + method public void setSingleLine(boolean); + method public final void setSpannableFactory(android.text.Spannable.Factory); + method public final void setText(CharSequence); + method public void setText(CharSequence, android.widget.TextView.BufferType); + method public final void setText(@NonNull char[], int, int); + method public final void setText(@StringRes int); + method public final void setText(@StringRes int, android.widget.TextView.BufferType); + method public void setTextAppearance(@StyleRes int); + method @Deprecated public void setTextAppearance(android.content.Context, @StyleRes int); + method public void setTextClassifier(@Nullable android.view.textclassifier.TextClassifier); + method public void setTextColor(@ColorInt int); + method public void setTextColor(android.content.res.ColorStateList); + method public void setTextCursorDrawable(@Nullable android.graphics.drawable.Drawable); + method public void setTextCursorDrawable(@DrawableRes int); + method public void setTextIsSelectable(boolean); + method public final void setTextKeepState(CharSequence); + method public final void setTextKeepState(CharSequence, android.widget.TextView.BufferType); + method public void setTextLocale(@NonNull java.util.Locale); + method public void setTextLocales(@NonNull @Size(min=1) android.os.LocaleList); + method public void setTextMetricsParams(@NonNull android.text.PrecomputedText.Params); + method public void setTextScaleX(float); + method public void setTextSelectHandle(@NonNull android.graphics.drawable.Drawable); + method public void setTextSelectHandle(@DrawableRes int); + method public void setTextSelectHandleLeft(@NonNull android.graphics.drawable.Drawable); + method public void setTextSelectHandleLeft(@DrawableRes int); + method public void setTextSelectHandleRight(@NonNull android.graphics.drawable.Drawable); + method public void setTextSelectHandleRight(@DrawableRes int); + method public void setTextSize(float); + method public void setTextSize(int, float); + method public final void setTransformationMethod(android.text.method.TransformationMethod); + method public void setTypeface(@Nullable android.graphics.Typeface, int); + method public void setTypeface(@Nullable android.graphics.Typeface); + method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public void setUseBoundsForWidth(boolean); + method public void setWidth(int); + field public static final int AUTO_SIZE_TEXT_TYPE_NONE = 0; // 0x0 + field public static final int AUTO_SIZE_TEXT_TYPE_UNIFORM = 1; // 0x1 + field public static final int FOCUSED_SEARCH_RESULT_INDEX_NONE = -1; // 0xffffffff + } + + public enum TextView.BufferType { + enum_constant public static final android.widget.TextView.BufferType EDITABLE; + enum_constant public static final android.widget.TextView.BufferType NORMAL; + enum_constant public static final android.widget.TextView.BufferType SPANNABLE; + } + + public static interface TextView.OnEditorActionListener { + method public boolean onEditorAction(android.widget.TextView, int, android.view.KeyEvent); + } + + public static class TextView.SavedState extends android.view.View.BaseSavedState { + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface ThemedSpinnerAdapter extends android.widget.SpinnerAdapter { + method @Nullable public android.content.res.Resources.Theme getDropDownViewTheme(); + method public void setDropDownViewTheme(@Nullable android.content.res.Resources.Theme); + } + + public class TimePicker extends android.widget.FrameLayout { + ctor public TimePicker(android.content.Context); + ctor public TimePicker(android.content.Context, android.util.AttributeSet); + ctor public TimePicker(android.content.Context, android.util.AttributeSet, int); + ctor public TimePicker(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated @NonNull public Integer getCurrentHour(); + method @Deprecated @NonNull public Integer getCurrentMinute(); + method public int getHour(); + method public int getMinute(); + method public boolean is24HourView(); + method @Deprecated public void setCurrentHour(@NonNull Integer); + method @Deprecated public void setCurrentMinute(@NonNull Integer); + method public void setHour(@IntRange(from=0, to=23) int); + method public void setIs24HourView(@NonNull Boolean); + method public void setMinute(@IntRange(from=0, to=59) int); + method public void setOnTimeChangedListener(android.widget.TimePicker.OnTimeChangedListener); + method public boolean validateInput(); + } + + public static interface TimePicker.OnTimeChangedListener { + method public void onTimeChanged(android.widget.TimePicker, int, int); + } + + public class Toast { + ctor public Toast(android.content.Context); + method public void addCallback(@NonNull android.widget.Toast.Callback); + method public void cancel(); + method public int getDuration(); + method public int getGravity(); + method public float getHorizontalMargin(); + method public float getVerticalMargin(); + method @Deprecated @Nullable public android.view.View getView(); + method public int getXOffset(); + method public int getYOffset(); + method public static android.widget.Toast makeText(android.content.Context, CharSequence, int); + method public static android.widget.Toast makeText(android.content.Context, @StringRes int, int) throws android.content.res.Resources.NotFoundException; + method public void removeCallback(@NonNull android.widget.Toast.Callback); + method public void setDuration(int); + method public void setGravity(int, int, int); + method public void setMargin(float, float); + method public void setText(@StringRes int); + method public void setText(CharSequence); + method @Deprecated public void setView(android.view.View); + method public void show(); + field public static final int LENGTH_LONG = 1; // 0x1 + field public static final int LENGTH_SHORT = 0; // 0x0 + } + + public abstract static class Toast.Callback { + ctor public Toast.Callback(); + method public void onToastHidden(); + method public void onToastShown(); + } + + public class ToggleButton extends android.widget.CompoundButton { + ctor public ToggleButton(android.content.Context, android.util.AttributeSet, int, int); + ctor public ToggleButton(android.content.Context, android.util.AttributeSet, int); + ctor public ToggleButton(android.content.Context, android.util.AttributeSet); + ctor public ToggleButton(android.content.Context); + method @FloatRange(from=0.0, to=1.0) public float getDisabledAlpha(); + method public CharSequence getTextOff(); + method public CharSequence getTextOn(); + method public void setBackgroundDrawable(android.graphics.drawable.Drawable); + method public void setTextOff(CharSequence); + method public void setTextOn(CharSequence); + } + + public class Toolbar extends android.view.ViewGroup { + ctor public Toolbar(android.content.Context); + ctor public Toolbar(android.content.Context, android.util.AttributeSet); + ctor public Toolbar(android.content.Context, android.util.AttributeSet, int); + ctor public Toolbar(android.content.Context, android.util.AttributeSet, int, int); + method public void collapseActionView(); + method public void dismissPopupMenus(); + method protected android.widget.Toolbar.LayoutParams generateDefaultLayoutParams(); + method public android.widget.Toolbar.LayoutParams generateLayoutParams(android.util.AttributeSet); + method protected android.widget.Toolbar.LayoutParams generateLayoutParams(android.view.ViewGroup.LayoutParams); + method @Nullable public CharSequence getCollapseContentDescription(); + method @Nullable public android.graphics.drawable.Drawable getCollapseIcon(); + method public int getContentInsetEnd(); + method public int getContentInsetEndWithActions(); + method public int getContentInsetLeft(); + method public int getContentInsetRight(); + method public int getContentInsetStart(); + method public int getContentInsetStartWithNavigation(); + method public int getCurrentContentInsetEnd(); + method public int getCurrentContentInsetLeft(); + method public int getCurrentContentInsetRight(); + method public int getCurrentContentInsetStart(); + method public android.graphics.drawable.Drawable getLogo(); + method public CharSequence getLogoDescription(); + method public android.view.Menu getMenu(); + method @Nullable public CharSequence getNavigationContentDescription(); + method @Nullable public android.graphics.drawable.Drawable getNavigationIcon(); + method @Nullable public android.graphics.drawable.Drawable getOverflowIcon(); + method public int getPopupTheme(); + method public CharSequence getSubtitle(); + method public CharSequence getTitle(); + method public int getTitleMarginBottom(); + method public int getTitleMarginEnd(); + method public int getTitleMarginStart(); + method public int getTitleMarginTop(); + method public boolean hasExpandedActionView(); + method public boolean hideOverflowMenu(); + method public void inflateMenu(@MenuRes int); + method public boolean isOverflowMenuShowing(); + method protected void onLayout(boolean, int, int, int, int); + method public void setCollapseContentDescription(@StringRes int); + method public void setCollapseContentDescription(@Nullable CharSequence); + method public void setCollapseIcon(@DrawableRes int); + method public void setCollapseIcon(@Nullable android.graphics.drawable.Drawable); + method public void setContentInsetEndWithActions(int); + method public void setContentInsetStartWithNavigation(int); + method public void setContentInsetsAbsolute(int, int); + method public void setContentInsetsRelative(int, int); + method public void setLogo(@DrawableRes int); + method public void setLogo(android.graphics.drawable.Drawable); + method public void setLogoDescription(@StringRes int); + method public void setLogoDescription(CharSequence); + method public void setNavigationContentDescription(@StringRes int); + method public void setNavigationContentDescription(@Nullable CharSequence); + method public void setNavigationIcon(@DrawableRes int); + method public void setNavigationIcon(@Nullable android.graphics.drawable.Drawable); + method public void setNavigationOnClickListener(android.view.View.OnClickListener); + method public void setOnMenuItemClickListener(android.widget.Toolbar.OnMenuItemClickListener); + method public void setOverflowIcon(@Nullable android.graphics.drawable.Drawable); + method public void setPopupTheme(@StyleRes int); + method public void setSubtitle(@StringRes int); + method public void setSubtitle(CharSequence); + method public void setSubtitleTextAppearance(android.content.Context, @StyleRes int); + method public void setSubtitleTextColor(@ColorInt int); + method public void setTitle(@StringRes int); + method public void setTitle(CharSequence); + method public void setTitleMargin(int, int, int, int); + method public void setTitleMarginBottom(int); + method public void setTitleMarginEnd(int); + method public void setTitleMarginStart(int); + method public void setTitleMarginTop(int); + method public void setTitleTextAppearance(android.content.Context, @StyleRes int); + method public void setTitleTextColor(@ColorInt int); + method public boolean showOverflowMenu(); + } + + public static class Toolbar.LayoutParams extends android.app.ActionBar.LayoutParams { + ctor public Toolbar.LayoutParams(@NonNull android.content.Context, android.util.AttributeSet); + ctor public Toolbar.LayoutParams(int, int); + ctor public Toolbar.LayoutParams(int, int, int); + ctor public Toolbar.LayoutParams(int); + ctor public Toolbar.LayoutParams(android.widget.Toolbar.LayoutParams); + ctor public Toolbar.LayoutParams(android.app.ActionBar.LayoutParams); + ctor public Toolbar.LayoutParams(android.view.ViewGroup.MarginLayoutParams); + ctor public Toolbar.LayoutParams(android.view.ViewGroup.LayoutParams); + } + + public static interface Toolbar.OnMenuItemClickListener { + method public boolean onMenuItemClick(android.view.MenuItem); + } + + @Deprecated public class TwoLineListItem extends android.widget.RelativeLayout { + ctor @Deprecated public TwoLineListItem(android.content.Context); + ctor @Deprecated public TwoLineListItem(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public TwoLineListItem(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public TwoLineListItem(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public android.widget.TextView getText1(); + method @Deprecated public android.widget.TextView getText2(); + } + + public class VideoView extends android.view.SurfaceView implements android.widget.MediaController.MediaPlayerControl { + ctor public VideoView(android.content.Context); + ctor public VideoView(android.content.Context, android.util.AttributeSet); + ctor public VideoView(android.content.Context, android.util.AttributeSet, int); + ctor public VideoView(android.content.Context, android.util.AttributeSet, int, int); + method public void addSubtitleSource(java.io.InputStream, android.media.MediaFormat); + method public boolean canPause(); + method public boolean canSeekBackward(); + method public boolean canSeekForward(); + method public int getAudioSessionId(); + method public int getBufferPercentage(); + method public int getCurrentPosition(); + method public int getDuration(); + method public boolean isPlaying(); + method public void pause(); + method public int resolveAdjustedSize(int, int); + method public void resume(); + method public void seekTo(int); + method public void setAudioAttributes(@NonNull android.media.AudioAttributes); + method public void setAudioFocusRequest(int); + method public void setMediaController(android.widget.MediaController); + method public void setOnCompletionListener(android.media.MediaPlayer.OnCompletionListener); + method public void setOnErrorListener(android.media.MediaPlayer.OnErrorListener); + method public void setOnInfoListener(android.media.MediaPlayer.OnInfoListener); + method public void setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener); + method public void setVideoPath(String); + method public void setVideoURI(android.net.Uri); + method public void setVideoURI(android.net.Uri, java.util.Map); + method public void start(); + method public void stopPlayback(); + method public void suspend(); + } + + public class ViewAnimator extends android.widget.FrameLayout { + ctor public ViewAnimator(android.content.Context); + ctor public ViewAnimator(android.content.Context, android.util.AttributeSet); + method public boolean getAnimateFirstView(); + method public android.view.View getCurrentView(); + method public int getDisplayedChild(); + method public android.view.animation.Animation getInAnimation(); + method public android.view.animation.Animation getOutAnimation(); + method public void setAnimateFirstView(boolean); + method public void setDisplayedChild(int); + method public void setInAnimation(android.view.animation.Animation); + method public void setInAnimation(android.content.Context, @AnimRes int); + method public void setOutAnimation(android.view.animation.Animation); + method public void setOutAnimation(android.content.Context, @AnimRes int); + method public void showNext(); + method public void showPrevious(); + } + + @android.widget.RemoteViews.RemoteView public class ViewFlipper extends android.widget.ViewAnimator { + ctor public ViewFlipper(android.content.Context); + ctor public ViewFlipper(android.content.Context, android.util.AttributeSet); + method @IntRange(from=0) public int getFlipInterval(); + method public boolean isAutoStart(); + method public boolean isFlipping(); + method public void setAutoStart(boolean); + method public void setFlipInterval(@IntRange(from=0) int); + method public void startFlipping(); + method public void stopFlipping(); + } + + public class ViewSwitcher extends android.widget.ViewAnimator { + ctor public ViewSwitcher(android.content.Context); + ctor public ViewSwitcher(android.content.Context, android.util.AttributeSet); + method public android.view.View getNextView(); + method public void reset(); + method public void setFactory(android.widget.ViewSwitcher.ViewFactory); + } + + public static interface ViewSwitcher.ViewFactory { + method public android.view.View makeView(); + } + + public interface WrapperListAdapter extends android.widget.ListAdapter { + method public android.widget.ListAdapter getWrappedAdapter(); + } + + @Deprecated public class ZoomButton extends android.widget.ImageButton implements android.view.View.OnLongClickListener { + ctor @Deprecated public ZoomButton(android.content.Context); + ctor @Deprecated public ZoomButton(android.content.Context, android.util.AttributeSet); + ctor @Deprecated public ZoomButton(android.content.Context, android.util.AttributeSet, int); + ctor @Deprecated public ZoomButton(android.content.Context, android.util.AttributeSet, int, int); + method @Deprecated public boolean onLongClick(android.view.View); + method @Deprecated public void setZoomSpeed(long); + } + + @Deprecated public class ZoomButtonsController implements android.view.View.OnTouchListener { + ctor @Deprecated public ZoomButtonsController(android.view.View); + method @Deprecated public android.view.ViewGroup getContainer(); + method @Deprecated public android.view.View getZoomControls(); + method @Deprecated public boolean isAutoDismissed(); + method @Deprecated public boolean isVisible(); + method @Deprecated public boolean onTouch(android.view.View, android.view.MotionEvent); + method @Deprecated public void setAutoDismissed(boolean); + method @Deprecated public void setFocusable(boolean); + method @Deprecated public void setOnZoomListener(android.widget.ZoomButtonsController.OnZoomListener); + method @Deprecated public void setVisible(boolean); + method @Deprecated public void setZoomInEnabled(boolean); + method @Deprecated public void setZoomOutEnabled(boolean); + method @Deprecated public void setZoomSpeed(long); + } + + @Deprecated public static interface ZoomButtonsController.OnZoomListener { + method @Deprecated public void onVisibilityChanged(boolean); + method @Deprecated public void onZoom(boolean); + } + + @Deprecated public class ZoomControls extends android.widget.LinearLayout { + ctor @Deprecated public ZoomControls(android.content.Context); + ctor @Deprecated public ZoomControls(android.content.Context, android.util.AttributeSet); + method @Deprecated public void hide(); + method @Deprecated public void setIsZoomInEnabled(boolean); + method @Deprecated public void setIsZoomOutEnabled(boolean); + method @Deprecated public void setOnZoomInClickListener(android.view.View.OnClickListener); + method @Deprecated public void setOnZoomOutClickListener(android.view.View.OnClickListener); + method @Deprecated public void setZoomSpeed(long); + method @Deprecated public void show(); + } + +} + +package android.widget.inline { + + public class InlineContentView extends android.view.ViewGroup { + method @Nullable public android.view.SurfaceControl getSurfaceControl(); + method public boolean isZOrderedOnTop(); + method public void onLayout(boolean, int, int, int, int); + method public void setSurfaceControlCallback(@Nullable android.widget.inline.InlineContentView.SurfaceControlCallback); + method public boolean setZOrderedOnTop(boolean); + } + + public static interface InlineContentView.SurfaceControlCallback { + method public void onCreated(@NonNull android.view.SurfaceControl); + method public void onDestroyed(@NonNull android.view.SurfaceControl); + } + + public final class InlinePresentationSpec implements android.os.Parcelable { + method public int describeContents(); + method @NonNull public android.util.Size getMaxSize(); + method @NonNull public android.util.Size getMinSize(); + method @NonNull public android.os.Bundle getStyle(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public static final class InlinePresentationSpec.Builder { + ctor public InlinePresentationSpec.Builder(@NonNull android.util.Size, @NonNull android.util.Size); + method @NonNull public android.widget.inline.InlinePresentationSpec build(); + method @NonNull public android.widget.inline.InlinePresentationSpec.Builder setStyle(@NonNull android.os.Bundle); + } + +} + +package android.window { + + public final class BackEvent { + ctor public BackEvent(float, float, float, int); + ctor @FlaggedApi("com.android.window.flags.predictive_back_timestamp_api") public BackEvent(float, float, float, int, long); + method @FlaggedApi("com.android.window.flags.predictive_back_timestamp_api") public long getFrameTimeMillis(); + method @FloatRange(from=0, to=1) public float getProgress(); + method public int getSwipeEdge(); + method public float getTouchX(); + method public float getTouchY(); + field public static final int EDGE_LEFT = 0; // 0x0 + field @FlaggedApi("com.android.window.flags.predictive_back_swipe_edge_none_api") public static final int EDGE_NONE = 2; // 0x2 + field public static final int EDGE_RIGHT = 1; // 0x1 + } + + @FlaggedApi("com.android.window.flags.surface_control_input_receiver") public final class InputTransferToken implements android.os.Parcelable { + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface OnBackAnimationCallback extends android.window.OnBackInvokedCallback { + method public default void onBackCancelled(); + method public default void onBackProgressed(@NonNull android.window.BackEvent); + method public default void onBackStarted(@NonNull android.window.BackEvent); + } + + public interface OnBackInvokedCallback { + method public void onBackInvoked(); + } + + public interface OnBackInvokedDispatcher { + method public void registerOnBackInvokedCallback(@IntRange(from=0) int, @NonNull android.window.OnBackInvokedCallback); + method public void unregisterOnBackInvokedCallback(@NonNull android.window.OnBackInvokedCallback); + field public static final int PRIORITY_DEFAULT = 0; // 0x0 + field public static final int PRIORITY_OVERLAY = 1000000; // 0xf4240 + field @FlaggedApi("com.android.window.flags.predictive_back_priority_system_navigation_observer") public static final int PRIORITY_SYSTEM_NAVIGATION_OBSERVER = -2; // 0xfffffffe + } + + public interface SplashScreen { + method public void clearOnExitAnimationListener(); + method public void setOnExitAnimationListener(@NonNull android.window.SplashScreen.OnExitAnimationListener); + method public void setSplashScreenTheme(@StyleRes int); + field public static final int SPLASH_SCREEN_STYLE_ICON = 1; // 0x1 + field public static final int SPLASH_SCREEN_STYLE_SOLID_COLOR = 0; // 0x0 + } + + public static interface SplashScreen.OnExitAnimationListener { + method @UiThread public void onSplashScreenExit(@NonNull android.window.SplashScreenView); + } + + public final class SplashScreenView extends android.widget.FrameLayout { + method @Nullable public java.time.Duration getIconAnimationDuration(); + method @Nullable public java.time.Instant getIconAnimationStart(); + method @Nullable public android.view.View getIconView(); + method @UiThread public void remove(); + } + + public final class SurfaceSyncGroup { + ctor public SurfaceSyncGroup(@NonNull String); + method @UiThread public boolean add(@Nullable android.view.AttachedSurfaceControl, @Nullable Runnable); + method public boolean add(@NonNull android.view.SurfaceControlViewHost.SurfacePackage, @Nullable Runnable); + method public void addTransaction(@NonNull android.view.SurfaceControl.Transaction); + method public void markSyncReady(); + } + + @FlaggedApi("com.android.window.flags.predictive_back_system_override_callback") public final class SystemOnBackInvokedCallbacks { + method @FlaggedApi("com.android.window.flags.predictive_back_system_override_callback") @NonNull public static android.window.OnBackInvokedCallback finishAndRemoveTaskCallback(@NonNull android.app.Activity); + method @FlaggedApi("com.android.window.flags.predictive_back_system_override_callback") @NonNull public static android.window.OnBackInvokedCallback moveTaskToBackCallback(@NonNull android.app.Activity); + } + + @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public final class TrustedPresentationThresholds implements android.os.Parcelable { + ctor @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public TrustedPresentationThresholds(@FloatRange(from=0.0f, fromInclusive=false, to=1.0f) float, @FloatRange(from=0.0f, fromInclusive=false, to=1.0f) float, @IntRange(from=1) int); + method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public int describeContents(); + method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") @FloatRange(from=0.0f, fromInclusive=false, to=1.0f) public float getMinAlpha(); + method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") @FloatRange(from=0.0f, fromInclusive=false, to=1.0f) public float getMinFractionRendered(); + method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") @IntRange(from=1) public int getStabilityRequirementMillis(); + method @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") public void writeToParcel(@NonNull android.os.Parcel, int); + field @FlaggedApi("com.android.window.flags.trusted_presentation_listener_for_window") @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + +} + +package javax.microedition.khronos.egl { + + public interface EGL { + } + + public interface EGL10 extends javax.microedition.khronos.egl.EGL { + method public boolean eglChooseConfig(javax.microedition.khronos.egl.EGLDisplay, int[], javax.microedition.khronos.egl.EGLConfig[], int, int[]); + method public boolean eglCopyBuffers(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface, Object); + method public javax.microedition.khronos.egl.EGLContext eglCreateContext(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, javax.microedition.khronos.egl.EGLContext, int[]); + method public javax.microedition.khronos.egl.EGLSurface eglCreatePbufferSurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, int[]); + method @Deprecated public javax.microedition.khronos.egl.EGLSurface eglCreatePixmapSurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, Object, int[]); + method public javax.microedition.khronos.egl.EGLSurface eglCreateWindowSurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, Object, int[]); + method public boolean eglDestroyContext(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLContext); + method public boolean eglDestroySurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface); + method public boolean eglGetConfigAttrib(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig, int, int[]); + method public boolean eglGetConfigs(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig[], int, int[]); + method public javax.microedition.khronos.egl.EGLContext eglGetCurrentContext(); + method public javax.microedition.khronos.egl.EGLDisplay eglGetCurrentDisplay(); + method public javax.microedition.khronos.egl.EGLSurface eglGetCurrentSurface(int); + method public javax.microedition.khronos.egl.EGLDisplay eglGetDisplay(Object); + method public int eglGetError(); + method public boolean eglInitialize(javax.microedition.khronos.egl.EGLDisplay, int[]); + method public boolean eglMakeCurrent(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface, javax.microedition.khronos.egl.EGLSurface, javax.microedition.khronos.egl.EGLContext); + method public boolean eglQueryContext(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLContext, int, int[]); + method public String eglQueryString(javax.microedition.khronos.egl.EGLDisplay, int); + method public boolean eglQuerySurface(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface, int, int[]); + method public boolean eglSwapBuffers(javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLSurface); + method public boolean eglTerminate(javax.microedition.khronos.egl.EGLDisplay); + method public boolean eglWaitGL(); + method public boolean eglWaitNative(int, Object); + field public static final int EGL_ALPHA_FORMAT = 12424; // 0x3088 + field public static final int EGL_ALPHA_MASK_SIZE = 12350; // 0x303e + field public static final int EGL_ALPHA_SIZE = 12321; // 0x3021 + field public static final int EGL_BAD_ACCESS = 12290; // 0x3002 + field public static final int EGL_BAD_ALLOC = 12291; // 0x3003 + field public static final int EGL_BAD_ATTRIBUTE = 12292; // 0x3004 + field public static final int EGL_BAD_CONFIG = 12293; // 0x3005 + field public static final int EGL_BAD_CONTEXT = 12294; // 0x3006 + field public static final int EGL_BAD_CURRENT_SURFACE = 12295; // 0x3007 + field public static final int EGL_BAD_DISPLAY = 12296; // 0x3008 + field public static final int EGL_BAD_MATCH = 12297; // 0x3009 + field public static final int EGL_BAD_NATIVE_PIXMAP = 12298; // 0x300a + field public static final int EGL_BAD_NATIVE_WINDOW = 12299; // 0x300b + field public static final int EGL_BAD_PARAMETER = 12300; // 0x300c + field public static final int EGL_BAD_SURFACE = 12301; // 0x300d + field public static final int EGL_BLUE_SIZE = 12322; // 0x3022 + field public static final int EGL_BUFFER_SIZE = 12320; // 0x3020 + field public static final int EGL_COLORSPACE = 12423; // 0x3087 + field public static final int EGL_COLOR_BUFFER_TYPE = 12351; // 0x303f + field public static final int EGL_CONFIG_CAVEAT = 12327; // 0x3027 + field public static final int EGL_CONFIG_ID = 12328; // 0x3028 + field public static final int EGL_CORE_NATIVE_ENGINE = 12379; // 0x305b + field public static final Object EGL_DEFAULT_DISPLAY; + field public static final int EGL_DEPTH_SIZE = 12325; // 0x3025 + field public static final int EGL_DONT_CARE = -1; // 0xffffffff + field public static final int EGL_DRAW = 12377; // 0x3059 + field public static final int EGL_EXTENSIONS = 12373; // 0x3055 + field public static final int EGL_GREEN_SIZE = 12323; // 0x3023 + field public static final int EGL_HEIGHT = 12374; // 0x3056 + field public static final int EGL_HORIZONTAL_RESOLUTION = 12432; // 0x3090 + field public static final int EGL_LARGEST_PBUFFER = 12376; // 0x3058 + field public static final int EGL_LEVEL = 12329; // 0x3029 + field public static final int EGL_LUMINANCE_BUFFER = 12431; // 0x308f + field public static final int EGL_LUMINANCE_SIZE = 12349; // 0x303d + field public static final int EGL_MAX_PBUFFER_HEIGHT = 12330; // 0x302a + field public static final int EGL_MAX_PBUFFER_PIXELS = 12331; // 0x302b + field public static final int EGL_MAX_PBUFFER_WIDTH = 12332; // 0x302c + field public static final int EGL_NATIVE_RENDERABLE = 12333; // 0x302d + field public static final int EGL_NATIVE_VISUAL_ID = 12334; // 0x302e + field public static final int EGL_NATIVE_VISUAL_TYPE = 12335; // 0x302f + field public static final int EGL_NONE = 12344; // 0x3038 + field public static final int EGL_NON_CONFORMANT_CONFIG = 12369; // 0x3051 + field public static final int EGL_NOT_INITIALIZED = 12289; // 0x3001 + field public static final javax.microedition.khronos.egl.EGLContext EGL_NO_CONTEXT; + field public static final javax.microedition.khronos.egl.EGLDisplay EGL_NO_DISPLAY; + field public static final javax.microedition.khronos.egl.EGLSurface EGL_NO_SURFACE; + field public static final int EGL_PBUFFER_BIT = 1; // 0x1 + field public static final int EGL_PIXEL_ASPECT_RATIO = 12434; // 0x3092 + field public static final int EGL_PIXMAP_BIT = 2; // 0x2 + field public static final int EGL_READ = 12378; // 0x305a + field public static final int EGL_RED_SIZE = 12324; // 0x3024 + field public static final int EGL_RENDERABLE_TYPE = 12352; // 0x3040 + field public static final int EGL_RENDER_BUFFER = 12422; // 0x3086 + field public static final int EGL_RGB_BUFFER = 12430; // 0x308e + field public static final int EGL_SAMPLES = 12337; // 0x3031 + field public static final int EGL_SAMPLE_BUFFERS = 12338; // 0x3032 + field public static final int EGL_SINGLE_BUFFER = 12421; // 0x3085 + field public static final int EGL_SLOW_CONFIG = 12368; // 0x3050 + field public static final int EGL_STENCIL_SIZE = 12326; // 0x3026 + field public static final int EGL_SUCCESS = 12288; // 0x3000 + field public static final int EGL_SURFACE_TYPE = 12339; // 0x3033 + field public static final int EGL_TRANSPARENT_BLUE_VALUE = 12341; // 0x3035 + field public static final int EGL_TRANSPARENT_GREEN_VALUE = 12342; // 0x3036 + field public static final int EGL_TRANSPARENT_RED_VALUE = 12343; // 0x3037 + field public static final int EGL_TRANSPARENT_RGB = 12370; // 0x3052 + field public static final int EGL_TRANSPARENT_TYPE = 12340; // 0x3034 + field public static final int EGL_VENDOR = 12371; // 0x3053 + field public static final int EGL_VERSION = 12372; // 0x3054 + field public static final int EGL_VERTICAL_RESOLUTION = 12433; // 0x3091 + field public static final int EGL_WIDTH = 12375; // 0x3057 + field public static final int EGL_WINDOW_BIT = 4; // 0x4 + } + + public interface EGL11 extends javax.microedition.khronos.egl.EGL10 { + field public static final int EGL_CONTEXT_LOST = 12302; // 0x300e + } + + public abstract class EGLConfig { + ctor public EGLConfig(); + } + + public abstract class EGLContext { + ctor public EGLContext(); + method public static javax.microedition.khronos.egl.EGL getEGL(); + method public abstract javax.microedition.khronos.opengles.GL getGL(); + } + + public abstract class EGLDisplay { + ctor public EGLDisplay(); + } + + public abstract class EGLSurface { + ctor public EGLSurface(); + } + +} + +package javax.microedition.khronos.opengles { + + public interface GL { + } + + public interface GL10 extends javax.microedition.khronos.opengles.GL { + method public void glActiveTexture(int); + method public void glAlphaFunc(int, float); + method public void glAlphaFuncx(int, int); + method public void glBindTexture(int, int); + method public void glBlendFunc(int, int); + method public void glClear(int); + method public void glClearColor(float, float, float, float); + method public void glClearColorx(int, int, int, int); + method public void glClearDepthf(float); + method public void glClearDepthx(int); + method public void glClearStencil(int); + method public void glClientActiveTexture(int); + method public void glColor4f(float, float, float, float); + method public void glColor4x(int, int, int, int); + method public void glColorMask(boolean, boolean, boolean, boolean); + method public void glColorPointer(int, int, int, java.nio.Buffer); + method public void glCompressedTexImage2D(int, int, int, int, int, int, int, java.nio.Buffer); + method public void glCompressedTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public void glCopyTexImage2D(int, int, int, int, int, int, int, int); + method public void glCopyTexSubImage2D(int, int, int, int, int, int, int, int); + method public void glCullFace(int); + method public void glDeleteTextures(int, int[], int); + method public void glDeleteTextures(int, java.nio.IntBuffer); + method public void glDepthFunc(int); + method public void glDepthMask(boolean); + method public void glDepthRangef(float, float); + method public void glDepthRangex(int, int); + method public void glDisable(int); + method public void glDisableClientState(int); + method public void glDrawArrays(int, int, int); + method public void glDrawElements(int, int, int, java.nio.Buffer); + method public void glEnable(int); + method public void glEnableClientState(int); + method public void glFinish(); + method public void glFlush(); + method public void glFogf(int, float); + method public void glFogfv(int, float[], int); + method public void glFogfv(int, java.nio.FloatBuffer); + method public void glFogx(int, int); + method public void glFogxv(int, int[], int); + method public void glFogxv(int, java.nio.IntBuffer); + method public void glFrontFace(int); + method public void glFrustumf(float, float, float, float, float, float); + method public void glFrustumx(int, int, int, int, int, int); + method public void glGenTextures(int, int[], int); + method public void glGenTextures(int, java.nio.IntBuffer); + method public int glGetError(); + method public void glGetIntegerv(int, int[], int); + method public void glGetIntegerv(int, java.nio.IntBuffer); + method public String glGetString(int); + method public void glHint(int, int); + method public void glLightModelf(int, float); + method public void glLightModelfv(int, float[], int); + method public void glLightModelfv(int, java.nio.FloatBuffer); + method public void glLightModelx(int, int); + method public void glLightModelxv(int, int[], int); + method public void glLightModelxv(int, java.nio.IntBuffer); + method public void glLightf(int, int, float); + method public void glLightfv(int, int, float[], int); + method public void glLightfv(int, int, java.nio.FloatBuffer); + method public void glLightx(int, int, int); + method public void glLightxv(int, int, int[], int); + method public void glLightxv(int, int, java.nio.IntBuffer); + method public void glLineWidth(float); + method public void glLineWidthx(int); + method public void glLoadIdentity(); + method public void glLoadMatrixf(float[], int); + method public void glLoadMatrixf(java.nio.FloatBuffer); + method public void glLoadMatrixx(int[], int); + method public void glLoadMatrixx(java.nio.IntBuffer); + method public void glLogicOp(int); + method public void glMaterialf(int, int, float); + method public void glMaterialfv(int, int, float[], int); + method public void glMaterialfv(int, int, java.nio.FloatBuffer); + method public void glMaterialx(int, int, int); + method public void glMaterialxv(int, int, int[], int); + method public void glMaterialxv(int, int, java.nio.IntBuffer); + method public void glMatrixMode(int); + method public void glMultMatrixf(float[], int); + method public void glMultMatrixf(java.nio.FloatBuffer); + method public void glMultMatrixx(int[], int); + method public void glMultMatrixx(java.nio.IntBuffer); + method public void glMultiTexCoord4f(int, float, float, float, float); + method public void glMultiTexCoord4x(int, int, int, int, int); + method public void glNormal3f(float, float, float); + method public void glNormal3x(int, int, int); + method public void glNormalPointer(int, int, java.nio.Buffer); + method public void glOrthof(float, float, float, float, float, float); + method public void glOrthox(int, int, int, int, int, int); + method public void glPixelStorei(int, int); + method public void glPointSize(float); + method public void glPointSizex(int); + method public void glPolygonOffset(float, float); + method public void glPolygonOffsetx(int, int); + method public void glPopMatrix(); + method public void glPushMatrix(); + method public void glReadPixels(int, int, int, int, int, int, java.nio.Buffer); + method public void glRotatef(float, float, float, float); + method public void glRotatex(int, int, int, int); + method public void glSampleCoverage(float, boolean); + method public void glSampleCoveragex(int, boolean); + method public void glScalef(float, float, float); + method public void glScalex(int, int, int); + method public void glScissor(int, int, int, int); + method public void glShadeModel(int); + method public void glStencilFunc(int, int, int); + method public void glStencilMask(int); + method public void glStencilOp(int, int, int); + method public void glTexCoordPointer(int, int, int, java.nio.Buffer); + method public void glTexEnvf(int, int, float); + method public void glTexEnvfv(int, int, float[], int); + method public void glTexEnvfv(int, int, java.nio.FloatBuffer); + method public void glTexEnvx(int, int, int); + method public void glTexEnvxv(int, int, int[], int); + method public void glTexEnvxv(int, int, java.nio.IntBuffer); + method public void glTexImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public void glTexParameterf(int, int, float); + method public void glTexParameterx(int, int, int); + method public void glTexSubImage2D(int, int, int, int, int, int, int, int, java.nio.Buffer); + method public void glTranslatef(float, float, float); + method public void glTranslatex(int, int, int); + method public void glVertexPointer(int, int, int, java.nio.Buffer); + method public void glViewport(int, int, int, int); + field public static final int GL_ADD = 260; // 0x104 + field public static final int GL_ALIASED_LINE_WIDTH_RANGE = 33902; // 0x846e + field public static final int GL_ALIASED_POINT_SIZE_RANGE = 33901; // 0x846d + field public static final int GL_ALPHA = 6406; // 0x1906 + field public static final int GL_ALPHA_BITS = 3413; // 0xd55 + field public static final int GL_ALPHA_TEST = 3008; // 0xbc0 + field public static final int GL_ALWAYS = 519; // 0x207 + field public static final int GL_AMBIENT = 4608; // 0x1200 + field public static final int GL_AMBIENT_AND_DIFFUSE = 5634; // 0x1602 + field public static final int GL_AND = 5377; // 0x1501 + field public static final int GL_AND_INVERTED = 5380; // 0x1504 + field public static final int GL_AND_REVERSE = 5378; // 0x1502 + field public static final int GL_BACK = 1029; // 0x405 + field public static final int GL_BLEND = 3042; // 0xbe2 + field public static final int GL_BLUE_BITS = 3412; // 0xd54 + field public static final int GL_BYTE = 5120; // 0x1400 + field public static final int GL_CCW = 2305; // 0x901 + field public static final int GL_CLAMP_TO_EDGE = 33071; // 0x812f + field public static final int GL_CLEAR = 5376; // 0x1500 + field public static final int GL_COLOR_ARRAY = 32886; // 0x8076 + field public static final int GL_COLOR_BUFFER_BIT = 16384; // 0x4000 + field public static final int GL_COLOR_LOGIC_OP = 3058; // 0xbf2 + field public static final int GL_COLOR_MATERIAL = 2903; // 0xb57 + field public static final int GL_COMPRESSED_TEXTURE_FORMATS = 34467; // 0x86a3 + field public static final int GL_CONSTANT_ATTENUATION = 4615; // 0x1207 + field public static final int GL_COPY = 5379; // 0x1503 + field public static final int GL_COPY_INVERTED = 5388; // 0x150c + field public static final int GL_CULL_FACE = 2884; // 0xb44 + field public static final int GL_CW = 2304; // 0x900 + field public static final int GL_DECAL = 8449; // 0x2101 + field public static final int GL_DECR = 7683; // 0x1e03 + field public static final int GL_DEPTH_BITS = 3414; // 0xd56 + field public static final int GL_DEPTH_BUFFER_BIT = 256; // 0x100 + field public static final int GL_DEPTH_TEST = 2929; // 0xb71 + field public static final int GL_DIFFUSE = 4609; // 0x1201 + field public static final int GL_DITHER = 3024; // 0xbd0 + field public static final int GL_DONT_CARE = 4352; // 0x1100 + field public static final int GL_DST_ALPHA = 772; // 0x304 + field public static final int GL_DST_COLOR = 774; // 0x306 + field public static final int GL_EMISSION = 5632; // 0x1600 + field public static final int GL_EQUAL = 514; // 0x202 + field public static final int GL_EQUIV = 5385; // 0x1509 + field public static final int GL_EXP = 2048; // 0x800 + field public static final int GL_EXP2 = 2049; // 0x801 + field public static final int GL_EXTENSIONS = 7939; // 0x1f03 + field public static final int GL_FALSE = 0; // 0x0 + field public static final int GL_FASTEST = 4353; // 0x1101 + field public static final int GL_FIXED = 5132; // 0x140c + field public static final int GL_FLAT = 7424; // 0x1d00 + field public static final int GL_FLOAT = 5126; // 0x1406 + field public static final int GL_FOG = 2912; // 0xb60 + field public static final int GL_FOG_COLOR = 2918; // 0xb66 + field public static final int GL_FOG_DENSITY = 2914; // 0xb62 + field public static final int GL_FOG_END = 2916; // 0xb64 + field public static final int GL_FOG_HINT = 3156; // 0xc54 + field public static final int GL_FOG_MODE = 2917; // 0xb65 + field public static final int GL_FOG_START = 2915; // 0xb63 + field public static final int GL_FRONT = 1028; // 0x404 + field public static final int GL_FRONT_AND_BACK = 1032; // 0x408 + field public static final int GL_GEQUAL = 518; // 0x206 + field public static final int GL_GREATER = 516; // 0x204 + field public static final int GL_GREEN_BITS = 3411; // 0xd53 + field public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES = 35739; // 0x8b9b + field public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE_OES = 35738; // 0x8b9a + field public static final int GL_INCR = 7682; // 0x1e02 + field public static final int GL_INVALID_ENUM = 1280; // 0x500 + field public static final int GL_INVALID_OPERATION = 1282; // 0x502 + field public static final int GL_INVALID_VALUE = 1281; // 0x501 + field public static final int GL_INVERT = 5386; // 0x150a + field public static final int GL_KEEP = 7680; // 0x1e00 + field public static final int GL_LEQUAL = 515; // 0x203 + field public static final int GL_LESS = 513; // 0x201 + field public static final int GL_LIGHT0 = 16384; // 0x4000 + field public static final int GL_LIGHT1 = 16385; // 0x4001 + field public static final int GL_LIGHT2 = 16386; // 0x4002 + field public static final int GL_LIGHT3 = 16387; // 0x4003 + field public static final int GL_LIGHT4 = 16388; // 0x4004 + field public static final int GL_LIGHT5 = 16389; // 0x4005 + field public static final int GL_LIGHT6 = 16390; // 0x4006 + field public static final int GL_LIGHT7 = 16391; // 0x4007 + field public static final int GL_LIGHTING = 2896; // 0xb50 + field public static final int GL_LIGHT_MODEL_AMBIENT = 2899; // 0xb53 + field public static final int GL_LIGHT_MODEL_TWO_SIDE = 2898; // 0xb52 + field public static final int GL_LINEAR = 9729; // 0x2601 + field public static final int GL_LINEAR_ATTENUATION = 4616; // 0x1208 + field public static final int GL_LINEAR_MIPMAP_LINEAR = 9987; // 0x2703 + field public static final int GL_LINEAR_MIPMAP_NEAREST = 9985; // 0x2701 + field public static final int GL_LINES = 1; // 0x1 + field public static final int GL_LINE_LOOP = 2; // 0x2 + field public static final int GL_LINE_SMOOTH = 2848; // 0xb20 + field public static final int GL_LINE_SMOOTH_HINT = 3154; // 0xc52 + field public static final int GL_LINE_STRIP = 3; // 0x3 + field public static final int GL_LUMINANCE = 6409; // 0x1909 + field public static final int GL_LUMINANCE_ALPHA = 6410; // 0x190a + field public static final int GL_MAX_ELEMENTS_INDICES = 33001; // 0x80e9 + field public static final int GL_MAX_ELEMENTS_VERTICES = 33000; // 0x80e8 + field public static final int GL_MAX_LIGHTS = 3377; // 0xd31 + field public static final int GL_MAX_MODELVIEW_STACK_DEPTH = 3382; // 0xd36 + field public static final int GL_MAX_PROJECTION_STACK_DEPTH = 3384; // 0xd38 + field public static final int GL_MAX_TEXTURE_SIZE = 3379; // 0xd33 + field public static final int GL_MAX_TEXTURE_STACK_DEPTH = 3385; // 0xd39 + field public static final int GL_MAX_TEXTURE_UNITS = 34018; // 0x84e2 + field public static final int GL_MAX_VIEWPORT_DIMS = 3386; // 0xd3a + field public static final int GL_MODELVIEW = 5888; // 0x1700 + field public static final int GL_MODULATE = 8448; // 0x2100 + field public static final int GL_MULTISAMPLE = 32925; // 0x809d + field public static final int GL_NAND = 5390; // 0x150e + field public static final int GL_NEAREST = 9728; // 0x2600 + field public static final int GL_NEAREST_MIPMAP_LINEAR = 9986; // 0x2702 + field public static final int GL_NEAREST_MIPMAP_NEAREST = 9984; // 0x2700 + field public static final int GL_NEVER = 512; // 0x200 + field public static final int GL_NICEST = 4354; // 0x1102 + field public static final int GL_NOOP = 5381; // 0x1505 + field public static final int GL_NOR = 5384; // 0x1508 + field public static final int GL_NORMALIZE = 2977; // 0xba1 + field public static final int GL_NORMAL_ARRAY = 32885; // 0x8075 + field public static final int GL_NOTEQUAL = 517; // 0x205 + field public static final int GL_NO_ERROR = 0; // 0x0 + field public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 34466; // 0x86a2 + field public static final int GL_ONE = 1; // 0x1 + field public static final int GL_ONE_MINUS_DST_ALPHA = 773; // 0x305 + field public static final int GL_ONE_MINUS_DST_COLOR = 775; // 0x307 + field public static final int GL_ONE_MINUS_SRC_ALPHA = 771; // 0x303 + field public static final int GL_ONE_MINUS_SRC_COLOR = 769; // 0x301 + field public static final int GL_OR = 5383; // 0x1507 + field public static final int GL_OR_INVERTED = 5389; // 0x150d + field public static final int GL_OR_REVERSE = 5387; // 0x150b + field public static final int GL_OUT_OF_MEMORY = 1285; // 0x505 + field public static final int GL_PACK_ALIGNMENT = 3333; // 0xd05 + field public static final int GL_PALETTE4_R5_G6_B5_OES = 35730; // 0x8b92 + field public static final int GL_PALETTE4_RGB5_A1_OES = 35732; // 0x8b94 + field public static final int GL_PALETTE4_RGB8_OES = 35728; // 0x8b90 + field public static final int GL_PALETTE4_RGBA4_OES = 35731; // 0x8b93 + field public static final int GL_PALETTE4_RGBA8_OES = 35729; // 0x8b91 + field public static final int GL_PALETTE8_R5_G6_B5_OES = 35735; // 0x8b97 + field public static final int GL_PALETTE8_RGB5_A1_OES = 35737; // 0x8b99 + field public static final int GL_PALETTE8_RGB8_OES = 35733; // 0x8b95 + field public static final int GL_PALETTE8_RGBA4_OES = 35736; // 0x8b98 + field public static final int GL_PALETTE8_RGBA8_OES = 35734; // 0x8b96 + field public static final int GL_PERSPECTIVE_CORRECTION_HINT = 3152; // 0xc50 + field public static final int GL_POINTS = 0; // 0x0 + field public static final int GL_POINT_FADE_THRESHOLD_SIZE = 33064; // 0x8128 + field public static final int GL_POINT_SIZE = 2833; // 0xb11 + field public static final int GL_POINT_SMOOTH = 2832; // 0xb10 + field public static final int GL_POINT_SMOOTH_HINT = 3153; // 0xc51 + field public static final int GL_POLYGON_OFFSET_FILL = 32823; // 0x8037 + field public static final int GL_POLYGON_SMOOTH_HINT = 3155; // 0xc53 + field public static final int GL_POSITION = 4611; // 0x1203 + field public static final int GL_PROJECTION = 5889; // 0x1701 + field public static final int GL_QUADRATIC_ATTENUATION = 4617; // 0x1209 + field public static final int GL_RED_BITS = 3410; // 0xd52 + field public static final int GL_RENDERER = 7937; // 0x1f01 + field public static final int GL_REPEAT = 10497; // 0x2901 + field public static final int GL_REPLACE = 7681; // 0x1e01 + field public static final int GL_RESCALE_NORMAL = 32826; // 0x803a + field public static final int GL_RGB = 6407; // 0x1907 + field public static final int GL_RGBA = 6408; // 0x1908 + field public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 32926; // 0x809e + field public static final int GL_SAMPLE_ALPHA_TO_ONE = 32927; // 0x809f + field public static final int GL_SAMPLE_COVERAGE = 32928; // 0x80a0 + field public static final int GL_SCISSOR_TEST = 3089; // 0xc11 + field public static final int GL_SET = 5391; // 0x150f + field public static final int GL_SHININESS = 5633; // 0x1601 + field public static final int GL_SHORT = 5122; // 0x1402 + field public static final int GL_SMOOTH = 7425; // 0x1d01 + field public static final int GL_SMOOTH_LINE_WIDTH_RANGE = 2850; // 0xb22 + field public static final int GL_SMOOTH_POINT_SIZE_RANGE = 2834; // 0xb12 + field public static final int GL_SPECULAR = 4610; // 0x1202 + field public static final int GL_SPOT_CUTOFF = 4614; // 0x1206 + field public static final int GL_SPOT_DIRECTION = 4612; // 0x1204 + field public static final int GL_SPOT_EXPONENT = 4613; // 0x1205 + field public static final int GL_SRC_ALPHA = 770; // 0x302 + field public static final int GL_SRC_ALPHA_SATURATE = 776; // 0x308 + field public static final int GL_SRC_COLOR = 768; // 0x300 + field public static final int GL_STACK_OVERFLOW = 1283; // 0x503 + field public static final int GL_STACK_UNDERFLOW = 1284; // 0x504 + field public static final int GL_STENCIL_BITS = 3415; // 0xd57 + field public static final int GL_STENCIL_BUFFER_BIT = 1024; // 0x400 + field public static final int GL_STENCIL_TEST = 2960; // 0xb90 + field public static final int GL_SUBPIXEL_BITS = 3408; // 0xd50 + field public static final int GL_TEXTURE = 5890; // 0x1702 + field public static final int GL_TEXTURE0 = 33984; // 0x84c0 + field public static final int GL_TEXTURE1 = 33985; // 0x84c1 + field public static final int GL_TEXTURE10 = 33994; // 0x84ca + field public static final int GL_TEXTURE11 = 33995; // 0x84cb + field public static final int GL_TEXTURE12 = 33996; // 0x84cc + field public static final int GL_TEXTURE13 = 33997; // 0x84cd + field public static final int GL_TEXTURE14 = 33998; // 0x84ce + field public static final int GL_TEXTURE15 = 33999; // 0x84cf + field public static final int GL_TEXTURE16 = 34000; // 0x84d0 + field public static final int GL_TEXTURE17 = 34001; // 0x84d1 + field public static final int GL_TEXTURE18 = 34002; // 0x84d2 + field public static final int GL_TEXTURE19 = 34003; // 0x84d3 + field public static final int GL_TEXTURE2 = 33986; // 0x84c2 + field public static final int GL_TEXTURE20 = 34004; // 0x84d4 + field public static final int GL_TEXTURE21 = 34005; // 0x84d5 + field public static final int GL_TEXTURE22 = 34006; // 0x84d6 + field public static final int GL_TEXTURE23 = 34007; // 0x84d7 + field public static final int GL_TEXTURE24 = 34008; // 0x84d8 + field public static final int GL_TEXTURE25 = 34009; // 0x84d9 + field public static final int GL_TEXTURE26 = 34010; // 0x84da + field public static final int GL_TEXTURE27 = 34011; // 0x84db + field public static final int GL_TEXTURE28 = 34012; // 0x84dc + field public static final int GL_TEXTURE29 = 34013; // 0x84dd + field public static final int GL_TEXTURE3 = 33987; // 0x84c3 + field public static final int GL_TEXTURE30 = 34014; // 0x84de + field public static final int GL_TEXTURE31 = 34015; // 0x84df + field public static final int GL_TEXTURE4 = 33988; // 0x84c4 + field public static final int GL_TEXTURE5 = 33989; // 0x84c5 + field public static final int GL_TEXTURE6 = 33990; // 0x84c6 + field public static final int GL_TEXTURE7 = 33991; // 0x84c7 + field public static final int GL_TEXTURE8 = 33992; // 0x84c8 + field public static final int GL_TEXTURE9 = 33993; // 0x84c9 + field public static final int GL_TEXTURE_2D = 3553; // 0xde1 + field public static final int GL_TEXTURE_COORD_ARRAY = 32888; // 0x8078 + field public static final int GL_TEXTURE_ENV = 8960; // 0x2300 + field public static final int GL_TEXTURE_ENV_COLOR = 8705; // 0x2201 + field public static final int GL_TEXTURE_ENV_MODE = 8704; // 0x2200 + field public static final int GL_TEXTURE_MAG_FILTER = 10240; // 0x2800 + field public static final int GL_TEXTURE_MIN_FILTER = 10241; // 0x2801 + field public static final int GL_TEXTURE_WRAP_S = 10242; // 0x2802 + field public static final int GL_TEXTURE_WRAP_T = 10243; // 0x2803 + field public static final int GL_TRIANGLES = 4; // 0x4 + field public static final int GL_TRIANGLE_FAN = 6; // 0x6 + field public static final int GL_TRIANGLE_STRIP = 5; // 0x5 + field public static final int GL_TRUE = 1; // 0x1 + field public static final int GL_UNPACK_ALIGNMENT = 3317; // 0xcf5 + field public static final int GL_UNSIGNED_BYTE = 5121; // 0x1401 + field public static final int GL_UNSIGNED_SHORT = 5123; // 0x1403 + field public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 32819; // 0x8033 + field public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 32820; // 0x8034 + field public static final int GL_UNSIGNED_SHORT_5_6_5 = 33635; // 0x8363 + field public static final int GL_VENDOR = 7936; // 0x1f00 + field public static final int GL_VERSION = 7938; // 0x1f02 + field public static final int GL_VERTEX_ARRAY = 32884; // 0x8074 + field public static final int GL_XOR = 5382; // 0x1506 + field public static final int GL_ZERO = 0; // 0x0 + } + + public interface GL10Ext extends javax.microedition.khronos.opengles.GL { + method public int glQueryMatrixxOES(int[], int, int[], int); + method public int glQueryMatrixxOES(java.nio.IntBuffer, java.nio.IntBuffer); + } + + public interface GL11 extends javax.microedition.khronos.opengles.GL10 { + method public void glBindBuffer(int, int); + method public void glBufferData(int, int, java.nio.Buffer, int); + method public void glBufferSubData(int, int, int, java.nio.Buffer); + method public void glClipPlanef(int, float[], int); + method public void glClipPlanef(int, java.nio.FloatBuffer); + method public void glClipPlanex(int, int[], int); + method public void glClipPlanex(int, java.nio.IntBuffer); + method public void glColor4ub(byte, byte, byte, byte); + method public void glColorPointer(int, int, int, int); + method public void glDeleteBuffers(int, int[], int); + method public void glDeleteBuffers(int, java.nio.IntBuffer); + method public void glDrawElements(int, int, int, int); + method public void glGenBuffers(int, int[], int); + method public void glGenBuffers(int, java.nio.IntBuffer); + method public void glGetBooleanv(int, boolean[], int); + method public void glGetBooleanv(int, java.nio.IntBuffer); + method public void glGetBufferParameteriv(int, int, int[], int); + method public void glGetBufferParameteriv(int, int, java.nio.IntBuffer); + method public void glGetClipPlanef(int, float[], int); + method public void glGetClipPlanef(int, java.nio.FloatBuffer); + method public void glGetClipPlanex(int, int[], int); + method public void glGetClipPlanex(int, java.nio.IntBuffer); + method public void glGetFixedv(int, int[], int); + method public void glGetFixedv(int, java.nio.IntBuffer); + method public void glGetFloatv(int, float[], int); + method public void glGetFloatv(int, java.nio.FloatBuffer); + method public void glGetLightfv(int, int, float[], int); + method public void glGetLightfv(int, int, java.nio.FloatBuffer); + method public void glGetLightxv(int, int, int[], int); + method public void glGetLightxv(int, int, java.nio.IntBuffer); + method public void glGetMaterialfv(int, int, float[], int); + method public void glGetMaterialfv(int, int, java.nio.FloatBuffer); + method public void glGetMaterialxv(int, int, int[], int); + method public void glGetMaterialxv(int, int, java.nio.IntBuffer); + method public void glGetPointerv(int, java.nio.Buffer[]); + method public void glGetTexEnviv(int, int, int[], int); + method public void glGetTexEnviv(int, int, java.nio.IntBuffer); + method public void glGetTexEnvxv(int, int, int[], int); + method public void glGetTexEnvxv(int, int, java.nio.IntBuffer); + method public void glGetTexParameterfv(int, int, float[], int); + method public void glGetTexParameterfv(int, int, java.nio.FloatBuffer); + method public void glGetTexParameteriv(int, int, int[], int); + method public void glGetTexParameteriv(int, int, java.nio.IntBuffer); + method public void glGetTexParameterxv(int, int, int[], int); + method public void glGetTexParameterxv(int, int, java.nio.IntBuffer); + method public boolean glIsBuffer(int); + method public boolean glIsEnabled(int); + method public boolean glIsTexture(int); + method public void glNormalPointer(int, int, int); + method public void glPointParameterf(int, float); + method public void glPointParameterfv(int, float[], int); + method public void glPointParameterfv(int, java.nio.FloatBuffer); + method public void glPointParameterx(int, int); + method public void glPointParameterxv(int, int[], int); + method public void glPointParameterxv(int, java.nio.IntBuffer); + method public void glPointSizePointerOES(int, int, java.nio.Buffer); + method public void glTexCoordPointer(int, int, int, int); + method public void glTexEnvi(int, int, int); + method public void glTexEnviv(int, int, int[], int); + method public void glTexEnviv(int, int, java.nio.IntBuffer); + method public void glTexParameterfv(int, int, float[], int); + method public void glTexParameterfv(int, int, java.nio.FloatBuffer); + method public void glTexParameteri(int, int, int); + method public void glTexParameteriv(int, int, int[], int); + method public void glTexParameteriv(int, int, java.nio.IntBuffer); + method public void glTexParameterxv(int, int, int[], int); + method public void glTexParameterxv(int, int, java.nio.IntBuffer); + method public void glVertexPointer(int, int, int, int); + field public static final int GL_ACTIVE_TEXTURE = 34016; // 0x84e0 + field public static final int GL_ADD_SIGNED = 34164; // 0x8574 + field public static final int GL_ALPHA_SCALE = 3356; // 0xd1c + field public static final int GL_ALPHA_TEST_FUNC = 3009; // 0xbc1 + field public static final int GL_ALPHA_TEST_REF = 3010; // 0xbc2 + field public static final int GL_ARRAY_BUFFER = 34962; // 0x8892 + field public static final int GL_ARRAY_BUFFER_BINDING = 34964; // 0x8894 + field public static final int GL_BLEND_DST = 3040; // 0xbe0 + field public static final int GL_BLEND_SRC = 3041; // 0xbe1 + field public static final int GL_BUFFER_ACCESS = 35003; // 0x88bb + field public static final int GL_BUFFER_SIZE = 34660; // 0x8764 + field public static final int GL_BUFFER_USAGE = 34661; // 0x8765 + field public static final int GL_CLIENT_ACTIVE_TEXTURE = 34017; // 0x84e1 + field public static final int GL_CLIP_PLANE0 = 12288; // 0x3000 + field public static final int GL_CLIP_PLANE1 = 12289; // 0x3001 + field public static final int GL_CLIP_PLANE2 = 12290; // 0x3002 + field public static final int GL_CLIP_PLANE3 = 12291; // 0x3003 + field public static final int GL_CLIP_PLANE4 = 12292; // 0x3004 + field public static final int GL_CLIP_PLANE5 = 12293; // 0x3005 + field public static final int GL_COLOR_ARRAY_BUFFER_BINDING = 34968; // 0x8898 + field public static final int GL_COLOR_ARRAY_POINTER = 32912; // 0x8090 + field public static final int GL_COLOR_ARRAY_SIZE = 32897; // 0x8081 + field public static final int GL_COLOR_ARRAY_STRIDE = 32899; // 0x8083 + field public static final int GL_COLOR_ARRAY_TYPE = 32898; // 0x8082 + field public static final int GL_COLOR_CLEAR_VALUE = 3106; // 0xc22 + field public static final int GL_COLOR_WRITEMASK = 3107; // 0xc23 + field public static final int GL_COMBINE = 34160; // 0x8570 + field public static final int GL_COMBINE_ALPHA = 34162; // 0x8572 + field public static final int GL_COMBINE_RGB = 34161; // 0x8571 + field public static final int GL_CONSTANT = 34166; // 0x8576 + field public static final int GL_COORD_REPLACE_OES = 34914; // 0x8862 + field public static final int GL_CULL_FACE_MODE = 2885; // 0xb45 + field public static final int GL_CURRENT_COLOR = 2816; // 0xb00 + field public static final int GL_CURRENT_NORMAL = 2818; // 0xb02 + field public static final int GL_CURRENT_TEXTURE_COORDS = 2819; // 0xb03 + field public static final int GL_DEPTH_CLEAR_VALUE = 2931; // 0xb73 + field public static final int GL_DEPTH_FUNC = 2932; // 0xb74 + field public static final int GL_DEPTH_RANGE = 2928; // 0xb70 + field public static final int GL_DEPTH_WRITEMASK = 2930; // 0xb72 + field public static final int GL_DOT3_RGB = 34478; // 0x86ae + field public static final int GL_DOT3_RGBA = 34479; // 0x86af + field public static final int GL_DYNAMIC_DRAW = 35048; // 0x88e8 + field public static final int GL_ELEMENT_ARRAY_BUFFER = 34963; // 0x8893 + field public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING = 34965; // 0x8895 + field public static final int GL_FRONT_FACE = 2886; // 0xb46 + field public static final int GL_GENERATE_MIPMAP = 33169; // 0x8191 + field public static final int GL_GENERATE_MIPMAP_HINT = 33170; // 0x8192 + field public static final int GL_INTERPOLATE = 34165; // 0x8575 + field public static final int GL_LINE_WIDTH = 2849; // 0xb21 + field public static final int GL_LOGIC_OP_MODE = 3056; // 0xbf0 + field public static final int GL_MATRIX_MODE = 2976; // 0xba0 + field public static final int GL_MAX_CLIP_PLANES = 3378; // 0xd32 + field public static final int GL_MODELVIEW_MATRIX = 2982; // 0xba6 + field public static final int GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES = 35213; // 0x898d + field public static final int GL_MODELVIEW_STACK_DEPTH = 2979; // 0xba3 + field public static final int GL_NORMAL_ARRAY_BUFFER_BINDING = 34967; // 0x8897 + field public static final int GL_NORMAL_ARRAY_POINTER = 32911; // 0x808f + field public static final int GL_NORMAL_ARRAY_STRIDE = 32895; // 0x807f + field public static final int GL_NORMAL_ARRAY_TYPE = 32894; // 0x807e + field public static final int GL_OPERAND0_ALPHA = 34200; // 0x8598 + field public static final int GL_OPERAND0_RGB = 34192; // 0x8590 + field public static final int GL_OPERAND1_ALPHA = 34201; // 0x8599 + field public static final int GL_OPERAND1_RGB = 34193; // 0x8591 + field public static final int GL_OPERAND2_ALPHA = 34202; // 0x859a + field public static final int GL_OPERAND2_RGB = 34194; // 0x8592 + field public static final int GL_POINT_DISTANCE_ATTENUATION = 33065; // 0x8129 + field public static final int GL_POINT_FADE_THRESHOLD_SIZE = 33064; // 0x8128 + field public static final int GL_POINT_SIZE = 2833; // 0xb11 + field public static final int GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES = 35743; // 0x8b9f + field public static final int GL_POINT_SIZE_ARRAY_OES = 35740; // 0x8b9c + field public static final int GL_POINT_SIZE_ARRAY_POINTER_OES = 35212; // 0x898c + field public static final int GL_POINT_SIZE_ARRAY_STRIDE_OES = 35211; // 0x898b + field public static final int GL_POINT_SIZE_ARRAY_TYPE_OES = 35210; // 0x898a + field public static final int GL_POINT_SIZE_MAX = 33063; // 0x8127 + field public static final int GL_POINT_SIZE_MIN = 33062; // 0x8126 + field public static final int GL_POINT_SPRITE_OES = 34913; // 0x8861 + field public static final int GL_POLYGON_OFFSET_FACTOR = 32824; // 0x8038 + field public static final int GL_POLYGON_OFFSET_UNITS = 10752; // 0x2a00 + field public static final int GL_PREVIOUS = 34168; // 0x8578 + field public static final int GL_PRIMARY_COLOR = 34167; // 0x8577 + field public static final int GL_PROJECTION_MATRIX = 2983; // 0xba7 + field public static final int GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES = 35214; // 0x898e + field public static final int GL_PROJECTION_STACK_DEPTH = 2980; // 0xba4 + field public static final int GL_RGB_SCALE = 34163; // 0x8573 + field public static final int GL_SAMPLES = 32937; // 0x80a9 + field public static final int GL_SAMPLE_BUFFERS = 32936; // 0x80a8 + field public static final int GL_SAMPLE_COVERAGE_INVERT = 32939; // 0x80ab + field public static final int GL_SAMPLE_COVERAGE_VALUE = 32938; // 0x80aa + field public static final int GL_SCISSOR_BOX = 3088; // 0xc10 + field public static final int GL_SHADE_MODEL = 2900; // 0xb54 + field public static final int GL_SRC0_ALPHA = 34184; // 0x8588 + field public static final int GL_SRC0_RGB = 34176; // 0x8580 + field public static final int GL_SRC1_ALPHA = 34185; // 0x8589 + field public static final int GL_SRC1_RGB = 34177; // 0x8581 + field public static final int GL_SRC2_ALPHA = 34186; // 0x858a + field public static final int GL_SRC2_RGB = 34178; // 0x8582 + field public static final int GL_STATIC_DRAW = 35044; // 0x88e4 + field public static final int GL_STENCIL_CLEAR_VALUE = 2961; // 0xb91 + field public static final int GL_STENCIL_FAIL = 2964; // 0xb94 + field public static final int GL_STENCIL_FUNC = 2962; // 0xb92 + field public static final int GL_STENCIL_PASS_DEPTH_FAIL = 2965; // 0xb95 + field public static final int GL_STENCIL_PASS_DEPTH_PASS = 2966; // 0xb96 + field public static final int GL_STENCIL_REF = 2967; // 0xb97 + field public static final int GL_STENCIL_VALUE_MASK = 2963; // 0xb93 + field public static final int GL_STENCIL_WRITEMASK = 2968; // 0xb98 + field public static final int GL_SUBTRACT = 34023; // 0x84e7 + field public static final int GL_TEXTURE_BINDING_2D = 32873; // 0x8069 + field public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 34970; // 0x889a + field public static final int GL_TEXTURE_COORD_ARRAY_POINTER = 32914; // 0x8092 + field public static final int GL_TEXTURE_COORD_ARRAY_SIZE = 32904; // 0x8088 + field public static final int GL_TEXTURE_COORD_ARRAY_STRIDE = 32906; // 0x808a + field public static final int GL_TEXTURE_COORD_ARRAY_TYPE = 32905; // 0x8089 + field public static final int GL_TEXTURE_MATRIX = 2984; // 0xba8 + field public static final int GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES = 35215; // 0x898f + field public static final int GL_TEXTURE_STACK_DEPTH = 2981; // 0xba5 + field public static final int GL_VERTEX_ARRAY_BUFFER_BINDING = 34966; // 0x8896 + field public static final int GL_VERTEX_ARRAY_POINTER = 32910; // 0x808e + field public static final int GL_VERTEX_ARRAY_SIZE = 32890; // 0x807a + field public static final int GL_VERTEX_ARRAY_STRIDE = 32892; // 0x807c + field public static final int GL_VERTEX_ARRAY_TYPE = 32891; // 0x807b + field public static final int GL_VIEWPORT = 2978; // 0xba2 + field public static final int GL_WRITE_ONLY = 35001; // 0x88b9 + } + + public interface GL11Ext extends javax.microedition.khronos.opengles.GL { + method public void glCurrentPaletteMatrixOES(int); + method public void glDrawTexfOES(float, float, float, float, float); + method public void glDrawTexfvOES(float[], int); + method public void glDrawTexfvOES(java.nio.FloatBuffer); + method public void glDrawTexiOES(int, int, int, int, int); + method public void glDrawTexivOES(int[], int); + method public void glDrawTexivOES(java.nio.IntBuffer); + method public void glDrawTexsOES(short, short, short, short, short); + method public void glDrawTexsvOES(short[], int); + method public void glDrawTexsvOES(java.nio.ShortBuffer); + method public void glDrawTexxOES(int, int, int, int, int); + method public void glDrawTexxvOES(int[], int); + method public void glDrawTexxvOES(java.nio.IntBuffer); + method public void glEnable(int); + method public void glEnableClientState(int); + method public void glLoadPaletteFromModelViewMatrixOES(); + method public void glMatrixIndexPointerOES(int, int, int, java.nio.Buffer); + method public void glMatrixIndexPointerOES(int, int, int, int); + method public void glTexParameterfv(int, int, float[], int); + method public void glWeightPointerOES(int, int, int, java.nio.Buffer); + method public void glWeightPointerOES(int, int, int, int); + field public static final int GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES = 35742; // 0x8b9e + field public static final int GL_MATRIX_INDEX_ARRAY_OES = 34884; // 0x8844 + field public static final int GL_MATRIX_INDEX_ARRAY_POINTER_OES = 34889; // 0x8849 + field public static final int GL_MATRIX_INDEX_ARRAY_SIZE_OES = 34886; // 0x8846 + field public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_OES = 34888; // 0x8848 + field public static final int GL_MATRIX_INDEX_ARRAY_TYPE_OES = 34887; // 0x8847 + field public static final int GL_MATRIX_PALETTE_OES = 34880; // 0x8840 + field public static final int GL_MAX_PALETTE_MATRICES_OES = 34882; // 0x8842 + field public static final int GL_MAX_VERTEX_UNITS_OES = 34468; // 0x86a4 + field public static final int GL_TEXTURE_CROP_RECT_OES = 35741; // 0x8b9d + field public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_OES = 34974; // 0x889e + field public static final int GL_WEIGHT_ARRAY_OES = 34477; // 0x86ad + field public static final int GL_WEIGHT_ARRAY_POINTER_OES = 34476; // 0x86ac + field public static final int GL_WEIGHT_ARRAY_SIZE_OES = 34475; // 0x86ab + field public static final int GL_WEIGHT_ARRAY_STRIDE_OES = 34474; // 0x86aa + field public static final int GL_WEIGHT_ARRAY_TYPE_OES = 34473; // 0x86a9 + } + + public interface GL11ExtensionPack extends javax.microedition.khronos.opengles.GL { + method public void glBindFramebufferOES(int, int); + method public void glBindRenderbufferOES(int, int); + method public void glBindTexture(int, int); + method public void glBlendEquation(int); + method public void glBlendEquationSeparate(int, int); + method public void glBlendFuncSeparate(int, int, int, int); + method public int glCheckFramebufferStatusOES(int); + method public void glCompressedTexImage2D(int, int, int, int, int, int, int, java.nio.Buffer); + method public void glCopyTexImage2D(int, int, int, int, int, int, int, int); + method public void glDeleteFramebuffersOES(int, int[], int); + method public void glDeleteFramebuffersOES(int, java.nio.IntBuffer); + method public void glDeleteRenderbuffersOES(int, int[], int); + method public void glDeleteRenderbuffersOES(int, java.nio.IntBuffer); + method public void glEnable(int); + method public void glFramebufferRenderbufferOES(int, int, int, int); + method public void glFramebufferTexture2DOES(int, int, int, int, int); + method public void glGenFramebuffersOES(int, int[], int); + method public void glGenFramebuffersOES(int, java.nio.IntBuffer); + method public void glGenRenderbuffersOES(int, int[], int); + method public void glGenRenderbuffersOES(int, java.nio.IntBuffer); + method public void glGenerateMipmapOES(int); + method public void glGetFramebufferAttachmentParameterivOES(int, int, int, int[], int); + method public void glGetFramebufferAttachmentParameterivOES(int, int, int, java.nio.IntBuffer); + method public void glGetIntegerv(int, int[], int); + method public void glGetIntegerv(int, java.nio.IntBuffer); + method public void glGetRenderbufferParameterivOES(int, int, int[], int); + method public void glGetRenderbufferParameterivOES(int, int, java.nio.IntBuffer); + method public void glGetTexGenfv(int, int, float[], int); + method public void glGetTexGenfv(int, int, java.nio.FloatBuffer); + method public void glGetTexGeniv(int, int, int[], int); + method public void glGetTexGeniv(int, int, java.nio.IntBuffer); + method public void glGetTexGenxv(int, int, int[], int); + method public void glGetTexGenxv(int, int, java.nio.IntBuffer); + method public boolean glIsFramebufferOES(int); + method public boolean glIsRenderbufferOES(int); + method public void glRenderbufferStorageOES(int, int, int, int); + method public void glStencilOp(int, int, int); + method public void glTexEnvf(int, int, float); + method public void glTexEnvfv(int, int, float[], int); + method public void glTexEnvfv(int, int, java.nio.FloatBuffer); + method public void glTexEnvx(int, int, int); + method public void glTexEnvxv(int, int, int[], int); + method public void glTexEnvxv(int, int, java.nio.IntBuffer); + method public void glTexGenf(int, int, float); + method public void glTexGenfv(int, int, float[], int); + method public void glTexGenfv(int, int, java.nio.FloatBuffer); + method public void glTexGeni(int, int, int); + method public void glTexGeniv(int, int, int[], int); + method public void glTexGeniv(int, int, java.nio.IntBuffer); + method public void glTexGenx(int, int, int); + method public void glTexGenxv(int, int, int[], int); + method public void glTexGenxv(int, int, java.nio.IntBuffer); + method public void glTexParameterf(int, int, float); + field public static final int GL_BLEND_DST_ALPHA = 32970; // 0x80ca + field public static final int GL_BLEND_DST_RGB = 32968; // 0x80c8 + field public static final int GL_BLEND_EQUATION = 32777; // 0x8009 + field public static final int GL_BLEND_EQUATION_ALPHA = 34877; // 0x883d + field public static final int GL_BLEND_EQUATION_RGB = 32777; // 0x8009 + field public static final int GL_BLEND_SRC_ALPHA = 32971; // 0x80cb + field public static final int GL_BLEND_SRC_RGB = 32969; // 0x80c9 + field public static final int GL_COLOR_ATTACHMENT0_OES = 36064; // 0x8ce0 + field public static final int GL_COLOR_ATTACHMENT10_OES = 36074; // 0x8cea + field public static final int GL_COLOR_ATTACHMENT11_OES = 36075; // 0x8ceb + field public static final int GL_COLOR_ATTACHMENT12_OES = 36076; // 0x8cec + field public static final int GL_COLOR_ATTACHMENT13_OES = 36077; // 0x8ced + field public static final int GL_COLOR_ATTACHMENT14_OES = 36078; // 0x8cee + field public static final int GL_COLOR_ATTACHMENT15_OES = 36079; // 0x8cef + field public static final int GL_COLOR_ATTACHMENT1_OES = 36065; // 0x8ce1 + field public static final int GL_COLOR_ATTACHMENT2_OES = 36066; // 0x8ce2 + field public static final int GL_COLOR_ATTACHMENT3_OES = 36067; // 0x8ce3 + field public static final int GL_COLOR_ATTACHMENT4_OES = 36068; // 0x8ce4 + field public static final int GL_COLOR_ATTACHMENT5_OES = 36069; // 0x8ce5 + field public static final int GL_COLOR_ATTACHMENT6_OES = 36070; // 0x8ce6 + field public static final int GL_COLOR_ATTACHMENT7_OES = 36071; // 0x8ce7 + field public static final int GL_COLOR_ATTACHMENT8_OES = 36072; // 0x8ce8 + field public static final int GL_COLOR_ATTACHMENT9_OES = 36073; // 0x8ce9 + field public static final int GL_DECR_WRAP = 34056; // 0x8508 + field public static final int GL_DEPTH_ATTACHMENT_OES = 36096; // 0x8d00 + field public static final int GL_DEPTH_COMPONENT = 6402; // 0x1902 + field public static final int GL_DEPTH_COMPONENT16 = 33189; // 0x81a5 + field public static final int GL_DEPTH_COMPONENT24 = 33190; // 0x81a6 + field public static final int GL_DEPTH_COMPONENT32 = 33191; // 0x81a7 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES = 36049; // 0x8cd1 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES = 36048; // 0x8cd0 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES = 36051; // 0x8cd3 + field public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES = 36050; // 0x8cd2 + field public static final int GL_FRAMEBUFFER_BINDING_OES = 36006; // 0x8ca6 + field public static final int GL_FRAMEBUFFER_COMPLETE_OES = 36053; // 0x8cd5 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES = 36054; // 0x8cd6 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES = 36057; // 0x8cd9 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES = 36059; // 0x8cdb + field public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES = 36058; // 0x8cda + field public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES = 36055; // 0x8cd7 + field public static final int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES = 36060; // 0x8cdc + field public static final int GL_FRAMEBUFFER_OES = 36160; // 0x8d40 + field public static final int GL_FRAMEBUFFER_UNSUPPORTED_OES = 36061; // 0x8cdd + field public static final int GL_FUNC_ADD = 32774; // 0x8006 + field public static final int GL_FUNC_REVERSE_SUBTRACT = 32779; // 0x800b + field public static final int GL_FUNC_SUBTRACT = 32778; // 0x800a + field public static final int GL_INCR_WRAP = 34055; // 0x8507 + field public static final int GL_INVALID_FRAMEBUFFER_OPERATION_OES = 1286; // 0x506 + field public static final int GL_MAX_COLOR_ATTACHMENTS_OES = 36063; // 0x8cdf + field public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 34076; // 0x851c + field public static final int GL_MAX_RENDERBUFFER_SIZE_OES = 34024; // 0x84e8 + field public static final int GL_MIRRORED_REPEAT = 33648; // 0x8370 + field public static final int GL_NORMAL_MAP = 34065; // 0x8511 + field public static final int GL_REFLECTION_MAP = 34066; // 0x8512 + field public static final int GL_RENDERBUFFER_ALPHA_SIZE_OES = 36179; // 0x8d53 + field public static final int GL_RENDERBUFFER_BINDING_OES = 36007; // 0x8ca7 + field public static final int GL_RENDERBUFFER_BLUE_SIZE_OES = 36178; // 0x8d52 + field public static final int GL_RENDERBUFFER_DEPTH_SIZE_OES = 36180; // 0x8d54 + field public static final int GL_RENDERBUFFER_GREEN_SIZE_OES = 36177; // 0x8d51 + field public static final int GL_RENDERBUFFER_HEIGHT_OES = 36163; // 0x8d43 + field public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_OES = 36164; // 0x8d44 + field public static final int GL_RENDERBUFFER_OES = 36161; // 0x8d41 + field public static final int GL_RENDERBUFFER_RED_SIZE_OES = 36176; // 0x8d50 + field public static final int GL_RENDERBUFFER_STENCIL_SIZE_OES = 36181; // 0x8d55 + field public static final int GL_RENDERBUFFER_WIDTH_OES = 36162; // 0x8d42 + field public static final int GL_RGB565_OES = 36194; // 0x8d62 + field public static final int GL_RGB5_A1 = 32855; // 0x8057 + field public static final int GL_RGB8 = 32849; // 0x8051 + field public static final int GL_RGBA4 = 32854; // 0x8056 + field public static final int GL_RGBA8 = 32856; // 0x8058 + field public static final int GL_STENCIL_ATTACHMENT_OES = 36128; // 0x8d20 + field public static final int GL_STENCIL_INDEX = 6401; // 0x1901 + field public static final int GL_STENCIL_INDEX1_OES = 36166; // 0x8d46 + field public static final int GL_STENCIL_INDEX4_OES = 36167; // 0x8d47 + field public static final int GL_STENCIL_INDEX8_OES = 36168; // 0x8d48 + field public static final int GL_STR = -1; // 0xffffffff + field public static final int GL_TEXTURE_BINDING_CUBE_MAP = 34068; // 0x8514 + field public static final int GL_TEXTURE_CUBE_MAP = 34067; // 0x8513 + field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 34070; // 0x8516 + field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072; // 0x8518 + field public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074; // 0x851a + field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 34069; // 0x8515 + field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 34071; // 0x8517 + field public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 34073; // 0x8519 + field public static final int GL_TEXTURE_GEN_MODE = 9472; // 0x2500 + field public static final int GL_TEXTURE_GEN_STR = 36192; // 0x8d60 + } + +} + +package org.apache.http.conn { + + @Deprecated public class ConnectTimeoutException extends java.io.InterruptedIOException { + ctor @Deprecated public ConnectTimeoutException(); + ctor @Deprecated public ConnectTimeoutException(String); + } + +} + +package org.apache.http.conn.scheme { + + @Deprecated public interface HostNameResolver { + method @Deprecated public java.net.InetAddress resolve(String) throws java.io.IOException; + } + + @Deprecated public interface LayeredSocketFactory extends org.apache.http.conn.scheme.SocketFactory { + method @Deprecated public java.net.Socket createSocket(java.net.Socket, String, int, boolean) throws java.io.IOException, java.net.UnknownHostException; + } + + @Deprecated public interface SocketFactory { + method @Deprecated public java.net.Socket connectSocket(java.net.Socket, String, int, java.net.InetAddress, int, org.apache.http.params.HttpParams) throws org.apache.http.conn.ConnectTimeoutException, java.io.IOException, java.net.UnknownHostException; + method @Deprecated public java.net.Socket createSocket() throws java.io.IOException; + method @Deprecated public boolean isSecure(java.net.Socket) throws java.lang.IllegalArgumentException; + } + +} + +package org.apache.http.conn.ssl { + + @Deprecated public abstract class AbstractVerifier implements org.apache.http.conn.ssl.X509HostnameVerifier { + ctor @Deprecated public AbstractVerifier(); + method @Deprecated public static boolean acceptableCountryWildcard(String); + method @Deprecated public static int countDots(String); + method @Deprecated public static String[] getCNs(java.security.cert.X509Certificate); + method @Deprecated public static String[] getDNSSubjectAlts(java.security.cert.X509Certificate); + method @Deprecated public final void verify(String, javax.net.ssl.SSLSocket) throws java.io.IOException; + method @Deprecated public final boolean verify(String, javax.net.ssl.SSLSession); + method @Deprecated public final void verify(String, java.security.cert.X509Certificate) throws javax.net.ssl.SSLException; + method @Deprecated public final void verify(String, String[], String[], boolean) throws javax.net.ssl.SSLException; + } + + @Deprecated public class AllowAllHostnameVerifier extends org.apache.http.conn.ssl.AbstractVerifier { + ctor @Deprecated public AllowAllHostnameVerifier(); + method @Deprecated public final String toString(); + method @Deprecated public final void verify(String, String[], String[]); + } + + @Deprecated public class BrowserCompatHostnameVerifier extends org.apache.http.conn.ssl.AbstractVerifier { + ctor @Deprecated public BrowserCompatHostnameVerifier(); + method @Deprecated public final String toString(); + method @Deprecated public final void verify(String, String[], String[]) throws javax.net.ssl.SSLException; + } + + @Deprecated public class SSLSocketFactory implements org.apache.http.conn.scheme.LayeredSocketFactory { + ctor @Deprecated public SSLSocketFactory(String, java.security.KeyStore, String, java.security.KeyStore, java.security.SecureRandom, org.apache.http.conn.scheme.HostNameResolver) throws java.security.KeyManagementException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException; + ctor @Deprecated public SSLSocketFactory(java.security.KeyStore, String, java.security.KeyStore) throws java.security.KeyManagementException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException; + ctor @Deprecated public SSLSocketFactory(java.security.KeyStore, String) throws java.security.KeyManagementException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException; + ctor @Deprecated public SSLSocketFactory(java.security.KeyStore) throws java.security.KeyManagementException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException; + method @Deprecated public java.net.Socket connectSocket(java.net.Socket, String, int, java.net.InetAddress, int, org.apache.http.params.HttpParams) throws java.io.IOException; + method @Deprecated public java.net.Socket createSocket() throws java.io.IOException; + method @Deprecated public java.net.Socket createSocket(java.net.Socket, String, int, boolean) throws java.io.IOException, java.net.UnknownHostException; + method @Deprecated public org.apache.http.conn.ssl.X509HostnameVerifier getHostnameVerifier(); + method @Deprecated public static org.apache.http.conn.ssl.SSLSocketFactory getSocketFactory(); + method @Deprecated public boolean isSecure(java.net.Socket) throws java.lang.IllegalArgumentException; + method @Deprecated public void setHostnameVerifier(org.apache.http.conn.ssl.X509HostnameVerifier); + field @Deprecated public static final org.apache.http.conn.ssl.X509HostnameVerifier ALLOW_ALL_HOSTNAME_VERIFIER; + field @Deprecated public static final org.apache.http.conn.ssl.X509HostnameVerifier BROWSER_COMPATIBLE_HOSTNAME_VERIFIER; + field @Deprecated public static final String SSL = "SSL"; + field @Deprecated public static final String SSLV2 = "SSLv2"; + field @Deprecated public static final org.apache.http.conn.ssl.X509HostnameVerifier STRICT_HOSTNAME_VERIFIER; + field @Deprecated public static final String TLS = "TLS"; + } + + @Deprecated public class StrictHostnameVerifier extends org.apache.http.conn.ssl.AbstractVerifier { + ctor @Deprecated public StrictHostnameVerifier(); + method @Deprecated public final String toString(); + method @Deprecated public final void verify(String, String[], String[]) throws javax.net.ssl.SSLException; + } + + @Deprecated public interface X509HostnameVerifier extends javax.net.ssl.HostnameVerifier { + method @Deprecated public void verify(String, javax.net.ssl.SSLSocket) throws java.io.IOException; + method @Deprecated public void verify(String, java.security.cert.X509Certificate) throws javax.net.ssl.SSLException; + method @Deprecated public void verify(String, String[], String[]) throws javax.net.ssl.SSLException; + } + +} + +package org.apache.http.params { + + @Deprecated public interface CoreConnectionPNames { + field @Deprecated public static final String CONNECTION_TIMEOUT = "http.connection.timeout"; + field @Deprecated public static final String MAX_HEADER_COUNT = "http.connection.max-header-count"; + field @Deprecated public static final String MAX_LINE_LENGTH = "http.connection.max-line-length"; + field @Deprecated public static final String SOCKET_BUFFER_SIZE = "http.socket.buffer-size"; + field @Deprecated public static final String SO_LINGER = "http.socket.linger"; + field @Deprecated public static final String SO_TIMEOUT = "http.socket.timeout"; + field @Deprecated public static final String STALE_CONNECTION_CHECK = "http.connection.stalecheck"; + field @Deprecated public static final String TCP_NODELAY = "http.tcp.nodelay"; + } + + @Deprecated public final class HttpConnectionParams implements org.apache.http.params.CoreConnectionPNames { + method @Deprecated public static int getConnectionTimeout(org.apache.http.params.HttpParams); + method @Deprecated public static int getLinger(org.apache.http.params.HttpParams); + method @Deprecated public static int getSoTimeout(org.apache.http.params.HttpParams); + method @Deprecated public static int getSocketBufferSize(org.apache.http.params.HttpParams); + method @Deprecated public static boolean getTcpNoDelay(org.apache.http.params.HttpParams); + method @Deprecated public static boolean isStaleCheckingEnabled(org.apache.http.params.HttpParams); + method @Deprecated public static void setConnectionTimeout(org.apache.http.params.HttpParams, int); + method @Deprecated public static void setLinger(org.apache.http.params.HttpParams, int); + method @Deprecated public static void setSoTimeout(org.apache.http.params.HttpParams, int); + method @Deprecated public static void setSocketBufferSize(org.apache.http.params.HttpParams, int); + method @Deprecated public static void setStaleCheckingEnabled(org.apache.http.params.HttpParams, boolean); + method @Deprecated public static void setTcpNoDelay(org.apache.http.params.HttpParams, boolean); + } + + @Deprecated public interface HttpParams { + method @Deprecated public org.apache.http.params.HttpParams copy(); + method @Deprecated public boolean getBooleanParameter(String, boolean); + method @Deprecated public double getDoubleParameter(String, double); + method @Deprecated public int getIntParameter(String, int); + method @Deprecated public long getLongParameter(String, long); + method @Deprecated public Object getParameter(String); + method @Deprecated public boolean isParameterFalse(String); + method @Deprecated public boolean isParameterTrue(String); + method @Deprecated public boolean removeParameter(String); + method @Deprecated public org.apache.http.params.HttpParams setBooleanParameter(String, boolean); + method @Deprecated public org.apache.http.params.HttpParams setDoubleParameter(String, double); + method @Deprecated public org.apache.http.params.HttpParams setIntParameter(String, int); + method @Deprecated public org.apache.http.params.HttpParams setLongParameter(String, long); + method @Deprecated public org.apache.http.params.HttpParams setParameter(String, Object); + } + +} + diff --git a/core/api/module-lib-current.txt b/core/api/module-lib-current.txt index 5510938903b90..1a4c094ba2fe4 100644 --- a/core/api/module-lib-current.txt +++ b/core/api/module-lib-current.txt @@ -86,6 +86,20 @@ package android.app.admin { } +package android.app.compat.gms { + + public class GmsModuleHooks { + method @Nullable public static String deviceConfigGetProperty(@NonNull String, @NonNull String); + method public static boolean deviceConfigSetProperties(@NonNull android.provider.DeviceConfig.Properties); + method public static boolean deviceConfigSetProperty(@NonNull String, @NonNull String, @Nullable String); + method @Nullable public static Boolean enableBluetoothAdapter(); + method public static void enableNfc(); + method public static boolean interceptSynchronousResultReceiverException(@NonNull RuntimeException); + method public static void makeBluetoothAdapterDiscoverable(); + } + +} + package android.content { public abstract class ContentProvider implements android.content.ComponentCallbacks2 { @@ -154,6 +168,29 @@ package android.content.pm { } +package android.ext.settings { + + public class ConnChecksSetting { + method public static int get(); + method public static boolean put(int); + field public static final int VAL_DEFAULT = 0; // 0x0 + field public static final int VAL_DISABLED = 2; // 0x2 + field public static final int VAL_GRAPHENEOS = 0; // 0x0 + field public static final int VAL_STANDARD = 1; // 0x1 + } + + public class RemoteKeyProvisioningSettings { + method @Nullable public static String getServerUrlOverride(@NonNull android.content.Context); + field public static final int GRAPHENEOS_PROXY = 0; // 0x0 + field public static final int STANDARD_SERVER = 1; // 0x1 + } + + public class WidevineProvisioningSettings { + method @Nullable public static String getServerHostnameOverride(@NonNull android.content.Context); + } + +} + package android.hardware.usb { public class UsbManager { diff --git a/core/api/system-current.txt b/core/api/system-current.txt index 663d7ac9a6554..edb5f53db9054 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -102,6 +102,7 @@ package android { field public static final String BIND_WALLPAPER_EFFECTS_GENERATION_SERVICE = "android.permission.BIND_WALLPAPER_EFFECTS_GENERATION_SERVICE"; field public static final String BIND_WEARABLE_SENSING_SERVICE = "android.permission.BIND_WEARABLE_SENSING_SERVICE"; field public static final String BLUETOOTH_MAP = "android.permission.BLUETOOTH_MAP"; + field public static final String BLUETOOTH_PRIVILEGED_ANDROID_AUTO = "android.permission.BLUETOOTH_PRIVILEGED_ANDROID_AUTO"; field public static final String BRICK = "android.permission.BRICK"; field public static final String BRIGHTNESS_SLIDER_USAGE = "android.permission.BRIGHTNESS_SLIDER_USAGE"; field public static final String BROADCAST_CLOSE_SYSTEM_DIALOGS = "android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS"; @@ -438,6 +439,7 @@ package android { field public static final String WHITELIST_AUTO_REVOKE_PERMISSIONS = "android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS"; field public static final String WHITELIST_RESTRICTED_PERMISSIONS = "android.permission.WHITELIST_RESTRICTED_PERMISSIONS"; field public static final String WIFI_ACCESS_COEX_UNSAFE_CHANNELS = "android.permission.WIFI_ACCESS_COEX_UNSAFE_CHANNELS"; + field public static final String WIFI_PRIVILEGED_ANDROID_AUTO = "android.permission.WIFI_PRIVILEGED_ANDROID_AUTO"; field public static final String WIFI_SET_DEVICE_MOBILITY_STATE = "android.permission.WIFI_SET_DEVICE_MOBILITY_STATE"; field public static final String WIFI_UPDATE_COEX_UNSAFE_CHANNELS = "android.permission.WIFI_UPDATE_COEX_UNSAFE_CHANNELS"; field public static final String WIFI_UPDATE_USABILITY_STATS_SCORE = "android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE"; @@ -1189,6 +1191,24 @@ package android.app { method public boolean isStatusBarExpansionDisabled(); } + public final class StorageScope { + ctor public StorageScope(@NonNull String, int); + method @NonNull public static android.content.Intent createConfigActivityIntent(@NonNull String); + method @NonNull public static android.app.StorageScope[] deserializeArray(@NonNull android.content.pm.GosPackageState); + method public boolean isDirectory(); + method public boolean isFile(); + method public boolean isWritable(); + method public static int maxArrayLength(); + method @Nullable public static byte[] serializeArray(@NonNull android.app.StorageScope[]); + field public static final String EXTERNAL_STORAGE_PROVIDER_METHOD_CONVERT_DOC_ID_TO_PATH = "StorageScopes_convertDocIdToPath"; + field public static final int FLAG_ALLOW_WRITES = 1; // 0x1 + field public static final int FLAG_IS_DIR = 2; // 0x2 + field public static final String MEDIA_PROVIDER_METHOD_INVALIDATE_MEDIA_PROVIDER_CACHE = "StorageScopes_invalidateCache"; + field public static final String MEDIA_PROVIDER_METHOD_MEDIA_ID_TO_FILE_PATH = "StorageScopes_mediaIdToFilePath"; + field public final int flags; + field @NonNull public final String path; + } + public final class SystemServiceRegistry { method public static void registerContextAwareService(@NonNull String, @NonNull Class, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithBinder); method public static void registerContextAwareService(@NonNull String, @NonNull Class, @NonNull android.app.SystemServiceRegistry.ContextAwareServiceProducerWithoutBinder); @@ -2158,6 +2178,30 @@ package android.app.compat { } +package android.app.compat.gms { + + public interface AndroidAutoPackageFlag { + field public static final int GRANT_AUDIO_ROUTING_PERM = 2; // 0x2 + field public static final int GRANT_PERMS_FOR_ANDROID_AUTO_PHONE_CALLS = 3; // 0x3 + field public static final int GRANT_PERMS_FOR_WIRED_ANDROID_AUTO = 0; // 0x0 + field public static final int GRANT_PERMS_FOR_WIRELESS_ANDROID_AUTO = 1; // 0x1 + } + + public final class GmsCompat { + method public static void catchOrRethrow(@NonNull SecurityException); + method public static boolean hasPermission(@NonNull String); + method public static boolean isAndroidAuto(); + method public static boolean isEnabled(); + method public static boolean isEnabledFor(@NonNull android.content.pm.ApplicationInfo); + method public static boolean isEnabledFor(@NonNull String, int); + } + + public class GmsUtils { + method @NonNull public static android.content.Intent createAppPlayStoreIntent(@NonNull String); + } + +} + package android.app.contentsuggestions { public final class ClassificationsRequest implements android.os.Parcelable { @@ -3997,7 +4041,13 @@ package android.content.om { package android.content.pm { + public class AppPermissionUtils { + method public static boolean shouldSkipPermissionRequestDialog(@NonNull android.content.pm.GosPackageState, @NonNull String); + method public static boolean shouldSpoofPermissionRequestResult(@NonNull android.content.pm.GosPackageState, @NonNull String); + } + public class ApplicationInfo extends android.content.pm.PackageItemInfo implements android.os.Parcelable { + method @NonNull public android.ext.AppInfoExt ext(); method @RequiresPermission(android.Manifest.permission.DELETE_PACKAGES) public boolean hasFragileUserData(); method public boolean isEncryptionAware(); method public boolean isInstantApp(); @@ -4022,6 +4072,46 @@ package android.content.pm { method @NonNull public final int getType(); } + public final class GosPackageState implements android.os.Parcelable { + method @NonNull public android.content.pm.GosPackageState.Editor createEditor(@NonNull String, @NonNull android.os.UserHandle); + method @NonNull public android.content.pm.GosPackageState.Editor createEditor(@NonNull String, int); + method public int describeContents(); + method @NonNull public static android.content.pm.GosPackageState.Editor edit(@NonNull String, @NonNull android.os.UserHandle); + method @NonNull public static android.content.pm.GosPackageState.Editor edit(@NonNull String, int); + method @NonNull public static android.content.pm.GosPackageState get(@NonNull String, @NonNull android.os.UserHandle); + method @NonNull public static android.content.pm.GosPackageState get(@NonNull String, int); + method @NonNull public static android.content.pm.GosPackageState getForSelf(@NonNull android.content.Context); + method public boolean hasDerivedFlag(int); + method public boolean hasDerivedFlags(int); + method public boolean hasFlag(int); + method public boolean hasPackageFlag(int); + method public boolean isNone(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field @Nullable public final byte[] contactScopes; + field @Nullable public final byte[] storageScopes; + } + + public static class GosPackageState.Editor { + method @NonNull public android.content.pm.GosPackageState.Editor addFlag(int); + method @NonNull public android.content.pm.GosPackageState.Editor addPackageFlag(int); + method public boolean apply(); + method @NonNull public android.content.pm.GosPackageState.Editor clearFlag(int); + method @NonNull public android.content.pm.GosPackageState.Editor clearPackageFlag(int); + method @NonNull public android.content.pm.GosPackageState.Editor killUidAfterApply(); + method @NonNull public android.content.pm.GosPackageState.Editor setContactScopes(@Nullable byte[]); + method @NonNull public android.content.pm.GosPackageState.Editor setFlagState(int, boolean); + method @NonNull public android.content.pm.GosPackageState.Editor setKillUidAfterApply(boolean); + method @NonNull public android.content.pm.GosPackageState.Editor setNotifyUidAfterApply(boolean); + method @NonNull public android.content.pm.GosPackageState.Editor setPackageFlagState(int, boolean); + method @NonNull public android.content.pm.GosPackageState.Editor setStorageScopes(@Nullable byte[]); + } + + public interface GosPackageStateFlag { + field public static final int CONTACT_SCOPES_ENABLED = 5; // 0x5 + field public static final int STORAGE_SCOPES_ENABLED = 0; // 0x0 + } + public final class InstallationFile { method public long getLengthBytes(); method public int getLocation(); @@ -4243,6 +4333,7 @@ package android.content.pm { method public void replacePreferredActivity(@NonNull android.content.IntentFilter, int, @NonNull java.util.List, @NonNull android.content.ComponentName); method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public abstract void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle); method @RequiresPermission(android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS) public void revokeRuntimePermission(@NonNull String, @NonNull String, @NonNull android.os.UserHandle, @NonNull String); + method @RequiresPermission(android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS) public void sendBootCompletedBroadcastToPackage(@NonNull String, boolean, int); method public void sendDeviceCustomizationReadyBroadcast(); method @RequiresPermission(allOf={android.Manifest.permission.SET_PREFERRED_APPLICATIONS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public abstract boolean setDefaultBrowserPackageNameAsUser(@Nullable String, int); method @NonNull @RequiresPermission(android.Manifest.permission.SUSPEND_APPS) public String[] setDistractingPackageRestrictions(@NonNull String[], int); @@ -4438,6 +4529,10 @@ package android.content.pm { field @NonNull public static final android.os.Parcelable.Creator CREATOR; } + public class SpecialRuntimePermAppUtils { + method public static boolean isInternetCompatEnabled(); + } + public final class SuspendDialogInfo implements android.os.Parcelable { method public int describeContents(); method public void writeToParcel(android.os.Parcel, int); @@ -4781,6 +4876,42 @@ package android.debug { package android.ext { + public final class AppInfoExt implements android.os.Parcelable { + ctor public AppInfoExt(int, int, long); + method public int describeContents(); + method public static int getInitialPackageId(); + method public int getPackageId(); + method public boolean hasCompatChange(int); + method public boolean hasCompatConfig(); + method public boolean hasFlag(int); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + } + + public interface AppInfoExtFlag { + field public static final int HAS_GMSCORE_CLIENT_LIBRARY = 0; // 0x0 + } + + public interface DerivedPackageFlag { + field public static final int DFLAGS_SET = 1; // 0x1 + field public static final int EXPECTS_ACCESS_TO_MEDIA_FILES_ONLY = 4; // 0x4 + field public static final int EXPECTS_ALL_FILES_ACCESS = 2; // 0x2 + field public static final int EXPECTS_LEGACY_EXTERNAL_STORAGE = 8192; // 0x2000 + field public static final int EXPECTS_STORAGE_WRITE_ACCESS = 8; // 0x8 + field public static final int HAS_ACCESS_MEDIA_LOCATION_DECLARATION = 256; // 0x100 + field public static final int HAS_GET_ACCOUNTS_DECLARATION = 4194304; // 0x400000 + field public static final int HAS_MANAGE_EXTERNAL_STORAGE_DECLARATION = 64; // 0x40 + field public static final int HAS_MANAGE_MEDIA_DECLARATION = 128; // 0x80 + field public static final int HAS_READ_CONTACTS_DECLARATION = 1048576; // 0x100000 + field public static final int HAS_READ_EXTERNAL_STORAGE_DECLARATION = 16; // 0x10 + field public static final int HAS_READ_MEDIA_AUDIO_DECLARATION = 512; // 0x200 + field public static final int HAS_READ_MEDIA_IMAGES_DECLARATION = 1024; // 0x400 + field public static final int HAS_READ_MEDIA_VIDEO_DECLARATION = 2048; // 0x800 + field public static final int HAS_READ_MEDIA_VISUAL_USER_SELECTED_DECLARATION = 4096; // 0x1000 + field public static final int HAS_WRITE_CONTACTS_DECLARATION = 2097152; // 0x200000 + field public static final int HAS_WRITE_EXTERNAL_STORAGE_DECLARATION = 32; // 0x20 + } + public interface KnownSystemPackage { field public static final int SETTINGS = 0; // 0x0 field public static final int SHELL = 1; // 0x1 @@ -4799,6 +4930,166 @@ package android.ext { field @NonNull public final String systemUi; } + public interface PackageId { + field public static final int ANDROID_AUTO = 10; // 0xa + field public static final String ANDROID_AUTO_NAME = "com.google.android.projection.gearhead"; + field public static final int EUICC_SUPPORT_PIXEL = 5; // 0x5 + field public static final String EUICC_SUPPORT_PIXEL_NAME = "com.google.euiccpixel"; + field public static final int GMS_CORE = 2; // 0x2 + field public static final String GMS_CORE_NAME = "com.google.android.gms"; + field public static final String GSF_NAME = "com.google.android.gsf"; + field public static final int G_CAMERA = 8; // 0x8 + field public static final String G_CAMERA_NAME = "com.google.android.GoogleCamera"; + field public static final int G_CARRIER_SETTINGS = 7; // 0x7 + field public static final String G_CARRIER_SETTINGS_NAME = "com.google.android.carrier"; + field public static final int G_EUICC_LPA = 6; // 0x6 + field public static final String G_EUICC_LPA_NAME = "com.google.android.euicc"; + field public static final int G_SEARCH_APP = 4; // 0x4 + field public static final String G_SEARCH_APP_NAME = "com.google.android.googlequicksearchbox"; + field public static final int PIXEL_CAMERA_SERVICES = 9; // 0x9 + field public static final String PIXEL_CAMERA_SERVICES_NAME = "com.google.android.apps.camera.services"; + field public static final int PIXEL_HEALTH = 13; // 0xd + field public static final String PIXEL_HEALTH_NAME = "com.google.android.apps.pixel.health"; + field public static final int PLAY_STORE = 3; // 0x3 + field public static final String PLAY_STORE_NAME = "com.android.vending"; + field public static final int TYCHO = 11; // 0xb + field public static final String TYCHO_NAME = "com.google.android.apps.tycho"; + field public static final int UNKNOWN = 0; // 0x0 + } + +} + +package android.ext.cscopes { + + public final class ContactScope implements android.os.Parcelable { + ctor public ContactScope(int, long, @Nullable String, @Nullable String, @Nullable android.net.Uri); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public static final int TYPE_CONTACT = 1; // 0x1 + field public static final int TYPE_COUNT = 4; // 0x4 + field public static final int TYPE_EMAIL = 3; // 0x3 + field public static final int TYPE_GROUP = 0; // 0x0 + field public static final int TYPE_NUMBER = 2; // 0x2 + field @Nullable public final android.net.Uri detailsUri; + field public final long id; + field @Nullable public final String summary; + field @Nullable public final String title; + field public final int type; + } + + public class ContactScopesApi { + method @NonNull public static android.content.Intent createConfigActivityIntent(@NonNull String); + field public static final String ACTION_NOTIFY_CONTENT_OBSERVERS = "android.ext.cscopes.action.NOTIFY_CONTENT_OBSERVERS"; + field public static final String KEY_IDS = "ids"; + field public static final String KEY_RESULT = "result"; + field public static final String KEY_URIS = "uris"; + field public static final String METHOD_GET_GROUPS = "get_groups"; + field public static final String METHOD_GET_IDS_FROM_URIS = "get_ids_from_uris"; + field public static final String METHOD_GET_VIEW_MODEL = "get_view_model"; + field public static final String SCOPED_CONTACTS_PROVIDER_AUTHORITY = "com.android.contacts.scoped"; + } + + public final class ContactScopesStorage { + method public boolean add(int, long); + method @NonNull public static android.ext.cscopes.ContactScopesStorage deserialize(@NonNull android.content.pm.GosPackageState); + method public int getCount(); + method @NonNull public long[] getIds(int); + method public static boolean isEmpty(@NonNull android.content.pm.GosPackageState); + method public boolean remove(int, long); + method @Nullable public byte[] serialize(); + field public static final int MAX_COUNT_PER_PACKAGE = 100; // 0x64 + } + + public final class ContactsGroup implements android.os.Parcelable { + ctor public ContactsGroup(long, @Nullable String, @Nullable String); + method public int describeContents(); + method public void writeToParcel(@NonNull android.os.Parcel, int); + field @NonNull public static final android.os.Parcelable.Creator CREATOR; + field public final long id; + field @Nullable public final String summary; + field @Nullable public final String title; + } + +} + +package android.ext.dcl { + + public class DynCodeLoading { + method public static void checkDexFileOpen(int, @NonNull String) throws java.lang.Exception; + method public static void checkInMemoryDexFileOpen(int); + } + +} + +package android.ext.settings { + + public class BoolSetting extends android.ext.settings.Setting { + ctor public BoolSetting(@NonNull android.ext.settings.Setting.Scope, @NonNull String, boolean); + ctor public BoolSetting(@NonNull android.ext.settings.Setting.Scope, @NonNull String, @NonNull java.util.function.Function); + method public final boolean get(@NonNull android.content.Context); + method public final boolean get(@NonNull android.content.Context, int); + method public final boolean put(@NonNull android.content.Context, boolean); + } + + public class BoolSysProperty extends android.ext.settings.BoolSetting { + ctor public BoolSysProperty(@NonNull String, boolean); + ctor public BoolSysProperty(@NonNull String, @NonNull java.util.function.Function); + method public boolean get(); + method public boolean put(boolean); + } + + public class IntSetting extends android.ext.settings.Setting { + ctor public IntSetting(@NonNull android.ext.settings.Setting.Scope, @NonNull String, int); + ctor public IntSetting(@NonNull android.ext.settings.Setting.Scope, @NonNull String, int, @NonNull int...); + ctor public IntSetting(@NonNull android.ext.settings.Setting.Scope, @NonNull String, @NonNull java.util.function.ToIntFunction); + ctor public IntSetting(@NonNull android.ext.settings.Setting.Scope, @NonNull String, @NonNull java.util.function.ToIntFunction, @NonNull int...); + method public final int get(@NonNull android.content.Context); + method public final int get(@NonNull android.content.Context, int); + method public final boolean put(@NonNull android.content.Context, int); + method public boolean validateValue(int); + } + + public class IntSysProperty extends android.ext.settings.IntSetting { + ctor public IntSysProperty(@NonNull String, int); + ctor public IntSysProperty(@NonNull String, int, @NonNull int...); + ctor public IntSysProperty(@NonNull String, @NonNull java.util.function.ToIntFunction); + ctor public IntSysProperty(@NonNull String, @NonNull java.util.function.ToIntFunction, @NonNull int...); + method public int get(); + method public boolean put(int); + } + + public abstract class Setting { + method public final boolean canObserveState(); + method @NonNull public final String getKey(); + method @NonNull public final android.ext.settings.Setting.Scope getScope(); + method @NonNull public final Object registerObserver(@NonNull android.content.Context, @NonNull android.os.Handler, @NonNull java.util.function.Consumer); + method @NonNull public final Object registerObserver(@NonNull android.content.Context, int, @NonNull android.os.Handler, @NonNull java.util.function.Consumer); + method public final void unregisterObserver(@NonNull android.content.Context, @NonNull Object); + } + + public enum Setting.Scope { + enum_constant public static final android.ext.settings.Setting.Scope GLOBAL; + enum_constant public static final android.ext.settings.Setting.Scope PER_USER; + enum_constant public static final android.ext.settings.Setting.Scope SYSTEM_PROPERTY; + } + + public class StringSetting extends android.ext.settings.Setting { + ctor public StringSetting(@NonNull android.ext.settings.Setting.Scope, @NonNull String, @NonNull String); + ctor public StringSetting(@NonNull android.ext.settings.Setting.Scope, @NonNull String, @NonNull java.util.function.Function); + method @NonNull public final String get(@NonNull android.content.Context); + method @NonNull public final String get(@NonNull android.content.Context, int); + method public final boolean put(@NonNull android.content.Context, @NonNull String); + method public boolean validateValue(@NonNull String); + } + + public class StringSysProperty extends android.ext.settings.StringSetting { + ctor public StringSysProperty(@NonNull String, @NonNull String); + ctor public StringSysProperty(@NonNull String, @NonNull java.util.function.Function); + method @NonNull public String get(); + method public boolean put(@NonNull String); + } + } package android.graphics.fonts { @@ -12142,6 +12433,7 @@ package android.permission { method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void startOneTimePermissionSession(@NonNull String, long, long, int, int); method @RequiresPermission(android.Manifest.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS) public void stopOneTimePermissionSession(@NonNull String); method @FlaggedApi("android.permission.flags.device_aware_permission_apis_enabled") @RequiresPermission(anyOf={android.Manifest.permission.GRANT_RUNTIME_PERMISSIONS, android.Manifest.permission.REVOKE_RUNTIME_PERMISSIONS}) public void updatePermissionFlags(@NonNull String, @NonNull String, @NonNull String, int, int); + method public void updatePermissionState(@NonNull String, int); field @RequiresPermission(android.Manifest.permission.START_REVIEW_PERMISSION_DECISIONS) public static final String ACTION_REVIEW_PERMISSION_DECISIONS = "android.permission.action.REVIEW_PERMISSION_DECISIONS"; field public static final String EXTRA_PERMISSION_USAGES = "android.permission.extra.PERMISSION_USAGES"; field public static final int PERMISSION_GRANTED = 0; // 0x0 diff --git a/core/java/Android.bp b/core/java/Android.bp index ce767f46dd500..c6c35643bd37e 100644 --- a/core/java/Android.bp +++ b/core/java/Android.bp @@ -194,6 +194,11 @@ filegroup { visibility: ["//frameworks/base/test-mock"], } +filegroup { + name: "GosPackageStateFlags", + srcs: [ "android/content/pm/GosPackageStateFlag.java", ], +} + filegroup { name: "libincident_aidl", srcs: [ diff --git a/core/java/android/app/Activity.java b/core/java/android/app/Activity.java index 03ef669c06752..5f5337e388777 100644 --- a/core/java/android/app/Activity.java +++ b/core/java/android/app/Activity.java @@ -55,6 +55,7 @@ import android.app.assist.AssistContent; import android.app.compat.CompatChanges; import android.app.jank.JankTracker; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.ChangeId; import android.compat.annotation.EnabledSince; import android.compat.annotation.UnsupportedAppUsage; @@ -177,6 +178,9 @@ import com.android.internal.app.IVoiceInteractor; import com.android.internal.app.ToolbarActionBar; import com.android.internal.app.WindowDecorActionBar; +import com.android.internal.gmscompat.GmsCompatApp; +import com.android.internal.gmscompat.GmsHooks; +import com.android.internal.gmscompat.util.GmcActivityUtils; import com.android.internal.policy.DecorView; import com.android.internal.policy.PhoneWindow; import com.android.internal.util.dump.DumpableContainerImpl; @@ -1862,6 +1866,10 @@ private void notifyVoiceInteractionManagerServiceActivityEvent( @MainThread @CallSuper protected void onCreate(@Nullable Bundle savedInstanceState) { + if (GmsCompat.isEnabled()) { + GmsHooks.activityOnCreate(this); + } + if (DEBUG_LIFECYCLE) Slog.v(TAG, "onCreate " + this + ": " + savedInstanceState); if (mLastNonConfigurationInstances != null) { @@ -5936,6 +5944,44 @@ public void startActivityForResult(@RequiresPermission Intent intent, int reques */ public void startActivityForResult(@RequiresPermission Intent intent, int requestCode, @Nullable Bundle options) { + if (GmsCompat.isEnabled()) { + Intent orig = intent; + intent = GmcActivityUtils.overrideStartActivityIntent(intent); + if (intent == null) { + Log.d("GmsCompat", "skipped startActivity for " + orig, new Throwable()); + return; + } + } + + if (android.provider.Settings.ACTION_APPLICATION_DETAILS_SETTINGS.equals(intent.getAction())) { + Uri data = intent.getData(); + if (data != null && "package".equals(data.getScheme())) { + String pkg = data.getSchemeSpecificPart(); + + if (pkg != null) { + switch (pkg) { + case "com.google.android.tts": + if (GmsCompat.isClientOfGmsCore()) { + boolean installed; + try { + installed = ActivityThread.getPackageManager().getApplicationInfo(pkg, 0, getUserId()) != null; + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + + if (!installed) { + try { + GmsCompatApp.iClientOfGmsCore2Gca().showMissingAppNotification(pkg); + } catch (RemoteException e) { + GmsCompatApp.callFailed(e); + } + } + } + } + } + } + } + if (mParent == null) { options = transferSpringboardActivityOptions(options); Instrumentation.ActivityResult ar = @@ -6316,6 +6362,13 @@ public void startIntentSenderForResultInner(IntentSender intent, String who, int @Nullable Bundle options) throws IntentSender.SendIntentException { try { + if (intent != null) { + String pkg = intent.getCreatorPackage(); + if (pkg != null && GmsCompat.isGmsAppAndUnprivilegedProcess(pkg)) { + options = GmcActivityUtils.allowActivityLaunchFromPendingIntent(options); + } + } + options = transferSpringboardActivityOptions(options); String resolvedType = null; if (fillInIntent != null) { diff --git a/core/java/android/app/ActivityManager.java b/core/java/android/app/ActivityManager.java index 69d3e8d4c0d2e..5b348fea76071 100644 --- a/core/java/android/app/ActivityManager.java +++ b/core/java/android/app/ActivityManager.java @@ -36,6 +36,7 @@ import android.annotation.SystemService; import android.annotation.TestApi; import android.annotation.UserIdInt; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.ChangeId; import android.compat.annotation.EnabledSince; import android.compat.annotation.UnsupportedAppUsage; @@ -91,6 +92,8 @@ import com.android.internal.annotations.GuardedBy; import com.android.internal.app.LocalePicker; import com.android.internal.app.procstats.ProcessStats; +import com.android.internal.gmscompat.sysservice.GmcUserManager; +import com.android.internal.gmscompat.GmsHooks; import com.android.internal.os.RoSystemProperties; import com.android.internal.os.TransferPipe; import com.android.internal.util.FastPrintWriter; @@ -3652,6 +3655,10 @@ public static class ProcessErrorStateInfo implements Parcelable { */ public byte[] crashData = null; + /** @hide */ + @Nullable + public String tracesFilePath; + public ProcessErrorStateInfo() { } @@ -3670,6 +3677,7 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeString(shortMsg); dest.writeString(longMsg); dest.writeString(stackTrace); + dest.writeString(tracesFilePath); } public void readFromParcel(Parcel source) { @@ -3681,6 +3689,7 @@ public void readFromParcel(Parcel source) { shortMsg = source.readString(); longMsg = source.readString(); stackTrace = source.readString(); + tracesFilePath = source.readString(); } public static final @android.annotation.NonNull Creator CREATOR = @@ -4284,7 +4293,11 @@ public List getRunningAppProcesses() { private List getRunningAppProcessesInternal() { try { - return getService().getRunningAppProcesses(); + List res = getService().getRunningAppProcesses(); + if (GmsCompat.isEnabled()) { + res = GmsHooks.addRecentlyBoundPids(mContext, res); + } + return res; } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } @@ -5298,6 +5311,10 @@ public static int handleIncomingUser(int callingPid, int callingUid, int userId, }) @android.ravenwood.annotation.RavenwoodReplace public static int getCurrentUser() { + if (GmsCompat.isEnabled()) { + return GmcUserManager.amGetCurrentUser(); + } + return mGetCurrentUserIdCache.query(null); } @@ -5591,6 +5608,10 @@ public boolean stopUser(@UserIdInt int userId) { */ @UnsupportedAppUsage public boolean isUserRunning(int userId) { + if (GmsCompat.isEnabled()) { + return GmcUserManager.amIsUserRunning(userId); + } + try { return getService().isUserRunning(userId, 0); } catch (RemoteException e) { diff --git a/core/java/android/app/ActivityManagerInternal.java b/core/java/android/app/ActivityManagerInternal.java index abdfb53537f89..267021e7ca05b 100644 --- a/core/java/android/app/ActivityManagerInternal.java +++ b/core/java/android/app/ActivityManagerInternal.java @@ -35,6 +35,7 @@ import android.content.pm.ActivityInfo; import android.content.pm.ActivityPresentationInfo; import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; import android.content.pm.IPackageDataObserver; import android.content.pm.UserInfo; import android.net.Uri; @@ -1369,4 +1370,26 @@ public abstract void getExecutableMethodFileOffsets(@NonNull String processName, * @hide */ public abstract void addCreatorToken(Intent intent, String creatorPackage); + + public abstract void onGosPackageStateChanged(int uid, GosPackageState state); + + public static class ProcessRecordSnapshot { + public final int pid; + public final int uid; // process UID, might differ from app UID in appInfo.uid + public final int userId; + public final String name; + public final ApplicationInfo appInfo; // first loaded app in the process + public final String[] pkgList; + + public ProcessRecordSnapshot(int pid, int uid, int userId, String name, ApplicationInfo appInfo, String[] pkgList) { + this.pid = pid; + this.uid = uid; + this.userId = userId; + this.name = name; + this.appInfo = appInfo; + this.pkgList = pkgList; + } + } + + public abstract ProcessRecordSnapshot getProcessRecordByPid(int pid); } diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index 48b74f2d07767..b7783104d258f 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -59,6 +59,7 @@ import android.app.backup.BackupAnnotations.BackupDestination; import android.app.backup.BackupAnnotations.OperationType; import android.app.compat.CompatChanges; +import android.app.compat.gms.GmsCompat; import android.app.sdksandbox.sandboxactivity.ActivityContextInfo; import android.app.sdksandbox.sandboxactivity.SdkSandboxActivityAuthority; import android.app.servertransaction.ActivityLifecycleItem; @@ -92,6 +93,7 @@ import android.content.pm.ActivityInfo; import android.content.pm.ApplicationInfo; import android.content.pm.ComponentInfo; +import android.content.pm.GosPackageState; import android.content.pm.IPackageManager; import android.content.pm.InstrumentationInfo; import android.content.pm.PackageInfo; @@ -234,6 +236,7 @@ import com.android.internal.annotations.VisibleForTesting; import com.android.internal.app.IVoiceInteractor; import com.android.internal.content.ReferrerIntent; +import com.android.internal.gmscompat.GmcDebug; import com.android.internal.os.ApplicationSharedMemory; import com.android.internal.os.BinderCallsStats; import com.android.internal.os.BinderInternal; @@ -2263,6 +2266,12 @@ public void getExecutableMethodFileOffsets( throw e.rethrowFromSystemServer(); } } + + @Override + public void onGosPackageStateChanged(GosPackageState state) { + // this is a oneway method, caller (ActivityManager) will not be blocked + ActivityThreadHooks.onGosPackageStateChanged(mInitialApplication, state, false); + } } private @NonNull SafeCancellationTransport createSafeCancellationTransport( @@ -3939,6 +3948,10 @@ public void updatePendingConfiguration(Configuration config) { } } + public int getProcessState() { + return mLastProcessState; + } + @Override public void updateProcessState(int processState, boolean fromIpc) { synchronized (mAppThread) { @@ -4927,6 +4940,9 @@ private void handleReceiver(ReceiverData data) { sCurrentBroadcastIntent.set(data.intent); receiver.setPendingResult(data); + if (GmsCompat.isEnabled()) { + GmcDebug.maybeLogReceiveBroadcast(receiver, data.intent, true); + } receiver.onReceive(context.getReceiverRestrictedContext(), data.intent); } catch (Exception e) { @@ -5103,8 +5119,14 @@ private void handleCreateService(CreateServiceData data) { } else { cl = packageInfo.getClassLoader(); } - service = packageInfo.getAppFactory() - .instantiateService(cl, data.info.name, data.intent); + { + String className = data.info.name; + service = ActivityThreadHooks.instantiateService(className); + if (service == null) { + service = packageInfo.getAppFactory() + .instantiateService(cl, className, data.intent); + } + } ContextImpl context = ContextImpl.getImpl(service .createServiceBaseContext(this, packageInfo)); if (data.info.splitName != null) { @@ -5284,6 +5306,15 @@ private void handleDumpProvider(DumpComponentInfo info) { r.mLocalProvider.dump(info.fd.getFileDescriptor(), pw, info.args); pw.flush(); } + } catch (NoSuchMethodError e) { + if (android.app.compat.gms.GmsCompat.isEnabled()) { + // one of the GSF content providers accesses a hidden method from ContentProvider.dump(), + // which leads to a confusing crash when a bugreport is being taken (dumps of all + // of the active ContentProviders are included in bugreports) + Log.d(TAG, "handleDumpProvider", e); + } else { + throw e; + } } finally { IoUtils.closeQuietly(info.fd); StrictMode.setThreadPolicy(oldPolicy); @@ -5302,6 +5333,9 @@ private void handleServiceArgs(ServiceArgsData data) { } int res; if (!data.taskRemoved) { + if (GmsCompat.isEnabled()) { + GmcDebug.maybeLogServiceOnStartCommand(s, data.args, data.flags, data.startId); + } res = s.onStartCommand(data.args, data.flags, data.startId); } else { s.onTaskRemoved(data.args); @@ -7574,6 +7608,7 @@ private void handleBindApplication(AppBindData data) { final IActivityManager mgr = ActivityManager.getService(); final ContextImpl appContext = ContextImpl.createAppContext(this, data.info); mConfigurationController.updateLocaleListFromAppContext(appContext); + final Bundle extraAppBindArgs = ActivityThreadHooks.onBind(appContext); // Initialize the default http proxy in this process. Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "Setup proxies"); @@ -7633,6 +7668,10 @@ private void handleBindApplication(AppBindData data) { dalvik.system.VMRuntime.getRuntime().clampGrowthLimit(); } + if (extraAppBindArgs != null) { + ActivityThreadHooks.onBind2(appContext, extraAppBindArgs); + } + // Allow disk access during application and provider setup. This could // block processing ordered broadcasts, but later processing would // probably end up doing the same disk access. diff --git a/core/java/android/app/ActivityThreadHooks.java b/core/java/android/app/ActivityThreadHooks.java new file mode 100644 index 0000000000000..ba92e565b13ae --- /dev/null +++ b/core/java/android/app/ActivityThreadHooks.java @@ -0,0 +1,86 @@ +package android.app; + +import android.annotation.Nullable; +import android.content.Context; +import android.content.pm.GosPackageState; +import android.content.pm.SrtPermissions; +import android.ext.dcl.DynCodeLoading; +import android.location.HookedLocationManager; +import android.os.Bundle; +import android.os.Process; +import android.os.RemoteException; +import android.util.Log; + +import com.android.internal.app.ContactScopes; +import com.android.internal.app.StorageScopesAppHooks; +import com.android.internal.gmscompat.GmsHooks; + +import java.util.Objects; + +class ActivityThreadHooks { + + private static volatile boolean called; + + // called after the initial app context is constructed + // ActivityThread.handleBindApplication + static Bundle onBind(Context appContext) { + if (called) { + throw new IllegalStateException("onBind called for the second time"); + } + called = true; + + AppGlobals.setInitialPackageId(appContext.getApplicationInfo().ext().getPackageId()); + + if (Process.isIsolated()) { + return null; + } + + final String pkgName = appContext.getPackageName(); + final String TAG = "AppBindArgs"; + + Bundle args = null; + try { + args = ActivityThread.getPackageManager().getExtraAppBindArgs(pkgName); + } catch (RemoteException e) { + Log.e(TAG, "", e); + } + + if (args == null) { + Log.e(TAG, "bundle is null"); + return null; + } + + int[] flags = Objects.requireNonNull(args.getIntArray(AppBindArgs.KEY_FLAGS_ARRAY)); + + SrtPermissions.setFlags(flags[AppBindArgs.FLAGS_IDX_SPECIAL_RUNTIME_PERMISSIONS]); + + HookedLocationManager.setFlags(flags[AppBindArgs.FLAGS_IDX_HOOKED_LOCATION_MANAGER]); + + DynCodeLoading.handleAppBindFlags(flags[AppBindArgs.FLAGS_IDX_DYN_CODE_LOADING]); + + return args; + } + + // called after ActivityThread instrumentation is inited, which happens before execution of any + // of app's code + // ActivityThread.handleBindApplication + static void onBind2(Context appContext, Bundle appBindArgs) { + GosPackageState gosPs = appBindArgs.getParcelable(AppBindArgs.KEY_GOS_PACKAGE_STATE, + GosPackageState.class); + onGosPackageStateChanged(appContext, gosPs, true); + } + + // called from both main and worker threads + static void onGosPackageStateChanged(Context ctx, GosPackageState state, boolean fromBind) { + StorageScopesAppHooks.maybeEnable(state); + ContactScopes.maybeEnable(ctx, state); + } + + static Service instantiateService(String className) { + Service res = null; + if (res == null) { + res = GmsHooks.maybeInstantiateService(className); + } + return res; + } +} diff --git a/core/java/android/app/AppBindArgs.java b/core/java/android/app/AppBindArgs.java new file mode 100644 index 0000000000000..1609a74998b8c --- /dev/null +++ b/core/java/android/app/AppBindArgs.java @@ -0,0 +1,13 @@ +package android.app; + +/** @hide */ +public interface AppBindArgs { + String KEY_GOS_PACKAGE_STATE = "gosPs"; + String KEY_FLAGS_ARRAY = "flagsArr"; + + int FLAGS_IDX_SPECIAL_RUNTIME_PERMISSIONS = 0; + int FLAGS_IDX_HOOKED_LOCATION_MANAGER = 1; + int FLAGS_IDX_DYN_CODE_LOADING = 2; + + int FLAGS_ARRAY_LEN = 10; +} diff --git a/core/java/android/app/AppGlobals.java b/core/java/android/app/AppGlobals.java index f66bf0d89c37e..3a70e8f03f3ae 100644 --- a/core/java/android/app/AppGlobals.java +++ b/core/java/android/app/AppGlobals.java @@ -18,6 +18,7 @@ import android.compat.annotation.UnsupportedAppUsage; import android.content.pm.IPackageManager; +import android.ext.PackageId; import android.permission.IPermissionManager; /** @@ -43,6 +44,17 @@ public static String getInitialPackage() { return ActivityThread.currentPackageName(); } + private static int initialPackageId = PackageId.UNKNOWN; + + public static void setInitialPackageId(int value) { + initialPackageId = value; + } + + // PackageId of the first APK loaded into the process + public static int getInitialPackageId() { + return initialPackageId; + } + /** * Return the raw interface to the package manager. * @return The package manager. diff --git a/core/java/android/app/AppOpsManager.java b/core/java/android/app/AppOpsManager.java index 19138126698cd..583b970568a72 100644 --- a/core/java/android/app/AppOpsManager.java +++ b/core/java/android/app/AppOpsManager.java @@ -39,6 +39,7 @@ import android.annotation.SystemApi; import android.annotation.SystemService; import android.annotation.TestApi; +import android.app.compat.gms.GmsCompat; import android.app.usage.UsageStatsManager; import android.companion.virtual.VirtualDeviceManager; import android.compat.Compatibility; @@ -49,6 +50,7 @@ import android.content.ComponentName; import android.content.ContentResolver; import android.content.Context; +import android.content.pm.AppPermissionUtils; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; import android.content.pm.ParceledListSlice; @@ -9133,6 +9135,11 @@ private int checkOpRawNoThrow(int op, int uid, @NonNull String packageName, mode = mService.checkOperationRawForDevice( op, uid, packageName, attributionTag, virtualDeviceId); } + if (mode != MODE_ALLOWED && uid == Process.myUid()) { + if (AppPermissionUtils.shouldSpoofSelfAppOpCheck(op)) { + return MODE_ALLOWED; + } + } return mode; } catch (RemoteException e) { throw e.rethrowFromSystemServer(); @@ -9303,6 +9310,10 @@ public int noteOpNoThrow(int op, int uid, @Nullable String packageName, private int noteOpNoThrow(int op, int uid, @Nullable String packageName, @Nullable String attributionTag, int virtualDeviceId, @Nullable String message) { + if (GmsCompat.isEnabled() && uid != Process.myUid()) { + return noteProxyOpNoThrow(opToPublicName(op), packageName, uid, attributionTag, message); + } + try { collectNoteOpCallsForValidation(op); int collectionMode = getNotedOpCollectionMode(uid, packageName, op); @@ -9332,7 +9343,15 @@ private int noteOpNoThrow(int op, int uid, @Nullable String packageName, } } - return syncOp.getOpMode(); + final int mode = syncOp.getOpMode(); + + if (mode != MODE_ALLOWED && uid == Process.myUid()) { + if (AppPermissionUtils.shouldSpoofSelfAppOpCheck(op)) { + return MODE_ALLOWED; + } + } + + return mode; } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } @@ -9507,7 +9526,21 @@ public int noteProxyOpNoThrow(int op, @NonNull AttributionSource attributionSour } } - return syncOp.getOpMode(); + final int mode = syncOp.getOpMode(); + + if (mode != MODE_ALLOWED) { + int uid = attributionSource.getUid(); + int nextUid = attributionSource.getNextUid(); + boolean selfCheck = (uid == myUid) && (nextUid == myUid || nextUid == Process.INVALID_UID); + + if (selfCheck) { + if (AppPermissionUtils.shouldSpoofSelfAppOpCheck(op)) { + return MODE_ALLOWED; + } + } + } + + return mode; } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } @@ -9620,6 +9653,13 @@ private int checkOpNoThrow(int op, int uid, String packageName, @Nullable String mode = mService.checkOperationForDevice(op, uid, packageName, attributionTag, virtualDeviceId); } + + if (mode != MODE_ALLOWED && uid == Process.myUid()) { + if (AppPermissionUtils.shouldSpoofSelfAppOpCheck(op)) { + return MODE_ALLOWED; + } + } + return mode; } catch (RemoteException e) { throw e.rethrowFromSystemServer(); @@ -9875,6 +9915,10 @@ private int startOpNoThrow(@NonNull IBinder token, int op, int uid, @NonNull Str boolean startIfModeDefault, @Nullable String attributionTag, int virtualDeviceId, @Nullable String message, @AttributionFlags int attributionFlags, int attributionChainId) { + if (GmsCompat.isEnabled() && uid != Process.myUid()) { + return startProxyOpNoThrow(opToPublicName(op), uid, packageName, attributionTag, message); + } + try { collectNoteOpCallsForValidation(op); int collectionMode = getNotedOpCollectionMode(uid, packageName, op); @@ -10123,6 +10167,11 @@ public void finishOp(IBinder token, int op, int uid, @NonNull String packageName private void finishOp(IBinder token, int op, int uid, @NonNull String packageName, @Nullable String attributionTag, int virtualDeviceId ) { + if (GmsCompat.isEnabled() && uid != Process.myUid()) { + finishProxyOp(opToPublicName(op), uid, packageName, attributionTag); + return; + } + try { if (virtualDeviceId == Context.DEVICE_ID_DEFAULT) { mService.finishOperation(token, op, uid, packageName, attributionTag); diff --git a/core/java/android/app/Application.java b/core/java/android/app/Application.java index 6a50e74ca3a4f..4202352c95242 100644 --- a/core/java/android/app/Application.java +++ b/core/java/android/app/Application.java @@ -19,6 +19,7 @@ import android.annotation.CallSuper; import android.annotation.NonNull; import android.annotation.Nullable; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.ComponentCallbacks; import android.content.ComponentCallbacks2; @@ -232,6 +233,11 @@ public interface OnProvideAssistDataListener { public Application() { super(null); + + if (GmsCompat.isEnabled()) { + registerActivityLifecycleCallbacks(com.android.internal.gmscompat.util + .GmcActivityUtils.INSTANCE); + } } private String getLoadedApkInfo() { diff --git a/core/java/android/app/ApplicationErrorReport.aidl b/core/java/android/app/ApplicationErrorReport.aidl index 5b57457a33152..34a05ab33ae1f 100644 --- a/core/java/android/app/ApplicationErrorReport.aidl +++ b/core/java/android/app/ApplicationErrorReport.aidl @@ -17,4 +17,5 @@ package android.app; /** @hide */ -parcelable ApplicationErrorReport.ParcelableCrashInfo; \ No newline at end of file +parcelable ApplicationErrorReport; +parcelable ApplicationErrorReport.ParcelableCrashInfo; diff --git a/core/java/android/app/ApplicationErrorReport.java b/core/java/android/app/ApplicationErrorReport.java index 9cea5e8ef4cff..39bf240eb9160 100644 --- a/core/java/android/app/ApplicationErrorReport.java +++ b/core/java/android/app/ApplicationErrorReport.java @@ -16,6 +16,7 @@ package android.app; +import android.annotation.Nullable; import android.content.ComponentName; import android.content.Context; import android.content.Intent; @@ -25,6 +26,8 @@ import android.os.Binder; import android.os.Parcel; import android.os.Parcelable; +import android.os.Process; +import android.os.SystemClock; import android.os.SystemProperties; import android.provider.Settings; import android.util.Printer; @@ -98,6 +101,9 @@ public class ApplicationErrorReport implements Parcelable { */ public String packageName; + /** @hide */ + public ApplicationInfo applicationInfo; + /** * Package name of the application which installed the application this * report pertains to. @@ -162,13 +168,19 @@ public static ComponentName getErrorReportReceiver(Context context, String packageName, int appFlags) { // check if error reporting is enabled in secure settings int enabled = Settings.Global.getInt(context.getContentResolver(), - Settings.Global.SEND_ACTION_APP_ERROR, 0); + Settings.Global.SEND_ACTION_APP_ERROR, 1); if (enabled == 0) { return null; } PackageManager pm = context.getPackageManager(); + ComponentName logViewerApp = getErrorReportReceiver(pm, packageName, + android.ext.LogViewerApp.getPackageName()); + if (logViewerApp != null) { + return logViewerApp; + } + // look for receiver in the installer package String candidate = null; ComponentName result = null; @@ -233,6 +245,11 @@ static ComponentName getErrorReportReceiver(PackageManager pm, String errorPacka public void writeToParcel(Parcel dest, int flags) { dest.writeInt(type); dest.writeString(packageName); + ApplicationInfo appInfo = applicationInfo; + dest.writeBoolean(appInfo != null); + if (appInfo != null) { + appInfo.writeToParcel(dest, 0); + } dest.writeString(installerPackageName); dest.writeString(processName); dest.writeLong(time); @@ -260,6 +277,9 @@ public void writeToParcel(Parcel dest, int flags) { public void readFromParcel(Parcel in) { type = in.readInt(); packageName = in.readString(); + if (in.readBoolean()) { + applicationInfo = ApplicationInfo.CREATOR.createFromParcel(in); + } installerPackageName = in.readString(); processName = in.readString(); time = in.readLong(); @@ -345,6 +365,11 @@ public static class CrashInfo { */ public String crashTag; + /** @hide */ + public long processUptimeMs; + /** @hide */ + public long processStartupLatencyMs; + /** * Create an uninitialized instance of CrashInfo. */ @@ -398,6 +423,9 @@ public CrashInfo(Throwable tr) { } exceptionMessage = sanitizeString(exceptionMessage); + + processUptimeMs = SystemClock.elapsedRealtime() - Process.getStartElapsedRealtime(); + processStartupLatencyMs = Process.getStartElapsedRealtime() - Process.getStartRequestedElapsedRealtime(); } /** {@hide} */ @@ -439,6 +467,8 @@ public CrashInfo(Parcel in) { throwLineNumber = in.readInt(); stackTrace = in.readString(); crashTag = in.readString(); + processUptimeMs = in.readLong(); + processStartupLatencyMs = in.readLong(); } /** @@ -455,6 +485,8 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeInt(throwLineNumber); dest.writeString(stackTrace); dest.writeString(crashTag); + dest.writeLong(processUptimeMs); + dest.writeLong(processStartupLatencyMs); int total = dest.dataPosition()-start; if (Binder.CHECK_PARCEL_SIZE && total > 20*1024) { Slog.d("Error", "ERR: exHandler=" + exceptionHandlerClassName); @@ -543,6 +575,10 @@ public static class AnrInfo { */ public String info; + /** @hide */ + @Nullable + public String tracesFilePath; + /** * Create an uninitialized instance of AnrInfo. */ @@ -556,6 +592,7 @@ public AnrInfo(Parcel in) { activity = in.readString(); cause = in.readString(); info = in.readString(); + tracesFilePath = in.readString(); } /** @@ -565,6 +602,7 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeString(activity); dest.writeString(cause); dest.writeString(info); + dest.writeString(tracesFilePath); } /** diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java index da338474a4488..cf2c2b048aed4 100644 --- a/core/java/android/app/ApplicationPackageManager.java +++ b/core/java/android/app/ApplicationPackageManager.java @@ -39,6 +39,7 @@ import android.annotation.UserIdInt; import android.annotation.XmlRes; import android.app.admin.DevicePolicyManager; +import android.app.compat.gms.GmsCompat; import android.app.role.RoleManager; import android.compat.annotation.UnsupportedAppUsage; import android.content.ComponentName; @@ -88,6 +89,7 @@ import android.content.res.Resources; import android.content.res.TypedArray; import android.content.res.XmlResourceParser; +import com.android.internal.ext.EuiccGoogleHooks; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Rect; @@ -131,6 +133,7 @@ import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.gmscompat.sysservice.GmcPackageManager; import com.android.internal.os.SomeArgs; import com.android.internal.pm.RoSystemFeatures; import com.android.internal.util.UserIcons; @@ -277,6 +280,7 @@ public PackageInfo getPackageInfoAsUser(String packageName, PackageInfoFlags fla if (pi == null) { throw new NameNotFoundException(packageName); } + GmcPackageManager.maybeAdjustPackageInfo(pi); return pi; } @@ -528,6 +532,9 @@ public ApplicationInfo getApplicationInfoAsUser(String packageName, ApplicationI if (ai == null) { throw new NameNotFoundException(packageName); } + + GmcPackageManager.maybeAdjustApplicationInfo(ai); + return maybeAdjustApplicationInfo(ai); } @@ -1743,12 +1750,17 @@ public ProviderInfo resolveContentProviderAsUser(String name, int flags, int use @Override public ProviderInfo resolveContentProviderAsUser(String name, ComponentInfoFlags flags, int userId) { + ProviderInfo res; try { - return mPM.resolveContentProvider(name, + res = mPM.resolveContentProvider(name, updateFlagsForComponent(flags.getValue(), userId, null), userId); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } + if (res != null && res.applicationInfo != null && "com.google.android.gms.chimera".equals(name)) { + GmcPackageManager.maybeAdjustApplicationInfo(res.applicationInfo); + } + return res; } @Override @@ -2198,8 +2210,8 @@ static void configurationChanged() { } @UnsupportedAppUsage - protected ApplicationPackageManager(ContextImpl context, IPackageManager pm) { - mContext = context; + protected ApplicationPackageManager(Context context, IPackageManager pm) { + mContext = (ContextImpl) context; mPM = pm; } @@ -2429,7 +2441,13 @@ public CharSequence getText(String packageName, @StringRes int resid, } try { Resources r = getResourcesForApplication(appInfo); - text = r.getText(resid); + if (AppGlobals.getInitialPackageId() == android.ext.PackageId.G_EUICC_LPA) { + try (var s = new EuiccGoogleHooks.SuppressResourceFiltering()) { + text = r.getText(resid); + } + } else { + text = r.getText(resid); + } putCachedString(name, text); return text; } catch (NameNotFoundException e) { @@ -4192,4 +4210,25 @@ public TypedArray extractPackageItemInfoAttributes(PackageItemInfo info, String return null; } } + + @UnsupportedAppUsage + public PackageInfo findPackage(String packageName, long minVersion, Bundle validSignaturesSha256) { + try { + return mPM.findPackage(packageName, minVersion, validSignaturesSha256); + } catch (RemoteException e) { + throw e.rethrowAsRuntimeException(); + } + } + + @UnsupportedAppUsage + public boolean updateListOfBusyPackages(boolean locked, List packageNames) { + // used for automatically removing packages after our process dies + android.os.Binder callerBinder = ActivityThread.currentActivityThread().getApplicationThread(); + + try { + return mPM.updateListOfBusyPackages(locked, packageNames, callerBinder); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } } diff --git a/core/java/android/app/AutomaticZenRule.aidl b/core/java/android/app/AutomaticZenRule.aidl index feb21d657c6ad..92f7d5235cf76 100644 --- a/core/java/android/app/AutomaticZenRule.aidl +++ b/core/java/android/app/AutomaticZenRule.aidl @@ -16,4 +16,6 @@ package android.app; -parcelable AutomaticZenRule; \ No newline at end of file +parcelable AutomaticZenRule; + +parcelable AutomaticZenRule.AzrWithId; \ No newline at end of file diff --git a/core/java/android/app/AutomaticZenRule.java b/core/java/android/app/AutomaticZenRule.java index e0a9371569062..c03233e33df48 100644 --- a/core/java/android/app/AutomaticZenRule.java +++ b/core/java/android/app/AutomaticZenRule.java @@ -241,7 +241,7 @@ public AutomaticZenRule(String name, ComponentName owner, ComponentName configur public AutomaticZenRule(Parcel source) { enabled = source.readInt() == ENABLED; if (source.readInt() == ENABLED) { - name = getTrimmedString(source.readString()); + name = getTrimmedString(source.readString8()); } interruptionFilter = source.readInt(); conditionId = getTrimmedUri(source.readParcelable(null, android.net.Uri.class)); @@ -252,12 +252,12 @@ public AutomaticZenRule(Parcel source) { creationTime = source.readLong(); mZenPolicy = source.readParcelable(null, ZenPolicy.class); mModified = source.readInt() == ENABLED; - mPkg = source.readString(); + mPkg = source.readString8(); if (Flags.modesApi()) { mDeviceEffects = source.readParcelable(null, ZenDeviceEffects.class); mAllowManualInvocation = source.readBoolean(); mIconResId = source.readInt(); - mTriggerDescription = getTrimmedString(source.readString(), MAX_DESC_LENGTH); + mTriggerDescription = getTrimmedString(source.readString8(), MAX_DESC_LENGTH); mType = source.readInt(); } } @@ -561,7 +561,7 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeInt(enabled ? ENABLED : DISABLED); if (name != null) { dest.writeInt(1); - dest.writeString(name); + dest.writeString8(name); } else { dest.writeInt(0); } @@ -572,12 +572,12 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeLong(creationTime); dest.writeParcelable(mZenPolicy, 0); dest.writeInt(mModified ? ENABLED : DISABLED); - dest.writeString(mPkg); + dest.writeString8(mPkg); if (Flags.modesApi()) { dest.writeParcelable(mDeviceEffects, 0); dest.writeBoolean(mAllowManualInvocation); dest.writeInt(mIconResId); - dest.writeString(mTriggerDescription); + dest.writeString8(mTriggerDescription); dest.writeInt(mType); } } @@ -905,4 +905,41 @@ public Builder setDeviceEffects(@Nullable ZenDeviceEffects deviceEffects) { return rule; } } + + /** @hide */ + public static final class AzrWithId implements Parcelable { + public final String mId; + public final AutomaticZenRule mRule; + + public AzrWithId(String id, AutomaticZenRule rule) { + mId = id; + mRule = rule; + } + + public static final Creator CREATOR = new Creator<>() { + @Override + public AzrWithId createFromParcel(Parcel in) { + return new AzrWithId( + in.readString8(), + in.readParcelable(AutomaticZenRule.class.getClassLoader(), + AutomaticZenRule.class)); + } + + @Override + public AzrWithId[] newArray(int size) { + return new AzrWithId[size]; + } + }; + + @Override + public void writeToParcel(@NonNull Parcel dest, int flags) { + dest.writeString8(mId); + dest.writeParcelable(mRule, flags); + } + + @Override + public int describeContents() { + return 0; + } + } } diff --git a/core/java/android/app/BroadcastOptions.java b/core/java/android/app/BroadcastOptions.java index 4db3727e3de28..481bec989b87f 100644 --- a/core/java/android/app/BroadcastOptions.java +++ b/core/java/android/app/BroadcastOptions.java @@ -26,6 +26,7 @@ import android.annotation.SystemApi; import android.annotation.TestApi; import android.app.compat.CompatChanges; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.ChangeId; import android.compat.annotation.Disabled; import android.compat.annotation.EnabledSince; @@ -566,6 +567,10 @@ public boolean isDontSendToRestrictedApps() { @SystemApi @RequiresPermission(android.Manifest.permission.START_ACTIVITIES_FROM_BACKGROUND) public void setBackgroundActivityStartsAllowed(boolean allowBackgroundActivityStarts) { + if (GmsCompat.isEnabled()) { + return; + } + if (allowBackgroundActivityStarts) { mFlags |= FLAG_ALLOW_BACKGROUND_ACTIVITY_STARTS; } else { @@ -779,6 +784,10 @@ public boolean testRequireCompatChange(int uid) { @SystemApi @RequiresPermission(android.Manifest.permission.ACCESS_BROADCAST_RESPONSE_STATS) public void recordResponseEventWhileInBackground(@IntRange(from = 0) long id) { + if (GmsCompat.isEnabled()) { + return; + } + mIdForResponseEvent = id; } diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java index dcbdc2348fbc2..5c1701ee32e7d 100644 --- a/core/java/android/app/ContextImpl.java +++ b/core/java/android/app/ContextImpl.java @@ -21,6 +21,9 @@ import static android.os.StrictMode.vmIncorrectContextUseEnabled; import static android.permission.flags.Flags.shouldRegisterAttributionSource; import static android.view.WindowManager.LayoutParams.WindowType; +import static com.android.internal.app.ContentProviderRedirector.translateContentProviderAuthority; +import static com.android.internal.gmscompat.GmcDebug.maybeLogSendBroadcast; +import static com.android.internal.gmscompat.GmcDebug.maybeLogStartService; import android.Manifest; import android.annotation.CallbackExecutor; @@ -29,6 +32,7 @@ import android.annotation.Nullable; import android.annotation.SuppressLint; import android.annotation.UiContext; +import android.app.compat.gms.GmsCompat; import android.companion.virtual.VirtualDevice; import android.companion.virtual.VirtualDeviceManager; import android.compat.annotation.UnsupportedAppUsage; @@ -102,6 +106,13 @@ import android.window.WindowTokenClientController; import com.android.internal.annotations.GuardedBy; +import com.android.internal.gmscompat.GmcDebug; +import com.android.internal.gmscompat.GmsCompatApp; +import com.android.internal.gmscompat.GmsCompatLib; +import com.android.internal.gmscompat.IGmsCompatLib; +import com.android.internal.gmscompat.sysservice.GmcPackageManager; +import com.android.internal.gmscompat.GmsHooks; +import com.android.internal.gmscompat.sysservice.GmcUserManager; import com.android.internal.util.Preconditions; import dalvik.system.BlockGuard; @@ -451,7 +462,7 @@ public PackageManager getPackageManager() { final IPackageManager pm = ActivityThread.getPackageManager(); if (pm != null) { // Doesn't matter if we make more than one instance. - return (mPackageManager = new ApplicationPackageManager(this, pm)); + return (mPackageManager = GmsCompat.isEnabled() ? new GmcPackageManager(this, pm) : new ApplicationPackageManager(this, pm)); } return null; @@ -1267,6 +1278,9 @@ public void startIntentSender(IntentSender intent, Intent fillInIntent, @Override public void sendBroadcast(Intent intent) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, null, null, 0); + } warnIfCallingFromSystemProcess(); String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); try { @@ -1282,6 +1296,9 @@ public void sendBroadcast(Intent intent) { @Override public void sendBroadcast(Intent intent, String receiverPermission) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, receiverPermission, null, 0); + } warnIfCallingFromSystemProcess(); String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); String[] receiverPermissions = receiverPermission == null ? null @@ -1300,6 +1317,9 @@ public void sendBroadcast(Intent intent, String receiverPermission) { @Override public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPermissions) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, null, receiverPermissions, null, null, 0); + } warnIfCallingFromSystemProcess(); String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); try { @@ -1317,6 +1337,9 @@ public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPer @Override public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPermissions, Bundle options) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, null, receiverPermissions, options, null, 0); + } warnIfCallingFromSystemProcess(); String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); try { @@ -1334,6 +1357,9 @@ public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPer @Override public void sendBroadcastAsUserMultiplePermissions(Intent intent, UserHandle user, String[] receiverPermissions) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, null, receiverPermissions, null, null, 0); + } String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); try { intent.prepareToLeaveProcess(this); @@ -1350,6 +1376,9 @@ public void sendBroadcastAsUserMultiplePermissions(Intent intent, UserHandle use @Override public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPermissions, String[] excludedPermissions, String[] excludedPackages, BroadcastOptions options) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, null, receiverPermissions, null, options, 0); + } warnIfCallingFromSystemProcess(); String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); try { @@ -1366,6 +1395,11 @@ public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPer @Override public void sendBroadcast(Intent intent, String receiverPermission, Bundle options) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, receiverPermission, options, 0); + options = GmsHooks.filterBroadcastOptions(intent, options); + } + warnIfCallingFromSystemProcess(); String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); String[] receiverPermissions = receiverPermission == null ? null @@ -1394,6 +1428,9 @@ public void sendBroadcast(Intent intent, String receiverPermission, Bundle optio @Override public void sendBroadcast(Intent intent, String receiverPermission, int appOp) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, receiverPermission, null, appOp); + } warnIfCallingFromSystemProcess(); String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); String[] receiverPermissions = receiverPermission == null ? null @@ -1417,6 +1454,9 @@ public void sendOrderedBroadcast(Intent intent, String receiverPermission) { @Override public void sendOrderedBroadcast(Intent intent, String receiverPermission, Bundle options) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, receiverPermission, options, 0); + } warnIfCallingFromSystemProcess(); String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); String[] receiverPermissions = receiverPermission == null ? null @@ -1464,6 +1504,12 @@ void sendOrderedBroadcast(Intent intent, String receiverPermission, int appOp, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras, Bundle options) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, receiverPermission, null, options, null, appOp, + initialCode, initialData, initialExtras); + options = GmsHooks.filterBroadcastOptions(intent, options); + } + warnIfCallingFromSystemProcess(); IIntentReceiver rd = null; if (resultReceiver != null) { @@ -1499,6 +1545,11 @@ resultReceiver, getOuterContext(), scheduler, null, false) @Override public void sendBroadcastAsUser(Intent intent, UserHandle user) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, null, null, 0); + user = GmcUserManager.translateUserHandle(user); + } + String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); try { intent.prepareToLeaveProcess(this); @@ -1520,6 +1571,12 @@ public void sendBroadcastAsUser(Intent intent, UserHandle user, @Override public void sendBroadcastAsUser(Intent intent, UserHandle user, String receiverPermission, Bundle options) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, receiverPermission, options, 0); + options = GmsHooks.filterBroadcastOptions(intent, options); + user = GmcUserManager.translateUserHandle(user); + } + String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); String[] receiverPermissions = receiverPermission == null ? null : new String[] {receiverPermission}; @@ -1538,6 +1595,11 @@ public void sendBroadcastAsUser(Intent intent, UserHandle user, String receiverP @Override public void sendBroadcastAsUser(Intent intent, UserHandle user, String receiverPermission, int appOp) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, receiverPermission, null, null, null, appOp); + user = GmcUserManager.translateUserHandle(user); + } + String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); String[] receiverPermissions = receiverPermission == null ? null : new String[] {receiverPermission}; @@ -1584,6 +1646,12 @@ public void sendOrderedBroadcastAsUserMultiplePermissions(Intent intent, UserHan String[] receiverPermissions, int appOp, Bundle options, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras) { + if (GmsCompat.isEnabled()) { + maybeLogSendBroadcast(intent, null, receiverPermissions, options, null, appOp, initialCode, initialData, initialExtras); + options = GmsHooks.filterBroadcastOptions(intent, options); + user = GmcUserManager.translateUserHandle(user); + } + IIntentReceiver rd = null; if (resultReceiver != null) { if (mPackageInfo != null) { @@ -2028,27 +2096,42 @@ public ComponentName startForegroundServiceAsUser(Intent service, UserHandle use private ComponentName startServiceCommon(Intent service, boolean requireForeground, UserHandle user) { + if (GmsCompat.isEnabled()) { + maybeLogStartService(service, requireForeground); + } // Keep this in sync with ActivityManagerLocal.startSdkSandboxService try { validateServiceIntent(service); service.prepareToLeaveProcess(this); - ComponentName cn = ActivityManager.getService().startService( - mMainThread.getApplicationThread(), service, - service.resolveTypeIfNeeded(getContentResolver()), requireForeground, - getOpPackageName(), getAttributionTag(), user.getIdentifier()); - if (cn != null) { - if (cn.getPackageName().equals("!")) { - throw new SecurityException( - "Not allowed to start service " + service - + " without permission " + cn.getClassName()); - } else if (cn.getPackageName().equals("!!")) { - throw new SecurityException( - "Unable to start service " + service - + ": " + cn.getClassName()); - } else if (cn.getPackageName().equals("?")) { - throw ServiceStartNotAllowedException.newInstance(requireForeground, - "Not allowed to start service " + service + ": " + cn.getClassName()); + ComponentName cn; + for (int i = 0;; ++i) { + cn = ActivityManager.getService().startService( + mMainThread.getApplicationThread(), service, + service.resolveTypeIfNeeded(getContentResolver()), requireForeground, + getOpPackageName(), getAttributionTag(), user.getIdentifier()); + if (cn != null) { + if (cn.getPackageName().equals("!")) { + throw new SecurityException( + "Not allowed to start service " + service + + " without permission " + cn.getClassName()); + } else if (cn.getPackageName().equals("!!")) { + throw new SecurityException( + "Unable to start service " + service + + ": " + cn.getClassName()); + } else if (cn.getPackageName().equals("?")) { + if (GmsCompat.isEnabled() && i == 0) { + Log.d("GmsCompat", "unable to start " + service + ", requireForeground: " + requireForeground); + String reason = "GmsCompat: " + service + ", requireForeground: " + requireForeground; + // foreground apps are always allowed to start services + GmsCompatApp.raisePackageToForeground(GmsCompat.appContext().getPackageName(), + 30_000, reason, android.os.PowerExemptionManager.REASON_OTHER); + continue; + } + throw ServiceStartNotAllowedException.newInstance(requireForeground, + "Not allowed to start service " + service + ": " + cn.getClassName()); + } } + break; } // If we started a foreground service in the same package, remember the stack trace. if (cn != null && requireForeground) { @@ -2070,6 +2153,9 @@ public boolean stopServiceAsUser(Intent service, UserHandle user) { } private boolean stopServiceCommon(Intent service, UserHandle user) { + if (GmsCompat.isEnabled()) { + GmcDebug.maybeLogStopService(service); + } // // Keep this in sync with ActivityManagerLocal.stopSdkSandboxService try { validateServiceIntent(service); @@ -2210,6 +2296,15 @@ private boolean bindServiceCommon(Intent service, ServiceConnection conn, long f if (handler != null && executor != null) { throw new IllegalArgumentException("Handler and Executor both supplied"); } + + IGmsCompatLib gmcLib = GmsCompatLib.get(); + if (gmcLib != null) { + ServiceConnection connOverride = gmcLib.maybeReplaceServiceConnection(service, flags, user, conn); + if (connOverride != null) { + conn = connOverride; + } + } + if (mPackageInfo != null) { if (executor != null) { sd = mPackageInfo.getServiceDispatcher(conn, getOuterContext(), executor, flags); @@ -2220,6 +2315,26 @@ private boolean bindServiceCommon(Intent service, ServiceConnection conn, long f throw new RuntimeException("Not supported in system context"); } validateServiceIntent(service); + + if (GmsCompat.isEnabled()) { + if (!GmsCompat.hasPermission(Manifest.permission.START_ACTIVITIES_FROM_BACKGROUND)) { + flags &= ~BIND_ALLOW_BACKGROUND_ACTIVITY_STARTS; + } + GmcDebug.maybeLogBindService(service, conn, flags, instanceName); + } + + String pkg = service.getPackage(); + if (pkg == null) { + ComponentName cn = service.getComponent(); + if (cn != null) { + pkg = cn.getPackageName(); + } + } + + if (pkg != null && GmsCompat.isGmsAppAndUnprivilegedProcess(pkg)) { + flags |= BIND_ALLOW_ACTIVITY_STARTS; + } + try { IBinder token = getActivityToken(); if (token == null && (flags&BIND_AUTO_CREATE) == 0 && mPackageInfo != null @@ -2268,6 +2383,9 @@ public void unbindService(ServiceConnection conn) { if (conn == null) { throw new IllegalArgumentException("connection is null"); } + if (GmsCompat.isEnabled()) { + GmcDebug.maybeLogUnbindService(conn); + } if (mPackageInfo != null) { IServiceConnection sd = mPackageInfo.forgetServiceDispatcher( getOuterContext(), conn); @@ -2298,6 +2416,12 @@ public boolean startInstrumentation(ComponentName className, @Override public Object getSystemService(String name) { + if (GmsCompat.isEnabled()) { + if (GmsHooks.isHiddenSystemService(name)) { + return null; + } + } + if (vmIncorrectContextUseEnabled()) { // Check incorrect Context usage. if (WINDOW_SERVICE.equals(name) && !isUiContext()) { @@ -2457,6 +2581,12 @@ public int checkSelfPermission(String permission) { return PERMISSION_DENIED; } + if (GmsCompat.isEnabled()) { + if (GmsHooks.shouldSpoofSelfPermissionCheck(permission)) { + return PERMISSION_GRANTED; + } + } + return checkPermission(permission, Process.myPid(), Process.myUid()); } @@ -2814,6 +2944,13 @@ public Context createContextForSdkInSandbox(ApplicationInfo sdkInfo, int flags) @Override public Context createPackageContext(String packageName, int flags) throws NameNotFoundException { + if (GmsCompat.isEnabled()) { + Context res = GmcPackageManager.maybeOverrideGsfPackageContext(packageName); + if (res != null) { + return res; + } + } + return createPackageContextAsUser(packageName, flags, mUser); } @@ -3841,6 +3978,7 @@ public ApplicationContentResolver(Context context, ActivityThread mainThread) { @Override @UnsupportedAppUsage protected IContentProvider acquireProvider(Context context, String auth) { + auth = translateContentProviderAuthority(auth); return mMainThread.acquireProvider(context, ContentProvider.getAuthorityWithoutUserId(auth), resolveUserIdFromAuthority(auth), true); @@ -3848,6 +3986,7 @@ protected IContentProvider acquireProvider(Context context, String auth) { @Override protected IContentProvider acquireExistingProvider(Context context, String auth) { + auth = translateContentProviderAuthority(auth); return mMainThread.acquireExistingProvider(context, ContentProvider.getAuthorityWithoutUserId(auth), resolveUserIdFromAuthority(auth), true); @@ -3860,6 +3999,7 @@ public boolean releaseProvider(IContentProvider provider) { @Override protected IContentProvider acquireUnstableProvider(Context c, String auth) { + auth = translateContentProviderAuthority(auth); return mMainThread.acquireProvider(c, ContentProvider.getAuthorityWithoutUserId(auth), resolveUserIdFromAuthority(auth), false); diff --git a/core/java/android/app/DownloadManager.java b/core/java/android/app/DownloadManager.java index f21c3e8d44d6e..43fdc446977ba 100644 --- a/core/java/android/app/DownloadManager.java +++ b/core/java/android/app/DownloadManager.java @@ -24,6 +24,7 @@ import android.annotation.SystemApi; import android.annotation.SystemService; import android.annotation.TestApi; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.ClipDescription; import android.content.ContentProviderClient; @@ -34,6 +35,7 @@ import android.database.Cursor; import android.database.CursorWrapper; import android.database.DatabaseUtils; +import android.database.MatrixCursor; import android.net.ConnectivityManager; import android.net.NetworkPolicyManager; import android.net.Uri; @@ -53,6 +55,8 @@ import android.util.Pair; import android.webkit.MimeTypeMap; +import android.content.pm.SpecialRuntimePermAppUtils; + import java.io.File; import java.io.FileNotFoundException; import java.util.ArrayList; @@ -709,6 +713,13 @@ public Request setShowRunningNotification(boolean show) { * @return this object */ public Request setNotificationVisibility(int visibility) { + if (GmsCompat.isEnabled()) { + // requires the privileged DOWNLOAD_WITHOUT_NOTIFICATION permission + if (visibility == VISIBILITY_HIDDEN) { + return this; + } + } + mNotificationVisibility = visibility; return this; } @@ -1121,6 +1132,11 @@ public void onMediaStoreDownloadsDeleted(@NonNull LongSparseArray idToMi * future calls related to this download. Returns -1 if the operation fails. */ public long enqueue(Request request) { + if (SpecialRuntimePermAppUtils.isInternetCompatEnabled()) { + // invalid id (DownloadProvider uses SQLite and returns a row id) + return -1; + } + ContentValues values = request.toContentValues(mPackageName); Uri downloadUri = mResolver.insert(Downloads.Impl.CONTENT_URI, values); if (downloadUri == null) { @@ -1158,6 +1174,11 @@ public int markRowDeleted(long... ids) { * @return the number of downloads actually removed */ public int remove(long... ids) { + if (SpecialRuntimePermAppUtils.isInternetCompatEnabled()) { + // underlying provider is protected by the INTERNET permission + return 0; + } + return markRowDeleted(ids); } @@ -1173,6 +1194,11 @@ public Cursor query(Query query) { /** @hide */ public Cursor query(Query query, String[] projection) { + if (SpecialRuntimePermAppUtils.isInternetCompatEnabled()) { + // underlying provider is protected by the INTERNET permission + return new MatrixCursor(projection); + } + Cursor underlyingCursor = query.runQuery(mResolver, projection, mBaseUri); if (underlyingCursor == null) { return null; @@ -1551,6 +1577,11 @@ public long addCompletedDownload(String title, String description, throw new IllegalArgumentException(" invalid value for param: totalBytes"); } + if (SpecialRuntimePermAppUtils.isInternetCompatEnabled()) { + // underlying provider is protected by the INTERNET permission + return -1; + } + // if there is already an entry with the given path name in downloads.db, return its id Request request; if (uri != null) { diff --git a/core/java/android/app/IActivityManager.aidl b/core/java/android/app/IActivityManager.aidl index ad01ad57b2d88..095fd68b57e6f 100644 --- a/core/java/android/app/IActivityManager.aidl +++ b/core/java/android/app/IActivityManager.aidl @@ -1038,4 +1038,9 @@ interface IActivityManager { */ @EnforcePermission("INTERACT_ACROSS_USERS_FULL") IBinder refreshIntentCreatorToken(in Intent intent); + + String[] getSystemIdmapPaths(); + + oneway void showDynCodeLoadingNotification(int type, String pkgName, @nullable String path, + in List reportBody, String denialType); } diff --git a/core/java/android/app/IApplicationThread.aidl b/core/java/android/app/IApplicationThread.aidl index 063501bf82a20..adaf9650c7e69 100644 --- a/core/java/android/app/IApplicationThread.aidl +++ b/core/java/android/app/IApplicationThread.aidl @@ -187,4 +187,6 @@ oneway interface IApplicationThread { void schedulePing(in RemoteCallback pong); void getExecutableMethodFileOffsets(in MethodDescriptor methodDescriptor, in IOffsetCallback resultCallback); + + void onGosPackageStateChanged(in android.content.pm.GosPackageState state); } diff --git a/core/java/android/app/INotificationManager.aidl b/core/java/android/app/INotificationManager.aidl index a6c1a57a81319..9b5b6c2e51fdf 100644 --- a/core/java/android/app/INotificationManager.aidl +++ b/core/java/android/app/INotificationManager.aidl @@ -222,9 +222,9 @@ interface INotificationManager void setNotificationPolicyAccessGrantedForUser(String pkg, int userId, boolean granted); ZenPolicy getDefaultZenPolicy(); AutomaticZenRule getAutomaticZenRule(String id); - Map getAutomaticZenRules(); + ParceledListSlice getAutomaticZenRules(); // TODO: b/310620812 - Remove getZenRules() when MODES_API is inlined. - List getZenRules(); + ParceledListSlice getZenRules(); String addAutomaticZenRule(in AutomaticZenRule automaticZenRule, String pkg, boolean fromUser); boolean updateAutomaticZenRule(String id, in AutomaticZenRule automaticZenRule, boolean fromUser); boolean removeAutomaticZenRule(String id, boolean fromUser); diff --git a/core/java/android/app/IUserSwitchObserver.aidl b/core/java/android/app/IUserSwitchObserver.aidl index 1ff7a17e578f1..d71ee7c712e70 100644 --- a/core/java/android/app/IUserSwitchObserver.aidl +++ b/core/java/android/app/IUserSwitchObserver.aidl @@ -19,10 +19,10 @@ package android.app; import android.os.IRemoteCallback; /** {@hide} */ -interface IUserSwitchObserver { - void onBeforeUserSwitching(int newUserId); - oneway void onUserSwitching(int newUserId, IRemoteCallback reply); - oneway void onUserSwitchComplete(int newUserId); - oneway void onForegroundProfileSwitch(int newProfileId); - oneway void onLockedBootComplete(int newUserId); +oneway interface IUserSwitchObserver { + void onBeforeUserSwitching(int newUserId, IRemoteCallback reply); + void onUserSwitching(int newUserId, IRemoteCallback reply); + void onUserSwitchComplete(int newUserId); + void onForegroundProfileSwitch(int newProfileId); + void onLockedBootComplete(int newUserId); } diff --git a/core/java/android/app/Instrumentation.java b/core/java/android/app/Instrumentation.java index 7eacaac29d4b2..9f8ea344fff88 100644 --- a/core/java/android/app/Instrumentation.java +++ b/core/java/android/app/Instrumentation.java @@ -20,6 +20,7 @@ import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.ActivityNotFoundException; import android.content.ComponentName; @@ -64,7 +65,9 @@ import android.view.Window; import android.view.WindowManagerGlobal; +import com.android.internal.app.StorageScopesAppHooks; import com.android.internal.content.ReferrerIntent; +import com.android.internal.gmscompat.GmsHooks; import java.io.File; import java.lang.annotation.Retention; @@ -1353,8 +1356,15 @@ public void sendTrackballEventSync(MotionEvent event) { public Application newApplication(ClassLoader cl, String className, Context context) throws InstantiationException, IllegalAccessException, ClassNotFoundException { - Application app = getFactory(context.getPackageName()) - .instantiateApplication(cl, className); + GmsCompat.maybeEnable(context); + final Application app; + if (GmsCompat.isInGmsCompatProcess()) { + // GmsCompat process should never run app's code + app = new Application(); + } else { + app = getFactory(context.getPackageName()) + .instantiateApplication(cl, className); + } app.attach(context); return app; } @@ -2002,12 +2012,18 @@ public ActivityResult execStartActivity( try { intent.migrateExtraStreamToClipData(who); intent.prepareToLeaveProcess(who); + StorageScopesAppHooks.maybeModifyActivityIntent(who, intent); int result = ActivityTaskManager.getService().startActivity(whoThread, who.getOpPackageName(), who.getAttributionTag(), intent, intent.resolveTypeIfNeeded(who.getContentResolver()), token, target != null ? target.mEmbeddedID : null, requestCode, 0, null, options); notifyStartActivityResult(result, options); checkStartActivityResult(result, intent); + + if (GmsCompat.isEnabled()) { + GmsHooks.onActivityStart(result, intent, requestCode, options); + } + } catch (RemoteException e) { throw new RuntimeException("Failure from system", e); } diff --git a/core/java/android/app/LoadedApk.java b/core/java/android/app/LoadedApk.java index 3d85ea6a1fca6..2a5d7e828b2b6 100644 --- a/core/java/android/app/LoadedApk.java +++ b/core/java/android/app/LoadedApk.java @@ -18,6 +18,7 @@ import android.annotation.NonNull; import android.annotation.Nullable; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.BroadcastReceiver; import android.content.ComponentName; @@ -61,6 +62,7 @@ import com.android.internal.R; import com.android.internal.annotations.GuardedBy; +import com.android.internal.gmscompat.GmcDebug; import com.android.internal.util.ArrayUtils; import dalvik.system.BaseDexClassLoader; @@ -1822,6 +1824,9 @@ public final Runnable getRunnable() { mContext.getAttributionSource()); setExtrasClassLoader(cl); receiver.setPendingResult(this); + if (GmsCompat.isEnabled()) { + GmcDebug.maybeLogReceiveBroadcast(receiver, intent, false); + } receiver.onReceive(mContext, intent); } catch (Exception e) { if (ActivityThread.DEBUG_BROADCAST) Slog.i(ActivityThread.TAG, @@ -2207,19 +2212,30 @@ public void doConnected(ComponentName name, IBinder service, boolean dead) { // If there was an old service, it is now disconnected. if (old != null) { + if (GmsCompat.isEnabled()) { + GmcDebug.maybeLogServiceConnCallback("onServiceDisconnected_old", name); + } mConnection.onServiceDisconnected(name); } + + String op; if (dead) { + op = "onBindingDied"; mConnection.onBindingDied(name); } else { // If there is a new viable service, it is now connected. if (service != null) { + op = "onServiceConnected"; mConnection.onServiceConnected(name, service); } else { + op = "onNullBinding"; // The binding machinery worked, but the remote returned null from onBind(). mConnection.onNullBinding(name); } } + if (GmsCompat.isEnabled()) { + GmcDebug.maybeLogServiceConnCallback(op, name); + } } public void doDeath(ComponentName name, IBinder service) { @@ -2234,6 +2250,10 @@ public void doDeath(ComponentName name, IBinder service) { old.binder.unlinkToDeath(old.deathMonitor, 0); } + if (GmsCompat.isEnabled()) { + GmcDebug.maybeLogServiceConnCallback("onServiceDisconnected", name); + } + mConnection.onServiceDisconnected(name); } diff --git a/core/java/android/app/LocaleManager.java b/core/java/android/app/LocaleManager.java index e865af789b152..6abbac848e95e 100644 --- a/core/java/android/app/LocaleManager.java +++ b/core/java/android/app/LocaleManager.java @@ -24,11 +24,14 @@ import android.annotation.SystemService; import android.annotation.TestApi; import android.annotation.UserHandleAware; +import android.app.compat.gms.GmsCompat; import android.content.Context; import android.content.res.Configuration; import android.os.LocaleList; import android.os.RemoteException; +import com.android.internal.gmscompat.PlayStoreHooks; + /** * This class gives access to system locale services. These services allow applications to * control granular locale settings (such as per-app locales) or override their list of supported @@ -145,11 +148,19 @@ public LocaleList getApplicationLocales() { @UserHandleAware @NonNull public LocaleList getApplicationLocales(@NonNull String appPackageName) { + LocaleList res; try { - return mService.getApplicationLocales(appPackageName, mContext.getUserId()); + res = mService.getApplicationLocales(appPackageName, mContext.getUserId()); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } + if (GmsCompat.isPlayStore()) { + LocaleList override = PlayStoreHooks.overrideApplicationLocales(res, appPackageName); + if (override != null) { + res = override; + } + } + return res; } /** diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java index 7e998d90e04f1..bad0c9ce8d990 100644 --- a/core/java/android/app/Notification.java +++ b/core/java/android/app/Notification.java @@ -111,6 +111,7 @@ import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.app.ContactScopes; import com.android.internal.graphics.ColorUtils; import com.android.internal.util.ArrayUtils; import com.android.internal.util.ContrastColorUtil; @@ -5503,6 +5504,11 @@ public Builder setCategory(String category) { * @deprecated use {@link #addPerson(Person)} */ public Builder addPerson(String uri) { + if (ContactScopes.isEnabled()) { + // See comment in Person.Builder#setUri() + return this; + } + addPerson(new Person.Builder().setUri(uri).build()); return this; } @@ -5529,6 +5535,13 @@ public Builder addPerson(String uri) { */ @NonNull public Builder addPerson(Person person) { + if (ContactScopes.isEnabled()) { + if (person.getName() == null && person.getKey() == null) { + // See comment in Person.Builder#setUri() + return this; + } + + } mPersonList.add(person); return this; } diff --git a/core/java/android/app/NotificationManager.java b/core/java/android/app/NotificationManager.java index 8ed66eb7e6c0f..fd1f7dfc9d819 100644 --- a/core/java/android/app/NotificationManager.java +++ b/core/java/android/app/NotificationManager.java @@ -20,6 +20,7 @@ import static android.content.pm.PackageManager.PERMISSION_GRANTED; import static android.service.notification.Flags.notificationClassification; +import android.Manifest; import android.annotation.CallbackExecutor; import android.annotation.FlaggedApi; import android.annotation.IntDef; @@ -35,6 +36,7 @@ import android.annotation.WorkerThread; import android.app.Notification.Builder; import android.app.compat.CompatChanges; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.ChangeId; import android.compat.annotation.EnabledSince; import android.compat.annotation.UnsupportedAppUsage; @@ -69,6 +71,8 @@ import android.util.LruCache; import android.util.proto.ProtoOutputStream; +import com.android.internal.gmscompat.GmsCompatApp; + import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.time.InstantSource; @@ -772,6 +776,17 @@ public void notifyAsPackage(@NonNull String targetPackage, @Nullable String tag, public void notifyAsUser(@Nullable String tag, int id, Notification notification, UserHandle user) { + if (GmsCompat.isEnabled()) { + if (!GmsCompat.hasPermission(Manifest.permission.POST_NOTIFICATIONS)) { + String pkg = GmsCompat.appContext().getPackageName(); + try { + GmsCompatApp.iGms2Gca().showMissingPostNotifsPermissionNotification(pkg); + } catch (RemoteException e) { + GmsCompatApp.callFailed(e); + } + } + } + INotificationManager service = service(); String pkg = mContext.getPackageName(); if (discardNotify(tag, id, notification)) { @@ -1426,11 +1441,19 @@ public Map getAutomaticZenRules() { INotificationManager service = service(); try { if (Flags.modesApi()) { - return service.getAutomaticZenRules(); + Map result = new HashMap<>(); + ParceledListSlice parceledRules = + service.getAutomaticZenRules(); + if (parceledRules != null) { + for (AutomaticZenRule.AzrWithId rule : parceledRules.getList()) { + result.put(rule.mId, rule.mRule); + } + } + return result; } else { - List rules = service.getZenRules(); + ParceledListSlice rules = service.getZenRules(); Map ruleMap = new HashMap<>(); - for (ZenModeConfig.ZenRule rule : rules) { + for (ZenModeConfig.ZenRule rule : rules.getList()) { AutomaticZenRule azr = new AutomaticZenRule(rule.name, rule.component, rule.configurationActivity, rule.conditionId, rule.zenPolicy, zenModeToInterruptionFilter(rule.zenMode), rule.enabled, @@ -1804,6 +1827,10 @@ public boolean isNotificationPolicyAccessGranted() { * {@link android.provider.Settings#ACTION_NOTIFICATION_LISTENER_SETTINGS}. */ public boolean isNotificationListenerAccessGranted(ComponentName listener) { + if (GmsCompat.isAndroidAuto()) { + return true; + } + INotificationManager service = service(); try { return service.isNotificationListenerAccessGranted(listener); diff --git a/core/java/android/app/PendingIntent.java b/core/java/android/app/PendingIntent.java index 393ec8c1d66d3..cd398f125ec01 100644 --- a/core/java/android/app/PendingIntent.java +++ b/core/java/android/app/PendingIntent.java @@ -30,6 +30,7 @@ import android.annotation.SystemApi.Client; import android.annotation.TestApi; import android.app.ActivityManager.PendingIntentInfo; +import android.app.compat.gms.GmsCompat; import android.compat.Compatibility; import android.compat.annotation.ChangeId; import android.compat.annotation.EnabledAfter; @@ -60,6 +61,9 @@ import android.util.proto.ProtoOutputStream; import com.android.internal.annotations.GuardedBy; +import com.android.internal.gmscompat.GmsHooks; +import com.android.internal.gmscompat.GmsInfo; +import com.android.internal.gmscompat.util.GmcActivityUtils; import com.android.internal.os.IResultReceiver; import java.lang.annotation.Retention; @@ -436,8 +440,8 @@ static void removeOnMarshaledListener(OnMarshaledListener listener) { sOnMarshaledListener.get().remove(listener); } - private static void checkPendingIntent(int flags, @NonNull Intent intent, - @NonNull Context context, boolean isActivityResultType) { + private static int checkPendingIntent2(int flags, @NonNull Intent intent, + @NonNull Context context, boolean isActivityResultType) { final boolean isFlagImmutableSet = (flags & PendingIntent.FLAG_IMMUTABLE) != 0; final boolean isFlagMutableSet = (flags & PendingIntent.FLAG_MUTABLE) != 0; final String packageName = context.getPackageName(); @@ -455,7 +459,9 @@ private static void checkPendingIntent(int flags, @NonNull Intent intent, + " using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality" + " depends on the PendingIntent being mutable, e.g. if it needs to" + " be used with inline replies or bubbles."; - throw new IllegalArgumentException(msg); + + Log.e(TAG, msg); + return flags | PendingIntent.FLAG_IMMUTABLE; } // For apps with target SDK < U, warn that creation or retrieval of a mutable implicit @@ -472,6 +478,7 @@ private static void checkPendingIntent(int flags, @NonNull Intent intent, + " for security reasons."; Log.w(TAG, new StackTrace(msg)); } + return flags; } /** @hide */ @@ -571,7 +578,7 @@ public static PendingIntent getActivityAsUser(Context context, int requestCode, @NonNull Intent intent, int flags, Bundle options, UserHandle user) { String packageName = context.getPackageName(); String resolvedType = intent.resolveTypeIfNeeded(context.getContentResolver()); - checkPendingIntent(flags, intent, context, /* isActivityResultType */ false); + flags = checkPendingIntent2(flags, intent, context, /* isActivityResultType */ false); try { intent.migrateExtraStreamToClipData(context); intent.prepareToLeaveProcess(context); @@ -705,7 +712,7 @@ public static PendingIntent getActivitiesAsUser(Context context, int requestCode intents[i].migrateExtraStreamToClipData(context); intents[i].prepareToLeaveProcess(context); resolvedTypes[i] = intents[i].resolveTypeIfNeeded(context.getContentResolver()); - checkPendingIntent(flags, intents[i], context, /* isActivityResultType */ false); + flags = checkPendingIntent2(flags, intents[i], context, /* isActivityResultType */ false); } try { IIntentSender target = @@ -758,7 +765,7 @@ public static PendingIntent getBroadcastAsUser(Context context, int requestCode, Intent intent, int flags, UserHandle userHandle) { String packageName = context.getPackageName(); String resolvedType = intent.resolveTypeIfNeeded(context.getContentResolver()); - checkPendingIntent(flags, intent, context, /* isActivityResultType */ false); + flags = checkPendingIntent2(flags, intent, context, /* isActivityResultType */ false); try { intent.prepareToLeaveProcess(context); IIntentSender target = @@ -837,7 +844,7 @@ private static PendingIntent buildServicePendingIntent(Context context, int requ Intent intent, int flags, int serviceKind) { String packageName = context.getPackageName(); String resolvedType = intent.resolveTypeIfNeeded(context.getContentResolver()); - checkPendingIntent(flags, intent, context, /* isActivityResultType */ false); + flags = checkPendingIntent2(flags, intent, context, /* isActivityResultType */ false); try { intent.prepareToLeaveProcess(context); IIntentSender target = @@ -1079,6 +1086,22 @@ public void send(Context context, int code, @Nullable Intent intent, @Nullable OnFinished onFinished, @Nullable Handler handler, @Nullable String requiredPermission, @Nullable Bundle options) throws CanceledException { + if (GmsCompat.isEnabled()) { + if (options != null && intent != null && isBroadcast()) { + String targetPkg = getCreatorPackage(); + if (targetPkg != null) { + options = GmsHooks.filterBroadcastOptions(options, targetPkg); + } + } + } + + if (isActivity()) { + String pkg = getCreatorPackage(); + if (pkg != null && GmsCompat.isGmsAppAndUnprivilegedProcess(pkg)) { + options = GmcActivityUtils.allowActivityLaunchFromPendingIntent(options); + } + } + if (sendAndReturnResult(context, code, intent, onFinished, handler, requiredPermission, options) < 0) { throw new CanceledException(); diff --git a/core/java/android/app/Person.java b/core/java/android/app/Person.java index c7432c571e439..76d97b42c33b8 100644 --- a/core/java/android/app/Person.java +++ b/core/java/android/app/Person.java @@ -23,6 +23,8 @@ import android.os.Parcel; import android.os.Parcelable; +import com.android.internal.app.ContactScopes; + import java.util.Objects; import java.util.function.Consumer; @@ -258,6 +260,19 @@ public Person.Builder setIcon(@Nullable Icon icon) { */ @NonNull public Person.Builder setUri(@Nullable String uri) { + if (ContactScopes.isEnabled()) { + // The app doesn't have direct access to the contact's uri when Contact Scopes is enabled. + // + // The Person object can be attached to a notification via Notification.Builder#addPerson. + // Before showing a notification, system_server checks whether the calling app has + // permission to access all uris that are attached to that notification. system_server + // doesn't show notifications that fail this permission check. + // + // Before November 2024 security patches, Person uris were exempted from these checks: + // https://android.googlesource.com/platform/frameworks/base/+/3a240992e42dc2c7d1920a8207b00935d0558b0d + return this; + } + mUri = uri; return this; } diff --git a/core/java/android/app/ResourcesManager.java b/core/java/android/app/ResourcesManager.java index 51d0b18467f4e..d66429a2192d2 100644 --- a/core/java/android/app/ResourcesManager.java +++ b/core/java/android/app/ResourcesManager.java @@ -77,6 +77,7 @@ public class ResourcesManager { static final String TAG = "ResourcesManager"; private static final boolean DEBUG = false; + public static final String RESOURCE_CACHE_DIR = "/data/resource-cache/"; private static volatile ResourcesManager sResourcesManager; @@ -581,7 +582,7 @@ private void addApplicationPathsLocked(@NonNull String sourceDir, } private static String overlayPathToIdmapPath(String path) { - return "/data/resource-cache/" + path.substring(1).replace('/', '@') + "@idmap"; + return RESOURCE_CACHE_DIR + path.substring(1).replace('/', '@') + "@idmap"; } /** diff --git a/core/java/android/app/Service.java b/core/java/android/app/Service.java index aaddaa62a32fe..a5d64f54960a8 100644 --- a/core/java/android/app/Service.java +++ b/core/java/android/app/Service.java @@ -20,11 +20,13 @@ import static android.os.Trace.TRACE_TAG_ACTIVITY_MANAGER; import static android.text.TextUtils.formatSimple; +import android.Manifest; import android.annotation.FlaggedApi; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.RequiresPermission; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.ComponentCallbacks2; import android.content.ComponentName; @@ -858,6 +860,20 @@ public final void startForeground(int id, Notification notification) { */ public final void startForeground(int id, @NonNull Notification notification, @RequiresPermission @ForegroundServiceType int foregroundServiceType) { + if (GmsCompat.isEnabled()) { + if ((foregroundServiceType & ServiceInfo.FOREGROUND_SERVICE_TYPE_MICROPHONE) != 0) { + if (!GmsCompat.hasPermission(Manifest.permission.RECORD_AUDIO)) { + foregroundServiceType &= ~ServiceInfo.FOREGROUND_SERVICE_TYPE_MICROPHONE; + } + } + + if ((foregroundServiceType & ServiceInfo.FOREGROUND_SERVICE_TYPE_LOCATION) != 0) { + if (!GmsCompat.hasPermission(Manifest.permission.ACCESS_COARSE_LOCATION)) { + foregroundServiceType &= ~ServiceInfo.FOREGROUND_SERVICE_TYPE_LOCATION; + } + } + } + try { final ComponentName comp = new ComponentName(this, mClassName); mActivityManager.setServiceForeground( @@ -866,6 +882,12 @@ public final void startForeground(int id, @NonNull Notification notification, clearStartForegroundServiceStackTrace(); logForegroundServiceStart(comp, foregroundServiceType); } catch (RemoteException ex) { + } catch (SecurityException e) { + if (GmsCompat.isEnabled()) { + Log.e(TAG, "fgsType: " + Integer.toHexString(foregroundServiceType), e); + return; + } + throw e; } } diff --git a/core/java/android/app/StorageScope.java b/core/java/android/app/StorageScope.java new file mode 100644 index 0000000000000..c9f1af1249541 --- /dev/null +++ b/core/java/android/app/StorageScope.java @@ -0,0 +1,159 @@ +/* + * Copyright (C) 2022 GrapheneOS + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package android.app; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SuppressLint; +import android.annotation.SystemApi; +import android.content.Intent; +import android.content.pm.GosPackageState; +import android.util.Log; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.DataInputStream; +import java.io.DataOutputStream; + +/** + * @hide + */ +@SystemApi +public final class StorageScope { + private static final String TAG = "StorageScope"; + + @NonNull + public final String path; + public final int flags; // note that flags are cast to short during serialization + + public static final int FLAG_ALLOW_WRITES = 1; + public static final int FLAG_IS_DIR = 1 << 1; + + public StorageScope(@NonNull String path, int flags) { + this.path = path; + this.flags = flags; + } + + @NonNull + public static Intent createConfigActivityIntent(@NonNull String targetPkg) { + Intent i = new Intent(Intent.ACTION_MAIN); + i.setClassName("com.android.permissioncontroller", + "com.android.permissioncontroller.sscopes.StorageScopesActivity"); + i.putExtra(Intent.EXTRA_PACKAGE_NAME, targetPkg); + return i; + } + + public static int maxArrayLength() { + // Should be less than Byte.MAX_VALUE (it is cast to byte during serialization). + // Note that the MediaProvider filtering based on StorageScopes is O(n), + // where n is the number of the StorageScopes + return 20; + } + + public boolean isWritable() { + return (flags & FLAG_ALLOW_WRITES) != 0; + } + + public boolean isDirectory() { + return (flags & FLAG_IS_DIR) != 0; + } + + public boolean isFile() { + return (flags & FLAG_IS_DIR) == 0; + } + + private static final int VERSION = 0; + + @Nullable + public static byte[] serializeArray(@NonNull @SuppressLint("ArrayReturn") StorageScope[] array) { + if (array.length == 0) { + return null; // special case to minimize the size of persistent state + } + + ByteArrayOutputStream bos = new ByteArrayOutputStream(1000); + DataOutputStream s = new DataOutputStream(bos); + try { + s.writeByte(VERSION); + + final int cnt = array.length; + if (cnt > maxArrayLength()) { + throw new IllegalStateException(); + } + s.writeByte(cnt); + + for (int i = 0; i < cnt; ++i) { + StorageScope scope = array[i]; + s.writeUTF(scope.path); + s.writeShort(scope.flags); + } + return bos.toByteArray(); + } catch (Exception e) { + throw new IllegalStateException(e); + } + } + + @NonNull @SuppressLint("ArrayReturn") + public static StorageScope[] deserializeArray(@NonNull GosPackageState gosPackageState) { + byte[] ser = gosPackageState.storageScopes; + + if (ser == null) { + return new StorageScope[0]; + } + + DataInputStream s = new DataInputStream(new ByteArrayInputStream(ser)); + try { + final int version = s.readByte(); + if (version != StorageScope.VERSION) { + Log.e(TAG, "unexpected version " + version); + return new StorageScope[0]; + } + + int cnt = s.readByte(); + StorageScope[] arr = new StorageScope[cnt]; + for (int i = 0; i < cnt; ++i) { + String path = s.readUTF(); + short pathFlags = (short) s.readUnsignedShort(); + + arr[i] = new StorageScope(path, pathFlags); + } + + return arr; + } catch (Exception e) { + Log.e(TAG, "deserialization failed", e); + return new StorageScope[0]; + } + } + + @Override + public boolean equals(Object obj) { + if (!(obj instanceof StorageScope)) { + return false; + } + StorageScope o = (StorageScope) obj; + return path.equals(o.path) && flags == o.flags; + } + + @Override + public int hashCode() { + return 31 * flags + path.hashCode(); + } + + public static final String MEDIA_PROVIDER_METHOD_INVALIDATE_MEDIA_PROVIDER_CACHE = "StorageScopes_invalidateCache"; + public static final String MEDIA_PROVIDER_METHOD_MEDIA_ID_TO_FILE_PATH = "StorageScopes_mediaIdToFilePath"; + + public static final String EXTERNAL_STORAGE_PROVIDER_METHOD_CONVERT_DOC_ID_TO_PATH = "StorageScopes_convertDocIdToPath"; +} diff --git a/core/java/android/app/SystemServiceRegistry.java b/core/java/android/app/SystemServiceRegistry.java index 920b19cd8f78f..aa32e77339b4e 100644 --- a/core/java/android/app/SystemServiceRegistry.java +++ b/core/java/android/app/SystemServiceRegistry.java @@ -37,6 +37,7 @@ import android.app.appfunctions.IAppFunctionManager; import android.app.appsearch.AppSearchManagerFrameworkInitializer; import android.app.blob.BlobStoreManagerFrameworkInitializer; +import android.app.compat.gms.GmsCompat; import android.app.contentsuggestions.ContentSuggestionsManager; import android.app.contentsuggestions.IContentSuggestionsManager; import android.app.contextualsearch.ContextualSearchManager; @@ -136,6 +137,7 @@ import android.location.ICountryDetector; import android.location.ILocationManager; import android.location.LocationManager; +import android.location.HookedLocationManager; import android.media.AudioDeviceVolumeManager; import android.media.AudioManager; import android.media.MediaFrameworkInitializer; @@ -282,6 +284,7 @@ import com.android.internal.app.IBatteryStats; import com.android.internal.app.ISoundTriggerService; import com.android.internal.appwidget.IAppWidgetService; +import com.android.internal.gmscompat.sysservice.GmcUserManager; import com.android.internal.graphics.fonts.IFontManager; import com.android.internal.net.INetworkWatchlistManager; import com.android.internal.os.IBinaryTransparencyService; @@ -602,7 +605,11 @@ public LayoutInflater createService(ContextImpl ctx) { @Override public LocationManager createService(ContextImpl ctx) throws ServiceNotFoundException { IBinder b = ServiceManager.getServiceOrThrow(Context.LOCATION_SERVICE); - return new LocationManager(ctx, ILocationManager.Stub.asInterface(b)); + if (HookedLocationManager.isEnabled()) { + return new HookedLocationManager(ctx, ILocationManager.Stub.asInterface(b)); + } else { + return new LocationManager(ctx, ILocationManager.Stub.asInterface(b)); + } }}); registerService(Context.NETWORK_POLICY_SERVICE, NetworkPolicyManager.class, @@ -859,6 +866,11 @@ public WindowManager createService(ContextImpl ctx) { public UserManager createService(ContextImpl ctx) throws ServiceNotFoundException { IBinder b = ServiceManager.getServiceOrThrow(Context.USER_SERVICE); IUserManager service = IUserManager.Stub.asInterface(b); + + if (GmsCompat.isEnabled()) { + return new GmcUserManager(ctx, service); + } + return new UserManager(ctx, service); }}); diff --git a/core/java/android/app/UserSwitchObserver.java b/core/java/android/app/UserSwitchObserver.java index 727799a1f9484..1664cfb6f7a85 100644 --- a/core/java/android/app/UserSwitchObserver.java +++ b/core/java/android/app/UserSwitchObserver.java @@ -30,7 +30,11 @@ public UserSwitchObserver() { } @Override - public void onBeforeUserSwitching(int newUserId) throws RemoteException {} + public void onBeforeUserSwitching(int newUserId, IRemoteCallback reply) throws RemoteException { + if (reply != null) { + reply.sendResult(null); + } + } @Override public void onUserSwitching(int newUserId, IRemoteCallback reply) throws RemoteException { diff --git a/core/java/android/app/WallpaperManager.java b/core/java/android/app/WallpaperManager.java index 89e25e7d1b4f3..00bdd59f59c0e 100644 --- a/core/java/android/app/WallpaperManager.java +++ b/core/java/android/app/WallpaperManager.java @@ -42,6 +42,7 @@ import android.annotation.TestApi; import android.annotation.UiContext; import android.app.compat.CompatChanges; +import android.app.compat.gms.GmsCompat; import android.app.wallpaper.WallpaperDescription; import android.app.wallpaper.WallpaperInstance; import android.compat.annotation.ChangeId; @@ -99,6 +100,7 @@ import com.android.internal.R; import com.android.internal.annotations.Keep; +import com.android.internal.app.StorageScopesAppHooks; import libcore.io.IoUtils; @@ -764,6 +766,16 @@ public Bitmap peekWallpaperBitmap(Context context, boolean returnDefault, return getDefaultWallpaper(context, FLAG_SYSTEM); } + if (GmsCompat.isEnabled()) { + Log.d("GmsCompat", "", e); + return getDefaultWallpaper(context, FLAG_SYSTEM); + } + + if (StorageScopesAppHooks.isEnabled()) { + Log.d("StorageScopes", "returning default wallpaper"); + return getDefaultWallpaper(context, FLAG_SYSTEM); + } + if (context.getApplicationInfo().targetSdkVersion < Build.VERSION_CODES.O_MR1) { Log.w(TAG, "No permission to access wallpaper, suppressing" + " exception to avoid crashing legacy app."); @@ -1984,6 +1996,17 @@ private ParcelFileDescriptor getWallpaperFile(@SetWallpaperFlags int which, int + " wallpaper file to avoid crashing legacy app."); return getDefaultSystemWallpaperFile(); } + + if (GmsCompat.isEnabled()) { + Log.d("GmsCompat", "", e); + return getDefaultSystemWallpaperFile(); + } + + if (StorageScopesAppHooks.isEnabled()) { + Log.d("StorageScopes", "returning default wallpaper file"); + return getDefaultSystemWallpaperFile(); + } + if (mContext.getApplicationInfo().targetSdkVersion < Build.VERSION_CODES.O_MR1) { Log.w(TAG, "No permission to access wallpaper, suppressing" + " exception to avoid crashing legacy app."); diff --git a/core/java/android/app/admin/DevicePolicyManager.java b/core/java/android/app/admin/DevicePolicyManager.java index 9ddc729850c4c..ea958375c3cfd 100644 --- a/core/java/android/app/admin/DevicePolicyManager.java +++ b/core/java/android/app/admin/DevicePolicyManager.java @@ -66,6 +66,7 @@ import static android.os.Build.VERSION_CODES.UPSIDE_DOWN_CAKE; import static com.android.internal.util.function.pooled.PooledLambda.obtainMessage; +import static com.android.internal.widget.LockDomain.Primary; import android.Manifest.permission; import android.accounts.Account; @@ -159,6 +160,7 @@ import com.android.internal.os.Zygote; import com.android.internal.util.ArrayUtils; import com.android.internal.util.Preconditions; +import com.android.internal.widget.LockDomain; import com.android.org.conscrypt.TrustedCertificateStore; import java.io.ByteArrayInputStream; @@ -3738,7 +3740,7 @@ public void onInstallUpdateError( * Maximum supported password length. Kind-of arbitrary. * @hide */ - public static final int MAX_PASSWORD_LENGTH = 16; + public static final int MAX_PASSWORD_LENGTH = 128; /** * Service Action: Service implemented by a device owner or profile owner supervision app to @@ -6121,10 +6123,15 @@ public int getCurrentFailedPasswordAttempts() { */ @UnsupportedAppUsage public int getCurrentFailedPasswordAttempts(int userHandle) { + return getCurrentFailedPasswordAttempts(userHandle, Primary); + } + + /** @hide */ + public int getCurrentFailedPasswordAttempts(int userHandle, LockDomain lockDomain) { if (mService != null) { try { return mService.getCurrentFailedPasswordAttempts( - mContext.getPackageName(), userHandle, mParentInstance); + mContext.getPackageName(), lockDomain, userHandle, mParentInstance); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } @@ -9556,9 +9563,18 @@ public void getRemoveWarning(@Nullable ComponentName admin, RemoteCallback resul */ @RequiresFeature(PackageManager.FEATURE_SECURE_LOCK_SCREEN) public void reportPasswordChanged(PasswordMetrics metrics, @UserIdInt int userId) { + reportPasswordChanged(metrics, userId, Primary); + } + + /** + * @hide + */ + @RequiresFeature(PackageManager.FEATURE_SECURE_LOCK_SCREEN) + public void reportPasswordChanged(PasswordMetrics metrics, @UserIdInt int userId, + LockDomain lockDomain) { if (mService != null) { try { - mService.reportPasswordChanged(metrics, userId); + mService.reportPasswordChanged(metrics, userId, lockDomain); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } @@ -9571,9 +9587,18 @@ public void reportPasswordChanged(PasswordMetrics metrics, @UserIdInt int userId @UnsupportedAppUsage @RequiresFeature(PackageManager.FEATURE_SECURE_LOCK_SCREEN) public void reportFailedPasswordAttempt(int userHandle) { + reportFailedPasswordAttempt(userHandle, Primary); + } + + /** + * @hide + */ + @RequiresFeature(PackageManager.FEATURE_SECURE_LOCK_SCREEN) + public void reportFailedPasswordAttempt(int userHandle, LockDomain lockDomain) { if (mService != null) { try { - mService.reportFailedPasswordAttempt(userHandle, mParentInstance); + mService.reportFailedPasswordAttempt(userHandle, lockDomain, + mParentInstance); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } @@ -9586,9 +9611,17 @@ public void reportFailedPasswordAttempt(int userHandle) { @UnsupportedAppUsage @RequiresFeature(PackageManager.FEATURE_SECURE_LOCK_SCREEN) public void reportSuccessfulPasswordAttempt(int userHandle) { + reportSuccessfulPasswordAttempt(userHandle, Primary); + } + + /** + * @hide + */ + @RequiresFeature(PackageManager.FEATURE_SECURE_LOCK_SCREEN) + public void reportSuccessfulPasswordAttempt(int userHandle, LockDomain lockDomain) { if (mService != null) { try { - mService.reportSuccessfulPasswordAttempt(userHandle); + mService.reportSuccessfulPasswordAttempt(userHandle, lockDomain); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } diff --git a/core/java/android/app/admin/IDevicePolicyManager.aidl b/core/java/android/app/admin/IDevicePolicyManager.aidl index f304c1bf0a882..1de1f4aaa11c1 100644 --- a/core/java/android/app/admin/IDevicePolicyManager.aidl +++ b/core/java/android/app/admin/IDevicePolicyManager.aidl @@ -56,6 +56,7 @@ import android.telephony.data.ApnSetting; import com.android.internal.infra.AndroidFuture; import android.app.admin.DevicePolicyState; import android.app.admin.EnforcingAdmin; +import com.android.internal.widget.LockDomain; import java.util.List; @@ -106,7 +107,7 @@ interface IDevicePolicyManager { int getRequiredPasswordComplexity(String callerPackageName, boolean parent); int getAggregatedPasswordComplexityForUser(int userId, boolean deviceWideOnly); boolean isUsingUnifiedPassword(in ComponentName admin); - int getCurrentFailedPasswordAttempts(String callerPackageName, int userHandle, boolean parent); + int getCurrentFailedPasswordAttempts(String callerPackageName, in LockDomain lockDomain, int userHandle, boolean parent); int getProfileWithMinimumFailedPasswordsForWipe(int userHandle, boolean parent); void setMaximumFailedPasswordsForWipe( @@ -171,9 +172,9 @@ interface IDevicePolicyManager { void forceRemoveActiveAdmin(in ComponentName policyReceiver, int userHandle); boolean hasGrantedPolicy(in ComponentName policyReceiver, int usesPolicy, int userHandle); - void reportPasswordChanged(in PasswordMetrics metrics, int userId); - void reportFailedPasswordAttempt(int userHandle, boolean parent); - void reportSuccessfulPasswordAttempt(int userHandle); + void reportPasswordChanged(in PasswordMetrics metrics, int userId, in LockDomain lockDomain); + void reportFailedPasswordAttempt(int userHandle, in LockDomain lockDomain, boolean parent); + void reportSuccessfulPasswordAttempt(int userHandle, in LockDomain lockDomain); void reportFailedBiometricAttempt(int userHandle); void reportSuccessfulBiometricAttempt(int userHandle); void reportKeyguardDismissed(int userHandle); diff --git a/core/java/android/app/compat/gms/AndroidAutoPackageFlag.java b/core/java/android/app/compat/gms/AndroidAutoPackageFlag.java new file mode 100644 index 0000000000000..d4e46d4db05a4 --- /dev/null +++ b/core/java/android/app/compat/gms/AndroidAutoPackageFlag.java @@ -0,0 +1,12 @@ +package android.app.compat.gms; + +import android.annotation.SystemApi; + +/** @hide */ +@SystemApi +public interface AndroidAutoPackageFlag { + int GRANT_PERMS_FOR_WIRED_ANDROID_AUTO = 0; + int GRANT_PERMS_FOR_WIRELESS_ANDROID_AUTO = 1; + int GRANT_AUDIO_ROUTING_PERM = 2; + int GRANT_PERMS_FOR_ANDROID_AUTO_PHONE_CALLS = 3; +} diff --git a/core/java/android/app/compat/gms/GmsCompat.java b/core/java/android/app/compat/gms/GmsCompat.java new file mode 100644 index 0000000000000..54901758fcc62 --- /dev/null +++ b/core/java/android/app/compat/gms/GmsCompat.java @@ -0,0 +1,356 @@ +package android.app.compat.gms; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SystemApi; +import android.app.ActivityThread; +import android.app.AppGlobals; +import android.app.Application; +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.IPackageManager; +import android.content.pm.PackageManager; +import android.ext.AppInfoExt; +import android.ext.AppInfoExtFlag; +import android.ext.PackageId; +import android.os.Binder; +import android.os.Build; +import android.os.Process; +import android.os.RemoteException; +import android.os.SystemProperties; +import android.os.UserHandle; +import android.util.Log; + +import com.android.internal.gmscompat.GmsCompatLib; +import com.android.internal.gmscompat.GmsHooks; +import com.android.internal.gmscompat.GmsInfo; +import com.android.internal.util.ArrayUtils; + +/** + * This class provides helpers for GMS ("Google Mobile Services") compatibility. + *

+ * It allows the following apps to work as regular, unprivileged user apps: + *

    + *
  • GSF ("Google Services Framework")
  • + *
  • GmsCore ("Google Play services")
  • + *
  • Google Play Store
  • + *
  • GSA ("Google Search app", com.google.android.googlequicksearchbox)
  • + *
  • Apps that depend on the above
  • + *
+ *

+ * + * @hide + */ +@SystemApi +public final class GmsCompat { + private static final String TAG = "GmsCompat/Core"; + + private static boolean isGmsCompatEnabled; + private static int curPackageId; + private static boolean isGmsCore; + + private static boolean isEligibleForClientCompat; + private static boolean isInGmsCompatProcess; + + // Static only + private GmsCompat() { } + + public static boolean isEnabled() { + return isGmsCompatEnabled; + } + + /** @hide */ + public static boolean isDevBuild() { + return !Build.IS_USER; + } + + /** @hide */ + public static boolean isGmsCore() { + return curPackageId == PackageId.GMS_CORE; + } + + /** @hide */ + public static boolean isPlayStore() { + return curPackageId == PackageId.PLAY_STORE; + } + + /** @hide */ + public static boolean isGCarrierSettings() { + return curPackageId == PackageId.G_CARRIER_SETTINGS; + } + + public static boolean isAndroidAuto() { + return curPackageId == PackageId.ANDROID_AUTO; + } + + /** @hide */ + public static int getCurrentPackageId() { + return curPackageId; + } + + /** @hide */ + public static boolean isInGmsCompatProcess() { + return isInGmsCompatProcess; + } + + private static Context appContext; + + /** @hide */ + public static Context appContext() { + return appContext; + } + + /** + * Call from Instrumentation.newApplication() before Application class in instantiated to + * make sure init is completed in GMS processes before any of the app's code is executed. + * + * @hide + */ + public static void maybeEnable(Context appCtx) { + if (!Process.isApplicationUid(Process.myUid())) { + // note that isApplicationUid() returns false for processes of services that have + // 'android:isolatedProcess="true"' directive in AndroidManifest, which is fine, + // because they have no need for GmsCompat + return; + } + + appContext = appCtx; + ApplicationInfo appInfo = appCtx.getApplicationInfo(); + AppInfoExt appInfoExt = appInfo.ext(); + + curPackageId = appInfoExt.getPackageId(); + + if (isEnabledFor(appInfo)) { + String processName = Application.getProcessName(); + if (isGmsCompatProcess(processName)) { + isInGmsCompatProcess = true; + } else { + isGmsCompatEnabled = true; + GmsHooks.init(appCtx, appInfo.packageName, processName); + } + } + + isEligibleForClientCompat = !isGmsCore() && + appInfoExt.hasFlag(AppInfoExtFlag.HAS_GMSCORE_CLIENT_LIBRARY); + + if (isEligibleForClientCompat && GmsCompatLib.get() == null) { + GmsCompatLib.init(appCtx, Application.getProcessName()); + } + } + + public static boolean isEnabledFor(@NonNull ApplicationInfo app) { + return isEnabledFor(app.ext().getPackageId(), app.packageName, app.isPrivilegedApp()); + } + + /** @hide */ + public static boolean isEnabledFor(int packageId, String packageName, boolean isPrivileged) { + if (isDevBuild()) { + if (isTestPackage(packageName)) { + return true; + } + } + + if (isPrivileged) { + // don't enable GmsCompat for privileged GMS + return false; + } + + return switch (packageId) { + case + PackageId.GMS_CORE, + PackageId.PLAY_STORE, + PackageId.G_SEARCH_APP, + PackageId.ANDROID_AUTO, + PackageId.G_CARRIER_SETTINGS -> + true; + default -> + false; + }; + } + + /** @hide */ + public static boolean canBeEnabledFor(String pkgName) { + if (isDevBuild()) { + if (isTestPackage(pkgName)) { + return true; + } + } + + return switch (pkgName) { + case + PackageId.GMS_CORE_NAME, + PackageId.PLAY_STORE_NAME, + PackageId.G_SEARCH_APP_NAME, + PackageId.ANDROID_AUTO_NAME, + PackageId.G_CARRIER_SETTINGS_NAME -> + true; + default -> + false; + }; + + } + + /** @hide */ + public static boolean isGmsAppAndUnprivilegedProcess(@NonNull String packageName) { + if (!isEnabledFor(packageName, UserHandle.USER_CURRENT)) { + return false; + } + + Application a = AppGlobals.getInitialApplication(); + if (a == null) { + return false; + } + + ApplicationInfo ai = a.getApplicationInfo(); + if (ai == null) { + return false; + } + + return !ai.isPrivilegedApp(); + } + + public static boolean isEnabledFor(@NonNull String packageName, int userId) { + return isEnabledFor(packageName, userId, false); + } + + /** @hide */ + public static boolean isEnabledFor(@NonNull String packageName, int userId, boolean matchDisabledApp) { + if (isDevBuild()) { + if (isTestPackage(packageName, userId, matchDisabledApp)) { + return true; + } + } + + if (!canBeEnabledFor(packageName)) { + return false; + } + + if (userId == UserHandle.USER_CURRENT) { + userId = UserHandle.myUserId(); + } + + Context ctx = AppGlobals.getInitialApplication(); + if (ctx == null) { + return false; + } + + PackageManager pm = ctx.getPackageManager(); + + ApplicationInfo appInfo; + long token = Binder.clearCallingIdentity(); + try { + appInfo = pm.getApplicationInfoAsUser(packageName, 0, userId); + } catch (PackageManager.NameNotFoundException e) { + return false; + } finally { + Binder.restoreCallingIdentity(token); + } + + return isEnabledFor(appInfo, matchDisabledApp); + } + + /** @hide */ + public static boolean isEnabledFor(@Nullable ApplicationInfo app, boolean matchDisabledApp) { + if (app == null) { + return false; + } + if (!app.enabled && !matchDisabledApp) { + return false; + } + return isEnabledFor(app); + } + + private static volatile boolean cachedIsClientOfGmsCore; + + /** @hide */ + public static boolean isClientOfGmsCore() { + return isClientOfGmsCore(null); + } + + /** @hide */ + public static boolean isClientOfGmsCore(@Nullable ApplicationInfo gmsCoreAppInfo) { + if (cachedIsClientOfGmsCore) { + return true; + } + + if (!isEligibleForClientCompat) { + return false; + } + + boolean res = (gmsCoreAppInfo != null) ? + isEnabledFor(gmsCoreAppInfo) : + isEnabledFor(GmsInfo.PACKAGE_GMS_CORE, appContext().getUserId()); + + cachedIsClientOfGmsCore = res; + return res; + } + + public static boolean hasPermission(@NonNull String perm) { + Context ctx = appContext(); + + if (GmsHooks.config().shouldSpoofSelfPermissionCheck(perm)) { + // result of checkSelfPermission() below would be spoofed, ask the PackageManager directly + IPackageManager pm = ActivityThread.getPackageManager(); + try { + return pm.checkPermission(perm, ctx.getPackageName(), ctx.getUserId()) + == PackageManager.PERMISSION_GRANTED; + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + + return ctx.checkSelfPermission(perm) == PackageManager.PERMISSION_GRANTED; + } + + private static boolean isTestPackage(String packageName) { + String testPkgs = SystemProperties.get("persist.gmscompat_test_pkgs"); + return ArrayUtils.contains(testPkgs.split(","), packageName); + } + + /** @hide */ + public static boolean isTestPackage(String packageName, int userId, boolean matchDisabledApp) { + if (!isDevBuild()) { + return false; + } + if (!isTestPackage(packageName)) { + return false; + } + + IPackageManager pm = ActivityThread.getPackageManager(); + ApplicationInfo ai; + + long token = Binder.clearCallingIdentity(); + try { + ai = pm.getApplicationInfo(packageName, 0, userId); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } finally { + Binder.restoreCallingIdentity(token); + } + + if (ai == null) { + return false; + } + return ai.enabled || matchDisabledApp; + } + + public static void catchOrRethrow(@NonNull SecurityException se) { + if (isEnabled()) { + Log.d("GmsCompat", "caught SecurityException", se); + return; + } + throw se; + } + + private static final String GMSCOMPAT_PROCESS_SUFFIX = ":gmscompat"; + + /** @hide */ + public static String gmsCompatProcessNameForPackage(String pkgName) { + return pkgName + GMSCOMPAT_PROCESS_SUFFIX; + } + + /** @hide */ + public static boolean isGmsCompatProcess(String processName) { + return processName.endsWith(GMSCOMPAT_PROCESS_SUFFIX); + } +} diff --git a/core/java/android/app/compat/gms/GmsModuleHooks.java b/core/java/android/app/compat/gms/GmsModuleHooks.java new file mode 100644 index 0000000000000..540e15962b759 --- /dev/null +++ b/core/java/android/app/compat/gms/GmsModuleHooks.java @@ -0,0 +1,132 @@ +/* + * Copyright (C) 2022 GrapheneOS + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package android.app.compat.gms; + +import android.Manifest; +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SuppressLint; +import android.annotation.SystemApi; +import android.app.Activity; +import android.bluetooth.BluetoothAdapter; +import android.content.Intent; +import android.os.Build; +import android.os.RemoteException; +import android.provider.Settings; +import android.util.Log; + +import com.android.internal.gmscompat.GmsCompatApp; +import com.android.internal.gmscompat.GmsHooks; +import com.android.internal.gmscompat.StubDef; +import com.android.internal.gmscompat.util.GmcActivityUtils; + +/** + * Hooks that are accessed from APEX modules. + * + * @hide + */ +@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) +public class GmsModuleHooks { + private static final String TAG = "GmsCompat/MHooks"; + + // BluetoothAdapter#enable() + // BluetoothAdapter#enableBLE() + @SuppressLint("AutoBoxing") + @Nullable + // returns null if hook wasn't applied, otherwise returns boxed return value for the original method + public static Boolean enableBluetoothAdapter() { + if (!GmsCompat.isGmsCore()) { + // others handle this themselves + return null; + } + + Activity activity = GmcActivityUtils.getMostRecentVisibleActivity(); + + if (activity != null) { + if (GmsCompat.hasPermission(Manifest.permission.BLUETOOTH_CONNECT)) { + activity.startActivity(new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE)); + } else { + try { + GmsCompatApp.iGms2Gca().showGmsCoreMissingNearbyDevicesPermissionGeneric(); + } catch (RemoteException e) { + GmsCompatApp.callFailed(e); + } + } + } // else don't bother the user + + return Boolean.TRUE; + } + + // BluetoothAdapter#setScanMode() + public static void makeBluetoothAdapterDiscoverable() { + // don't use BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE intent here, this method is often + // called at a time when the user wouldn't expect to see it + Log.d(TAG, "makeBluetoothAdapterDiscoverable", new Throwable()); + } + + // com.android.modules.utils.SynchronousResultReceiver.Result#getValue() + public static boolean interceptSynchronousResultReceiverException(@NonNull RuntimeException origException) { + if (!(origException instanceof SecurityException)) { + return false; + } + + // origException contains service-side stack trace, need to obtain an app-side one + var stackTrace = new Throwable(); + StubDef stub = StubDef.find(stackTrace.getStackTrace(), GmsHooks.config(), StubDef.FIND_MODE_SynchronousResultReceiver); + + if (stub == null) { + return false; + } + + if (stub.type != StubDef.DEFAULT) { + Log.d(TAG, "interceptSynchronousResultReceiverException: unexpected stub type " + stub.type, stackTrace); + return false; + } + + if (GmsCompat.isDevBuild()) { + Log.i(TAG, "intercepted " + origException, stackTrace); + } + + return true; + } + + @Nullable + public static String deviceConfigGetProperty(@NonNull String namespace, @NonNull String name) { + return GmsCompatApp.getString(GmsCompatApp.deviceConfigNamespace(namespace), name); + } + + public static boolean deviceConfigSetProperty(@NonNull String namespace, @NonNull String name, @Nullable String value) { + return GmsCompatApp.putString(GmsCompatApp.deviceConfigNamespace(namespace), name, value); + } + + public static boolean deviceConfigSetProperties(@NonNull android.provider.DeviceConfig.Properties properties) { + return GmsCompatApp.setProperties(properties); + } + + private GmsModuleHooks() {} + + // NfcAdapter#enable() + public static void enableNfc() { + Activity activity = GmcActivityUtils.getMostRecentVisibleActivity(); + if (activity != null) { + activity.runOnUiThread(() -> { + Intent i = new Intent(Settings.ACTION_NFC_SETTINGS); + activity.startActivity(i); + }); + } + } +} diff --git a/core/java/android/app/compat/gms/GmsUtils.java b/core/java/android/app/compat/gms/GmsUtils.java new file mode 100644 index 0000000000000..e7fa4b9378ad2 --- /dev/null +++ b/core/java/android/app/compat/gms/GmsUtils.java @@ -0,0 +1,20 @@ +package android.app.compat.gms; + +import android.annotation.NonNull; +import android.annotation.SystemApi; +import android.content.Intent; +import android.ext.PackageId; +import android.net.Uri; + +/** @hide */ +@SystemApi +public class GmsUtils { + + public static @NonNull Intent createAppPlayStoreIntent(@NonNull String pkgName) { + var i = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + pkgName)); + i.setPackage(PackageId.PLAY_STORE_NAME); + return i; + } + + private GmsUtils() {} +} diff --git a/core/java/android/app/usage/StorageStatsManager.java b/core/java/android/app/usage/StorageStatsManager.java index a4b17537f4b20..fc4455d6a04c5 100644 --- a/core/java/android/app/usage/StorageStatsManager.java +++ b/core/java/android/app/usage/StorageStatsManager.java @@ -24,6 +24,7 @@ import android.annotation.SystemService; import android.annotation.TestApi; import android.annotation.WorkerThread; +import android.app.compat.gms.GmsCompat; import android.content.Context; import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; @@ -35,6 +36,9 @@ import android.os.storage.CrateInfo; import android.os.storage.StorageManager; +import com.android.internal.gmscompat.GmsInfo; +import com.android.internal.gmscompat.PlayStoreHooks; + import java.io.File; import java.io.IOException; import java.util.Collection; @@ -207,6 +211,12 @@ public long getCacheBytes(String uuid) throws IOException { public @NonNull StorageStats queryStatsForPackage(@NonNull UUID storageUuid, @NonNull String packageName, @NonNull UserHandle user) throws PackageManager.NameNotFoundException, IOException { + if (GmsCompat.isPlayStore()) { + if (!GmsInfo.PACKAGE_PLAY_STORE.equals(packageName)) { + return PlayStoreHooks.queryStatsForPackage(packageName); + } + } + try { return mService.queryStatsForPackage(convert(storageUuid), packageName, user.getIdentifier(), mContext.getOpPackageName()); diff --git a/core/java/android/appwidget/AppWidgetHostView.java b/core/java/android/appwidget/AppWidgetHostView.java index df1028e9e04c4..b9b5c6a8bbc39 100644 --- a/core/java/android/appwidget/AppWidgetHostView.java +++ b/core/java/android/appwidget/AppWidgetHostView.java @@ -20,7 +20,6 @@ import android.annotation.Nullable; import android.app.Activity; import android.app.ActivityOptions; -import android.app.LoadedApk; import android.compat.annotation.UnsupportedAppUsage; import android.content.ComponentName; import android.content.Context; @@ -753,9 +752,6 @@ public void onViewDataChanged(int viewId) { */ protected Context getRemoteContextEnsuringCorrectCachedApkPath() { try { - ApplicationInfo expectedAppInfo = mInfo.providerInfo.applicationInfo; - LoadedApk.checkAndUpdateApkPaths(expectedAppInfo); - // Return if cloned successfully, otherwise default Context newContext = mContext.createApplicationContext( mInfo.providerInfo.applicationInfo, Context.CONTEXT_RESTRICTED); diff --git a/core/java/android/content/ContentProvider.java b/core/java/android/content/ContentProvider.java index 385d6cfd14a0f..560f627fe84a8 100644 --- a/core/java/android/content/ContentProvider.java +++ b/core/java/android/content/ContentProvider.java @@ -32,6 +32,7 @@ import android.annotation.SystemApi; import android.annotation.TestApi; import android.app.AppOpsManager; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.pm.PackageManager; import android.content.pm.PathPermission; @@ -938,8 +939,35 @@ private int checkPermission(String permission, if (Binder.getCallingPid() == Process.myPid()) { return PermissionChecker.PERMISSION_GRANTED; } + AttributionSource selfAttributionSource = getContext().getAttributionSource(); + if (GmsCompat.isAndroidAuto()) { + if (Manifest.permission.RECORD_AUDIO.equals(permission)) { + int deviceId = selfAttributionSource.getDeviceId(); + if (deviceId != Context.DEVICE_ID_DEFAULT) { + // RECORD_AUDIO is a device-aware permission, but there's currently no way to + // grant it in the UI for non-default deviceId. This leads to permission denial + // when Google app tries to access car microphone data provider in Android Auto. + // + // This issue doesn't affect fully privileged Android Auto because it has the + // privileged UPDATE_APP_OPS_STATS permissions, which makes the OS use a + // different codepath for permission checks that use a chained AttributionSource. + selfAttributionSource = new AttributionSource( + selfAttributionSource.getUid(), + selfAttributionSource.getPid(), + selfAttributionSource.getPackageName(), + selfAttributionSource.getAttributionTag(), + selfAttributionSource.getToken(), + selfAttributionSource.getRenouncedPermissions().toArray(new String[0]), + Context.DEVICE_ID_DEFAULT, + selfAttributionSource.getNext() + ); + Log.d("GmsCompat", "replaced AttributionSource deviceId (" + + deviceId + ") with default deviceId in " + getClass().getName()); + } + } + } return PermissionChecker.checkPermissionForDataDeliveryFromDataSource(getContext(), - permission, -1, new AttributionSource(getContext().getAttributionSource(), + permission, -1, new AttributionSource(selfAttributionSource, attributionSource), /*message*/ null); } @@ -2754,7 +2782,8 @@ public void dump(FileDescriptor fd, PrintWriter writer, String[] args) { writer.println("nothing to dump"); } - private void validateIncomingAuthority(String authority) throws SecurityException { + /** @hide */ + protected void validateIncomingAuthority(String authority) throws SecurityException { if (!matchesOurAuthorities(getAuthorityWithoutUserId(authority))) { String message = "The authority " + authority + " does not match the one of the " + "contentProvider: "; diff --git a/core/java/android/content/ContentProviderClient.java b/core/java/android/content/ContentProviderClient.java index 6b6ac03db46fc..f06fd3e956d68 100644 --- a/core/java/android/content/ContentProviderClient.java +++ b/core/java/android/content/ContentProviderClient.java @@ -21,6 +21,7 @@ import android.annotation.Nullable; import android.annotation.RequiresPermission; import android.annotation.SystemApi; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.res.AssetFileDescriptor; import android.database.CrossProcessCursorWrapper; @@ -40,6 +41,7 @@ import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.gmscompat.GmsHooks; import dalvik.system.CloseGuard; @@ -196,6 +198,13 @@ private void afterRemote() { final Cursor cursor = mContentProvider.query( mAttributionSource, uri, projection, queryArgs, remoteCancellationSignal); + if (GmsCompat.isEnabled()) { + Cursor override = GmsHooks.maybeModifyQueryResult(uri, projection, queryArgs, cursor); + if (override != null) { + // original cursor is closed if it wasn't null + return override; + } + } if (cursor == null) { return null; } diff --git a/core/java/android/content/ContentResolver.java b/core/java/android/content/ContentResolver.java index 8a3ac3f67834e..39978c82e1212 100644 --- a/core/java/android/content/ContentResolver.java +++ b/core/java/android/content/ContentResolver.java @@ -31,6 +31,7 @@ import android.app.ActivityThread; import android.app.AppGlobals; import android.app.UriGrantsManager; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; @@ -71,6 +72,11 @@ import android.util.SparseArray; import com.android.internal.annotations.GuardedBy; +import com.android.internal.app.ContentProviderRedirector; +import com.android.internal.gmscompat.GmsCompatApp; +import com.android.internal.gmscompat.GmsHooks; +import com.android.internal.gmscompat.PlayStoreHooks; +import com.android.internal.gmscompat.dynamite.GmsDynamiteClientHooks; import com.android.internal.util.MimeIconUtils; import dalvik.system.CloseGuard; @@ -1241,6 +1247,10 @@ protected Uri getResultFromBundle(Bundle result) { queryArgs, remoteCancellationSignal); } if (qCursor == null) { + if (GmsCompat.isEnabled()) { + return GmsHooks.maybeModifyQueryResult(uri, projection, queryArgs, null); + } + return null; } @@ -1255,12 +1265,27 @@ protected Uri getResultFromBundle(Bundle result) { final CursorWrapperInner wrapper = new CursorWrapperInner(qCursor, provider); stableProvider = null; qCursor = null; + + if (GmsCompat.isEnabled()) { + Cursor modified = GmsHooks.maybeModifyQueryResult(uri, projection, queryArgs, wrapper); + if (modified != null) { + return modified; + } + } + return wrapper; } catch (RemoteException e) { // Arbitrary and not worth documenting, as Activity // Manager will kill this process shortly anyway. return null; - } finally { + } catch (SecurityException se) { + if (GmsCompat.isEnabled()) { + Log.d("GmsCompat", "", se); + return null; + } + throw se; + } + finally { if (qCursor != null) { qCursor.close(); } @@ -2193,6 +2218,9 @@ public OpenResourceIdResult getResourceId(Uri uri) throws FileNotFoundException public final @Nullable Uri insert(@RequiresPermission.Write @NonNull Uri url, @Nullable ContentValues values, @Nullable Bundle extras) { Objects.requireNonNull(url, "url"); + if (GmsCompat.isEnabled()) { + GmsHooks.filterContentValues(url, values); + } try { if (mWrapped != null) return mWrapped.insert(url, values, extras); @@ -2490,6 +2518,8 @@ public final IContentProvider acquireProvider(Uri uri) { } final String auth = uri.getAuthority(); if (auth != null) { + GmsDynamiteClientHooks.maybeInit(auth); + return acquireProvider(mContext, auth); } return null; @@ -2539,6 +2569,8 @@ public final IContentProvider acquireUnstableProvider(Uri uri) { } String auth = uri.getAuthority(); if (auth != null) { + GmsDynamiteClientHooks.maybeInit(auth); + return acquireUnstableProvider(mContext, uri.getAuthority()); } return null; @@ -2568,7 +2600,18 @@ public final IContentProvider acquireUnstableProvider(String name) { */ public final @Nullable ContentProviderClient acquireContentProviderClient(@NonNull Uri uri) { Objects.requireNonNull(uri, "uri"); - IContentProvider provider = acquireProvider(uri); + + IContentProvider provider; + try { + provider = acquireProvider(uri); + } catch (SecurityException se) { + if (GmsCompat.isEnabled()) { + Log.d("GmsCompat", "uri: " + uri, se); + return null; + } + throw se; + } + if (provider != null) { return new ContentProviderClient(this, provider, uri.getAuthority(), true); } @@ -2724,11 +2767,27 @@ public final void registerContentObserverAsUser(@NonNull Uri uri, @UnsupportedAppUsage public final void registerContentObserver(Uri uri, boolean notifyForDescendents, ContentObserver observer, @UserIdInt int userHandle) { + if (ContentProviderRedirector.shouldSkipRegisterContentObserver(uri, notifyForDescendents, + observer, userHandle)) { + return; + } + + if (GmsCompat.isEnabled()) { + if (GmsCompatApp.registerObserver(uri, observer)) { + return; + } + } + try { getContentService().registerContentObserver(uri, notifyForDescendents, observer.getContentObserver(), userHandle, mTargetSdkVersion); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); + } catch (SecurityException se) { + if ("com.google.android.gsf.gservices".equals(uri.getAuthority())) { + return; + } + throw se; } } @@ -2740,6 +2799,17 @@ public final void registerContentObserver(Uri uri, boolean notifyForDescendents, */ public final void unregisterContentObserver(@NonNull ContentObserver observer) { Objects.requireNonNull(observer, "observer"); + + if (ContentProviderRedirector.shouldSkipUnregisterContentObserver(observer)) { + return; + } + + if (GmsCompat.isEnabled()) { + if (GmsCompatApp.unregisterObserver(observer)) { + return; + } + } + try { IContentObserver contentObserver = observer.releaseContentObserver(); if (contentObserver != null) { @@ -2834,6 +2904,11 @@ public void notifyChange(@NonNull Uri uri, @Nullable ContentObserver observer, public void notifyChange(@NonNull Uri uri, @Nullable ContentObserver observer, @NotifyFlags int flags) { Objects.requireNonNull(uri, "uri"); + + if (ContentProviderRedirector.shouldSkipNotifyChange(uri, observer, flags)) { + return; + } + notifyChange( ContentProvider.getUriWithoutUserId(uri), observer, @@ -2881,6 +2956,10 @@ public void notifyChange(@NonNull Collection uris, @Nullable ContentObserve // Cluster based on user ID final SparseArray> clusteredByUser = new SparseArray<>(); for (Uri uri : uris) { + if (ContentProviderRedirector.shouldSkipNotifyChange(uri, observer, flags)) { + continue; + } + final int userId = ContentProvider.getUserIdFromUri(uri, mContext.getUserId()); ArrayList list = clusteredByUser.get(userId); if (list == null) { diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java index 3d75423edfa90..f6a5c963c10a7 100644 --- a/core/java/android/content/Intent.java +++ b/core/java/android/content/Intent.java @@ -41,6 +41,7 @@ import android.app.ActivityThread; import android.app.AppGlobals; import android.app.StatusBarManager; +import android.app.compat.gms.GmsCompat; import android.bluetooth.BluetoothDevice; import android.compat.annotation.UnsupportedAppUsage; import android.content.pm.ActivityInfo; @@ -78,6 +79,7 @@ import android.provider.MediaStore; import android.provider.OpenableColumns; import android.service.chooser.AdditionalContentContract; +import android.provider.Settings; import android.service.chooser.ChooserAction; import android.service.chooser.ChooserResult; import android.telecom.PhoneAccount; @@ -1903,6 +1905,13 @@ public static Intent createChooser(Intent target, CharSequence title, IntentSend public static final String EXTRA_UNINSTALL_ALL_USERS = "android.intent.extra.UNINSTALL_ALL_USERS"; + /** + * Specify whether the "More options" button should be shown in the package uninstallation UI. + * @hide + */ + public static final String EXTRA_UNINSTALL_SHOW_MORE_OPTIONS_BUTTON + = "android.intent.extra.UNINSTALL_SHOW_MORE_OPTIONS_BUTTON"; + /** * A string that associates with a metadata entry, indicating the last run version of the * platform that was setup. @@ -10100,6 +10109,14 @@ public boolean isExcludingStopped() { * @see #resolveActivityInfo */ public ComponentName resolveActivity(@NonNull PackageManager pm) { + if (GmsCompat.isEnabled()) { + if (Settings.ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY.equals(getAction())) { + if (!GmsCompat.hasPermission(Manifest.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK)) { + return null; + } + } + } + if (mComponent != null) { return mComponent; } diff --git a/core/java/android/content/IntentFilter.java b/core/java/android/content/IntentFilter.java index e895d7be1102a..5cdc4aea3968a 100644 --- a/core/java/android/content/IntentFilter.java +++ b/core/java/android/content/IntentFilter.java @@ -815,6 +815,15 @@ public final void addAction(String action) { mActions.add(action.intern()); } + /** @hide */ + public final boolean replaceAction(String action, String replacement) { + if (mActions.remove(action)) { + mActions.add(replacement); + return true; + } + return false; + } + /** * Return the number of actions in the filter. */ diff --git a/core/java/android/content/pm/AppPermissionUtils.java b/core/java/android/content/pm/AppPermissionUtils.java new file mode 100644 index 0000000000000..6d3a18f6359eb --- /dev/null +++ b/core/java/android/content/pm/AppPermissionUtils.java @@ -0,0 +1,115 @@ +/* + * Copyright (C) 2022 GrapheneOS + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package android.content.pm; + +import android.annotation.NonNull; +import android.annotation.SystemApi; +import android.app.compat.gms.GmsCompat; + +import com.android.internal.app.ContactScopes; +import com.android.internal.app.StorageScopesAppHooks; +import com.android.internal.gmscompat.GmsHooks; + +/** @hide */ +@SystemApi +public class AppPermissionUtils { + + // If the list of spoofed permissions changes at runtime, make sure to invalidate the permission + // check cache, it's keyed on the PermissionManager.CACHE_KEY_PACKAGE_INFO_CACHE system property. + // Updates of GosPackageState invalidate this cache automatically. + // + // android.permission.PermissionManager#checkPermissionUncached + /** @hide */ + public static boolean shouldSpoofSelfCheck(String permName) { + if (StorageScopesAppHooks.shouldSpoofSelfPermissionCheck(permName)) { + return true; + } + + if (SrtPermissions.shouldSpoofSelfCheck(permName)) { + return true; + } + + if (ContactScopes.shouldSpoofSelfPermissionCheck(permName)) { + return true; + } + + if (GmsCompat.isEnabled()) { + if (GmsHooks.config().shouldSpoofSelfPermissionCheck(permName)) { + return true; + } + } + + return false; + } + + // android.app.AppOpsManager#checkOpNoThrow + // android.app.AppOpsManager#noteOpNoThrow + // android.app.AppOpsManager#noteProxyOpNoThrow + // android.app.AppOpsManager#unsafeCheckOpRawNoThrow + /** @hide */ + public static boolean shouldSpoofSelfAppOpCheck(int op) { + if (StorageScopesAppHooks.shouldSpoofSelfAppOpCheck(op)) { + return true; + } + + if (ContactScopes.shouldSpoofSelfAppOpCheck(op)) { + return true; + } + + return false; + } + + public static boolean shouldSkipPermissionRequestDialog(@NonNull GosPackageState ps, @NonNull String perm) { + // Don't check whether the app actually declared this permission: + // app can request a permission that isn't declared in its AndroidManifest and if that + // permission is split into multiple permissions (based on app's targetSdk), and at least + // one of of those split permissions is present in manifest, then permission prompt would be + // shown anyway. + return getSpoofablePermissionDflag(ps, perm, true) != 0; + } + + // Controls spoofing of Activity#onRequestPermissionsResult() callback + public static boolean shouldSpoofPermissionRequestResult(@NonNull GosPackageState ps, @NonNull String perm) { + int dflag = getSpoofablePermissionDflag(ps, perm, false); + return dflag != 0 && ps.hasDerivedFlag(dflag); + } + + private static int getSpoofablePermissionDflag(GosPackageState ps, String perm, boolean forRequestDialog) { + if (ps.hasFlag(GosPackageStateFlag.STORAGE_SCOPES_ENABLED)) { + int permDflag = StorageScopesAppHooks.getSpoofablePermissionDflag(perm); + if (permDflag != 0) { + if (!forRequestDialog) { + if (StorageScopesAppHooks.shouldSkipPermissionCheckSpoof(ps.derivedFlags, permDflag)) { + return 0; + } + } + return permDflag; + } + } + + if (ps.hasFlag(GosPackageStateFlag.CONTACT_SCOPES_ENABLED)) { + int permDflag = ContactScopes.getSpoofablePermissionDflag(perm); + if (permDflag != 0) { + return permDflag; + } + } + + return 0; + } + + private AppPermissionUtils() {} +} diff --git a/core/java/android/content/pm/ApplicationInfo.java b/core/java/android/content/pm/ApplicationInfo.java index 94784227049d8..caf3850518742 100644 --- a/core/java/android/content/pm/ApplicationInfo.java +++ b/core/java/android/content/pm/ApplicationInfo.java @@ -31,6 +31,7 @@ import android.content.Context; import android.content.pm.PackageManager.NameNotFoundException; import android.content.res.Resources; +import android.ext.AppInfoExt; import android.graphics.drawable.Drawable; import android.os.Build; import android.os.Environment; @@ -2047,6 +2048,7 @@ public ApplicationInfo() { public ApplicationInfo(ApplicationInfo orig) { super(orig); + ext = orig.ext; taskAffinity = orig.taskAffinity; permission = orig.permission; mKnownActivityEmbeddingCerts = orig.mKnownActivityEmbeddingCerts; @@ -2138,6 +2140,7 @@ public void writeToParcel(Parcel dest, int parcelableFlags) { return; } super.writeToParcel(dest, parcelableFlags); + ext.writeToParcel(dest, parcelableFlags); dest.writeString8(taskAffinity); dest.writeString8(permission); dest.writeString8(processName); @@ -2245,6 +2248,7 @@ public ApplicationInfo[] newArray(int size) { @SuppressWarnings("unchecked") private ApplicationInfo(Parcel source) { super(source); + ext = AppInfoExt.CREATOR.createFromParcel(source); taskAffinity = source.readString8(); permission = source.readString8(); processName = source.readString8(); @@ -3018,4 +3022,17 @@ public void setEnableOnBackInvokedCallback(boolean isEnable) { privateFlagsExt &= ~PRIVATE_FLAG_EXT_ENABLE_ON_BACK_INVOKED_CALLBACK; } } + + private AppInfoExt ext = AppInfoExt.DEFAULT; + + /** @hide */ + public void setExt(AppInfoExt ext) { + this.ext = ext; + } + + /** @hide */ + @SystemApi + public @NonNull AppInfoExt ext() { + return ext; + } } diff --git a/core/java/android/content/pm/CrossProfileApps.java b/core/java/android/content/pm/CrossProfileApps.java index bf51f00e84465..0a50dcb2d9d7c 100644 --- a/core/java/android/content/pm/CrossProfileApps.java +++ b/core/java/android/content/pm/CrossProfileApps.java @@ -32,6 +32,7 @@ import android.app.ActivityOptions; import android.app.AppOpsManager.Mode; import android.app.admin.DevicePolicyManager; +import android.app.compat.gms.GmsCompat; import android.content.ComponentName; import android.content.Context; import android.content.Intent; @@ -310,6 +311,10 @@ public void startActivity(@NonNull ComponentName component, @NonNull UserHandle * @see UserManager#getUserProfiles() */ public @NonNull List getTargetUserProfiles() { + if (GmsCompat.isEnabled()) { + return java.util.Collections.emptyList(); + } + try { return mService.getTargetUserProfiles(mContext.getPackageName()); } catch (RemoteException ex) { @@ -479,6 +484,10 @@ private String getDefaultProfileSwitchingLabel(boolean isManagedProfile, String * @return true if the calling package can request to interact across profiles. */ public boolean canRequestInteractAcrossProfiles() { + if (GmsCompat.isEnabled()) { + return false; + } + try { return mService.canRequestInteractAcrossProfiles(mContext.getPackageName()); } catch (RemoteException ex) { @@ -510,6 +519,10 @@ public boolean canRequestInteractAcrossProfiles() { * calling UID. */ public boolean canInteractAcrossProfiles() { + if (GmsCompat.isEnabled()) { + return false; + } + try { return mService.canInteractAcrossProfiles(mContext.getPackageName()); } catch (RemoteException ex) { diff --git a/core/java/android/content/pm/GosPackageState.aidl b/core/java/android/content/pm/GosPackageState.aidl new file mode 100644 index 0000000000000..c7a48e85d0783 --- /dev/null +++ b/core/java/android/content/pm/GosPackageState.aidl @@ -0,0 +1,3 @@ +package android.content.pm; + +parcelable GosPackageState; diff --git a/core/java/android/content/pm/GosPackageState.java b/core/java/android/content/pm/GosPackageState.java new file mode 100644 index 0000000000000..91daf0b273226 --- /dev/null +++ b/core/java/android/content/pm/GosPackageState.java @@ -0,0 +1,344 @@ +package android.content.pm; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SuppressLint; +import android.annotation.SystemApi; +import android.annotation.UserIdInt; +import android.app.ActivityThread; +import android.app.PropertyInvalidatedCache; +import android.content.Context; +import android.ext.DerivedPackageFlag; +import android.os.Parcel; +import android.os.Parcelable; +import android.os.RemoteException; +import android.os.UserHandle; +import android.permission.PermissionManager; + +import java.util.Arrays; +import java.util.Objects; + +/** + * GrapheneOS-specific persistent package state, stored in per-user PackageUserState. + *

+ * GosPackageState has a special handling for sharedUid packages. All packages in a given sharedUid + * share the same GosPackageState. This was done because in some cases (e.g. when an app accesses + * MediaProvider via FUSE) there's no way to retrieve the package name, only UID is available. + * Manually merging GosPackageStates of sharedUid members would be too complex. + * + * @hide + */ +@SystemApi +public final class GosPackageState implements Parcelable { + /** @hide */ public final long flagStorage1; + // flags that have package-specific meaning + /** @hide */ public final long packageFlagStorage; + @Nullable + public final byte[] storageScopes; + @Nullable + public final byte[] contactScopes; + /** + * These flags are lazily derived from persistent state. They are intentionally skipped from + * equals() and hashCode(). derivedFlags are stored here for performance reasons, to avoid + * performing separate IPC to fetch them. + *

+ * Note that calculation of derived flags is skipped unless a GosPackageState flag is set that + * depends on derived flags, @see {@link com.android.server.pm.GosPackageStatePmHooks#maybeDeriveFlags} + *

+ * If package is part of sharedUid, then its derivedFlags are calculated across all + * sharedUid member packages. See GosPackageState javadoc for reasoning. + * @hide + */ + @DerivedPackageFlag.Enum public int derivedFlags; + + /** @hide */ public static final GosPackageState DEFAULT = createEmpty(); + + /** + * A sentinel value that is returned when the package is not installed (e.g. when it was racily + * uninstalled) and when the caller doesn't have access to the actual GosPackageState. + * + * @hide + */ + public static final GosPackageState NONE = createEmpty(); + + /** @hide */ + public GosPackageState(long flagStorage1, long packageFlagStorage, + @Nullable byte[] storageScopes, @Nullable byte[] contactScopes) { + this.flagStorage1 = flagStorage1; + this.packageFlagStorage = packageFlagStorage; + this.storageScopes = storageScopes; + this.contactScopes = contactScopes; + } + + private static GosPackageState createEmpty() { + return new GosPackageState(0L, 0L, null, null); + } + + private static final int TYPE_NONE = 0; + private static final int TYPE_DEFAULT = 1; + private static final int TYPE_REGULAR = 2; + + @Override + public void writeToParcel(@NonNull Parcel dest, int flags) { + int type = TYPE_REGULAR; + if (this == DEFAULT) { + type = TYPE_DEFAULT; + } else if (this == NONE) { + type = TYPE_NONE; + } + dest.writeInt(type); + if (type != TYPE_REGULAR) { + return; + } + dest.writeLong(this.flagStorage1); + dest.writeLong(this.packageFlagStorage); + dest.writeByteArray(storageScopes); + dest.writeByteArray(contactScopes); + dest.writeInt(derivedFlags); + } + + @NonNull + public static final Creator CREATOR = new Creator<>() { + @Override + public GosPackageState createFromParcel(Parcel in) { + switch (in.readInt()) { + case TYPE_DEFAULT: return DEFAULT; + case TYPE_NONE: return NONE; + }; + var res = new GosPackageState(in.readLong(), in.readLong(), + in.createByteArray(), in.createByteArray()); + res.derivedFlags = in.readInt(); + return res; + } + + @Override + public GosPackageState[] newArray(int size) { + return new GosPackageState[size]; + } + }; + + @Override + public int hashCode() { + return Long.hashCode(flagStorage1) + Arrays.hashCode(storageScopes) + Arrays.hashCode(contactScopes) + Long.hashCode(packageFlagStorage); + } + + @Override + public boolean equals(Object obj) { + if (!(obj instanceof GosPackageState o)) { + return false; + } + if (this == o) { + return true; + } + if (flagStorage1 != o.flagStorage1) { + return false; + } + if (!Arrays.equals(storageScopes, o.storageScopes)) { + return false; + } + if (!Arrays.equals(contactScopes, o.contactScopes)) { + return false; + } + if (packageFlagStorage != o.packageFlagStorage) { + return false; + } + return true; + } + + @Override + public int describeContents() { + return 0; + } + + public boolean hasFlag(@GosPackageStateFlag.Enum int flag) { + return (this.flagStorage1 & (1L << flag)) != 0; + } + + public boolean hasPackageFlag(int packageFlag) { + return (this.packageFlagStorage & (1L << packageFlag)) != 0; + } + + public boolean hasDerivedFlag(@DerivedPackageFlag.Enum int flag) { + return (derivedFlags & flag) != 0; + } + + public boolean hasDerivedFlags(@DerivedPackageFlag.Enum int flags) { + return (derivedFlags & flags) == flags; + } + + /** @see #NONE */ + public boolean isNone() { + return this == NONE; + } + + @NonNull + public static GosPackageState getForSelf(@NonNull Context context) { + return get(context.getPackageName(), context.getUserId()); + } + + @NonNull + @SuppressLint("UserHandleName") + public static GosPackageState get(@NonNull String packageName, @NonNull UserHandle user) { + return get(packageName, user.getIdentifier()); + } + + @NonNull + public static GosPackageState get(@NonNull String packageName, @UserIdInt int userId) { + return Objects.requireNonNull(sCache.query(new CacheQuery(packageName, userId))); + } + + private record CacheQuery(String packageName, int userId) {} + + // invalidated by PackageManager#invalidatePackageInfoCache() (e.g. when + // PackageManagerService#setGosPackageState succeeds) + private static volatile PropertyInvalidatedCache sCache = + new PropertyInvalidatedCache<>(256, PermissionManager.CACHE_KEY_PACKAGE_INFO_CACHE, + "getGosPackageState") { + @Override + public GosPackageState recompute(CacheQuery query) { + try { + return ActivityThread.getPackageManager().getGosPackageState(query.packageName, query.userId); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + }; + + @NonNull + @SuppressLint("UserHandleName") + public Editor createEditor(@NonNull String packageName, @NonNull UserHandle user) { + return createEditor(packageName, user.getIdentifier()); + } + + @NonNull + public Editor createEditor(@NonNull String packageName, @UserIdInt int userId) { + return new Editor(this, packageName, userId); + } + + @NonNull + @SuppressLint("UserHandleName") + public static Editor edit(@NonNull String packageName, @NonNull UserHandle user) { + return edit(packageName, user.getIdentifier()); + } + + @NonNull + public static Editor edit(@NonNull String packageName, @UserIdInt int userId) { + return GosPackageState.get(packageName, userId).createEditor(packageName, userId); + } + + /** @hide */ public static final int EDITOR_FLAG_KILL_UID_AFTER_APPLY = 1; + /** @hide */ public static final int EDITOR_FLAG_NOTIFY_UID_AFTER_APPLY = 1 << 1; + + public static class Editor { + private final String packageName; + private final int userId; + private long flagStorage1; + private long packageFlagStorage; + private byte[] storageScopes; + private byte[] contactScopes; + private int editorFlags; + + /** @hide */ + public Editor(GosPackageState s, String packageName, int userId) { + this.packageName = packageName; + this.userId = userId; + this.flagStorage1 = s.flagStorage1; + this.packageFlagStorage = s.packageFlagStorage; + this.storageScopes = s.storageScopes; + this.contactScopes = s.contactScopes; + } + + @NonNull + public Editor setFlagState(@GosPackageStateFlag.Enum int flag, boolean state) { + if (state) { + addFlag(flag); + } else { + clearFlag(flag); + } + return this; + } + + @NonNull + public Editor addFlag(@GosPackageStateFlag.Enum int flag) { + this.flagStorage1 |= (1L << flag); + return this; + } + + @NonNull + public Editor clearFlag(@GosPackageStateFlag.Enum int flag) { + this.flagStorage1 &= ~(1L << flag); + return this; + } + + @NonNull + public Editor addPackageFlag(int flag) { + this.packageFlagStorage |= (1L << flag); + return this; + } + + @NonNull + public Editor clearPackageFlag(int flag) { + this.packageFlagStorage &= ~(1L << flag); + return this; + } + + @NonNull + public Editor setPackageFlagState(int flag, boolean state) { + if (state) { + addPackageFlag(flag); + } else { + clearPackageFlag(flag); + } + return this; + } + + @NonNull + public Editor setStorageScopes(@Nullable byte[] storageScopes) { + this.storageScopes = storageScopes; + return this; + } + + @NonNull + public Editor setContactScopes(@Nullable byte[] contactScopes) { + this.contactScopes = contactScopes; + return this; + } + + @NonNull + public Editor killUidAfterApply() { + return setKillUidAfterApply(true); + } + + @NonNull + public Editor setKillUidAfterApply(boolean v) { + if (v) { + this.editorFlags |= EDITOR_FLAG_KILL_UID_AFTER_APPLY; + } else { + this.editorFlags &= ~EDITOR_FLAG_KILL_UID_AFTER_APPLY; + } + return this; + } + + @NonNull + public Editor setNotifyUidAfterApply(boolean v) { + if (v) { + this.editorFlags |= EDITOR_FLAG_NOTIFY_UID_AFTER_APPLY; + } else { + this.editorFlags &= ~EDITOR_FLAG_NOTIFY_UID_AFTER_APPLY; + } + return this; + } + + // Returns true if the update was successfully applied and is scheduled to be written back + // to storage. Actual writeback is performed asynchronously. + public boolean apply() { + try { + return ActivityThread.getPackageManager().setGosPackageState(packageName, userId, + new GosPackageState(flagStorage1, packageFlagStorage, storageScopes, contactScopes), + editorFlags); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + } +} diff --git a/core/java/android/content/pm/GosPackageStateFlag.java b/core/java/android/content/pm/GosPackageStateFlag.java new file mode 100644 index 0000000000000..21abe5f9398d0 --- /dev/null +++ b/core/java/android/content/pm/GosPackageStateFlag.java @@ -0,0 +1,70 @@ +package android.content.pm; + +import android.annotation.IntDef; +import android.annotation.SystemApi; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +/** @hide */ +@SystemApi +public interface GosPackageStateFlag { + /* SysApi */ int STORAGE_SCOPES_ENABLED = 0; + /** @hide */ int ALLOW_ACCESS_TO_OBB_DIRECTORY = 1; + // flags 2, 3, 4 were used previously, do not reuse them + /* SysApi */ int CONTACT_SCOPES_ENABLED = 5; + /** @hide */ int BLOCK_NATIVE_DEBUGGING_NON_DEFAULT = 6; + /** @hide */ int BLOCK_NATIVE_DEBUGGING = 7; + /** @hide */ int BLOCK_NATIVE_DEBUGGING_SUPPRESS_NOTIF = 8; + /** @hide */ int RESTRICT_MEMORY_DYN_CODE_LOADING_NON_DEFAULT = 9; + /** @hide */ int RESTRICT_MEMORY_DYN_CODE_LOADING = 10; + /** @hide */ int RESTRICT_MEMORY_DYN_CODE_LOADING_SUPPRESS_NOTIF = 11; + /** @hide */ int RESTRICT_STORAGE_DYN_CODE_LOADING_NON_DEFAULT = 12; + /** @hide */ int RESTRICT_STORAGE_DYN_CODE_LOADING = 13; + /** @hide */ int RESTRICT_STORAGE_DYN_CODE_LOADING_SUPPRESS_NOTIF = 14; + /** @hide */ int RESTRICT_WEBVIEW_DYN_CODE_LOADING_NON_DEFAULT = 15; + /** @hide */ int RESTRICT_WEBVIEW_DYN_CODE_LOADING = 16; + /** @hide */ int USE_HARDENED_MALLOC_NON_DEFAULT = 17; + /** @hide */ int USE_HARDENED_MALLOC = 18; + /** @hide */ int USE_EXTENDED_VA_SPACE_NON_DEFAULT = 19; + /** @hide */ int USE_EXTENDED_VA_SPACE = 20; + /** @hide */ int FORCE_MEMTAG_NON_DEFAULT = 21; + /** @hide */ int FORCE_MEMTAG = 22; + /** @hide */ int FORCE_MEMTAG_SUPPRESS_NOTIF = 23; + /** @hide */ int ENABLE_EXPLOIT_PROTECTION_COMPAT_MODE = 24; + // flag 25 was used previously, do not reuse it + /** @hide */ int PLAY_INTEGRITY_API_USED_AT_LEAST_ONCE = 26; + /** @hide */ int SUPPRESS_PLAY_INTEGRITY_API_NOTIF = 27; + /** @hide */ int BLOCK_PLAY_INTEGRITY_API = 28; + + /** @hide */ + @IntDef(value = { + STORAGE_SCOPES_ENABLED, + ALLOW_ACCESS_TO_OBB_DIRECTORY, + CONTACT_SCOPES_ENABLED, + BLOCK_NATIVE_DEBUGGING_NON_DEFAULT, + BLOCK_NATIVE_DEBUGGING, + BLOCK_NATIVE_DEBUGGING_SUPPRESS_NOTIF, + RESTRICT_MEMORY_DYN_CODE_LOADING_NON_DEFAULT, + RESTRICT_MEMORY_DYN_CODE_LOADING, + RESTRICT_MEMORY_DYN_CODE_LOADING_SUPPRESS_NOTIF, + RESTRICT_STORAGE_DYN_CODE_LOADING_NON_DEFAULT, + RESTRICT_STORAGE_DYN_CODE_LOADING, + RESTRICT_STORAGE_DYN_CODE_LOADING_SUPPRESS_NOTIF, + RESTRICT_WEBVIEW_DYN_CODE_LOADING_NON_DEFAULT, + RESTRICT_WEBVIEW_DYN_CODE_LOADING, + USE_HARDENED_MALLOC_NON_DEFAULT, + USE_HARDENED_MALLOC, + USE_EXTENDED_VA_SPACE_NON_DEFAULT, + USE_EXTENDED_VA_SPACE, + FORCE_MEMTAG_NON_DEFAULT, + FORCE_MEMTAG, + FORCE_MEMTAG_SUPPRESS_NOTIF, + ENABLE_EXPLOIT_PROTECTION_COMPAT_MODE, + PLAY_INTEGRITY_API_USED_AT_LEAST_ONCE, + SUPPRESS_PLAY_INTEGRITY_API_NOTIF, + BLOCK_PLAY_INTEGRITY_API, + }) + @Retention(RetentionPolicy.SOURCE) + @interface Enum {} +} diff --git a/core/java/android/content/pm/IPackageInstaller.aidl b/core/java/android/content/pm/IPackageInstaller.aidl index 451c0e5e079ad..226a5d65e2d80 100644 --- a/core/java/android/content/pm/IPackageInstaller.aidl +++ b/core/java/android/content/pm/IPackageInstaller.aidl @@ -65,6 +65,9 @@ interface IPackageInstaller { @EnforcePermission("INSTALL_PACKAGES") void setPermissionsResult(int sessionId, boolean accepted); + @EnforcePermission("INSTALL_GRANT_RUNTIME_PERMISSIONS") + void updatePermissionStates(int sessionId, in String[] permissionNames, in int[] states); + void bypassNextStagedInstallerCheck(boolean value); void bypassNextAllowedApexUpdateCheck(boolean value); diff --git a/core/java/android/content/pm/IPackageInstallerSession.aidl b/core/java/android/content/pm/IPackageInstallerSession.aidl index 9f31aec537eee..9b58e3a9e86db 100644 --- a/core/java/android/content/pm/IPackageInstallerSession.aidl +++ b/core/java/android/content/pm/IPackageInstallerSession.aidl @@ -61,6 +61,7 @@ interface IPackageInstallerSession { int[] getChildSessionIds(); void addChildSessionId(in int sessionId); void removeChildSessionId(in int sessionId); + int getId(); int getParentSessionId(); boolean isStaged(); diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl index 9f898b823a766..5a92759317ca8 100644 --- a/core/java/android/content/pm/IPackageManager.aidl +++ b/core/java/android/content/pm/IPackageManager.aidl @@ -856,4 +856,21 @@ interface IPackageManager { String getPageSizeCompatWarningMessage(in String packageName); List getAllApexDirectories(); + + @nullable Bundle getExtraAppBindArgs(String packageName); + + void skipSpecialRuntimePermissionAutoGrantsForPackage(String packageName, int userId, in List permissions); + + android.content.pm.GosPackageState getGosPackageState(String packageName, int userId); + + boolean setGosPackageState(String packageName, int userId, in android.content.pm.GosPackageState updatedPs, int editorFlags); + + PackageInfo findPackage(String packageName, long minVersion, in Bundle validSignaturesSha256); + + boolean updateListOfBusyPackages(boolean add, in List packageNames, IBinder callerBinder); + + void updateSeInfo(String packageName); + + void sendBootCompletedBroadcastToPackage(String packageName, boolean includeStopped, + int userId); } diff --git a/core/java/android/content/pm/PackageInstaller.java b/core/java/android/content/pm/PackageInstaller.java index cd62573f6e4e1..6aadc86904979 100644 --- a/core/java/android/content/pm/PackageInstaller.java +++ b/core/java/android/content/pm/PackageInstaller.java @@ -48,6 +48,7 @@ import android.app.ActivityThread; import android.app.AppGlobals; import android.app.PendingIntent; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.BroadcastReceiver; import android.content.Context; @@ -76,6 +77,7 @@ import android.os.PersistableBundle; import android.os.RemoteCallback; import android.os.RemoteException; +import android.os.SystemClock; import android.os.SystemProperties; import android.os.UserHandle; import android.system.ErrnoException; @@ -84,8 +86,10 @@ import android.util.ArrayMap; import android.util.ArraySet; import android.util.ExceptionUtils; +import android.util.Log; import com.android.internal.content.InstallLocationUtils; +import com.android.internal.gmscompat.PlayStoreHooks; import com.android.internal.util.ArrayUtils; import com.android.internal.util.DataClass; import com.android.internal.util.IndentingPrintWriter; @@ -815,6 +819,10 @@ public PackageInstaller(IPackageInstaller installer, * session is finalized. IDs are not reused during a given boot. */ public int createSession(@NonNull SessionParams params) throws IOException { + if (GmsCompat.isPlayStore()) { + PlayStoreHooks.adjustSessionParams(params); + } + try { return mInstaller.createSession(params, mInstallerPackageName, mAttributionTag, mUserId); @@ -890,6 +898,16 @@ public void updateSessionAppLabel(int sessionId, @Nullable CharSequence appLabel * the session is invalid. */ public void abandonSession(int sessionId) { + if (GmsCompat.isPlayStore()) { + SessionInfo si = getSessionInfo(sessionId); + if (si != null && si.isCommitted()) { + // Play Store doesn't expect committed sessions to be waiting for confirmation from + // the user and tries to destroy them after ~10 minutes + Log.d("GmsCompat", "skipped PackageInstaller.abandonSession(), sessionId " + sessionId); + return; + } + } + try { mInstaller.abandonSession(sessionId); } catch (RemoteException e) { @@ -1178,6 +1196,16 @@ public void setPermissionsResult(int sessionId, boolean accepted) { } } + /** @hide */ + @RequiresPermission(Manifest.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS) + public void updatePermissionStates(int sessionId, String[] permissionNames, int[] states) { + try { + mInstaller.updatePermissionStates(sessionId, permissionNames, states); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + /** * Check if install constraints are satisfied for the given packages. * @@ -1984,6 +2012,10 @@ public void onChecksumsReady(List checksums) * @see #requestUserPreapproval */ public void commit(@NonNull IntentSender statusReceiver) { + if (GmsCompat.isPlayStore()) { + statusReceiver = PlayStoreHooks.wrapCommitStatusReceiver(this, statusReceiver); + } + try { mSession.commit(statusReceiver, false); } catch (RemoteException e) { @@ -2079,6 +2111,20 @@ public void close() { * would be destroyed and the created {@link Session} information will be discarded.

*/ public void abandon() { + if (GmsCompat.isPlayStore()) { + final int id; + try { + id = mSession.getId(); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + PackageInstaller packageInstaller = GmsCompat.appContext().getPackageManager() + .getPackageInstaller(); + // see comment in abandonSession() + packageInstaller.abandonSession(id); + return; + } + try { mSession.abandon(); } catch (RemoteException e) { @@ -2813,7 +2859,13 @@ public static class SessionParams implements Parcelable { /** {@hide} */ public boolean isAutoInstallDependenciesEnabled = true; - private final ArrayMap mPermissionStates; + private volatile ArrayMap mPermissionStates; + /** + * {@hide} + * + * Used only by gmscompat, to disallow updates to unknown versions of GmsCore and Play Store. + */ + public long maxAllowedVersion = Long.MAX_VALUE; /** * Construct parameters for a new package install session. @@ -2825,6 +2877,10 @@ public static class SessionParams implements Parcelable { public SessionParams(int mode) { this.mode = mode; mPermissionStates = new ArrayMap<>(); + if (GmsCompat.isPlayStore()) { + // called here instead of in createSession() to give Play Store a chance to override + setRequireUserAction(USER_ACTION_NOT_REQUIRED); + } } /** {@hide} */ @@ -2867,6 +2923,7 @@ public SessionParams(Parcel source) { unarchiveId = source.readInt(); dexoptCompilerFilter = source.readString(); isAutoInstallDependenciesEnabled = source.readBoolean(); + maxAllowedVersion = source.readLong(); } /** {@hide} */ @@ -2904,6 +2961,7 @@ public SessionParams copy() { ret.unarchiveId = unarchiveId; ret.dexoptCompilerFilter = dexoptCompilerFilter; ret.isAutoInstallDependenciesEnabled = isAutoInstallDependenciesEnabled; + ret.maxAllowedVersion = maxAllowedVersion; return ret; } @@ -3068,6 +3126,13 @@ public void setGrantedRuntimePermissions(String[] permissions) { @NonNull public SessionParams setPermissionState(@NonNull String permissionName, @PermissionState int state) { + setPermissionState(mPermissionStates, permissionName, state); + return this; + } + + /** @hide */ + public static void setPermissionState(ArrayMap states, + @NonNull String permissionName, @PermissionState int state) { if (TextUtils.isEmpty(permissionName)) { throw new IllegalArgumentException("Provided permissionName cannot be " + (permissionName == null ? "null" : "empty")); @@ -3075,17 +3140,15 @@ public SessionParams setPermissionState(@NonNull String permissionName, switch (state) { case PERMISSION_STATE_DEFAULT: - mPermissionStates.remove(permissionName); + states.remove(permissionName); break; case PERMISSION_STATE_GRANTED: case PERMISSION_STATE_DENIED: - mPermissionStates.put(permissionName, state); + states.put(permissionName, state); break; default: throw new IllegalArgumentException("Unexpected permission state int: " + state); } - - return this; } /** @hide */ @@ -3593,6 +3656,11 @@ public ArrayMap getPermissionStates() { return mPermissionStates; } + /** @hide */ + public void replacePermissionStates(ArrayMap states) { + mPermissionStates = states; + } + /** @hide */ @Nullable public String[] getLegacyGrantedRuntimePermissions() { @@ -3712,6 +3780,7 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeInt(unarchiveId); dest.writeString(dexoptCompilerFilter); dest.writeBoolean(isAutoInstallDependenciesEnabled); + dest.writeLong(maxAllowedVersion); } public static final Parcelable.Creator @@ -5477,4 +5546,8 @@ long getRequiredStorageBytes() { } } + /** @hide **/ + public IPackageInstaller getIPackageInstaller() { + return mInstaller; + } } diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index 7e0805137d0b1..e4cea308b4707 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -1939,6 +1939,7 @@ default void onPermissionsChanged(int uid, @NonNull String persistentDeviceId) { @IntDef(flag = true, value = { DONT_KILL_APP, SYNCHRONOUS, + SKIP_IF_MISSING, }) @Retention(RetentionPolicy.SOURCE) public @interface EnabledFlags {} @@ -1960,6 +1961,9 @@ default void onPermissionsChanged(int uid, @NonNull String persistentDeviceId) { */ public static final int SYNCHRONOUS = 0x00000002; + /** @hide */ + public static final int SKIP_IF_MISSING = 0x4000_0000; + /** @hide */ @IntDef(flag = true, value = { FLAG_SUSPEND_QUARANTINED, @@ -12039,4 +12043,17 @@ public TypedArray extractPackageItemInfoAttributes(PackageItemInfo info, String } return new SigningInfo(result.getResult()); } + + /** @hide */ + @RequiresPermission(Manifest.permission.GRANT_RUNTIME_PERMISSIONS) + @SystemApi + public void sendBootCompletedBroadcastToPackage(@NonNull String packageName, boolean includeStopped, + int userId) { + try { + ActivityThread.getPackageManager().sendBootCompletedBroadcastToPackage( + packageName, includeStopped, userId); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } } diff --git a/core/java/android/content/pm/PackageParser.java b/core/java/android/content/pm/PackageParser.java index 4b579e7db9f84..1ea9df83dbbe4 100644 --- a/core/java/android/content/pm/PackageParser.java +++ b/core/java/android/content/pm/PackageParser.java @@ -7764,6 +7764,10 @@ private static ArrayList createIntentsList(Parcel in) final ArrayList intentsList; try { final Class cls = (Class) Class.forName(componentName); + if (!IntentInfo.class.isAssignableFrom(cls)) { + throw new AssertionError("Intent list requires subclass of IntentInfo, not: " + + componentName); + } final Constructor cons = cls.getConstructor(Parcel.class); intentsList = new ArrayList<>(N); diff --git a/core/java/android/content/pm/SpecialRuntimePermAppUtils.java b/core/java/android/content/pm/SpecialRuntimePermAppUtils.java new file mode 100644 index 0000000000000..85ca727f0deff --- /dev/null +++ b/core/java/android/content/pm/SpecialRuntimePermAppUtils.java @@ -0,0 +1,37 @@ +/* + * Copyright (C) 2022 GrapheneOS + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package android.content.pm; + +import android.annotation.SystemApi; + +/** @hide */ +@SystemApi +public class SpecialRuntimePermAppUtils { + + private static boolean isInternetCompatEnabled; + + /** @hide */ + public static void enableInternetCompat() { + isInternetCompatEnabled = true; + } + + public static boolean isInternetCompatEnabled() { + return isInternetCompatEnabled; + } + + private SpecialRuntimePermAppUtils() {} +} diff --git a/core/java/android/content/pm/SrtPermissions.java b/core/java/android/content/pm/SrtPermissions.java new file mode 100644 index 0000000000000..73338d14b7dc8 --- /dev/null +++ b/core/java/android/content/pm/SrtPermissions.java @@ -0,0 +1,31 @@ +package android.content.pm; + +import android.Manifest; + +/** @hide */ +public class SrtPermissions { // "special runtime permissions" + public static final int FLAG_INTERNET_COMPAT_ENABLED = 1; + + private static int flags; + + public static int getFlags() { + return flags; + } + + public static void setFlags(int value) { + flags = value; + + if ((value & FLAG_INTERNET_COMPAT_ENABLED) != 0) { + SpecialRuntimePermAppUtils.enableInternetCompat(); + } + } + + public static boolean shouldSpoofSelfCheck(String permName) { + switch (permName) { + case Manifest.permission.INTERNET: + return SpecialRuntimePermAppUtils.isInternetCompatEnabled(); + default: + return false; + } + } +} diff --git a/core/java/android/content/pm/UserInfo.java b/core/java/android/content/pm/UserInfo.java index 8a3a3ad56a7b1..143dda750a3db 100644 --- a/core/java/android/content/pm/UserInfo.java +++ b/core/java/android/content/pm/UserInfo.java @@ -601,4 +601,30 @@ private UserInfo(Parcel source) { restrictedProfileParentId = source.readInt(); profileBadge = source.readInt(); } + + /** + * @param profileType User type string to check, must be a profile + * @return true if the particular user info can have a profile with profileType + * Use {@link #canHaveProfile()} for general purpose checking if a user info can have profile + * @hide + **/ + public boolean canHaveProfileOfType(@NonNull String profileType) { + switch (profileType) { + case UserManager.USER_TYPE_PROFILE_PRIVATE -> { + if (UserManager.USER_TYPE_FULL_SECONDARY.equals(this.userType)) { + return true; + } + } + case UserManager.USER_TYPE_PROFILE_CLONE, + UserManager.USER_TYPE_PROFILE_COMMUNAL, + UserManager.USER_TYPE_PROFILE_MANAGED, + UserManager.USER_TYPE_PROFILE_TEST -> { + } + default -> { + throw new IllegalArgumentException("Not a profile type: " + profileType); + } + } + + return canHaveProfile(); + } } diff --git a/core/java/android/content/res/ApkAssets.java b/core/java/android/content/res/ApkAssets.java index 908999b649610..de205f99df6be 100644 --- a/core/java/android/content/res/ApkAssets.java +++ b/core/java/android/content/res/ApkAssets.java @@ -27,6 +27,7 @@ import android.text.TextUtils; import com.android.internal.annotations.GuardedBy; +import com.android.internal.gmscompat.dynamite.GmsDynamiteClientHooks; import dalvik.annotation.optimization.CriticalNative; @@ -155,7 +156,7 @@ public final class ApkAssets { */ public static @NonNull ApkAssets loadFromPath(@NonNull String path, @PropertyFlags int flags) throws IOException { - return new ApkAssets(FORMAT_APK, path, flags, null /* assets */); + return loadFromPath(path, flags, null); } /** @@ -169,6 +170,13 @@ public final class ApkAssets { */ public static @NonNull ApkAssets loadFromPath(@NonNull String path, @PropertyFlags int flags, @Nullable AssetsProvider assets) throws IOException { + if (GmsDynamiteClientHooks.enabled()) { + ApkAssets apkAssets = GmsDynamiteClientHooks.loadAssetsFromPath(path, flags, assets); + if (apkAssets != null) { + return apkAssets; + } + } + return new ApkAssets(FORMAT_APK, path, flags, assets); } diff --git a/core/java/android/content/res/AssetManager.java b/core/java/android/content/res/AssetManager.java index bbfae8117b163..e70a839bc8fdb 100644 --- a/core/java/android/content/res/AssetManager.java +++ b/core/java/android/content/res/AssetManager.java @@ -27,6 +27,7 @@ import android.annotation.StringRes; import android.annotation.StyleRes; import android.annotation.TestApi; +import android.app.ActivityManager; import android.app.ResourcesManager; import android.compat.annotation.UnsupportedAppUsage; import android.content.pm.ActivityInfo; @@ -46,6 +47,7 @@ import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.content.om.OverlayConfig; +import com.android.internal.os.ExecInit; import com.android.internal.ravenwood.RavenwoodEnvironment; import java.io.FileDescriptor; @@ -265,6 +267,9 @@ private AssetManager(boolean sentinel) { } } + /** @hide */ + public static volatile String[] systemIdmapPaths_; + /** * This must be called from Zygote so that system assets are shared by all applications. * @hide @@ -282,9 +287,35 @@ public static void createSystemAssetsInZygoteLocked(boolean reinitialize, apkAssets.add(ApkAssets.loadFromPath(frameworkPath, ApkAssets.PROPERTY_SYSTEM)); // TODO(Ravenwood): overlay support? - final String[] systemIdmapPaths = - RavenwoodEnvironment.getInstance().isRunningOnRavenwood() ? new String[0] : - OverlayConfig.getZygoteInstance().createImmutableFrameworkIdmapsInZygote(); + String[] systemIdmapPaths; + if (RavenwoodEnvironment.getInstance().isRunningOnRavenwood()) { + systemIdmapPaths = new String[0]; + } else { + // createImmutableFrameworkIdmapsInZygote() should be called only in zygote, it fails + // in regular processes and is unnecessary there. + // When it's called in zygote, overlay state is cached in /data/resource-cache/*@idmap + // files. These files are readable by regular app processes. + // + // When exec-based spawning in used, in-memory cache of assets is lost, and the spawned + // process is unable to recreate it, since it's not allowed to create idmaps. + // + // As a workaround, ask the ActivityManager to return paths of cached idmaps and use + // them directly. ActivityManager runs in system_server, which always uses zygote-based + // spawning. + if (ExecInit.isExecSpawned) { + try { + systemIdmapPaths = ActivityManager.getService().getSystemIdmapPaths(); + Objects.requireNonNull(systemIdmapPaths); + } catch (Throwable t) { + Log.e(TAG, "unable to retrieve systemIdmapPaths", t); + systemIdmapPaths = new String[0]; + } + } else { + systemIdmapPaths = OverlayConfig.getZygoteInstance().createImmutableFrameworkIdmapsInZygote(); + systemIdmapPaths_ = systemIdmapPaths; + } + } + for (String idmapPath : systemIdmapPaths) { apkAssets.add(ApkAssets.loadOverlayFromPath(idmapPath, ApkAssets.PROPERTY_SYSTEM)); } diff --git a/core/java/android/content/res/Configuration.java b/core/java/android/content/res/Configuration.java index 2e09994104832..c64482f3983d2 100644 --- a/core/java/android/content/res/Configuration.java +++ b/core/java/android/content/res/Configuration.java @@ -49,6 +49,7 @@ import android.annotation.TestApi; import android.app.GrammaticalInflectionManager; import android.app.WindowConfiguration; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.LocaleProto; import android.content.pm.ActivityInfo; @@ -67,6 +68,7 @@ import android.util.proto.WireTypeMismatchException; import android.view.View; +import com.android.internal.gmscompat.PlayStoreHooks; import com.android.internal.util.XmlUtils; import org.xmlpull.v1.XmlPullParser; @@ -2343,7 +2345,14 @@ public void setGrammaticalGender(@GrammaticalGender int grammaticalGender) { */ public @NonNull LocaleList getLocales() { fixUpLocaleList(); - return mLocaleList; + LocaleList res = mLocaleList; + if (GmsCompat.isPlayStore()) { + LocaleList override = PlayStoreHooks.overrideApplicationLocales(res, null); + if (override != null) { + res = override; + } + } + return res; } /** diff --git a/core/java/android/content/res/Resources.java b/core/java/android/content/res/Resources.java index 05596318aef57..adf5733045827 100644 --- a/core/java/android/content/res/Resources.java +++ b/core/java/android/content/res/Resources.java @@ -76,6 +76,7 @@ import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.ext.EuiccGoogleHooks; import com.android.internal.util.ArrayUtils; import com.android.internal.util.GrowingArrayUtils; import com.android.internal.util.Preconditions; @@ -464,6 +465,15 @@ public ConfigurationBoundResourceCache getStateListAnimatorCa @NonNull public CharSequence getText(@StringRes int id) throws NotFoundException { CharSequence res = mResourcesImpl.getAssets().getResourceText(id); if (res != null) { + if (android.app.AppGlobals.getInitialPackageId() == android.ext.PackageId.G_EUICC_LPA) { + if (!EuiccGoogleHooks.isResourceFilteringSuppressed()) { + String s = res.toString(); + if (s.contains("Google")) { + Log.d("GEuiccLpa", "replaced getText() with empty string: " + s); + return ""; + } + } + } return res; } throw new NotFoundException("String resource ID #0x" diff --git a/core/java/android/content/res/ResourcesImpl.java b/core/java/android/content/res/ResourcesImpl.java index 0fb267e33b225..eec30f38b4154 100644 --- a/core/java/android/content/res/ResourcesImpl.java +++ b/core/java/android/content/res/ResourcesImpl.java @@ -996,15 +996,24 @@ private Drawable loadDrawableForCookie(@NonNull Resources wrapper, @NonNull Type } else { dr = loadXmlDrawable(wrapper, value, id, density, file); } - } else if (file.startsWith("frro://")) { + } else if (file.startsWith("frro:/")) { Uri uri = Uri.parse(file); + long offset = Long.parseLong(uri.getQueryParameter("offset")); + long size = Long.parseLong(uri.getQueryParameter("size")); + if (offset < 0 || size <= 0) { + throw new NotFoundException("invalid frro parameters"); + } File f = new File('/' + uri.getHost() + uri.getPath()); + if (!f.getCanonicalPath().startsWith(ResourcesManager.RESOURCE_CACHE_DIR) + || !f.getCanonicalPath().endsWith(".frro") || !f.canRead()) { + throw new NotFoundException("invalid frro path"); + } ParcelFileDescriptor pfd = ParcelFileDescriptor.open(f, ParcelFileDescriptor.MODE_READ_ONLY); AssetFileDescriptor afd = new AssetFileDescriptor( pfd, - Long.parseLong(uri.getQueryParameter("offset")), - Long.parseLong(uri.getQueryParameter("size"))); + offset, + size); FileInputStream is = afd.createInputStream(); dr = decodeImageDrawable(is, wrapper); } else { diff --git a/core/java/android/credentials/CredentialOption.java b/core/java/android/credentials/CredentialOption.java index df948f17d6e01..2a8c5ac4feb13 100644 --- a/core/java/android/credentials/CredentialOption.java +++ b/core/java/android/credentials/CredentialOption.java @@ -22,14 +22,20 @@ import android.annotation.NonNull; import android.annotation.SuppressLint; +import android.app.compat.gms.GmsCompat; import android.content.ComponentName; +import android.content.Context; +import android.ext.PackageId; import android.os.Bundle; import android.os.Parcel; import android.os.Parcelable; +import android.os.RemoteException; import android.util.ArraySet; +import android.util.Log; import androidx.annotation.RequiresPermission; +import com.android.internal.gmscompat.GmsCompatApp; import com.android.internal.util.AnnotationValidations; import com.android.internal.util.Preconditions; @@ -284,6 +290,23 @@ public Builder(@NonNull String type, @NonNull Bundle credentialRetrievalData, @SuppressLint("MissingGetterMatchingBuilder") @NonNull public Builder setIsSystemProviderRequired(boolean isSystemProviderRequired) { + String typeGoogleId = "com.google.android.libraries.identity.googleid.TYPE_GOOGLE_ID_TOKEN_CREDENTIAL"; + if (isSystemProviderRequired && mType.equals(typeGoogleId)) { + Context appContext = GmsCompat.appContext(); + String gmscorePkg = PackageId.GMS_CORE_NAME; + if (appContext != null && GmsCompat.isEnabledFor(gmscorePkg, appContext.getUserId())) { + Log.d("GmsCompat", "ignored CredentialOption.setIsSystemProviderRequired(true) for " + + "TYPE_GOOGLE_ID_TOKEN_CREDENTIAL", new Throwable()); + mIsSystemProviderRequired = false; + + try { + GmsCompatApp.iClientOfGmsCore2Gca().onGoogleIdCredentialOptionInit(); + } catch (RemoteException e) { + throw GmsCompatApp.callFailed(e); + } + return this; + } + } mIsSystemProviderRequired = isSystemProviderRequired; return this; } diff --git a/core/java/android/database/sqlite/SQLiteOpenHelper.java b/core/java/android/database/sqlite/SQLiteOpenHelper.java index 78c8954cfe5f0..06dba5297f1e3 100644 --- a/core/java/android/database/sqlite/SQLiteOpenHelper.java +++ b/core/java/android/database/sqlite/SQLiteOpenHelper.java @@ -19,6 +19,7 @@ import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.Context; import android.database.DatabaseErrorHandler; @@ -27,6 +28,8 @@ import android.os.FileUtils; import android.util.Log; +import com.android.internal.gmscompat.GmsHooks; + import java.io.File; import java.util.Objects; @@ -168,6 +171,10 @@ private SQLiteOpenHelper(@Nullable Context context, @Nullable String name, int v mNewVersion = version; mMinimumSupportedVersion = Math.max(0, minimumSupportedVersion); setOpenParamsBuilder(openParamsBuilder); + + if (GmsCompat.isEnabled()) { + GmsHooks.onSQLiteOpenHelperConstructed(this, context); + } } /** diff --git a/core/java/android/ext/AppInfoExt.java b/core/java/android/ext/AppInfoExt.java new file mode 100644 index 0000000000000..4604ff0a7704d --- /dev/null +++ b/core/java/android/ext/AppInfoExt.java @@ -0,0 +1,85 @@ +package android.ext; + +import android.annotation.NonNull; +import android.annotation.SystemApi; +import android.app.AppGlobals; +import android.os.Parcel; +import android.os.Parcelable; + +/** @hide */ +@SystemApi +public final class AppInfoExt implements Parcelable { + /** @hide */ + public static final AppInfoExt DEFAULT = new AppInfoExt(PackageId.UNKNOWN, 0, 0L); + + private final int packageId; + private final int flags; + + /** @hide */ + public static final long HAS_COMPAT_CHANGES = 1L << 63; + private final long compatChanges; + + public AppInfoExt(int packageId, int flags, long compatChanges) { + this.packageId = packageId; + this.flags = flags; + this.compatChanges = compatChanges; + } + + /** + * One of {@link android.ext.PackageId} int constants. + */ + public int getPackageId() { + return packageId; + } + + public static int getInitialPackageId() { + return AppGlobals.getInitialPackageId(); + } + + public boolean hasFlag(@AppInfoExtFlag.Enum int flag) { + return (flags & (1 << flag)) != 0; + } + + public boolean hasCompatConfig() { + return (compatChanges & HAS_COMPAT_CHANGES) != 0; + } + + public boolean hasCompatChange(int flag) { + long mask = (1L << flag) | HAS_COMPAT_CHANGES; + return (compatChanges & mask) == mask; + } + + @Override + public int describeContents() { + return 0; + } + + @Override + public void writeToParcel(@NonNull Parcel dest, int parcelFlags) { + boolean def = this == DEFAULT; + dest.writeBoolean(def); + if (def) { + return; + } + + dest.writeInt(packageId); + dest.writeInt(flags); + dest.writeLong(compatChanges); + } + + @NonNull + public static final Creator CREATOR = new Creator<>() { + @Override + public AppInfoExt createFromParcel(@NonNull Parcel p) { + if (p.readBoolean()) { + return DEFAULT; + } + return new AppInfoExt(p.readInt(), p.readInt(), p.readLong()); + } + + @Override + public AppInfoExt[] newArray(int size) { + return new AppInfoExt[size]; + } + }; +} diff --git a/core/java/android/ext/AppInfoExtFlag.java b/core/java/android/ext/AppInfoExtFlag.java new file mode 100644 index 0000000000000..0a8f0149ae599 --- /dev/null +++ b/core/java/android/ext/AppInfoExtFlag.java @@ -0,0 +1,22 @@ +package android.ext; + +import android.annotation.IntDef; +import android.annotation.SystemApi; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +/** @hide */ +@SystemApi +public interface AppInfoExtFlag { + /* SysApi */ int HAS_GMSCORE_CLIENT_LIBRARY = 0; + /** @hide */ int HAS_PLAY_STORE_SOURCE_STAMP_ON_APK_CERTS = 1; + + /** @hide */ + @IntDef(value = { + HAS_GMSCORE_CLIENT_LIBRARY, + HAS_PLAY_STORE_SOURCE_STAMP_ON_APK_CERTS, + }) + @Retention(RetentionPolicy.SOURCE) + @interface Enum {} +} diff --git a/core/java/android/ext/DerivedPackageFlag.java b/core/java/android/ext/DerivedPackageFlag.java new file mode 100644 index 0000000000000..5258acf924327 --- /dev/null +++ b/core/java/android/ext/DerivedPackageFlag.java @@ -0,0 +1,53 @@ +package android.ext; + +import android.annotation.IntDef; +import android.annotation.SystemApi; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +/** @hide */ +@SystemApi +public interface DerivedPackageFlag { + // to distinguish between the case when no dflags are set and the case when dflags weren't calculated yet + int DFLAGS_SET = 1; + int EXPECTS_ALL_FILES_ACCESS = 1 << 1; + int EXPECTS_ACCESS_TO_MEDIA_FILES_ONLY = 1 << 2; + int EXPECTS_STORAGE_WRITE_ACCESS = 1 << 3; + int HAS_READ_EXTERNAL_STORAGE_DECLARATION = 1 << 4; + int HAS_WRITE_EXTERNAL_STORAGE_DECLARATION = 1 << 5; + int HAS_MANAGE_EXTERNAL_STORAGE_DECLARATION = 1 << 6; + int HAS_MANAGE_MEDIA_DECLARATION = 1 << 7; + int HAS_ACCESS_MEDIA_LOCATION_DECLARATION = 1 << 8; + int HAS_READ_MEDIA_AUDIO_DECLARATION = 1 << 9; + int HAS_READ_MEDIA_IMAGES_DECLARATION = 1 << 10; + int HAS_READ_MEDIA_VIDEO_DECLARATION = 1 << 11; + int HAS_READ_MEDIA_VISUAL_USER_SELECTED_DECLARATION = 1 << 12; + int EXPECTS_LEGACY_EXTERNAL_STORAGE = 1 << 13; + int HAS_READ_CONTACTS_DECLARATION = 1 << 20; + int HAS_WRITE_CONTACTS_DECLARATION = 1 << 21; + int HAS_GET_ACCOUNTS_DECLARATION = 1 << 22; + + /** @hide */ + @IntDef(flag = true, value = { + DFLAGS_SET, + EXPECTS_ALL_FILES_ACCESS, + EXPECTS_ACCESS_TO_MEDIA_FILES_ONLY, + EXPECTS_STORAGE_WRITE_ACCESS, + HAS_READ_EXTERNAL_STORAGE_DECLARATION, + HAS_WRITE_EXTERNAL_STORAGE_DECLARATION, + HAS_MANAGE_EXTERNAL_STORAGE_DECLARATION, + HAS_MANAGE_MEDIA_DECLARATION, + HAS_ACCESS_MEDIA_LOCATION_DECLARATION, + HAS_READ_MEDIA_AUDIO_DECLARATION, + HAS_READ_MEDIA_IMAGES_DECLARATION, + HAS_READ_MEDIA_VIDEO_DECLARATION, + HAS_READ_MEDIA_VISUAL_USER_SELECTED_DECLARATION, + EXPECTS_LEGACY_EXTERNAL_STORAGE, + HAS_READ_CONTACTS_DECLARATION, + HAS_WRITE_CONTACTS_DECLARATION, + HAS_GET_ACCOUNTS_DECLARATION, + }) + @Retention(RetentionPolicy.SOURCE) + @interface Enum {} +} diff --git a/core/java/android/ext/LogViewerApp.java b/core/java/android/ext/LogViewerApp.java new file mode 100644 index 0000000000000..0eb6239bc279b --- /dev/null +++ b/core/java/android/ext/LogViewerApp.java @@ -0,0 +1,67 @@ +package android.ext; + +import android.content.Intent; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.util.UUID; +import java.util.zip.GZIPOutputStream; + +import static java.nio.charset.StandardCharsets.UTF_8; + +/** @hide */ +public class LogViewerApp { + private static final String PACKAGE_NAME = "app.grapheneos.logviewer"; + + public static final String ACTION_ERROR_REPORT = PACKAGE_NAME + ".ERROR_REPORT"; + public static final String ACTION_LOGCAT = PACKAGE_NAME + ".LOGCAT"; + public static final String ACTION_PKG_LOGCAT = PACKAGE_NAME + ".PKG_LOGCAT"; + + public static final String EXTRA_ERROR_TYPE = "type"; + public static final String EXTRA_GZIPPED_MESSAGE = "gzipped_msg"; + public static final String EXTRA_SOURCE_APP_INFO = "source_app_info"; + public static final String EXTRA_SHOW_REPORT_BUTTON = "show_report_button"; + public static final String EXTRA_TEXT_TOMBSTONE_FILE_PATH = "text_tombstone_file_path"; + // Tombstone file path can be reused by a subsequent tombstone file, last modified timestamp is + // used to detect that case. + public static final String EXTRA_TEXT_TOMBSTONE_LAST_MODIFIED_TIME = "text_tombstone_last_modified"; + public static final String EXTRA_PREFER_TEXT_TOMBSTONE = "prefer_text_tombstone"; + + public static String getPackageName() { + return PACKAGE_NAME; + } + + public static Intent createBaseErrorReportIntent(String msg) { + var i = new Intent(ACTION_ERROR_REPORT); + i.putExtra(EXTRA_GZIPPED_MESSAGE, gzipString(msg)); + // this is needed for correct usage via PendingIntent + i.setIdentifier(UUID.randomUUID().toString()); + i.setPackage(PACKAGE_NAME); + return i; + } + + public static Intent getPackageLogcatIntent(String pkgName) { + var i = new Intent(ACTION_PKG_LOGCAT); + i.putExtra(Intent.EXTRA_PACKAGE_NAME, pkgName); + i.setPackage(PACKAGE_NAME); + return i; + } + + public static Intent getLogcatIntent() { + var i = new Intent(ACTION_LOGCAT); + i.setPackage(PACKAGE_NAME); + return i; + } + + private static byte[] gzipString(String msg) { + var bos = new ByteArrayOutputStream(msg.length() / 4); + + try (var s = new GZIPOutputStream(bos)) { + s.write(msg.getBytes(UTF_8)); + } catch (IOException e) { + throw new IllegalStateException(e); + } + + return bos.toByteArray(); + } +} diff --git a/core/java/android/ext/PackageId.java b/core/java/android/ext/PackageId.java new file mode 100644 index 0000000000000..2db9922539c5b --- /dev/null +++ b/core/java/android/ext/PackageId.java @@ -0,0 +1,54 @@ +package android.ext; + +import android.annotation.SystemApi; + +/** @hide */ +@SystemApi +// Int values that are assigned to packages in this interface can be retrieved at runtime from +// ApplicationInfo.ext().getPackageId() or from AndroidPackage.ext().getPackageId() (in system_server). +// +// PackageIds are assigned to parsed APKs only after they are verified, either by a certificate check +// or by a check that the APK is stored on an immutable OS partition. +public interface PackageId { + int UNKNOWN = 0; + + String GSF_NAME = "com.google.android.gsf"; + // no longer needed: int GSF = 1 + + String GMS_CORE_NAME = "com.google.android.gms"; + int GMS_CORE = 2; + + String PLAY_STORE_NAME = "com.android.vending"; + int PLAY_STORE = 3; + + String G_SEARCH_APP_NAME = "com.google.android.googlequicksearchbox"; + int G_SEARCH_APP = 4; + + String EUICC_SUPPORT_PIXEL_NAME = "com.google.euiccpixel"; + int EUICC_SUPPORT_PIXEL = 5; + + String G_EUICC_LPA_NAME = "com.google.android.euicc"; + int G_EUICC_LPA = 6; + + String G_CARRIER_SETTINGS_NAME = "com.google.android.carrier"; + int G_CARRIER_SETTINGS = 7; + + String G_CAMERA_NAME = "com.google.android.GoogleCamera"; + int G_CAMERA = 8; + + String PIXEL_CAMERA_SERVICES_NAME = "com.google.android.apps.camera.services"; + int PIXEL_CAMERA_SERVICES = 9; + + String ANDROID_AUTO_NAME = "com.google.android.projection.gearhead"; + int ANDROID_AUTO = 10; + + // "Google Fi" + String TYCHO_NAME = "com.google.android.apps.tycho"; + int TYCHO = 11; + + /** @hide */ String G_TEXT_TO_SPEECH_NAME = "com.google.android.tts"; + /** @hide */ int G_TEXT_TO_SPEECH = 12; + + String PIXEL_HEALTH_NAME = "com.google.android.apps.pixel.health"; + int PIXEL_HEALTH = 13; +} diff --git a/core/java/android/ext/SettingsIntents.java b/core/java/android/ext/SettingsIntents.java new file mode 100644 index 0000000000000..956b1144b0e4d --- /dev/null +++ b/core/java/android/ext/SettingsIntents.java @@ -0,0 +1,24 @@ +package android.ext; + +import android.content.Context; +import android.content.Intent; +import android.net.Uri; + +/** @hide */ +public class SettingsIntents { + + public static final String APP_NATIVE_DEBUGGING = "android.settings.OPEN_APP_NATIVE_DEBUGGING_SETTINGS"; + public static final String APP_MEMTAG = "android.settings.OPEN_APP_MEMTAG_SETTINGS"; + public static final String APP_HARDENED_MALLOC = "android.settings.OPEN_APP_HARDENED_MALLOC_SETTINGS"; + public static final String APP_MEMORY_DYN_CODE_LOADING = "android.settings.OPEN_APP_MEMORY_DYN_CODE_LOADING_SETTINGS"; + public static final String APP_STORAGE_DYN_CODE_LOADING = "android.settings.OPEN_APP_STORAGE_DYN_CODE_LOADING_SETTINGS"; + public static final String APP_MANAGE_PLAY_INTEGRITY_API = "android.settings.OPEN_APP_MANAGE_PLAY_INTEGRITY_API_SETTINGS"; + + public static Intent getAppIntent(Context ctx, String action, String pkgName) { + var i = new Intent(action); + i.setData(Uri.fromParts("package", pkgName, null)); + i.setPackage(KnownSystemPackages.get(ctx).settings); + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); + return i; + } +} diff --git a/core/java/android/ext/cscopes/ContactScope.java b/core/java/android/ext/cscopes/ContactScope.java new file mode 100644 index 0000000000000..8565a233c3e06 --- /dev/null +++ b/core/java/android/ext/cscopes/ContactScope.java @@ -0,0 +1,71 @@ +package android.ext.cscopes; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SystemApi; +import android.net.Uri; +import android.os.Parcel; +import android.os.Parcelable; + +/** @hide */ +@SystemApi +public final class ContactScope implements Parcelable { + public static final int TYPE_GROUP = 0; + public static final int TYPE_CONTACT = 1; + public static final int TYPE_NUMBER = 2; + public static final int TYPE_EMAIL = 3; + public static final int TYPE_COUNT = 4; + + public final int type; + public final long id; + + @Nullable + public final String title; + @Nullable + public final String summary; + @Nullable + public final Uri detailsUri; + + public ContactScope(int type, long id, @Nullable String title, @Nullable String summary, @Nullable Uri detailsUri) { + this.type = type; + this.id = id; + this.title = title; + this.summary = summary; + this.detailsUri = detailsUri; + } + + ContactScope(Parcel in) { + type = in.readInt(); + id = in.readLong(); + title = in.readString(); + summary = in.readString(); + detailsUri = in.readParcelable(Uri.class.getClassLoader(), Uri.class); + } + + @Override + public void writeToParcel(@NonNull Parcel dest, int flags) { + dest.writeInt(type); + dest.writeLong(id); + dest.writeString(title); + dest.writeString(summary); + dest.writeParcelable(detailsUri, 0); + } + + @NonNull + public static final Creator CREATOR = new Creator<>() { + @Override + public ContactScope createFromParcel(Parcel in) { + return new ContactScope(in); + } + + @Override + public ContactScope[] newArray(int size) { + return new ContactScope[size]; + } + }; + + @Override + public int describeContents() { + return 0; + } +} diff --git a/core/java/android/ext/cscopes/ContactScopesApi.java b/core/java/android/ext/cscopes/ContactScopesApi.java new file mode 100644 index 0000000000000..044ccfae94d93 --- /dev/null +++ b/core/java/android/ext/cscopes/ContactScopesApi.java @@ -0,0 +1,38 @@ +package android.ext.cscopes; + +import android.annotation.NonNull; +import android.annotation.SystemApi; +import android.content.ComponentName; +import android.content.Intent; +import android.provider.ContactsContract; + +/** @hide */ +@SystemApi +public class ContactScopesApi { + + public static final String ACTION_NOTIFY_CONTENT_OBSERVERS = + "android.ext.cscopes.action.NOTIFY_CONTENT_OBSERVERS"; + + public static final String SCOPED_CONTACTS_PROVIDER_AUTHORITY = ContactsContract.AUTHORITY + ".scoped"; + + // ScopedContactsProvider method IDs + public static final String METHOD_GET_IDS_FROM_URIS = "get_ids_from_uris"; + public static final String METHOD_GET_VIEW_MODEL = "get_view_model"; + public static final String METHOD_GET_GROUPS = "get_groups"; + + // keys for Bundles passed from/to ScopedContactsProvider methods + public static final String KEY_URIS = "uris"; + public static final String KEY_IDS = "ids"; + public static final String KEY_RESULT = "result"; + + @NonNull + public static Intent createConfigActivityIntent(@NonNull String targetPkg) { + var i = new Intent(); + String pkg = "com.android.permissioncontroller"; + i.setComponent(ComponentName.createRelative(pkg, ".cscopes.ContactScopesActivity")); + i.putExtra(Intent.EXTRA_PACKAGE_NAME, targetPkg); + return i; + } + + private ContactScopesApi() {} +} diff --git a/core/java/android/ext/cscopes/ContactScopesStorage.java b/core/java/android/ext/cscopes/ContactScopesStorage.java new file mode 100644 index 0000000000000..267aed4fdde85 --- /dev/null +++ b/core/java/android/ext/cscopes/ContactScopesStorage.java @@ -0,0 +1,153 @@ +package android.ext.cscopes; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SuppressLint; +import android.annotation.SystemApi; +import android.content.pm.GosPackageState; +import android.util.Log; + +import com.android.internal.util.ArrayUtils; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.DataInputStream; +import java.io.DataOutputStream; +import java.io.IOException; + +/** @hide */ +@SystemApi +public final class ContactScopesStorage { + private static final String TAG = "ContactScope"; + + private final long[][] idsByType; + + @SuppressLint("MinMaxConstant") + public static final int MAX_COUNT_PER_PACKAGE = 100; + + private ContactScopesStorage() { + this(new long[ContactScope.TYPE_COUNT][0]); + } + + private ContactScopesStorage(long[][] idsByType) { + this.idsByType = idsByType; + } + + @NonNull + public long[] getIds(int type) { + return idsByType[type]; + } + + public boolean add(int type, long id) { + if (getCount() >= MAX_COUNT_PER_PACKAGE) { + return false; + } + + long[] cur = idsByType[type]; + long[] upd = ArrayUtils.appendLong(cur, id); + if (cur == upd) { + return false; + } + idsByType[type] = upd; + return true; + } + + public boolean remove(int type, long id) { + long[] cur = idsByType[type]; + long[] upd = ArrayUtils.removeLong(cur, id); + if (cur == upd) { + return false; + } + idsByType[type] = upd; + return true; + } + + public int getCount() { + int res = 0; + for (long[] arr : idsByType) { + res += arr.length; + } + return res; + } + + private static final int VERSION = 0; + + @Nullable + public byte[] serialize() { + int count = getCount(); + if (count == 0) { + return null; + } + + if (count > MAX_COUNT_PER_PACKAGE) { + throw new IllegalStateException(); + } + + var bos = new ByteArrayOutputStream(20 + (count * 8)); + + var s = new DataOutputStream(bos); + + try { + s.writeByte(VERSION); + + for (int type = ContactScope.TYPE_GROUP; type < ContactScope.TYPE_COUNT; ++type) { + long[] ids = this.idsByType[type]; + int idsLen = ids.length; + if (idsLen == 0) { + continue; + } + s.writeByte(type); + s.writeInt(idsLen); + for (int i = 0; i < idsLen; ++i) { + s.writeLong(ids[i]); + } + } + + return bos.toByteArray(); + } catch (IOException e) { + throw new IllegalStateException(e); + } + } + + public static boolean isEmpty(@NonNull GosPackageState gosPackageState) { + return gosPackageState.contactScopes == null; + } + + @NonNull + public static ContactScopesStorage deserialize(@NonNull GosPackageState gosPackageState) { + byte[] ser = gosPackageState.contactScopes; + if (ser == null) { + return new ContactScopesStorage(); + } + + var s = new DataInputStream(new ByteArrayInputStream(ser)); + + try { + final int version = s.readByte(); + if (version != VERSION) { + Log.e(TAG, "unexpected version " + version); + return new ContactScopesStorage(); + } + + long[][] idsByType = new long[ContactScope.TYPE_COUNT][0]; + + do { + int type = s.readByte(); + int cnt = s.readInt(); + + long[] ids = new long[cnt]; + + for (int i = 0; i < cnt; ++i) { + ids[i] = s.readLong(); + } + + idsByType[type] = ids; + } while (s.available() != 0); + + return new ContactScopesStorage(idsByType); + } catch (IOException e) { + Log.e(TAG, "", e); + return new ContactScopesStorage(); + } + } +} diff --git a/core/java/android/ext/cscopes/ContactsGroup.java b/core/java/android/ext/cscopes/ContactsGroup.java new file mode 100644 index 0000000000000..7445fc22e614e --- /dev/null +++ b/core/java/android/ext/cscopes/ContactsGroup.java @@ -0,0 +1,54 @@ +package android.ext.cscopes; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SystemApi; +import android.os.Parcel; +import android.os.Parcelable; + +/** @hide */ +@SystemApi +public final class ContactsGroup implements Parcelable { + public final long id; + @Nullable + public final String title; + @Nullable + public final String summary; + + public ContactsGroup(long id, @Nullable String title, @Nullable String summary) { + this.id = id; + this.title = title; + this.summary = summary; + } + + ContactsGroup(@NonNull Parcel in) { + id = in.readLong(); + title = in.readString(); + summary = in.readString(); + } + + @Override + public void writeToParcel(@NonNull Parcel dest, int flags) { + dest.writeLong(id); + dest.writeString(title); + dest.writeString(summary); + } + + @Override + public int describeContents() { + return 0; + } + + @NonNull + public static final Creator CREATOR = new Creator<>() { + @Override + public ContactsGroup createFromParcel(Parcel in) { + return new ContactsGroup(in); + } + + @Override + public ContactsGroup[] newArray(int size) { + return new ContactsGroup[size]; + } + }; +} diff --git a/core/java/android/ext/dcl/DynCodeLoading.java b/core/java/android/ext/dcl/DynCodeLoading.java new file mode 100644 index 0000000000000..fd1446dcc2da9 --- /dev/null +++ b/core/java/android/ext/dcl/DynCodeLoading.java @@ -0,0 +1,138 @@ +package android.ext.dcl; + +import android.annotation.NonNull; +import android.annotation.SuppressLint; +import android.annotation.SystemApi; +import android.app.ActivityManager; +import android.app.AppGlobals; +import android.app.Application; +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.ext.settings.app.AswRestrictMemoryDynCodeLoading; +import android.ext.settings.app.AswRestrictStorageDynCodeLoading; +import android.os.RemoteException; +import android.system.Os; +import android.util.Log; + +import androidx.annotation.Keep; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Objects; + +import dalvik.system.DexFile; + +/** @hide */ +@SystemApi +public class DynCodeLoading { + private static final String TAG = DynCodeLoading.class.getSimpleName(); + + /** @hide */ + public static final int RESTRICT_MEMORY_DCL = 1; + /** @hide */ + public static final int RESTRICT_STORAGE_DCL = 1 << 1; + + /** @hide */ + public static int getAppBindFlags(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState gosPs) { + int res = 0; + + if (AswRestrictMemoryDynCodeLoading.I.get(ctx, userId, appInfo, gosPs)) { + res |= RESTRICT_MEMORY_DCL; + } + + if (AswRestrictStorageDynCodeLoading.I.get(ctx, userId, appInfo, gosPs)) { + res |= RESTRICT_STORAGE_DCL; + } + + return res; + } + + /** @hide */ + public static void handleAppBindFlags(int flags) { + if ((flags & (RESTRICT_MEMORY_DCL | RESTRICT_STORAGE_DCL)) != 0) { + DexFile.enableDynCodeLoadingChecks(flags); + } + } + + private static void showNotif(int type, String path, String denialType, Exception e) { + String pkgName = AppGlobals.getInitialPackage(); + + var reportLines = new ArrayList(); + reportLines.add("process: " + Application.getProcessName()); + reportLines.add("thread: " + Thread.currentThread().getName()); + reportLines.add(""); + String stackTrace = Log.getStackTraceString(e); + reportLines.addAll(Arrays.asList(stackTrace.split("\n"))); + + try { + ActivityManager.getService().showDynCodeLoadingNotification(type, pkgName, path, + reportLines, denialType); + } catch (RemoteException re) { + Log.d(TAG, "", re); + } + } + + @Keep // called from native ART code + public static void checkInMemoryDexFileOpen(int flags) { + var se = new SecurityException(); + showNotif(RESTRICT_MEMORY_DCL, null, "InMemoryDexFile", se); + throw se; + } + + @Keep + @SuppressLint("GenericException") + public static void checkDexFileOpen(int flags, @NonNull String rawPath) throws Exception { + String gmscompatFdPrefix = "/gmscompat_fd_"; + if (rawPath.startsWith(gmscompatFdPrefix)) { + int fd = Integer.parseInt(rawPath.substring(gmscompatFdPrefix.length())); + rawPath = Os.readlink("/proc/self/fd/" + fd); + } + + String path; + try { + path = new File(rawPath).getCanonicalPath(); + } catch (IOException e) { + path = null; + } + + boolean allow = false; + if (path != null) { + String[] pathParts = path.split("/"); + if (!pathParts[0].equals("")) { + throw new IllegalStateException(path); + } + + switch (pathParts[1]) { + case "apex": + case "product": + case "system": + case "system_ext": + case "vendor": + allow = true; + break; + case "data": + allow = path.startsWith("/data/app/") && path.endsWith(".apk"); + break; + } + } + + + if (allow) { + Log.d(TAG, "allowed DexFileOpen from " + rawPath); + } else { + String msg = "DCL via storage, path: " + rawPath; + if (!Objects.equals(rawPath, path)) { + msg += ", canonicalPath: " + path; + } + var e = new SecurityException(msg); + showNotif(RESTRICT_STORAGE_DCL, rawPath, "DexFileOpen", e); + throw e; + } + } + + private DynCodeLoading() {} +} diff --git a/core/java/android/ext/power/BatteryChargeLimit.java b/core/java/android/ext/power/BatteryChargeLimit.java new file mode 100644 index 0000000000000..652c2f41c65f2 --- /dev/null +++ b/core/java/android/ext/power/BatteryChargeLimit.java @@ -0,0 +1,30 @@ +package android.ext.power; + +import android.content.Context; +import android.ext.settings.BoolSetting; +import android.ext.settings.Setting; +import android.os.Build; +import android.provider.Settings; + +/** @hide */ +public class BatteryChargeLimit { + public static final int CHARGE_LEVEL = 80; + + private static final BoolSetting SETTING = new BoolSetting(Setting.Scope.GLOBAL, + Settings.Global.BATTERY_CHARGE_LIMIT, false); + + public static BoolSetting getSetting() { + return SETTING; + } + + public static boolean isChargeLimitEnabled(Context context) { + if (!isGoogleDevice()) { + return false; + } + return SETTING.get(context); + } + + public static boolean isGoogleDevice() { + return "Google".equals(Build.MANUFACTURER); + } +} diff --git a/core/java/android/ext/settings/AltTouchscreenMode.java b/core/java/android/ext/settings/AltTouchscreenMode.java new file mode 100644 index 0000000000000..9f79c5e38ea28 --- /dev/null +++ b/core/java/android/ext/settings/AltTouchscreenMode.java @@ -0,0 +1,18 @@ +package android.ext.settings; + +import android.content.Context; + +import com.android.internal.R; + +/** @hide */ +public class AltTouchscreenMode { + public static final String STATE_OF_DEFAULT_DISPLAY_PROP = "sys.state_of_default_display"; + + public static BoolSysProperty getSetting() { + return new BoolSysProperty("persist.sys.alt_touch_mode", false); + } + + public static boolean isAvailable(Context ctx) { + return ctx.getResources().getBoolean(R.bool.config_has_alternative_touchscreen_mode); + } +} diff --git a/core/java/android/ext/settings/BoolSetting.java b/core/java/android/ext/settings/BoolSetting.java new file mode 100644 index 0000000000000..fc6f808a7e73c --- /dev/null +++ b/core/java/android/ext/settings/BoolSetting.java @@ -0,0 +1,76 @@ +/* + * Copyright (C) 2022 GrapheneOS + * SPDX-License-Identifier: Apache-2.0 + */ + +package android.ext.settings; + +import android.annotation.NonNull; +import android.annotation.SystemApi; +import android.content.Context; + +import java.util.function.Function; + +/** @hide */ +@SystemApi +public class BoolSetting extends Setting { + private boolean defaultValue; + private volatile Function defaultValueSupplier; + + public BoolSetting(@NonNull Scope scope, @NonNull String key, boolean defaultValue) { + super(scope, key); + this.defaultValue = defaultValue; + } + + public BoolSetting(@NonNull Scope scope, @NonNull String key, @NonNull Function defaultValue) { + super(scope, key); + defaultValueSupplier = defaultValue; + } + + public final boolean get(@NonNull Context ctx) { + return get(ctx, ctx.getUserId()); + } + + // use only if this is a per-user setting and the context is not a per-user one + public final boolean get(@NonNull Context ctx, int userId) { + String valueStr = getRaw(ctx, userId); + + if (valueStr == null) { + return getDefaultValue(ctx); + } + + if (valueStr.equals("true")) { + return true; + } + + if (valueStr.equals("false")) { + return false; + } + + try { + int valueInt = Integer.parseInt(valueStr); + if (valueInt == 1) { + return true; + } else if (valueInt == 0) { + return false; + } + } catch (NumberFormatException e) { + e.printStackTrace(); + } + + return getDefaultValue(ctx); + } + + public final boolean put(@NonNull Context ctx, boolean val) { + return putRaw(ctx, val ? "1" : "0"); + } + + private boolean getDefaultValue(Context ctx) { + Function supplier = defaultValueSupplier; + if (supplier != null) { + defaultValue = supplier.apply(ctx).booleanValue(); + defaultValueSupplier = null; + } + return defaultValue; + } +} diff --git a/core/java/android/ext/settings/BoolSysProperty.java b/core/java/android/ext/settings/BoolSysProperty.java new file mode 100644 index 0000000000000..4ea251cb1ffb3 --- /dev/null +++ b/core/java/android/ext/settings/BoolSysProperty.java @@ -0,0 +1,32 @@ +package android.ext.settings; + +import android.annotation.NonNull; +import android.annotation.SystemApi; +import android.content.Context; +import android.os.UserHandle; + +import java.util.function.BooleanSupplier; +import java.util.function.Function; + +/** @hide */ +@SystemApi +public class BoolSysProperty extends BoolSetting { + + public BoolSysProperty(@NonNull String key, boolean defaultValue) { + super(Scope.SYSTEM_PROPERTY, key, defaultValue); + } + + public BoolSysProperty(@NonNull String key, @NonNull Function defaultValue) { + super(Scope.SYSTEM_PROPERTY, key, defaultValue); + } + + public boolean get() { + //noinspection DataFlowIssue + return super.get(null, UserHandle.USER_SYSTEM); + } + + public boolean put(boolean val) { + //noinspection DataFlowIssue + return super.put(null, val); + } +} diff --git a/core/java/android/ext/settings/ConnChecksSetting.java b/core/java/android/ext/settings/ConnChecksSetting.java new file mode 100644 index 0000000000000..0bcc7287a2298 --- /dev/null +++ b/core/java/android/ext/settings/ConnChecksSetting.java @@ -0,0 +1,43 @@ +package android.ext.settings; + +import android.annotation.SystemApi; +import android.os.SystemProperties; + +/** @hide */ +@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) +public class ConnChecksSetting { + + public static final int VAL_GRAPHENEOS = 0; + public static final int VAL_STANDARD = 1; + public static final int VAL_DISABLED = 2; + public static final int VAL_DEFAULT = VAL_GRAPHENEOS; + + /** + * Note that the underlying system property is read directly in packages/modules/DnsResolver + * + * @hide + * */ + public static final IntSysProperty SYS_PROP = new IntSysProperty( + "persist.sys.connectivity_checks", + ConnChecksSetting.VAL_DEFAULT, + ConnChecksSetting.VAL_GRAPHENEOS, ConnChecksSetting.VAL_STANDARD, ConnChecksSetting.VAL_DISABLED + ); + + public static int get() { + return SYS_PROP.get(); + } + + public static boolean put(int val) { + return SYS_PROP.put(val); + } + + /** + * Use only during migration, to decide whether to perform it. + * @hide + */ + public static boolean isSet() { + return !SystemProperties.get(SYS_PROP.getKey()).isEmpty(); + } + + private ConnChecksSetting() {} +} diff --git a/core/java/android/ext/settings/CrossProfileClipboardAccessSettings.java b/core/java/android/ext/settings/CrossProfileClipboardAccessSettings.java new file mode 100644 index 0000000000000..5e70abf069cb0 --- /dev/null +++ b/core/java/android/ext/settings/CrossProfileClipboardAccessSettings.java @@ -0,0 +1,32 @@ +package android.ext.settings; + +import android.annotation.NonNull; +import android.content.Context; +import android.provider.Settings; + +/** @hide */ +public class CrossProfileClipboardAccessSettings { + + public static final int FOLLOW_DEFAULT = 0; + public static final int ALLOW_IMPORT_DEFAULTS_ONLY = 1; + public static final int ALLOW_EXPORT_DEFAULTS_ONLY = 2; + public static final int BLOCK = 3; + + public static final IntSetting CROSS_PROFILE_CLIPBOARD_ACCESS_SETTINGS = new IntSetting( + Setting.Scope.PER_USER, Settings.Secure.CROSS_PROFILE_CLIPBOARD_ACCESS, + // default + FOLLOW_DEFAULT, + // valid values + FOLLOW_DEFAULT, ALLOW_IMPORT_DEFAULTS_ONLY, ALLOW_EXPORT_DEFAULTS_ONLY, BLOCK + ); + + public static boolean isExportAccessAllowed(@NonNull Context ctx, int userId) { + int curSetting = CROSS_PROFILE_CLIPBOARD_ACCESS_SETTINGS.get(ctx, userId); + return curSetting == FOLLOW_DEFAULT || curSetting == ALLOW_EXPORT_DEFAULTS_ONLY; + } + + public static boolean isImportAccessAllowed(@NonNull Context ctx, int userId) { + int curSetting = CROSS_PROFILE_CLIPBOARD_ACCESS_SETTINGS.get(ctx, userId); + return curSetting == FOLLOW_DEFAULT || curSetting == ALLOW_IMPORT_DEFAULTS_ONLY; + } +} diff --git a/core/java/android/ext/settings/ExtSettings.java b/core/java/android/ext/settings/ExtSettings.java new file mode 100644 index 0000000000000..821f3d2384ce2 --- /dev/null +++ b/core/java/android/ext/settings/ExtSettings.java @@ -0,0 +1,116 @@ +package android.ext.settings; + +import android.annotation.BoolRes; +import android.annotation.IntegerRes; +import android.annotation.StringRes; +import android.content.Context; +import android.provider.Settings; + +import com.android.internal.R; + +import java.util.concurrent.TimeUnit; +import java.util.function.Function; +import java.util.function.ToIntFunction; + +/** + * Note that android.provider.Settings setting names should be defined in the corresponding classes, + * since the readability of settings is determined by using Java reflection on members of that class. + * + * @see android.provider.Settings#getPublicSettingsForClass + * @hide + */ +public class ExtSettings { + + public static final BoolSysProperty EXEC_SPAWNING = new BoolSysProperty( + "persist.security.exec_spawn", true); + + public static final BoolSetting ALLOW_KEYGUARD_CAMERA = new BoolSetting( + Setting.Scope.SYSTEM_PROPERTY, "persist.keyguard.camera", true); + + public static final BoolSetting AUTO_GRANT_OTHER_SENSORS_PERMISSION = new BoolSetting( + Setting.Scope.PER_USER, Settings.Secure.AUTO_GRANT_OTHER_SENSORS_PERMISSION, true); + + public static final IntSetting AUTO_REBOOT_TIMEOUT = new IntSetting( + Setting.Scope.GLOBAL, Settings.Global.AUTO_REBOOT_TIMEOUT, + // default value: 18 hours + (int) TimeUnit.HOURS.toMillis(18)); + + public static final BoolSetting SCREENSHOT_TIMESTAMP_EXIF = new BoolSetting( + Setting.Scope.PER_USER, Settings.Secure.SCREENSHOT_TIMESTAMP_EXIF, false); + + public static final BoolSetting SCRAMBLE_LOCKSCREEN_PIN_LAYOUT_PRIMARY = new BoolSetting( + Setting.Scope.PER_USER, Settings.Secure.SCRAMBLE_PIN_LAYOUT_PRIMARY, false); + public static final BoolSetting SCRAMBLE_LOCKSCREEN_PIN_LAYOUT_SECONDARY = new BoolSetting( + Setting.Scope.PER_USER, Settings.Secure.SCRAMBLE_PIN_LAYOUT_SECONDARY, false); + + public static final BoolSetting SCRAMBLE_SIM_PIN_LAYOUT = new BoolSetting( + Setting.Scope.PER_USER, Settings.Secure.SCRAMBLE_SIM_PIN_LAYOUT, + // inherit lockscreen PIN setting by default + SCRAMBLE_LOCKSCREEN_PIN_LAYOUT_PRIMARY::get); + + public static final BoolSysProperty ALLOW_GOOGLE_APPS_SPECIAL_ACCESS_TO_ACCELERATORS = new BoolSysProperty( + // also accessed in native code, in frameworks/native/cmds/servicemanager/Access.cpp + "persist.sys.allow_google_apps_special_access_to_accelerators", true); + + // The amount of time in milliseconds before a disconnected Wi-Fi adapter is turned off + public static final IntSetting WIFI_AUTO_OFF = new IntSetting( + Setting.Scope.GLOBAL, Settings.Global.WIFI_AUTO_OFF, 0 /* off by default */); + + // The amount of time in milliseconds before a disconnected Bluetooth adapter is turned off + public static final IntSetting BLUETOOTH_AUTO_OFF = new IntSetting( + Setting.Scope.GLOBAL, Settings.Global.BLUETOOTH_AUTO_OFF, 0 /* off by default */); + + // The amount of time in milliseconds before a Nfc adapter is turned off + public static final IntSetting NFC_AUTO_OFF = new IntSetting( + Setting.Scope.GLOBAL, Settings.Global.NFC_AUTO_OFF, 0 /* off by default */); + + public static final BoolSysProperty ALLOW_NATIVE_DEBUG_BY_DEFAULT = new BoolSysProperty( + "persist.native_debug", defaultBool(R.bool.setting_default_allow_native_debugging)); + + // AppCompatConfig specifies which hardening features are compatible/incompatible with a + // specific app. + // This setting controls whether incompatible hardening features would be disabled by default + // for that app. In both cases, user will still be able to enable/disable them manually. + // + // Note that hardening features that are marked as compatible are enabled unconditionally by + // default, regardless of this setting. + public static final BoolSetting ALLOW_DISABLING_HARDENING_VIA_APP_COMPAT_CONFIG = new BoolSetting( + Setting.Scope.GLOBAL, Settings.Global.ALLOW_DISABLING_HARDENING_VIA_APP_COMPAT_CONFIG, + defaultBool(R.bool.setting_default_allow_disabling_hardening_via_app_compat_config)); + + public static final BoolSetting RESTRICT_MEMORY_DYN_CODE_LOADING_BY_DEFAULT = new BoolSetting( + Setting.Scope.GLOBAL, Settings.Global.RESTRICT_MEMORY_DYN_CODE_LOADING_BY_DEFAULT, + defaultBool(R.bool.setting_default_restrict_memory_dyn_code_loading)); + + public static final BoolSetting RESTRICT_STORAGE_DYN_CODE_LOADING_BY_DEFAULT = new BoolSetting( + Setting.Scope.GLOBAL, Settings.Global.RESTRICT_STORAGE_DYN_CODE_LOADING_BY_DEFAULT, + defaultBool(R.bool.setting_default_restrict_storage_dyn_code_loading)); + + public static final BoolSetting RESTRICT_WEBVIEW_DYN_CODE_LOADING_BY_DEFAULT = new BoolSetting( + Setting.Scope.GLOBAL, Settings.Global.RESTRICT_WEBVIEW_DYN_CODE_LOADING_BY_DEFAULT, + defaultBool(R.bool.setting_default_restrict_webview_dyn_code_loading)); + + public static final BoolSetting FORCE_APP_MEMTAG_BY_DEFAULT = new BoolSetting( + Setting.Scope.GLOBAL, Settings.Global.FORCE_APP_MEMTAG_BY_DEFAULT, + defaultBool(R.bool.setting_default_force_app_memtag)); + + public static final BoolSetting SHOW_SYSTEM_PROCESS_CRASH_NOTIFICATIONS = new BoolSetting( + Setting.Scope.GLOBAL, Settings.Global.SHOW_SYSTEM_PROCESS_CRASH_NOTIFICATIONS, false); + + public static final BoolSetting DISALLOW_DELAYED_LOCKING_ON_USER_STOP = new BoolSetting( + Setting.Scope.PER_USER, Settings.Secure.DISALLOW_DELAYED_LOCKING_ON_USER_STOP, false); + + private ExtSettings() {} + + public static Function defaultBool(@BoolRes int res) { + return ctx -> ctx.getResources().getBoolean(res); + } + + public static ToIntFunction defaultInt(@IntegerRes int res) { + return ctx -> ctx.getResources().getInteger(res); + } + + public static Function defaultString(@StringRes int res) { + return ctx -> ctx.getString(res); + } +} diff --git a/core/java/android/ext/settings/GnssSettings.java b/core/java/android/ext/settings/GnssSettings.java new file mode 100644 index 0000000000000..c380bc36f3165 --- /dev/null +++ b/core/java/android/ext/settings/GnssSettings.java @@ -0,0 +1,37 @@ +package android.ext.settings; + +import android.content.Context; +import android.provider.Settings; + +/** @hide */ +public class GnssSettings { + + public static final int SUPL_SERVER_STANDARD = 0; + public static final int SUPL_DISABLED = 1; + public static final int SUPL_SERVER_GRAPHENEOS_PROXY = 2; + + public static final IntSetting SUPL_SETTING = new IntSetting( + Setting.Scope.GLOBAL, Settings.Global.GNSS_SUPL, + SUPL_SERVER_GRAPHENEOS_PROXY, // default + SUPL_SERVER_STANDARD, SUPL_DISABLED, SUPL_SERVER_GRAPHENEOS_PROXY // valid values + ); + + // keep in sync with bionic/libc/bionic/gnss_psds_setting.c + public static final int PSDS_SERVER_GRAPHENEOS = 0; + public static final int PSDS_SERVER_STANDARD = 1; + public static final int PSDS_DISABLED = 2; + + public static final IntSetting STANDARD_PSDS_SETTING = new IntSetting( + Setting.Scope.GLOBAL, Settings.Global.GNSS_PSDS_STANDARD, + PSDS_SERVER_GRAPHENEOS, // default + PSDS_SERVER_GRAPHENEOS, PSDS_SERVER_STANDARD, PSDS_DISABLED // valid values + ); + + public static IntSetting getPsdsSetting(Context ctx) { + return STANDARD_PSDS_SETTING; + } + + public static boolean isStandardPsds(Context ctx) { + return getPsdsSetting(ctx) == STANDARD_PSDS_SETTING; + } +} diff --git a/core/java/android/ext/settings/IntSetting.java b/core/java/android/ext/settings/IntSetting.java new file mode 100644 index 0000000000000..bffc35ae75cc3 --- /dev/null +++ b/core/java/android/ext/settings/IntSetting.java @@ -0,0 +1,111 @@ +/* + * Copyright (C) 2022 GrapheneOS + * SPDX-License-Identifier: Apache-2.0 + */ + +package android.ext.settings; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SystemApi; +import android.content.Context; + +import java.util.function.ToIntFunction; + +/** @hide */ +@SystemApi +public class IntSetting extends Setting { + private int defaultValue; + private volatile ToIntFunction defaultValueSupplier; + + @Nullable private final int[] validValues; + + private IntSetting(@NonNull Scope scope, @NonNull String key, @Nullable int[] validValues) { + super(scope, key); + this.validValues = validValues; + } + + public IntSetting(@NonNull Scope scope, @NonNull String key, int defaultValue) { + this(scope, key, (int[]) null); + setDefaultValue(defaultValue); + } + + public IntSetting(@NonNull Scope scope, @NonNull String key, int defaultValue, @NonNull int... validValues) { + this(scope, key, validValues); + setDefaultValue(defaultValue); + } + + public IntSetting(@NonNull Scope scope, @NonNull String key, @NonNull ToIntFunction defaultValue) { + this(scope, key, (int[]) null); + defaultValueSupplier = defaultValue; + } + + public IntSetting(@NonNull Scope scope, @NonNull String key, @NonNull ToIntFunction defaultValue, + @NonNull int... validValues) { + this(scope, key, validValues); + defaultValueSupplier = defaultValue; + } + + public boolean validateValue(int val) { + if (validValues == null) { + return true; + } + // don't do sort() + bsearch() of validValues array, it's expected to have a small number of entries + for (int validValue : validValues) { + if (val == validValue) { + return true; + } + } + return false; + } + + public final int get(@NonNull Context ctx) { + return get(ctx, ctx.getUserId()); + } + + // use only if this is a per-user setting and the context is not a per-user one + public final int get(@NonNull Context ctx, int userId) { + String valueStr = getRaw(ctx, userId); + + if (valueStr == null) { + return getDefaultValue(ctx); + } + + int value; + try { + value = Integer.parseInt(valueStr); + } catch (NumberFormatException e) { + e.printStackTrace(); + return getDefaultValue(ctx); + } + + if (!validateValue(value)) { + return getDefaultValue(ctx); + } + + return value; + } + + public final boolean put(@NonNull Context ctx, int val) { + if (!validateValue(val)) { + throw new IllegalArgumentException(Integer.toString(val)); + } + return putRaw(ctx, Integer.toString(val)); + } + + private void setDefaultValue(int val) { + if (!validateValue(val)) { + throw new IllegalStateException("invalid default value " + val); + } + defaultValue = val; + } + + private int getDefaultValue(Context ctx) { + ToIntFunction supplier = defaultValueSupplier; + if (supplier != null) { + setDefaultValue(supplier.applyAsInt(ctx)); + defaultValueSupplier = null; + } + return defaultValue; + } +} diff --git a/core/java/android/ext/settings/IntSysProperty.java b/core/java/android/ext/settings/IntSysProperty.java new file mode 100644 index 0000000000000..c8842ebb54557 --- /dev/null +++ b/core/java/android/ext/settings/IntSysProperty.java @@ -0,0 +1,39 @@ +package android.ext.settings; + +import android.annotation.NonNull; +import android.annotation.SystemApi; +import android.content.Context; +import android.os.UserHandle; + +import java.util.function.ToIntFunction; + +/** @hide */ +@SystemApi +public class IntSysProperty extends IntSetting { + + public IntSysProperty(@NonNull String key, int defaultValue) { + super(Scope.SYSTEM_PROPERTY, key, defaultValue); + } + + public IntSysProperty(@NonNull String key, int defaultValue, @NonNull int... validValues) { + super(Scope.SYSTEM_PROPERTY, key, defaultValue, validValues); + } + + public IntSysProperty(@NonNull String key, @NonNull ToIntFunction defaultValue) { + super(Scope.SYSTEM_PROPERTY, key, defaultValue); + } + + public IntSysProperty(@NonNull String key, @NonNull ToIntFunction defaultValue, @NonNull int... validValues) { + super(Scope.SYSTEM_PROPERTY, key, defaultValue, validValues); + } + + public int get() { + //noinspection DataFlowIssue + return super.get(null, UserHandle.USER_SYSTEM); + } + + public boolean put(int val) { + //noinspection DataFlowIssue + return super.put(null, val); + } +} diff --git a/core/java/android/ext/settings/NetworkLocationSettings.java b/core/java/android/ext/settings/NetworkLocationSettings.java new file mode 100644 index 0000000000000..7d70586bddcec --- /dev/null +++ b/core/java/android/ext/settings/NetworkLocationSettings.java @@ -0,0 +1,17 @@ +package android.ext.settings; + +import android.provider.Settings; + +/** @hide */ +public class NetworkLocationSettings { + + public static final int NETWORK_LOCATION_DISABLED = 0; + public static final int NETWORK_LOCATION_SERVER_APPLE = 1; + public static final int NETWORK_LOCATION_SERVER_GRAPHENEOS_PROXY = 2; + + public static final IntSetting NETWORK_LOCATION_SETTING = new IntSetting( + Setting.Scope.GLOBAL, Settings.Global.NETWORK_LOCATION, + NETWORK_LOCATION_DISABLED, // default + NETWORK_LOCATION_SERVER_GRAPHENEOS_PROXY, NETWORK_LOCATION_SERVER_APPLE, NETWORK_LOCATION_DISABLED // valid values + ); +} \ No newline at end of file diff --git a/core/java/android/ext/settings/RemoteKeyProvisioningSettings.java b/core/java/android/ext/settings/RemoteKeyProvisioningSettings.java new file mode 100644 index 0000000000000..69959118c414e --- /dev/null +++ b/core/java/android/ext/settings/RemoteKeyProvisioningSettings.java @@ -0,0 +1,37 @@ +package android.ext.settings; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SystemApi; +import android.content.Context; +import android.provider.Settings; + +import static android.annotation.SystemApi.Client.MODULE_LIBRARIES; + +/** @hide */ +@SystemApi(client = MODULE_LIBRARIES) +public class RemoteKeyProvisioningSettings { + + public static final int GRAPHENEOS_PROXY = 0; + public static final int STANDARD_SERVER = 1; + + private static final String GRAPHENEOS_PROXY_URL = "https://remoteprovisioning.grapheneos.org/v1"; + + /** @hide */ + public static final IntSetting SERVER_SETTING = new IntSetting( + Setting.Scope.GLOBAL, Settings.Global.REMOTE_KEY_PROVISIONING_SERVER, + GRAPHENEOS_PROXY, // default + STANDARD_SERVER, GRAPHENEOS_PROXY // valid values + ); + + @Nullable + public static String getServerUrlOverride(@NonNull Context ctx) { + if (SERVER_SETTING.get(ctx) == GRAPHENEOS_PROXY) { + return GRAPHENEOS_PROXY_URL; + } + + return null; + } + + private RemoteKeyProvisioningSettings() {} +} diff --git a/core/java/android/ext/settings/Setting.java b/core/java/android/ext/settings/Setting.java new file mode 100644 index 0000000000000..236df65a6cf45 --- /dev/null +++ b/core/java/android/ext/settings/Setting.java @@ -0,0 +1,179 @@ +/* + * Copyright (C) 2022 GrapheneOS + * SPDX-License-Identifier: Apache-2.0 + */ + +package android.ext.settings; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SuppressLint; +import android.annotation.SystemApi; +import android.content.Context; +import android.database.ContentObserver; +import android.net.Uri; +import android.os.Handler; +import android.os.SystemProperties; +import android.provider.Settings; +import android.util.Log; + +import java.util.function.Consumer; + +/** @hide */ +@SystemApi +public abstract class Setting { + + @SuppressLint("Enum") + public enum Scope { + SYSTEM_PROPERTY, // android.os.SystemProperties, doesn't support state observers + GLOBAL, // android.provider.Settings.Global + PER_USER, // android.provider.Settings.Secure + } + + private final Scope scope; + private final String key; + + /** @hide */ + protected Setting(Scope scope, String key) { + this.scope = scope; + this.key = key; + } + + @NonNull + public final String getKey() { + return key; + } + + @NonNull + public final Scope getScope() { + return scope; + } + + /** @hide */ + @Nullable + protected final String getRaw(Context ctx, int userId) { + try { + switch (scope) { + case SYSTEM_PROPERTY: { + String s = SystemProperties.get(key); + if (s.isEmpty()) { + return null; + } + return s; + } + case GLOBAL: + return Settings.Global.getString(ctx.getContentResolver(), key); + case PER_USER: + return Settings.Secure.getStringForUser(ctx.getContentResolver(), key, userId); + } + } catch (Throwable e) { + Log.e("ExtSettings", "key: " + key, e); + if (Settings.isInSystemServer()) { + // should never happen under normal circumstances, but if it does, + // don't crash the system_server + return null; + } + + throw e; + } + + // "switch (scope)" above should be exhaustive + throw new IllegalStateException(); + } + + /** @hide */ + protected final boolean putRaw(Context ctx, String val) { + switch (scope) { + case SYSTEM_PROPERTY: { + try { + SystemProperties.set(key, val); + return true; + } catch (RuntimeException e) { + e.printStackTrace(); + if (e instanceof IllegalArgumentException) { + // see doc + throw e; + } + return false; + } + } + case GLOBAL: + return Settings.Global.putString(ctx.getContentResolver(), key, val); + case PER_USER: + return Settings.Secure.putString(ctx.getContentResolver(), key, val); + default: + throw new IllegalStateException(); + } + } + + public final boolean canObserveState() { + return scope != Scope.SYSTEM_PROPERTY; + } + + // pass the return value to unregisterObserver() to remove the observer + @NonNull + public final Object registerObserver(@NonNull Context ctx, @NonNull Handler handler, @NonNull Consumer callback) { + return registerObserver(ctx, ctx.getUserId(), handler, callback); + } + + @NonNull + public final Object registerObserver(@NonNull Context ctx, int userId, @NonNull Handler handler, @NonNull Consumer callback) { + if (scope == Scope.SYSTEM_PROPERTY) { + // SystemProperties.addChangeCallback() doesn't work unless the change is actually + // reported elsewhere in the same process with SystemProperties.callChangeCallbacks() + // or with its native equivalent (report_sysprop_change()). + // Leave the code in place in case this changes in the future. + if (false) { + Runnable observer = new Runnable() { + private volatile String prev = SystemProperties.get(getKey()); + + @Override + public void run() { + String value = SystemProperties.get(getKey()); + // change callback is dispatched whenever any change to system props occurs + if (!prev.equals(value)) { + prev = value; + handler.post(() -> callback.accept((SelfType) Setting.this)); + } + } + }; + SystemProperties.addChangeCallback(observer); + return observer; + } + throw new UnsupportedOperationException("observing sysprop state is not supported"); + } + + Uri uri; + switch (scope) { + case GLOBAL: + uri = Settings.Global.getUriFor(key); + break; + case PER_USER: + uri = Settings.Secure.getUriFor(key); + break; + default: + throw new IllegalStateException(); + } + + ContentObserver observer = new ContentObserver(handler) { + @Override + public void onChange(boolean selfChange) { + callback.accept((SelfType) Setting.this); + } + }; + ctx.getContentResolver().registerContentObserver(uri, false, observer, userId); + + return observer; + } + + public final void unregisterObserver(@NonNull Context ctx, @NonNull Object observer) { + if (scope == Scope.SYSTEM_PROPERTY) { + if (false) { // see comment in registerObserverInner + SystemProperties.removeChangeCallback((Runnable) observer); + } + throw new UnsupportedOperationException("observing sysprop state is not supported"); + } else { + ctx.getContentResolver().unregisterContentObserver((ContentObserver) observer); + } + } +} diff --git a/core/java/android/ext/settings/StringSetting.java b/core/java/android/ext/settings/StringSetting.java new file mode 100644 index 0000000000000..46fdf5a4e21a6 --- /dev/null +++ b/core/java/android/ext/settings/StringSetting.java @@ -0,0 +1,72 @@ +/* + * Copyright (C) 2022 GrapheneOS + * SPDX-License-Identifier: Apache-2.0 + */ + +package android.ext.settings; + +import android.annotation.NonNull; +import android.annotation.SystemApi; +import android.content.Context; + +import java.util.function.Function; + +/** @hide */ +@SystemApi +public class StringSetting extends Setting { + private String defaultValue; + private volatile Function defaultValueSupplier; + + public StringSetting(@NonNull Scope scope, @NonNull String key, @NonNull String defaultValue) { + super(scope, key); + setDefaultValue(defaultValue); + } + + public StringSetting(@NonNull Scope scope, @NonNull String key, @NonNull Function defaultValue) { + super(scope, key); + this.defaultValueSupplier = defaultValue; + } + + public boolean validateValue(@NonNull String val) { + return true; + } + + @NonNull + public final String get(@NonNull Context ctx) { + return get(ctx, ctx.getUserId()); + } + + @NonNull + // use only if this is a per-user setting and the context does not specify the userId + public final String get(@NonNull Context ctx, int userId) { + String s = getRaw(ctx, userId); + if (s == null || !validateValue(s)) { + return getDefaultValue(ctx); + } + return s; + } + + public final boolean put(@NonNull Context ctx, @NonNull String val) { + if (!validateValue(val)) { + throw new IllegalStateException("invalid value " + val); + } + return putRaw(ctx, val); + } + + private void setDefaultValue(@NonNull String val) { + if (!validateValue(val)) { + throw new IllegalStateException("invalid default value " + val); + } + defaultValue = val; + } + + @NonNull + private String getDefaultValue(Context ctx) { + Function supplier = defaultValueSupplier; + if (supplier != null) { + setDefaultValue(supplier.apply(ctx)); + defaultValueSupplier = null; + } + return defaultValue; + } +} diff --git a/core/java/android/ext/settings/StringSysProperty.java b/core/java/android/ext/settings/StringSysProperty.java new file mode 100644 index 0000000000000..c641426ca0c33 --- /dev/null +++ b/core/java/android/ext/settings/StringSysProperty.java @@ -0,0 +1,32 @@ +package android.ext.settings; + +import android.annotation.NonNull; +import android.annotation.SystemApi; +import android.content.Context; +import android.os.UserHandle; + +import java.util.function.Function; + +/** @hide */ +@SystemApi +public class StringSysProperty extends StringSetting { + + public StringSysProperty(@NonNull String key, @NonNull String defaultValue) { + super(Scope.SYSTEM_PROPERTY, key, defaultValue); + } + + public StringSysProperty(@NonNull String key, @NonNull Function defaultValue) { + super(Scope.SYSTEM_PROPERTY, key, defaultValue); + } + + @NonNull + public String get() { + //noinspection DataFlowIssue + return super.get(null, UserHandle.USER_SYSTEM); + } + + public boolean put(@NonNull String val) { + //noinspection DataFlowIssue + return super.put(null, val); + } +} diff --git a/core/java/android/ext/settings/UsbPortSecurity.java b/core/java/android/ext/settings/UsbPortSecurity.java new file mode 100644 index 0000000000000..bdfa1c1347d8c --- /dev/null +++ b/core/java/android/ext/settings/UsbPortSecurity.java @@ -0,0 +1,16 @@ +package android.ext.settings; + +/** @hide */ +public class UsbPortSecurity { + public static final int MODE_DISABLED = 0; + public static final int MODE_CHARGING_ONLY = 1; + // doesn't apply to connections that were made before locking + public static final int MODE_CHARGING_ONLY_WHEN_LOCKED = 2; + // doesn't apply to connections that were made before locking or first unlock + public static final int MODE_CHARGING_ONLY_WHEN_LOCKED_AFU = 3; + public static final int MODE_ENABLED = 4; + + // keep in sync with USB HAL implementations that check this sysprop during init + public static final IntSysProperty MODE_SETTING = new IntSysProperty( + "persist.security.usb_mode", MODE_CHARGING_ONLY_WHEN_LOCKED); +} diff --git a/core/java/android/ext/settings/WidevineProvisioningSettings.java b/core/java/android/ext/settings/WidevineProvisioningSettings.java new file mode 100644 index 0000000000000..6d5ba2eaa69a1 --- /dev/null +++ b/core/java/android/ext/settings/WidevineProvisioningSettings.java @@ -0,0 +1,37 @@ +package android.ext.settings; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SystemApi; +import android.content.Context; +import android.provider.Settings; + +import static android.annotation.SystemApi.Client.MODULE_LIBRARIES; + +/** @hide */ +@SystemApi(client = MODULE_LIBRARIES) +public class WidevineProvisioningSettings { + /** @hide */ + public static final int WV_GRAPHENEOS_PROXY = 0; + /** @hide */ + public static final int WV_STANDARD_SERVER = 1; + + private static final String WV_GRAPHENEOS_PROXY_HOSTNAME = "widevineprovisioning.grapheneos.org"; + + /** @hide */ + public static final IntSetting SERVER_SETTING = new IntSetting( + Setting.Scope.GLOBAL, Settings.Global.WIDEVINE_PROVISIONING_SERVER, + WV_GRAPHENEOS_PROXY, // default + WV_STANDARD_SERVER, WV_GRAPHENEOS_PROXY // valid values + ); + + @Nullable + public static String getServerHostnameOverride(@NonNull Context ctx) { + if (SERVER_SETTING.get(ctx) == WV_GRAPHENEOS_PROXY) { + return WV_GRAPHENEOS_PROXY_HOSTNAME; + } + return null; + } + + private WidevineProvisioningSettings() {} +} diff --git a/core/java/android/ext/settings/app/AppSwitch.java b/core/java/android/ext/settings/app/AppSwitch.java new file mode 100644 index 0000000000000..d4b172e7212e6 --- /dev/null +++ b/core/java/android/ext/settings/app/AppSwitch.java @@ -0,0 +1,174 @@ +package android.ext.settings.app; + +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; +import android.ext.AppInfoExt; +import android.ext.settings.ExtSettings; + +/** @hide */ +public abstract class AppSwitch { + // optional GosPackageState flag that indicates that non-default value is set, ignored if 0 + @GosPackageStateFlag.Enum int gosPsFlagNonDefault; + // GosPackageState flag that indicates whether the switch is on or off, ignored if + // non-default flag is not set + @GosPackageStateFlag.Enum int gosPsFlag; + // invert meaning of gosPsFlag, i.e. true is off, false is on + boolean gosPsFlagInverted; + // optional GosPackageState flag to suppress switch-related notification (e.g. after + // "Don't show again" notification action) + @GosPackageStateFlag.Enum int gosPsFlagSuppressNotif; + + int compatChangeToDisableHardening = -1; + + // immutability reasons + public static final int IR_UNKNOWN = 0; + public static final int IR_IS_SYSTEM_APP = 1; + public static final int IR_NO_NATIVE_CODE = 2; + public static final int IR_NON_64_BIT_NATIVE_CODE = 3; + public static final int IR_OPTED_IN_VIA_MANIFEST = 4; + public static final int IR_IS_DEBUGGABLE_APP = 5; + public static final int IR_EXPLOIT_PROTECTION_COMPAT_MODE = 6; + public static final int IR_REQUIRED_BY_HARDENED_MALLOC = 7; + + // default value reasons + public static final int DVR_UNKNOWN = 0; + public static final int DVR_DEFAULT_SETTING = 1; + public static final int DVR_APP_COMPAT_CONFIG_HARDENING_OPT_IN = 2; + public static final int DVR_APP_COMPAT_CONFIG_HARDENING_OPT_OUT = 3; + public static final int DVR_APP_IS_CLIENT_OF_GMSCORE = 4; + + public static class StateInfo { + // use it only if StateInfo is not needed, it's not thread-safe to read from this variable + static final StateInfo PLACEHOLDER = new StateInfo(); + + boolean isImmutable; + int immutabilityReason = IR_UNKNOWN; + + boolean isUsingDefaultValue; + int defaultValueReason = DVR_UNKNOWN; + + public boolean isImmutable() { + return isImmutable; + } + + public int getImmutabilityReason() { + return immutabilityReason; + } + + public boolean isUsingDefaultValue() { + return isUsingDefaultValue; + } + + public int getDefaultValueReason() { + return defaultValueReason; + } + } + + public final boolean isImmutable(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps) { + return getImmutableValue(ctx, userId, appInfo, ps) != null; + } + + public final Boolean getImmutableValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps) { + return getImmutableValue(ctx, userId, appInfo, ps, StateInfo.PLACEHOLDER); + } + + // returns null if value is currently mutable + public Boolean getImmutableValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + return null; + } + + public final boolean getDefaultValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps) { + return getDefaultValue(ctx, userId, appInfo, ps, StateInfo.PLACEHOLDER); + } + + public final boolean getDefaultValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + int compatChangeForOff = this.compatChangeToDisableHardening; + if (compatChangeForOff >= 0) { + AppInfoExt aie = appInfo.ext(); + if (aie.hasCompatConfig()) { + boolean res = !aie.hasCompatChange(compatChangeForOff); + if (res || ExtSettings.ALLOW_DISABLING_HARDENING_VIA_APP_COMPAT_CONFIG.get(ctx, userId)) { + si.defaultValueReason = res ? + DVR_APP_COMPAT_CONFIG_HARDENING_OPT_IN : DVR_APP_COMPAT_CONFIG_HARDENING_OPT_OUT; + return res; + } + } + } + + return getDefaultValueInner(ctx, userId, appInfo, ps, si); + } + + protected abstract boolean getDefaultValueInner(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si); + + + public final boolean get(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps) { + return get(ctx, userId, appInfo, ps, StateInfo.PLACEHOLDER); + } + + public final boolean get(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + Boolean immValue = getImmutableValue(ctx, userId, appInfo, ps, si); + + boolean res; + if (immValue != null) { + si.isImmutable = true; + res = immValue.booleanValue(); + } else if (isUsingDefaultValue(ps)) { + si.isUsingDefaultValue = true; + res = getDefaultValue(ctx, userId, appInfo, ps, si); + } else { + res = ps.hasFlag(gosPsFlag); + if (gosPsFlagInverted) { + res = !res; + } + } + + return res; + } + + public final void set(GosPackageState.Editor ed, boolean on) { + if (gosPsFlagNonDefault != 0) { + ed.addFlag(gosPsFlagNonDefault); + } + + if (gosPsFlagInverted) { + ed.setFlagState(gosPsFlag, !on); + } else { + ed.setFlagState(gosPsFlag, on); + } + } + + private boolean isUsingDefaultValue(GosPackageState ps) { + return gosPsFlagNonDefault != 0 && !ps.hasFlag(gosPsFlagNonDefault); + } + + public final void setUseDefaultValue(GosPackageState.Editor ed) { + ed.clearFlag(gosPsFlagNonDefault); + ed.clearFlag(gosPsFlag); + } + + public final boolean hasNotification() { + return gosPsFlagSuppressNotif != 0; + } + + public final boolean isNotificationEnabled(GosPackageState ps) { + int flag = gosPsFlagSuppressNotif; + if (flag == 0) { + return false; + } + return !ps.hasFlag(flag); + } + + public final void setNotificationEnabled(GosPackageState.Editor ed, boolean enabled) { + ed.setFlagState(gosPsFlagSuppressNotif, !enabled); + } +} diff --git a/core/java/android/ext/settings/app/AswBlockPlayIntegrityApi.java b/core/java/android/ext/settings/app/AswBlockPlayIntegrityApi.java new file mode 100644 index 0000000000000..bf20b252416b7 --- /dev/null +++ b/core/java/android/ext/settings/app/AswBlockPlayIntegrityApi.java @@ -0,0 +1,21 @@ +package android.ext.settings.app; + +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; + +/** @hide */ +public class AswBlockPlayIntegrityApi extends AppSwitch { + public static final AswBlockPlayIntegrityApi I = new AswBlockPlayIntegrityApi(); + + private AswBlockPlayIntegrityApi() { + gosPsFlag = GosPackageStateFlag.BLOCK_PLAY_INTEGRITY_API; + gosPsFlagSuppressNotif = GosPackageStateFlag.SUPPRESS_PLAY_INTEGRITY_API_NOTIF; + } + + @Override + protected boolean getDefaultValueInner(Context ctx, int userId, ApplicationInfo appInfo, GosPackageState ps, StateInfo si) { + return false; + } +} diff --git a/core/java/android/ext/settings/app/AswDenyNativeDebug.java b/core/java/android/ext/settings/app/AswDenyNativeDebug.java new file mode 100644 index 0000000000000..0e2b1fce51988 --- /dev/null +++ b/core/java/android/ext/settings/app/AswDenyNativeDebug.java @@ -0,0 +1,49 @@ +package android.ext.settings.app; + +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; +import android.ext.settings.ExtSettings; + +import com.android.internal.os.SELinuxFlags; +import com.android.server.os.nano.AppCompatProtos; + +/** @hide */ +public class AswDenyNativeDebug extends AppSwitch { + public static final AswDenyNativeDebug I = new AswDenyNativeDebug(); + + private AswDenyNativeDebug() { + gosPsFlagNonDefault = GosPackageStateFlag.BLOCK_NATIVE_DEBUGGING_NON_DEFAULT; + gosPsFlag = GosPackageStateFlag.BLOCK_NATIVE_DEBUGGING; + gosPsFlagSuppressNotif = GosPackageStateFlag.BLOCK_NATIVE_DEBUGGING_SUPPRESS_NOTIF; + compatChangeToDisableHardening = AppCompatProtos.ALLOW_NATIVE_DEBUGGING; + } + + @Override + public Boolean getImmutableValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + if (appInfo.isSystemApp() && !SELinuxFlags.isSystemAppSepolicyWeakeningAllowed()) { + si.immutabilityReason = IR_IS_SYSTEM_APP; + return true; + } + + if (ps.hasFlag(GosPackageStateFlag.ENABLE_EXPLOIT_PROTECTION_COMPAT_MODE)) { + si.immutabilityReason = IR_EXPLOIT_PROTECTION_COMPAT_MODE; + return false; + } + + return null; + } + + @Override + protected boolean getDefaultValueInner(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + if (appInfo.isSystemApp()) { + return true; + } + + si.defaultValueReason = DVR_DEFAULT_SETTING; + return !ExtSettings.ALLOW_NATIVE_DEBUG_BY_DEFAULT.get(ctx); + } +} diff --git a/core/java/android/ext/settings/app/AswRestrictMemoryDynCodeLoading.java b/core/java/android/ext/settings/app/AswRestrictMemoryDynCodeLoading.java new file mode 100644 index 0000000000000..2dd6e8da635ee --- /dev/null +++ b/core/java/android/ext/settings/app/AswRestrictMemoryDynCodeLoading.java @@ -0,0 +1,70 @@ +package android.ext.settings.app; + +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; +import android.ext.settings.ExtSettings; +import android.util.ArraySet; + +import com.android.internal.R; +import com.android.internal.os.SELinuxFlags; +import com.android.server.os.nano.AppCompatProtos; + +/** @hide */ +public class AswRestrictMemoryDynCodeLoading extends AppSwitch { + public static final AswRestrictMemoryDynCodeLoading I = new AswRestrictMemoryDynCodeLoading(); + + private AswRestrictMemoryDynCodeLoading() { + gosPsFlagNonDefault = GosPackageStateFlag.RESTRICT_MEMORY_DYN_CODE_LOADING_NON_DEFAULT; + gosPsFlag = GosPackageStateFlag.RESTRICT_MEMORY_DYN_CODE_LOADING; + gosPsFlagSuppressNotif = GosPackageStateFlag.RESTRICT_MEMORY_DYN_CODE_LOADING_SUPPRESS_NOTIF; + compatChangeToDisableHardening = AppCompatProtos.ALLOW_MEMORY_DYN_CODE_EXEC; + } + + private static volatile ArraySet allowedSystemPkgs; + + private static boolean shouldAllowByDefaultToSystemPkg(Context ctx, String pkg) { + var set = allowedSystemPkgs; + if (set == null) { + set = new ArraySet<>(ctx.getResources() + .getStringArray(R.array.system_pkgs_allowed_memory_dyn_code_loading_by_default)); + allowedSystemPkgs = set; + } + return set.contains(pkg); + } + + @Override + public Boolean getImmutableValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + if (appInfo.isSystemApp()) { + if (shouldAllowByDefaultToSystemPkg(ctx, appInfo.packageName)) { + // allow manual restriction + return null; + } + if (SELinuxFlags.isSystemAppSepolicyWeakeningAllowed()) { + return null; + } + si.immutabilityReason = IR_IS_SYSTEM_APP; + return true; + } + + if (ps.hasFlag(GosPackageStateFlag.ENABLE_EXPLOIT_PROTECTION_COMPAT_MODE)) { + si.immutabilityReason = IR_EXPLOIT_PROTECTION_COMPAT_MODE; + return false; + } + + return null; + } + + @Override + protected boolean getDefaultValueInner(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + if (appInfo.isSystemApp()) { + return !shouldAllowByDefaultToSystemPkg(ctx, appInfo.packageName); + } else { + si.defaultValueReason = DVR_DEFAULT_SETTING; + return ExtSettings.RESTRICT_MEMORY_DYN_CODE_LOADING_BY_DEFAULT.get(ctx, userId); + } + } +} diff --git a/core/java/android/ext/settings/app/AswRestrictStorageDynCodeLoading.java b/core/java/android/ext/settings/app/AswRestrictStorageDynCodeLoading.java new file mode 100644 index 0000000000000..31417bf422be9 --- /dev/null +++ b/core/java/android/ext/settings/app/AswRestrictStorageDynCodeLoading.java @@ -0,0 +1,91 @@ +package android.ext.settings.app; + +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; +import android.content.pm.PackageManager; +import android.ext.AppInfoExtFlag; +import android.ext.PackageId; +import android.ext.settings.ExtSettings; +import android.util.ArraySet; + +import com.android.internal.R; +import com.android.internal.os.SELinuxFlags; +import com.android.server.os.nano.AppCompatProtos; + +/** @hide */ +public class AswRestrictStorageDynCodeLoading extends AppSwitch { + public static final AswRestrictStorageDynCodeLoading I = new AswRestrictStorageDynCodeLoading(); + + private AswRestrictStorageDynCodeLoading() { + gosPsFlagNonDefault = GosPackageStateFlag.RESTRICT_STORAGE_DYN_CODE_LOADING_NON_DEFAULT; + gosPsFlag = GosPackageStateFlag.RESTRICT_STORAGE_DYN_CODE_LOADING; + gosPsFlagSuppressNotif = GosPackageStateFlag.RESTRICT_STORAGE_DYN_CODE_LOADING_SUPPRESS_NOTIF; + compatChangeToDisableHardening = AppCompatProtos.ALLOW_STORAGE_DYN_CODE_EXEC; + } + + private static volatile ArraySet allowedSystemPkgs; + + private static boolean shouldAllowByDefaultToSystemPkg(Context ctx, String pkg) { + var set = allowedSystemPkgs; + if (set == null) { + set = new ArraySet<>(ctx.getResources() + .getStringArray(R.array.system_pkgs_allowed_storage_dyn_code_loading_by_default)); + allowedSystemPkgs = set; + } + return set.contains(pkg); + } + + @Override + public Boolean getImmutableValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + if (appInfo.isSystemApp()) { + if (shouldAllowByDefaultToSystemPkg(ctx, appInfo.packageName)) { + // allow manual restriction + return null; + } + if (SELinuxFlags.isSystemAppSepolicyWeakeningAllowed()) { + return null; + } + si.immutabilityReason = IR_IS_SYSTEM_APP; + return true; + } + + if (ps.hasFlag(GosPackageStateFlag.ENABLE_EXPLOIT_PROTECTION_COMPAT_MODE)) { + si.immutabilityReason = IR_EXPLOIT_PROTECTION_COMPAT_MODE; + return false; + } + + return null; + } + + public static boolean isGmsCoreInstalled(Context ctx, int userId) { + PackageManager pm = ctx.getPackageManager(); + try { + ApplicationInfo info = pm.getApplicationInfoAsUser(PackageId.GMS_CORE_NAME, 0, userId); + return info.ext().getPackageId() == PackageId.GMS_CORE; + } catch (PackageManager.NameNotFoundException ignored) { + return false; + } + } + + @Override + protected boolean getDefaultValueInner(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + if (appInfo.isSystemApp()) { + return !shouldAllowByDefaultToSystemPkg(ctx, appInfo.packageName); + } else { + if (appInfo.ext().hasFlag(AppInfoExtFlag.HAS_GMSCORE_CLIENT_LIBRARY)) { + if (isGmsCoreInstalled(ctx, userId)) { + si.defaultValueReason = DVR_APP_IS_CLIENT_OF_GMSCORE; + // Dynamite modules are loaded from writable data storage of GmsCore + return false; + } + } + + si.defaultValueReason = DVR_DEFAULT_SETTING; + return ExtSettings.RESTRICT_STORAGE_DYN_CODE_LOADING_BY_DEFAULT.get(ctx, userId); + } + } +} diff --git a/core/java/android/ext/settings/app/AswRestrictWebViewDynCodeLoading.java b/core/java/android/ext/settings/app/AswRestrictWebViewDynCodeLoading.java new file mode 100644 index 0000000000000..8ef413de96b64 --- /dev/null +++ b/core/java/android/ext/settings/app/AswRestrictWebViewDynCodeLoading.java @@ -0,0 +1,61 @@ +package android.ext.settings.app; + +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; +import android.ext.settings.ExtSettings; +import android.util.ArraySet; + +import com.android.internal.R; +import com.android.internal.os.SELinuxFlags; + +/** @hide */ +public class AswRestrictWebViewDynCodeLoading extends AppSwitch { + public static final AswRestrictWebViewDynCodeLoading I = new AswRestrictWebViewDynCodeLoading(); + + private AswRestrictWebViewDynCodeLoading() { + gosPsFlagNonDefault = GosPackageStateFlag.RESTRICT_WEBVIEW_DYN_CODE_LOADING_NON_DEFAULT; + gosPsFlag = GosPackageStateFlag.RESTRICT_WEBVIEW_DYN_CODE_LOADING; + } + + private static volatile ArraySet allowedSystemPkgs; + + private static boolean shouldAllowByDefaultToSystemPackage(Context ctx, String pkg) { + ArraySet set = allowedSystemPkgs; + if (set == null) { + set = new ArraySet<>(ctx.getResources() + .getStringArray(R.array.system_pkgs_allowed_webview_dyn_code_loading_by_default)); + allowedSystemPkgs = set; + } + return set.contains(pkg); + } + + @Override + public Boolean getImmutableValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + if (appInfo.isSystemApp()) { + if (shouldAllowByDefaultToSystemPackage(ctx, appInfo.packageName)) { + // allow manual restriction + return null; + } else { + if (SELinuxFlags.isSystemAppSepolicyWeakeningAllowed()) { + return null; + } + return true; + } + } + + return null; + } + + @Override + protected boolean getDefaultValueInner(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + if (appInfo.isSystemApp()) { + return !shouldAllowByDefaultToSystemPackage(ctx, appInfo.packageName); + } else { + return ExtSettings.RESTRICT_WEBVIEW_DYN_CODE_LOADING_BY_DEFAULT.get(ctx, userId); + } + } +} diff --git a/core/java/android/ext/settings/app/AswUseExtendedVaSpace.java b/core/java/android/ext/settings/app/AswUseExtendedVaSpace.java new file mode 100644 index 0000000000000..3f20df325d4d9 --- /dev/null +++ b/core/java/android/ext/settings/app/AswUseExtendedVaSpace.java @@ -0,0 +1,49 @@ +package android.ext.settings.app; + +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; + +import com.android.server.os.nano.AppCompatProtos; + +import dalvik.system.VMRuntime; + +/** @hide */ +public class AswUseExtendedVaSpace extends AppSwitch { + public static final AswUseExtendedVaSpace I = new AswUseExtendedVaSpace(); + + private AswUseExtendedVaSpace() { + gosPsFlag = GosPackageStateFlag.USE_EXTENDED_VA_SPACE; + gosPsFlagNonDefault = GosPackageStateFlag.USE_EXTENDED_VA_SPACE_NON_DEFAULT; + compatChangeToDisableHardening = AppCompatProtos.DISABLE_EXTENDED_VA_SPACE; + } + + @Override + public Boolean getImmutableValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + if (AswUseHardenedMalloc.I.get(ctx, userId, appInfo, ps)) { + si.immutabilityReason = IR_REQUIRED_BY_HARDENED_MALLOC; + return true; + } + + String primaryAbi = appInfo.primaryCpuAbi; + if (primaryAbi != null && !VMRuntime.is64BitAbi(primaryAbi)) { + si.immutabilityReason = IR_NON_64_BIT_NATIVE_CODE; + return false; + } + + if (ps.hasFlag(GosPackageStateFlag.ENABLE_EXPLOIT_PROTECTION_COMPAT_MODE)) { + si.immutabilityReason = IR_EXPLOIT_PROTECTION_COMPAT_MODE; + return false; + } + + return null; + } + + @Override + protected boolean getDefaultValueInner(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + return true; + } +} diff --git a/core/java/android/ext/settings/app/AswUseHardenedMalloc.java b/core/java/android/ext/settings/app/AswUseHardenedMalloc.java new file mode 100644 index 0000000000000..d02a8d2afaeae --- /dev/null +++ b/core/java/android/ext/settings/app/AswUseHardenedMalloc.java @@ -0,0 +1,62 @@ +package android.ext.settings.app; + +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; + +import com.android.server.os.nano.AppCompatProtos; + +import dalvik.system.VMRuntime; + +/** @hide */ +public class AswUseHardenedMalloc extends AppSwitch { + public static final AswUseHardenedMalloc I = new AswUseHardenedMalloc(); + + private AswUseHardenedMalloc() { + gosPsFlag = GosPackageStateFlag.USE_HARDENED_MALLOC; + gosPsFlagNonDefault = GosPackageStateFlag.USE_HARDENED_MALLOC_NON_DEFAULT; + compatChangeToDisableHardening = AppCompatProtos.DISABLE_HARDENED_MALLOC; + } + + @Override + public Boolean getImmutableValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + String primaryAbi = appInfo.primaryCpuAbi; + if (primaryAbi == null) { + si.immutabilityReason = IR_NO_NATIVE_CODE; + return true; + } + + if (!VMRuntime.is64BitAbi(primaryAbi)) { + // hardened_malloc is 64-bit only + si.immutabilityReason = IR_NON_64_BIT_NATIVE_CODE; + return false; + } + + if ((appInfo.flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0) { + // turning off hardened_malloc requires exec spawning, which is always disabled for + // debuggable apps + si.immutabilityReason = IR_IS_DEBUGGABLE_APP; + return true; + } + + if (appInfo.isSystemApp()) { + si.immutabilityReason = IR_IS_SYSTEM_APP; + return true; + } + + if (ps.hasFlag(GosPackageStateFlag.ENABLE_EXPLOIT_PROTECTION_COMPAT_MODE)) { + si.immutabilityReason = IR_EXPLOIT_PROTECTION_COMPAT_MODE; + return false; + } + + return null; + } + + @Override + protected boolean getDefaultValueInner(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + return true; + } +} diff --git a/core/java/android/ext/settings/app/AswUseMemoryTagging.java b/core/java/android/ext/settings/app/AswUseMemoryTagging.java new file mode 100644 index 0000000000000..1201529385423 --- /dev/null +++ b/core/java/android/ext/settings/app/AswUseMemoryTagging.java @@ -0,0 +1,68 @@ +package android.ext.settings.app; + +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; +import android.ext.PackageId; +import android.ext.settings.ExtSettings; + +import com.android.server.os.nano.AppCompatProtos; + +import dalvik.system.VMRuntime; + +/** @hide */ +public class AswUseMemoryTagging extends AppSwitch { + public static final AswUseMemoryTagging I = new AswUseMemoryTagging(); + + private AswUseMemoryTagging() { + gosPsFlag = GosPackageStateFlag.FORCE_MEMTAG; + gosPsFlagNonDefault = GosPackageStateFlag.FORCE_MEMTAG_NON_DEFAULT; + gosPsFlagSuppressNotif = GosPackageStateFlag.FORCE_MEMTAG_SUPPRESS_NOTIF; + compatChangeToDisableHardening = AppCompatProtos.DISABLE_MEMORY_TAGGING; + } + + @Override + public Boolean getImmutableValue(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + final String primaryAbi = appInfo.primaryCpuAbi; + if (primaryAbi == null) { + si.immutabilityReason = IR_NO_NATIVE_CODE; + return true; + } + + if (!VMRuntime.is64BitAbi(primaryAbi)) { + si.immutabilityReason = IR_NON_64_BIT_NATIVE_CODE; + return false; + } + + if (appInfo.isSystemApp()) { + switch (appInfo.packageName) { + case PackageId.PIXEL_CAMERA_SERVICES_NAME: + return false; + } + si.immutabilityReason = IR_IS_SYSTEM_APP; + return true; + } + + int mm = appInfo.getMemtagMode(); + if (mm == ApplicationInfo.MEMTAG_ASYNC || mm == ApplicationInfo.MEMTAG_SYNC) { + si.immutabilityReason = IR_OPTED_IN_VIA_MANIFEST; + return true; + } + + if (ps.hasFlag(GosPackageStateFlag.ENABLE_EXPLOIT_PROTECTION_COMPAT_MODE)) { + si.immutabilityReason = IR_EXPLOIT_PROTECTION_COMPAT_MODE; + return false; + } + + return null; + } + + @Override + protected boolean getDefaultValueInner(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, StateInfo si) { + si.defaultValueReason = DVR_DEFAULT_SETTING; + return ExtSettings.FORCE_APP_MEMTAG_BY_DEFAULT.get(ctx, userId); + } +} diff --git a/core/java/android/hardware/biometrics/BiometricPrompt.java b/core/java/android/hardware/biometrics/BiometricPrompt.java index 3ff21d85507ba..b7c2bcae50acc 100644 --- a/core/java/android/hardware/biometrics/BiometricPrompt.java +++ b/core/java/android/hardware/biometrics/BiometricPrompt.java @@ -33,6 +33,7 @@ import android.annotation.Nullable; import android.annotation.RequiresPermission; import android.annotation.TestApi; +import android.app.compat.gms.GmsCompat; import android.content.ComponentName; import android.content.Context; import android.content.DialogInterface; @@ -207,6 +208,12 @@ public BiometricPrompt.Builder setLogoRes(@DrawableRes int logoRes) { "Exclusively one of logo resource or logo bitmap can be set"); } if (logoRes != 0) { + if (GmsCompat.isEnabled()) { + if (!GmsCompat.hasPermission(SET_BIOMETRIC_DIALOG_ADVANCED)) { + return this; + } + } + mPromptInfo.setLogo(logoRes, convertDrawableToBitmap(mContext.getDrawable(logoRes))); } @@ -231,6 +238,11 @@ public BiometricPrompt.Builder setLogoBitmap(@NonNull Bitmap logoBitmap) { throw new IllegalStateException( "Exclusively one of logo resource or logo bitmap can be set"); } + if (GmsCompat.isEnabled()) { + if (!GmsCompat.hasPermission(SET_BIOMETRIC_DIALOG_ADVANCED)) { + return this; + } + } mPromptInfo.setLogo(0, logoBitmap); return this; } @@ -258,6 +270,11 @@ public BiometricPrompt.Builder setLogoDescription(@NonNull String logoDescriptio "Logo description passed in exceeds" + MAX_LOGO_DESCRIPTION_CHARACTER_NUMBER + " character number and may be truncated."); } + if (GmsCompat.isEnabled()) { + if (!GmsCompat.hasPermission(SET_BIOMETRIC_DIALOG_ADVANCED)) { + return this; + } + } mPromptInfo.setLogoDescription(logoDescription); return this; } diff --git a/core/java/android/hardware/camera2/CameraExtensionCharacteristics.java b/core/java/android/hardware/camera2/CameraExtensionCharacteristics.java index 58fe4774f1788..1231c3304c0ca 100644 --- a/core/java/android/hardware/camera2/CameraExtensionCharacteristics.java +++ b/core/java/android/hardware/camera2/CameraExtensionCharacteristics.java @@ -26,6 +26,9 @@ import android.content.Intent; import android.content.pm.PackageManager; import android.content.ServiceConnection; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager; +import android.content.pm.PackageManager.ApplicationInfoFlags; import android.graphics.ImageFormat; import android.hardware.camera2.CameraCharacteristics.Key; import android.hardware.camera2.extension.IAdvancedExtenderImpl; @@ -280,6 +283,16 @@ public static CameraExtensionManagerGlobal get() { return GLOBAL_CAMERA_MANAGER; } + private static boolean validateVendorCameraExtensionsPackage(Context ctx, String pkgName) { + try { + ApplicationInfo ai = ctx.getPackageManager().getApplicationInfo(pkgName, 0); + return ai.isSystemApp(); + } catch (PackageManager.NameNotFoundException e) { + e.printStackTrace(); + return false; + } + } + private void releaseProxyConnectionLocked(Context ctx, int extension) { if (mConnectionManager.getConnection(extension) != null) { ctx.unbindService(mConnectionManager.getConnection(extension)); @@ -297,7 +310,8 @@ private void connectToProxyLocked(Context ctx, int extension, boolean useFallbac "ro.vendor.camera.extensions.package"); String vendorProxyService = SystemProperties.get( "ro.vendor.camera.extensions.service"); - if (!vendorProxyPackage.isEmpty() && !vendorProxyService.isEmpty()) { + if (!vendorProxyPackage.isEmpty() && !vendorProxyService.isEmpty() + && validateVendorCameraExtensionsPackage(ctx, vendorProxyPackage)) { Log.v(TAG, "Choosing the vendor camera extensions proxy package: " + vendorProxyPackage); diff --git a/core/java/android/hardware/fingerprint/FingerprintManager.java b/core/java/android/hardware/fingerprint/FingerprintManager.java index 590c4d6610767..4f44915f62971 100644 --- a/core/java/android/hardware/fingerprint/FingerprintManager.java +++ b/core/java/android/hardware/fingerprint/FingerprintManager.java @@ -32,7 +32,9 @@ import static com.android.internal.util.FrameworkStatsLog.AUTH_DEPRECATED_APIUSED__DEPRECATED_API__API_FINGERPRINT_MANAGER_AUTHENTICATE; import static com.android.internal.util.FrameworkStatsLog.AUTH_DEPRECATED_APIUSED__DEPRECATED_API__API_FINGERPRINT_MANAGER_HAS_ENROLLED_FINGERPRINTS; import static com.android.internal.util.FrameworkStatsLog.AUTH_DEPRECATED_APIUSED__DEPRECATED_API__API_FINGERPRINT_MANAGER_IS_HARDWARE_DETECTED; +import static java.util.Objects.requireNonNull; +import android.annotation.CheckResult; import android.annotation.FlaggedApi; import android.annotation.IntDef; import android.annotation.NonNull; @@ -667,6 +669,45 @@ public void authenticate(@Nullable CryptoObject crypto, @Nullable CancellationSi } } + /** @hide */ public static final int SUCCESS = 0; + /** @hide */ public static final int ERROR_NO_PENDING_AUTH_TOKEN = 1; + /** @hide */ public static final int ERROR_UNABLE_TO_ADD_AUTH_TOKEN_TO_KEYSTORE = 2; + + /** @hide */ + @IntDef({SUCCESS, ERROR_NO_PENDING_AUTH_TOKEN, ERROR_UNABLE_TO_ADD_AUTH_TOKEN_TO_KEYSTORE}) + @Retention(RetentionPolicy.SOURCE) + public @interface AddPendingAuthTokenResult {} + + /** + * Add a pending hardware auth token to KeyStore. This should only be called after biometric + * second factor has succeeded. + * @hide + */ + @RequiresPermission(USE_BIOMETRIC_INTERNAL) + @CheckResult + public @AddPendingAuthTokenResult int addPendingAuthTokenToKeyStore(final int userId) { + IFingerprintService service = requireNonNull(mService, "mService"); + try { + return service.addPendingAuthTokenToKeyStore(userId); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + + /** + * Clear all pending auth tokens. + * @hide + */ + @RequiresPermission(USE_BIOMETRIC_INTERNAL) + public void clearPendingAuthTokens() { + IFingerprintService service = requireNonNull(mService, "mService"); + try { + service.clearPendingAuthTokens(); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + /** * Uses the fingerprint hardware to detect for the presence of a finger, without giving details * about accept/reject/lockout. diff --git a/core/java/android/hardware/fingerprint/IFingerprintService.aidl b/core/java/android/hardware/fingerprint/IFingerprintService.aidl index 370f097b68507..2b3916c2f824a 100644 --- a/core/java/android/hardware/fingerprint/IFingerprintService.aidl +++ b/core/java/android/hardware/fingerprint/IFingerprintService.aidl @@ -61,6 +61,15 @@ interface IFingerprintService { long authenticate(IBinder token, long operationId, IFingerprintServiceReceiver receiver, in FingerprintAuthenticateOptions options); + // Add a pending hardware auth token to KeyStore. This should only be called after biometric + // second factor has succeeded. + @EnforcePermission("USE_BIOMETRIC_INTERNAL") + int addPendingAuthTokenToKeyStore(int userId); + + // Clear all pending auth tokens. + @EnforcePermission("USE_BIOMETRIC_INTERNAL") + void clearPendingAuthTokens(); + // Uses the fingerprint hardware to detect for the presence of a finger, without giving details // about accept/reject/lockout. A requestId is returned that can be used to cancel this // operation. diff --git a/core/java/android/hardware/usb/IUsbManager.aidl b/core/java/android/hardware/usb/IUsbManager.aidl index c0e506b05a64e..07890f305d41c 100644 --- a/core/java/android/hardware/usb/IUsbManager.aidl +++ b/core/java/android/hardware/usb/IUsbManager.aidl @@ -127,14 +127,14 @@ interface IUsbManager boolean isFunctionEnabled(String function); /* Sets the current USB function. */ - @EnforcePermission("MANAGE_USB") + @EnforcePermission(anyOf={"MANAGE_USB", "MANAGE_USB_ANDROID_AUTO"}) void setCurrentFunctions(long functions, int operationId); /* Compatibility version of setCurrentFunctions(long). */ void setCurrentFunction(String function, boolean usbDataUnlocked, int operationId); /* Gets the current USB functions. */ - @EnforcePermission("MANAGE_USB") + @EnforcePermission(anyOf={"MANAGE_USB", "MANAGE_USB_ANDROID_AUTO"}) long getCurrentFunctions(); /* Gets the current USB Speed. */ @@ -156,7 +156,7 @@ interface IUsbManager long getScreenUnlockedFunctions(); /* Resets the USB gadget. */ - @EnforcePermission("MANAGE_USB") + @EnforcePermission(anyOf={"MANAGE_USB", "MANAGE_USB_ANDROID_AUTO"}) void resetUsbGadget(); /* Resets the USB port. */ @@ -180,7 +180,7 @@ interface IUsbManager ParcelFileDescriptor getControlFd(long function); /* Gets the list of USB ports. */ - @EnforcePermission("MANAGE_USB") + @EnforcePermission(anyOf={"MANAGE_USB", "MANAGE_USB_ANDROID_AUTO"}) List getPorts(); /* Gets the status of the specified USB port. */ @@ -215,4 +215,6 @@ interface IUsbManager "@android.annotation.RequiresPermission(android.Manifest.permission.MANAGE_USB)") void unregisterForDisplayPortEvents(IDisplayPortAltModeInfoListener listener); + @EnforcePermission("MANAGE_USB") + void setSecurityStateForAllPorts(int state, in android.os.ResultReceiver callback); } diff --git a/core/java/android/hardware/usb/UsbManager.java b/core/java/android/hardware/usb/UsbManager.java index d2e232a946222..1b780a8de7e8c 100644 --- a/core/java/android/hardware/usb/UsbManager.java +++ b/core/java/android/hardware/usb/UsbManager.java @@ -1897,6 +1897,23 @@ boolean enableUsbData(@NonNull UsbPort port, boolean enable, int operationId, } } + /** @hide */ + public static final int SET_PORT_SECURITY_STATE_RESULT_CODE_FRAMEWORK_EXCEPTION = 100; // lower values are reserved for IUsbExt error codes + /** @hide */ + public static final String SET_PORT_SECURITY_STATE_EXCEPTION_KEY = "exception"; + + /** @hide */ + @RequiresPermission(Manifest.permission.MANAGE_USB) + public void setSecurityStateForAllPorts( + @android.hardware.usb.ext.PortSecurityState int state, + @NonNull android.os.ResultReceiver statusCallback) { + try { + mService.setSecurityStateForAllPorts(state, statusCallback); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + /** * Should only be called by {@link UsbPort#enableUsbDataWhileDocked}. *

diff --git a/core/java/android/net/EventLogTags.logtags b/core/java/android/net/EventLogTags.logtags index 32953c92d1203..94726cae55443 100644 --- a/core/java/android/net/EventLogTags.logtags +++ b/core/java/android/net/EventLogTags.logtags @@ -4,3 +4,5 @@ option java_package android.net 50080 ntp_success (server|3),(rtt|2),(offset|2) 50081 ntp_failure (server|3),(msg|3) +50082 https_time_success (url|3),(rtt|2),(offset|2) +50083 https_time_failure (url|3),(msg|3) diff --git a/core/java/android/net/HttpsTimeClient.java b/core/java/android/net/HttpsTimeClient.java new file mode 100644 index 0000000000000..fadfc94a4c769 --- /dev/null +++ b/core/java/android/net/HttpsTimeClient.java @@ -0,0 +1,421 @@ +package android.net; + +import android.annotation.Nullable; +import android.content.Context; +import android.content.res.Resources; +import android.os.SystemClock; +import android.util.Log; +import android.util.NtpTrustedTime.TimeResult; + +import com.android.internal.R; + +import java.io.InputStream; +import java.math.BigInteger; +import java.net.InetSocketAddress; +import java.net.MalformedURLException; +import java.net.URL; +import java.security.GeneralSecurityException; +import java.security.InvalidKeyException; +import java.security.KeyManagementException; +import java.security.KeyStore; +import java.security.KeyStoreException; +import java.security.NoSuchAlgorithmException; +import java.security.NoSuchProviderException; +import java.security.Principal; +import java.security.PublicKey; +import java.security.SignatureException; +import java.security.cert.CertificateEncodingException; +import java.security.cert.CertificateException; +import java.security.cert.CertificateExpiredException; +import java.security.cert.CertificateParsingException; +import java.security.cert.X509Certificate; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.Date; +import java.util.List; +import java.util.Set; + +import javax.net.ssl.HttpsURLConnection; +import javax.net.ssl.SSLContext; +import javax.net.ssl.SSLSocketFactory; +import javax.net.ssl.TrustManager; +import javax.net.ssl.TrustManagerFactory; +import javax.net.ssl.X509TrustManager; +import javax.security.auth.x500.X500Principal; + +import libcore.io.IoUtils; + +import static com.android.net.module.util.ConnectivityUtils.saturatedCast; + +/** @hide */ +public class HttpsTimeClient { + private static final String TAG = HttpsTimeClient.class.getSimpleName(); + + private final Config config; + private final Network network; + + public HttpsTimeClient(Config config, Network network) { + this.config = config; + this.network = network; + } + + public static class Config { + public final List urls; + public final int timeoutMillis; + + Config(List urls, int timeoutMillis) { + this.urls = urls; + this.timeoutMillis = timeoutMillis; + } + + public static Config getDefault(Context ctx) { + Resources res = ctx.getResources(); + + String[] urlArr = res.getStringArray(R.array.config_httpsTimeUrls); + int num = urlArr.length; + List urls = new ArrayList<>(num); + for (int i = 0; i < num; ++i) { + URL url; + try { + url = new URL(urlArr[i]); + } catch (MalformedURLException e) { + throw new IllegalStateException(e); + } + urls.add(url); + } + final int timeoutMillis = res.getInteger(R.integer.config_ntpTimeout); + + return new Config(urls, timeoutMillis); + } + + @Override + public String toString() { + return "HttpsTimeConfig{urls=" + Arrays.toString(urls.toArray()) + + ", timeoutMillis=" + timeoutMillis + + '}'; + } + } + + public static class Result { + public final TimeResult timeResult; + public final URL url; + + Result(TimeResult timeResult, URL url) { + this.timeResult = timeResult; + this.url = url; + } + } + + public Result requestTime(@Nullable URL lastSuccessfulUrl) { + ArrayList urls = new ArrayList<>(config.urls); + if (urls.remove(lastSuccessfulUrl)) { + urls.add(0, lastSuccessfulUrl); + } + + for (URL url : urls) { + TimeResult timeResult = requestTimeInner(url); + if (timeResult != null) { + return new Result(timeResult, url); + } + } + return null; + } + + private TimeResult requestTimeInner(URL url) { + final Network networkForResolv = network.getPrivateDnsBypassingCopy(); + final int timeout = config.timeoutMillis; + HttpsURLConnection conn = null; + InputStream streamToClose = null; + try { + SSLSocketFactory socketFactory = createSSLSocketFactory(); + + // establish HTTPS connection in advance to improve accuracy + conn = (HttpsURLConnection) networkForResolv.openConnection(url); + conn.setSSLSocketFactory(socketFactory); + conn.setConnectTimeout(timeout); + conn.setReadTimeout(timeout); + // closing the InputStream makes the connection available for reuse + conn.getInputStream().close(); + + conn = (HttpsURLConnection) networkForResolv.openConnection(url); + conn.setSSLSocketFactory(socketFactory); + conn.setConnectTimeout(timeout); + conn.setReadTimeout(timeout); + conn.setRequestProperty("Connection", "close"); + + final long requestTime = System.currentTimeMillis(); + final long requestTicks = SystemClock.elapsedRealtime(); + streamToClose = conn.getInputStream(); + final long responseTicks = SystemClock.elapsedRealtime(); + + long serverTime; + try { + serverTime = Long.parseLong(conn.getHeaderField("X-Time")); + } catch (final NumberFormatException e) { + Log.w(TAG, "X-Time header is missing, falling back to the less precise date header", e); + serverTime = conn.getDate(); + } + + final long roundTripTime = responseTicks - requestTicks; + final long responseTime = requestTime + roundTripTime; + final long clockOffset = ((serverTime - requestTime) + (serverTime - responseTime)) / 2; + + Log.d(TAG, "roundTripTime: " + roundTripTime + " ms, " + + "clockOffset: " + clockOffset + " ms"); + + if (serverTime < android.os.Build.TIME) { + throw new GeneralSecurityException("server timestamp is before android.os.Build.TIME"); + } + + EventLogTags.writeHttpsTimeSuccess(url.toString(), roundTripTime, clockOffset); + + return new TimeResult( + responseTime + clockOffset, // unixEpochTimeMillis + responseTicks, // elapsedRealtimeMillis + saturatedCast(roundTripTime / 2), // uncertaintyMillis + InetSocketAddress.createUnresolved(url.getHost(), 443) // ntpServerSocketAddress + ); + } catch (Exception e) { + EventLogTags.writeHttpsTimeFailure(url.toString(), e.toString()); + Log.e(TAG, "request failed, url: " + url, e); + return null; + } finally { + if (conn != null) { + conn.disconnect(); + } + if (streamToClose != null) { + // it's important to close the stream after conn.disconnect(), otherwise connection + // might be reused for the next request + IoUtils.closeQuietly(streamToClose); + } + } + } + + // SSL certificate time checks might fail if the time was never synced before, or if it has + // drifted far enough after the previous sync, + // + // To prevent this issue, construct a special SSLSocketFactory that uses the OS build time + // (android.os.Build.TIME) for SSL certificate expiration checks + private static SSLSocketFactory createSSLSocketFactory() throws KeyManagementException, + KeyStoreException, NoSuchAlgorithmException { + var tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm()); + tmf.init((KeyStore) null); + + TrustManager[] trustManagers = tmf.getTrustManagers(); + for (int i = 0; i < trustManagers.length; ++i) { + if (trustManagers[i] instanceof X509TrustManager xtm) { + trustManagers[i] = new X509TrustManagerWrapper(xtm); + } + } + + SSLContext sslCtx = SSLContext.getInstance("TLS"); + sslCtx.init(null, trustManagers, null); + return sslCtx.getSocketFactory(); + } + + // see createSSLSocketFactory() + static class X509TrustManagerWrapper implements X509TrustManager { + final X509TrustManager orig; + + X509TrustManagerWrapper(X509TrustManager orig) { + this.orig = orig; + } + + @Override + public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException { + int num = chain.length; + var wrappedChain = new X509Certificate[num]; + for (int i = 0; i < num; ++i) { + wrappedChain[i] = new X509CertificateWrapper(chain[i]); + } + orig.checkServerTrusted(wrappedChain, authType); + } + + @Override + public X509Certificate[] getAcceptedIssuers() { + return orig.getAcceptedIssuers(); + } + + @Override + public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException { + // unused + throw new IllegalStateException(authType); + } + } + + // see createSSLSocketFactory() + static class X509CertificateWrapper extends X509Certificate { + private final X509Certificate orig; + + X509CertificateWrapper(X509Certificate orig) { + this.orig = orig; + } + + @Override + public void checkValidity() throws CertificateExpiredException { + checkValidity(null); + } + + @Override + public void checkValidity(Date ignored) throws CertificateExpiredException { + final Date buildDate = new Date(android.os.Build.TIME); + + // don't check notBefore: HttpsTimeClient is the main time source + + if (buildDate.after(getNotAfter())) { + String msg = "notAfter: " + getNotAfter() + ", buildDate: " + buildDate; + throw new CertificateExpiredException(msg); + } + } + + @Override + public Set getCriticalExtensionOIDs() { + return orig.getCriticalExtensionOIDs(); + } + + @Override + public byte[] getExtensionValue(String oid) { + return orig.getExtensionValue(oid); + } + + @Override + public Set getNonCriticalExtensionOIDs() { + return orig.getNonCriticalExtensionOIDs(); + } + + @Override + public boolean hasUnsupportedCriticalExtension() { + return orig.hasUnsupportedCriticalExtension(); + } + + @Override + public int getBasicConstraints() { + return orig.getBasicConstraints(); + } + + @Override + public Principal getIssuerDN() { + return orig.getIssuerDN(); + } + + @Override + public boolean[] getIssuerUniqueID() { + return orig.getIssuerUniqueID(); + } + + @Override + public boolean[] getKeyUsage() { + return orig.getKeyUsage(); + } + + @Override + public Date getNotAfter() { + return orig.getNotAfter(); + } + + @Override + public Date getNotBefore() { + return orig.getNotBefore(); + } + + @Override + public BigInteger getSerialNumber() { + return orig.getSerialNumber(); + } + + @Override + public String getSigAlgName() { + return orig.getSigAlgName(); + } + + @Override + public String getSigAlgOID() { + return orig.getSigAlgOID(); + } + + @Override + public byte[] getSigAlgParams() { + return orig.getSigAlgParams(); + } + + @Override + public byte[] getSignature() { + return orig.getSignature(); + } + + @Override + public Principal getSubjectDN() { + return orig.getSubjectDN(); + } + + @Override + public boolean[] getSubjectUniqueID() { + return orig.getSubjectUniqueID(); + } + + @Override + public byte[] getTBSCertificate() throws CertificateEncodingException { + return orig.getTBSCertificate(); + } + + @Override + public int getVersion() { + return orig.getVersion(); + } + + @Override + public byte[] getEncoded() throws CertificateEncodingException { + return orig.getEncoded(); + } + + @Override + public PublicKey getPublicKey() { + return orig.getPublicKey(); + } + + @Override + public String toString() { + return orig.toString(); + } + + @Override + public void verify(PublicKey key) throws CertificateException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, SignatureException { + orig.verify(key); + } + + @Override + public void verify(PublicKey key, String sigProvider) throws CertificateException, + InvalidKeyException, NoSuchAlgorithmException, NoSuchProviderException, + SignatureException { + orig.verify(key, sigProvider); + } + + @Override + public List getExtendedKeyUsage() throws CertificateParsingException { + return orig.getExtendedKeyUsage(); + } + + @Override + public Collection> getIssuerAlternativeNames() throws CertificateParsingException { + return orig.getIssuerAlternativeNames(); + } + + @Override + public X500Principal getIssuerX500Principal() { + return orig.getIssuerX500Principal(); + } + + @Override + public Collection> getSubjectAlternativeNames() throws CertificateParsingException { + return orig.getSubjectAlternativeNames(); + } + + @Override + public X500Principal getSubjectX500Principal() { + return orig.getSubjectX500Principal(); + } + } +} diff --git a/core/java/android/os/AppZygote.java b/core/java/android/os/AppZygote.java index 0541a96e990ec..7821cc648ef9e 100644 --- a/core/java/android/os/AppZygote.java +++ b/core/java/android/os/AppZygote.java @@ -16,6 +16,7 @@ package android.os; +import android.annotation.Nullable; import android.content.pm.ApplicationInfo; import android.content.pm.ProcessInfo; import android.util.Log; @@ -72,11 +73,11 @@ public AppZygote(ApplicationInfo appInfo, ProcessInfo processInfo, int zygoteUid * Returns the zygote process associated with this app zygote. * Creates the process if it's not already running. */ - public ChildZygoteProcess getProcess() { + public ChildZygoteProcess getProcess(@Nullable String flatExtraArgs) { synchronized (mLock) { if (mZygote != null) return mZygote; - connectToZygoteIfNeededLocked(); + connectToZygoteIfNeededLocked(flatExtraArgs); return mZygote; } } @@ -105,7 +106,7 @@ private void stopZygoteLocked() { } @GuardedBy("mLock") - private void connectToZygoteIfNeededLocked() { + private void connectToZygoteIfNeededLocked(@Nullable String flatExtraArgs) { String abi = mAppInfo.primaryCpuAbi != null ? mAppInfo.primaryCpuAbi : Build.SUPPORTED_ABIS[0]; try { @@ -126,7 +127,8 @@ private void connectToZygoteIfNeededLocked() { abi, // acceptedAbiList VMRuntime.getInstructionSet(abi), // instructionSet mZygoteUidGidMin, - mZygoteUidGidMax); + mZygoteUidGidMax, + flatExtraArgs); ZygoteProcess.waitForConnectionToZygote(mZygote.getPrimarySocketAddress()); // preload application code in the zygote diff --git a/core/java/android/os/Binder.java b/core/java/android/os/Binder.java index ed75491b8e212..be88c7ec6f65f 100644 --- a/core/java/android/os/Binder.java +++ b/core/java/android/os/Binder.java @@ -20,6 +20,7 @@ import android.annotation.Nullable; import android.annotation.SystemApi; import android.app.AppOpsManager; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.ravenwood.annotation.RavenwoodClassLoadHook; import android.ravenwood.annotation.RavenwoodKeepWholeClass; @@ -28,6 +29,7 @@ import android.util.Slog; import com.android.internal.annotations.VisibleForTesting; +import com.android.internal.gmscompat.GmsHooks; import com.android.internal.os.BinderCallHeavyHitterWatcher; import com.android.internal.os.BinderCallHeavyHitterWatcher.BinderCallHeavyHitterListener; import com.android.internal.os.BinderInternal; @@ -745,8 +747,18 @@ public Binder(@Nullable String descriptor) { public void attachInterface(@Nullable IInterface owner, @Nullable String descriptor) { mOwner = owner; mDescriptor = descriptor; + + // Interface that is used when obtaining a binder from GmsCore + mIsIGmsCallbacks = "com.google.android.gms.common.internal.IGmsCallbacks".equals(descriptor); + + if (GmsCompat.isGmsCore()) { + mIsGmsServiceBroker = GmsHooks.GMS_SERVICE_BROKER_INTERFACE_DESCRIPTOR.equals(descriptor); + } } + private boolean mIsIGmsCallbacks; + private boolean mIsGmsServiceBroker; + /** * Default implementation returns an empty interface name. */ @@ -1244,6 +1256,14 @@ public int handleShellCommand(@NonNull ParcelFileDescriptor in, */ public final native void setExtension(@Nullable IBinder extension); + private static final String LOG_TAG_TXN = "BinderTxn"; + private static boolean LOG_TXNS = Log.isLoggable(LOG_TAG_TXN, Log.VERBOSE); + + /** @hide */ + public static void onZygotePostForkChild() { + LOG_TXNS = Log.isLoggable(LOG_TAG_TXN, Log.VERBOSE); + } + /** * Default implementation rewinds the parcels and calls onTransact. On * the remote side, transact calls into the binder to do the IPC. @@ -1252,6 +1272,10 @@ public final boolean transact(int code, @NonNull Parcel data, @Nullable Parcel r int flags) throws RemoteException { if (false) Log.v("Binder", "Transact: " + code + " to " + this); + if (LOG_TXNS) { + Log.v(LOG_TAG_TXN, getInterfaceDescriptor() + ", code " + code, new Throwable()); + } + if (data != null) { data.setDataPosition(0); } @@ -1326,10 +1350,15 @@ public static void setWorkSourceProvider(BinderInternal.WorkSourceProvider workS sWorkSourceProvider = workSourceProvider; } + private volatile int mPreviousUid; + // Entry point from android_util_Binder.cpp's onTransact. @UnsupportedAppUsage private boolean execTransact(int code, long dataObj, long replyObj, int flags) { + if (LOG_TXNS) { + Log.v(LOG_TAG_TXN, getInterfaceDescriptor() + ", code " + code); + } Parcel data = Parcel.obtain(dataObj); Parcel reply = Parcel.obtain(replyObj); @@ -1346,6 +1375,16 @@ private boolean execTransact(int code, long dataObj, long replyObj, final long origWorkSource = callingUid == -1 ? -1 : ThreadLocalWorkSource.setUid(callingUid); + if (GmsCompat.isEnabled() && callingUid != -1) { + if (callingUid != mPreviousUid) { + // harmless race + mPreviousUid = callingUid; + if (Process.isApplicationUid(callingUid)) { + GmsHooks.onBinderTransaction(Binder.getCallingPid(), callingUid); + } + } + } + try { return execTransactInternal(code, data, reply, flags, callingUid); } finally { @@ -1385,7 +1424,12 @@ private boolean execTransactInternal(int code, Parcel data, Parcel reply, int fl } final boolean tracingEnabled = tagEnabled && transactionTraceName != null; + data.mCallMaybeOverrideBinder = mIsIGmsCallbacks; + boolean onBeginGmsServiceBrokerCallRet = false; try { + if (mIsGmsServiceBroker) { + onBeginGmsServiceBrokerCallRet = GmsHooks.onBeginGmsServiceBrokerCall(code, data); + } // TODO(b/299356201) - this logic should not be in Java - it should be in native // code in libbinder so that it works for all binder users. final BinderCallHeavyHitterWatcher heavyHitterWatcher = sHeavyHitterWatcher; @@ -1436,6 +1480,10 @@ private boolean execTransactInternal(int code, Parcel data, Parcel reply, int fl } res = true; } finally { + data.mCallMaybeOverrideBinder = false; + if (onBeginGmsServiceBrokerCallRet) { + GmsHooks.onEndGmsServiceBrokerCall(); + } if (tracingEnabled) { Trace.traceEnd(Trace.TRACE_TAG_AIDL); } diff --git a/core/java/android/os/BinderDef.aidl b/core/java/android/os/BinderDef.aidl new file mode 100644 index 0000000000000..6b55861e809a6 --- /dev/null +++ b/core/java/android/os/BinderDef.aidl @@ -0,0 +1,3 @@ +package android.os; + +parcelable BinderDef; diff --git a/core/java/android/os/BinderDef.java b/core/java/android/os/BinderDef.java new file mode 100644 index 0000000000000..f846f3ed0f73b --- /dev/null +++ b/core/java/android/os/BinderDef.java @@ -0,0 +1,102 @@ +package android.os; + +import android.annotation.Nullable; +import android.content.Context; +import android.util.ArrayMap; +import android.util.Log; + +import java.lang.reflect.Constructor; + +import dalvik.system.DexClassLoader; + +/** + * Definition of a binder in another Android package. + * + * @hide + */ +public class BinderDef implements Parcelable { + private static final String TAG = BinderDef.class.getSimpleName(); + + public final String interfaceName; // also referred to as "interface descriptor" + public final String apkPath; + public final String className; + // Sorted array of handled binder transactions codes, null means "all transactions are handled" + @Nullable public final int[] transactionCodes; + + public BinderDef(String interfaceName, String apkPath, String className, @Nullable int[] transactionCodes) { + this.interfaceName = interfaceName; + this.apkPath = apkPath; + this.className = className; + this.transactionCodes = transactionCodes; + } + + protected BinderDef(Parcel in) { + interfaceName = in.readString(); + apkPath = in.readString(); + className = in.readString(); + transactionCodes = in.createIntArray(); + } + + @Override + public void writeToParcel(Parcel dest, int flags) { + dest.writeString(interfaceName); + dest.writeString(apkPath); + dest.writeString(className); + dest.writeIntArray(transactionCodes); + } + + private volatile IBinder instance; + + @Nullable + public IBinder getInstance(Context ctx) { + { IBinder cache = instance; if (cache != null) return cache; } + + synchronized (this) { + { IBinder cache = instance; if (cache != null) return cache; } + try { + return instance = instantiate(ctx); + } catch (ReflectiveOperationException e) { + Log.e(TAG, "unable to instantiate " + className + " from " + apkPath, e); + return null; + } + } + } + + private IBinder instantiate(Context ctx) throws ReflectiveOperationException { + Class cls = getDexClassLoader().loadClass(className); + Constructor constructor = cls.getConstructor(Context.class); + + return (IBinder) constructor.newInstance(ctx); + } + + private static final ArrayMap classLoaders = new ArrayMap<>(); + + private DexClassLoader getDexClassLoader() { + final var map = classLoaders; + synchronized (map) { + DexClassLoader cl = map.get(apkPath); + if (cl == null) { + cl = new DexClassLoader(apkPath, null, null, String.class.getClassLoader()); + map.put(apkPath, cl); + } + return cl; + } + } + + @Override + public int describeContents() { + return 0; + } + + public static final Creator CREATOR = new Creator() { + @Override + public BinderDef createFromParcel(Parcel in) { + return new BinderDef(in); + } + + @Override + public BinderDef[] newArray(int size) { + return new BinderDef[size]; + } + }; +} diff --git a/core/java/android/os/BinderProxy.java b/core/java/android/os/BinderProxy.java index 01222cdd38b37..00fad81ead863 100644 --- a/core/java/android/os/BinderProxy.java +++ b/core/java/android/os/BinderProxy.java @@ -514,6 +514,14 @@ public IInterface queryLocalInterface(String descriptor) { @Override public native @Nullable IBinder getExtension() throws RemoteException; + private static final String LOG_TAG_TXN = "BinderProxyTxn"; + private static boolean LOG_TXNS = Log.isLoggable(LOG_TAG_TXN, Log.VERBOSE); + + /** @hide */ + public static void onZygotePostForkChild() { + LOG_TXNS = Log.isLoggable(LOG_TAG_TXN, Log.VERBOSE); + } + /** * Perform a binder transaction on a proxy. * @@ -532,6 +540,10 @@ public IInterface queryLocalInterface(String descriptor) { * @throws RemoteException */ public boolean transact(int code, Parcel data, Parcel reply, int flags) throws RemoteException { + if (LOG_TXNS) { + Log.v(LOG_TAG_TXN, getInterfaceDescriptor() + ", code " + code, new Throwable()); + } + Binder.checkParcel(this, code, data, "Unreasonably large binder buffer"); boolean warnOnBlocking = mWarnOnBlocking; // Cache it to reduce volatile access. diff --git a/core/java/android/os/BinderWrapper.java b/core/java/android/os/BinderWrapper.java new file mode 100644 index 0000000000000..37d94f403bb65 --- /dev/null +++ b/core/java/android/os/BinderWrapper.java @@ -0,0 +1,73 @@ +package android.os; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.content.Context; + +import java.io.FileDescriptor; + +/** @hide */ +public class BinderWrapper implements IBinder { + protected final IBinder base; + + public BinderWrapper(IBinder base) { + this.base = base; + } + + public boolean transact(int code, @NonNull Parcel data, @Nullable Parcel reply, int flags) throws RemoteException { + return base.transact(code, data, reply, flags); + } + + @Nullable + public IInterface queryLocalInterface(@NonNull String descriptor) { + return base.queryLocalInterface(descriptor); + } + + @Nullable + public String getInterfaceDescriptor() throws RemoteException { + return base.getInterfaceDescriptor(); + } + + public boolean pingBinder() { + return base.pingBinder(); + } + + public boolean isBinderAlive() { + return base.isBinderAlive(); + } + + public void dump(@NonNull FileDescriptor fd, @Nullable String[] args) throws RemoteException { + base.dump(fd, args); + } + + public void dumpAsync(@NonNull FileDescriptor fd, @Nullable String[] args) throws RemoteException { + base.dumpAsync(fd, args); + } + + public void shellCommand(@Nullable FileDescriptor in, @Nullable FileDescriptor out, @Nullable FileDescriptor err, @NonNull String[] args, @Nullable ShellCallback shellCallback, @NonNull ResultReceiver resultReceiver) throws RemoteException { + base.shellCommand(in, out, err, args, shellCallback, resultReceiver); + } + + public void linkToDeath(@NonNull DeathRecipient recipient, int flags) throws RemoteException { + base.linkToDeath(recipient, flags); + } + + public boolean unlinkToDeath(@NonNull DeathRecipient recipient, int flags) { + return base.unlinkToDeath(recipient, flags); + } + + @Nullable + public IBinder getExtension() throws RemoteException { + return base.getExtension(); + } + + @Override + public void addFrozenStateChangeCallback(@NonNull FrozenStateChangeCallback callback) throws RemoteException { + base.addFrozenStateChangeCallback(callback); + } + + @Override + public boolean removeFrozenStateChangeCallback(@NonNull FrozenStateChangeCallback callback) { + return base.removeFrozenStateChangeCallback(callback); + } +} diff --git a/core/java/android/os/Build.java b/core/java/android/os/Build.java index 84ca5ed4ab102..e21dd7f9683c8 100644 --- a/core/java/android/os/Build.java +++ b/core/java/android/os/Build.java @@ -28,6 +28,7 @@ import android.annotation.TestApi; import android.app.ActivityThread; import android.app.Application; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.Context; import android.ravenwood.annotation.RavenwoodKeepWholeClass; @@ -41,6 +42,7 @@ import android.util.Slog; import android.view.View; +import com.android.internal.gmscompat.GmsHooks; import com.android.internal.util.FrameworkStatsLog; import dalvik.system.VMRuntime; @@ -266,6 +268,16 @@ public class Build { @SuppressAutoDoc // No support for device / profile owner. @RequiresPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static String getSerial() { + if (GmsCompat.isEnabled()) { + boolean shouldHook = + !GmsCompat.hasPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE) + && !GmsCompat.hasPermission(Manifest.permission.READ_DEVICE_SERIAL_NUMBER); + + if (shouldHook) { + return GmsHooks.getSerial(); + } + } + IDeviceIdentifiersPolicyService service = IDeviceIdentifiersPolicyService.Stub .asInterface(ServiceManager.getService(Context.DEVICE_IDENTIFIERS_SERVICE)); try { @@ -1276,7 +1288,7 @@ public static class VERSION_CODES { * Baklava. */ @FlaggedApi(Flags.FLAG_MAJOR_MINOR_VERSIONING_SCHEME) - public static final int BAKLAVA = CUR_DEVELOPMENT; + public static final int BAKLAVA = 36; } /** @hide */ @@ -1796,7 +1808,6 @@ public static boolean isBuildConsistent() { } } - /* TODO: Figure out issue with checks failing if (!TextUtils.isEmpty(bootimage)) { if (!Objects.equals(system, bootimage)) { Slog.e(TAG, "Mismatched fingerprints; system reported " + system @@ -1813,14 +1824,13 @@ public static boolean isBuildConsistent() { } } - if (!TextUtils.isEmpty(requiredRadio)) { + if (!TextUtils.isEmpty(requiredRadio) && !TextUtils.isEmpty(currentRadio)) { if (!Objects.equals(currentRadio, requiredRadio)) { Slog.e(TAG, "Mismatched radio version: build requires " + requiredRadio + " but runtime reports " + currentRadio); return false; } } - */ return true; } diff --git a/core/java/android/os/Environment.java b/core/java/android/os/Environment.java index 69540c42a7425..e6b84316d3587 100644 --- a/core/java/android/os/Environment.java +++ b/core/java/android/os/Environment.java @@ -1615,4 +1615,10 @@ public static File buildPath(File base, String... segments) { public static File maybeTranslateEmulatedPathToInternal(File path) { return StorageManager.maybeTranslateEmulatedPathToInternal(path); } + + /** @hide */ + @UnsupportedAppUsage + public static boolean isExecmemBlocked() { + return com.android.internal.os.SELinuxFlags.isExecmemBlocked(); + } } diff --git a/core/java/android/os/HybridBinder.java b/core/java/android/os/HybridBinder.java new file mode 100644 index 0000000000000..32ce9e9973dc0 --- /dev/null +++ b/core/java/android/os/HybridBinder.java @@ -0,0 +1,46 @@ +package android.os; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.content.Context; +import android.util.Log; + +import java.io.FileDescriptor; +import java.util.Arrays; + +/** + * Fuses two binders together. + * Transaction routing decisions are made by looking at transaction codes. + * The rest of operations are forwarded to the first ("base") binder. + * + * @hide + */ +public final class HybridBinder extends BinderWrapper { + private static final String TAG = "HybridBinder"; + private static final boolean DEBUG = Log.isLoggable(TAG, Log.VERBOSE); + + private final IBinder secondBinder; + // sorted array of handled transactions codes + private final int[] secondBinderTxnCodes; + + public HybridBinder(Context ctx, IBinder base, BinderDef secondBinderDef) { + super(base); + this.secondBinder = secondBinderDef.getInstance(ctx); + this.secondBinderTxnCodes = secondBinderDef.transactionCodes; + } + + public boolean transact(int code, @NonNull Parcel data, @Nullable Parcel reply, int flags) throws RemoteException { + if (DEBUG) { + Log.d(TAG, "call " + (code - IBinder.FIRST_CALL_TRANSACTION)); + } + if (Arrays.binarySearch(secondBinderTxnCodes, code) >= 0) { + return secondBinder.transact(code, data, reply, flags); + } + return base.transact(code, data, reply, flags); + } + + @Nullable + public IInterface queryLocalInterface(@NonNull String descriptor) { + return null; + } +} diff --git a/core/java/android/os/Parcel.java b/core/java/android/os/Parcel.java index 26f768cc49f7c..8bc09afe5649e 100644 --- a/core/java/android/os/Parcel.java +++ b/core/java/android/os/Parcel.java @@ -26,6 +26,7 @@ import android.annotation.SuppressLint; import android.annotation.TestApi; import android.app.AppOpsManager; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.ravenwood.annotation.RavenwoodClassLoadHook; import android.ravenwood.annotation.RavenwoodKeepWholeClass; @@ -46,6 +47,7 @@ import android.util.SparseIntArray; import com.android.internal.annotations.GuardedBy; +import com.android.internal.gmscompat.GmsHooks; import com.android.internal.util.ArrayUtils; import dalvik.annotation.optimization.CriticalNative; @@ -3232,6 +3234,13 @@ public final void readException(int code, String msg) { "Remote stack trace:\n" + remoteStackTrace, null, false, false); ExceptionUtils.appendCause(e, cause); } + + if (GmsCompat.isEnabled()) { + if (GmsHooks.interceptException(e, this)) { + return; + } + } + SneakyThrow.sneakyThrow(e); } @@ -3364,6 +3373,9 @@ public final CharSequence readCharSequence() { return TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(this); } + /** {@hide} */ + public boolean mCallMaybeOverrideBinder; + /** * Read an object from the parcel at the current dataPosition(). */ @@ -3376,6 +3388,14 @@ public final IBinder readStrongBinder() { FLAG_IS_REPLY_FROM_BLOCKING_ALLOWED_OBJECT | FLAG_PROPAGATE_ALLOW_BLOCKING)) { Binder.allowBlocking(result); } + + if (mCallMaybeOverrideBinder && result != null) { + IBinder override = GmsHooks.maybeOverrideBinder(result); + if (override != null) { + return override; + } + } + return result; } diff --git a/core/java/android/os/ParcelFileDescriptor.java b/core/java/android/os/ParcelFileDescriptor.java index 60eeb2b8b0d57..2e5afa60b679d 100644 --- a/core/java/android/os/ParcelFileDescriptor.java +++ b/core/java/android/os/ParcelFileDescriptor.java @@ -50,6 +50,8 @@ import android.util.Log; import android.util.Slog; +import com.android.internal.gmscompat.dynamite.GmsDynamiteClientHooks; + import dalvik.system.VMRuntime; import libcore.io.IoUtils; @@ -350,6 +352,14 @@ private static FileDescriptor openInternal(File file, int mode) throws FileNotFo if ((mode & MODE_WORLD_WRITEABLE) != 0) realMode |= S_IWOTH; final String path = file.getPath(); + + if (GmsDynamiteClientHooks.enabled()) { + FileDescriptor override = GmsDynamiteClientHooks.openFileDescriptor(path); + if (override != null) { + return override; + } + } + try { return Os.open(path, flags, realMode); } catch (ErrnoException e) { diff --git a/core/java/android/os/Process.java b/core/java/android/os/Process.java index e7282435ad46b..27932e8f37b51 100644 --- a/core/java/android/os/Process.java +++ b/core/java/android/os/Process.java @@ -752,13 +752,14 @@ public static ProcessStartResult start(@NonNull final String processClass, boolean bindMountAppsData, boolean bindMountAppStorageDirs, boolean bindMountSystemOverrides, - @Nullable String[] zygoteArgs) { + @Nullable String[] zygoteArgs, + @Nullable String flatExtraArgs) { return ZYGOTE_PROCESS.start(processClass, niceName, uid, gid, gids, runtimeFlags, mountExternal, targetSdkVersion, seInfo, abi, instructionSet, appDataDir, invokeWith, packageName, zygotePolicyFlags, isTopApp, disabledCompatChanges, pkgDataInfoMap, whitelistedDataInfoMap, bindMountAppsData, - bindMountAppStorageDirs, bindMountSystemOverrides, zygoteArgs); + bindMountAppStorageDirs, bindMountSystemOverrides, zygoteArgs, flatExtraArgs); } /** @hide */ @@ -775,7 +776,8 @@ public static ProcessStartResult startWebView(@NonNull final String processClass @Nullable String invokeWith, @Nullable String packageName, @Nullable long[] disabledCompatChanges, - @Nullable String[] zygoteArgs) { + @Nullable String[] zygoteArgs, + @Nullable String flatExtraArgs) { // Webview zygote can't access app private data files, so doesn't need to know its data // info. return WebViewZygote.getProcess().start(processClass, niceName, uid, gid, gids, @@ -784,7 +786,8 @@ public static ProcessStartResult startWebView(@NonNull final String processClass /*zygotePolicyFlags=*/ ZYGOTE_POLICY_FLAG_EMPTY, /*isTopApp=*/ false, disabledCompatChanges, /* pkgDataInfoMap */ null, /* whitelistedDataInfoMap */ null, /* bindMountAppsData */ false, - /* bindMountAppStorageDirs */ false, /* bindMountSyspropOverrides */ false, zygoteArgs); + /* bindMountAppStorageDirs */ false, /* bindMountSyspropOverrides */ false, zygoteArgs, + flatExtraArgs); } /** diff --git a/core/java/android/os/RecoverySystem.java b/core/java/android/os/RecoverySystem.java index 398140dafc33e..60208f748cf9f 100644 --- a/core/java/android/os/RecoverySystem.java +++ b/core/java/android/os/RecoverySystem.java @@ -333,6 +333,9 @@ public static void verifyPackage(File packageFile, if (certificates == null || certificates.length == 0) { throw new SignatureException("signature contains no certificates"); } + if (certificates.length > 1) { + throw new SignatureException("signature contains multiple certificates"); + } X509Certificate cert = certificates[0]; PublicKey signatureKey = cert.getPublicKey(); @@ -340,6 +343,9 @@ public static void verifyPackage(File packageFile, if (signerInfos == null || signerInfos.length == 0) { throw new SignatureException("signature contains no signedData"); } + if (signerInfos.length > 1) { + throw new SignatureException("signature contains multiple signedData"); + } SignerInfo signerInfo = signerInfos[0]; // Check that the public key of the certificate contained diff --git a/core/java/android/os/UpdateEngine.java b/core/java/android/os/UpdateEngine.java index 81e4549c78d1e..804994f3743fa 100644 --- a/core/java/android/os/UpdateEngine.java +++ b/core/java/android/os/UpdateEngine.java @@ -21,10 +21,12 @@ import android.annotation.NonNull; import android.annotation.SystemApi; import android.annotation.WorkerThread; +import android.app.compat.gms.GmsCompat; import android.content.res.AssetFileDescriptor; import android.os.IUpdateEngine; import android.os.IUpdateEngineCallback; import android.os.RemoteException; +import android.util.Log; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @@ -254,7 +256,11 @@ public UpdateEngine() { mUpdateEngine = IUpdateEngine.Stub.asInterface( ServiceManager.getService(UPDATE_ENGINE_SERVICE)); if (mUpdateEngine == null) { - throw new IllegalStateException("Failed to find update_engine"); + if (GmsCompat.isEnabled()) { + Log.d("GmsCompat", "IUpdateEngine is null"); + } else { + throw new IllegalStateException("Failed to find update_engine"); + } } } @@ -264,6 +270,13 @@ public UpdateEngine() { * to control which thread runs the callback, or null. */ public boolean bind(final UpdateEngineCallback callback, final Handler handler) { + if (mUpdateEngine == null) { + if (GmsCompat.isEnabled()) { + Log.d("GmsCompat", "", new Throwable()); + return false; + } + } + synchronized (mUpdateEngineCallbackLock) { mUpdateEngineCallback = new IUpdateEngineCallback.Stub() { @Override diff --git a/core/java/android/os/UserHandle.java b/core/java/android/os/UserHandle.java index 2804035aef7b0..f4d2c9bd98845 100644 --- a/core/java/android/os/UserHandle.java +++ b/core/java/android/os/UserHandle.java @@ -22,6 +22,7 @@ import android.annotation.SystemApi; import android.annotation.TestApi; import android.annotation.UserIdInt; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.util.SparseArray; @@ -576,6 +577,10 @@ public static void formatUid(PrintWriter pw, int uid) { @Deprecated @SystemApi public boolean isOwner() { + if (GmsCompat.isEnabled()) { + return isSystem(); + } + return this.equals(OWNER); } @@ -585,6 +590,11 @@ public boolean isOwner() { */ @SystemApi public boolean isSystem() { + if (GmsCompat.isEnabled()) { + // "system" user means "primary" ("Owner") user + return true; + } + return this.equals(SYSTEM); } diff --git a/core/java/android/os/UserManager.java b/core/java/android/os/UserManager.java index 7e73a5d048664..4018ca1960d70 100644 --- a/core/java/android/os/UserManager.java +++ b/core/java/android/os/UserManager.java @@ -1453,6 +1453,16 @@ public class UserManager { @SystemApi public static final String DISALLOW_RUN_IN_BACKGROUND = "no_run_in_background"; + /** + * Graphene OS Specific restriction + * Specifies if a user is not allowed to create and maintain a list of blocked numbers. + * The default value is false + * + *

This restriction can be set by the device owners and profile owners

+ * {@link com.android.server.pm.UserRestrictionsUtils#} + */ + public static final String DISALLOW_BLOCK_CALLS = "disallow_block_calls"; + /** * Specifies if a user is not allowed to use the camera. * @@ -2109,6 +2119,7 @@ public class UserManager { DISALLOW_WIFI_TETHERING, ENSURE_VERIFY_APPS, KEY_RESTRICTIONS_PENDING, + DISALLOW_BLOCK_CALLS }) @Retention(RetentionPolicy.SOURCE) public @interface UserRestrictionKey {} @@ -3386,8 +3397,8 @@ public boolean isProfile(@UserIdInt int userId) { return getProfileType(mUserId); } - /** @see #getProfileType() */ - private @Nullable String getProfileType(@UserIdInt int userId) { + /** @hide */ + protected @Nullable String getProfileType(@UserIdInt int userId) { // First, the typical case (i.e. the *process* user, not necessarily the context user). // This cache cannot be become invalidated since it's about the calling process itself. if (userId == UserHandle.myUserId()) { @@ -6853,4 +6864,23 @@ public UserHandle getUserHandle() { return userRestrictionSource; } } + + /** + * Checks if the context user can have a profile of type profileType. + * @param profileType the profile type name to check + * @return whether the context user can have profileType as its child profile. + * @hide + **/ + @RequiresPermission(anyOf = { + Manifest.permission.MANAGE_USERS, + Manifest.permission.CREATE_USERS, + Manifest.permission.QUERY_USERS}) + @UserHandleAware + public boolean canHaveProfileOfType(@NonNull String profileType) { + UserInfo userInfo = getUserInfo(mUserId); + if (userInfo == null) { + return false; + } + return userInfo.canHaveProfileOfType(profileType); + } } diff --git a/core/java/android/os/ZygoteProcess.java b/core/java/android/os/ZygoteProcess.java index 73a74b2f8abc1..999fbe0a4a1b1 100644 --- a/core/java/android/os/ZygoteProcess.java +++ b/core/java/android/os/ZygoteProcess.java @@ -359,7 +359,8 @@ public final Process.ProcessStartResult start(@NonNull final String processClass boolean bindMountAppsData, boolean bindMountAppStorageDirs, boolean bindOverrideSysprops, - @Nullable String[] zygoteArgs) { + @Nullable String[] zygoteArgs, + @Nullable String flatExtraArgs) { // TODO (chriswailes): Is there a better place to check this value? if (fetchUsapPoolEnabledPropWithMinInterval()) { informZygotesOfUsapPoolStatus(); @@ -371,7 +372,7 @@ public final Process.ProcessStartResult start(@NonNull final String processClass abi, instructionSet, appDataDir, invokeWith, /*startChildZygote=*/ false, packageName, zygotePolicyFlags, isTopApp, disabledCompatChanges, pkgDataInfoMap, allowlistedDataInfoList, bindMountAppsData, - bindMountAppStorageDirs, bindOverrideSysprops, zygoteArgs); + bindMountAppStorageDirs, bindOverrideSysprops, zygoteArgs, flatExtraArgs); } catch (ZygoteStartFailedEx ex) { Log.e(LOG_TAG, "Starting VM process through Zygote failed"); @@ -645,7 +646,8 @@ private Process.ProcessStartResult startViaZygote(@NonNull final String processC boolean bindMountAppsData, boolean bindMountAppStorageDirs, boolean bindMountOverrideSysprops, - @Nullable String[] extraArgs) + @Nullable String[] extraArgs, + @Nullable String flatExtraArgs) throws ZygoteStartFailedEx { ArrayList argsForZygote = new ArrayList<>(); @@ -779,6 +781,10 @@ private Process.ProcessStartResult startViaZygote(@NonNull final String processC argsForZygote.add(sb.toString()); } + if (flatExtraArgs != null) { + argsForZygote.add(flatExtraArgs); + } + argsForZygote.add(processClass); if (extraArgs != null) { @@ -1291,7 +1297,8 @@ public ChildZygoteProcess startChildZygote(final String processClass, String acceptedAbiList, String instructionSet, int uidRangeStart, - int uidRangeEnd) { + int uidRangeEnd, + @Nullable String flatExtraArgs) { // Create an unguessable address in the global abstract namespace. final LocalSocketAddress serverAddress = new LocalSocketAddress( processClass + "/" + UUID.randomUUID().toString()); @@ -1313,7 +1320,7 @@ public ChildZygoteProcess startChildZygote(final String processClass, null /* disabledCompatChanges */, null /* pkgDataInfoMap */, null /* allowlistedDataInfoList */, true /* bindMountAppsData*/, /* bindMountAppStorageDirs */ false, /*bindMountOverrideSysprops */ false, - extraArgs); + extraArgs, flatExtraArgs); } catch (ZygoteStartFailedEx ex) { throw new RuntimeException("Starting child-zygote through Zygote failed", ex); diff --git a/core/java/android/os/logcat/ILogcatManagerService.aidl b/core/java/android/os/logcat/ILogcatManagerService.aidl index 67a930a176653..6a74b4dfa37c8 100644 --- a/core/java/android/os/logcat/ILogcatManagerService.aidl +++ b/core/java/android/os/logcat/ILogcatManagerService.aidl @@ -42,4 +42,6 @@ oneway interface ILogcatManagerService { * @param fd The FD (Socket) of client who makes the request. */ void finishThread(in int uid, in int gid, in int pid, in int fd); + + void onNotableMessage(int type, int uid, int pid, in byte[] msg); } diff --git a/core/java/android/os/storage/DiskInfo.java b/core/java/android/os/storage/DiskInfo.java index d32928cbeb38d..d51e20dced7f0 100644 --- a/core/java/android/os/storage/DiskInfo.java +++ b/core/java/android/os/storage/DiskInfo.java @@ -46,7 +46,6 @@ public class DiskInfo implements Parcelable { public static final String EXTRA_VOLUME_COUNT = "android.os.storage.extra.VOLUME_COUNT"; - public static final int FLAG_ADOPTABLE = 1 << 0; public static final int FLAG_DEFAULT_PRIMARY = 1 << 1; public static final int FLAG_SD = 1 << 2; public static final int FLAG_USB = 1 << 3; @@ -136,7 +135,7 @@ private boolean isInteresting(String label) { @UnsupportedAppUsage public boolean isAdoptable() { - return (flags & FLAG_ADOPTABLE) != 0; + return false; } @UnsupportedAppUsage diff --git a/core/java/android/permission/IPermissionManager.aidl b/core/java/android/permission/IPermissionManager.aidl index 55011e52724c0..1dfb118f93387 100644 --- a/core/java/android/permission/IPermissionManager.aidl +++ b/core/java/android/permission/IPermissionManager.aidl @@ -108,6 +108,8 @@ interface IPermissionManager { int checkUidPermission(int uid, String permissionName, int deviceId); Map getAllPermissionStates(String packageName, String persistentDeviceId, int userId); + + void updatePermissionState(String packageName, int userId); } /** diff --git a/core/java/android/permission/PermissionManager.java b/core/java/android/permission/PermissionManager.java index 2473de4ff6d71..8ce5fbad5c95d 100644 --- a/core/java/android/permission/PermissionManager.java +++ b/core/java/android/permission/PermissionManager.java @@ -54,6 +54,7 @@ import android.content.AttributionSource; import android.content.Context; import android.content.PermissionChecker; +import android.content.pm.AppPermissionUtils; import android.content.pm.IPackageManager; import android.content.pm.PackageManager; import android.content.pm.ParceledListSlice; @@ -80,6 +81,7 @@ import android.util.ArraySet; import android.util.DebugUtils; import android.util.Log; +import android.util.PackageUtils; import android.util.Slog; import com.android.internal.R; @@ -96,6 +98,8 @@ import java.util.Objects; import java.util.Set; +import libcore.util.EmptyArray; + /** * System level service for accessing the permission capabilities of the platform. * @@ -176,6 +180,12 @@ public final class PermissionManager { "permission grant or revoke changed gids"; private static final String SYSTEM_PKG = "android"; + private static final String BLUETOOTH_PKG = "com.android.bluetooth"; + private static final String PHONE_SERVICES_PKG = "com.android.phone"; + private static final String PRINT_SPOOLER_PKG = "com.android.printspooler"; + private static final String FUSED_LOCATION_PKG = "com.android.location.fused"; + private static final String NETWORK_LOCATION_PKG = "app.grapheneos.networklocation"; + private static final String CELL_BROADCAST_SERVICE_PKG = "com.android.cellbroadcastservice"; /** * Refuse to install package if groups of permissions are bad @@ -205,7 +215,7 @@ public final class PermissionManager { private static final int[] EXEMPTED_ROLES = {R.string.config_systemAmbientAudioIntelligence, R.string.config_systemUiIntelligence, R.string.config_systemAudioIntelligence, R.string.config_systemNotificationIntelligence, R.string.config_systemTextIntelligence, - R.string.config_systemVisualIntelligence}; + R.string.config_systemVisualIntelligence, R.string.config_systemTelephonyPackage}; private static final String[] INDICATOR_EXEMPTED_PACKAGES = new String[EXEMPTED_ROLES.length]; @@ -1361,12 +1371,38 @@ public static Set getIndicatorExemptedPackages(@NonNull Context context) updateIndicatorExemptedPackages(context); ArraySet pkgNames = new ArraySet<>(); pkgNames.add(SYSTEM_PKG); + // Scanning for Bluetooth devices when Bluetooth is enabled is considered + // to be location access. It shouldn't be shown for the OS implementation + // of Bluetooth. + pkgNames.add(BLUETOOTH_PKG); + // Phone services (not the Dialer) accesses detailed cellular information + // which is considered to be location information. It's a base OS component + // serving the intended purpose and shouldn't trigger spurious location + // indicator notices every time it retrieves cellular information. + pkgNames.add(PHONE_SERVICES_PKG); + // Location usage indicator can get triggered when sharing a file to a printer + pkgNames.add(PRINT_SPOOLER_PKG); + + // location providers + pkgNames.add(FUSED_LOCATION_PKG); + pkgNames.add(NETWORK_LOCATION_PKG); + + // indicator pops up when determining location during a geofenced alert + pkgNames.add(CELL_BROADCAST_SERVICE_PKG); + // location indicator sometimes gets triggered when turning on Wi-Fi hotspot + pkgNames.add(android.ext.KnownSystemPackages.get(context).settings); + for (int i = 0; i < INDICATOR_EXEMPTED_PACKAGES.length; i++) { String exemptedPackage = INDICATOR_EXEMPTED_PACKAGES[i]; if (exemptedPackage != null) { pkgNames.add(exemptedPackage); } } + { + String[] arr = pkgNames.toArray(EmptyArray.STRING); + pkgNames.clear(); + pkgNames.addAll(PackageUtils.filterNonSystemPackagesL(context, arr)); + } return pkgNames; } @@ -1734,12 +1770,22 @@ private static int checkPermissionUncached(@Nullable String permission, int pid, + permission); return PackageManager.PERMISSION_DENIED; } + int res; try { sShouldWarnMissingActivityManager = true; - return am.checkPermissionForDevice(permission, pid, uid, deviceId); + res = am.checkPermissionForDevice(permission, pid, uid, deviceId); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } + + if (res != PERMISSION_GRANTED) { + if (uid == android.os.Process.myUid()) { + if (AppPermissionUtils.shouldSpoofSelfCheck(permission)) { + res = PERMISSION_GRANTED; + } + } + } + return res; } /** @@ -1939,12 +1985,24 @@ public boolean equals(@Nullable Object rval) { /* @hide */ private static int checkPackageNamePermissionUncached( String permName, String pkgName, String persistentDeviceId, @UserIdInt int userId) { + int res; try { - return ActivityThread.getPermissionManager().checkPermission( + res = ActivityThread.getPermissionManager().checkPermission( pkgName, permName, persistentDeviceId, userId); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } + + if (res != PERMISSION_GRANTED) { + if (pkgName.equals(ActivityThread.currentPackageName()) + && userId == UserHandle.myUserId() + && AppPermissionUtils.shouldSpoofSelfCheck(permName)) + { + res = PERMISSION_GRANTED; + } + } + + return res; } /* @hide */ @@ -2165,4 +2223,12 @@ public String toString() { + '}'; } } + + public void updatePermissionState(@NonNull String packageName, int userId) { + try { + mPermissionManager.updatePermissionState(packageName, userId); + } catch (RemoteException e) { + e.rethrowFromSystemServer(); + } + } } diff --git a/core/java/android/permission/PermissionUsageHelper.java b/core/java/android/permission/PermissionUsageHelper.java index a698b180dbe07..dbb8f2ede7824 100644 --- a/core/java/android/permission/PermissionUsageHelper.java +++ b/core/java/android/permission/PermissionUsageHelper.java @@ -114,7 +114,7 @@ private static boolean shouldShowIndicators() { private static boolean shouldShowLocationIndicator() { return DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_PRIVACY, - PROPERTY_LOCATION_INDICATORS_ENABLED, false); + PROPERTY_LOCATION_INDICATORS_ENABLED, true); } private static long getRecentThreshold(Long now) { diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index 4acb6312f90dc..3fed2292401c1 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -44,6 +44,7 @@ import android.app.NotificationManager; import android.app.SearchManager; import android.app.WallpaperManager; +import android.app.compat.gms.GmsCompat; import android.compat.annotation.UnsupportedAppUsage; import android.content.ComponentName; import android.content.ContentResolver; @@ -60,6 +61,7 @@ import android.database.ContentObserver; import android.database.Cursor; import android.database.SQLException; +import android.ext.KnownSystemPackage; import android.location.ILocationManager; import android.location.LocationManager; import android.media.AudioManager; @@ -103,6 +105,7 @@ import android.widget.Editor; import com.android.internal.annotations.GuardedBy; +import com.android.internal.gmscompat.GmsCompatApp; import com.android.internal.util.Preconditions; import java.io.IOException; @@ -3523,12 +3526,36 @@ private NameValueCache(Uri uri, String getCommand, mAllFields = new ArraySet<>(); mReadableFieldsWithMaxTargetSdk = new ArrayMap<>(); getPublicSettingsForClass(callerClass, mAllFields, mReadableFields, - mReadableFieldsWithMaxTargetSdk); + mReadableFieldsWithMaxTargetSdk, + // skip obtaining protectedSettings map, it's not needed for NameValueCache + null); + } + + // Returns last path component of the relevant Uri. + // Keep in sync with GmsCompatApp#registerObserver + private String maybeGetGmsCompatNamespace() { + Uri uri = mUri; + // no need to use expensive equals() method in this case + if (uri == Global.CONTENT_URI) { + return "global"; + } + if (uri == Secure.CONTENT_URI) { + return "secure"; + } + return null; } public boolean putStringForUser(ContentResolver cr, String name, String value, String tag, boolean makeDefault, final int userHandle, boolean overrideableByRestore) { + if (GmsCompat.isEnabled()) { + String ns = maybeGetGmsCompatNamespace(); + if (ns != null && !mAllFields.contains(name)) { + return GmsCompatApp.putString(ns, name, value); + } + return false; + } + try { Bundle arg = new Bundle(); arg.putString(Settings.NameValueTable.VALUE, value); @@ -3589,6 +3616,15 @@ public boolean deleteStringForUser(ContentResolver cr, String name, final int us @UnsupportedAppUsage public String getStringForUser(ContentResolver cr, String name, final int userHandle) { + if (GmsCompat.isEnabled()) { + String ns = maybeGetGmsCompatNamespace(); + if (ns != null) { + if (!mAllFields.contains(name) && !name.startsWith("gmscompat")) { + return GmsCompatApp.getString(ns, name); + } + } + } + final boolean isSelf = (userHandle == UserHandle.myUserId()); final boolean useCache = isSelf && !isInSystemServer(); boolean needsGenerationTracker = false; @@ -3636,6 +3672,17 @@ public String getStringForUser(ContentResolver cr, String name, final int userHa // still be regarded as readable. if (!isCallerExemptFromReadableRestriction() && mAllFields.contains(name)) { if (!mReadableFields.contains(name)) { + if (GmsCompat.isEnabled()) { + return null; + } + + if (cr.getContext().getApplicationInfo().ext() + .getPackageId() == android.ext.PackageId.G_TEXT_TO_SPEECH) { + // Google's text-to-speech app expects to be a system app, which are exempted + // from this restriction. Stub out the read to prevent it from crashing the app + return null; + } + throw new SecurityException( "Settings key: <" + name + "> is not readable. From S+, settings keys " + "annotated with @hide are restricted to system_server and " @@ -3652,6 +3699,10 @@ public String getStringForUser(ContentResolver cr, String name, final int userHa && application.getApplicationInfo().targetSdkVersion <= maxTargetSdk; if (!targetSdkCheckOk) { + if (GmsCompat.isEnabled()) { + return null; + } + throw new SecurityException( "Settings key: <" + name + "> is only readable to apps with " + "targetSdkVersion lower than or equal to: " @@ -4035,9 +4086,54 @@ public static boolean canDrawOverlays(Context context) { int maxTargetSdk() default 0; } + @Target({ ElementType.FIELD }) + @Retention(RetentionPolicy.RUNTIME) + private @interface Protected { + // read() and readWrite() are required to be empty if immutableValue is non-empty + String immutableValue() default ""; + // Ignored if immutableValue is non-empty + boolean restrictReads() default true; + // IDs of system packages that are allowed read-only access. Should be empty if + // immutableValue is non-empty or restrictReads is false. + @KnownSystemPackage.Enum int[] read() default {}; + // IDs of system packages that are allowed read and write access. Should be empty if + // immutableValue is non-empty + @KnownSystemPackage.Enum int[] readWrite() default {}; + } + + /** @hide */ + public record ProtectedSetting(String key, + @Nullable String immutableValue, + boolean restrictReads, + @KnownSystemPackage.Enum int[] readableBy, + @KnownSystemPackage.Enum int[] readWritableBy) { + + static ProtectedSetting fromAnnotation(String key, Protected anno) { + int[] readableBy = anno.read(); + int[] readWritableBy = anno.readWrite(); + + String immutableValue = anno.immutableValue(); + if (!immutableValue.isEmpty()) { + if (readableBy.length != 0 || readWritableBy.length != 0) { + throw new IllegalArgumentException(key); + } + return new ProtectedSetting(key, immutableValue, false, readableBy, readWritableBy); + } + + boolean restrictReads = anno.restrictReads(); + if (!restrictReads && readableBy.length != 0) { + throw new IllegalArgumentException(key); + } + + return new ProtectedSetting(key, null, anno.restrictReads(), + readableBy, readWritableBy); + } + } + private static void getPublicSettingsForClass( Class callerClass, Set allKeys, Set readableKeys, - ArrayMap keysWithMaxTargetSdk) { + ArrayMap keysWithMaxTargetSdk, + @Nullable ArrayMap protectedSettings) { final Field[] allFields = callerClass.getDeclaredFields(); try { for (int i = 0; i < allFields.length; i++) { @@ -4049,17 +4145,24 @@ private static void getPublicSettingsForClass( if (!value.getClass().equals(String.class)) { continue; } - allKeys.add((String) value); + final String key = (String) value; + allKeys.add(key); final Readable annotation = field.getAnnotation(Readable.class); if (annotation != null) { - final String key = (String) value; final int maxTargetSdk = annotation.maxTargetSdk(); readableKeys.add(key); if (maxTargetSdk != 0) { keysWithMaxTargetSdk.put(key, maxTargetSdk); } } + + if (protectedSettings != null) { + final Protected anno = field.getAnnotation(Protected.class); + if (anno != null) { + protectedSettings.put(key, ProtectedSetting.fromAnnotation(key, anno)); + } + } } } catch (IllegalAccessException ignored) { } @@ -4282,9 +4385,10 @@ public static void clearProviderForTest() { /** @hide */ public static void getPublicSettings(Set allKeys, Set readableKeys, - ArrayMap readableKeysWithMaxTargetSdk) { + ArrayMap readableKeysWithMaxTargetSdk, + ArrayMap protectedSettings) { getPublicSettingsForClass(System.class, allKeys, readableKeys, - readableKeysWithMaxTargetSdk); + readableKeysWithMaxTargetSdk, protectedSettings); } /** @@ -6942,6 +7046,42 @@ public static boolean canWrite(Context context) { * or by calling the "put" methods that this class contains. */ public static final class Secure extends NameValueTable { + // It's important to define setting names here, since readability of settings is determined + // by using Java reflection on members of this class. + /** @see android.provider.Settings#getPublicSettingsForClass */ + // ExtSettings BEGIN + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String AUTO_GRANT_OTHER_SENSORS_PERMISSION = "auto_grant_OTHER_SENSORS_perm"; + + /** @hide */ + @Protected(read = KnownSystemPackage.SYSTEM_UI, readWrite = KnownSystemPackage.SETTINGS) + public static final String SCREENSHOT_TIMESTAMP_EXIF = "screenshot_timestamp_exif"; + + /** @hide */ + @Protected(read = KnownSystemPackage.SYSTEM_UI, readWrite = KnownSystemPackage.SETTINGS) + public static final String SCRAMBLE_PIN_LAYOUT_PRIMARY = + "lockscreen_scramble_pin_layout"; + /** @hide */ + @Protected(read = KnownSystemPackage.SYSTEM_UI, readWrite = KnownSystemPackage.SETTINGS) + public static final String SCRAMBLE_PIN_LAYOUT_SECONDARY = + "lockscreen_scramble_pin_layout_secondary"; + + /** @hide */ + @Protected(read = KnownSystemPackage.SYSTEM_UI, readWrite = KnownSystemPackage.SETTINGS) + public static final String SCRAMBLE_SIM_PIN_LAYOUT = "scramble_sim_pin_layout"; + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String CROSS_PROFILE_CLIPBOARD_ACCESS = "cross_profile_clipboard_access"; + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String DISALLOW_DELAYED_LOCKING_ON_USER_STOP = "disallow_delayed_locking_on_user_stop"; + + // ExtSettings END + // NOTE: If you add new settings here, be sure to add them to // com.android.providers.settings.SettingsProtoDumpUtil#dumpProtoSecureSettingsLocked. @@ -6965,6 +7105,11 @@ public static final class Secure extends NameValueTable { sProviderHolder, Secure.class); + /** @hide */ + public static boolean isKnownKey(String key) { + return sNameValueCache.mAllFields.contains(key); + } + @UnsupportedAppUsage private static final HashSet MOVED_TO_LOCK_SETTINGS; @UnsupportedAppUsage @@ -7103,9 +7248,10 @@ public static void clearProviderForTest() { /** @hide */ public static void getPublicSettings(Set allKeys, Set readableKeys, - ArrayMap readableKeysWithMaxTargetSdk) { + ArrayMap readableKeysWithMaxTargetSdk, + ArrayMap protectedSettings) { getPublicSettingsForClass(Secure.class, allKeys, readableKeys, - readableKeysWithMaxTargetSdk); + readableKeysWithMaxTargetSdk, protectedSettings); } /** @@ -10888,6 +11034,18 @@ public static boolean putFloatForUser(ContentResolver cr, String name, float val public static final String LOCK_SCREEN_NOTIFICATION_MINIMALISM = "lock_screen_notification_minimalism"; + /** + * Indicates whether the notifications for one user should be sent to the + * current user in censored form (app name, name of the user, time received are shown). + *

+ * Type: int (0 for false, 1 for true) + * + * @hide + */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String SEND_CENSORED_NOTIFICATIONS_TO_CURRENT_USER = + "send_censored_notifications_to_current_user"; + /** * Indicates whether snooze options should be shown on notifications *

@@ -11778,6 +11936,7 @@ public static boolean putFloatForUser(ContentResolver cr, String name, float val */ @SystemApi @Readable + @Protected(immutableValue = "0") public static final String INSTANT_APPS_ENABLED = "instant_apps_enabled"; /** @@ -13020,6 +13179,78 @@ public static void setLocationProviderEnabled(ContentResolver cr, * explicitly modify through the system UI or specialized APIs for those values. */ public static final class Global extends NameValueTable { + // It's important to define setting names here, since readability of settings is determined + // by using Java reflection on members of this class. + /** @see android.provider.Settings#getPublicSettingsForClass */ + // ExtSettings BEGIN + + /** @hide */ + @Protected(restrictReads = false, readWrite = KnownSystemPackage.SETTINGS) + public static final String ALLOW_DISABLING_HARDENING_VIA_APP_COMPAT_CONFIG = + "allow_automatic_pkg_hardening_config"; // historical name + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String AUTO_REBOOT_TIMEOUT = "settings_reboot_after_timeout"; + + /** @hide */ + @Protected(restrictReads = false, readWrite = KnownSystemPackage.SETTINGS) + public static final String GNSS_SUPL = "force_disable_supl"; // historical name + + /** @hide */ + @Protected(restrictReads = false, readWrite = KnownSystemPackage.SETTINGS) + public static final String GNSS_PSDS_STANDARD = "psds_server"; // historical name + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String WIFI_AUTO_OFF = "wifi_off_timeout"; + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String BLUETOOTH_AUTO_OFF = "bluetooth_off_timeout"; + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String NFC_AUTO_OFF = "nfc_off_timeout"; + + /** @hide */ + @Protected(restrictReads = false, readWrite = KnownSystemPackage.SETTINGS) + public static final String REMOTE_KEY_PROVISIONING_SERVER = "attest_remote_provisioner_server"; + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String RESTRICT_MEMORY_DYN_CODE_LOADING_BY_DEFAULT = "restrict_memory_dyn_code_exec"; + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String RESTRICT_STORAGE_DYN_CODE_LOADING_BY_DEFAULT = "restrict_storage_dyn_code_exec"; + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String RESTRICT_WEBVIEW_DYN_CODE_LOADING_BY_DEFAULT = "restrict_webview_dyn_code_exec"; + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String FORCE_APP_MEMTAG_BY_DEFAULT = "force_app_memtag"; + + /** @hide */ + @Protected(readWrite = KnownSystemPackage.SETTINGS) + public static final String SHOW_SYSTEM_PROCESS_CRASH_NOTIFICATIONS = "show_system_process_crash_notifs"; + + /** @hide */ + @Protected(restrictReads = false, readWrite = KnownSystemPackage.SETTINGS) + public static final String WIDEVINE_PROVISIONING_SERVER = "widevine_provisioner_server"; + + /** @hide */ + @Protected(read = KnownSystemPackage.SYSTEM_UI, readWrite = KnownSystemPackage.SETTINGS) + public static final String BATTERY_CHARGE_LIMIT = "battery_charge_limit"; + + /** @hide */ + @Protected(restrictReads = false, readWrite = KnownSystemPackage.SETTINGS) + public static final String NETWORK_LOCATION = "network_location"; + + // ExtSettings END + // NOTE: If you add new settings here, be sure to add them to // com.android.providers.settings.SettingsProtoDumpUtil#dumpProtoGlobalSettingsLocked. @@ -13046,6 +13277,7 @@ public static final class Global extends NameValueTable { * @hide */ @Readable + @Protected(immutableValue = "0") public static final String ADD_USERS_WHEN_LOCKED = "add_users_when_locked"; /** @@ -17687,6 +17919,7 @@ public static final class Global extends NameValueTable { * @hide */ @Readable + @Protected(immutableValue = "0") public static final String ENABLE_EPHEMERAL_FEATURE = "enable_ephemeral_feature"; /** @@ -18258,6 +18491,11 @@ public static final class Global extends NameValueTable { sProviderHolder, Global.class); + /** @hide */ + public static boolean isKnownKey(String key) { + return sNameValueCache.mAllFields.contains(key); + } + // Certain settings have been moved from global to the per-user secure namespace @UnsupportedAppUsage private static final HashSet MOVED_TO_SECURE; @@ -18298,14 +18536,15 @@ public static void clearProviderForTest() { /** @hide */ public static void getPublicSettings(Set allKeys, Set readableKeys, - ArrayMap readableKeysWithMaxTargetSdk) { + ArrayMap readableKeysWithMaxTargetSdk, + ArrayMap protectedSettings) { getPublicSettingsForClass(Global.class, allKeys, readableKeys, - readableKeysWithMaxTargetSdk); + readableKeysWithMaxTargetSdk, protectedSettings); // Add Global.Wearable keys on watches. if (ActivityThread.currentApplication().getApplicationContext().getPackageManager() .hasSystemFeature(PackageManager.FEATURE_WATCH)) { getPublicSettingsForClass(Global.Wearable.class, allKeys, readableKeys, - readableKeysWithMaxTargetSdk); + readableKeysWithMaxTargetSdk, protectedSettings); } } @@ -18533,6 +18772,19 @@ public static Uri getUriFor(String name) { * or not a valid integer. */ public static int getInt(ContentResolver cr, String name, int def) { + if (GmsCompat.isEnabled()) { + if ("google_play_store_system_component_update".equals(name)) { + // Stop Play Store from attempting to auto-install some system component + // packages, such as "Android System SafetyCore" (com.google.android.safetycore) + // and "Android System Key Verifier" (com.google.android.contactkeys) + // + // This setting also disables auto-updates of GmsCore and Play Store. + if (!"1".equals(getString(cr, "gmscompat_bypass_sys_component_update_stub"))) { + return 0; + } + } + } + String v = getString(cr, name); return parseIntSettingWithDefault(v, def); } diff --git a/core/java/android/service/notification/ZenModeConfig.java b/core/java/android/service/notification/ZenModeConfig.java index 13887781f1eca..192e9636b611e 100644 --- a/core/java/android/service/notification/ZenModeConfig.java +++ b/core/java/android/service/notification/ZenModeConfig.java @@ -62,6 +62,7 @@ import android.content.Context; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; +import android.content.pm.ParceledListSlice; import android.content.res.Resources; import android.net.Uri; import android.os.Build; @@ -466,14 +467,21 @@ void ensureManualZenRule() { } private static void readRulesFromParcel(ArrayMap ruleMap, Parcel source) { - final int len = source.readInt(); + int len = source.readInt(); if (len > 0) { final String[] ids = new String[len]; - final ZenRule[] rules = new ZenRule[len]; - source.readStringArray(ids); - source.readTypedArray(rules, ZenRule.CREATOR); + source.readString8Array(ids); + ParceledListSlice parceledRules = source.readParcelable( + ZenRule.class.getClassLoader(), ParceledListSlice.class); + List rules = parceledRules != null ? parceledRules.getList() : new ArrayList<>(); + if (rules.size() != len) { + Slog.wtf(TAG, String.format( + "Unexpected parceled rules count (%s != %s), throwing them out", + rules.size(), len)); + len = 0; + } for (int i = 0; i < len; i++) { - ruleMap.put(ids[i], rules[i]); + ruleMap.put(ids[i], (ZenRule) rules.get(i)); } } } @@ -491,9 +499,9 @@ public void writeToParcel(Parcel dest, int flags) { } dest.writeInt(user); dest.writeParcelable(manualRule, 0); - writeRulesToParcel(automaticRules, dest); + writeRulesToParcel(automaticRules, dest, flags); if (Flags.modesApi()) { - writeRulesToParcel(deletedRules, dest); + writeRulesToParcel(deletedRules, dest, flags); } if (!Flags.modesUi()) { dest.writeInt(allowAlarms ? 1 : 0); @@ -511,18 +519,19 @@ public void writeToParcel(Parcel dest, int flags) { } } - private static void writeRulesToParcel(ArrayMap ruleMap, Parcel dest) { + private static void writeRulesToParcel(ArrayMap ruleMap, Parcel dest, + int flags) { if (!ruleMap.isEmpty()) { final int len = ruleMap.size(); final String[] ids = new String[len]; - final ZenRule[] rules = new ZenRule[len]; + final ArrayList rules = new ArrayList<>(); for (int i = 0; i < len; i++) { ids[i] = ruleMap.keyAt(i); - rules[i] = ruleMap.valueAt(i); + rules.add(ruleMap.valueAt(i)); } dest.writeInt(len); - dest.writeStringArray(ids); - dest.writeTypedArray(rules, 0); + dest.writeString8Array(ids); + dest.writeParcelable(new ParceledListSlice<>(rules), flags); } else { dest.writeInt(0); } @@ -2665,7 +2674,7 @@ public ZenRule(Parcel source) { enabled = source.readInt() == 1; snoozing = source.readInt() == 1; if (source.readInt() == 1) { - name = source.readString(); + name = source.readString8(); } zenMode = source.readInt(); conditionId = source.readParcelable(null, android.net.Uri.class); @@ -2673,22 +2682,22 @@ public ZenRule(Parcel source) { component = source.readParcelable(null, android.content.ComponentName.class); configurationActivity = source.readParcelable(null, android.content.ComponentName.class); if (source.readInt() == 1) { - id = source.readString(); + id = source.readString8(); } creationTime = source.readLong(); if (source.readInt() == 1) { - enabler = source.readString(); + enabler = source.readString8(); } zenPolicy = source.readParcelable(null, android.service.notification.ZenPolicy.class); if (Flags.modesApi()) { zenDeviceEffects = source.readParcelable(null, ZenDeviceEffects.class); } modified = source.readInt() == 1; - pkg = source.readString(); + pkg = source.readString8(); if (Flags.modesApi()) { allowManualInvocation = source.readBoolean(); - iconResName = source.readString(); - triggerDescription = source.readString(); + iconResName = source.readString8(); + triggerDescription = source.readString8(); type = source.readInt(); userModifiedFields = source.readInt(); zenPolicyUserModifiedFields = source.readInt(); @@ -2733,7 +2742,7 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeInt(snoozing ? 1 : 0); if (name != null) { dest.writeInt(1); - dest.writeString(name); + dest.writeString8(name); } else { dest.writeInt(0); } @@ -2744,14 +2753,14 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeParcelable(configurationActivity, 0); if (id != null) { dest.writeInt(1); - dest.writeString(id); + dest.writeString8(id); } else { dest.writeInt(0); } dest.writeLong(creationTime); if (enabler != null) { dest.writeInt(1); - dest.writeString(enabler); + dest.writeString8(enabler); } else { dest.writeInt(0); } @@ -2760,11 +2769,11 @@ public void writeToParcel(Parcel dest, int flags) { dest.writeParcelable(zenDeviceEffects, 0); } dest.writeInt(modified ? 1 : 0); - dest.writeString(pkg); + dest.writeString8(pkg); if (Flags.modesApi()) { dest.writeBoolean(allowManualInvocation); - dest.writeString(iconResName); - dest.writeString(triggerDescription); + dest.writeString8(iconResName); + dest.writeString8(triggerDescription); dest.writeInt(type); dest.writeInt(userModifiedFields); dest.writeInt(zenPolicyUserModifiedFields); diff --git a/core/java/android/service/quickaccesswallet/QuickAccessWalletServiceInfo.java b/core/java/android/service/quickaccesswallet/QuickAccessWalletServiceInfo.java index 8a3f6ceb852b6..8d42e07c4dbb4 100644 --- a/core/java/android/service/quickaccesswallet/QuickAccessWalletServiceInfo.java +++ b/core/java/android/service/quickaccesswallet/QuickAccessWalletServiceInfo.java @@ -45,6 +45,7 @@ import java.io.IOException; import java.util.List; +import java.util.Objects; /** * {@link ServiceInfo} and meta-data about a {@link QuickAccessWalletService}. @@ -83,6 +84,10 @@ static QuickAccessWalletServiceInfo tryCreate(@NonNull Context context) { defaultAppPackageName = defaultPaymentApp.getPackageName(); } + if (defaultAppPackageName == null) { + return null; + } + ServiceInfo serviceInfo = getWalletServiceInfo(context, defaultAppPackageName); if (serviceInfo == null) { return null; @@ -129,6 +134,7 @@ private static ComponentName getDefaultPaymentApp(Context context) { } private static ServiceInfo getWalletServiceInfo(Context context, String packageName) { + Objects.requireNonNull(packageName); Intent intent = new Intent(QuickAccessWalletService.SERVICE_INTERFACE); intent.setPackage(packageName); List resolveInfos = diff --git a/core/java/android/speech/tts/TtsEngines.java b/core/java/android/speech/tts/TtsEngines.java index a8aea7c1eb599..3697b9494949d 100644 --- a/core/java/android/speech/tts/TtsEngines.java +++ b/core/java/android/speech/tts/TtsEngines.java @@ -498,7 +498,7 @@ static public String[] toOldLocaleStringFormat(Locale locale) { * specific preference in the list. */ private static String parseEnginePrefFromList(String prefValue, String engineName) { - if (TextUtils.isEmpty(prefValue)) { + if (TextUtils.isEmpty(prefValue) || TextUtils.isEmpty(engineName)) { return null; } diff --git a/core/java/android/telephony/TelephonyRegistryManager.java b/core/java/android/telephony/TelephonyRegistryManager.java index 4ec429d0c4ada..c53c53b13baf1 100644 --- a/core/java/android/telephony/TelephonyRegistryManager.java +++ b/core/java/android/telephony/TelephonyRegistryManager.java @@ -23,6 +23,7 @@ import android.annotation.RequiresPermission; import android.annotation.SystemApi; import android.annotation.SystemService; +import android.app.compat.gms.GmsCompat; import android.compat.Compatibility; import android.compat.annotation.ChangeId; import android.compat.annotation.EnabledAfter; @@ -54,6 +55,7 @@ import android.util.Log; import com.android.internal.annotations.GuardedBy; +import com.android.internal.gmscompat.sysservice.GmcTelephonyManager; import com.android.internal.listeners.ListenerExecutor; import com.android.internal.telephony.ICarrierConfigChangeListener; import com.android.internal.telephony.ICarrierPrivilegesCallback; @@ -298,6 +300,13 @@ public void listenFromListener(int subId, @NonNull boolean renounceFineLocationA } else if (listener.mSubId != null) { subId = listener.mSubId; } + + if (GmsCompat.isEnabled()) { + eventsList = GmcTelephonyManager.filterTelephonyCallbackEvents(eventsList); + // empty eventsList means "unregister the listener". It's fine if eventsList becomes + // empty after filtering, unregistration of a never-registered listener is allowed. + } + sRegistry.listenWithEventList(renounceFineLocationAccess, renounceCoarseLocationAccess, subId, pkg, featureId, listener.callback, eventsList, notifyNow); } catch (RemoteException e) { @@ -319,6 +328,13 @@ private void listenFromCallback(boolean renounceFineLocationAccess, @NonNull String pkg, @NonNull String featureId, @NonNull TelephonyCallback telephonyCallback, @NonNull int[] events, boolean notifyNow) { + + if (GmsCompat.isEnabled()) { + events = GmcTelephonyManager.filterTelephonyCallbackEvents(events); + // empty events array means "unregister the listener". It's fine if events array becomes + // empty after filtering, unregistration of a never-registered listener is allowed. + } + try { sRegistry.listenWithEventList(renounceFineLocationAccess, renounceCoarseLocationAccess, subId, pkg, featureId, telephonyCallback.callback, events, notifyNow); diff --git a/core/java/android/util/NtpTrustedTime.java b/core/java/android/util/NtpTrustedTime.java index 3adbd686cd2c1..cf64566ca8e8c 100644 --- a/core/java/android/util/NtpTrustedTime.java +++ b/core/java/android/util/NtpTrustedTime.java @@ -23,6 +23,7 @@ import android.content.Context; import android.content.res.Resources; import android.net.ConnectivityManager; +import android.net.HttpsTimeClient; import android.net.Network; import android.net.NetworkInfo; import android.net.SntpClient; @@ -38,6 +39,7 @@ import java.net.InetSocketAddress; import java.net.URI; import java.net.URISyntaxException; +import java.net.URL; import java.time.Duration; import java.time.Instant; import java.util.ArrayList; @@ -246,6 +248,10 @@ public String toString() { @Nullable private volatile URI mLastSuccessfulNtpServerUri; + @GuardedBy("mRefreshLock") + @Nullable + private URL mLastSuccessfulHttpsTimeUrl; + protected NtpTrustedTime() { } @@ -270,7 +276,7 @@ public void setServerConfigForTests(@NonNull NtpConfig ntpConfig) { /** Forces a refresh using the default network. */ @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) - public boolean forceRefresh() { + public final boolean forceRefresh() { synchronized (mRefreshLock) { Network network = getDefaultNetwork(); if (network == null) { @@ -283,7 +289,7 @@ public boolean forceRefresh() { } /** Forces a refresh using the specified network. */ - public boolean forceRefresh(@NonNull Network network) { + public final boolean forceRefresh(@NonNull Network network) { Objects.requireNonNull(network); synchronized (mRefreshLock) { @@ -296,11 +302,36 @@ public boolean forceRefresh(@NonNull Network network) { private boolean forceRefreshLocked(@NonNull Network network) { Objects.requireNonNull(network); + final ContentResolver resolver = getContext().getContentResolver(); + + if (Settings.Global.getInt(resolver, Settings.Global.AUTO_TIME, 0) == 0) { + Log.d(TAG, "skipped forceRefresh: auto time is disabled"); + return false; + } + if (!isNetworkConnected(network)) { if (LOGD) Log.d(TAG, "forceRefreshLocked: network=" + network + " is not connected"); return false; } + final String networkTimeMode = "https"; + + if ("https".equals(networkTimeMode)) { + var client = new HttpsTimeClient(getHttpsTimeConfig(), network); + HttpsTimeClient.Result res = client.requestTime(mLastSuccessfulHttpsTimeUrl); + if (res == null) { + return false; + } + + mTimeResult = res.timeResult; + mLastSuccessfulHttpsTimeUrl = res.url; + return true; + } + + if (!"ntp".equals(networkTimeMode)) { + throw new IllegalStateException(networkTimeMode); + } + NtpConfig ntpConfig = getNtpConfig(); if (ntpConfig == null) { // missing server config, so no NTP time available @@ -376,6 +407,10 @@ private NtpConfig getNtpConfig() { } } + private HttpsTimeClient.Config getHttpsTimeConfig() { + return HttpsTimeClient.Config.getDefault(getContext()); + } + /** * Returns the {@link NtpConfig} to use during an NTP query. This method can return {@code null} * if there is no config, or the config found is invalid. @@ -606,6 +641,8 @@ private static URI validateNtpServerUri(@NonNull URI uri) throws URISyntaxExcept /** Prints debug information. */ public void dump(PrintWriter pw) { synchronized (mConfigLock) { + pw.println("getHttpsTimeConfig()=" + getHttpsTimeConfig()); + pw.println("mLastSuccessfulHttpsTimeUrl=" + mLastSuccessfulHttpsTimeUrl); pw.println("getNtpConfig()=" + getNtpConfig()); pw.println("mNtpConfigForTests=" + mNtpConfigForTests); } @@ -748,5 +785,14 @@ private static int saturatedCast(long longValue) { } return (int) longValue; } + + @NonNull + @Override + protected Context getContext() { + return mContext; + } } + + @NonNull + protected abstract Context getContext(); } diff --git a/core/java/android/util/PackageUtils.java b/core/java/android/util/PackageUtils.java index c1ed19fef032b..6dc86a0c767bf 100644 --- a/core/java/android/util/PackageUtils.java +++ b/core/java/android/util/PackageUtils.java @@ -19,9 +19,13 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.app.ActivityManager; +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager; import android.content.pm.Signature; import android.text.TextUtils; +import libcore.util.EmptyArray; import libcore.util.HexEncoding; import java.io.ByteArrayOutputStream; @@ -31,7 +35,9 @@ import java.security.DigestInputStream; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; import java.util.Arrays; +import java.util.List; /** * Helper functions applicable to packages. @@ -246,4 +252,36 @@ private PackageUtils() { } return TextUtils.join(separator, pieces); } + + public static boolean isSystemPackage(Context ctx, @Nullable String pkg) { + if (TextUtils.isEmpty(pkg)) { + return false; + } + PackageManager pm = ctx.getPackageManager(); + try { + ApplicationInfo appInfo = pm.getApplicationInfo(pkg, 0); + // even though getApplicationInfo() is @NonNull, it returns null in some tests + return appInfo != null && appInfo.isSystemApp(); + } catch (PackageManager.NameNotFoundException e) { + return false; + } + } + + public static String[] filterNonSystemPackages(Context ctx, String[] pkgs) { + return filterNonSystemPackagesL(ctx, pkgs).toArray(EmptyArray.STRING); + } + + public static List filterNonSystemPackagesL(Context ctx, String[] pkgs) { + var list = new ArrayList(pkgs.length); + for (String pkg : pkgs) { + if (isSystemPackage(ctx, pkg)) { + list.add(pkg); + } + } + return list; + } + + public static String getFirstPartyAppSourcePackageName(Context ctx) { + return ctx.getString(com.android.internal.R.string.config_first_party_app_source_package_name); + } } diff --git a/core/java/android/webkit/WebViewZygote.java b/core/java/android/webkit/WebViewZygote.java index 10d16af8cb8cb..6b19d21328a89 100644 --- a/core/java/android/webkit/WebViewZygote.java +++ b/core/java/android/webkit/WebViewZygote.java @@ -120,7 +120,8 @@ private static void connectToZygoteIfNeededLocked() { TextUtils.join(",", Build.SUPPORTED_ABIS), null, // instructionSet Process.FIRST_ISOLATED_UID, - Integer.MAX_VALUE); // TODO(b/123615476) deal with user-id ranges properly + Integer.MAX_VALUE, // TODO(b/123615476) deal with user-id ranges properly + null /* flatExtraArgs */); ZygoteProcess.waitForConnectionToZygote(sZygote.getPrimarySocketAddress()); sZygote.preloadApp(sPackage.applicationInfo, abi); } catch (Exception e) { diff --git a/core/java/android/widget/RemoteViews.java b/core/java/android/widget/RemoteViews.java index 9fe3fd6ddc1ab..e7fa80f3e11d0 100644 --- a/core/java/android/widget/RemoteViews.java +++ b/core/java/android/widget/RemoteViews.java @@ -44,7 +44,6 @@ import android.app.ActivityOptions; import android.app.ActivityThread; import android.app.Application; -import android.app.LoadedApk; import android.app.PendingIntent; import android.app.RemoteInput; import android.appwidget.AppWidgetHostView; @@ -8479,8 +8478,14 @@ private Context getContextForResourcesEnsuringCorrectCachedApkPaths(Context cont return context; } try { - LoadedApk.checkAndUpdateApkPaths(mApplication); - Context applicationContext = context.createApplicationContext(mApplication, + // Use PackageManager as the source of truth for application information, rather + // than the parceled ApplicationInfo provided by the app. + ApplicationInfo sanitizedApplication = + context.getPackageManager().getApplicationInfoAsUser( + mApplication.packageName, 0, + UserHandle.getUserId(mApplication.uid)); + Context applicationContext = context.createApplicationContext( + sanitizedApplication, Context.CONTEXT_RESTRICTED); // Get the correct apk paths while maintaining the current context's configuration. return applicationContext.createConfigurationContext( diff --git a/core/java/com/android/internal/app/ChooserActivity.java b/core/java/com/android/internal/app/ChooserActivity.java index 3bdf3d65e99c5..6550894fad0ea 100644 --- a/core/java/com/android/internal/app/ChooserActivity.java +++ b/core/java/com/android/internal/app/ChooserActivity.java @@ -2825,7 +2825,7 @@ public Intent getReferrerFillInIntent() { @Override // ChooserListCommunicator public int getMaxRankedTargets() { - return mMaxTargetsPerRow; + return mMaxTargetsPerRow * 2; } @Override // ChooserListCommunicator diff --git a/core/java/com/android/internal/app/ContactScopes.java b/core/java/com/android/internal/app/ContactScopes.java new file mode 100644 index 0000000000000..2ba307f82094e --- /dev/null +++ b/core/java/com/android/internal/app/ContactScopes.java @@ -0,0 +1,167 @@ +package com.android.internal.app; + +import android.Manifest; +import android.annotation.AnyThread; +import android.app.AppOpsManager; +import android.content.Context; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; +import android.database.ContentObserver; +import android.ext.DerivedPackageFlag; +import android.ext.cscopes.ContactScopesApi; +import android.net.Uri; +import android.provider.ContactsContract; +import android.provider.SimPhonebookContract; + +import com.android.internal.app.ContentProviderRedirector.ContentObserverList; + +public class ContactScopes { + private static volatile boolean isEnabled; + private static int gosPsDerivedFlags; + + private static ContentObserverList contentObserverList; + + public static boolean isEnabled() { + return isEnabled; + } + + @AnyThread + public static void maybeEnable(Context ctx, GosPackageState ps) { + synchronized (ContactScopes.class) { + if (isEnabled) { + return; + } + + if (ps.hasFlag(GosPackageStateFlag.CONTACT_SCOPES_ENABLED)) { + gosPsDerivedFlags = ps.derivedFlags; + { + var col = new ContentObserverList(); + String intentAction = ContactScopesApi.ACTION_NOTIFY_CONTENT_OBSERVERS; + // this broadcast is sent by PermissionController + String permission = Manifest.permission.GRANT_RUNTIME_PERMISSIONS; + col.registerNotificationReceiver(ctx, intentAction, permission); + contentObserverList = col; + } + ContentProviderRedirector.enable(); + isEnabled = true; + } + } + } + + // call only if isEnabled is true + private static boolean shouldSpoofPermissionCheckInner(int permDflag) { + if (permDflag == 0) { + return false; + } + return (gosPsDerivedFlags & permDflag) != 0; + } + + public static boolean shouldSpoofSelfPermissionCheck(String permName) { + if (!isEnabled) { + return false; + } + return shouldSpoofPermissionCheckInner(getSpoofablePermissionDflag(permName)); + } + + public static boolean shouldSpoofSelfAppOpCheck(int op) { + if (!isEnabled) { + return false; + } + return shouldSpoofPermissionCheckInner(getSpoofableAppOpPermissionDflag(op)); + } + + public static boolean maybeInterceptRegisterContentObserver(Uri uri, ContentObserver observer) { + if (!isEnabled) { + return false; + } + + if (isContactsUri(uri)) { + contentObserverList.add(observer, uri); + return true; + } + + return false; + } + + public static boolean maybeInterceptUnregisterContentObserver(ContentObserver observer) { + if (!isEnabled) { + return false; + } + + return contentObserverList.remove(observer); + } + + public static boolean shouldSkipNotifyChange(Uri uri) { + if (!isEnabled) { + return false; + } + + return isContactsUri(uri); + } + + public static boolean isContactsUri(Uri uri) { + return isContactsUriAuthority(uri.getAuthority()); + } + + public static boolean isContactsUriAuthority(String authority) { + if (authority == null) { + return false; + } + switch (authority) { + case ContactsContract.AUTHORITY: + case SimPhonebookContract.AUTHORITY: + case ICC_PROVIDER_AUTHORITY: + return true; + } + return false; + } + + // legacy SIM phonebook provider + public static final String ICC_PROVIDER_AUTHORITY = "icc"; + + public static String maybeTranslateAuthority(String auth) { + if (!isEnabled) { + return null; + } + + if (ContactsContract.AUTHORITY.equals(auth)) { + return ContactScopesApi.SCOPED_CONTACTS_PROVIDER_AUTHORITY; + } + + if (SimPhonebookContract.AUTHORITY.equals(auth)) { + return SimPhonebookContract.AUTHORITY + ".stub"; + } + + if (ICC_PROVIDER_AUTHORITY.equals(auth)) { + return ICC_PROVIDER_AUTHORITY + ".stub"; + } + + return null; + } + + public static int getSpoofablePermissionDflag(String permName) { + switch (permName) { + case Manifest.permission.READ_CONTACTS: + return DerivedPackageFlag.HAS_READ_CONTACTS_DECLARATION; + case Manifest.permission.WRITE_CONTACTS: + return DerivedPackageFlag.HAS_WRITE_CONTACTS_DECLARATION; + case Manifest.permission.GET_ACCOUNTS: + return DerivedPackageFlag.HAS_GET_ACCOUNTS_DECLARATION; + default: + return 0; + } + } + + private static int getSpoofableAppOpPermissionDflag(int op) { + switch (op) { + case AppOpsManager.OP_READ_CONTACTS: + return DerivedPackageFlag.HAS_READ_CONTACTS_DECLARATION; + case AppOpsManager.OP_WRITE_CONTACTS: + return DerivedPackageFlag.HAS_WRITE_CONTACTS_DECLARATION; + case AppOpsManager.OP_GET_ACCOUNTS: + return DerivedPackageFlag.HAS_GET_ACCOUNTS_DECLARATION; + default: + return 0; + } + } +} diff --git a/core/java/com/android/internal/app/ContentProviderRedirector.java b/core/java/com/android/internal/app/ContentProviderRedirector.java new file mode 100644 index 0000000000000..a326ad7bd101b --- /dev/null +++ b/core/java/com/android/internal/app/ContentProviderRedirector.java @@ -0,0 +1,145 @@ +package com.android.internal.app; + +import android.annotation.Nullable; +import android.content.BroadcastReceiver; +import android.content.ContentResolver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.database.ContentObserver; +import android.net.Uri; +import android.os.Handler; +import android.os.Looper; +import android.os.UserHandle; +import android.util.Log; +import android.util.Pair; + +import java.util.ArrayList; +import java.util.Collections; + +public class ContentProviderRedirector { + + private static volatile boolean isEnabled; + + public static void enable() { + isEnabled = true; + } + + public static String translateContentProviderAuthority(String auth) { + if (!isEnabled) { + return auth; + } + + String t = null; + + if (t == null) { + t = ContactScopes.maybeTranslateAuthority(auth); + } + + return t != null ? t : auth; + } + + // registering a ContentObserver requires having the read permission for the underlying + // ContentProvider + public static boolean shouldSkipRegisterContentObserver(Uri uri, boolean notifyForDescendants, + ContentObserver observer, int userId) { + if (!isEnabled) { + return false; + } + + if (ContactScopes.maybeInterceptRegisterContentObserver(uri, observer)) { + return true; + } + + return false; + } + + public static boolean shouldSkipUnregisterContentObserver(ContentObserver observer) { + if (!isEnabled) { + return false; + } + + if (ContactScopes.maybeInterceptUnregisterContentObserver(observer)) { + return true; + } + + return false; + } + + public static boolean shouldSkipNotifyChange(Uri uri, @Nullable ContentObserver observer, + @ContentResolver.NotifyFlags int flags) { + if (!isEnabled) { + return false; + } + + if (ContactScopes.shouldSkipNotifyChange(uri)) { + return true; + } + + return false; + } + + // a helper class for keeping track of skipped ContentObservers and for delivering content + // change notifications to them manually (see shouldSkipRegisterContentObserver()) + public static class ContentObserverList { + private final ArrayList>> list = new ArrayList<>(); + + public void add(ContentObserver observer, Uri uri) { + synchronized (list) { + for (var pair : list) { + if (pair.first == observer) { + pair.second.add(uri); + return; + } + } + var uris = new ArrayList(); + uris.add(uri); + list.add(Pair.create(observer, uris)); + } + } + + @Nullable + public boolean remove(ContentObserver observer) { + synchronized (list) { + for (int i = 0, m = list.size(); i < m; ++i) { + var pair = list.get(i); + if (pair.first == observer) { + list.remove(i); + return true; + } + } + + return false; + } + } + + public void notifyAllObservers() { + final Pair>[] arr; + synchronized (list) { + arr = list.toArray(new Pair[0]); + } + + new Handler(Looper.getMainLooper()).post(() -> { + int myUserId = UserHandle.myUserId(); + for (var pair : arr) { + var uris = Collections.unmodifiableList(pair.second); + pair.first.dispatchChange(false, uris, 0, myUserId); + } + }); + } + + class Receiver extends BroadcastReceiver { + @Override + public void onReceive(Context context, Intent intent) { + Log.d("ContentChangeReceiver", intent.toString()); + notifyAllObservers(); + } + } + + public void registerNotificationReceiver(Context ctx, String intentAction, String permission) { + var receiver = new Receiver(); + var filter = new IntentFilter(intentAction); + ctx.registerReceiver(receiver, filter, permission, null, Context.RECEIVER_EXPORTED); + } + } +} diff --git a/core/java/com/android/internal/app/NfcResolverActivity.java b/core/java/com/android/internal/app/NfcResolverActivity.java index 78427fe910881..f15dbd65832a6 100644 --- a/core/java/com/android/internal/app/NfcResolverActivity.java +++ b/core/java/com/android/internal/app/NfcResolverActivity.java @@ -34,13 +34,13 @@ public class NfcResolverActivity extends ResolverActivity { @Override @SuppressWarnings("MissingSuperCall") // Called indirectly via `super_onCreate()`. protected void onCreate(Bundle savedInstanceState) { - if (!enableNfcMainline()) { + Intent intent = getIntent(); + if (!enableNfcMainline() || intent.getExtras() == null) { super_onCreate(savedInstanceState); finish(); return; } - Intent intent = getIntent(); Intent target = intent.getParcelableExtra(Intent.EXTRA_INTENT, Intent.class); ArrayList rList = intent.getParcelableArrayListExtra( diff --git a/core/java/com/android/internal/app/RedirectedContentProvider.java b/core/java/com/android/internal/app/RedirectedContentProvider.java new file mode 100644 index 0000000000000..91d2a6121f6cf --- /dev/null +++ b/core/java/com/android/internal/app/RedirectedContentProvider.java @@ -0,0 +1,107 @@ +package com.android.internal.app; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.content.ContentProvider; +import android.content.ContentValues; +import android.database.Cursor; +import android.net.Uri; +import android.os.Bundle; +import android.os.ParcelFileDescriptor; +import android.util.Log; + +import java.util.Arrays; + +/** + * A base class for stubbed out or scoped content providers. + * Stubbed out providers are fully empty and immutable. + * Scoped providers export a subset of data from a different content provider and are expected to + * be immutable. + */ +public class RedirectedContentProvider extends ContentProvider { + protected String TAG; + protected boolean DEBUG; + + protected String authorityOverride; + + @Override + public boolean onCreate() { + DEBUG = Log.isLoggable(TAG, Log.DEBUG); + if (DEBUG) Log.d(TAG, "onCreate"); + return true; + } + + @Override + public final Cursor query(Uri uri, @Nullable String[] projection, @Nullable String selection, + @Nullable String[] selectionArgs, @Nullable String sortOrder) { + if (DEBUG) Log.d(TAG, "query from " + getCallingPackage() + "; uri " + uri + + ", projection " + Arrays.toString(projection) + ", selection " + selection + + ", selectionArgs " + Arrays.toString(selectionArgs) + + ", sortOrder " + sortOrder); + return queryInner(uri, projection, selection, selectionArgs, sortOrder); + } + + public Cursor queryInner(Uri uri, @Nullable String[] projection, @Nullable String selection, + @Nullable String[] selectionArgs, @Nullable String sortOrder) { + return null; + } + + @Override + public final String getType(Uri uri) { + if (DEBUG) Log.d(TAG, "getType from " + getCallingPackage() + "; uri " + uri); + + // getType() call doesn't require any permission, can always forward it to the original provider + return requireContext().getContentResolver().getType(uri); + } + + @Override + public final Uri insert(Uri uri, ContentValues values) { + if (DEBUG) Log.d(TAG, "insert from " + getCallingPackage() + "; uri " + uri + ", values " + values); + return null; + } + + @Override + public final int delete(Uri uri, String selection, String[] selectionArgs) { + if (DEBUG) Log.d(TAG, "delete from " + getCallingPackage() + "; uri " + uri + + ", selection " + selection + ", selectionArgs " + Arrays.toString(selectionArgs)); + return 0; + } + + @Override + public final int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) { + if (DEBUG) Log.d(TAG, "update from " + getCallingPackage() + "; uri " + uri + ", values " + values + + ", selection " + selection + ", selectionArgs " + Arrays.toString(selectionArgs)); + return 0; + } + + @Nullable + @Override + public final ParcelFileDescriptor openFile(@NonNull Uri uri, @NonNull String mode) { + if (DEBUG) Log.d(TAG, "openFile from " + getCallingPackage() + "; uri " + uri + ", mode " + mode); + return null; + } + + @Override + public Bundle call(@NonNull String method, @Nullable String arg, @Nullable Bundle extras) { + if (DEBUG) Log.d(TAG, "call from " + getCallingPackage() + "; method " + method + ", arg " + arg + + ", extras " + (extras != null ? extras.deepCopy() : extras)); + return new Bundle(); + } + + @Override + public Uri validateIncomingUri(Uri uri) throws SecurityException { + if (DEBUG) Log.d(TAG, "validateIncomingUri: " + uri); + uri = uri.buildUpon().authority(authorityOverride).build(); + + uri = super.validateIncomingUri(uri); + + if (DEBUG) Log.d(TAG, "override uri to: " + uri); + + return uri; + } + + @Override + protected final void validateIncomingAuthority(String authority) throws SecurityException { + if (DEBUG) Log.d(TAG, "validateIncomingAuthority: " + authority); + } +} diff --git a/core/java/com/android/internal/app/StorageScopesAppHooks.java b/core/java/com/android/internal/app/StorageScopesAppHooks.java new file mode 100644 index 0000000000000..6864603c3d792 --- /dev/null +++ b/core/java/com/android/internal/app/StorageScopesAppHooks.java @@ -0,0 +1,211 @@ +/* + * Copyright (C) 2022 GrapheneOS + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.app; + +import android.Manifest; +import android.annotation.AnyThread; +import android.app.AppOpsManager; +import android.content.Context; +import android.content.Intent; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; +import android.ext.DerivedPackageFlag; +import android.net.Uri; +import android.os.Environment; +import android.provider.MediaStore; +import android.provider.Settings; + +public class StorageScopesAppHooks { + private static final String TAG = "StorageScopesAppHooks"; + + private static volatile boolean isEnabled; + private static int gosPsDerivedFlags; + + @AnyThread + public static void maybeEnable(GosPackageState ps) { + if (isEnabled) { + return; + } + + if (ps.hasFlag(GosPackageStateFlag.STORAGE_SCOPES_ENABLED)) { + gosPsDerivedFlags = ps.derivedFlags; + isEnabled = true; + } + } + + public static boolean isEnabled() { + return isEnabled; + } + + public static boolean shouldSkipPermissionCheckSpoof(int gosPsDflags, int permDerivedFlag) { + if ((gosPsDflags & DerivedPackageFlag.HAS_READ_MEDIA_VISUAL_USER_SELECTED_DECLARATION) != 0) { + switch (permDerivedFlag) { + case DerivedPackageFlag.HAS_READ_MEDIA_AUDIO_DECLARATION: + case DerivedPackageFlag.HAS_READ_MEDIA_VIDEO_DECLARATION: + // see https://developer.android.com/about/versions/14/changes/partial-photo-video-access + return false; + } + } + + return false; + } + + // call only if isEnabled == true + private static boolean shouldSpoofSelfPermissionCheckInner(int permDerivedFlag) { + if (permDerivedFlag == 0) { + return false; + } + + if (shouldSkipPermissionCheckSpoof(gosPsDerivedFlags, permDerivedFlag)) { + return false; + } + + return (gosPsDerivedFlags & permDerivedFlag) != 0; + } + + public static boolean shouldSpoofSelfPermissionCheck(String permName) { + if (!isEnabled) { + return false; + } + + return shouldSpoofSelfPermissionCheckInner(getSpoofablePermissionDflag(permName)); + } + + public static boolean shouldSpoofSelfAppOpCheck(int op) { + if (!isEnabled) { + return false; + } + + return shouldSpoofSelfPermissionCheckInner(getSpoofableAppOpPermissionDflag(op)); + } + + // Instrumentation#execStartActivity(Context, IBinder, IBinder, Activity, Intent, int, Bundle) + public static void maybeModifyActivityIntent(Context ctx, Intent i) { + String action = i.getAction(); + if (action == null) { + return; + } + + int op; + switch (action) { + case Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION: + op = AppOpsManager.OP_MANAGE_EXTERNAL_STORAGE; + break; + case Settings.ACTION_REQUEST_MANAGE_MEDIA: + op = AppOpsManager.OP_MANAGE_MEDIA; + break; + default: + return; + } + + Uri uri = i.getData(); + if (uri == null || !"package".equals(uri.getScheme())) { + return; + } + + String pkgName = uri.getSchemeSpecificPart(); + + if (pkgName == null) { + return; + } + + if (!pkgName.equals(ctx.getPackageName())) { + return; + } + + boolean shouldModify = false; + + if (shouldSpoofSelfAppOpCheck(op)) { + // in case a buggy app launches intent again despite pseudo-having the permission + shouldModify = true; + } else { + if (op == AppOpsManager.OP_MANAGE_EXTERNAL_STORAGE) { + shouldModify = !Environment.isExternalStorageManager(); + } else if (op == AppOpsManager.OP_MANAGE_MEDIA) { + shouldModify = !MediaStore.canManageMedia(ctx); + } + } + + if (shouldModify) { + i.setAction(action + "_PROMPT"); + } + } + + public static int getSpoofablePermissionDflag(String permName) { + switch (permName) { + case Manifest.permission.READ_EXTERNAL_STORAGE: + return DerivedPackageFlag.HAS_READ_EXTERNAL_STORAGE_DECLARATION; + + case Manifest.permission.WRITE_EXTERNAL_STORAGE: + return DerivedPackageFlag.HAS_WRITE_EXTERNAL_STORAGE_DECLARATION; + + case Manifest.permission.ACCESS_MEDIA_LOCATION: + return DerivedPackageFlag.HAS_ACCESS_MEDIA_LOCATION_DECLARATION; + + case Manifest.permission.READ_MEDIA_AUDIO: + return DerivedPackageFlag.HAS_READ_MEDIA_AUDIO_DECLARATION; + + case Manifest.permission.READ_MEDIA_IMAGES: + return DerivedPackageFlag.HAS_READ_MEDIA_IMAGES_DECLARATION; + + case Manifest.permission.READ_MEDIA_VIDEO: + return DerivedPackageFlag.HAS_READ_MEDIA_VIDEO_DECLARATION; + + case Manifest.permission.READ_MEDIA_VISUAL_USER_SELECTED: + return DerivedPackageFlag.HAS_READ_MEDIA_VISUAL_USER_SELECTED_DECLARATION; + + default: + return 0; + } + } + + private static int getSpoofableAppOpPermissionDflag(int op) { + switch (op) { + case AppOpsManager.OP_READ_EXTERNAL_STORAGE: + return DerivedPackageFlag.HAS_READ_EXTERNAL_STORAGE_DECLARATION; + + case AppOpsManager.OP_WRITE_EXTERNAL_STORAGE: + return DerivedPackageFlag.HAS_WRITE_EXTERNAL_STORAGE_DECLARATION; + + case AppOpsManager.OP_READ_MEDIA_AUDIO: + return DerivedPackageFlag.HAS_READ_MEDIA_AUDIO_DECLARATION; + + case AppOpsManager.OP_READ_MEDIA_IMAGES: + return DerivedPackageFlag.HAS_READ_MEDIA_IMAGES_DECLARATION; + + case AppOpsManager.OP_READ_MEDIA_VIDEO: + return DerivedPackageFlag.HAS_READ_MEDIA_VIDEO_DECLARATION; + + case AppOpsManager.OP_MANAGE_EXTERNAL_STORAGE: + return DerivedPackageFlag.HAS_MANAGE_EXTERNAL_STORAGE_DECLARATION; + + case AppOpsManager.OP_MANAGE_MEDIA: + return DerivedPackageFlag.HAS_MANAGE_MEDIA_DECLARATION; + + case AppOpsManager.OP_ACCESS_MEDIA_LOCATION: + return DerivedPackageFlag.HAS_ACCESS_MEDIA_LOCATION_DECLARATION; + + case AppOpsManager.OP_READ_MEDIA_VISUAL_USER_SELECTED: + return DerivedPackageFlag.HAS_READ_MEDIA_VISUAL_USER_SELECTED_DECLARATION; + + default: + return 0; + } + } + + private StorageScopesAppHooks() {} +} diff --git a/core/java/com/android/internal/content/F2fsUtils.java b/core/java/com/android/internal/content/F2fsUtils.java index 27f1b308ed9c3..afa8d7773b0b4 100644 --- a/core/java/com/android/internal/content/F2fsUtils.java +++ b/core/java/com/android/internal/content/F2fsUtils.java @@ -266,7 +266,10 @@ private static List getFilesRecursive(@NonNull File path) { final ArrayList files = new ArrayList<>(); for (File f : allFiles) { if (f.isDirectory()) { - files.addAll(getFilesRecursive(f)); + List inner = getFilesRecursive(f); + if (inner != null) { + files.addAll(inner); + } } else if (f.isFile()) { files.add(f); } diff --git a/core/java/com/android/internal/ext/EuiccGoogleHooks.java b/core/java/com/android/internal/ext/EuiccGoogleHooks.java new file mode 100644 index 0000000000000..6d337d67d5472 --- /dev/null +++ b/core/java/com/android/internal/ext/EuiccGoogleHooks.java @@ -0,0 +1,33 @@ +package com.android.internal.ext; + +public class EuiccGoogleHooks { + + private static final ThreadLocal resourceFilteringSuppressionCounter = + ThreadLocal.withInitial(() -> Integer.valueOf(0)); + + public static boolean isResourceFilteringSuppressed() { + return resourceFilteringSuppressionCounter.get() > 0; + } + + public static class SuppressResourceFiltering implements AutoCloseable { + + public SuppressResourceFiltering() { + var tl = resourceFilteringSuppressionCounter; + int newValue = tl.get() + 1; + if (newValue <= 0) { + throw new IllegalStateException(); + } + tl.set(newValue); + } + + @Override + public void close() { + var tl = resourceFilteringSuppressionCounter; + int newValue = tl.get() - 1; + if (newValue < 0) { + throw new IllegalStateException(); + } + tl.set(newValue); + } + } +} diff --git a/core/java/com/android/internal/gmscompat/BinderGca2Gms.java b/core/java/com/android/internal/gmscompat/BinderGca2Gms.java new file mode 100644 index 0000000000000..09b773a5ff24d --- /dev/null +++ b/core/java/com/android/internal/gmscompat/BinderGca2Gms.java @@ -0,0 +1,98 @@ +package com.android.internal.gmscompat; + +import android.app.Activity; +import android.app.compat.gms.GmsCompat; +import android.content.Intent; +import android.database.Cursor; +import android.database.sqlite.SQLiteDatabase; +import android.database.sqlite.SQLiteOpenHelper; +import android.util.ArraySet; +import android.util.Log; + +import com.android.internal.gmscompat.flags.GmsFlagOverrides; +import com.android.internal.gmscompat.util.GmcActivityUtils; + +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.FutureTask; + +import static com.android.internal.gmscompat.GmsHooks.inPersistentGmsCoreProcess; +import static com.android.internal.gmscompat.GmsInfo.PACKAGE_GMS_CORE; + +// see IGca2Gms +class BinderGca2Gms extends IGca2Gms.Stub { + private static final String TAG = "BinderGca2Gms"; + private static final boolean DEV = false; + + @Override + public void updateConfig(GmsCompatConfig newConfig) { + GmsHooks.setConfig(newConfig); + } + + @Override + public void invalidateConfigCaches() { + if (!inPersistentGmsCoreProcess) { + throw new IllegalStateException(); + } + + SQLiteOpenHelper phenotypeDb = GmsHooks.getPhenotypeDb(); + + if (phenotypeDb == null) { + // shouldn't happen in practice, phenotype db is opened on startup + Log.e(TAG, "phenotypeDb is null"); + } else { + notifyForceDefaultFlagsChanged(phenotypeDb, GmsHooks.config()); + } + + GmsFlagOverrides.applyOverrides(); + } + + private static void notifyForceDefaultFlagsChanged(SQLiteOpenHelper phenotypeDb, GmsCompatConfig newConfig) { + SQLiteDatabase db = phenotypeDb.getReadableDatabase(); + String[] columns = { "androidPackageName" }; + String selection = "packageName = ?"; + + ArraySet configPackageNames = new ArraySet<>(newConfig.forceDefaultFlagsMap.keySet()); + + for (String configPackageName : configPackageNames) { + String[] selectionArgs = { configPackageName }; + String packageName = null; + try (Cursor c = db.query("Packages", columns, selection, selectionArgs, null, null, null, "1")) { + if (c.moveToFirst()) { + packageName = c.getString(0); + } + } + + if (packageName == null) { + Log.d(TAG, "unknown configPackageName " + configPackageName); + continue; + } + + Intent i = new Intent(PACKAGE_GMS_CORE + ".phenotype.UPDATE"); + i.putExtra(PACKAGE_GMS_CORE + ".phenotype.PACKAGE_NAME", configPackageName); + i.setPackage(packageName); + GmsCompat.appContext().sendBroadcast(i); + } + } + + @Override + public boolean startActivityIfVisible(Intent intent) { + Callable callable = () -> { + Activity activity = GmcActivityUtils.getMostRecentVisibleActivity(); + if (activity == null) { + return false; + } + activity.startActivity(intent); + return true; + }; + var task = new FutureTask<>(callable); + // getMostRecentVisibleActivity() needs to be called from main thread to avoid races + GmsCompat.appContext().getMainThreadHandler().post(task); + try { + return task.get().booleanValue(); + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + return false; + } + } +} diff --git a/core/java/com/android/internal/gmscompat/GmcBinderDefs.java b/core/java/com/android/internal/gmscompat/GmcBinderDefs.java new file mode 100644 index 0000000000000..6b88d67855edf --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmcBinderDefs.java @@ -0,0 +1,111 @@ +package com.android.internal.gmscompat; + +import android.annotation.Nullable; +import android.app.ActivityThread; +import android.app.compat.gms.GmsCompat; +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.os.BinderDef; +import android.os.HybridBinder; +import android.os.IBinder; +import android.os.RemoteException; +import android.util.ArrayMap; +import android.util.ArraySet; +import android.util.Log; + +public class GmcBinderDefs { + static final String TAG = GmcBinderDefs.class.getSimpleName(); + + private static final ArrayMap seenInterfaces = new ArrayMap<>(); + + @Nullable + public static IBinder maybeOverrideBinder(IBinder originalBinder, String ifaceName) { + BinderDef bdef = maybeGetBinderDef(ifaceName); + if (bdef == null) { + return null; + } + + Context ctx = GmsCompat.appContext(); + + if (bdef.transactionCodes == null) { + // this is a complete interface implementation + return bdef.getInstance(ctx); + } + + return new HybridBinder(ctx, originalBinder, bdef); + } + + private static BinderDef maybeGetBinderDef(String iface) { + synchronized (seenInterfaces) { + int i = seenInterfaces.indexOfKey(iface); + if (i >= 0) { + return seenInterfaces.valueAt(i); + } + } + + Context ctx = GmsCompat.appContext(); + String pkgName = ctx.getPackageName(); + int processState = ActivityThread.currentActivityThread().getProcessState(); + + BinderDef maybeBinderDef; + try { + if (GmsCompat.isEnabled()) { + maybeBinderDef = GmsCompatApp.iGms2Gca() + .maybeGetBinderDef(pkgName, processState, iface); + } else { + maybeBinderDef = GmsCompatApp.iClientOfGmsCore2Gca() + .maybeGetBinderDef(pkgName, processState, iface); + } + } catch (RemoteException e) { + throw GmsCompatApp.callFailed(e); + } + + synchronized (seenInterfaces) { + // in case seenInterfaces changed since last check + int idx = seenInterfaces.indexOfKey(iface); + if (idx >= 0) { + return seenInterfaces.valueAt(idx); + } + + if (seenInterfaces.size() == 0) { + BinderDefStateListener.register(ctx); + } + + seenInterfaces.put(iface, maybeBinderDef); + } + + return maybeBinderDef; + } + + public static class BinderDefStateListener extends BroadcastReceiver { + public static final String INTENT_ACTION = GmsCompatApp.PKG_NAME + ".ACTION_BINDER_DEFS_CHANGED"; + public static final String KEY_CHANGED_IFACE_NAMES = "changed_iface_names"; + + static void register(Context ctx) { + var l = new BinderDefStateListener(); + var filter = new IntentFilter(INTENT_ACTION); + String permission = GmsCompatApp.SIGNATURE_PROTECTED_PERMISSION; + ctx.registerReceiver(l, filter, permission, null, Context.RECEIVER_EXPORTED); + } + + public void onReceive(Context context, Intent intent) { + String[] changedIfaces = intent.getStringArrayExtra(KEY_CHANGED_IFACE_NAMES); + + boolean exit = false; + synchronized (seenInterfaces) { + for (String changedIface : changedIfaces) { + if (seenInterfaces.containsKey(changedIface)) { + // it's infeasible to apply updated BinderDef without restarting app process + Log.d(TAG, "state of BinderDef " + changedIface + " changed, will call System.exit(0)"); + exit = true; + } + } + } + if (exit) { + System.exit(0); + } + } + } +} diff --git a/core/java/com/android/internal/gmscompat/GmcDebug.java b/core/java/com/android/internal/gmscompat/GmcDebug.java new file mode 100644 index 0000000000000..4854ef21e8b5e --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmcDebug.java @@ -0,0 +1,167 @@ +package com.android.internal.gmscompat; + +import android.app.BroadcastOptions; +import android.app.Service; +import android.content.BroadcastReceiver; +import android.content.ComponentName; +import android.content.Intent; +import android.content.ServiceConnection; +import android.os.Bundle; +import android.util.Log; + +import java.util.Arrays; + +public class GmcDebug { + + public static void maybeLogStartService(Intent service, boolean requireForeground) { + String LOG_TAG = "GmcStartService"; + if (!Log.isLoggable(LOG_TAG, Log.VERBOSE)) { + return; + } + var b = new StringBuilder(); + appendIntent(service, b); + if (requireForeground) { + b.append(", requireForeground"); + } + Log.v(LOG_TAG, b.toString(), new Throwable()); + } + + public static void maybeLogStopService(Intent service) { + String LOG_TAG = "GmcStopService"; + if (!Log.isLoggable(LOG_TAG, Log.VERBOSE)) { + return; + } + var b = new StringBuilder(); + appendIntent(service, b); + Log.v(LOG_TAG, b.toString(), new Throwable()); + } + + public static void maybeLogServiceOnStartCommand(Service service, Intent intent, int flags, int startId) { + String LOG_TAG = "GmcServiceCmd"; + if (!Log.isLoggable(LOG_TAG, Log.VERBOSE)) { + return; + } + var b = new StringBuilder(); + b.append(service.getClass().getName()); + b.append(", "); + if (intent != null) { + appendIntent(intent, b); + } else { + b.append("intent is null"); + } + b.append(", flags: "); + b.append(Integer.toHexString(flags)); + b.append(", startId: "); + b.append(startId); + Log.v(LOG_TAG, b.toString()); + } + + public static void maybeLogBindService(Intent service, ServiceConnection conn, long flags, String instanceName) { + String LOG_TAG = "GmcBindService"; + if (!Log.isLoggable(LOG_TAG, Log.VERBOSE)) { + return; + } + var b = new StringBuilder(); + appendIntent(service, b); + b.append(", conn: "); + b.append(System.identityHashCode(conn)); + b.append(", flags: "); + b.append(Long.toHexString(flags)); + if (instanceName != null) { + b.append(", instanceName: "); + b.append(instanceName); + } + Log.v(LOG_TAG, b.toString(), new Throwable()); + } + + public static void maybeLogUnbindService(ServiceConnection conn) { + String LOG_TAG = "GmcUnbindService"; + if (!Log.isLoggable(LOG_TAG, Log.VERBOSE)) { + return; + } + Log.v(LOG_TAG, "conn: " + System.identityHashCode(conn), new Throwable()); + } + + public static void maybeLogServiceConnCallback(String name, ComponentName cn) { + String LOG_TAG = "GmcServiceConnCb"; + if (!Log.isLoggable(LOG_TAG, Log.VERBOSE)) { + return; + } + Log.v(LOG_TAG, name + ", " + cn.toShortString()); + } + + public static void maybeLogSendBroadcast(Intent intent, String receiverPerm, Bundle options, + int appOp) { + maybeLogSendBroadcast(intent, receiverPerm, null, options, null, appOp, 0, null, null); + } + + public static void maybeLogSendBroadcast(Intent intent, String receiverPerm, String[] receiverPerms, Bundle options, BroadcastOptions brOptions, + int appOp) { + maybeLogSendBroadcast(intent, receiverPerm, receiverPerms, options, brOptions, appOp, 0, null, null); + } + + public static void maybeLogSendBroadcast(Intent intent, String receiverPerm, String[] receiverPerms, Bundle options, BroadcastOptions brOptions, + int appOp, int initialCode, String initialData, Bundle initialExtras) { + String LOG_TAG = "GmcSendBroadcast"; + if (!Log.isLoggable(LOG_TAG, Log.VERBOSE)) { + return; + } + var b = new StringBuilder("sendBroadcast: "); + appendIntent(intent, b); + if (options != null) { + b.append(", options: "); + b.append(options.toStringDeep()); + } + if (brOptions != null) { + b.append(", brOptions: "); + b.append(brOptions); + } + if (receiverPerm != null) { + b.append(", receiverPerm: "); + b.append(receiverPerm); + } + if (receiverPerms != null) { + b.append(", receiverPerms: "); + b.append(Arrays.toString(receiverPerms)); + } + if (appOp != 0) { + b.append(", appOp: "); + b.append(appOp); + } + if (initialCode != 0) { + b.append(", initialCode: "); + b.append(initialCode); + } + if (initialData != null) { + b.append(", initialData: "); + b.append(initialData); + } + if (initialExtras != null) { + b.append(", initialExtras: "); + b.append(initialExtras.toStringDeep()); + } + Log.v(LOG_TAG, b.toString(), new Throwable()); + } + + public static void maybeLogReceiveBroadcast(BroadcastReceiver receiver, Intent intent, boolean isManifest) { + String LOG_TAG = "GmcRecvBroadcast"; + if (!Log.isLoggable(LOG_TAG, Log.VERBOSE)) { + return; + } + var b = new StringBuilder(); + b.append(isManifest? "manifest; " : "dynamic; "); + appendIntent(intent, b); + b.append(", receiver: "); + b.append(receiver.getClass().getName()); + Log.v(LOG_TAG, b.toString()); + } + + private static void appendIntent(Intent intent, StringBuilder b) { + intent.toString(b); + Bundle extras = intent.getExtras(); + if (extras != null) { + b.append(", extras: "); + b.append(extras.toStringDeep()); + } + } +} diff --git a/core/java/com/android/internal/gmscompat/GmcMediaProjectionService.java b/core/java/com/android/internal/gmscompat/GmcMediaProjectionService.java new file mode 100644 index 0000000000000..f71ecb2e88a15 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmcMediaProjectionService.java @@ -0,0 +1,85 @@ +package com.android.internal.gmscompat; + +import android.app.Notification; +import android.app.Service; +import android.content.Intent; +import android.os.IBinder; +import android.os.RemoteException; +import android.util.ArrayMap; +import android.util.Log; + +import java.util.UUID; +import java.util.concurrent.CountDownLatch; + +import static android.app.compat.gms.GmsCompat.appContext; + +// Unprivileged app that is performing a screen capture is required by the OS to run +// a foreground service with FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION +public class GmcMediaProjectionService extends Service { + private static final String TAG = "GmcMediaProjService"; + + private static final ArrayMap latches = new ArrayMap<>(); + + public static void start() { + if (Thread.currentThread() == appContext().getMainLooper().getThread()) { + // otherwise, latch.await() below would deadlock + throw new IllegalStateException("should never be called from the main thread"); + } + + String id = UUID.randomUUID().toString(); + var latch = new CountDownLatch(1); + synchronized (latches) { + latches.put(id, latch); + } + Intent intent = intent().setIdentifier(id); + Log.d(TAG, "start " + id); + appContext().startForegroundService(intent); + try { + latch.await(); + } catch (InterruptedException e) { + throw new IllegalStateException(e); + } + } + + public static void stop() { + Log.d(TAG, "stop"); + appContext().stopService(intent()); + } + + @Override + public int onStartCommand(Intent intent, int flags, int startId) { + Log.d(TAG, "onStartCommand " + intent); + + Notification n; + try { + // notification icon and text are stored in GmsCompat app + n = GmsCompatApp.iGms2Gca().getMediaProjectionNotification(); + } catch (RemoteException e) { + throw GmsCompatApp.callFailed(e); + } + + startForeground(GmsCoreConst.NOTIF_ID_MEDIA_PROJECTION_SERVICE, n); + + String id = intent.getIdentifier(); + CountDownLatch latch; + + synchronized (latches) { + latch = latches.remove(id); + } + if (latch != null) { + latch.countDown(); + } else { + // can happen if our process died after startForegroundService() but before + // onStartCommand(), OS recreates process in that case + Log.e(TAG, "missing latch"); + } + + return START_NOT_STICKY; + } + + private static Intent intent() { + return new Intent(appContext(), GmcMediaProjectionService.class); + } + + @Override public IBinder onBind(Intent intent) { return null; } +} diff --git a/core/java/com/android/internal/gmscompat/GmsCompatApp.java b/core/java/com/android/internal/gmscompat/GmsCompatApp.java new file mode 100644 index 0000000000000..b297b3d025cae --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmsCompatApp.java @@ -0,0 +1,330 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.gmscompat; + +import android.Manifest; +import android.accounts.AccountManager; +import android.annotation.Nullable; +import android.app.compat.gms.GmsCompat; +import android.content.Context; +import android.database.ContentObserver; +import android.net.ConnectivityManager; +import android.net.Uri; +import android.os.Bundle; +import android.os.Handler; +import android.os.IBinder; +import android.os.RemoteException; +import android.provider.DeviceConfig; +import android.provider.Settings; +import android.util.ArraySet; +import android.util.Log; + +import com.android.internal.gmscompat.dynamite.server.FileProxyService; + +import static com.android.internal.gmscompat.GmsHooks.inPersistentGmsCoreProcess; + +public final class GmsCompatApp { + private static final String TAG = "GmsCompat/GCA"; + public static final String PKG_NAME = "app.grapheneos.gmscompat"; + // permission that is held only by GmsCompatApp + public static final String SIGNATURE_PROTECTED_PERMISSION = PKG_NAME + ".SIGNATURE_PROTECTED_PERMISSION"; + + @SuppressWarnings("FieldCanBeLocal") + // written to fields to prevent GC from collecting them + private static BinderGca2Gms binderGca2Gms; + @SuppressWarnings("FieldCanBeLocal") + private static FileProxyService dynamiteFileProxyService; + + private static IGms2Gca binderGms2Gca; + + static GmsCompatConfig connect(Context ctx, String processName) { + registeredContentObservers = new ArraySet<>(); + + BinderGca2Gms gca2Gms = new BinderGca2Gms(); + binderGca2Gms = gca2Gms; + + try { + IGms2Gca iGms2Gca = IGms2Gca.Stub.asInterface(getBinder(RPC_GET_BINDER_IGms2Gca)); + binderGms2Gca = iGms2Gca; + + if (GmsCompat.isGmsCore()) { + FileProxyService fileProxyService = null; + if (inPersistentGmsCoreProcess) { + // FileProxyService binder needs to be always available to the Dynamite clients. + // "persistent" process launches at bootup and is kept alive by the ServiceConnection + // from the GmsCompatApp, which makes it fit for the purpose of hosting the FileProxyService + fileProxyService = new FileProxyService(ctx); + dynamiteFileProxyService = fileProxyService; + + Handler handler = ctx.getMainThreadHandler(); + handler.postDelayed(GmsCompatApp::maybeShowContactsSyncNotification, 3000L); + handler.postDelayed(GmsCompatApp::maybeShowGmsCoreRestrictedBackgroundDataNotif, 3000L); + } + return iGms2Gca.connectGmsCore(processName, gca2Gms, fileProxyService); + } else { + return iGms2Gca.connect(ctx.getPackageName(), processName, gca2Gms); + } + } catch (RemoteException e) { + throw callFailed(e); + } + } + + public static IGms2Gca iGms2Gca() { + return binderGms2Gca; + } + + private static volatile IClientOfGmsCore2Gca binderClientOfGmsCore2Gca; + + public static IClientOfGmsCore2Gca iClientOfGmsCore2Gca() { + IClientOfGmsCore2Gca cache = binderClientOfGmsCore2Gca; + if (cache != null) { + return cache; + } + + IBinder binder = getBinder(RPC_GET_BINDER_IClientOfGmsCore2Gca); + IClientOfGmsCore2Gca iface = IClientOfGmsCore2Gca.Stub.asInterface(binder); + // benign race, it's fine to obtain this interface more than once + binderClientOfGmsCore2Gca = iface; + return iface; + } + + private static final String RPC_PROVIDER_AUTHORITY = PKG_NAME + ".RpcProvider"; + public static final String KEY_BINDER = "binder"; + public static final String KEY_PKG_NAME = "pkg"; + + public static final int RPC_GET_BINDER_IGms2Gca = 0; + public static final int RPC_GET_BINDER_IClientOfGmsCore2Gca = 1; + + public static Bundle callRpcProvider(Context ctx, int method, String arg, Bundle extras) { + String authority = RPC_PROVIDER_AUTHORITY; + var cr = ctx.getContentResolver(); + try { + return cr.call(authority, Integer.toString(method), arg, extras); + } catch (Throwable t) { + Log.e(TAG, "call to " + authority + " failed", t); + if (GmsCompat.isEnabled()) { + // content provider calls are infallible unless something goes very wrong, better fail fast in that case + System.exit(1); + } + // don't crash processes that call GmsCompatApp, but don't use GmsCompat layer + return null; + } + } + + private static IBinder getBinder(int which) { + Bundle bundle = callRpcProvider(GmsCompat.appContext(), which, null, null); + IBinder binder = bundle.getBinder(KEY_BINDER); + DeathRecipient.register(binder); + return binder; + } + + static class DeathRecipient implements IBinder.DeathRecipient { + private static final DeathRecipient INSTANCE = new DeathRecipient(); + private DeathRecipient() {} + + static void register(IBinder b) { + try { + b.linkToDeath(INSTANCE, 0); + } catch (RemoteException e) { + // binder already died + INSTANCE.binderDied(); + } + } + + public void binderDied() { + // see comment in callFailed() + Log.e(TAG, PKG_NAME + " died"); + System.exit(1); + } + } + + public static RuntimeException callFailed(RemoteException e) { + // running GmsCompat app process is a hard dependency of sandboxed GMS + Log.e(TAG, "call failed, calling System.exit(1)", e); + System.exit(1); + // unreachable, needed for control flow checks by the compiler + // (Java doesn't have a concept of "noreturn") + return e.rethrowAsRuntimeException(); + } + + public static final String NS_DeviceConfig = "config"; + + public static String deviceConfigNamespace(String namespace) { + // last path component of DeviceConfig.CONTENT_URI + String topNs = "config"; + return NS_DeviceConfig + ':' + namespace; + } + + public static String getString(String ns, String key) { + try { + return iGms2Gca().privSettingsGetString(ns, key); + } catch (RemoteException e) { + throw callFailed(e); + } + } + + public static boolean putString(String ns, String key, @Nullable String value) { + try { + return iGms2Gca().privSettingsPutString(ns, key, value); + } catch (RemoteException e) { + throw callFailed(e); + } + } + + public static boolean setProperties(DeviceConfig.Properties props) { + String[] keys = props.getKeyset().toArray(new String[0]); + String[] values = new String[keys.length]; + + for (int i = 0; i < keys.length; ++i) { + values[i] = props.getString(keys[i], null); + } + + String ns = deviceConfigNamespace(props.getNamespace()); + + try { + return iGms2Gca().privSettingsPutStrings(ns, keys, values); + } catch (RemoteException e) { + throw callFailed(e); + } + } + + private static ArraySet registeredContentObservers; + + public static boolean registerObserver(Uri uri, ContentObserver observer) { + String s = uri.toString(); + + String prefix = "content://settings/"; + + if (!s.startsWith(prefix)) { + return false; + } + + int nsStart = prefix.length(); + int nsEnd = s.indexOf('/', nsStart); + + if (nsEnd < 0 || nsStart == nsEnd) { + return false; + } + + String ns = s.substring(nsStart, nsEnd); + String key = s.substring(nsEnd + 1); + + switch (ns) { + // keep in sync with Settings.NameValueCache#maybeGetGmsCompatNamespace + case "global": + if (Settings.Global.isKnownKey(key)) { + return false; + } + break; + case "secure": + if (Settings.Secure.isKnownKey(key)) { + return false; + } + break; + default: + return false; + } + + android.database.IContentObserver iObserver = observer.getContentObserver(); + + try { + iGms2Gca().privSettingsRegisterObserver(ns, key, iObserver); + } catch (RemoteException e) { + throw callFailed(e); + } + + synchronized (registeredContentObservers) { + registeredContentObservers.add(observer); + } + + return true; + } + + public static boolean unregisterObserver(ContentObserver observer) { + synchronized (registeredContentObservers) { + if (registeredContentObservers.contains(observer)) { + registeredContentObservers.remove(observer); + } else { + return false; + } + } + + android.database.IContentObserver iObserver = observer.getContentObserver(); + + try { + iGms2Gca().privSettingsUnregisterObserver(iObserver); + } catch (RemoteException e) { + throw callFailed(e); + } + return true; + } + + // Bypass some background activity restrictions (e.g. background service starts) for target + // package by binding to it from foreground GmsCompat app + public static void raisePackageToForeground(String targetPkg, long durationMs, + @Nullable String reason, int reasonCode) { + if (durationMs <= 0) { + Log.e(TAG, "invalid duration: " + durationMs, new Throwable()); + return; + } + try { + GmsCompatApp.iGms2Gca().raisePackageToForeground(targetPkg, durationMs, reason, reasonCode); + } catch (RemoteException e) { + throw callFailed(e); + } + } + + static void maybeShowContactsSyncNotification() { + if (GmsCompat.hasPermission(Manifest.permission.WRITE_CONTACTS)) { + return; + } + + Context ctx = GmsCompat.appContext(); + var am = ctx.getSystemService(AccountManager.class); + + am.addOnAccountsUpdatedListener(accounts -> { + // invoked only for Google accounts, "updateImmediately" arg ensures that it'll be called + // even if account is already added + if (accounts.length != 0) { + try { + iGms2Gca().maybeShowContactsSyncNotification(); + } catch (RemoteException e) { + callFailed(e); + } + } + }, ctx.getMainThreadHandler(), true); + } + + static final int RESTRICTED_BACKGROUND_DATA_CHECK_INTERVAL = 3 * 60_000; // 3 minutes + + static void maybeShowGmsCoreRestrictedBackgroundDataNotif() { + Context ctx = GmsCompat.appContext(); + var cm = ctx.getSystemService(ConnectivityManager.class); + if (cm.getRestrictBackgroundStatus() == ConnectivityManager.RESTRICT_BACKGROUND_STATUS_ENABLED) { + try { + iGms2Gca().maybeShowGmsCoreRestrictedBackgroundDataNotif(); + } catch (RemoteException e) { + throw callFailed(e); + } + } + + // there's no listener API for getRestrictBackgroundStatus(), use polling with a large interval + ctx.getMainThreadHandler().postDelayed(GmsCompatApp::maybeShowGmsCoreRestrictedBackgroundDataNotif, RESTRICTED_BACKGROUND_DATA_CHECK_INTERVAL); + } + + private GmsCompatApp() {} +} diff --git a/core/java/com/android/internal/gmscompat/GmsCompatConfig.aidl b/core/java/com/android/internal/gmscompat/GmsCompatConfig.aidl new file mode 100644 index 0000000000000..23491f79e42cb --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmsCompatConfig.aidl @@ -0,0 +1,3 @@ +package com.android.internal.gmscompat; + +parcelable GmsCompatConfig; diff --git a/core/java/com/android/internal/gmscompat/GmsCompatConfig.java b/core/java/com/android/internal/gmscompat/GmsCompatConfig.java new file mode 100644 index 0000000000000..c46a7b55713ec --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmsCompatConfig.java @@ -0,0 +1,238 @@ +/* + * Copyright (C) 2022 GrapheneOS + * SPDX-License-Identifier: Apache-2.0 + */ + +package com.android.internal.gmscompat; + +import android.app.compat.gms.GmsCompat; +import android.os.Parcel; +import android.os.Parcelable; +import android.util.ArrayMap; +import android.util.ArraySet; +import android.util.SparseArray; + +import com.android.internal.gmscompat.flags.GmsFlag; + +import java.util.ArrayList; +import java.util.function.BiConsumer; +import java.util.function.Function; + +// Instances of this object should be immutable after publication, make sure to never change it afterwards +public class GmsCompatConfig implements Parcelable { + public long version; + public final ArrayMap> flags = new ArrayMap<>(); + public ArrayMap gservicesFlags; + public final ArrayMap> stubs = new ArrayMap<>(); + // keys are namespaces, values are regexes of flag names that should be forced to default value + public final ArrayMap> forceDefaultFlagsMap = new ArrayMap<>(); + // keys are package names, values are list of permissions self-checks of which should be spoofed + public final ArrayMap> spoofSelfPermissionChecksMap = new ArrayMap<>(); + // keys are serviceIds, values are service permission requirements that need to be bypassed + public final SparseArray> gmsServiceBrokerPermissionBypasses = new SparseArray<>(); + + // keys are package names, values are maps of components names to their component enabled setting + public final ArrayMap> forceComponentEnabledSettingsMap = new ArrayMap<>(); + + // set only in processes for which GmsCompat is enabled, to speed up lookups + public ArraySet spoofSelfPermissionChecks; + + public long maxGmsCoreVersion; + public long maxPlayStoreVersion; + + public void addFlag(String namespace, GmsFlag flag) { + ArrayMap nsFlags = flags.get(namespace); + if (nsFlags == null) { + nsFlags = new ArrayMap<>(); + flags.put(namespace, nsFlags); + } + nsFlags.put(flag.name, flag); + } + + public void addGservicesFlag(String key, String value) { + GmsFlag f = new GmsFlag(key); + f.initAsSetString(value); + addGservicesFlag(f); + } + + public void addGservicesFlag(GmsFlag flag) { + ArrayMap map = gservicesFlags; + if (map == null) { + map = new ArrayMap<>(); + gservicesFlags = map; + } + map.put(flag.name, flag); + } + + public boolean shouldSpoofSelfPermissionCheck(String perm) { + return spoofSelfPermissionChecks.contains(perm); + } + + @Override + public int describeContents() { + return 0; + } + + @Override + public void writeToParcel(Parcel p, int wtpFlags) { + p.writeLong(version); + + writeStringArrayMapMap(flags, GmsFlag::writeMapEntry, p); + writeArrayMap(gservicesFlags, GmsFlag::writeMapEntry, p); + + writeStringArrayMapMap(stubs, p); + + p.writeLong(maxGmsCoreVersion); + p.writeLong(maxPlayStoreVersion); + + writeArrayMapStringStringList(forceDefaultFlagsMap, p); + writeArrayMapStringStringList(spoofSelfPermissionChecksMap, p); + { + var map = gmsServiceBrokerPermissionBypasses; + int cnt = map.size(); + p.writeInt(cnt); + for (int i = 0; i < cnt; ++i) { + p.writeInt(map.keyAt(i)); + p.writeArraySet(map.valueAt(i)); + } + } + writeStringArrayMapMap(forceComponentEnabledSettingsMap, Parcel::writeString, Parcel::writeInt, p); + } + + public static final Creator CREATOR = new Creator<>() { + @Override + public GmsCompatConfig createFromParcel(Parcel p) { + GmsCompatConfig r = new GmsCompatConfig(); + r.version = p.readLong(); + + readStringArrayMapMap(p, r.flags, GmsFlag::readMapEntry); + r.gservicesFlags = readArrayMap(p, GmsFlag::readMapEntry); + + readStringArrayMapMap(p, r.stubs, StubDef.CREATOR); + + r.maxGmsCoreVersion = p.readLong(); + r.maxPlayStoreVersion = p.readLong(); + + readArrayMapStringStringList(p, r.forceDefaultFlagsMap); + readArrayMapStringStringList(p, r.spoofSelfPermissionChecksMap); + { + int cnt = p.readInt(); + ClassLoader cl = String.class.getClassLoader(); + for (int i = 0; i < cnt; ++i) { + r.gmsServiceBrokerPermissionBypasses.put(p.readInt(), (ArraySet) p.readArraySet(cl)); + } + } + + readStringArrayMapMap(p, r.forceComponentEnabledSettingsMap, + Parcel::readString, Parcel::readInt); + + if (GmsCompat.isEnabled()) { + String pkgName = GmsCompat.appContext().getPackageName(); + + ArrayList perms = r.spoofSelfPermissionChecksMap.get(pkgName); + r.spoofSelfPermissionChecks = perms != null ? + new ArraySet<>(perms) : + new ArraySet<>(); + } + return r; + } + + @Override + public GmsCompatConfig[] newArray(int size) { + return new GmsCompatConfig[size]; + } + }; + + static void writeStringArrayMapMap( + ArrayMap> outerMap, Parcel p) { + writeStringArrayMapMap(outerMap, Parcel::writeString, + (parcel, v) -> v.writeToParcel(parcel, 0), p); + } + + static void readStringArrayMapMap(Parcel p, + ArrayMap> outerMap, Parcelable.Creator valueCreator) { + + readStringArrayMapMap(p, outerMap, Parcel::readString, valueCreator::createFromParcel); + } + + static void writeStringArrayMapMap(ArrayMap> outerMap, + BiConsumer writeK, BiConsumer writeV, Parcel p) { + ArrayMapEntryWriter entryWriter = (map, i, parcel) -> { + writeK.accept(p, map.keyAt(i)); + writeV.accept(p, map.valueAt(i)); + }; + writeStringArrayMapMap(outerMap, entryWriter, p); + } + + static void readStringArrayMapMap(Parcel p, ArrayMap> outerMap, + Function readK, Function readV) { + ArrayMapEntryReader entryReader = (parcel, map) -> { + map.append(readK.apply(p), readV.apply(p)); + }; + readStringArrayMapMap(p, outerMap, entryReader); + } + + interface ArrayMapEntryWriter { + void write(ArrayMap map, int idx, Parcel dst); + } + + interface ArrayMapEntryReader { + void read(Parcel p, ArrayMap dst); + } + + static void writeStringArrayMapMap(ArrayMap> outerMap, + ArrayMapEntryWriter entryWriter, Parcel p) { + int outerCnt = outerMap.size(); + p.writeInt(outerCnt); + for (int outerIdx = 0; outerIdx < outerCnt; ++outerIdx) { + String outerK = outerMap.keyAt(outerIdx); + p.writeString(outerK); + writeArrayMap(outerMap.valueAt(outerIdx), entryWriter, p); + } + } + + static void readStringArrayMapMap(Parcel p, ArrayMap> outerMap, + ArrayMapEntryReader entryReader) { + int outerCnt = p.readInt(); + outerMap.ensureCapacity(outerCnt); + for (int outerIdx = 0; outerIdx < outerCnt; ++outerIdx) { + String outerK = p.readString(); + outerMap.put(outerK, readArrayMap(p, entryReader)); + } + } + + static void writeArrayMap(ArrayMap map, ArrayMapEntryWriter entryWriter, + Parcel p) { + int cnt = map.size(); + p.writeInt(cnt); + for (int i = 0; i < cnt; ++i) { + entryWriter.write(map, i, p); + } + } + + static ArrayMap readArrayMap(Parcel p, ArrayMapEntryReader entryReader) { + int cnt = p.readInt(); + var map = new ArrayMap(cnt); + for (int i = 0; i < cnt; ++i) { + entryReader.read(p, map); + } + return map; + } + + static void writeArrayMapStringStringList(ArrayMap> map, Parcel p) { + int cnt = map.size(); + p.writeInt(cnt); + for (int i = 0; i < cnt; ++i) { + p.writeString(map.keyAt(i)); + p.writeStringList(map.valueAt(i)); + } + } + + static void readArrayMapStringStringList(Parcel p, ArrayMap> map) { + int cnt = p.readInt(); + map.ensureCapacity(cnt); + for (int i = 0; i < cnt; ++i) { + map.put(p.readString(), p.createStringArrayList()); + } + } +} diff --git a/core/java/com/android/internal/gmscompat/GmsCompatLib.java b/core/java/com/android/internal/gmscompat/GmsCompatLib.java new file mode 100644 index 0000000000000..cac83b298c075 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmsCompatLib.java @@ -0,0 +1,38 @@ +package com.android.internal.gmscompat; + +import android.content.Context; +import android.content.pm.PackageManager; + +import com.android.internal.util.Preconditions; + +public class GmsCompatLib { + private static IGmsCompatLib instance; + + public static IGmsCompatLib get() { + return instance; + } + + public static void init(Context appContext, String processName) { + Preconditions.checkState(instance == null); + + Context libCtx; + try { + int flags = Context.CONTEXT_INCLUDE_CODE + // GmsCompatLib is part of system image + | Context.CONTEXT_IGNORE_SECURITY; + libCtx = appContext.createPackageContext("app.grapheneos.gmscompat.lib", flags); + } catch (PackageManager.NameNotFoundException e) { + throw new IllegalStateException(e); + } + + IGmsCompatLib lib; + try { + Class cls = libCtx.getClassLoader().loadClass("app.grapheneos.gmscompat.lib.GmsCompatLibImpl"); + lib = (IGmsCompatLib) cls.getDeclaredConstructor().newInstance(); + } catch (ReflectiveOperationException e) { + throw new IllegalStateException(e); + } + instance = lib; + lib.init(appContext, processName); + } +} diff --git a/core/java/com/android/internal/gmscompat/GmsCoreConst.java b/core/java/com/android/internal/gmscompat/GmsCoreConst.java new file mode 100644 index 0000000000000..47f737f8f9d94 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmsCoreConst.java @@ -0,0 +1,6 @@ +package com.android.internal.gmscompat; + +public interface GmsCoreConst { + int NOTIFICATION_ID_BASE = 0x7fff_0000; + int NOTIF_ID_MEDIA_PROJECTION_SERVICE = NOTIFICATION_ID_BASE + 1; +} diff --git a/core/java/com/android/internal/gmscompat/GmsHooks.java b/core/java/com/android/internal/gmscompat/GmsHooks.java new file mode 100644 index 0000000000000..98681d0299e64 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmsHooks.java @@ -0,0 +1,696 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.gmscompat; + +import android.Manifest; +import android.annotation.Nullable; +import android.annotation.SuppressLint; +import android.app.Activity; +import android.app.ActivityManager; +import android.app.ActivityManager.RunningAppProcessInfo; +import android.app.Application; +import android.app.ApplicationErrorReport; +import android.app.BroadcastOptions; +import android.app.PendingIntent; +import android.app.Service; +import android.app.compat.gms.GmsCompat; +import android.content.ComponentName; +import android.content.ContentValues; +import android.content.Context; +import android.content.Intent; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager; +import android.database.Cursor; +import android.database.MatrixCursor; +import android.database.sqlite.SQLiteOpenHelper; +import android.net.Uri; +import android.os.Bundle; +import android.os.DeadSystemRuntimeException; +import android.os.IBinder; +import android.os.Parcel; +import android.os.PowerExemptionManager; +import android.os.Process; +import android.os.RemoteException; +import android.os.SystemClock; +import android.os.UserHandle; +import android.provider.Downloads; +import android.provider.Settings; +import android.util.ArrayMap; +import android.util.ArraySet; +import android.util.Log; +import android.util.SparseArray; +import android.webkit.WebView; + +import com.android.internal.gmscompat.client.GmsCompatClientService; +import com.android.internal.gmscompat.flags.GmsFlag; +import com.android.internal.gmscompat.flags.GmsFlagOverrides; +import com.android.internal.gmscompat.gcarriersettings.GCarrierSettingsApp; +import com.android.internal.gmscompat.gcarriersettings.TestCarrierConfigService; +import com.android.internal.gmscompat.sysservice.GmcPackageManager; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.UUID; +import java.util.function.Consumer; +import java.util.regex.Pattern; + +import static com.android.internal.gmscompat.GmsInfo.PACKAGE_GMS_CORE; + +public final class GmsHooks { + private static final String TAG = "GmsCompat/Hooks"; + + private static volatile GmsCompatConfig config; + + public static final String PERSISTENT_GmsCore_PROCESS = PACKAGE_GMS_CORE + ".persistent"; + public static boolean inPersistentGmsCoreProcess; + public static final String UI_GmsCore_PROCESS = PACKAGE_GMS_CORE + ".ui"; + + public static GmsCompatConfig config() { + // thread-safe: immutable after publication + return config; + } + + public static void init(Context ctx, String packageName, String processName) { + if (!packageName.equals(processName)) { + // Fix RuntimeException: Using WebView from more than one process at once with the same data + // directory is not supported. https://crbug.com/558377 + WebView.setDataDirectorySuffix("process-shim--" + processName); + } + + if (GmsCompat.isGmsCore()) { + inPersistentGmsCoreProcess = processName.equals(PERSISTENT_GmsCore_PROCESS); + } + + GmsCompatLib.init(ctx, processName); + + if (GmsCompat.isPlayStore()) { + PlayStoreHooks.init(); + } + + if (GmsCompat.isGCarrierSettings()) { + GCarrierSettingsApp.init(); + } + + configUpdateLock = new Object(); + tlPermissionsToSpoof = new ThreadLocal<>(); + + // Locking is needed to prevent a race that would occur if config is updated via + // BinderGca2Gms#updateConfig in the time window between BinderGms2Gca#connect and setConfig() + // call below. Older GmsCompatConfig would overwrite the newer one in that case. + synchronized (configUpdateLock) { + GmsCompatConfig config = GmsCompatApp.connect(ctx, processName); + setConfig(config); + } + + Thread.setUncaughtExceptionPreHandler(new UncaughtExceptionPreHandler()); + + if (inPersistentGmsCoreProcess) { + GmsFlagOverrides.init(ctx); + } + + GmcPackageManager.init(ctx); + } + + static Object configUpdateLock; + + static void setConfig(GmsCompatConfig c) { + // configUpdateLock should never be null at this point, it's initialized before GmsCompatApp + // gets a handle to BinderGca2Gms that is used for updating GmsCompatConfig + synchronized (configUpdateLock) { + config = c; + } + } + + static class UncaughtExceptionPreHandler implements Thread.UncaughtExceptionHandler { + final Thread.UncaughtExceptionHandler orig = Thread.getUncaughtExceptionPreHandler(); + + @Override + public void uncaughtException(Thread t, Throwable e) { + Context ctx = GmsCompat.appContext(); + + ApplicationErrorReport aer = new ApplicationErrorReport(); + aer.type = ApplicationErrorReport.TYPE_CRASH; + aer.crashInfo = new ApplicationErrorReport.ParcelableCrashInfo(e); + + ApplicationInfo ai = ctx.getApplicationInfo(); + aer.packageName = ai.packageName; + aer.applicationInfo = ai; + aer.processName = Application.getProcessName(); + + // In some cases, GMS kills its process when it receives an uncaught exception, which + // bypasses the standard crash handling infrastructure. + // Send the report to GmsCompatApp before GMS receives the uncaughtException() callback. + + if (!shouldSkipException(e)) { + try { + GmsCompatApp.iGms2Gca().onUncaughtException(aer); + } catch (RemoteException re) { + Log.e(TAG, "", re); + } + } + + if (orig != null) { + orig.uncaughtException(t, e); + } + } + + private static boolean shouldSkipException(Throwable e) { + for (;;) { + if (e == null) { + return false; + } + + boolean skip = + // in some cases a DeadSystemRuntimeException is thrown despite the system being actually + // still alive, likely when the Binder buffer space is full and a binder transaction with + // system_server fails. + // See https://cs.android.com/android/platform/superproject/+/android-13.0.0_r3:frameworks/base/core/jni/android_util_Binder.cpp;l=894 + // (DeadObjectException is rethrown as DeadSystemRuntimeException by + // android.os.RemoteException#rethrowFromSystemServer()) + e instanceof DeadSystemRuntimeException + ; + + if (skip) { + return true; + } + + e = e.getCause(); + } + } + } + + // ContextImpl#getSystemService(String) + public static boolean isHiddenSystemService(String name) { + // return true only for services that are null-checked + switch (name) { + case Context.WIFI_SCANNING_SERVICE: + return !GmsCompat.isAndroidAuto(); + case Context.CONTEXTHUB_SERVICE: + case Context.APP_INTEGRITY_SERVICE: + // used for factory reset protection + case Context.PERSISTENT_DATA_BLOCK_SERVICE: + // used for updateable fonts + case Context.FONT_SERVICE: + return true; + } + return false; + } + + /** + * Use the per-app SSAID as a random serial number for SafetyNet. This doesn't necessarily make + * pass, but at least it retusn a valid "failed" response and stops spamming device key + * requests. + * + * This isn't a privacy risk because all unprivileged apps already have access to random SSAIDs. + */ + // Build#getSerial() + @SuppressLint("HardwareIds") + public static String getSerial() { + String ssaid = Settings.Secure.getString(GmsCompat.appContext().getContentResolver(), + Settings.Secure.ANDROID_ID); + String serial = ssaid.toUpperCase(); + Log.d(TAG, "Generating serial number from SSAID: " + serial); + return serial; + } + + static class RecentBinderPid implements Comparable { + int pid; + int uid; + long lastSeen; + volatile String[] packageNames; // lazily inited + + static final int MAX_MAP_SIZE = 50; + static final int MAP_SIZE_TRIM_TO = 40; + static final SparseArray map = new SparseArray(MAX_MAP_SIZE + 1); + + public int compareTo(RecentBinderPid b) { + return Long.compare(b.lastSeen, lastSeen); // newest come first + } + } + + // Remember recent Binder peers to include them in the result of ActivityManager.getRunningAppProcesses() + // Binder#execTransact(int, long, long, int) + public static void onBinderTransaction(int pid, int uid) { + SparseArray map = RecentBinderPid.map; + synchronized (map) { + RecentBinderPid rbp = map.get(pid); + if (rbp != null) { + if (rbp.uid != uid) { // pid was reused + rbp = null; + } + } + if (rbp == null) { + rbp = new RecentBinderPid(); + rbp.pid = pid; + rbp.uid = uid; + map.put(pid, rbp); + } + rbp.lastSeen = SystemClock.uptimeMillis(); + + int mapSize = map.size(); + if (mapSize <= RecentBinderPid.MAX_MAP_SIZE) { + return; + } + RecentBinderPid[] arr = new RecentBinderPid[mapSize]; + for (int i = 0; i < mapSize; ++i) { + arr[i] = map.valueAt(i); + } + // sorted by lastSeen field in reverse order + Arrays.sort(arr); + map.clear(); + for (int i = 0; i < RecentBinderPid.MAP_SIZE_TRIM_TO; ++i) { + RecentBinderPid e = arr[i]; + map.put(e.pid, e); + } + } + } + + // In some cases (Play Games Services, Play {Asset, Feature} Delivery) + // GMS relies on getRunningAppProcesses() to figure out whether its client is running. + // This workaround is racy, because unprivileged apps can't know whether an arbitrary pid is alive. + // ActivityManager#getRunningAppProcesses() + public static ArrayList addRecentlyBoundPids(Context context, + List orig) { + final RecentBinderPid[] binderPids; + final int binderPidsCount; + // copy to array to avoid long lock contention with Binder.execTransact(), + // there are expensive getPackagesForUid() calls below + { + SparseArray map = RecentBinderPid.map; + synchronized (map) { + binderPidsCount = map.size(); + binderPids = new RecentBinderPid[binderPidsCount]; + for (int i = 0; i < binderPidsCount; ++i) { + binderPids[i] = map.valueAt(i); + } + } + } + PackageManager pm = context.getPackageManager(); + ArrayList res = new ArrayList<>(orig.size() + binderPidsCount); + res.addAll(orig); + for (int i = 0; i < binderPidsCount; ++i) { + RecentBinderPid rbp = binderPids[i]; + String[] pkgs = rbp.packageNames; + if (pkgs == null) { + if (UserHandle.getUserId(rbp.uid) != UserHandle.myUserId()) { + // SystemUI from userId 0 sends callbacks to apps from all userIds via + // android.window.IOnBackInvokedCallback. + // getPackagesForUid() will fail due to missing privileged + // INTERACT_ACROSS_USERS permission + continue; + } + + pkgs = pm.getPackagesForUid(rbp.uid); + if (pkgs == null || pkgs.length == 0) { + continue; + } + // this field is volatile + rbp.packageNames = pkgs; + } + RunningAppProcessInfo pi = new RunningAppProcessInfo(); + // these fields are immutable after publication + pi.pid = rbp.pid; + pi.uid = rbp.uid; + pi.processName = pkgs[0]; + pi.pkgList = pkgs; + pi.importance = RunningAppProcessInfo.IMPORTANCE_FOREGROUND; + res.add(pi); + } + return res; + } + + // ContentResolver#query(Uri, String[], Bundle, CancellationSignal) + public static Cursor maybeModifyQueryResult(Uri uri, + @Nullable String[] projection, @Nullable Bundle queryArgs, @Nullable Cursor origCursor) { + String uriString = uri.toString(); + Log.d(TAG, "maybeModifyQueryResult for " + uriString); + + Consumer> mutator = null; + if (uriString.startsWith(GmsFlag.PHENOTYPE_URI_PREFIX)) { + List path = uri.getPathSegments(); + if (path.size() != 1) { + Log.e(TAG, "unknown phenotype uri " + uriString, new Throwable()); + return null; + } + + String namespace = path.get(0); + + GmsCompatConfig config = config(); + + ArrayList forceDefaultFlagsRegexes = config.forceDefaultFlagsMap.get(namespace); + + if (forceDefaultFlagsRegexes == null) { + return null; + } + + mutator = map -> { + if (forceDefaultFlagsRegexes != null) { + int patternCnt = forceDefaultFlagsRegexes.size(); + Pattern[] patterns = new Pattern[patternCnt]; + for (int i = 0; i < patternCnt; ++i) { + patterns[i] = Pattern.compile(forceDefaultFlagsRegexes.get(i)); + } + ArrayMap filteredMap = new ArrayMap<>(map.size()); + + outer: + for (int entryIdx = 0, entryCnt = map.size(); entryIdx < entryCnt; ++entryIdx) { + String key = map.keyAt(entryIdx); + for (int patternIdx = 0; patternIdx < patternCnt; ++patternIdx) { + if (patterns[patternIdx].matcher(key).matches()) { + continue outer; + } + } + filteredMap.put(key, map.valueAt(entryIdx)); + } + map.clear(); + map.putAll(filteredMap); + } + }; + } + + if (mutator != null) { + return modifyKvCursor(origCursor, projection, mutator); + } + + return null; + } + + private static Cursor modifyKvCursor(@Nullable Cursor origCursor, @Nullable String[] projection, + Consumer> mutator) { + final int keyIndex = 0; + final int valueIndex = 1; + final int projectionLength = 2; + + if (origCursor != null) { + projection = origCursor.getColumnNames(); + } + + boolean expectedProjection = projection != null && projection.length == projectionLength + && "key".equals(projection[keyIndex]) && "value".equals(projection[valueIndex]); + + if (!expectedProjection) { + Log.e(TAG, "unexpected projection " + Arrays.toString(projection), new Throwable()); + return null; + } + + final ArrayMap map; + if (origCursor == null) { + map = new ArrayMap<>(); + } else { + map = new ArrayMap<>(origCursor.getColumnCount() + 10); + try (Cursor orig = origCursor) { + while (orig.moveToNext()) { + String key = orig.getString(keyIndex); + String value = orig.getString(valueIndex); + + map.put(key, value); + } + } + } + + mutator.accept(map); + + final int mapSize = map.size(); + MatrixCursor result = new MatrixCursor(projection, mapSize); + + for (int i = 0; i < mapSize; ++i) { + Object[] row = new Object[projectionLength]; + row[keyIndex] = map.keyAt(i); + row[valueIndex] = map.valueAt(i); + + result.addRow(row); + } + + return result; + } + + // Instrumentation#execStartActivity(Context, IBinder, IBinder, Activity, Intent, int, Bundle) + public static void onActivityStart(int resultCode, Intent intent, int requestCode, Bundle options) { + if (resultCode != ActivityManager.START_ABORTED) { + return; + } + + // handle background activity starts, which normally require a privileged permission + + if (requestCode >= 0) { + Log.d(TAG, "attempt to call startActivityForResult() from the background " + intent, new Throwable()); + return; + } + + // needed to prevent invalid reuse of PendingIntents, see PendingIntent doc + intent.setIdentifier(UUID.randomUUID().toString()); + + Context ctx = GmsCompat.appContext(); + PendingIntent pendingIntent = PendingIntent.getActivity(ctx, 0, intent, + PendingIntent.FLAG_IMMUTABLE, options); + try { + GmsCompatApp.iGms2Gca().startActivityFromTheBackground(ctx.getPackageName(), pendingIntent); + } catch (RemoteException e) { + GmsCompatApp.callFailed(e); + } + } + + // Activity#onCreate(Bundle) + public static void activityOnCreate(Activity activity) { + + } + + // ContentResolver#insert(Uri, ContentValues, Bundle) + public static void filterContentValues(Uri url, ContentValues values) { + if (values != null && Downloads.Impl.CONTENT_URI.equals(url)) { + Integer otherUid = values.getAsInteger(Downloads.Impl.COLUMN_OTHER_UID); + if (otherUid != null) { + if (otherUid.intValue() != Process.SYSTEM_UID) { + throw new IllegalStateException("unexpected COLUMN_OTHER_UID " + otherUid); + } + // gated by the privileged ACCESS_DOWNLOAD_MANAGER_ADVANCED permission + values.remove(Downloads.Impl.COLUMN_OTHER_UID); + } + } + } + + private static boolean hasNearbyDevicesPermission() { + // "Nearby devices" user-facing permission grants multiple underlying permissions, + // checking one is enough + return GmsCompat.hasPermission(Manifest.permission.BLUETOOTH_SCAN); + } + + // ContextImpl#sendBroadcast + // ContextImpl#sendOrderedBroadcast + // ContextImpl#sendBroadcastAsUser + // ContextImpl#sendOrderedBroadcastAsUser + public static Bundle filterBroadcastOptions(Intent intent, Bundle options) { + if (options == null) { + return null; + } + + String targetPkg = intent.getPackage(); + + if (targetPkg == null) { + ComponentName cn = intent.getComponent(); + if (cn != null) { + targetPkg = cn.getPackageName(); + } + } + + if (targetPkg == null) { + return options; + } + + return filterBroadcastOptions(options, targetPkg); + } + + // PendingIntent#send + public static Bundle filterBroadcastOptions(Bundle options, String targetPkg) { + BroadcastOptions bo = new BroadcastOptions(options); + + if (bo.getTemporaryAppAllowlistType() == PowerExemptionManager.TEMPORARY_ALLOW_LIST_TYPE_NONE) { + return options; + } + // handle privileged BroadcastOptions#setTemporaryAppAllowlist() that is used for + // high-priority FCM pushes, location updates via PendingIntent, + // geofencing and activity detection notifications etc + + long duration = bo.getTemporaryAppAllowlistDuration(); + + if (duration <= 0) { + return options; + } + + GmsCompatApp.raisePackageToForeground(targetPkg, duration, + bo.getTemporaryAppAllowlistReason(), bo.getTemporaryAppAllowlistReasonCode()); + + bo.setTemporaryAppAllowlist(0, PowerExemptionManager.TEMPORARY_ALLOW_LIST_TYPE_NONE, + PowerExemptionManager.REASON_UNKNOWN, null); + return bo.toBundle(); + } + + // Parcel#readException + public static boolean interceptException(Exception e, Parcel p) { + if (!(e instanceof SecurityException)) { + return false; + } + + if (p.dataAvail() != 0) { + Log.w(TAG, "malformed Parcel: dataAvail() " + p.dataAvail() + " after exception", e); + return false; + } + + StubDef stub = StubDef.find(e.getStackTrace(), config(), StubDef.FIND_MODE_Parcel); + + if (stub == null) { + return false; + } + + boolean res = stub.stubOutMethod(p); + + String logTag = "GmcDynStub"; + if (GmsCompat.isDevBuild() || Log.isLoggable(logTag, Log.DEBUG)) { + Log.d(logTag, res ? "intercepted" : "stubOut failed", e); + } + + return res; + } + + public static void onSQLiteOpenHelperConstructed(SQLiteOpenHelper h, @Nullable Context context) { + if (context == null) { + return; + } + + if (GmsCompat.isGmsCore()) { + if (inPersistentGmsCoreProcess) { + if ("phenotype.db".equals(h.getDatabaseName()) && !context.isDeviceProtectedStorage()) { + if (phenotypeDb != null) { + Log.w(TAG, "reassigning phenotypeDb", new Throwable()); + } + phenotypeDb = h; + } + } + } + } + + @Nullable + public static Service maybeInstantiateService(String className) { + if (GmsCompatClientService.class.getName().equals(className)) { + return new GmsCompatClientService(); + } + + if (GmsCompat.isEnabled()) { + if (GmsCompat.isGmsCore()) { + if (GmcMediaProjectionService.class.getName().equals(className)) { + return new GmcMediaProjectionService(); + } + } + if (GmsCompat.isGCarrierSettings()) { + if (TestCarrierConfigService.class.getName().equals(className)) { + return new TestCarrierConfigService(); + } + } + } + + return null; + } + + private static volatile SQLiteOpenHelper phenotypeDb; + public static SQLiteOpenHelper getPhenotypeDb() { return phenotypeDb; } + + private static ThreadLocal> tlPermissionsToSpoof; + + public static boolean shouldSpoofSelfPermissionCheck(String perm) { + ArraySet set = tlPermissionsToSpoof.get(); + if (set == null) { + return false; + } + + return set.contains(perm); + } + + public static final String GMS_SERVICE_BROKER_INTERFACE_DESCRIPTOR = + "com.google.android.gms.common.internal.IGmsServiceBroker"; + + public static boolean onBeginGmsServiceBrokerCall(int transactionCode, Parcel data) { + if (transactionCode != 46) { // getService() method + return false; + } + + try { + data.enforceInterface(GMS_SERVICE_BROKER_INTERFACE_DESCRIPTOR); + // IGmsCallbacks binder + data.readStrongBinder(); + + if (data.readInt() == 1) { // GetServiceRequest is present + // GetServiceRequest object header + data.readInt(); + data.readInt(); + + // version + data.readInt(); + data.readInt(); + + // id of serviceId property + data.readInt(); + + int serviceId = data.readInt(); + + ArraySet permsToSpoof = config().gmsServiceBrokerPermissionBypasses.get(serviceId); + if (permsToSpoof != null) { + Log.d(TAG, "start spoofing self permission checks for getService() call for API " + + serviceId + ", perms: " + Arrays.toString(permsToSpoof.toArray())); + tlPermissionsToSpoof.set(permsToSpoof); + // there's a second layer of caching inside GmsCore, need to notify permission + // change listener used by that cache + GmcPackageManager.notifyPermissionsChangeListeners(); + return true; + } + } + } finally { + data.setDataPosition(0); + } + + return false; + } + + public static void onEndGmsServiceBrokerCall() { + Log.d(TAG, "end self permission check spoofing"); + tlPermissionsToSpoof.set(null); + // invalidate the cache of permission state inside GmsCore + GmcPackageManager.notifyPermissionsChangeListeners(); + } + + public static IBinder maybeOverrideBinder(IBinder binder) { + boolean proceed = GmsCompat.isEnabled() || GmsCompat.isClientOfGmsCore(); + if (!proceed) { + return null; + } + + String ifaceName = null; + try { + ifaceName = binder.getInterfaceDescriptor(); + } catch (RemoteException e) { + Log.d(TAG, "", e); + } + + if (ifaceName == null) { + return null; + } + + return GmcBinderDefs.maybeOverrideBinder(binder, ifaceName); + } + + private GmsHooks() {} +} diff --git a/core/java/com/android/internal/gmscompat/GmsInfo.java b/core/java/com/android/internal/gmscompat/GmsInfo.java new file mode 100644 index 0000000000000..d30b8b14162d8 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/GmsInfo.java @@ -0,0 +1,33 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.gmscompat; + +import android.ext.PackageId; + +/** @hide */ +public final class GmsInfo { + // Package names for GMS apps + public static final String PACKAGE_GMS_CORE = PackageId.GMS_CORE_NAME; // "Play services" + public static final String PACKAGE_PLAY_STORE = PackageId.PLAY_STORE_NAME; + + // "Google" app. "GSA" (G Search App) is its internal name + public static final String PACKAGE_GSA = PackageId.G_SEARCH_APP_NAME; + + // Used for restricting accessibility of exported components, reducing the scope of broadcasts, etc. + // Held by GmsCore and Play Store. + public static final String SIGNATURE_PROTECTED_PERMISSION = "com.google.android.providers.gsf.permission.WRITE_GSERVICES"; +} diff --git a/core/java/com/android/internal/gmscompat/IClientOfGmsCore2Gca.aidl b/core/java/com/android/internal/gmscompat/IClientOfGmsCore2Gca.aidl new file mode 100644 index 0000000000000..fe3014f206615 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/IClientOfGmsCore2Gca.aidl @@ -0,0 +1,18 @@ +package com.android.internal.gmscompat; + +import android.os.BinderDef; + +import com.android.internal.gmscompat.dynamite.server.IFileProxyService; + +// calls from clients of GMS Core to GmsCompatApp +interface IClientOfGmsCore2Gca { + @nullable BinderDef maybeGetBinderDef(String callerPkg, int processState, String ifaceName); + + IFileProxyService getDynamiteFileProxyService(); + + oneway void showMissingAppNotification(String pkgName); + + oneway void showPlayIntegrityNotification(String pkgName, boolean isBlocked); + + oneway void onGoogleIdCredentialOptionInit(); +} diff --git a/core/java/com/android/internal/gmscompat/IGca2Gms.aidl b/core/java/com/android/internal/gmscompat/IGca2Gms.aidl new file mode 100644 index 0000000000000..455a638ab699e --- /dev/null +++ b/core/java/com/android/internal/gmscompat/IGca2Gms.aidl @@ -0,0 +1,16 @@ +package com.android.internal.gmscompat; + +import android.app.ApplicationErrorReport; +import android.app.PendingIntent; +import android.content.Intent; + +import com.android.internal.gmscompat.GmsCompatConfig; + +// calls from GmsCompatApp to GMS components +interface IGca2Gms { + // intentionally not oneway to simplify code in GmsCompatApp + void updateConfig(in GmsCompatConfig newConfig); + void invalidateConfigCaches(); + + boolean startActivityIfVisible(in Intent intent); +} diff --git a/core/java/com/android/internal/gmscompat/IGms2Gca.aidl b/core/java/com/android/internal/gmscompat/IGms2Gca.aidl new file mode 100644 index 0000000000000..34103bc0ff541 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/IGms2Gca.aidl @@ -0,0 +1,50 @@ +package com.android.internal.gmscompat; + +import android.app.ApplicationErrorReport; +import android.app.Notification; +import android.app.PendingIntent; +import android.content.Intent; +import android.database.IContentObserver; +import android.os.BinderDef; + +import com.android.internal.gmscompat.GmsCompatConfig; +import com.android.internal.gmscompat.IGca2Gms; +import com.android.internal.gmscompat.dynamite.server.IFileProxyService; + +// calls from GMS components to GmsCompatApp +interface IGms2Gca { + GmsCompatConfig connectGmsCore(String processName, IGca2Gms iGca2Gms, @nullable IFileProxyService dynamiteFileProxyService); + GmsCompatConfig connect(String packageName, String processName, IGca2Gms iGca2Gms); + + @nullable BinderDef maybeGetBinderDef(String callerPkg, int processState, String ifaceName); + + oneway void onPlayStorePendingUserAction(in Intent actionIntent, @nullable String pkgName); + @nullable Intent maybeGetPlayStorePendingUserActionIntent(); + + oneway void showPlayStoreMissingObbPermissionNotification(); + + oneway void startActivityFromTheBackground(String callerPkg, in PendingIntent intent); + + oneway void showGmsCoreMissingPermissionForNearbyShareNotification(); + + oneway void showGmsCoreMissingNearbyDevicesPermissionGeneric(); + + oneway void showMissingPostNotifsPermissionNotification(String callerPkg); + + oneway void maybeShowContactsSyncNotification(); + + oneway void maybeShowGmsCoreRestrictedBackgroundDataNotif(); + + void onUncaughtException(in ApplicationErrorReport aer); + GmsCompatConfig requestConfigUpdate(String reason); + + @nullable String privSettingsGetString(String ns, String key); + boolean privSettingsPutString(String ns, String key, @nullable String value); + boolean privSettingsPutStrings(String ns, in String[] keys, in String[] values); + void privSettingsRegisterObserver(String ns, String key, IContentObserver observer); + void privSettingsUnregisterObserver(IContentObserver observer); + + Notification getMediaProjectionNotification(); + + void raisePackageToForeground(String targetPkg, long durationMs, @nullable String reason, int reasonCode); +} diff --git a/core/java/com/android/internal/gmscompat/IGmsCompatLib.java b/core/java/com/android/internal/gmscompat/IGmsCompatLib.java new file mode 100644 index 0000000000000..e735caa631667 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/IGmsCompatLib.java @@ -0,0 +1,18 @@ +package com.android.internal.gmscompat; + +import android.annotation.Nullable; +import android.content.Context; +import android.content.Context.BindServiceFlags; +import android.content.Intent; +import android.content.ServiceConnection; +import android.os.UserHandle; + +import java.util.concurrent.Executor; + +public interface IGmsCompatLib { + void init(Context appContext, String processName); + + /** @see android.content.Context#bindService(Intent, BindServiceFlags, Executor, ServiceConnection) */ + @Nullable + ServiceConnection maybeReplaceServiceConnection(Intent service, long flags, UserHandle user, ServiceConnection orig); +} diff --git a/core/java/com/android/internal/gmscompat/PlayStoreHooks.java b/core/java/com/android/internal/gmscompat/PlayStoreHooks.java new file mode 100644 index 0000000000000..8f083a3d9b8eb --- /dev/null +++ b/core/java/com/android/internal/gmscompat/PlayStoreHooks.java @@ -0,0 +1,475 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.gmscompat; + +import android.annotation.Nullable; +import android.app.Activity; +import android.app.Application; +import android.app.PendingIntent; +import android.app.compat.gms.GmsCompat; +import android.app.usage.StorageStats; +import android.content.BroadcastReceiver; +import android.content.ContentResolver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.content.IntentSender; +import android.content.pm.ActivityInfo; +import android.content.pm.GosPackageState; +import android.content.pm.GosPackageStateFlag; +import android.content.pm.IPackageDataObserver; +import android.content.pm.IPackageDeleteObserver; +import android.content.pm.PackageInstaller; +import android.content.pm.PackageManager; +import android.content.pm.ResolveInfo; +import android.ext.PackageId; +import android.net.Uri; +import android.os.Bundle; +import android.os.Environment; +import android.os.LocaleList; +import android.os.RemoteException; +import android.os.storage.StorageManager; +import android.provider.Settings; +import android.text.TextUtils; +import android.util.ArraySet; +import android.util.Log; + +import com.android.internal.gmscompat.sysservice.GmcPackageManager; +import com.android.internal.gmscompat.util.GmcActivityUtils; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Locale; +import java.util.concurrent.atomic.AtomicLong; +import java.util.function.BiConsumer; + +import static java.util.Objects.requireNonNull; + +public final class PlayStoreHooks { + private static final String TAG = "GmsCompat/PlayStore"; + + static PackageManager packageManager; + + public static void init() { + obbDir = Environment.getExternalStorageDirectory().getPath() + "/Android/obb"; + playStoreObbDir = obbDir + '/' + GmsInfo.PACKAGE_PLAY_STORE; + File.mkdirsFailedHook = PlayStoreHooks::mkdirsFailed; + Context ctx = GmsCompat.appContext(); + packageManager = ctx.getPackageManager(); + InternalBroadcastReceiver.register(ctx); + } + + // PackageInstaller#createSession + public static void adjustSessionParams(PackageInstaller.SessionParams params) { + String pkg = requireNonNull(params.appPackageName); + + switch (pkg) { + case GmsInfo.PACKAGE_GMS_CORE: + case GmsInfo.PACKAGE_PLAY_STORE: + String updateRequestReason = "Play Store created PackageInstaller SessionParams for " + pkg; + GmsCompatConfig config; + try { + config = GmsCompatApp.iGms2Gca().requestConfigUpdate(updateRequestReason); + } catch (RemoteException e) { + throw GmsCompatApp.callFailed(e); + } + if (GmsHooks.config().version != config.version) { + GmsHooks.setConfig(config); + } + break; + } + + switch (pkg) { + case GmsInfo.PACKAGE_GMS_CORE: + params.maxAllowedVersion = GmsHooks.config().maxGmsCoreVersion; + break; + case GmsInfo.PACKAGE_PLAY_STORE: + params.maxAllowedVersion = GmsHooks.config().maxPlayStoreVersion; + break; + } + } + + // PackageInstaller.Session#commit(IntentSender) + public static IntentSender wrapCommitStatusReceiver(PackageInstaller.Session session, IntentSender statusReceiver) { + return PackageInstallerStatusForwarder.register((intent, extras) -> sendIntent(intent, statusReceiver)) + .getIntentSender(); + } + + public static void onActivityResumed(Activity activity) { + Intent pendingActionIntent; + try { + pendingActionIntent = GmsCompatApp.iGms2Gca().maybeGetPlayStorePendingUserActionIntent(); + } catch (RemoteException e) { + throw GmsCompatApp.callFailed(e); + } + if (pendingActionIntent != null) { + activity.startActivity(pendingActionIntent); + } + } + + static class PackageInstallerStatusForwarder extends BroadcastReceiver { + private Context context; + private PendingIntent pendingIntent; + private BiConsumer target; + + private static final AtomicLong lastId = new AtomicLong(); + + static PendingIntent register(BiConsumer target) { + PackageInstallerStatusForwarder sf = new PackageInstallerStatusForwarder(); + Context context = GmsCompat.appContext(); + sf.context = context; + sf.target = target; + + String intentAction = context.getPackageName() + + "." + PackageInstallerStatusForwarder.class.getName() + "." + + lastId.getAndIncrement(); + + var intent = new Intent(intentAction); + intent.setPackage(context.getPackageName()); + + sf.pendingIntent = PendingIntent.getBroadcast(context, 0, intent, + PendingIntent.FLAG_CANCEL_CURRENT | + PendingIntent.FLAG_MUTABLE); + + context.registerReceiver(sf, new IntentFilter(intentAction), Context.RECEIVER_NOT_EXPORTED); + return sf.pendingIntent; + } + + public void onReceive(Context receiverContext, Intent intent) { + Bundle extras = intent.getExtras(); + int status = getIntFromBundle(extras, PackageInstaller.EXTRA_STATUS); + + if (status == PackageInstaller.STATUS_PENDING_USER_ACTION) { + Intent confirmationIntent = intent.getParcelableExtra(Intent.EXTRA_INTENT); + + String packageName = null; + + if (extras.containsKey(PackageInstaller.EXTRA_SESSION_ID)) { + int sessionId = getIntFromBundle(extras, PackageInstaller.EXTRA_SESSION_ID); + PackageInstaller pkgInstaller = packageManager.getPackageInstaller(); + PackageInstaller.SessionInfo si = pkgInstaller.getSessionInfo(sessionId); + if (si != null) { + packageName = si.getAppPackageName(); + } + } + + try { + GmsCompatApp.iGms2Gca().onPlayStorePendingUserAction(confirmationIntent, packageName); + } catch (RemoteException e) { + GmsCompatApp.callFailed(e); + } + + // confirmationIntent has a PendingIntent to this instance, don't unregister yet + return; + } + pendingIntent.cancel(); + context.unregisterReceiver(this); + + target.accept(intent, extras); + } + } + + // Request user action to uninstall a package + public static void deletePackage(PackageManager pm, String packageName, IPackageDeleteObserver observer, int flags) { + if (flags != 0) { + throw new IllegalStateException("unexpected flags: " + flags); + } + + // Play Store expects call to deletePackage() to always succeed, which almost always happens + // when it has the privileged DELETE_PACKAGES permission. + // This is not the case when Play Store has only the unprivileged REQUEST_DELETE_PACKAGES + // permission, which requires confirmation from the user. + // There are two difficulties: + // - user may reject the confirmation prompt, which produces DELETE_FAILED_ABORTED error code, + // which Play Store ignores + // - user may dismiss the confirmation prompt without making a choice, which doesn't make + // any callback at all + // In both cases, Play Store remains stuck in "Uninstalling..." state for that package. + // This state is written to persistent storage, it remains stuck even after device reboot. + // + // To work-around all these issues, pretend that the package was uninstalled and then installed + // again, which moves the package state from "Uninstalling..." to "Installed" state, and + // launch the uninstall request separately. + + PendingIntent pi = PackageInstallerStatusForwarder.register((BiConsumer) (intent, extras) -> { + Log.d(TAG, "uninstall status " + extras.getString(PackageInstaller.EXTRA_STATUS_MESSAGE)); + }); + pm.getPackageInstaller().uninstall(packageName, pi.getIntentSender()); + + GmsCompat.appContext().getMainThreadHandler().postDelayed(() -> { + try { + // Play Store ignores this callback as of version 33.6.13, but provide it anyway + // in case it's fixed + observer.packageDeleted(packageName, PackageManager.DELETE_FAILED_ABORTED); + } catch (RemoteException e) { + throw e.rethrowAsRuntimeException(); + } + + resetPackageState(packageName); + }, 100L); // delay the callback for to workaround a race condition in Play Store + } + + public static class InternalBroadcastReceiver extends BroadcastReceiver { + private static final String TAG = "GmcInternalBroacastReceiver"; + + private static final String ACTION_PREFIX = "GmsCompat.InternalBroadcastReceiver"; + private static final String ACTION_SEND_SELF_BROADCAST = ACTION_PREFIX + ".ACTION_SEND_SELF_BROADCAST"; + private static final String ACTION_REMOVE_PSEUDO_DISABLED_PKG = ACTION_PREFIX + ".ACTION_REMOVE_PSEUDO_DISABLED_PKG"; + private static final String EXTRA_INTENTS = "intents"; + + static void register(Context ctx) { + var f = new IntentFilter(ACTION_SEND_SELF_BROADCAST); + f.addAction(ACTION_REMOVE_PSEUDO_DISABLED_PKG); + ctx.registerReceiver(new InternalBroadcastReceiver(), f, Context.RECEIVER_NOT_EXPORTED); + } + + public static void sendManualBroadcasts(Context ctx, Intent... intents) { + Log.d(TAG, "sendManualBroadcasts: " + Arrays.toString(intents)); + var i = new Intent(ACTION_SEND_SELF_BROADCAST); + i.putExtra(EXTRA_INTENTS, intents); + sendBroadcast(ctx, i); + } + + public static void removePseudoDisabledPackage(Context ctx, String pkgName) { + Log.d(TAG, "removePseudoDisabledPackage: " + pkgName); + var i = new Intent(ACTION_REMOVE_PSEUDO_DISABLED_PKG); + i.putExtra(Intent.EXTRA_PACKAGE_NAME, pkgName); + sendBroadcast(ctx, i); + } + + private static void sendBroadcast(Context ctx, Intent i) { + i.setPackage(ctx.getPackageName()); + ctx.sendBroadcast(i); + } + + @Override + public void onReceive(Context context, Intent intent) { + Log.d(TAG, "onReceive: " + intent + ", process: " + Application.getProcessName()); + switch (intent.getAction()) { + case ACTION_SEND_SELF_BROADCAST: { + Intent[] intents = intent.getParcelableArrayExtra(EXTRA_INTENTS, Intent.class); + sendManualSelfBroadcasts(requireNonNull(intents)); + break; + } + case ACTION_REMOVE_PSEUDO_DISABLED_PKG: { + String pkg = intent.getStringExtra(Intent.EXTRA_PACKAGE_NAME); + GmcPackageManager.removePseudoDisabledPackage(pkg); + break; + } + } + } + } + + static void sendManualSelfBroadcasts(Intent[] broadcasts) { + Context context = GmsCompat.appContext(); + + // default ClassLoader fails to load the needed class + ClassLoader cl = context.getClassLoader(); + + String selfProcessName = Application.getProcessName(); + + for (Intent intent : broadcasts) { + intent.setPackage(context.getPackageName()); + List result = packageManager.queryBroadcastReceivers(intent, 0); + for (ResolveInfo resolveInfo : result) { + ActivityInfo receiver = resolveInfo.activityInfo; + if (receiver == null) { + continue; + } + String processName = receiver.processName; + if (TextUtils.isEmpty(processName)) { + processName = context.getPackageName(); + } + if (!processName.equals(selfProcessName)) { + continue; + } + String clsName = receiver.name; + Log.d(TAG, "sending manual self broadcast to " + clsName + ": " + intent); + try { + Class cls = cl.loadClass(clsName); + BroadcastReceiver br = (BroadcastReceiver) cls.newInstance(); + br.onReceive(context, intent); + } catch (ReflectiveOperationException e) { + Log.e(TAG, clsName, e); + } + } + } + } + + // If state transition that is expected to never fail by Play Store does fail, it may get stuck + // in the old state. This happens, for example, when package uninstall fails. + // To work-around this, pretend that the package was removed and installed again + public static void resetPackageState(String packageName) { + updatePackageState(packageName, Intent.ACTION_PACKAGE_REMOVED, Intent.ACTION_PACKAGE_ADDED); + } + + public static void updatePackageState(String packageName, String... actions) { + var intents = new Intent[actions.length]; + Uri uri = packageUri(packageName); + for (int i = 0; i < intents.length; ++i) { + intents[i] = new Intent(actions[i], uri); + } + InternalBroadcastReceiver.sendManualBroadcasts(GmsCompat.appContext(), intents); + } + + // Called during self-update sequence because PackageManager requires + // the restricted CLEAR_APP_CACHE permission + public static void freeStorageAndNotify(String volumeUuid, long idealStorageSize, + IPackageDataObserver observer) { + if (volumeUuid != null) { + throw new IllegalStateException("unexpected volumeUuid " + volumeUuid); + } + StorageManager sm = GmsCompat.appContext().getSystemService(StorageManager.class); + boolean success = false; + try { + sm.allocateBytes(StorageManager.UUID_DEFAULT, idealStorageSize); + success = true; + } catch (IOException e) { + e.printStackTrace(); + } + try { + // same behavior as PackageManagerService#freeStorageAndNotify() + String packageName = null; + observer.onRemoveCompleted(packageName, success); + } catch (RemoteException e) { + throw e.rethrowAsRuntimeException(); + } + } + + // StorageStatsManager#queryStatsForPackage(UUID, String, UserHandle) + public static StorageStats queryStatsForPackage(String packageName) throws PackageManager.NameNotFoundException { + String apkPath = packageManager.getApplicationInfo(packageName, 0).sourceDir; + + StorageStats stats = new StorageStats(); + stats.codeBytes = new File(apkPath).length(); + // leave dataBytes, cacheBytes, externalCacheBytes at 0 + return stats; + } + + // ApplicationPackageManager#setApplicationEnabledSetting + public static void setApplicationEnabledSetting(String packageName, int newState) { + if (newState == PackageManager.COMPONENT_ENABLED_STATE_ENABLED + && GmcActivityUtils.getMostRecentVisibleActivity() != null) + { + openAppSettings(packageName); + } + } + + private static String obbDir; + private static String playStoreObbDir; + + // File#mkdirs() + public static void mkdirsFailed(File file) { + String path = file.getPath(); + + if (path.startsWith(obbDir) && !path.startsWith(playStoreObbDir)) { + GosPackageState ps = GosPackageState.getForSelf(GmsCompat.appContext()); + boolean hasObbAccess = ps.hasFlag(GosPackageStateFlag.ALLOW_ACCESS_TO_OBB_DIRECTORY); + + if (!hasObbAccess) { + try { + GmsCompatApp.iGms2Gca().showPlayStoreMissingObbPermissionNotification(); + } catch (RemoteException e) { + GmsCompatApp.callFailed(e); + } + } + } + } + + static Uri packageUri(String packageName) { + return Uri.fromParts("package", packageName, null); + } + + // Unfortunately, there's no other way to ensure that the value is present and is of the right type. + // Note that Intent.getExtras() makes a copy of the Bundle each time, so reuse its result + static int getIntFromBundle(Bundle b, String key) { + return ((Integer) b.get(key)).intValue(); + } + + static void openAppSettings(String packageName) { + Intent i = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); + i.setData(packageUri(packageName)); + // FLAG_ACTIVITY_CLEAR_TASK is needed to ensure that the right screen is shown (it's a bug in the Settings app) + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); + GmsCompat.appContext().startActivity(i); + } + + static void sendIntent(Intent intent, IntentSender target) { + try { + target.sendIntent(GmsCompat.appContext(), 0, intent, null, null); + } catch (IntentSender.SendIntentException e) { + Log.d(TAG, "", e); + } + } + + public static boolean isInstallAllowed(String pkgName, ContentResolver cr) { + switch (pkgName) { + case PackageId.GMS_CORE_NAME: + case PackageId.PLAY_STORE_NAME: + case PackageId.ANDROID_AUTO_NAME: + case PackageId.PIXEL_HEALTH_NAME: + return Settings.Global.getInt(cr, "gmscompat_play_store_can_install_" + pkgName, 0) == 1; + } + return true; + } + + @Nullable + public static LocaleList overrideApplicationLocales(LocaleList actualLocales, @Nullable String targetPackage) { + Context ctx = GmsCompat.appContext(); + + ContentResolver resolver = ctx.getContentResolver(); + + String settingRegex = Settings.Global.getString(resolver, "gmscompat_play_store_fetch_all_locales"); + if (settingRegex == null) { + return null; + } + String pkgName = targetPackage != null ? targetPackage : ctx.getPackageName(); + if (!pkgName.matches(settingRegex)) { + return null; + } + + String tag = targetPackage == null ? "GmcAppLocaleSelf" : "GmcAppLocale"; + if (Log.isLoggable(tag, Log.VERBOSE)) { + Log.v(tag, "overriding locales for " + (targetPackage == null ? "self" : targetPackage), new Throwable()); + } + + int numActualLocales = actualLocales.size(); + ArraySet actualLocalesSet = new ArraySet<>(numActualLocales); + + Locale[] allLocales = Locale.getAvailableLocales(); + var res = new ArrayList(allLocales.length); + + for (int i = 0; i < numActualLocales; ++i) { + Locale l = actualLocales.get(i); + res.add(l); + actualLocalesSet.add(l); + } + + for (int i = 0; i < allLocales.length; ++i) { + Locale l = allLocales[i]; + if (!actualLocalesSet.contains(l)) { + res.add(l); + } + } + return new LocaleList(res.toArray(new Locale[0])); + } + + private PlayStoreHooks() {} +} diff --git a/core/java/com/android/internal/gmscompat/StubDef.java b/core/java/com/android/internal/gmscompat/StubDef.java new file mode 100644 index 0000000000000..c4ea421bb4988 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/StubDef.java @@ -0,0 +1,293 @@ +/* + * Copyright (C) 2022 GrapheneOS + * SPDX-License-Identifier: Apache-2.0 + */ + +package com.android.internal.gmscompat; + +import android.annotation.Nullable; +import android.app.compat.gms.GmsCompat; +import android.content.pm.ParceledListSlice; +import android.content.pm.StringParceledListSlice; +import android.os.Parcel; +import android.os.Parcelable; +import android.util.ArrayMap; +import android.util.Log; + +import java.lang.reflect.Method; +import java.util.Collections; +import java.util.List; + +import libcore.util.SneakyThrow; + +public class StubDef implements Parcelable { + private static final String TAG = "StubDef"; + + public int type; + public long integerVal; + public double doubleVal; + public String stringVal; + private volatile Class parcelListType; + + public static final int VOID = 0; + public static final int NULL = 1; // only for types that implement Parcelable + public static final int NULL_STRING = 2; + public static final int NULL_ARRAY = 3; + public static final int EMPTY_BYTE_ARRAY = 4; + public static final int EMPTY_INT_ARRAY = 5; + public static final int EMPTY_LONG_ARRAY = 6; + public static final int EMPTY_STRING = 7; + public static final int EMPTY_LIST = 8; + public static final int EMPTY_MAP = 9; + + public static final int BOOLEAN = 10; + public static final int BYTE = 11; + public static final int INT = 12; + public static final int LONG = 13; + public static final int FLOAT = 14; + public static final int DOUBLE = 15; + public static final int STRING = 16; + + public static final int THROW = 17; + + // see com.android.modules.utils.SynchronousResultReceiver.Result#getValue() + public static final int DEFAULT = 18; + + public static final int FIND_MODE_Parcel = 0; + public static final int FIND_MODE_SynchronousResultReceiver = 1; + + @Nullable + public static StubDef find(StackTraceElement[] stackTrace, GmsCompatConfig config, int mode) { + int firstIndex; + if (mode == FIND_MODE_Parcel) { + // first four stack trace entries are known: + // android.os.Parcel.createExceptionOrNull + // android.os.Parcel.createException + // android.os.Parcel.readException + // android.os.Parcel.readException + firstIndex = 4; + } else if (mode == FIND_MODE_SynchronousResultReceiver) { + // first entry is from GmsModuleHooks method + firstIndex = 1; + } else { + return null; + } + + ClassLoader defaultClassLoader = GmsCompat.appContext().getClassLoader(); + + StackTraceElement targetMethod = null; + Class stubProxyClass = null; + String stubProxyMethodName = null; + + // Iterate through the stack trace to find out which API call caused the exception + for (int i = firstIndex; i < stackTrace.length; ++i) { + StackTraceElement ste = stackTrace[i]; + String className = ste.getClassName(); + Class class_; + try { + class_ = Class.forName(className, false, defaultClassLoader); + } catch (ClassNotFoundException cnfe) { + class_ = null; + } + + if (class_ != null) { + ClassLoader classLoader = class_.getClassLoader(); + if (classLoader == null) { + return null; + } + + String loaderName = classLoader.getClass().getName(); + + if ("java.lang.BootClassLoader".equals(loaderName)) { + if (stubProxyClass == null && className.endsWith("$Stub$Proxy")) { + stubProxyClass = class_; + stubProxyMethodName = ste.getMethodName(); + } + if (!className.startsWith("java.lang.reflect.")) { + // app classes are never loaded with BootClassLoader + continue; + } // else target method is the previous entry that was invoked via reflection + } + } + + if (mode == FIND_MODE_Parcel && stubProxyClass == null) { + return null; + } + + if (i == firstIndex) { + return null; + } + + targetMethod = stackTrace[i - 1]; + break; + } + + if (targetMethod == null) { + return null; + } + + ArrayMap classStubs = config.stubs.get(targetMethod.getClassName()); + + if (classStubs == null) { + return null; + } + + StubDef stub = classStubs.get(targetMethod.getMethodName()); + + if (stub == null) { + return null; + } + + if (stub.type == EMPTY_LIST && stub.parcelListType == null) { + if (stubProxyClass == null) { + Log.d(TAG, "stub proxy class not found for " + targetMethod); + return null; + } + + for (Method m : stubProxyClass.getDeclaredMethods()) { + if (stubProxyMethodName.equals(m.getName())) { + stub.parcelListType = m.getReturnType(); + break; + } + } + + if (stub.parcelListType == null) { + Log.d(TAG, "stub proxy method not found for " + targetMethod); + return null; + } + } + + return stub; + } + + public boolean stubOutMethod(Parcel p) { + p.setDataPosition(0); + p.setDataSize(0); + + final long integer = integerVal; + + switch (type) { + case VOID: + break; + case NULL: + p.writeTypedObject((Parcelable) null, 0); + break; + case NULL_STRING: + p.writeString(null); + break; + case NULL_ARRAY: + p.writeInt(-1); + break; + case EMPTY_BYTE_ARRAY: + p.writeByteArray(new byte[0]); + break; + case EMPTY_INT_ARRAY: + p.writeIntArray(new int[0]); + break; + case EMPTY_LONG_ARRAY: + p.writeLongArray(new long[0]); + break; + case EMPTY_STRING: + p.writeString(""); + break; + case EMPTY_LIST: { + Class t = parcelListType; + if (t == List.class) { + p.writeList(Collections.emptyList()); + } else { + String listTypeName = t.getName(); + // There is android.content.pm.ParceledListSlice and + // com.android.modules.utils.ParceledListSlice. + // Moreover, when the latter is used in an APEX, it's prefixed like this: + // com.android.wifi.x.com.android.modules.utils.ParceledListSlice + + // Same applies to StringParceledListSlice. + + if (listTypeName.endsWith(".ParceledListSlice")) { + p.writeTypedObject(ParceledListSlice.emptyList(), 0); + } else if (listTypeName.endsWith(".StringParceledListSlice")) { + p.writeTypedObject(StringParceledListSlice.emptyList(), 0); + } else { + Log.d(TAG, "unknown parcel list type " + listTypeName); + return false; + } + } + break; + } + case EMPTY_MAP: + p.writeMap(Collections.emptyMap()); + break; + case BOOLEAN: + p.writeBoolean(integer != 0); + break; + case BYTE: + p.writeByte((byte) integer); + break; + case INT: + p.writeInt((int) integer); + break; + case LONG: + p.writeLong(integer); + break; + case FLOAT: + p.writeFloat((float) doubleVal); + break; + case DOUBLE: + p.writeDouble(doubleVal); + break; + case STRING: + p.writeString(stringVal); + break; + case THROW: { + Throwable t; + try { + Class class_ = Class.forName(stringVal); + t = (Throwable) class_.newInstance(); + } catch (ReflectiveOperationException e) { + Log.e(TAG, "", e); + return false; + } + SneakyThrow.sneakyThrow(t); + break; + } + default: + Log.i(TAG, "unknown type " + type); + // it's fine that Parcel is reset at this point, it won't be read: + // a pending exception will be thrown when this method returns false + return false; + } + + p.setDataPosition(0); + return true; + } + + @Override + public int describeContents() { + return 0; + } + + @Override + public void writeToParcel(Parcel p, int flags) { + p.writeInt(type); + p.writeLong(integerVal); + p.writeDouble(doubleVal); + p.writeString(stringVal); + } + + public static final Parcelable.Creator CREATOR = new Creator<>() { + @Override + public StubDef createFromParcel(Parcel p) { + StubDef d = new StubDef(); + d.type = p.readInt(); + d.integerVal = p.readLong(); + d.doubleVal = p.readDouble(); + d.stringVal = p.readString(); + return d; + } + + @Override + public StubDef[] newArray(int size) { + return new StubDef[size]; + } + }; +} diff --git a/core/java/com/android/internal/gmscompat/client/GmsCompatClientService.java b/core/java/com/android/internal/gmscompat/client/GmsCompatClientService.java new file mode 100644 index 0000000000000..3948e209d0d3b --- /dev/null +++ b/core/java/com/android/internal/gmscompat/client/GmsCompatClientService.java @@ -0,0 +1,41 @@ +package com.android.internal.gmscompat.client; + +import android.app.Service; +import android.content.Intent; +import android.os.Binder; +import android.os.IBinder; +import android.util.Log; + +/** + * The sole purpose of this service is to bypass some background activity restrictions (e.g. background + * service starts). GmsCompat app is always allowed to bypass those restrictions because it has a + * power optimization exemption. GmsCompat app temporarily binds to apps that host this service when + * that's required, which bring those apps to the foreground state. + *

+ * Privileged GmsCore achieves this by sending a privileged broadcast with + * BroadcastOptions#setTemporaryAppAllowlist() option set. + *

+ * A declaration of this service is added to AndroidManifest of all GMS components that use GmsCompat + * and to their clients during package parsing. + */ +public class GmsCompatClientService extends Service { + private static final String TAG = GmsCompatClientService.class.getSimpleName(); + + private final Binder dummyBinder = new Binder(); + + @Override + public void onCreate() { + Log.d(TAG, "onCreate"); + } + + @Override + public IBinder onBind(Intent intent) { + Log.d(TAG, "onBind"); + return dummyBinder; + } + + @Override + public void onDestroy() { + Log.d(TAG, "onDestroy"); + } +} diff --git a/core/java/com/android/internal/gmscompat/dynamite/GmsDynamiteClientHooks.java b/core/java/com/android/internal/gmscompat/dynamite/GmsDynamiteClientHooks.java new file mode 100644 index 0000000000000..7a4e3db4af103 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/dynamite/GmsDynamiteClientHooks.java @@ -0,0 +1,232 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.gmscompat.dynamite; + +import android.app.compat.gms.GmsCompat; +import android.content.res.ApkAssets; +import android.content.res.loader.AssetsProvider; +import android.os.Environment; +import android.os.IBinder; +import android.os.ParcelFileDescriptor; +import android.os.RemoteException; +import android.system.ErrnoException; +import android.system.Os; +import android.util.ArrayMap; +import android.util.Log; + +import com.android.internal.annotations.GuardedBy; +import com.android.internal.gmscompat.GmsCompatApp; +import com.android.internal.gmscompat.GmsInfo; +import com.android.internal.gmscompat.dynamite.server.IFileProxyService; + +import java.io.File; +import java.io.FileDescriptor; +import java.io.IOException; +import java.util.ArrayList; +import java.util.regex.Pattern; + +import dalvik.system.DelegateLastClassLoader; + +import static android.system.OsConstants.F_DUPFD_CLOEXEC; + +public final class GmsDynamiteClientHooks { + static final String TAG = "GmsCompat/DynamiteClient"; + private static final boolean DEBUG = false; + + // written last in the init sequence, "volatile" to publish all the preceding writes + private static volatile boolean enabled; + private static String gmsCoreDataPrefix; + private static ArrayMap pfdCache; + private static ArrayList pastCachedFds; + + public static boolean enabled() { + return enabled; + } + + // ContentResolver#acquireProvider(Uri) + public static void maybeInit(String auth) { + if (!"com.google.android.gms.chimera".equals(auth)) { + return; + } + synchronized (GmsDynamiteClientHooks.class) { + if (enabled()) { + return; + } + if (!GmsCompat.isClientOfGmsCore()) { + return; + } + // faster than ctx.createPackageContext().createDeviceProtectedStorageContext().getDataDir() + int userId = GmsCompat.appContext().getUserId(); + String deDataDirectory = Environment.getDataUserDeDirectory(null, userId).getPath(); + gmsCoreDataPrefix = deDataDirectory + '/' + GmsInfo.PACKAGE_GMS_CORE + '/'; + pfdCache = new ArrayMap<>(20); + pastCachedFds = new ArrayList<>(); + + File.lastModifiedHook = GmsDynamiteClientHooks::getFileLastModified; + DelegateLastClassLoader.modifyClassLoaderPathHook = GmsDynamiteClientHooks::maybeModifyClassLoaderPath; + enabled = true; + } + } + + // ApkAssets#loadFromPath(String, int, AssetsProvider) + public static ApkAssets loadAssetsFromPath(String path, int flags, AssetsProvider assets) throws IOException { + if (!path.startsWith(gmsCoreDataPrefix)) { + return null; + } + FileDescriptor fd = modulePathToFd(path); + // no need to dup the fd, ApkAssets does it itself + return ApkAssets.loadFromFd(fd, path, flags, assets); + } + + // To fix false-positive "Module APK has been modified" check + // File#lastModified() + public static long getFileLastModified(File file) { + final String path = file.getPath(); + + if (enabled && path.startsWith(gmsCoreDataPrefix)) { + String fdPath = "/proc/self/fd/" + modulePathToFd(path).getInt$(); + return new File(fdPath).lastModified(); + } + return 0L; + } + + public static FileDescriptor openFileDescriptor(String path) { + if (!path.startsWith(gmsCoreDataPrefix)) { + return null; + } + + FileDescriptor fd = modulePathToFd(path); + int dupFd; + try { + dupFd = Os.fcntlInt(fd, F_DUPFD_CLOEXEC, 0); + } catch (ErrnoException e) { + throw new RuntimeException(e); + } + + var dupJfd = new FileDescriptor(); + dupJfd.setInt$(dupFd); + return dupJfd; + } + + // Replaces file paths of Dynamite modules with "/proc/self/fd" file descriptor references + // DelegateLastClassLoader#maybeModifyClassLoaderPath(String, Boolean) + public static String maybeModifyClassLoaderPath(String path, Boolean nativeLibsPathB) { + if (path == null) { + return null; + } + if (!enabled) { // libcore code doesn't have access to this field + return path; + } + boolean nativeLibsPath = nativeLibsPathB.booleanValue(); + String[] pathParts = path.split(Pattern.quote(File.pathSeparator)); + boolean modified = false; + + for (int i = 0; i < pathParts.length; ++i) { + String pathPart = pathParts[i]; + if (!pathPart.startsWith(gmsCoreDataPrefix)) { + continue; + } + // defined in bionic/linker/linker_utils.cpp kZipFileSeparator + final String zipFileSeparator = "!/"; + + String filePath; + String nativeLibRelPath; + if (nativeLibsPath) { + int idx = pathPart.indexOf(zipFileSeparator); + filePath = pathPart.substring(0, idx); + nativeLibRelPath = pathPart.substring(idx + zipFileSeparator.length()); + } else { + filePath = pathPart; + nativeLibRelPath = null; + } + String fdFilePath = "/gmscompat_fd_" + modulePathToFd(filePath).getInt$(); + + pathParts[i] = nativeLibsPath ? + fdFilePath + zipFileSeparator + nativeLibRelPath : + fdFilePath; + + modified = true; + } + if (!modified) { + return path; + } + return String.join(File.pathSeparator, pathParts); + } + + // Returned file descriptor should never be closed, because it may be dup()-ed at any time by the native code + private static FileDescriptor modulePathToFd(String path) { + if (DEBUG) { + Log.d(TAG, "path " + path, new Throwable()); + } + try { + ArrayMap cache = pfdCache; + // this lock isn't contended, favor simplicity, not making the critical section shorter + synchronized (cache) { + ParcelFileDescriptor pfd = cache.get(path); + if (pfd == null) { + pfd = getFileProxyService().openFile(path); + if (pfd == null) { + throw new IllegalStateException("unable to open " + path); + } + // ParcelFileDescriptor owns the underlying file descriptor + cache.put(path, pfd); + } + return pfd.getFileDescriptor(); + } + } catch (RemoteException e) { + // FileProxyService never forwards exceptions to minimize the information leaks, + // this is a very rare "binder died" exception + throw e.rethrowAsRuntimeException(); + } + } + + private static volatile IFileProxyService fileProxyService; + + @GuardedBy("pfdCache") + private static IFileProxyService getFileProxyService() { + IFileProxyService cache = fileProxyService; + if (cache != null) { + return cache; + } + try { + IFileProxyService service = GmsCompatApp.iClientOfGmsCore2Gca().getDynamiteFileProxyService(); + fileProxyService = service; + IBinder.DeathRecipient serviceDeathCallback = () -> { + fileProxyService = null; + Log.d(TAG, "FileProxyService died"); + synchronized (pfdCache) { + // It's not safe to close cached file descriptors, they might still be in use + // at this point. Simply clearing the cache would make cached ParcelFileDescriptors + // collectable by GC, which would close the underlying file descriptors via + // ParcelFileDescriptor#finalize() + // + // pastCachedFds list is effectively a file descriptor leak, but it's small and + // rare. File descriptor count limit (RLIMIT_NOFILE) is set to 32768 as of Android 15. + pastCachedFds.addAll(pfdCache.values()); + pfdCache.clear(); + } + }; + service.asBinder().linkToDeath(serviceDeathCallback, 0); + return service; + } catch (RemoteException e) { + Log.e(TAG, "unable to obtain FileProxyService", e); + throw e.rethrowAsRuntimeException(); + } + } + + private GmsDynamiteClientHooks() {} +} diff --git a/core/java/com/android/internal/gmscompat/dynamite/server/FileProxyService.java b/core/java/com/android/internal/gmscompat/dynamite/server/FileProxyService.java new file mode 100644 index 0000000000000..d626f4de29341 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/dynamite/server/FileProxyService.java @@ -0,0 +1,99 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.gmscompat.dynamite.server; + +import android.content.Context; +import android.os.ParcelFileDescriptor; +import android.system.ErrnoException; +import android.system.Os; +import android.system.OsConstants; +import android.util.Log; + +import java.io.File; +import java.io.FileDescriptor; +import java.io.IOException; + +public final class FileProxyService extends IFileProxyService.Stub { + public static final String TAG = "GmsCompat/DynamiteServer"; + private static final String CHIMERA_REL_PATH = "app_chimera/m/"; + + private final String chimeraRoot; + + public FileProxyService(Context context) { + File deDataRoot = context.createDeviceProtectedStorageContext().getDataDir(); + chimeraRoot = deDataRoot.getPath() + "/" + CHIMERA_REL_PATH; + } + + @Override + public ParcelFileDescriptor openFile(String rawPath) { + try { + String path = sanitizeModulePath(rawPath); + if (path != null) { + FileDescriptor fd = Os.open(path, OsConstants.O_RDONLY | OsConstants.O_CLOEXEC, 0); +// Log.d(TAG, "Opened " + rawPath + " for remote, fd " + fd.getInt$()); + return new ParcelFileDescriptor(fd); + } + } catch (IOException | ErrnoException e) { + Log.d(TAG, "failed security check", e); + } catch (Throwable t) { + Log.d(TAG, "unexpected error", t); + } + // don't forward exceptions to the untrusted caller to minimize the information leaks + return null; + } + + private String sanitizeModulePath(String rawPath) throws IOException, ErrnoException { + // Normalize path for security checks + String path = new File(rawPath).getCanonicalPath(); + + // Modules can only be in DE Chimera storage + if (!path.startsWith(chimeraRoot)) { + Log.d(TAG, "Path " + rawPath + " is not in " + chimeraRoot); + return null; + } + + if (!path.endsWith(".apk")) { + Log.d(TAG, "Path " + rawPath + " is not an APK file"); + return null; + } + // Make sure that all path components below chimeraRoot are world-accessible + { + // Check full path first to simplify checks of its parents + int mode = Os.stat(path).st_mode; + + boolean valid = OsConstants.S_ISREG(mode) && (mode & OsConstants.S_IROTH) != 0; + if (!valid) { + Log.d(TAG, "Path " + path + " is not a world-readable regular file"); + return null; + } + } + for (int i = chimeraRoot.length(), m = path.length(); i < m; ++i) { + if (path.charAt(i) != '/') { + continue; + } + String dirPath = path.substring(0, i); + int mode = Os.stat(dirPath).st_mode; + + boolean valid = OsConstants.S_ISDIR(mode) && (mode & OsConstants.S_IXOTH) != 0; + if (!valid) { + Log.d(TAG, "Node " + dirPath + " in path " + path + " is not a world-readable directory"); + return null; + } + } + return path; + } +} diff --git a/core/java/com/android/internal/gmscompat/dynamite/server/IFileProxyService.aidl b/core/java/com/android/internal/gmscompat/dynamite/server/IFileProxyService.aidl new file mode 100644 index 0000000000000..678d21f8fe4f7 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/dynamite/server/IFileProxyService.aidl @@ -0,0 +1,5 @@ +package com.android.internal.gmscompat.dynamite.server; + +interface IFileProxyService { + ParcelFileDescriptor openFile(String path); +} diff --git a/core/java/com/android/internal/gmscompat/flags/GmsFlag.java b/core/java/com/android/internal/gmscompat/flags/GmsFlag.java new file mode 100644 index 0000000000000..1aaaec7043509 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/flags/GmsFlag.java @@ -0,0 +1,292 @@ +/* + * Copyright (C) 2022 GrapheneOS + * SPDX-License-Identifier: Apache-2.0 + */ + +package com.android.internal.gmscompat.flags; + +import android.annotation.Nullable; +import android.app.compat.gms.GmsCompat; +import android.os.Parcel; +import android.os.Parcelable; +import android.util.ArrayMap; +import android.util.Base64; +import android.util.Log; + +import com.android.internal.gmscompat.GmsInfo; + +import java.util.Map; + +public class GmsFlag implements Parcelable { + private static final String TAG = "GmsFlag"; + + public String name; + + public static final int TYPE_BOOL = 0; + public static final int TYPE_INT = 1; + public static final int TYPE_FLOAT = 2; + public static final int TYPE_STRING = 3; + public static final int TYPE_BYTES = 4; + public byte type; + + public static final int ACTION_SET = 0; + public static final int ACTION_APPEND = 1; // only for TYPE_STRING + public byte action; + + public boolean boolArg; + public long integerArg; + public double floatArg; + public String stringArg; + public byte[] bytesArg; + + public byte permissionCheckMode; + public static final int PERMISSION_CHECK_MODE_NONE_OF = 0; + public static final int PERMISSION_CHECK_MODE_NOT_ALL_OF = 1; + public static final int PERMISSION_CHECK_MODE_ALL_OF = 2; + public @Nullable String[] permissions; + + public static final String NAMESPACE_GSERVICES = "gservices"; + // Gservices content provider is hosted by GmsCore since Android 15. It was hosted by GSF before 15. + public static final String GSERVICES_CONTENT_PROVIDER_AUTHORITY = "com.google.android.gsf.gservices"; + + public static final String GSERVICES_URI = "content://" + + GSERVICES_CONTENT_PROVIDER_AUTHORITY + "/prefix"; + + public static final String PHENOTYPE_URI_PREFIX = "content://" + + GmsInfo.PACKAGE_GMS_CORE + ".phenotype/"; + + public GmsFlag() {} + + public GmsFlag(String name) { + this.name = name; + } + + private boolean permissionsMatch() { + String[] perms = permissions; + if (perms == null) { + return true; + } + + int numOfGrantedPermissions = 0; + + for (String perm : perms) { + if (GmsCompat.hasPermission(perm)) { + ++numOfGrantedPermissions; + } + } + + switch (permissionCheckMode) { + case PERMISSION_CHECK_MODE_NONE_OF: + return numOfGrantedPermissions == 0; + case PERMISSION_CHECK_MODE_NOT_ALL_OF: + return numOfGrantedPermissions != perms.length; + case PERMISSION_CHECK_MODE_ALL_OF: + return numOfGrantedPermissions == perms.length; + default: + return false; + } + } + + public void applyToGservicesMap(ArrayMap map) { + if (!shouldOverride()) { + return; + } + + if (type != TYPE_STRING) { + // all Gservices flags are Strings + throw new IllegalStateException(); + } + + maybeOverrideString(map); + } + + private static final int PHENOTYPE_BASE64_FLAGS = Base64.NO_PADDING | Base64.NO_WRAP; + + public void applyToPhenotypeMap(Map map) { + if (!shouldOverride()) { + return; + } + + String s; + switch (type) { + case TYPE_BOOL: + s = boolArg ? "1" : "0"; + break; + case TYPE_INT: + s = Long.toString(integerArg); + break; + case TYPE_FLOAT: + s = Double.toString(floatArg); + break; + case TYPE_STRING: + maybeOverrideString(map); + return; + case TYPE_BYTES: + s = Base64.encodeToString(bytesArg, PHENOTYPE_BASE64_FLAGS); + break; + default: + return; + } + + map.put(name, s); + } + + public String typeAsString() { + int type = this.type; + return switch (type) { + case TYPE_BOOL -> "boolean"; + case TYPE_INT -> "long"; + case TYPE_FLOAT -> "double"; + case TYPE_STRING -> "string"; + case TYPE_BYTES -> "bytes"; + default -> throw new IllegalStateException(Integer.toString(type)); + }; + } + + public String valueAsString() { + int type = this.type; + return switch (type) { + case TYPE_BOOL -> Boolean.toString(boolArg); + case TYPE_INT -> Long.toString(integerArg); + case TYPE_FLOAT -> Double.toString(floatArg); + case TYPE_STRING -> stringArg; + case TYPE_BYTES -> Base64.encodeToString(bytesArg, PHENOTYPE_BASE64_FLAGS); + default -> throw new IllegalStateException(Integer.toString(type)); + }; + } + + public boolean shouldOverride() { + if (!permissionsMatch()) { + return false; + } + + return true; + } + + // method names and types match columns in phenotype.db database, tables Flags and FlagOverrides + + public int boolVal(int orig) { + if (type != TYPE_BOOL) { + logTypeMismatch(); + return orig; + } + return boolArg ? 1 : 0; + } + + public long intVal(long orig) { + if (type != TYPE_INT) { + logTypeMismatch(); + return orig; + } + return integerArg; + } + + public double floatVal(double orig) { + if (type != TYPE_FLOAT) { + logTypeMismatch(); + return orig; + } + return floatArg; + } + + public void maybeOverrideString(Map map) { + if (type != TYPE_STRING) { + logTypeMismatch(); + return; + } + + if (action == ACTION_SET) { + map.put(name, stringArg); + return; + } + + if (action == ACTION_APPEND) { + if (!map.containsKey(name)) { + Log.d(TAG, name + " is not present in the map, skipping ACTION_APPEND"); + return; + } + + Object orig = map.get(name); + + if (!(orig instanceof String)) { + Log.w(TAG, "original value of " + name + " is not a string, skipping ACTION_APPEND. Value: " + orig); + return; + } + + map.put(name, (String) orig + stringArg); + return; + } + + Log.d(TAG, "unknown action " + action + " for " + name); + } + + public byte[] extensionVal(byte[] orig) { + if (type != TYPE_BYTES) { + logTypeMismatch(); + return orig; + } + return bytesArg; + } + + public void initAsSetString(String v) { + type = GmsFlag.TYPE_STRING; + action = GmsFlag.ACTION_SET; + stringArg = v; + } + + private void logTypeMismatch() { + Log.e(TAG, "type mismatch for key " + name, new Throwable()); + } + + @Override + public int describeContents() { + return 0; + } + + @Override + public void writeToParcel(Parcel p, int flags) { + p.writeString(name); + p.writeByte(type); + p.writeByte(permissionCheckMode); + p.writeStringArray(permissions); + p.writeByte(action); + p.writeBoolean(boolArg); + p.writeLong(integerArg); + p.writeDouble(floatArg); + p.writeString(stringArg); + p.writeByteArray(bytesArg); + } + + public static final Parcelable.Creator CREATOR = new Creator<>() { + @Override + public GmsFlag createFromParcel(Parcel p) { + GmsFlag f = new GmsFlag(); + f.name = p.readString(); + f.type = p.readByte(); + f.permissionCheckMode = p.readByte(); + f.permissions = p.readStringArray(); + f.action = p.readByte(); + f.boolArg = p.readBoolean(); + f.integerArg = p.readLong(); + f.floatArg = p.readDouble(); + f.stringArg = p.readString(); + f.bytesArg = p.createByteArray(); + return f; + } + + @Override + public GmsFlag[] newArray(int size) { + return new GmsFlag[size]; + } + }; + + public static void writeMapEntry(ArrayMap map, int idx, Parcel dst) { + // map key is GmsFlag.name, do not write it twice + map.valueAt(idx).writeToParcel(dst, 0); + } + + public static void readMapEntry(Parcel p, ArrayMap dst) { + GmsFlag f = GmsFlag.CREATOR.createFromParcel(p); + dst.append(f.name, f); + } +} diff --git a/core/java/com/android/internal/gmscompat/flags/GmsFlagOverrides.java b/core/java/com/android/internal/gmscompat/flags/GmsFlagOverrides.java new file mode 100644 index 0000000000000..da3afd72f098e --- /dev/null +++ b/core/java/com/android/internal/gmscompat/flags/GmsFlagOverrides.java @@ -0,0 +1,47 @@ +package com.android.internal.gmscompat.flags; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.util.Log; + +import com.android.internal.gmscompat.GmsCompatConfig; +import com.android.internal.gmscompat.GmsHooks; + +public class GmsFlagOverrides { + private static final String TAG = "GmsFlagOverrides"; + + public static void init(Context ctx) { + var receiver = new BroadcastReceiver() { + private boolean receivedPhenotypeCommittedBroadcast; + + @Override + public void onReceive(Context context, Intent intent) { + if (PhenotypeFlags.ACTION_COMMITTED.equals(intent.getAction())) { + if (receivedPhenotypeCommittedBroadcast) { + return; + } + receivedPhenotypeCommittedBroadcast = true; + } + Log.d(TAG, "received " + intent); + applyOverrides(); + } + }; + // Most phenotype flags and all Gservices flags are stored on user-encrypted storage, + // i.e. they can't be updated while the device is in Direct Boot state + var filter = new IntentFilter(Intent.ACTION_USER_UNLOCKED); + // In some cases phenotype service isn't ready to accept overrides at user_unlocked time and + // at process init time. It's always ready by the time phenotype ACTION_COMMITTED is sent. + filter.addAction(PhenotypeFlags.ACTION_COMMITTED); + ctx.registerReceiver(receiver, filter, Context.RECEIVER_NOT_EXPORTED); + + applyOverrides(); + } + + public static void applyOverrides() { + GmsCompatConfig config = GmsHooks.config(); + GservicesFlags.applyOverrides(config); + PhenotypeFlags.applyOverrides(config); + } +} diff --git a/core/java/com/android/internal/gmscompat/flags/GservicesFlags.java b/core/java/com/android/internal/gmscompat/flags/GservicesFlags.java new file mode 100644 index 0000000000000..e5583d07eb86c --- /dev/null +++ b/core/java/com/android/internal/gmscompat/flags/GservicesFlags.java @@ -0,0 +1,34 @@ +package com.android.internal.gmscompat.flags; + +import android.app.compat.gms.GmsCompat; +import android.content.Intent; +import android.ext.PackageId; +import android.util.ArrayMap; +import android.util.Log; + +import com.android.internal.gmscompat.GmsCompatConfig; + +public class GservicesFlags { + private static final String TAG = "GmcGservicesFlags"; + + public static void applyOverrides(GmsCompatConfig config) { + ArrayMap gservicesFlags = config.gservicesFlags; + if (gservicesFlags == null) { + return; + } + + var overriddenFlags = new ArrayMap(gservicesFlags.size()); + for (int i = 0; i < gservicesFlags.size(); ++i) { + GmsFlag flag = gservicesFlags.valueAt(i); + flag.applyToGservicesMap(overriddenFlags); + } + + if (!overriddenFlags.isEmpty()) { + var intent = new Intent("com.google.gservices.intent.action.GSERVICES_OVERRIDE"); + intent.setPackage(PackageId.GMS_CORE_NAME); + overriddenFlags.forEach(intent::putExtra); + Log.d(TAG, "sending GSERVICES_OVERRIDE broadcast, extras: " + intent.getExtras().toStringDeep()); + GmsCompat.appContext().sendBroadcast(intent); + } + } +} diff --git a/core/java/com/android/internal/gmscompat/flags/PhenotypeFlags.java b/core/java/com/android/internal/gmscompat/flags/PhenotypeFlags.java new file mode 100644 index 0000000000000..bdfe62dbfa0e8 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/flags/PhenotypeFlags.java @@ -0,0 +1,54 @@ +package com.android.internal.gmscompat.flags; + +import android.app.compat.gms.GmsCompat; +import android.content.Intent; +import android.ext.PackageId; +import android.util.ArrayMap; +import android.util.Log; + +import com.android.internal.gmscompat.GmsCompatConfig; + +import java.util.ArrayList; +import java.util.Collection; + +public class PhenotypeFlags { + private static final String TAG = "GmcPhenotypeFlags"; + + public static final String ACTION_COMMITTED = "com.google.android.gms.phenotype.COMMITTED"; + + public static void applyOverrides(GmsCompatConfig config) { + ArrayMap> packageFlagMap = config.flags; + for (int packageIdx = 0; packageIdx < packageFlagMap.size(); ++packageIdx) { + Collection configFlags = packageFlagMap.valueAt(packageIdx).values(); + var overridenFlags = new ArrayList(configFlags.size()); + for (GmsFlag flag : configFlags) { + if (flag.shouldOverride()) { + overridenFlags.add(flag); + } + } + int numFlags = overridenFlags.size(); + String[] flagNames = new String[numFlags]; + String[] flagValues = new String[numFlags]; + String[] flagTypes = new String[numFlags]; + for (int i = 0; i < numFlags; ++i) { + GmsFlag flag = overridenFlags.get(i); + flagNames[i] = flag.name; + flagValues[i] = flag.valueAsString(); + flagTypes[i] = flag.typeAsString(); + } + + String flagPackageName = packageFlagMap.keyAt(packageIdx); + + var intent = new Intent("com.google.android.gms.phenotype.FLAG_OVERRIDE"); + intent.setPackage(PackageId.GMS_CORE_NAME); + intent.putExtra("package", flagPackageName); + intent.putExtra("user", "*"); + intent.putExtra("flags", flagNames); + intent.putExtra("values", flagValues); + intent.putExtra("types", flagTypes); + Log.d(TAG, "sending FLAG_OVERRIDE broadcast for flagPackage " + flagPackageName + + ", extras: " + intent.getExtras().toStringDeep()); + GmsCompat.appContext().sendBroadcast(intent); + } + } +} diff --git a/core/java/com/android/internal/gmscompat/gcarriersettings/GCarrierSettingsApp.java b/core/java/com/android/internal/gmscompat/gcarriersettings/GCarrierSettingsApp.java new file mode 100644 index 0000000000000..663c93af576e2 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/gcarriersettings/GCarrierSettingsApp.java @@ -0,0 +1,76 @@ +package com.android.internal.gmscompat.gcarriersettings; + +import android.content.Context; +import android.service.carrier.CarrierIdentifier; +import android.telephony.TelephonyManager; + +import java.util.Objects; + +// A set of hooks that are needed to obtain output of Google's CarrierSettings app for arbitrary +// CarrierIds. That output is used for testing CarrierConfig2 app. +public class GCarrierSettingsApp { + public static final String PKG_NAME = "com.google.android.carrier"; + + public static final int PHONE_SLOT_IDX_FOR_CARRIER_ID_OVERRIDE = 50; + public static final int SUB_ID_FOR_CARRIER_ID_OVERRIDE = 90; + // a separate value is need to prevent caching inside GCarrierSettings from interfering with + // the results + public static final int SUB_ID_FOR_CARRIER_SERVICE_CALL = 91; + + private static int isTestingModeEnabled; + + static ThreadLocal carrierIdOverride; + + public static void init() { + carrierIdOverride = new ThreadLocal<>(); + } + + public static int maybeOverrideSlotIndex(int subId) { + if (subId == SUB_ID_FOR_CARRIER_ID_OVERRIDE) { + return PHONE_SLOT_IDX_FOR_CARRIER_ID_OVERRIDE; + } + return -1; + } + + public static int[] maybeOverrideSubIds(int slotIndex) { + if (slotIndex == PHONE_SLOT_IDX_FOR_CARRIER_ID_OVERRIDE) { + return new int[] { SUB_ID_FOR_CARRIER_ID_OVERRIDE }; + } + return null; + } + + public static TelephonyManager maybeOverrideCreateTelephonyManager(Context ctx, int subId) { + if (subId == SUB_ID_FOR_CARRIER_ID_OVERRIDE) { + CarrierIdentifier override = carrierIdOverride.get(); + Objects.requireNonNull(override); + return new GCSTelephonyManager(ctx, SUB_ID_FOR_CARRIER_ID_OVERRIDE, override); + } + + return null; + } + + public static class GCSTelephonyManager extends TelephonyManager { + private final CarrierIdentifier carrierIdOverride; + + public GCSTelephonyManager(Context context, int subId, CarrierIdentifier carrierIdOverride) { + super(context, subId); + this.carrierIdOverride = carrierIdOverride; + } + + @Override public String getSimOperator() { + return carrierIdOverride.getMcc() + carrierIdOverride.getMnc(); + } + + @Override public String getSimOperatorName() { + return carrierIdOverride.getSpn(); + } + + @Override public String getSubscriberId() { + return carrierIdOverride.getImsi(); + } + + @Override public String getGroupIdLevel1() { + return carrierIdOverride.getGid1(); + } + } +} diff --git a/core/java/com/android/internal/gmscompat/gcarriersettings/ICarrierConfigsLoader.aidl b/core/java/com/android/internal/gmscompat/gcarriersettings/ICarrierConfigsLoader.aidl new file mode 100644 index 0000000000000..c28bde2351c5c --- /dev/null +++ b/core/java/com/android/internal/gmscompat/gcarriersettings/ICarrierConfigsLoader.aidl @@ -0,0 +1,8 @@ +package com.android.internal.gmscompat.gcarriersettings; + +import android.os.Bundle; +import android.service.carrier.CarrierIdentifier; + +interface ICarrierConfigsLoader { + Bundle getConfigs(in CarrierIdentifier carrierId); +} diff --git a/core/java/com/android/internal/gmscompat/gcarriersettings/TestCarrierConfigService.java b/core/java/com/android/internal/gmscompat/gcarriersettings/TestCarrierConfigService.java new file mode 100644 index 0000000000000..7b4431232a70b --- /dev/null +++ b/core/java/com/android/internal/gmscompat/gcarriersettings/TestCarrierConfigService.java @@ -0,0 +1,160 @@ +package com.android.internal.gmscompat.gcarriersettings; + +import android.annotation.Nullable; +import android.app.Service; +import android.content.ComponentName; +import android.content.ContentValues; +import android.content.Context; +import android.content.Intent; +import android.content.ServiceConnection; +import android.os.Binder; +import android.os.Bundle; +import android.os.IBinder; +import android.os.PersistableBundle; +import android.os.RemoteException; +import android.os.ResultReceiver; +import android.service.carrier.CarrierIdentifier; +import android.service.carrier.CarrierService; +import android.service.carrier.CarrierService.ICarrierServiceWrapper; +import android.service.carrier.IApnSourceService; +import android.service.carrier.ICarrierService; +import android.util.Log; + +import com.android.internal.util.Preconditions; + +import java.util.ArrayList; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.Executor; +import java.util.concurrent.Executors; +import java.util.concurrent.Future; + +// This service is only used for testing the CarrierConfig2 app. +// It allows CarrierConfig2 to get carrier configs from Google's CarrierSettings app for arbitrary +// CarrierIds. +public class TestCarrierConfigService extends Service { + + private final Executor bgExecutor = Executors.newSingleThreadExecutor(); + + private Future carrierServiceF; + private Future apnServiceF; + + private final ArrayList serviceConnections = new ArrayList<>(); + + public static final String KEY_CARRIER_SERVICE_RESULT = "carrier_service_result"; + public static final String KEY_APN_SERVICE_RESULT = "apn_service_result"; + + private final Binder binder = new ICarrierConfigsLoader.Stub() { + private ICarrierService carrierService; + private IApnSourceService apnService; + + private void maybeWaitForServices() { + synchronized (this) { + if (carrierService == null) { + try { + carrierService = ICarrierService.Stub.asInterface(carrierServiceF.get()); + apnService = IApnSourceService.Stub.asInterface(apnServiceF.get()); + } catch (ExecutionException|InterruptedException e) { + throw new IllegalStateException(e); + } + } + } + } + + @Override + public Bundle getConfigs(CarrierIdentifier carrierId) throws RemoteException { + maybeWaitForServices(); + + var carrierServiceResultF = new CompletableFuture(); + var resultReceiver = new ResultReceiver(null) { + @Override + protected void onReceiveResult(int resultCode, Bundle resultData) { + Preconditions.checkArgument(resultCode == ICarrierServiceWrapper.RESULT_OK); + carrierServiceResultF.complete(resultData); + } + }; + carrierService.getCarrierConfig(GCarrierSettingsApp.SUB_ID_FOR_CARRIER_SERVICE_CALL, carrierId, resultReceiver); + + GCarrierSettingsApp.carrierIdOverride.set(carrierId); + ContentValues[] apns = apnService.getApns(GCarrierSettingsApp.SUB_ID_FOR_CARRIER_ID_OVERRIDE); + + var result = new Bundle(); + result.putParcelableArray(KEY_APN_SERVICE_RESULT, apns); + + try { + Bundle b = carrierServiceResultF.get(); + PersistableBundle pb = b.getParcelable(ICarrierServiceWrapper.KEY_CONFIG_BUNDLE); + result.putParcelable(KEY_CARRIER_SERVICE_RESULT, pb); + } catch (InterruptedException|ExecutionException e) { + throw new IllegalStateException(e); + } + + return result; + } + }; + + @Override + public void onCreate() { + var csIntent = new Intent(CarrierService.CARRIER_SERVICE_INTERFACE); + csIntent.setPackage(GCarrierSettingsApp.PKG_NAME); + carrierServiceF = bind(csIntent); + + var apnServiceIntent = new Intent(); + apnServiceIntent.setComponent(ComponentName.createRelative(GCarrierSettingsApp.PKG_NAME, ".ApnSourceService")); + apnServiceF = bind(apnServiceIntent); + } + + @Nullable + @Override + public IBinder onBind(Intent intent) { + return binder; + } + + CompletableFuture bind(Intent intent) { + String TAG = "TestCConfigService.bind"; + + var future = new CompletableFuture(); + + var sc = new ServiceConnection() { + @Override + public void onServiceConnected(ComponentName name, IBinder service) { + Log.d(TAG, "onServiceConnected " + name); + future.complete(service); + } + + @Override + public void onServiceDisconnected(ComponentName name) { + Log.d(TAG, "onServiceDisconnected " + name); + } + + @Override + public void onBindingDied(ComponentName name) { + throw new IllegalStateException("onBindingDied " + name); + } + + @Override + public void onNullBinding(ComponentName name) { + throw new IllegalStateException("onNullBinding " + name); + } + }; + + int bindFlags = Context.BIND_AUTO_CREATE | Context.BIND_ABOVE_CLIENT; + boolean res = bindService(intent, bindFlags, bgExecutor, sc); + serviceConnections.add(sc); + + if (!res) { + throw new IllegalStateException("unable to bind to " + intent); + } + + return future; + } + + @Override + public void onDestroy() { + super.onDestroy(); + + for (ServiceConnection c : serviceConnections) { + unbindService(c); + } + } +} diff --git a/core/java/com/android/internal/gmscompat/sysservice/GmcPackageManager.java b/core/java/com/android/internal/gmscompat/sysservice/GmcPackageManager.java new file mode 100644 index 0000000000000..d9b52ac0d1783 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/sysservice/GmcPackageManager.java @@ -0,0 +1,671 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.gmscompat.sysservice; + +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.annotation.SuppressLint; +import android.app.ActivityThread; +import android.app.Application; +import android.app.ApplicationPackageManager; +import android.app.compat.gms.GmsCompat; +import android.content.ComponentName; +import android.content.ContentResolver; +import android.content.Context; +import android.content.Intent; +import android.content.pm.ApplicationInfo; +import android.content.pm.IPackageDataObserver; +import android.content.pm.IPackageDeleteObserver; +import android.content.pm.IPackageInstaller; +import android.content.pm.IPackageManager; +import android.content.pm.InstallSourceInfo; +import android.content.pm.PackageInfo; +import android.content.pm.PackageInstaller; +import android.content.pm.PackageManager; +import android.content.pm.SharedLibraryInfo; +import android.content.pm.VersionedPackage; +import android.ext.PackageId; +import android.os.Process; +import android.os.RemoteException; +import android.os.UserHandle; +import android.util.ArrayMap; +import android.util.ArraySet; +import android.util.Log; +import android.util.PackageUtils; + +import com.android.internal.gmscompat.GmsHooks; +import com.android.internal.gmscompat.GmsInfo; +import com.android.internal.gmscompat.PlayStoreHooks; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +@SuppressLint("WrongConstant") // lint doesn't like "flags & ~" expressions +public class GmcPackageManager extends ApplicationPackageManager { + private static final String TAG = GmcPackageManager.class.getSimpleName(); + + public GmcPackageManager(Context context, IPackageManager pm) { + super(context, pm); + } + + public static void init(Context ctx) { + initPseudoDisabledPackages(); + initForceDisabledComponents(ctx); + if (GmsCompat.isPlayStore()) { + ArraySet hiddenPkgs = HIDDEN_PACKAGES; + + if (Application.getProcessName().equals(PackageId.PLAY_STORE_NAME)) { + // PackageInstaller.abandonSession() calls are conditionally stubbed out to prevent + // Play Store from destroying sessions that are waiting for confirmation from the + // user. + // + // To avoid having too many pending sessions, clean them up when the main Play Store + // process starts up, before any of its code is executed. + PackageInstaller installerWrapper = ctx.getPackageManager().getPackageInstaller(); + IPackageInstaller installer = installerWrapper.getIPackageInstaller(); + + for (PackageInstaller.SessionInfo si : installerWrapper.getAllSessions()) { + try { + // PackageInstaller.abandonSession() is conditionally stubbed out, call + // the binder method directly + installer.abandonSession(si.sessionId); + } catch (RemoteException | SecurityException e) { + // confusingly, SecurityException is thrown when session is already racily + // abandoned + Log.e(TAG, "", e); + } + Log.d(TAG, "abandoned session " + si.sessionId); + } + } + } + } + + public static void maybeAdjustPackageInfo(PackageInfo pi) { + ApplicationInfo ai = pi.applicationInfo; + if (ai != null) { + maybeAdjustApplicationInfo(ai); + } + } + + public static void maybeAdjustApplicationInfo(ApplicationInfo ai) { + String packageName = ai.packageName; + + if (GmsInfo.PACKAGE_GMS_CORE.equals(packageName)) { + // Checked before accessing com.google.android.gms.phenotype content provider + // in com.google.android.libraries.phenotype.client + // .PhenotypeClientHelper#validateContentProvider() -> isGmsCorePreinstalled() + // PhenotypeFlags will always return their default values if these flags aren't set. + // + // Also need to be set to allow updates of GmsCore through Play Store without a + // logged-in Google account + if (GmsCompat.isGmsCore() || GmsCompat.isClientOfGmsCore(ai)) { + ai.flags |= ApplicationInfo.FLAG_SYSTEM | ApplicationInfo.FLAG_UPDATED_SYSTEM_APP; + } + } + + if (!ai.enabled) { + if (shouldHideDisabledState(packageName)) { + ai.enabled = true; + } + } + } + + @Override + public void deletePackage(String packageName, IPackageDeleteObserver observer, int flags) { + if (GmsCompat.isPlayStore()) { + PlayStoreHooks.deletePackage(this, packageName, observer, flags); + return; + } + + super.deletePackage(packageName, observer, flags); + } + + @Override + public void freeStorageAndNotify(String volumeUuid, long idealStorageSize, IPackageDataObserver observer) { + if (GmsCompat.isPlayStore()) { + PlayStoreHooks.freeStorageAndNotify(volumeUuid, idealStorageSize, observer); + return; + } + + super.freeStorageAndNotify(volumeUuid, idealStorageSize, observer); + } + + @Override + public void setApplicationEnabledSetting(String packageName, int newState, int flags) { + if (GmsCompat.isPlayStore()) { + if (isPseudoDisabledPackage(packageName)) { + try { + // check whether this package is actually absent + super.getApplicationInfoAsUser(packageName, ApplicationInfoFlags.of(0L), getUserId()); + } catch (NameNotFoundException e) { + // package state tracking happens in the same process that tries to enable + // the package, no need to sync this across all processes, at least for now + GmsCompat.appContext().getMainThreadHandler().post(() -> { + PlayStoreHooks.InternalBroadcastReceiver.removePseudoDisabledPackage(GmsCompat.appContext(), packageName); + PlayStoreHooks.updatePackageState(packageName, Intent.ACTION_PACKAGE_CHANGED, Intent.ACTION_PACKAGE_REMOVED); + }); + return; + } + } + PlayStoreHooks.setApplicationEnabledSetting(packageName, newState); + return; + } + + try { + super.setApplicationEnabledSetting(packageName, newState, flags); + } catch (SecurityException e) { + Log.d(TAG, "", e); + } + } + + @Override + public boolean hasSystemFeature(String name) { + switch (name) { + // checked before accessing privileged UwbManager + case "android.hardware.uwb": + return false; + } + + return super.hasSystemFeature(name); + } + + // requires privileged OBSERVE_GRANT_REVOKE_PERMISSIONS permission + @Override + public void addOnPermissionsChangeListener(OnPermissionsChangedListener listener) { + synchronized (onPermissionsChangedListeners) { + onPermissionsChangedListeners.add(listener); + } + } + + @Override + public void removeOnPermissionsChangeListener(OnPermissionsChangedListener listener) { + synchronized (onPermissionsChangedListeners) { + onPermissionsChangedListeners.remove(listener); + } + } + + public static void notifyPermissionsChangeListeners() { + Log.d("GmcPackageManager", "notifyPermissionsChangeListeners"); + int myUid = Process.myUid(); + synchronized (onPermissionsChangedListeners) { + for (OnPermissionsChangedListener l : onPermissionsChangedListeners) { + l.onPermissionsChanged(myUid); + } + } + } + + private static final ArrayList onPermissionsChangedListeners = + new ArrayList<>(); + + // MATCH_ANY_USER flag requires privileged INTERACT_ACROSS_USERS permission + + private static PackageInfoFlags filterFlags(PackageInfoFlags flags) { + long v = flags.getValue(); + + if ((v & MATCH_ANY_USER) != 0) { + return PackageInfoFlags.of(v & ~MATCH_ANY_USER); + } + + return flags; + } + + @Override + public @NonNull List getSharedLibraries(PackageInfoFlags flags) { + return super.getSharedLibraries(filterFlags(flags)); + } + + private static final ArraySet HIDDEN_PACKAGES = new ArraySet<>(new String[] { + "app.attestation.auditor", + }); + + private static void throwIfHidden(String pkgName) throws NameNotFoundException { + if (HIDDEN_PACKAGES.contains(pkgName)) { + throw new NameNotFoundException(); + } + } + + @Override + public PackageInfo getPackageInfo(VersionedPackage versionedPackage, PackageInfoFlags flags) throws NameNotFoundException { + throwIfHidden(versionedPackage.getPackageName()); + flags = filterFlags(flags); + try { + PackageInfo pi = super.getPackageInfo(versionedPackage, flags); + maybeAdjustPackageInfo(pi); + return pi; + } catch (NameNotFoundException e) { + return makePseudoDisabledPackageInfoOrThrow(versionedPackage.getPackageName(), flags); + } + } + + @Override + public PackageInfo getPackageInfoAsUser(String packageName, PackageInfoFlags flags, int userId) throws NameNotFoundException { + throwIfHidden(packageName); + flags = filterFlags(flags); + try { + PackageInfo pi = super.getPackageInfoAsUser(packageName, flags, userId); + maybeAdjustPackageInfo(pi); + return pi; + } catch (NameNotFoundException e) { + return makePseudoDisabledPackageInfoOrThrow(packageName, flags); + } + } + + @Override + public ApplicationInfo getApplicationInfoAsUser(String packageName, ApplicationInfoFlags flags, int userId) throws NameNotFoundException { + try { + ApplicationInfo ai = super.getApplicationInfoAsUser(packageName, flags, userId); + maybeAdjustApplicationInfo(ai); + return ai; + } catch (NameNotFoundException e) { + return makePseudoDisabledApplicationInfoOrThrow(packageName, flags); + } + } + + @Override + public List getInstalledApplicationsAsUser(ApplicationInfoFlags flags, int userId) { + List ret = super.getInstalledApplicationsAsUser(flags, userId); + List res = new ArrayList<>(ret.size()); + + ArraySet pseudoDisabledPackages = clonePseudoDisabledPackages(); + + for (ApplicationInfo ai : ret) { + String pkgName = ai.packageName; + if (HIDDEN_PACKAGES.contains(pkgName)) { + continue; + } + pseudoDisabledPackages.remove(pkgName); + maybeAdjustApplicationInfo(ai); + res.add(ai); + } + + for (String pkg : pseudoDisabledPackages) { + ApplicationInfo ai = maybeMakePseudoDisabledApplicationInfo(pkg, flags); + if (ai != null) { + res.add(ai); + } + } + + return res; + } + + @Override + public List getInstalledPackagesAsUser(PackageInfoFlags flags, int userId) { + flags = filterFlags(flags); + List ret = super.getInstalledPackagesAsUser(flags, userId); + List res = new ArrayList<>(ret.size()); + + ArraySet pseudoDisabledPackages = clonePseudoDisabledPackages(); + + for (PackageInfo pi : ret) { + String pkgName = pi.packageName; + if (HIDDEN_PACKAGES.contains(pkgName)) { + continue; + } + pseudoDisabledPackages.remove(pkgName); + maybeAdjustPackageInfo(pi); + res.add(pi); + } + + for (String pkg : pseudoDisabledPackages) { + PackageInfo pi = maybeMakePseudoDisabledPackageInfo(pkg, flags); + if (pi != null) { + res.add(pi); + } + } + + return res; + } + + @Override + public String[] getPackagesForUid(int uid) { + int userId = UserHandle.getUserId(uid); + int myUserId = UserHandle.myUserId(); + + if (userId != myUserId) { + if (userId != 0) { + throw new IllegalArgumentException("uid from unexpected userId: " + uid); + } + // querying uids from other userIds requires a privileged permission + uid = UserHandle.getUid(myUserId, UserHandle.getAppId(uid)); + } + + return super.getPackagesForUid(uid); + } + + @SuppressLint("SwitchIntDef") + @Override + public int getApplicationEnabledSetting(String packageName) { + try { + int res = super.getApplicationEnabledSetting(packageName); + + switch (res) { + case COMPONENT_ENABLED_STATE_DISABLED: + case COMPONENT_ENABLED_STATE_DISABLED_USER: + case COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED: + if (shouldHideDisabledState(packageName)) { + res = COMPONENT_ENABLED_STATE_DEFAULT; + } + } + + return res; + } catch (Exception e) { + if (isPseudoDisabledPackage(packageName)) { + return COMPONENT_ENABLED_STATE_DISABLED_USER; + } + throw e; + } + } + + @Override + public String getInstallerPackageName(String packageName) { + try { + return super.getInstallerPackageName(packageName); + } catch (Exception e) { + if (isPseudoDisabledPackage(packageName)) { + return PackageId.PLAY_STORE_NAME; + } + throw e; + } + } + + @NonNull + @Override + public InstallSourceInfo getInstallSourceInfo(String packageName) throws NameNotFoundException { + InstallSourceInfo res; + try { + res = super.getInstallSourceInfo(packageName); + } catch (NameNotFoundException e) { + if (isPseudoDisabledPackage(packageName)) { + String installer = PackageId.PLAY_STORE_NAME; + var isi = new InstallSourceInfo(installer, null, null, installer); + return isi; + } + throw e; + } + + switch (packageName) { + case PackageId.ANDROID_AUTO_NAME: + case PackageId.PIXEL_HEALTH_NAME: + case PackageId.GMS_CORE_NAME: + // These packages need to be exempted from updates via Play Store to prevent breaking the + // compatibility layer. + // + // Play Store respects the value of InstallSourceInfo#getUpdateOwnerPackageName(): + // packages that have non-Play Store update owners are not updated by Play Store + ContentResolver cr = GmsCompat.appContext().getContentResolver(); + String updateOwnerPackage = PlayStoreHooks.isInstallAllowed(packageName, cr) ? + // Play Store tries to use installer session preapporaval when update ownership is + // set and Play Store is not the update owner. Installer session preapproval is + // disabled on GrapheneOS, which leads to installation failure. As a workaround, + // unconditionally return to Play Store that it's already the update owner. OS + // will handle update ownership change confirmation itself. + PackageId.PLAY_STORE_NAME : + PackageUtils.getFirstPartyAppSourcePackageName(GmsCompat.appContext()); + res = new InstallSourceInfo( + res.getInitiatingPackageName(), + res.getInitiatingPackageSigningInfo(), + res.getOriginatingPackageName(), + res.getInstallingPackageName(), + updateOwnerPackage, + res.getPackageSource() + ); + break; + } + + return res; + } + + private PackageInfo makePseudoDisabledPackageInfoOrThrow(String pkgName, PackageInfoFlags flags) throws NameNotFoundException { + if (!isPseudoDisabledPackage(pkgName)) { + throw new NameNotFoundException(); + } + PackageInfo pi = maybeMakePseudoDisabledPackageInfo(pkgName, flags); + if (pi == null) { + throw new NameNotFoundException(); + } + return pi; + } + + private ApplicationInfo makePseudoDisabledApplicationInfoOrThrow(String pkgName, ApplicationInfoFlags flags) throws NameNotFoundException { + if (!isPseudoDisabledPackage(pkgName)) { + throw new NameNotFoundException(); + } + ApplicationInfo ai = maybeMakePseudoDisabledApplicationInfo(pkgName, flags); + if (ai == null) { + throw new NameNotFoundException(); + } + return ai; + } + + @Nullable + private PackageInfo maybeMakePseudoDisabledPackageInfo(String pkgName, PackageInfoFlags flags) { + PackageInfo pi; + try { + pi = super.getPackageInfoAsUser(selfPkgName(), flags, getUserId()); + } catch (NameNotFoundException e) { + return null; + } + pi.packageName = pkgName; + pi.applicationInfo.packageName = pkgName; + pi.applicationInfo.enabled = false; + pi.setLongVersionCode(Integer.MAX_VALUE); + return pi; + } + + @Nullable + private ApplicationInfo maybeMakePseudoDisabledApplicationInfo(String pkgName, ApplicationInfoFlags flags) { + ApplicationInfo ai; + try { + ai = super.getApplicationInfoAsUser(selfPkgName(), flags, getUserId()); + } catch (NameNotFoundException e) { + return null; + } + ai.packageName = pkgName; + ai.enabled = false; + ai.longVersionCode = Integer.MAX_VALUE; + ai.versionCode = Integer.MAX_VALUE; + return ai; + } + + private static String selfPkgName() { + return GmsCompat.appContext().getPackageName(); + } + + // Pseudo-disabled PackageInfo/ApplicationInfo is used to prevent Play Store from auto-installing + // optional packages, such as "Play Services for AR". It's returned only when the package is + // not installed. + // When Play Store tries to enable a pseudo-disabled package, it receives a callback that + // the package was uninstalled. This allows the user to install a pseudo-disabled package + // by pressing the "Enable" button, which reveals the "Install" button. + + // important to have it static: there are multiple instances of enclosing class in the same process + private static final ArraySet pseudoDisabledPackages = new ArraySet<>(); + + private static void initPseudoDisabledPackages() { + if (GmsCompat.isPlayStore()) { + // "Play Services for AR" + pseudoDisabledPackages.add("com.google.ar.core"); + } + + if (GmsCompat.isAndroidAuto()) { + pseudoDisabledPackages.add(PackageId.G_SEARCH_APP_NAME); + pseudoDisabledPackages.add("com.google.android.apps.maps"); + pseudoDisabledPackages.add("com.google.android.tts"); + } + } + + private static boolean isPseudoDisabledPackage(String pkgName) { + synchronized (pseudoDisabledPackages) { + return pseudoDisabledPackages.contains(pkgName); + } + } + + private static ArraySet clonePseudoDisabledPackages() { + synchronized (pseudoDisabledPackages) { + return new ArraySet<>(pseudoDisabledPackages); + } + } + + public static boolean removePseudoDisabledPackage(String pkgName) { + synchronized (pseudoDisabledPackages) { + return pseudoDisabledPackages.remove(pkgName); + } + } + + private static boolean shouldHideDisabledState(String pkgName) { + if (!GmsCompat.isPlayStore()) { + return false; + } + + switch (pkgName) { + case GmsInfo.PACKAGE_GMS_CORE: + return false; + default: + return true; + } + } + + private static ArraySet componentsWithForcedEnabledSetting; + + private static void initForceDisabledComponents(Context ctx) { + final String pkgName = ctx.getPackageName(); + ArrayMap forcedCes = GmsHooks.config().forceComponentEnabledSettingsMap.get(pkgName); + + if (forcedCes == null) { + return; + } + + final int cnt = forcedCes.size(); + + var components = new ArraySet(cnt); + var settings = new ArrayList(cnt); + for (int i = 0; i < cnt; ++i) { + var name = new ComponentName(ctx, forcedCes.keyAt(i)); + components.add(name); + int state = forcedCes.valueAt(i).intValue(); + var ces = new ComponentEnabledSetting(name, state, DONT_KILL_APP | SKIP_IF_MISSING); + settings.add(ces); + } + + componentsWithForcedEnabledSetting = components; + + // Don't repeat setComponentEnabledSettings() in all processes + boolean shouldUpdate; + if (GmsCompat.isGmsCore()) { + shouldUpdate = GmsHooks.inPersistentGmsCoreProcess; + } else if (GmsCompat.isPlayStore()) { + shouldUpdate = GmsInfo.PACKAGE_PLAY_STORE.equals(Application.getProcessName()); + } else { + shouldUpdate = true; + } + + if (shouldUpdate) { + try { + ActivityThread.getPackageManager().setComponentEnabledSettings(settings, ctx.getUserId(), pkgName); + } catch (Exception e) { + Log.d(TAG, "", e); + } + } + } + + private static boolean isSetComponentEnabledSettingAllowed(@Nullable ComponentName cn, int newState, int flags) { + if (cn == null) { + return true; + } + + ArraySet set = componentsWithForcedEnabledSetting; + if (set != null && set.contains(cn)) { + Log.d(TAG, "skipped setComponentEnabledSetting for " + cn + ", newState " + newState + + ", flags " + flags); + return false; + } + + return true; + } + + @Override + public void setComponentEnabledSetting(ComponentName componentName, + int newState, int flags) { + if (!isSetComponentEnabledSettingAllowed(componentName, newState, flags)) { + return; + } + + try { + super.setComponentEnabledSetting(componentName, newState, flags); + } catch (SecurityException e) { + Log.d(TAG, "", e); + } + } + + @Override + public void setComponentEnabledSettings(List settings) { + settings = settings.stream() + .filter(s -> isSetComponentEnabledSettingAllowed(s.getComponentName(), + s.getEnabledState(), s.getEnabledFlags())) + .collect(Collectors.toUnmodifiableList()); + if (settings.isEmpty()) { + return; + } + + try { + super.setComponentEnabledSettings(settings); + } catch (SecurityException e) { + Log.d(TAG, "", e); + } + } + + /** @see android.app.ContextImpl#createPackageContext */ + @Nullable + public static Context maybeOverrideGsfPackageContext(String packageName) { + if (!GmsCompat.isGmsCore()) { + return null; + } + + if (!PackageId.GSF_NAME.equals(packageName)) { + return null; + } + + // On first launch, GmsCore attempts to migrate GSF databases into itself. GSF is a + // hasCode=false package since Android 15 and is not needed for fresh installs of GmsCore. + // If GSF is absent, GmsCore crashes when it tries to create package context for GSF as + // part of database migration. To prevent this crash, return GmsCore app context instead + // of GSF package context, which turns database migration into a no-op. + + Context ctx = GmsCompat.appContext(); + PackageManager pkgManager = ctx.getPackageManager(); + + try { + pkgManager.getApplicationInfo(packageName, 0); + } catch (PackageManager.NameNotFoundException e) { + Log.d(TAG, "replacing GSF package context with GmsCore app context", new Throwable()); + return ctx; + } + + try { + PackageInfo pi = pkgManager.getPackageInfo(PackageId.GMS_CORE_NAME, 0); + if (pi.sharedUserId == null) { + // GmsCore has left the GSF sharedUid but GSF is still present + Log.d(TAG, "maybeReplaceGsfPackageName: sharedUserId is null, ignoring GSF", new Throwable()); + return ctx; + } + return null; + } catch (NameNotFoundException e) { + throw new IllegalStateException(e); + } + } +} diff --git a/core/java/com/android/internal/gmscompat/sysservice/GmcTelephonyManager.java b/core/java/com/android/internal/gmscompat/sysservice/GmcTelephonyManager.java new file mode 100644 index 0000000000000..0fc7d81ca810e --- /dev/null +++ b/core/java/com/android/internal/gmscompat/sysservice/GmcTelephonyManager.java @@ -0,0 +1,152 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.gmscompat.sysservice; + +import android.Manifest; +import android.annotation.CallbackExecutor; +import android.annotation.Nullable; +import android.app.compat.gms.GmsCompat; +import android.content.Context; +import android.os.WorkSource; +import android.telephony.CellInfo; +import android.telephony.ServiceState; +import android.telephony.TelephonyCallback; +import android.telephony.TelephonyManager; +import android.telephony.UiccSlotInfo; +import android.util.Log; + +import java.util.Arrays; +import java.util.BitSet; +import java.util.Collections; +import java.util.List; +import java.util.Set; +import java.util.concurrent.Executor; +import java.util.stream.Collectors; + +@SuppressWarnings("AutoBoxing") +public class GmcTelephonyManager { + + private static final String TAG = "GmcTelephonyManager"; + + public static int[] filterTelephonyCallbackEvents(int[] eventsArray) { + Set events = Arrays.stream(eventsArray).boxed().collect(Collectors.toSet()); + + var sb = new StringBuilder(); + + if (!GmsCompat.hasPermission(Manifest.permission.READ_PHONE_STATE)) { + removeEvents(events, EVENTS_PROT_READ_PHONE_STATE, "READ_PHONE_STATE", sb); + } + + if (!GmsCompat.hasPermission(Manifest.permission.ACCESS_FINE_LOCATION)) { + removeEvents(events, EVENTS_PROT_ACCESS_FINE_LOCATION, + "ACCESS_FINE_LOCATION", sb); + } + + if (!GmsCompat.hasPermission(Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION)) { + removeEvents(events, EVENTS_PROT_READ_ACTIVE_EMERGENCY_SESSION, + "READ_ACTIVE_EMERGENCY_SESSION", sb); + } + + if (!GmsCompat.hasPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE)) { + removeEvents(events, EVENTS_PROT_READ_PRIVILEGED_PHONE_STATE, + "READ_PRIVILEGED_PHONE_STATE", sb); + } + + if (!GmsCompat.hasPermission(Manifest.permission.READ_PRECISE_PHONE_STATE)) { + removeEvents(events, EVENTS_PROT_READ_PRECISE_PHONE_STATE, + "READ_PRECISE_PHONE_STATE", sb); + } + + int[] res = events.stream().mapToInt(Integer::intValue).toArray(); + + Log.d(TAG, "registering listener, events: " + Arrays.toString(res) + + (sb.length() != 0? "\nfiltered events due to missing permission\n" + sb : ""), + new Throwable()); + + return res; + } + + private static void removeEvents(Set events, int[] eventsToRemove, String permName, StringBuilder sb) { + if (events.size() == 0) { + return; + } + + boolean filtered = false; + + for (int event : eventsToRemove) { + if (!events.remove(event)) { + continue; + } + if (!filtered) { + sb.append(permName); + sb.append(": {"); + filtered = true; + } + sb.append(event); + sb.append(", "); + } + + if (filtered) { + sb.append("}\n"); + } + } + + private static final int[] EVENTS_PROT_READ_PHONE_STATE = { + TelephonyCallback.EVENT_CALL_FORWARDING_INDICATOR_CHANGED, + TelephonyCallback.EVENT_MESSAGE_WAITING_INDICATOR_CHANGED, + TelephonyCallback.EVENT_EMERGENCY_NUMBER_LIST_CHANGED, + TelephonyCallback.EVENT_LEGACY_CALL_STATE_CHANGED, + TelephonyCallback.EVENT_CALL_STATE_CHANGED, + TelephonyCallback.EVENT_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGED, + TelephonyCallback.EVENT_CELL_INFO_CHANGED, + }; + + private static final int[] EVENTS_PROT_ACCESS_FINE_LOCATION = { + TelephonyCallback.EVENT_CELL_LOCATION_CHANGED, + TelephonyCallback.EVENT_CELL_INFO_CHANGED, + TelephonyCallback.EVENT_REGISTRATION_FAILURE, + TelephonyCallback.EVENT_BARRING_INFO_CHANGED, + }; + + private static final int[] EVENTS_PROT_READ_ACTIVE_EMERGENCY_SESSION = { + TelephonyCallback.EVENT_OUTGOING_EMERGENCY_CALL, + TelephonyCallback.EVENT_OUTGOING_EMERGENCY_SMS, + }; + + private static final int[] EVENTS_PROT_READ_PRIVILEGED_PHONE_STATE = { + TelephonyCallback.EVENT_SRVCC_STATE_CHANGED, + TelephonyCallback.EVENT_VOICE_ACTIVATION_STATE_CHANGED, + TelephonyCallback.EVENT_RADIO_POWER_STATE_CHANGED, + TelephonyCallback.EVENT_ALLOWED_NETWORK_TYPE_LIST_CHANGED, + TelephonyCallback.EVENT_EMERGENCY_CALLBACK_MODE_CHANGED, + }; + + private static final int[] EVENTS_PROT_READ_PRECISE_PHONE_STATE = { + TelephonyCallback.EVENT_PRECISE_DATA_CONNECTION_STATE_CHANGED, + TelephonyCallback.EVENT_DATA_CONNECTION_REAL_TIME_INFO_CHANGED, + TelephonyCallback.EVENT_PRECISE_CALL_STATE_CHANGED, + TelephonyCallback.EVENT_CALL_DISCONNECT_CAUSE_CHANGED, + TelephonyCallback.EVENT_CALL_ATTRIBUTES_CHANGED, + TelephonyCallback.EVENT_IMS_CALL_DISCONNECT_CAUSE_CHANGED, + TelephonyCallback.EVENT_REGISTRATION_FAILURE, + TelephonyCallback.EVENT_BARRING_INFO_CHANGED, + TelephonyCallback.EVENT_PHYSICAL_CHANNEL_CONFIG_CHANGED, + TelephonyCallback.EVENT_DATA_ENABLED_CHANGED, + TelephonyCallback.EVENT_LINK_CAPACITY_ESTIMATE_CHANGED, + TelephonyCallback.EVENT_MEDIA_QUALITY_STATUS_CHANGED, + }; +} diff --git a/core/java/com/android/internal/gmscompat/sysservice/GmcUserManager.java b/core/java/com/android/internal/gmscompat/sysservice/GmcUserManager.java new file mode 100644 index 0000000000000..2b1a8db750b0c --- /dev/null +++ b/core/java/com/android/internal/gmscompat/sysservice/GmcUserManager.java @@ -0,0 +1,190 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.gmscompat.sysservice; + +import android.annotation.Nullable; +import android.annotation.UserIdInt; +import android.content.Context; +import android.content.pm.UserInfo; +import android.os.IUserManager; +import android.os.Process; +import android.os.UserHandle; +import android.os.UserManager; + +import java.util.Collections; +import java.util.List; + +/** + * GMS tries to interact across user profiles, which requires privileged permissions. + * As a workaround, a pseudo-single-user environment is constructed by hiding non-current users + * and marking the current user as the primary ("Owner") user. + */ +public class GmcUserManager extends UserManager { + public GmcUserManager(Context context, IUserManager service) { + super(context, service); + } + + private static int getUserId() { + return UserHandle.myUserId(); + } + + private static void checkUserId(int userId) { + if (userId != getUserId() && userId != UserHandle.USER_CURRENT) { + throw new IllegalStateException("unexpected userId " + userId); + } + } + + public static UserHandle translateUserHandle(UserHandle h) { + if (UserHandle.ALL.equals(h)) { + return UserHandle.of(getUserId()); + } + + checkUserId(h.getIdentifier()); + return h; + } + + private static int getUserSerialNumber() { + // GMS has several hardcoded (userSerialNumber == 0) checks + return 0; + } + + private static String getUserType_() { + // "system" means "primary" ("Owner") user + return UserManager.USER_TYPE_FULL_SYSTEM; + } + + private static UserInfo getUserInfo() { + // obtaining UserInfo is a privileged operation (even for the current user) + UserInfo ui = new UserInfo(); + ui.id = getUserId(); + ui.serialNumber = getUserSerialNumber(); + ui.userType = getUserType_(); + ui.flags = UserInfo.FLAG_SYSTEM | UserInfo.FLAG_FULL | UserInfo.FLAG_MAIN; + return ui; + } + + @Override + public boolean isSystemUser() { + return true; + } + + @Override + public boolean isUserOfType(String userType) { + return getUserType_().equals(userType); + } + + @Override + public UserInfo getUserInfo(int userId) { + checkUserId(userId); + return getUserInfo(); + } + + @Override + public boolean hasBaseUserRestriction(String restrictionKey, UserHandle userHandle) { + // Can't ignore device policy restrictions without permission + return hasUserRestriction(restrictionKey, userHandle); + } + + @Override + public List getUsers(boolean excludePartial, boolean excludeDying, boolean excludePreCreated) { + return Collections.singletonList(getUserInfo()); + } + + @Override + public int getUserSerialNumber(@UserIdInt int userId) { + checkUserId(userId); + return getUserSerialNumber(); + } + + @Override + public @UserIdInt int getUserHandle(int userSerialNumber) { + if (userSerialNumber != getUserSerialNumber()) { + throw new IllegalStateException("unexpected userSerialNumber " + userSerialNumber); + } + return getUserId(); + } + + // ActivityManager#getCurrentUser() + public static int amGetCurrentUser() { + return getUserId(); + } + + // ActivityManager#isUserRunning(int) + public static boolean amIsUserRunning(int userId) { + checkUserId(userId); + return true; + } + + // support for managed ("work") profiles + + @Override + public List getProfiles(@UserIdInt int userId) { + checkUserId(userId); + return getUsers(); + } + + @Override + public int[] getProfileIds(@UserIdInt int userId, boolean enabledOnly) { + checkUserId(userId); + return new int[] { userId }; + } + + @Override + public UserInfo getProfileParent(int userId) { + checkUserId(userId); + return null; + } + + @Override + public boolean isRestrictedProfile() { + return false; + } + + @Override + public boolean isDemoUser() { + return false; + } + + @Nullable + @Override + protected String getProfileType(int userId) { + checkUserId(userId); + return ""; + } + + @Nullable + @Override + public UserHandle getPreviousForegroundUser() { + return null; + } + + @Nullable + @Override + public UserHandle getMainUser() { + return Process.myUserHandle(); + } + + @Override + public UserHandle getBootUser() { + return Process.myUserHandle(); + } + + @Override + public boolean isAdminUser() { + return true; + } +} diff --git a/core/java/com/android/internal/gmscompat/util/CursorWrapperExt.java b/core/java/com/android/internal/gmscompat/util/CursorWrapperExt.java new file mode 100644 index 0000000000000..f7424df0db93f --- /dev/null +++ b/core/java/com/android/internal/gmscompat/util/CursorWrapperExt.java @@ -0,0 +1,67 @@ +package com.android.internal.gmscompat.util; + +import android.database.Cursor; +import android.database.CursorWrapper; + +public abstract class CursorWrapperExt extends CursorWrapper { + + protected CursorWrapperExt(Cursor orig) { + super(orig); + } + + protected abstract void onPositionChanged(); + + @Override + public boolean moveToLast() { + if (super.moveToLast()) { + onPositionChanged(); + return true; + } + return false; + } + + @Override + public boolean move(int offset) { + if (super.move(offset)) { + onPositionChanged(); + return true; + } + return false; + } + + @Override + public boolean moveToPosition(int position) { + if (super.moveToPosition(position)) { + onPositionChanged(); + return true; + } + return false; + } + + @Override + public boolean moveToNext() { + if (super.moveToNext()) { + onPositionChanged(); + return true; + } + return false; + } + + @Override + public boolean moveToFirst() { + if (super.moveToFirst()) { + onPositionChanged(); + return true; + } + return false; + } + + @Override + public boolean moveToPrevious() { + if (super.moveToPrevious()) { + onPositionChanged(); + return true; + } + return false; + } +} diff --git a/core/java/com/android/internal/gmscompat/util/GmcActivityUtils.java b/core/java/com/android/internal/gmscompat/util/GmcActivityUtils.java new file mode 100644 index 0000000000000..627721946bab2 --- /dev/null +++ b/core/java/com/android/internal/gmscompat/util/GmcActivityUtils.java @@ -0,0 +1,142 @@ +package com.android.internal.gmscompat.util; + +import android.Manifest; +import android.annotation.Nullable; +import android.app.Activity; +import android.app.ActivityOptions; +import android.app.Application; +import android.app.compat.gms.GmsCompat; +import android.bluetooth.BluetoothAdapter; +import android.bluetooth.BluetoothManager; +import android.content.ComponentName; +import android.content.Intent; +import android.ext.PackageId; +import android.os.Bundle; +import android.os.RemoteException; +import android.os.SystemClock; + +import com.android.internal.gmscompat.GmsCompatApp; +import com.android.internal.gmscompat.PlayStoreHooks; + +public class GmcActivityUtils implements Application.ActivityLifecycleCallbacks { + private static final String TAG = GmcActivityUtils.class.getSimpleName(); + + public static final GmcActivityUtils INSTANCE = new GmcActivityUtils(); + + @Nullable + private Activity mostRecentVisibleActivity; + + private GmcActivityUtils() {} + + @Nullable + public static Activity getMostRecentVisibleActivity() { + return INSTANCE.mostRecentVisibleActivity; + } + + @Override + public void onActivityResumed(Activity activity) { + mostRecentVisibleActivity = activity; + + String className = activity.getClass().getName(); + + if (GmsCompat.isGmsCore()) { + switch (className) { + case "com.google.android.gms.nearby.sharing.ShareSheetActivity": + handleNearbyShareActivityResume(activity, true); + break; + case "com.google.android.gms.nearby.sharing.InternalReceiveSurfaceActivity": + handleNearbyShareActivityResume(activity, false); + break; + } + } + + if (GmsCompat.isPlayStore()) { + PlayStoreHooks.onActivityResumed(activity); + } + } + + @Override + public void onActivityPaused(Activity activity) { + if (mostRecentVisibleActivity == activity) { + mostRecentVisibleActivity = null; + } + } + + @Override public void onActivityCreated(Activity activity, @Nullable Bundle savedInstanceState) {} + @Override public void onActivityStarted(Activity activity) {} + @Override public void onActivityStopped(Activity activity) {} + @Override public void onActivitySaveInstanceState(Activity activity, Bundle outState) {} + @Override public void onActivityDestroyed(Activity activity) {} + + private static long lastBtEnableRequest; + private static long lastBtDiscoverabilityRequest; + + private static void handleNearbyShareActivityResume(Activity activity, boolean isSend) { + if (GmsCompat.hasPermission(Manifest.permission.BLUETOOTH_CONNECT)) { + var bm = GmsCompat.appContext().getSystemService(BluetoothManager.class); + BluetoothAdapter adapter = bm.getAdapter(); + + final long repeatInterval = 20_000; + + long ts = SystemClock.elapsedRealtime(); + if (isSend) { + if (adapter.getState() == BluetoothAdapter.STATE_OFF) { + if (ts - lastBtEnableRequest > repeatInterval) { + var intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); + activity.startActivity(intent); + lastBtEnableRequest = ts; + } + } + } else { + if (adapter.getScanMode() == BluetoothAdapter.SCAN_MODE_NONE) { + if (ts - lastBtDiscoverabilityRequest > repeatInterval) { + var intent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE); + activity.startActivity(intent); + lastBtDiscoverabilityRequest = ts; + } + } + } + } else { + try { + GmsCompatApp.iGms2Gca().showGmsCoreMissingPermissionForNearbyShareNotification(); + } catch (RemoteException e) { + GmsCompatApp.callFailed(e); + } + } + } + + // See https://developer.android.com/about/versions/14/behavior-changes-14#background-activity-restrictions + public static Bundle allowActivityLaunchFromPendingIntent(@Nullable Bundle orig) { + var ao = orig != null ? ActivityOptions.fromBundle(orig) : ActivityOptions.makeBasic(); + ao.setPendingIntentBackgroundActivityStartMode(ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED); + return ao.toBundle(); + } + + public static Intent overrideStartActivityIntent(Intent intent) { + ComponentName cn = intent.getComponent(); + if (cn != null && "com.google.android.permissioncontroller".equals(cn.getPackageName())) { + // PermissionController activities can't be opened by unprivileged apps. + // (Replacing absent com.google.android.permissioncontroller package with + // com.android.permissioncontroller would not help) + return null; + } + + String pkg = cn != null ? cn.getPackageName() : intent.getPackage(); + if (pkg != null) { + boolean checkIntent = false; + switch (pkg) { + case PackageId.G_SEARCH_APP_NAME -> + checkIntent = true; + } + + if (checkIntent) { + var pm = GmsCompat.appContext().getPackageManager(); + if (pm.resolveActivity(intent, 0) == null) { + return null; + } + } + } + + return intent; + } +} diff --git a/core/java/com/android/internal/notification/SystemNotificationChannels.java b/core/java/com/android/internal/notification/SystemNotificationChannels.java index 4aebde536dcf5..a8b45afade715 100644 --- a/core/java/com/android/internal/notification/SystemNotificationChannels.java +++ b/core/java/com/android/internal/notification/SystemNotificationChannels.java @@ -66,6 +66,7 @@ public class SystemNotificationChannels { */ @Deprecated public static final String SYSTEM_CHANGES_DEPRECATED = "SYSTEM_CHANGES"; public static final String SYSTEM_CHANGES = "SYSTEM_CHANGES_ALERTS"; + public static final String OTHER_USERS = "OTHER_USERS"; public static final String ACCESSIBILITY_MAGNIFICATION = "ACCESSIBILITY_MAGNIFICATION"; public static final String ACCESSIBILITY_SECURITY_POLICY = "ACCESSIBILITY_SECURITY_POLICY"; public static final String ABUSIVE_BACKGROUND_APPS = "ABUSIVE_BACKGROUND_APPS"; @@ -196,6 +197,13 @@ public static void createAll(Context context) { .build()); channelsList.add(systemChanges); + NotificationChannel otherUsers = new NotificationChannel(OTHER_USERS, + context.getString(R.string.notification_channel_other_users), + NotificationManager.IMPORTANCE_DEFAULT); + otherUsers.setDescription(context.getString(R.string.notification_channel_other_users_description)); + otherUsers.setBlockable(true); + channelsList.add(otherUsers); + final NotificationChannel newFeaturePrompt = new NotificationChannel( ACCESSIBILITY_MAGNIFICATION, context.getString(R.string.notification_channel_accessibility_magnification), @@ -215,6 +223,8 @@ public static void createAll(Context context) { NotificationManager.IMPORTANCE_LOW); channelsList.add(abusiveBackgroundAppsChannel); + extraChannels(context, channelsList); + nm.createNotificationChannels(channelsList); // Delete channels created by previous Android versions that are no longer used. @@ -253,4 +263,37 @@ private static NotificationChannel newAccountChannel(Context context) { } private SystemNotificationChannels() {} + + public static final String MISSING_PERMISSION = "MISSING_PERMISSION"; + public static final String BACKGROUND_DEXOPT_PROGRESS = "BACKGROUND_DEXOPT"; + public static final String BACKGROUND_DEXOPT_COMPLETED = "BACKGROUND_DEXOPT_COMPLETED"; + public static final String EXPLOIT_PROTECTION = "EXPLOIT_PROTECTION"; + public static final String SYSTEM_JOURNAL = "SYSTEM_JOURNAL"; + + private static void extraChannels(Context ctx, List dest) { + channel(ctx, MISSING_PERMISSION, + R.string.notification_channel_missing_permission, + NotificationManager.IMPORTANCE_HIGH, true, dest); + channel(ctx, BACKGROUND_DEXOPT_PROGRESS, R.string.bg_dexopt_notif_ch_title, + NotificationManager.IMPORTANCE_DEFAULT, true, dest); + + channel(ctx, BACKGROUND_DEXOPT_COMPLETED, R.string.bg_dexopt_completed_notif_ch_title, + NotificationManager.IMPORTANCE_HIGH, true, dest); + + channel(ctx, EXPLOIT_PROTECTION, R.string.notif_channel_exploit_protection, + NotificationManager.IMPORTANCE_HIGH, true, dest); + + channel(ctx, SYSTEM_JOURNAL, R.string.notif_ch_system_journal, + NotificationManager.IMPORTANCE_HIGH, true, dest); + } + + private static NotificationChannel channel(Context ctx, String id, int nameRes, int importance, boolean silent, List dest) { + var c = new NotificationChannel(id, ctx.getText(nameRes), importance); + if (silent) { + c.setSound(null, null); + c.enableVibration(false); + } + dest.add(c); + return c; + } } diff --git a/core/java/com/android/internal/os/ExecInit.java b/core/java/com/android/internal/os/ExecInit.java new file mode 100644 index 0000000000000..5873a011ffa39 --- /dev/null +++ b/core/java/com/android/internal/os/ExecInit.java @@ -0,0 +1,149 @@ +package com.android.internal.os; + +import android.os.Process; +import android.os.Trace; +import android.system.ErrnoException; +import android.system.Os; +import android.system.OsConstants; +import android.util.Slog; +import android.util.TimingsTraceLog; +import dalvik.system.VMRuntime; + +/** + * Startup class for the process. + * @hide + */ +public class ExecInit { + /** + * Class not instantiable. + */ + private ExecInit() { + } + + /** + * The main function called when starting a runtime application. + * + * The first argument is the target SDK version for the app. + * + * The remaining arguments are passed to the runtime. + * + * @param args The command-line arguments. + */ + public static void main(String[] args) { + // Parse our mandatory argument. + int targetSdkVersion = Integer.parseInt(args[0], 10); + + // Parse the runtime_flags. + int runtimeFlags = Integer.parseInt(args[1], 10); + + // Mimic system Zygote preloading. + ZygoteInit.preload(new TimingsTraceLog("ExecInitTiming", + Trace.TRACE_TAG_DALVIK), false); + + // Launch the application. + String[] runtimeArgs = new String[args.length - 2]; + System.arraycopy(args, 2, runtimeArgs, 0, runtimeArgs.length); + Runnable r = execInit(targetSdkVersion, runtimeArgs); + + Zygote.nativeHandleRuntimeFlags(runtimeFlags); + + r.run(); + } + + /** + * Executes a runtime application with exec-based spawning. + * This method never returns. + * + * @param niceName The nice name for the application, or null if none. + * @param targetSdkVersion The target SDK version for the app. + * @param args Arguments for {@link RuntimeInit#main}. + */ + public static void execApplication(String niceName, int targetSdkVersion, + String instructionSet, int runtimeFlags, String[] args) { + int niceArgs = niceName == null ? 0 : 1; + int baseArgs = 6 + niceArgs; + String[] argv = new String[baseArgs + args.length]; + if (VMRuntime.is64BitInstructionSet(instructionSet)) { + argv[0] = "/system/bin/app_process64"; + } else { + argv[0] = "/system/bin/app_process32"; + } + argv[1] = "/system/bin"; + argv[2] = "--application"; + if (niceName != null) { + argv[3] = "--nice-name=" + niceName; + } + argv[3 + niceArgs] = "com.android.internal.os.ExecInit"; + argv[4 + niceArgs] = Integer.toString(targetSdkVersion); + argv[5 + niceArgs] = Integer.toString(runtimeFlags); + System.arraycopy(args, 0, argv, baseArgs, args.length); + + WrapperInit.preserveCapabilities(); + try { + if ((runtimeFlags & Zygote.DISABLE_HARDENED_MALLOC) != 0) { + // checked by bionic during early init + Os.setenv("DISABLE_HARDENED_MALLOC", "1", true); + } + + if ((runtimeFlags & Zygote.ENABLE_COMPAT_VA_39_BIT) != 0) { + final int FLAG_COMPAT_VA_39_BIT = 1 << 30; + + int errno = Zygote.execveatWrapper(-1, argv[0], argv, FLAG_COMPAT_VA_39_BIT); + + if (errno == OsConstants.EINVAL) { + // kernel doesn't support FLAG_COMPAT_VA_39_BIT, or a different error that will + // be thrown by execv() anyway + Os.execv(argv[0], argv); + } else { + throw new ErrnoException("execveat", errno); + } + } else { + Os.execv(argv[0], argv); + } + } catch (ErrnoException e) { + throw new RuntimeException(e); + } + } + + public static boolean isExecSpawned; + + /** + * The main function called when an application is started with exec-based spawning. + * + * When the app starts, the runtime starts {@link RuntimeInit#main} + * which calls {@link main} which then calls this method. + * So we don't need to call commonInit() here. + * + * @param targetSdkVersion target SDK version + * @param argv arg strings + */ + private static Runnable execInit(int targetSdkVersion, String[] argv) { + if (RuntimeInit.DEBUG) { + Slog.d(RuntimeInit.TAG, "RuntimeInit: Starting application from exec"); + } + + isExecSpawned = true; + + // Check whether the first argument is a "-cp" in argv, and assume the next argument is the + // classpath. If found, create a PathClassLoader and use it for applicationInit. + ClassLoader classLoader = null; + if (argv != null && argv.length > 2 && argv[0].equals("-cp")) { + classLoader = ZygoteInit.createPathClassLoader(argv[1], targetSdkVersion); + + // Install this classloader as the context classloader, too. + Thread.currentThread().setContextClassLoader(classLoader); + + // Remove the classpath from the arguments. + String removedArgs[] = new String[argv.length - 2]; + System.arraycopy(argv, 2, removedArgs, 0, argv.length - 2); + argv = removedArgs; + } + + // Perform the same initialization that would happen after the Zygote forks. + Zygote.nativePreApplicationInit(); + if (Process.isIsolated()) { + System.gc(); + } + return RuntimeInit.applicationInit(targetSdkVersion, /*disabledCompatChanges*/ null, argv, classLoader); + } +} diff --git a/core/java/com/android/internal/os/SELinuxFlags.java b/core/java/com/android/internal/os/SELinuxFlags.java new file mode 100644 index 0000000000000..d42a5af9339db --- /dev/null +++ b/core/java/com/android/internal/os/SELinuxFlags.java @@ -0,0 +1,144 @@ +package com.android.internal.os; + +import android.annotation.Nullable; +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; +import android.ext.BrowserUtils; +import android.ext.settings.app.AswDenyNativeDebug; +import android.ext.settings.app.AswRestrictMemoryDynCodeLoading; +import android.ext.settings.app.AswRestrictStorageDynCodeLoading; +import android.ext.settings.app.AswRestrictWebViewDynCodeLoading; +import android.os.Build; +import android.os.Process; +import android.os.SystemProperties; +import android.util.Log; + +import java.io.File; +import java.nio.file.Files; + +// Per-app per-user per-process SELinux flags which are passed to the kernel via the selinux_flags +// process attribute. +// +// This process attribute is writable only by zygote and webview_zygote SELinux domains, app_zygote +// domain is intentionally omitted since it can run untrusted app code. +public class SELinuxFlags { + public static final long DENY_EXECMEM = 1; + public static final long DENY_EXECMOD = (1 << 1); + public static final long DENY_EXECUTE_APPDOMAIN_TMPFS = (1 << 2); + public static final long DENY_EXECUTE_APP_DATA_FILE = (1 << 3); + public static final long DENY_EXECUTE_NO_TRANS_APP_DATA_FILE = (1 << 4); + public static final long DENY_EXECUTE_ASHMEM_DEVICE = (1 << 5); + public static final long DENY_EXECUTE_ASHMEM_LIBCUTILS_DEVICE = (1 << 6); + public static final long DENY_EXECUTE_PRIVAPP_DATA_FILE = (1 << 7); + public static final long DENY_PROCESS_PTRACE = (1 << 8); + + public static final long RESTRICT_MEMORY_DYN_CODE_EXEC_FLAGS = + DENY_EXECMEM + | DENY_EXECMOD + | DENY_EXECUTE_APPDOMAIN_TMPFS + | DENY_EXECUTE_ASHMEM_DEVICE + | DENY_EXECUTE_ASHMEM_LIBCUTILS_DEVICE; + + public static final long RESTRICT_STORAGE_DYN_CODE_EXEC_FLAGS = + DENY_EXECUTE_APP_DATA_FILE + | DENY_EXECUTE_NO_TRANS_APP_DATA_FILE + | DENY_EXECUTE_PRIVAPP_DATA_FILE; + + public static final long RESTRICT_DYN_CODE_EXEC_FLAGS = + RESTRICT_MEMORY_DYN_CODE_EXEC_FLAGS | RESTRICT_STORAGE_DYN_CODE_EXEC_FLAGS; + + public static final long MEMORY_DYN_CODE_EXEC_FLAGS_THAT_BREAK_WEB_JIT = DENY_EXECMEM; + + public static final long ALL_RESTRICTIONS = + RESTRICT_DYN_CODE_EXEC_FLAGS + | DENY_PROCESS_PTRACE + ; + + static long getForWebViewProcess(Context ctx, int userId, ApplicationInfo callerAppInfo, + GosPackageState callerPs) { + if (Build.IS_DEBUGGABLE || Build.IS_EMULATOR) { + if (!kernelSupportsSELinuxFlags()) { + return 0L; + } + } + + long res = ALL_RESTRICTIONS; + + if (!AswRestrictWebViewDynCodeLoading.I.get(ctx, userId, callerAppInfo, callerPs)) { + res &= ~MEMORY_DYN_CODE_EXEC_FLAGS_THAT_BREAK_WEB_JIT; + } + + return res; + } + + static long get(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, boolean isIsolatedProcess) { + if (Build.IS_DEBUGGABLE || Build.IS_EMULATOR) { + if (!kernelSupportsSELinuxFlags()) { + return 0L; + } + } + + long res = ALL_RESTRICTIONS; + + if (!AswDenyNativeDebug.I.get(ctx, userId, appInfo, ps)) { + res &= ~DENY_PROCESS_PTRACE; + } + + if (!AswRestrictMemoryDynCodeLoading.I.get(ctx, userId, appInfo, ps)) { + if (BrowserUtils.isSystemBrowser(ctx, appInfo.packageName)) { + // Chromium-based browsers use JIT only in isolated processes + if (isIsolatedProcess) { + res &= ~MEMORY_DYN_CODE_EXEC_FLAGS_THAT_BREAK_WEB_JIT; + } + } else { + res &= ~RESTRICT_MEMORY_DYN_CODE_EXEC_FLAGS; + } + } + + if (!AswRestrictStorageDynCodeLoading.I.get(ctx, userId, appInfo, ps)) { + res &= ~RESTRICT_STORAGE_DYN_CODE_EXEC_FLAGS; + } + + return res; + } + + private static String getSelfProcAttrPath() { + return "/proc/self/task/" + Process.myPid() + "/attr/selinux_flags"; + } + + public static boolean isExecmemBlocked() { + return (getFlags() & DENY_EXECMEM) != 0; + } + + private static long getFlags() { + String flagsPath = getSelfProcAttrPath(); + try { + byte[] val = Files.readAllBytes(new File(flagsPath).toPath()); + return Long.parseLong(new String(val), 16); + } catch (Exception e) { + Log.d("SELinux", "", e); + return 0L; + } + } + + public static boolean isSystemAppSepolicyWeakeningAllowed() { + if (Build.IS_DEBUGGABLE) { + return SystemProperties.getBoolean("persist.sys.allow_weakening_system_app_sepolicy", false); + } + return false; + } + + private static volatile Boolean kernelSupportsSELinuxFlagsCache; + + public static boolean kernelSupportsSELinuxFlags() { + Boolean cache = kernelSupportsSELinuxFlagsCache; + if (cache == null) { + var f = new File(getSelfProcAttrPath()); + cache = Boolean.valueOf(f.exists()); + kernelSupportsSELinuxFlagsCache = cache; + } + return cache.booleanValue(); + } +} diff --git a/core/java/com/android/internal/os/WrapperInit.java b/core/java/com/android/internal/os/WrapperInit.java index 6860759eea8ae..a2eef62f80be2 100644 --- a/core/java/com/android/internal/os/WrapperInit.java +++ b/core/java/com/android/internal/os/WrapperInit.java @@ -186,7 +186,7 @@ private static Runnable wrapperInit(int targetSdkVersion, String[] argv) { * This is acceptable here as failure will leave the wrapped app with strictly less * capabilities, which may make it crash, but not exceed its allowances. */ - private static void preserveCapabilities() { + public static void preserveCapabilities() { StructCapUserHeader header = new StructCapUserHeader( OsConstants._LINUX_CAPABILITY_VERSION_3, 0); StructCapUserData[] data; diff --git a/core/java/com/android/internal/os/Zygote.java b/core/java/com/android/internal/os/Zygote.java index cd17ed89058a1..bc00435b92784 100644 --- a/core/java/com/android/internal/os/Zygote.java +++ b/core/java/com/android/internal/os/Zygote.java @@ -20,12 +20,16 @@ import android.annotation.NonNull; import android.annotation.Nullable; +import android.app.AppGlobals; import android.compat.annotation.ChangeId; import android.compat.annotation.Disabled; import android.compat.annotation.EnabledAfter; import android.content.Context; import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; import android.content.pm.ProcessInfo; +import android.ext.settings.app.AppSwitch; +import android.ext.settings.app.AswUseMemoryTagging; import android.net.Credentials; import android.net.LocalServerSocket; import android.net.LocalSocket; @@ -37,6 +41,7 @@ import android.os.ServiceManager; import android.os.SystemProperties; import android.os.Trace; +import android.os.UserHandle; import android.provider.DeviceConfig; import android.system.ErrnoException; import android.system.Os; @@ -204,6 +209,15 @@ public final class Zygote { /** Load 4KB ELF files on 16KB device using appcompat mode */ public static final int ENABLE_PAGE_SIZE_APP_COMPAT = 1 << 26; + public static final int FORCIBLY_ENABLE_MEMORY_TAGGING = 1 << 28; + public static final int DISABLE_HARDENED_MALLOC = 1 << 29; + public static final int ENABLE_COMPAT_VA_39_BIT = 1 << 30; + + // make sure to update isSimpleForkCommand() in core/jni/com_android_internal_os_ZygoteCommandBuffer.cpp + // when adding new flags that depend on exec spawning + public static final int RUNTIME_FLAGS_DEPENDENT_ON_EXEC_SPAWNING = DISABLE_HARDENED_MALLOC | ENABLE_COMPAT_VA_39_BIT; + public static final int CUSTOM_RUNTIME_FLAGS = DISABLE_HARDENED_MALLOC | ENABLE_COMPAT_VA_39_BIT | FORCIBLY_ENABLE_MEMORY_TAGGING; + /** No external storage should be mounted. */ public static final int MOUNT_EXTERNAL_NONE = IVold.REMOUNT_MODE_NONE; /** Default external storage should be mounted. */ @@ -370,14 +384,14 @@ static int forkAndSpecialize(int uid, int gid, int[] gids, int runtimeFlags, int[] fdsToIgnore, boolean startChildZygote, String instructionSet, String appDataDir, boolean isTopApp, String[] pkgDataInfoList, String[] allowlistedDataInfoList, boolean bindMountAppDataDirs, boolean bindMountAppStorageDirs, - boolean bindMountSyspropOverrides) { + boolean bindMountSyspropOverrides, ZygoteExtraArgs extraArgs) { ZygoteHooks.preFork(); int pid = nativeForkAndSpecialize( uid, gid, gids, runtimeFlags, rlimits, mountExternal, seInfo, niceName, fdsToClose, fdsToIgnore, startChildZygote, instructionSet, appDataDir, isTopApp, pkgDataInfoList, allowlistedDataInfoList, bindMountAppDataDirs, - bindMountAppStorageDirs, bindMountSyspropOverrides); + bindMountAppStorageDirs, bindMountSyspropOverrides, extraArgs.makeJniLongArray()); if (pid == 0) { // Note that this event ends at the end of handleChildProc, Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "PostFork"); @@ -400,7 +414,7 @@ private static native int nativeForkAndSpecialize(int uid, int gid, int[] gids, int[] fdsToClose, int[] fdsToIgnore, boolean startChildZygote, String instructionSet, String appDataDir, boolean isTopApp, String[] pkgDataInfoList, String[] allowlistedDataInfoList, boolean bindMountAppDataDirs, - boolean bindMountAppStorageDirs, boolean bindMountSyspropOverrides); + boolean bindMountAppStorageDirs, boolean bindMountSyspropOverrides, long[] extraLongArgs); /** * Specialize an unspecialized app process. The current VM must have been started @@ -438,11 +452,12 @@ private static void specializeAppProcess(int uid, int gid, int[] gids, int runti boolean startChildZygote, String instructionSet, String appDataDir, boolean isTopApp, String[] pkgDataInfoList, String[] allowlistedDataInfoList, boolean bindMountAppDataDirs, boolean bindMountAppStorageDirs, - boolean bindMountSyspropOverrides) { + boolean bindMountSyspropOverrides, ZygoteExtraArgs extraArgs) { nativeSpecializeAppProcess(uid, gid, gids, runtimeFlags, rlimits, mountExternal, seInfo, niceName, startChildZygote, instructionSet, appDataDir, isTopApp, pkgDataInfoList, allowlistedDataInfoList, - bindMountAppDataDirs, bindMountAppStorageDirs, bindMountSyspropOverrides); + bindMountAppDataDirs, bindMountAppStorageDirs, bindMountSyspropOverrides, + extraArgs.makeJniLongArray()); // Note that this event ends at the end of handleChildProc. Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "PostFork"); @@ -468,7 +483,7 @@ private static native void nativeSpecializeAppProcess(int uid, int gid, int[] gi boolean startChildZygote, String instructionSet, String appDataDir, boolean isTopApp, String[] pkgDataInfoList, String[] allowlistedDataInfoList, boolean bindMountAppDataDirs, boolean bindMountAppStorageDirs, - boolean bindMountSyspropOverrides); + boolean bindMountSyspropOverrides, long[] extraLongArgs); /** * Called to do any initialization before starting an application. @@ -880,7 +895,8 @@ private static Runnable childMain(@Nullable ZygoteCommandBuffer argBuffer, args.mInstructionSet, args.mAppDataDir, args.mIsTopApp, args.mPkgDataInfoList, args.mAllowlistedDataInfoList, args.mBindMountAppDataDirs, args.mBindMountAppStorageDirs, - args.mBindMountSyspropOverrides); + args.mBindMountSyspropOverrides, + args.mExtraArgs); // While `specializeAppProcess` sets the thread name on the process's main thread, this // is distinct from the app process name which appears in stack traces, as the latter is @@ -1168,6 +1184,9 @@ private static void callPostForkSystemServerHooks(int runtimeFlags) { @SuppressWarnings("unused") private static void callPostForkChildHooks(int runtimeFlags, boolean isSystemServer, boolean isZygote, String instructionSet) { + runtimeFlags &= ~CUSTOM_RUNTIME_FLAGS; // a warning is printed when an unknown flag is passed + android.os.Binder.onZygotePostForkChild(); + android.os.BinderProxy.onZygotePostForkChild(); ZygoteHooks.postForkChild(runtimeFlags, isSystemServer, isZygote, instructionSet); } @@ -1369,6 +1388,36 @@ private static int decideTaggingLevel( // Take into account the hardware capabilities. if (nativeSupportsMemoryTagging()) { + Context ctx = AppGlobals.getInitialApplication(); + int userId = UserHandle.getUserId(info.uid); + GosPackageState ps = GosPackageState.get(info.packageName, userId); + + var si = new AppSwitch.StateInfo(); + if (AswUseMemoryTagging.I.get(ctx, userId, info, ps, si)) { + level = MEMORY_TAG_LEVEL_ASYNC; + + if (!si.isImmutable()) { + level |= FORCIBLY_ENABLE_MEMORY_TAGGING; + // This flag prevents the app from downgrading the heap memory tagging level and + // from intercepting MTE SIGSEGV signal (it's used for crashing the process + // after tag check failure). + // + // It's intended for apps that are not aware of memory tagging and do not attempt + // to actively disable or circumvent it. + // + // Apps might be incompatible with this approach for several reasons (the list + // is not complete): + // - app stores custom data in top pointer byte (it's used for pointer tagging) + // - app relies on a MTE SIGSEGV handler in its bundled runtime + // - app uses a custom memory allocator that ignores current memory tagging level + // - app manually disables tag mismatch checks + // + // '!si.isImmutable()' check ensures that this flag gets enabled only for those + // apps for which memory tagging can be manually disabled, i.e. third-party + // apps with custom native code that haven't opted-in to memory tagging + } + } + // MTE devices can not do TBI, because the Zygote process already has live MTE // allocations. Downgrade TBI to NONE. if (level == MEMORY_TAG_LEVEL_TBI) { @@ -1485,6 +1534,10 @@ public static int getMemorySafetyRuntimeFlagsForSecondaryZygote( getMemorySafetyRuntimeFlags( info, processInfo, null /*instructionSet*/, platformCompat); + // Memory tagging can be forcibly enabled only in immediate children of the primary zygote + // (which includes secondary zygotes) + runtimeFlags &= ~FORCIBLY_ENABLE_MEMORY_TAGGING; + // TBI ("fake" pointer tagging) in AppZygote is controlled by a separate compat feature. if ((runtimeFlags & MEMORY_TAG_LEVEL_MASK) == MEMORY_TAG_LEVEL_TBI && isCompatChangeEnabled( @@ -1498,4 +1551,15 @@ && isCompatChangeEnabled( } return runtimeFlags; } + + /** + * Used on GrapheneOS to set up runtime flags + * + * @param runtimeFlags flags to be passed to the native method + * + * @hide + */ + public static native void nativeHandleRuntimeFlags(int runtimeFlags); + + public static native int execveatWrapper(int dirFd, String filename, String[] argv, int flags); } diff --git a/core/java/com/android/internal/os/ZygoteArguments.java b/core/java/com/android/internal/os/ZygoteArguments.java index 27ce64e3ae29c..74fb1f60d0f4f 100644 --- a/core/java/com/android/internal/os/ZygoteArguments.java +++ b/core/java/com/android/internal/os/ZygoteArguments.java @@ -71,6 +71,11 @@ class ZygoteArguments { */ int mRuntimeFlags; + /** + * From --flat-extra-args + */ + ZygoteExtraArgs mExtraArgs = ZygoteExtraArgs.DEFAULT; + /** * From --mount-external */ @@ -303,6 +308,8 @@ private void parseArgs(ZygoteCommandBuffer args, int argCount) seenRuntimeArgs = true; } else if (arg.startsWith("--runtime-flags=")) { mRuntimeFlags = Integer.parseInt(getAssignmentValue(arg)); + } else if (arg.startsWith(ZygoteExtraArgs.PREFIX)) { + mExtraArgs = ZygoteExtraArgs.parse(getAssignmentValue(arg)); } else if (arg.startsWith("--seinfo=")) { if (mSeInfoSpecified) { throw new IllegalArgumentException( diff --git a/core/java/com/android/internal/os/ZygoteConnection.java b/core/java/com/android/internal/os/ZygoteConnection.java index 2eab0813956d4..060cd1fa3b470 100644 --- a/core/java/com/android/internal/os/ZygoteConnection.java +++ b/core/java/com/android/internal/os/ZygoteConnection.java @@ -25,6 +25,7 @@ import android.compat.annotation.UnsupportedAppUsage; import android.content.pm.ApplicationInfo; +import android.ext.settings.ExtSettings; import android.net.Credentials; import android.net.LocalSocket; import android.os.Parcel; @@ -242,8 +243,9 @@ Runnable processCommand(ZygoteServer zygoteServer, boolean multipleOK) { fdsToClose[1] = zygoteFd.getInt$(); } - if (parsedArgs.mInvokeWith != null || parsedArgs.mStartChildZygote - || !multipleOK || peer.getUid() != Process.SYSTEM_UID) { + if (parsedArgs.mInvokeWith != null || ExtSettings.EXEC_SPAWNING.get() || parsedArgs.mStartChildZygote + || !multipleOK || peer.getUid() != Process.SYSTEM_UID + || (parsedArgs.mRuntimeFlags & Zygote.RUNTIME_FLAGS_DEPENDENT_ON_EXEC_SPAWNING) != 0) { // Continue using old code for now. TODO: Handle these cases in the other path. pid = Zygote.forkAndSpecialize(parsedArgs.mUid, parsedArgs.mGid, parsedArgs.mGids, parsedArgs.mRuntimeFlags, rlimits, @@ -253,7 +255,7 @@ Runnable processCommand(ZygoteServer zygoteServer, boolean multipleOK) { parsedArgs.mIsTopApp, parsedArgs.mPkgDataInfoList, parsedArgs.mAllowlistedDataInfoList, parsedArgs.mBindMountAppDataDirs, parsedArgs.mBindMountAppStorageDirs, - parsedArgs.mBindMountSyspropOverrides); + parsedArgs.mBindMountSyspropOverrides, parsedArgs.mExtraArgs); try { if (pid == 0) { @@ -525,6 +527,20 @@ private Runnable handleChildProc(ZygoteArguments parsedArgs, throw new IllegalStateException("WrapperInit.execApplication unexpectedly returned"); } else { if (!isZygote) { + final int runtimeFlags = parsedArgs.mRuntimeFlags; + boolean useExecInit = + ((runtimeFlags & Zygote.RUNTIME_FLAGS_DEPENDENT_ON_EXEC_SPAWNING) != 0 + || ExtSettings.EXEC_SPAWNING.get()) + && + (runtimeFlags & ApplicationInfo.FLAG_DEBUGGABLE) == 0; + + if (useExecInit) { + ExecInit.execApplication(parsedArgs.mNiceName, parsedArgs.mTargetSdkVersion, + VMRuntime.getCurrentInstructionSet(), runtimeFlags, parsedArgs.mRemainingArgs); + + // Should not get here. + throw new IllegalStateException("ExecInit.execApplication unexpectedly returned"); + } return ZygoteInit.zygoteInit(parsedArgs.mTargetSdkVersion, parsedArgs.mDisabledCompatChanges, parsedArgs.mRemainingArgs, null /* classLoader */); diff --git a/core/java/com/android/internal/os/ZygoteExtraArgs.java b/core/java/com/android/internal/os/ZygoteExtraArgs.java new file mode 100644 index 0000000000000..755c44841115c --- /dev/null +++ b/core/java/com/android/internal/os/ZygoteExtraArgs.java @@ -0,0 +1,60 @@ +package com.android.internal.os; + +import android.annotation.Nullable; +import android.content.Context; +import android.content.pm.ApplicationInfo; +import android.content.pm.GosPackageState; + +// Extra args for: +// - children of main zygote{,64}, including AppZygotes, but excluding WebViewZygote +// - children of WebViewZygote +// +// AppZygote is treated differently from WebViewZygote because the former runs untrusted app code +// (see android.app.ZygotePreload). +public class ZygoteExtraArgs { + public final long selinuxFlags; + + public static final String PREFIX = "--flat-extra-args="; + + public static final ZygoteExtraArgs DEFAULT = new ZygoteExtraArgs(0L); + + public ZygoteExtraArgs(long selinuxFlags) { + this.selinuxFlags = selinuxFlags; + } + + private static final int IDX_SELINUX_FLAGS = 0; + private static final int ARR_LEN = 1; + private static final String SEPARATOR = "\t"; + + public static String createFlat(Context ctx, int userId, ApplicationInfo appInfo, + GosPackageState ps, + boolean isIsolatedProcess) { + String[] arr = new String[ARR_LEN]; + arr[IDX_SELINUX_FLAGS] = Long.toHexString( + SELinuxFlags.get(ctx, userId, appInfo, ps, isIsolatedProcess) + ); + return PREFIX + String.join(SEPARATOR, arr); + } + + public static String createFlatForWebviewProcess(Context ctx, int userId, + ApplicationInfo callerAppInfo, GosPackageState callerPs) { + String[] arr = new String[ARR_LEN]; + arr[IDX_SELINUX_FLAGS] = Long.toHexString( + SELinuxFlags.getForWebViewProcess(ctx, userId, callerAppInfo, callerPs) + ); + return PREFIX + String.join(SEPARATOR, arr); + } + + static ZygoteExtraArgs parse(String flat) { + String[] arr = flat.split(SEPARATOR); + long selinuxFlags = Long.parseLong(arr[IDX_SELINUX_FLAGS], 16); + return new ZygoteExtraArgs(selinuxFlags); + } + + // keep in sync with ExtraArgs struct in core/jni/com_android_internal_os_Zygote.cpp + public long[] makeJniLongArray() { + long[] res = new long[ARR_LEN]; + res[IDX_SELINUX_FLAGS] = selinuxFlags; + return res; + } +} diff --git a/core/java/com/android/internal/os/ZygoteInit.java b/core/java/com/android/internal/os/ZygoteInit.java index e60879e02b4b4..a92d98b10c833 100644 --- a/core/java/com/android/internal/os/ZygoteInit.java +++ b/core/java/com/android/internal/os/ZygoteInit.java @@ -125,23 +125,31 @@ public class ZygoteInit { */ private static ClassLoader sCachedSystemServerClassLoader = null; - static void preload(TimingsTraceLog bootTimingsTraceLog) { + static void preload(TimingsTraceLog bootTimingsTraceLog, boolean fullPreload) { Log.d(TAG, "begin preload"); bootTimingsTraceLog.traceBegin("BeginPreload"); - beginPreload(); + beginPreload(fullPreload); bootTimingsTraceLog.traceEnd(); // BeginPreload - bootTimingsTraceLog.traceBegin("PreloadClasses"); - preloadClasses(); - bootTimingsTraceLog.traceEnd(); // PreloadClasses - bootTimingsTraceLog.traceBegin("CacheNonBootClasspathClassLoaders"); - cacheNonBootClasspathClassLoaders(); - bootTimingsTraceLog.traceEnd(); // CacheNonBootClasspathClassLoaders - bootTimingsTraceLog.traceBegin("PreloadResources"); - Resources.preloadResources(); - bootTimingsTraceLog.traceEnd(); // PreloadResources - Trace.traceBegin(Trace.TRACE_TAG_DALVIK, "PreloadAppProcessHALs"); - nativePreloadAppProcessHALs(); - Trace.traceEnd(Trace.TRACE_TAG_DALVIK); + if (fullPreload) { + bootTimingsTraceLog.traceBegin("PreloadClasses"); + preloadClasses(); + bootTimingsTraceLog.traceEnd(); // PreloadClasses + } + if (fullPreload) { + bootTimingsTraceLog.traceBegin("CacheNonBootClasspathClassLoaders"); + cacheNonBootClasspathClassLoaders(); + bootTimingsTraceLog.traceEnd(); // CacheNonBootClasspathClassLoaders + } + if (fullPreload) { + bootTimingsTraceLog.traceBegin("PreloadResources"); + Resources.preloadResources(); + bootTimingsTraceLog.traceEnd(); // PreloadResources + } + if (fullPreload) { + Trace.traceBegin(Trace.TRACE_TAG_DALVIK, "PreloadAppProcessHALs"); + nativePreloadAppProcessHALs(); + Trace.traceEnd(Trace.TRACE_TAG_DALVIK); + } Trace.traceBegin(Trace.TRACE_TAG_DALVIK, "PreloadGraphicsDriver"); maybePreloadGraphicsDriver(); Trace.traceEnd(Trace.TRACE_TAG_DALVIK); @@ -150,7 +158,7 @@ static void preload(TimingsTraceLog bootTimingsTraceLog) { // TODO: remove the try/catch and the flag read as soon as the flag is ramped and 25Q2 // starts building from source. - if (preloadHttpengineInZygote()) { + if (fullPreload && preloadHttpengineInZygote()) { try { HttpEngine.preload(); } catch (NoSuchMethodError e){ @@ -164,16 +172,22 @@ static void preload(TimingsTraceLog bootTimingsTraceLog) { Log.d(TAG, "HttpEngine.preload() threw " + e); } } - // Ask the WebViewFactory to do any initialization that must run in the zygote process, - // for memory sharing purposes. - WebViewFactory.prepareWebViewInZygote(); - endPreload(); - warmUpJcaProviders(); + if (fullPreload) { + // Ask the WebViewFactory to do any initialization that must run in the zygote process, + // for memory sharing purposes. + WebViewFactory.prepareWebViewInZygote(); + } + endPreload(fullPreload); + warmUpJcaProviders(fullPreload); Log.d(TAG, "end preload"); sPreloadComplete = true; } + static void preload(TimingsTraceLog bootTimingsTraceLog) { + preload(bootTimingsTraceLog, true); + } + static void lazyPreload() { Preconditions.checkState(!sPreloadComplete); Log.i(TAG, "Lazily preloading resources."); @@ -181,14 +195,14 @@ static void lazyPreload() { preload(new TimingsTraceLog("ZygoteInitTiming_lazy", Trace.TRACE_TAG_DALVIK)); } - private static void beginPreload() { + private static void beginPreload(boolean fullPreload) { Log.i(TAG, "Calling ZygoteHooks.beginPreload()"); - ZygoteHooks.onBeginPreload(); + ZygoteHooks.onBeginPreload(fullPreload); } - private static void endPreload() { - ZygoteHooks.onEndPreload(); + private static void endPreload(boolean fullPreload) { + ZygoteHooks.onEndPreload(fullPreload); Log.i(TAG, "Called ZygoteHooks.endPreload()"); } @@ -233,7 +247,7 @@ private static void preloadTextResources() { * By doing it here we avoid that each app does it when requesting a service from the provider * for the first time. */ - private static void warmUpJcaProviders() { + private static void warmUpJcaProviders(boolean fullPreload) { long startTime = SystemClock.uptimeMillis(); Trace.traceBegin( Trace.TRACE_TAG_DALVIK, "Starting installation of AndroidKeyStoreProvider"); @@ -243,15 +257,17 @@ private static void warmUpJcaProviders() { + (SystemClock.uptimeMillis() - startTime) + "ms."); Trace.traceEnd(Trace.TRACE_TAG_DALVIK); - startTime = SystemClock.uptimeMillis(); - Trace.traceBegin( - Trace.TRACE_TAG_DALVIK, "Starting warm up of JCA providers"); - for (Provider p : Security.getProviders()) { - p.warmUpServiceProvision(); + if (fullPreload) { + startTime = SystemClock.uptimeMillis(); + Trace.traceBegin( + Trace.TRACE_TAG_DALVIK, "Starting warm up of JCA providers"); + for (Provider p : Security.getProviders()) { + p.warmUpServiceProvision(); + } + Log.i(TAG, "Warmed up JCA providers in " + + (SystemClock.uptimeMillis() - startTime) + "ms."); + Trace.traceEnd(Trace.TRACE_TAG_DALVIK); } - Log.i(TAG, "Warmed up JCA providers in " - + (SystemClock.uptimeMillis() - startTime) + "ms."); - Trace.traceEnd(Trace.TRACE_TAG_DALVIK); } private static boolean isExperimentEnabled(String experiment) { diff --git a/core/java/com/android/internal/pm/parsing/PackageParser2.java b/core/java/com/android/internal/pm/parsing/PackageParser2.java index 2c546728d7125..78439ce4c6292 100644 --- a/core/java/com/android/internal/pm/parsing/PackageParser2.java +++ b/core/java/com/android/internal/pm/parsing/PackageParser2.java @@ -192,8 +192,10 @@ public abstract static class Callback implements ParsingPackageUtils.Callback { public final ParsingPackage startParsingPackage(@NonNull String packageName, @NonNull String baseCodePath, @NonNull String codePath, @NonNull TypedArray manifestArray, boolean isCoreApp) { - return PackageImpl.forParsing(packageName, baseCodePath, codePath, manifestArray, + var res = PackageImpl.forParsing(packageName, baseCodePath, codePath, manifestArray, isCoreApp, Callback.this); + res.initPackageParsingHooks(); + return res; } /** diff --git a/core/java/com/android/internal/pm/parsing/pkg/PackageExtDefault.java b/core/java/com/android/internal/pm/parsing/pkg/PackageExtDefault.java new file mode 100644 index 0000000000000..09ddc8f0ec074 --- /dev/null +++ b/core/java/com/android/internal/pm/parsing/pkg/PackageExtDefault.java @@ -0,0 +1,13 @@ +package com.android.internal.pm.parsing.pkg; + +import android.ext.AppInfoExt; + +/** @hide */ +public class PackageExtDefault implements PackageExtIface { + public static final PackageExtDefault INSTANCE = new PackageExtDefault(); + + @Override + public AppInfoExt toAppInfoExt(PackageImpl pkg) { + return AppInfoExt.DEFAULT; + } +} diff --git a/core/java/com/android/internal/pm/parsing/pkg/PackageExtIface.java b/core/java/com/android/internal/pm/parsing/pkg/PackageExtIface.java new file mode 100644 index 0000000000000..c09bd69b01d65 --- /dev/null +++ b/core/java/com/android/internal/pm/parsing/pkg/PackageExtIface.java @@ -0,0 +1,8 @@ +package com.android.internal.pm.parsing.pkg; + +import android.ext.AppInfoExt; + +/** @hide */ +public interface PackageExtIface { + AppInfoExt toAppInfoExt(PackageImpl pkg); +} diff --git a/core/java/com/android/internal/pm/parsing/pkg/PackageImpl.java b/core/java/com/android/internal/pm/parsing/pkg/PackageImpl.java index 5ec5762c05332..c56fa49b087c2 100644 --- a/core/java/com/android/internal/pm/parsing/pkg/PackageImpl.java +++ b/core/java/com/android/internal/pm/parsing/pkg/PackageImpl.java @@ -77,6 +77,7 @@ import com.android.internal.pm.pkg.component.ParsedServiceImpl; import com.android.internal.pm.pkg.component.ParsedUsesPermission; import com.android.internal.pm.pkg.component.ParsedUsesPermissionImpl; +import com.android.internal.pm.pkg.parsing.PackageParsingHooks; import com.android.internal.pm.pkg.parsing.ParsingPackage; import com.android.internal.pm.pkg.parsing.ParsingPackageHidden; import com.android.internal.pm.pkg.parsing.ParsingPackageUtils; @@ -99,8 +100,10 @@ import java.util.Comparator; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.UUID; +import java.util.function.Function; /** * Extensions to {@link PackageImpl} including fields/state contained in the system server @@ -640,6 +643,10 @@ public PackageImpl addProtectedBroadcast(String protectedBroadcast) { @Override public PackageImpl addProvider(ParsedProvider parsedProvider) { + if (getPackageParsingHooks().shouldSkipProvider(parsedProvider)) { + return this; + } + this.providers = CollectionUtils.add(this.providers, parsedProvider); addMimeGroupsFromComponent(parsedProvider); return this; @@ -2632,6 +2639,7 @@ public PackageImpl sortServices() { public ApplicationInfo toAppInfoWithoutStateWithoutFlags() { ApplicationInfo appInfo = new ApplicationInfo(); + appInfo.setExt(ext.toAppInfoExt(this)); // Lines that are commented below are state related and should not be assigned here. // They are left in as placeholders, since there is no good backwards compatible way to @@ -2793,6 +2801,7 @@ public PackageImpl(@NonNull String packageName, @NonNull String baseApkPath, @Override public PackageImpl hideAsParsed() { assignDerivedFields(); + assignDerivedFields2(); return this; } @@ -2991,9 +3000,42 @@ public PackageImpl setPackageName(@NonNull String packageName) { ComponentMutateUtils.setPackageName(receivers.get(index), this.packageName); } + final String legacyVanadiumPkgName = "org.chromium.chrome"; + final String realVanadiumPkgName = "app.vanadium.browser"; + + final boolean isLegacyVanadiumPkgName = legacyVanadiumPkgName.equals(packageName); + + if (isLegacyVanadiumPkgName) { + if (!getManifestPackageName().equals(realVanadiumPkgName)) { + throw new IllegalStateException("unexpected manifestPackageName: " + + "expected " + realVanadiumPkgName + ", got " + getManifestPackageName()); + } + } + int providersSize = providers.size(); for (int index = 0; index < providersSize; index++) { - ComponentMutateUtils.setPackageName(providers.get(index), this.packageName); + ParsedProvider provider = providers.get(index); + ComponentMutateUtils.setPackageName(provider, this.packageName); + + if (isLegacyVanadiumPkgName) { + // method name "getAuthority" is misleading: it may return multiple + // ';'-separated authorities + final String separator = ";"; + String[] authorities = provider.getAuthority().split(separator); + + for (int i = 0; i < authorities.length; ++i) { + String authority = authorities[i]; + if (!authority.startsWith(realVanadiumPkgName)) { + // all Chromium ContentProvider authorities are prefixed with manifest package name + throw new IllegalStateException("unexpected Vanadium ContentProvider authority " + authority); + } + + authorities[i] = authority.replaceFirst(realVanadiumPkgName, legacyVanadiumPkgName); + } + + String renamedAuthorities = String.join(separator, authorities); + ComponentMutateUtils.setAuthority(provider, renamedAuthorities); + } } int servicesSize = services.size(); @@ -3938,4 +3980,35 @@ private static class Booleans2 { private static final long APEX = 1L << 1; private static final long UPDATABLE_SYSTEM = 1L << 2; } + + private PackageParsingHooks packageParsingHooks = PackageParsingHooks.DEFAULT; + + public static Function packageParsingHooksSupplier; + + @Override + public void initPackageParsingHooks() { + var supplier = packageParsingHooksSupplier; + packageParsingHooks = supplier != null ? supplier.apply(getPackageName()) : PackageParsingHooks.DEFAULT; + } + + @Override + public PackageParsingHooks getPackageParsingHooks() { + return packageParsingHooks; + } + + private PackageExtIface ext = PackageExtDefault.INSTANCE; + + @Override + public void setPackageExt(@Nullable PackageExtIface ext) { + this.ext = ext; + } + + @Nullable + @Override + public PackageExtIface ext() { + return ext; + } + + public long cachedCompatConfigVersionCode; + public Object cachedCompatConfig; } diff --git a/core/java/com/android/internal/pm/pkg/component/ParsedServiceUtils.java b/core/java/com/android/internal/pm/pkg/component/ParsedServiceUtils.java index c469a7a5bc057..43d4b4bd0cbee 100644 --- a/core/java/com/android/internal/pm/pkg/component/ParsedServiceUtils.java +++ b/core/java/com/android/internal/pm/pkg/component/ParsedServiceUtils.java @@ -191,6 +191,8 @@ public static ParseResult parseService(String[] separateProcesses service.setExported(hasIntentFilters); } + pkg.getPackageParsingHooks().amendParsedService(service); + return input.success(service); } } diff --git a/core/java/com/android/internal/pm/pkg/parsing/PackageParsingHooks.java b/core/java/com/android/internal/pm/pkg/parsing/PackageParsingHooks.java new file mode 100644 index 0000000000000..6b53358d1f15e --- /dev/null +++ b/core/java/com/android/internal/pm/pkg/parsing/PackageParsingHooks.java @@ -0,0 +1,70 @@ +package com.android.internal.pm.pkg.parsing; + +import android.annotation.Nullable; +import android.content.pm.PackageManager; + +import com.android.internal.pm.pkg.component.ParsedPermission; +import com.android.internal.pm.pkg.component.ParsedProvider; +import com.android.internal.pm.pkg.component.ParsedService; +import com.android.internal.pm.pkg.component.ParsedServiceImpl; +import com.android.internal.pm.pkg.component.ParsedUsesPermission; +import com.android.internal.pm.pkg.component.ParsedUsesPermissionImpl; + +import java.util.ArrayList; +import java.util.List; + +public class PackageParsingHooks { + public static final PackageParsingHooks DEFAULT = new PackageParsingHooks(); + + public boolean shouldSkipPermissionDefinition(ParsedPermission p) { + return false; + } + + public boolean shouldSkipUsesPermission(ParsedUsesPermission p) { + return false; + } + + public boolean shouldSkipProvider(ParsedProvider p) { + return false; + } + + @Nullable + public List addUsesPermissions() { + return null; + } + + protected static List createUsesPerms(String... perms) { + int l = perms.length; + var res = new ArrayList(l); + for (int i = 0; i < l; ++i) { + res.add(new ParsedUsesPermissionImpl(perms[i], 0)); + } + return res; + } + + public void amendParsedService(ParsedServiceImpl s) { + + } + + public List addServices(ParsingPackage pkg) { + return null; + } + + // supported return values: + // PackageManager.COMPONENT_ENABLED_STATE_DISABLED + // PackageManager.COMPONENT_ENABLED_STATE_ENABLED + // PackageManager.COMPONENT_ENABLED_STATE_DEFAULT (skip override) + public int overrideDefaultPackageEnabledState() { + return PackageManager.COMPONENT_ENABLED_STATE_DEFAULT; + } + + public static ParsedServiceImpl createService(ParsingPackage pkg, String className) { + var s = new ParsedServiceImpl(); + s.setPackageName(pkg.getPackageName()); + s.setName(className); + s.setProcessName(pkg.getProcessName()); + s.setDirectBootAware(pkg.isPartiallyDirectBootAware()); + s.setExported(true); + return s; + } +} diff --git a/core/java/com/android/internal/pm/pkg/parsing/ParsingPackage.java b/core/java/com/android/internal/pm/pkg/parsing/ParsingPackage.java index 5062d58d4dca6..50d20dddea279 100644 --- a/core/java/com/android/internal/pm/pkg/parsing/ParsingPackage.java +++ b/core/java/com/android/internal/pm/pkg/parsing/ParsingPackage.java @@ -31,6 +31,7 @@ import android.util.SparseArray; import android.util.SparseIntArray; +import com.android.internal.pm.parsing.pkg.PackageExtIface; import com.android.internal.pm.parsing.pkg.ParsedPackage; import com.android.internal.pm.pkg.component.ParsedActivity; import com.android.internal.pm.pkg.component.ParsedApexSystemService; @@ -578,4 +579,16 @@ ParsingPackage setResetEnabledSettingsOnAppDataCleared( * Returns the intent matching flags. */ int getIntentMatchingFlags(); + + boolean isPartiallyDirectBootAware(); + + void initPackageParsingHooks(); + + default PackageParsingHooks getPackageParsingHooks() { + return PackageParsingHooks.DEFAULT; + } + + void setPackageExt(@Nullable PackageExtIface ext); + + boolean isDeclaredHavingCode(); } diff --git a/core/java/com/android/internal/pm/pkg/parsing/ParsingPackageUtils.java b/core/java/com/android/internal/pm/pkg/parsing/ParsingPackageUtils.java index c160b42f8b6bb..36d5ec7fcf23e 100644 --- a/core/java/com/android/internal/pm/pkg/parsing/ParsingPackageUtils.java +++ b/core/java/com/android/internal/pm/pkg/parsing/ParsingPackageUtils.java @@ -65,6 +65,7 @@ import android.content.res.Resources; import android.content.res.TypedArray; import android.content.res.XmlResourceParser; +import android.ext.PackageId; import android.net.Uri; import android.os.Build; import android.os.Bundle; @@ -145,6 +146,7 @@ import java.util.Objects; import java.util.Set; import java.util.StringTokenizer; +import java.util.function.Function; /** * TODO(b/135203078): Differentiate between parse_ methods and some add_ method for whether it @@ -643,9 +645,22 @@ private ParseResult parseBaseApk(ParseInput input, File apkFile, pkg.setVolumeUuid(volumeUuid); + PackageExtInitIface pkgExtInit = null; + PackageExtInitSupplier pkgExtInitSupplier = packageExtInitSupplier; + if (pkgExtInitSupplier != null) { + pkgExtInit = pkgExtInitSupplier.invoke(input, pkg, (flags & PARSE_IS_SYSTEM_DIR) != 0); + if (pkgExtInit != null) { + pkgExtInit.run(); + } + } + if ((flags & PARSE_COLLECT_CERTIFICATES) != 0) { - final ParseResult ret = - getSigningDetails(input, pkg, false /*skipVerify*/); + // skip reparsing certificates if they were already parsed by PackageExtInit + ParseResult ret = pkgExtInit != null ? + pkgExtInit.getSigningDetailsParseResult() : null; + if (ret == null) { + ret = parseSigningDetails(input, pkg); + } if (ret.isError()) { return input.error(ret); } @@ -661,6 +676,22 @@ private ParseResult parseBaseApk(ParseInput input, File apkFile, } } + public interface PackageExtInitSupplier { + PackageExtInitIface invoke(ParseInput input, ParsingPackage pkg, boolean isSystem); + } + + @Nullable + public static PackageExtInitSupplier packageExtInitSupplier; + + public interface PackageExtInitIface { + void run(); + ParseResult getSigningDetailsParseResult(); + } + + public static ParseResult parseSigningDetails(ParseInput input, ParsingPackage pkg) { + return getSigningDetails(input, pkg, false /*skipVerify*/); + } + private ParseResult parseSplitApk(ParseInput input, ParsingPackage pkg, int splitIndex, AssetManager assets, int flags) { final String apkPath = pkg.getSplitCodePaths()[splitIndex]; @@ -1056,6 +1087,31 @@ private ParseResult validateBaseApkTags(ParseInput input, Parsin ); } + List usesPermsList = pkg.getUsesPermissions(); + var usesPerms = new java.util.HashSet(usesPermsList.size() + 10); + for (ParsedUsesPermission p : usesPermsList) { + usesPerms.add(p.getName()); + } + + List extraUsesPerms = pkg.getPackageParsingHooks().addUsesPermissions(); + + if (extraUsesPerms != null) { + for (ParsedUsesPermission p : extraUsesPerms) { + String name = p.getName(); + if (!usesPerms.add(name)) { + Slog.w(TAG, "PackageParsingHooks.addUsesPermissions() " + + "tried to add duplicate uses-permission " + name + + " to pkg " + pkg.getPackageName()); + continue; + } + pkg.addUsesPermission(p); + } + } + + if (pkg.isDeclaredHavingCode() && usesPerms.add(android.Manifest.permission.OTHER_SENSORS)) { + pkg.addImplicitPermission(android.Manifest.permission.OTHER_SENSORS); + } + convertCompatPermissions(pkg); convertSplitPermissions(pkg); @@ -1165,6 +1221,12 @@ private static ParseResult parseSharedUser(ParseInput input, if (PackageManager.ENABLE_SHARED_UID_MIGRATION) { int max = anInteger(0, R.styleable.AndroidManifest_sharedUserMaxSdkVersion, sa); leaving = (max != 0) && (max < Build.VERSION.RESOURCES_SDK_INT); + + if (android.ext.PackageId.GMS_CORE_NAME.equals(pkg.getPackageName())) { + // Ignore sharedUid for fresh installs of GmsCore. On existing installs, sharedUid + // is needed for access to GSF. + leaving = true; + } } return input.success(pkg @@ -1348,7 +1410,9 @@ private static ParseResult parsePermission(ParseInput input, } ParsedPermission permission = result.getResult(); if (permission != null) { - pkg.addPermission(permission); + if (!pkg.getPackageParsingHooks().shouldSkipPermissionDefinition(permission)) { + pkg.addPermission(permission); + } } return input.success(pkg); } @@ -1503,7 +1567,10 @@ private ParseResult parseUsesPermission(ParseInput input, } if (!found) { - pkg.addUsesPermission(new ParsedUsesPermissionImpl(name, usesPermissionFlags)); + var p = new ParsedUsesPermissionImpl(name, usesPermissionFlags); + if (!pkg.getPackageParsingHooks().shouldSkipUsesPermission(p)) { + pkg.addUsesPermission(p); + } } return success; } finally { @@ -2376,6 +2443,22 @@ private ParseResult parseBaseApplication(ParseInput input, if (hasReceiverOrder) { pkg.sortReceivers(); } + + List extraServices = pkg.getPackageParsingHooks().addServices(pkg); + if (extraServices != null) { + for (var s : extraServices) { + hasServiceOrder |= (s.getOrder() != 0); + pkg.addService(s); + } + } + + if (gmsCompatClientServiceSupplier != null) { + ParsedService gmsCompatClientSvc = gmsCompatClientServiceSupplier.apply(pkg); + if (gmsCompatClientSvc != null) { + pkg.addService(gmsCompatClientSvc); + } + } + if (hasServiceOrder) { pkg.sortServices(); } @@ -2385,6 +2468,8 @@ private ParseResult parseBaseApplication(ParseInput input, return input.success(pkg); } + public static Function gmsCompatClientServiceSupplier; + // Must be run after the entire {@link ApplicationInfo} has been fully processed and after // every activity info has had a chance to set it from its attributes. private void afterParseBaseApplication(ParsingPackage pkg) { @@ -2482,6 +2567,20 @@ private void parseBaseAppBasicFlags(ParsingPackage pkg, TypedArray sa) { // CHECKSTYLE:on //@formatter:on + + var hooks = pkg.getPackageParsingHooks(); + int enabledOverride = hooks.overrideDefaultPackageEnabledState(); + if (enabledOverride == PackageManager.COMPONENT_ENABLED_STATE_DISABLED) { + pkg.setEnabled(false); + } else if (enabledOverride == PackageManager.COMPONENT_ENABLED_STATE_ENABLED) { + pkg.setEnabled(true); + } + + if (PackageId.GSF_NAME.equals(pkg.getPackageName())) { + // GSF is a hasCode=false package on GMS Android 15+. GrapheneOS doesn't include GSF as a + // preinstalled app, so pre-35 GSF remains after update from pre-Android 15. + pkg.setDeclaredHavingCode(false); + } } /** diff --git a/core/java/com/android/internal/util/GoogleCameraUtils.java b/core/java/com/android/internal/util/GoogleCameraUtils.java new file mode 100644 index 0000000000000..ff8dfcab960c5 --- /dev/null +++ b/core/java/com/android/internal/util/GoogleCameraUtils.java @@ -0,0 +1,16 @@ +package com.android.internal.util; + +import android.content.Context; +import android.content.res.Resources; +import android.ext.PackageId; + +import com.android.internal.R; + +public class GoogleCameraUtils { + public static final String PACKAGE_NAME = PackageId.G_CAMERA_NAME; + + public static boolean isCustomSeInfoNeededForAccessToAccelerators(Context ctx) { + Resources res = ctx.getResources(); + return res.getBoolean(R.bool.config_GoogleCamera_needs_seinfo_for_access_to_accelerators); + } +} diff --git a/core/java/com/android/internal/widget/ILockSettings.aidl b/core/java/com/android/internal/widget/ILockSettings.aidl index 511c6802677e1..17932d74a501f 100644 --- a/core/java/com/android/internal/widget/ILockSettings.aidl +++ b/core/java/com/android/internal/widget/ILockSettings.aidl @@ -28,6 +28,7 @@ import android.security.keystore.recovery.RecoveryCertPath; import com.android.internal.widget.ICheckCredentialProgressCallback; import com.android.internal.widget.IWeakEscrowTokenActivatedListener; import com.android.internal.widget.IWeakEscrowTokenRemovedListener; +import com.android.internal.widget.LockDomain; import com.android.internal.widget.LockscreenCredential; import com.android.internal.widget.VerifyCredentialResponse; @@ -47,17 +48,17 @@ interface ILockSettings { long getLong(in String key, in long defaultValue, in int userId); @UnsupportedAppUsage String getString(in String key, in String defaultValue, in int userId); - boolean setLockCredential(in LockscreenCredential credential, in LockscreenCredential savedCredential, int userId); + boolean setLockCredential(in LockscreenCredential credential, in LockscreenCredential savedCredential, in LockDomain lockDomain, int userId); void resetKeyStore(int userId); - VerifyCredentialResponse checkCredential(in LockscreenCredential credential, int userId, + VerifyCredentialResponse checkCredential(in LockscreenCredential credential, in LockDomain lockDomain, int userId, in ICheckCredentialProgressCallback progressCallback); - VerifyCredentialResponse verifyCredential(in LockscreenCredential credential, int userId, int flags); + VerifyCredentialResponse verifyCredential(in LockscreenCredential credential, in LockDomain lockDomain, int userId, int flags); VerifyCredentialResponse verifyTiedProfileChallenge(in LockscreenCredential credential, int userId, int flags); VerifyCredentialResponse verifyGatekeeperPasswordHandle(long gatekeeperPasswordHandle, long challenge, int userId); void removeGatekeeperPasswordHandle(long gatekeeperPasswordHandle); - int getCredentialType(int userId); - int getPinLength(int userId); - boolean refreshStoredPinLength(int userId); + int getCredentialType(int userId, in LockDomain lockDomain); + int getPinLength(int userId, in LockDomain lockDomain); + boolean refreshStoredPinLength(int userId, in LockDomain lockDomain); byte[] getHashFactor(in LockscreenCredential currentCredential, int userId); void setSeparateProfileChallengeEnabled(int userId, boolean enabled, in LockscreenCredential managedUserPassword); boolean getSeparateProfileChallengeEnabled(int userId); @@ -110,4 +111,6 @@ interface ILockSettings { boolean isWeakEscrowTokenValid(long handle, in byte[] token, int userId); void unlockUserKeyIfUnsecured(int userId); boolean writeRepairModeCredential(int userId); + void setDuressCredentials(in LockscreenCredential ownerCredential, in LockscreenCredential duressPin, in LockscreenCredential duressPassword); + boolean hasDuressCredentials(in LockscreenCredential ownerCredential); } diff --git a/core/java/com/android/internal/widget/LockDomain.aidl b/core/java/com/android/internal/widget/LockDomain.aidl new file mode 100644 index 0000000000000..6ee4d59134263 --- /dev/null +++ b/core/java/com/android/internal/widget/LockDomain.aidl @@ -0,0 +1,3 @@ +package com.android.internal.widget; + +parcelable LockDomain; diff --git a/core/java/com/android/internal/widget/LockDomain.java b/core/java/com/android/internal/widget/LockDomain.java new file mode 100644 index 0000000000000..46f7e9f02e95f --- /dev/null +++ b/core/java/com/android/internal/widget/LockDomain.java @@ -0,0 +1,40 @@ +package com.android.internal.widget; + +import android.os.Parcel; +import android.os.Parcelable; + +/** + * Using this type as an argument for methods that require secondary handling is safer and more + * future proof given that we rebase on top of upstream. + * + * Consider that if we add secondary handling to a method by overloading with a boolean + * isPrimary, then upstream could add a conflicting overload. + * + * Also consider that if we have foo(boolean) and its overload foo(boolean, boolean), adding an + * additional boolean argument, isPrimary, to both could result in future callers silently calling + * the wrong method. + */ +public enum LockDomain implements Parcelable { + Primary, Secondary; + + @Override + public int describeContents() { + return 0; + } + + @Override + public void writeToParcel(@androidx.annotation.NonNull Parcel dest, int flags) { + dest.writeInt(ordinal()); + } + + public static final Parcelable.Creator CREATOR + = new Parcelable.Creator<>() { + public LockDomain createFromParcel(Parcel in) { + return LockDomain.values()[in.readInt()]; + } + + public LockDomain[] newArray(int size) { + return new LockDomain[size]; + } + }; +} \ No newline at end of file diff --git a/core/java/com/android/internal/widget/LockPatternChecker.java b/core/java/com/android/internal/widget/LockPatternChecker.java index 5adbc583140fe..2757dab83a05a 100644 --- a/core/java/com/android/internal/widget/LockPatternChecker.java +++ b/core/java/com/android/internal/widget/LockPatternChecker.java @@ -1,5 +1,7 @@ package com.android.internal.widget; +import static com.android.internal.widget.LockDomain.Primary; + import android.annotation.NonNull; import android.os.AsyncTask; @@ -87,6 +89,13 @@ protected void onCancelled() { return task; } + public static AsyncTask checkCredential(LockPatternUtils utils, + final LockscreenCredential credential, + final int userId, + final OnCheckCallback callback) { + return checkCredential(utils, Primary, credential, userId, callback); + } + /** * Checks a lockscreen credential asynchronously. * @@ -96,6 +105,7 @@ protected void onCancelled() { * @param callback The callback to be invoked with the check result. */ public static AsyncTask checkCredential(final LockPatternUtils utils, + final LockDomain lockDomain, final LockscreenCredential credential, final int userId, final OnCheckCallback callback) { @@ -107,7 +117,8 @@ protected void onCancelled() { @Override protected Boolean doInBackground(Void... args) { try { - return utils.checkCredential(credentialCopy, userId, callback::onEarlyMatched); + return utils.checkCredential(credentialCopy, lockDomain, userId, + callback::onEarlyMatched); } catch (RequestThrottledException ex) { mThrottleTimeout = ex.getTimeoutMs(); return false; diff --git a/core/java/com/android/internal/widget/LockPatternUtils.java b/core/java/com/android/internal/widget/LockPatternUtils.java index 19c6f51ff9a7f..89ed866768bc0 100644 --- a/core/java/com/android/internal/widget/LockPatternUtils.java +++ b/core/java/com/android/internal/widget/LockPatternUtils.java @@ -22,8 +22,13 @@ import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_NUMERIC_COMPLEX; import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_SOMETHING; import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED; +import static android.hardware.biometrics.BiometricSourceType.FINGERPRINT; import static android.security.Flags.reportPrimaryAuthAttempts; import static android.security.Flags.shouldTrustManagerListenForPrimaryAuth; +import static com.android.internal.widget.LockDomain.Primary; +import static com.android.internal.widget.LockDomain.Secondary; +import static com.android.internal.widget.LockPatternUtils.ThrowIfUserNotExist.DoNotThrow; +import static com.android.internal.widget.LockPatternUtils.ThrowIfUserNotExist.DoThrow; import android.annotation.IntDef; import android.annotation.NonNull; @@ -42,6 +47,8 @@ import android.content.Context; import android.content.pm.PackageManager; import android.content.pm.UserInfo; +import android.content.pm.UserProperties; +import android.hardware.fingerprint.FingerprintManager; import android.os.Build; import android.os.Handler; import android.os.Looper; @@ -204,6 +211,8 @@ public static String credentialTypeToString(int credentialType) { Settings.Secure.LOCK_SCREEN_OWNER_INFO_ENABLED; private static final String LOCK_PIN_ENHANCED_PRIVACY = "pin_enhanced_privacy"; + private static final String LOCK_PIN_ENHANCED_PRIVACY_SECONDARY = + "pin_enhanced_privacy_secondary"; private static final String LOCK_SCREEN_DEVICE_OWNER_INFO = "lockscreen.device_owner_info"; @@ -212,8 +221,9 @@ public static String credentialTypeToString(int credentialType) { private static final String IS_TRUST_USUALLY_MANAGED = "lockscreen.istrustusuallymanaged"; public static final String AUTO_PIN_CONFIRM = "lockscreen.auto_pin_confirm"; + public static final String AUTO_PIN_CONFIRM_SECONDARY = "lockscreen.auto_pin_confirm_secondary"; - public static final String CURRENT_LSKF_BASED_PROTECTOR_ID_KEY = "sp-handle"; + public static final String CURRENT_LSKF_BASED_PROTECTOR_ID_KEY_BASE = "sp-handle"; public static final String PASSWORD_HISTORY_DELIMITER = ","; private static final String GSI_RUNNING_PROP = "ro.gsid.image_running"; @@ -232,7 +242,8 @@ public static String credentialTypeToString(int credentialType) { private ILockSettings mLockSettingsService; private UserManager mUserManager; private final Handler mHandler; - private final SparseLongArray mLockoutDeadlines = new SparseLongArray(); + private final SparseLongArray mPrimaryLockoutDeadlines = new SparseLongArray(); + private final SparseLongArray mBiometricSecondFactorLockoutDeadlines = new SparseLongArray(); private Boolean mHasSecureLockScreen; private HashMap mUserManagerCache = new HashMap<>(); @@ -412,38 +423,72 @@ private int getRequestedPasswordHistoryLength(int userId) { @UnsupportedAppUsage public void reportFailedPasswordAttempt(int userId) { + reportFailedPasswordAttempt(userId, Primary); + } + + public void reportFailedPasswordAttempt(int userId, LockDomain lockDomain) { if (isSpecialUserId(mContext, userId, /* checkDeviceSupported= */ true)) { - return; + if (lockDomain == Primary) { + return; + } + throw new SecondaryForSpecialUserException(); } - getDevicePolicyManager().reportFailedPasswordAttempt(userId); - if (!reportPrimaryAuthAttempts() || !shouldTrustManagerListenForPrimaryAuth()) { + + getDevicePolicyManager().reportFailedPasswordAttempt(userId, lockDomain); + if (lockDomain == Primary && (!reportPrimaryAuthAttempts() + || !shouldTrustManagerListenForPrimaryAuth())) { getTrustManager().reportUnlockAttempt(/* authenticated= */ false, userId); } } @UnsupportedAppUsage public void reportSuccessfulPasswordAttempt(int userId) { + reportSuccessfulPasswordAttempt(userId, Primary); + } + + public void reportSuccessfulPasswordAttempt(int userId, LockDomain lockDomain) { if (isSpecialUserId(mContext, userId, /* checkDeviceSupported= */ true)) { - return; + if (lockDomain == Primary) { + return; + } + throw new SecondaryForSpecialUserException(); } - getDevicePolicyManager().reportSuccessfulPasswordAttempt(userId); - if (!reportPrimaryAuthAttempts() || !shouldTrustManagerListenForPrimaryAuth()) { - getTrustManager().reportUnlockAttempt(/* authenticated= */ true, userId); + getDevicePolicyManager().reportSuccessfulPasswordAttempt(userId, lockDomain); + if (lockDomain == Primary) { + if (!reportPrimaryAuthAttempts() || !shouldTrustManagerListenForPrimaryAuth()) { + getTrustManager().reportUnlockAttempt(/* authenticated= */ true, userId); + } } } public void reportPasswordLockout(int timeoutMs, int userId) { + reportPasswordLockout(timeoutMs, userId, Primary); + } + + public void reportPasswordLockout(int timeoutMs, int userId, LockDomain lockDomain) { + if (!checkUserSupportsBiometricSecondFactorIfSecondary(userId, lockDomain)) { + return; + } if (isSpecialUserId(mContext, userId, /* checkDeviceSupported= */ true)) { return; } - getTrustManager().reportUnlockLockout(timeoutMs, userId); + if (lockDomain == Primary) { + getTrustManager().reportUnlockLockout(timeoutMs, userId); + } } public int getCurrentFailedPasswordAttempts(int userId) { + return getCurrentFailedPasswordAttempts(userId, Primary); + } + + public int getCurrentFailedPasswordAttempts(int userId, LockDomain lockDomain) { if (isSpecialUserId(mContext, userId, /* checkDeviceSupported= */ true)) { - return 0; + if (lockDomain == Primary) { + return 0; + } + throw new SecondaryForSpecialUserException(); } - return getDevicePolicyManager().getCurrentFailedPasswordAttempts(userId); + return getDevicePolicyManager().getCurrentFailedPasswordAttempts(userId, lockDomain); } public int getMaximumFailedPasswordsForWipe(int userId) { @@ -481,10 +526,16 @@ public boolean writeRepairModeCredential(int userId) { @NonNull public VerifyCredentialResponse verifyCredential(@NonNull LockscreenCredential credential, int userId, @VerifyFlag int flags) { + return verifyCredential(credential, Primary, userId, flags); + } + + @NonNull + public VerifyCredentialResponse verifyCredential(@NonNull LockscreenCredential credential, + LockDomain lockDomain, int userId, @VerifyFlag int flags) { throwIfCalledOnMainThread(); try { final VerifyCredentialResponse response = getLockSettings().verifyCredential( - credential, userId, flags); + credential, lockDomain, userId, flags); if (response == null) { return VerifyCredentialResponse.ERROR; } else { @@ -539,10 +590,16 @@ public void removeGatekeeperPasswordHandle(long gatekeeperPasswordHandle) { public boolean checkCredential(@NonNull LockscreenCredential credential, int userId, @Nullable CheckCredentialProgressCallback progressCallback) throws RequestThrottledException { + return checkCredential(credential, Primary, userId, progressCallback); + } + + public boolean checkCredential(@NonNull LockscreenCredential credential, LockDomain lockDomain, + int userId, @Nullable CheckCredentialProgressCallback progressCallback) + throws RequestThrottledException { throwIfCalledOnMainThread(); try { VerifyCredentialResponse response = getLockSettings().checkCredential( - credential, userId, wrapCallback(progressCallback)); + credential, lockDomain, userId, wrapCallback(progressCallback)); if (response == null) { return false; } else if (response.getResponseCode() == VerifyCredentialResponse.RESPONSE_OK) { @@ -646,8 +703,12 @@ public boolean checkPasswordHistory(byte[] passwordToCheck, byte[] hashFactor, i * B. PIN_LENGTH_UNAVAILABLE if it is not available or if an exception occurs */ public int getPinLength(int userId) { + return getPinLength(userId, Primary); + } + + public int getPinLength(int userId, LockDomain lockDomain) { try { - return getLockSettings().getPinLength(userId); + return getLockSettings().getPinLength(userId, lockDomain); } catch (RemoteException e) { Log.e(TAG, "Could not fetch PIN length " + e); return PIN_LENGTH_UNAVAILABLE; @@ -664,8 +725,12 @@ public int getPinLength(int userId) { * @return true/false depending on whether PIN length has been saved or not */ public boolean refreshStoredPinLength(int userId) { + return refreshStoredPinLength(userId, Primary); + } + + public boolean refreshStoredPinLength(int userId, LockDomain lockDomain) { try { - return getLockSettings().refreshStoredPinLength(userId); + return getLockSettings().refreshStoredPinLength(userId, lockDomain); } catch (RemoteException e) { Log.e(TAG, "Could not store PIN length on disk " + e); return false; @@ -679,7 +744,18 @@ public boolean refreshStoredPinLength(int userId) { */ @UnsupportedAppUsage public int getActivePasswordQuality(int userId) { - return getKeyguardStoredPasswordQuality(userId); + return getActivePasswordQuality(userId, Primary); + } + + public int getActivePasswordQuality(int userId, LockDomain lockDomain) { + return getKeyguardStoredPasswordQuality(userId, lockDomain); + } + + public boolean isBiometricSecondFactorEnabled(int userId) { + if (!checkUserSupportsBiometricSecondFactor(userId, false)) { + return false; + } + return getActivePasswordQuality(userId, Secondary) == PASSWORD_QUALITY_NUMERIC; } /** @@ -713,9 +789,22 @@ public void setLockScreenDisabled(boolean disable, int userId) { */ @UnsupportedAppUsage public boolean isLockScreenDisabled(int userId) { - if (isSecure(userId)) { + return isLockScreenDisabled(userId, Primary); + } + + public boolean isLockScreenDisabled(int userId, LockDomain lockDomain) { + if (isSecure(userId, lockDomain)) { return false; } + + if (lockDomain == Secondary) { + // When primary is !secure, the lockscreen is either enabled ("Swipe") or disabled + // ("None"). For secondary there is no situation where swipe makes sense, so always + // disable it. Don't need to implement setLockScreenDisabled for secondary as it is + // just a way for caller to set swipe/none. + return true; + } + boolean disabledByDefault = mContext.getResources().getBoolean( com.android.internal.R.bool.config_disableLockscreenByDefault); UserInfo userInfo = getUserManager().getUserInfo(userId); @@ -732,7 +821,15 @@ public boolean isLockScreenDisabled(int userId) { * @param userId user ID of the user this has effect on */ public void setAutoPinConfirm(boolean enabled, int userId) { - setBoolean(AUTO_PIN_CONFIRM, enabled, userId); + setAutoPinConfirm(enabled, userId, Primary); + } + + public void setAutoPinConfirm(boolean enabled, int userId, LockDomain lockDomain) { + if (!checkUserSupportsBiometricSecondFactorIfSecondary(userId, lockDomain)) { + return; + } + String key = lockDomain == Primary ? AUTO_PIN_CONFIRM : AUTO_PIN_CONFIRM_SECONDARY; + setBoolean(key, enabled, userId); } /** @@ -743,7 +840,15 @@ public void setAutoPinConfirm(boolean enabled, int userId) { * @return true, if the entered pin should be auto confirmed */ public boolean isAutoPinConfirmEnabled(int userId) { - return getBoolean(AUTO_PIN_CONFIRM, /* defaultValue= */ false, userId); + return isAutoPinConfirmEnabled(userId, Primary); + } + + public boolean isAutoPinConfirmEnabled(int userId, LockDomain lockDomain) { + if (!checkUserSupportsBiometricSecondFactorIfSecondary(userId, lockDomain)) { + return false; + } + String key = lockDomain == Primary ? AUTO_PIN_CONFIRM : AUTO_PIN_CONFIRM_SECONDARY; + return getBoolean(key, /* defaultValue= */ false, userId); } /** @@ -810,13 +915,25 @@ public static int pinOrPasswordQualityToCredentialType(int quality) { */ public boolean setLockCredential(@NonNull LockscreenCredential newCredential, @NonNull LockscreenCredential savedCredential, int userHandle) { + return setLockCredential(newCredential, savedCredential, Primary, userHandle); + } + + /** + * @param newCredential Can only be of type CREDENTIAL_TYPE_PIN, or CREDENTIAL_TYPE_NONE if + * lockDomain is Secondary. + * @param savedCredential Must be primary credential, even if setting secondary. + * @param lockDomain Whether setting primary or biometric second factor credential. + */ + public boolean setLockCredential(@NonNull LockscreenCredential newCredential, + @NonNull LockscreenCredential savedCredential, LockDomain lockDomain, int userHandle) { if (!hasSecureLockScreen() && newCredential.getType() != CREDENTIAL_TYPE_NONE) { throw new UnsupportedOperationException( "This operation requires the lock screen feature."); } try { - if (!getLockSettings().setLockCredential(newCredential, savedCredential, userHandle)) { + if (!getLockSettings().setLockCredential(newCredential, savedCredential, lockDomain, + userHandle)) { return false; } } catch (RemoteException e) { @@ -896,7 +1013,12 @@ public static boolean isFileEncryptionEnabled() { @UnsupportedAppUsage @Deprecated public int getKeyguardStoredPasswordQuality(int userHandle) { - return credentialTypeToPasswordQuality(getCredentialTypeForUser(userHandle)); + return getKeyguardStoredPasswordQuality(userHandle, Primary); + } + + @Deprecated + public int getKeyguardStoredPasswordQuality(int userHandle, LockDomain lockDomain) { + return credentialTypeToPasswordQuality(getCredentialTypeForUser(userHandle, lockDomain)); } /** @@ -911,7 +1033,7 @@ public int getKeyguardStoredPasswordQuality(int userHandle) { */ public void setSeparateProfileChallengeEnabled(int userHandle, boolean enabled, LockscreenCredential profilePassword) { - if (!isCredentialSharableWithParent(userHandle)) { + if (!isCredentialSharableWithParent(userHandle, DoNotThrow)) { return; } try { @@ -930,7 +1052,8 @@ public void setSeparateProfileChallengeEnabled(int userHandle, boolean enabled, * credential is not shareable with its parent, or a non-profile user. */ public boolean isSeparateProfileChallengeEnabled(int userHandle) { - return isCredentialSharableWithParent(userHandle) && hasSeparateChallenge(userHandle); + return isCredentialSharableWithParent(userHandle, DoNotThrow) && + hasSeparateChallenge(userHandle); } /** @@ -940,7 +1063,8 @@ public boolean isSeparateProfileChallengeEnabled(int userHandle) { * credential is not shareable with its parent, or a non-profile user. */ public boolean isProfileWithUnifiedChallenge(int userHandle) { - return isCredentialSharableWithParent(userHandle) && !hasSeparateChallenge(userHandle); + return isCredentialSharableWithParent(userHandle, DoNotThrow) && + !hasSeparateChallenge(userHandle); } /** @@ -965,8 +1089,75 @@ private boolean isManagedProfile(int userHandle) { return info != null && info.isManagedProfile(); } - private boolean isCredentialSharableWithParent(int userHandle) { - return getUserManager(userHandle).isCredentialSharableWithParent(); + public enum ThrowIfUserNotExist { + DoThrow, DoNotThrow + } + + public boolean isCredentialSharableWithParent(int userHandle, + ThrowIfUserNotExist throwIfUserNotExist) { + UserProperties props; + try { + props = getUserManager().getUserProperties(UserHandle.of(userHandle)); + } catch (IllegalArgumentException e) { + if (throwIfUserNotExist == DoThrow) { + throw e; + } + return false; + } + return props.isCredentialShareableWithParent(); + } + + public static class SecondaryForCredSharableUserException extends IllegalArgumentException { + public SecondaryForCredSharableUserException() { + super("Credential sharable users do not support biometric second factor"); + } + } + + public static class SecondaryForSpecialUserException extends IllegalArgumentException { + public SecondaryForSpecialUserException() { + super("Special users do not support biometric second factor"); + } + } + + /** + * @return True if user supports biometric second factor, or false if user does not exist. + * @throws IllegalArgumentException If user does not support biometric second factor. + */ + public boolean checkUserSupportsBiometricSecondFactor(int userId) { + return checkUserSupportsBiometricSecondFactor(userId, true); + } + + public boolean checkUserSupportsBiometricSecondFactor(int userId, boolean throwIfNotSupport) { + // LockSettingsService/LockSettingsStorage don't use checkDeviceSupported argument. + if (isSpecialUserId(userId)) { + if (throwIfNotSupport) { + throw new SecondaryForSpecialUserException(); + } + return false; + } + + boolean sharable; + try { + sharable = isCredentialSharableWithParent(userId, DoThrow); + } catch (IllegalArgumentException e) { + return false; + } + + if (sharable) { + if (throwIfNotSupport) { + throw new SecondaryForCredSharableUserException(); + } + return false; + } + return true; + } + + public boolean checkUserSupportsBiometricSecondFactorIfSecondary(int userId, + LockDomain lockDomain) { + if (lockDomain == Primary) { + return true; + } + return checkUserSupportsBiometricSecondFactor(userId); } /** @@ -1025,22 +1216,27 @@ private String getSalt(int userId) { /** * Retrieve the credential type of a user. */ - private final PropertyInvalidatedCache.QueryHandler mCredentialTypeQuery = - new PropertyInvalidatedCache.QueryHandler<>() { - @Override - public Integer apply(Integer userHandle) { - try { - return getLockSettings().getCredentialType(userHandle); - } catch (RemoteException re) { - Log.e(TAG, "failed to get credential type", re); - return CREDENTIAL_TYPE_NONE; - } - } - @Override - public boolean shouldBypassCache(Integer userHandle) { - return isSpecialUserId(userHandle); - } - }; + class CredendialTypeQueryHandler extends PropertyInvalidatedCache.QueryHandler { + private final LockDomain mLockDomain; + + CredendialTypeQueryHandler(LockDomain lockDomain) { + this.mLockDomain = lockDomain; + } + + @Override + public Integer apply(Integer userHandle) { + try { + return getLockSettings().getCredentialType(userHandle, mLockDomain); + } catch (RemoteException re) { + Log.e(TAG, "failed to get credential type", re); + return CREDENTIAL_TYPE_NONE; + } + } + @Override + public boolean shouldBypassCache(Integer userHandle) { + return isSpecialUserId(userHandle); + } + }; /** * The API that is cached. @@ -1050,9 +1246,17 @@ public boolean shouldBypassCache(Integer userHandle) { /** * Cache the credential type of a user. */ - private final PropertyInvalidatedCache mCredentialTypeCache = + private final PropertyInvalidatedCache mPrimaryCredentialTypeCache = + // TODO: maxEntires should be maximum number of concurrent users allowed. + new PropertyInvalidatedCache<>(4, PropertyInvalidatedCache.MODULE_SYSTEM, + CREDENTIAL_TYPE_API, CREDENTIAL_TYPE_API, + new CredendialTypeQueryHandler(Primary)); + + private final PropertyInvalidatedCache mSecondaryCredentialTypeCache = + // TODO: maxEntires should be maximum number of concurrent users allowed. new PropertyInvalidatedCache<>(4, PropertyInvalidatedCache.MODULE_SYSTEM, - CREDENTIAL_TYPE_API, CREDENTIAL_TYPE_API, mCredentialTypeQuery); + CREDENTIAL_TYPE_API, CREDENTIAL_TYPE_API + "_secondary", + new CredendialTypeQueryHandler(Secondary)); /** * Invalidate the credential type cache @@ -1069,7 +1273,12 @@ public final static void invalidateCredentialTypeCache() { * {@link #CREDENTIAL_TYPE_PASSWORD} */ public @CredentialType int getCredentialTypeForUser(int userHandle) { - return mCredentialTypeCache.query(userHandle); + return getCredentialTypeForUser(userHandle, Primary); + } + + public @CredentialType int getCredentialTypeForUser(int userHandle, LockDomain lockDomain) { + var cache = lockDomain == Primary ? mPrimaryCredentialTypeCache : mSecondaryCredentialTypeCache; + return cache.query(userHandle); } /** @@ -1078,7 +1287,11 @@ public final static void invalidateCredentialTypeCache() { */ @UnsupportedAppUsage public boolean isSecure(int userId) { - int type = getCredentialTypeForUser(userId); + return isSecure(userId, Primary); + } + + public boolean isSecure(int userId, LockDomain lockDomain) { + int type = getCredentialTypeForUser(userId, lockDomain); return type != CREDENTIAL_TYPE_NONE; } @@ -1120,21 +1333,45 @@ public boolean isVisiblePatternEverChosen(int userId) { * @return Whether enhanced pin privacy is enabled. */ public boolean isPinEnhancedPrivacyEnabled(int userId) { - return getBoolean(LOCK_PIN_ENHANCED_PRIVACY, false, userId); + return isPinEnhancedPrivacyEnabled(userId, Primary); + } + + public boolean isPinEnhancedPrivacyEnabled(int userId, LockDomain lockDomain) { + if (!checkUserSupportsBiometricSecondFactorIfSecondary(userId, lockDomain)) { + return true; + } + String key = lockDomain == Primary ? LOCK_PIN_ENHANCED_PRIVACY : LOCK_PIN_ENHANCED_PRIVACY_SECONDARY; + return getBoolean(key, true, userId); } /** * Set whether enhanced pin privacy is enabled. */ public void setPinEnhancedPrivacyEnabled(boolean enabled, int userId) { - setBoolean(LOCK_PIN_ENHANCED_PRIVACY, enabled, userId); + setPinEnhancedPrivacyEnabled(enabled, userId, Primary); + } + + public void setPinEnhancedPrivacyEnabled(boolean enabled, int userId, LockDomain lockDomain) { + if (!checkUserSupportsBiometricSecondFactorIfSecondary(userId, lockDomain)) { + return; + } + String key = lockDomain == Primary ? LOCK_PIN_ENHANCED_PRIVACY : LOCK_PIN_ENHANCED_PRIVACY_SECONDARY; + setBoolean(key, enabled, userId); } /** * @return Whether enhanced pin privacy was ever chosen. */ public boolean isPinEnhancedPrivacyEverChosen(int userId) { - return getString(LOCK_PIN_ENHANCED_PRIVACY, userId) != null; + return isPinEnhancedPrivacyEverChosen(userId, Primary); + } + + public boolean isPinEnhancedPrivacyEverChosen(int userId, LockDomain lockDomain) { + if (!checkUserSupportsBiometricSecondFactorIfSecondary(userId, lockDomain)) { + return false; + } + String key = lockDomain == Primary ? LOCK_PIN_ENHANCED_PRIVACY : LOCK_PIN_ENHANCED_PRIVACY_SECONDARY; + return getString(key, userId) != null; } /** @@ -1144,13 +1381,28 @@ public boolean isPinEnhancedPrivacyEverChosen(int userId) { */ @UnsupportedAppUsage public long setLockoutAttemptDeadline(int userId, int timeoutMs) { + return setLockoutAttemptDeadline(userId, Primary, timeoutMs); + } + + public long setLockoutAttemptDeadline(int userId, LockDomain lockDomain, int timeoutMs) { + if (!checkUserSupportsBiometricSecondFactorIfSecondary(userId, lockDomain)) { + // We can't follow the base behaviour and add to deadlines even if user does not exist + // because the user could later be created as a non-secondary-supporting user and then + // we've violated constraints. + return 0L; + } + final long deadline = SystemClock.elapsedRealtime() + timeoutMs; if (userId == USER_FRP) { // For secure password storage (that is required for FRP), the underlying storage also // enforces the deadline. Since we cannot store settings for the FRP user, don't. return deadline; } - mLockoutDeadlines.put(userId, deadline); + + SparseLongArray deadlines = lockDomain == Primary ? + mPrimaryLockoutDeadlines : mBiometricSecondFactorLockoutDeadlines; + deadlines.put(userId, deadline); + return deadline; } @@ -1160,11 +1412,25 @@ public long setLockoutAttemptDeadline(int userId, int timeoutMs) { * enter a pattern. */ public long getLockoutAttemptDeadline(int userId) { - final long deadline = mLockoutDeadlines.get(userId, 0L); + return getLockoutAttemptDeadline(userId, Primary); + } + + public long getLockoutAttemptDeadline(int userId, LockDomain lockDomain) { + if (!checkUserSupportsBiometricSecondFactorIfSecondary(userId, lockDomain)) { + return 0L; + } + SparseLongArray deadlines = lockDomain == Primary ? mPrimaryLockoutDeadlines : + mBiometricSecondFactorLockoutDeadlines; + final long deadline = deadlines.get(userId, 0L); final long now = SystemClock.elapsedRealtime(); + // TODO: Users can change their secondary while secondary has a deadline. We should check + // if this has happened and reset the deadline. Can't just check if + // DPM#getCurrentFailedPasswordAttempts is 0 because the user could change their secondary + // and then accumulate a failure before going back to the lockscreen. Could track the + // protector IDs. if (deadline < now && deadline != 0) { // timeout expired - mLockoutDeadlines.put(userId, 0); + deadlines.put(userId, 0); return 0L; } return deadline; @@ -2043,4 +2309,53 @@ public RemoteLockscreenValidationResult validateRemoteLockscreen( throw e.rethrowFromSystemServer(); } } + + public static List validateDuressCredential( + @NonNull LockscreenCredential credential) { + var metrics = new PasswordMetrics(credential.getType()); + metrics.length = 4; + return PasswordMetrics.validateCredential(metrics, DevicePolicyManager.PASSWORD_COMPLEXITY_LOW, credential); + } + + public void setDuressCredentials(@NonNull LockscreenCredential ownerCredential, + @NonNull LockscreenCredential duressPin, + @NonNull LockscreenCredential duressPassword) { + try { + getLockSettings().setDuressCredentials(ownerCredential, duressPin, duressPassword); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + + public void deleteDuressCredentials(@NonNull LockscreenCredential ownerCredential) { + var noCredential = LockscreenCredential.createNone(); + try { + getLockSettings().setDuressCredentials(ownerCredential, noCredential, noCredential); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + + public boolean hasDuressCredentials(@NonNull LockscreenCredential ownerCredential) { + try { + return getLockSettings().hasDuressCredentials(ownerCredential); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + + public static final int BIOMETRIC_KEYGUARD_ON = 1; + public static final int BIOMETRIC_KEYGUARD_OFF = 0; + public static final int BIOMETRIC_KEYGUARD_DEFAULT = BIOMETRIC_KEYGUARD_ON; + public boolean isBiometricKeyguardEnabled(int userId) { + return Settings.Secure.getIntForUser(mContext.getContentResolver(), + Settings.Secure.BIOMETRIC_KEYGUARD_ENABLED, BIOMETRIC_KEYGUARD_DEFAULT, userId) + == BIOMETRIC_KEYGUARD_ON; + } + + public boolean setBiometricKeyguardEnabled(int userId, boolean enabled) { + return Settings.Secure.putIntForUser(mContext.getContentResolver(), + Settings.Secure.BIOMETRIC_KEYGUARD_ENABLED, enabled ? BIOMETRIC_KEYGUARD_ON : + BIOMETRIC_KEYGUARD_OFF, userId); + } } diff --git a/core/java/com/android/internal/widget/LockSettingsStateListener.java b/core/java/com/android/internal/widget/LockSettingsStateListener.java index 869e676f4a42f..8b59f56f20cf2 100644 --- a/core/java/com/android/internal/widget/LockSettingsStateListener.java +++ b/core/java/com/android/internal/widget/LockSettingsStateListener.java @@ -25,12 +25,14 @@ public interface LockSettingsStateListener { /** * Defines behavior in response to a successful authentication * @param userId The user Id for the requested authentication + * @param lockDomain Whether primary or biometric second factor auth */ - void onAuthenticationSucceeded(int userId); + void onAuthenticationSucceeded(int userId, LockDomain lockDomain); /** * Defines behavior in response to a failed authentication * @param userId The user Id for the requested authentication + * @param lockDomain Whether primary or biometric second factor auth */ - void onAuthenticationFailed(int userId); + void onAuthenticationFailed(int userId, LockDomain lockDomain); } diff --git a/core/java/com/android/internal/widget/WrappedLockPatternUtils.java b/core/java/com/android/internal/widget/WrappedLockPatternUtils.java new file mode 100644 index 0000000000000..dcd17bdd5bf8f --- /dev/null +++ b/core/java/com/android/internal/widget/WrappedLockPatternUtils.java @@ -0,0 +1,64 @@ +package com.android.internal.widget; + +import static com.android.internal.widget.LockDomain.Primary; +import static com.android.internal.widget.LockDomain.Secondary; + +import android.content.Context; + +public class WrappedLockPatternUtils { + private final LockPatternUtils mInner; + private final LockDomain mLockDomain; + + public WrappedLockPatternUtils(LockPatternUtils inner, LockDomain lockDomain) { + mInner = inner; + mLockDomain = lockDomain; + } + + public WrappedLockPatternUtils(Context context, LockDomain lockDomain) { + mInner = new LockPatternUtils(context); + mLockDomain = lockDomain; + } + + public LockPatternUtils getInner() { + return mInner; + } + + public LockDomain getLockDomain() { + return mLockDomain; + } + + public @LockPatternUtils.CredentialType int getCredentialTypeForUser(int userHandle) { + return mInner.getCredentialTypeForUser(userHandle, mLockDomain); + } + + public void setPinEnhancedPrivacyEnabled(boolean enabled, int userId) { + mInner.setPinEnhancedPrivacyEnabled(enabled, userId, mLockDomain); + } + + public boolean isPinEnhancedPrivacyEnabled(int userId) { + return mInner.isPinEnhancedPrivacyEnabled(userId, mLockDomain); + } + + public int getPinLength(int userId) { + // This technique allows us to avoid modifying upstream tests in cases where we can mock + // the inner LPU but not the WLPU. + if (mLockDomain == Primary) { + return mInner.getPinLength(userId); + } + return mInner.getPinLength(userId, Secondary); + } + + public int getCurrentFailedPasswordAttempts(int userId) { + if (mLockDomain == Primary) { + return mInner.getCurrentFailedPasswordAttempts(userId); + } + return mInner.getCurrentFailedPasswordAttempts(userId, Secondary); + } + + public boolean isAutoPinConfirmEnabled(int userId) { + if (mLockDomain == Primary) { + return mInner.isAutoPinConfirmEnabled(userId); + } + return mInner.isAutoPinConfirmEnabled(userId, Secondary); + } +} diff --git a/core/java/com/android/server/pm/pkg/AndroidPackage.java b/core/java/com/android/server/pm/pkg/AndroidPackage.java index 70dd10f2c371c..b4a4e321eb4cc 100644 --- a/core/java/com/android/server/pm/pkg/AndroidPackage.java +++ b/core/java/com/android/server/pm/pkg/AndroidPackage.java @@ -47,6 +47,7 @@ import android.util.SparseIntArray; import com.android.internal.R; +import com.android.internal.pm.parsing.pkg.PackageExtIface; import com.android.internal.pm.pkg.component.ParsedActivity; import com.android.internal.pm.pkg.component.ParsedApexSystemService; import com.android.internal.pm.pkg.component.ParsedAttribution; @@ -1550,4 +1551,8 @@ public interface AndroidPackage { * @hide */ int getIntentMatchingFlags(); + + /** @hide */ + @Immutable.Ignore + PackageExtIface ext(); } diff --git a/core/jni/Android.bp b/core/jni/Android.bp index 027113a75f6b6..05508d347587c 100644 --- a/core/jni/Android.bp +++ b/core/jni/Android.bp @@ -275,6 +275,7 @@ cc_library_shared_for_libandroid_runtime { "android_tracing_PerfettoDataSource.cpp", "android_tracing_PerfettoDataSourceInstance.cpp", "android_tracing_PerfettoProducer.cpp", + "ExecStrings.cpp", ], static_libs: [ diff --git a/core/jni/ExecStrings.cpp b/core/jni/ExecStrings.cpp new file mode 100644 index 0000000000000..6fdca3a39c63c --- /dev/null +++ b/core/jni/ExecStrings.cpp @@ -0,0 +1,74 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// copied from libcore/luni/src/main/native/ExecStrings.cpp, commit cab01ac294bb8ded259851673baa4c6ca226f828 + +#define LOG_TAG "ExecStrings" + +#include "ExecStrings.h" + +#include + +#include + +#include + +ExecStrings::ExecStrings(JNIEnv* env, jobjectArray java_string_array) + : env_(env), java_array_(java_string_array), array_(NULL) { + if (java_array_ == NULL) { + return; + } + + jsize length = env_->GetArrayLength(java_array_); + array_ = new char*[length + 1]; + array_[length] = NULL; + for (jsize i = 0; i < length; ++i) { + ScopedLocalRef java_string(env_, reinterpret_cast(env_->GetObjectArrayElement(java_array_, i))); + // We need to pass these strings to const-unfriendly code. + char* string = const_cast(env_->GetStringUTFChars(java_string.get(), NULL)); + array_[i] = string; + } +} + +ExecStrings::~ExecStrings() { + if (array_ == NULL) { + return; + } + + // Temporarily clear any pending exception so we can clean up. + jthrowable pending_exception = env_->ExceptionOccurred(); + if (pending_exception != NULL) { + env_->ExceptionClear(); + } + + jsize length = env_->GetArrayLength(java_array_); + for (jsize i = 0; i < length; ++i) { + ScopedLocalRef java_string(env_, reinterpret_cast(env_->GetObjectArrayElement(java_array_, i))); + env_->ReleaseStringUTFChars(java_string.get(), array_[i]); + } + delete[] array_; + + // Re-throw any pending exception. + if (pending_exception != NULL) { + if (env_->Throw(pending_exception) < 0) { + ALOGE("Error rethrowing exception!"); + } + } +} + +char** ExecStrings::get() { + return array_; +} diff --git a/core/jni/ExecStrings.h b/core/jni/ExecStrings.h new file mode 100644 index 0000000000000..7a161b589741d --- /dev/null +++ b/core/jni/ExecStrings.h @@ -0,0 +1,37 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// copied from libcore/luni/src/main/native/ExecStrings.h, commit cab01ac294bb8ded259851673baa4c6ca226f828 + +#include "jni.h" + +class ExecStrings { + public: + ExecStrings(JNIEnv* env, jobjectArray java_string_array); + + ~ExecStrings(); + + char** get(); + + private: + JNIEnv* env_; + jobjectArray java_array_; + char** array_; + + // Disallow copy and assignment. + ExecStrings(const ExecStrings&); + void operator=(const ExecStrings&); +}; diff --git a/core/jni/com_android_internal_os_Zygote.cpp b/core/jni/com_android_internal_os_Zygote.cpp index c0c146ec8d367..a1d962b4e1b5a 100644 --- a/core/jni/com_android_internal_os_Zygote.cpp +++ b/core/jni/com_android_internal_os_Zygote.cpp @@ -87,6 +87,8 @@ #include "nativebridge/native_bridge.h" +#include "ExecStrings.h" + #if defined(__BIONIC__) extern "C" void android_reset_stack_guards(); extern "C" void android_set_16kb_appcompat_mode(bool enable_app_compat); @@ -354,6 +356,19 @@ enum RuntimeFlags : uint32_t { ENABLE_PAGE_SIZE_APP_COMPAT = 1 << 26, }; +struct ExtraArgs { + uint64_t selinux_flags = 0; + + ExtraArgs() {} + + ExtraArgs(JNIEnv* env, jlongArray jlongArgs) { + const size_t num_jlong_args = 1; + jlong jlong_arr[num_jlong_args]; + env->GetLongArrayRegion(jlongArgs, 0, num_jlong_args, (jlong *) &jlong_arr); + selinux_flags = (uint64_t) jlong_arr[0]; + } +}; + enum UnsolicitedZygoteMessageTypes : uint32_t { UNSOLICITED_ZYGOTE_MESSAGE_TYPE_RESERVED = 0, UNSOLICITED_ZYGOTE_MESSAGE_TYPE_SIGCHLD = 1, @@ -1728,95 +1743,6 @@ std::pair build_constants[] = { std::pair("HOST", "ro.build.host"), }; -// All public String Build.VERSION constants, and the system properties they're pulled from -std::pair build_version_constants[] = { - std::pair("INCREMENTAL", "ro.build.version.incremental"), - std::pair("RELEASE", "ro.build.version.release"), - std::pair("RELEASE_OR_CODENAME", "ro.build.version.release_or_codename"), - std::pair("RELEASE_OR_PREVIEW_DISPLAY", "ro.build.version.release_or_preview_display"), - std::pair("BASE_OS", "ro.build.version.base_os"), - std::pair("SECURITY_PATCH", "ro.build.version.security_patch"), - std::pair("SDK", "ro.build.version.sdk"), - std::pair("PREVIEW_SDK_FINGERPRINT", "ro.build.version.preview_sdk_fingerprint"), - std::pair("CODENAME", "ro.build.version.codename"), -}; - -static void ReloadBuildJavaConstant(JNIEnv* env, jclass build_class, const char* field_name, - const char* field_signature, const char* sysprop_name) { - const prop_info* prop_info = __system_property_find(sysprop_name); - std::string new_value; - __system_property_read_callback( - prop_info, - [](void* cookie, const char* name, const char* value, unsigned serial) { - auto new_value = reinterpret_cast(cookie); - *new_value = value; - }, - &new_value); - jfieldID fieldId = env->GetStaticFieldID(build_class, field_name, field_signature); - if (strcmp(field_signature, "I") == 0) { - env->SetStaticIntField(build_class, fieldId, jint(strtol(new_value.c_str(), nullptr, 0))); - } else if (strcmp(field_signature, "Ljava/lang/String;") == 0) { - jstring string_val = env->NewStringUTF(new_value.c_str()); - env->SetStaticObjectField(build_class, fieldId, string_val); - } else if (strcmp(field_signature, "[Ljava/lang/String;") == 0) { - auto stream = std::stringstream(new_value); - std::vector items; - std::string segment; - while (std::getline(stream, segment, ',')) { - items.push_back(segment); - } - jclass string_class = env->FindClass("java/lang/String"); - jobjectArray string_arr = env->NewObjectArray(items.size(), string_class, nullptr); - for (size_t i = 0; i < items.size(); i++) { - jstring string_arr_val = env->NewStringUTF(items.at(i).c_str()); - env->SetObjectArrayElement(string_arr, i, string_arr_val); - } - env->SetStaticObjectField(build_class, fieldId, string_arr); - } else if (strcmp(field_signature, "J") == 0) { - env->SetStaticLongField(build_class, fieldId, jlong(strtoll(new_value.c_str(), nullptr, 0))); - } -} - -static void ReloadBuildJavaConstants(JNIEnv* env) { - jclass build_cls = env->FindClass("android/os/Build"); - size_t arr_size = sizeof(build_constants) / sizeof(build_constants[0]); - for (size_t i = 0; i < arr_size; i++) { - const char* field_name = build_constants[i].first; - const char* sysprop_name = build_constants[i].second; - ReloadBuildJavaConstant(env, build_cls, field_name, "Ljava/lang/String;", sysprop_name); - } - jclass build_version_cls = env->FindClass("android/os/Build$VERSION"); - arr_size = sizeof(build_version_constants) / sizeof(build_version_constants[0]); - for (size_t i = 0; i < arr_size; i++) { - const char* field_name = build_version_constants[i].first; - const char* sysprop_name = build_version_constants[i].second; - ReloadBuildJavaConstant(env, build_version_cls, field_name, "Ljava/lang/String;", sysprop_name); - } - - // Reload the public String[] constants - ReloadBuildJavaConstant(env, build_cls, "SUPPORTED_ABIS", "[Ljava/lang/String;", - "ro.product.cpu.abilist"); - ReloadBuildJavaConstant(env, build_cls, "SUPPORTED_32_BIT_ABIS", "[Ljava/lang/String;", - "ro.product.cpu.abilist32"); - ReloadBuildJavaConstant(env, build_cls, "SUPPORTED_64_BIT_ABIS", "[Ljava/lang/String;", - "ro.product.cpu.abilist64"); - ReloadBuildJavaConstant(env, build_version_cls, "ALL_CODENAMES", "[Ljava/lang/String;", - "ro.build.version.all_codenames"); - - // Reload the public int/long constants - ReloadBuildJavaConstant(env, build_cls, "TIME", "J", "ro.build.date.utc"); - ReloadBuildJavaConstant(env, build_version_cls, "SDK_INT", "I", "ro.build.version.sdk"); - ReloadBuildJavaConstant(env, build_version_cls, "PREVIEW_SDK_INT", "I", - "ro.build.version.preview_sdk"); - - // Re-derive the fingerprint - jmethodID derive_fingerprint = - env->GetStaticMethodID(build_cls, "deriveFingerprint", "()Ljava/lang/String;"); - auto new_fingerprint = (jstring)(env->CallStaticObjectMethod(build_cls, derive_fingerprint)); - jfieldID fieldId = env->GetStaticFieldID(build_cls, "FINGERPRINT", "Ljava/lang/String;"); - env->SetStaticObjectField(build_cls, fieldId, new_fingerprint); -} - static void BindMountSyspropOverride(fail_fn_t fail_fn, JNIEnv* env) { std::string source = "/dev/__properties__/appcompat_override"; std::string target = "/dev/__properties__"; @@ -1829,8 +1755,12 @@ static void BindMountSyspropOverride(fail_fn_t fail_fn, JNIEnv* env) { BindMount(source, target, fail_fn); // Reload the system properties file, to ensure new values are read into memory __system_properties_zygote_reload(); + // ReloadBuildJavaConstants() is not needed currently, only ro.boot.verifiedbootstate is overridden, + // which doesn't affect android.os.Build constants + // TODO: when ReloadBuildJavaConstants is needed, make it skip reloading of unaffected constants + // // android.os.Build constants are pulled from system properties, so they must be reloaded, too - ReloadBuildJavaConstants(env); + // ReloadBuildJavaConstants(env); } static void BindMountStorageToLowerFs(const userid_t user_id, const uid_t uid, @@ -1887,6 +1817,97 @@ static void BindMountStorageDirs(JNIEnv* env, jobjectArray pkg_data_info_list, } } +static void HandleRuntimeFlags(JNIEnv* env, jint& runtime_flags, const char* process_name, const char* nice_name_ptr) { + // Set process properties to enable debugging if required. + if ((runtime_flags & RuntimeFlags::DEBUG_ENABLE_PTRACE) != 0) { + EnableDebugger(); + // Don't pass unknown flag to the ART runtime. + runtime_flags &= ~RuntimeFlags::DEBUG_ENABLE_PTRACE; + } + if ((runtime_flags & RuntimeFlags::PROFILE_FROM_SHELL) != 0) { + // simpleperf needs the process to be dumpable to profile it. + if (prctl(PR_SET_DUMPABLE, 1, 0, 0, 0) == -1) { + ALOGE("prctl(PR_SET_DUMPABLE) failed: %s", strerror(errno)); + RuntimeAbort(env, __LINE__, "prctl(PR_SET_DUMPABLE, 1) failed"); + } + } + + HeapTaggingLevel heap_tagging_level; + switch (runtime_flags & RuntimeFlags::MEMORY_TAG_LEVEL_MASK) { + case RuntimeFlags::MEMORY_TAG_LEVEL_TBI: + heap_tagging_level = M_HEAP_TAGGING_LEVEL_TBI; + break; + case RuntimeFlags::MEMORY_TAG_LEVEL_ASYNC: + heap_tagging_level = M_HEAP_TAGGING_LEVEL_ASYNC; + break; + case RuntimeFlags::MEMORY_TAG_LEVEL_SYNC: + heap_tagging_level = M_HEAP_TAGGING_LEVEL_SYNC; + break; + default: + heap_tagging_level = M_HEAP_TAGGING_LEVEL_NONE; + break; + } + mallopt(M_BIONIC_SET_HEAP_TAGGING_LEVEL, heap_tagging_level); + + const int FORCIBLY_ENABLE_MEMORY_TAGGING = 1 << 28; + if (runtime_flags & FORCIBLY_ENABLE_MEMORY_TAGGING) { + if (mallopt(M_BIONIC_BLOCK_HEAP_TAGGING_LEVEL_DOWNGRADE, 0) != (int) true) { + RuntimeAbort(env, __LINE__, "mallopt(M_BIONIC_BLOCK_HEAP_TAGGING_LEVEL_DOWNGRADE) failed"); + } + if (mallopt(M_BIONIC_ENABLE_SIGCHAINLIB_MTE_SIGSEGV_INTERCEPTION, 0) != (int) true) { + RuntimeAbort(env, __LINE__, "mallopt(M_BIONIC_ENABLE_SIGCHAINLIB_MTE_SIGSEGV_INTERCEPTION) failed"); + } + runtime_flags &= ~FORCIBLY_ENABLE_MEMORY_TAGGING; + } + + // Now that we've used the flag, clear it so that we don't pass unknown flags to the ART + // runtime. + runtime_flags &= ~RuntimeFlags::MEMORY_TAG_LEVEL_MASK; + + // Avoid heap zero initialization for applications without MTE. Zero init may + // cause app compat problems, use more memory, or reduce performance. While it + // would be nice to have them for apps, we will have to wait until they are + // proven out, have more efficient hardware, and/or apply them only to new + // applications. + if (!(runtime_flags & RuntimeFlags::NATIVE_HEAP_ZERO_INIT_ENABLED)) { + mallopt(M_BIONIC_ZERO_INIT, 0); + } + + // Now that we've used the flag, clear it so that we don't pass unknown flags to the ART + // runtime. + runtime_flags &= ~RuntimeFlags::NATIVE_HEAP_ZERO_INIT_ENABLED; + + android_mallopt_gwp_asan_options_t gwp_asan_options; + const char* kGwpAsanAppRecoverableSysprop = + "persist.device_config.memory_safety_native.gwp_asan_recoverable_apps"; + // The system server doesn't have its nice name set by the time SpecializeCommon is called. + gwp_asan_options.program_name = nice_name_ptr ?: process_name; + switch (runtime_flags & RuntimeFlags::GWP_ASAN_LEVEL_MASK) { + default: + case RuntimeFlags::GWP_ASAN_LEVEL_DEFAULT: + gwp_asan_options.mode = GetBoolProperty(kGwpAsanAppRecoverableSysprop, true) + ? Mode::APP_MANIFEST_DEFAULT + : Mode::APP_MANIFEST_NEVER; + android_mallopt(M_INITIALIZE_GWP_ASAN, &gwp_asan_options, sizeof(gwp_asan_options)); + break; + case RuntimeFlags::GWP_ASAN_LEVEL_NEVER: + gwp_asan_options.mode = Mode::APP_MANIFEST_NEVER; + android_mallopt(M_INITIALIZE_GWP_ASAN, &gwp_asan_options, sizeof(gwp_asan_options)); + break; + case RuntimeFlags::GWP_ASAN_LEVEL_ALWAYS: + gwp_asan_options.mode = Mode::APP_MANIFEST_ALWAYS; + android_mallopt(M_INITIALIZE_GWP_ASAN, &gwp_asan_options, sizeof(gwp_asan_options)); + break; + case RuntimeFlags::GWP_ASAN_LEVEL_LOTTERY: + gwp_asan_options.mode = Mode::APP_MANIFEST_DEFAULT; + android_mallopt(M_INITIALIZE_GWP_ASAN, &gwp_asan_options, sizeof(gwp_asan_options)); + break; + } + // Now that we've used the flag, clear it so that we don't pass unknown flags to the ART + // runtime. + runtime_flags &= ~RuntimeFlags::GWP_ASAN_LEVEL_MASK; +} + // Utility routine to specialize a zygote child process. static void SpecializeCommon(JNIEnv* env, uid_t uid, gid_t gid, jintArray gids, jint runtime_flags, jobjectArray rlimits, jlong permitted_capabilities, @@ -1896,7 +1917,8 @@ static void SpecializeCommon(JNIEnv* env, uid_t uid, gid_t gid, jintArray gids, jstring managed_instruction_set, jstring managed_app_data_dir, bool is_top_app, jobjectArray pkg_data_info_list, jobjectArray allowlisted_data_info_list, bool mount_data_dirs, - bool mount_storage_dirs, bool mount_sysprop_overrides) { + bool mount_storage_dirs, bool mount_sysprop_overrides, + ExtraArgs& extra_args) { const char* process_name = is_system_server ? "system_server" : "zygote"; auto fail_fn = std::bind(ZygoteFailure, env, process_name, managed_nice_name, _1); auto extract_fn = std::bind(ExtractJString, env, process_name, managed_nice_name, _1); @@ -2050,84 +2072,9 @@ static void SpecializeCommon(JNIEnv* env, uid_t uid, gid_t gid, jintArray gids, } } - // Set process properties to enable debugging if required. - if ((runtime_flags & RuntimeFlags::DEBUG_ENABLE_PTRACE) != 0) { - EnableDebugger(); - // Don't pass unknown flag to the ART runtime. - runtime_flags &= ~RuntimeFlags::DEBUG_ENABLE_PTRACE; - } - if ((runtime_flags & RuntimeFlags::PROFILE_FROM_SHELL) != 0) { - // simpleperf needs the process to be dumpable to profile it. - if (prctl(PR_SET_DUMPABLE, 1, 0, 0, 0) == -1) { - ALOGE("prctl(PR_SET_DUMPABLE) failed: %s", strerror(errno)); - RuntimeAbort(env, __LINE__, "prctl(PR_SET_DUMPABLE, 1) failed"); - } - } - - HeapTaggingLevel heap_tagging_level; - switch (runtime_flags & RuntimeFlags::MEMORY_TAG_LEVEL_MASK) { - case RuntimeFlags::MEMORY_TAG_LEVEL_TBI: - heap_tagging_level = M_HEAP_TAGGING_LEVEL_TBI; - break; - case RuntimeFlags::MEMORY_TAG_LEVEL_ASYNC: - heap_tagging_level = M_HEAP_TAGGING_LEVEL_ASYNC; - break; - case RuntimeFlags::MEMORY_TAG_LEVEL_SYNC: - heap_tagging_level = M_HEAP_TAGGING_LEVEL_SYNC; - break; - default: - heap_tagging_level = M_HEAP_TAGGING_LEVEL_NONE; - break; - } - mallopt(M_BIONIC_SET_HEAP_TAGGING_LEVEL, heap_tagging_level); - - // Now that we've used the flag, clear it so that we don't pass unknown flags to the ART - // runtime. - runtime_flags &= ~RuntimeFlags::MEMORY_TAG_LEVEL_MASK; - - // Avoid heap zero initialization for applications without MTE. Zero init may - // cause app compat problems, use more memory, or reduce performance. While it - // would be nice to have them for apps, we will have to wait until they are - // proven out, have more efficient hardware, and/or apply them only to new - // applications. - if (!(runtime_flags & RuntimeFlags::NATIVE_HEAP_ZERO_INIT_ENABLED)) { - mallopt(M_BIONIC_ZERO_INIT, 0); - } - - // Now that we've used the flag, clear it so that we don't pass unknown flags to the ART - // runtime. - runtime_flags &= ~RuntimeFlags::NATIVE_HEAP_ZERO_INIT_ENABLED; - const char* nice_name_ptr = nice_name.has_value() ? nice_name.value().c_str() : nullptr; - android_mallopt_gwp_asan_options_t gwp_asan_options; - const char* kGwpAsanAppRecoverableSysprop = - "persist.device_config.memory_safety_native.gwp_asan_recoverable_apps"; - // The system server doesn't have its nice name set by the time SpecializeCommon is called. - gwp_asan_options.program_name = nice_name_ptr ?: process_name; - switch (runtime_flags & RuntimeFlags::GWP_ASAN_LEVEL_MASK) { - default: - case RuntimeFlags::GWP_ASAN_LEVEL_DEFAULT: - gwp_asan_options.mode = GetBoolProperty(kGwpAsanAppRecoverableSysprop, true) - ? Mode::APP_MANIFEST_DEFAULT - : Mode::APP_MANIFEST_NEVER; - android_mallopt(M_INITIALIZE_GWP_ASAN, &gwp_asan_options, sizeof(gwp_asan_options)); - break; - case RuntimeFlags::GWP_ASAN_LEVEL_NEVER: - gwp_asan_options.mode = Mode::APP_MANIFEST_NEVER; - android_mallopt(M_INITIALIZE_GWP_ASAN, &gwp_asan_options, sizeof(gwp_asan_options)); - break; - case RuntimeFlags::GWP_ASAN_LEVEL_ALWAYS: - gwp_asan_options.mode = Mode::APP_MANIFEST_ALWAYS; - android_mallopt(M_INITIALIZE_GWP_ASAN, &gwp_asan_options, sizeof(gwp_asan_options)); - break; - case RuntimeFlags::GWP_ASAN_LEVEL_LOTTERY: - gwp_asan_options.mode = Mode::APP_MANIFEST_DEFAULT; - android_mallopt(M_INITIALIZE_GWP_ASAN, &gwp_asan_options, sizeof(gwp_asan_options)); - break; - } - // Now that we've used the flag, clear it so that we don't pass unknown flags to the ART - // runtime. - runtime_flags &= ~RuntimeFlags::GWP_ASAN_LEVEL_MASK; + + HandleRuntimeFlags(env, runtime_flags, process_name, nice_name_ptr); SetCapabilities(permitted_capabilities, effective_capabilities, permitted_capabilities, fail_fn); @@ -2143,9 +2090,9 @@ static void SpecializeCommon(JNIEnv* env, uid_t uid, gid_t gid, jintArray gids, const char* se_info_ptr = se_info.has_value() ? se_info.value().c_str() : nullptr; - if (selinux_android_setcontext(uid, is_system_server, se_info_ptr, nice_name_ptr) == -1) { - fail_fn(CREATE_ERROR("selinux_android_setcontext(%d, %d, \"%s\", \"%s\") failed", uid, - is_system_server, se_info_ptr, nice_name_ptr)); + if (selinux_android_setcontext2(uid, is_system_server, se_info_ptr, nice_name_ptr, extra_args.selinux_flags) == -1) { + fail_fn(CREATE_ERROR("selinux_android_setcontext(%d, %d, \"%s\", \"%s\", selinux_flags: \"%" PRIx64 "\") failed", uid, + is_system_server, se_info_ptr, nice_name_ptr, extra_args.selinux_flags)); } // Make it easier to debug audit logs by setting the main thread's name to the @@ -2536,7 +2483,8 @@ static jint com_android_internal_os_Zygote_nativeForkAndSpecialize( jintArray managed_fds_to_close, jintArray managed_fds_to_ignore, jboolean is_child_zygote, jstring instruction_set, jstring app_data_dir, jboolean is_top_app, jobjectArray pkg_data_info_list, jobjectArray allowlisted_data_info_list, - jboolean mount_data_dirs, jboolean mount_storage_dirs, jboolean mount_sysprop_overrides) { + jboolean mount_data_dirs, jboolean mount_storage_dirs, jboolean mount_sysprop_overrides, jlongArray extra_jlong_args) { + ExtraArgs extra_args(env, extra_jlong_args); jlong capabilities = CalculateCapabilities(env, uid, gid, gids, is_child_zygote); jlong bounding_capabilities = CalculateBoundingCapabilities(env, uid, gid, gids); @@ -2581,7 +2529,7 @@ static jint com_android_internal_os_Zygote_nativeForkAndSpecialize( is_child_zygote == JNI_TRUE, instruction_set, app_data_dir, is_top_app == JNI_TRUE, pkg_data_info_list, allowlisted_data_info_list, mount_data_dirs == JNI_TRUE, mount_storage_dirs == JNI_TRUE, - mount_sysprop_overrides == JNI_TRUE); + mount_sysprop_overrides == JNI_TRUE, extra_args); } return pid; } @@ -2614,11 +2562,12 @@ static jint com_android_internal_os_Zygote_nativeForkSystemServer( if (pid == 0) { // System server prcoess does not need data isolation so no need to // know pkg_data_info_list. + ExtraArgs extra_args; SpecializeCommon(env, uid, gid, gids, runtime_flags, rlimits, permitted_capabilities, effective_capabilities, 0, MOUNT_EXTERNAL_DEFAULT, nullptr, nullptr, true, false, nullptr, nullptr, /* is_top_app= */ false, /* pkg_data_info_list */ nullptr, - /* allowlisted_data_info_list */ nullptr, false, false, false); + /* allowlisted_data_info_list */ nullptr, false, false, false, extra_args); } else if (pid > 0) { // The zygote process checks whether the child process has died or not. ALOGI("System server process %d has been created", pid); @@ -2772,7 +2721,8 @@ static void com_android_internal_os_Zygote_nativeSpecializeAppProcess( jboolean is_child_zygote, jstring instruction_set, jstring app_data_dir, jboolean is_top_app, jobjectArray pkg_data_info_list, jobjectArray allowlisted_data_info_list, jboolean mount_data_dirs, - jboolean mount_storage_dirs, jboolean mount_sysprop_overrides) { + jboolean mount_storage_dirs, jboolean mount_sysprop_overrides, jlongArray extra_jlong_args) { + ExtraArgs extra_args(env, extra_jlong_args); jlong capabilities = CalculateCapabilities(env, uid, gid, gids, is_child_zygote); jlong bounding_capabilities = CalculateBoundingCapabilities(env, uid, gid, gids); @@ -2781,7 +2731,7 @@ static void com_android_internal_os_Zygote_nativeSpecializeAppProcess( is_child_zygote == JNI_TRUE, instruction_set, app_data_dir, is_top_app == JNI_TRUE, pkg_data_info_list, allowlisted_data_info_list, mount_data_dirs == JNI_TRUE, mount_storage_dirs == JNI_TRUE, - mount_sysprop_overrides == JNI_TRUE); + mount_sysprop_overrides == JNI_TRUE, extra_args); } /** @@ -3056,10 +3006,26 @@ static void com_android_internal_os_Zygote_nativeAllowFilesOpenedByPreload(JNIEn gPreloadFdsExtracted = true; } +static void nativeHandleRuntimeFlagsWrapper(JNIEnv* env, jclass, jint runtime_flags) { + HandleRuntimeFlags(env, runtime_flags, nullptr, nullptr); +} + +static jint execveatWrapper(JNIEnv* env, jclass, jint dirFd, jstring javaFilename, jobjectArray javaArgv, jint flags) { + ScopedUtfChars path(env, javaFilename); + if (path.c_str() == NULL) { + return EINVAL; + } + + ExecStrings argv(env, javaArgv); + TEMP_FAILURE_RETRY(execveat(dirFd, path.c_str(), argv.get(), environ, flags)); + // execveat never returns on success + return errno; +} + static const JNINativeMethod gMethods[] = { {"nativeForkAndSpecialize", "(II[II[[IILjava/lang/String;Ljava/lang/String;[I[IZLjava/lang/String;Ljava/lang/" - "String;Z[Ljava/lang/String;[Ljava/lang/String;ZZZ)I", + "String;Z[Ljava/lang/String;[Ljava/lang/String;ZZZ[J)I", (void*)com_android_internal_os_Zygote_nativeForkAndSpecialize}, {"nativeForkSystemServer", "(II[II[[IJJ)I", (void*)com_android_internal_os_Zygote_nativeForkSystemServer}, @@ -3075,7 +3041,7 @@ static const JNINativeMethod gMethods[] = { (void*)com_android_internal_os_Zygote_nativeAddUsapTableEntry}, {"nativeSpecializeAppProcess", "(II[II[[IILjava/lang/String;Ljava/lang/String;ZLjava/lang/String;Ljava/lang/" - "String;Z[Ljava/lang/String;[Ljava/lang/String;ZZZ)V", + "String;Z[Ljava/lang/String;[Ljava/lang/String;ZZZ[J)V", (void*)com_android_internal_os_Zygote_nativeSpecializeAppProcess}, {"nativeInitNativeState", "(Z)V", (void*)com_android_internal_os_Zygote_nativeInitNativeState}, @@ -3108,6 +3074,8 @@ static const JNINativeMethod gMethods[] = { (void*)com_android_internal_os_Zygote_nativeMarkOpenedFilesBeforePreload}, {"nativeAllowFilesOpenedByPreload", "()V", (void*)com_android_internal_os_Zygote_nativeAllowFilesOpenedByPreload}, + {"nativeHandleRuntimeFlags", "(I)V", (void*)nativeHandleRuntimeFlagsWrapper}, + {"execveatWrapper", "(ILjava/lang/String;[Ljava/lang/String;I)I", (void*)execveatWrapper}, }; int register_com_android_internal_os_Zygote(JNIEnv* env) { diff --git a/core/jni/com_android_internal_os_ZygoteCommandBuffer.cpp b/core/jni/com_android_internal_os_ZygoteCommandBuffer.cpp index e0cc055a62a63..b42e9ed3cd7da 100644 --- a/core/jni/com_android_internal_os_ZygoteCommandBuffer.cpp +++ b/core/jni/com_android_internal_os_ZygoteCommandBuffer.cpp @@ -172,6 +172,9 @@ class NativeCommandBuffer { static const size_t CA_LENGTH = strlen(CAPABILITIES); static const size_t NN_LENGTH = strlen(NICE_NAME); + static const char* RUNTIME_FLAGS = "--runtime-flags="; + static const size_t RF_LENGTH = strlen(RUNTIME_FLAGS); + bool saw_setuid = false, saw_setgid = false; bool saw_runtime_args = false; @@ -186,6 +189,17 @@ class NativeCommandBuffer { saw_runtime_args = true; continue; } + if (static_cast(arg_end - arg_start) >= RF_LENGTH + && strncmp(arg_start, RUNTIME_FLAGS, RF_LENGTH) == 0) { + int flags = digitsVal(arg_start + RF_LENGTH, arg_end); + const int DISABLE_HARDENED_MALLOC = 1 << 29; + const int ENABLE_COMPAT_VA_39_BIT = 1 << 30; + if (flags & (DISABLE_HARDENED_MALLOC | ENABLE_COMPAT_VA_39_BIT)) { + // fallback to the slow path that calls ExecInit + return false; + } + continue; + } if (static_cast(arg_end - arg_start) >= NN_LENGTH && strncmp(arg_start, NICE_NAME, NN_LENGTH) == 0) { size_t name_len = arg_end - (arg_start + NN_LENGTH); diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 6b8056c77fda2..e03a68008db77 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -591,6 +591,7 @@ + @@ -1921,6 +1922,18 @@ android:protectionLevel="dangerous|instant" /> + + + + @@ -2175,13 +2188,21 @@ + + + + android:protectionLevel="dangerous|instant" /> + + + + @@ -2859,6 +2888,10 @@ + + + @@ -3014,6 +3047,10 @@ + + + + + @@ -5169,6 +5210,10 @@ + + + + + + + android:protectionLevel="normal" /> + + + + @@ -8837,7 +8899,7 @@ + + + diff --git a/core/res/res/drawable/ic_pending.xml b/core/res/res/drawable/ic_pending.xml new file mode 100644 index 0000000000000..410b2d75018f8 --- /dev/null +++ b/core/res/res/drawable/ic_pending.xml @@ -0,0 +1,11 @@ + + + + diff --git a/core/res/res/drawable/ic_update.xml b/core/res/res/drawable/ic_update.xml new file mode 100644 index 0000000000000..8574d79d58a60 --- /dev/null +++ b/core/res/res/drawable/ic_update.xml @@ -0,0 +1,11 @@ + + + + diff --git a/core/res/res/layout/app_anr_dialog.xml b/core/res/res/layout/app_anr_dialog.xml index 5ad0f4c0f6cc7..ad3a2d2991de8 100644 --- a/core/res/res/layout/app_anr_dialog.xml +++ b/core/res/res/layout/app_anr_dialog.xml @@ -41,8 +41,8 @@ android:id="@+id/aerr_report" android:layout_width="match_parent" android:layout_height="wrap_content" - android:text="@string/aerr_report" - android:drawableStart="@drawable/ic_feedback" + android:text="@string/aerr_show_details" + android:drawableStart="@drawable/ic_info_outline_24" style="@style/aerr_list_item" /> diff --git a/core/res/res/layout/app_error_dialog.xml b/core/res/res/layout/app_error_dialog.xml index c3b149a1e2959..a47b820183777 100644 --- a/core/res/res/layout/app_error_dialog.xml +++ b/core/res/res/layout/app_error_dialog.xml @@ -52,8 +52,8 @@ android:id="@+id/aerr_report" android:layout_width="match_parent" android:layout_height="wrap_content" - android:text="@string/aerr_report" - android:drawableStart="@drawable/ic_feedback" + android:text="@string/aerr_show_details" + android:drawableStart="@drawable/ic_info_outline_24" style="@style/aerr_list_item" />